@univerjs/docs-ui 0.6.9-experimental.20250408-92eabfd → 0.6.9-experimental.20250409-e08c696

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/cjs/index.js CHANGED
@@ -1,6 +1,6 @@
1
- "use strict";var ms=Object.defineProperty;var ps=(o,t,e)=>t in o?ms(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e;var b=(o,t,e)=>ps(o,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("@univerjs/core"),D=require("@univerjs/docs"),M=require("@univerjs/engine-render"),I=require("@univerjs/ui"),w=require("react"),Q=require("react/jsx-runtime"),te=require("@univerjs/design"),N=require("rxjs"),pt=require("rxjs/operators"),ao=require("@univerjs/drawing");var fs=Object.getOwnPropertyDescriptor,Ss=(o,t,e,n)=>{for(var r=n>1?void 0:n?fs(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},rr=(o,t)=>(e,n)=>t(e,n,o);function Is(o,t){var a,c;const{startOffset:e,endOffset:n}=o,r=[];let s=-1;for(let l=0;l<t.length;l++){const d=t[l],A=t[l-1],{startIndex:u}=d;e>s&&e<=u||n>s&&n<=u?r.push({...d,paragraphStart:((a=A==null?void 0:A.startIndex)!=null?a:-1)+1,paragraphEnd:d.startIndex}):u>=e&&u<=n&&r.push({...d,paragraphStart:((c=A==null?void 0:A.startIndex)!=null?c:-1)+1,paragraphEnd:d.startIndex}),s=u}return r}exports.DocAutoFormatService=class extends i.Disposable{constructor(e,n){super();b(this,"_matches",new Map);this._univerInstanceService=e,this._textSelectionManagerService=n}registerAutoFormat(e){const n=this._matches.get(e.id);return n?(n.push(e),n.sort((r,s)=>{var a,c;return((a=s.priority)!=null?a:0)-((c=r.priority)!=null?c:0)})):this._matches.set(e.id,[e]),i.toDisposable(()=>{const r=this._matches.get(e.id);if(r){const s=r.findIndex(a=>a===e);s>=0&&r.splice(s,1)}})}onAutoFormat(e,n){var l,d,A,u,h,g,m;const r=(l=this._matches.get(e))!=null?l:[],s=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=this._textSelectionManagerService.getDocRanges(),c=(d=a.find(p=>p.isActive))!=null?d:a[0];if(s&&c){const p=s.getSelfOrHeaderFooterModel(c.segmentId),f={unit:p,selection:c,isBody:!c.segmentId,paragraphs:Is(c,(u=(A=p.getBody())==null?void 0:A.paragraphs)!=null?u:[]),customRanges:i.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(c,(g=(h=p.getBody())==null?void 0:h.customRanges)!=null?g:[]),commandId:e,commandParams:n},S=r.find(v=>v.match(f));return(m=S==null?void 0:S.getMutations(f))!=null?m:[]}return[]}};exports.DocAutoFormatService=Ss([rr(0,i.IUniverInstanceService),rr(1,i.Inject(D.DocSelectionManagerService))],exports.DocAutoFormatService);const qr={undo:!0,redo:!0,font:!0,fontSize:!0,bold:!0,italic:!0,strikethrough:!0,underline:!0,textColor:!0,fillColor:!0,horizontalAlignMode:!0,verticalAlignMode:!0,textWrapMode:!0,textRotateMode:!0},Jr={outerLeft:!1,outerRight:!1,header:!0,footer:!0,innerLeft:!1,innerRight:!1,frozenHeaderLT:!1,frozenHeaderRT:!1,frozenHeaderLM:!1,frozenContent:!1,infoBar:!0,toolbar:!0},Zr="DOC_UI_PLUGIN";var de=(o=>(o.MAIN="__Document_Render_Main__",o.BACKGROUND="__Document_Render_Background__",o))(de||{}),ie=(o=>(o.VIEW_MAIN="viewMain",o.VIEW_TOP="viewTop",o.VIEW_LEFT="viewLeft",o.VIEW_LEFT_TOP="viewLeftTop",o))(ie||{});const $r=0,kt=2,ei=4,kn=10,vs="normalTextSelectionPluginName";function Ie(o){const{mainComponent:t,scene:e,engine:n,components:r}=o,s=t,a=r.get(de.BACKGROUND);return{document:s,docBackground:a,scene:e,engine:n}}function ti(o,t){const e=o.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(!e)return null;const n=e.getUnitId(),r=t.getRenderById(n);if(r==null)return;const{mainComponent:s,scene:a,engine:c,components:l}=r,d=s,A=l.get(de.BACKGROUND);return{document:d,docBackground:A,scene:a,engine:c}}function Es(o,t){const e=t.getRenderById(o);if(e==null)return;const{mainComponent:n,scene:r,engine:s,components:a}=e,c=n,l=a.get(de.BACKGROUND);return{document:c,docBackground:l,scene:r,engine:s}}function ni(o){const{unitId:t,ranges:e,id:n,type:r,segmentId:s}=o,a={id:D.RichTextEditingMutation.id,params:{unitId:t,actions:[],textRanges:void 0,segmentId:s}},c=i.JSONX.getInstance(),l=i.BuildTextUtils.customDecoration.add({ranges:e,id:n,type:r});return a.params.actions=c.editOp(l.serialize()),a}function Cs(o,t){const{segmentId:e,id:n,type:r,unitId:s}=t,a=o.get(D.DocSelectionManagerService),c=o.get(i.IUniverInstanceService),l=s?c.getUnit(s,i.UniverInstanceType.UNIVER_DOC):c.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(!l)return!1;const d=l.getUnitId(),A=a.getTextRanges({unitId:d,subUnitId:d});return!A||!l.getBody()?!1:ni({unitId:d,ranges:A,id:n,type:r,segmentId:e})}function Ts(o,t){const{unitId:e,id:n,segmentId:r}=t,a=o.get(i.IUniverInstanceService).getUnit(e);if(!a)return!1;const c={id:D.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:void 0,segmentId:r}},l=i.BuildTextUtils.customDecoration.delete({id:n,segmentId:r,documentDataModel:a});if(!l)return!1;const d=i.JSONX.getInstance();return c.params.actions=d.editOp(l.serialize()),c}function ys(o,t){return t.some(e=>o.startIndex>e.startIndex&&o.startIndex<e.endIndex)}function sn(o,t,e,n,r){const{textRuns:s=[],dataStream:a}=o,c=r&&a.startsWith("="),l={st:0,ed:0,ts:{}};if(c)return l;for(let d=s.length-1;d>=0;d--){const A=s[d],{st:u,ed:h}=A;t>u&&t<=h&&(l.st=u,l.ed=h,l.ts={...l.ts,...A.ts})}if(t===0){const d=s==null?void 0:s[0];d&&d.st===0&&(l.ts={...l.ts,...d.ts})}return n&&(l.ts={...l.ts,...n}),l}function co(o,t,e){if(e){const r=o.find(s=>t>=s.startIndex&&t<=s.endIndex+1);return r!=null&&r.wholeEntity?null:r}const n=o.find(r=>t>r.startIndex&&t<=r.endIndex);return n!=null&&n.wholeEntity?null:n}function lo(o,t){return o.filter(e=>t>e.startIndex&&t<=e.endIndex)}function Rs(o){return{left:o.positionH.posOffset,top:o.positionV.posOffset,width:o.size.width,height:o.size.height}}function bs(o,t=0,e=0){return{size:{width:o.width,height:o.height},positionH:{relativeFrom:i.ObjectRelativeFromH.MARGIN,posOffset:(o.left||0)-t},positionV:{relativeFrom:i.ObjectRelativeFromV.PAGE,posOffset:(o.top||0)-e},angle:o.angle||0}}function oi(o,t,e){const n=I.useDependency(i.ICommandService),r=I.useDependency(I.IShortcutService),s=w.useMemo(()=>i.generateRandomId(4),[]);w.useEffect(()=>{if(!e||!o||!t)return;const c=`sheet.operation.editor-${e.getEditorId()}-keyboard-${s}`,l=new i.DisposableCollection;return l.add(n.registerCommand({id:c,type:i.CommandType.OPERATION,handler(d,A){const{keyCode:u,metaKey:h}=A;t.handler(u,h)}})),t.keyCodes.map(d=>({id:c,binding:d.metaKey?d.keyCode|d.metaKey:d.keyCode,preconditions:()=>!0,priority:901,staticParameters:{eventType:M.DeviceInputEventType.Keyboard,keyCode:d.keyCode,metaKey:d.metaKey}})).forEach(d=>{l.add(r.registerShortcut(d))}),()=>{l.dispose()}},[n,t,e,o,s,r])}const ri=(o,t=!0,e,n)=>{const r=w.useCallback(()=>{if(o){const{scene:a,mainComponent:c}=o.render,l=o.render.with(D.DocSkeletonManagerService),{width:d,height:A}=o.getBoundingClientRect();l.getViewModel().getDataModel().updateDocumentDataPageSize(t?1/0:d,1/0),a.transformByState({width:d,height:A}),c==null||c.resize(d,A)}},[o,t]),s=w.useMemo(()=>i.debounce(()=>{var v,E;if(!e||!o||!e)return;const c=o.render.with(D.DocSkeletonManagerService).getSkeleton(),{scene:l,mainComponent:d}=o.render,A=l.getViewport(ie.VIEW_MAIN),{actualWidth:u,actualHeight:h}=c.getActualSize(),{width:g,height:m}=o.getBoundingClientRect();let p=A==null?void 0:A.getScrollBar();const f=Math.max(u,g),S=Math.max(h,m);l.transformByState({width:f,height:S}),d==null||d.resize(f,S),t?u>g?(p==null?A&&new M.ScrollBar(A,{barSize:8,enableVertical:!1,enableHorizontal:!0,minThumbSizeV:8}):A==null||A.resetCanvasSizeAndUpdateScroll(),n&&(A==null||A.scrollToBarPos({x:1/0,y:0}))):(p=null,A==null||A.scrollToBarPos({x:0,y:0}),(E=A==null?void 0:A.getScrollBar())==null||E.dispose()):h>m?(p==null?A&&(p=new M.ScrollBar(A,{enableHorizontal:!1,enableVertical:!0,barSize:8,minThumbSizeV:8})):A==null||A.resetCanvasSizeAndUpdateScroll(),n&&(A==null||A.scrollToBarPos({x:0,y:1/0}))):(p=null,A==null||A.scrollToBarPos({x:0,y:0}),(v=A==null?void 0:A.getScrollBar())==null||v.dispose())},30),[o,e,t,n]);return w.useEffect(()=>{if(e&&o){const a=setTimeout(()=>{r(),s()},500);return()=>{clearTimeout(a)}}},[o,e,r,s]),w.useEffect(()=>{if(e&&o){const a=o.input$.subscribe(()=>{s()});return()=>{a.unsubscribe()}}},[o,e,s]),{resize:r,checkScrollBar:s}};function ce(o,t){var n;return(n=o.get(M.IRenderManagerService).getRenderById(t))==null?void 0:n.with(D.DocSkeletonManagerService)}function J(o,t=""){if(!t)return["body"];const{headers:e,footers:n}=o.getSnapshot();if(e==null&&n==null)throw new Error("Document data model must have headers or footers when update by segment id");if((e==null?void 0:e[t])!=null)return["headers",t,"body"];if((n==null?void 0:n[t])!=null)return["footers",t,"body"];throw new Error("Segment id not found in headers or footers")}const Ao={id:"doc.command-replace-snapshot",type:i.CommandType.COMMAND,handler:(o,t)=>{const{unitId:e,snapshot:n,textRanges:r,segmentId:s="",options:a}=t,c=o.get(i.IUniverInstanceService),l=o.get(i.ICommandService),d=o.get(D.DocSelectionManagerService),A=c.getUnit(e,i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(s).getSnapshot();if(A==null||u==null)return!1;const{body:h,tableSource:g,footers:m,headers:p,lists:f,drawings:S,drawingsOrder:v,documentStyle:E}=i.Tools.deepClone(n),{body:T,tableSource:R,footers:C,headers:x,lists:B,drawings:y,drawingsOrder:P,documentStyle:O}=u;if(h==null||T==null)return!1;if(i.Tools.diffValue(h,T)&&r)return d.replaceDocRanges(r,{unitId:e,subUnitId:e},!1),!0;const _={id:D.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:r}};a&&(_.params.options=a);const F=[],H=i.JSONX.getInstance();if(!i.Tools.diffValue(O,E)){const L=H.replaceOp(["documentStyle"],O,E);L!=null&&F.push(L)}if(!i.Tools.diffValue(h,T)){const L=H.replaceOp(["body"],T,h);L!=null&&F.push(L)}if(!i.Tools.diffValue(g,R)){const L=H.replaceOp(["tableSource"],R,g);L!=null&&F.push(L)}if(!i.Tools.diffValue(m,C)){const L=H.replaceOp(["footers"],C,m);L!=null&&F.push(L)}if(!i.Tools.diffValue(p,x)){const L=H.replaceOp(["headers"],x,p);L!=null&&F.push(L)}if(!i.Tools.diffValue(f,B)){const L=H.replaceOp(["lists"],B,f);L!=null&&F.push(L)}if(!i.Tools.diffValue(S,y)){const L=H.replaceOp(["drawings"],y,S);L!=null&&F.push(L)}if(!i.Tools.diffValue(v,P)){const L=H.replaceOp(["drawingsOrder"],P,v);L!=null&&F.push(L)}return _.params.actions=F.reduce((L,W)=>i.JSONX.compose(L,W),null),!!l.syncExecuteCommand(_.id,_.params)}},ii={id:"doc.command-replace-content",type:i.CommandType.COMMAND,handler:async(o,t)=>{const{unitId:e,body:n,textRanges:r,segmentId:s="",options:a}=t,c=o.get(i.IUniverInstanceService),l=o.get(i.ICommandService),d=o.get(D.DocSelectionManagerService),A=c.getUnit(e,i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(s).getSnapshot().body;if(A==null||u==null)return!1;const h=ai(e,s,A,u,n);return h.params.textRanges=r,a&&(h.params.options=a),h.params.actions==null&&r?(d.replaceDocRanges(r,{unitId:e,subUnitId:e},!1),!0):!!l.syncExecuteCommand(h.id,h.params)}},si={id:"doc.command-cover-content",type:i.CommandType.COMMAND,handler:async(o,t)=>{const{unitId:e,body:n,segmentId:r=""}=t,s=o.get(i.IUniverInstanceService),a=o.get(i.ICommandService),c=o.get(i.IUndoRedoService),l=s.getUniverDocInstance(e),d=l==null?void 0:l.getSnapshot().body;if(l==null||d==null)return!1;const A=ai(e,r,l,d,n);return A.params.noNeedSetTextRange=!0,A.params.noHistory=!0,a.syncExecuteCommand(A.id,A.params),c.clearUndoRedo(e),!0}};function xs(o,t,e,n){const r=new i.TextX,s=i.JSONX.getInstance(),a=(e==null?void 0:e.dataStream.length)-2;a>0&&r.push({t:i.TextXActionType.DELETE,len:a}),n.dataStream.length>0&&r.push({t:i.TextXActionType.INSERT,body:n,len:n.dataStream.length});const c=J(t,o);return s.editOp(r.serialize(),c)}function ai(o,t,e,n,r){const s={id:D.RichTextEditingMutation.id,params:{unitId:o,actions:[],textRanges:[]}},a=xs(t,e,n,r);return s.params.actions=a,s}const uo={id:"doc.command.replace-selection",type:i.CommandType.COMMAND,handler(o,t){var m;if(!t)return!1;const e=o.get(i.ICommandService),{unitId:n,body:r,textRanges:s}=t,c=o.get(i.IUniverInstanceService).getUnit(n),l=o.get(D.DocSelectionManagerService);if(!c)return!1;const d=c.getBody(),A=(m=t.selection)!=null?m:l.getActiveTextRange();if(!A||!d)return!1;const u={id:D.RichTextEditingMutation.id,params:{unitId:n,actions:[],textRanges:s,debounce:!0}},h=new i.TextX,g=i.JSONX.getInstance();return h.push(...i.BuildTextUtils.selection.delete([A],d,0,r)),u.params.actions=g.editOp(h.serialize()),e.syncExecuteCommand(u.id,u.params)}},ci={id:"doc.command.replace-text-runs",type:i.CommandType.COMMAND,handler:(o,t)=>{const{unitId:e,body:n,textRanges:r,segmentId:s="",options:a}=t,c=o.get(i.IUniverInstanceService),l=o.get(i.ICommandService),d=c.getUnit(e,i.UniverInstanceType.UNIVER_DOC),A=d==null?void 0:d.getSelfOrHeaderFooterModel(s).getSnapshot().body;if(d==null||A==null)return!1;const u=i.BuildTextUtils.selection.replaceTextRuns({doc:d,body:n,selection:{startOffset:0,endOffset:A.dataStream.length-2,collapsed:!1}});if(!u)return!1;const h={id:D.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:r,noHistory:!0}},g=i.JSONX.getInstance(),m=J(d,s);return h.params.actions=g.editOp(u.serialize(),m),h.params.textRanges=r,a&&(h.params.options=a),!!l.syncExecuteCommand(h.id,h.params)}};var Vt=(o=>(o[o.page=0]="page",o[o.section=1]="section",o[o.column=2]="column",o[o.line=3]="line",o[o.divide=4]="divide",o[o.glyph=5]="glyph",o))(Vt||{});const Ze={page:0,section:1,column:2,line:3,divide:4,glyph:5};function go(o,t){return o.page>t.page?!1:o.page<t.page?!0:o.section>t.section?!1:o.section<t.section?!0:o.column>t.column?!1:o.column<t.column?!0:o.line>t.line?!1:o.line<t.line?!0:o.divide>t.divide?!1:o.divide<t.divide?!0:o.glyph>t.glyph?!1:(o.glyph<t.glyph,!0)}function Vn(o,t){return go(o,t)?{start:o,end:t}:{start:t,end:o}}function jn(o){const t=o.length;if(t===0)return;const e=o[0],n=o[t-1],r=o.length===1&&e.collapsed;return{startOffset:e.startOffset,endOffset:n.endOffset,collapsed:r}}function Os(o,t,e,n){let r=n,s=n;for(let a=0;a<o.length;a++){const l=o[a].count;a<t&&(r+=l),a<e&&(s+=l)}return{startOffset:r,endOffset:s}}function Wn(o){const{startX:t,startY:e,endX:n,endY:r}=o,s=[];return s.push({x:t,y:e}),s.push({x:n,y:e}),s.push({x:n,y:r}),s.push({x:t,y:r}),s.push({x:t,y:e}),s}class ve{constructor(t,e){b(this,"_liquid",new M.Liquid);b(this,"_currentStartState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});b(this,"_currentEndState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});this._documentOffsetConfig=t,this._docSkeleton=e}getRangePointData(t,e){const n=[],r=[],s=[];if(t==null||e==null)return{borderBoxPointGroup:n,contentBoxPointGroup:r,cursorList:s};if(!this._isValidPosition(t,e))throw new Error(`
1
+ "use strict";var ms=Object.defineProperty;var ps=(o,t,e)=>t in o?ms(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e;var x=(o,t,e)=>ps(o,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("@univerjs/core"),B=require("@univerjs/docs"),M=require("@univerjs/engine-render"),I=require("@univerjs/ui"),w=require("react"),Q=require("react/jsx-runtime"),te=require("@univerjs/design"),P=require("rxjs"),pt=require("rxjs/operators"),ao=require("@univerjs/drawing");var fs=Object.getOwnPropertyDescriptor,Ss=(o,t,e,n)=>{for(var r=n>1?void 0:n?fs(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},rr=(o,t)=>(e,n)=>t(e,n,o);exports.DocAutoFormatService=class extends i.Disposable{constructor(e,n){super();x(this,"_matches",new Map);this._univerInstanceService=e,this._textSelectionManagerService=n}registerAutoFormat(e){const n=this._matches.get(e.id);return n?(n.push(e),n.sort((r,s)=>{var a,c;return((a=s.priority)!=null?a:0)-((c=r.priority)!=null?c:0)})):this._matches.set(e.id,[e]),i.toDisposable(()=>{const r=this._matches.get(e.id);if(r){const s=r.findIndex(a=>a===e);s>=0&&r.splice(s,1)}})}onAutoFormat(e,n){var l,d,A,u,h,g,m,p,f;const r=(l=this._matches.get(e))!=null?l:[],s=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=this._textSelectionManagerService.getDocRanges(),c=(d=a.find(S=>S.isActive))!=null?d:a[0];if(s&&c){const S=s.getSelfOrHeaderFooterModel(c.segmentId),v={unit:S,selection:c,isBody:!c.segmentId,paragraphs:i.BuildTextUtils.range.getParagraphsInRange(c,(u=(A=S.getBody())==null?void 0:A.paragraphs)!=null?u:[],(g=(h=S.getBody())==null?void 0:h.dataStream)!=null?g:""),customRanges:i.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(c,(p=(m=S.getBody())==null?void 0:m.customRanges)!=null?p:[]),commandId:e,commandParams:n},C=r.find(y=>y.match(v));return(f=C==null?void 0:C.getMutations(v))!=null?f:[]}return[]}};exports.DocAutoFormatService=Ss([rr(0,i.IUniverInstanceService),rr(1,i.Inject(B.DocSelectionManagerService))],exports.DocAutoFormatService);const qr={undo:!0,redo:!0,font:!0,fontSize:!0,bold:!0,italic:!0,strikethrough:!0,underline:!0,textColor:!0,fillColor:!0,horizontalAlignMode:!0,verticalAlignMode:!0,textWrapMode:!0,textRotateMode:!0},Jr={outerLeft:!1,outerRight:!1,header:!0,footer:!0,innerLeft:!1,innerRight:!1,frozenHeaderLT:!1,frozenHeaderRT:!1,frozenHeaderLM:!1,frozenContent:!1,infoBar:!0,toolbar:!0},Zr="DOC_UI_PLUGIN";var de=(o=>(o.MAIN="__Document_Render_Main__",o.BACKGROUND="__Document_Render_Background__",o))(de||{}),ie=(o=>(o.VIEW_MAIN="viewMain",o.VIEW_TOP="viewTop",o.VIEW_LEFT="viewLeft",o.VIEW_LEFT_TOP="viewLeftTop",o))(ie||{});const $r=0,Vt=2,ei=4,kn=10,Is="normalTextSelectionPluginName";function Ie(o){const{mainComponent:t,scene:e,engine:n,components:r}=o,s=t,a=r.get(de.BACKGROUND);return{document:s,docBackground:a,scene:e,engine:n}}function ti(o,t){const e=o.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(!e)return null;const n=e.getUnitId(),r=t.getRenderById(n);if(r==null)return;const{mainComponent:s,scene:a,engine:c,components:l}=r,d=s,A=l.get(de.BACKGROUND);return{document:d,docBackground:A,scene:a,engine:c}}function vs(o,t){const e=t.getRenderById(o);if(e==null)return;const{mainComponent:n,scene:r,engine:s,components:a}=e,c=n,l=a.get(de.BACKGROUND);return{document:c,docBackground:l,scene:r,engine:s}}function ni(o){const{unitId:t,ranges:e,id:n,type:r,segmentId:s}=o,a={id:B.RichTextEditingMutation.id,params:{unitId:t,actions:[],textRanges:void 0,segmentId:s}},c=i.JSONX.getInstance(),l=i.BuildTextUtils.customDecoration.add({ranges:e,id:n,type:r});return a.params.actions=c.editOp(l.serialize()),a}function Es(o,t){const{segmentId:e,id:n,type:r,unitId:s}=t,a=o.get(B.DocSelectionManagerService),c=o.get(i.IUniverInstanceService),l=s?c.getUnit(s,i.UniverInstanceType.UNIVER_DOC):c.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(!l)return!1;const d=l.getUnitId(),A=a.getTextRanges({unitId:d,subUnitId:d});return!A||!l.getBody()?!1:ni({unitId:d,ranges:A,id:n,type:r,segmentId:e})}function Cs(o,t){const{unitId:e,id:n,segmentId:r}=t,a=o.get(i.IUniverInstanceService).getUnit(e);if(!a)return!1;const c={id:B.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:void 0,segmentId:r}},l=i.BuildTextUtils.customDecoration.delete({id:n,segmentId:r,documentDataModel:a});if(!l)return!1;const d=i.JSONX.getInstance();return c.params.actions=d.editOp(l.serialize()),c}function Ts(o,t){return t.some(e=>o.startIndex>e.startIndex&&o.startIndex<e.endIndex)}function an(o,t,e,n,r){const{textRuns:s=[],dataStream:a}=o,c=r&&a.startsWith("="),l={st:0,ed:0,ts:{}};if(c)return l;for(let d=s.length-1;d>=0;d--){const A=s[d],{st:u,ed:h}=A;t>u&&t<=h&&(l.st=u,l.ed=h,l.ts={...l.ts,...A.ts})}if(t===0){const d=s==null?void 0:s[0];d&&d.st===0&&(l.ts={...l.ts,...d.ts})}return n&&(l.ts={...l.ts,...n}),l}function co(o,t,e){if(e){const r=o.find(s=>t>=s.startIndex&&t<=s.endIndex+1);return r!=null&&r.wholeEntity?null:r}const n=o.find(r=>t>r.startIndex&&t<=r.endIndex);return n!=null&&n.wholeEntity?null:n}function lo(o,t){return o.filter(e=>t>e.startIndex&&t<=e.endIndex)}function ys(o){return{left:o.positionH.posOffset,top:o.positionV.posOffset,width:o.size.width,height:o.size.height}}function bs(o,t=0,e=0){return{size:{width:o.width,height:o.height},positionH:{relativeFrom:i.ObjectRelativeFromH.MARGIN,posOffset:(o.left||0)-t},positionV:{relativeFrom:i.ObjectRelativeFromV.PAGE,posOffset:(o.top||0)-e},angle:o.angle||0}}function oi(o,t,e){const n=I.useDependency(i.ICommandService),r=I.useDependency(I.IShortcutService),s=w.useMemo(()=>i.generateRandomId(4),[]);w.useEffect(()=>{if(!e||!o||!t)return;const c=`sheet.operation.editor-${e.getEditorId()}-keyboard-${s}`,l=new i.DisposableCollection;return l.add(n.registerCommand({id:c,type:i.CommandType.OPERATION,handler(d,A){const{keyCode:u,metaKey:h}=A;t.handler(u,h)}})),t.keyCodes.map(d=>({id:c,binding:d.metaKey?d.keyCode|d.metaKey:d.keyCode,preconditions:()=>!0,priority:901,staticParameters:{eventType:M.DeviceInputEventType.Keyboard,keyCode:d.keyCode,metaKey:d.metaKey}})).forEach(d=>{l.add(r.registerShortcut(d))}),()=>{l.dispose()}},[n,t,e,o,s,r])}const ri=(o,t=!0,e,n)=>{const r=w.useCallback(()=>{if(o){const{scene:a,mainComponent:c}=o.render,l=o.render.with(B.DocSkeletonManagerService),{width:d,height:A}=o.getBoundingClientRect();l.getViewModel().getDataModel().updateDocumentDataPageSize(t?1/0:d,1/0),a.transformByState({width:d,height:A}),c==null||c.resize(d,A)}},[o,t]),s=w.useMemo(()=>i.debounce(()=>{var v,C;if(!e||!o||!e)return;const c=o.render.with(B.DocSkeletonManagerService).getSkeleton(),{scene:l,mainComponent:d}=o.render,A=l.getViewport(ie.VIEW_MAIN),{actualWidth:u,actualHeight:h}=c.getActualSize(),{width:g,height:m}=o.getBoundingClientRect();let p=A==null?void 0:A.getScrollBar();const f=Math.max(u,g),S=Math.max(h,m);l.transformByState({width:f,height:S}),d==null||d.resize(f,S),t?u>g?(p==null?A&&new M.ScrollBar(A,{barSize:8,enableVertical:!1,enableHorizontal:!0,minThumbSizeV:8}):A==null||A.resetCanvasSizeAndUpdateScroll(),n&&(A==null||A.scrollToBarPos({x:1/0,y:0}))):(p=null,A==null||A.scrollToBarPos({x:0,y:0}),(C=A==null?void 0:A.getScrollBar())==null||C.dispose()):h>m?(p==null?A&&(p=new M.ScrollBar(A,{enableHorizontal:!1,enableVertical:!0,barSize:8,minThumbSizeV:8})):A==null||A.resetCanvasSizeAndUpdateScroll(),n&&(A==null||A.scrollToBarPos({x:0,y:1/0}))):(p=null,A==null||A.scrollToBarPos({x:0,y:0}),(v=A==null?void 0:A.getScrollBar())==null||v.dispose())},30),[o,e,t,n]);return w.useEffect(()=>{if(e&&o){const a=setTimeout(()=>{r(),s()},500);return()=>{clearTimeout(a)}}},[o,e,r,s]),w.useEffect(()=>{if(e&&o){const a=o.input$.subscribe(()=>{s()});return()=>{a.unsubscribe()}}},[o,e,s]),{resize:r,checkScrollBar:s}};function ce(o,t){var n;return(n=o.get(M.IRenderManagerService).getRenderById(t))==null?void 0:n.with(B.DocSkeletonManagerService)}function J(o,t=""){if(!t)return["body"];const{headers:e,footers:n}=o.getSnapshot();if(e==null&&n==null)throw new Error("Document data model must have headers or footers when update by segment id");if((e==null?void 0:e[t])!=null)return["headers",t,"body"];if((n==null?void 0:n[t])!=null)return["footers",t,"body"];throw new Error("Segment id not found in headers or footers")}const Ao={id:"doc.command-replace-snapshot",type:i.CommandType.COMMAND,handler:(o,t)=>{const{unitId:e,snapshot:n,textRanges:r,segmentId:s="",options:a}=t,c=o.get(i.IUniverInstanceService),l=o.get(i.ICommandService),d=o.get(B.DocSelectionManagerService),A=c.getUnit(e,i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(s).getSnapshot();if(A==null||u==null)return!1;const{body:h,tableSource:g,footers:m,headers:p,lists:f,drawings:S,drawingsOrder:v,documentStyle:C}=i.Tools.deepClone(n),{body:y,tableSource:b,footers:E,headers:R,lists:D,drawings:T,drawingsOrder:_,documentStyle:O}=u;if(h==null||y==null)return!1;if(i.Tools.diffValue(h,y)&&r)return d.replaceDocRanges(r,{unitId:e,subUnitId:e},!1),!0;const N={id:B.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:r}};a&&(N.params.options=a);const F=[],H=i.JSONX.getInstance();if(!i.Tools.diffValue(O,C)){const L=H.replaceOp(["documentStyle"],O,C);L!=null&&F.push(L)}if(!i.Tools.diffValue(h,y)){const L=H.replaceOp(["body"],y,h);L!=null&&F.push(L)}if(!i.Tools.diffValue(g,b)){const L=H.replaceOp(["tableSource"],b,g);L!=null&&F.push(L)}if(!i.Tools.diffValue(m,E)){const L=H.replaceOp(["footers"],E,m);L!=null&&F.push(L)}if(!i.Tools.diffValue(p,R)){const L=H.replaceOp(["headers"],R,p);L!=null&&F.push(L)}if(!i.Tools.diffValue(f,D)){const L=H.replaceOp(["lists"],D,f);L!=null&&F.push(L)}if(!i.Tools.diffValue(S,T)){const L=H.replaceOp(["drawings"],T,S);L!=null&&F.push(L)}if(!i.Tools.diffValue(v,_)){const L=H.replaceOp(["drawingsOrder"],_,v);L!=null&&F.push(L)}return N.params.actions=F.reduce((L,W)=>i.JSONX.compose(L,W),null),!!l.syncExecuteCommand(N.id,N.params)}},ii={id:"doc.command-replace-content",type:i.CommandType.COMMAND,handler:async(o,t)=>{const{unitId:e,body:n,textRanges:r,segmentId:s="",options:a}=t,c=o.get(i.IUniverInstanceService),l=o.get(i.ICommandService),d=o.get(B.DocSelectionManagerService),A=c.getUnit(e,i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(s).getSnapshot().body;if(A==null||u==null)return!1;const h=ai(e,s,A,u,n);return h.params.textRanges=r,a&&(h.params.options=a),h.params.actions==null&&r?(d.replaceDocRanges(r,{unitId:e,subUnitId:e},!1),!0):!!l.syncExecuteCommand(h.id,h.params)}},si={id:"doc.command-cover-content",type:i.CommandType.COMMAND,handler:async(o,t)=>{const{unitId:e,body:n,segmentId:r=""}=t,s=o.get(i.IUniverInstanceService),a=o.get(i.ICommandService),c=o.get(i.IUndoRedoService),l=s.getUniverDocInstance(e),d=l==null?void 0:l.getSnapshot().body;if(l==null||d==null)return!1;const A=ai(e,r,l,d,n);return A.params.noNeedSetTextRange=!0,A.params.noHistory=!0,a.syncExecuteCommand(A.id,A.params),c.clearUndoRedo(e),!0}};function Rs(o,t,e,n){const r=new i.TextX,s=i.JSONX.getInstance(),a=(e==null?void 0:e.dataStream.length)-2;a>0&&r.push({t:i.TextXActionType.DELETE,len:a}),n.dataStream.length>0&&r.push({t:i.TextXActionType.INSERT,body:n,len:n.dataStream.length});const c=J(t,o);return s.editOp(r.serialize(),c)}function ai(o,t,e,n,r){const s={id:B.RichTextEditingMutation.id,params:{unitId:o,actions:[],textRanges:[]}},a=Rs(t,e,n,r);return s.params.actions=a,s}const uo={id:"doc.command.replace-selection",type:i.CommandType.COMMAND,handler(o,t){var m;if(!t)return!1;const e=o.get(i.ICommandService),{unitId:n,body:r,textRanges:s}=t,c=o.get(i.IUniverInstanceService).getUnit(n),l=o.get(B.DocSelectionManagerService);if(!c)return!1;const d=c.getBody(),A=(m=t.selection)!=null?m:l.getActiveTextRange();if(!A||!d)return!1;const u={id:B.RichTextEditingMutation.id,params:{unitId:n,actions:[],textRanges:s,debounce:!0}},h=new i.TextX,g=i.JSONX.getInstance();return h.push(...i.BuildTextUtils.selection.delete([A],d,0,r)),u.params.actions=g.editOp(h.serialize()),e.syncExecuteCommand(u.id,u.params)}},ci={id:"doc.command.replace-text-runs",type:i.CommandType.COMMAND,handler:(o,t)=>{const{unitId:e,body:n,textRanges:r,segmentId:s="",options:a}=t,c=o.get(i.IUniverInstanceService),l=o.get(i.ICommandService),d=c.getUnit(e,i.UniverInstanceType.UNIVER_DOC),A=d==null?void 0:d.getSelfOrHeaderFooterModel(s).getSnapshot().body;if(d==null||A==null)return!1;const u=i.BuildTextUtils.selection.replaceTextRuns({doc:d,body:n,selection:{startOffset:0,endOffset:A.dataStream.length-2,collapsed:!1}});if(!u)return!1;const h={id:B.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:r,noHistory:!0}},g=i.JSONX.getInstance(),m=J(d,s);return h.params.actions=g.editOp(u.serialize(),m),h.params.textRanges=r,a&&(h.params.options=a),!!l.syncExecuteCommand(h.id,h.params)}};var jt=(o=>(o[o.page=0]="page",o[o.section=1]="section",o[o.column=2]="column",o[o.line=3]="line",o[o.divide=4]="divide",o[o.glyph=5]="glyph",o))(jt||{});const Ze={page:0,section:1,column:2,line:3,divide:4,glyph:5};function go(o,t){return o.page>t.page?!1:o.page<t.page?!0:o.section>t.section?!1:o.section<t.section?!0:o.column>t.column?!1:o.column<t.column?!0:o.line>t.line?!1:o.line<t.line?!0:o.divide>t.divide?!1:o.divide<t.divide?!0:o.glyph>t.glyph?!1:(o.glyph<t.glyph,!0)}function Vn(o,t){return go(o,t)?{start:o,end:t}:{start:t,end:o}}function jn(o){const t=o.length;if(t===0)return;const e=o[0],n=o[t-1],r=o.length===1&&e.collapsed;return{startOffset:e.startOffset,endOffset:n.endOffset,collapsed:r}}function xs(o,t,e,n){let r=n,s=n;for(let a=0;a<o.length;a++){const l=o[a].count;a<t&&(r+=l),a<e&&(s+=l)}return{startOffset:r,endOffset:s}}function Wn(o){const{startX:t,startY:e,endX:n,endY:r}=o,s=[];return s.push({x:t,y:e}),s.push({x:n,y:e}),s.push({x:n,y:r}),s.push({x:t,y:r}),s.push({x:t,y:e}),s}class ve{constructor(t,e){x(this,"_liquid",new M.Liquid);x(this,"_currentStartState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});x(this,"_currentEndState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});this._documentOffsetConfig=t,this._docSkeleton=e}getRangePointData(t,e){const n=[],r=[],s=[];if(t==null||e==null)return{borderBoxPointGroup:n,contentBoxPointGroup:r,cursorList:s};if(!this._isValidPosition(t,e))throw new Error(`
2
2
  Invalid positions in NodePositionConvertToCursor,
3
- they are not in the same segment page when in header or footer.`);const{start:c,end:l}=Vn(t,e);return this._selectionIterator(c,l,(d,A,u,h,g,m)=>{const{lineHeight:p,asc:f,paddingTop:S,marginTop:v,marginBottom:E}=m,{glyphGroup:T,st:R}=g;if(T.length===0)return;const{x:C,y:x}=this._liquid;let B,y;const P=T[d],O=T[A],_=T[d-1],F=(P==null?void 0:P.left)||0,H=(P==null?void 0:P.width)||0,U=(O==null?void 0:O.left)||0,L=(O==null?void 0:O.width)||0,W=(P==null?void 0:P.glyphType)===M.GlyphType.LIST,{startOffset:z,endOffset:j}=Os(T,d,A,R),k=c.glyph===d&&u?c.isBack:!0,V=l.glyph===A&&h?l.isBack:!1,X=c===l,K=k&&_!=null?_:P;if(d===0&&A===T.length-1)B={startX:C+F+(W?H:0),startY:x,endX:C+U+(V?0:L),endY:x+p-v-E},y={startX:C+F+(W?H:0),startY:x+S+f-K.bBox.ba,endX:C+U+(V?0:L),endY:x+S+f+K.bBox.bd};else{const Y=k&&!W;B={startX:C+F+(Y?0:H),startY:x,endX:C+U+(V?0:L),endY:x+p-v-E},y={startX:C+F+(Y?0:H),startY:x+S+f-K.bBox.ba,endX:C+U+(V?0:L),endY:x+S+f+K.bBox.bd}}n.push(Wn(B)),r.push(Wn(y)),s.push({startOffset:k?z:z+P.count,endOffset:V?j:j+O.count,collapsed:X})}),{borderBoxPointGroup:n,contentBoxPointGroup:r,cursorList:s}}_isValidPosition(t,e){const{segmentPage:n,pageType:r}=t,{segmentPage:s,pageType:a}=e;return r!==a?!1:r===M.DocumentSkeletonPageType.HEADER||r===M.DocumentSkeletonPageType.FOOTER?n===s:!0}_resetCurrentNodePositionState(){this._currentStartState={page:0,section:0,column:0,line:0,divide:0,glyph:0},this._currentEndState={page:0,section:0,column:0,line:0,divide:0,glyph:0}}_setNodePositionState(t=0,e,n,r){r===e?this._currentStartState[t]=1:this._currentStartState[t]=0,r===n?this._currentEndState[t]=2:this._currentEndState[t]=0}_checkPreviousNodePositionState(t,e=!0){let n=t,r;for(;n>=0;){const s=Vt[n];let a;if(e?a=this._currentStartState[s]:a=this._currentEndState[s],a===void 0)return;if(r===void 0&&(r=a),a!==r)return 0;n--}return r}_getSelectionRuler(t,e,n,r,s){let a=0,c=r;const l=Vt[t],d=Vt[t+1];if(d===null||l===null)return{start_next:a,end_next:c};const A=e[l],u=n[l];this._setNodePositionState(l,A,u,s);const h=this._checkPreviousNodePositionState(t),g=this._checkPreviousNodePositionState(t,!1);return h===1&&(a=e[d]),g===2&&(c=n[d]),{start_next:a,end_next:c}}_selectionIterator(t,e,n){var T,R;const r=this._docSkeleton;if(!r)return[];const{pageType:s,path:a}=t;this._liquid.reset();const c=r.getSkeletonData();if(c==null)return[];const{pages:l,skeHeaders:d,skeFooters:A}=c,{page:u,segmentPage:h}=t,{page:g,segmentPage:m}=e;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:p,pageMarginLeft:f,pageMarginTop:S}=this._documentOffsetConfig,v=s===M.DocumentSkeletonPageType.BODY||s===M.DocumentSkeletonPageType.CELL?u:h;for(let C=0;C<v;C++){const x=l[C];this._liquid.translatePage(x,p,f,S)}const E=s===M.DocumentSkeletonPageType.BODY||s===M.DocumentSkeletonPageType.CELL?g:m;for(let C=v;C<=E;C++){const x=l[C],{headerId:B,footerId:y,pageWidth:P}=x;let O=x;if(s===M.DocumentSkeletonPageType.HEADER?O=(T=d.get(B))==null?void 0:T.get(P):s===M.DocumentSkeletonPageType.FOOTER?O=(R=A.get(y))==null?void 0:R.get(P):s===M.DocumentSkeletonPageType.CELL&&(O=M.getPageFromPath(c,a)),O==null){this._liquid.translatePage(x,p,f,S);continue}const _=O.sections,{start_next:F,end_next:H}=this._getSelectionRuler(Ze.page,t,e,_.length-1,s===M.DocumentSkeletonPageType.BODY||s===M.DocumentSkeletonPageType.CELL?C:0);switch(this._liquid.translateSave(),s){case M.DocumentSkeletonPageType.HEADER:this._liquid.translatePagePadding({...O,marginLeft:x.marginLeft});break;case M.DocumentSkeletonPageType.FOOTER:{const U=x.pageHeight-O.height-O.marginBottom;this._liquid.translate(x.marginLeft,U);break}case M.DocumentSkeletonPageType.CELL:{this._liquid.translatePagePadding(x);const U=O.parent,L=U.parent,{left:W}=O,{top:z,left:j}=L,{top:k}=U;this._liquid.translate(j+W,z+k),this._liquid.translatePagePadding(O);break}default:this._liquid.translatePagePadding(x);break}for(let U=F;U<=H;U++){const L=_[U],W=L.columns,{start_next:z,end_next:j}=this._getSelectionRuler(Ze.section,t,e,W.length-1,U);this._liquid.translateSection(L);for(let k=z;k<=j;k++){const V=W[k],X=V.lines,{start_next:K,end_next:Y}=this._getSelectionRuler(Ze.column,t,e,X.length-1,k);this._liquid.translateColumn(V);for(let G=K;G<=Y;G++){const q=X[G],{divides:ee}=q,{start_next:ge,end_next:xe}=this._getSelectionRuler(Ze.line,t,e,ee.length-1,G);this._liquid.translateSave(),this._liquid.translateLine(q,!0,!1);for(let he=ge;he<=xe;he++){const On=ee[he];this._liquid.translateSave(),this._liquid.translateDivide(On);const{glyphGroup:us}=On,{start_next:gs,end_next:hs}=this._getSelectionRuler(Ze.divide,t,e,us.length-1,he);let nr=!1,or=!1;C===v&&U===F&&k===z&&G===K&&he===ge&&(nr=!0),C===E&&U===H&&k===j&&G===Y&&he===xe&&(or=!0),n&&n(gs,hs,nr,or,On,q,V,L,O),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(x,p,f,S)}}}function li(o,t){const{path:e}=o,{path:n}=t;if(e.length!==n.length||e.indexOf("cells")===-1)return!1;const r=e.indexOf("skeTables")+1,s=e.indexOf("rows")+1,a=e.indexOf("cells")+1,{tableId:c,sliceIndex:l}=M.getTableIdAndSliceIndex(e[r]),{tableId:d,sliceIndex:A}=M.getTableIdAndSliceIndex(n[r]);if(c!==d)return!1;const u=e[s],h=n[s],g=e[a],m=n[a];return!(u===h&&g===m&&l===A)}function ho(o,t){const{path:e}=o,{path:n}=t;return e.indexOf("cells")===-1||n.indexOf("cells")===-1||e.length!==n.length?!1:i.Tools.diffValue(e,n)}function di(o,t,e){var g,m,p,f,S,v,E,T;const{path:n}=t,{path:r}=e;if(n.indexOf("cells")===-1||r.indexOf("cells")===-1)return!1;const s=o.findGlyphByPosition(t),a=o.findGlyphByPosition(e),c=(f=(p=(m=(g=s==null?void 0:s.parent)==null?void 0:g.parent)==null?void 0:m.parent)==null?void 0:p.parent)==null?void 0:f.parent,l=(T=(E=(v=(S=a==null?void 0:a.parent)==null?void 0:S.parent)==null?void 0:v.parent)==null?void 0:E.parent)==null?void 0:T.parent;if(c==null||l==null)return!1;const d=c.parent,A=l.parent,u=d.cells.indexOf(c),h=A.cells.indexOf(l);return u===h&&d.index===A.index}function Mn(o,t){if(ho(o,t))return go(o,t);const{path:e}=o,{path:n}=t,r=e[e.length-5],s=n[n.length-5];if(r!==s&&typeof r=="string"&&typeof s=="string"){const A=r.split("#-#")[1],u=s.split("#-#")[1];return+A<+u}const a=e[e.length-3],c=n[n.length-3],l=e[e.length-1],d=n[n.length-1];return a<c?!0:a>c?!1:l<=d}function Xe(o){return o.sections[0].columns[0].lines.length===0}function Ms(o,t,e){let n=t,r=e,s=o[n],a=o[r];for(;n<r&&(Xe(s)||Xe(a));)Xe(s)?(n++,s=o[n]):Xe(a)&&(r--,a=o[r]);if(!Xe(s)&&!Xe(a))return[s,a]}class mo{constructor(t,e){b(this,"_liquid",new M.Liquid);this._documentOffsetConfig=t,this._docSkeleton=e}getRangePointData(t,e){const n=[],s=this._docSkeleton.getSkeletonData();if(s==null)return;const{pages:a}=s,{segmentPage:c,page:l,pageType:d}=t,A=this._getTableRectRangeInfo(t,e);if(A==null)return;const{tableId:u,startRowIndex:h,startColumnIndex:g,endRowIndex:m,endColumnIndex:p}=A;this._liquid.reset();const{pageLayoutType:f,pageMarginLeft:S,pageMarginTop:v}=this._documentOffsetConfig,E=d===M.DocumentSkeletonPageType.BODY||d===M.DocumentSkeletonPageType.CELL?l:c;for(let T=0;T<E;T++){const R=a[T];this._liquid.translatePage(R,f,S,v)}for(let T=E;T<a.length;T++){const R=a[T];this._liquid.translatePagePadding(R);const{skeTables:C}=R;let x=null;for(const[O,_]of C.entries())O.startsWith(u)&&(x=_);if(x==null){this._liquid.restorePagePadding(R),this._liquid.translatePage(R,f,S,v);continue}this._liquid.translateSave(),this._liquid.translate(0,x.top);const{x:B,y}=this._liquid,{left:P}=x;for(const O of x.rows)if(O.index>=h&&O.index<=m){const _=Ms(O.cells,g,p);if(_==null)continue;const[F,H]=_,U={startX:B+F.left+P,startY:y+O.top,endX:B+H.left+H.pageWidth+P,endY:y+O.top+O.height};n.push(Wn(U))}this._liquid.translateRestore(),this._liquid.restorePagePadding(R),this._liquid.translatePage(R,f,S,v)}return{pointGroup:n,startRow:h,startColumn:g,endRow:m,endColumn:p,tableId:u}}getNodePositionGroup(t,e){const n=[],r=this._docSkeleton.findCharIndexByPosition(t),s=this._docSkeleton.findCharIndexByPosition(e);if(r==null||s==null)return;const a=r<s,c=this._getTableRectRangeInfo(t,e);if(c==null)return;const{tableId:l,startRowIndex:d,startColumnIndex:A,endRowIndex:u,endColumnIndex:h}=c,g=this._docSkeleton.getViewModel().findTableNodeById(l);if(g==null)return;const m=g.children[0].children.length;if(A===0&&h===m-1){const f=g.children[d].children[A],S=this._docSkeleton.findNodePositionByCharIndex(f.startIndex+1),v=g.children[u].children[h],E=this._docSkeleton.findNodePositionByCharIndex(v.endIndex-2);if(S==null||E==null)return;n.push({anchor:a?S:E,focus:a?E:S})}else for(let f=d;f<=u;f++){const S=g.children[f],v=S.children[A],E=S.children[h],T=this._docSkeleton.findNodePositionByCharIndex(v.startIndex+1),R=this._docSkeleton.findNodePositionByCharIndex(E.endIndex-2);if(T==null||R==null)return;n.push({anchor:a?T:R,focus:a?R:T})}return n}_getTableRectRangeInfo(t,e){const r=this._docSkeleton.getSkeletonData();if(r==null)return;const{pages:s}=r,{path:a}=t,{path:c}=e,l=M.getPageFromPath(r,a),d=M.getPageFromPath(r,c);if(l==null||d==null)return;const A=l.segmentId,u=l.parent.index,h=l.parent.cells.indexOf(l),g=(d==null?void 0:d.parent).index,m=(d==null?void 0:d.parent).cells.indexOf(d),p=Math.min(u,g),f=Math.max(u,g),S=Math.min(h,m),v=Math.max(h,m);return{pages:s,tableId:A,startRowIndex:p,startColumnIndex:S,endRowIndex:f,endColumnIndex:v}}}const Ds="__TestSelectionRange__",Bs="__TestSelectionAnchor__",ir=6,Dn=500,_s=500,Gt=3;function St(o){const t=o[0],e=t[0],n=t[2],{x:r,y:s}=e,{x:a,y:c}=n;return{left:r,top:s,width:a-r,height:c-s}}function an(o){return o.map(t=>{let e=1/0,n=-1/0,r=1/0,s=-1/0;return t.forEach(a=>{e=Math.min(a.x,e),n=Math.max(a.x,n),s=Math.max(a.y,s),r=Math.min(a.y,r)}),{left:e,right:n,top:r,bottom:s}})}class je{constructor(t,e,n,r,s,a=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c="",l=-1){b(this,"rangeType",i.DOC_RANGE_TYPE.TEXT);b(this,"_current",!1);b(this,"_rangeShape");b(this,"_anchorShape");b(this,"_cursorList",[]);b(this,"_anchorBlinkTimer",null);this._scene=t,this._document=e,this._docSkeleton=n,this.anchorNodePosition=r,this.focusNodePosition=s,this.style=a,this._segmentId=c,this._segmentPage=l,this._anchorBlink(),this.refresh()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},Dn),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},Dn))},_s+Dn)}get startOffset(){var r;const{startOffset:t}=(r=jn(this._cursorList))!=null?r:{},e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId).getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(n,t)}get endOffset(){var r;const{endOffset:t}=(r=jn(this._cursorList))!=null?r:{},e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId).getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(t,n)}get collapsed(){const{startOffset:t,endOffset:e}=this;return t!=null&&t===e}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:t}=Vn(this.anchorNodePosition,this.focusNodePosition);return t}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:t}=Vn(this.anchorNodePosition,this.focusNodePosition);return t}get direction(){const{collapsed:t,anchorNodePosition:e,focusNodePosition:n}=this;return t||e==null||n==null?i.RANGE_DIRECTION.NONE:go(e,n)?i.RANGE_DIRECTION.FORWARD:i.RANGE_DIRECTION.BACKWARD}get segmentId(){return this._segmentId}get segmentPage(){return this._segmentPage}getAbsolutePosition(){const t=this.anchorNodePosition,e=this.focusNodePosition;if(this._isEmpty())return;const n=this._document.getOffsetConfig(),{docsLeft:r,docsTop:s}=n,a=new ve(n,this._docSkeleton);if(this._isCollapsed()){const{contentBoxPointGroup:A,cursorList:u}=a.getRangePointData(t,t);if(this._setCursorList(u),A.length===0)return;const h=St(A);return{...h,left:h.left+r,top:h.top+s}}const{borderBoxPointGroup:c,cursorList:l}=a.getRangePointData(t,e);if(this._setCursorList(l),c.length===0)return;const d=St(c);return{...d,left:d.left+r,top:d.top+s}}getAnchor(){return this._anchorShape}activeStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.strokeActive)||M.getColor(i.COLORS.black,1)})}deactivateStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.stroke)||M.getColor(i.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var t,e;(t=this._rangeShape)==null||t.dispose(),this._rangeShape=null,(e=this._anchorShape)==null||e.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&(clearInterval(this._anchorBlinkTimer),this._anchorBlinkTimer=null)}isIntersection(t){const{startOffset:e,endOffset:n}=this,{startOffset:r,endOffset:s}=t;return e==null||n==null||r==null||s==null?!1:e<=s&&n>=r}refresh(){var u,h;const{_document:t,_docSkeleton:e}=this,n=this.anchorNodePosition,r=this.focusNodePosition;if((u=this._anchorShape)==null||u.hide(),(h=this._rangeShape)==null||h.hide(),this._isEmpty())return;const s=t.getOffsetConfig(),{docsLeft:a,docsTop:c}=s,l=new ve(s,e);if(this._isCollapsed()){const{contentBoxPointGroup:g,cursorList:m}=l.getRangePointData(n,n);if(this._setCursorList(m),g.length>0){const p=e.findGlyphByPosition(n);this._createOrUpdateAnchor(g,a,c,p)}return}const{borderBoxPointGroup:d,cursorList:A}=l.getRangePointData(n,r);this._setCursorList(A),d.length>0&&this._createOrUpdateRange(d,a,c)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const t=this.anchorNodePosition,e=this.focusNodePosition;if(t!=null&&e==null)return!0;if(t==null||e==null)return!1;const n=Object.keys(Ze);for(const r of n){const s=t[r],a=e[r];if(s!==a)return!1}return t.isBack===e.isBack}_createOrUpdateRange(t,e,n){var a;if(this._rangeShape){this._rangeShape.translate(e,n),this._rangeShape.updatePointGroup(t),this._rangeShape.show();return}const r=.3,s=new M.RegularPolygon(Ds+i.Tools.generateRandomId(ir),{pointsGroup:t,fill:((a=this.style)==null?void 0:a.fill)||M.getColor(i.COLORS.black,r),left:e,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=s,this._scene.addObject(s,Gt)}_createOrUpdateAnchor(t,e,n,r){var p,f,S;const s=St(t),{left:a}=s;let{top:c,height:l}=s;const d=14;l<d&&(c-=d-l,l=d);const A=12;let u=a+e;const h=c+n,g=((p=r==null?void 0:r.ts)==null?void 0:p.it)===i.BooleanNumber.TRUE;if(g&&(u+=l*Math.tan(A*Math.PI/180)/2),this._anchorShape){this._anchorShape.transformByState({left:u,top:h,height:l}),this._anchorShape.show(),g?this._anchorShape.skew(-12,0):this._anchorShape.skew(0,0);return}const m=new M.Rect(Bs+i.generateRandomId(ir),{left:u,top:h,height:l,strokeWidth:((f=this.style)==null?void 0:f.strokeWidth)||1,stroke:((S=this.style)==null?void 0:S.strokeActive)||M.getColor(i.COLORS.black,1),evented:!1});g&&m.skew(-12,0),this._anchorShape=m,this._scene.addObject(m,Gt),this.activeStatic()}_setCursorList(t){t.length!==0&&(this._cursorList=t)}}const Ns="__DocTableRectRange__",Ps=6;function jt(o,t,e,n,r,s=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,a="",c=-1){const l=t.getOffsetConfig(),A=new mo(l,e).getNodePositionGroup(n,r);return(A!=null?A:[]).map(u=>new po(o,t,e,u.anchor,u.focus,s,a,c))}class po{constructor(t,e,n,r,s,a=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c="",l=-1){b(this,"rangeType",i.DOC_RANGE_TYPE.RECT);b(this,"_rangeShape");b(this,"_current",!1);b(this,"_startRow");b(this,"_startCol");b(this,"_endRow");b(this,"_endCol");b(this,"_tableId");this._scene=t,this._document=e,this._docSkeleton=n,this.anchorNodePosition=r,this.focusNodePosition=s,this.style=a,this._segmentId=c,this._segmentPage=l,this.refresh()}get startOffset(){const{startNodePosition:t}=this;return this._docSkeleton.findCharIndexByPosition(t)}get endOffset(){const{endNodePosition:t}=this;return this._docSkeleton.findCharIndexByPosition(t)}get collapsed(){return!1}get startRow(){return this._startRow}get startColumn(){return this._startCol}get endRow(){return this._endRow}get endColumn(){return this._endCol}get tableId(){return this._tableId}get segmentId(){return this._segmentId}get segmentPage(){return this._segmentPage}get spanEntireRow(){var a;const e=(a=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:a[this._tableId],{_startCol:n,_endCol:r}=this;if(e==null)throw new Error("Table is not found.");const{tableColumns:s}=e;return n===0&&r===s.length-1}get spanEntireColumn(){var a;const e=(a=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:a[this._tableId],{_startRow:n,_endRow:r}=this;if(e==null)throw new Error("Table is not found.");const{tableRows:s}=e;return n===0&&r===s.length-1}get spanEntireTable(){return this.spanEntireRow&&this.spanEntireColumn}get startNodePosition(){const{anchorNodePosition:t,focusNodePosition:e}=this;return Mn(t,e)?t:e}get endNodePosition(){const{anchorNodePosition:t,focusNodePosition:e}=this;return Mn(t,e)?e:t}get direction(){const{anchorNodePosition:t,focusNodePosition:e}=this;return Mn(t,e)?i.RANGE_DIRECTION.FORWARD:i.RANGE_DIRECTION.BACKWARD}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var t;(t=this._rangeShape)==null||t.dispose(),this._rangeShape=null}isIntersection(t){const{startRow:e,startColumn:n,endRow:r,endColumn:s}=this,{startRow:a,startColumn:c,endRow:l,endColumn:d}=t,A={left:n,top:e,right:s,bottom:r},u={left:c,top:a,right:d,bottom:l};return i.Rectangle.hasIntersectionBetweenTwoRect(A,u)}refresh(){var f;(f=this._rangeShape)==null||f.hide();const{startNodePosition:t,endNodePosition:e,_document:n,_docSkeleton:r}=this,s=n.getOffsetConfig(),{docsLeft:a,docsTop:c}=s,d=new mo(s,r).getRangePointData(t,e);if(d==null)return;const{pointGroup:A=[],startRow:u,endRow:h,startColumn:g,endColumn:m,tableId:p}=d;(A==null?void 0:A.length)>0&&this._createOrUpdateRange(A,a,c),this._updateTableInfo(u,h,g,m,p)}_updateTableInfo(t,e,n,r,s){this._startRow=t,this._endRow=e,this._startCol=n,this._endCol=r,this._tableId=s}_createOrUpdateRange(t,e,n){var a;if(this._rangeShape){this._rangeShape.translate(e,n),this._rangeShape.updatePointGroup(t),this._rangeShape.show();return}const r=.3,s=new M.RegularPolygon(Ns+i.Tools.generateRandomId(Ps),{pointsGroup:t,fill:((a=this.style)==null?void 0:a.fill)||M.getColor(i.COLORS.black,r),left:e,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=s,this._scene.addObject(s,Gt)}}function sr(o,t,e,n,r,s,a,c,l=!0,d=!0){const A=r.findNodePositionByCharIndex(o,l,a,c),u=r.findNodePositionByCharIndex(t,d,a,c);if(!(A==null||u==null))return new je(e,n,r,A,u,s,a,c)}function Us(o,t,e,n,r,s,a,c){const l=r.findNodePositionByCharIndex(o,!0,a,c),d=r.findNodePositionByCharIndex(t,!0,a,c);if(!(l==null||d==null))return new po(e,n,r,l,d,s,a,c)}function ws(o,t,e,n,r,s,a,c){const l=r.findNodePositionByCharIndex(o,!0,a,c),d=r.findNodePositionByCharIndex(t,!0,a,c);if(!(l==null||d==null))return zn(l,d,e,n,r,s,a,c)}function zn(o,t,e,n,r,s,a,c){const l=[],d=[],A=[e,n,r,o,t,s,a,c];if(di(r,o,t)){if(ho(o,t))return l.push(new je(...A)),{textRanges:l,rectRanges:d};{const E=jt(...A);return d.push(...E),{textRanges:l,rectRanges:d}}}if(li(o,t)){const E=jt(...A);return d.push(...E),{textRanges:l,rectRanges:d}}const u=r.getViewModel().getSelfOrHeaderFooterViewModel(a),h=r.findCharIndexByPosition(o),g=r.findCharIndexByPosition(t);if(h==null||g==null)return;const m=h<=g?i.RANGE_DIRECTION.FORWARD:i.RANGE_DIRECTION.BACKWARD,p=Math.min(h,g),f=Math.max(h,g);let S=p,v=f;for(const E of u.getChildren())for(const T of E.children){const{startIndex:R,endIndex:C,children:x}=T,B=E.children.indexOf(T),y=E.children[B+1],P=x[0];let O=!1;if(P){const{startIndex:_,endIndex:F,children:H}=P;let U=null,L=null;const W=H.find(j=>j.startIndex<=p&&j.endIndex>=p),z=H.find(j=>j.startIndex<=f&&j.endIndex>=f);if(p>_&&p<F)U=r.findNodePositionByCharIndex(W.startIndex+2,!0,a,c),L=r.findNodePositionByCharIndex(F-4,!0,a,c),S=F+1;else if(f>_&&f<F)U=r.findNodePositionByCharIndex(_+3,!0,a,c),L=r.findNodePositionByCharIndex(z.endIndex-3,!0,a,c),v=_-1,O=!0;else if(_>p&&F<f){if(U=r.findNodePositionByCharIndex(_+3,!0,a,c),L=r.findNodePositionByCharIndex(F-4,!0,a,c),S<=_-1){const j=r.findNodePositionByCharIndex(S,!0,a,c),k=r.findNodePositionByCharIndex(_-1,!1,a,c),V=m===i.RANGE_DIRECTION.FORWARD?j:k,X=m===i.RANGE_DIRECTION.FORWARD?k:j;l.push(new je(e,n,r,V,X,s,a,c))}S=F+1}if(U&&L){const j=m===i.RANGE_DIRECTION.FORWARD?U:L,k=m===i.RANGE_DIRECTION.FORWARD?L:U;d.push(...jt(e,n,r,j,k,s,a,c))}}if(v===C+1&&!O&&y&&y.children.length&&(v=C,O=!0),v>=R&&v<=C||O){const _=r.findNodePositionByCharIndex(S,!0,a,c),F=r.findNodePositionByCharIndex(v,!O,a,c),H=m===i.RANGE_DIRECTION.FORWARD?_:F,U=m===i.RANGE_DIRECTION.FORWARD?F:_;if(d.length&&i.Tools.diffValue(H,U))continue;l.push(new je(e,n,r,H,U,s,a,c))}}return{textRanges:l,rectRanges:d}}function Ai(o){const t=o==null?void 0:o.getCanvasElement();if(!t)return{left:0,top:0};const{top:e,left:n}=M.getOffsetRectForDom(t);return{left:n,top:e}}function ar(o){var l;const t=(l=o.parent)==null?void 0:l.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;const{paragraphIndex:n}=t,r=e.lines.filter(d=>d.paragraphIndex===n);let s=-1,a="",c=!1;for(const d of r)for(const A of d.divides)for(const u of A.glyphGroup)c||(s+=u.count),u===o&&(c=!0),a+=u.count>0?u.content:"";return{st:r[0].st,ed:n,content:a,nodeIndex:s}}function Gn(o){const{startOffset:t,endOffset:e,collapsed:n,rangeType:r,startNodePosition:s,endNodePosition:a,direction:c,segmentId:l,segmentPage:d}=o;return{startOffset:t,endOffset:e,collapsed:n,rangeType:r,startNodePosition:s,endNodePosition:a,direction:c,segmentId:l,segmentPage:d,isActive:o.isActive()}}function Ls(o){const t=Gn(o),{startRow:e,startColumn:n,endRow:r,endColumn:s,tableId:a,spanEntireRow:c,spanEntireColumn:l,spanEntireTable:d}=o;return{...t,startRow:e,startColumn:n,endRow:r,endColumn:s,tableId:a,spanEntireRow:c,spanEntireColumn:l,spanEntireTable:d}}var Qs=Object.getOwnPropertyDescriptor,Fs=(o,t,e,n)=>{for(var r=n>1?void 0:n?Qs(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Pt=(o,t)=>(e,n)=>t(e,n,o);exports.DocSelectionRenderService=class extends i.RxDisposable{constructor(e,n,r,s,a){super();b(this,"_onInputBefore$",new N.Subject);b(this,"onInputBefore$",this._onInputBefore$.asObservable());b(this,"_onKeydown$",new N.Subject);b(this,"onKeydown$",this._onKeydown$.asObservable());b(this,"_onInput$",new N.Subject);b(this,"onInput$",this._onInput$.asObservable());b(this,"_onCompositionstart$",new N.BehaviorSubject(null));b(this,"onCompositionstart$",this._onCompositionstart$.asObservable());b(this,"_onCompositionupdate$",new N.BehaviorSubject(null));b(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());b(this,"_onCompositionend$",new N.BehaviorSubject(null));b(this,"onCompositionend$",this._onCompositionend$.asObservable());b(this,"_onSelectionStart$",new N.BehaviorSubject(null));b(this,"onSelectionStart$",this._onSelectionStart$.asObservable());b(this,"onChangeByEvent$",N.merge(this._onInput$,this._onKeydown$.pipe(N.filter(e=>e.event.keyCode===I.KeyCode.BACKSPACE)),this._onCompositionend$));b(this,"_onPaste$",new N.Subject);b(this,"onPaste$",this._onPaste$.asObservable());b(this,"_textSelectionInner$",new N.BehaviorSubject(null));b(this,"textSelectionInner$",this._textSelectionInner$.asObservable());b(this,"_onFocus$",new N.Subject);b(this,"onFocus$",this._onFocus$.asObservable());b(this,"_onBlur$",new N.Subject);b(this,"onBlur$",this._onBlur$.asObservable());b(this,"_onPointerDown$",new N.Subject);b(this,"onPointerDown$",this._onPointerDown$.asObservable());b(this,"_container");b(this,"_inputParent");b(this,"_input");b(this,"_scrollTimers",[]);b(this,"_rangeList",[]);b(this,"_rangeListCache",[]);b(this,"_rectRangeList",[]);b(this,"_rectRangeListCache",[]);b(this,"_anchorNodePosition",null);b(this,"_focusNodePosition",null);b(this,"_currentSegmentId","");b(this,"_currentSegmentPage",-1);b(this,"_selectionStyle",M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE);b(this,"_onPointerEvent",!1);b(this,"_viewPortObserverMap",new Map);b(this,"_isIMEInputApply",!1);b(this,"_scenePointerMoveSubs",[]);b(this,"_scenePointerUpSubs",[]);b(this,"_reserveRanges",!1);this._context=e,this._layoutService=n,this._logService=r,this._univerInstanceService=s,this._docSkeletonManagerService=a,this._initDOM(),this._registerContainer(),this._setSystemHighlightColorToStyle(),this._listenCurrentUnitChange()}get isOnPointerEvent(){return this._onPointerEvent}get isFocusing(){return this._input===document.activeElement}get canFocusing(){return this.isFocusing||document.activeElement===document.body||document.activeElement===null}_listenCurrentUnitChange(){this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC).pipe(N.takeUntil(this.dispose$)).subscribe(e=>{if(e==null)return;e.getUnitId()!==this._context.unitId&&!this._reserveRanges&&this.removeAllRanges()})}get activeViewPort(){return this._context.scene.getViewports()[0]}setSegment(e){this._currentSegmentId=e}getSegment(){return this._currentSegmentId}setSegmentPage(e){this._currentSegmentPage=e}getSegmentPage(){return this._currentSegmentPage}setReserveRangesStatus(e){this._reserveRanges=e}_setRangeStyle(e=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE){this._selectionStyle=e}addDocRanges(e,n=!0,r){const{_currentSegmentId:s,_currentSegmentPage:a,_selectionStyle:c}=this,{scene:l,mainComponent:d}=this._context,A=d,u=this._docSkeletonManagerService.getSkeleton(),h=(g,m)=>{const p=ws(g,m,l,A,u,c,s,a);if(p==null)return;const{textRanges:f,rectRanges:S}=p;for(const v of f)this._addTextRange(v);this._addRectRanges(S)};for(const g of e){const{startOffset:m,endOffset:p,rangeType:f,startNodePosition:S,endNodePosition:v}=g;if(f===i.DOC_RANGE_TYPE.RECT){const E=Us(m,p,l,A,u,c,s,a);E&&this._addRectRanges([E])}else if(f===i.DOC_RANGE_TYPE.TEXT)try{let E=null;S&&v?E=sr(S.isBack?m:m-1,v.isBack?p:p-1,l,A,u,c,s,a,S.isBack,v.isBack):E=sr(m,p,l,A,u,c,s,a),E&&this._addTextRange(E)}catch{h(m,p)}else h(m,p)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:s,segmentPage:a,style:c,isEditing:n,options:r}),!(!e.length||(r==null?void 0:r.shouldFocus)===!1)&&this._updateInputPosition(r==null?void 0:r.forceFocus)}setCursorManually(e,n){const r=this._findNodeByCoord(e,n,{strict:!0,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),s=this._getNodePosition(r);if(s==null){this._removeAllRanges();return}(r==null?void 0:r.node.streamType)===i.DataStreamTreeTokenType.PARAGRAPH&&(s.isBack=!0),this._createTextRangeByAnchorPosition(s),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1})}sync(){this._updateInputPosition()}activate(e,n,r=!1){this._container.style.left=`${e}px`,this._container.style.top=`${n}px`,this._container.style.zIndex="1000",(this.canFocusing||r)&&this.focus()}hasFocus(){return document.activeElement===this._input}focus(){this._input.focus()}blur(){this._input.blur()}deactivate(){this._container.style.left="0px",this._container.style.top="0px"}__handleDblClick(e){const{offsetX:n,offsetY:r}=e,s=this._findNodeByCoord(n,r,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(s==null||s.node==null)return;const a=ar(s.node);if(a==null)return;const{content:c,st:l,nodeIndex:d}=a;if(d===-1||Intl.Segmenter==null)return;const u=new Intl.Segmenter(void 0,{granularity:"word"}).segment(c);let h=Number.NEGATIVE_INFINITY,g=Number.NEGATIVE_INFINITY;for(const{segment:m,index:p,isWordLike:f}of u)if(p<=d&&d<p+m.length&&f){h=p+l,g=p+l+m.length;break}if(Number.isFinite(h)&&Number.isFinite(g)){this.removeAllRanges();const m=[{startOffset:h,endOffset:g}];this.addDocRanges(m,!1,{forceFocus:!0})}}__handleTripleClick(e){const{offsetX:n,offsetY:r}=e,s=this._findNodeByCoord(n,r,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(s==null||s.node==null)return;const a=ar(s.node);if(a==null)return;this.removeAllRanges();const{st:c,ed:l}=a,d=[{startOffset:c,endOffset:l}];this.addDocRanges(d,!1,{forceFocus:!0})}__onPointDown(e){var f,S;const{scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton(),{offsetX:a,offsetY:c}=e,l=this._findNodeByCoord(a,c,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),d=this._getNodePosition(l);if(d==null||l==null){this._removeAllRanges();return}(l==null?void 0:l.node.streamType)===i.DataStreamTreeTokenType.PARAGRAPH&&(d.isBack=!0);const A=this._textSelectionInner$.value;if(l&&e.button===2&&A){const v=s.findCharIndexByPosition(d);if(typeof v=="number"&&A.textRanges.some(E=>E.startOffset<=v&&E.endOffset>v)||typeof v=="number"&&A.rectRanges.some(E=>E.startOffset<=v&&E.endOffset>=v))return}const{segmentId:u,segmentPage:h}=l;u&&this._currentSegmentId&&u!==this._currentSegmentId&&this.setSegment(u),u&&h!==this._currentSegmentPage&&this.setSegmentPage(h),this._anchorNodePosition=d,e.shiftKey&&this._getActiveRangeInstance()?this._updateActiveRangePosition(d):e.ctrlKey?this._removeAllCollapsedTextRanges():this._isEmpty()||this._removeAllRanges(),n.disableObjectsEvent();const g=M.ScrollTimer.create(n);this._scrollTimers.push(g),g.startScroll(a,c),this._onSelectionStart$.next((f=this._getActiveRangeInstance())==null?void 0:f.startNodePosition),(S=n.getTransformer())==null||S.clearSelectedObjects();let m=a,p=c;this._onPointerEvent=!0,this._scenePointerMoveSubs.push(n.onPointerMove$.subscribeEvent(v=>{const{offsetX:E,offsetY:T}=v;n.setCursor(M.CURSOR_TYPE.TEXT),!(Math.sqrt((E-m)**2+(T-p)**2)<3)&&(this._moving(E,T),g.scrolling(E,T,()=>{this._moving(E,T)}),m=E,p=T)})),this._scenePointerUpSubs.push(n.onPointerUp$.subscribeEvent(()=>{if([...this._scenePointerMoveSubs,...this._scenePointerUpSubs].forEach(E=>{E.unsubscribe()}),this._onPointerEvent=!1,n.enableObjectsEvent(),this._anchorNodePosition&&!this._focusNodePosition){if(e.ctrlKey){this._disposeScrollTimers();return}const E=new je(n,r,s,this._anchorNodePosition,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(E)}else if(this._anchorNodePosition&&this._focusNodePosition){for(const E of this._rangeListCache)e.ctrlKey?E.collapsed?E.dispose():this._addTextRange(E):this._addTextRange(E);this._addRectRanges(this._rectRangeListCache),this._rangeListCache=[],this._rectRangeListCache=[]}this._anchorNodePosition=null,this._focusNodePosition=null;const v={textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1};this._textSelectionInner$.next(v),this._disposeScrollTimers(),this._updateInputPosition(!0)}))}removeAllRanges(){this._removeAllRanges(),this.deactivate()}getActiveTextRange(){return this._getActiveRangeInstance()}_disposeScrollTimers(){this._scrollTimers.forEach(e=>{e==null||e.dispose()}),this._scrollTimers=[]}_setSystemHighlightColorToStyle(){const{r:e,g:n,b:r,a:s}=M.getSystemHighlightColor(),a={strokeWidth:1,stroke:"rgba(0, 0, 0, 0)",strokeActive:"rgba(0, 0, 0, 1)",fill:`rgba(${e}, ${n}, ${r}, ${s!=null?s:.3})`};this._setRangeStyle(a)}_getAllTextRanges(){return this._rangeList.map(Gn)}_getAllRectRanges(){return this._rectRangeList.map(Ls)}getAllTextRanges(){return this._getAllTextRanges()}getAllRectRanges(){return this._getAllRectRanges()}_getActiveRange(){const e=this._rangeList.find(s=>s.isActive());if(e==null)return null;const{startOffset:n,endOffset:r}=e;return n==null||r==null?null:Gn(e)}_getActiveRangeInstance(){return this._rangeList.find(e=>e.isActive())}dispose(){super.dispose(),this._detachEvent(),this._removeAllRanges(),this._container.remove()}_initDOM(){const{unitId:e}=this._context,n=document.createElement("div");n.style.position="fixed",n.style.left="0px",n.style.top="0px",n.id=`univer-doc-selection-container-${e}`;const r=document.createElement("div"),s=document.createElement("div");r.appendChild(s),n.appendChild(r),this._container=n,this._inputParent=r,this._input=s,this._initInput(),this._initInputEvents(),document.body.appendChild(n)}_registerContainer(){this.disposeWithMe(this._layoutService.registerContainerElement(this._container))}_initInput(){this._inputParent.style.cssText=`
3
+ they are not in the same segment page when in header or footer.`);const{start:c,end:l}=Vn(t,e);return this._selectionIterator(c,l,(d,A,u,h,g,m)=>{const{lineHeight:p,asc:f,paddingTop:S,marginTop:v,marginBottom:C}=m,{glyphGroup:y,st:b}=g;if(y.length===0)return;const{x:E,y:R}=this._liquid;let D,T;const _=y[d],O=y[A],N=y[d-1],F=(_==null?void 0:_.left)||0,H=(_==null?void 0:_.width)||0,U=(O==null?void 0:O.left)||0,L=(O==null?void 0:O.width)||0,W=(_==null?void 0:_.glyphType)===M.GlyphType.LIST,{startOffset:z,endOffset:j}=xs(y,d,A,b),k=c.glyph===d&&u?c.isBack:!0,V=l.glyph===A&&h?l.isBack:!1,X=c===l,K=k&&N!=null?N:_;if(d===0&&A===y.length-1)D={startX:E+F+(W?H:0),startY:R,endX:E+U+(V?0:L),endY:R+p-v-C},T={startX:E+F+(W?H:0),startY:R+S+f-K.bBox.ba,endX:E+U+(V?0:L),endY:R+S+f+K.bBox.bd};else{const Y=k&&!W;D={startX:E+F+(Y?0:H),startY:R,endX:E+U+(V?0:L),endY:R+p-v-C},T={startX:E+F+(Y?0:H),startY:R+S+f-K.bBox.ba,endX:E+U+(V?0:L),endY:R+S+f+K.bBox.bd}}n.push(Wn(D)),r.push(Wn(T)),s.push({startOffset:k?z:z+_.count,endOffset:V?j:j+O.count,collapsed:X})}),{borderBoxPointGroup:n,contentBoxPointGroup:r,cursorList:s}}_isValidPosition(t,e){const{segmentPage:n,pageType:r}=t,{segmentPage:s,pageType:a}=e;return r!==a?!1:r===M.DocumentSkeletonPageType.HEADER||r===M.DocumentSkeletonPageType.FOOTER?n===s:!0}_resetCurrentNodePositionState(){this._currentStartState={page:0,section:0,column:0,line:0,divide:0,glyph:0},this._currentEndState={page:0,section:0,column:0,line:0,divide:0,glyph:0}}_setNodePositionState(t=0,e,n,r){r===e?this._currentStartState[t]=1:this._currentStartState[t]=0,r===n?this._currentEndState[t]=2:this._currentEndState[t]=0}_checkPreviousNodePositionState(t,e=!0){let n=t,r;for(;n>=0;){const s=jt[n];let a;if(e?a=this._currentStartState[s]:a=this._currentEndState[s],a===void 0)return;if(r===void 0&&(r=a),a!==r)return 0;n--}return r}_getSelectionRuler(t,e,n,r,s){let a=0,c=r;const l=jt[t],d=jt[t+1];if(d===null||l===null)return{start_next:a,end_next:c};const A=e[l],u=n[l];this._setNodePositionState(l,A,u,s);const h=this._checkPreviousNodePositionState(t),g=this._checkPreviousNodePositionState(t,!1);return h===1&&(a=e[d]),g===2&&(c=n[d]),{start_next:a,end_next:c}}_selectionIterator(t,e,n){var y,b;const r=this._docSkeleton;if(!r)return[];const{pageType:s,path:a}=t;this._liquid.reset();const c=r.getSkeletonData();if(c==null)return[];const{pages:l,skeHeaders:d,skeFooters:A}=c,{page:u,segmentPage:h}=t,{page:g,segmentPage:m}=e;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:p,pageMarginLeft:f,pageMarginTop:S}=this._documentOffsetConfig,v=s===M.DocumentSkeletonPageType.BODY||s===M.DocumentSkeletonPageType.CELL?u:h;for(let E=0;E<v;E++){const R=l[E];this._liquid.translatePage(R,p,f,S)}const C=s===M.DocumentSkeletonPageType.BODY||s===M.DocumentSkeletonPageType.CELL?g:m;for(let E=v;E<=C;E++){const R=l[E],{headerId:D,footerId:T,pageWidth:_}=R;let O=R;if(s===M.DocumentSkeletonPageType.HEADER?O=(y=d.get(D))==null?void 0:y.get(_):s===M.DocumentSkeletonPageType.FOOTER?O=(b=A.get(T))==null?void 0:b.get(_):s===M.DocumentSkeletonPageType.CELL&&(O=M.getPageFromPath(c,a)),O==null){this._liquid.translatePage(R,p,f,S);continue}const N=O.sections,{start_next:F,end_next:H}=this._getSelectionRuler(Ze.page,t,e,N.length-1,s===M.DocumentSkeletonPageType.BODY||s===M.DocumentSkeletonPageType.CELL?E:0);switch(this._liquid.translateSave(),s){case M.DocumentSkeletonPageType.HEADER:this._liquid.translatePagePadding({...O,marginLeft:R.marginLeft});break;case M.DocumentSkeletonPageType.FOOTER:{const U=R.pageHeight-O.height-O.marginBottom;this._liquid.translate(R.marginLeft,U);break}case M.DocumentSkeletonPageType.CELL:{this._liquid.translatePagePadding(R);const U=O.parent,L=U.parent,{left:W}=O,{top:z,left:j}=L,{top:k}=U;this._liquid.translate(j+W,z+k),this._liquid.translatePagePadding(O);break}default:this._liquid.translatePagePadding(R);break}for(let U=F;U<=H;U++){const L=N[U],W=L.columns,{start_next:z,end_next:j}=this._getSelectionRuler(Ze.section,t,e,W.length-1,U);this._liquid.translateSection(L);for(let k=z;k<=j;k++){const V=W[k],X=V.lines,{start_next:K,end_next:Y}=this._getSelectionRuler(Ze.column,t,e,X.length-1,k);this._liquid.translateColumn(V);for(let G=K;G<=Y;G++){const q=X[G],{divides:ee}=q,{start_next:ge,end_next:xe}=this._getSelectionRuler(Ze.line,t,e,ee.length-1,G);this._liquid.translateSave(),this._liquid.translateLine(q,!0,!1);for(let he=ge;he<=xe;he++){const On=ee[he];this._liquid.translateSave(),this._liquid.translateDivide(On);const{glyphGroup:us}=On,{start_next:gs,end_next:hs}=this._getSelectionRuler(Ze.divide,t,e,us.length-1,he);let nr=!1,or=!1;E===v&&U===F&&k===z&&G===K&&he===ge&&(nr=!0),E===C&&U===H&&k===j&&G===Y&&he===xe&&(or=!0),n&&n(gs,hs,nr,or,On,q,V,L,O),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(R,p,f,S)}}}function li(o,t){const{path:e}=o,{path:n}=t;if(e.length!==n.length||e.indexOf("cells")===-1)return!1;const r=e.indexOf("skeTables")+1,s=e.indexOf("rows")+1,a=e.indexOf("cells")+1,{tableId:c,sliceIndex:l}=M.getTableIdAndSliceIndex(e[r]),{tableId:d,sliceIndex:A}=M.getTableIdAndSliceIndex(n[r]);if(c!==d)return!1;const u=e[s],h=n[s],g=e[a],m=n[a];return!(u===h&&g===m&&l===A)}function ho(o,t){const{path:e}=o,{path:n}=t;return e.indexOf("cells")===-1||n.indexOf("cells")===-1||e.length!==n.length?!1:i.Tools.diffValue(e,n)}function di(o,t,e){var g,m,p,f,S,v,C,y;const{path:n}=t,{path:r}=e;if(n.indexOf("cells")===-1||r.indexOf("cells")===-1)return!1;const s=o.findGlyphByPosition(t),a=o.findGlyphByPosition(e),c=(f=(p=(m=(g=s==null?void 0:s.parent)==null?void 0:g.parent)==null?void 0:m.parent)==null?void 0:p.parent)==null?void 0:f.parent,l=(y=(C=(v=(S=a==null?void 0:a.parent)==null?void 0:S.parent)==null?void 0:v.parent)==null?void 0:C.parent)==null?void 0:y.parent;if(c==null||l==null)return!1;const d=c.parent,A=l.parent,u=d.cells.indexOf(c),h=A.cells.indexOf(l);return u===h&&d.index===A.index}function Mn(o,t){if(ho(o,t))return go(o,t);const{path:e}=o,{path:n}=t,r=e[e.length-5],s=n[n.length-5];if(r!==s&&typeof r=="string"&&typeof s=="string"){const A=r.split("#-#")[1],u=s.split("#-#")[1];return+A<+u}const a=e[e.length-3],c=n[n.length-3],l=e[e.length-1],d=n[n.length-1];return a<c?!0:a>c?!1:l<=d}function Xe(o){return o.sections[0].columns[0].lines.length===0}function Os(o,t,e){let n=t,r=e,s=o[n],a=o[r];for(;n<r&&(Xe(s)||Xe(a));)Xe(s)?(n++,s=o[n]):Xe(a)&&(r--,a=o[r]);if(!Xe(s)&&!Xe(a))return[s,a]}class mo{constructor(t,e){x(this,"_liquid",new M.Liquid);this._documentOffsetConfig=t,this._docSkeleton=e}getRangePointData(t,e){const n=[],s=this._docSkeleton.getSkeletonData();if(s==null)return;const{pages:a}=s,{segmentPage:c,page:l,pageType:d}=t,A=this._getTableRectRangeInfo(t,e);if(A==null)return;const{tableId:u,startRowIndex:h,startColumnIndex:g,endRowIndex:m,endColumnIndex:p}=A;this._liquid.reset();const{pageLayoutType:f,pageMarginLeft:S,pageMarginTop:v}=this._documentOffsetConfig,C=d===M.DocumentSkeletonPageType.BODY||d===M.DocumentSkeletonPageType.CELL?l:c;for(let y=0;y<C;y++){const b=a[y];this._liquid.translatePage(b,f,S,v)}for(let y=C;y<a.length;y++){const b=a[y];this._liquid.translatePagePadding(b);const{skeTables:E}=b;let R=null;for(const[O,N]of E.entries())O.startsWith(u)&&(R=N);if(R==null){this._liquid.restorePagePadding(b),this._liquid.translatePage(b,f,S,v);continue}this._liquid.translateSave(),this._liquid.translate(0,R.top);const{x:D,y:T}=this._liquid,{left:_}=R;for(const O of R.rows)if(O.index>=h&&O.index<=m){const N=Os(O.cells,g,p);if(N==null)continue;const[F,H]=N,U={startX:D+F.left+_,startY:T+O.top,endX:D+H.left+H.pageWidth+_,endY:T+O.top+O.height};n.push(Wn(U))}this._liquid.translateRestore(),this._liquid.restorePagePadding(b),this._liquid.translatePage(b,f,S,v)}return{pointGroup:n,startRow:h,startColumn:g,endRow:m,endColumn:p,tableId:u}}getNodePositionGroup(t,e){const n=[],r=this._docSkeleton.findCharIndexByPosition(t),s=this._docSkeleton.findCharIndexByPosition(e);if(r==null||s==null)return;const a=r<s,c=this._getTableRectRangeInfo(t,e);if(c==null)return;const{tableId:l,startRowIndex:d,startColumnIndex:A,endRowIndex:u,endColumnIndex:h}=c,g=this._docSkeleton.getViewModel().findTableNodeById(l);if(g==null)return;const m=g.children[0].children.length;if(A===0&&h===m-1){const f=g.children[d].children[A],S=this._docSkeleton.findNodePositionByCharIndex(f.startIndex+1),v=g.children[u].children[h],C=this._docSkeleton.findNodePositionByCharIndex(v.endIndex-2);if(S==null||C==null)return;n.push({anchor:a?S:C,focus:a?C:S})}else for(let f=d;f<=u;f++){const S=g.children[f],v=S.children[A],C=S.children[h],y=this._docSkeleton.findNodePositionByCharIndex(v.startIndex+1),b=this._docSkeleton.findNodePositionByCharIndex(C.endIndex-2);if(y==null||b==null)return;n.push({anchor:a?y:b,focus:a?b:y})}return n}_getTableRectRangeInfo(t,e){const r=this._docSkeleton.getSkeletonData();if(r==null)return;const{pages:s}=r,{path:a}=t,{path:c}=e,l=M.getPageFromPath(r,a),d=M.getPageFromPath(r,c);if(l==null||d==null)return;const A=l.segmentId,u=l.parent.index,h=l.parent.cells.indexOf(l),g=(d==null?void 0:d.parent).index,m=(d==null?void 0:d.parent).cells.indexOf(d),p=Math.min(u,g),f=Math.max(u,g),S=Math.min(h,m),v=Math.max(h,m);return{pages:s,tableId:A,startRowIndex:p,startColumnIndex:S,endRowIndex:f,endColumnIndex:v}}}const Ms="__TestSelectionRange__",Ds="__TestSelectionAnchor__",ir=6,Dn=500,Bs=500,Xt=3;function St(o){const t=o[0],e=t[0],n=t[2],{x:r,y:s}=e,{x:a,y:c}=n;return{left:r,top:s,width:a-r,height:c-s}}function cn(o){return o.map(t=>{let e=1/0,n=-1/0,r=1/0,s=-1/0;return t.forEach(a=>{e=Math.min(a.x,e),n=Math.max(a.x,n),s=Math.max(a.y,s),r=Math.min(a.y,r)}),{left:e,right:n,top:r,bottom:s}})}class je{constructor(t,e,n,r,s,a=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c="",l=-1){x(this,"rangeType",i.DOC_RANGE_TYPE.TEXT);x(this,"_current",!1);x(this,"_rangeShape");x(this,"_anchorShape");x(this,"_cursorList",[]);x(this,"_anchorBlinkTimer",null);this._scene=t,this._document=e,this._docSkeleton=n,this.anchorNodePosition=r,this.focusNodePosition=s,this.style=a,this._segmentId=c,this._segmentPage=l,this._anchorBlink(),this.refresh()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},Dn),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},Dn))},Bs+Dn)}get startOffset(){var r;const{startOffset:t}=(r=jn(this._cursorList))!=null?r:{},e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId).getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(n,t)}get endOffset(){var r;const{endOffset:t}=(r=jn(this._cursorList))!=null?r:{},e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId).getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(t,n)}get collapsed(){const{startOffset:t,endOffset:e}=this;return t!=null&&t===e}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:t}=Vn(this.anchorNodePosition,this.focusNodePosition);return t}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:t}=Vn(this.anchorNodePosition,this.focusNodePosition);return t}get direction(){const{collapsed:t,anchorNodePosition:e,focusNodePosition:n}=this;return t||e==null||n==null?i.RANGE_DIRECTION.NONE:go(e,n)?i.RANGE_DIRECTION.FORWARD:i.RANGE_DIRECTION.BACKWARD}get segmentId(){return this._segmentId}get segmentPage(){return this._segmentPage}getAbsolutePosition(){const t=this.anchorNodePosition,e=this.focusNodePosition;if(this._isEmpty())return;const n=this._document.getOffsetConfig(),{docsLeft:r,docsTop:s}=n,a=new ve(n,this._docSkeleton);if(this._isCollapsed()){const{contentBoxPointGroup:A,cursorList:u}=a.getRangePointData(t,t);if(this._setCursorList(u),A.length===0)return;const h=St(A);return{...h,left:h.left+r,top:h.top+s}}const{borderBoxPointGroup:c,cursorList:l}=a.getRangePointData(t,e);if(this._setCursorList(l),c.length===0)return;const d=St(c);return{...d,left:d.left+r,top:d.top+s}}getAnchor(){return this._anchorShape}activeStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.strokeActive)||M.getColor(i.COLORS.black,1)})}deactivateStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.stroke)||M.getColor(i.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var t,e;(t=this._rangeShape)==null||t.dispose(),this._rangeShape=null,(e=this._anchorShape)==null||e.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&(clearInterval(this._anchorBlinkTimer),this._anchorBlinkTimer=null)}isIntersection(t){const{startOffset:e,endOffset:n}=this,{startOffset:r,endOffset:s}=t;return e==null||n==null||r==null||s==null?!1:e<=s&&n>=r}refresh(){var u,h;const{_document:t,_docSkeleton:e}=this,n=this.anchorNodePosition,r=this.focusNodePosition;if((u=this._anchorShape)==null||u.hide(),(h=this._rangeShape)==null||h.hide(),this._isEmpty())return;const s=t.getOffsetConfig(),{docsLeft:a,docsTop:c}=s,l=new ve(s,e);if(this._isCollapsed()){const{contentBoxPointGroup:g,cursorList:m}=l.getRangePointData(n,n);if(this._setCursorList(m),g.length>0){const p=e.findGlyphByPosition(n);this._createOrUpdateAnchor(g,a,c,p)}return}const{borderBoxPointGroup:d,cursorList:A}=l.getRangePointData(n,r);this._setCursorList(A),d.length>0&&this._createOrUpdateRange(d,a,c)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const t=this.anchorNodePosition,e=this.focusNodePosition;if(t!=null&&e==null)return!0;if(t==null||e==null)return!1;const n=Object.keys(Ze);for(const r of n){const s=t[r],a=e[r];if(s!==a)return!1}return t.isBack===e.isBack}_createOrUpdateRange(t,e,n){var a;if(this._rangeShape){this._rangeShape.translate(e,n),this._rangeShape.updatePointGroup(t),this._rangeShape.show();return}const r=.3,s=new M.RegularPolygon(Ms+i.Tools.generateRandomId(ir),{pointsGroup:t,fill:((a=this.style)==null?void 0:a.fill)||M.getColor(i.COLORS.black,r),left:e,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=s,this._scene.addObject(s,Xt)}_createOrUpdateAnchor(t,e,n,r){var p,f,S;const s=St(t),{left:a}=s;let{top:c,height:l}=s;const d=14;l<d&&(c-=d-l,l=d);const A=12;let u=a+e;const h=c+n,g=((p=r==null?void 0:r.ts)==null?void 0:p.it)===i.BooleanNumber.TRUE;if(g&&(u+=l*Math.tan(A*Math.PI/180)/2),this._anchorShape){this._anchorShape.transformByState({left:u,top:h,height:l}),this._anchorShape.show(),g?this._anchorShape.skew(-12,0):this._anchorShape.skew(0,0);return}const m=new M.Rect(Ds+i.generateRandomId(ir),{left:u,top:h,height:l,strokeWidth:((f=this.style)==null?void 0:f.strokeWidth)||1,stroke:((S=this.style)==null?void 0:S.strokeActive)||M.getColor(i.COLORS.black,1),evented:!1});g&&m.skew(-12,0),this._anchorShape=m,this._scene.addObject(m,Xt),this.activeStatic()}_setCursorList(t){t.length!==0&&(this._cursorList=t)}}const _s="__DocTableRectRange__",Ns=6;function Wt(o,t,e,n,r,s=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,a="",c=-1){const l=t.getOffsetConfig(),A=new mo(l,e).getNodePositionGroup(n,r);return(A!=null?A:[]).map(u=>new po(o,t,e,u.anchor,u.focus,s,a,c))}class po{constructor(t,e,n,r,s,a=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c="",l=-1){x(this,"rangeType",i.DOC_RANGE_TYPE.RECT);x(this,"_rangeShape");x(this,"_current",!1);x(this,"_startRow");x(this,"_startCol");x(this,"_endRow");x(this,"_endCol");x(this,"_tableId");this._scene=t,this._document=e,this._docSkeleton=n,this.anchorNodePosition=r,this.focusNodePosition=s,this.style=a,this._segmentId=c,this._segmentPage=l,this.refresh()}get startOffset(){const{startNodePosition:t}=this;return this._docSkeleton.findCharIndexByPosition(t)}get endOffset(){const{endNodePosition:t}=this;return this._docSkeleton.findCharIndexByPosition(t)}get collapsed(){return!1}get startRow(){return this._startRow}get startColumn(){return this._startCol}get endRow(){return this._endRow}get endColumn(){return this._endCol}get tableId(){return this._tableId}get segmentId(){return this._segmentId}get segmentPage(){return this._segmentPage}get spanEntireRow(){var a;const e=(a=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:a[this._tableId],{_startCol:n,_endCol:r}=this;if(e==null)throw new Error("Table is not found.");const{tableColumns:s}=e;return n===0&&r===s.length-1}get spanEntireColumn(){var a;const e=(a=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:a[this._tableId],{_startRow:n,_endRow:r}=this;if(e==null)throw new Error("Table is not found.");const{tableRows:s}=e;return n===0&&r===s.length-1}get spanEntireTable(){return this.spanEntireRow&&this.spanEntireColumn}get startNodePosition(){const{anchorNodePosition:t,focusNodePosition:e}=this;return Mn(t,e)?t:e}get endNodePosition(){const{anchorNodePosition:t,focusNodePosition:e}=this;return Mn(t,e)?e:t}get direction(){const{anchorNodePosition:t,focusNodePosition:e}=this;return Mn(t,e)?i.RANGE_DIRECTION.FORWARD:i.RANGE_DIRECTION.BACKWARD}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var t;(t=this._rangeShape)==null||t.dispose(),this._rangeShape=null}isIntersection(t){const{startRow:e,startColumn:n,endRow:r,endColumn:s}=this,{startRow:a,startColumn:c,endRow:l,endColumn:d}=t,A={left:n,top:e,right:s,bottom:r},u={left:c,top:a,right:d,bottom:l};return i.Rectangle.hasIntersectionBetweenTwoRect(A,u)}refresh(){var f;(f=this._rangeShape)==null||f.hide();const{startNodePosition:t,endNodePosition:e,_document:n,_docSkeleton:r}=this,s=n.getOffsetConfig(),{docsLeft:a,docsTop:c}=s,d=new mo(s,r).getRangePointData(t,e);if(d==null)return;const{pointGroup:A=[],startRow:u,endRow:h,startColumn:g,endColumn:m,tableId:p}=d;(A==null?void 0:A.length)>0&&this._createOrUpdateRange(A,a,c),this._updateTableInfo(u,h,g,m,p)}_updateTableInfo(t,e,n,r,s){this._startRow=t,this._endRow=e,this._startCol=n,this._endCol=r,this._tableId=s}_createOrUpdateRange(t,e,n){var a;if(this._rangeShape){this._rangeShape.translate(e,n),this._rangeShape.updatePointGroup(t),this._rangeShape.show();return}const r=.3,s=new M.RegularPolygon(_s+i.Tools.generateRandomId(Ns),{pointsGroup:t,fill:((a=this.style)==null?void 0:a.fill)||M.getColor(i.COLORS.black,r),left:e,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=s,this._scene.addObject(s,Xt)}}function sr(o,t,e,n,r,s,a,c,l=!0,d=!0){const A=r.findNodePositionByCharIndex(o,l,a,c),u=r.findNodePositionByCharIndex(t,d,a,c);if(!(A==null||u==null))return new je(e,n,r,A,u,s,a,c)}function Ps(o,t,e,n,r,s,a,c){const l=r.findNodePositionByCharIndex(o,!0,a,c),d=r.findNodePositionByCharIndex(t,!0,a,c);if(!(l==null||d==null))return new po(e,n,r,l,d,s,a,c)}function Us(o,t,e,n,r,s,a,c){const l=r.findNodePositionByCharIndex(o,!0,a,c),d=r.findNodePositionByCharIndex(t,!0,a,c);if(!(l==null||d==null))return zn(l,d,e,n,r,s,a,c)}function zn(o,t,e,n,r,s,a,c){const l=[],d=[],A=[e,n,r,o,t,s,a,c];if(di(r,o,t)){if(ho(o,t))return l.push(new je(...A)),{textRanges:l,rectRanges:d};{const C=Wt(...A);return d.push(...C),{textRanges:l,rectRanges:d}}}if(li(o,t)){const C=Wt(...A);return d.push(...C),{textRanges:l,rectRanges:d}}const u=r.getViewModel().getSelfOrHeaderFooterViewModel(a),h=r.findCharIndexByPosition(o),g=r.findCharIndexByPosition(t);if(h==null||g==null)return;const m=h<=g?i.RANGE_DIRECTION.FORWARD:i.RANGE_DIRECTION.BACKWARD,p=Math.min(h,g),f=Math.max(h,g);let S=p,v=f;for(const C of u.getChildren())for(const y of C.children){const{startIndex:b,endIndex:E,children:R}=y,D=C.children.indexOf(y),T=C.children[D+1],_=R[0];let O=!1;if(_){const{startIndex:N,endIndex:F,children:H}=_;let U=null,L=null;const W=H.find(j=>j.startIndex<=p&&j.endIndex>=p),z=H.find(j=>j.startIndex<=f&&j.endIndex>=f);if(p>N&&p<F)U=r.findNodePositionByCharIndex(W.startIndex+2,!0,a,c),L=r.findNodePositionByCharIndex(F-4,!0,a,c),S=F+1;else if(f>N&&f<F)U=r.findNodePositionByCharIndex(N+3,!0,a,c),L=r.findNodePositionByCharIndex(z.endIndex-3,!0,a,c),v=N-1,O=!0;else if(N>p&&F<f){if(U=r.findNodePositionByCharIndex(N+3,!0,a,c),L=r.findNodePositionByCharIndex(F-4,!0,a,c),S<=N-1){const j=r.findNodePositionByCharIndex(S,!0,a,c),k=r.findNodePositionByCharIndex(N-1,!1,a,c),V=m===i.RANGE_DIRECTION.FORWARD?j:k,X=m===i.RANGE_DIRECTION.FORWARD?k:j;l.push(new je(e,n,r,V,X,s,a,c))}S=F+1}if(U&&L){const j=m===i.RANGE_DIRECTION.FORWARD?U:L,k=m===i.RANGE_DIRECTION.FORWARD?L:U;d.push(...Wt(e,n,r,j,k,s,a,c))}}if(v===E+1&&!O&&T&&T.children.length&&(v=E,O=!0),v>=b&&v<=E||O){const N=r.findNodePositionByCharIndex(S,!0,a,c),F=r.findNodePositionByCharIndex(v,!O,a,c),H=m===i.RANGE_DIRECTION.FORWARD?N:F,U=m===i.RANGE_DIRECTION.FORWARD?F:N;if(d.length&&i.Tools.diffValue(H,U))continue;l.push(new je(e,n,r,H,U,s,a,c))}}return{textRanges:l,rectRanges:d}}function Ai(o){const t=o==null?void 0:o.getCanvasElement();if(!t)return{left:0,top:0};const{top:e,left:n}=M.getOffsetRectForDom(t);return{left:n,top:e}}function ar(o){var l;const t=(l=o.parent)==null?void 0:l.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;const{paragraphIndex:n}=t,r=e.lines.filter(d=>d.paragraphIndex===n);let s=-1,a="",c=!1;for(const d of r)for(const A of d.divides)for(const u of A.glyphGroup)c||(s+=u.count),u===o&&(c=!0),a+=u.count>0?u.content:"";return{st:r[0].st,ed:n,content:a,nodeIndex:s}}function Gn(o){const{startOffset:t,endOffset:e,collapsed:n,rangeType:r,startNodePosition:s,endNodePosition:a,direction:c,segmentId:l,segmentPage:d}=o;return{startOffset:t,endOffset:e,collapsed:n,rangeType:r,startNodePosition:s,endNodePosition:a,direction:c,segmentId:l,segmentPage:d,isActive:o.isActive()}}function ws(o){const t=Gn(o),{startRow:e,startColumn:n,endRow:r,endColumn:s,tableId:a,spanEntireRow:c,spanEntireColumn:l,spanEntireTable:d}=o;return{...t,startRow:e,startColumn:n,endRow:r,endColumn:s,tableId:a,spanEntireRow:c,spanEntireColumn:l,spanEntireTable:d}}var Ls=Object.getOwnPropertyDescriptor,Qs=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ls(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ut=(o,t)=>(e,n)=>t(e,n,o);exports.DocSelectionRenderService=class extends i.RxDisposable{constructor(e,n,r,s,a){super();x(this,"_onInputBefore$",new P.Subject);x(this,"onInputBefore$",this._onInputBefore$.asObservable());x(this,"_onKeydown$",new P.Subject);x(this,"onKeydown$",this._onKeydown$.asObservable());x(this,"_onInput$",new P.Subject);x(this,"onInput$",this._onInput$.asObservable());x(this,"_onCompositionstart$",new P.BehaviorSubject(null));x(this,"onCompositionstart$",this._onCompositionstart$.asObservable());x(this,"_onCompositionupdate$",new P.BehaviorSubject(null));x(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());x(this,"_onCompositionend$",new P.BehaviorSubject(null));x(this,"onCompositionend$",this._onCompositionend$.asObservable());x(this,"_onSelectionStart$",new P.BehaviorSubject(null));x(this,"onSelectionStart$",this._onSelectionStart$.asObservable());x(this,"onChangeByEvent$",P.merge(this._onInput$,this._onKeydown$.pipe(P.filter(e=>e.event.keyCode===I.KeyCode.BACKSPACE)),this._onCompositionend$));x(this,"_onPaste$",new P.Subject);x(this,"onPaste$",this._onPaste$.asObservable());x(this,"_textSelectionInner$",new P.BehaviorSubject(null));x(this,"textSelectionInner$",this._textSelectionInner$.asObservable());x(this,"_onFocus$",new P.Subject);x(this,"onFocus$",this._onFocus$.asObservable());x(this,"_onBlur$",new P.Subject);x(this,"onBlur$",this._onBlur$.asObservable());x(this,"_onPointerDown$",new P.Subject);x(this,"onPointerDown$",this._onPointerDown$.asObservable());x(this,"_container");x(this,"_inputParent");x(this,"_input");x(this,"_scrollTimers",[]);x(this,"_rangeList",[]);x(this,"_rangeListCache",[]);x(this,"_rectRangeList",[]);x(this,"_rectRangeListCache",[]);x(this,"_anchorNodePosition",null);x(this,"_focusNodePosition",null);x(this,"_currentSegmentId","");x(this,"_currentSegmentPage",-1);x(this,"_selectionStyle",M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE);x(this,"_onPointerEvent",!1);x(this,"_viewPortObserverMap",new Map);x(this,"_isIMEInputApply",!1);x(this,"_scenePointerMoveSubs",[]);x(this,"_scenePointerUpSubs",[]);x(this,"_reserveRanges",!1);this._context=e,this._layoutService=n,this._logService=r,this._univerInstanceService=s,this._docSkeletonManagerService=a,this._initDOM(),this._registerContainer(),this._setSystemHighlightColorToStyle(),this._listenCurrentUnitChange()}get isOnPointerEvent(){return this._onPointerEvent}get isFocusing(){return this._input===document.activeElement}get canFocusing(){return this.isFocusing||document.activeElement===document.body||document.activeElement===null}_listenCurrentUnitChange(){this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC).pipe(P.takeUntil(this.dispose$)).subscribe(e=>{if(e==null)return;e.getUnitId()!==this._context.unitId&&!this._reserveRanges&&this.removeAllRanges()})}get activeViewPort(){return this._context.scene.getViewports()[0]}setSegment(e){this._currentSegmentId=e}getSegment(){return this._currentSegmentId}setSegmentPage(e){this._currentSegmentPage=e}getSegmentPage(){return this._currentSegmentPage}setReserveRangesStatus(e){this._reserveRanges=e}_setRangeStyle(e=M.NORMAL_TEXT_SELECTION_PLUGIN_STYLE){this._selectionStyle=e}addDocRanges(e,n=!0,r){const{_currentSegmentId:s,_currentSegmentPage:a,_selectionStyle:c}=this,{scene:l,mainComponent:d}=this._context,A=d,u=this._docSkeletonManagerService.getSkeleton(),h=(g,m)=>{const p=Us(g,m,l,A,u,c,s,a);if(p==null)return;const{textRanges:f,rectRanges:S}=p;for(const v of f)this._addTextRange(v);this._addRectRanges(S)};for(const g of e){const{startOffset:m,endOffset:p,rangeType:f,startNodePosition:S,endNodePosition:v}=g;if(f===i.DOC_RANGE_TYPE.RECT){const C=Ps(m,p,l,A,u,c,s,a);C&&this._addRectRanges([C])}else if(f===i.DOC_RANGE_TYPE.TEXT)try{let C=null;S&&v?C=sr(S.isBack?m:m-1,v.isBack?p:p-1,l,A,u,c,s,a,S.isBack,v.isBack):C=sr(m,p,l,A,u,c,s,a),C&&this._addTextRange(C)}catch{h(m,p)}else h(m,p)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:s,segmentPage:a,style:c,isEditing:n,options:r}),!(!e.length||(r==null?void 0:r.shouldFocus)===!1)&&this._updateInputPosition(r==null?void 0:r.forceFocus)}setCursorManually(e,n){const r=this._findNodeByCoord(e,n,{strict:!0,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),s=this._getNodePosition(r);if(s==null){this._removeAllRanges();return}(r==null?void 0:r.node.streamType)===i.DataStreamTreeTokenType.PARAGRAPH&&(s.isBack=!0),this._createTextRangeByAnchorPosition(s),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1})}sync(){this._updateInputPosition()}activate(e,n,r=!1){this._container.style.left=`${e}px`,this._container.style.top=`${n}px`,this._container.style.zIndex="1000",(this.canFocusing||r)&&this.focus()}hasFocus(){return document.activeElement===this._input}focus(){this._input.focus()}blur(){this._input.blur()}deactivate(){this._container.style.left="0px",this._container.style.top="0px"}__handleDblClick(e){const{offsetX:n,offsetY:r}=e,s=this._findNodeByCoord(n,r,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(s==null||s.node==null)return;const a=ar(s.node);if(a==null)return;const{content:c,st:l,nodeIndex:d}=a;if(d===-1||Intl.Segmenter==null)return;const u=new Intl.Segmenter(void 0,{granularity:"word"}).segment(c);let h=Number.NEGATIVE_INFINITY,g=Number.NEGATIVE_INFINITY;for(const{segment:m,index:p,isWordLike:f}of u)if(p<=d&&d<p+m.length&&f){h=p+l,g=p+l+m.length;break}if(Number.isFinite(h)&&Number.isFinite(g)){this.removeAllRanges();const m=[{startOffset:h,endOffset:g}];this.addDocRanges(m,!1,{forceFocus:!0})}}__handleTripleClick(e){const{offsetX:n,offsetY:r}=e,s=this._findNodeByCoord(n,r,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(s==null||s.node==null)return;const a=ar(s.node);if(a==null)return;this.removeAllRanges();const{st:c,ed:l}=a,d=[{startOffset:c,endOffset:l}];this.addDocRanges(d,!1,{forceFocus:!0})}__onPointDown(e){var f,S;const{scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton(),{offsetX:a,offsetY:c}=e,l=this._findNodeByCoord(a,c,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),d=this._getNodePosition(l);if(d==null||l==null){this._removeAllRanges();return}(l==null?void 0:l.node.streamType)===i.DataStreamTreeTokenType.PARAGRAPH&&(d.isBack=!0);const A=this._textSelectionInner$.value;if(l&&e.button===2&&A){const v=s.findCharIndexByPosition(d);if(typeof v=="number"&&A.textRanges.some(C=>C.startOffset<=v&&C.endOffset>v)||typeof v=="number"&&A.rectRanges.some(C=>C.startOffset<=v&&C.endOffset>=v))return}const{segmentId:u,segmentPage:h}=l;u&&this._currentSegmentId&&u!==this._currentSegmentId&&this.setSegment(u),u&&h!==this._currentSegmentPage&&this.setSegmentPage(h),this._anchorNodePosition=d,e.shiftKey&&this._getActiveRangeInstance()?this._updateActiveRangePosition(d):e.ctrlKey?this._removeAllCollapsedTextRanges():this._isEmpty()||this._removeAllRanges(),n.disableObjectsEvent();const g=M.ScrollTimer.create(n);this._scrollTimers.push(g),g.startScroll(a,c),this._onSelectionStart$.next((f=this._getActiveRangeInstance())==null?void 0:f.startNodePosition),(S=n.getTransformer())==null||S.clearSelectedObjects();let m=a,p=c;this._onPointerEvent=!0,this._scenePointerMoveSubs.push(n.onPointerMove$.subscribeEvent(v=>{const{offsetX:C,offsetY:y}=v;n.setCursor(M.CURSOR_TYPE.TEXT),!(Math.sqrt((C-m)**2+(y-p)**2)<3)&&(this._moving(C,y),g.scrolling(C,y,()=>{this._moving(C,y)}),m=C,p=y)})),this._scenePointerUpSubs.push(n.onPointerUp$.subscribeEvent(()=>{if([...this._scenePointerMoveSubs,...this._scenePointerUpSubs].forEach(C=>{C.unsubscribe()}),this._onPointerEvent=!1,n.enableObjectsEvent(),this._anchorNodePosition&&!this._focusNodePosition){if(e.ctrlKey){this._disposeScrollTimers();return}const C=new je(n,r,s,this._anchorNodePosition,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(C)}else if(this._anchorNodePosition&&this._focusNodePosition){for(const C of this._rangeListCache)e.ctrlKey?C.collapsed?C.dispose():this._addTextRange(C):this._addTextRange(C);this._addRectRanges(this._rectRangeListCache),this._rangeListCache=[],this._rectRangeListCache=[]}this._anchorNodePosition=null,this._focusNodePosition=null;const v={textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1};this._textSelectionInner$.next(v),this._disposeScrollTimers(),this._updateInputPosition(!0)}))}removeAllRanges(){this._removeAllRanges(),this.deactivate()}getActiveTextRange(){return this._getActiveRangeInstance()}_disposeScrollTimers(){this._scrollTimers.forEach(e=>{e==null||e.dispose()}),this._scrollTimers=[]}_setSystemHighlightColorToStyle(){const{r:e,g:n,b:r,a:s}=M.getSystemHighlightColor(),a={strokeWidth:1,stroke:"rgba(0, 0, 0, 0)",strokeActive:"rgba(0, 0, 0, 1)",fill:`rgba(${e}, ${n}, ${r}, ${s!=null?s:.3})`};this._setRangeStyle(a)}_getAllTextRanges(){return this._rangeList.map(Gn)}_getAllRectRanges(){return this._rectRangeList.map(ws)}getAllTextRanges(){return this._getAllTextRanges()}getAllRectRanges(){return this._getAllRectRanges()}_getActiveRange(){const e=this._rangeList.find(s=>s.isActive());if(e==null)return null;const{startOffset:n,endOffset:r}=e;return n==null||r==null?null:Gn(e)}_getActiveRangeInstance(){return this._rangeList.find(e=>e.isActive())}dispose(){super.dispose(),this._detachEvent(),this._removeAllRanges(),this._container.remove()}_initDOM(){const{unitId:e}=this._context,n=document.createElement("div");n.style.position="fixed",n.style.left="0px",n.style.top="0px",n.id=`univer-doc-selection-container-${e}`;const r=document.createElement("div"),s=document.createElement("div");r.appendChild(s),n.appendChild(r),this._container=n,this._inputParent=r,this._input=s,this._initInput(),this._initInputEvents(),document.body.appendChild(n)}_registerContainer(){this.disposeWithMe(this._layoutService.registerContainerElement(this._container))}_initInput(){this._inputParent.style.cssText=`
4
4
  position:absolute;
5
5
  height:1px;
6
6
  width:1px;
@@ -16,42 +16,43 @@
16
16
  caret-color: transparent;
17
17
  white-space: pre-wrap;
18
18
  user-select: text;
19
- `}_getNodePosition(e){if(e==null)return;const{node:n,ratioX:r,segmentPage:s}=e,c=this._docSkeletonManagerService.getSkeleton().findPositionByGlyph(n,s);if(c==null)return;let d=r<.5;return n.glyphType===M.GlyphType.LIST&&(d=!0),{...c,isBack:d}}_interactTextRanges(e){const n=[];for(const r of this._rangeList){if(e.some(s=>s.isIntersection(r))){r.dispose();continue}n.push(r)}this._rangeList=n}_interactRectRanges(e){const n=[];for(const r of this._rectRangeList){if(e.some(s=>s.isIntersection(r))){r.dispose();continue}n.push(r)}this._rectRangeList=n}_removeAllRanges(){this._removeAllTextRanges(),this._removeAllRectRanges()}_removeAllCacheRanges(){this._rangeListCache.forEach(e=>{e.dispose()}),this._rectRangeListCache.forEach(e=>{e.dispose()}),this._rangeListCache=[],this._rectRangeListCache=[]}_removeAllTextRanges(){this._rangeList.forEach(e=>{e.dispose()}),this._rangeList=[]}_removeAllRectRanges(){this._rectRangeList.forEach(e=>{e.dispose()}),this._rectRangeList=[]}_removeAllCollapsedTextRanges(){for(const e of this._rangeList)e.collapsed&&e.dispose()}_deactivateAllTextRanges(){this._rangeList.forEach(e=>{e.deactivate()})}_deactivateAllRectRanges(){this._rectRangeList.forEach(e=>{e.deactivate()})}_addTextRangesToCache(e){this._rangeListCache.push(...e)}_addTextRange(e){this._deactivateAllTextRanges(),e.activate(),this._rangeList.push(e)}_addRectRangesToCache(e){this._rectRangeListCache.push(...e)}_addRectRanges(e){e.length!==0&&(this._deactivateAllRectRanges(),e[e.length-1].activate(),this._rectRangeList.push(...e))}_createTextRangeByAnchorPosition(e){this._removeAllRanges();const{scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton(),a=new je(n,r,s,e,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(a)}_updateActiveRangePosition(e){const n=this._getActiveRangeInstance();if(n==null||n.anchorNodePosition==null){this._logService.error("[DocSelectionRenderService] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllRanges(),this._anchorNodePosition=n.anchorNodePosition,this._focusNodePosition=e;const{scene:r,mainComponent:s}=this._context,a=this._docSkeletonManagerService.getSkeleton(),{_anchorNodePosition:c,_focusNodePosition:l,_selectionStyle:d,_currentSegmentId:A,_currentSegmentPage:u}=this;if(c==null||l==null||s==null)return;const h=zn(c,l,r,s,a,d,A,u);if(h==null)return;const{textRanges:g,rectRanges:m}=h;this._addTextRangesToCache(g),this._addRectRangesToCache(m),this.deactivate()}_isEmpty(){return this._rangeList.length===0&&this._rectRangeList.length===0}_getCanvasOffset(){var n;const e=(n=this._context.scene)==null?void 0:n.getEngine();return Ai(e)}_updateInputPosition(e=!1){const n=this._getActiveRangeInstance(),r=n==null?void 0:n.getAnchor();if(!r||r&&!r.visible||this.activeViewPort==null){this.focus();return}const{left:s,top:a}=r,c=this.activeViewPort.getAbsoluteVector(M.Vector2.FromArray([s,a])),{x:l,y:d}=c;let{left:A,top:u}=this._getCanvasOffset();A+=l,u+=d,this.activate(A,u,e)}_moving(e,n){var v,E;const{_currentSegmentId:r,_currentSegmentPage:s}=this,a=this._findNodeByCoord(e,n,{strict:!0,segmentId:r,segmentPage:s}),c=this._getNodePosition(a);if(c==null||a==null)return;const l=a==null?void 0:a.node.parent,d=l==null?void 0:l.glyphGroup[l.glyphGroup.indexOf(a.node)+1];(a==null?void 0:a.node.streamType)===i.DataStreamTreeTokenType.PARAGRAPH&&(d==null?void 0:d.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK&&(c.isBack=!0),this._focusNodePosition=c,this._removeAllCacheRanges();const{_anchorNodePosition:A,_selectionStyle:u}=this,{scene:h,mainComponent:g}=this._context,m=this._docSkeletonManagerService.getSkeleton();if(A==null||g==null)return;const p=zn(A,c,h,g,m,u,r,s);if(p==null)return;const{textRanges:f,rectRanges:S}=p;this._rangeList.length>0&&f.length>0&&this._interactTextRanges(f),this._rectRangeList.length>0&&S.length>0&&this._interactRectRanges(S),this._addTextRangesToCache(f),this._addRectRangesToCache(S),this.deactivate(),(E=(v=this._context.scene)==null?void 0:v.getEngine())==null||E.setCapture()}__attachScrollEvent(){const e=this.activeViewPort;if(!e)return;const{unitId:n}=this._context;if(this._viewPortObserverMap.has(n))return;const r=e.onScrollAfter$.subscribeEvent(a=>{if(!a.viewport)return;const l=this._getActiveRangeInstance();l==null||l.activeStatic()}),s=e.onScrollEnd$.subscribeEvent(a=>{const c=a.viewport;if(!c)return;const l=c.getBounding(),d=this._getActiveRangeInstance(),A=d==null?void 0:d.getAnchor();if(!(!A||A&&!A.visible)){if(l){const{left:u,top:h,right:g,bottom:m}=l.viewBound;if(A.left<u||A.left>g||A.top<h||A.top>m){d==null||d.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(n,{scrollBefore:r,scrollStop:s})}_initInputEvents(){this.disposeWithMe(N.fromEvent(this._input,"keydown").subscribe(e=>{this._isIMEInputApply||this._eventHandle(e,n=>{this._onKeydown$.next(n)})})),this.disposeWithMe(N.fromEvent(this._input,"input").subscribe(e=>{if(!(e.inputType==="historyUndo"||e.inputType==="historyRedo")){if(this._rectRangeList.length>0)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply||this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onInput$.next(n)})}})),this.disposeWithMe(N.fromEvent(this._input,"compositionstart").subscribe(e=>{if(this._rectRangeList.length>0)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply=!0,this._eventHandle(e,n=>{this._onCompositionstart$.next(n)})})),this.disposeWithMe(N.fromEvent(this._input,"compositionend").subscribe(e=>{this._isIMEInputApply=!1,this._eventHandle(e,n=>{this._onCompositionend$.next(n)})})),this.disposeWithMe(N.fromEvent(this._input,"compositionupdate").subscribe(e=>{this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onCompositionupdate$.next(n)})})),this.disposeWithMe(N.fromEvent(this._input,"paste").subscribe(e=>{this._eventHandle(e,n=>{this._onPaste$.next(n)})})),this.disposeWithMe(N.fromEvent(this._input,"focus").subscribe(e=>{this._eventHandle(e,n=>{this._onFocus$.next(n)})})),this.disposeWithMe(N.fromEvent(this._input,"blur").subscribe(e=>{this._eventHandle(e,n=>{this._onBlur$.next(n)})}))}_eventHandle(e,n){const r=this._input.textContent||"";this._input.innerHTML="";const s=this._getActiveRange(),a=this._getAllTextRanges();n({event:e,content:r,activeRange:s,rangeList:a})}_getTransformCoordForDocumentOffset(e,n){const r=this._context.mainComponent,{documentTransform:s}=r.getOffsetConfig();if(this.activeViewPort==null||s==null)return;const a=this.activeViewPort.transformVector2SceneCoord(M.Vector2.FromArray([e,n]));if(a)return s.clone().invert().applyPoint(a)}_findNodeByCoord(e,n,r){const s=this._getTransformCoordForDocumentOffset(e,n);if(s==null)return;const a=this._context.mainComponent,c=this._docSkeletonManagerService.getSkeleton(),{pageLayoutType:l=M.PageLayoutType.VERTICAL,pageMarginLeft:d,pageMarginTop:A}=a.getOffsetConfig();return c.findNodeByCoord(s,l,d,A,r)}_detachEvent(){this._onInputBefore$.complete(),this._onKeydown$.complete(),this._onInput$.complete(),this._onCompositionstart$.complete(),this._onCompositionupdate$.complete(),this._onCompositionend$.complete(),this._onSelectionStart$.complete(),this._textSelectionInner$.complete(),this._onPaste$.complete(),this._onFocus$.complete(),this._onBlur$.complete(),this._onPointerDown$.complete()}};exports.DocSelectionRenderService=Fs([Pt(1,I.ILayoutService),Pt(2,i.ILogService),Pt(3,i.IUniverInstanceService),Pt(4,i.Inject(D.DocSkeletonManagerService))],exports.DocSelectionRenderService);class ui extends i.Disposable{constructor(e,n,r,s,a){super();b(this,"_change$",new N.Subject);b(this,"change$",this._change$.asObservable());b(this,"_input$",new N.Subject);b(this,"input$",this._input$.asObservable());b(this,"_paste$",new N.Subject);b(this,"paste$",this._paste$.asObservable());b(this,"_focus$",new N.Subject);b(this,"focus$",this._focus$.asObservable());b(this,"_blur$",new N.Subject);b(this,"blur$",this._blur$.asObservable());b(this,"_selectionChange$",new N.Subject);b(this,"selectionChange$",this._selectionChange$.asObservable());this._param=e,this._univerInstanceService=n,this._docSelectionManagerService=r,this._commandService=s,this._undoRedoService=a,this._listenSelection()}get docSelectionRenderService(){return this._param.render.with(exports.DocSelectionRenderService)}_listenSelection(){const e=this._param.render.with(exports.DocSelectionRenderService);this.disposeWithMe(e.onBlur$.subscribe(n=>{this._blur$.next(n);const r=this.getDocumentData();this._change$.next({target:this,data:r})})),this.disposeWithMe(e.onFocus$.subscribe(n=>{this._focus$.next(n)})),this.disposeWithMe(e.onPaste$.subscribe(n=>{this._paste$.next(n)})),this.disposeWithMe(N.merge(e.onInput$,e.onKeydown$.pipe(pt.filter(n=>{const r=n.event;return r.ctrlKey||r.metaKey?[I.KeyCode.X,I.KeyCode.V].includes(r.keyCode):[I.KeyCode.BACKSPACE].includes(r.keyCode)})),e.onCompositionupdate$,e.onCompositionend$,e.onPaste$).subscribe(n=>{if(n==null)return;const{content:r=""}=n,s=this.getDocumentData();this._input$.next({target:this,content:r,data:s,isComposing:n.event.type==="compositionupdate"})})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(n=>{if(n==null)return;const{unitId:r,subUnitId:s,...a}=n,c=this.getEditorId();r===c&&this._selectionChange$.next(a)}))}isFocus(){const e=this._param.render.with(exports.DocSelectionRenderService);return e.isFocusing&&!!e.getActiveTextRange()}focus(){const e=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),n=this.getEditorId();(e==null||e.getUnitId()!==n)&&this._univerInstanceService.setCurrentUnitForType(n),this._param.render.with(exports.DocSelectionRenderService).focus()}blur(){this._param.render.with(exports.DocSelectionRenderService).blur()}select(){const e=this.getDocumentData();return this.setSelectionRanges([{startOffset:0,endOffset:e.body?e.body.dataStream.length-2:0}])}setSelectionRanges(e,n=!0){const r=this.getEditorId(),s={unitId:r,subUnitId:r};return this._docSelectionManagerService.replaceDocRanges(e,s,!1,{shouldFocus:n})}getSelectionRanges(){const e=this.getEditorId(),n={unitId:e,subUnitId:e};return this._docSelectionManagerService.getDocRanges(n)}getCursorPosition(){var n,r;return(r=(n=this.getSelectionRanges().find(s=>s.collapsed))==null?void 0:n.startOffset)!=null?r:-1}getEditorId(){return this._getEditorId()}getDocumentData(){return this._getDocDataModel().getSnapshot()}getDocumentDataModel(){return this._getDocDataModel()}setDocumentData(e,n){const{id:r}=e;this._commandService.syncExecuteCommand(Ao.id,{unitId:r,snapshot:e,textRanges:n})}replaceText(e,n=!0){const r=this.getDocumentData();this.setDocumentData({...r,body:{dataStream:`${e}\r
20
- `,paragraphs:[{startIndex:0}],customRanges:[],sectionBreaks:[],tables:[],textRuns:[]}},typeof n=="object"?n:n?[{startOffset:e.length,endOffset:e.length,collapsed:!0}]:null)}clearUndoRedoHistory(){const e=this.getEditorId();return this._undoRedoService.clearUndoRedo(e)}dispose(){this._getDocDataModel().dispose()}get editorUnitId(){return this._param.editorUnitId}get params(){return this._param}get cancelDefaultResizeListener(){return this._param.cancelDefaultResizeListener}get render(){return this._param.render}isReadOnly(){return this._param.readonly===!0}getBoundingClientRect(){return this._param.editorDom.getBoundingClientRect()}get editorDOM(){return this._param.editorDom}isVisible(){return this._param.visible}isSheetEditor(){return i.isInternalEditorID(this._getEditorId())}getValue(){var r;return(((r=this._getDocDataModel().getBody())==null?void 0:r.dataStream)||"").replace(/\r\n/g,"").replace(/\n/g,"").replace(/\n/g,"")}getBody(){return this._getDocDataModel().getBody()}update(e){this._param={...this._param,...e}}updateCanvasStyle(){var r;const e=this._getDocDataModel();if(e==null)return;const n={};(r=this._param.canvasStyle)!=null&&r.fontSize&&(n.textStyle==null&&(n.textStyle={}),n.textStyle.fs=this._param.canvasStyle.fontSize),e.updateDocumentStyle(n)}_getDocDataModel(){const e=this._getEditorId();return this._univerInstanceService.getUnit(e,i.UniverInstanceType.UNIVER_DOC)}_getEditorId(){var e;return((e=this._param.initialSnapshot)==null?void 0:e.id)||this._param.editorUnitId||""}}var Hs=Object.getOwnPropertyDescriptor,ks=(o,t,e,n)=>{for(var r=n>1?void 0:n?Hs(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ke=(o,t)=>(e,n)=>t(e,n,o);const Vs=["univer-editor","univer-range-selector","univer-range-selector-editor","univer-render-canvas","univer-text-editor-container-placeholder"];exports.EditorService=class extends i.Disposable{constructor(e,n,r,s,a,c){super();b(this,"_editors",new Map);b(this,"_focusEditorUnitId");b(this,"_blur$",new N.Subject);b(this,"blur$",this._blur$.asObservable());b(this,"_focus$",new N.Subject);b(this,"focus$",this._focus$.asObservable());this._univerInstanceService=e,this._renderManagerService=n,this._docSelectionManagerService=r,this._contextService=s,this._commandService=a,this._undoRedoService=c,this._initUniverFocusListener()}_initUniverFocusListener(){this.disposeWithMe(N.fromEvent(window,"focusin").subscribe(e=>{const n=e.target;this._blurSheetEditor(n)}))}_blurSheetEditor(e){if(Vs.some(r=>e.classList.contains(r)))return;const n=this.getFocusEditor();n&&n.isSheetEditor()!==!0&&this.blur()}_setFocusId(e){this._focusEditorUnitId=e}getFocusId(){return this._focusEditorUnitId}getFocusEditor(){if(this._focusEditorUnitId)return this.getEditor(this._focusEditorUnitId)}isEditor(e){return this._editors.has(e)}isSheetEditor(e){const n=this._editors.get(e);return!!(n&&n.isSheetEditor())}blur(e){const n=this.getFocusEditor();e&&(n==null||n.setSelectionRanges([])),n==null||n.blur(),this._contextService.setContextValue(i.EDITOR_ACTIVATED,!1),this._contextService.setContextValue(i.FOCUSING_EDITOR_STANDALONE,!1),this._setFocusId(null),this._blur$.next(null)}focus(e){if(e===this._focusEditorUnitId||(this._focusEditorUnitId&&this.blur(),e==null))return;const n=this.getEditor(e);if(n==null)return;this._univerInstanceService.setCurrentUnitForType(e);const r=n.getValue().length;this._contextService.setContextValue(i.EDITOR_ACTIVATED,!0),i.isInternalEditorID(e)||this._contextService.setContextValue(i.FOCUSING_EDITOR_STANDALONE,!0),n.focus(),this._setFocusId(e),this._focus$.next({startOffset:r,endOffset:r})}dispose(){this._editors.clear(),super.dispose()}getEditor(e=this._getCurrentEditorUnitId()){return this._editors.get(e)}getAllEditor(){return this._editors}register(e,n){var d,A,u,h;const{initialSnapshot:r,canvasStyle:s={}}=e,a=r.id;this._univerInstanceService.getUnit(a,i.UniverInstanceType.UNIVER_DOC)==null&&this._univerInstanceService.createUnit(i.UniverInstanceType.UNIVER_DOC,r||this._getBlank(a),{makeCurrent:!1});let l=this._renderManagerService.getRenderById(a);if(l==null&&(this._renderManagerService.create(a),l=this._renderManagerService.getRenderById(a)),l){l.engine.setContainer(n);const g=new ui({...e,render:l,editorDom:n,canvasStyle:s},this._univerInstanceService,this._docSelectionManagerService,this._commandService,this._undoRedoService);this._editors.set(a,g),e.scrollBar||(h=(u=(A=(d=l.mainComponent)==null?void 0:d.getScene())==null?void 0:A.getViewports())==null?void 0:u[0].getScrollBar())==null||h.dispose()}return i.toDisposable(()=>{this._unRegister(a)})}_unRegister(e){const n=this._editors.get(e);n!=null&&(this._renderManagerService.removeRender(e),n.dispose(),this._editors.delete(e),this._univerInstanceService.disposeUnit(e))}_getCurrentEditorUnitId(){return this._univerInstanceService.getCurrentUniverDocInstance().getUnitId()}_getBlank(e){return{id:e,body:{dataStream:`${i.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],paragraphs:[{startIndex:0}]},documentStyle:{renderConfig:{verticalAlign:i.VerticalAlign.TOP,horizontalAlign:i.HorizontalAlign.LEFT},marginLeft:3,marginTop:0,marginRight:3}}}};exports.EditorService=ks([Ke(0,i.IUniverInstanceService),Ke(1,M.IRenderManagerService),Ke(2,i.Inject(D.DocSelectionManagerService)),Ke(3,i.IContextService),Ke(4,i.ICommandService),Ke(5,i.IUndoRedoService)],exports.EditorService);const ae=i.createIdentifier("univer.editor.service");function js(o){const{editorId:t,initialValue:e,container:n,autoFocus:r,isSingle:s}=o,a=w.useMemo(()=>r!=null?r:!1,[]),[c,l]=w.useState(),d=I.useDependency(ae);return w.useLayoutEffect(()=>{var A,u;if(n.current){const h=typeof e=="string"?void 0:i.Tools.deepClone(e),g={body:{dataStream:typeof e=="string"?`${e}\r
19
+ `}_getNodePosition(e){if(e==null)return;const{node:n,ratioX:r,segmentPage:s}=e,c=this._docSkeletonManagerService.getSkeleton().findPositionByGlyph(n,s);if(c==null)return;let d=r<.5;return n.glyphType===M.GlyphType.LIST&&(d=!0),{...c,isBack:d}}_interactTextRanges(e){const n=[];for(const r of this._rangeList){if(e.some(s=>s.isIntersection(r))){r.dispose();continue}n.push(r)}this._rangeList=n}_interactRectRanges(e){const n=[];for(const r of this._rectRangeList){if(e.some(s=>s.isIntersection(r))){r.dispose();continue}n.push(r)}this._rectRangeList=n}_removeAllRanges(){this._removeAllTextRanges(),this._removeAllRectRanges()}_removeAllCacheRanges(){this._rangeListCache.forEach(e=>{e.dispose()}),this._rectRangeListCache.forEach(e=>{e.dispose()}),this._rangeListCache=[],this._rectRangeListCache=[]}_removeAllTextRanges(){this._rangeList.forEach(e=>{e.dispose()}),this._rangeList=[]}_removeAllRectRanges(){this._rectRangeList.forEach(e=>{e.dispose()}),this._rectRangeList=[]}_removeAllCollapsedTextRanges(){for(const e of this._rangeList)e.collapsed&&e.dispose()}_deactivateAllTextRanges(){this._rangeList.forEach(e=>{e.deactivate()})}_deactivateAllRectRanges(){this._rectRangeList.forEach(e=>{e.deactivate()})}_addTextRangesToCache(e){this._rangeListCache.push(...e)}_addTextRange(e){this._deactivateAllTextRanges(),e.activate(),this._rangeList.push(e)}_addRectRangesToCache(e){this._rectRangeListCache.push(...e)}_addRectRanges(e){e.length!==0&&(this._deactivateAllRectRanges(),e[e.length-1].activate(),this._rectRangeList.push(...e))}_createTextRangeByAnchorPosition(e){this._removeAllRanges();const{scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton(),a=new je(n,r,s,e,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(a)}_updateActiveRangePosition(e){const n=this._getActiveRangeInstance();if(n==null||n.anchorNodePosition==null){this._logService.error("[DocSelectionRenderService] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllRanges(),this._anchorNodePosition=n.anchorNodePosition,this._focusNodePosition=e;const{scene:r,mainComponent:s}=this._context,a=this._docSkeletonManagerService.getSkeleton(),{_anchorNodePosition:c,_focusNodePosition:l,_selectionStyle:d,_currentSegmentId:A,_currentSegmentPage:u}=this;if(c==null||l==null||s==null)return;const h=zn(c,l,r,s,a,d,A,u);if(h==null)return;const{textRanges:g,rectRanges:m}=h;this._addTextRangesToCache(g),this._addRectRangesToCache(m),this.deactivate()}_isEmpty(){return this._rangeList.length===0&&this._rectRangeList.length===0}_getCanvasOffset(){var n;const e=(n=this._context.scene)==null?void 0:n.getEngine();return Ai(e)}_updateInputPosition(e=!1){const n=this._getActiveRangeInstance(),r=n==null?void 0:n.getAnchor();if(!r||r&&!r.visible||this.activeViewPort==null){this.focus();return}const{left:s,top:a}=r,c=this.activeViewPort.getAbsoluteVector(M.Vector2.FromArray([s,a])),{x:l,y:d}=c;let{left:A,top:u}=this._getCanvasOffset();A+=l,u+=d,this.activate(A,u,e)}_moving(e,n){var v,C;const{_currentSegmentId:r,_currentSegmentPage:s}=this,a=this._findNodeByCoord(e,n,{strict:!0,segmentId:r,segmentPage:s}),c=this._getNodePosition(a);if(c==null||a==null)return;const l=a==null?void 0:a.node.parent,d=l==null?void 0:l.glyphGroup[l.glyphGroup.indexOf(a.node)+1];(a==null?void 0:a.node.streamType)===i.DataStreamTreeTokenType.PARAGRAPH&&(d==null?void 0:d.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK&&(c.isBack=!0),this._focusNodePosition=c,this._removeAllCacheRanges();const{_anchorNodePosition:A,_selectionStyle:u}=this,{scene:h,mainComponent:g}=this._context,m=this._docSkeletonManagerService.getSkeleton();if(A==null||g==null)return;const p=zn(A,c,h,g,m,u,r,s);if(p==null)return;const{textRanges:f,rectRanges:S}=p;this._rangeList.length>0&&f.length>0&&this._interactTextRanges(f),this._rectRangeList.length>0&&S.length>0&&this._interactRectRanges(S),this._addTextRangesToCache(f),this._addRectRangesToCache(S),this.deactivate(),(C=(v=this._context.scene)==null?void 0:v.getEngine())==null||C.setCapture()}__attachScrollEvent(){const e=this.activeViewPort;if(!e)return;const{unitId:n}=this._context;if(this._viewPortObserverMap.has(n))return;const r=e.onScrollAfter$.subscribeEvent(a=>{if(!a.viewport)return;const l=this._getActiveRangeInstance();l==null||l.activeStatic()}),s=e.onScrollEnd$.subscribeEvent(a=>{const c=a.viewport;if(!c)return;const l=c.getBounding(),d=this._getActiveRangeInstance(),A=d==null?void 0:d.getAnchor();if(!(!A||A&&!A.visible)){if(l){const{left:u,top:h,right:g,bottom:m}=l.viewBound;if(A.left<u||A.left>g||A.top<h||A.top>m){d==null||d.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(n,{scrollBefore:r,scrollStop:s})}_initInputEvents(){this.disposeWithMe(P.fromEvent(this._input,"keydown").subscribe(e=>{this._isIMEInputApply||this._eventHandle(e,n=>{this._onKeydown$.next(n)})})),this.disposeWithMe(P.fromEvent(this._input,"input").subscribe(e=>{if(!(e.inputType==="historyUndo"||e.inputType==="historyRedo")){if(this._rectRangeList.length>0)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply||this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onInput$.next(n)})}})),this.disposeWithMe(P.fromEvent(this._input,"compositionstart").subscribe(e=>{if(this._rectRangeList.length>0)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply=!0,this._eventHandle(e,n=>{this._onCompositionstart$.next(n)})})),this.disposeWithMe(P.fromEvent(this._input,"compositionend").subscribe(e=>{this._isIMEInputApply=!1,this._eventHandle(e,n=>{this._onCompositionend$.next(n)})})),this.disposeWithMe(P.fromEvent(this._input,"compositionupdate").subscribe(e=>{this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onCompositionupdate$.next(n)})})),this.disposeWithMe(P.fromEvent(this._input,"paste").subscribe(e=>{this._eventHandle(e,n=>{this._onPaste$.next(n)})})),this.disposeWithMe(P.fromEvent(this._input,"focus").subscribe(e=>{this._eventHandle(e,n=>{this._onFocus$.next(n)})})),this.disposeWithMe(P.fromEvent(this._input,"blur").subscribe(e=>{this._eventHandle(e,n=>{this._onBlur$.next(n)})}))}_eventHandle(e,n){const r=this._input.textContent||"";this._input.innerHTML="";const s=this._getActiveRange(),a=this._getAllTextRanges();n({event:e,content:r,activeRange:s,rangeList:a})}_getTransformCoordForDocumentOffset(e,n){const r=this._context.mainComponent,{documentTransform:s}=r.getOffsetConfig();if(this.activeViewPort==null||s==null)return;const a=this.activeViewPort.transformVector2SceneCoord(M.Vector2.FromArray([e,n]));if(a)return s.clone().invert().applyPoint(a)}_findNodeByCoord(e,n,r){const s=this._getTransformCoordForDocumentOffset(e,n);if(s==null)return;const a=this._context.mainComponent,c=this._docSkeletonManagerService.getSkeleton(),{pageLayoutType:l=M.PageLayoutType.VERTICAL,pageMarginLeft:d,pageMarginTop:A}=a.getOffsetConfig();return c.findNodeByCoord(s,l,d,A,r)}_detachEvent(){this._onInputBefore$.complete(),this._onKeydown$.complete(),this._onInput$.complete(),this._onCompositionstart$.complete(),this._onCompositionupdate$.complete(),this._onCompositionend$.complete(),this._onSelectionStart$.complete(),this._textSelectionInner$.complete(),this._onPaste$.complete(),this._onFocus$.complete(),this._onBlur$.complete(),this._onPointerDown$.complete()}};exports.DocSelectionRenderService=Qs([Ut(1,I.ILayoutService),Ut(2,i.ILogService),Ut(3,i.IUniverInstanceService),Ut(4,i.Inject(B.DocSkeletonManagerService))],exports.DocSelectionRenderService);class ui extends i.Disposable{constructor(e,n,r,s,a){super();x(this,"_change$",new P.Subject);x(this,"change$",this._change$.asObservable());x(this,"_input$",new P.Subject);x(this,"input$",this._input$.asObservable());x(this,"_paste$",new P.Subject);x(this,"paste$",this._paste$.asObservable());x(this,"_focus$",new P.Subject);x(this,"focus$",this._focus$.asObservable());x(this,"_blur$",new P.Subject);x(this,"blur$",this._blur$.asObservable());x(this,"_selectionChange$",new P.Subject);x(this,"selectionChange$",this._selectionChange$.asObservable());this._param=e,this._univerInstanceService=n,this._docSelectionManagerService=r,this._commandService=s,this._undoRedoService=a,this._listenSelection()}get docSelectionRenderService(){return this._param.render.with(exports.DocSelectionRenderService)}_listenSelection(){const e=this._param.render.with(exports.DocSelectionRenderService);this.disposeWithMe(e.onBlur$.subscribe(n=>{this._blur$.next(n);const r=this.getDocumentData();this._change$.next({target:this,data:r})})),this.disposeWithMe(e.onFocus$.subscribe(n=>{this._focus$.next(n)})),this.disposeWithMe(e.onPaste$.subscribe(n=>{this._paste$.next(n)})),this.disposeWithMe(P.merge(e.onInput$,e.onKeydown$.pipe(pt.filter(n=>{const r=n.event;return r.ctrlKey||r.metaKey?[I.KeyCode.X,I.KeyCode.V].includes(r.keyCode):[I.KeyCode.BACKSPACE].includes(r.keyCode)})),e.onCompositionupdate$,e.onCompositionend$,e.onPaste$).subscribe(n=>{if(n==null)return;const{content:r=""}=n,s=this.getDocumentData();this._input$.next({target:this,content:r,data:s,isComposing:n.event.type==="compositionupdate"})})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(n=>{if(n==null)return;const{unitId:r,subUnitId:s,...a}=n,c=this.getEditorId();r===c&&this._selectionChange$.next(a)}))}isFocus(){const e=this._param.render.with(exports.DocSelectionRenderService);return e.isFocusing&&!!e.getActiveTextRange()}focus(){const e=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),n=this.getEditorId();(e==null||e.getUnitId()!==n)&&this._univerInstanceService.setCurrentUnitForType(n),this._param.render.with(exports.DocSelectionRenderService).focus()}blur(){this._param.render.with(exports.DocSelectionRenderService).blur()}select(){const e=this.getDocumentData();return this.setSelectionRanges([{startOffset:0,endOffset:e.body?e.body.dataStream.length-2:0}])}setSelectionRanges(e,n=!0){const r=this.getEditorId(),s={unitId:r,subUnitId:r};return this._docSelectionManagerService.replaceDocRanges(e,s,!1,{shouldFocus:n})}getSelectionRanges(){const e=this.getEditorId(),n={unitId:e,subUnitId:e};return this._docSelectionManagerService.getDocRanges(n)}getCursorPosition(){var n,r;return(r=(n=this.getSelectionRanges().find(s=>s.collapsed))==null?void 0:n.startOffset)!=null?r:-1}getEditorId(){return this._getEditorId()}getDocumentData(){return this._getDocDataModel().getSnapshot()}getDocumentDataModel(){return this._getDocDataModel()}setDocumentData(e,n){const{id:r}=e;this._commandService.syncExecuteCommand(Ao.id,{unitId:r,snapshot:e,textRanges:n})}replaceText(e,n=!0){const r=this.getDocumentData();this.setDocumentData({...r,body:{dataStream:`${e}\r
20
+ `,paragraphs:[{startIndex:0}],customRanges:[],sectionBreaks:[],tables:[],textRuns:[]}},typeof n=="object"?n:n?[{startOffset:e.length,endOffset:e.length,collapsed:!0}]:null)}clearUndoRedoHistory(){const e=this.getEditorId();return this._undoRedoService.clearUndoRedo(e)}dispose(){this._getDocDataModel().dispose()}get editorUnitId(){return this._param.editorUnitId}get params(){return this._param}get cancelDefaultResizeListener(){return this._param.cancelDefaultResizeListener}get render(){return this._param.render}isReadOnly(){return this._param.readonly===!0}getBoundingClientRect(){return this._param.editorDom.getBoundingClientRect()}get editorDOM(){return this._param.editorDom}isVisible(){return this._param.visible}isSheetEditor(){return i.isInternalEditorID(this._getEditorId())}getValue(){var r;return(((r=this._getDocDataModel().getBody())==null?void 0:r.dataStream)||"").replace(/\r\n/g,"").replace(/\n/g,"").replace(/\n/g,"")}getBody(){return this._getDocDataModel().getBody()}update(e){this._param={...this._param,...e}}updateCanvasStyle(){var r;const e=this._getDocDataModel();if(e==null)return;const n={};(r=this._param.canvasStyle)!=null&&r.fontSize&&(n.textStyle==null&&(n.textStyle={}),n.textStyle.fs=this._param.canvasStyle.fontSize),e.updateDocumentStyle(n)}_getDocDataModel(){const e=this._getEditorId();return this._univerInstanceService.getUnit(e,i.UniverInstanceType.UNIVER_DOC)}_getEditorId(){var e;return((e=this._param.initialSnapshot)==null?void 0:e.id)||this._param.editorUnitId||""}}var Fs=Object.getOwnPropertyDescriptor,Hs=(o,t,e,n)=>{for(var r=n>1?void 0:n?Fs(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ke=(o,t)=>(e,n)=>t(e,n,o);const ks=["univer-editor","univer-range-selector","univer-range-selector-editor","univer-render-canvas","univer-text-editor-container-placeholder"];exports.EditorService=class extends i.Disposable{constructor(e,n,r,s,a,c){super();x(this,"_editors",new Map);x(this,"_focusEditorUnitId");x(this,"_blur$",new P.Subject);x(this,"blur$",this._blur$.asObservable());x(this,"_focus$",new P.Subject);x(this,"focus$",this._focus$.asObservable());this._univerInstanceService=e,this._renderManagerService=n,this._docSelectionManagerService=r,this._contextService=s,this._commandService=a,this._undoRedoService=c,this._initUniverFocusListener()}_initUniverFocusListener(){this.disposeWithMe(P.fromEvent(window,"focusin").subscribe(e=>{const n=e.target;this._blurSheetEditor(n)}))}_blurSheetEditor(e){if(ks.some(r=>e.classList.contains(r)))return;const n=this.getFocusEditor();n&&n.isSheetEditor()!==!0&&this.blur()}_setFocusId(e){this._focusEditorUnitId=e}getFocusId(){return this._focusEditorUnitId}getFocusEditor(){if(this._focusEditorUnitId)return this.getEditor(this._focusEditorUnitId)}isEditor(e){return this._editors.has(e)}isSheetEditor(e){const n=this._editors.get(e);return!!(n&&n.isSheetEditor())}blur(e){const n=this.getFocusEditor();e&&(n==null||n.setSelectionRanges([])),n==null||n.blur(),this._contextService.setContextValue(i.EDITOR_ACTIVATED,!1),this._contextService.setContextValue(i.FOCUSING_EDITOR_STANDALONE,!1),this._setFocusId(null),this._blur$.next(null)}focus(e){if(e===this._focusEditorUnitId||(this._focusEditorUnitId&&this.blur(),e==null))return;const n=this.getEditor(e);if(n==null)return;this._univerInstanceService.setCurrentUnitForType(e);const r=n.getValue().length;this._contextService.setContextValue(i.EDITOR_ACTIVATED,!0),i.isInternalEditorID(e)||this._contextService.setContextValue(i.FOCUSING_EDITOR_STANDALONE,!0),n.focus(),this._setFocusId(e),this._focus$.next({startOffset:r,endOffset:r})}dispose(){this._editors.clear(),super.dispose()}getEditor(e=this._getCurrentEditorUnitId()){return this._editors.get(e)}getAllEditor(){return this._editors}register(e,n){var d,A,u,h;const{initialSnapshot:r,canvasStyle:s={}}=e,a=r.id;this._univerInstanceService.getUnit(a,i.UniverInstanceType.UNIVER_DOC)==null&&this._univerInstanceService.createUnit(i.UniverInstanceType.UNIVER_DOC,r||this._getBlank(a),{makeCurrent:!1});let l=this._renderManagerService.getRenderById(a);if(l==null&&(this._renderManagerService.create(a),l=this._renderManagerService.getRenderById(a)),l){l.engine.setContainer(n);const g=new ui({...e,render:l,editorDom:n,canvasStyle:s},this._univerInstanceService,this._docSelectionManagerService,this._commandService,this._undoRedoService);this._editors.set(a,g),e.scrollBar||(h=(u=(A=(d=l.mainComponent)==null?void 0:d.getScene())==null?void 0:A.getViewports())==null?void 0:u[0].getScrollBar())==null||h.dispose()}return i.toDisposable(()=>{this._unRegister(a)})}_unRegister(e){const n=this._editors.get(e);n!=null&&(this._renderManagerService.removeRender(e),n.dispose(),this._editors.delete(e),this._univerInstanceService.disposeUnit(e))}_getCurrentEditorUnitId(){return this._univerInstanceService.getCurrentUniverDocInstance().getUnitId()}_getBlank(e){return{id:e,body:{dataStream:`${i.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],paragraphs:[{startIndex:0}]},documentStyle:{renderConfig:{verticalAlign:i.VerticalAlign.TOP,horizontalAlign:i.HorizontalAlign.LEFT},marginLeft:3,marginTop:0,marginRight:3}}}};exports.EditorService=Hs([Ke(0,i.IUniverInstanceService),Ke(1,M.IRenderManagerService),Ke(2,i.Inject(B.DocSelectionManagerService)),Ke(3,i.IContextService),Ke(4,i.ICommandService),Ke(5,i.IUndoRedoService)],exports.EditorService);const ae=i.createIdentifier("univer.editor.service");function Vs(o){const{editorId:t,initialValue:e,container:n,autoFocus:r,isSingle:s}=o,a=w.useMemo(()=>r!=null?r:!1,[]),[c,l]=w.useState(),d=I.useDependency(ae);return w.useLayoutEffect(()=>{var A,u;if(n.current){const h=typeof e=="string"?void 0:i.Tools.deepClone(e),g={body:{dataStream:typeof e=="string"?`${e}\r
21
21
  `:`\r
22
- `,textRuns:[],customBlocks:[],customDecorations:[],customRanges:[],paragraphs:[{startIndex:0}]},...h,documentStyle:{...h==null?void 0:h.documentStyle,pageSize:{width:s?1/0:n.current.clientWidth,height:1/0}},id:t},m=d.register({autofocus:!0,editorUnitId:t,initialSnapshot:g},n.current),p=d.getEditor(t);if(l(p),a){p.focus();const f=((u=(A=g.body)==null?void 0:A.dataStream.length)!=null?u:2)-2;p.setSelectionRanges([{startOffset:f,endOffset:f}])}return()=>{m==null||m.dispose()}}},[]),c}const Ee={id:"doc.operation.move-cursor",type:i.CommandType.OPERATION,handler:(o,t)=>!!t},Ce={id:"doc.operation.move-selection",type:i.CommandType.OPERATION,handler:(o,t)=>!!t},Ws=(o,t,e,n)=>{const r=I.useDependency(i.ICommandService),s=I.useDependency(I.IShortcutService),a=w.useRef(t);a.current=t;const c=w.useRef(n);c.current=n,w.useEffect(()=>{if(!e||!o)return;const d=`sheet.formula-embedding-editor.${e.getEditorId()}`,A=new i.DisposableCollection,u=(g,m)=>{if(c.current){c.current(g,m);return}let p=i.Direction.LEFT;g===I.KeyCode.ARROW_DOWN?p=i.Direction.DOWN:g===I.KeyCode.ARROW_UP?p=i.Direction.UP:g===I.KeyCode.ARROW_RIGHT&&(p=i.Direction.RIGHT),m===I.MetaKeys.SHIFT?r.executeCommand(Ce.id,{direction:p}):r.executeCommand(Ee.id,{direction:p})};return A.add(r.registerCommand({id:d,type:i.CommandType.OPERATION,handler(g,m){const{keyCode:p}=m;u(p)}})),[{keyCode:I.KeyCode.ARROW_DOWN},{keyCode:I.KeyCode.ARROW_LEFT},{keyCode:I.KeyCode.ARROW_RIGHT},{keyCode:I.KeyCode.ARROW_UP},{keyCode:I.KeyCode.ARROW_DOWN,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_LEFT,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_RIGHT,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_UP,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_DOWN,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_LEFT,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_RIGHT,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_UP,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_DOWN,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_LEFT,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_RIGHT,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_UP,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT}].map(({keyCode:g,metaKey:m})=>({id:d,binding:m?g|m:g,preconditions:()=>!0,priority:900,staticParameters:{eventType:M.DeviceInputEventType.Keyboard,keyCode:g}})).forEach(g=>{A.add(s.registerShortcut(g))}),()=>{A.dispose()}},[r,e,o,s])};function zs(o,t){const e=I.useDependency(i.ICommandService);w.useEffect(()=>{if(!o)return;const n=e.onCommandExecuted(r=>{var s,a;if(r.id===D.RichTextEditingMutation.id){if(r.params.unitId!==o.getEditorId())return;const l=o.getDocumentData();t(l,i.getPlainText((a=(s=l.body)==null?void 0:s.dataStream)!=null?a:""))}});return()=>{n.dispose()}},[o,t,e])}const Gs=o=>{var k;const{className:t,autoFocus:e,onFocusChange:n,initialValue:r,onClickOutside:s,keyboardEventConfig:a,moveCursor:c=!0,style:l,isSingle:d,editorId:A,onHeightChange:u,onChange:h,defaultHeight:g=32,maxHeight:m=32,icon:p,editorRef:f,placeholder:S}=o,v=I.useDependency(ae),E=I.useEvent(n),T=I.useEvent(s),[R,C]=w.useState(g),x=w.useRef(null),B=w.useMemo(()=>A!=null?A:i.createInternalEditorID(`RICH_TEXT_EDITOR-${i.generateRandomId(4)}`),[A]),y=js({editorId:B,initialValue:r,container:x,autoFocus:e,isSingle:d}),O=I.useDependency(M.IRenderManagerService).getRenderById(B),_=O==null?void 0:O.with(exports.DocSelectionRenderService),F=I.useObservable(_==null?void 0:_.textSelectionInner$),H=!!((k=_==null?void 0:_.isFocusing)!=null&&k&&(F!=null&&F.textRanges.some(V=>V.collapsed))),U=w.useRef(null),[L,W]=w.useState(()=>{var V,X;return!i.BuildTextUtils.transform.getPlainText((X=(V=y==null?void 0:y.getDocumentData().body)==null?void 0:V.dataStream)!=null?X:"")}),{checkScrollBar:z}=ri(y,d,!0,!0);w.useLayoutEffect(()=>{if(!(!f||!y)){if(typeof f=="function"){f(y);return}f.current=y}},[y]);const j=I.useEvent(V=>{var Y,G;const X=O==null?void 0:O.with(D.DocSkeletonManagerService),K=X==null?void 0:X.getSkeleton().getActualSize();K&&(u==null||u(K.actualHeight),C(Math.max(g,Math.min(K.actualHeight+10,m)))),h==null||h(V,i.getPlainText((G=(Y=V.body)==null?void 0:Y.dataStream)!=null?G:"")),z()});return w.useEffect(()=>{var X,K;W(!i.BuildTextUtils.transform.getPlainText((K=(X=y==null?void 0:y.getDocumentData().body)==null?void 0:X.dataStream)!=null?K:""));const V=y==null?void 0:y.selectionChange$.subscribe(()=>{var Y,G;W(!i.BuildTextUtils.transform.getPlainText((G=(Y=y==null?void 0:y.getDocumentData().body)==null?void 0:Y.dataStream)!=null?G:""))});return()=>V==null?void 0:V.unsubscribe()},[y]),I.useObservable(y==null?void 0:y.blur$),I.useObservable(y==null?void 0:y.focus$),w.useEffect(()=>{var X,K;const V=y==null?void 0:y.getDocumentData();E==null||E(H,i.getPlainText((K=(X=V==null?void 0:V.body)==null?void 0:X.dataStream)!=null?K:""))},[H,E]),w.useEffect(()=>{const V=K=>{var G,q;v.getFocusId()!==B||((q=(G=K.target)==null?void 0:G.dataset)==null?void 0:q.editorid)===B||U.current&&!U.current.contains(K.target)&&(T==null||T())},X=setTimeout(()=>{document.addEventListener("click",V)},100);return()=>{document.removeEventListener("click",V),clearTimeout(X)}},[y,B,v,T]),Ws(H&&c,!1,y),oi(H,a,y),zs(y,j),Q.jsx("div",{className:t,style:l,children:Q.jsxs("div",{className:te.clsx(`
22
+ `,textRuns:[],customBlocks:[],customDecorations:[],customRanges:[],paragraphs:[{startIndex:0}]},...h,documentStyle:{...h==null?void 0:h.documentStyle,pageSize:{width:s?1/0:n.current.clientWidth,height:1/0}},id:t},m=d.register({autofocus:!0,editorUnitId:t,initialSnapshot:g},n.current),p=d.getEditor(t);if(l(p),a){p.focus();const f=((u=(A=g.body)==null?void 0:A.dataStream.length)!=null?u:2)-2;p.setSelectionRanges([{startOffset:f,endOffset:f}])}return()=>{m==null||m.dispose()}}},[]),c}const Ee={id:"doc.operation.move-cursor",type:i.CommandType.OPERATION,handler:(o,t)=>!!t},Ce={id:"doc.operation.move-selection",type:i.CommandType.OPERATION,handler:(o,t)=>!!t},js=(o,t,e,n)=>{const r=I.useDependency(i.ICommandService),s=I.useDependency(I.IShortcutService),a=w.useRef(t);a.current=t;const c=w.useRef(n);c.current=n,w.useEffect(()=>{if(!e||!o)return;const d=`sheet.formula-embedding-editor.${e.getEditorId()}`,A=new i.DisposableCollection,u=(g,m)=>{if(c.current){c.current(g,m);return}let p=i.Direction.LEFT;g===I.KeyCode.ARROW_DOWN?p=i.Direction.DOWN:g===I.KeyCode.ARROW_UP?p=i.Direction.UP:g===I.KeyCode.ARROW_RIGHT&&(p=i.Direction.RIGHT),m===I.MetaKeys.SHIFT?r.executeCommand(Ce.id,{direction:p}):r.executeCommand(Ee.id,{direction:p})};return A.add(r.registerCommand({id:d,type:i.CommandType.OPERATION,handler(g,m){const{keyCode:p}=m;u(p)}})),[{keyCode:I.KeyCode.ARROW_DOWN},{keyCode:I.KeyCode.ARROW_LEFT},{keyCode:I.KeyCode.ARROW_RIGHT},{keyCode:I.KeyCode.ARROW_UP},{keyCode:I.KeyCode.ARROW_DOWN,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_LEFT,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_RIGHT,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_UP,metaKey:I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_DOWN,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_LEFT,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_RIGHT,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_UP,metaKey:I.MetaKeys.CTRL_COMMAND},{keyCode:I.KeyCode.ARROW_DOWN,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_LEFT,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_RIGHT,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT},{keyCode:I.KeyCode.ARROW_UP,metaKey:I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT}].map(({keyCode:g,metaKey:m})=>({id:d,binding:m?g|m:g,preconditions:()=>!0,priority:900,staticParameters:{eventType:M.DeviceInputEventType.Keyboard,keyCode:g}})).forEach(g=>{A.add(s.registerShortcut(g))}),()=>{A.dispose()}},[r,e,o,s])};function Ws(o,t){const e=I.useDependency(i.ICommandService);w.useEffect(()=>{if(!o)return;const n=e.onCommandExecuted(r=>{var s,a;if(r.id===B.RichTextEditingMutation.id){if(r.params.unitId!==o.getEditorId())return;const l=o.getDocumentData();t(l,i.getPlainText((a=(s=l.body)==null?void 0:s.dataStream)!=null?a:""))}});return()=>{n.dispose()}},[o,t,e])}const zs=o=>{var k;const{className:t,autoFocus:e,onFocusChange:n,initialValue:r,onClickOutside:s,keyboardEventConfig:a,moveCursor:c=!0,style:l,isSingle:d,editorId:A,onHeightChange:u,onChange:h,defaultHeight:g=32,maxHeight:m=32,icon:p,editorRef:f,placeholder:S}=o,v=I.useDependency(ae),C=I.useEvent(n),y=I.useEvent(s),[b,E]=w.useState(g),R=w.useRef(null),D=w.useMemo(()=>A!=null?A:i.createInternalEditorID(`RICH_TEXT_EDITOR-${i.generateRandomId(4)}`),[A]),T=Vs({editorId:D,initialValue:r,container:R,autoFocus:e,isSingle:d}),O=I.useDependency(M.IRenderManagerService).getRenderById(D),N=O==null?void 0:O.with(exports.DocSelectionRenderService),F=I.useObservable(N==null?void 0:N.textSelectionInner$),H=!!((k=N==null?void 0:N.isFocusing)!=null&&k&&(F!=null&&F.textRanges.some(V=>V.collapsed))),U=w.useRef(null),[L,W]=w.useState(()=>{var V,X;return!i.BuildTextUtils.transform.getPlainText((X=(V=T==null?void 0:T.getDocumentData().body)==null?void 0:V.dataStream)!=null?X:"")}),{checkScrollBar:z}=ri(T,d,!0,!0);w.useLayoutEffect(()=>{if(!(!f||!T)){if(typeof f=="function"){f(T);return}f.current=T}},[T]);const j=I.useEvent(V=>{var Y,G;const X=O==null?void 0:O.with(B.DocSkeletonManagerService),K=X==null?void 0:X.getSkeleton().getActualSize();K&&(u==null||u(K.actualHeight),E(Math.max(g,Math.min(K.actualHeight+10,m)))),h==null||h(V,i.getPlainText((G=(Y=V.body)==null?void 0:Y.dataStream)!=null?G:"")),z()});return w.useEffect(()=>{var X,K;W(!i.BuildTextUtils.transform.getPlainText((K=(X=T==null?void 0:T.getDocumentData().body)==null?void 0:X.dataStream)!=null?K:""));const V=T==null?void 0:T.selectionChange$.subscribe(()=>{var Y,G;W(!i.BuildTextUtils.transform.getPlainText((G=(Y=T==null?void 0:T.getDocumentData().body)==null?void 0:Y.dataStream)!=null?G:""))});return()=>V==null?void 0:V.unsubscribe()},[T]),I.useObservable(T==null?void 0:T.blur$),I.useObservable(T==null?void 0:T.focus$),w.useEffect(()=>{var X,K;const V=T==null?void 0:T.getDocumentData();C==null||C(H,i.getPlainText((K=(X=V==null?void 0:V.body)==null?void 0:X.dataStream)!=null?K:""))},[H,C]),w.useEffect(()=>{const V=K=>{var G,q;v.getFocusId()!==D||((q=(G=K.target)==null?void 0:G.dataset)==null?void 0:q.editorid)===D||U.current&&!U.current.contains(K.target)&&(y==null||y())},X=setTimeout(()=>{document.addEventListener("click",V)},100);return()=>{document.removeEventListener("click",V),clearTimeout(X)}},[T,D,v,y]),js(H&&c,!1,T),oi(H,a,T),Ws(T,j),Q.jsx("div",{className:t,style:l,children:Q.jsxs("div",{className:te.clsx(`
23
23
  univer-relative univer-box-border univer-flex univer-h-8 univer-w-full univer-items-center
24
24
  univer-justify-around univer-gap-2 univer-rounded univer-border univer-border-solid
25
25
  univer-border-gray-200 univer-pb-0.5 univer-pl-1.5 univer-pr-2 univer-pt-1.5
26
- `,{"univer-border-primary-500":H}),style:{height:R},ref:U,children:[Q.jsx("div",{ref:x,className:"univer-relative univer-size-full",onMouseUp:()=>y==null?void 0:y.focus()}),p,L?Q.jsx("div",{className:`
26
+ `,{"univer-border-primary-500":H}),style:{height:b},ref:U,children:[Q.jsx("div",{ref:R,className:"univer-relative univer-size-full",onMouseUp:()=>T==null?void 0:T.focus()}),p,L?Q.jsx("div",{className:`
27
27
  univer-absolute univer-left-[5px] univer-top-[5px] univer-text-sm univer-text-gray-500
28
- `,children:S}):null]})})};var se=function(){return se=Object.assign||function(o){for(var t,e=1,n=arguments.length;e<n;e++){t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(o[r]=t[r])}return o},se.apply(this,arguments)},Xs=function(o,t){var e={};for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&t.indexOf(n)<0&&(e[n]=o[n]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,n=Object.getOwnPropertySymbols(o);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(o,n[r])&&(e[n[r]]=o[n[r]]);return e},oe=w.forwardRef(function(o,t){var e=o.icon,n=o.id,r=o.className,s=o.extend,a=Xs(o,["icon","id","className","extend"]),c="univerjs-icon univerjs-icon-".concat(n," ").concat(r||"").trim(),l=w.useRef("_".concat(qs()));return gi(e,"".concat(n),{defIds:e.defIds,idSuffix:l.current},se({ref:t,className:c},a),s)});function gi(o,t,e,n,r){return w.createElement(o.tag,se(se({key:t},Ks(o,e,r)),n),(Ys(o,e).children||[]).map(function(s,a){return gi(s,"".concat(t,"-").concat(o.tag,"-").concat(a),e,void 0,r)}))}function Ks(o,t,e){var n=se({},o.attrs);e!=null&&e.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=e.colorChannel1),o.tag==="mask"&&n.id&&(n.id=n.id+t.idSuffix),Object.entries(n).forEach(function(s){var a=s[0],c=s[1];a==="mask"&&typeof c=="string"&&(n[a]=c.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))});var r=t.defIds;return!r||r.length===0||(o.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+t.idSuffix),Object.entries(n).forEach(function(s){var a=s[0],c=s[1];typeof c=="string"&&(n[a]=c.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),n}function Ys(o,t){var e,n=t.defIds;return!n||n.length===0?o:o.tag==="defs"&&(!((e=o.children)===null||e===void 0)&&e.length)?se(se({},o),{children:o.children.map(function(r){return typeof r.attrs.id=="string"&&n&&n.indexOf(r.attrs.id)>-1?se(se({},r),{attrs:se(se({},r.attrs),{id:r.attrs.id+t.idSuffix})}):r})}):o}function qs(){return Math.random().toString(36).substring(2,8)}oe.displayName="UniverIcon";var Js={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641 1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H13.9999C14.3313 6.76641 14.5999 6.49778 14.5999 6.16641 14.5999 5.83504 14.3313 5.56641 13.9999 5.56641H1.9999zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004 1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H13.9999C14.3313 14.1004 14.5999 13.8318 14.5999 13.5004 14.5999 13.169 14.3313 12.9004 13.9999 12.9004H1.9999z"}}]},hi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"align-text-both-single",ref:t,icon:Js}))});hi.displayName="AlignTextBothSingle";var Zs={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.50095 1.84399C2.73322 1.60765 3.11311 1.60435 3.34945 1.83662L8.00012 6.40726L12.6508 1.83662C12.8871 1.60435 13.267 1.60765 13.4993 1.84399C13.7316 2.08032 13.7283 2.46021 13.4919 2.69248L8.85611 7.24852L10.8941 9.25146C11.1382 9.17563 11.3976 9.13477 11.6667 9.13477C13.1026 9.13477 14.2667 10.2988 14.2667 11.7348C14.2667 13.1707 13.1026 14.3348 11.6667 14.3348C10.2307 14.3348 9.06665 13.1707 9.06665 11.7348C9.06665 11.0143 9.35973 10.3622 9.83319 9.89129L8.00012 8.08978L6.16708 9.89127C6.64055 10.3622 6.93364 11.0142 6.93364 11.7348C6.93364 13.1707 5.76958 14.3348 4.33364 14.3348C2.8977 14.3348 1.73364 13.1707 1.73364 11.7348C1.73364 10.2988 2.8977 9.13477 4.33364 9.13477C4.60263 9.13477 4.86208 9.17562 5.10612 9.25145L7.14413 7.24852L2.50831 2.69248C2.27197 2.46021 2.26868 2.08032 2.50095 1.84399ZM2.93364 11.7348C2.93364 10.9616 3.56044 10.3348 4.33364 10.3348C5.10684 10.3348 5.73364 10.9616 5.73364 11.7348C5.73364 12.508 5.10684 13.1348 4.33364 13.1348C3.56044 13.1348 2.93364 12.508 2.93364 11.7348ZM10.2667 11.7348C10.2667 10.9616 10.8935 10.3348 11.6667 10.3348C12.4398 10.3348 13.0667 10.9616 13.0667 11.7348C13.0667 12.508 12.4398 13.1348 11.6667 13.1348C10.8935 13.1348 10.2667 12.508 10.2667 11.7348Z",fillRule:"evenodd",clipRule:"evenodd"}}]},mi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"cut-single",ref:t,icon:Zs}))});mi.displayName="CutSingle";var $s={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.3313 1.4667C5.3313 1.13533 5.59993.866699 5.9313.866699H10.069C10.4004.866699 10.669 1.13533 10.669 1.4667 10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667zM1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443 14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443zM6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928 9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171 10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778 9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539 9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263 6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539 5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778 6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},pi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"delete-single",ref:t,icon:$s}))});pi.displayName="DeleteSingle";var ea={tag:"svg",attrs:{fill:"none",viewBox:"0 0 20 20",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M10.5547 14.1884C10.2599 14.5214 9.74019 14.5214 9.4454 14.1884L3.71321 7.71335C3.29002 7.23532 3.6294 6.48161 4.26784 6.48161L15.7322 6.48161C16.3707 6.48161 16.7101 7.23532 16.2869 7.71335L10.5547 14.1884Z"}}]},fi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"down-single",ref:t,icon:ea}))});fi.displayName="DownSingle";var ta={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.0999 2.66689C3.0999 2.33552 2.83127 2.06689 2.4999 2.06689 2.16853 2.06689 1.8999 2.33552 1.8999 2.66689V13.3336C1.8999 13.6649 2.16853 13.9336 2.4999 13.9336 2.83127 13.9336 3.0999 13.6649 3.0999 13.3336V8.5999H8.2334V13.3336C8.2334 13.6649 8.50203 13.9336 8.8334 13.9336 9.16477 13.9336 9.4334 13.6649 9.4334 13.3336V2.66689C9.4334 2.33552 9.16477 2.06689 8.8334 2.06689 8.50203 2.06689 8.2334 2.33552 8.2334 2.66689V7.3999H3.0999V2.66689zM14.0999 6.33879C14.0999 6.09377 13.9509 5.87336 13.7236 5.78203 13.4962 5.6907 13.2362 5.74679 13.0667 5.92373L11.4753 7.58486C11.2461 7.82415 11.2542 8.20396 11.4935 8.43319 11.7328 8.66243 12.1126 8.65427 12.3419 8.41499L12.8999 7.83245V13.3333C12.8999 13.6646 13.1686 13.9333 13.4999 13.9333 13.8313 13.9333 14.0999 13.6646 14.0999 13.3333V6.33879z"}}]},Si=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h1-single",ref:t,icon:ta}))});Si.displayName="H1Single";var na={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.5999 2.66689C2.5999 2.33552 2.33127 2.06689 1.9999 2.06689 1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336 2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336 8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689 7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689zM11.2667 8.33356C11.2667 7.67245 11.8201 7.26689 12.3333 7.26689 12.8465 7.26689 13.4 7.67244 13.4 8.33356 13.4 8.62807 13.2712 8.94814 12.9954 9.32391 12.7183 9.70153 12.3394 10.0744 11.9174 10.4803L11.8355 10.559C11.4524 10.9268 11.0365 11.3263 10.7149 11.7373 10.3718 12.1759 10.0667 12.7122 10.0667 13.3336 10.0667 13.6649 10.3353 13.9336 10.6667 13.9336H14C14.3314 13.9336 14.6 13.6649 14.6 13.3336 14.6 13.0022 14.3314 12.7336 14 12.7336H11.4782C11.5286 12.6531 11.5889 12.5676 11.6601 12.4767 11.9269 12.1355 12.2843 11.792 12.6877 11.4043L12.7492 11.3452C13.1606 10.9496 13.615 10.5079 13.9629 10.0338 14.3122 9.55787 14.6 8.98906 14.6 8.33356 14.6 6.88362 13.3757 6.06689 12.3333 6.06689 11.291 6.06689 10.0667 6.88361 10.0667 8.33356 10.0667 8.66493 10.3353 8.93356 10.6667 8.93356 10.998 8.93356 11.2667 8.66493 11.2667 8.33356z"}}]},Ii=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h2-single",ref:t,icon:na}))});Ii.displayName="H2Single";var oa={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.5999 2.66689C2.5999 2.33552 2.33127 2.06689 1.9999 2.06689 1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336 2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336 8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689 7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689zM10.6667 6.06689C10.3353 6.06689 10.0667 6.33552 10.0667 6.66689 10.0667 6.99827 10.3353 7.26689 10.6667 7.26689H12.7732L11.193 9.29853C11.0524 9.47942 11.027 9.72465 11.1277 9.93051 11.2283 10.1364 11.4375 10.2669 11.6667 10.2669 12.2418 10.2669 12.6786 10.4115 12.9585 10.6354 13.2204 10.845 13.4 11.166 13.4 11.6669 13.4 12.1622 13.2254 12.3937 13.0567 12.5202 12.8588 12.6686 12.5829 12.7336 12.3333 12.7336 11.7271 12.7336 11.3432 12.4858 11.1106 12.23 10.8877 11.9848 10.5082 11.9667 10.2631 12.1896 10.0179 12.4125 9.99979 12.792 10.2227 13.0372 10.6568 13.5147 11.3522 13.9336 12.3333 13.9336 12.7504 13.9336 13.3078 13.8319 13.7767 13.4802 14.2746 13.1068 14.6 12.5049 14.6 11.6669 14.6 10.8345 14.2796 10.1555 13.7081 9.69837 13.4342 9.47923 13.117 9.32231 12.7746 9.21971L14.4736 7.03526C14.6143 6.85437 14.6397 6.60914 14.539 6.40328 14.4383 6.19743 14.2291 6.06689 14 6.06689H10.6667z"}}]},vi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h3-single",ref:t,icon:oa}))});vi.displayName="H3Single";var ra={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.4334 2.66689C2.4334 2.33552 2.16477 2.06689 1.8334 2.06689C1.50203 2.06689 1.2334 2.33552 1.2334 2.66689V13.3336C1.2334 13.6649 1.50203 13.9336 1.8334 13.9336C2.16477 13.9336 2.4334 13.6649 2.4334 13.3336V8.5999H7.2334V13.3336C7.2334 13.6649 7.50203 13.9336 7.8334 13.9336C8.16477 13.9336 8.4334 13.6649 8.4334 13.3336V2.66689C8.4334 2.33552 8.16477 2.06689 7.8334 2.06689C7.50203 2.06689 7.2334 2.33552 7.2334 2.66689V7.3999H2.4334V2.66689Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M13.7591 6.66645C13.7591 6.40387 13.5884 6.1718 13.3377 6.09364C13.087 6.01549 12.8147 6.10941 12.6654 6.32546L9.67321 10.6577C9.60398 10.7579 9.56689 10.8769 9.56689 10.9987V11.6731C9.56689 12.0045 9.83552 12.2731 10.1669 12.2731H12.5591V13.3331C12.5591 13.6645 12.8278 13.9331 13.1591 13.9331C13.4905 13.9331 13.7591 13.6645 13.7591 13.3331V12.2731H14.1669C14.4983 12.2731 14.7669 12.0045 14.7669 11.6731C14.7669 11.3417 14.4983 11.0731 14.1669 11.0731H13.7591V6.66645ZM12.5591 8.59091V11.0731H10.8447L12.5591 8.59091Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Ei=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h4-single",ref:t,icon:ra}))});Ei.displayName="H4Single";var ia={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.5999 2.66689C2.5999 2.33552 2.33127 2.06689 1.9999 2.06689 1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336 2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336 8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689 7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689zM10.6669 6.40332C10.3355 6.40332 10.0669 6.67195 10.0669 7.00332V9.34492C10.0669 9.67629 10.3355 9.94492 10.6669 9.94492 10.7822 9.94492 10.8899 9.91238 10.9814 9.85599 10.9901 9.85195 11.0027 9.84632 11.0192 9.83936 11.0764 9.81533 11.1692 9.78033 11.2927 9.74447 11.5397 9.67268 11.8996 9.60022 12.3336 9.60022 12.4975 9.60022 12.5978 9.63412 12.6624 9.67167 12.7263 9.70877 12.79 9.76953 12.8503 9.87834 12.983 10.1181 13.0669 10.5337 13.0669 11.1669 13.0669 11.8061 12.9802 12.1936 12.8338 12.414 12.7252 12.5775 12.5275 12.7336 12.0002 12.7336 11.6445 12.7336 11.4936 12.622 11.4192 12.5328 11.3289 12.4245 11.2669 12.2453 11.2669 12.0028 11.2669 11.6714 10.9983 11.4028 10.6669 11.4028 10.3355 11.4028 10.0669 11.6714 10.0669 12.0028 10.0669 12.4244 10.1716 12.9106 10.4979 13.3016 10.8401 13.7118 11.356 13.9336 12.0002 13.9336 12.8063 13.9336 13.4419 13.6673 13.8334 13.0779 14.1869 12.5456 14.2669 11.8497 14.2669 11.1669 14.2669 10.4781 14.1841 9.81027 13.9002 9.29724 13.7521 9.02964 13.545 8.79662 13.2651 8.63403 12.986 8.4719 12.6697 8.40022 12.3336 8.40022 11.9239 8.40022 11.5627 8.44957 11.2669 8.51389V7.60332H13.3336C13.6649 7.60332 13.9336 7.33469 13.9336 7.00332 13.9336 6.67195 13.6649 6.40332 13.3336 6.40332H10.6669z"}}]},Ci=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h5-single",ref:t,icon:ia}))});Ci.displayName="H5Single";var sa={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM3.33315 5.56641C3.00178 5.56641 2.73315 5.83504 2.73315 6.16641 2.73315 6.49778 3.00178 6.76641 3.33315 6.76641H12.6665C12.9979 6.76641 13.2665 6.49778 13.2665 6.16641 13.2665 5.83504 12.9979 5.56641 12.6665 5.56641H3.33315zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM3.33315 12.9004C3.00178 12.9004 2.73315 13.169 2.73315 13.5004 2.73315 13.8318 3.00178 14.1004 3.33315 14.1004H12.6665C12.9979 14.1004 13.2665 13.8318 13.2665 13.5004 13.2665 13.169 12.9979 12.9004 12.6665 12.9004H3.33315z"}}]},Ti=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"horizontally-single",ref:t,icon:sa}))});Ti.displayName="HorizontallySingle";var aa={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641 1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H11.3332C11.6646 6.76641 11.9332 6.49778 11.9332 6.16641 11.9332 5.83504 11.6646 5.56641 11.3332 5.56641H1.9999zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004 1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H11.3332C11.6646 14.1004 11.9332 13.8318 11.9332 13.5004 11.9332 13.169 11.6646 12.9004 11.3332 12.9004H1.9999z"}}]},yi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"left-justifying-single",ref:t,icon:aa}))});yi.displayName="LeftJustifyingSingle";var ca={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM4.66665 5.56641C4.33528 5.56641 4.06665 5.83504 4.06665 6.16641 4.06665 6.49778 4.33528 6.76641 4.66665 6.76641H14C14.3314 6.76641 14.6 6.49778 14.6 6.16641 14.6 5.83504 14.3314 5.56641 14 5.56641H4.66665zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM4.66665 12.9004C4.33528 12.9004 4.06665 13.169 4.06665 13.5004 4.06665 13.8318 4.33528 14.1004 4.66665 14.1004H14C14.3314 14.1004 14.6 13.8318 14.6 13.5004 14.6 13.169 14.3314 12.9004 14 12.9004H4.66665z"}}]},Ri=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"right-justifying-single",ref:t,icon:ca}))});Ri.displayName="RightJustifyingSingle";var la={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.06641 1.9999C2.06641 1.66853 2.33504 1.3999 2.66641 1.3999H13.3331C13.6644 1.3999 13.9331 1.66853 13.9331 1.9999V3.64434C13.9331 3.97571 13.6644 4.24434 13.3331 4.24434C13.0017 4.24434 12.7331 3.97571 12.7331 3.64434V2.5999H8.59966V13.3999H10.6665C10.9979 13.3999 11.2665 13.6685 11.2665 13.9999C11.2665 14.3313 10.9979 14.5999 10.6665 14.5999L7.99966 14.5999L5.33315 14.5999C5.00178 14.5999 4.73315 14.3313 4.73315 13.9999C4.73315 13.6685 5.00178 13.3999 5.33315 13.3999H7.39966V2.5999H3.26641V3.64434C3.26641 3.97571 2.99778 4.24434 2.66641 4.24434C2.33504 4.24434 2.06641 3.97571 2.06641 3.64434V1.9999Z"}}]},ft=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"text-type-single",ref:t,icon:la}))});ft.displayName="TextTypeSingle";var da={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.96372 2.59116C5.19803 2.35684 5.19803 1.97695 4.96372 1.74263 4.7294 1.50832 4.3495 1.50832 4.11519 1.74263L2.53945 3.31837 1.96372 2.74263C1.7294 2.50832 1.3495 2.50832 1.11519 2.74263.880874 2.97695.880874 3.35684 1.11519 3.59116L2.11519 4.59116C2.3495 4.82547 2.7294 4.82547 2.96372 4.59116L4.96372 2.59116zM14.4605 2.56689H6.8981C6.56672 2.56689 6.2981 2.83552 6.2981 3.16689 6.2981 3.49827 6.56672 3.76689 6.8981 3.76689H14.4605C14.7918 3.76689 15.0605 3.49827 15.0605 3.16689 15.0605 2.83552 14.7918 2.56689 14.4605 2.56689zM6.8981 7.2334C6.56672 7.2334 6.2981 7.50203 6.2981 7.8334 6.2981 8.16477 6.56672 8.4334 6.8981 8.4334H14.4605C14.7918 8.4334 15.0605 8.16477 15.0605 7.8334 15.0605 7.50203 14.7918 7.2334 14.4605 7.2334H6.8981zM6.2981 12.4999C6.2981 12.1685 6.56672 11.8999 6.8981 11.8999H14.4605C14.7918 11.8999 15.0605 12.1685 15.0605 12.4999 15.0605 12.8313 14.7918 13.0999 14.4605 13.0999H6.8981C6.56672 13.0999 6.2981 12.8313 6.2981 12.4999z"}},{tag:"path",attrs:{fill:"currentColor",d:"M2.87279 5.8999C1.80504 5.8999.939453 6.76549.939453 7.83324.939453 8.90099 1.80504 9.76657 2.87279 9.76657 3.94054 9.76657 4.80612 8.90099 4.80612 7.83324 4.80612 6.76549 3.94054 5.8999 2.87279 5.8999zM2.13945 7.83324C2.13945 7.42823 2.46778 7.0999 2.87279 7.0999 3.2778 7.0999 3.60612 7.42823 3.60612 7.83324 3.60612 8.23824 3.2778 8.56657 2.87279 8.56657 2.46778 8.56657 2.13945 8.23824 2.13945 7.83324zM.939453 12.5002C.939453 11.4325 1.80504 10.5669 2.87279 10.5669 3.94054 10.5669 4.80612 11.4325 4.80612 12.5002 4.80612 13.568 3.94054 14.4336 2.87279 14.4336 1.80504 14.4336.939453 13.568.939453 12.5002zM2.87279 11.7669C2.46778 11.7669 2.13945 12.0952 2.13945 12.5002 2.13945 12.9052 2.46778 13.2336 2.87279 13.2336 3.2778 13.2336 3.60612 12.9052 3.60612 12.5002 3.60612 12.0952 3.2778 11.7669 2.87279 11.7669z",fillRule:"evenodd",clipRule:"evenodd"}}]},bi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"todo-list",ref:t,icon:da}))});bi.displayName="TodoList";function xi(o){var n;const{dataStream:t}=(n=o.body)!=null?n:{},e=[i.DataStreamTreeTokenType.TABLE_START,i.DataStreamTreeTokenType.TABLE_CELL_END,i.DataStreamTreeTokenType.TABLE_CELL_START,i.DataStreamTreeTokenType.TABLE_END,i.DataStreamTreeTokenType.TABLE_ROW_END,i.DataStreamTreeTokenType.TABLE_ROW_START,i.DataStreamTreeTokenType.COLUMN_BREAK,i.DataStreamTreeTokenType.PAGE_BREAK,i.DataStreamTreeTokenType.TAB,i.DataStreamTreeTokenType.DOCS_END,i.DataStreamTreeTokenType.CUSTOM_BLOCK];if(typeof t=="string")for(let r=0;r<t.length;r++){const s=t[r];if(!e.includes(s))return r}return 0}const Xn="COMPONENT_DOC_HEADER_FOOTER_PANEL";function Aa(o,t,e){const{useFirstPageHeaderFooter:n,evenAndOddHeaders:r,defaultHeaderId:s,defaultFooterId:a,firstPageHeaderId:c,firstPageFooterId:l,evenPageHeaderId:d,evenPageFooterId:A}=o;return t===M.DocumentEditArea.HEADER?n===i.BooleanNumber.TRUE&&e===0?c:r===i.BooleanNumber.TRUE&&e%2===1?d:s:n===i.BooleanNumber.TRUE&&e===0?l:r===i.BooleanNumber.TRUE&&e%2===1?A:a}const ua=o=>{const t=I.useDependency(i.LocaleService),e=I.useDependency(i.IUniverInstanceService),n=I.useDependency(M.IRenderManagerService),r=I.useDependency(i.ICommandService),s=I.useDependency(I.ILayoutService),{unitId:a}=o,c=n.getRenderById(a).with(exports.DocSelectionRenderService),[l,d]=w.useState({}),A=(g,m)=>{var x;d(B=>({...B,[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE}));const p=e.getUniverDocInstance(a),f=p==null?void 0:p.getSnapshot().documentStyle,S=(x=n.getRenderById(a))==null?void 0:x.with(D.DocSkeletonManagerService),v=S==null?void 0:S.getViewModel();if(f==null||v==null)return;const E=v.getEditArea();let T=!1;const R=c.getSegmentPage();let C=!1;if(m==="useFirstPageHeaderFooter"&&g===!0&&((E===M.DocumentEditArea.HEADER&&!f.firstPageHeaderId||E===M.DocumentEditArea.FOOTER&&!f.firstPageFooterId)&&(T=!0),T&&R===0&&(C=!0)),m==="evenAndOddHeaders"&&g===!0&&((E===M.DocumentEditArea.HEADER&&!f.evenPageHeaderId||E===M.DocumentEditArea.FOOTER&&!f.evenPageFooterId)&&(T=!0),T&&R%2===1&&(C=!0)),T){const y=i.Tools.generateRandomId(6);C&&c.setSegment(y),r.executeCommand(Wt,{unitId:a,segmentId:y,headerFooterProps:{[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE}})}else{const B=c.getSegmentPage(),y=c.getSegment(),P=Aa({...f,[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE},E,B);P&&P!==y&&c.setSegment(P),r.executeCommand(Wt,{unitId:a,headerFooterProps:{[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE}})}s.focus()},u=async(g,m)=>{d(p=>({...p,[m]:g})),await r.executeCommand(Wt,{unitId:a,headerFooterProps:{[m]:g}}),c.removeAllRanges(),c.blur()},h=()=>{r.executeCommand(Io.id,{unitId:a})};return w.useEffect(()=>{const g=e.getUniverDocInstance(a),m=g==null?void 0:g.getSnapshot().documentStyle;if(m){const{marginHeader:p=0,marginFooter:f=0,useFirstPageHeaderFooter:S=i.BooleanNumber.FALSE,evenAndOddHeaders:v=i.BooleanNumber.FALSE}=m;d({marginHeader:p,marginFooter:f,useFirstPageHeaderFooter:S,evenAndOddHeaders:v})}},[a]),Q.jsxs("div",{className:"univer-grid univer-gap-4",children:[Q.jsxs("div",{className:"univer-grid univer-gap-2",children:[Q.jsx("div",{children:Q.jsx(te.Checkbox,{checked:l.useFirstPageHeaderFooter===i.BooleanNumber.TRUE,onChange:g=>{A(g,"useFirstPageHeaderFooter")},children:t.t("headerFooter.firstPageCheckBox")})}),Q.jsx("div",{children:Q.jsx(te.Checkbox,{checked:l.evenAndOddHeaders===i.BooleanNumber.TRUE,onChange:g=>{A(g,"evenAndOddHeaders")},children:t.t("headerFooter.oddEvenCheckBox")})})]}),Q.jsxs("div",{className:"univer-mb-1 univer-flex",children:[Q.jsxs("div",{children:[Q.jsx("span",{children:t.t("headerFooter.headerTopMargin")}),Q.jsx(te.InputNumber,{className:"univer-mt-1.5 univer-w-4/5",min:0,max:200,precision:1,value:l.marginHeader,onChange:g=>{u(g,"marginHeader")}})]}),Q.jsxs("div",{children:[Q.jsx("span",{children:t.t("headerFooter.footerBottomMargin")}),Q.jsx(te.InputNumber,{className:"univer-mt-1.5 univer-w-4/5",min:0,max:200,precision:1,value:l.marginFooter,onChange:g=>{u(g,"marginFooter")}})]})]}),Q.jsx("div",{className:"univer-flex univer-justify-end",children:Q.jsx(te.Button,{onClick:h,children:t.t("headerFooter.closeHeaderFooter")})})]})},ga=()=>{var d;const o=I.useDependency(i.LocaleService),t=I.useDependency(M.IRenderManagerService),r=I.useDependency(i.IUniverInstanceService).getCurrentUniverDocInstance().getUnitId(),a=((d=t.getRenderById(r))==null?void 0:d.with(D.DocSkeletonManagerService)).getViewModel(),[c,l]=w.useState(!0);return w.useEffect(()=>{const A=a.getEditArea();l(A!==M.DocumentEditArea.BODY);const u=a.editAreaChange$.subscribe(h=>{h!=null&&l(h!==M.DocumentEditArea.BODY)});return()=>{u.unsubscribe()}},[]),Q.jsx("div",{className:"univer-text-sm",children:c?Q.jsx(ua,{unitId:r}):Q.jsx("div",{className:"univer-text-gray-400",children:o.t("headerFooter.disableText")})})},cr=18,lr=200,Bn=6,ha=4;function ma(o,t){let{radius:e,width:n,height:r}=t;e=e!=null?e:0,n=n!=null?n:30,r=r!=null?r:30;let s=0;s=Math.min(e,n/2,r/2),o.beginPath(),o.moveTo(0,0),o.lineTo(n,0),o.lineTo(n,r-s),o.arc(n-s,r-s,s,0,Math.PI/2,!1),o.lineTo(0,r),o.lineTo(0,0),o.closePath(),t.fill&&(o.save(),o.fillStyle=t.fill,t.fillRule==="evenodd"?o.fill("evenodd"):o.fill(),o.restore())}class Xt extends M.Shape{constructor(e,n){super(e,n);b(this,"color");b(this,"text");this.color=n==null?void 0:n.color,this.text=n==null?void 0:n.text}static drawWith(e,n){const{text:r,color:s}=n;e.save(),e.font="13px Source Han Sans CN";const a=e.measureText(r).width,c=Math.min(a+2*Bn,lr);ma(e,{height:cr,width:c,radius:4,fill:s}),e.fillStyle="rgba(58, 96, 247, 1)";const l=Bn,d=cr-ha,A=lr-2*Bn;if(a>A){let u="",h=0;for(const g of r){const m=e.measureText(g).width;if(h+m<=A-e.measureText("...").width)u+=g,h+=m;else{u+="...";break}}e.fillText(u,l,d)}else e.fillText(r,l,d);e.restore()}_draw(e){Xt.drawWith(e,this)}}var pa=Object.getOwnPropertyDescriptor,fa=(o,t,e,n)=>{for(var r=n>1?void 0:n?pa(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Oe=(o,t)=>(e,n)=>t(e,n,o);const dr="rgba(58, 96, 247, 1)",Ar="rgba(58, 96, 247, 0.08)";var re=(o=>(o[o.FIRST_PAGE_HEADER=0]="FIRST_PAGE_HEADER",o[o.FIRST_PAGE_FOOTER=1]="FIRST_PAGE_FOOTER",o[o.DEFAULT_HEADER=2]="DEFAULT_HEADER",o[o.DEFAULT_FOOTER=3]="DEFAULT_FOOTER",o[o.EVEN_PAGE_HEADER=4]="EVEN_PAGE_HEADER",o[o.EVEN_PAGE_FOOTER=5]="EVEN_PAGE_FOOTER",o))(re||{});function Sa(o,t,e){const{documentStyle:n}=o.getDataModel().getSnapshot(),{defaultHeaderId:r,defaultFooterId:s,evenPageHeaderId:a,evenPageFooterId:c,firstPageHeaderId:l,firstPageFooterId:d,evenAndOddHeaders:A,useFirstPageHeaderFooter:u}=n;switch(t){case M.DocumentEditArea.BODY:return{createType:null,headerFooterId:null};case M.DocumentEditArea.HEADER:return u===i.BooleanNumber.TRUE&&!l?{createType:0,headerFooterId:null}:A===i.BooleanNumber.TRUE&&e%2===0&&!a?{createType:4,headerFooterId:null}:r?{createType:null,headerFooterId:r}:{createType:2,headerFooterId:null};case M.DocumentEditArea.FOOTER:return u===i.BooleanNumber.TRUE&&!d?{createType:1,headerFooterId:null}:A===i.BooleanNumber.TRUE&&e%2===0&&!c?{createType:5,headerFooterId:null}:s?{createType:null,headerFooterId:s}:{createType:3,headerFooterId:null};default:throw new Error(`Invalid editArea: ${t}`)}}let Kn=class extends i.Disposable{constructor(t,e,n,r,s,a,c,l,d){super();b(this,"_loadedMap",new WeakSet);this._context=t,this._commandService=e,this._editorService=n,this._instanceSrv=r,this._renderManagerService=s,this._docSkeletonManagerService=a,this._docSelectionRenderService=c,this._localeService=l,this._componentManager=d,this._initialize()}_initialize(){this._init(),this._drawHeaderFooterLabel(),this._initCustomComponents(),this._listenSwitchMode()}_listenSwitchMode(){this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(D.RichTextEditingMutation.id===t.id){const e=this._context.unit,r=this._docSkeletonManagerService.getViewModel().getEditArea(),s=e.getSnapshot().documentStyle.documentFlavor;r!==M.DocumentEditArea.BODY&&s===i.DocumentFlavor.MODERN&&this._commandService.executeCommand(Io.id,{unitId:this._context.unitId})}}))}_initCustomComponents(){this._componentManager.get(Xn)||this.disposeWithMe(this._componentManager.register(Xn,ga))}_init(){const{unitId:t}=this._context,e=Ie(this._context);e==null||e.document==null||this._loadedMap.has(e.document)||(this._initialMain(t),this._loadedMap.add(e.document))}_initialMain(t){const e=Ie(this._context),{document:n}=e;this.disposeWithMe(n.onDblclick$.subscribeEvent(async r=>{if(this._isEditorReadOnly(t)||!this._isTraditionalMode())return;const{offsetX:s,offsetY:a}=r,{pageLayoutType:c=M.PageLayoutType.VERTICAL,pageMarginLeft:l,pageMarginTop:d}=n.getOffsetConfig(),A=this._getTransformCoordForDocumentOffset(s,a);if(A==null)return;const u=this._docSkeletonManagerService.getViewModel(),h=this._docSkeletonManagerService.getSkeleton(),g=u.getEditArea(),{editArea:m,pageNumber:p}=h.findEditAreaByCoord(A,c,l,d);if(g===m)return;u.setEditArea(m);const{createType:f,headerFooterId:S}=Sa(u,m,p);if(m===M.DocumentEditArea.BODY)this._docSelectionRenderService.setSegment(""),this._docSelectionRenderService.setSegmentPage(-1),this._docSelectionRenderService.setCursorManually(s,a);else if(f!=null){const E=i.Tools.generateRandomId(6);this._docSelectionRenderService.setSegment(E),this._docSelectionRenderService.setSegmentPage(p),await this._commandService.executeCommand(Oi.id,{unitId:t,createType:f,segmentId:E})}else S!=null&&(this._docSelectionRenderService.setSegment(S),this._docSelectionRenderService.setSegmentPage(p),this._docSelectionRenderService.setCursorManually(s,a))}))}_getTransformCoordForDocumentOffset(t,e){const n=Ie(this._context),{document:r,scene:s}=n,{documentTransform:a}=r.getOffsetConfig(),c=s.getViewports()[0];if(c==null)return;const l=c.transformVector2SceneCoord(M.Vector2.FromArray([t,e]));return a.clone().invert().applyPoint(l)}_drawHeaderFooterLabel(){const t=this._localeService;this._instanceSrv.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC).subscribe(e=>{if(e==null)return;const n=e.getUnitId(),r=this._renderManagerService.getRenderById(n);if(this._editorService.isEditor(n)||this._instanceSrv.getUniverDocInstance(n)==null||r==null)return;const{mainComponent:s}=r,a=s;this.disposeWithMe(i.toDisposable(a.pageRender$.subscribe(c=>{if(this._editorService.isEditor(n)||!this._isTraditionalMode())return;const A=this._docSkeletonManagerService.getViewModel().getEditArea()===M.DocumentEditArea.BODY,{page:u,pageLeft:h,pageTop:g,ctx:m}=c,{pageWidth:p,pageHeight:f,marginTop:S,marginBottom:v}=u;if(m.save(),m.translate(h-.5,g-.5),A?(M.Rect.drawWith(m,{left:0,top:0,width:p,height:S,fill:"rgba(255, 255, 255, 0.5)"}),m.save(),m.translate(0,f-v),M.Rect.drawWith(m,{left:0,top:0,width:p,height:v,fill:"rgba(255, 255, 255, 0.5)"}),m.restore()):(m.save(),m.translate(0,S),M.Rect.drawWith(m,{left:0,top:S,width:p,height:f-S-v,fill:"rgba(255, 255, 255, 0.5)"}),m.restore()),!A){const E={dataArray:[{command:"M",points:[0,S]},{command:"L",points:[p,S]}],strokeWidth:1,stroke:dr},T={dataArray:[{command:"M",points:[0,f-v]},{command:"L",points:[p,f-v]}],strokeWidth:1,stroke:dr};M.Path.drawWith(m,E),M.Path.drawWith(m,T),m.translate(0,S+1),Xt.drawWith(m,{text:t.t("headerFooter.header"),color:Ar}),m.translate(0,f-S-v),Xt.drawWith(m,{text:t.t("headerFooter.footer"),color:Ar})}m.restore()})))})}_isEditorReadOnly(t){const e=this._editorService.getEditor(t);return e?e.isReadOnly():!1}_isTraditionalMode(){return this._context.unit.getSnapshot().documentStyle.documentFlavor===i.DocumentFlavor.TRADITIONAL}};Kn=fa([Oe(1,i.ICommandService),Oe(2,ae),Oe(3,i.IUniverInstanceService),Oe(4,M.IRenderManagerService),Oe(5,i.Inject(D.DocSkeletonManagerService)),Oe(6,i.Inject(exports.DocSelectionRenderService)),Oe(7,i.Inject(i.LocaleService)),Oe(8,i.Inject(I.ComponentManager))],Kn);const fo={id:"sidebar.operation.doc-header-footer-panel",type:i.CommandType.OPERATION,handler:async(o,t)=>{const e=o.get(I.ISidebarService),n=o.get(i.LocaleService);switch(t.value){case"open":e.open({header:{title:n.t("headerFooter.panel")},children:{label:Xn},onClose:()=>{},width:400});break;case"close":default:e.close();break}return!0}};function ur(){return{dataStream:`\r
29
- `,textRuns:[{st:0,ed:0,ts:{fs:9}}],customBlocks:[],paragraphs:[{startIndex:0,paragraphStyle:{spaceAbove:{v:0},lineSpacing:1.5,spaceBelow:{v:0}}}],sectionBreaks:[{startIndex:1}]}}function _n(o,t,e,n){const r=i.JSONX.getInstance(),s=6,a=o!=null?o:i.Tools.generateRandomId(s),c=t===re.DEFAULT_HEADER||t===re.FIRST_PAGE_HEADER||t===re.EVEN_PAGE_HEADER,l=r.insertOp([c?"headers":"footers",a],{[c?"headerId":"footerId"]:a,body:ur()});n.push(l);const d=i.Tools.generateRandomId(s),A=r.insertOp([c?"footers":"headers",d],{[c?"footerId":"headerId"]:d,body:ur()});n.push(A);let u="defaultHeaderId",h="defaultFooterId";switch(t){case re.DEFAULT_HEADER:u="defaultHeaderId",h="defaultFooterId";break;case re.DEFAULT_FOOTER:u="defaultFooterId",h="defaultHeaderId";break;case re.FIRST_PAGE_HEADER:u="firstPageHeaderId",h="firstPageFooterId";break;case re.FIRST_PAGE_FOOTER:u="firstPageFooterId",h="firstPageHeaderId";break;case re.EVEN_PAGE_HEADER:u="evenPageHeaderId",h="evenPageFooterId";break;case re.EVEN_PAGE_FOOTER:u="evenPageFooterId",h="evenPageHeaderId";break;default:throw new Error(`Unknown header footer type: ${t}`)}for(const[g,m]of[[u,a],[h,d]])if(e[g]!=null){const p=r.replaceOp(["documentStyle",g],e[g],m);n.push(p)}else{const p=r.insertOp(["documentStyle",g],m);n.push(p)}return n}const Wt="doc.command.core-header-footer",Oi={id:Wt,type:i.CommandType.COMMAND,handler:async(o,t)=>{var T;const e=o.get(i.ICommandService),n=o.get(i.IUniverInstanceService),r=o.get(M.IRenderManagerService),{unitId:s,segmentId:a,createType:c,headerFooterProps:l}=t,d=(T=r.getRenderById(s))==null?void 0:T.with(D.DocSkeletonManagerService),A=n.getUniverDocInstance(s),u=d==null?void 0:d.getViewModel();if(A==null||u==null)return!1;const h=u.getEditArea(),{documentStyle:g}=A.getSnapshot(),m=(l==null?void 0:l.marginFooter)!=null||(l==null?void 0:l.marginHeader)!=null,p=[{startOffset:0,endOffset:0,collapsed:!0}],f={id:D.RichTextEditingMutation.id,params:{unitId:s,actions:[],textRanges:p,debounce:!0}};m&&(f.params.noNeedSetTextRange=!0);const S=i.JSONX.getInstance(),v=[];return c!=null&&_n(a,c,g,v),l!=null&&Object.keys(l).forEach(R=>{const C=l[R],x=g[R];if(C===x)return;let B;if(x===void 0?B=S.insertOp(["documentStyle",R],C):B=S.replaceOp(["documentStyle",R],x,C),v.push(B),R==="useFirstPageHeaderFooter"&&C===i.BooleanNumber.TRUE&&!g.firstPageHeaderId){const y=h===M.DocumentEditArea.HEADER?re.FIRST_PAGE_HEADER:re.FIRST_PAGE_FOOTER;_n(a,y,g,v)}else if(R==="evenAndOddHeaders"&&C===i.BooleanNumber.TRUE&&!g.evenPageHeaderId){const y=h===M.DocumentEditArea.HEADER?re.EVEN_PAGE_HEADER:re.EVEN_PAGE_FOOTER;_n(a,y,g,v)}}),v.length===0?!1:(f.params.actions=v.reduce((R,C)=>i.JSONX.compose(R,C),null),!!e.syncExecuteCommand(f.id,f.params))}},So={id:"doc.command.open-header-footer-panel",type:i.CommandType.COMMAND,handler:async(o,t)=>o.get(i.ICommandService).executeCommand(fo.id,{value:"open"})},Io={id:"doc.command.close-header-footer",type:i.CommandType.COMMAND,handler:async(o,t)=>{var m;const e=o.get(i.ICommandService),n=o.get(M.IRenderManagerService),r=o.get(D.DocSelectionManagerService),s=o.get(i.IUniverInstanceService),{unitId:a}=t,c=n.getRenderById(a);if(c==null)return!1;const{scene:l}=c,d=l.getTransformerByCreate(),A=c.with(D.DocSkeletonManagerService),u=c.with(exports.DocSelectionRenderService),h=A==null?void 0:A.getSkeleton(),g=A==null?void 0:A.getViewModel();return g==null||h==null?!1:(r.replaceDocRanges([]),d.clearSelectedObjects(),u.setSegment(""),u.setSegmentPage(-1),g.setEditArea(M.DocumentEditArea.BODY),h.calculate(),(m=c.mainComponent)==null||m.makeDirty(!0),queueMicrotask(()=>{const p=s.getUnit(a),f=p==null?void 0:p.getSnapshot();if(f==null)return;const S=xi(f);r.replaceDocRanges([{startOffset:S,endOffset:S}])}),e.executeCommand(fo.id,{value:"close"}),!0)}},st="UI_PLUGIN_DOCS",vo=`${st}_COLOR_PICKER_COMPONENT`,Mi=`${st}_FONT_FAMILY_COMPONENT`,Di=`${st}_FONT_FAMILY_ITEM_COMPONENT`,Bi=`${st}_FONT_SIZE_COMPONENT`,_i=o=>{const{value:t,onChange:e,options:n}=o;return Q.jsx("div",{className:"univer-grid univer-grid-cols-3 univer-gap-2 univer-p-1.5",children:n.map(r=>Q.jsx("a",{className:te.clsx(`
28
+ `,children:S}):null]})})};var se=function(){return se=Object.assign||function(o){for(var t,e=1,n=arguments.length;e<n;e++){t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(o[r]=t[r])}return o},se.apply(this,arguments)},Gs=function(o,t){var e={};for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&t.indexOf(n)<0&&(e[n]=o[n]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,n=Object.getOwnPropertySymbols(o);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(o,n[r])&&(e[n[r]]=o[n[r]]);return e},oe=w.forwardRef(function(o,t){var e=o.icon,n=o.id,r=o.className,s=o.extend,a=Gs(o,["icon","id","className","extend"]),c="univerjs-icon univerjs-icon-".concat(n," ").concat(r||"").trim(),l=w.useRef("_".concat(Ys()));return gi(e,"".concat(n),{defIds:e.defIds,idSuffix:l.current},se({ref:t,className:c},a),s)});function gi(o,t,e,n,r){return w.createElement(o.tag,se(se({key:t},Xs(o,e,r)),n),(Ks(o,e).children||[]).map(function(s,a){return gi(s,"".concat(t,"-").concat(o.tag,"-").concat(a),e,void 0,r)}))}function Xs(o,t,e){var n=se({},o.attrs);e!=null&&e.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=e.colorChannel1),o.tag==="mask"&&n.id&&(n.id=n.id+t.idSuffix),Object.entries(n).forEach(function(s){var a=s[0],c=s[1];a==="mask"&&typeof c=="string"&&(n[a]=c.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))});var r=t.defIds;return!r||r.length===0||(o.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+t.idSuffix),Object.entries(n).forEach(function(s){var a=s[0],c=s[1];typeof c=="string"&&(n[a]=c.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),n}function Ks(o,t){var e,n=t.defIds;return!n||n.length===0?o:o.tag==="defs"&&(!((e=o.children)===null||e===void 0)&&e.length)?se(se({},o),{children:o.children.map(function(r){return typeof r.attrs.id=="string"&&n&&n.indexOf(r.attrs.id)>-1?se(se({},r),{attrs:se(se({},r.attrs),{id:r.attrs.id+t.idSuffix})}):r})}):o}function Ys(){return Math.random().toString(36).substring(2,8)}oe.displayName="UniverIcon";var qs={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641 1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H13.9999C14.3313 6.76641 14.5999 6.49778 14.5999 6.16641 14.5999 5.83504 14.3313 5.56641 13.9999 5.56641H1.9999zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004 1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H13.9999C14.3313 14.1004 14.5999 13.8318 14.5999 13.5004 14.5999 13.169 14.3313 12.9004 13.9999 12.9004H1.9999z"}}]},hi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"align-text-both-single",ref:t,icon:qs}))});hi.displayName="AlignTextBothSingle";var Js={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.50095 1.84399C2.73322 1.60765 3.11311 1.60435 3.34945 1.83662L8.00012 6.40726L12.6508 1.83662C12.8871 1.60435 13.267 1.60765 13.4993 1.84399C13.7316 2.08032 13.7283 2.46021 13.4919 2.69248L8.85611 7.24852L10.8941 9.25146C11.1382 9.17563 11.3976 9.13477 11.6667 9.13477C13.1026 9.13477 14.2667 10.2988 14.2667 11.7348C14.2667 13.1707 13.1026 14.3348 11.6667 14.3348C10.2307 14.3348 9.06665 13.1707 9.06665 11.7348C9.06665 11.0143 9.35973 10.3622 9.83319 9.89129L8.00012 8.08978L6.16708 9.89127C6.64055 10.3622 6.93364 11.0142 6.93364 11.7348C6.93364 13.1707 5.76958 14.3348 4.33364 14.3348C2.8977 14.3348 1.73364 13.1707 1.73364 11.7348C1.73364 10.2988 2.8977 9.13477 4.33364 9.13477C4.60263 9.13477 4.86208 9.17562 5.10612 9.25145L7.14413 7.24852L2.50831 2.69248C2.27197 2.46021 2.26868 2.08032 2.50095 1.84399ZM2.93364 11.7348C2.93364 10.9616 3.56044 10.3348 4.33364 10.3348C5.10684 10.3348 5.73364 10.9616 5.73364 11.7348C5.73364 12.508 5.10684 13.1348 4.33364 13.1348C3.56044 13.1348 2.93364 12.508 2.93364 11.7348ZM10.2667 11.7348C10.2667 10.9616 10.8935 10.3348 11.6667 10.3348C12.4398 10.3348 13.0667 10.9616 13.0667 11.7348C13.0667 12.508 12.4398 13.1348 11.6667 13.1348C10.8935 13.1348 10.2667 12.508 10.2667 11.7348Z",fillRule:"evenodd",clipRule:"evenodd"}}]},mi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"cut-single",ref:t,icon:Js}))});mi.displayName="CutSingle";var Zs={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.3313 1.4667C5.3313 1.13533 5.59993.866699 5.9313.866699H10.069C10.4004.866699 10.669 1.13533 10.669 1.4667 10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667zM1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443 14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443zM6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928 9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171 10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778 9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539 9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263 6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539 5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778 6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},pi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"delete-single",ref:t,icon:Zs}))});pi.displayName="DeleteSingle";var $s={tag:"svg",attrs:{fill:"none",viewBox:"0 0 20 20",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M10.5547 14.1884C10.2599 14.5214 9.74019 14.5214 9.4454 14.1884L3.71321 7.71335C3.29002 7.23532 3.6294 6.48161 4.26784 6.48161L15.7322 6.48161C16.3707 6.48161 16.7101 7.23532 16.2869 7.71335L10.5547 14.1884Z"}}]},fi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"down-single",ref:t,icon:$s}))});fi.displayName="DownSingle";var ea={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.0999 2.66689C3.0999 2.33552 2.83127 2.06689 2.4999 2.06689 2.16853 2.06689 1.8999 2.33552 1.8999 2.66689V13.3336C1.8999 13.6649 2.16853 13.9336 2.4999 13.9336 2.83127 13.9336 3.0999 13.6649 3.0999 13.3336V8.5999H8.2334V13.3336C8.2334 13.6649 8.50203 13.9336 8.8334 13.9336 9.16477 13.9336 9.4334 13.6649 9.4334 13.3336V2.66689C9.4334 2.33552 9.16477 2.06689 8.8334 2.06689 8.50203 2.06689 8.2334 2.33552 8.2334 2.66689V7.3999H3.0999V2.66689zM14.0999 6.33879C14.0999 6.09377 13.9509 5.87336 13.7236 5.78203 13.4962 5.6907 13.2362 5.74679 13.0667 5.92373L11.4753 7.58486C11.2461 7.82415 11.2542 8.20396 11.4935 8.43319 11.7328 8.66243 12.1126 8.65427 12.3419 8.41499L12.8999 7.83245V13.3333C12.8999 13.6646 13.1686 13.9333 13.4999 13.9333 13.8313 13.9333 14.0999 13.6646 14.0999 13.3333V6.33879z"}}]},Si=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h1-single",ref:t,icon:ea}))});Si.displayName="H1Single";var ta={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.5999 2.66689C2.5999 2.33552 2.33127 2.06689 1.9999 2.06689 1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336 2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336 8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689 7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689zM11.2667 8.33356C11.2667 7.67245 11.8201 7.26689 12.3333 7.26689 12.8465 7.26689 13.4 7.67244 13.4 8.33356 13.4 8.62807 13.2712 8.94814 12.9954 9.32391 12.7183 9.70153 12.3394 10.0744 11.9174 10.4803L11.8355 10.559C11.4524 10.9268 11.0365 11.3263 10.7149 11.7373 10.3718 12.1759 10.0667 12.7122 10.0667 13.3336 10.0667 13.6649 10.3353 13.9336 10.6667 13.9336H14C14.3314 13.9336 14.6 13.6649 14.6 13.3336 14.6 13.0022 14.3314 12.7336 14 12.7336H11.4782C11.5286 12.6531 11.5889 12.5676 11.6601 12.4767 11.9269 12.1355 12.2843 11.792 12.6877 11.4043L12.7492 11.3452C13.1606 10.9496 13.615 10.5079 13.9629 10.0338 14.3122 9.55787 14.6 8.98906 14.6 8.33356 14.6 6.88362 13.3757 6.06689 12.3333 6.06689 11.291 6.06689 10.0667 6.88361 10.0667 8.33356 10.0667 8.66493 10.3353 8.93356 10.6667 8.93356 10.998 8.93356 11.2667 8.66493 11.2667 8.33356z"}}]},Ii=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h2-single",ref:t,icon:ta}))});Ii.displayName="H2Single";var na={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.5999 2.66689C2.5999 2.33552 2.33127 2.06689 1.9999 2.06689 1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336 2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336 8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689 7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689zM10.6667 6.06689C10.3353 6.06689 10.0667 6.33552 10.0667 6.66689 10.0667 6.99827 10.3353 7.26689 10.6667 7.26689H12.7732L11.193 9.29853C11.0524 9.47942 11.027 9.72465 11.1277 9.93051 11.2283 10.1364 11.4375 10.2669 11.6667 10.2669 12.2418 10.2669 12.6786 10.4115 12.9585 10.6354 13.2204 10.845 13.4 11.166 13.4 11.6669 13.4 12.1622 13.2254 12.3937 13.0567 12.5202 12.8588 12.6686 12.5829 12.7336 12.3333 12.7336 11.7271 12.7336 11.3432 12.4858 11.1106 12.23 10.8877 11.9848 10.5082 11.9667 10.2631 12.1896 10.0179 12.4125 9.99979 12.792 10.2227 13.0372 10.6568 13.5147 11.3522 13.9336 12.3333 13.9336 12.7504 13.9336 13.3078 13.8319 13.7767 13.4802 14.2746 13.1068 14.6 12.5049 14.6 11.6669 14.6 10.8345 14.2796 10.1555 13.7081 9.69837 13.4342 9.47923 13.117 9.32231 12.7746 9.21971L14.4736 7.03526C14.6143 6.85437 14.6397 6.60914 14.539 6.40328 14.4383 6.19743 14.2291 6.06689 14 6.06689H10.6667z"}}]},vi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h3-single",ref:t,icon:na}))});vi.displayName="H3Single";var oa={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.4334 2.66689C2.4334 2.33552 2.16477 2.06689 1.8334 2.06689C1.50203 2.06689 1.2334 2.33552 1.2334 2.66689V13.3336C1.2334 13.6649 1.50203 13.9336 1.8334 13.9336C2.16477 13.9336 2.4334 13.6649 2.4334 13.3336V8.5999H7.2334V13.3336C7.2334 13.6649 7.50203 13.9336 7.8334 13.9336C8.16477 13.9336 8.4334 13.6649 8.4334 13.3336V2.66689C8.4334 2.33552 8.16477 2.06689 7.8334 2.06689C7.50203 2.06689 7.2334 2.33552 7.2334 2.66689V7.3999H2.4334V2.66689Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M13.7591 6.66645C13.7591 6.40387 13.5884 6.1718 13.3377 6.09364C13.087 6.01549 12.8147 6.10941 12.6654 6.32546L9.67321 10.6577C9.60398 10.7579 9.56689 10.8769 9.56689 10.9987V11.6731C9.56689 12.0045 9.83552 12.2731 10.1669 12.2731H12.5591V13.3331C12.5591 13.6645 12.8278 13.9331 13.1591 13.9331C13.4905 13.9331 13.7591 13.6645 13.7591 13.3331V12.2731H14.1669C14.4983 12.2731 14.7669 12.0045 14.7669 11.6731C14.7669 11.3417 14.4983 11.0731 14.1669 11.0731H13.7591V6.66645ZM12.5591 8.59091V11.0731H10.8447L12.5591 8.59091Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Ei=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h4-single",ref:t,icon:oa}))});Ei.displayName="H4Single";var ra={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.5999 2.66689C2.5999 2.33552 2.33127 2.06689 1.9999 2.06689 1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336 2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336 8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689 7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689zM10.6669 6.40332C10.3355 6.40332 10.0669 6.67195 10.0669 7.00332V9.34492C10.0669 9.67629 10.3355 9.94492 10.6669 9.94492 10.7822 9.94492 10.8899 9.91238 10.9814 9.85599 10.9901 9.85195 11.0027 9.84632 11.0192 9.83936 11.0764 9.81533 11.1692 9.78033 11.2927 9.74447 11.5397 9.67268 11.8996 9.60022 12.3336 9.60022 12.4975 9.60022 12.5978 9.63412 12.6624 9.67167 12.7263 9.70877 12.79 9.76953 12.8503 9.87834 12.983 10.1181 13.0669 10.5337 13.0669 11.1669 13.0669 11.8061 12.9802 12.1936 12.8338 12.414 12.7252 12.5775 12.5275 12.7336 12.0002 12.7336 11.6445 12.7336 11.4936 12.622 11.4192 12.5328 11.3289 12.4245 11.2669 12.2453 11.2669 12.0028 11.2669 11.6714 10.9983 11.4028 10.6669 11.4028 10.3355 11.4028 10.0669 11.6714 10.0669 12.0028 10.0669 12.4244 10.1716 12.9106 10.4979 13.3016 10.8401 13.7118 11.356 13.9336 12.0002 13.9336 12.8063 13.9336 13.4419 13.6673 13.8334 13.0779 14.1869 12.5456 14.2669 11.8497 14.2669 11.1669 14.2669 10.4781 14.1841 9.81027 13.9002 9.29724 13.7521 9.02964 13.545 8.79662 13.2651 8.63403 12.986 8.4719 12.6697 8.40022 12.3336 8.40022 11.9239 8.40022 11.5627 8.44957 11.2669 8.51389V7.60332H13.3336C13.6649 7.60332 13.9336 7.33469 13.9336 7.00332 13.9336 6.67195 13.6649 6.40332 13.3336 6.40332H10.6669z"}}]},Ci=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"h5-single",ref:t,icon:ra}))});Ci.displayName="H5Single";var ia={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM3.33315 5.56641C3.00178 5.56641 2.73315 5.83504 2.73315 6.16641 2.73315 6.49778 3.00178 6.76641 3.33315 6.76641H12.6665C12.9979 6.76641 13.2665 6.49778 13.2665 6.16641 13.2665 5.83504 12.9979 5.56641 12.6665 5.56641H3.33315zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM3.33315 12.9004C3.00178 12.9004 2.73315 13.169 2.73315 13.5004 2.73315 13.8318 3.00178 14.1004 3.33315 14.1004H12.6665C12.9979 14.1004 13.2665 13.8318 13.2665 13.5004 13.2665 13.169 12.9979 12.9004 12.6665 12.9004H3.33315z"}}]},Ti=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"horizontally-single",ref:t,icon:ia}))});Ti.displayName="HorizontallySingle";var sa={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641 1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H11.3332C11.6646 6.76641 11.9332 6.49778 11.9332 6.16641 11.9332 5.83504 11.6646 5.56641 11.3332 5.56641H1.9999zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004 1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H11.3332C11.6646 14.1004 11.9332 13.8318 11.9332 13.5004 11.9332 13.169 11.6646 12.9004 11.3332 12.9004H1.9999z"}}]},yi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"left-justifying-single",ref:t,icon:sa}))});yi.displayName="LeftJustifyingSingle";var aa={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.9999 1.89941C1.66853 1.89941 1.3999 2.16804 1.3999 2.49941 1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941 14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999zM4.66665 5.56641C4.33528 5.56641 4.06665 5.83504 4.06665 6.16641 4.06665 6.49778 4.33528 6.76641 4.66665 6.76641H14C14.3314 6.76641 14.6 6.49778 14.6 6.16641 14.6 5.83504 14.3314 5.56641 14 5.56641H4.66665zM1.3999 9.8334C1.3999 9.50203 1.66853 9.2334 1.9999 9.2334H13.9999C14.3313 9.2334 14.5999 9.50203 14.5999 9.8334 14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334zM4.66665 12.9004C4.33528 12.9004 4.06665 13.169 4.06665 13.5004 4.06665 13.8318 4.33528 14.1004 4.66665 14.1004H14C14.3314 14.1004 14.6 13.8318 14.6 13.5004 14.6 13.169 14.3314 12.9004 14 12.9004H4.66665z"}}]},bi=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"right-justifying-single",ref:t,icon:aa}))});bi.displayName="RightJustifyingSingle";var ca={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M2.06641 1.9999C2.06641 1.66853 2.33504 1.3999 2.66641 1.3999H13.3331C13.6644 1.3999 13.9331 1.66853 13.9331 1.9999V3.64434C13.9331 3.97571 13.6644 4.24434 13.3331 4.24434C13.0017 4.24434 12.7331 3.97571 12.7331 3.64434V2.5999H8.59966V13.3999H10.6665C10.9979 13.3999 11.2665 13.6685 11.2665 13.9999C11.2665 14.3313 10.9979 14.5999 10.6665 14.5999L7.99966 14.5999L5.33315 14.5999C5.00178 14.5999 4.73315 14.3313 4.73315 13.9999C4.73315 13.6685 5.00178 13.3999 5.33315 13.3999H7.39966V2.5999H3.26641V3.64434C3.26641 3.97571 2.99778 4.24434 2.66641 4.24434C2.33504 4.24434 2.06641 3.97571 2.06641 3.64434V1.9999Z"}}]},ft=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"text-type-single",ref:t,icon:ca}))});ft.displayName="TextTypeSingle";var la={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.96372 2.59116C5.19803 2.35684 5.19803 1.97695 4.96372 1.74263 4.7294 1.50832 4.3495 1.50832 4.11519 1.74263L2.53945 3.31837 1.96372 2.74263C1.7294 2.50832 1.3495 2.50832 1.11519 2.74263.880874 2.97695.880874 3.35684 1.11519 3.59116L2.11519 4.59116C2.3495 4.82547 2.7294 4.82547 2.96372 4.59116L4.96372 2.59116zM14.4605 2.56689H6.8981C6.56672 2.56689 6.2981 2.83552 6.2981 3.16689 6.2981 3.49827 6.56672 3.76689 6.8981 3.76689H14.4605C14.7918 3.76689 15.0605 3.49827 15.0605 3.16689 15.0605 2.83552 14.7918 2.56689 14.4605 2.56689zM6.8981 7.2334C6.56672 7.2334 6.2981 7.50203 6.2981 7.8334 6.2981 8.16477 6.56672 8.4334 6.8981 8.4334H14.4605C14.7918 8.4334 15.0605 8.16477 15.0605 7.8334 15.0605 7.50203 14.7918 7.2334 14.4605 7.2334H6.8981zM6.2981 12.4999C6.2981 12.1685 6.56672 11.8999 6.8981 11.8999H14.4605C14.7918 11.8999 15.0605 12.1685 15.0605 12.4999 15.0605 12.8313 14.7918 13.0999 14.4605 13.0999H6.8981C6.56672 13.0999 6.2981 12.8313 6.2981 12.4999z"}},{tag:"path",attrs:{fill:"currentColor",d:"M2.87279 5.8999C1.80504 5.8999.939453 6.76549.939453 7.83324.939453 8.90099 1.80504 9.76657 2.87279 9.76657 3.94054 9.76657 4.80612 8.90099 4.80612 7.83324 4.80612 6.76549 3.94054 5.8999 2.87279 5.8999zM2.13945 7.83324C2.13945 7.42823 2.46778 7.0999 2.87279 7.0999 3.2778 7.0999 3.60612 7.42823 3.60612 7.83324 3.60612 8.23824 3.2778 8.56657 2.87279 8.56657 2.46778 8.56657 2.13945 8.23824 2.13945 7.83324zM.939453 12.5002C.939453 11.4325 1.80504 10.5669 2.87279 10.5669 3.94054 10.5669 4.80612 11.4325 4.80612 12.5002 4.80612 13.568 3.94054 14.4336 2.87279 14.4336 1.80504 14.4336.939453 13.568.939453 12.5002zM2.87279 11.7669C2.46778 11.7669 2.13945 12.0952 2.13945 12.5002 2.13945 12.9052 2.46778 13.2336 2.87279 13.2336 3.2778 13.2336 3.60612 12.9052 3.60612 12.5002 3.60612 12.0952 3.2778 11.7669 2.87279 11.7669z",fillRule:"evenodd",clipRule:"evenodd"}}]},Ri=w.forwardRef(function(o,t){return w.createElement(oe,Object.assign({},o,{id:"todo-list",ref:t,icon:la}))});Ri.displayName="TodoList";function xi(o){var n;const{dataStream:t}=(n=o.body)!=null?n:{},e=[i.DataStreamTreeTokenType.TABLE_START,i.DataStreamTreeTokenType.TABLE_CELL_END,i.DataStreamTreeTokenType.TABLE_CELL_START,i.DataStreamTreeTokenType.TABLE_END,i.DataStreamTreeTokenType.TABLE_ROW_END,i.DataStreamTreeTokenType.TABLE_ROW_START,i.DataStreamTreeTokenType.COLUMN_BREAK,i.DataStreamTreeTokenType.PAGE_BREAK,i.DataStreamTreeTokenType.TAB,i.DataStreamTreeTokenType.DOCS_END,i.DataStreamTreeTokenType.CUSTOM_BLOCK];if(typeof t=="string")for(let r=0;r<t.length;r++){const s=t[r];if(!e.includes(s))return r}return 0}const Xn="COMPONENT_DOC_HEADER_FOOTER_PANEL";function da(o,t,e){const{useFirstPageHeaderFooter:n,evenAndOddHeaders:r,defaultHeaderId:s,defaultFooterId:a,firstPageHeaderId:c,firstPageFooterId:l,evenPageHeaderId:d,evenPageFooterId:A}=o;return t===M.DocumentEditArea.HEADER?n===i.BooleanNumber.TRUE&&e===0?c:r===i.BooleanNumber.TRUE&&e%2===1?d:s:n===i.BooleanNumber.TRUE&&e===0?l:r===i.BooleanNumber.TRUE&&e%2===1?A:a}const Aa=o=>{const t=I.useDependency(i.LocaleService),e=I.useDependency(i.IUniverInstanceService),n=I.useDependency(M.IRenderManagerService),r=I.useDependency(i.ICommandService),s=I.useDependency(I.ILayoutService),{unitId:a}=o,c=n.getRenderById(a).with(exports.DocSelectionRenderService),[l,d]=w.useState({}),A=(g,m)=>{var R;d(D=>({...D,[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE}));const p=e.getUniverDocInstance(a),f=p==null?void 0:p.getSnapshot().documentStyle,S=(R=n.getRenderById(a))==null?void 0:R.with(B.DocSkeletonManagerService),v=S==null?void 0:S.getViewModel();if(f==null||v==null)return;const C=v.getEditArea();let y=!1;const b=c.getSegmentPage();let E=!1;if(m==="useFirstPageHeaderFooter"&&g===!0&&((C===M.DocumentEditArea.HEADER&&!f.firstPageHeaderId||C===M.DocumentEditArea.FOOTER&&!f.firstPageFooterId)&&(y=!0),y&&b===0&&(E=!0)),m==="evenAndOddHeaders"&&g===!0&&((C===M.DocumentEditArea.HEADER&&!f.evenPageHeaderId||C===M.DocumentEditArea.FOOTER&&!f.evenPageFooterId)&&(y=!0),y&&b%2===1&&(E=!0)),y){const T=i.Tools.generateRandomId(6);E&&c.setSegment(T),r.executeCommand(zt,{unitId:a,segmentId:T,headerFooterProps:{[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE}})}else{const D=c.getSegmentPage(),T=c.getSegment(),_=da({...f,[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE},C,D);_&&_!==T&&c.setSegment(_),r.executeCommand(zt,{unitId:a,headerFooterProps:{[m]:g?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE}})}s.focus()},u=async(g,m)=>{d(p=>({...p,[m]:g})),await r.executeCommand(zt,{unitId:a,headerFooterProps:{[m]:g}}),c.removeAllRanges(),c.blur()},h=()=>{r.executeCommand(Io.id,{unitId:a})};return w.useEffect(()=>{const g=e.getUniverDocInstance(a),m=g==null?void 0:g.getSnapshot().documentStyle;if(m){const{marginHeader:p=0,marginFooter:f=0,useFirstPageHeaderFooter:S=i.BooleanNumber.FALSE,evenAndOddHeaders:v=i.BooleanNumber.FALSE}=m;d({marginHeader:p,marginFooter:f,useFirstPageHeaderFooter:S,evenAndOddHeaders:v})}},[a]),Q.jsxs("div",{className:"univer-grid univer-gap-4",children:[Q.jsxs("div",{className:"univer-grid univer-gap-2",children:[Q.jsx("div",{children:Q.jsx(te.Checkbox,{checked:l.useFirstPageHeaderFooter===i.BooleanNumber.TRUE,onChange:g=>{A(g,"useFirstPageHeaderFooter")},children:t.t("headerFooter.firstPageCheckBox")})}),Q.jsx("div",{children:Q.jsx(te.Checkbox,{checked:l.evenAndOddHeaders===i.BooleanNumber.TRUE,onChange:g=>{A(g,"evenAndOddHeaders")},children:t.t("headerFooter.oddEvenCheckBox")})})]}),Q.jsxs("div",{className:"univer-mb-1 univer-flex",children:[Q.jsxs("div",{children:[Q.jsx("span",{children:t.t("headerFooter.headerTopMargin")}),Q.jsx(te.InputNumber,{className:"univer-mt-1.5 univer-w-4/5",min:0,max:200,precision:1,value:l.marginHeader,onChange:g=>{u(g,"marginHeader")}})]}),Q.jsxs("div",{children:[Q.jsx("span",{children:t.t("headerFooter.footerBottomMargin")}),Q.jsx(te.InputNumber,{className:"univer-mt-1.5 univer-w-4/5",min:0,max:200,precision:1,value:l.marginFooter,onChange:g=>{u(g,"marginFooter")}})]})]}),Q.jsx("div",{className:"univer-flex univer-justify-end",children:Q.jsx(te.Button,{onClick:h,children:t.t("headerFooter.closeHeaderFooter")})})]})},ua=()=>{var d;const o=I.useDependency(i.LocaleService),t=I.useDependency(M.IRenderManagerService),r=I.useDependency(i.IUniverInstanceService).getCurrentUniverDocInstance().getUnitId(),a=((d=t.getRenderById(r))==null?void 0:d.with(B.DocSkeletonManagerService)).getViewModel(),[c,l]=w.useState(!0);return w.useEffect(()=>{const A=a.getEditArea();l(A!==M.DocumentEditArea.BODY);const u=a.editAreaChange$.subscribe(h=>{h!=null&&l(h!==M.DocumentEditArea.BODY)});return()=>{u.unsubscribe()}},[]),Q.jsx("div",{className:"univer-text-sm",children:c?Q.jsx(Aa,{unitId:r}):Q.jsx("div",{className:"univer-text-gray-400",children:o.t("headerFooter.disableText")})})},cr=18,lr=200,Bn=6,ga=4;function ha(o,t){let{radius:e,width:n,height:r}=t;e=e!=null?e:0,n=n!=null?n:30,r=r!=null?r:30;let s=0;s=Math.min(e,n/2,r/2),o.beginPath(),o.moveTo(0,0),o.lineTo(n,0),o.lineTo(n,r-s),o.arc(n-s,r-s,s,0,Math.PI/2,!1),o.lineTo(0,r),o.lineTo(0,0),o.closePath(),t.fill&&(o.save(),o.fillStyle=t.fill,t.fillRule==="evenodd"?o.fill("evenodd"):o.fill(),o.restore())}class Kt extends M.Shape{constructor(e,n){super(e,n);x(this,"color");x(this,"text");this.color=n==null?void 0:n.color,this.text=n==null?void 0:n.text}static drawWith(e,n){const{text:r,color:s}=n;e.save(),e.font="13px Source Han Sans CN";const a=e.measureText(r).width,c=Math.min(a+2*Bn,lr);ha(e,{height:cr,width:c,radius:4,fill:s}),e.fillStyle="rgba(58, 96, 247, 1)";const l=Bn,d=cr-ga,A=lr-2*Bn;if(a>A){let u="",h=0;for(const g of r){const m=e.measureText(g).width;if(h+m<=A-e.measureText("...").width)u+=g,h+=m;else{u+="...";break}}e.fillText(u,l,d)}else e.fillText(r,l,d);e.restore()}_draw(e){Kt.drawWith(e,this)}}var ma=Object.getOwnPropertyDescriptor,pa=(o,t,e,n)=>{for(var r=n>1?void 0:n?ma(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Oe=(o,t)=>(e,n)=>t(e,n,o);const dr="rgba(58, 96, 247, 1)",Ar="rgba(58, 96, 247, 0.08)";var re=(o=>(o[o.FIRST_PAGE_HEADER=0]="FIRST_PAGE_HEADER",o[o.FIRST_PAGE_FOOTER=1]="FIRST_PAGE_FOOTER",o[o.DEFAULT_HEADER=2]="DEFAULT_HEADER",o[o.DEFAULT_FOOTER=3]="DEFAULT_FOOTER",o[o.EVEN_PAGE_HEADER=4]="EVEN_PAGE_HEADER",o[o.EVEN_PAGE_FOOTER=5]="EVEN_PAGE_FOOTER",o))(re||{});function fa(o,t,e){const{documentStyle:n}=o.getDataModel().getSnapshot(),{defaultHeaderId:r,defaultFooterId:s,evenPageHeaderId:a,evenPageFooterId:c,firstPageHeaderId:l,firstPageFooterId:d,evenAndOddHeaders:A,useFirstPageHeaderFooter:u}=n;switch(t){case M.DocumentEditArea.BODY:return{createType:null,headerFooterId:null};case M.DocumentEditArea.HEADER:return u===i.BooleanNumber.TRUE&&!l?{createType:0,headerFooterId:null}:A===i.BooleanNumber.TRUE&&e%2===0&&!a?{createType:4,headerFooterId:null}:r?{createType:null,headerFooterId:r}:{createType:2,headerFooterId:null};case M.DocumentEditArea.FOOTER:return u===i.BooleanNumber.TRUE&&!d?{createType:1,headerFooterId:null}:A===i.BooleanNumber.TRUE&&e%2===0&&!c?{createType:5,headerFooterId:null}:s?{createType:null,headerFooterId:s}:{createType:3,headerFooterId:null};default:throw new Error(`Invalid editArea: ${t}`)}}let Kn=class extends i.Disposable{constructor(t,e,n,r,s,a,c,l,d){super();x(this,"_loadedMap",new WeakSet);this._context=t,this._commandService=e,this._editorService=n,this._instanceSrv=r,this._renderManagerService=s,this._docSkeletonManagerService=a,this._docSelectionRenderService=c,this._localeService=l,this._componentManager=d,this._initialize()}_initialize(){this._init(),this._drawHeaderFooterLabel(),this._initCustomComponents(),this._listenSwitchMode()}_listenSwitchMode(){this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(B.RichTextEditingMutation.id===t.id){const e=this._context.unit,r=this._docSkeletonManagerService.getViewModel().getEditArea(),s=e.getSnapshot().documentStyle.documentFlavor;r!==M.DocumentEditArea.BODY&&s===i.DocumentFlavor.MODERN&&this._commandService.executeCommand(Io.id,{unitId:this._context.unitId})}}))}_initCustomComponents(){this._componentManager.get(Xn)||this.disposeWithMe(this._componentManager.register(Xn,ua))}_init(){const{unitId:t}=this._context,e=Ie(this._context);e==null||e.document==null||this._loadedMap.has(e.document)||(this._initialMain(t),this._loadedMap.add(e.document))}_initialMain(t){const e=Ie(this._context),{document:n}=e;this.disposeWithMe(n.onDblclick$.subscribeEvent(async r=>{if(this._isEditorReadOnly(t)||!this._isTraditionalMode())return;const{offsetX:s,offsetY:a}=r,{pageLayoutType:c=M.PageLayoutType.VERTICAL,pageMarginLeft:l,pageMarginTop:d}=n.getOffsetConfig(),A=this._getTransformCoordForDocumentOffset(s,a);if(A==null)return;const u=this._docSkeletonManagerService.getViewModel(),h=this._docSkeletonManagerService.getSkeleton(),g=u.getEditArea(),{editArea:m,pageNumber:p}=h.findEditAreaByCoord(A,c,l,d);if(g===m)return;u.setEditArea(m);const{createType:f,headerFooterId:S}=fa(u,m,p);if(m===M.DocumentEditArea.BODY)this._docSelectionRenderService.setSegment(""),this._docSelectionRenderService.setSegmentPage(-1),this._docSelectionRenderService.setCursorManually(s,a);else if(f!=null){const C=i.Tools.generateRandomId(6);this._docSelectionRenderService.setSegment(C),this._docSelectionRenderService.setSegmentPage(p),await this._commandService.executeCommand(Oi.id,{unitId:t,createType:f,segmentId:C})}else S!=null&&(this._docSelectionRenderService.setSegment(S),this._docSelectionRenderService.setSegmentPage(p),this._docSelectionRenderService.setCursorManually(s,a))}))}_getTransformCoordForDocumentOffset(t,e){const n=Ie(this._context),{document:r,scene:s}=n,{documentTransform:a}=r.getOffsetConfig(),c=s.getViewports()[0];if(c==null)return;const l=c.transformVector2SceneCoord(M.Vector2.FromArray([t,e]));return a.clone().invert().applyPoint(l)}_drawHeaderFooterLabel(){const t=this._localeService;this._instanceSrv.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC).subscribe(e=>{if(e==null)return;const n=e.getUnitId(),r=this._renderManagerService.getRenderById(n);if(this._editorService.isEditor(n)||this._instanceSrv.getUniverDocInstance(n)==null||r==null)return;const{mainComponent:s}=r,a=s;this.disposeWithMe(i.toDisposable(a.pageRender$.subscribe(c=>{if(this._editorService.isEditor(n)||!this._isTraditionalMode())return;const A=this._docSkeletonManagerService.getViewModel().getEditArea()===M.DocumentEditArea.BODY,{page:u,pageLeft:h,pageTop:g,ctx:m}=c,{pageWidth:p,pageHeight:f,marginTop:S,marginBottom:v}=u;if(m.save(),m.translate(h-.5,g-.5),A?(M.Rect.drawWith(m,{left:0,top:0,width:p,height:S,fill:"rgba(255, 255, 255, 0.5)"}),m.save(),m.translate(0,f-v),M.Rect.drawWith(m,{left:0,top:0,width:p,height:v,fill:"rgba(255, 255, 255, 0.5)"}),m.restore()):(m.save(),m.translate(0,S),M.Rect.drawWith(m,{left:0,top:S,width:p,height:f-S-v,fill:"rgba(255, 255, 255, 0.5)"}),m.restore()),!A){const C={dataArray:[{command:"M",points:[0,S]},{command:"L",points:[p,S]}],strokeWidth:1,stroke:dr},y={dataArray:[{command:"M",points:[0,f-v]},{command:"L",points:[p,f-v]}],strokeWidth:1,stroke:dr};M.Path.drawWith(m,C),M.Path.drawWith(m,y),m.translate(0,S+1),Kt.drawWith(m,{text:t.t("headerFooter.header"),color:Ar}),m.translate(0,f-S-v),Kt.drawWith(m,{text:t.t("headerFooter.footer"),color:Ar})}m.restore()})))})}_isEditorReadOnly(t){const e=this._editorService.getEditor(t);return e?e.isReadOnly():!1}_isTraditionalMode(){return this._context.unit.getSnapshot().documentStyle.documentFlavor===i.DocumentFlavor.TRADITIONAL}};Kn=pa([Oe(1,i.ICommandService),Oe(2,ae),Oe(3,i.IUniverInstanceService),Oe(4,M.IRenderManagerService),Oe(5,i.Inject(B.DocSkeletonManagerService)),Oe(6,i.Inject(exports.DocSelectionRenderService)),Oe(7,i.Inject(i.LocaleService)),Oe(8,i.Inject(I.ComponentManager))],Kn);const fo={id:"sidebar.operation.doc-header-footer-panel",type:i.CommandType.OPERATION,handler:async(o,t)=>{const e=o.get(I.ISidebarService),n=o.get(i.LocaleService);switch(t.value){case"open":e.open({header:{title:n.t("headerFooter.panel")},children:{label:Xn},onClose:()=>{},width:400});break;case"close":default:e.close();break}return!0}};function ur(){return{dataStream:`\r
29
+ `,textRuns:[{st:0,ed:0,ts:{fs:9}}],customBlocks:[],paragraphs:[{startIndex:0,paragraphStyle:{spaceAbove:{v:0},lineSpacing:1.5,spaceBelow:{v:0}}}],sectionBreaks:[{startIndex:1}]}}function _n(o,t,e,n){const r=i.JSONX.getInstance(),s=6,a=o!=null?o:i.Tools.generateRandomId(s),c=t===re.DEFAULT_HEADER||t===re.FIRST_PAGE_HEADER||t===re.EVEN_PAGE_HEADER,l=r.insertOp([c?"headers":"footers",a],{[c?"headerId":"footerId"]:a,body:ur()});n.push(l);const d=i.Tools.generateRandomId(s),A=r.insertOp([c?"footers":"headers",d],{[c?"footerId":"headerId"]:d,body:ur()});n.push(A);let u="defaultHeaderId",h="defaultFooterId";switch(t){case re.DEFAULT_HEADER:u="defaultHeaderId",h="defaultFooterId";break;case re.DEFAULT_FOOTER:u="defaultFooterId",h="defaultHeaderId";break;case re.FIRST_PAGE_HEADER:u="firstPageHeaderId",h="firstPageFooterId";break;case re.FIRST_PAGE_FOOTER:u="firstPageFooterId",h="firstPageHeaderId";break;case re.EVEN_PAGE_HEADER:u="evenPageHeaderId",h="evenPageFooterId";break;case re.EVEN_PAGE_FOOTER:u="evenPageFooterId",h="evenPageHeaderId";break;default:throw new Error(`Unknown header footer type: ${t}`)}for(const[g,m]of[[u,a],[h,d]])if(e[g]!=null){const p=r.replaceOp(["documentStyle",g],e[g],m);n.push(p)}else{const p=r.insertOp(["documentStyle",g],m);n.push(p)}return n}const zt="doc.command.core-header-footer",Oi={id:zt,type:i.CommandType.COMMAND,handler:async(o,t)=>{var y;const e=o.get(i.ICommandService),n=o.get(i.IUniverInstanceService),r=o.get(M.IRenderManagerService),{unitId:s,segmentId:a,createType:c,headerFooterProps:l}=t,d=(y=r.getRenderById(s))==null?void 0:y.with(B.DocSkeletonManagerService),A=n.getUniverDocInstance(s),u=d==null?void 0:d.getViewModel();if(A==null||u==null)return!1;const h=u.getEditArea(),{documentStyle:g}=A.getSnapshot(),m=(l==null?void 0:l.marginFooter)!=null||(l==null?void 0:l.marginHeader)!=null,p=[{startOffset:0,endOffset:0,collapsed:!0}],f={id:B.RichTextEditingMutation.id,params:{unitId:s,actions:[],textRanges:p,debounce:!0}};m&&(f.params.noNeedSetTextRange=!0);const S=i.JSONX.getInstance(),v=[];return c!=null&&_n(a,c,g,v),l!=null&&Object.keys(l).forEach(b=>{const E=l[b],R=g[b];if(E===R)return;let D;if(R===void 0?D=S.insertOp(["documentStyle",b],E):D=S.replaceOp(["documentStyle",b],R,E),v.push(D),b==="useFirstPageHeaderFooter"&&E===i.BooleanNumber.TRUE&&!g.firstPageHeaderId){const T=h===M.DocumentEditArea.HEADER?re.FIRST_PAGE_HEADER:re.FIRST_PAGE_FOOTER;_n(a,T,g,v)}else if(b==="evenAndOddHeaders"&&E===i.BooleanNumber.TRUE&&!g.evenPageHeaderId){const T=h===M.DocumentEditArea.HEADER?re.EVEN_PAGE_HEADER:re.EVEN_PAGE_FOOTER;_n(a,T,g,v)}}),v.length===0?!1:(f.params.actions=v.reduce((b,E)=>i.JSONX.compose(b,E),null),!!e.syncExecuteCommand(f.id,f.params))}},So={id:"doc.command.open-header-footer-panel",type:i.CommandType.COMMAND,handler:async(o,t)=>o.get(i.ICommandService).executeCommand(fo.id,{value:"open"})},Io={id:"doc.command.close-header-footer",type:i.CommandType.COMMAND,handler:async(o,t)=>{var m;const e=o.get(i.ICommandService),n=o.get(M.IRenderManagerService),r=o.get(B.DocSelectionManagerService),s=o.get(i.IUniverInstanceService),{unitId:a}=t,c=n.getRenderById(a);if(c==null)return!1;const{scene:l}=c,d=l.getTransformerByCreate(),A=c.with(B.DocSkeletonManagerService),u=c.with(exports.DocSelectionRenderService),h=A==null?void 0:A.getSkeleton(),g=A==null?void 0:A.getViewModel();return g==null||h==null?!1:(r.replaceDocRanges([]),d.clearSelectedObjects(),u.setSegment(""),u.setSegmentPage(-1),g.setEditArea(M.DocumentEditArea.BODY),h.calculate(),(m=c.mainComponent)==null||m.makeDirty(!0),queueMicrotask(()=>{const p=s.getUnit(a),f=p==null?void 0:p.getSnapshot();if(f==null)return;const S=xi(f);r.replaceDocRanges([{startOffset:S,endOffset:S}])}),e.executeCommand(fo.id,{value:"close"}),!0)}},st="UI_PLUGIN_DOCS",vo=`${st}_COLOR_PICKER_COMPONENT`,Mi=`${st}_FONT_FAMILY_COMPONENT`,Di=`${st}_FONT_FAMILY_ITEM_COMPONENT`,Bi=`${st}_FONT_SIZE_COMPONENT`,_i=o=>{const{value:t,onChange:e,options:n}=o;return Q.jsx("div",{className:"univer-grid univer-grid-cols-3 univer-gap-2 univer-p-1.5",children:n.map(r=>Q.jsx("a",{className:te.clsx(`
30
30
  univer-block univer-h-20 univer-w-[72px] univer-cursor-pointer univer-overflow-hidden
31
31
  univer-rounded univer-border univer-border-solid univer-border-gray-200 univer-transition-all
32
32
  hover:univer-border-primary-500
33
- `,{"univer-border-primary-500":t===r.value}),onClick:()=>{e(r.value)},children:Q.jsx("img",{className:"univer-size-full",src:r.img,draggable:!1})},r.value))})},Ia=[{value:i.PresetListType.ORDER_LIST,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_1,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_2,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_3,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_4,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_5,img:"data:image/jpeg;base64,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"}],va=o=>Q.jsx(_i,{...o,options:Ia}),Ea=[{value:i.PresetListType.BULLET_LIST,img:"data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEA2ADYAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/CABEIAPQA2AMBEQACEQEDEQH/xAA1AAEAAQUBAQEAAAAAAAAAAAAACAYHCQoLBQEEAQEAAwEBAQAAAAAAAAAAAAAAAgMEBQEG/9oADAMBAAIQAxAAAADf4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqsdDPqc9DNtjc/TtT8/QAAAAAAAAAAAOK79Ryrce+XH897UXy/VAiSAAAAAAAVcSIAAOYl3efgD2U5/cd3Ts4XQAosAAAAAAA/aVOAAeUY+bq8gtVnreAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDeun4ZAaZzkqmAAAAAAAAAABi10VyprlKGuWA/XTnwyXCmCxQAAAABU5fUAAAEVrIwCthloz2YMNdOwbjvHmFCAAAAAHqFdAAAAEMLYQithmby3eiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAClvfNZDfQMkdE8uua0AAAAAAAAAACyM48YT6bljcG5unfj5G0U+WdAAKhLwgAAAAAAsjOPGE+m5Y3Bubp34+RtHilsQAD2i5wAAAAAAPD9YYdNQmDXKfNMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIY2w199lOwVjumZVMAAAAAAAAAAAchX6PmQAuhP6mfXr+c6YFlwAAAAAAD2i5wABxwfpeXFSyMra5djz5rqAR9AAAAAAAKhLwgAGKnRXrRbs+y3h0ZWM9gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//xAAnEAABBAIBAwMFAQAAAAAAAAAGAAUIFwcJBAEQFgMKYBogMDhAFf/aAAgBAQABCAD4pu19wryoQHzpFCI3TfZtz6FfpGPTSb7hn15vHrPFGXf9GYsiFmXstZOyqeLDuQyzEeW8XZVAu/khEvJCJeSES8kIl5IRLyQiXkhEvJCJeSES8kIl5IRLyQiXkhEvJCJeSESBXt55hU18fl/bvp1TZQhBKPJObQ9aFNU2TJvyixzms1714HqvA9V4HqvA9V4HqvA9V4HqvA9V4HqvA9V4HqvA9V4HqvA9V4HpuDRtq5no8/gfa+MTITs7mOkvXUJq/wCpX6pp1YWBiFmdvHhj5aX7LZby9yqe4W1Eunre4XwP6XJyDzIHz3xLPbGxEVg38+67OJfHTVnMjKYFCuO4TFCKWBY/ACyyy8CN2/8AiEZgHYyceY1Dblz+BYZgrDMFYZgrDMFYZgrDMFYZgrDMFYZgrDMFYZgg0yJHUkbeBz/wThjGzzLiPIGMLzqr2ENGRAplhNKjJ2VcZ4VCnnI+XoWvjtsz2Ov+zBv7PLTx3xt5LXy6oHVVA6qoHVVA6qoHVVA6qoHVVA6qoHVVA6qoHUzY+ZmNy4zpxPwy515w2nS0t7dKAH9vvrKFSRnJilnZ2geam1iYPlxyXNuPwkxPHn6uXW8vq5dby1vboYubQzbJIHgH+eTP63yC7+z8/ZCYfcqduQxsPPdOJa5ErXIla5ErXIla5EhXILy+P3Aa+X+aTP63yC7+z8/ZCYfchZ/95n5jSqhVQqoVUKqFD2OP8F44bt+cmHGUxGyARI/pyNMy+nI0zKH2sCDMCCQxLom/H5qbAIp6/cf8PIUnunu9IZeV+lwesLZ/xS2A4+5GQ4w/0bPJqGM9ppZoz2RLWLNI0gZNLCmeRrvbyt5W8reVvK3lbyt5W8reVvK3lbyt5W8h7I/+88cNp+6cEYS+GssM7RuM1B6LphM6WGDI2BneqCJVQRKqCJVQRKqCJVQRKqCJVQRKqCJVQRKqCJVQRKqCJVQRKqCJCuPnljfuA6cv7dlun6KOztga+Rlrr7PDKPlfq8bprR0/RT1iMDvyMT/Jv//EADsQAAEEAQIDBgMDCwUBAAAAAAQCAwUGAQAHEhOlCBEUlNTVldPlEBUjFyAhIiQwM0BXYLYJFpeo19j/2gAIAQEACT8A/tSEq9w7QsKGA/uduPbGlTVL2jIlBg5OPqsXXhnx0Wy+Pw5TR8qqRNYgKiguOELCsUuRKRlf7al++8misFpjs1bbDNUyrDqneQ7S80bNTeF/WyjIz0M43lrhRnGcJT3QlUpXaEmAH/yZbk1RtcJS94DYoMgyQrUvXjCiW6luG5GiOSkdiKNcrVvdakwYuLq0ixDQs7/MEkmXbcncC4Xu2klvqJJdsdrsEhOTOXX14wpxSTzn0YzwpxhKcYShCcYTjT5I14203Dpd+p5AbSnymrPULHG2CBWOwj9Yh3EpHi8A+O/n57mu7PH3fmT818UO+fqfmvih3z9T818UO+fqfmvih3z9T818UO+fqfmvih3z9T818UO+fqfmvih3z9T818UO+fqfmvih3z9T818UO+fqfmvih3z9T818UO+fqfmvih3z9T818UO+fqXlCh3PHcxgg8t9lfBHGLRxtOuqQrhWlK08Sc8KkpVjuzjGfzqdKy/ZM30u85fqXdYSKcdr221hucs7MTW01qWC24PV1w03JEi0FySUwLZqr93NxxZs1FWMON1S5aL7JOx1yib1dbpMx5AkDuRY6jIplIHaqpvkoabszspPx4jV8ci1ujVurIkWZE0Calq6JI/bEdQlPW6iOoSnrdRHUJT1uojqEp63UR1CU9bqI6hKet1EdQlPW6iOoSnrdRHUJT1uojqEp63UR1CU9bqI6hKet1EdQlPW6iOoSnrdRHUJT1uo3kFsczlO+MPd4Oa0tlz8N4pxpXE04tP6yM93f347lYxnH5sPFWGvzYJMZMwU5HiS0PLxpjSmC4+TjD2SAjwSmVrZJEKYdYfaUpt1tSFZxnsI9mf77dKyaprG19fxXcEZdS9xNU3A2KeyjmJxnDDME2xjHEnDeEqUnMLE1yAiBkBxUHAxocRDxgjec5QLHxkeyOEEMjKs5QwMw00nOc9ycd+f7u2M223Iqm1tiNo26Hbf7Rs3MwnZngbuCkZyQrm3ETU1/wC8N1ioptx1g2XrzZoYxbkfIJhZCqSMTYJd7sCdtetRrTkhYNlqiBuJsnudIhDcRZEdtjapMVup4lnWGlCCP3FcrxLdaQzCyBK8ZTEWnbzcbbOzEUDfbYjccD7m3P2V3DBcKYKrVtis8OViluAHOQM4whsaVYENGIHjJ6JnoKI/lzDI22C7cRNGiJWOVluRhlbwX2o7PmTccQlaHAz4WPvZcoEewtJMeUI0aNnBA7eowOMgdt9tazEkrDaU199WYmPak7lajON15a5O22w2ZskmvLq0eNk3ks4bHS00jWGoxv8A1FuzZ2g9qt8IEdxxsGasPZmqQW6NN3GLBbThh20fc8XE0keTeypbUDHnjMYZcPPUd9j3ILY8HyneW07wc08Vlz8N5DjSuJpxaf1kZ7u/vx3KxjOJfp8X6LUv0+L9FqX6fF+i1L9Pi/Ral+nxfotS/T4v0Wpfp8X6LUv0+L9FqX6fF+i1L9Pi/Ral+nxfotSXPEf8ZzWvBgNcfKAKeb/EZFbdTwutoV+qvHf3d2e9Oc4z+4KFjk7w7bTlahZg5t54Gv3NlLUzQbMYOP8AtBItYvEXXrAQKz3OlMxqx21JU5hWJFjZ/wD1COzRFR2026+0t8IGgpnclNPDDiK/uvtoQW60JfYO9V9MPPlvV7LjqJA8mRDj81SRrkzK3+n7Y0GvMeIm7je7FFVeuRrecZ5aSZaYKEDS+QrHKEFw6okx/KRxWnn1obVX5+D7HvZk2vtHZv7FMtY4uRgTd6rjbJQlnebfeKipPOSGKq2EmRokS+oYFUsE9DILZCsdatMOF9i32xyuTzFjqbQ9jkPtEI4FOtvIx3rZThXE2rvTlWMd2c4Vg2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7do2a8wD7domUcIF53LQQ8ItnPPYdHXxpaCZXnuQ8rKeFxPcrCc578YynP7nYmpbkSEIwseuXLCpSrbi1planHcDwW4VQPgrgDHJKXg5cH98OQBhrbL8hFGZbTjW1l+3uIri3F12G343j3E3LqUPh1ttrLLVQkptiuSIuG20J8HORsqIrhQpxla2WFNRcdBwcMCLGRENDgjRkVFRoLKBwo+NjgmmBAQRB222BRBWWmB2UIaabQhKU4/u5g4mHpNWsNulRoxth6SIja3ElzJzEeyUSEK6c6KE62I2SYIw4+ptLxLDeVOo2T7bv/ABvsP/8ASetk+27/AMb7D/8A0nqhb+VCY2tq0TbrATvBV9vICNMjZiWVDCsQ71L3T3AKIObKRlx9s0OPYSx3KbJdc/Cx/L/0R3X/AMDnvt/ojRf88e+1DLhAvheWghLi2c88wcdfGlpxlee5Dysp4XE9ysJznvxjKchQvlzvcdBQvlzvcdBQvlzvcdBQvlzvcdBQvlzvcdDRjY5XiuYsdktD2OQGQQjgU6a8jHetlOFcTau9OVYx3ZzhWP339Ed1/wDA577f6I0X/PHvtI8J4vw/7Ryefy+QUwT/AAuazxcXJ4P4ieHi4v093Dmw9J+p6sPSfqerD0n6nqw9J+p6sPSfqepnxfhPEfs/3dyOZzxXxv4vjnuHh53H/DVxcPD+jv4sfvg/vGvWqDlq5PR/iCw/Hws4ARGSgfiwHxThfFAlPseIDJHLY4+YO+y8lDiexx/2F7VP/uOuxx/2F7VP/uOtj/yUWG/QYFctsh+Uvd+9fe0LGHqkwg/CblX+4ggcg5WX/ERgwZbnfy3n3Ge5v+4Nz4+mDTTpAtQqYA70/uBejBFCoNHp9OjuZKyrUdk0PMvLLQLBQiSxFTMqBgsbL3Zl7TGKVkrDT1lw5tfmxNic1SclNVHN0wA6vDXC7gZVwZznOVN83GU4UrdGOuw0P4Fq4VI0ciA3BoJ8gh9QoFzp0mlmVivEuCHMx0uwg2tzqwDnK9Ny4wrr6f5iYKOqxVqlartBCrKU/HVLZ+syRkfRYaMZSrIzCy4tCbBPviIaalbTNTcxlCVnqTjU3IR1WGt8JV94YUVS3Bbfs3ZJcAG/wJoHGlg0lqGy5N1xZCXExdriYKYaQp4BCVfbXurfTNV7q30zVe6t9M1XurfTNV7q30zVe6t9M1XurfTNV7q30zVe6t9M1XurfTNV7q30zVe6t9M1XurfTNV7q30zVe6t9M1DeE8X4j9o+8efy+QK+T/C8CzxcXJ4P4ieHi4v093Dn82NkAS9stw7DEQBh4mQ/wDc1FfPeOoNyAR3cCoy3U8mGsAOW8/htH+GeS0Sw+w1qNKPM3Nv0JFz5Izb6mq9RRCkSV+tkg4P+IPHVenhzM0U4hSXVpDSMLxmPjtOfabC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0bC+YO9u0TGODi+K5iB3i1vZ54ZA6OBLoTKM9y3k5VxOJ7k4VnHfnGE5/NAmKLvFU4oiJo2+dA8CNcYiOceWY1XrICeO/FXintyC1lpgplts6NUVKKq09WSpmULK7cdBzR8FZwzN52UsWLW4FzU9y3avjcDMQ0VlnizltNveZw7hOOblKs5SDL3veG2x6Yu675X1IT9ylYhBfjUVqvBAstRNLqmCUsPkREK14uafCjiLNLTr8VFOA/3N//EADoRAAEDAAYFCQYGAwAAAAAAAAECAxEABCExQVESQGFxkRATFBUiMmBysQVCUoGh0jNTgpKiwSMkQ//aAAgBAgEBPwDwpVanzo5xyQg91IsKts4J+p2C/odWiOaHFU8Zn60rVS5oFxskoHeSbSnaDinDMYk2kawlISlKU3JAA3AQORQCkqSblJIM5EQdZqlYS62lBMOIABBNqgBGkM5xyOyOSt1hLSFIBlxQgAXpB945WXZnZOsgkGQYIuIsIp0l+I55yPMZ43/WhJJkkknE2nxcGG20hVZWpJUJS0gAuEZqJsTOR4zYP9JfZ/zNHBZ0VJ/UBbG6N4o6yppQBhSVCULTalacwfUYboJ1eqoC6w0k3aRO/RBVHzijqy44tZvUoncMB8hA5EnTqbgP/FaFJOQcOiRum2M41hpzmnEOfCoEjMXEfMSKVhkgl1vtMrOklQtCZvSrIg2W+s0SlSyEpBUTcAJPAUdhhgMSC4tQW6BB0AB2UTnicrcCJ1ht51r8NZTN4vSd6TI+cTQ1x8ggKCZv0EpSeMTwNL7T4vAkgC8kDiYp1c/8bX7l/ZTq5/42v3L+yj9Vcq4SVlBCiQNEqNwm2Up1hHfR50+o5faXca859NYR30edPqOX2l3GvOfTWASCCLwZG8U6bWvzf4N/ZTpta/N/g39lHX3XgA4vSAMjspEH9IHiBplx5Wi2mYvNwG8+gvOAp1a7HfbnLtRxj+qOsuMq0XExkb0q3H+rxiBrLDQZaSgC2JUc1G8n0GQAHI+0HmloIEwSk5KAsPGw5iRrLTgdbQse8kE7DiN4MjkdcDTa1n3QY2nADaTGssVlxgnRgpN6DcdoyO3iDFOskx+EZy0xHHRn6UfrLj57ViRcgXDacSdpuwjxP//EADYRAAECAQYLBgcBAAAAAAAAAAECEQMAITFBUZEQEhMyQGFxgaGx8BQiYHLB0QQjQ1Ki0uGC/9oACAEDAQE/APCkaPiHFTOqsmgatZ5cstEd8c8GuZpQo+OcVTBVRFB9jwOqvSCXJJpJJO/ACQQRSCCNo0mNDKFEgd1RcGx6jZq1b8EGGVqBI7oLk2tULddg3aVkobviJumuo4eLzEUokQgCBMVqzQdVvVVPz0z9xYsnB3FmveSFhYcTETKSaQbD1xcaRFJTDURSzXkD1khISlKRUONZ3mfARixkkfUSoH/Id+Q0hacdKk2jjUdxlDW4xFTLTMQa2oItcWcmkSAHJAFpkj5kTKN3EgpQaHNZ2Uj+g6SpCF5yQddd4nkIEMTsT5iSLvfxgSwJsBN0u0w7F3D9pdph2LuH7ShxUxCQkKDB5wPQnSF5qvKeRw/DZyvL6jSF5qvKeRw/DZyvL6jSCHBBoM0shC+38le8shC+38le8kw0IJKQxM1JPMnxAtaUB1FrBWdgl2lL5qmtme7+yQtKw6S9orG0dCzSYiytZUdg1Crq3BDWULCr9YrHVekrSUKKTUeFR3ifAhJUoJFZ4VncJ9JiQkxKZiKCKdmsdBnl2UvnhrWnuf1lDhJh0Tk0k07NQ6Pif//Z"},{value:i.PresetListType.BULLET_LIST_1,img:"data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEA2ADYAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/CABEIAPQA2AMBEQACEQEDEQH/xAA0AAEAAgMBAQEAAAAAAAAAAAAABwoGCAkFCwQBAQADAQEBAAAAAAAAAAAAAAACBAUDAQb/2gAMAwEAAhADEAAAAL/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPQAAAAAAAAAAAANbpx+Wlv5/1QMDQn6EgAAAAAAAAAANY+kfly72fd/wAm3SZ1an1IcHQnyEhqSAAAAAAAZcbEAAHAO3xoza1O+Bk3e6tTqBhYAAAAAAB+0ycAAHHqzy7C1uoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGsXSPAG3xsg0u8tR9AAAAAAAAAAAArLXq/Am5xsL0+9kij3GMEFAAAAAGTk6gAAAHy0N/P6W8J3e8q3sPCQ8wwQAAAAA9QzoAAAGvE46u9I9KeHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYt75WQv8AAdI+E+utbqAAAAAAAAAABCM4/GE+myxcGzbN+PIujHyHQADISYQAAAAAAQjOPxhPpssXBs2zfjyLo8UjEAA9ok4AAAAAAHh+uMNnkNwect+eMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMP8AfKeWlWuM5trJPAAAAAAAAAAAGH++UrNSrrBOO3vOV0HMt5J4ELgAAAAAAHtEnAAhSXlEDXp7C85QpON7jJuSxH0a+gAAAAAAGQkwgAEMy8ola1O+Lk3JWj6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/EACwQAAEEAQIFAgYDAQAAAAAAAAYABwgXBQQJAgMKEBYaQAEVIDA4YBgZOVD/2gAIAQEAAQgA/wC18Mti+LKczB8PuZWPSbMgwb0uGz2H3XJ14idfNnvwxjeAse9iWhcxyfbzLfE9jZF96HybAW3bZ04SdPMn5yP4Lxn/ANrFrt4KeXPnl8J98UWncNH6juz7yOJ28kIl5IRLyQiXkhEvJCJeSES8kIl5IRLyQiXkhEvJCJeSES8kIl5IRLyQiQLm8zrCrF6fV/TI/axhdEx4nx3bG+4d5OeHHPDh3AOCNu1vDuQb3M3uyOB3rwPVeB6rwPVeB6rwPVeB6rwPVeB6rwPVeB6rwPVeB6rwPVeB6rwPWODRvFazk6/QfViNjmBeGnpq59aP9tmQwWWkvHBz2lE4I7u0429YrjPdw1kX4ZmSTd4Z2WF9zP6VuB2QpzZaV2pe7efhNpHIycloA7OnUBYXcTJ8THl3uxlkdZihvJa/QWGYKwzBWGYKwzBWGYKwzBWGYKwzBWGYKwzBWGYINMiTKkmN0Gv+zvdTVJNyvcWJ8e0W3B0sjzO58cE6M+40RPjrDxutG1UbO2ZxOnzmN1OL1dUDqqgdVUDqqgdVUDqqgdVUDqqgdVUDqqgdVUDqwzfYbB5LTZTSfYla17lvdH5y2caeAm05DDbnH9NymK/cDkuxrfhJieZn1cu28vVy7by23t6GLm6GbOSBsD7eTP43yC79H5+SEw+5VltRg8Dr8ppLXIla5ErXIla5ErXIkKuDmc5ntBi9X96TP43yC79H5+SEw+5Dh/n2H1mJVQqoVUKqFVCh5uPkOY0eW++TDmFMRsgESP05GzMvTkbMyh9tgQZgQSGJdE39fcFwQhqAgqcpysN1Yodqp76kfygcYijhig4dgnt3BcEIagIKnKcpyOpWjlJ2T7jxokL6ZnJ/yr8oTQdSrF2N8oAGLLIhxiKOGKDh2CdreVvK3lbyt5W8reVvK3lbyt5W8reVvK3kPOP8+zGjxP0yLjy0crWXPo/vpzel6dgHmcVj7s/33QIsz+uZYHpcnEOpojeLb9i2Oa2NbRATFMr2qgiVUESqgiVUESqgiVUESqgiVUESqgiVUESqgiVUESqgiVUESqgiQq32Zwee0GU1f0yFYBqpSsu4LAPbhulVkRxz31LQZljWRbCNzRgTGMx+zf/EAEYQAAEDAwEEBgYECwcFAAAAAAQDBQYBAgcAERITpQgUFZTU1RAWF5XT5QkjM0AYGSAhIiQmMFdgtiUnN5eo19g0NUVGUP/aAAgBAQAJPwD/AO05N9z2i3ouyrPQwerok1kkLhjuSjfRTrdjeuWKUKiZcjQdUgZdCxS5VFS237zi47pAZjxxjoyaxbBcbdgBJTLlOOqGEraKot2je1IXjObiQi1iGvj4MwujLEm55lCje0k5Vdi+kKW7dnubYUgbWDucHqbbS7CBEGTKsRsxdYjZY3ixVBVI4E5JGTBuaM5RSk1uLH3AuSch4/aJlJsJzE9vKlsHKNpamSIbYIrQjqd6lyJYVXIJqfBAjwQpQxxySpubA3/d8MybpATvG8LPkUdxTElEE3aRloXpJXrqUvUoaszsI6q0hkAzEK6yQlja3BCOs7q8KBhLZWcXjOzw42AvDORYYpj9/wAfqGWX2YUVhaBdELMYWIUTEbI+Isme2npoSkB0SmyVskr0Asi/hm+wP23/AIBnaMV/x0/672jep/A/xF/8n1vqnbf/ALT7J/b9/ZOsnnC5sFOuZEIlRJwpjQXGlHDi34Kug9xtLbsZ3W04JDOoT22q97Zpc9UyBS2UWYglWBJvkWENEnkmIZosKvJIQ5HWXVUbjrxbqX0QKssTdWtJ0EaJEg0ngoSiPxuRpujA2+h/eveh3x9P7170O+Pp/eveh3x9P7170O+Pp/eveh3x9P7170O+Pp/eveh3x9P7170O+Pp/eveh3x9P7170O+Pp/eveh3x9P7170O+Pp/eveh3x9P7170O+Pp/eveh3x9O7oUOp17iIEHlro37jcZfZvpKq3WXbt9tt9u9bXduttupsrSlfyui1MM5Zix3CHHJMX6LsDTZboKdmUQxQs7L7BElw98aTJ2Kpvjom3WPQ7GqA+TqJQV7yJc02UygTfl68mjNZDbaH3YsuxZcf1i3BtsModVO7GtydaUoDQqr7V9r670e/X79ptdFWUYK6QOQYG0ZDknRqnNzMpDYhmpwJtOty48RAUPduyHRKztNuvcuyaVLObptKIHHMuIOSrf6WjmDp43TRzB08bpo5g6eN00cwdPG6aOYOnjdNHMHTxumjmDp43TRzB08bpo5g6eN00cwdPG6aOYOnjdNHMHTxumjmDp43TRzB08bpo5g6eN028AtDicJXrh6u5xUr0VPq1ilErt5JS+39KyuzbtpsupStPysdW0mStqcjAxPVFu9jrRmKriqaXmoGK9U2WS5alUSRG2q3qw2SehM3EaKStURzb/5tnEhxdkZ3YlXTE2U4k+O0Zk2Nsrx+tHjH8wan9gXEe29JvkQoaD8m2FILu0XMfGFW+ojqSnfg1xzHiPHuRZbhbN/ST6P7CGZlHow5Lx1IVI1MY90ruj7H0RzVgW1O5vlxGSsRtPYgkPdGmi0YdJQ4VA1kyH5Yxy/8SxtlkJehXlsqWhanUxrO6vfUhpfG6qqaTswuyAL00kXdWcgBSKVSp95iDvPejt9IdBlRsnYnhjwwNkoYuk7gj1ebwssx9rfTAgbmWZY3lQrLNuzkrVDJM3iPb841MJZhDcU9KboFdKM9dY+SuuPFsYPnR/zZdwFraMudOj2bK0ILIEClFVuHKGEFokLQecvJ62Pj+A0Kh4RlsB6RaLAQ4ky3GMakszwbJ6NiVVTHBxIEReH3DKhaVqtwaE4LdYeqsIoHTIiT25skeN9C3ALQ6nwleGkrucU8VFT6taxRK7eSUvt/Ssrs27abLqUrR35e1+C078va/Bad+XtfgtO/L2vwWnfl7X4LTvy9r8Fp35e1+C078va/Bad+XtfgtO/L2vwWnfl7X4LTlxxF+ucVLqYCW/wgClk/rERU1bd1VOy79G+m3ZsrttrWlf3KL5P8a4uOvwJ0do3EAT5EVMEGR0JskcvjrOzolEvR2SZlc5OjOQEDVyOhw8NbiUlFWmylH5xwNjxbqjkJhKKkN5maJKLW9Je0aWO11jhH8Yglj1pRYSicimNtty4JrXFHBOwqzE0SxPDB+AoWJHQa9qSA5BKqNrxLZIaoXIpc+XJ1usueJG6Obhwq0QsItQtsSt9F66Y5XB4l49ydi1OAukRZuXKprWU23o20u3k7tttbqU2VrS6hr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7Rr13gHy7RLooQLxuHYQsJejXjoKj379qQSN9dli11bd1S3ZdS2tdtKVtr+4yKLiKV5SYFYGRlFVtKeXKCxOTKptc4fYs0ClNtx00tiJDyFD1FXllHZ5Ea3SBU++jRQA3HCDlktZuoDJM6T2gckyzI+KlRM5NN+uEHFijObs2LRyGAMDKvZYlceIeXZcYp/OCBxLPCYtIZc6jNiaCzkQ2xtpLeTkG9EokIVU5UUJVMRMkwRBRe5O1YlBOtytmE+m7/AJb4H/5J6wn03f8ALfA//JPUCz5EHjFsWaZdICcwRfHjA2mNrw7XMwqDOtC8p5AKIOTKsqoumaG3oWobLkyVVPqqfd/4I5X/AKDfvT/BGC/14t6bEVCBeq8Owi1S9GvHMHHv37UlEb67LFrq27qluy6lta7aUrbUJl7ud5joJl7ud5joJl7ud5joJl7ud5joJl7ud5joZsTHK61xLx0S7FqcAMgizcuVNWsptvRtpdvJ3bba3UpsrWl1P338Ecr/ANBv3p/gjBf68W9JHVOt9X/WODx+HwCkCfsuKjvb3B3PtLd3e3vz7N2sh5T8z1IeU/M9SHlPzPUh5T8z1IeU/M9PPW+qdY/V+zuBxOOKuN9r15bd3eNv/Z3b27u/m271P3wfaMelTG7Rx+b+sFh9fZXwAhsdA+tgLinC9aBKXQ6wGSOWhv8AEHXRWtsUt6HH+oXpU/7466HH+oXpU/746wf7KJDPmMCOS1w9peX512syth9zmEH1TJU/mIIHAOuqv1hsGDLU28NZdRHYn/MEqY4RAYQxnySWy2SHoNbGwMbWhcSc4uJxN1iSKCKVldlNtVFlK2IIWKLqJp3Y36j9HyXwYK3TmrW43ZgbXRJyVtpnNwaE1b+NDzuLagbjZFuvlAEXRHkApREpRLhjhI2WXwuXsrdI4tKY44iu7DIGF3FSNbHdocwlVhDm84RZIgYkdW9JVK+26277xKmOEQGEMZ8klstkh6DWxsDG1oXEnOLicTdYkigilZXZTbVRZStiCFii6iad2CmqUfRXZYY08Sujy9tLrfk5EtN4qSNnVzbRCLSw472km3OAEWZxkZ9DBWZjnbA6WzZtWihefof+Kr9T/b3+Fr64RLtP2PbnbPqRxOP2P64dj/Xe0vqns39Uv26/7t/d3rB7ZC/otMZMSWI41NWdtfPaSE5put6q2b02QhdUxxgxZ65pTzG3EAnJkiFcXLIzm5EzAxSBKyNll8Ll7K3SOLSmOOIruwyBhdxUjWx3aHMJVYQ5vOEWSIGJHVvSVSvtutu9Me5t8s1HubfLNR7m3yzUe5t8s1HubfLNR7m3yzUe5t8s1HubfLNR7m3yzUe5t8s1HubfLNR7m3yzUe5t8s1HubfLNR7m3yzTN1TrfWP1jtHj8PgCrk/ZdRR3t7g7n2lu7vb359m7X8iJizXF+SGfseSMZKig61tUCh3Fqd2k9CtpTS/x94DAfGB4DvsLa3hvDNQuoojSlcpssU+jsx+0lZXknSpdXqOMbwpi9vWKKLghbUetaMwZOACCJQkUmPBpAWVkSum6ahSxAEHJ6M8d/E2+oP4PnbHZ8j9et7tXj+2rsvrfbHqf2x/bXV+B7YOu/wB7nbfrz+xOsuM8p+jemTODlqN9JlhfY48ylzxs6LoFN2NmltCvWDdckuIZSCTXORm5THhcbUpOd2rnZfjm6JAQbF+NGJKPRGMt1VlEQQrV1zCySSiVFjHJ2d3Ms55fXlwXIcnp7cHB2ciSTzSF1PQay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0ay94O8u0S2KDi9a4lg6xd61eOGQPZuWqhI2V2XrW1u3lLdltLq021pS2v5MZSl2McmsSjBKGW8hcJe5Gi6BwDi2uAt6ZbY9MjqIC8sjoKpaQ3OoAZiVa3I0trMd3oQN/BnFekeOq0WS13gyzkqkhjEOL3cTq+aLuCo2uDko2qQhtbaUm9Kk3EN8HMigMJxhjRgHjcQjQFy6yQICKixK65JZSq5rk6ujgSY7vbu4LkOLw8HnOjiSQaYQtf/M3/xAA7EQACAQEEBgQLCAMAAAAAAAABAhEDABIhMQQTQVFSYRQiMkAFQmBxcoGRobHS8BAVIzRTkqLxUGKC/9oACAECAQE/AP8ANRt2ZT3qmoZ1DtcRmguRgPrDkJBOFjo9E0dTdFyMDtB454ue3I4YWdQrsqsHUEgMMj9ezcSMe8UkV6iozBFYwWOz+8hOEnHCx0akaWpuwgyO0Hini3nbllhbWv8Aldcuqv3dbj2N08Pu2XrmNujUdTqbvVzveNe454vdGERhaooR2UMHCkgMMj9esbiRj3hNIq1FTRzUCKTdNQzN3hJ3eycASFt0WjqdTd6ud7xr3HO/3RhEYWevVRG0cVA6AkBxMleEHh/oEr3rpVY0dTewyveNd4Z3e+MJjDyupPq3ViAyzDKRIZTgwIPLLnBtV0akzxRe6xUOtNz1aikSDTc+sXWMyDjFnRkYq6lWGwiPXzG4jA96o0zpVIU5AeieqxmDTeeqSNoYSOWA22TRa0BKzU61PZJYOvNHuz6iYOWAm2k6GaAvq4KTkxAcfAN6seUSe86LSFCgL0Bm67k4ROQJ2XR75tX8IKsrRF9uM9geba3uHns9R6jXnYseezzDIDkO8U2VHVmW8FM3cpIyBO6YnPDC1bSKtc9dursQYKPVtPMyfLECSAMyQPaYt93V+Ol+5/kt93V+Ol+5/ktX0Wpo4UuUIYkC6WOQnGVXvCdtPTX4j7fCXYpemfh3hO2npr8R9vhLsUvTPw7wCQQRmDI84t03Sv1f4U/kt03Sv1f4U/ktVr1awAqPeAMjqqIP/IHlAqliFUEsTAAzJsfBx1MhprZkeKf9BzGxsicMsQQQSCCCDBBwII2HvCqWIVQSxMADMmw0F6dNXRyNIU3oB6uXYHPmcDJBwxt0/wDDi4ekTc1cGL2U74nxc5wyxs2g1HpmozTXY3ipiI4Z4tx7I7OWNiCCQQQQYIOBBGw93R2psHQwymQfrMEYEbRbp6mkCqk1ibopwSL3FzXcMycOduh1ruvvnpM34wj0Z3xhw+LEY26eBSN5SK4N0oQQL3FyG8Zzhzs7s7F2Msxkn69gGwd4R2psHUwymQfrYdosfCCam8B+LlcxieKeHlns52dmdi7GWYyT9e7yn//EADYRAAECAwQFCgYDAQAAAAAAAAECEQAhMQMSUWETQEFxoRQiMlJgcoGRwfEEEKKx0fAz0uFC/9oACAEDAQE/AOyiiQkkC8QHA2n94swnGkXfvvzuDYNhl6wkkpBIukh2NR++7HWFEpSSBeIEhjAtFhd9+dwIwbD3rOLif5rhvs9yXSxbHjtu3o0q79958G6rYe9ZwkkpBIKSRMHZ++eLHWFWaEk2oSVEBwkUfFsfcAmNKu/feeGxuq2Hu7zhNmkkWhSUqIe6aA4tj7kBWtaJF++08Nj4tjwedZ9rlpvJIBY7CJMRQ+fCEWqwl1hwCQpSapIreTxcbM4BCg6SCMRrS1aFd5nTaCYHWTt8QZ5zMG1Q95AUhWTMe8mh3+M4sra+bpDKycg/jxlnrNsvSLlMDmpbbn4ng0I+HJmvmjAdL8DichCUpSGSABl6mp8dYUCUkAsTJ8Aatm1M4RZoRQT6xr/nh2xJYE4AnyjlNngvyH9o5TZ4L8h/aLO1TaEhIUGDzA9CdYX0Vd0/Y/P4bpK7vqNYX0Vd0/Y/P4bpK7vqNYIcEGhlGgsur9SvzGgsur9SvzCbNCCSkMTKpP3J7QEgAklgKmOU8+nMpnv/AMwzgEEOJg0OsEgAklgKmDbpUopUl7Myz73tMVE5Hk/O6Q0bXrzimG/OjTygW6UqCUpazEn2793E1M5QCCHEwaHV1JCgUkODWOTkLLlrMTKpUw350aeUaZD6O6NE13a+/d9X/TvKOTkrkXszO9J2w350aeUABIAAYCg1hSQoFJDg1jkyr7PzK3trYNjnTblAASAAGAoO0/8A/9k="},{value:i.PresetListType.BULLET_LIST_2,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_3,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_4,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_5,img:"data:image/jpeg;base64,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"}],Ca=o=>Q.jsx(_i,{...o,options:Ea}),Ni=`${st}_ORDER_LIST_TYPE_COMPONENT`,Pi=`${st}_BULLET_LIST_TYPE_COMPONENT`;var cn=(o=>(o[o.ABOVE=0]="ABOVE",o[o.BELLOW=1]="BELLOW",o))(cn||{}),Eo=(o=>(o[o.LEFT=0]="LEFT",o[o.RIGHT=1]="RIGHT",o))(Eo||{});function Ta(o,t){let e=i.DataStreamTreeTokenType.TABLE_START;const n=[],r=[];for(let s=0;s<o;s++){e+=i.DataStreamTreeTokenType.TABLE_ROW_START;for(let a=0;a<t;a++)e+=`${i.DataStreamTreeTokenType.TABLE_CELL_START}\r
34
- ${i.DataStreamTreeTokenType.TABLE_CELL_END}`,n.push({startIndex:e.length-3,paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),r.push({startIndex:e.length-2});e+=i.DataStreamTreeTokenType.TABLE_ROW_END}return e+=i.DataStreamTreeTokenType.TABLE_END,{dataStream:e,paragraphs:n,sectionBreaks:r}}function ln(){return{margin:{start:{v:10},end:{v:10},top:{v:5},bottom:{v:5}}}}function dn(o){const t=ln();return{tableCells:[...new Array(o).fill(null).map(()=>i.Tools.deepClone(t))],trHeight:{val:{v:30},hRule:i.TableRowHeightRule.AUTO}}}function An(o){return{size:{type:i.TableSizeType.SPECIFIED,width:{v:o}}}}function Co(o,t,e){const n=An(e/t),r=dn(t),s=[...new Array(o).fill(null).map(()=>i.Tools.deepClone(r))],a=[...new Array(t).fill(null).map(()=>i.Tools.deepClone(n))],c=i.generateRandomId(6);return{tableRows:s,tableColumns:a,tableId:c,align:i.TableAlignmentType.START,indent:{v:0},textWrap:i.TableTextWrapType.NONE,position:{positionH:{relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.PAGE,posOffset:0}},dist:{distB:0,distL:0,distR:0,distT:0},cellMargin:{start:{v:10},end:{v:10},top:{v:5},bottom:{v:5}},size:{type:i.TableSizeType.UNSPECIFIED,width:{v:e}}}}function yt(o,t){if(!o&&!t)return null;if(t&&t.length>0){let e=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;const r="";for(const s of t){const{startOffset:a,endOffset:c,segmentId:l}=s;a==null||c==null||l==null||(e=Math.min(e,a),n=Math.max(n,c))}if(Number.isFinite(e)&&Number.isFinite(n))return{startOffset:e,endOffset:n,segmentId:r}}else if(o){const{startOffset:e,endOffset:n,segmentId:r}=o;return e==null||n==null||r==null?null:{startOffset:e,endOffset:n,segmentId:r}}}function ya(o){let t=i.DataStreamTreeTokenType.TABLE_ROW_START;const e=[],n=[];for(let r=0;r<o;r++)t+=`${i.DataStreamTreeTokenType.TABLE_CELL_START}\r
35
- ${i.DataStreamTreeTokenType.TABLE_CELL_END}`,e.push({startIndex:t.length-3,paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),n.push({startIndex:t.length-2});return t+=i.DataStreamTreeTokenType.TABLE_ROW_END,{dataStream:t,paragraphs:e,sectionBreaks:n}}function Ra(){const o=`${i.DataStreamTreeTokenType.TABLE_CELL_START}\r
36
- ${i.DataStreamTreeTokenType.TABLE_CELL_END}`,t=[],e=[];return t.push({startIndex:1,paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),e.push({startIndex:2}),{dataStream:o,paragraphs:t,sectionBreaks:e}}function ba(o,t,e){var u,h,g;const{startOffset:n,endOffset:r,segmentId:s}=o,a=e.getSelfOrHeaderFooterViewModel(s),c=t===0?n:r;let l=null;const d=(g=(h=(u=e.getBody())==null?void 0:u.tables)==null?void 0:h.find(m=>c>=m.startIndex&&c<=m.endIndex))==null?void 0:g.tableId;let A=0;for(const m of a.getChildren()){for(const p of m.children){const{children:f}=p,S=f[0];if(S){for(const v of S.children)if(v.startIndex<=c&&c<=v.endIndex){A=S.children.indexOf(v),l=v;break}}if(l)break}if(l)break}return l==null||d==null?null:{offset:t===0?l.startIndex:l.endIndex+1,colCount:l.children.length,tableId:d,insertRowIndex:t===0?A:A+1}}function xa(o,t,e){var g,m,p;const{startOffset:n,endOffset:r,segmentId:s}=o,a=e.getSelfOrHeaderFooterViewModel(s),c=t===0?n:r,l=(p=(m=(g=e.getBody())==null?void 0:g.tables)==null?void 0:m.find(f=>c>=f.startIndex&&c<=f.endIndex))==null?void 0:p.tableId,d=[];let A=null,u=-1;for(const f of a.getChildren()){for(const S of f.children){const{children:v}=S,E=v[0];if(E){if(c<E.startIndex||c>E.endIndex)continue;A=E;for(const T of E.children){for(const R of T.children){const C=T.children.indexOf(R);if(c>=R.startIndex&&c<=R.endIndex){u=C;break}}if(u!==-1)break}}if(A)break}if(A)break}if(A==null||l==null||u===-1)return null;let h=0;for(const f of A.children){const S=f.children[u],v=t===0?S.startIndex:S.endIndex+1;d.push(v-h),h=v}return{offsets:d,tableId:l,columnIndex:u,rowCount:A.children.length}}function Oa(o,t,e){const n=[];let r=t[e].size.width.v,s=0;for(let a=0;a<t.length;a++)s+=t[a].size.width.v;s+=r;for(let a=0;a<t.length;a++)n.push(t[a].size.width.v/s*o);return r=r/s*o,{widths:n,newColWidth:r}}function Ui(o,t){var h,g,m;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(m=(g=(h=t.getBody())==null?void 0:h.tables)==null?void 0:g.find(p=>e>=p.startIndex&&n<=p.endIndex))==null?void 0:m.tableId,c=[];let l=-1,d=0,A=-1,u=!1;for(const p of s.getChildren()){for(const f of p.children){const{children:S}=f,v=S[0];if(v){if(e<v.startIndex||n>v.endIndex)continue;A=v.startIndex+3;for(const E of v.children){const T=v.children.indexOf(E),{startIndex:R,endIndex:C}=E;e>=R&&e<=C?(l=R,c.push(T),d+=C-R+1):(R>e&&C<n||n>=R&&n<=C)&&(c.push(T),d+=C-R+1),c.length===v.children.length&&(u=!0)}}if(c.length)break}if(c.length)break}return a==null||c.length===0?null:{tableId:a,rowIndexes:c,offset:l,len:d,cursor:A,selectWholeTable:u}}function Ma(o,t){var m,p,f;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(f=(p=(m=t.getBody())==null?void 0:m.tables)==null?void 0:p.find(S=>e>=S.startIndex&&n<=S.endIndex))==null?void 0:f.tableId,c=[];let l=null;const d=[];let A=-1,u=-1,h=-1;for(const S of s.getChildren()){for(const v of S.children){const{children:E}=v,T=E[0];if(T){if(e<T.startIndex||n>T.endIndex)continue;l=T;for(const R of T.children)for(const C of R.children){const x=R.children.indexOf(C);e>=C.startIndex&&e<=C.endIndex&&(u=x),n>=C.startIndex&&n<=C.endIndex&&(h=x)}}if(l)break}if(l)break}if(l==null||a==null)return null;for(let S=u;S<=h;S++)d.push(S);let g=0;for(const S of l.children){const v=S.children[u],E=S.children[h];c.push({retain:v.startIndex-g,delete:E.endIndex-v.startIndex+1}),g=E.endIndex+1}return A=l.startIndex+3,{offsets:c,tableId:a,columnIndexes:d,cursor:A,selectWholeTable:d.length===l.children[0].children.length,rowCount:l.children.length}}function wi(o,t){var A,u,h;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(h=(u=(A=t.getBody())==null?void 0:A.tables)==null?void 0:u.find(g=>e>=g.startIndex&&n<=g.endIndex))==null?void 0:h.tableId;let c=-1,l=0,d=-1;for(const g of s.getChildren()){for(const m of g.children){const{children:p}=m,f=p[0];if(f){if(e<f.startIndex||n>f.endIndex)continue;c=f.startIndex,l=f.endIndex-f.startIndex+1,d=f.startIndex}if(f)break}if(l>0)break}return a==null?null:{tableId:a,offset:c,len:l,cursor:d}}function Da(o,t){var m,p,f;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(f=(p=(m=t.getBody())==null?void 0:m.tables)==null?void 0:p.find(S=>e>=S.startIndex&&n<=S.endIndex))==null?void 0:f.tableId,c=[];let l=null,d=-1,A=-1,u=-1,h=-1;for(const S of s.getChildren()){for(const v of S.children){const{children:E}=v,T=E[0];if(T){if(e<T.startIndex||n>T.endIndex)continue;l=T;for(const R of T.children){const C=T.children.indexOf(R);for(const x of R.children){const B=R.children.indexOf(x);e>=x.startIndex&&e<=x.endIndex&&(A=C,u=B),n>=x.startIndex&&n<=x.endIndex&&(h=B)}}}if(l)break}if(l)break}if(l==null||a==null||A===-1)return null;const g=l.children[A];for(let S=u;S<=h;S++){const v=g.children[S];c.push({retain:v.startIndex+1,delete:v.endIndex-v.startIndex-3})}return d=l.startIndex+3,{offsets:c,tableId:a,cursor:d,rowCount:l.children.length}}var Yn=(o=>(o[o.NEXT=0]="NEXT",o[o.PREV=1]="PREV",o))(Yn||{});function gr(o,t,e){const{startOffset:n}=t;let r=null;for(const d of o.getChildren()){for(const A of d.children){const u=A.children[0];if(u&&n>u.startIndex&&n<u.endIndex){r=u;break}}if(r)break}if(r==null)return null;let s=-1,a=-1,c=null;for(const d of r.children){for(const A of d.children)if(n>A.startIndex&&n<A.endIndex){s=d.children.indexOf(A),a=r.children.indexOf(d),c=d;break}if(s>-1)break}if(s===-1||a===-1||c==null)return null;let l=null;if(e===0){if(l=c.children[s+1],!l){const d=r.children[a+1];d&&(l=d.children[0])}}else if(l=c.children[s-1],!l){const d=r.children[a-1];d&&(l=d.children[d.children.length-1])}if(l){const{startIndex:d,endIndex:A}=l;return{startOffset:d+1,endOffset:A-2}}}function Li(o,t){const e=[],{customBlocks:n=[]}=o;for(const r of t){const{startOffset:s,endOffset:a}=r;if(!(s==null||a==null))for(const c of n){const{startIndex:l}=c;l>=s&&l<a&&e.push(c.blockId)}}return e}function Ba(o){return o.some(t=>{const{startNodePosition:e}=t;return e?(e==null?void 0:e.path.indexOf("cells"))>-1:!1})}const _a=i.SHEET_EDITOR_UNITS,To={id:"doc.command.inner-paste",type:i.CommandType.COMMAND,handler:async(o,t)=>{var y,P,O,_,F,H;const{segmentId:e,textRanges:n,doc:r}=t,s=o.get(i.ICommandService),a=o.get(D.DocSelectionManagerService),c=o.get(i.IUniverInstanceService),l=a.getTextRanges(),d=a.getRectRanges(),{body:A,tableSource:u,drawings:h}=r;if(!Array.isArray(l)||l.length===0||A==null)return!1;const g=c.getCurrentUniverDocInstance(),m=g==null?void 0:g.getSelfOrHeaderFooterModel(e).getBody();if(g==null||m==null)return!1;const p=g.getUnitId(),f={id:D.RichTextEditingMutation.id,params:{unitId:p,actions:[],textRanges:n,segmentId:e}},S=new i.MemoryCursor;S.reset();const v=new i.TextX,E=i.JSONX.getInstance(),T=[],R=!!((y=A.tables)!=null&&y.length),C=!!((P=A.customBlocks)!=null&&P.length);if(R&&e||R&&Ba(l)||l.length&&(d!=null&&d.length))return!1;for(let U=0;U<l.length;U++){const L=l[U],{startOffset:W,endOffset:z,collapsed:j}=L,k=W-S.cursor,V=i.Tools.deepClone(A);if(R)for(const Y of V.tables){const{tableId:G}=Y,q=i.Tools.generateRandomId(6);Y.tableId=q;const ee=i.Tools.deepClone(u[G]);ee.tableId=q;const ge=E.insertOp(["tableSource",q],ee);T.push(ge)}if(C&&h){const Y=(_=(O=g.getSnapshot().drawingsOrder)==null?void 0:O.length)!=null?_:0;for(const G of V.customBlocks){const{blockId:q}=G,ee=i.Tools.generateRandomId(6);G.blockId=ee;const ge=i.Tools.deepClone(h[q]);ge.drawingId=ee;const xe=E.insertOp(["drawings",ee],ge),he=E.insertOp(["drawingsOrder",Y],ee);T.push(xe),T.push(he)}}const X=co((F=m.customRanges)!=null?F:[],z,_a.includes(p)),K=lo((H=m.customDecorations)!=null?H:[],z);if(X&&(V.customRanges=[{...X,startIndex:0,endIndex:A.dataStream.length-1}]),K.length&&(V.customDecorations=K.map(Y=>({...Y,startIndex:0,endIndex:A.dataStream.length-1}))),j)v.push({t:i.TextXActionType.RETAIN,len:k}),v.push({t:i.TextXActionType.INSERT,body:V,len:A.dataStream.length});else{const Y=i.BuildTextUtils.selection.delete([L],A,S.cursor,V,l.length===1);v.push(...Y)}S.reset(),S.moveCursor(z)}const x=J(g,e);return T.push(E.editOp(v.serialize(),x)),f.params.actions=T.reduce((U,L)=>i.JSONX.compose(U,L),null),!!s.syncExecuteCommand(f.id,f.params)}};function Na(o,t){const{startOffset:e,endOffset:n}=o,r=t.some(a=>a.startIndex===n),s=Math.max(e,r?n-1:n);return{...o,endOffset:s,collapsed:e===s}}function Pa(o,t,e){var m,p;const n=t.getSelfOrHeaderFooterModel(e).getBody(),r=new i.TextX,s=i.JSONX.getInstance(),a=[];if(n==null)return a;const{tables:c=[]}=n,l=new i.MemoryCursor;l.reset();for(let f=0;f<o.length;f++){const S=Na(o[f],c),{startOffset:v,endOffset:E,collapsed:T}=S,R=v-l.cursor;T?r.push({t:i.TextXActionType.RETAIN,len:R}):r.push(...i.BuildTextUtils.selection.delete([S],n,l.cursor,null,!1)),l.reset(),l.moveCursor(E)}const d=J(t,e);a.push(s.editOp(r.serialize(),d));const A=Li(n,o),u=(m=t.getDrawings())!=null?m:{},h=(p=t.getDrawingsOrder())!=null?p:[],g=A.sort((f,S)=>h.indexOf(f)>h.indexOf(S)?-1:h.indexOf(f)<h.indexOf(S)?1:0);if(g.length>0)for(const f of g){const S=u[f],v=h.indexOf(f);if(S==null||v<0)continue;const E=s.removeOp(["drawings",f],S),T=s.removeOp(["drawingsOrder",v],f);a.push(E),a.push(T)}return a.reduce((f,S)=>i.JSONX.compose(f,S),null)}function Ua(o,t,e,n){const r=[];if(t.getSelfOrHeaderFooterModel(n).getBody()==null)return r;const a=new i.TextX,c=i.JSONX.getInstance(),l=new i.MemoryCursor;l.reset();for(const A of o){const{startOffset:u,endOffset:h,spanEntireRow:g,spanEntireTable:m}=A;if(!(u==null||h==null))if(m){const p=wi({startOffset:u,endOffset:h,segmentId:n},e);if(p==null)continue;const{offset:f,len:S,tableId:v}=p;f-l.cursor>0&&a.push({t:i.TextXActionType.RETAIN,len:f-l.cursor}),a.push({t:i.TextXActionType.DELETE,len:S});const E=c.removeOp(["tableSource",v]);r.push(E),l.moveCursorTo(f+S)}else if(g){const p=Ui({startOffset:u,endOffset:h,segmentId:n},e);if(p==null)continue;const{offset:f,rowIndexes:S,len:v,tableId:E}=p;f-l.cursor>0&&a.push({t:i.TextXActionType.RETAIN,len:f-l.cursor}),a.push({t:i.TextXActionType.DELETE,len:v});for(const T of S.reverse()){const R=c.removeOp(["tableSource",E,"tableRows",T]);r.push(R)}l.moveCursorTo(f+v)}else{const p=Da({startOffset:u,endOffset:h,segmentId:n},e);if(p==null)continue;const{offsets:f}=p;for(const S of f){const{retain:v,delete:E}=S;v-l.cursor>0&&a.push({t:i.TextXActionType.RETAIN,len:v-l.cursor}),a.push({t:i.TextXActionType.DELETE,len:E}),l.moveCursorTo(v+E)}}}const d=J(t,n);return r.push(c.editOp(a.serialize(),d)),r.reduce((A,u)=>i.JSONX.compose(A,u),null)}function Qi(o,t,e,n,r){let s=[];if(Array.isArray(o)&&(o==null?void 0:o.length)!==0&&(s=Pa(o,e,r)),Array.isArray(t)&&(t==null?void 0:t.length)!==0){const a=Ua(t,e,n,r);s==null||s.length===0?s=a:s=i.JSONX.compose(s,i.JSONX.transform(a,s,"right"))}return s}const We={id:"doc.command.inner-cut",type:i.CommandType.COMMAND,handler:(o,t)=>{var p;const e=o.get(D.DocSelectionManagerService),n=o.get(i.ICommandService),r=o.get(i.IUniverInstanceService),{segmentId:s,textRanges:a,selections:c=e.getTextRanges(),rectRanges:l=e.getRectRanges()}=t;if((!Array.isArray(c)||c.length===0)&&(!Array.isArray(l)||l.length===0))return!1;const d=(p=r.getCurrentUniverDocInstance())==null?void 0:p.getUnitId();if(!d)return!1;const A=r.getUniverDocInstance(d);if(A==null)return!1;const u=ce(o,d);if(u==null)return!1;const h=u.getViewModel(),g={id:D.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:a}};return g.params.actions=Qi(c,l,A,h,s),!!n.syncExecuteCommand(g.id,g.params)}};var ne=(o=>(o[o.LEFT=0]="LEFT",o[o.RIGHT=1]="RIGHT",o))(ne||{});const Fi="doc.command.insert-text",yo={id:Fi,type:i.CommandType.COMMAND,handler:async(o,t)=>{var C;const e=o.get(i.ICommandService),{range:n,segmentId:r,body:s,unitId:a,cursorOffset:c}=t,l=o.get(D.DocSelectionManagerService),A=o.get(i.IUniverInstanceService).getUnit(a,i.UniverInstanceType.UNIVER_DOC);if(A==null)return!1;const u=l.getActiveTextRange(),h=A.getSelfOrHeaderFooterModel((C=u==null?void 0:u.segmentId)!=null?C:"").getBody();if(h==null)return!1;const{startOffset:g,collapsed:m}=n,p=c!=null?c:s.dataStream.length,f=[{startOffset:g+p,endOffset:g+p,style:u==null?void 0:u.style,collapsed:m}],S={id:D.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:f,debounce:!0}},v=new i.TextX,E=i.JSONX.getInstance();if(m)g>0&&v.push({t:i.TextXActionType.RETAIN,len:g}),v.push({t:i.TextXActionType.INSERT,body:s,len:s.dataStream.length});else{const x=i.BuildTextUtils.selection.delete([n],h,0,s);v.push(...x)}S.params.textRanges=[{startOffset:g+p,endOffset:g+p,collapsed:m}];const T=J(A,r);return S.params.actions=E.editOp(v.serialize(),T),!!e.syncExecuteCommand(S.id,S.params)}},et={id:"doc.command.delete-text",type:i.CommandType.COMMAND,handler:async(o,t)=>{var R;const e=o.get(i.ICommandService),n=o.get(i.IUniverInstanceService),{range:r,segmentId:s,unitId:a,direction:c,len:l=1}=t,d=n.getUnit(a,i.UniverInstanceType.UNIVER_DOC),A=d==null?void 0:d.getSelfOrHeaderFooterModel(s).getBody();if(d==null||A==null)return!1;const{startOffset:u}=r;let h=c===ne.LEFT?u-l:u,g=c===ne.LEFT?u-1:u+l-1;const m=(R=A.customRanges)==null?void 0:R.find(C=>C.startIndex<=h&&C.endIndex>=g);m!=null&&m.wholeEntity&&(h=m.startIndex,g=Math.max(g,m.endIndex));const p={id:D.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:[{startOffset:h,endOffset:h,collapsed:!0}],debounce:!0}},f=new i.TextX,S=i.JSONX.getInstance();f.push({t:i.TextXActionType.RETAIN,len:h-0}),f.push({t:i.TextXActionType.DELETE,len:g-h+1});const E=J(d,s);return p.params.actions=S.editOp(f.serialize(),E),!!e.syncExecuteCommand(p.id,p.params)}},Ro={id:"doc.command.update-text",type:i.CommandType.COMMAND,handler:async(o,t)=>{const{range:e,segmentId:n,updateBody:r,coverType:s,unitId:a,textRanges:c}=t,l=o.get(i.ICommandService),A=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(A==null)return!1;const u={id:D.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:c}},h=new i.TextX,g=i.JSONX.getInstance(),{startOffset:m,endOffset:p}=e;h.push({t:i.TextXActionType.RETAIN,len:m}),h.push({t:i.TextXActionType.RETAIN,body:r,len:p-m,coverType:s});const f=J(A,n);return u.params.actions=g.editOp(h.serialize(),f),!!l.syncExecuteCommand(u.id,u.params)}},un={id:"doc.command.delete-custom-block",type:i.CommandType.COMMAND,handler:async(o,t)=>{var O;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=e.getActiveTextRange(),a=n.getCurrentUniverDocInstance();if(s==null||a==null)return!1;const{direction:c,range:l,unitId:d,drawingId:A}=t,{startOffset:u,segmentId:h,style:g}=s,m=c===ne.LEFT?u-1:u,p=[{startOffset:m,endOffset:m,style:g}],f={id:D.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:p,prevTextRanges:[l]}},S=new i.TextX,v=i.JSONX.getInstance(),E=[];u>0&&S.push({t:i.TextXActionType.RETAIN,len:c===ne.LEFT?u-1:u}),S.push({t:i.TextXActionType.DELETE,len:1});const T=J(a,h);E.push(v.editOp(S.serialize(),T));const R=((O=a.getDrawings())!=null?O:{})[A],x=a.getDrawingsOrder().indexOf(A),B=v.removeOp(["drawings",A],R),y=v.removeOp(["drawingsOrder",x],A);return E.push(B),E.push(y),f.params.actions=E.reduce((_,F)=>i.JSONX.compose(_,F),null),!!r.syncExecuteCommand(f.id,f.params)}},gn={id:"doc.command.merge-two-paragraph",type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),{direction:s,range:a}=t,c=e.getActiveTextRange(),l=e.getTextRanges();if(c==null||l==null)return!1;const{segmentId:d,style:A}=c,u=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),h=u==null?void 0:u.getSelfOrHeaderFooterModel(d).getBody();if(u==null||h==null)return!1;const g=h.dataStream,m=c,p=u.getUnitId(),{startOffset:f,collapsed:S}=m;if(!S)return!1;const v=s===ne.LEFT?f:f+1;let E,T;for(const H of h.paragraphs){if(H.startIndex>=v){T=H;break}E=H}if(E==null||T==null)return!1;const R=s===ne.LEFT?f-1:f,C=[{startOffset:R,endOffset:R,style:A}],x={id:D.RichTextEditingMutation.id,params:{unitId:p,actions:[],textRanges:C,prevTextRanges:[a]}},B=new i.TextX,y=i.JSONX.getInstance();E.startIndex>0&&B.push({t:i.TextXActionType.RETAIN,len:E.startIndex}),B.push({t:i.TextXActionType.DELETE,len:1}),T.startIndex>E.startIndex+1&&B.push({t:i.TextXActionType.RETAIN,len:T.startIndex-E.startIndex-1});const P=Object.values(i.DataStreamTreeTokenType),O=g[E.startIndex-1];(O&&!P.includes(O)||O===" ")&&B.push({t:i.TextXActionType.RETAIN,len:1,coverType:i.UpdateDocsAttributeType.REPLACE,body:{dataStream:"",paragraphs:[{...i.Tools.deepClone(E),startIndex:0}]}});const _=J(u,d);return x.params.actions=y.editOp(B.serialize(),_),!!r.syncExecuteCommand(x.id,x.params)}},Hi={id:"doc.command.remove-horizontal-line",type:i.CommandType.COMMAND,handler:async o=>{var R;const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getActiveTextRange(),s=t.getTextRanges();if(r==null||s==null)return!1;const{segmentId:a,style:c}=r,l=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),d=l==null?void 0:l.getSelfOrHeaderFooterModel(a).getBody();if(l==null||d==null)return!1;const A=r,u=l.getUnitId(),{startOffset:h,collapsed:g}=A;if(!g)return!1;const m=(R=d.paragraphs)==null?void 0:R.find(C=>C.startIndex===h-1);if(m==null)return!1;const p=[{startOffset:h,endOffset:h,style:c}],f={id:D.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:p}},S=new i.TextX,v=i.JSONX.getInstance();m.startIndex>0&&S.push({t:i.TextXActionType.RETAIN,len:m.startIndex}),S.push({t:i.TextXActionType.RETAIN,len:1,coverType:i.UpdateDocsAttributeType.REPLACE,body:{dataStream:"",paragraphs:[{...i.Tools.deepClone({...m,paragraphStyle:{...m.paragraphStyle,borderBottom:void 0}}),startIndex:0}]}});const E=J(l,a);return f.params.actions=v.editOp(S.serialize(),E),!!n.syncExecuteCommand(f.id,f.params)}};function hn(o,t){let e=0;if(o==null||o.length===0){if(typeof t[0].startOffset=="number"){const n=t[0],{spanEntireRow:r,spanEntireTable:s}=n;s?e=n.startOffset-3:r?n.startRow>0?e=n.startOffset-6:e=n.startOffset:e=t[0].startOffset}}else if(o.length>0&&t.length>0){const n=o[0],r=t[0];if(n.startOffset!=null&&r.startOffset!=null){if(n.startOffset<r.startOffset)e=n.startOffset;else if(n.startOffset>=r.startOffset){const{spanEntireRow:s,spanEntireTable:a}=r;a?e=r.startOffset-3:s&&(e=r.startOffset-6)}}}return e}const Rt={id:"doc.command.delete-left",type:i.CommandType.COMMAND,handler:async o=>{var y,P,O,_,F,H;const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService);let r=!0;const s=e.getCurrentUniverDocInstance();if(s==null)return!1;const a=s.getUnitId(),c=ce(o,a),l=t.getActiveTextRange(),d=t.getRectRanges(),A=t.getTextRanges(),u=c==null?void 0:c.getSkeleton();if(u==null)return!1;if(d!=null&&d.length){const U=hn(A,d),L=d[0].segmentId,W=[{startOffset:U,endOffset:U}];return n.executeCommand(We.id,{segmentId:L,textRanges:W})}if(l==null||A==null)return!1;const{segmentId:h,style:g,segmentPage:m}=l,p=s.getSelfOrHeaderFooterModel(h).getBody();if(p==null)return!1;const f=l,{startOffset:S,collapsed:v}=f,E=u.findNodeByCharIndex(S,h,m),T=M.hasListGlyph(E),R=M.isIndentByGlyph(E,p);let C=S;const x=u.findNodeByCharIndex(S-1,h,m);if(M.isFirstGlyph(E)&&x!==E&&(T===!0||R===!0)&&v){const U=M.getParagraphByGlyph(E,p);if(U==null)return!1;const L=U==null?void 0:U.startIndex,W={startIndex:0},z=U.paragraphStyle;if(T===!0){const k=U.paragraphStyle;if(k){W.paragraphStyle=k;const{hanging:V}=k;V&&(W.paragraphStyle.indentStart=V,W.paragraphStyle.hanging=void 0)}}else if(R===!0){const k=U.bullet;k&&(W.bullet=k),z!=null&&(W.paragraphStyle={...z},delete W.paragraphStyle.hanging,delete W.paragraphStyle.indentStart)}const j=[{startOffset:C,endOffset:C,style:g}];r=await n.executeCommand(Ro.id,{unitId:s.getUnitId(),updateBody:{dataStream:"",paragraphs:[{...W}]},range:{startOffset:L,endOffset:L+1},textRanges:j,coverType:i.UpdateDocsAttributeType.REPLACE,segmentId:h})}else if(v===!0){if(x==null)return!0;if(x.content==="\r"){const U=(y=p.paragraphs)==null?void 0:y.find(L=>L.startIndex===S-1);(P=U==null?void 0:U.paragraphStyle)!=null&&P.borderBottom?r=await n.executeCommand(Hi.id):r=await n.executeCommand(gn.id,{direction:ne.LEFT,range:f})}else if(x.streamType==="\b"){const U=(_=s.getSnapshot().drawings)==null?void 0:_[(O=x.drawingId)!=null?O:""];if(U==null)return!0;const L=(H=(F=s.getBody())==null?void 0:F.customBlocks)==null?void 0:H.find(z=>z.blockId===x.drawingId);if(U.layoutType===i.PositionedObjectLayoutType.INLINE||(L==null?void 0:L.blockType)===i.BlockType.CUSTOM){const z=s.getUnitId();r=await n.executeCommand(un.id,{direction:ne.LEFT,range:l,unitId:z,drawingId:x.drawingId})}else{const z=u.findNodeByCharIndex(S-2);if(z==null)return!0;C-=x.count,C-=z.count;const j=[{startOffset:C,endOffset:C,style:g}];r=await n.executeCommand(et.id,{unitId:s.getUnitId(),range:{...l,startOffset:l.startOffset-1,endOffset:l.endOffset-1},segmentId:h,direction:ne.LEFT,len:z.count,textRanges:j})}}else C-=x.count,r=await n.executeCommand(et.id,{unitId:s.getUnitId(),range:f,segmentId:h,direction:ne.LEFT,len:x.count})}else{const U=ki(f,[f]);r=await n.executeCommand(We.id,{segmentId:h,textRanges:U,selections:[f]})}return r}},bo={id:"doc.command.delete-right",type:i.CommandType.COMMAND,handler:async o=>{var E,T;const t=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(!n)return!1;const r=ce(o,n.getUnitId()),s=o.get(i.ICommandService),a=t.getActiveTextRange(),c=t.getRectRanges(),l=t.getTextRanges(),d=r==null?void 0:r.getSkeleton();if(c!=null&&c.length){const R=hn(l,c),C=c[0].segmentId,x=[{startOffset:R,endOffset:R}];return s.executeCommand(We.id,{segmentId:C,textRanges:x})}if(a==null||d==null||l==null)return!1;const{segmentId:A,style:u,segmentPage:h}=a,g=n==null?void 0:n.getSelfOrHeaderFooterModel(A).getBody();if(!n||!g)return!1;const m=a,{startOffset:p,endOffset:f,collapsed:S}=m;if(p===g.dataStream.length-2&&S)return!0;let v=!1;if(S===!0){const R=d.findNodeByCharIndex(p,A,h),C=d.findNodeByCharIndex(p+1);if(R.streamType===i.DataStreamTreeTokenType.PARAGRAPH&&(C==null?void 0:C.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK)return!1;if(R.content==="\r")v=await s.executeCommand(gn.id,{direction:ne.RIGHT,range:a});else if(R.streamType==="\b"){const x=(T=n.getSnapshot().drawings)==null?void 0:T[(E=R.drawingId)!=null?E:""];if(x==null)return!0;if(x.layoutType===i.PositionedObjectLayoutType.INLINE){const y=n.getUnitId();v=await s.executeCommand(un.id,{direction:ne.RIGHT,range:a,unitId:y,drawingId:R.drawingId})}else{if(C==null)return!0;const y=[{startOffset:p+1,endOffset:p+1,style:u}];v=await s.executeCommand(et.id,{unitId:n.getUnitId(),range:{...a,startOffset:p+1,endOffset:f+1},segmentId:A,direction:ne.RIGHT,textRanges:y,len:C.count})}}else{const x=[{startOffset:p,endOffset:p,style:u}];v=await s.executeCommand(et.id,{unitId:n.getUnitId(),range:m,segmentId:A,direction:ne.RIGHT,textRanges:x,len:R.count})}}else{const R=ki(m,[m]);v=await s.executeCommand(We.id,{segmentId:A,textRanges:R,selections:[m]})}return v}};function ki(o,t){let e=o.endOffset;for(const r of t){const{startOffset:s,endOffset:a}=r;s==null||a==null||a<=o.endOffset&&(e-=a-s)}return[{startOffset:e,endOffset:e,style:o.style}]}const xo={id:"doc.command.delete-current-paragraph",type:i.CommandType.COMMAND,handler:async o=>{var u,h;const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=e.getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!r||!t.getActiveTextRange())return!1;const a=t.getActiveTextRange();if(!a||!a.collapsed||a.segmentId)return!1;const c=i.BuildTextUtils.range.getParagraphsInRange(a,(h=(u=r.getBody())==null?void 0:u.paragraphs)!=null?h:[])[0];if(!c)return!1;const l=i.BuildTextUtils.selection.delete([{startOffset:c.paragraphStart,endOffset:c.paragraphEnd+1,collapsed:!1}],r.getBody(),0,void 0,!0),d=J(r),A={unitId:r.getUnitId(),actions:i.JSONX.getInstance().editOp(l,d),textRanges:[{startOffset:c.paragraphStart,endOffset:c.paragraphStart,collapsed:!0}]};return n.syncExecuteCommand(D.RichTextEditingMutation.id,A)}},wa=10,La=6;function Qa(){return i.Tools.generateRandomId(La)}function Fa(o){const t=o.match(/data-copy-id="([^\s]+)"/);return t&&t[1]?t[1]:null}class Ha{constructor(){b(this,"_cache",new i.LRUMap(wa))}set(t,e){this._cache.set(t,e)}get(t){return this._cache.get(t)}clear(){this._cache.clear()}}const Nn=new Ha;function Oo(o){const t=o.style,e={},n=o.tagName.toLowerCase();switch(n){case"b":case"em":case"strong":{e.bl=i.BooleanNumber.TRUE;break}case"s":{e.st={s:i.BooleanNumber.TRUE};break}case"u":{e.ul={s:i.BooleanNumber.TRUE};break}case"i":{e.it=i.BooleanNumber.TRUE;break}case"sub":case"sup":{e.va=n==="sup"?i.BaselineOffset.SUPERSCRIPT:i.BaselineOffset.SUBSCRIPT;break}}for(let r=0;r<t.length;r++){const s=t[r],a=t.getPropertyValue(s);switch(s){case"font-family":{e.ff=a.replace(/^"/g,"").replace(/"$/g,"");break}case"font-size":{const c=Number.parseInt(a);Number.isNaN(c)||(a.endsWith("pt")?e.fs=c:a.endsWith("px")&&(e.fs=M.pixelToPt(c)));break}case"font-style":{a==="italic"&&(e.it=i.BooleanNumber.TRUE);break}case"font-weight":{(Number(a)>400||String(a)==="bold")&&(e.bl=i.BooleanNumber.TRUE);break}case"text-decoration":{/underline/.test(a)?e.ul={s:i.BooleanNumber.TRUE}:/overline/.test(a)?e.ol={s:i.BooleanNumber.TRUE}:/line-through/.test(a)&&(e.st={s:i.BooleanNumber.TRUE});break}case"color":{try{const c=new i.ColorKit(a);c.isValid&&(e.cl={rgb:c.toRgbString()})}catch{}break}case"background-color":{const c=new i.ColorKit(a);c.isValid&&(e.bg={rgb:c.toRgbString()});break}}}return e}function ka(o){const t=new DOMParser,e=`<x-univer id="univer-root">${o}</x-univer>`;return t.parseFromString(e,"text/html").querySelector("#univer-root")}function hr(o,t){const e=o.tagName.toLowerCase();return typeof t=="string"?e===t:Array.isArray(t)?t.some(n=>n===e):t(o)}const mr=660,rn=class rn{constructor(){b(this,"_tableCache",[]);b(this,"_styleCache",new Map);b(this,"_styleRules",[]);b(this,"_afterProcessRules",[])}static use(t){if(this._pluginList.includes(t))throw new Error(`Univer paste plugin ${t.name} already added`);this._pluginList.push(t)}convert(t,e={}){var c;const n=rn._pluginList.find(l=>l.checkPasteType(t)),r=ka(t),a={body:{dataStream:"",paragraphs:[],sectionBreaks:[],tables:[],textRuns:[],customBlocks:[]},tableSource:{},id:(c=e==null?void 0:e.unitId)!=null?c:""};return n&&(this._styleRules=[...n.stylesRules],this._afterProcessRules=[...n.afterProcessRules]),this._tableCache=[],this._styleCache.clear(),this._process(null,r.childNodes,a),this._styleCache.clear(),this._styleRules=[],this._afterProcessRules=[],a}_process(t,e,n){var s,a,c,l;const r=n.body;for(const d of e)if(d.nodeType===Node.TEXT_NODE){if(((s=d.nodeValue)==null?void 0:s.trim())==="")continue;const A=(a=d.nodeValue)==null?void 0:a.replace(/[\r\n]/g,"");let u;t&&this._styleCache.has(t)&&(u=this._styleCache.get(t)),r.dataStream+=A,u&&Object.getOwnPropertyNames(u).length&&r.textRuns.push({st:r.dataStream.length-A.length,ed:r.dataStream.length,ts:u})}else if(d.nodeName==="IMG"){const A=d,u=A.dataset.imageSourceType,h=u===ao.ImageSourceType.UUID?A.dataset.source:A.src;if(h&&u){const g=Number(A.dataset.width||100),m=Number(A.dataset.height||100),p=Number(A.dataset.docTransformWidth||g),f=Number(A.dataset.docTransformHeight||m),S=i.Tools.generateRandomId(6);(l=(c=n.body)==null?void 0:c.customBlocks)==null||l.push({startIndex:r.dataStream.length,blockId:S}),r.dataStream+="\b",n.drawings||(n.drawings={}),n.drawings[S]={drawingId:S,title:"",description:"",imageSourceType:u,source:h,transform:{width:g,height:m,left:0},docTransform:{size:{width:p,height:f},angle:0,positionH:{relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.PARAGRAPH,posOffset:0}},layoutType:i.PositionedObjectLayoutType.INLINE,drawingType:i.DrawingTypeEnum.DRAWING_IMAGE,unitId:n.id||"",subUnitId:n.id||""}}}else{if(i.skipParseTagNames.includes(d.nodeName.toLowerCase()))continue;if(d.nodeType===Node.ELEMENT_NODE){const A=d,u=this._processBeforeLink(A,n),h=t?this._styleCache.get(t):{},g=this._styleRules.find(({filter:S})=>hr(d,S)),m=g?g.getStyle(d):Oo(d);this._styleCache.set(d,{...h,...m});const{childNodes:p}=d;this._processBeforeTable(d,n),this._process(d,p,n),this._processAfterTable(d,n);const f=this._afterProcessRules.find(({filter:S})=>hr(d,S));f&&f.handler(n,d),this._processAfterLink(A,n,u)}}}_processBeforeTable(t,e){var s;const n=t.tagName.toUpperCase(),r=e.body;switch(n){case"TABLE":{r.dataStream[r.dataStream.length-1]!=="\r"&&(r.dataStream+="\r",r.paragraphs==null&&(r.paragraphs=[]),(s=r.paragraphs)==null||s.push({startIndex:r.dataStream.length-1}));const a=Co(0,0,mr);this._tableCache.push({table:a,startIndex:r.dataStream.length}),r.dataStream+=i.DataStreamTreeTokenType.TABLE_START;break}case"TR":{const a=dn(0);this._tableCache[this._tableCache.length-1].table.tableRows.push(a),r.dataStream+=i.DataStreamTreeTokenType.TABLE_ROW_START;break}case"TD":{const a=ln(),c=this._tableCache[this._tableCache.length-1].table;c.tableRows[c.tableRows.length-1].tableCells.push(a),r.dataStream+=i.DataStreamTreeTokenType.TABLE_CELL_START;break}}}_processAfterTable(t,e){var a,c;const n=t.tagName.toUpperCase(),r=e.body;e.tableSource==null&&(e.tableSource={}),r.tables==null&&(r.tables=[]),r.sectionBreaks==null&&(r.sectionBreaks=[]);const{tableSource:s}=e;switch(n){case"TABLE":{const l=this._tableCache.pop(),{startIndex:d,table:A}=l,u=A.tableRows[0].tableCells.length,h=An(mr/u),g=[...new Array(u).fill(null).map(()=>i.Tools.deepClone(h))];A.tableColumns=g,s[A.tableId]=A,r.dataStream+=i.DataStreamTreeTokenType.TABLE_END,r.tables.push({startIndex:d,endIndex:r.dataStream.length,tableId:A.tableId});break}case"TR":{r.dataStream+=i.DataStreamTreeTokenType.TABLE_ROW_END;break}case"TD":{r.dataStream[r.dataStream.length-1]!=="\r"&&((a=r.paragraphs)==null||a.push({startIndex:r.dataStream.length}),r.dataStream+="\r"),(c=r.sectionBreaks)==null||c.push({startIndex:r.dataStream.length}),r.dataStream+=`
37
- ${i.DataStreamTreeTokenType.TABLE_CELL_END}`;break}}}_processBeforeLink(t,e){return e.body.dataStream.length}_processAfterLink(t,e,n){var a,c;const r=e.body,s=t;s.tagName.toUpperCase()==="A"&&(r.customRanges=(a=r.customRanges)!=null?a:[],r.customRanges.push({startIndex:n,endIndex:r.dataStream.length-1,rangeId:(c=s.dataset.rangeid)!=null?c:i.generateRandomId(),rangeType:i.CustomRangeType.HYPERLINK,properties:{url:s.href}}))}};b(rn,"_pluginList",[]);let tt=rn;const Vi={name:"univer-doc-paste-plugin-lark",checkPasteType(o){return/lark-record-clipboard/i.test(o)},stylesRules:[{filter:["s"],getStyle(o){const t=Oo(o);return{st:{s:i.BooleanNumber.TRUE},...t}}}],afterProcessRules:[{filter(o){return o.tagName==="DIV"&&/ace-line/i.test(o.className)},handler(o){const t=o.body;t.paragraphs==null&&(t.paragraphs=[]),t.paragraphs.push({startIndex:t.dataStream.length}),t.dataStream+="\r"}}]};function ji(o){const t=o.style,e={};for(let n=0;n<t.length;n++){const r=t[n],s=t.getPropertyValue(r);switch(r){case"margin-top":{const a=Number.parseInt(s);e.spaceAbove={v:/pt/.test(s)?M.ptToPixel(a):a};break}case"margin-bottom":{const a=Number.parseInt(s);e.spaceBelow={v:/pt/.test(s)?M.ptToPixel(a):a};break}case"line-height":{let a=Number.parseFloat(s);s.endsWith("%")&&(a/=100),e.lineSpacing=a;break}}}return Object.getOwnPropertyNames(e).length?e:null}const Wi={name:"univer-doc-paste-plugin-univer",checkPasteType(o){return/UniverNormal/i.test(o)},stylesRules:[],afterProcessRules:[{filter(o){return o.tagName==="P"&&/UniverNormal/i.test(o.className)},handler(o,t){const e=o.body;e.paragraphs==null&&(e.paragraphs=[]);const n={startIndex:e.dataStream.length},r=ji(t);r&&(n.paragraphStyle=r),e.paragraphs.push(n),e.dataStream+="\r"}}]},zi={name:"univer-doc-paste-plugin-word",checkPasteType(o){return/word|mso/i.test(o)},stylesRules:[{filter:["b"],getStyle(o){const t=Oo(o);return{bl:i.BooleanNumber.TRUE,...t}}}],afterProcessRules:[{filter(o){return o.tagName==="P"},handler(o,t){const e=o.body;e.paragraphs==null&&(e.paragraphs=[]);const n={startIndex:e.dataStream.length},r=ji(t);r&&(n.paragraphStyle=r),e.paragraphs.push(n),e.dataStream+="\r"}}]};function Va(o){var n,r;const t=s=>{let a="";return Object.keys(s).forEach(c=>{s[c]!==void 0&&(a+=` ${c}=${s[c]}`)}),a},e={"data-doc-transform-height":o.docTransform.size.height,"data-doc-transform-width":o.docTransform.size.width,"data-width":(n=o.transform)==null?void 0:n.width,"data-height":(r=o.transform)==null?void 0:r.height,"data-image-source-type":o.imageSourceType,"data-source":o.imageSourceType===ao.ImageSourceType.UUID?o.source:void 0,src:o.source};return`<img ${t(e)}></img>`}function pr(o,t){const{st:e,ed:n,ts:r={}}=t,{ff:s,fs:a,it:c,bl:l,ul:d,st:A,ol:u,bg:h,cl:g,va:m}=r;let p=o.slice(e,n);const f=[];return c===i.BooleanNumber.TRUE&&(p=`<i>${p}</i>`),m===i.BaselineOffset.SUPERSCRIPT?p=`<sup>${p}</sup>`:m===i.BaselineOffset.SUBSCRIPT&&(p=`<sub>${p}</sub>`),(d==null?void 0:d.s)===i.BooleanNumber.TRUE&&(p=`<u>${p}</u>`),(A==null?void 0:A.s)===i.BooleanNumber.TRUE&&(p=`<s>${p}</s>`),l===i.BooleanNumber.TRUE&&(p=`<strong>${p}</strong>`),s&&f.push(`font-family: ${s}`),g&&f.push(`color: ${g.rgb}`),a&&f.push(`font-size: ${a}pt`),u&&f.push("text-decoration: overline"),h&&f.push(`background: ${h.rgb}`),f.length?`<span style="${f.join("; ")};">${p}</span>`:p}function Pn(o,t,e){const{dataStream:n,textRuns:r=[]}=o;if(t===e)return"";let s=t;const a=[];for(const c of r){const{st:l,ed:d}=c;i.Tools.hasIntersectionBetweenTwoRanges(t,e,l,d)&&(l>s?(a.push(n.slice(s,l)),a.push(pr(n,{...c,ed:Math.min(d,e)}))):a.push(pr(n,{...c,st:s,ed:Math.min(d,e)}))),s=Math.max(t,Math.min(d,e))}return s!==e&&a.push(n.slice(s,e)),a.join("")}function ja(o,t,e){const n=o.body,r=o.drawings||{},{customRanges:s=[],customBlocks:a=[]}=n||{},c=[...a],l=s.filter(g=>g.startIndex>=t&&g.endIndex<=e);let d=t,A="";const u=(g,m)=>{let p="",f=0,S=g,v=c.findIndex(E=>g<=E.startIndex&&m>=E.startIndex);if(v===-1)return p=Pn(n,g,m),{sliceHtml:p,customBlockLength:f};for(;v!==-1;){const E=c[v];c.splice(v,1),p+=Pn(n,S,E.startIndex);const T=r[E.blockId];if(T)switch(T.drawingType){case i.DrawingTypeEnum.DRAWING_IMAGE:{p+=Va(T),f++;break}}S=E.startIndex+1,v=c.findIndex(R=>S<=R.startIndex&&m>=R.startIndex)}return p=p+Pn(n,S,m+1),{sliceHtml:p,customBlockLength:f}};l.forEach(g=>{var T,R;const{startIndex:m,endIndex:p,rangeType:f,rangeId:S}=g,v=u(d,m);A+=v.sliceHtml;const E=u(m,p+1);switch(f){case i.CustomRangeType.HYPERLINK:{A+=`<a data-rangeid="${S}" href="${(R=(T=g.properties)==null?void 0:T.url)!=null?R:""}">${E.sliceHtml}</a>`;break}default:{A+=E.sliceHtml;break}}d=p+1+(v.customBlockLength+E.customBlockLength)});const h=u(d,e);return A+=h.sliceHtml,A}function Wa(o){const t=o.body||{},{paragraphs:e=[],sectionBreaks:n=[]}=t;let{dataStream:r=""}=t;r.endsWith(`\r
33
+ `,{"univer-border-primary-500":t===r.value}),onClick:()=>{e(r.value)},children:Q.jsx("img",{className:"univer-size-full",src:r.img,draggable:!1})},r.value))})},Sa=[{value:i.PresetListType.ORDER_LIST,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_1,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_2,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_3,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_4,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.ORDER_LIST_5,img:"data:image/jpeg;base64,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"}],Ia=o=>Q.jsx(_i,{...o,options:Sa}),va=[{value:i.PresetListType.BULLET_LIST,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_1,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_2,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_3,img:"data:image/jpeg;base64,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"},{value:i.PresetListType.BULLET_LIST_4,img:"data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEA2ADYAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/CABEIAPQA2AMBEQACEQEDEQH/xAA3AAEAAQQDAQEBAAAAAAAAAAAACgYHCAkDBQsCAQQBAQADAQEBAAAAAAAAAAAAAAACAwQFAQb/2gAMAwEAAhADEAAAAJ/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOj9d54AAAAAAAAAAAA4iEB1ck3/la+UAAAAAAAAAAAtjLzz/AHsYos2/PKcwaJ//AB9tzo+jEkAAAAAAAq4yIAAMQbI+Zb3ef6Z3C6GYVcgKLAAAAAAAP7SpwAAYr2RyorkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANDeun8NgNM85KpgAAAAAAAAAAatdFeVNcsoa5aD9dO/DJcKYLFAAAAAFTl9QAAAYrWRwCthtoz2aMNdMg3HeOsKEAAAAAO0K6AAAAMMLYYRWw3N5buxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABS3vkZDfQNkdE9uua0AAAAAAAAAACyM4+MJ9NyxMG5umfHyNop8s6AAVCXhAAAAAABZGcfGE+m5YmDc3TPj5G0dKWxAAO6LnAAAAAAA6P1ph01DMGuWfNMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqL01bdM1oAAAAAAAAAAA4yPNto857tYfRl4m6Qpjv5QWXAAAAAAAO6LnAAtrLyKn0M8C7r455vI2SsefouTH0Y+gAAAAAAFQl4QAAR+dlEgbHeAAAAAAAAAAAAPk+gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/8QAKxAAAQIGAQMCBwEBAAAAAAAABgAXAwQFBwgJFgIKEAFAFRkaIDA4YBJQ/9oACAEBAAEIAP8AtckovJOI+nuY8eBKwI0zMxN/FuunfS4CgR4E1AgzMt7e7R6T24EJ8lEt1u7rYJdWqFeI1UWlLd1sFtXUBPEmmWlPCq4ohIEZj45IRLkhEuSES5IRLkhEuSES5IRLkhEuSES5IRLkhEuSES5IRLkhEuSESBa3WZwqpcvN/bmvg3jtn7Zas2TyI9NRWSXzOoesWLhRgtjjgFZujWZx38t4HpvA9N4HpvA9N4HpvA9N4HpvA9N4HpvA9N4HpvA9N4HpvA9N4HqnBo3SpyDPyH3dOLAL0Zp9eaEP+uL9luW+Xt1T2y2omqRu4XsPCmbgzmB+e9pc9rbERWDe33XXxL8dNWeZF0wLCvHcJxQxSsLj8AK7NFkMbt/+IRmAeDKozlKG6lPyDhmCcMwThmCcMwThmCcMwThmCcMwThmCcMwThmCDTIkqpJTZCf8AwZw4x0fMvEfIHGGs6q9hFIuIFUXCbKi511bZ2VCqzce72Ftcq2zPY7X9mFP8Vmky9cpszS5tqB1NQOpqB1NQOpqB1NQOpqB1NQOpqB1NQOpqB1Ua31GodSlqpKfhy5154bZ00mn07KAH7ffWUKklHJimj0ekD1KptCoH9ccl1Nt+EmJ5Wfq5dby+rl1vLW9uhxc2hm1yQOwPt8mf1vyC89n5+yGYfkqq0xQ6DP1SUdciTrkSdciTrkSdciQrcGs1yvSFLm/zZM/rfkF57Pz9kMw/JDR/j1HnKSmhTQpoU0KaFD1uPgNYk6t+cmHKKYjZAIkf05GmZfTkaZlh9rAwZwIJDEuxN/oPmS2/6tx/rrv6PcRYsKBCiRo20XuGMUsKhEiBLARMjL3Rr/8AplJF1c9wpinmwJC4DfuBHgTUCDMy3h3k7yd5O8neTvJ3k7yd5O8neTvJ3k7yd5D1x/j1Yk6T9t1bM2ivoKTYLenaN2v1mbgiJTeHXfxAr5bwFauu18syAiI7d7Ypa2zdo7HC8sEWX8NQRJqCJNQRJqCJNQRJqCJNQRJqCJNQRJqCJNQRJqCJNQRJqCJNQRIVt9WaHXpCqTf3dGpa3EPe905zdPuv89Pp1evX6fxn/8QAPhAAAQMDAQUGAwMLBAMAAAAAAwIEBQEGBwAREhMUpQgVlNTV5RCV0xYzQAkXICEiIyQwV2C2l6jX2CUxUP/aAAgBAQAJPwD/AO0/BW4qQf2kVF72xymFq/7sS/3K7N4Cn1Ft94e/uERsLw+IHi/iTCbNmwiHcODkQEAABRUhTGKSqRiEIaVLIRakoQhNVKrRNK11dQldiOmPwdi9N4tk17nLHquel0qzq5G7FQqIVvltwZoWUZrFUmJmreaS1cPKVYGMJw2cCGdu4ARBgHAZFCCMEo6qGURRqSsZEKUhaFUUmtU1pX8RhvI+cpZmIhBWRi+QxbHXM84dE12gNlrJGMLcUnZVS6jHPFerQIiGrJ05U3bOMEZA/J/43fM3Ubeti3ISS/PBla3HLhy235q91wsAyb48uFkMSDQePRvIadbrkY2Tvi87cfKZ/DAmQ+3/AIviGzVtbVm2k1nJDNeJrSCdtGDpBXk2YTMYrHFvqdt0oi8jNQQ8C2owh4y+bLt1uJqPDWQ8GTToQ1uLHyXKYsl7iZLVRW/vvMSZHydbSxUqmih706F5wii5li0c0cNW/wAJ+a+aPvr6n5r5o++vqfmvmj76+p+a+aPvr6n5r5o++vqfmvmj76+p+a+aPvr6n5r5o++vqfmvmj76+p+a+aPvr6n5r5o++vqfmvmj76+p+a+aPvr6n5r5o++vqfmvmj76+peUdNyc9xAOH7s4V7kc8WjfEUqkK3VpStO8mu6pKVU2VpSv6VkMbjiXAHri0brbhA3vfGdzuG3Ba3hYVw8NbuFmGhEAU5b0UWIn2Yaw1yR0vCOXUeYTUGQy3uZmK/yNHarTXiMUae7E5mpQNCkTAGsECp0UasyXlJ1SLLMQVw1U2TYkdbke3asl3deLhs2cX5ky4m4OG6uy/bk4SXs1KuzLOVs0qsUNANTUh7bjYiFbNWAfjEdQlPO6iOoSnndRHUJTzuojqEp53UR1CU87qI6hKed1EdQlPO6iOoSnndRHUJTzuojqEp53UR1CU87qI6hKed1EdQlPO6iOoSnndRHUJTzuo3gOwcThF5x+Xc4olhJ+7M6IJW8Ii0/tIrs27abFUpWn6UbHjyCTs2V7OpnyWrdDw8CrJAcgJOs6AcY5UGaiZVMc9FiaIC1BRYVFSL+7sGY2yRamLbie2NlDtv8AaNm5mE7M8De7FLYkhbmOIm01/bDKzqKGQoHsvbw3rNs7JHyCYWQtSRibglzdgTtr21GiJIXBha0WGRMJ5OkWTbeduI7GN1SbUdp0ligEpo0PeK5XeWUSAwsg5XSqYi6ceZGxncziwM7YIyOw7myfhXIbEjoDq2rtiq7tVtXZGD4kDOAQNtKgaPWzhvGT0TPQUR+HePI27GuOImxoiVjlVHIwyswX7aOH3k3HOErQRm/hY++3coyfgWlzHumgnratHDceoxnGQON8a2zEuVsxKF31czmPFJ3ldTzfKZa5O7bsezNySa6lWjnZMyQ0G3SISNUFGD/KLdmztB4qzhAtyEGxmrh7M1pMso2bkZ2xGmgC3R3PFxNkt5M1VLFAx79sCgSP36n3wNwHYOT4ReGIu5xX7UJP3ZkEEreERaf2kV2bdtNiqUrSX6fF+S1L9Pi/Jal+nxfktS/T4vyWpfp8X5LUv0+L8lqX6fF+S1L9Pi/Jal+nxfktS/T4vyWpfp8X5LUlx2h+c4ouTYC3+EwdGH+8C1GVO6UaFfsrpt2bK7U1rSv8h01jk5hxtOW1CzD4ZjMbfvMKRTNg3M8bt/4hy1ti+Iu3rgcNQ7Cugxq241JUSiqSIMP/AJQjs0RUdibK+Jb8cNoKZySmz2bOIt/K+NHDsoml+wd9W+mHn3ZreqQqJB+5kWcfW1JG3JmVv+z8Y2DbwOYm7xvu4oq17cjR1pXhpcy0w6aM0ncKpwmjWhVOXh6pbtRGOtA1W/PwfY97MmL7o7N/Yplrji5GBe5qvG7JRyHM2d4qKk61cAtUbJMjYkSdTZiqWZGhkOwsrjtq6Ydl8FnG3dcHiLbqGg1OAcThG4oozIptWFNFbw1bU1VSmytaKo9mvEMfTtPZrxDH07T2a8Qx9O09mvEMfTtPZrxDH07T2a8Qx9O09mvEMfTtPZrxDH07T2a8Qx9O09mvEMfTtPZrxDH07TmUI4a8bhocGaLDXjgK3XvpEyCuuxBlVTukTsVRNa7aUqmv8nBNpZIkIQC29uXlRUpa2RbaCtRC0bwWQrQfwV4MY5LpdHy4PvgkA8ejCeQinlRpprFl/ZucW4si7dhs8ZjyJku0oehRjFUIrQkpsFuSLWgxoTyc5GyrRW6hRArWEChRcdBwcMxaxkRDQ7FtGRUVGsQobso+NjmQgNGLFo3GMDVo1CIDcKECENCEpTT+7gPnMPZNrXDd0q2jBgNJOI224l3MvgR4XTlk1K+K1ZFG0G5eNAEOoaTOQDqoqMJ9t3/TfA//AGT1hPtu/wCm+B/+yerCz5aExi21om7rgc5gtfHkBGvI2YllQzUEOay8p5AdOHw3SKkON6zjwJBsUNyUn7qn4f8Aojlf/A574/0RsX/PDfFASOGvK8NDhJFhrx3jduvfSIgV12IMqqd0idiqJrXbSlU1ZQvh33qOmUL4d96jplC+Hfeo6ZQvh33qOmUL4d96jptGDbuua4i24XaDU4DNw4RuKK9Mim1YU0VvDVtTVVKbK1oqn87+iOV/8Dnvj/RGxf8APDfFxynN8v8AxHB4/D4DoDn7rih3t7g7n3id3e3v17N2tw9J9z1cPSfc9XD0n3PVw9J9z1cPSfc9TPN8pzH8P3dwOJx2p233vPG3d3jb/wB2re3d39W3ep/OZ9429dUHLW5PR/MO2fPws4wcRkoz5tgdq+a80xdHBzDNy3dg3+I3OEyUET2OP9wvap/5x12OP9wvap/5x1g/81Fw39BsLcu2Q/OXl++u9oWMfqk2TPlMlX/eLFhwHyqn5iMbM3ZNvDMcgdg/7huRmUiOy2m4CUScXCa52rOKvpdhr4zke7LrwjVpeFUNG51GAYDYy0ma1GL8QQYQhGspSlWkYhCGmqyEIRdaJQNCaVUtaq0SlNK1rWlKVrq7bQ7THafex7+PgbfsSej7mxnjeYqpwwpL5UvOCeOYyrmDeBOY2O4F46ux87aDjJutnsZAU8HJFzFz9TJAsuUycR+tdy0yCCaRPhn6OVbUUIGSGOomdB8gNohEchrSPTRtS7bU7NvanE2ZRMzat5yooDHOSJgYUBXO4uvWXIGFCqbc7iw4/uSSZXYxkHdYeDpeLRp385MJw2cCGdu4ARBgHAZFCCMEo6qGURRqSsZEKUhaFUUmtU1pX4291b2zVvdW9s1b3VvbNW91b2zVvdW9s1b3VvbNW91b2zVvdW9s1b3VvbNW91b2zVvdW9s1b3VvbNW91b2zVvdW9s1b3VvbNQ3Kc3zH8R3jx+HwGp3P3XIh3t7g7n3id3e3v17N2v6GL8f5Zsx8lVHVr5HtCAvOCIpVUKoakZcLCQaCcjWMRQuhCQ5bmEE4CjMIa0sVYmy3FNns467P7+YdvsV5FS3Cty5irFezRncpji73yqGrEM3Eq8x+8dcjCDjbIYkNONrbnPtx9o/sh9kO63n2k+1fefcv2b7l4PeHfne//jO6+X5zn/4Tg8f9jTBOW8qTUewmWfZ/j5qVi8a4zIZTd+1Y3nLW5JRsnka72SRjbzMch+3x40MaThSR17tBtZ4mL8e4ls5n+tta2NrOt6yYAS95a1FpE23HxrFRyEKUpXCwqMYxSlKRZCkUr4PYXxD707T2F8Q+9O09hfEPvTtPYXxD707T2F8Q+9O09hfEPvTtPYXxD707T2F8Q+9O09hfEPvTtPYXxD707T2F8Q+9O09hfEPvTtPYXxD707T2F8Q+9O09hfEPvTtOYwjdrzXEQ3M7WavHZuG6NxJWQUV2LMmqt4idiaKrTbWlE1/StZiKw/zBucwiiG7Bu2h1drAlxJx0e5nDWiyN3hy2a6c36cyWjZynIpGt1LcFkuIcn4pKaLUlKVL2U3lJRVVUJqr/AN1Smq11TStdiarVWmyqq7f7M//EADwRAAECAgYFCAkDBQAAAAAAAAECEQMSAAQhMUFRExRAcbEQIjJhcoGRogUVI0JSYIKh0kNTkiQzUGLB/9oACAECAQE/AP8ANMWfB2fr2vU1aoze1m0rY3NJvl81m0pAUQCpKBmqZvKFH7UqtVgpaJOmMrAjopPUHNvWq7AA8laqsFTxJ0wVG8lpVHrHxH/W03kE0UAksFJWM0zN5kpP22iFFXBWFoLZjBQyIxHC8W01lGg0/utdjNdLvms3W3UixVxlFay5wGCRkBgON5t2rSHRaLCefvlb5vECHDSFVlaklQdMJABiEZqJsS+R8XsH9Evm+2hHBZlUn6gLW3NvFIsFUJQBZSVB0LTalacweIw3MTs9VQF1iEk3TE75QVN3tSKsxIi1m9SidwwHcGHIkz1OID+itCknIRDKRue1s22iFE0URET4VAkZi4jvDilYgkExYfOgrMyVC0Je9KsiDZbxeiUqWQlIKibgA58BSK0CAIDgxFqC4oDGQAc1D54nK3Ah9ohxosL+2spe8XpO9Jcd7PQ1yOQQFBL3yJSk+LP4Gl9p+bwHIAvJA8S1PV0f44X8l/hT1dH+OF/Jf4Uj1WJVwkrKCFEgSlRuD2ulO0I6aO2niOX0l0IXbPDaEdNHbTxHL6S6ELtnhtAJBBF4LjeKa7Wv3fJD/Cmu1r93yQ/wpFjxYwAiLmALjmpDH6QPmHQHVtM36jfQzPuns2qr1KJFIKwYcPEqDKUMkg8TZk91JEyaOUSSyy4SszUj1OJCJKAVw8CA6kjJQ/6LMS120JUpBdKik5pJB+1KvX1pITG5yTZP7yes4KGeONt1HDTOGZ3wa93yalYr61Epg81IsnYTK3P0Rl72Li6ilKWXUoqOaiSfvtOsq1TQvbPK726Npm8bOzZ80f/EADkRAAECAQgFCQgDAQAAAAAAAAECEQMAEiExQVFhcRNAkaHBBBAjMlJgcrHwFCJCgYKi0dJDUJLh/9oACAEDAQE/AP7rDW9MNM/wNMfe+3drJJAoBVgG4kSixVl0sUC60jE3HDaeaFFWGSxWLrQM7hjtEgSRSCnAtwJ1haErDKGRtGI9Zy0StJo7XrwrfZTurkhCUBkjM2nE+stamifPtmzd797zEUokQgCBQVq6oOF/qyvp00+4sXUg/Is215IWFhxQRQpJrBuPre41iKSmGoitm2kDjJCQlKUiwb7T8zTzETYySP5EqB+kO/kNYWmelSbxvsPyMoa3ExVC00EG1qiL3F3k0iQA5IAvMkdJE0je4kFKDU5tOVY/6DrKkIX1kg427RTIQIYpYnxEkbPz3wJYE3AnZL2mHcvYP2l7TDuXsH7ShxUxCQkKDB6QOBOsL6qvCfI8/Jusrw8RrC+qrwnyPPybrK8PEawQ4INRoloIXZ+5X5loIXZ+5X5kmGhBJSGJorJ8ye8Ok6XRv8L/AFVt/mnWokdKKEspWFQzPAU5SnGdOcznd7XlDjpWAFGarGo5Hgac9YIBoIBzDyicnBDooPZsOVx3ZSYu1tTWvKHycAOuk9mwZ3ndnXIACgAAYBvLWdGNNPaia+E6rypzp70f/9k="},{value:i.PresetListType.BULLET_LIST_5,img:"data:image/jpeg;base64,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"}],Ea=o=>Q.jsx(_i,{...o,options:va}),Ni=`${st}_ORDER_LIST_TYPE_COMPONENT`,Pi=`${st}_BULLET_LIST_TYPE_COMPONENT`;var ln=(o=>(o[o.ABOVE=0]="ABOVE",o[o.BELLOW=1]="BELLOW",o))(ln||{}),Eo=(o=>(o[o.LEFT=0]="LEFT",o[o.RIGHT=1]="RIGHT",o))(Eo||{});function Ca(o,t){let e=i.DataStreamTreeTokenType.TABLE_START;const n=[],r=[];for(let s=0;s<o;s++){e+=i.DataStreamTreeTokenType.TABLE_ROW_START;for(let a=0;a<t;a++)e+=`${i.DataStreamTreeTokenType.TABLE_CELL_START}\r
34
+ ${i.DataStreamTreeTokenType.TABLE_CELL_END}`,n.push({startIndex:e.length-3,paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),r.push({startIndex:e.length-2});e+=i.DataStreamTreeTokenType.TABLE_ROW_END}return e+=i.DataStreamTreeTokenType.TABLE_END,{dataStream:e,paragraphs:n,sectionBreaks:r}}function dn(){return{margin:{start:{v:10},end:{v:10},top:{v:5},bottom:{v:5}}}}function An(o){const t=dn();return{tableCells:[...new Array(o).fill(null).map(()=>i.Tools.deepClone(t))],trHeight:{val:{v:30},hRule:i.TableRowHeightRule.AUTO}}}function un(o){return{size:{type:i.TableSizeType.SPECIFIED,width:{v:o}}}}function Co(o,t,e){const n=un(e/t),r=An(t),s=[...new Array(o).fill(null).map(()=>i.Tools.deepClone(r))],a=[...new Array(t).fill(null).map(()=>i.Tools.deepClone(n))],c=i.generateRandomId(6);return{tableRows:s,tableColumns:a,tableId:c,align:i.TableAlignmentType.START,indent:{v:0},textWrap:i.TableTextWrapType.NONE,position:{positionH:{relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.PAGE,posOffset:0}},dist:{distB:0,distL:0,distR:0,distT:0},cellMargin:{start:{v:10},end:{v:10},top:{v:5},bottom:{v:5}},size:{type:i.TableSizeType.UNSPECIFIED,width:{v:e}}}}function yt(o,t){if(!o&&!t)return null;if(t&&t.length>0){let e=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;const r="";for(const s of t){const{startOffset:a,endOffset:c,segmentId:l}=s;a==null||c==null||l==null||(e=Math.min(e,a),n=Math.max(n,c))}if(Number.isFinite(e)&&Number.isFinite(n))return{startOffset:e,endOffset:n,segmentId:r}}else if(o){const{startOffset:e,endOffset:n,segmentId:r}=o;return e==null||n==null||r==null?null:{startOffset:e,endOffset:n,segmentId:r}}}function Ta(o){let t=i.DataStreamTreeTokenType.TABLE_ROW_START;const e=[],n=[];for(let r=0;r<o;r++)t+=`${i.DataStreamTreeTokenType.TABLE_CELL_START}\r
35
+ ${i.DataStreamTreeTokenType.TABLE_CELL_END}`,e.push({startIndex:t.length-3,paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),n.push({startIndex:t.length-2});return t+=i.DataStreamTreeTokenType.TABLE_ROW_END,{dataStream:t,paragraphs:e,sectionBreaks:n}}function ya(){const o=`${i.DataStreamTreeTokenType.TABLE_CELL_START}\r
36
+ ${i.DataStreamTreeTokenType.TABLE_CELL_END}`,t=[],e=[];return t.push({startIndex:1,paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),e.push({startIndex:2}),{dataStream:o,paragraphs:t,sectionBreaks:e}}function ba(o,t,e){var u,h,g;const{startOffset:n,endOffset:r,segmentId:s}=o,a=e.getSelfOrHeaderFooterViewModel(s),c=t===0?n:r;let l=null;const d=(g=(h=(u=e.getBody())==null?void 0:u.tables)==null?void 0:h.find(m=>c>=m.startIndex&&c<=m.endIndex))==null?void 0:g.tableId;let A=0;for(const m of a.getChildren()){for(const p of m.children){const{children:f}=p,S=f[0];if(S){for(const v of S.children)if(v.startIndex<=c&&c<=v.endIndex){A=S.children.indexOf(v),l=v;break}}if(l)break}if(l)break}return l==null||d==null?null:{offset:t===0?l.startIndex:l.endIndex+1,colCount:l.children.length,tableId:d,insertRowIndex:t===0?A:A+1}}function Ra(o,t,e){var g,m,p;const{startOffset:n,endOffset:r,segmentId:s}=o,a=e.getSelfOrHeaderFooterViewModel(s),c=t===0?n:r,l=(p=(m=(g=e.getBody())==null?void 0:g.tables)==null?void 0:m.find(f=>c>=f.startIndex&&c<=f.endIndex))==null?void 0:p.tableId,d=[];let A=null,u=-1;for(const f of a.getChildren()){for(const S of f.children){const{children:v}=S,C=v[0];if(C){if(c<C.startIndex||c>C.endIndex)continue;A=C;for(const y of C.children){for(const b of y.children){const E=y.children.indexOf(b);if(c>=b.startIndex&&c<=b.endIndex){u=E;break}}if(u!==-1)break}}if(A)break}if(A)break}if(A==null||l==null||u===-1)return null;let h=0;for(const f of A.children){const S=f.children[u],v=t===0?S.startIndex:S.endIndex+1;d.push(v-h),h=v}return{offsets:d,tableId:l,columnIndex:u,rowCount:A.children.length}}function xa(o,t,e){const n=[];let r=t[e].size.width.v,s=0;for(let a=0;a<t.length;a++)s+=t[a].size.width.v;s+=r;for(let a=0;a<t.length;a++)n.push(t[a].size.width.v/s*o);return r=r/s*o,{widths:n,newColWidth:r}}function Ui(o,t){var h,g,m;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(m=(g=(h=t.getBody())==null?void 0:h.tables)==null?void 0:g.find(p=>e>=p.startIndex&&n<=p.endIndex))==null?void 0:m.tableId,c=[];let l=-1,d=0,A=-1,u=!1;for(const p of s.getChildren()){for(const f of p.children){const{children:S}=f,v=S[0];if(v){if(e<v.startIndex||n>v.endIndex)continue;A=v.startIndex+3;for(const C of v.children){const y=v.children.indexOf(C),{startIndex:b,endIndex:E}=C;e>=b&&e<=E?(l=b,c.push(y),d+=E-b+1):(b>e&&E<n||n>=b&&n<=E)&&(c.push(y),d+=E-b+1),c.length===v.children.length&&(u=!0)}}if(c.length)break}if(c.length)break}return a==null||c.length===0?null:{tableId:a,rowIndexes:c,offset:l,len:d,cursor:A,selectWholeTable:u}}function Oa(o,t){var m,p,f;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(f=(p=(m=t.getBody())==null?void 0:m.tables)==null?void 0:p.find(S=>e>=S.startIndex&&n<=S.endIndex))==null?void 0:f.tableId,c=[];let l=null;const d=[];let A=-1,u=-1,h=-1;for(const S of s.getChildren()){for(const v of S.children){const{children:C}=v,y=C[0];if(y){if(e<y.startIndex||n>y.endIndex)continue;l=y;for(const b of y.children)for(const E of b.children){const R=b.children.indexOf(E);e>=E.startIndex&&e<=E.endIndex&&(u=R),n>=E.startIndex&&n<=E.endIndex&&(h=R)}}if(l)break}if(l)break}if(l==null||a==null)return null;for(let S=u;S<=h;S++)d.push(S);let g=0;for(const S of l.children){const v=S.children[u],C=S.children[h];c.push({retain:v.startIndex-g,delete:C.endIndex-v.startIndex+1}),g=C.endIndex+1}return A=l.startIndex+3,{offsets:c,tableId:a,columnIndexes:d,cursor:A,selectWholeTable:d.length===l.children[0].children.length,rowCount:l.children.length}}function wi(o,t){var A,u,h;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(h=(u=(A=t.getBody())==null?void 0:A.tables)==null?void 0:u.find(g=>e>=g.startIndex&&n<=g.endIndex))==null?void 0:h.tableId;let c=-1,l=0,d=-1;for(const g of s.getChildren()){for(const m of g.children){const{children:p}=m,f=p[0];if(f){if(e<f.startIndex||n>f.endIndex)continue;c=f.startIndex,l=f.endIndex-f.startIndex+1,d=f.startIndex}if(f)break}if(l>0)break}return a==null?null:{tableId:a,offset:c,len:l,cursor:d}}function Ma(o,t){var m,p,f;const{startOffset:e,endOffset:n,segmentId:r}=o,s=t.getSelfOrHeaderFooterViewModel(r),a=(f=(p=(m=t.getBody())==null?void 0:m.tables)==null?void 0:p.find(S=>e>=S.startIndex&&n<=S.endIndex))==null?void 0:f.tableId,c=[];let l=null,d=-1,A=-1,u=-1,h=-1;for(const S of s.getChildren()){for(const v of S.children){const{children:C}=v,y=C[0];if(y){if(e<y.startIndex||n>y.endIndex)continue;l=y;for(const b of y.children){const E=y.children.indexOf(b);for(const R of b.children){const D=b.children.indexOf(R);e>=R.startIndex&&e<=R.endIndex&&(A=E,u=D),n>=R.startIndex&&n<=R.endIndex&&(h=D)}}}if(l)break}if(l)break}if(l==null||a==null||A===-1)return null;const g=l.children[A];for(let S=u;S<=h;S++){const v=g.children[S];c.push({retain:v.startIndex+1,delete:v.endIndex-v.startIndex-3})}return d=l.startIndex+3,{offsets:c,tableId:a,cursor:d,rowCount:l.children.length}}var Yn=(o=>(o[o.NEXT=0]="NEXT",o[o.PREV=1]="PREV",o))(Yn||{});function gr(o,t,e){const{startOffset:n}=t;let r=null;for(const d of o.getChildren()){for(const A of d.children){const u=A.children[0];if(u&&n>u.startIndex&&n<u.endIndex){r=u;break}}if(r)break}if(r==null)return null;let s=-1,a=-1,c=null;for(const d of r.children){for(const A of d.children)if(n>A.startIndex&&n<A.endIndex){s=d.children.indexOf(A),a=r.children.indexOf(d),c=d;break}if(s>-1)break}if(s===-1||a===-1||c==null)return null;let l=null;if(e===0){if(l=c.children[s+1],!l){const d=r.children[a+1];d&&(l=d.children[0])}}else if(l=c.children[s-1],!l){const d=r.children[a-1];d&&(l=d.children[d.children.length-1])}if(l){const{startIndex:d,endIndex:A}=l;return{startOffset:d+1,endOffset:A-2}}}function Li(o,t){const e=[],{customBlocks:n=[]}=o;for(const r of t){const{startOffset:s,endOffset:a}=r;if(!(s==null||a==null))for(const c of n){const{startIndex:l}=c;l>=s&&l<a&&e.push(c.blockId)}}return e}function Da(o){return o.some(t=>{const{startNodePosition:e}=t;return e?(e==null?void 0:e.path.indexOf("cells"))>-1:!1})}const Ba=i.SHEET_EDITOR_UNITS,To={id:"doc.command.inner-paste",type:i.CommandType.COMMAND,handler:async(o,t)=>{var T,_,O,N,F,H;const{segmentId:e,textRanges:n,doc:r}=t,s=o.get(i.ICommandService),a=o.get(B.DocSelectionManagerService),c=o.get(i.IUniverInstanceService),l=a.getTextRanges(),d=a.getRectRanges(),{body:A,tableSource:u,drawings:h}=r;if(!Array.isArray(l)||l.length===0||A==null)return!1;const g=c.getCurrentUniverDocInstance(),m=g==null?void 0:g.getSelfOrHeaderFooterModel(e).getBody();if(g==null||m==null)return!1;const p=g.getUnitId(),f={id:B.RichTextEditingMutation.id,params:{unitId:p,actions:[],textRanges:n,segmentId:e}},S=new i.MemoryCursor;S.reset();const v=new i.TextX,C=i.JSONX.getInstance(),y=[],b=!!((T=A.tables)!=null&&T.length),E=!!((_=A.customBlocks)!=null&&_.length);if(b&&e||b&&Da(l)||l.length&&(d!=null&&d.length))return!1;for(let U=0;U<l.length;U++){const L=l[U],{startOffset:W,endOffset:z,collapsed:j}=L,k=W-S.cursor,V=i.Tools.deepClone(A);if(b)for(const Y of V.tables){const{tableId:G}=Y,q=i.Tools.generateRandomId(6);Y.tableId=q;const ee=i.Tools.deepClone(u[G]);ee.tableId=q;const ge=C.insertOp(["tableSource",q],ee);y.push(ge)}if(E&&h){const Y=(N=(O=g.getSnapshot().drawingsOrder)==null?void 0:O.length)!=null?N:0;for(const G of V.customBlocks){const{blockId:q}=G,ee=i.Tools.generateRandomId(6);G.blockId=ee;const ge=i.Tools.deepClone(h[q]);ge.drawingId=ee;const xe=C.insertOp(["drawings",ee],ge),he=C.insertOp(["drawingsOrder",Y],ee);y.push(xe),y.push(he)}}const X=co((F=m.customRanges)!=null?F:[],z,Ba.includes(p)),K=lo((H=m.customDecorations)!=null?H:[],z);if(X&&(V.customRanges=[{...X,startIndex:0,endIndex:A.dataStream.length-1}]),K.length&&(V.customDecorations=K.map(Y=>({...Y,startIndex:0,endIndex:A.dataStream.length-1}))),j)v.push({t:i.TextXActionType.RETAIN,len:k}),v.push({t:i.TextXActionType.INSERT,body:V,len:A.dataStream.length});else{const Y=i.BuildTextUtils.selection.delete([L],A,S.cursor,V,l.length===1);v.push(...Y)}S.reset(),S.moveCursor(z)}const R=J(g,e);return y.push(C.editOp(v.serialize(),R)),f.params.actions=y.reduce((U,L)=>i.JSONX.compose(U,L),null),!!s.syncExecuteCommand(f.id,f.params)}};function _a(o,t){const{startOffset:e,endOffset:n}=o,r=t.some(a=>a.startIndex===n),s=Math.max(e,r?n-1:n);return{...o,endOffset:s,collapsed:e===s}}function Na(o,t,e){var m,p;const n=t.getSelfOrHeaderFooterModel(e).getBody(),r=new i.TextX,s=i.JSONX.getInstance(),a=[];if(n==null)return a;const{tables:c=[]}=n,l=new i.MemoryCursor;l.reset();for(let f=0;f<o.length;f++){const S=_a(o[f],c),{startOffset:v,endOffset:C,collapsed:y}=S,b=v-l.cursor;y?r.push({t:i.TextXActionType.RETAIN,len:b}):r.push(...i.BuildTextUtils.selection.delete([S],n,l.cursor,null,!1)),l.reset(),l.moveCursor(C)}const d=J(t,e);a.push(s.editOp(r.serialize(),d));const A=Li(n,o),u=(m=t.getDrawings())!=null?m:{},h=(p=t.getDrawingsOrder())!=null?p:[],g=A.sort((f,S)=>h.indexOf(f)>h.indexOf(S)?-1:h.indexOf(f)<h.indexOf(S)?1:0);if(g.length>0)for(const f of g){const S=u[f],v=h.indexOf(f);if(S==null||v<0)continue;const C=s.removeOp(["drawings",f],S),y=s.removeOp(["drawingsOrder",v],f);a.push(C),a.push(y)}return a.reduce((f,S)=>i.JSONX.compose(f,S),null)}function Pa(o,t,e,n){const r=[];if(t.getSelfOrHeaderFooterModel(n).getBody()==null)return r;const a=new i.TextX,c=i.JSONX.getInstance(),l=new i.MemoryCursor;l.reset();for(const A of o){const{startOffset:u,endOffset:h,spanEntireRow:g,spanEntireTable:m}=A;if(!(u==null||h==null))if(m){const p=wi({startOffset:u,endOffset:h,segmentId:n},e);if(p==null)continue;const{offset:f,len:S,tableId:v}=p;f-l.cursor>0&&a.push({t:i.TextXActionType.RETAIN,len:f-l.cursor}),a.push({t:i.TextXActionType.DELETE,len:S});const C=c.removeOp(["tableSource",v]);r.push(C),l.moveCursorTo(f+S)}else if(g){const p=Ui({startOffset:u,endOffset:h,segmentId:n},e);if(p==null)continue;const{offset:f,rowIndexes:S,len:v,tableId:C}=p;f-l.cursor>0&&a.push({t:i.TextXActionType.RETAIN,len:f-l.cursor}),a.push({t:i.TextXActionType.DELETE,len:v});for(const y of S.reverse()){const b=c.removeOp(["tableSource",C,"tableRows",y]);r.push(b)}l.moveCursorTo(f+v)}else{const p=Ma({startOffset:u,endOffset:h,segmentId:n},e);if(p==null)continue;const{offsets:f}=p;for(const S of f){const{retain:v,delete:C}=S;v-l.cursor>0&&a.push({t:i.TextXActionType.RETAIN,len:v-l.cursor}),a.push({t:i.TextXActionType.DELETE,len:C}),l.moveCursorTo(v+C)}}}const d=J(t,n);return r.push(c.editOp(a.serialize(),d)),r.reduce((A,u)=>i.JSONX.compose(A,u),null)}function Qi(o,t,e,n,r){let s=[];if(Array.isArray(o)&&(o==null?void 0:o.length)!==0&&(s=Na(o,e,r)),Array.isArray(t)&&(t==null?void 0:t.length)!==0){const a=Pa(t,e,n,r);s==null||s.length===0?s=a:s=i.JSONX.compose(s,i.JSONX.transform(a,s,"right"))}return s}const We={id:"doc.command.inner-cut",type:i.CommandType.COMMAND,handler:(o,t)=>{var p;const e=o.get(B.DocSelectionManagerService),n=o.get(i.ICommandService),r=o.get(i.IUniverInstanceService),{segmentId:s,textRanges:a,selections:c=e.getTextRanges(),rectRanges:l=e.getRectRanges()}=t;if((!Array.isArray(c)||c.length===0)&&(!Array.isArray(l)||l.length===0))return!1;const d=(p=r.getCurrentUniverDocInstance())==null?void 0:p.getUnitId();if(!d)return!1;const A=r.getUniverDocInstance(d);if(A==null)return!1;const u=ce(o,d);if(u==null)return!1;const h=u.getViewModel(),g={id:B.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:a}};return g.params.actions=Qi(c,l,A,h,s),!!n.syncExecuteCommand(g.id,g.params)}};var ne=(o=>(o[o.LEFT=0]="LEFT",o[o.RIGHT=1]="RIGHT",o))(ne||{});const Fi="doc.command.insert-text",yo={id:Fi,type:i.CommandType.COMMAND,handler:async(o,t)=>{var E;const e=o.get(i.ICommandService),{range:n,segmentId:r,body:s,unitId:a,cursorOffset:c}=t,l=o.get(B.DocSelectionManagerService),A=o.get(i.IUniverInstanceService).getUnit(a,i.UniverInstanceType.UNIVER_DOC);if(A==null)return!1;const u=l.getActiveTextRange(),h=A.getSelfOrHeaderFooterModel((E=u==null?void 0:u.segmentId)!=null?E:"").getBody();if(h==null)return!1;const{startOffset:g,collapsed:m}=n,p=c!=null?c:s.dataStream.length,f=[{startOffset:g+p,endOffset:g+p,style:u==null?void 0:u.style,collapsed:m}],S={id:B.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:f,debounce:!0}},v=new i.TextX,C=i.JSONX.getInstance();if(m)g>0&&v.push({t:i.TextXActionType.RETAIN,len:g}),v.push({t:i.TextXActionType.INSERT,body:s,len:s.dataStream.length});else{const R=i.BuildTextUtils.selection.delete([n],h,0,s);v.push(...R)}S.params.textRanges=[{startOffset:g+p,endOffset:g+p,collapsed:m}];const y=J(A,r);return S.params.actions=C.editOp(v.serialize(),y),!!e.syncExecuteCommand(S.id,S.params)}},et={id:"doc.command.delete-text",type:i.CommandType.COMMAND,handler:async(o,t)=>{var b;const e=o.get(i.ICommandService),n=o.get(i.IUniverInstanceService),{range:r,segmentId:s,unitId:a,direction:c,len:l=1}=t,d=n.getUnit(a,i.UniverInstanceType.UNIVER_DOC),A=d==null?void 0:d.getSelfOrHeaderFooterModel(s).getBody();if(d==null||A==null)return!1;const{startOffset:u}=r;let h=c===ne.LEFT?u-l:u,g=c===ne.LEFT?u-1:u+l-1;const m=(b=A.customRanges)==null?void 0:b.find(E=>E.startIndex<=h&&E.endIndex>=g);m!=null&&m.wholeEntity&&(h=m.startIndex,g=Math.max(g,m.endIndex));const p={id:B.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:[{startOffset:h,endOffset:h,collapsed:!0}],debounce:!0}},f=new i.TextX,S=i.JSONX.getInstance();f.push({t:i.TextXActionType.RETAIN,len:h-0}),f.push({t:i.TextXActionType.DELETE,len:g-h+1});const C=J(d,s);return p.params.actions=S.editOp(f.serialize(),C),!!e.syncExecuteCommand(p.id,p.params)}},bo={id:"doc.command.update-text",type:i.CommandType.COMMAND,handler:async(o,t)=>{const{range:e,segmentId:n,updateBody:r,coverType:s,unitId:a,textRanges:c}=t,l=o.get(i.ICommandService),A=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(A==null)return!1;const u={id:B.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:c}},h=new i.TextX,g=i.JSONX.getInstance(),{startOffset:m,endOffset:p}=e;h.push({t:i.TextXActionType.RETAIN,len:m}),h.push({t:i.TextXActionType.RETAIN,body:r,len:p-m,coverType:s});const f=J(A,n);return u.params.actions=g.editOp(h.serialize(),f),!!l.syncExecuteCommand(u.id,u.params)}};function bt(o){var a,c,l,d;const t=o.get(i.IUniverInstanceService),n=o.get(B.DocSelectionManagerService).getActiveTextRange(),r=t.getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);return!n||!n.collapsed||!r||n.segmentId?!1:i.BuildTextUtils.range.getParagraphsInRange(n,(c=(a=r.getBody())==null?void 0:a.paragraphs)!=null?c:[],(d=(l=r.getBody())==null?void 0:l.dataStream)!=null?d:"")[0]}const gn={id:"doc.command.delete-custom-block",type:i.CommandType.COMMAND,handler:async(o,t)=>{var O;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=e.getActiveTextRange(),a=n.getCurrentUniverDocInstance();if(s==null||a==null)return!1;const{direction:c,range:l,unitId:d,drawingId:A}=t,{startOffset:u,segmentId:h,style:g}=s,m=c===ne.LEFT?u-1:u,p=[{startOffset:m,endOffset:m,style:g}],f={id:B.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:p,prevTextRanges:[l]}},S=new i.TextX,v=i.JSONX.getInstance(),C=[];u>0&&S.push({t:i.TextXActionType.RETAIN,len:c===ne.LEFT?u-1:u}),S.push({t:i.TextXActionType.DELETE,len:1});const y=J(a,h);C.push(v.editOp(S.serialize(),y));const b=((O=a.getDrawings())!=null?O:{})[A],R=a.getDrawingsOrder().indexOf(A),D=v.removeOp(["drawings",A],b),T=v.removeOp(["drawingsOrder",R],A);return C.push(D),C.push(T),f.params.actions=C.reduce((N,F)=>i.JSONX.compose(N,F),null),!!r.syncExecuteCommand(f.id,f.params)}},hn={id:"doc.command.merge-two-paragraph",type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),{direction:s,range:a}=t,c=e.getActiveTextRange(),l=e.getTextRanges();if(c==null||l==null)return!1;const{segmentId:d,style:A}=c,u=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),h=u==null?void 0:u.getSelfOrHeaderFooterModel(d).getBody();if(u==null||h==null)return!1;const g=h.dataStream,m=c,p=u.getUnitId(),{startOffset:f,collapsed:S}=m;if(!S)return!1;const v=s===ne.LEFT?f:f+1;let C,y;for(const H of h.paragraphs){if(H.startIndex>=v){y=H;break}C=H}if(C==null||y==null)return!1;const b=s===ne.LEFT?f-1:f,E=[{startOffset:b,endOffset:b,style:A}],R={id:B.RichTextEditingMutation.id,params:{unitId:p,actions:[],textRanges:E,prevTextRanges:[a]}},D=new i.TextX,T=i.JSONX.getInstance();C.startIndex>0&&D.push({t:i.TextXActionType.RETAIN,len:C.startIndex}),D.push({t:i.TextXActionType.DELETE,len:1}),y.startIndex>C.startIndex+1&&D.push({t:i.TextXActionType.RETAIN,len:y.startIndex-C.startIndex-1});const _=Object.values(i.DataStreamTreeTokenType),O=g[C.startIndex-1];(O&&!_.includes(O)||O===" ")&&D.push({t:i.TextXActionType.RETAIN,len:1,coverType:i.UpdateDocsAttributeType.REPLACE,body:{dataStream:"",paragraphs:[{...i.Tools.deepClone(C),startIndex:0}]}});const N=J(u,d);return R.params.actions=T.editOp(D.serialize(),N),!!r.syncExecuteCommand(R.id,R.params)}},Hi={id:"doc.command.remove-horizontal-line",type:i.CommandType.COMMAND,handler:async o=>{var b;const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getActiveTextRange(),s=t.getTextRanges();if(r==null||s==null)return!1;const{segmentId:a,style:c}=r,l=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),d=l==null?void 0:l.getSelfOrHeaderFooterModel(a).getBody();if(l==null||d==null)return!1;const A=r,u=l.getUnitId(),{startOffset:h,collapsed:g}=A;if(!g)return!1;const m=(b=d.paragraphs)==null?void 0:b.find(E=>E.startIndex===h-1);if(m==null)return!1;const p=[{startOffset:h,endOffset:h,style:c}],f={id:B.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:p}},S=new i.TextX,v=i.JSONX.getInstance();m.startIndex>0&&S.push({t:i.TextXActionType.RETAIN,len:m.startIndex}),S.push({t:i.TextXActionType.RETAIN,len:1,coverType:i.UpdateDocsAttributeType.REPLACE,body:{dataStream:"",paragraphs:[{...i.Tools.deepClone({...m,paragraphStyle:{...m.paragraphStyle,borderBottom:void 0}}),startIndex:0}]}});const C=J(l,a);return f.params.actions=v.editOp(S.serialize(),C),!!n.syncExecuteCommand(f.id,f.params)}};function mn(o,t){let e=0;if(o==null||o.length===0){if(typeof t[0].startOffset=="number"){const n=t[0],{spanEntireRow:r,spanEntireTable:s}=n;s?e=n.startOffset-3:r?n.startRow>0?e=n.startOffset-6:e=n.startOffset:e=t[0].startOffset}}else if(o.length>0&&t.length>0){const n=o[0],r=t[0];if(n.startOffset!=null&&r.startOffset!=null){if(n.startOffset<r.startOffset)e=n.startOffset;else if(n.startOffset>=r.startOffset){const{spanEntireRow:s,spanEntireTable:a}=r;a?e=r.startOffset-3:s&&(e=r.startOffset-6)}}}return e}const Rt={id:"doc.command.delete-left",type:i.CommandType.COMMAND,handler:async o=>{var T,_,O,N,F,H;const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService);let r=!0;const s=e.getCurrentUniverDocInstance();if(s==null)return!1;const a=s.getUnitId(),c=ce(o,a),l=t.getActiveTextRange(),d=t.getRectRanges(),A=t.getTextRanges(),u=c==null?void 0:c.getSkeleton();if(u==null)return!1;if(d!=null&&d.length){const U=mn(A,d),L=d[0].segmentId,W=[{startOffset:U,endOffset:U}];return n.executeCommand(We.id,{segmentId:L,textRanges:W})}if(l==null||A==null)return!1;const{segmentId:h,style:g,segmentPage:m}=l,p=s.getSelfOrHeaderFooterModel(h).getBody();if(p==null)return!1;const f=l,{startOffset:S,collapsed:v}=f,C=u.findNodeByCharIndex(S,h,m),y=M.hasListGlyph(C),b=M.isIndentByGlyph(C,p);let E=S;const R=u.findNodeByCharIndex(S-1,h,m);if(M.isFirstGlyph(C)&&R!==C&&(y===!0||b===!0)&&v){const U=M.getParagraphByGlyph(C,p);if(U==null)return!1;const L=U==null?void 0:U.startIndex,W={startIndex:0},z=U.paragraphStyle;if(y===!0){const k=U.paragraphStyle;if(k){W.paragraphStyle=k;const{hanging:V}=k;V&&(W.paragraphStyle.indentStart=V,W.paragraphStyle.hanging=void 0)}}else if(b===!0){const k=U.bullet;k&&(W.bullet=k),z!=null&&(W.paragraphStyle={...z},delete W.paragraphStyle.hanging,delete W.paragraphStyle.indentStart)}const j=[{startOffset:E,endOffset:E,style:g}];r=await n.executeCommand(bo.id,{unitId:s.getUnitId(),updateBody:{dataStream:"",paragraphs:[{...W}]},range:{startOffset:L,endOffset:L+1},textRanges:j,coverType:i.UpdateDocsAttributeType.REPLACE,segmentId:h})}else if(v===!0){if(R==null)return!0;if(R.content==="\r"){const U=(T=p.paragraphs)==null?void 0:T.find(L=>L.startIndex===S-1);(_=U==null?void 0:U.paragraphStyle)!=null&&_.borderBottom?r=await n.executeCommand(Hi.id):r=await n.executeCommand(hn.id,{direction:ne.LEFT,range:f})}else if(R.streamType==="\b"){const U=(N=s.getSnapshot().drawings)==null?void 0:N[(O=R.drawingId)!=null?O:""];if(U==null)return!0;const L=(H=(F=s.getBody())==null?void 0:F.customBlocks)==null?void 0:H.find(z=>z.blockId===R.drawingId);if(U.layoutType===i.PositionedObjectLayoutType.INLINE||(L==null?void 0:L.blockType)===i.BlockType.CUSTOM){const z=s.getUnitId();r=await n.executeCommand(gn.id,{direction:ne.LEFT,range:l,unitId:z,drawingId:R.drawingId})}else{const z=u.findNodeByCharIndex(S-2);if(z==null)return!0;E-=R.count,E-=z.count;const j=[{startOffset:E,endOffset:E,style:g}];r=await n.executeCommand(et.id,{unitId:s.getUnitId(),range:{...l,startOffset:l.startOffset-1,endOffset:l.endOffset-1},segmentId:h,direction:ne.LEFT,len:z.count,textRanges:j})}}else E-=R.count,r=await n.executeCommand(et.id,{unitId:s.getUnitId(),range:f,segmentId:h,direction:ne.LEFT,len:R.count})}else{const U=ki(f,[f]);r=await n.executeCommand(We.id,{segmentId:h,textRanges:U,selections:[f]})}return r}},Ro={id:"doc.command.delete-right",type:i.CommandType.COMMAND,handler:async o=>{var C,y;const t=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(!n)return!1;const r=ce(o,n.getUnitId()),s=o.get(i.ICommandService),a=t.getActiveTextRange(),c=t.getRectRanges(),l=t.getTextRanges(),d=r==null?void 0:r.getSkeleton();if(c!=null&&c.length){const b=mn(l,c),E=c[0].segmentId,R=[{startOffset:b,endOffset:b}];return s.executeCommand(We.id,{segmentId:E,textRanges:R})}if(a==null||d==null||l==null)return!1;const{segmentId:A,style:u,segmentPage:h}=a,g=n==null?void 0:n.getSelfOrHeaderFooterModel(A).getBody();if(!n||!g)return!1;const m=a,{startOffset:p,endOffset:f,collapsed:S}=m;if(p===g.dataStream.length-2&&S)return!0;let v=!1;if(S===!0){const b=d.findNodeByCharIndex(p,A,h),E=d.findNodeByCharIndex(p+1);if(b.streamType===i.DataStreamTreeTokenType.PARAGRAPH&&(E==null?void 0:E.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK)return!1;if(b.content==="\r")v=await s.executeCommand(hn.id,{direction:ne.RIGHT,range:a});else if(b.streamType==="\b"){const R=(y=n.getSnapshot().drawings)==null?void 0:y[(C=b.drawingId)!=null?C:""];if(R==null)return!0;if(R.layoutType===i.PositionedObjectLayoutType.INLINE){const T=n.getUnitId();v=await s.executeCommand(gn.id,{direction:ne.RIGHT,range:a,unitId:T,drawingId:b.drawingId})}else{if(E==null)return!0;const T=[{startOffset:p+1,endOffset:p+1,style:u}];v=await s.executeCommand(et.id,{unitId:n.getUnitId(),range:{...a,startOffset:p+1,endOffset:f+1},segmentId:A,direction:ne.RIGHT,textRanges:T,len:E.count})}}else{const R=[{startOffset:p,endOffset:p,style:u}];v=await s.executeCommand(et.id,{unitId:n.getUnitId(),range:m,segmentId:A,direction:ne.RIGHT,textRanges:R,len:b.count})}}else{const b=ki(m,[m]);v=await s.executeCommand(We.id,{segmentId:A,textRanges:b,selections:[m]})}return v}};function ki(o,t){let e=o.endOffset;for(const r of t){const{startOffset:s,endOffset:a}=r;s==null||a==null||a<=o.endOffset&&(e-=a-s)}return[{startOffset:e,endOffset:e,style:o.style}]}const xo={id:"doc.command.delete-current-paragraph",type:i.CommandType.COMMAND,handler:async o=>{var d,A;const t=o.get(i.IUniverInstanceService),e=o.get(i.ICommandService),n=t.getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!n)return!1;const r=(A=(d=n.getBody())==null?void 0:d.dataStream)!=null?A:"",s=bt(o);if(!s)return!1;const a=i.BuildTextUtils.selection.delete([{startOffset:s.paragraphStart,endOffset:r[s.paragraphEnd+1]===`
37
+ `?s.paragraphEnd:s.paragraphEnd+1,collapsed:!1}],n.getBody(),0,void 0,!0),c=J(n),l={unitId:n.getUnitId(),actions:i.JSONX.getInstance().editOp(a,c),textRanges:[{startOffset:s.paragraphStart,endOffset:s.paragraphStart,collapsed:!0}]};return e.syncExecuteCommand(B.RichTextEditingMutation.id,l)}},Ua=10,wa=6;function La(){return i.Tools.generateRandomId(wa)}function Qa(o){const t=o.match(/data-copy-id="([^\s]+)"/);return t&&t[1]?t[1]:null}class Fa{constructor(){x(this,"_cache",new i.LRUMap(Ua))}set(t,e){this._cache.set(t,e)}get(t){return this._cache.get(t)}clear(){this._cache.clear()}}const Nn=new Fa;function Oo(o){const t=o.style,e={},n=o.tagName.toLowerCase();switch(n){case"b":case"em":case"strong":{e.bl=i.BooleanNumber.TRUE;break}case"s":{e.st={s:i.BooleanNumber.TRUE};break}case"u":{e.ul={s:i.BooleanNumber.TRUE};break}case"i":{e.it=i.BooleanNumber.TRUE;break}case"sub":case"sup":{e.va=n==="sup"?i.BaselineOffset.SUPERSCRIPT:i.BaselineOffset.SUBSCRIPT;break}}for(let r=0;r<t.length;r++){const s=t[r],a=t.getPropertyValue(s);switch(s){case"font-family":{e.ff=a.replace(/^"/g,"").replace(/"$/g,"");break}case"font-size":{const c=Number.parseInt(a);Number.isNaN(c)||(a.endsWith("pt")?e.fs=c:a.endsWith("px")&&(e.fs=M.pixelToPt(c)));break}case"font-style":{a==="italic"&&(e.it=i.BooleanNumber.TRUE);break}case"font-weight":{(Number(a)>400||String(a)==="bold")&&(e.bl=i.BooleanNumber.TRUE);break}case"text-decoration":{/underline/.test(a)?e.ul={s:i.BooleanNumber.TRUE}:/overline/.test(a)?e.ol={s:i.BooleanNumber.TRUE}:/line-through/.test(a)&&(e.st={s:i.BooleanNumber.TRUE});break}case"color":{try{const c=new i.ColorKit(a);c.isValid&&(e.cl={rgb:c.toRgbString()})}catch{}break}case"background-color":{const c=new i.ColorKit(a);c.isValid&&(e.bg={rgb:c.toRgbString()});break}}}return e}function Ha(o){const t=new DOMParser,e=`<x-univer id="univer-root">${o}</x-univer>`;return t.parseFromString(e,"text/html").querySelector("#univer-root")}function hr(o,t){const e=o.tagName.toLowerCase();return typeof t=="string"?e===t:Array.isArray(t)?t.some(n=>n===e):t(o)}const mr=660,sn=class sn{constructor(){x(this,"_tableCache",[]);x(this,"_styleCache",new Map);x(this,"_styleRules",[]);x(this,"_afterProcessRules",[])}static use(t){if(this._pluginList.includes(t))throw new Error(`Univer paste plugin ${t.name} already added`);this._pluginList.push(t)}convert(t,e={}){var c;const n=sn._pluginList.find(l=>l.checkPasteType(t)),r=Ha(t),a={body:{dataStream:"",paragraphs:[],sectionBreaks:[],tables:[],textRuns:[],customBlocks:[]},tableSource:{},id:(c=e==null?void 0:e.unitId)!=null?c:""};return n&&(this._styleRules=[...n.stylesRules],this._afterProcessRules=[...n.afterProcessRules]),this._tableCache=[],this._styleCache.clear(),this._process(null,r.childNodes,a),this._styleCache.clear(),this._styleRules=[],this._afterProcessRules=[],a}_process(t,e,n){var s,a,c,l;const r=n.body;for(const d of e)if(d.nodeType===Node.TEXT_NODE){if(((s=d.nodeValue)==null?void 0:s.trim())==="")continue;const A=(a=d.nodeValue)==null?void 0:a.replace(/[\r\n]/g,"");let u;t&&this._styleCache.has(t)&&(u=this._styleCache.get(t)),r.dataStream+=A,u&&Object.getOwnPropertyNames(u).length&&r.textRuns.push({st:r.dataStream.length-A.length,ed:r.dataStream.length,ts:u})}else if(d.nodeName==="IMG"){const A=d,u=A.dataset.imageSourceType,h=u===ao.ImageSourceType.UUID?A.dataset.source:A.src;if(h&&u){const g=Number(A.dataset.width||100),m=Number(A.dataset.height||100),p=Number(A.dataset.docTransformWidth||g),f=Number(A.dataset.docTransformHeight||m),S=i.Tools.generateRandomId(6);(l=(c=n.body)==null?void 0:c.customBlocks)==null||l.push({startIndex:r.dataStream.length,blockId:S}),r.dataStream+="\b",n.drawings||(n.drawings={}),n.drawings[S]={drawingId:S,title:"",description:"",imageSourceType:u,source:h,transform:{width:g,height:m,left:0},docTransform:{size:{width:p,height:f},angle:0,positionH:{relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.PARAGRAPH,posOffset:0}},layoutType:i.PositionedObjectLayoutType.INLINE,drawingType:i.DrawingTypeEnum.DRAWING_IMAGE,unitId:n.id||"",subUnitId:n.id||""}}}else{if(i.skipParseTagNames.includes(d.nodeName.toLowerCase()))continue;if(d.nodeType===Node.ELEMENT_NODE){const A=d,u=this._processBeforeLink(A,n),h=t?this._styleCache.get(t):{},g=this._styleRules.find(({filter:S})=>hr(d,S)),m=g?g.getStyle(d):Oo(d);this._styleCache.set(d,{...h,...m});const{childNodes:p}=d;this._processBeforeTable(d,n),this._process(d,p,n),this._processAfterTable(d,n);const f=this._afterProcessRules.find(({filter:S})=>hr(d,S));f&&f.handler(n,d),this._processAfterLink(A,n,u)}}}_processBeforeTable(t,e){var s;const n=t.tagName.toUpperCase(),r=e.body;switch(n){case"TABLE":{r.dataStream[r.dataStream.length-1]!=="\r"&&(r.dataStream+="\r",r.paragraphs==null&&(r.paragraphs=[]),(s=r.paragraphs)==null||s.push({startIndex:r.dataStream.length-1}));const a=Co(0,0,mr);this._tableCache.push({table:a,startIndex:r.dataStream.length}),r.dataStream+=i.DataStreamTreeTokenType.TABLE_START;break}case"TR":{const a=An(0);this._tableCache[this._tableCache.length-1].table.tableRows.push(a),r.dataStream+=i.DataStreamTreeTokenType.TABLE_ROW_START;break}case"TD":{const a=dn(),c=this._tableCache[this._tableCache.length-1].table;c.tableRows[c.tableRows.length-1].tableCells.push(a),r.dataStream+=i.DataStreamTreeTokenType.TABLE_CELL_START;break}}}_processAfterTable(t,e){var a,c;const n=t.tagName.toUpperCase(),r=e.body;e.tableSource==null&&(e.tableSource={}),r.tables==null&&(r.tables=[]),r.sectionBreaks==null&&(r.sectionBreaks=[]);const{tableSource:s}=e;switch(n){case"TABLE":{const l=this._tableCache.pop(),{startIndex:d,table:A}=l,u=A.tableRows[0].tableCells.length,h=un(mr/u),g=[...new Array(u).fill(null).map(()=>i.Tools.deepClone(h))];A.tableColumns=g,s[A.tableId]=A,r.dataStream+=i.DataStreamTreeTokenType.TABLE_END,r.tables.push({startIndex:d,endIndex:r.dataStream.length,tableId:A.tableId});break}case"TR":{r.dataStream+=i.DataStreamTreeTokenType.TABLE_ROW_END;break}case"TD":{r.dataStream[r.dataStream.length-1]!=="\r"&&((a=r.paragraphs)==null||a.push({startIndex:r.dataStream.length}),r.dataStream+="\r"),(c=r.sectionBreaks)==null||c.push({startIndex:r.dataStream.length}),r.dataStream+=`
38
+ ${i.DataStreamTreeTokenType.TABLE_CELL_END}`;break}}}_processBeforeLink(t,e){return e.body.dataStream.length}_processAfterLink(t,e,n){var a,c;const r=e.body,s=t;s.tagName.toUpperCase()==="A"&&(r.customRanges=(a=r.customRanges)!=null?a:[],r.customRanges.push({startIndex:n,endIndex:r.dataStream.length-1,rangeId:(c=s.dataset.rangeid)!=null?c:i.generateRandomId(),rangeType:i.CustomRangeType.HYPERLINK,properties:{url:s.href}}))}};x(sn,"_pluginList",[]);let tt=sn;const Vi={name:"univer-doc-paste-plugin-lark",checkPasteType(o){return/lark-record-clipboard/i.test(o)},stylesRules:[{filter:["s"],getStyle(o){const t=Oo(o);return{st:{s:i.BooleanNumber.TRUE},...t}}}],afterProcessRules:[{filter(o){return o.tagName==="DIV"&&/ace-line/i.test(o.className)},handler(o){const t=o.body;t.paragraphs==null&&(t.paragraphs=[]),t.paragraphs.push({startIndex:t.dataStream.length}),t.dataStream+="\r"}}]};function ji(o){const t=o.style,e={};for(let n=0;n<t.length;n++){const r=t[n],s=t.getPropertyValue(r);switch(r){case"margin-top":{const a=Number.parseInt(s);e.spaceAbove={v:/pt/.test(s)?M.ptToPixel(a):a};break}case"margin-bottom":{const a=Number.parseInt(s);e.spaceBelow={v:/pt/.test(s)?M.ptToPixel(a):a};break}case"line-height":{let a=Number.parseFloat(s);s.endsWith("%")&&(a/=100),e.lineSpacing=a;break}}}return Object.getOwnPropertyNames(e).length?e:null}const Wi={name:"univer-doc-paste-plugin-univer",checkPasteType(o){return/UniverNormal/i.test(o)},stylesRules:[],afterProcessRules:[{filter(o){return o.tagName==="P"&&/UniverNormal/i.test(o.className)},handler(o,t){const e=o.body;e.paragraphs==null&&(e.paragraphs=[]);const n={startIndex:e.dataStream.length},r=ji(t);r&&(n.paragraphStyle=r),e.paragraphs.push(n),e.dataStream+="\r"}}]},zi={name:"univer-doc-paste-plugin-word",checkPasteType(o){return/word|mso/i.test(o)},stylesRules:[{filter:["b"],getStyle(o){const t=Oo(o);return{bl:i.BooleanNumber.TRUE,...t}}}],afterProcessRules:[{filter(o){return o.tagName==="P"},handler(o,t){const e=o.body;e.paragraphs==null&&(e.paragraphs=[]);const n={startIndex:e.dataStream.length},r=ji(t);r&&(n.paragraphStyle=r),e.paragraphs.push(n),e.dataStream+="\r"}}]};function ka(o){var n,r;const t=s=>{let a="";return Object.keys(s).forEach(c=>{s[c]!==void 0&&(a+=` ${c}=${s[c]}`)}),a},e={"data-doc-transform-height":o.docTransform.size.height,"data-doc-transform-width":o.docTransform.size.width,"data-width":(n=o.transform)==null?void 0:n.width,"data-height":(r=o.transform)==null?void 0:r.height,"data-image-source-type":o.imageSourceType,"data-source":o.imageSourceType===ao.ImageSourceType.UUID?o.source:void 0,src:o.source};return`<img ${t(e)}></img>`}function pr(o,t){const{st:e,ed:n,ts:r={}}=t,{ff:s,fs:a,it:c,bl:l,ul:d,st:A,ol:u,bg:h,cl:g,va:m}=r;let p=o.slice(e,n);const f=[];return c===i.BooleanNumber.TRUE&&(p=`<i>${p}</i>`),m===i.BaselineOffset.SUPERSCRIPT?p=`<sup>${p}</sup>`:m===i.BaselineOffset.SUBSCRIPT&&(p=`<sub>${p}</sub>`),(d==null?void 0:d.s)===i.BooleanNumber.TRUE&&(p=`<u>${p}</u>`),(A==null?void 0:A.s)===i.BooleanNumber.TRUE&&(p=`<s>${p}</s>`),l===i.BooleanNumber.TRUE&&(p=`<strong>${p}</strong>`),s&&f.push(`font-family: ${s}`),g&&f.push(`color: ${g.rgb}`),a&&f.push(`font-size: ${a}pt`),u&&f.push("text-decoration: overline"),h&&f.push(`background: ${h.rgb}`),f.length?`<span style="${f.join("; ")};">${p}</span>`:p}function Pn(o,t,e){const{dataStream:n,textRuns:r=[]}=o;if(t===e)return"";let s=t;const a=[];for(const c of r){const{st:l,ed:d}=c;i.Tools.hasIntersectionBetweenTwoRanges(t,e,l,d)&&(l>s?(a.push(n.slice(s,l)),a.push(pr(n,{...c,ed:Math.min(d,e)}))):a.push(pr(n,{...c,st:s,ed:Math.min(d,e)}))),s=Math.max(t,Math.min(d,e))}return s!==e&&a.push(n.slice(s,e)),a.join("")}function Va(o,t,e){const n=o.body,r=o.drawings||{},{customRanges:s=[],customBlocks:a=[]}=n||{},c=[...a],l=s.filter(g=>g.startIndex>=t&&g.endIndex<=e);let d=t,A="";const u=(g,m)=>{let p="",f=0,S=g,v=c.findIndex(C=>g<=C.startIndex&&m>=C.startIndex);if(v===-1)return p=Pn(n,g,m),{sliceHtml:p,customBlockLength:f};for(;v!==-1;){const C=c[v];c.splice(v,1),p+=Pn(n,S,C.startIndex);const y=r[C.blockId];if(y)switch(y.drawingType){case i.DrawingTypeEnum.DRAWING_IMAGE:{p+=ka(y),f++;break}}S=C.startIndex+1,v=c.findIndex(b=>S<=b.startIndex&&m>=b.startIndex)}return p=p+Pn(n,S,m+1),{sliceHtml:p,customBlockLength:f}};l.forEach(g=>{var y,b;const{startIndex:m,endIndex:p,rangeType:f,rangeId:S}=g,v=u(d,m);A+=v.sliceHtml;const C=u(m,p+1);switch(f){case i.CustomRangeType.HYPERLINK:{A+=`<a data-rangeid="${S}" href="${(b=(y=g.properties)==null?void 0:y.url)!=null?b:""}">${C.sliceHtml}</a>`;break}default:{A+=C.sliceHtml;break}}d=p+1+(v.customBlockLength+C.customBlockLength)});const h=u(d,e);return A+=h.sliceHtml,A}function ja(o){const t=o.body||{},{paragraphs:e=[],sectionBreaks:n=[]}=t;let{dataStream:r=""}=t;r.endsWith(`\r
38
39
  `)||(r+=`\r
39
- `,e.push({startIndex:r.length-2}),n.push({startIndex:r.length-1}),t.dataStream=r,t.paragraphs=e,t.sectionBreaks=n);const s={html:""},a=M.parseDataStreamToTree(r).sectionList;for(const c of a)$e(c,o,s);return s.html}function $e(o,t,e){var n,r;switch(o.nodeType){case i.DataStreamTreeNodeType.SECTION_BREAK:{for(const s of o.children)$e(s,t,e);break}case i.DataStreamTreeNodeType.PARAGRAPH:{const{children:s,startIndex:a,endIndex:c}=o,l=(r=(n=t.body)==null?void 0:n.paragraphs.find(m=>m.startIndex===c))!=null?r:{},{paragraphStyle:d={}}=l,{spaceAbove:A,spaceBelow:u,lineSpacing:h}=d,g=[];if(A!=null&&(typeof A=="number"?g.push(`margin-top: ${A}px`):g.push(`margin-top: ${A.v}px`)),u!=null&&(typeof u=="number"?g.push(`margin-bottom: ${u}px`):g.push(`margin-bottom: ${u.v}px`)),h!=null&&g.push(`line-height: ${h}`),e.html+=`<p class="UniverNormal" ${g.length?`style="${g.join("; ")};"`:""}>`,s.length)for(const m of s)$e(m,t,e);e.html+=`${ja(t,a,c)}</p>`;break}case i.DataStreamTreeNodeType.TABLE:{const{children:s}=o;e.html+='<table class="UniverTable" style="width: 100%; border-collapse: collapse;"><tbody>';for(const a of s)$e(a,t,e);e.html+="</tbody></table>";break}case i.DataStreamTreeNodeType.TABLE_ROW:{const{children:s}=o;e.html+='<tr class="UniverTableRow">';for(const a of s)$e(a,t,e);e.html+="</tr>";break}case i.DataStreamTreeNodeType.TABLE_CELL:{const{children:s}=o;e.html+='<td class="UniverTableCell">';for(const a of s)$e(a,t,e);e.html+="</td>";break}default:throw new Error(`Unknown node type: ${o.nodeType}`)}}class za{convert(t){if(t.length===0)throw new Error("The bodyList length at least to be 1");let e="";for(const n of i.Tools.deepClone(t))e+=Wa(n);return e}}var Ga=Object.getOwnPropertyDescriptor,Xa=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ga(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},dt=(o,t)=>(e,n)=>t(e,n,o);tt.use(zi);tt.use(Vi);tt.use(Wi);function fr(o,t,e){var s,a,c;const n=i.getBodySlice(o,t,e+2),r=i.DataStreamTreeTokenType.TABLE_START+i.DataStreamTreeTokenType.TABLE_ROW_START+i.DataStreamTreeTokenType.TABLE_CELL_START+n.dataStream+i.DataStreamTreeTokenType.TABLE_CELL_END+i.DataStreamTreeTokenType.TABLE_ROW_END+i.DataStreamTreeTokenType.TABLE_END;return n.dataStream=r,(s=n.textRuns)==null||s.forEach(l=>{const{st:d,ed:A}=l;l.st=d+3,l.ed=A+3}),(a=n.tables)==null||a.forEach(l=>{const{startIndex:d,endIndex:A}=l;l.startIndex=d+3,l.endIndex=A+3}),(c=n.paragraphs)==null||c.forEach(l=>{const{startIndex:d}=l;l.startIndex=d+3}),n}const _e=i.createIdentifier("doc.clipboard-service");let qn=class extends i.Disposable{constructor(t,e,n,r,s){super();b(this,"_clipboardHooks",[]);b(this,"_htmlToUDM",new tt);b(this,"_umdToHtml",new za);this._univerInstanceService=t,this._logService=e,this._commandService=n,this._clipboardInterfaceService=r,this._docSelectionManagerService=s}async copy(t=i.SliceBodyType.copy,e){var c,l;const{newSnapshotList:n=[],needCache:r=!1,snapshot:s,ranges:a}=(c=this._getDocumentBodyInRanges(t,e))!=null?c:{};if(n.length===0||s==null)return!1;try{const d=!!((l=a==null?void 0:a[0])!=null&&l.segmentId);this._setClipboardData(n,!d&&r)}catch(d){return this._logService.error("[DocClipboardService] copy failed",d),!1}return!0}async cut(t){return this._cut(t)}async paste(t){const e=await this._genDocDataFromClipboardItems(t);return this._paste(e)}async legacyPaste(t){let{html:e,text:n,files:r}=t;const s=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=(s==null?void 0:s.getUnitId())||"";!e&&!n&&r.length&&(e=await this._createImagePasteHtml(r));const c=this._genDocDataFromHtmlAndText(e,n,a);if(a===i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)if(n){const l=i.BuildTextUtils.transform.fromPlainText(n);return this._paste({body:l})}else c.body.textRuns=[];return this._paste(c)}async _cut(t){var c,l,d,A,u;const e=(l=(c=t==null?void 0:t.filter(h=>h.rangeType===i.DOC_RANGE_TYPE.TEXT))!=null?c:this._docSelectionManagerService.getTextRanges())!=null?l:[],n=(A=(d=t==null?void 0:t.filter(h=>h.rangeType===i.DOC_RANGE_TYPE.RECT))!=null?d:this._docSelectionManagerService.getRectRanges())!=null?A:[],{segmentId:r,endOffset:s,style:a}=(u=e[0])!=null?u:{};if(r==null&&this._logService.error("[DocClipboardController] segmentId is not existed"),e.length===0&&n.length===0)return!1;this.copy(i.SliceBodyType.cut,t);try{let h=0;if(n.length>0)h=hn(e,n);else if(s!=null){h=s;for(const m of e){const{startOffset:p,endOffset:f}=m;p==null||f==null||f<=s&&(h-=f-p)}}const g=[{startOffset:h,endOffset:h,style:a}];return this._commandService.executeCommand(We.id,{segmentId:r,textRanges:g,rectRanges:n,selections:e})}catch{return this._logService.error("[DocClipboardController] cut content failed"),!1}}async _paste(t){var A,u;const{body:e}=t;if(e==null)return!1;let n=i.normalizeBody(e);if(!((A=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC))==null?void 0:A.getUnitId()))return!1;this._clipboardHooks.forEach(h=>{h.onBeforePaste&&(n=h.onBeforePaste(n))}),n.customRanges=(u=n.customRanges)==null?void 0:u.map(i.BuildTextUtils.customRange.copyCustomRange);const s=this._docSelectionManagerService.getActiveTextRange(),{segmentId:a,endOffset:c,style:l}=s||{},d=this._docSelectionManagerService.getTextRanges();if(a==null&&this._logService.error("[DocClipboardController] segmentId does not exist!"),c==null||d==null)return!1;try{let h=c;for(const m of d){const{startOffset:p,endOffset:f}=m;p==null||f==null||f<=c&&(h+=n.dataStream.length-(f-p))}const g=[{startOffset:h,endOffset:h,style:l}];return this._commandService.executeCommand(To.id,{doc:{...t,body:n},segmentId:a,textRanges:g})}catch{return this._logService.error("[DocClipboardController]","clipboard is empty."),!1}}async _setClipboardData(t,e=!0){var a,c,l,d;const n=Qa(),r=(t.length>1?t.map(A=>{var u;return((u=A.body)==null?void 0:u.dataStream)||""}).join(`
40
+ `,e.push({startIndex:r.length-2}),n.push({startIndex:r.length-1}),t.dataStream=r,t.paragraphs=e,t.sectionBreaks=n);const s={html:""},a=M.parseDataStreamToTree(r).sectionList;for(const c of a)$e(c,o,s);return s.html}function $e(o,t,e){var n,r;switch(o.nodeType){case i.DataStreamTreeNodeType.SECTION_BREAK:{for(const s of o.children)$e(s,t,e);break}case i.DataStreamTreeNodeType.PARAGRAPH:{const{children:s,startIndex:a,endIndex:c}=o,l=(r=(n=t.body)==null?void 0:n.paragraphs.find(m=>m.startIndex===c))!=null?r:{},{paragraphStyle:d={}}=l,{spaceAbove:A,spaceBelow:u,lineSpacing:h}=d,g=[];if(A!=null&&(typeof A=="number"?g.push(`margin-top: ${A}px`):g.push(`margin-top: ${A.v}px`)),u!=null&&(typeof u=="number"?g.push(`margin-bottom: ${u}px`):g.push(`margin-bottom: ${u.v}px`)),h!=null&&g.push(`line-height: ${h}`),e.html+=`<p class="UniverNormal" ${g.length?`style="${g.join("; ")};"`:""}>`,s.length)for(const m of s)$e(m,t,e);e.html+=`${Va(t,a,c)}</p>`;break}case i.DataStreamTreeNodeType.TABLE:{const{children:s}=o;e.html+='<table class="UniverTable" style="width: 100%; border-collapse: collapse;"><tbody>';for(const a of s)$e(a,t,e);e.html+="</tbody></table>";break}case i.DataStreamTreeNodeType.TABLE_ROW:{const{children:s}=o;e.html+='<tr class="UniverTableRow">';for(const a of s)$e(a,t,e);e.html+="</tr>";break}case i.DataStreamTreeNodeType.TABLE_CELL:{const{children:s}=o;e.html+='<td class="UniverTableCell">';for(const a of s)$e(a,t,e);e.html+="</td>";break}default:throw new Error(`Unknown node type: ${o.nodeType}`)}}class Wa{convert(t){if(t.length===0)throw new Error("The bodyList length at least to be 1");let e="";for(const n of i.Tools.deepClone(t))e+=ja(n);return e}}var za=Object.getOwnPropertyDescriptor,Ga=(o,t,e,n)=>{for(var r=n>1?void 0:n?za(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},dt=(o,t)=>(e,n)=>t(e,n,o);tt.use(zi);tt.use(Vi);tt.use(Wi);function fr(o,t,e){var s,a,c;const n=i.getBodySlice(o,t,e+2),r=i.DataStreamTreeTokenType.TABLE_START+i.DataStreamTreeTokenType.TABLE_ROW_START+i.DataStreamTreeTokenType.TABLE_CELL_START+n.dataStream+i.DataStreamTreeTokenType.TABLE_CELL_END+i.DataStreamTreeTokenType.TABLE_ROW_END+i.DataStreamTreeTokenType.TABLE_END;return n.dataStream=r,(s=n.textRuns)==null||s.forEach(l=>{const{st:d,ed:A}=l;l.st=d+3,l.ed=A+3}),(a=n.tables)==null||a.forEach(l=>{const{startIndex:d,endIndex:A}=l;l.startIndex=d+3,l.endIndex=A+3}),(c=n.paragraphs)==null||c.forEach(l=>{const{startIndex:d}=l;l.startIndex=d+3}),n}const _e=i.createIdentifier("doc.clipboard-service");let qn=class extends i.Disposable{constructor(t,e,n,r,s){super();x(this,"_clipboardHooks",[]);x(this,"_htmlToUDM",new tt);x(this,"_umdToHtml",new Wa);this._univerInstanceService=t,this._logService=e,this._commandService=n,this._clipboardInterfaceService=r,this._docSelectionManagerService=s}async copy(t=i.SliceBodyType.copy,e){var c,l;const{newSnapshotList:n=[],needCache:r=!1,snapshot:s,ranges:a}=(c=this._getDocumentBodyInRanges(t,e))!=null?c:{};if(n.length===0||s==null)return!1;try{const d=!!((l=a==null?void 0:a[0])!=null&&l.segmentId);this._setClipboardData(n,!d&&r)}catch(d){return this._logService.error("[DocClipboardService] copy failed",d),!1}return!0}async cut(t){return this._cut(t)}async paste(t){const e=await this._genDocDataFromClipboardItems(t);return this._paste(e)}async legacyPaste(t){let{html:e,text:n,files:r}=t;const s=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=(s==null?void 0:s.getUnitId())||"";!e&&!n&&r.length&&(e=await this._createImagePasteHtml(r));const c=this._genDocDataFromHtmlAndText(e,n,a);if(a===i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)if(n){const l=i.BuildTextUtils.transform.fromPlainText(n);return this._paste({body:l})}else c.body.textRuns=[];return this._paste(c)}async _cut(t){var c,l,d,A,u;const e=(l=(c=t==null?void 0:t.filter(h=>h.rangeType===i.DOC_RANGE_TYPE.TEXT))!=null?c:this._docSelectionManagerService.getTextRanges())!=null?l:[],n=(A=(d=t==null?void 0:t.filter(h=>h.rangeType===i.DOC_RANGE_TYPE.RECT))!=null?d:this._docSelectionManagerService.getRectRanges())!=null?A:[],{segmentId:r,endOffset:s,style:a}=(u=e[0])!=null?u:{};if(r==null&&this._logService.error("[DocClipboardController] segmentId is not existed"),e.length===0&&n.length===0)return!1;this.copy(i.SliceBodyType.cut,t);try{let h=0;if(n.length>0)h=mn(e,n);else if(s!=null){h=s;for(const m of e){const{startOffset:p,endOffset:f}=m;p==null||f==null||f<=s&&(h-=f-p)}}const g=[{startOffset:h,endOffset:h,style:a}];return this._commandService.executeCommand(We.id,{segmentId:r,textRanges:g,rectRanges:n,selections:e})}catch{return this._logService.error("[DocClipboardController] cut content failed"),!1}}async _paste(t){var A,u;const{body:e}=t;if(e==null)return!1;let n=i.normalizeBody(e);if(!((A=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC))==null?void 0:A.getUnitId()))return!1;this._clipboardHooks.forEach(h=>{h.onBeforePaste&&(n=h.onBeforePaste(n))}),n.customRanges=(u=n.customRanges)==null?void 0:u.map(i.BuildTextUtils.customRange.copyCustomRange);const s=this._docSelectionManagerService.getActiveTextRange(),{segmentId:a,endOffset:c,style:l}=s||{},d=this._docSelectionManagerService.getTextRanges();if(a==null&&this._logService.error("[DocClipboardController] segmentId does not exist!"),c==null||d==null)return!1;try{let h=c;for(const m of d){const{startOffset:p,endOffset:f}=m;p==null||f==null||f<=c&&(h+=n.dataStream.length-(f-p))}const g=[{startOffset:h,endOffset:h,style:l}];return this._commandService.executeCommand(To.id,{doc:{...t,body:n},segmentId:a,textRanges:g})}catch{return this._logService.error("[DocClipboardController]","clipboard is empty."),!1}}async _setClipboardData(t,e=!0){var a,c,l,d;const n=La(),r=(t.length>1?t.map(A=>{var u;return((u=A.body)==null?void 0:u.dataStream)||""}).join(`
40
41
  `):((a=t[0].body)==null?void 0:a.dataStream)||"").replaceAll(i.DataStreamTreeTokenType.TABLE_START,"").replaceAll(i.DataStreamTreeTokenType.TABLE_END,"").replaceAll(i.DataStreamTreeTokenType.TABLE_ROW_START,"").replaceAll(i.DataStreamTreeTokenType.TABLE_ROW_END,"").replaceAll(i.DataStreamTreeTokenType.TABLE_CELL_START,"").replaceAll(i.DataStreamTreeTokenType.TABLE_CELL_END,"").replaceAll(`\r
41
- `," ");let s=this._umdToHtml.convert(t);if(t.length===1&&e){s=s.replace(/(<[a-z]+)/,(h,g)=>`${g} data-copy-id="${n}"`);const A=t[0],u={body:A.body};if((l=(c=A.body)==null?void 0:c.customBlocks)!=null&&l.length){u.drawings={};for(const h of A.body.customBlocks){const{blockId:g}=h,m=(d=A.drawings)==null?void 0:d[g];if(m){const p=i.Tools.generateRandomId(6);h.blockId=p,u.drawings[p]={...i.Tools.deepClone(m),drawingId:p}}}}Nn.set(n,u)}return this._clipboardInterfaceService.write(r,s)}addClipboardHook(t){return this._clipboardHooks.push(t),i.toDisposable(()=>{const e=this._clipboardHooks.indexOf(t);e>-1&&this._clipboardHooks.splice(e,1)})}_getDocumentBodyInRanges(t,e){var A;const n=this._univerInstanceService.getCurrentUniverDocInstance(),r=e!=null?e:this._docSelectionManagerService.getDocRanges(),s=[];let a=!0;if(n==null||r.length===0)return;const c=r[0].segmentId,l=(A=n==null?void 0:n.getSelfOrHeaderFooterModel(c))==null?void 0:A.getBody(),d=n.getSnapshot();if(l!=null){for(const u of r){const{startOffset:h,endOffset:g,collapsed:m,rangeType:p}=u;if(m||h==null||g==null)continue;if(p===i.DOC_RANGE_TYPE.RECT){a=!1;const{spanEntireRow:v}=u;let E;E=fr(l,h,g),s.push(E);continue}const f={startOffset:h,endOffset:g},S=n.getSelfOrHeaderFooterModel(c).sliceBody(f.startOffset,f.endOffset,t);S!=null&&s.push(S)}return{newSnapshotList:s.map(u=>({...d,body:u})),needCache:a,snapshot:d,ranges:r}}}async _genDocDataFromClipboardItems(t){try{let e="",n="";const r=[];for(const s of t)for(const a of s.types)switch(a){case I.PLAIN_TEXT_CLIPBOARD_MIME_TYPE:{n=await s.getType(a).then(c=>c&&c.text());break}case I.HTML_CLIPBOARD_MIME_TYPE:{e=await s.getType(a).then(c=>c&&c.text());break}case I.FILE__BMP_CLIPBOARD_MIME_TYPE:case I.FILE__JPEG_CLIPBOARD_MIME_TYPE:case I.FILE__WEBP_CLIPBOARD_MIME_TYPE:case I.FILE_PNG_CLIPBOARD_MIME_TYPE:{const c=await s.getType(a),l=new File([c],`pasted_image.${a.split("/")[1]}`,{type:a});r.push(l);break}}return!e&&!n&&r.length&&(e=await this._createImagePasteHtml(r)),this._genDocDataFromHtmlAndText(e,n)}catch(e){return Promise.reject(e)}}_genDocDataFromHtmlAndText(t,e,n){if(!t){if(e)return{body:i.BuildTextUtils.transform.fromPlainText(e)};throw new Error("[DocClipboardService] html and text cannot be both empty!")}const r=Fa(t);if(r){const a=Nn.get(r);if(a)return a}if(!n){const a=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);n=(a==null?void 0:a.getUnitId())||""}const s=this._htmlToUDM.convert(t,{unitId:n});return r&&Nn.set(r,s),s}async _createImagePasteHtml(t){var c,l;const e={id:"",documentStyle:{},body:{dataStream:"",customBlocks:[]},drawings:{}},n=async d=>{const A=new FileReader;return new Promise(u=>{A.onloadend=function(){u({source:A.result,imageSourceType:ao.ImageSourceType.BASE64})},A.readAsDataURL(d)})},r=d=>{const A=new Image,u=500;return new Promise(h=>{A.src=typeof d=="string"?d:URL.createObjectURL(d),A.onload=()=>{const g=Math.min(u,A.naturalWidth),m=A.naturalHeight/A.naturalWidth;h({width:g,height:g*m})}})},s=(l=(c=this._clipboardHooks.find(d=>d.onBeforePasteImage))==null?void 0:c.onBeforePasteImage)!=null?l:n;return await Promise.all(t.map(async(d,A)=>{var S;const u=await s(d);if(!u)return Promise.resolve();const{width:h=100,height:g=100}=await r(d),m=`paste_image_id_${A}`,p=e.body,f=e.drawings;p.dataStream+="\b",(S=p.customBlocks)==null||S.push({startIndex:A,blockId:m}),f[m]={drawingId:m,unitId:"",subUnitId:"",imageSourceType:u.imageSourceType,title:"",source:u.source,description:"",layoutType:i.PositionedObjectLayoutType.INLINE,drawingType:i.DrawingTypeEnum.DRAWING_IMAGE,transform:{width:h,height:g,angle:0},docTransform:{angle:0,size:{width:h,height:g},positionH:{relativeFrom:i.ObjectRelativeFromH.CHARACTER,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.LINE,posOffset:0}}}})),this._umdToHtml.convert([e])}};qn=Xa([dt(0,i.IUniverInstanceService),dt(1,i.ILogService),dt(2,i.ICommandService),dt(3,I.IClipboardInterfaceService),dt(4,i.Inject(D.DocSelectionManagerService))],qn);function mn(o){var a,c;const t=o.get(i.IUniverInstanceService),n=o.get(D.DocSelectionManagerService).getActiveTextRange(),r=t.getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);return!n||!n.collapsed||!r||n.segmentId?!1:i.BuildTextUtils.range.getParagraphsInRange(n,(c=(a=r.getBody())==null?void 0:a.paragraphs)!=null?c:[])[0]}function pn(o){return o.getContextValue(i.FOCUSING_DOC)||o.getContextValue(i.EDITOR_ACTIVATED)}const Mo=999,Et={id:I.CopyCommand.id,name:"doc.command.copy",type:i.CommandType.COMMAND,multi:!0,priority:Mo,preconditions:pn,handler:async o=>o.get(_e).copy()},Do={id:"doc.command.copy-current-paragraph",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(_e),e=mn(o);return e?t.copy(i.SliceBodyType.copy,[{startOffset:e.paragraphStart,endOffset:e.paragraphEnd+1,collapsed:!1}]):!1}},fn={id:I.CutCommand.id,name:"doc.command.cut",type:i.CommandType.COMMAND,multi:!0,priority:Mo,preconditions:pn,handler:async o=>o.get(_e).cut()},Bo={id:"doc.command.cut-current-paragraph",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(_e),e=mn(o);return e?t.cut([{startOffset:e.paragraphStart,endOffset:e.paragraphEnd+1,collapsed:!1,rangeType:i.DOC_RANGE_TYPE.TEXT}]):!1}},Sn={id:I.PasteCommand.id,name:"doc.command.paste",type:i.CommandType.COMMAND,multi:!0,priority:Mo,preconditions:pn,handler:async o=>{const t=o.get(_e),n=await o.get(I.IClipboardInterfaceService).read();return n.length===0?!1:t.paste(n)}};var Ka=Object.getOwnPropertyDescriptor,Ya=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ka(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Un=(o,t)=>(e,n)=>t(e,n,o);const qa=11,Ja=9,Ut={ff:"Arial",fs:qa};let Te=class extends i.Disposable{constructor(t,e,n){super();b(this,"_cacheStyle",null);this._textSelectionManagerService=t,this._univerInstanceService=e,this._renderManagerService=n,this._init()}_init(){this._listenDocRangeChange()}_listenDocRangeChange(){this.disposeWithMe(this._textSelectionManagerService.textSelection$.subscribe(()=>{this._clearStyleCache()}))}getStyleCache(){return this._cacheStyle}getDefaultStyle(){var a;const t=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(t==null)return{...Ut};const e=t==null?void 0:t.getUnitId(),n=(a=this._renderManagerService.getRenderById(e))==null?void 0:a.with(D.DocSkeletonManagerService),r=n==null?void 0:n.getViewModel();return r==null?{...Ut}:r.getEditArea()===M.DocumentEditArea.BODY?{...Ut}:{...Ut,fs:Ja}}setStyleCache(t){this._cacheStyle={...this._cacheStyle,...t}}_clearStyleCache(){this._cacheStyle=null}};Te=Ya([Un(0,i.Inject(D.DocSelectionManagerService)),Un(1,i.IUniverInstanceService),Un(2,M.IRenderManagerService)],Te);function _o(o,t,e){const n=[];for(let r=0,s=o.length;r<s;r++)o[r]===i.DataStreamTreeTokenType.PARAGRAPH&&n.push({startIndex:r});if(t)for(const r of n)t.bullet&&(r.bullet=i.Tools.deepClone(t.bullet)),t.paragraphStyle&&(r.paragraphStyle=i.Tools.deepClone(t.paragraphStyle),delete r.paragraphStyle.borderBottom,t.paragraphStyle.headingId&&(r.paragraphStyle.headingId=i.generateRandomId(6)));if(e)for(const r of n)r.paragraphStyle||(r.paragraphStyle={}),r.paragraphStyle.borderBottom=e;return n}const In={id:"doc.command.break-line",type:i.CommandType.COMMAND,handler:(o,t)=>{var L,W,z,j,k;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=o.get(Te),a=(L=t==null?void 0:t.textRange)!=null?L:e.getActiveTextRange(),c=e.getRectRanges();if(a==null)return!1;if(c&&c.length){const{startOffset:V}=a;return e.replaceDocRanges([{startOffset:V,endOffset:V}]),!0}const{horizontalLine:l}=t!=null?t:{},{segmentId:d}=a,A=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(d!=null?d:"").getBody();if(A==null||u==null)return!1;const h=A.getUnitId(),{startOffset:g,endOffset:m}=a,f=((W=u.paragraphs)!=null?W:[]).find(V=>V.startIndex>=g);if(!f)return!1;const S=g===f.startIndex,v=f.startIndex,E=s.getDefaultStyle(),T=s.getStyleCache(),R=sn(u,m,E,T),C={dataStream:i.DataStreamTreeTokenType.PARAGRAPH,paragraphs:_o(i.DataStreamTreeTokenType.PARAGRAPH,f,l),textRuns:[{st:0,ed:1,ts:{...R.ts}}]};if(A==null)return!1;const x=e.getActiveTextRange();if(u==null)return!1;const{collapsed:B}=a,y=C.dataStream.length,P=[{startOffset:g+y,endOffset:g+y,style:x==null?void 0:x.style,collapsed:B}],O={id:D.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:P,debounce:!0}},_=new i.TextX,F=i.JSONX.getInstance();if(B)g>0&&_.push({t:i.TextXActionType.RETAIN,len:g}),_.push({t:i.TextXActionType.INSERT,body:C,len:C.dataStream.length});else{const V=i.BuildTextUtils.selection.delete([a],u,0,C);_.push(...V)}(((z=f.bullet)==null?void 0:z.listType)===i.PresetListType.CHECK_LIST_CHECKED||(j=f.paragraphStyle)!=null&&j.headingId)&&(a.endOffset<v&&_.push({t:i.TextXActionType.RETAIN,len:v-a.endOffset}),_.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...f,paragraphStyle:{...f.paragraphStyle,...S?{headingId:void 0,namedStyleType:void 0}:null},startIndex:0,bullet:(k=f.paragraphStyle)!=null&&k.headingId?void 0:{...f.bullet,listType:i.PresetListType.CHECK_LIST}}]},coverType:i.UpdateDocsAttributeType.REPLACE})),O.params.textRanges=[{startOffset:g+y,endOffset:g+y,collapsed:B}];const H=J(A,d);return O.params.actions=F.editOp(_.serialize(),H),!!r.syncExecuteCommand(O.id,O.params)}},bt={id:"doc.command.horizontal-line",type:i.CommandType.COMMAND,handler:(o,t)=>o.get(i.ICommandService).syncExecuteCommand(In.id,{horizontalLine:{padding:5,color:{rgb:"#CDD0D8"},width:1,dashStyle:i.DashStyleType.SOLID},textRange:t==null?void 0:t.insertRange})},No={id:"doc.command.insert-horizontal-line-bellow",type:i.CommandType.COMMAND,handler:o=>{const t=o.get(i.ICommandService),e=mn(o);return e?t.syncExecuteCommand(bt.id,{insertRange:{startOffset:e.startIndex+1,endOffset:e.startIndex+1}}):!1}};function ue(o,t,e){return e.executeCommand(Re.id,{preCommandId:o,...t!=null?t:{}})}const Sr="doc.command.set-inline-format-bold",Ne={id:Sr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Sr,t,e)}},Ir="doc.command.set-inline-format-italic",Pe={id:Ir,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Ir,t,e)}},vr="doc.command.set-inline-format-underline",Ue={id:vr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(vr,t,e)}},Er="doc.command.set-inline-format-strikethrough",we={id:Er,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Er,t,e)}},Cr="doc.command.set-inline-format-subscript",ye={id:Cr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Cr,t,e)}},Tr="doc.command.set-inline-format-superscript",Le={id:Tr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Tr,t,e)}},yr="doc.command.set-inline-format-fontsize",me={id:yr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(yr,t,e)}},Rr="doc.command.set-inline-format-font-family",Me={id:Rr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Rr,t,e)}},br="doc.command.set-inline-format-text-color",De={id:br,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(br,t,e)}},xr="doc.command.set-inline-format-text-background-color",Be={id:xr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(xr,t,e)}},Or="doc.command.reset-inline-format-text-background-color",at={id:Or,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Or,t,e)}},Jn={[Ne.id]:"bl",[Pe.id]:"it",[Ue.id]:"ul",[we.id]:"st",[me.id]:"fs",[Me.id]:"ff",[De.id]:"cl",[Be.id]:"bg",[at.id]:"bg",[ye.id]:"va",[Le.id]:"va"},Re={id:"doc.command.set-inline-format",type:i.CommandType.COMMAND,handler:async(o,t)=>{var R;const{value:e,preCommandId:n}=t,r=o.get(i.ICommandService),s=o.get(D.DocSelectionManagerService),a=o.get(i.IUniverInstanceService),c=o.get(Te),l=s.getDocRanges(),d=(R=l.find(C=>C.isActive))!=null?R:l[0];if(l.length===0)return!1;const{segmentId:A}=l[0],u=a.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(u==null)return!1;const h=u.getSelfOrHeaderFooterModel(A).getBody();if(h==null)return!1;const g=u.getUnitId();let m;switch(n){case Ne.id:case Pe.id:case Ue.id:case we.id:case ye.id:case Le.id:{const C=c.getDefaultStyle(),x=Xi(h,d,C);m=$a(x,n);break}case me.id:case Me.id:{m=e;break}case De.id:case Be.id:{m={rgb:e};break}case at.id:{m={rgb:null};break}default:throw new Error(`Unknown command: ${n} in handleInlineFormat`)}const p={id:D.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:l}},f=new i.TextX,S=i.JSONX.getInstance(),v=new i.MemoryCursor;v.reset();for(const C of l){let{startOffset:x,endOffset:B,rangeType:y}=C;if(x==null||B==null)continue;if(y===i.DOC_RANGE_TYPE.RECT&&(x=x-1),x===B){const _=c.getStyleCache(),F=Jn[n];c.setStyleCache({[F]:(_==null?void 0:_[F])!==void 0?Gi(_,F,n):m});continue}const P={dataStream:"",textRuns:[{st:0,ed:B-x,ts:{[Jn[n]]:m}}]},O=x-v.cursor;O!==0&&f.push({t:i.TextXActionType.RETAIN,len:O}),f.push({t:i.TextXActionType.RETAIN,body:P,len:B-x}),v.reset(),v.moveCursor(B)}const E=J(u,A);return p.params.actions=S.editOp(f.serialize(),E),!!r.syncExecuteCommand(p.id,p.params)}};function Za(o){return o!==null&&typeof o=="object"}function Gi(o,t,e){if(/bl|it/.test(t))return(o==null?void 0:o[t])===i.BooleanNumber.TRUE?i.BooleanNumber.FALSE:i.BooleanNumber.TRUE;if(/ul|st/.test(t))return Za(o==null?void 0:o[t])&&(o==null?void 0:o[t]).s===i.BooleanNumber.TRUE?{s:i.BooleanNumber.FALSE}:{s:i.BooleanNumber.TRUE};if(/va/.test(t))return e===ye.id?(o==null?void 0:o[t])===i.BaselineOffset.SUBSCRIPT?i.BaselineOffset.NORMAL:i.BaselineOffset.SUBSCRIPT:(o==null?void 0:o[t])===i.BaselineOffset.SUPERSCRIPT?i.BaselineOffset.NORMAL:i.BaselineOffset.SUPERSCRIPT}function Xi(o,t,e){var A,u,h,g,m,p,f,S,v,E,T,R,C,x;const{startOffset:n,endOffset:r,collapsed:s}=t;if(s){const B=(A=o.textRuns)!=null?A:[];let y=null;for(let P=B.length-1;P>=0;P--){const O=B[P];if(O.st<n&&n<=O.ed){y=O;break}}return y!=null&&y.ts?{...e,...y.ts}:e}const{textRuns:a=[]}=i.getBodySlice(o,n,r),c=i.Tools.deepClone(e),l=a.map(B=>{var y;return(y=B==null?void 0:B.ts)==null?void 0:y.fs}).filter(Boolean);c.fs=c.fs?Math.max(c.fs,...l):l.length?Math.max(...l):void 0,c.fs=!c.fs||Number.isNaN(c.fs)?void 0:c.fs,c.ff=(g=(h=(u=a.find(B=>{var y;return((y=B.ts)==null?void 0:y.ff)!=null}))==null?void 0:u.ts)==null?void 0:h.ff)!=null?g:c.ff,c.it=a.length&&a.every(B=>{var y;return((y=B.ts)==null?void 0:y.it)===i.BooleanNumber.TRUE})?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE,c.bl=a.length&&a.every(B=>{var y;return((y=B.ts)==null?void 0:y.bl)===i.BooleanNumber.TRUE})?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE,c.ul=a.length&&a.every(B=>{var y,P;return((P=(y=B.ts)==null?void 0:y.ul)==null?void 0:P.s)===i.BooleanNumber.TRUE})?(m=a[0].ts)==null?void 0:m.ul:c.ul,c.st=a.length&&a.every(B=>{var y,P;return((P=(y=B.ts)==null?void 0:y.st)==null?void 0:P.s)===i.BooleanNumber.TRUE})?(p=a[0].ts)==null?void 0:p.st:c.st,c.bg=(v=(S=(f=a.find(B=>{var y;return((y=B.ts)==null?void 0:y.bg)!=null}))==null?void 0:f.ts)==null?void 0:S.bg)!=null?v:c.bg,c.cl=(R=(T=(E=a.find(B=>{var y;return((y=B.ts)==null?void 0:y.cl)!=null}))==null?void 0:E.ts)==null?void 0:T.cl)!=null?R:c.cl;const d=a.filter(B=>{var y;return((y=B==null?void 0:B.ts)==null?void 0:y.va)!=null});if(d.length>0&&d.length===a.length){const B=(C=d[0].ts)==null?void 0:C.va;let y=!0;for(let P=1;P<d.length;P++)if(((x=d[P].ts)==null?void 0:x.va)!==B){y=!1;break}y&&(c.va=B)}return c}function $a(o,t){const e=Jn[t];return Gi(o,e,t)}const ct={id:"doc.command.list-operation",type:i.CommandType.COMMAND,handler:(o,t)=>{var v,E,T;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=t.listType,a=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=(E=(v=t.docRange)!=null?v:e.getDocRanges())!=null?E:[];if(a==null||c.length===0)return!1;const l=c[0].segmentId,d=(T=a.getSelfOrHeaderFooterModel(l).getBody())==null?void 0:T.paragraphs;if(d==null)return!1;const A=i.BuildTextUtils.range.getParagraphsInRanges(c,d),u=a.getUnitId(),h={id:D.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:c,isEditing:!1}};new i.MemoryCursor().reset();const m=i.BuildTextUtils.paragraph.bullet.switch({paragraphs:A,listType:s,document:a,segmentId:l}),p=i.JSONX.getInstance(),f=J(a,l);return h.params.actions=p.editOp(m.serialize(),f),!!r.syncExecuteCommand(h.id,h.params)}},xt={id:"doc.command.change-list-type",type:i.CommandType.COMMAND,handler:(o,t)=>{var S,v;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),{listType:s}=t,a=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=(S=t.docRange)!=null?S:e.getDocRanges();if(a==null||c==null||!c.length)return!1;const{segmentId:l}=c[0],d=(v=a.getSelfOrHeaderFooterModel(l).getBody())==null?void 0:v.paragraphs;if(d==null)return!1;const A=i.BuildTextUtils.range.getParagraphsInRanges(c,d),u=a.getUnitId(),h=i.BuildTextUtils.paragraph.bullet.set({paragraphs:A,listType:s,segmentId:l,document:a});if(!h)return!1;const g=i.JSONX.getInstance(),m={id:D.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:c,isEditing:!1}},p=J(a,l);return m.params.actions=g.editOp(h.serialize(),p),!!r.syncExecuteCommand(m.id,m.params)}};var It=(o=>(o[o.increase=1]="increase",o[o.decrease=-1]="decrease",o))(It||{});const Kt={id:"doc.command.change-list-nesting-level",type:i.CommandType.COMMAND,handler:(o,t)=>{var v,E;if(!t)return!1;const{type:e}=t,n=o.get(D.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=r.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=n.getActiveTextRange();if(a==null||c==null)return!1;const{segmentId:l}=c,d=(v=n.getDocRanges())!=null?v:[],A=(E=a.getSelfOrHeaderFooterModel(l).getBody())==null?void 0:E.paragraphs;if(A==null)return!1;const u=i.BuildTextUtils.range.getParagraphsInRange(c,A),h=a.getUnitId(),g=i.JSONX.getInstance(),m=i.BuildTextUtils.paragraph.bullet.changeNestLevel({paragraphs:u,type:e,segmentId:l,document:a}),p={id:D.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:d,isEditing:!1}},f=J(a,l);return p.params.actions=g.editOp(m.serialize(),f),!!s.syncExecuteCommand(p.id,p.params)}},nt={id:"doc.command.bullet-list",type:i.CommandType.COMMAND,handler:(o,t)=>{const e=o.get(i.ICommandService);return t!=null&&t.value?e.syncExecuteCommand(xt.id,{listType:t.value,docRange:t.docRange}):e.syncExecuteCommand(ct.id,{listType:i.PresetListType.BULLET_LIST,docRange:t==null?void 0:t.docRange})}},Ct={id:"doc.command.check-list",type:i.CommandType.COMMAND,handler:(o,t)=>{const e=o.get(i.ICommandService);return t!=null&&t.value?e.syncExecuteCommand(xt.id,{listType:t.value,docRange:t.docRange}):e.syncExecuteCommand(ct.id,{listType:i.PresetListType.CHECK_LIST,docRange:t==null?void 0:t.docRange})}},Po={id:"doc.command.toggle-check-list",type:i.CommandType.COMMAND,handler:(o,t)=>{var p;if(!t)return!1;const e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),{index:r,segmentId:s,textRanges:a}=t,c=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(c==null||((p=c.getSelfOrHeaderFooterModel(s).getBody())==null?void 0:p.paragraphs)==null)return!1;const d=c.getUnitId(),A={id:D.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:a!=null?a:[],segmentId:s,isEditing:!1}},u=i.BuildTextUtils.paragraph.bullet.toggleChecklist({document:c,paragraphIndex:r,segmentId:s});if(!u)return!1;const h=i.JSONX.getInstance(),g=J(c,s);return A.params.actions=h.editOp(u.serialize(),g),!!n.syncExecuteCommand(A.id,A.params)}},ot={id:"doc.command.order-list",type:i.CommandType.COMMAND,handler:(o,t)=>{const e=o.get(i.ICommandService);return t!=null&&t.value?e.syncExecuteCommand(xt.id,{listType:t.value}):e.syncExecuteCommand(ct.id,{listType:i.PresetListType.ORDER_LIST})}},Uo={id:"doc.command.quick-list",type:i.CommandType.COMMAND,handler(o,t){var X,K,Y,G,q;if(!t)return!1;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=e.getActiveTextRange();if(s==null||a==null)return!1;const{segmentId:c,startOffset:l}=a,{listType:d,paragraph:A}=t,{paragraphStart:u,paragraphEnd:h}=A,g=new i.TextX,m=i.JSONX.getInstance(),{defaultTabStop:p=36}=s.getSnapshot().documentStyle,f=(K=(X=s.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:X.sectionBreaks)!=null?K:[],{startIndex:S,paragraphStyle:v={}}=A,{indentFirstLine:E,snapToGrid:T,indentStart:R}=v,C=i.PRESET_LIST_TYPE[d].nestingLevel[0].paragraphProperties||{},{hanging:x,indentStart:B}=C,y=C.textStyle,{charSpace:P,gridType:O}=ec(S,f)||{charSpace:0,gridType:i.GridType.LINES},_=M.getCharSpaceApply(P,p,O,T);let H=i.Tools.generateRandomId(6);const U=(G=(Y=s.getBody())==null?void 0:Y.paragraphs)!=null?G:[],L=U.findIndex(ee=>ee.startIndex===A.startIndex),W=U[L-1],z=U[L+1];W&&W.bullet&&W.bullet.listType.indexOf(d)===0?H=W.bullet.listId:z&&z.bullet&&z.bullet.listType.indexOf(d)===0&&(H=z.bullet.listId);const j={id:D.RichTextEditingMutation.id,params:{unitId:s.getUnitId(),actions:[],textRanges:[{startOffset:u,endOffset:u,collapsed:!0}],isEditing:!1}};g.push({t:i.TextXActionType.RETAIN,len:u}),g.push({t:i.TextXActionType.DELETE,len:l-u}),h>l&&g.push({t:i.TextXActionType.RETAIN,len:h-l}),g.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:{...v,textStyle:{...v.textStyle,...y},indentFirstLine:void 0,hanging:x,indentStart:{v:M.getNumberUnitValue(B,_)-M.getNumberUnitValue(x,_)+M.getNumberUnitValue(E,_)+M.getNumberUnitValue(R,_)}},bullet:{...(q=A.bullet)!=null?q:{nestingLevel:0,textStyle:{fs:20}},listType:d,listId:H}}]}});const k=J(s,c);return j.params.actions=m.editOp(g.serialize(),k),!!r.syncExecuteCommand(j.id,j.params)}};function wo(o,t){var A,u;const e=o.get(i.ICommandService),n=mn(o);if(!n)return!1;const r=o.get(i.IUniverInstanceService).getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!r)return!1;const s=i.BuildTextUtils.selection.replace({doc:r,selection:{startOffset:n.startIndex+1,endOffset:n.startIndex+1,collapsed:!0},body:{dataStream:"\r",paragraphs:[{startIndex:0,paragraphStyle:{...n.paragraphStyle},bullet:{listType:t,listId:((A=n.bullet)==null?void 0:A.listType)===t?n.bullet.listId:i.Tools.generateRandomId(6),nestingLevel:((u=n.bullet)==null?void 0:u.listType)===t?n.bullet.nestingLevel:0}}]}});if(!s)return!1;const a={id:D.RichTextEditingMutation.id,params:{unitId:r.getUnitId(),actions:[],textRanges:[{startOffset:n.startIndex+1,endOffset:n.startIndex+1,collapsed:!0}],isEditing:!1}},c=i.JSONX.getInstance(),l=J(r);return a.params.actions=c.editOp(s.serialize(),l),!!e.syncExecuteCommand(a.id,a.params)}const Lo={id:"doc.command.insert-bullet-list-bellow",type:i.CommandType.COMMAND,handler:o=>wo(o,i.PresetListType.BULLET_LIST)},Qo={id:"doc.command.insert-order-list-bellow",type:i.CommandType.COMMAND,handler:o=>wo(o,i.PresetListType.ORDER_LIST)},Fo={id:"doc.command.insert-check-list-bellow",type:i.CommandType.COMMAND,handler:o=>wo(o,i.PresetListType.CHECK_LIST)};function ec(o,t){const e=t.sort(i.sortRulesFactory("startIndex"));for(let n=0;n<e.length;n++){const r=t[n];if(r.startIndex>=o)return r}}const le={id:"doc.command.set-paragraph-named-style",type:i.CommandType.COMMAND,handler(o,t){var m;if(!t)return!1;const n=o.get(i.IUniverInstanceService).getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!n)return!1;const r=n.getUnitId(),s=o.get(D.DocSelectionManagerService),a=(m=t.textRanges)!=null?m:s.getTextRanges({unitId:r,subUnitId:r});if(!(a!=null&&a.length))return!1;const c=a[0].segmentId,l=i.BuildTextUtils.paragraph.style.set({document:n.getSelfOrHeaderFooterModel(c),textRanges:a,style:{namedStyleType:t.value,headingId:!t.value||t.value===i.NamedStyleType.NORMAL_TEXT?void 0:i.generateRandomId(6),spaceAbove:void 0,spaceBelow:void 0},paragraphTextRun:{}}),d={id:D.RichTextEditingMutation.id,params:{actions:[],textRanges:a,unitId:r,segmentId:c}},A=i.JSONX.getInstance(),u=J(n,c);return d.params.actions=A.editOp(l.serialize(),u),!!o.get(i.ICommandService).syncExecuteCommand(d.id,d.params)}},Ki={id:"doc.command.quick-heading",type:i.CommandType.COMMAND,handler(o,t){var v,E;if(!t)return!1;const{value:e}=t,n=o.get(D.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=r.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=n.getActiveTextRange();if(a==null||c==null||!c.collapsed)return!1;const{segmentId:l,startOffset:d}=c,A=i.BuildTextUtils.paragraph.util.getParagraphsInRange(c,(E=(v=a.getBody())==null?void 0:v.paragraphs)!=null?E:[])[0];if(!A)return!1;const{paragraphStart:u}=A,h=new i.TextX,g=i.JSONX.getInstance(),{paragraphStyle:m={}}=A,p={id:D.RichTextEditingMutation.id,params:{unitId:a.getUnitId(),actions:[],textRanges:[{startOffset:u,endOffset:u,collapsed:!0}],isEditing:!1}};h.push({t:i.TextXActionType.RETAIN,len:u}),i.BuildTextUtils.paragraph.style.set({textRanges:[c],document:a,style:{...m,headingId:i.generateRandomId(6),namedStyleType:e},cursor:d,deleteLen:d-u,textX:h,paragraphTextRun:{}});const f=J(a,l);return p.params.actions=g.editOp(h.serialize(),f),!!s.syncExecuteCommand(p.id,p.params)}},wn={"#":i.NamedStyleType.HEADING_1,"##":i.NamedStyleType.HEADING_2,"###":i.NamedStyleType.HEADING_3,"####":i.NamedStyleType.HEADING_4,"#####":i.NamedStyleType.HEADING_5},Ho={id:"doc.command.h1-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_1})},ko={id:"doc.command.h2-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_2})},Vo={id:"doc.command.h3-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_3})},jo={id:"doc.command.h4-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_4})},Wo={id:"doc.command.h5-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_5})},Yt={id:"doc.command.normal-text-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.NORMAL_TEXT})},Yi={id:"doc.command.title",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.TITLE})},qi={id:"doc.command.subtitle-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.SUBTITLE})},pe={id:"doc.command.align-action",type:i.CommandType.COMMAND,handler:(o,t)=>{var E;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),{alignType:s}=t,a=n.getCurrentUniverDocInstance();if(a==null)return!1;const c=e.getDocRanges();if(c.length===0)return!1;const l=c[0].segmentId,d=(E=a.getSelfOrHeaderFooterModel(l).getBody())==null?void 0:E.paragraphs;if(d==null)return!1;const A=i.BuildTextUtils.range.getParagraphsInRanges(c,d),u=a.getUnitId(),h=A.every(T=>{var R;return((R=T.paragraphStyle)==null?void 0:R.horizontalAlign)===s}),g={id:D.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:c}},m=new i.MemoryCursor;m.reset();const p=new i.TextX,f=i.JSONX.getInstance();for(const T of A){const{startIndex:R}=T;p.push({t:i.TextXActionType.RETAIN,len:R-m.cursor});const C={...T.paragraphStyle,horizontalAlign:h?i.HorizontalAlign.UNSPECIFIED:s};p.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...T,paragraphStyle:C,startIndex:0}]},coverType:i.UpdateDocsAttributeType.REPLACE}),m.moveCursorTo(R+1)}const S=J(a,l);return g.params.actions=f.editOp(p.serialize(),S),!!r.syncExecuteCommand(g.id,g.params)}},Ot={id:"doc.command.align-left",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.LEFT})},Mt={id:"doc.command.align-center",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.CENTER})},Dt={id:"doc.command.align-right",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.RIGHT})},Bt={id:"doc.command.align-justify",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.JUSTIFIED})},vn={id:"doc.command.switch-mode",type:i.CommandType.COMMAND,handler:async o=>{var v,E,T,R,C;const t=o.get(i.ICommandService),e=o.get(M.IRenderManagerService),n=o.get(D.DocSelectionManagerService),s=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(s==null)return!1;const a=s.getUnitId(),c=(v=e.getRenderById(a))==null?void 0:v.with(D.DocSkeletonManagerService).getSkeleton(),l=(E=e.getRenderById(a))==null?void 0:E.with(exports.DocSelectionRenderService);if(c==null||l==null)return!1;const d=l==null?void 0:l.getSegment(),A=l==null?void 0:l.getSegmentPage(),u=s.getSnapshot().documentStyle.documentFlavor,h=n.getDocRanges(),g={id:D.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:u===i.DocumentFlavor.TRADITIONAL&&d?[]:h}},m=i.JSONX.getInstance(),p=[];let f;if(u===void 0?f=m.insertOp(["documentStyle","documentFlavor"],i.DocumentFlavor.MODERN):u===i.DocumentFlavor.MODERN?f=m.replaceOp(["documentStyle","documentFlavor"],u,i.DocumentFlavor.TRADITIONAL):f=m.replaceOp(["documentStyle","documentFlavor"],u,i.DocumentFlavor.MODERN),f)p.push(f);else return!1;if(u!==i.DocumentFlavor.MODERN){const x=s.getSnapshot(),{drawings:B={},body:y}=x,P=(T=y==null?void 0:y.customBlocks)!=null?T:[];for(const O in B){const _=B[O],F=P.find(q=>q.blockId===O);if(F==null)continue;const H=_.docTransform.positionV,{relativeFrom:U,posOffset:L}=H;if(U===i.ObjectRelativeFromV.PARAGRAPH)continue;const{startIndex:W}=F,z=c.findNodeByCharIndex(W,d,A),j=(R=z==null?void 0:z.parent)==null?void 0:R.parent,k=j==null?void 0:j.parent,V=k==null?void 0:k.lines.find(q=>q.paragraphIndex===(j==null?void 0:j.paragraphIndex)&&q.paragraphStart),X=(C=k==null?void 0:k.parent)==null?void 0:C.parent;if(z==null||j==null||V==null||k==null||X==null)continue;let K=0;U===i.ObjectRelativeFromV.LINE?K-=j.top:U===i.ObjectRelativeFromV.PAGE&&(K+=X.marginTop),K+=V.top;const Y={...H,relativeFrom:i.ObjectRelativeFromV.PARAGRAPH,posOffset:(L!=null?L:0)-K},G=m.replaceOp(["drawings",O,"docTransform","positionV"],H,Y);G&&p.push(G)}}return g.params.actions=p.reduce((x,B)=>i.JSONX.compose(x,B),null),!!t.syncExecuteCommand(g.id,g.params)}},Ji="COMPONENT_DOC_CREATE_TABLE_CONFIRM",tc="doc.command.create-table",zo={id:tc,type:i.CommandType.COMMAND,handler:async(o,t)=>{var Y,G,q,ee,ge;const{rowCount:e,colCount:n}=t,r=o.get(D.DocSelectionManagerService),s=o.get(i.IUniverInstanceService),a=o.get(i.ICommandService),c=o.get(Te),l=r.getActiveTextRange();if(l==null)return!1;const{segmentId:d,segmentPage:A}=l,u=s.getCurrentUniverDocInstance(),h=u==null?void 0:u.getSelfOrHeaderFooterModel(d).getBody();if(u==null||h==null)return!1;const g=u.getUnitId(),m=ce(o,g),p=m==null?void 0:m.getSkeleton();if(p==null)return!1;const{startOffset:f}=l,v=((Y=h.paragraphs)!=null?Y:[]).find(xe=>xe.startIndex>=f),E=p.findNodeByCharIndex(f,d,A);if(E==null)return!1;const T=new i.TextX,R=i.JSONX.getInstance(),C=[],x=f+4,B=[{startOffset:x,endOffset:x,collapsed:!0}],y={id:D.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:B}};f>0&&T.push({t:i.TextXActionType.RETAIN,len:f}),T.push({t:i.TextXActionType.INSERT,body:{dataStream:i.DataStreamTreeTokenType.PARAGRAPH,paragraphs:_o(i.DataStreamTreeTokenType.PARAGRAPH,v)},len:1});const P=c.getDefaultStyle(),O=c.getStyleCache(),_=sn(h,f,P,O),{dataStream:F,paragraphs:H,sectionBreaks:U}=Ta(e,n),L=(ge=(ee=(q=(G=E.parent)==null?void 0:G.parent)==null?void 0:q.parent)==null?void 0:ee.parent)==null?void 0:ge.parent;if(L==null)return!1;const{pageWidth:W,marginLeft:z,marginRight:j}=L,k=Co(e,n,W-z-j);T.push({t:i.TextXActionType.INSERT,body:{dataStream:F,paragraphs:H,sectionBreaks:U,textRuns:[{..._,st:0,ed:F.length}],tables:[{startIndex:0,endIndex:F.length,tableId:k.tableId}]},len:F.length});const V=J(u,d);C.push(R.editOp(T.serialize(),V));const X=R.insertOp(["tableSource",k.tableId],k);return C.push(X),y.params.actions=C.reduce((xe,he)=>i.JSONX.compose(xe,he),null),!!a.syncExecuteCommand(y.id,y.params)}},Ln="doc.component.create-table-confirm",En={id:"doc.operation.create-table",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(i.LocaleService),e=o.get(I.IConfirmService),n=o.get(i.ICommandService),r={rowCount:3,colCount:5},s=(a,c)=>{r.rowCount=a,r.colCount=c};return await e.open({id:Ln,children:{label:{name:Ji,props:{handleRowColChange:s,tableCreateParams:r}}},width:400,title:{title:t.t("toolbar.table.insert")},onConfirm:()=>{n.executeCommand(zo.id,r),e.close(Ln)},onClose:()=>{e.close(Ln)}}),!0}};function nc(o){const t=o.get(i.IUniverInstanceService),e=o.get(M.IRenderManagerService);return new N.Observable(n=>{const r=t.focused$.subscribe(s=>{if(s==null||t.getUnitType(s)!==i.UniverInstanceType.UNIVER_DOC)return n.next(!0);const c=e.getRenderById(s);if(c==null)return n.next(!0);c.with(D.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(d=>{n.next(d===M.DocumentEditArea.HEADER||d===M.DocumentEditArea.FOOTER)})});return()=>r.unsubscribe()})}function oc(o){const t=o.get(i.IUniverInstanceService),e=o.get(i.ICommandService);return new N.Observable(n=>{const r=e.onCommandExecuted(l=>{if(l.id===D.RichTextEditingMutation.id){const{unitId:d}=l.params,A=t.getUnit(d);if(A==null){n.next(!0);return}const{documentStyle:u}=A.getSnapshot();n.next((u==null?void 0:u.documentFlavor)!==i.DocumentFlavor.TRADITIONAL)}}),s=t.focused$.subscribe(l=>{if(l==null)return n.next(!0);const d=t.getUniverDocInstance(l),A=d==null?void 0:d.getSnapshot().documentStyle.documentFlavor;n.next(A!==i.DocumentFlavor.TRADITIONAL)}),a=t.getCurrentUniverDocInstance();if(a==null)return n.next(!0);const c=a==null?void 0:a.getSnapshot().documentStyle.documentFlavor;return n.next(c!==i.DocumentFlavor.TRADITIONAL),()=>{r.dispose(),s.unsubscribe()}})}function rc(o){const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new N.Observable(n=>{const r=t.textSelection$.subscribe(s=>{if(s==null){n.next(!0);return}const{textRanges:a}=s;if(a.length!==1){n.next(!0);return}const c=a[0],{collapsed:l,startNodePosition:d,startOffset:A}=c;if(!l||A==null){n.next(!0);return}const u=e.getCurrentUniverDocInstance();if(u==null){n.next(!0);return}const h=ce(o,u.getUnitId());if(h==null){n.next(!0);return}if(h.getViewModel().getCustomRangeRaw(A)){n.next(!0);return}if(d!=null){const{path:p}=d;if(p.indexOf("cells")!==-1){n.next(!0);return}}n.next(!1)});return()=>r.unsubscribe()})}function $(o){const t=o.get(D.DocSelectionManagerService);return new N.Observable(e=>{const n=t.textSelection$.subscribe(r=>{if(r==null){e.next(!0);return}const{textRanges:s,rectRanges:a}=r;if(s.length===0&&a.length===0){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}function ic(o){const t=o.get(i.ICommandService);return{id:Ne.id,type:I.MenuItemType.BUTTON,icon:"BoldSingle",title:"Set bold",tooltip:"toolbar.bold",activated$:new N.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.bl;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===D.SetTextSelectionsOperation.id||a===Re.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function sc(o){const t=o.get(i.ICommandService);return{id:Pe.id,type:I.MenuItemType.BUTTON,icon:"ItalicSingle",title:"Set italic",tooltip:"toolbar.italic",activated$:new N.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.it;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===D.SetTextSelectionsOperation.id||a===Re.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function ac(o){const t=o.get(i.ICommandService);return{id:Ue.id,type:I.MenuItemType.BUTTON,icon:"UnderlineSingle",title:"Set underline",tooltip:"toolbar.underline",activated$:new N.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.ul;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===D.SetTextSelectionsOperation.id||a===Re.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function cc(o){const t=o.get(i.ICommandService);return{id:we.id,type:I.MenuItemType.BUTTON,icon:"StrikethroughSingle",title:"Set strike through",tooltip:"toolbar.strikethrough",activated$:new N.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.st;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===D.SetTextSelectionsOperation.id||a===Re.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function lc(o){const t=o.get(i.ICommandService);return{id:ye.id,type:I.MenuItemType.BUTTON,icon:"SubscriptSingle",tooltip:"toolbar.subscript",activated$:new N.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUBSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===D.SetTextSelectionsOperation.id||a===Re.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function dc(o){const t=o.get(i.ICommandService);return{id:Le.id,type:I.MenuItemType.BUTTON,icon:"SuperscriptSingle",tooltip:"toolbar.superscript",activated$:new N.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUPERSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===D.SetTextSelectionsOperation.id||a===Re.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ac(o){const t=o.get(i.ICommandService);return{id:Me.id,tooltip:"toolbar.font",type:I.MenuItemType.SELECTOR,label:Mi,selections:I.FONT_FAMILY_LIST.map(e=>({label:{name:Di},value:e.value})),value$:new N.Observable(e=>{const n=i.DEFAULT_STYLES.ff,r=()=>{var l;const a=Qe(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.ff;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===D.SetTextSelectionsOperation.id||c===Me.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function uc(o){const t=o.get(i.ICommandService);return{id:me.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:Bi,props:{min:1,max:400}},selections:I.FONT_SIZE_LIST,value$:new N.Observable(e=>{const n=i.DEFAULT_STYLES.fs,r=()=>{var l;const a=Qe(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.fs;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===D.SetTextSelectionsOperation.id||c===me.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function gc(o){const t=o.get(i.ICommandService);return{id:le.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.heading.tooltip",label:{name:I.COMMON_LABEL_COMPONENT,props:{selections:I.HEADING_LIST}},selections:I.HEADING_LIST.map(e=>({label:{name:I.HEADING_ITEM_COMPONENT,props:{value:e.value,text:e.label}},value:e.value})),value$:new N.Observable(e=>{const n=i.NamedStyleType.NORMAL_TEXT,r=()=>{var l,d;const a=Ge(o);if(a==null){e.next(n);return}const c=(d=(l=a.paragraphStyle)==null?void 0:l.namedStyleType)!=null?d:n;e.next(c)},s=t.onCommandExecuted(a=>{const c=a.id;(c===D.SetTextSelectionsOperation.id||c===me.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function hc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:De.id,icon:"FontColor",tooltip:"toolbar.textColor.main",type:I.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:vo,hoverable:!1,selectable:!1}}],value$:new N.Observable(n=>{const r=e.getCurrentTheme().textColor,s=t.onCommandExecuted(a=>{if(a.id===De.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function mc(o){return{id:So.id,type:I.MenuItemType.BUTTON,icon:"HeaderFooterSingle",tooltip:"toolbar.headerFooter",hidden$:N.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),oc(o),(t,e)=>t||e)}}const pc="GridSingle",Zi="doc.menu.table";function fc(o){return{id:Zi,type:I.MenuItemType.SUBITEMS,icon:pc,tooltip:"toolbar.table.main",disabled$:rc(o),hidden$:N.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),nc(o),(t,e)=>t||e)}}function Sc(o){return{id:En.id,title:"toolbar.table.insert",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ic(o){const t=o.get(i.ICommandService);return{id:Ot.id,type:I.MenuItemType.BUTTON,icon:"LeftJustifyingSingle",tooltip:"toolbar.alignLeft",disabled$:$(o),activated$:new N.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===D.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.LEFT)}});return e.next(!1),n.dispose}),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function vc(o){const t=o.get(i.ICommandService);return{id:Mt.id,type:I.MenuItemType.BUTTON,icon:"HorizontallySingle",tooltip:"toolbar.alignCenter",activated$:new N.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===D.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.CENTER)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Ec(o){const t=o.get(i.ICommandService);return{id:Dt.id,type:I.MenuItemType.BUTTON,icon:"RightJustifyingSingle",tooltip:"toolbar.alignRight",activated$:new N.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===D.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.RIGHT)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Cc(o){const t=o.get(i.ICommandService);return{id:Bt.id,type:I.MenuItemType.BUTTON,icon:"AlignTextBothSingle",tooltip:"toolbar.alignJustify",activated$:new N.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===D.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.JUSTIFIED)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Tc(o){return{id:bt.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",tooltip:"toolbar.horizontalLine",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const Tt=o=>new N.Observable(t=>{const e=o.get(i.IUniverInstanceService),n=o.get(D.DocSelectionManagerService);let r;const s=e.focused$.subscribe(a=>{if(r==null||r.unsubscribe(),a==null)return;const c=e.getUniverDocInstance(a);c!=null&&(r=n.textSelection$.subscribe(()=>{var A,u,h;const l=n.getDocRanges(),d=(A=l.find(g=>g.isActive))!=null?A:l[0];if(d){const g=c.getSelfOrHeaderFooterModel(d==null?void 0:d.segmentId),m=i.BuildTextUtils.range.getParagraphsInRange(d,(h=(u=g.getBody())==null?void 0:u.paragraphs)!=null?h:[]);let p;if(m.every(f=>{var S;return p||(p=(S=f.bullet)==null?void 0:S.listType),f.bullet&&f.bullet.listType===p})){t.next(p);return}}t.next(void 0)}))});return()=>{s.unsubscribe(),r==null||r.unsubscribe()}});function Mr(o){return{id:ot.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Ni,hoverable:!1,selectable:!1},value$:Tt(o)}],icon:"OrderSingle",tooltip:"toolbar.order",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),disabled$:$(o),activated$:Tt(o).pipe(N.map(t=>t&&t.indexOf("ORDER_LIST")===0))}}function Dr(o){return{id:nt.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Pi,hoverable:!1,selectable:!1},value$:Tt(o)}],icon:"UnorderSingle",tooltip:"toolbar.unorder",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:Tt(o).pipe(N.map(t=>t&&t.indexOf("BULLET_LIST")===0))}}function Br(o){return{id:Ct.id,type:I.MenuItemType.BUTTON,icon:"TodoList",tooltip:"toolbar.checklist",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:Tt(o).pipe(N.map(t=>t&&t.indexOf("CHECK_LIST")===0))}}function yc(o){const t=o.get(i.ICommandService),e=o.get(i.IUniverInstanceService);return{id:vn.id,type:I.MenuItemType.BUTTON,icon:"KeyboardSingle",tooltip:"toolbar.documentFlavor",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),activated$:new N.Observable(n=>{var a;const r=t.onCommandExecuted(c=>{var l;if(c.id===D.RichTextEditingMutation.id){const d=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);n.next(((l=d==null?void 0:d.getSnapshot())==null?void 0:l.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN)}}),s=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);return n.next(((a=s==null?void 0:s.getSnapshot())==null?void 0:a.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN),()=>r.dispose()})}}function Rc(o){return{id:at.id,type:I.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColor"}}function bc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:Be.id,tooltip:"toolbar.fillColor.main",type:I.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucket",selections:[{label:{name:vo,hoverable:!1,selectable:!1}}],value$:new N.Observable(n=>{const r=e.getCurrentTheme().primaryColor,s=t.onCommandExecuted(a=>{if(a.id===Be.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Qe(o){var m,p,f,S;const t=o.get(i.IUniverInstanceService),e=o.get(D.DocSelectionManagerService),n=o.get(Te),r=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),s=e.getDocRanges(),a=(m=s.find(v=>v.isActive))!=null?m:s[0],c=n.getDefaultStyle(),l=(p=n.getStyleCache())!=null?p:{},d=Ge(o),A=(f=d==null?void 0:d.paragraphStyle)!=null&&f.namedStyleType?i.NAMED_STYLE_MAP[(S=d==null?void 0:d.paragraphStyle)==null?void 0:S.namedStyleType]:null;if(r==null||a==null)return{ts:{...c,...A,...l}};const{segmentId:u}=a,h=r.getSelfOrHeaderFooterModel(u).getBody();if(h==null)return{ts:{...c,...A,...l}};const g=Xi(h,a,{});return i.Tools.deleteNull(g),{ts:{...c,...A,...g,...l}}}function Ge(o){var A,u;const t=o.get(i.IUniverInstanceService),e=o.get(D.DocSelectionManagerService),n=t.getCurrentUniverDocInstance(),r=e.getDocRanges(),s=(A=r.find(h=>h.isActive))!=null?A:r[0];if(n==null||s==null)return;const{startOffset:a,segmentId:c}=s,l=(u=n.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:u.paragraphs;if(l==null)return;let d=-1;for(const h of l){const{startIndex:g}=h;if(a>d&&a<=g)return h;d=g}return null}const xc={[i.NamedStyleType.HEADING_1]:Ho,[i.NamedStyleType.HEADING_2]:ko,[i.NamedStyleType.HEADING_3]:Vo,[i.NamedStyleType.HEADING_4]:jo,[i.NamedStyleType.HEADING_5]:Wo,[i.NamedStyleType.NORMAL_TEXT]:Yt,[i.NamedStyleType.TITLE]:Yi,[i.NamedStyleType.SUBTITLE]:qi,[i.NamedStyleType.NAMED_STYLE_TYPE_UNSPECIFIED]:Yt},$i={[i.NamedStyleType.HEADING_1]:{key:"H1Single",component:Si},[i.NamedStyleType.HEADING_2]:{key:"H2Single",component:Ii},[i.NamedStyleType.HEADING_3]:{key:"H3Single",component:vi},[i.NamedStyleType.HEADING_4]:{key:"H4Single",component:Ei},[i.NamedStyleType.HEADING_5]:{key:"H5Single",component:Ci},[i.NamedStyleType.NORMAL_TEXT]:{key:"TextTypeSingle",component:ft},[i.NamedStyleType.TITLE]:{key:"TextTypeSingle",component:ft},[i.NamedStyleType.SUBTITLE]:{key:"TextTypeSingle",component:ft},[i.NamedStyleType.NAMED_STYLE_TYPE_UNSPECIFIED]:{key:"TextTypeSingle",component:ft}},Fe=o=>t=>{const e=t.get(i.ICommandService),n=t.get(I.ComponentManager),r=$i[o];return n.get(r.key)||n.register(r.key,r.component),{id:xc[o].id,type:I.MenuItemType.BUTTON,icon:r.key,tooltip:"toolbar.heading.tooltip",disabled$:$(t),hidden$:I.getMenuHiddenObservable(t,i.UniverInstanceType.UNIVER_DOC),activated$:new N.Observable(s=>{const a=i.NamedStyleType.NORMAL_TEXT,c=()=>{var u,h;const d=Ge(t);if(d==null){s.next(a===o);return}const A=(h=(u=d.paragraphStyle)==null?void 0:u.namedStyleType)!=null?h:a;s.next(A===o)},l=e.onCommandExecuted(d=>{const A=d.id;(A===D.SetTextSelectionsOperation.id||A===me.id)&&c()});return c(),l.dispose})}},Oc=Fe(i.NamedStyleType.HEADING_1),Mc=Fe(i.NamedStyleType.HEADING_2),Dc=Fe(i.NamedStyleType.HEADING_3),Bc=Fe(i.NamedStyleType.HEADING_4),_c=Fe(i.NamedStyleType.HEADING_5),Nc=Fe(i.NamedStyleType.NORMAL_TEXT);Fe(i.NamedStyleType.TITLE);Fe(i.NamedStyleType.SUBTITLE);const Pc=o=>({id:Do.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy"}),Uc=o=>({id:Bo.id,type:I.MenuItemType.BUTTON,icon:"CutSingle",title:"rightClick.cut"}),wc=o=>({id:xo.id,type:I.MenuItemType.BUTTON,icon:"DeleteSingle",title:"rightClick.delete"}),Lc=o=>({id:Lo.id,type:I.MenuItemType.BUTTON,icon:"UnorderSingle",title:"rightClick.bulletList"}),Qc=o=>({id:Qo.id,type:I.MenuItemType.BUTTON,icon:"OrderSingle",title:"rightClick.orderList"}),Fc=o=>({id:Fo.id,type:I.MenuItemType.BUTTON,icon:"TodoList",title:"rightClick.checkList"}),Hc=o=>({id:No.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",title:"toolbar.horizontalLine"}),es="doc.menu.insert-bellow";function kc(o){return{id:es,type:I.MenuItemType.SUBITEMS,title:"rightClick.insertBellow",icon:"FreezeToSelectedSingle"}}const Zn=4,Vc=(o,t)=>{const e=o.get(i.IUniverInstanceService).getUniverDocInstance(t.unitId),n=(e==null?void 0:e.zoomRatio)||1;return{...i.Tools.deepClone(t),zoomRatio:n}},Ae={id:"doc.operation.set-zoom-ratio",type:i.CommandType.OPERATION,handler:(o,t)=>{const e=o.get(i.IUniverInstanceService).getUniverDocInstance(t.unitId);if(!e)return!1;const n=e.getSnapshot();return n.settings==null?n.settings={zoomRatio:t.zoomRatio}:n.settings.zoomRatio=t.zoomRatio,!0}};var jc=Object.getOwnPropertyDescriptor,Wc=(o,t,e,n)=>{for(var r=n>1?void 0:n?jc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},wt=(o,t)=>(e,n)=>t(e,n,o);function ts(o,t){const e=_r(o.left,o.top,t),n=_r(o.right,o.bottom,t);return{left:e.x,top:e.y,right:n.x,bottom:n.y}}function _r(o,t,e){const{scaleX:n,scaleY:r}=e.getAncestorScale(),s=e.getViewport(ie.VIEW_MAIN);if(!s)return{x:o,y:t};const{viewportScrollX:a,viewportScrollY:c}=s,l=(o-a)*n,d=(t-c)*r;return{x:l,y:d}}function Nr(o,t,e){const{scaleX:n,scaleY:r}=e.getAncestorScale(),s=e.getViewport(ie.VIEW_MAIN);if(!s)return{x:o,y:t};const{viewportScrollX:a,viewportScrollY:c}=s,l=o/n+a,d=t/r+c;return{x:l,y:d}}const zt=(o,t)=>{const{scene:e,mainComponent:n,engine:r}=t,s=t.with(D.DocSkeletonManagerService).getSkeleton(),a=s.findNodePositionByCharIndex(o.startOffset,!0,o.segmentId,o.segmentPage),c=o.collapsed?o.startOffset:o.endOffset-1,l=s.findNodePositionByCharIndex(c,!0,o.segmentId,o.segmentPage),d=n;if(!l||!a)return;const A=d.getOffsetConfig(),{docsLeft:u,docsTop:h}=A,g=r.getCanvasElement(),m=g.getBoundingClientRect(),p=M.pxToNum(g.style.width),{top:f,left:S,width:v}=m,E=v/p,{scaleX:T,scaleY:R}=e.getAncestorScale(),C=new ve(A,s),{borderBoxPointGroup:x}=C.getRangePointData(a,l);return an(x).map(P=>ts(P,e)).map(P=>({left:(P.left+u*T)*E+S,right:(P.right+u*T)*E+S,top:(P.top+h*R)*E+f,bottom:(P.bottom+h*R)*E+f}))};exports.DocCanvasPopManagerService=class extends i.Disposable{constructor(t,e,n,r){super(),this._globalPopupManagerService=t,this._renderManagerService=e,this._univerInstanceService=n,this._commandService=r}_createRectPositionObserver(t,e){const n=()=>{const{scene:l,engine:d}=e,A=typeof t=="function"?t():t,u=d.getCanvasElement(),h=u.getBoundingClientRect(),g=M.pxToNum(u.style.width),m=ts(A,l),{top:p,left:f,width:S}=h,v=S/g;return{left:m.left*v+f,right:m.right*v+f,top:m.top*v+p,bottom:m.bottom*v+p}},r=n(),s=new N.BehaviorSubject(r),a=new i.DisposableCollection;a.add(this._commandService.onCommandExecuted(l=>{if(l.id===Ae.id||l.id===D.RichTextEditingMutation.id){const d=n();d&&s.next(d)}}));const c=e.scene.getViewport(ie.VIEW_MAIN);return c&&a.add(c.onScrollAfter$.subscribeEvent(()=>{s.next(n())})),{position:r,position$:s,disposable:a}}_createObjectPositionObserver(t,e){const n=()=>{const{left:r,top:s,width:a,height:c}=t;return{left:r,right:r+a,top:s,bottom:s+c}};return this._createRectPositionObserver(n,e)}_createRangePositionObserver(t,e){var c;const n=(c=zt(t,e))!=null?c:[],r=new N.BehaviorSubject(n),s=new i.DisposableCollection;s.add(this._commandService.onCommandExecuted(l=>{if((l.id===Ae.id||l.id===D.RichTextEditingMutation.id)&&l.params.unitId===e.unitId){const A=zt(t,e);A&&r.next(A)}}));const a=e.scene.getViewport(ie.VIEW_MAIN);return a&&s.add(a.onScrollAfter$.subscribeEvent(()=>{const l=zt(t,e);l&&r.next(l)})),{positions:n,positions$:r,disposable:s}}attachPopupToRect(t,e,n){const r=this._renderManagerService.getRenderById(n);if(!r)throw new Error(`Current render not found, unitId: ${n}`);const{position:s,position$:a,disposable:c}=this._createRectPositionObserver(t,r),l=this._globalPopupManagerService.addPopup({...e,unitId:n,subUnitId:"default",anchorRect:s,anchorRect$:a,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(l),a.complete(),c.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==l}}attachPopupToObject(t,e,n){const r=this._renderManagerService.getRenderById(n);if(!r)throw new Error(`Current render not found, unitId: ${n}`);const{position:s,position$:a,disposable:c}=this._createObjectPositionObserver(t,r),l=this._globalPopupManagerService.addPopup({...e,unitId:n,subUnitId:"default",anchorRect:s,anchorRect$:a,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(l),a.complete(),c.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==l}}attachPopupToRange(t,e,n){if(!this._univerInstanceService.getUnit(n))throw new Error(`Document not found, unitId: ${n}`);const{direction:s="top",multipleDirection:a}=e,c=this._renderManagerService.getRenderById(n);if(!c)throw new Error(`Current render not found, unitId: ${n}`);const{positions:l,positions$:d,disposable:A}=this._createRangePositionObserver(t,c),u=d.pipe(N.map(g=>s.includes("top")?g[0]:g[g.length-1])),h=this._globalPopupManagerService.addPopup({...e,unitId:n,subUnitId:"default",anchorRect:s.includes("top")?l[0]:l[l.length-1],anchorRect$:u,excludeRects:l,excludeRects$:d,direction:["top","bottom","horizontal"].some(g=>s.includes(g))&&l.length>1&&a!=null?a:s,canvasElement:c.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(h),d.complete(),A.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==h}}};exports.DocCanvasPopManagerService=Wc([wt(0,i.Inject(I.ICanvasPopupService)),wt(1,M.IRenderManagerService),wt(2,i.IUniverInstanceService),wt(3,i.ICommandService)],exports.DocCanvasPopManagerService);var zc=Object.getOwnPropertyDescriptor,Gc=(o,t,e,n)=>{for(var r=n>1?void 0:n?zc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Xc=(o,t)=>(e,n)=>t(e,n,o);const Kc=(o,t,e,n)=>{var h,g,m,p,f;const r=e.findNodePositionByCharIndex(o.startOffset,!0,o.segmentId,n),s=e.getSkeletonData();let a=o.endOffset-1;if(o.segmentId){const S=(f=Array.from((g=(h=s==null?void 0:s.skeFooters.get(o.segmentId))==null?void 0:h.values())!=null?g:[])[0])!=null?f:Array.from((p=(m=s==null?void 0:s.skeHeaders.get(o.segmentId))==null?void 0:m.values())!=null?p:[])[0];S&&(a=Math.min(S.ed,a))}const c=e.findNodePositionByCharIndex(a,!0,o.segmentId,n);if(!c||!r)return;const l=t.getOffsetConfig(),d=new ve(l,e),{borderBoxPointGroup:A}=d.getRangePointData(r,c);return an(A).map(S=>({top:S.top+l.docsTop-Zn,bottom:S.bottom+l.docsTop+Zn,left:S.left+l.docsLeft,right:S.right+l.docsLeft}))},Pr=(o,t,e,n)=>{const r=[];for(const s of o){const a=s.top;for(const c of s.columns){const l=c.left,d=s.colCount===1?n:c.width;let A=null;for(const u of c.lines){const h=u.paragraphIndex;if(u.paragraphStart){A&&(r.push(A),A=null);const g={top:t+a+u.top,left:e+l,right:e+l+d,bottom:t+a+u.top+u.lineHeight};A={paragraphStart:u.st,paragraphEnd:h,startIndex:h,rect:g,fisrtLine:{top:t+a+u.top+u.marginTop+u.paddingTop,left:e+l,right:e+l+d,bottom:t+a+u.top+u.marginTop+u.paddingTop+u.contentHeight}}}else A&&A.startIndex===h&&(A.rect.bottom=t+a+u.top+u.lineHeight)}A&&r.push(A)}}return r},Yc=(o,t,e,n=-1)=>{const r=e.findPositionByGlyph(o,n);if(!r)return;const s=t.getOffsetConfig(),a={...r,isBack:!0},c=new ve(s,e),{borderBoxPointGroup:l}=c.getRangePointData(a,a),A=an(l)[0];return{top:A.top+s.docsTop,bottom:A.bottom+s.docsTop,left:A.left+s.docsLeft,right:A.left+s.docsLeft+o.width}};function He(o,t,e){const{left:n,right:r,top:s,bottom:a}=e;return o>=n&&o<=r&&t>=s&&t<=a}exports.DocEventManagerService=class extends i.Disposable{constructor(e,n){super();b(this,"_hoverCustomRanges$",new N.BehaviorSubject([]));b(this,"hoverCustomRanges$",this._hoverCustomRanges$.pipe(N.distinctUntilChanged((e,n)=>e.length===n.length&&e.every((r,s)=>n[s].range.rangeId===r.range.rangeId&&n[s].segmentId===r.segmentId&&n[s].segmentPageIndex===r.segmentPageIndex&&n[s].range.startIndex===r.range.startIndex))));b(this,"_clickCustomRanges$",new N.Subject);b(this,"clickCustomRanges$",this._clickCustomRanges$.asObservable());b(this,"_hoverBullet$",new N.Subject);b(this,"hoverBullet$",this._hoverBullet$.pipe(N.distinctUntilChanged((e,n)=>(e==null?void 0:e.paragraph.startIndex)===(n==null?void 0:n.paragraph.startIndex)&&(e==null?void 0:e.segmentId)===(n==null?void 0:n.segmentId)&&(e==null?void 0:e.segmentPageIndex)===(n==null?void 0:n.segmentPageIndex))));b(this,"_clickBullet$",new N.Subject);b(this,"clickBullets$",this._clickBullet$.asObservable());b(this,"_hoverParagraph$",new N.Subject);b(this,"hoverParagraph$",this._hoverParagraph$.pipe(N.distinctUntilChanged((e,n)=>(e==null?void 0:e.startIndex)===(n==null?void 0:n.startIndex)&&(e==null?void 0:e.segmentId)===(n==null?void 0:n.segmentId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));b(this,"hoverParagraphRealTime$",this._hoverParagraph$.asObservable());b(this,"_hoverParagraphLeft$",new N.Subject);b(this,"hoverParagraphLeft$",this._hoverParagraphLeft$.pipe(N.distinctUntilChanged((e,n)=>(e==null?void 0:e.startIndex)===(n==null?void 0:n.startIndex)&&(e==null?void 0:e.segmentId)===(n==null?void 0:n.segmentId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));b(this,"hoverParagraphLeftRealTime$",this._hoverParagraphLeft$.asObservable());b(this,"_hoverTableCell$",new N.Subject);b(this,"hoverTableCell$",this._hoverTableCell$.pipe(N.distinctUntilChanged((e,n)=>(e==null?void 0:e.rowIndex)===(n==null?void 0:n.rowIndex)&&(e==null?void 0:e.colIndex)===(n==null?void 0:n.colIndex)&&(e==null?void 0:e.tableId)===(n==null?void 0:n.tableId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));b(this,"hoverTableCellRealTime$",this._hoverTableCell$.asObservable());b(this,"_hoverTable$",new N.Subject);b(this,"hoverTable$",this._hoverTable$.pipe(N.distinctUntilChanged((e,n)=>(e==null?void 0:e.tableId)===(n==null?void 0:n.tableId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));b(this,"hoverTableRealTime$",this._hoverTable$.asObservable());b(this,"_customRangeDirty",!0);b(this,"_bulletDirty",!0);b(this,"_paragraphDirty",!0);b(this,"_customRangeBounds",[]);b(this,"_bulletBounds",[]);b(this,"_paragraphBounds",new Map);b(this,"_paragraphLeftBounds",[]);b(this,"_tableParagraphBounds",new Map);b(this,"_segmentParagraphBounds",new Map);b(this,"_tableCellBounds",new Map);b(this,"_tableBounds",new Map);this._context=e,this._docSkeletonManagerService=n,this._initResetDirty(),this._initEvents(),this._initPointer()}get _skeleton(){return this._docSkeletonManagerService.getSkeleton()}get _documents(){return this._context.mainComponent}dispose(){this._hoverCustomRanges$.complete(),this._clickCustomRanges$.complete(),super.dispose()}_initPointer(){let e=M.CURSOR_TYPE.TEXT;this.disposeWithMe(this.hoverCustomRanges$.subscribe(n=>{n.length?(e=this._context.scene.getCursor(),this._context.scene.setCursor(M.CURSOR_TYPE.POINTER)):this._context.scene.setCursor(e)}))}_initResetDirty(){this.disposeWithMe(this._skeleton.dirty$.subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0})),this.disposeWithMe(i.fromEventSubject(this._context.engine.onTransformChange$).pipe(N.filter(e=>e.type===M.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize)).subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0}))}_initEvents(){this.disposeWithMe(i.fromEventSubject(this._context.scene.onPointerMove$).pipe(N.throttleTime(30)).subscribe(r=>{if(r.buttons>0){this._hoverBullet$.next(null),this._hoverCustomRanges$.next([]),this._hoverParagraph$.next(null),this._hoverParagraphLeft$.next(null),this._hoverTableCell$.next(null),this._hoverTable$.next(null);return}const{x:s,y:a}=Nr(r.offsetX,r.offsetY,this._context.scene);this._hoverCustomRanges$.next(this._calcActiveRanges({x:s,y:a})),this._hoverParagraph$.next(this._calcActiveParagraph({x:s,y:a})),this._hoverParagraphLeft$.next(this._calcActiveParagraphLeft({x:s,y:a})),this._hoverBullet$.next(this._calcActiveBullet({x:s,y:a}))})),this.disposeWithMe(this._context.scene.onPointerEnter$.subscribeEvent(()=>{this._hoverBullet$.next(null),this._hoverCustomRanges$.next([])}));const e=i.fromEventSubject(this._context.mainComponent.onPointerDown$),n=i.fromEventSubject(this._context.scene.onPointerUp$);this.disposeWithMe(e.pipe(N.switchMap(r=>n.pipe(N.take(1),N.map(s=>({down:r,up:s})))),N.filter(({down:r,up:s})=>r.target===s.target&&s.timeStamp-r.timeStamp<300)).subscribe(({down:r})=>{if(r.button===2)return;const s=Nr(r.offsetX,r.offsetY,this._context.scene),a=this._calcActiveRanges(s);a.length&&this._clickCustomRanges$.next(a.pop());const c=this._calcActiveBullet(s);c&&this._clickBullet$.next(c)}))}_buildCustomRangeBoundsBySegment(e,n=-1){var a,c,l;const r=(l=(c=(a=this._context.unit.getSelfOrHeaderFooterModel(e))==null?void 0:a.getBody())==null?void 0:c.customRanges)!=null?l:[],s=[];return r.forEach(d=>{const A={startOffset:d.startIndex,endOffset:d.endIndex+1,segmentId:e},u=Kc(A,this._documents,this._skeleton,n);if(!u)return null;s.push({customRange:d,rects:u,segmentId:e,segmentPageIndex:n})}),s}_buildCustomRangeBounds(){var n;if(!this._customRangeDirty)return;this._customRangeDirty=!1;const e=[];e.push(...this._buildCustomRangeBoundsBySegment()),(n=this._skeleton.getSkeletonData())==null||n.pages.forEach((r,s)=>{r.headerId&&e.push(...this._buildCustomRangeBoundsBySegment(r.headerId,s)),r.footerId&&e.push(...this._buildCustomRangeBoundsBySegment(r.footerId,s))}),this._customRangeBounds=e}_calcActiveRanges(e){this._buildCustomRangeBounds();const{x:n,y:r}=e;return this._customRangeBounds.filter(a=>a.rects.some(c=>He(n,r,c))).map(a=>({segmentId:a.segmentId,range:a.customRange,segmentPageIndex:a.segmentPageIndex,rects:a.rects}))}_buildBulletBoundsBySegment(e,n=-1){var d,A,u,h,g;const r=(d=this._context.unit.getSelfOrHeaderFooterModel(e))==null?void 0:d.getBody(),s=((A=r==null?void 0:r.paragraphs)!=null?A:[]).filter(m=>m.bullet&&m.bullet.listType.indexOf("CHECK_LIST")===0),a=[],c=this._skeleton.getSkeletonData();if(!c)return a;const l=m=>{var p,f,S;for(const v of m){const E=[...v.sections];if(v.skeTables){const T=Array.from(v.skeTables.values());E.push(...T.map(R=>R.rows.map(C=>C.cells.map(x=>x.sections))).flat(4))}for(const T of E)for(const R of T.columns)for(const C of R.lines)if(C.paragraphStart){const x=s.find(B=>B.startIndex===C.paragraphIndex);if(x){const B=C,y=(S=(f=(p=B==null?void 0:B.divides)==null?void 0:p[0])==null?void 0:f.glyphGroup)==null?void 0:S[0];if(!y)continue;const P=Yc(y,this._documents,this._skeleton,n);if(!P)continue;a.push({rect:P,segmentId:e,segmentPageIndex:n,paragraph:x})}}}return a};if(e){const m=(g=(u=c.skeFooters.get(e))==null?void 0:u.values())!=null?g:(h=c.skeHeaders.get(e))==null?void 0:h.values();return m?l(Array.from(m)):a}return l(c.pages)}_buildBulletBounds(){var e;this._bulletDirty&&(this._bulletDirty=!1,this._bulletBounds=[],this._bulletBounds.push(...this._buildBulletBoundsBySegment()),(e=this._skeleton.getSkeletonData())==null||e.pages.forEach((n,r)=>{n.headerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(n.headerId,r)),n.footerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(n.footerId,r))}))}_calcActiveBullet(e){this._buildBulletBounds();const{x:n,y:r}=e;return this._bulletBounds.find(a=>He(n,r,a.rect))}_buildParagraphBoundsBySegment(e){var c,l,d;const n=this._skeleton.getSkeletonData(),s=this._documents.getOffsetConfig();if(!n)return null;const a=A=>{const u=new Map,h=(g,m,p,f)=>{Pr(g.sections,p,f,g.pageWidth-g.marginLeft-g.marginRight).forEach(v=>{if(!u.has(v.startIndex))u.set(v.startIndex,{rect:v.rect,paragraphStart:v.paragraphStart,paragraphEnd:v.paragraphEnd,startIndex:v.startIndex,rects:[v.rect],pageIndex:m,segmentId:e,firstLine:v.fisrtLine});else{const E=u.get(v.startIndex);E&&(E.rect.bottom=v.rect.bottom,E.rects.push(v.rect))}})};for(let g=0;g<A.length;g++){const m=A[g],p=((m.pageHeight===1/0?0:m.pageHeight)+s.pageMarginTop)*g+m.marginTop+s.docsTop,f=m.marginLeft+s.docsLeft;m.skeTables&&Array.from(m.skeTables.values()).forEach(S=>{const v=S.left+f,E=S.top+p,T=v+S.width,R=E+S.height,C=S.tableId;this._tableBounds.set(C,{rect:{left:v,top:E,right:T,bottom:R},pageIndex:g,tableId:C}),S.rows.forEach((x,B)=>{x.cells.forEach((y,P)=>{const O=((m.pageHeight===1/0?0:m.pageHeight)+s.pageMarginTop)*g+S.top+s.docsTop+m.marginTop+x.top+y.marginTop,_=S.left+s.docsLeft+m.marginLeft+y.left+y.marginLeft,F=Pr(y.sections,O,_,y.pageWidth-y.marginLeft-y.marginRight);let H=this._tableParagraphBounds.get(C);H||(H=[],this._tableParagraphBounds.set(C,H)),H.push(...F.map(L=>({rect:L.rect,paragraphStart:L.paragraphStart,paragraphEnd:L.paragraphEnd,startIndex:L.startIndex,pageIndex:g,segmentId:e,rowIndex:B,colIndex:P,firstLine:L.fisrtLine,tableId:C})));let U=this._tableCellBounds.get(C);U||(U=[],this._tableCellBounds.set(C,U)),U.push({rect:{top:O,left:_,right:_+y.pageWidth-y.marginLeft-y.marginRight,bottom:O+y.pageHeight-y.marginBottom-y.marginTop},pageIndex:g,rowIndex:B,colIndex:P,tableId:C})})})}),h(m,g,p,f)}return u};if(e){const A=(d=(c=n.skeFooters.get(e))==null?void 0:c.values())!=null?d:(l=n.skeHeaders.get(e))==null?void 0:l.values();return A?a(Array.from(A)):null}return a(n.pages)}_buildParagraphBounds(){var n,r;if(!this._paragraphDirty)return;this._paragraphDirty=!1,this._tableParagraphBounds=new Map,this._tableCellBounds=new Map,this._tableBounds=new Map,this._paragraphBounds=(n=this._buildParagraphBoundsBySegment())!=null?n:new Map,this._paragraphLeftBounds=Array.from(this._paragraphBounds.values()).map(s=>({...s,rect:{left:s.rect.left-60,right:s.rect.left,top:s.rect.top,bottom:s.rect.bottom}}));const e=s=>{var a;this._segmentParagraphBounds.set(s,(a=this._buildParagraphBoundsBySegment(s))!=null?a:new Map)};(r=this._skeleton.getSkeletonData())==null||r.pages.forEach(s=>{s.headerId&&e(s.headerId),s.footerId&&e(s.footerId)})}_calcActiveParagraph(e){var c,l;this._buildParagraphBounds();const{x:n,y:r}=e,s=Array.from(this._tableBounds.values()).find(d=>He(n,r,d.rect));if(this._hoverTable$.next(s),s){const d=(c=this._tableCellBounds.get(s.tableId))==null?void 0:c.find(h=>He(n,r,h.rect));if(this._hoverTableCell$.next(d),!d)return null;const A=(l=this._tableParagraphBounds.get(d.tableId))==null?void 0:l.filter(h=>h.colIndex===d.colIndex&&h.rowIndex===d.rowIndex),u=A==null?void 0:A.find(h=>He(n,r,h.rect));return u&&{...u,rects:[u.rect]}}return this._paragraphBounds.values().find(d=>d.rects.some(A=>He(n,r,A)))}_calcActiveParagraphLeft(e){this._buildParagraphBounds();const{x:n,y:r}=e;return this._paragraphLeftBounds.find(a=>He(n,r,a.rect))}get paragraphBounds(){return this._buildParagraphBounds(),this._paragraphBounds}};exports.DocEventManagerService=Gc([Xc(1,i.Inject(D.DocSkeletonManagerService))],exports.DocEventManagerService);const qc=[Me.id,me.id,Ne.id,Pe.id,Ue.id,we.id,ye.id,Le.id,De.id,Be.id];function Jc(o){const{avaliableMenus:t=qc}=o,e=I.useDependency(I.IMenuManagerService),[n,r]=w.useState([]);return w.useEffect(()=>{function s(){const c=e.getFlatMenuByPositionKey(I.MenuManagerPosition.RIBBON),l=[];for(const d of t){const A=c.find(u=>u.key===d);A&&l.push(A)}r(l)}s();const a=e.menuChanged$.subscribe(s);return()=>{a.unsubscribe()}},[e]),Q.jsx("div",{className:`
42
+ `," ");let s=this._umdToHtml.convert(t);if(t.length===1&&e){s=s.replace(/(<[a-z]+)/,(h,g)=>`${g} data-copy-id="${n}"`);const A=t[0],u={body:A.body};if((l=(c=A.body)==null?void 0:c.customBlocks)!=null&&l.length){u.drawings={};for(const h of A.body.customBlocks){const{blockId:g}=h,m=(d=A.drawings)==null?void 0:d[g];if(m){const p=i.Tools.generateRandomId(6);h.blockId=p,u.drawings[p]={...i.Tools.deepClone(m),drawingId:p}}}}Nn.set(n,u)}return this._clipboardInterfaceService.write(r,s)}addClipboardHook(t){return this._clipboardHooks.push(t),i.toDisposable(()=>{const e=this._clipboardHooks.indexOf(t);e>-1&&this._clipboardHooks.splice(e,1)})}_getDocumentBodyInRanges(t,e){var A;const n=this._univerInstanceService.getCurrentUniverDocInstance(),r=e!=null?e:this._docSelectionManagerService.getDocRanges(),s=[];let a=!0;if(n==null||r.length===0)return;const c=r[0].segmentId,l=(A=n==null?void 0:n.getSelfOrHeaderFooterModel(c))==null?void 0:A.getBody(),d=n.getSnapshot();if(l!=null){for(const u of r){const{startOffset:h,endOffset:g,collapsed:m,rangeType:p}=u;if(m||h==null||g==null)continue;if(p===i.DOC_RANGE_TYPE.RECT){a=!1;const{spanEntireRow:v}=u;let C;C=fr(l,h,g),s.push(C);continue}const f={startOffset:h,endOffset:g},S=n.getSelfOrHeaderFooterModel(c).sliceBody(f.startOffset,f.endOffset,t);S!=null&&s.push(S)}return{newSnapshotList:s.map(u=>({...d,body:u})),needCache:a,snapshot:d,ranges:r}}}async _genDocDataFromClipboardItems(t){try{let e="",n="";const r=[];for(const s of t)for(const a of s.types)switch(a){case I.PLAIN_TEXT_CLIPBOARD_MIME_TYPE:{n=await s.getType(a).then(c=>c&&c.text());break}case I.HTML_CLIPBOARD_MIME_TYPE:{e=await s.getType(a).then(c=>c&&c.text());break}case I.FILE__BMP_CLIPBOARD_MIME_TYPE:case I.FILE__JPEG_CLIPBOARD_MIME_TYPE:case I.FILE__WEBP_CLIPBOARD_MIME_TYPE:case I.FILE_PNG_CLIPBOARD_MIME_TYPE:{const c=await s.getType(a),l=new File([c],`pasted_image.${a.split("/")[1]}`,{type:a});r.push(l);break}}return!e&&!n&&r.length&&(e=await this._createImagePasteHtml(r)),this._genDocDataFromHtmlAndText(e,n)}catch(e){return Promise.reject(e)}}_genDocDataFromHtmlAndText(t,e,n){if(!t){if(e)return{body:i.BuildTextUtils.transform.fromPlainText(e)};throw new Error("[DocClipboardService] html and text cannot be both empty!")}const r=Qa(t);if(r){const a=Nn.get(r);if(a)return a}if(!n){const a=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);n=(a==null?void 0:a.getUnitId())||""}const s=this._htmlToUDM.convert(t,{unitId:n});return r&&Nn.set(r,s),s}async _createImagePasteHtml(t){var c,l;const e={id:"",documentStyle:{},body:{dataStream:"",customBlocks:[]},drawings:{}},n=async d=>{const A=new FileReader;return new Promise(u=>{A.onloadend=function(){u({source:A.result,imageSourceType:ao.ImageSourceType.BASE64})},A.readAsDataURL(d)})},r=d=>{const A=new Image,u=500;return new Promise(h=>{A.src=typeof d=="string"?d:URL.createObjectURL(d),A.onload=()=>{const g=Math.min(u,A.naturalWidth),m=A.naturalHeight/A.naturalWidth;h({width:g,height:g*m})}})},s=(l=(c=this._clipboardHooks.find(d=>d.onBeforePasteImage))==null?void 0:c.onBeforePasteImage)!=null?l:n;return await Promise.all(t.map(async(d,A)=>{var S;const u=await s(d);if(!u)return Promise.resolve();const{width:h=100,height:g=100}=await r(d),m=`paste_image_id_${A}`,p=e.body,f=e.drawings;p.dataStream+="\b",(S=p.customBlocks)==null||S.push({startIndex:A,blockId:m}),f[m]={drawingId:m,unitId:"",subUnitId:"",imageSourceType:u.imageSourceType,title:"",source:u.source,description:"",layoutType:i.PositionedObjectLayoutType.INLINE,drawingType:i.DrawingTypeEnum.DRAWING_IMAGE,transform:{width:h,height:g,angle:0},docTransform:{angle:0,size:{width:h,height:g},positionH:{relativeFrom:i.ObjectRelativeFromH.CHARACTER,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.LINE,posOffset:0}}}})),this._umdToHtml.convert([e])}};qn=Ga([dt(0,i.IUniverInstanceService),dt(1,i.ILogService),dt(2,i.ICommandService),dt(3,I.IClipboardInterfaceService),dt(4,i.Inject(B.DocSelectionManagerService))],qn);function pn(o){return o.getContextValue(i.FOCUSING_DOC)||o.getContextValue(i.EDITOR_ACTIVATED)}const Mo=999,Et={id:I.CopyCommand.id,name:"doc.command.copy",type:i.CommandType.COMMAND,multi:!0,priority:Mo,preconditions:pn,handler:async o=>o.get(_e).copy()},Do={id:"doc.command.copy-current-paragraph",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(_e),e=bt(o);return e?t.copy(i.SliceBodyType.copy,[{startOffset:e.paragraphStart,endOffset:e.paragraphEnd+1,collapsed:!1}]):!1}},fn={id:I.CutCommand.id,name:"doc.command.cut",type:i.CommandType.COMMAND,multi:!0,priority:Mo,preconditions:pn,handler:async o=>o.get(_e).cut()},Bo={id:"doc.command.cut-current-paragraph",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(_e),e=bt(o);return e?t.cut([{startOffset:e.paragraphStart,endOffset:e.paragraphEnd+1,collapsed:!1,rangeType:i.DOC_RANGE_TYPE.TEXT}]):!1}},Sn={id:I.PasteCommand.id,name:"doc.command.paste",type:i.CommandType.COMMAND,multi:!0,priority:Mo,preconditions:pn,handler:async o=>{const t=o.get(_e),n=await o.get(I.IClipboardInterfaceService).read();return n.length===0?!1:t.paste(n)}};var Xa=Object.getOwnPropertyDescriptor,Ka=(o,t,e,n)=>{for(var r=n>1?void 0:n?Xa(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Un=(o,t)=>(e,n)=>t(e,n,o);const Ya=11,qa=9,wt={ff:"Arial",fs:Ya};let Te=class extends i.Disposable{constructor(t,e,n){super();x(this,"_cacheStyle",null);this._textSelectionManagerService=t,this._univerInstanceService=e,this._renderManagerService=n,this._init()}_init(){this._listenDocRangeChange()}_listenDocRangeChange(){this.disposeWithMe(this._textSelectionManagerService.textSelection$.subscribe(()=>{this._clearStyleCache()}))}getStyleCache(){return this._cacheStyle}getDefaultStyle(){var a;const t=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(t==null)return{...wt};const e=t==null?void 0:t.getUnitId(),n=(a=this._renderManagerService.getRenderById(e))==null?void 0:a.with(B.DocSkeletonManagerService),r=n==null?void 0:n.getViewModel();return r==null?{...wt}:r.getEditArea()===M.DocumentEditArea.BODY?{...wt}:{...wt,fs:qa}}setStyleCache(t){this._cacheStyle={...this._cacheStyle,...t}}_clearStyleCache(){this._cacheStyle=null}};Te=Ka([Un(0,i.Inject(B.DocSelectionManagerService)),Un(1,i.IUniverInstanceService),Un(2,M.IRenderManagerService)],Te);function _o(o,t,e){const n=[];for(let r=0,s=o.length;r<s;r++)o[r]===i.DataStreamTreeTokenType.PARAGRAPH&&n.push({startIndex:r});if(t)for(const r of n)t.bullet&&(r.bullet=i.Tools.deepClone(t.bullet)),t.paragraphStyle&&(r.paragraphStyle=i.Tools.deepClone(t.paragraphStyle),delete r.paragraphStyle.borderBottom,t.paragraphStyle.headingId&&(r.paragraphStyle.headingId=i.generateRandomId(6)));if(e)for(const r of n)r.paragraphStyle||(r.paragraphStyle={}),r.paragraphStyle.borderBottom=e;return n}const In={id:"doc.command.break-line",type:i.CommandType.COMMAND,handler:(o,t)=>{var L,W,z,j,k;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=o.get(Te),a=(L=t==null?void 0:t.textRange)!=null?L:e.getActiveTextRange(),c=e.getRectRanges();if(a==null)return!1;if(c&&c.length){const{startOffset:V}=a;return e.replaceDocRanges([{startOffset:V,endOffset:V}]),!0}const{horizontalLine:l}=t!=null?t:{},{segmentId:d}=a,A=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(d!=null?d:"").getBody();if(A==null||u==null)return!1;const h=A.getUnitId(),{startOffset:g,endOffset:m}=a,f=((W=u.paragraphs)!=null?W:[]).find(V=>V.startIndex>=g);if(!f)return!1;const S=g===f.startIndex,v=f.startIndex,C=s.getDefaultStyle(),y=s.getStyleCache(),b=an(u,m,C,y),E={dataStream:i.DataStreamTreeTokenType.PARAGRAPH,paragraphs:_o(i.DataStreamTreeTokenType.PARAGRAPH,f,l),textRuns:[{st:0,ed:1,ts:{...b.ts}}]};if(A==null)return!1;const R=e.getActiveTextRange();if(u==null)return!1;const{collapsed:D}=a,T=E.dataStream.length,_=[{startOffset:g+T,endOffset:g+T,style:R==null?void 0:R.style,collapsed:D}],O={id:B.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:_,debounce:!0}},N=new i.TextX,F=i.JSONX.getInstance();if(D)g>0&&N.push({t:i.TextXActionType.RETAIN,len:g}),N.push({t:i.TextXActionType.INSERT,body:E,len:E.dataStream.length});else{const V=i.BuildTextUtils.selection.delete([a],u,0,E);N.push(...V)}(((z=f.bullet)==null?void 0:z.listType)===i.PresetListType.CHECK_LIST_CHECKED||(j=f.paragraphStyle)!=null&&j.headingId)&&(a.endOffset<v&&N.push({t:i.TextXActionType.RETAIN,len:v-a.endOffset}),N.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...f,paragraphStyle:{...f.paragraphStyle,...S?{headingId:void 0,namedStyleType:void 0}:null},startIndex:0,bullet:(k=f.paragraphStyle)!=null&&k.headingId?void 0:{...f.bullet,listType:i.PresetListType.CHECK_LIST}}]},coverType:i.UpdateDocsAttributeType.REPLACE})),O.params.textRanges=[{startOffset:g+T,endOffset:g+T,collapsed:D}];const H=J(A,d);return O.params.actions=F.editOp(N.serialize(),H),!!r.syncExecuteCommand(O.id,O.params)}},xt={id:"doc.command.horizontal-line",type:i.CommandType.COMMAND,handler:(o,t)=>o.get(i.ICommandService).syncExecuteCommand(In.id,{horizontalLine:{padding:5,color:{rgb:"#CDD0D8"},width:1,dashStyle:i.DashStyleType.SOLID},textRange:t==null?void 0:t.insertRange})},No={id:"doc.command.insert-horizontal-line-bellow",type:i.CommandType.COMMAND,handler:o=>{const t=o.get(i.ICommandService),e=bt(o);return e?t.syncExecuteCommand(xt.id,{insertRange:{startOffset:e.startIndex+1,endOffset:e.startIndex+1}}):!1}};function ue(o,t,e){return e.executeCommand(be.id,{preCommandId:o,...t!=null?t:{}})}const Sr="doc.command.set-inline-format-bold",Ne={id:Sr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Sr,t,e)}},Ir="doc.command.set-inline-format-italic",Pe={id:Ir,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Ir,t,e)}},vr="doc.command.set-inline-format-underline",Ue={id:vr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(vr,t,e)}},Er="doc.command.set-inline-format-strikethrough",we={id:Er,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Er,t,e)}},Cr="doc.command.set-inline-format-subscript",ye={id:Cr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Cr,t,e)}},Tr="doc.command.set-inline-format-superscript",Le={id:Tr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Tr,t,e)}},yr="doc.command.set-inline-format-fontsize",me={id:yr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(yr,t,e)}},br="doc.command.set-inline-format-font-family",Me={id:br,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(br,t,e)}},Rr="doc.command.set-inline-format-text-color",De={id:Rr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Rr,t,e)}},xr="doc.command.set-inline-format-text-background-color",Be={id:xr,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(xr,t,e)}},Or="doc.command.reset-inline-format-text-background-color",at={id:Or,type:i.CommandType.COMMAND,handler:async(o,t)=>{const e=o.get(i.ICommandService);return ue(Or,t,e)}},Jn={[Ne.id]:"bl",[Pe.id]:"it",[Ue.id]:"ul",[we.id]:"st",[me.id]:"fs",[Me.id]:"ff",[De.id]:"cl",[Be.id]:"bg",[at.id]:"bg",[ye.id]:"va",[Le.id]:"va"},be={id:"doc.command.set-inline-format",type:i.CommandType.COMMAND,handler:async(o,t)=>{var b;const{value:e,preCommandId:n}=t,r=o.get(i.ICommandService),s=o.get(B.DocSelectionManagerService),a=o.get(i.IUniverInstanceService),c=o.get(Te),l=s.getDocRanges(),d=(b=l.find(E=>E.isActive))!=null?b:l[0];if(l.length===0)return!1;const{segmentId:A}=l[0],u=a.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(u==null)return!1;const h=u.getSelfOrHeaderFooterModel(A).getBody();if(h==null)return!1;const g=u.getUnitId();let m;switch(n){case Ne.id:case Pe.id:case Ue.id:case we.id:case ye.id:case Le.id:{const E=c.getDefaultStyle(),R=Xi(h,d,E);m=Za(R,n);break}case me.id:case Me.id:{m=e;break}case De.id:case Be.id:{m={rgb:e};break}case at.id:{m={rgb:null};break}default:throw new Error(`Unknown command: ${n} in handleInlineFormat`)}const p={id:B.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:l}},f=new i.TextX,S=i.JSONX.getInstance(),v=new i.MemoryCursor;v.reset();for(const E of l){let{startOffset:R,endOffset:D,rangeType:T}=E;if(R==null||D==null)continue;if(T===i.DOC_RANGE_TYPE.RECT&&(R=R-1),R===D){const N=c.getStyleCache(),F=Jn[n];c.setStyleCache({[F]:(N==null?void 0:N[F])!==void 0?Gi(N,F,n):m});continue}const _={dataStream:"",textRuns:[{st:0,ed:D-R,ts:{[Jn[n]]:m}}]},O=R-v.cursor;O!==0&&f.push({t:i.TextXActionType.RETAIN,len:O}),f.push({t:i.TextXActionType.RETAIN,body:_,len:D-R}),v.reset(),v.moveCursor(D)}const C=J(u,A);return p.params.actions=S.editOp(f.serialize(),C),!!r.syncExecuteCommand(p.id,p.params)}};function Ja(o){return o!==null&&typeof o=="object"}function Gi(o,t,e){if(/bl|it/.test(t))return(o==null?void 0:o[t])===i.BooleanNumber.TRUE?i.BooleanNumber.FALSE:i.BooleanNumber.TRUE;if(/ul|st/.test(t))return Ja(o==null?void 0:o[t])&&(o==null?void 0:o[t]).s===i.BooleanNumber.TRUE?{s:i.BooleanNumber.FALSE}:{s:i.BooleanNumber.TRUE};if(/va/.test(t))return e===ye.id?(o==null?void 0:o[t])===i.BaselineOffset.SUBSCRIPT?i.BaselineOffset.NORMAL:i.BaselineOffset.SUBSCRIPT:(o==null?void 0:o[t])===i.BaselineOffset.SUPERSCRIPT?i.BaselineOffset.NORMAL:i.BaselineOffset.SUPERSCRIPT}function Xi(o,t,e){var A,u,h,g,m,p,f,S,v,C,y,b,E,R;const{startOffset:n,endOffset:r,collapsed:s}=t;if(s){const D=(A=o.textRuns)!=null?A:[];let T=null;for(let _=D.length-1;_>=0;_--){const O=D[_];if(O.st<n&&n<=O.ed){T=O;break}}return T!=null&&T.ts?{...e,...T.ts}:e}const{textRuns:a=[]}=i.getBodySlice(o,n,r),c=i.Tools.deepClone(e),l=a.map(D=>{var T;return(T=D==null?void 0:D.ts)==null?void 0:T.fs}).filter(Boolean);c.fs=c.fs?Math.max(c.fs,...l):l.length?Math.max(...l):void 0,c.fs=!c.fs||Number.isNaN(c.fs)?void 0:c.fs,c.ff=(g=(h=(u=a.find(D=>{var T;return((T=D.ts)==null?void 0:T.ff)!=null}))==null?void 0:u.ts)==null?void 0:h.ff)!=null?g:c.ff,c.it=a.length&&a.every(D=>{var T;return((T=D.ts)==null?void 0:T.it)===i.BooleanNumber.TRUE})?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE,c.bl=a.length&&a.every(D=>{var T;return((T=D.ts)==null?void 0:T.bl)===i.BooleanNumber.TRUE})?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE,c.ul=a.length&&a.every(D=>{var T,_;return((_=(T=D.ts)==null?void 0:T.ul)==null?void 0:_.s)===i.BooleanNumber.TRUE})?(m=a[0].ts)==null?void 0:m.ul:c.ul,c.st=a.length&&a.every(D=>{var T,_;return((_=(T=D.ts)==null?void 0:T.st)==null?void 0:_.s)===i.BooleanNumber.TRUE})?(p=a[0].ts)==null?void 0:p.st:c.st,c.bg=(v=(S=(f=a.find(D=>{var T;return((T=D.ts)==null?void 0:T.bg)!=null}))==null?void 0:f.ts)==null?void 0:S.bg)!=null?v:c.bg,c.cl=(b=(y=(C=a.find(D=>{var T;return((T=D.ts)==null?void 0:T.cl)!=null}))==null?void 0:C.ts)==null?void 0:y.cl)!=null?b:c.cl;const d=a.filter(D=>{var T;return((T=D==null?void 0:D.ts)==null?void 0:T.va)!=null});if(d.length>0&&d.length===a.length){const D=(E=d[0].ts)==null?void 0:E.va;let T=!0;for(let _=1;_<d.length;_++)if(((R=d[_].ts)==null?void 0:R.va)!==D){T=!1;break}T&&(c.va=D)}return c}function Za(o,t){const e=Jn[t];return Gi(o,e,t)}const ct={id:"doc.command.list-operation",type:i.CommandType.COMMAND,handler:(o,t)=>{var y,b,E,R,D,T;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=t.listType,a=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=(b=(y=t.docRange)!=null?y:e.getDocRanges())!=null?b:[];if(a==null||c.length===0)return!1;const l=c[0].segmentId,d=a.getSelfOrHeaderFooterModel(l),A=(R=(E=d.getBody())==null?void 0:E.paragraphs)!=null?R:[],u=(T=(D=d.getBody())==null?void 0:D.dataStream)!=null?T:"";if(!A.length)return!1;const h=i.BuildTextUtils.range.getParagraphsInRanges(c,A,u),g=a.getUnitId(),m={id:B.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:c,isEditing:!1}};new i.MemoryCursor().reset();const f=i.BuildTextUtils.paragraph.bullet.switch({paragraphs:h,listType:s,document:a,segmentId:l}),S=i.JSONX.getInstance(),v=J(a,l);return m.params.actions=S.editOp(f.serialize(),v),!!r.syncExecuteCommand(m.id,m.params)}},Ot={id:"doc.command.change-list-type",type:i.CommandType.COMMAND,handler:(o,t)=>{var C,y,b,E,R;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),{listType:s}=t,a=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=(C=t.docRange)!=null?C:e.getDocRanges();if(a==null||c==null||!c.length)return!1;const{segmentId:l}=c[0],d=a.getSelfOrHeaderFooterModel(l),A=(b=(y=d.getBody())==null?void 0:y.paragraphs)!=null?b:[],u=(R=(E=d.getBody())==null?void 0:E.dataStream)!=null?R:"";if(!A.length)return!1;const h=i.BuildTextUtils.range.getParagraphsInRanges(c,A,u),g=a.getUnitId(),m=i.BuildTextUtils.paragraph.bullet.set({paragraphs:h,listType:s,segmentId:l,document:a});if(!m)return!1;const p=i.JSONX.getInstance(),f={id:B.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:c,isEditing:!1}},S=J(a,l);return f.params.actions=p.editOp(m.serialize(),S),!!r.syncExecuteCommand(f.id,f.params)}};var It=(o=>(o[o.increase=1]="increase",o[o.decrease=-1]="decrease",o))(It||{});const Yt={id:"doc.command.change-list-nesting-level",type:i.CommandType.COMMAND,handler:(o,t)=>{var y,b,E,R,D;if(!t)return!1;const{type:e}=t,n=o.get(B.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=r.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=n.getActiveTextRange();if(a==null||c==null)return!1;const{segmentId:l}=c,d=(y=n.getDocRanges())!=null?y:[],A=a.getSelfOrHeaderFooterModel(l),u=(E=(b=A.getBody())==null?void 0:b.paragraphs)!=null?E:[],h=(D=(R=A.getBody())==null?void 0:R.dataStream)!=null?D:"";if(!u.length)return!1;const g=i.BuildTextUtils.range.getParagraphsInRange(c,u,h),m=a.getUnitId(),p=i.JSONX.getInstance(),f=i.BuildTextUtils.paragraph.bullet.changeNestLevel({paragraphs:g,type:e,segmentId:l,document:a}),S={id:B.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:d,isEditing:!1}},v=J(a,l);return S.params.actions=p.editOp(f.serialize(),v),!!s.syncExecuteCommand(S.id,S.params)}},nt={id:"doc.command.bullet-list",type:i.CommandType.COMMAND,handler:(o,t)=>{const e=o.get(i.ICommandService);return t!=null&&t.value?e.syncExecuteCommand(Ot.id,{listType:t.value,docRange:t.docRange}):e.syncExecuteCommand(ct.id,{listType:i.PresetListType.BULLET_LIST,docRange:t==null?void 0:t.docRange})}},Ct={id:"doc.command.check-list",type:i.CommandType.COMMAND,handler:(o,t)=>{const e=o.get(i.ICommandService);return t!=null&&t.value?e.syncExecuteCommand(Ot.id,{listType:t.value,docRange:t.docRange}):e.syncExecuteCommand(ct.id,{listType:i.PresetListType.CHECK_LIST,docRange:t==null?void 0:t.docRange})}},Po={id:"doc.command.toggle-check-list",type:i.CommandType.COMMAND,handler:(o,t)=>{var p;if(!t)return!1;const e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),{index:r,segmentId:s,textRanges:a}=t,c=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(c==null||((p=c.getSelfOrHeaderFooterModel(s).getBody())==null?void 0:p.paragraphs)==null)return!1;const d=c.getUnitId(),A={id:B.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:a!=null?a:[],segmentId:s,isEditing:!1}},u=i.BuildTextUtils.paragraph.bullet.toggleChecklist({document:c,paragraphIndex:r,segmentId:s});if(!u)return!1;const h=i.JSONX.getInstance(),g=J(c,s);return A.params.actions=h.editOp(u.serialize(),g),!!n.syncExecuteCommand(A.id,A.params)}},ot={id:"doc.command.order-list",type:i.CommandType.COMMAND,handler:(o,t)=>{const e=o.get(i.ICommandService);return t!=null&&t.value?e.syncExecuteCommand(Ot.id,{listType:t.value}):e.syncExecuteCommand(ct.id,{listType:i.PresetListType.ORDER_LIST})}},Uo={id:"doc.command.quick-list",type:i.CommandType.COMMAND,handler(o,t){var X,K,Y,G,q;if(!t)return!1;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=e.getActiveTextRange();if(s==null||a==null)return!1;const{segmentId:c,startOffset:l}=a,{listType:d,paragraph:A}=t,{paragraphStart:u,paragraphEnd:h}=A,g=new i.TextX,m=i.JSONX.getInstance(),{defaultTabStop:p=36}=s.getSnapshot().documentStyle,f=(K=(X=s.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:X.sectionBreaks)!=null?K:[],{startIndex:S,paragraphStyle:v={}}=A,{indentFirstLine:C,snapToGrid:y,indentStart:b}=v,E=i.PRESET_LIST_TYPE[d].nestingLevel[0].paragraphProperties||{},{hanging:R,indentStart:D}=E,T=E.textStyle,{charSpace:_,gridType:O}=$a(S,f)||{charSpace:0,gridType:i.GridType.LINES},N=M.getCharSpaceApply(_,p,O,y);let H=i.Tools.generateRandomId(6);const U=(G=(Y=s.getBody())==null?void 0:Y.paragraphs)!=null?G:[],L=U.findIndex(ee=>ee.startIndex===A.startIndex),W=U[L-1],z=U[L+1];W&&W.bullet&&W.bullet.listType.indexOf(d)===0?H=W.bullet.listId:z&&z.bullet&&z.bullet.listType.indexOf(d)===0&&(H=z.bullet.listId);const j={id:B.RichTextEditingMutation.id,params:{unitId:s.getUnitId(),actions:[],textRanges:[{startOffset:u,endOffset:u,collapsed:!0}],isEditing:!1}};g.push({t:i.TextXActionType.RETAIN,len:u}),g.push({t:i.TextXActionType.DELETE,len:l-u}),h>l&&g.push({t:i.TextXActionType.RETAIN,len:h-l}),g.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:{...v,textStyle:{...v.textStyle,...T},indentFirstLine:void 0,hanging:R,indentStart:{v:M.getNumberUnitValue(D,N)-M.getNumberUnitValue(R,N)+M.getNumberUnitValue(C,N)+M.getNumberUnitValue(b,N)}},bullet:{...(q=A.bullet)!=null?q:{nestingLevel:0,textStyle:{fs:20}},listType:d,listId:H}}]}});const k=J(s,c);return j.params.actions=m.editOp(g.serialize(),k),!!r.syncExecuteCommand(j.id,j.params)}};function wo(o,t){var A,u;const e=o.get(i.ICommandService),n=bt(o);if(!n)return!1;const r=o.get(i.IUniverInstanceService).getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!r)return!1;const s=i.BuildTextUtils.selection.replace({doc:r,selection:{startOffset:n.startIndex+1,endOffset:n.startIndex+1,collapsed:!0},body:{dataStream:"\r",paragraphs:[{startIndex:0,paragraphStyle:{...n.paragraphStyle},bullet:{listType:t,listId:((A=n.bullet)==null?void 0:A.listType)===t?n.bullet.listId:i.Tools.generateRandomId(6),nestingLevel:((u=n.bullet)==null?void 0:u.listType)===t?n.bullet.nestingLevel:0}}]}});if(!s)return!1;const a={id:B.RichTextEditingMutation.id,params:{unitId:r.getUnitId(),actions:[],textRanges:[{startOffset:n.startIndex+1,endOffset:n.startIndex+1,collapsed:!0}],isEditing:!1}},c=i.JSONX.getInstance(),l=J(r);return a.params.actions=c.editOp(s.serialize(),l),!!e.syncExecuteCommand(a.id,a.params)}const Lo={id:"doc.command.insert-bullet-list-bellow",type:i.CommandType.COMMAND,handler:o=>wo(o,i.PresetListType.BULLET_LIST)},Qo={id:"doc.command.insert-order-list-bellow",type:i.CommandType.COMMAND,handler:o=>wo(o,i.PresetListType.ORDER_LIST)},Fo={id:"doc.command.insert-check-list-bellow",type:i.CommandType.COMMAND,handler:o=>wo(o,i.PresetListType.CHECK_LIST)};function $a(o,t){const e=t.sort(i.sortRulesFactory("startIndex"));for(let n=0;n<e.length;n++){const r=t[n];if(r.startIndex>=o)return r}}const le={id:"doc.command.set-paragraph-named-style",type:i.CommandType.COMMAND,handler(o,t){var m;if(!t)return!1;const n=o.get(i.IUniverInstanceService).getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!n)return!1;const r=n.getUnitId(),s=o.get(B.DocSelectionManagerService),a=(m=t.textRanges)!=null?m:s.getTextRanges({unitId:r,subUnitId:r});if(!(a!=null&&a.length))return!1;const c=a[0].segmentId,l=i.BuildTextUtils.paragraph.style.set({document:n.getSelfOrHeaderFooterModel(c),textRanges:a,style:{namedStyleType:t.value,headingId:!t.value||t.value===i.NamedStyleType.NORMAL_TEXT?void 0:i.generateRandomId(6),spaceAbove:void 0,spaceBelow:void 0},paragraphTextRun:{}}),d={id:B.RichTextEditingMutation.id,params:{actions:[],textRanges:a,unitId:r,segmentId:c}},A=i.JSONX.getInstance(),u=J(n,c);return d.params.actions=A.editOp(l.serialize(),u),!!o.get(i.ICommandService).syncExecuteCommand(d.id,d.params)}},Ki={id:"doc.command.quick-heading",type:i.CommandType.COMMAND,handler(o,t){var b,E,R,D;if(!t)return!1;const{value:e}=t,n=o.get(B.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=r.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),c=n.getActiveTextRange();if(a==null||c==null||!c.collapsed)return!1;const{segmentId:l,startOffset:d}=c,A=a.getSelfOrHeaderFooterModel(l),u=(E=(b=A.getBody())==null?void 0:b.paragraphs)!=null?E:[],h=(D=(R=A.getBody())==null?void 0:R.dataStream)!=null?D:"",g=i.BuildTextUtils.paragraph.util.getParagraphsInRange(c,u,h)[0];if(!g)return!1;const{paragraphStart:m}=g,p=new i.TextX,f=i.JSONX.getInstance(),{paragraphStyle:S={}}=g,v={id:B.RichTextEditingMutation.id,params:{unitId:a.getUnitId(),actions:[],textRanges:[{startOffset:m,endOffset:m,collapsed:!0}],isEditing:!1}};p.push({t:i.TextXActionType.RETAIN,len:m}),i.BuildTextUtils.paragraph.style.set({textRanges:[c],document:a,style:{...S,headingId:i.generateRandomId(6),namedStyleType:e},cursor:d,deleteLen:d-m,textX:p,paragraphTextRun:{}});const C=J(a,l);return v.params.actions=f.editOp(p.serialize(),C),!!s.syncExecuteCommand(v.id,v.params)}},wn={"#":i.NamedStyleType.HEADING_1,"##":i.NamedStyleType.HEADING_2,"###":i.NamedStyleType.HEADING_3,"####":i.NamedStyleType.HEADING_4,"#####":i.NamedStyleType.HEADING_5},Ho={id:"doc.command.h1-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_1})},ko={id:"doc.command.h2-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_2})},Vo={id:"doc.command.h3-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_3})},jo={id:"doc.command.h4-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_4})},Wo={id:"doc.command.h5-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.HEADING_5})},qt={id:"doc.command.normal-text-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.NORMAL_TEXT})},Yi={id:"doc.command.title",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.TITLE})},qi={id:"doc.command.subtitle-heading",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(le.id,{value:i.NamedStyleType.SUBTITLE})},pe={id:"doc.command.align-action",type:i.CommandType.COMMAND,handler:(o,t)=>{var b,E,R,D;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),{alignType:s}=t,a=n.getCurrentUniverDocInstance();if(a==null)return!1;const c=e.getDocRanges();if(c.length===0)return!1;const l=c[0].segmentId,d=a.getSelfOrHeaderFooterModel(l),A=(E=(b=d.getBody())==null?void 0:b.paragraphs)!=null?E:[],u=(D=(R=d.getBody())==null?void 0:R.dataStream)!=null?D:"";if(A==null)return!1;const h=i.BuildTextUtils.range.getParagraphsInRanges(c,A,u),g=a.getUnitId(),m=h.every(T=>{var _;return((_=T.paragraphStyle)==null?void 0:_.horizontalAlign)===s}),p={id:B.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:c}},f=new i.MemoryCursor;f.reset();const S=new i.TextX,v=i.JSONX.getInstance();for(const T of h){const{startIndex:_}=T;S.push({t:i.TextXActionType.RETAIN,len:_-f.cursor});const O={...T.paragraphStyle,horizontalAlign:m?i.HorizontalAlign.UNSPECIFIED:s};S.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...T,paragraphStyle:O,startIndex:0}]},coverType:i.UpdateDocsAttributeType.REPLACE}),f.moveCursorTo(_+1)}const C=J(a,l);return p.params.actions=v.editOp(S.serialize(),C),!!r.syncExecuteCommand(p.id,p.params)}},Mt={id:"doc.command.align-left",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.LEFT})},Dt={id:"doc.command.align-center",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.CENTER})},Bt={id:"doc.command.align-right",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.RIGHT})},_t={id:"doc.command.align-justify",type:i.CommandType.COMMAND,handler:o=>o.get(i.ICommandService).syncExecuteCommand(pe.id,{alignType:i.HorizontalAlign.JUSTIFIED})},vn={id:"doc.command.switch-mode",type:i.CommandType.COMMAND,handler:async o=>{var v,C,y,b,E;const t=o.get(i.ICommandService),e=o.get(M.IRenderManagerService),n=o.get(B.DocSelectionManagerService),s=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(s==null)return!1;const a=s.getUnitId(),c=(v=e.getRenderById(a))==null?void 0:v.with(B.DocSkeletonManagerService).getSkeleton(),l=(C=e.getRenderById(a))==null?void 0:C.with(exports.DocSelectionRenderService);if(c==null||l==null)return!1;const d=l==null?void 0:l.getSegment(),A=l==null?void 0:l.getSegmentPage(),u=s.getSnapshot().documentStyle.documentFlavor,h=n.getDocRanges(),g={id:B.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:u===i.DocumentFlavor.TRADITIONAL&&d?[]:h}},m=i.JSONX.getInstance(),p=[];let f;if(u===void 0?f=m.insertOp(["documentStyle","documentFlavor"],i.DocumentFlavor.MODERN):u===i.DocumentFlavor.MODERN?f=m.replaceOp(["documentStyle","documentFlavor"],u,i.DocumentFlavor.TRADITIONAL):f=m.replaceOp(["documentStyle","documentFlavor"],u,i.DocumentFlavor.MODERN),f)p.push(f);else return!1;if(u!==i.DocumentFlavor.MODERN){const R=s.getSnapshot(),{drawings:D={},body:T}=R,_=(y=T==null?void 0:T.customBlocks)!=null?y:[];for(const O in D){const N=D[O],F=_.find(q=>q.blockId===O);if(F==null)continue;const H=N.docTransform.positionV,{relativeFrom:U,posOffset:L}=H;if(U===i.ObjectRelativeFromV.PARAGRAPH)continue;const{startIndex:W}=F,z=c.findNodeByCharIndex(W,d,A),j=(b=z==null?void 0:z.parent)==null?void 0:b.parent,k=j==null?void 0:j.parent,V=k==null?void 0:k.lines.find(q=>q.paragraphIndex===(j==null?void 0:j.paragraphIndex)&&q.paragraphStart),X=(E=k==null?void 0:k.parent)==null?void 0:E.parent;if(z==null||j==null||V==null||k==null||X==null)continue;let K=0;U===i.ObjectRelativeFromV.LINE?K-=j.top:U===i.ObjectRelativeFromV.PAGE&&(K+=X.marginTop),K+=V.top;const Y={...H,relativeFrom:i.ObjectRelativeFromV.PARAGRAPH,posOffset:(L!=null?L:0)-K},G=m.replaceOp(["drawings",O,"docTransform","positionV"],H,Y);G&&p.push(G)}}return g.params.actions=p.reduce((R,D)=>i.JSONX.compose(R,D),null),!!t.syncExecuteCommand(g.id,g.params)}},Ji="COMPONENT_DOC_CREATE_TABLE_CONFIRM",ec="doc.command.create-table",zo={id:ec,type:i.CommandType.COMMAND,handler:async(o,t)=>{var Y,G,q,ee,ge;const{rowCount:e,colCount:n}=t,r=o.get(B.DocSelectionManagerService),s=o.get(i.IUniverInstanceService),a=o.get(i.ICommandService),c=o.get(Te),l=r.getActiveTextRange();if(l==null)return!1;const{segmentId:d,segmentPage:A}=l,u=s.getCurrentUniverDocInstance(),h=u==null?void 0:u.getSelfOrHeaderFooterModel(d).getBody();if(u==null||h==null)return!1;const g=u.getUnitId(),m=ce(o,g),p=m==null?void 0:m.getSkeleton();if(p==null)return!1;const{startOffset:f}=l,v=((Y=h.paragraphs)!=null?Y:[]).find(xe=>xe.startIndex>=f),C=p.findNodeByCharIndex(f,d,A);if(C==null)return!1;const y=new i.TextX,b=i.JSONX.getInstance(),E=[],R=f+4,D=[{startOffset:R,endOffset:R,collapsed:!0}],T={id:B.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:D}};f>0&&y.push({t:i.TextXActionType.RETAIN,len:f}),y.push({t:i.TextXActionType.INSERT,body:{dataStream:i.DataStreamTreeTokenType.PARAGRAPH,paragraphs:_o(i.DataStreamTreeTokenType.PARAGRAPH,v)},len:1});const _=c.getDefaultStyle(),O=c.getStyleCache(),N=an(h,f,_,O),{dataStream:F,paragraphs:H,sectionBreaks:U}=Ca(e,n),L=(ge=(ee=(q=(G=C.parent)==null?void 0:G.parent)==null?void 0:q.parent)==null?void 0:ee.parent)==null?void 0:ge.parent;if(L==null)return!1;const{pageWidth:W,marginLeft:z,marginRight:j}=L,k=Co(e,n,W-z-j);y.push({t:i.TextXActionType.INSERT,body:{dataStream:F,paragraphs:H,sectionBreaks:U,textRuns:[{...N,st:0,ed:F.length}],tables:[{startIndex:0,endIndex:F.length,tableId:k.tableId}]},len:F.length});const V=J(u,d);E.push(b.editOp(y.serialize(),V));const X=b.insertOp(["tableSource",k.tableId],k);return E.push(X),T.params.actions=E.reduce((xe,he)=>i.JSONX.compose(xe,he),null),!!a.syncExecuteCommand(T.id,T.params)}},Ln="doc.component.create-table-confirm",En={id:"doc.operation.create-table",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(i.LocaleService),e=o.get(I.IConfirmService),n=o.get(i.ICommandService),r={rowCount:3,colCount:5},s=(a,c)=>{r.rowCount=a,r.colCount=c};return await e.open({id:Ln,children:{label:{name:Ji,props:{handleRowColChange:s,tableCreateParams:r}}},width:400,title:{title:t.t("toolbar.table.insert")},onConfirm:()=>{n.executeCommand(zo.id,r),e.close(Ln)},onClose:()=>{e.close(Ln)}}),!0}};function tc(o){const t=o.get(i.IUniverInstanceService),e=o.get(M.IRenderManagerService);return new P.Observable(n=>{const r=t.focused$.subscribe(s=>{if(s==null||t.getUnitType(s)!==i.UniverInstanceType.UNIVER_DOC)return n.next(!0);const c=e.getRenderById(s);if(c==null)return n.next(!0);c.with(B.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(d=>{n.next(d===M.DocumentEditArea.HEADER||d===M.DocumentEditArea.FOOTER)})});return()=>r.unsubscribe()})}function nc(o){const t=o.get(i.IUniverInstanceService),e=o.get(i.ICommandService);return new P.Observable(n=>{const r=e.onCommandExecuted(l=>{if(l.id===B.RichTextEditingMutation.id){const{unitId:d}=l.params,A=t.getUnit(d);if(A==null){n.next(!0);return}const{documentStyle:u}=A.getSnapshot();n.next((u==null?void 0:u.documentFlavor)!==i.DocumentFlavor.TRADITIONAL)}}),s=t.focused$.subscribe(l=>{if(l==null)return n.next(!0);const d=t.getUniverDocInstance(l),A=d==null?void 0:d.getSnapshot().documentStyle.documentFlavor;n.next(A!==i.DocumentFlavor.TRADITIONAL)}),a=t.getCurrentUniverDocInstance();if(a==null)return n.next(!0);const c=a==null?void 0:a.getSnapshot().documentStyle.documentFlavor;return n.next(c!==i.DocumentFlavor.TRADITIONAL),()=>{r.dispose(),s.unsubscribe()}})}function oc(o){const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new P.Observable(n=>{const r=t.textSelection$.subscribe(s=>{if(s==null){n.next(!0);return}const{textRanges:a}=s;if(a.length!==1){n.next(!0);return}const c=a[0],{collapsed:l,startNodePosition:d,startOffset:A}=c;if(!l||A==null){n.next(!0);return}const u=e.getCurrentUniverDocInstance();if(u==null){n.next(!0);return}const h=ce(o,u.getUnitId());if(h==null){n.next(!0);return}if(h.getViewModel().getCustomRangeRaw(A)){n.next(!0);return}if(d!=null){const{path:p}=d;if(p.indexOf("cells")!==-1){n.next(!0);return}}n.next(!1)});return()=>r.unsubscribe()})}function $(o){const t=o.get(B.DocSelectionManagerService);return new P.Observable(e=>{const n=t.textSelection$.subscribe(r=>{if(r==null){e.next(!0);return}const{textRanges:s,rectRanges:a}=r;if(s.length===0&&a.length===0){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}function rc(o){const t=o.get(i.ICommandService);return{id:Ne.id,type:I.MenuItemType.BUTTON,icon:"BoldSingle",title:"Set bold",tooltip:"toolbar.bold",activated$:new P.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.bl;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===B.SetTextSelectionsOperation.id||a===be.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function ic(o){const t=o.get(i.ICommandService);return{id:Pe.id,type:I.MenuItemType.BUTTON,icon:"ItalicSingle",title:"Set italic",tooltip:"toolbar.italic",activated$:new P.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.it;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===B.SetTextSelectionsOperation.id||a===be.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function sc(o){const t=o.get(i.ICommandService);return{id:Ue.id,type:I.MenuItemType.BUTTON,icon:"UnderlineSingle",title:"Set underline",tooltip:"toolbar.underline",activated$:new P.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.ul;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===B.SetTextSelectionsOperation.id||a===be.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function ac(o){const t=o.get(i.ICommandService);return{id:we.id,type:I.MenuItemType.BUTTON,icon:"StrikethroughSingle",title:"Set strike through",tooltip:"toolbar.strikethrough",activated$:new P.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.st;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===B.SetTextSelectionsOperation.id||a===be.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function cc(o){const t=o.get(i.ICommandService);return{id:ye.id,type:I.MenuItemType.BUTTON,icon:"SubscriptSingle",tooltip:"toolbar.subscript",activated$:new P.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUBSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===B.SetTextSelectionsOperation.id||a===be.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function lc(o){const t=o.get(i.ICommandService);return{id:Le.id,type:I.MenuItemType.BUTTON,icon:"SuperscriptSingle",tooltip:"toolbar.superscript",activated$:new P.Observable(e=>{const n=()=>{var c;const s=Qe(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUPERSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===B.SetTextSelectionsOperation.id||a===be.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function dc(o){const t=o.get(i.ICommandService);return{id:Me.id,tooltip:"toolbar.font",type:I.MenuItemType.SELECTOR,label:Mi,selections:I.FONT_FAMILY_LIST.map(e=>({label:{name:Di},value:e.value})),value$:new P.Observable(e=>{const n=i.DEFAULT_STYLES.ff,r=()=>{var l;const a=Qe(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.ff;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===B.SetTextSelectionsOperation.id||c===Me.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ac(o){const t=o.get(i.ICommandService);return{id:me.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:Bi,props:{min:1,max:400}},selections:I.FONT_SIZE_LIST,value$:new P.Observable(e=>{const n=i.DEFAULT_STYLES.fs,r=()=>{var l;const a=Qe(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.fs;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===B.SetTextSelectionsOperation.id||c===me.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function uc(o){const t=o.get(i.ICommandService);return{id:le.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.heading.tooltip",label:{name:I.COMMON_LABEL_COMPONENT,props:{selections:I.HEADING_LIST}},selections:I.HEADING_LIST.map(e=>({label:{name:I.HEADING_ITEM_COMPONENT,props:{value:e.value,text:e.label}},value:e.value})),value$:new P.Observable(e=>{const n=i.NamedStyleType.NORMAL_TEXT,r=()=>{var l,d;const a=Ge(o);if(a==null){e.next(n);return}const c=(d=(l=a.paragraphStyle)==null?void 0:l.namedStyleType)!=null?d:n;e.next(c)},s=t.onCommandExecuted(a=>{const c=a.id;(c===B.SetTextSelectionsOperation.id||c===me.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function gc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:De.id,icon:"FontColor",tooltip:"toolbar.textColor.main",type:I.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:vo,hoverable:!1,selectable:!1}}],value$:new P.Observable(n=>{const r=e.getCurrentTheme().textColor,s=t.onCommandExecuted(a=>{if(a.id===De.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function hc(o){return{id:So.id,type:I.MenuItemType.BUTTON,icon:"HeaderFooterSingle",tooltip:"toolbar.headerFooter",hidden$:P.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),nc(o),(t,e)=>t||e)}}const mc="GridSingle",Zi="doc.menu.table";function pc(o){return{id:Zi,type:I.MenuItemType.SUBITEMS,icon:mc,tooltip:"toolbar.table.main",disabled$:oc(o),hidden$:P.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),tc(o),(t,e)=>t||e)}}function fc(o){return{id:En.id,title:"toolbar.table.insert",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Sc(o){const t=o.get(i.ICommandService);return{id:Mt.id,type:I.MenuItemType.BUTTON,icon:"LeftJustifyingSingle",tooltip:"toolbar.alignLeft",disabled$:$(o),activated$:new P.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===B.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.LEFT)}});return e.next(!1),n.dispose}),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Ic(o){const t=o.get(i.ICommandService);return{id:Dt.id,type:I.MenuItemType.BUTTON,icon:"HorizontallySingle",tooltip:"toolbar.alignCenter",activated$:new P.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===B.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.CENTER)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function vc(o){const t=o.get(i.ICommandService);return{id:Bt.id,type:I.MenuItemType.BUTTON,icon:"RightJustifyingSingle",tooltip:"toolbar.alignRight",activated$:new P.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===B.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.RIGHT)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Ec(o){const t=o.get(i.ICommandService);return{id:_t.id,type:I.MenuItemType.BUTTON,icon:"AlignTextBothSingle",tooltip:"toolbar.alignJustify",activated$:new P.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===B.SetTextSelectionsOperation.id||s===pe.id){const c=Ge(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.JUSTIFIED)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Cc(o){return{id:xt.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",tooltip:"toolbar.horizontalLine",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const Tt=o=>new P.Observable(t=>{const e=o.get(i.IUniverInstanceService),n=o.get(B.DocSelectionManagerService);let r;const s=e.focused$.subscribe(a=>{if(r==null||r.unsubscribe(),a==null)return;const c=e.getUniverDocInstance(a);c!=null&&(r=n.textSelection$.subscribe(()=>{var A,u,h,g,m;const l=n.getDocRanges(),d=(A=l.find(p=>p.isActive))!=null?A:l[0];if(d){const p=c.getSelfOrHeaderFooterModel(d==null?void 0:d.segmentId),f=i.BuildTextUtils.range.getParagraphsInRange(d,(h=(u=p.getBody())==null?void 0:u.paragraphs)!=null?h:[],(m=(g=p.getBody())==null?void 0:g.dataStream)!=null?m:"");let S;if(f.every(v=>{var C;return S||(S=(C=v.bullet)==null?void 0:C.listType),v.bullet&&v.bullet.listType===S})){t.next(S);return}}t.next(void 0)}))});return()=>{s.unsubscribe(),r==null||r.unsubscribe()}});function Mr(o){return{id:ot.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Ni,hoverable:!1,selectable:!1},value$:Tt(o)}],icon:"OrderSingle",tooltip:"toolbar.order",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),disabled$:$(o),activated$:Tt(o).pipe(P.map(t=>t&&t.indexOf("ORDER_LIST")===0))}}function Dr(o){return{id:nt.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Pi,hoverable:!1,selectable:!1},value$:Tt(o)}],icon:"UnorderSingle",tooltip:"toolbar.unorder",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:Tt(o).pipe(P.map(t=>t&&t.indexOf("BULLET_LIST")===0))}}function Br(o){return{id:Ct.id,type:I.MenuItemType.BUTTON,icon:"TodoList",tooltip:"toolbar.checklist",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:Tt(o).pipe(P.map(t=>t&&t.indexOf("CHECK_LIST")===0))}}function Tc(o){const t=o.get(i.ICommandService),e=o.get(i.IUniverInstanceService);return{id:vn.id,type:I.MenuItemType.BUTTON,icon:"KeyboardSingle",tooltip:"toolbar.documentFlavor",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),activated$:new P.Observable(n=>{var a;const r=t.onCommandExecuted(c=>{var l;if(c.id===B.RichTextEditingMutation.id){const d=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);n.next(((l=d==null?void 0:d.getSnapshot())==null?void 0:l.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN)}}),s=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);return n.next(((a=s==null?void 0:s.getSnapshot())==null?void 0:a.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN),()=>r.dispose()})}}function yc(o){return{id:at.id,type:I.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColor"}}function bc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:Be.id,tooltip:"toolbar.fillColor.main",type:I.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucket",selections:[{label:{name:vo,hoverable:!1,selectable:!1}}],value$:new P.Observable(n=>{const r=e.getCurrentTheme().primaryColor,s=t.onCommandExecuted(a=>{if(a.id===Be.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Qe(o){var m,p,f,S;const t=o.get(i.IUniverInstanceService),e=o.get(B.DocSelectionManagerService),n=o.get(Te),r=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),s=e.getDocRanges(),a=(m=s.find(v=>v.isActive))!=null?m:s[0],c=n.getDefaultStyle(),l=(p=n.getStyleCache())!=null?p:{},d=Ge(o),A=(f=d==null?void 0:d.paragraphStyle)!=null&&f.namedStyleType?i.NAMED_STYLE_MAP[(S=d==null?void 0:d.paragraphStyle)==null?void 0:S.namedStyleType]:null;if(r==null||a==null)return{ts:{...c,...A,...l}};const{segmentId:u}=a,h=r.getSelfOrHeaderFooterModel(u).getBody();if(h==null)return{ts:{...c,...A,...l}};const g=Xi(h,a,{});return i.Tools.deleteNull(g),{ts:{...c,...A,...g,...l}}}function Ge(o){var A,u;const t=o.get(i.IUniverInstanceService),e=o.get(B.DocSelectionManagerService),n=t.getCurrentUniverDocInstance(),r=e.getDocRanges(),s=(A=r.find(h=>h.isActive))!=null?A:r[0];if(n==null||s==null)return;const{startOffset:a,segmentId:c}=s,l=(u=n.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:u.paragraphs;if(l==null)return;let d=-1;for(const h of l){const{startIndex:g}=h;if(a>d&&a<=g)return h;d=g}return null}const Rc={[i.NamedStyleType.HEADING_1]:Ho,[i.NamedStyleType.HEADING_2]:ko,[i.NamedStyleType.HEADING_3]:Vo,[i.NamedStyleType.HEADING_4]:jo,[i.NamedStyleType.HEADING_5]:Wo,[i.NamedStyleType.NORMAL_TEXT]:qt,[i.NamedStyleType.TITLE]:Yi,[i.NamedStyleType.SUBTITLE]:qi,[i.NamedStyleType.NAMED_STYLE_TYPE_UNSPECIFIED]:qt},$i={[i.NamedStyleType.HEADING_1]:{key:"H1Single",component:Si},[i.NamedStyleType.HEADING_2]:{key:"H2Single",component:Ii},[i.NamedStyleType.HEADING_3]:{key:"H3Single",component:vi},[i.NamedStyleType.HEADING_4]:{key:"H4Single",component:Ei},[i.NamedStyleType.HEADING_5]:{key:"H5Single",component:Ci},[i.NamedStyleType.NORMAL_TEXT]:{key:"TextTypeSingle",component:ft},[i.NamedStyleType.TITLE]:{key:"TextTypeSingle",component:ft},[i.NamedStyleType.SUBTITLE]:{key:"TextTypeSingle",component:ft},[i.NamedStyleType.NAMED_STYLE_TYPE_UNSPECIFIED]:{key:"TextTypeSingle",component:ft}},Fe=o=>t=>{const e=t.get(i.ICommandService),n=t.get(I.ComponentManager),r=$i[o];return n.get(r.key)||n.register(r.key,r.component),{id:Rc[o].id,type:I.MenuItemType.BUTTON,icon:r.key,tooltip:"toolbar.heading.tooltip",disabled$:$(t),hidden$:I.getMenuHiddenObservable(t,i.UniverInstanceType.UNIVER_DOC),activated$:new P.Observable(s=>{const a=i.NamedStyleType.NORMAL_TEXT,c=()=>{var u,h;const d=Ge(t);if(d==null){s.next(a===o);return}const A=(h=(u=d.paragraphStyle)==null?void 0:u.namedStyleType)!=null?h:a;s.next(A===o)},l=e.onCommandExecuted(d=>{const A=d.id;(A===B.SetTextSelectionsOperation.id||A===me.id)&&c()});return c(),l.dispose})}},xc=Fe(i.NamedStyleType.HEADING_1),Oc=Fe(i.NamedStyleType.HEADING_2),Mc=Fe(i.NamedStyleType.HEADING_3),Dc=Fe(i.NamedStyleType.HEADING_4),Bc=Fe(i.NamedStyleType.HEADING_5),_c=Fe(i.NamedStyleType.NORMAL_TEXT);Fe(i.NamedStyleType.TITLE);Fe(i.NamedStyleType.SUBTITLE);const Nc=o=>({id:Do.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy"}),Pc=o=>({id:Bo.id,type:I.MenuItemType.BUTTON,icon:"CutSingle",title:"rightClick.cut"}),Uc=o=>({id:xo.id,type:I.MenuItemType.BUTTON,icon:"DeleteSingle",title:"rightClick.delete"}),wc=o=>({id:Lo.id,type:I.MenuItemType.BUTTON,icon:"UnorderSingle",title:"rightClick.bulletList"}),Lc=o=>({id:Qo.id,type:I.MenuItemType.BUTTON,icon:"OrderSingle",title:"rightClick.orderList"}),Qc=o=>({id:Fo.id,type:I.MenuItemType.BUTTON,icon:"TodoList",title:"rightClick.checkList"}),Fc=o=>({id:No.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",title:"toolbar.horizontalLine"}),es="doc.menu.insert-bellow";function Hc(o){return{id:es,type:I.MenuItemType.SUBITEMS,title:"rightClick.insertBellow",icon:"FreezeToSelectedSingle"}}const Zn=4,kc=(o,t)=>{const e=o.get(i.IUniverInstanceService).getUniverDocInstance(t.unitId),n=(e==null?void 0:e.zoomRatio)||1;return{...i.Tools.deepClone(t),zoomRatio:n}},Ae={id:"doc.operation.set-zoom-ratio",type:i.CommandType.OPERATION,handler:(o,t)=>{const e=o.get(i.IUniverInstanceService).getUniverDocInstance(t.unitId);if(!e)return!1;const n=e.getSnapshot();return n.settings==null?n.settings={zoomRatio:t.zoomRatio}:n.settings.zoomRatio=t.zoomRatio,!0}};var Vc=Object.getOwnPropertyDescriptor,jc=(o,t,e,n)=>{for(var r=n>1?void 0:n?Vc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Lt=(o,t)=>(e,n)=>t(e,n,o);function ts(o,t){const e=_r(o.left,o.top,t),n=_r(o.right,o.bottom,t);return{left:e.x,top:e.y,right:n.x,bottom:n.y}}function _r(o,t,e){const{scaleX:n,scaleY:r}=e.getAncestorScale(),s=e.getViewport(ie.VIEW_MAIN);if(!s)return{x:o,y:t};const{viewportScrollX:a,viewportScrollY:c}=s,l=(o-a)*n,d=(t-c)*r;return{x:l,y:d}}function Nr(o,t,e){const{scaleX:n,scaleY:r}=e.getAncestorScale(),s=e.getViewport(ie.VIEW_MAIN);if(!s)return{x:o,y:t};const{viewportScrollX:a,viewportScrollY:c}=s,l=o/n+a,d=t/r+c;return{x:l,y:d}}const Gt=(o,t)=>{const{scene:e,mainComponent:n,engine:r}=t,s=t.with(B.DocSkeletonManagerService).getSkeleton(),a=s.findNodePositionByCharIndex(o.startOffset,!0,o.segmentId,o.segmentPage),c=o.collapsed?o.startOffset:o.endOffset-1,l=s.findNodePositionByCharIndex(c,!0,o.segmentId,o.segmentPage),d=n;if(!l||!a)return;const A=d.getOffsetConfig(),{docsLeft:u,docsTop:h}=A,g=r.getCanvasElement(),m=g.getBoundingClientRect(),p=M.pxToNum(g.style.width),{top:f,left:S,width:v}=m,C=v/p,{scaleX:y,scaleY:b}=e.getAncestorScale(),E=new ve(A,s),{borderBoxPointGroup:R}=E.getRangePointData(a,l);return cn(R).map(_=>ts(_,e)).map(_=>({left:(_.left+u*y)*C+S,right:(_.right+u*y)*C+S,top:(_.top+h*b)*C+f,bottom:(_.bottom+h*b)*C+f}))};exports.DocCanvasPopManagerService=class extends i.Disposable{constructor(t,e,n,r){super(),this._globalPopupManagerService=t,this._renderManagerService=e,this._univerInstanceService=n,this._commandService=r}_createRectPositionObserver(t,e){const n=()=>{const{scene:l,engine:d}=e,A=typeof t=="function"?t():t,u=d.getCanvasElement(),h=u.getBoundingClientRect(),g=M.pxToNum(u.style.width),m=ts(A,l),{top:p,left:f,width:S}=h,v=S/g;return{left:m.left*v+f,right:m.right*v+f,top:m.top*v+p,bottom:m.bottom*v+p}},r=n(),s=new P.BehaviorSubject(r),a=new i.DisposableCollection;a.add(this._commandService.onCommandExecuted(l=>{if(l.id===Ae.id||l.id===B.RichTextEditingMutation.id){const d=n();d&&s.next(d)}}));const c=e.scene.getViewport(ie.VIEW_MAIN);return c&&a.add(c.onScrollAfter$.subscribeEvent(()=>{s.next(n())})),{position:r,position$:s,disposable:a}}_createObjectPositionObserver(t,e){const n=()=>{const{left:r,top:s,width:a,height:c}=t;return{left:r,right:r+a,top:s,bottom:s+c}};return this._createRectPositionObserver(n,e)}_createRangePositionObserver(t,e){var c;const n=(c=Gt(t,e))!=null?c:[],r=new P.BehaviorSubject(n),s=new i.DisposableCollection;s.add(this._commandService.onCommandExecuted(l=>{if((l.id===Ae.id||l.id===B.RichTextEditingMutation.id)&&l.params.unitId===e.unitId){const A=Gt(t,e);A&&r.next(A)}}));const a=e.scene.getViewport(ie.VIEW_MAIN);return a&&s.add(a.onScrollAfter$.subscribeEvent(()=>{const l=Gt(t,e);l&&r.next(l)})),{positions:n,positions$:r,disposable:s}}attachPopupToRect(t,e,n){const r=this._renderManagerService.getRenderById(n);if(!r)throw new Error(`Current render not found, unitId: ${n}`);const{position:s,position$:a,disposable:c}=this._createRectPositionObserver(t,r),l=this._globalPopupManagerService.addPopup({...e,unitId:n,subUnitId:"default",anchorRect:s,anchorRect$:a,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(l),a.complete(),c.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==l}}attachPopupToObject(t,e,n){const r=this._renderManagerService.getRenderById(n);if(!r)throw new Error(`Current render not found, unitId: ${n}`);const{position:s,position$:a,disposable:c}=this._createObjectPositionObserver(t,r),l=this._globalPopupManagerService.addPopup({...e,unitId:n,subUnitId:"default",anchorRect:s,anchorRect$:a,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(l),a.complete(),c.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==l}}attachPopupToRange(t,e,n){if(!this._univerInstanceService.getUnit(n))throw new Error(`Document not found, unitId: ${n}`);const{direction:s="top",multipleDirection:a}=e,c=this._renderManagerService.getRenderById(n);if(!c)throw new Error(`Current render not found, unitId: ${n}`);const{positions:l,positions$:d,disposable:A}=this._createRangePositionObserver(t,c),u=d.pipe(P.map(g=>s.includes("top")?g[0]:g[g.length-1])),h=this._globalPopupManagerService.addPopup({...e,unitId:n,subUnitId:"default",anchorRect:s.includes("top")?l[0]:l[l.length-1],anchorRect$:u,excludeRects:l,excludeRects$:d,direction:["top","bottom","horizontal"].some(g=>s.includes(g))&&l.length>1&&a!=null?a:s,canvasElement:c.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(h),d.complete(),A.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==h}}};exports.DocCanvasPopManagerService=jc([Lt(0,i.Inject(I.ICanvasPopupService)),Lt(1,M.IRenderManagerService),Lt(2,i.IUniverInstanceService),Lt(3,i.ICommandService)],exports.DocCanvasPopManagerService);var Wc=Object.getOwnPropertyDescriptor,zc=(o,t,e,n)=>{for(var r=n>1?void 0:n?Wc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Gc=(o,t)=>(e,n)=>t(e,n,o);const Xc=(o,t,e,n)=>{var h,g,m,p,f;const r=e.findNodePositionByCharIndex(o.startOffset,!0,o.segmentId,n),s=e.getSkeletonData();let a=o.endOffset-1;if(o.segmentId){const S=(f=Array.from((g=(h=s==null?void 0:s.skeFooters.get(o.segmentId))==null?void 0:h.values())!=null?g:[])[0])!=null?f:Array.from((p=(m=s==null?void 0:s.skeHeaders.get(o.segmentId))==null?void 0:m.values())!=null?p:[])[0];S&&(a=Math.min(S.ed,a))}const c=e.findNodePositionByCharIndex(a,!0,o.segmentId,n);if(!c||!r)return;const l=t.getOffsetConfig(),d=new ve(l,e),{borderBoxPointGroup:A}=d.getRangePointData(r,c);return cn(A).map(S=>({top:S.top+l.docsTop-Zn,bottom:S.bottom+l.docsTop+Zn,left:S.left+l.docsLeft,right:S.right+l.docsLeft}))},Pr=(o,t,e,n)=>{const r=[];for(const s of o){const a=s.top;for(const c of s.columns){const l=c.left,d=s.colCount===1?n:c.width;let A=null;for(const u of c.lines){const h=u.paragraphIndex;if(u.paragraphStart){A&&(r.push(A),A=null);const g={top:t+a+u.top,left:e+l,right:e+l+d,bottom:t+a+u.top+u.lineHeight};A={paragraphStart:u.st,paragraphEnd:h,startIndex:h,rect:g,fisrtLine:{top:t+a+u.top+u.marginTop+u.paddingTop,left:e+l,right:e+l+d,bottom:t+a+u.top+u.marginTop+u.paddingTop+u.contentHeight}}}else A&&A.startIndex===h&&(A.rect.bottom=t+a+u.top+u.lineHeight)}A&&r.push(A)}}return r},Kc=(o,t,e,n=-1)=>{const r=e.findPositionByGlyph(o,n);if(!r)return;const s=t.getOffsetConfig(),a={...r,isBack:!0},c=new ve(s,e),{borderBoxPointGroup:l}=c.getRangePointData(a,a),A=cn(l)[0];return{top:A.top+s.docsTop,bottom:A.bottom+s.docsTop,left:A.left+s.docsLeft,right:A.left+s.docsLeft+o.width}};function He(o,t,e){const{left:n,right:r,top:s,bottom:a}=e;return o>=n&&o<=r&&t>=s&&t<=a}exports.DocEventManagerService=class extends i.Disposable{constructor(e,n){super();x(this,"_hoverCustomRanges$",new P.BehaviorSubject([]));x(this,"hoverCustomRanges$",this._hoverCustomRanges$.pipe(P.distinctUntilChanged((e,n)=>e.length===n.length&&e.every((r,s)=>n[s].range.rangeId===r.range.rangeId&&n[s].segmentId===r.segmentId&&n[s].segmentPageIndex===r.segmentPageIndex&&n[s].range.startIndex===r.range.startIndex))));x(this,"_clickCustomRanges$",new P.Subject);x(this,"clickCustomRanges$",this._clickCustomRanges$.asObservable());x(this,"_hoverBullet$",new P.Subject);x(this,"hoverBullet$",this._hoverBullet$.pipe(P.distinctUntilChanged((e,n)=>(e==null?void 0:e.paragraph.startIndex)===(n==null?void 0:n.paragraph.startIndex)&&(e==null?void 0:e.segmentId)===(n==null?void 0:n.segmentId)&&(e==null?void 0:e.segmentPageIndex)===(n==null?void 0:n.segmentPageIndex))));x(this,"_clickBullet$",new P.Subject);x(this,"clickBullets$",this._clickBullet$.asObservable());x(this,"_hoverParagraph$",new P.Subject);x(this,"hoverParagraph$",this._hoverParagraph$.pipe(P.distinctUntilChanged((e,n)=>(e==null?void 0:e.startIndex)===(n==null?void 0:n.startIndex)&&(e==null?void 0:e.segmentId)===(n==null?void 0:n.segmentId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));x(this,"hoverParagraphRealTime$",this._hoverParagraph$.asObservable());x(this,"_hoverParagraphLeft$",new P.Subject);x(this,"hoverParagraphLeft$",this._hoverParagraphLeft$.pipe(P.distinctUntilChanged((e,n)=>(e==null?void 0:e.startIndex)===(n==null?void 0:n.startIndex)&&(e==null?void 0:e.segmentId)===(n==null?void 0:n.segmentId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));x(this,"hoverParagraphLeftRealTime$",this._hoverParagraphLeft$.asObservable());x(this,"_hoverTableCell$",new P.Subject);x(this,"hoverTableCell$",this._hoverTableCell$.pipe(P.distinctUntilChanged((e,n)=>(e==null?void 0:e.rowIndex)===(n==null?void 0:n.rowIndex)&&(e==null?void 0:e.colIndex)===(n==null?void 0:n.colIndex)&&(e==null?void 0:e.tableId)===(n==null?void 0:n.tableId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));x(this,"hoverTableCellRealTime$",this._hoverTableCell$.asObservable());x(this,"_hoverTable$",new P.Subject);x(this,"hoverTable$",this._hoverTable$.pipe(P.distinctUntilChanged((e,n)=>(e==null?void 0:e.tableId)===(n==null?void 0:n.tableId)&&(e==null?void 0:e.pageIndex)===(n==null?void 0:n.pageIndex))));x(this,"hoverTableRealTime$",this._hoverTable$.asObservable());x(this,"_customRangeDirty",!0);x(this,"_bulletDirty",!0);x(this,"_paragraphDirty",!0);x(this,"_customRangeBounds",[]);x(this,"_bulletBounds",[]);x(this,"_paragraphBounds",new Map);x(this,"_paragraphLeftBounds",[]);x(this,"_tableParagraphBounds",new Map);x(this,"_segmentParagraphBounds",new Map);x(this,"_tableCellBounds",new Map);x(this,"_tableBounds",new Map);this._context=e,this._docSkeletonManagerService=n,this._initResetDirty(),this._initEvents(),this._initPointer()}get _skeleton(){return this._docSkeletonManagerService.getSkeleton()}get _documents(){return this._context.mainComponent}dispose(){this._hoverCustomRanges$.complete(),this._clickCustomRanges$.complete(),super.dispose()}_initPointer(){let e=M.CURSOR_TYPE.TEXT;this.disposeWithMe(this.hoverCustomRanges$.subscribe(n=>{n.length?(e=this._context.scene.getCursor(),this._context.scene.setCursor(M.CURSOR_TYPE.POINTER)):this._context.scene.setCursor(e)}))}_initResetDirty(){this.disposeWithMe(this._skeleton.dirty$.subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0})),this.disposeWithMe(i.fromEventSubject(this._context.engine.onTransformChange$).pipe(P.filter(e=>e.type===M.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize)).subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0}))}_initEvents(){this.disposeWithMe(i.fromEventSubject(this._context.scene.onPointerMove$).pipe(P.throttleTime(30)).subscribe(r=>{if(r.buttons>0){this._hoverBullet$.next(null),this._hoverCustomRanges$.next([]),this._hoverParagraph$.next(null),this._hoverParagraphLeft$.next(null),this._hoverTableCell$.next(null),this._hoverTable$.next(null);return}const{x:s,y:a}=Nr(r.offsetX,r.offsetY,this._context.scene);this._hoverCustomRanges$.next(this._calcActiveRanges({x:s,y:a})),this._hoverParagraph$.next(this._calcActiveParagraph({x:s,y:a})),this._hoverParagraphLeft$.next(this._calcActiveParagraphLeft({x:s,y:a})),this._hoverBullet$.next(this._calcActiveBullet({x:s,y:a}))})),this.disposeWithMe(this._context.scene.onPointerEnter$.subscribeEvent(()=>{this._hoverBullet$.next(null),this._hoverCustomRanges$.next([])}));const e=i.fromEventSubject(this._context.mainComponent.onPointerDown$),n=i.fromEventSubject(this._context.scene.onPointerUp$);this.disposeWithMe(e.pipe(P.switchMap(r=>n.pipe(P.take(1),P.map(s=>({down:r,up:s})))),P.filter(({down:r,up:s})=>r.target===s.target&&s.timeStamp-r.timeStamp<300)).subscribe(({down:r})=>{if(r.button===2)return;const s=Nr(r.offsetX,r.offsetY,this._context.scene),a=this._calcActiveRanges(s);a.length&&this._clickCustomRanges$.next(a.pop());const c=this._calcActiveBullet(s);c&&this._clickBullet$.next(c)}))}_buildCustomRangeBoundsBySegment(e,n=-1){var a,c,l;const r=(l=(c=(a=this._context.unit.getSelfOrHeaderFooterModel(e))==null?void 0:a.getBody())==null?void 0:c.customRanges)!=null?l:[],s=[];return r.forEach(d=>{const A={startOffset:d.startIndex,endOffset:d.endIndex+1,segmentId:e},u=Xc(A,this._documents,this._skeleton,n);if(!u)return null;s.push({customRange:d,rects:u,segmentId:e,segmentPageIndex:n})}),s}_buildCustomRangeBounds(){var n;if(!this._customRangeDirty)return;this._customRangeDirty=!1;const e=[];e.push(...this._buildCustomRangeBoundsBySegment()),(n=this._skeleton.getSkeletonData())==null||n.pages.forEach((r,s)=>{r.headerId&&e.push(...this._buildCustomRangeBoundsBySegment(r.headerId,s)),r.footerId&&e.push(...this._buildCustomRangeBoundsBySegment(r.footerId,s))}),this._customRangeBounds=e}_calcActiveRanges(e){this._buildCustomRangeBounds();const{x:n,y:r}=e;return this._customRangeBounds.filter(a=>a.rects.some(c=>He(n,r,c))).map(a=>({segmentId:a.segmentId,range:a.customRange,segmentPageIndex:a.segmentPageIndex,rects:a.rects}))}_buildBulletBoundsBySegment(e,n=-1){var d,A,u,h,g;const r=(d=this._context.unit.getSelfOrHeaderFooterModel(e))==null?void 0:d.getBody(),s=((A=r==null?void 0:r.paragraphs)!=null?A:[]).filter(m=>m.bullet&&m.bullet.listType.indexOf("CHECK_LIST")===0),a=[],c=this._skeleton.getSkeletonData();if(!c)return a;const l=m=>{var p,f,S;for(const v of m){const C=[...v.sections];if(v.skeTables){const y=Array.from(v.skeTables.values());C.push(...y.map(b=>b.rows.map(E=>E.cells.map(R=>R.sections))).flat(4))}for(const y of C)for(const b of y.columns)for(const E of b.lines)if(E.paragraphStart){const R=s.find(D=>D.startIndex===E.paragraphIndex);if(R){const D=E,T=(S=(f=(p=D==null?void 0:D.divides)==null?void 0:p[0])==null?void 0:f.glyphGroup)==null?void 0:S[0];if(!T)continue;const _=Kc(T,this._documents,this._skeleton,n);if(!_)continue;a.push({rect:_,segmentId:e,segmentPageIndex:n,paragraph:R})}}}return a};if(e){const m=(g=(u=c.skeFooters.get(e))==null?void 0:u.values())!=null?g:(h=c.skeHeaders.get(e))==null?void 0:h.values();return m?l(Array.from(m)):a}return l(c.pages)}_buildBulletBounds(){var e;this._bulletDirty&&(this._bulletDirty=!1,this._bulletBounds=[],this._bulletBounds.push(...this._buildBulletBoundsBySegment()),(e=this._skeleton.getSkeletonData())==null||e.pages.forEach((n,r)=>{n.headerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(n.headerId,r)),n.footerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(n.footerId,r))}))}_calcActiveBullet(e){this._buildBulletBounds();const{x:n,y:r}=e;return this._bulletBounds.find(a=>He(n,r,a.rect))}_buildParagraphBoundsBySegment(e){var c,l,d;const n=this._skeleton.getSkeletonData(),s=this._documents.getOffsetConfig();if(!n)return null;const a=A=>{const u=new Map,h=(g,m,p,f)=>{Pr(g.sections,p,f,g.pageWidth-g.marginLeft-g.marginRight).forEach(v=>{if(!u.has(v.startIndex))u.set(v.startIndex,{rect:v.rect,paragraphStart:v.paragraphStart,paragraphEnd:v.paragraphEnd,startIndex:v.startIndex,rects:[v.rect],pageIndex:m,segmentId:e,firstLine:v.fisrtLine});else{const C=u.get(v.startIndex);C&&(C.rect.bottom=v.rect.bottom,C.rects.push(v.rect))}})};for(let g=0;g<A.length;g++){const m=A[g],p=((m.pageHeight===1/0?0:m.pageHeight)+s.pageMarginTop)*g+m.marginTop+s.docsTop,f=m.marginLeft+s.docsLeft;m.skeTables&&Array.from(m.skeTables.values()).forEach(S=>{const v=S.left+f,C=S.top+p,y=v+S.width,b=C+S.height,E=S.tableId;this._tableBounds.set(E,{rect:{left:v,top:C,right:y,bottom:b},pageIndex:g,tableId:E}),S.rows.forEach((R,D)=>{R.cells.forEach((T,_)=>{const O=((m.pageHeight===1/0?0:m.pageHeight)+s.pageMarginTop)*g+S.top+s.docsTop+m.marginTop+R.top+T.marginTop,N=S.left+s.docsLeft+m.marginLeft+T.left+T.marginLeft,F=Pr(T.sections,O,N,T.pageWidth-T.marginLeft-T.marginRight);let H=this._tableParagraphBounds.get(E);H||(H=[],this._tableParagraphBounds.set(E,H)),H.push(...F.map(L=>({rect:L.rect,paragraphStart:L.paragraphStart,paragraphEnd:L.paragraphEnd,startIndex:L.startIndex,pageIndex:g,segmentId:e,rowIndex:D,colIndex:_,firstLine:L.fisrtLine,tableId:E})));let U=this._tableCellBounds.get(E);U||(U=[],this._tableCellBounds.set(E,U)),U.push({rect:{top:O,left:N,right:N+T.pageWidth-T.marginLeft-T.marginRight,bottom:O+T.pageHeight-T.marginBottom-T.marginTop},pageIndex:g,rowIndex:D,colIndex:_,tableId:E})})})}),h(m,g,p,f)}return u};if(e){const A=(d=(c=n.skeFooters.get(e))==null?void 0:c.values())!=null?d:(l=n.skeHeaders.get(e))==null?void 0:l.values();return A?a(Array.from(A)):null}return a(n.pages)}_buildParagraphBounds(){var n,r;if(!this._paragraphDirty)return;this._paragraphDirty=!1,this._tableParagraphBounds=new Map,this._tableCellBounds=new Map,this._tableBounds=new Map,this._paragraphBounds=(n=this._buildParagraphBoundsBySegment())!=null?n:new Map,this._paragraphLeftBounds=Array.from(this._paragraphBounds.values()).map(s=>({...s,rect:{left:s.rect.left-60,right:s.rect.left,top:s.rect.top,bottom:s.rect.bottom}}));const e=s=>{var a;this._segmentParagraphBounds.set(s,(a=this._buildParagraphBoundsBySegment(s))!=null?a:new Map)};(r=this._skeleton.getSkeletonData())==null||r.pages.forEach(s=>{s.headerId&&e(s.headerId),s.footerId&&e(s.footerId)})}_calcActiveParagraph(e){var c,l;this._buildParagraphBounds();const{x:n,y:r}=e,s=Array.from(this._tableBounds.values()).find(d=>He(n,r,d.rect));if(this._hoverTable$.next(s),s){const d=(c=this._tableCellBounds.get(s.tableId))==null?void 0:c.find(h=>He(n,r,h.rect));if(this._hoverTableCell$.next(d),!d)return null;const A=(l=this._tableParagraphBounds.get(d.tableId))==null?void 0:l.filter(h=>h.colIndex===d.colIndex&&h.rowIndex===d.rowIndex),u=A==null?void 0:A.find(h=>He(n,r,h.rect));return u&&{...u,rects:[u.rect]}}return this._paragraphBounds.values().find(d=>d.rects.some(A=>He(n,r,A)))}_calcActiveParagraphLeft(e){this._buildParagraphBounds();const{x:n,y:r}=e;return this._paragraphLeftBounds.find(a=>He(n,r,a.rect))}get paragraphBounds(){return this._buildParagraphBounds(),this._paragraphBounds}};exports.DocEventManagerService=zc([Gc(1,i.Inject(B.DocSkeletonManagerService))],exports.DocEventManagerService);const Yc=[Me.id,me.id,Ne.id,Pe.id,Ue.id,we.id,ye.id,Le.id,De.id,Be.id];function qc(o){const{avaliableMenus:t=Yc}=o,e=I.useDependency(I.IMenuManagerService),[n,r]=w.useState([]);return w.useEffect(()=>{function s(){const c=e.getFlatMenuByPositionKey(I.MenuManagerPosition.RIBBON),l=[];for(const d of t){const A=c.find(u=>u.key===d);A&&l.push(A)}r(l)}s();const a=e.menuChanged$.subscribe(s);return()=>{a.unsubscribe()}},[e]),Q.jsx("div",{className:`
42
43
  univer-box-border univer-flex univer-rounded univer-border univer-border-solid univer-border-gray-200
43
44
  univer-bg-white univer-py-1.5
44
45
  univer-shadow-[0_1px_6px_-2px_rgba(30,40,77,0.08),0_2px_6px_-1px_rgba(30,40,77,0.10)]
45
- `,children:n.map(s=>s.item&&Q.jsx("div",{className:"univer-flex univer-flex-nowrap univer-gap-2 univer-px-2",children:Q.jsx(I.ToolbarItem,{...s.item},s.key)},s.key))})}var Zc=Object.getOwnPropertyDescriptor,$c=(o,t,e,n)=>{for(var r=n>1?void 0:n?Zc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},At=(o,t)=>(e,n)=>t(e,n,o);const Ur="univer.doc.float-menu";function el(o,t){if(o==null||t==null)return!1;const{glyph:e,...n}=o,{glyph:r,...s}=t;return i.deepCompare(n,s)}const tl=[i.DataStreamTreeTokenType.CUSTOM_BLOCK,i.DataStreamTreeTokenType.PARAGRAPH];let qt=class extends i.Disposable{constructor(t,e,n,r,s,a){super();b(this,"_floatMenu",null);this._context=t,this._docSelectionManagerService=e,this._docCanvasPopManagerService=n,this._componentManager=r,this._univerInstanceService=s,this._docSelectionRenderService=a,!i.isInternalEditorID(this._context.unitId)&&(this._registerFloatMenu(),this._initSelectionChange(),this.disposeWithMe(()=>{this._hideFloatMenu()}))}get floatMenu(){return this._floatMenu}_registerFloatMenu(){this.disposeWithMe(this._componentManager.register(Ur,Jc))}_initSelectionChange(){this.disposeWithMe(this._docSelectionRenderService.onSelectionStart$.subscribe(()=>{this._hideFloatMenu()})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(t=>{var s,a;const{unitId:e,textRanges:n}=t;if(e!==this._context.unitId)return;const r=n.length>0&&n.find(c=>!c.collapsed);if(r){if(r.startOffset===((s=this._floatMenu)==null?void 0:s.start)&&r.endOffset===((a=this._floatMenu)==null?void 0:a.end))return;this._hideFloatMenu(),this._showFloatMenu(e,r);return}this._hideFloatMenu()}))}_hideFloatMenu(){var t;(t=this._floatMenu)==null||t.disposable.dispose(),this._floatMenu=null}_showFloatMenu(t,e){var a,c,l;const n=this._univerInstanceService.getUnit(t,i.UniverInstanceType.UNIVER_DOC);if(!n||n.getDisabled())return;const r=(a=n.getBody())==null?void 0:a.dataStream[e.startOffset];if(e.endOffset-e.startOffset===1&&r&&tl.includes(r))return;const s=(l=(c=n.getBody())==null?void 0:c.customRanges)==null?void 0:l.filter(d=>d.wholeEntity);if(!(s!=null&&s.some(d=>d.startIndex===e.startOffset&&d.endIndex===e.endOffset-1)))return this._floatMenu={disposable:this._docCanvasPopManagerService.attachPopupToRange(e,{componentKey:Ur,direction:e.direction==="backward"||el(e.startNodePosition,e.endNodePosition)?"top-center":"bottom-center",offset:[0,4]},t),start:e.startOffset,end:e.endOffset},i.toDisposable(()=>this._hideFloatMenu())}};qt=$c([At(1,i.Inject(D.DocSelectionManagerService)),At(2,i.Inject(exports.DocCanvasPopManagerService)),At(3,i.Inject(I.ComponentManager)),At(4,i.Inject(i.IUniverInstanceService)),At(5,i.Inject(exports.DocSelectionRenderService))],qt);var nl=Object.getOwnPropertyDescriptor,ol=(o,t,e,n)=>{for(var r=n>1?void 0:n?nl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},ut=(o,t)=>(e,n)=>t(e,n,o);let Jt=class extends i.Disposable{constructor(t,e,n,r,s,a){super();b(this,"_paragrahMenu",null);this._context=t,this._docSelectionManagerService=e,this._docEventManagerService=n,this._docPopupManagerService=r,this._docSkeletonManagerService=s,this._floatMenuService=a,!i.isInternalEditorID(this._context.unitId)&&this._init()}get activeParagraph(){var t;return(t=this._paragrahMenu)==null?void 0:t.paragraph}_isCursorInActiveParagraph(){if(!this._paragrahMenu)return!1;const t=this._docSelectionManagerService.getActiveTextRange();return!(!(t!=null&&t.collapsed)||!(t!=null&&t.collapsed)||t.startOffset<this._paragrahMenu.paragraph.paragraphStart||t.startOffset>this._paragrahMenu.paragraph.paragraphEnd)}setParagraphMenuActive(t){this._paragrahMenu&&(this._paragrahMenu.active=t,this._isCursorInActiveParagraph()||this._docSelectionManagerService.replaceDocRanges([{startOffset:this._paragrahMenu.paragraph.paragraphStart,endOffset:this._paragrahMenu.paragraph.paragraphStart}]))}_init(){const t=n=>{var s;if(this._docSkeletonManagerService.getViewModel().getEditArea()===M.DocumentEditArea.BODY&&!this._floatMenuService.floatMenu){if((s=this._paragrahMenu)!=null&&s.active)return;if(n){this.showParagraphMenu(n);return}}this.hideParagraphMenu(!0)};this.disposeWithMe(N.combineLatest([this._docEventManagerService.hoverParagraphRealTime$,this._docEventManagerService.hoverParagraphLeft$]).pipe(N.throttleTime(16)).subscribe(([n,r])=>{const s=n!=null?n:r;t(s)}));let e=0;this.disposeWithMe(this._context.scene.getViewport(ie.VIEW_MAIN).onScrollAfter$.subscribeEvent(n=>{e!==n.scrollY&&(e=n.scrollY,this.hideParagraphMenu(!0))}))}showParagraphMenu(t){var n;if(((n=this._paragrahMenu)==null?void 0:n.paragraph.startIndex)===t.startIndex)return;this.hideParagraphMenu(!0);const e=this._docPopupManagerService.attachPopupToRect(t.firstLine,{componentKey:"doc.paragraph.menu",direction:"left-center",onClickOutside:()=>{this._docSelectionManagerService.textSelection$.pipe(N.first()).subscribe(()=>{this._isCursorInActiveParagraph()||this.hideParagraphMenu(!0)})}},this._context.unitId);this._paragrahMenu={paragraph:t,disposable:e,active:!1}}hideParagraphMenu(t=!1){this._paragrahMenu&&(this._paragrahMenu.disposable.canDispose()||t)&&(this._paragrahMenu.disposable.dispose(),this._paragrahMenu=null)}};Jt=ol([ut(1,i.Inject(D.DocSelectionManagerService)),ut(2,i.Inject(exports.DocEventManagerService)),ut(3,i.Inject(exports.DocCanvasPopManagerService)),ut(4,i.Inject(D.DocSkeletonManagerService)),ut(5,i.Inject(qt))],Jt);const rl=({popup:o})=>{var O,_,F;const[t,e]=w.useState(!1),n=w.useRef(null),r=I.useDependency(i.ICommandService),s=I.useDependency(I.ILayoutService),a=w.useRef(null),c=w.useRef(!1),l=I.useDependency(M.IRenderManagerService),d=I.useDependency(i.IUniverInstanceService),A=l.getRenderById(o.unitId),u=d.getUnit(o.unitId,i.UniverInstanceType.UNIVER_DOC),h=A==null?void 0:A.with(Jt),g=A==null?void 0:A.with(exports.DocEventManagerService),m=I.useObservable(g==null?void 0:g.hoverParagraph$),p=I.useObservable(g==null?void 0:g.hoverParagraphLeft$),f=m!=null?m:p,S=f==null?void 0:f.startIndex,v=w.useMemo(()=>{var H,U;return(U=(H=u==null?void 0:u.getBody())==null?void 0:H.paragraphs)==null?void 0:U.find(L=>L.startIndex===S)},[u,S]),E=(O=v==null?void 0:v.paragraphStyle)==null?void 0:O.namedStyleType,T=$i[E!=null?E:i.NamedStyleType.NORMAL_TEXT],R=(F=(_=u==null?void 0:u.getBody())==null?void 0:_.dataStream)!=null?F:"",C=w.useMemo(()=>new N.BehaviorSubject({left:0,right:0,top:0,bottom:0}),[]),x=()=>{e(!1),h==null||h.hideParagraphMenu(!0)},P=(f?R.slice(f.paragraphStart,f.paragraphEnd):"")==="\b"||!f;return Q.jsxs(Q.Fragment,{children:[Q.jsxs("div",{ref:a,className:`
46
+ `,children:n.map(s=>s.item&&Q.jsx("div",{className:"univer-flex univer-flex-nowrap univer-gap-2 univer-px-2",children:Q.jsx(I.ToolbarItem,{...s.item},s.key)},s.key))})}var Jc=Object.getOwnPropertyDescriptor,Zc=(o,t,e,n)=>{for(var r=n>1?void 0:n?Jc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},At=(o,t)=>(e,n)=>t(e,n,o);const Ur="univer.doc.float-menu";function $c(o,t){if(o==null||t==null)return!1;const{glyph:e,...n}=o,{glyph:r,...s}=t;return i.deepCompare(n,s)}const el=[i.DataStreamTreeTokenType.CUSTOM_BLOCK,i.DataStreamTreeTokenType.PARAGRAPH];let Jt=class extends i.Disposable{constructor(t,e,n,r,s,a){super();x(this,"_floatMenu",null);this._context=t,this._docSelectionManagerService=e,this._docCanvasPopManagerService=n,this._componentManager=r,this._univerInstanceService=s,this._docSelectionRenderService=a,!i.isInternalEditorID(this._context.unitId)&&(this._registerFloatMenu(),this._initSelectionChange(),this.disposeWithMe(()=>{this._hideFloatMenu()}))}get floatMenu(){return this._floatMenu}_registerFloatMenu(){this.disposeWithMe(this._componentManager.register(Ur,qc))}_initSelectionChange(){this.disposeWithMe(this._docSelectionRenderService.onSelectionStart$.subscribe(()=>{this._hideFloatMenu()})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(t=>{var s,a;const{unitId:e,textRanges:n}=t;if(e!==this._context.unitId)return;const r=n.length>0&&n.find(c=>!c.collapsed);if(r){if(r.startOffset===((s=this._floatMenu)==null?void 0:s.start)&&r.endOffset===((a=this._floatMenu)==null?void 0:a.end))return;this._hideFloatMenu(),this._showFloatMenu(e,r);return}this._hideFloatMenu()}))}_hideFloatMenu(){var t;(t=this._floatMenu)==null||t.disposable.dispose(),this._floatMenu=null}_showFloatMenu(t,e){var a,c,l;const n=this._univerInstanceService.getUnit(t,i.UniverInstanceType.UNIVER_DOC);if(!n||n.getDisabled())return;const r=(a=n.getBody())==null?void 0:a.dataStream[e.startOffset];if(e.endOffset-e.startOffset===1&&r&&el.includes(r))return;const s=(l=(c=n.getBody())==null?void 0:c.customRanges)==null?void 0:l.filter(d=>d.wholeEntity);if(!(s!=null&&s.some(d=>d.startIndex===e.startOffset&&d.endIndex===e.endOffset-1)))return this._floatMenu={disposable:this._docCanvasPopManagerService.attachPopupToRange(e,{componentKey:Ur,direction:e.direction==="backward"||$c(e.startNodePosition,e.endNodePosition)?"top-center":"bottom-center",offset:[0,4]},t),start:e.startOffset,end:e.endOffset},i.toDisposable(()=>this._hideFloatMenu())}};Jt=Zc([At(1,i.Inject(B.DocSelectionManagerService)),At(2,i.Inject(exports.DocCanvasPopManagerService)),At(3,i.Inject(I.ComponentManager)),At(4,i.Inject(i.IUniverInstanceService)),At(5,i.Inject(exports.DocSelectionRenderService))],Jt);var tl=Object.getOwnPropertyDescriptor,nl=(o,t,e,n)=>{for(var r=n>1?void 0:n?tl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},ut=(o,t)=>(e,n)=>t(e,n,o);let Zt=class extends i.Disposable{constructor(t,e,n,r,s,a){super();x(this,"_paragrahMenu",null);this._context=t,this._docSelectionManagerService=e,this._docEventManagerService=n,this._docPopupManagerService=r,this._docSkeletonManagerService=s,this._floatMenuService=a,!i.isInternalEditorID(this._context.unitId)&&this._init()}get activeParagraph(){var t;return(t=this._paragrahMenu)==null?void 0:t.paragraph}_isCursorInActiveParagraph(){if(!this._paragrahMenu)return!1;const t=this._docSelectionManagerService.getActiveTextRange();return!(!(t!=null&&t.collapsed)||!(t!=null&&t.collapsed)||t.startOffset<this._paragrahMenu.paragraph.paragraphStart||t.startOffset>this._paragrahMenu.paragraph.paragraphEnd)}setParagraphMenuActive(t){this._paragrahMenu&&(this._paragrahMenu.active=t,this._isCursorInActiveParagraph()||this._docSelectionManagerService.replaceDocRanges([{startOffset:this._paragrahMenu.paragraph.paragraphStart,endOffset:this._paragrahMenu.paragraph.paragraphStart}]))}_init(){const t=n=>{var s;if(this._docSkeletonManagerService.getViewModel().getEditArea()===M.DocumentEditArea.BODY&&!this._floatMenuService.floatMenu){if((s=this._paragrahMenu)!=null&&s.active)return;if(n){this.showParagraphMenu(n);return}}this.hideParagraphMenu(!0)};this.disposeWithMe(P.combineLatest([this._docEventManagerService.hoverParagraphRealTime$,this._docEventManagerService.hoverParagraphLeft$]).pipe(P.throttleTime(16)).subscribe(([n,r])=>{const s=n!=null?n:r;t(s)}));let e=0;this.disposeWithMe(this._context.scene.getViewport(ie.VIEW_MAIN).onScrollAfter$.subscribeEvent(n=>{e!==n.scrollY&&(e=n.scrollY,this.hideParagraphMenu(!0))}))}showParagraphMenu(t){var n;if(((n=this._paragrahMenu)==null?void 0:n.paragraph.startIndex)===t.startIndex)return;this.hideParagraphMenu(!0);const e=this._docPopupManagerService.attachPopupToRect(t.firstLine,{componentKey:"doc.paragraph.menu",direction:"left-center",onClickOutside:()=>{this._docSelectionManagerService.textSelection$.pipe(P.first()).subscribe(()=>{this._isCursorInActiveParagraph()||this.hideParagraphMenu(!0)})}},this._context.unitId);this._paragrahMenu={paragraph:t,disposable:e,active:!1}}hideParagraphMenu(t=!1){this._paragrahMenu&&(this._paragrahMenu.disposable.canDispose()||t)&&(this._paragrahMenu.disposable.dispose(),this._paragrahMenu=null)}};Zt=nl([ut(1,i.Inject(B.DocSelectionManagerService)),ut(2,i.Inject(exports.DocEventManagerService)),ut(3,i.Inject(exports.DocCanvasPopManagerService)),ut(4,i.Inject(B.DocSkeletonManagerService)),ut(5,i.Inject(Jt))],Zt);const ol=({popup:o})=>{var O,N,F;const[t,e]=w.useState(!1),n=w.useRef(null),r=I.useDependency(i.ICommandService),s=I.useDependency(I.ILayoutService),a=w.useRef(null),c=w.useRef(!1),l=I.useDependency(M.IRenderManagerService),d=I.useDependency(i.IUniverInstanceService),A=l.getRenderById(o.unitId),u=d.getUnit(o.unitId,i.UniverInstanceType.UNIVER_DOC),h=A==null?void 0:A.with(Zt),g=A==null?void 0:A.with(exports.DocEventManagerService),m=I.useObservable(g==null?void 0:g.hoverParagraph$),p=I.useObservable(g==null?void 0:g.hoverParagraphLeft$),f=m!=null?m:p,S=f==null?void 0:f.startIndex,v=w.useMemo(()=>{var H,U;return(U=(H=u==null?void 0:u.getBody())==null?void 0:H.paragraphs)==null?void 0:U.find(L=>L.startIndex===S)},[u,S]),C=(O=v==null?void 0:v.paragraphStyle)==null?void 0:O.namedStyleType,y=$i[C!=null?C:i.NamedStyleType.NORMAL_TEXT],b=(F=(N=u==null?void 0:u.getBody())==null?void 0:N.dataStream)!=null?F:"",E=w.useMemo(()=>new P.BehaviorSubject({left:0,right:0,top:0,bottom:0}),[]),R=()=>{e(!1),h==null||h.hideParagraphMenu(!0)},_=(f?b.slice(f.paragraphStart,f.paragraphEnd):"")==="\b"||!f;return Q.jsxs(Q.Fragment,{children:[Q.jsxs("div",{ref:a,className:`
46
47
  univer-mr-1 univer-inline-flex univer-h-7 univer-cursor-pointer univer-items-center univer-gap-1
47
48
  univer-rounded-full univer-bg-[#EEEFF1] univer-px-2.5 univer-py-0
48
- ${P?"univer-pointer-events-none univer-opacity-0":""}
49
- `,onMouseEnter:H=>{var L,W,z,j,k,V;(L=o.onPointerEnter)==null||L.call(o,H),c.current=!0;const U=(W=a.current)==null?void 0:W.getBoundingClientRect();C.next({left:((z=U==null?void 0:U.left)!=null?z:0)-4,right:(j=U==null?void 0:U.right)!=null?j:0,top:(k=U==null?void 0:U.top)!=null?k:0,bottom:(V=U==null?void 0:U.bottom)!=null?V:0})},onMouseLeave:()=>{c.current=!1},onClick:()=>{e(!0),h==null||h.setParagraphMenuActive(!0)},children:[Q.jsx(T.component,{className:"univer-h-4 univer-w-4 univer-text-[#181C2A]"}),Q.jsx(fi,{className:"univer-h-3 univer-w-3 univer-text-[#979DAC]"})]}),t&&Q.jsx(I.RectPopup,{portal:!0,mask:!0,maskZIndex:100,anchorRect$:C,direction:"left",onMaskClick:x,children:Q.jsx("section",{ref:n,onMouseEnter:H=>{var U;(U=o.onPointerEnter)==null||U.call(o,H),c.current=!0},onMouseLeave:()=>{c.current=!1},children:Q.jsx(I.DesktopMenu,{style:{width:212},menuType:I.ContextMenuPosition.PARAGRAPH,onOptionSelect:H=>{const{label:U,commandId:L,value:W}=H;r&&r.executeCommand(L!=null?L:U,{value:W}),s.focus(),x()}})})})]})},il="doc.command.tab",ze={id:il,type:i.CommandType.COMMAND,async handler(o,t){const n=o.get(exports.DocAutoFormatService).onAutoFormat(ze.id,t);return(await i.sequenceExecuteAsync(n,o.get(i.ICommandService))).result}},sl="doc.command.after-space",_t={id:sl,type:i.CommandType.COMMAND,async handler(o){const e=o.get(exports.DocAutoFormatService).onAutoFormat(_t.id);return(await i.sequenceExecuteAsync(e,o.get(i.ICommandService))).result}},rt={id:"doc.command.enter",type:i.CommandType.COMMAND,async handler(o){const e=o.get(exports.DocAutoFormatService).onAutoFormat(rt.id);return(await i.sequenceExecuteAsync(e,o.get(i.ICommandService))).result}};function Z(o){return o.getContextValue(i.FOCUSING_DOC)&&o.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&!o.getContextValue(i.FOCUSING_COMMON_DRAWINGS)}function al(o){return o.getContextValue(i.FOCUSING_DOC)&&o.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&!o.getContextValue(i.FOCUSING_COMMON_DRAWINGS)}const cl={id:ze.id,binding:I.KeyCode.TAB,preconditions:Z},ll={id:ze.id,binding:I.KeyCode.TAB|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{shift:!0}},dl={id:Ne.id,binding:I.KeyCode.B|I.MetaKeys.CTRL_COMMAND,preconditions:Z},Al={id:Pe.id,binding:I.KeyCode.I|I.MetaKeys.CTRL_COMMAND,preconditions:Z},ul={id:Ue.id,binding:I.KeyCode.U|I.MetaKeys.CTRL_COMMAND,preconditions:Z},gl={id:we.id,binding:I.KeyCode.X|I.MetaKeys.SHIFT|I.MetaKeys.CTRL_COMMAND,preconditions:Z},hl={id:ye.id,binding:I.KeyCode.COMMA|I.MetaKeys.CTRL_COMMAND,preconditions:Z},ml={id:Le.id,binding:I.KeyCode.PERIOD|I.MetaKeys.CTRL_COMMAND,preconditions:Z},pl={id:Ot.id,binding:I.KeyCode.L|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},fl={id:Dt.id,binding:I.KeyCode.R|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},Sl={id:Mt.id,binding:I.KeyCode.E|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},Il={id:Bt.id,binding:I.KeyCode.J|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},vl={id:ot.id,binding:I.KeyCode.Digit7|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},El={id:nt.id,binding:I.KeyCode.Digit8|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},Cl=[50,80,100,130,150,170,200,400],Tl=[10,400];function yl(){const o=I.useDependency(i.ICommandService),t=I.useDependency(i.IUniverInstanceService),e=w.useMemo(()=>t.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC),[]),n=I.useObservable(e),r=w.useCallback(()=>{var d,A;if(!n)return 100;const l=((A=(d=n.getSettings())==null?void 0:d.zoomRatio)!=null?A:1)*100;return Math.round(l)},[n]),[s,a]=w.useState(()=>r());w.useEffect(()=>(a(r()),o.onCommandExecuted(d=>{if(d.id===Ae.id){const A=r();a(A)}}).dispose),[o,r]);function c(l){if(a(l),n==null)return;const d=l/100;o.executeCommand(Ae.id,{unitId:n.getUnitId(),zoomRatio:d})}return Q.jsx(I.Slider,{min:Tl[0],value:s,shortcuts:Cl,onChange:c})}function Rl(o){return Q.jsx("section",{className:"univer-flex univer-flex-shrink-0 univer-flex-grow-0 univer-basis-[260px] univer-justify-end",children:Q.jsx(yl,{})})}function bl(){const o=I.useDependency(i.IUniverInstanceService);return I.useObservable(()=>o.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_SHEET),void 0,void 0,[])?null:Q.jsxs("div",{className:"univer-box-border univer-flex univer-items-center univer-justify-between univer-px-5",children:[Q.jsx("div",{}),Q.jsx(Rl,{})]})}const xl=o=>{switch(o){case i.NamedStyleType.HEADING_1:return 1;case i.NamedStyleType.HEADING_2:return 2;case i.NamedStyleType.HEADING_3:return 3;case i.NamedStyleType.HEADING_4:return 4;case i.NamedStyleType.HEADING_5:return 5;case i.NamedStyleType.TITLE:return 1;default:return 1}};function Ol(o,t,e,n){var c,l;if(!o)return;const r=Array.from(o.values()),s=r.findIndex(d=>d.paragraphStart!==d.paragraphEnd&&d.rect.top<n&&d.rect.bottom>e);if(s===-1)return;const a=r==null?void 0:r.findLastIndex(d=>d.paragraphStart!==d.paragraphEnd&&d.rect.top<n&&d.rect.bottom>e);for(let d=s;d<=a;d++){const A=r[d],u=t.get(A.startIndex);if((c=u==null?void 0:u.paragraphStyle)!=null&&c.headingId)return u.paragraphStyle.headingId}for(let d=s;d>=0;d--){const A=r[d],u=t.get(A.startIndex);if((l=u==null?void 0:u.paragraphStyle)!=null&&l.headingId)return u.paragraphStyle.headingId}}const wr="__title";function Ml(){var O,_,F,H,U,L,W,z,j;const o=I.useDependency(i.ICommandService),t=I.useDependency(i.IUniverInstanceService),e=I.useObservable(w.useMemo(()=>t.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC),[])),n=I.useDependency(M.IRenderManagerService),r=(_=(O=e==null?void 0:e.getBody())==null?void 0:O.dataStream)!=null?_:"",[s,a]=w.useState(0),c=(F=e==null?void 0:e.getUnitId())!=null?F:"",l=n.getRenderById(c),d=e==null?void 0:e.getTitle(),A=l==null?void 0:l.with(exports.DocEventManagerService),u=A==null?void 0:A.paragraphBounds,h=(U=(H=l==null?void 0:l.mainComponent)==null?void 0:H.left)!=null?U:0,[g,m]=w.useState(0),p=(L=l==null?void 0:l.engine.height)!=null?L:0,f=(W=l==null?void 0:l.scene.scaleY)!=null?W:1,S=g+p/f,v=(j=(z=e==null?void 0:e.getBody())==null?void 0:z.paragraphs)!=null?j:[],E=w.useMemo(()=>{const k=new Map;return v.forEach(V=>{k.set(V.startIndex,V)}),k},[v]);I.useObservable(w.useMemo(()=>l!=null&&l.engine.onTransformChange$?i.fromEventSubject(l==null?void 0:l.engine.onTransformChange$).pipe(N.throttleTime(33)):N.of(null),[l==null?void 0:l.engine.onTransformChange$]));const T=h<180?"float":"side-bar",R=v==null?void 0:v.filter(k=>{var V;return((V=k.paragraphStyle)==null?void 0:V.namedStyleType)!==void 0&&k.paragraphStyle.namedStyleType!==i.NamedStyleType.SUBTITLE&&k.paragraphStyle.namedStyleType!==i.NamedStyleType.NORMAL_TEXT}).map(k=>{var G;const V=xl(k.paragraphStyle.namedStyleType),X=u==null?void 0:u.get(k.startIndex);if(!X)return null;const{paragraphStart:K,paragraphEnd:Y}=X;return{id:k.paragraphStyle.headingId,text:i.getPlainText(r.slice(K,Y)),level:V,isTitle:((G=k.paragraphStyle)==null?void 0:G.namedStyleType)===i.NamedStyleType.TITLE}}).filter(Boolean),C=R!=null&&R.find(k=>k.isTitle)?R:[...d?[{id:wr,text:d,level:1,isTitle:!0}]:[],...R!=null?R:[]].filter(Boolean),[x,B]=w.useState(!0),y=Ol(u,E,g,S);w.useEffect(()=>{const k=i.debounce(a,100),V=o.onCommandExecuted(X=>{X.id===D.RichTextEditingMutation.id&&X.params.unitId===(e==null?void 0:e.getUnitId())&&k(Y=>Y+1)});return()=>{V.dispose()}},[o,e]),w.useEffect(()=>{const k=l==null?void 0:l.scene.getViewport(ie.VIEW_MAIN);if(!k)return;const V=i.fromEventSubject(k.onScrollAfter$).pipe(N.throttleTime(33)).subscribe(X=>{m(X.viewportScrollY)});return()=>{V.unsubscribe()}},[l]);const P=I.useEvent(k=>{const V=l==null?void 0:l.scene.getViewport(ie.VIEW_MAIN);if(!V)return;if(k.id===wr){V.scrollToViewportPos({viewportScrollY:0});return}const X=v.find(Y=>{var G;return((G=Y.paragraphStyle)==null?void 0:G.headingId)===k.id});if(!X)return;const K=u==null?void 0:u.get(X.startIndex);K&&V.scrollToViewportPos({viewportScrollY:K.rect.top})});return!e||i.isInternalEditorID(c)||!(C!=null&&C.length)?null:Q.jsx("div",{className:"univer-absolute univer-bottom-0 univer-left-0 univer-top-0 univer-z-[100] univer-w-[0px]",children:Q.jsx(te.SideMenu,{menus:C,open:x,onOpenChange:B,mode:T,maxWidth:T==="float"?void 0:Math.floor(h),wrapperClass:"univer-mt-12",activeId:y,onClick:P,maxHeight:p-48})})}const Go="docs-ui.config",Lr={layout:{docContainerConfig:Jr,toolbarConfig:qr}},Cn={id:"doc.table.delete-rows",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getRectRanges(),s=t.getActiveTextRange(),a=yt(s,r);if(a==null)return!1;const{segmentId:c}=a,l=e.getCurrentUniverDocInstance(),d=l==null?void 0:l.getSelfOrHeaderFooterModel(c).getBody();if(l==null||d==null)return!1;const A=ce(o,l.getUnitId());if(A==null)return!1;const u=A.getViewModel(),h=l==null?void 0:l.getUnitId(),g=new i.TextX,m=i.JSONX.getInstance(),p=Ui(a,u);if(p==null)return!1;const{offset:f,rowIndexes:S,len:v,tableId:E,cursor:T,selectWholeTable:R}=p;if(R)return n.executeCommand(lt.id);const C=[],x=[{startOffset:T,endOffset:T,collapsed:!0}],B={id:D.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:x}};f>0&&g.push({t:i.TextXActionType.RETAIN,len:f}),g.push({t:i.TextXActionType.DELETE,len:v});const y=J(l,c);C.push(m.editOp(g.serialize(),y));for(const O of S.reverse()){const _=m.removeOp(["tableSource",E,"tableRows",O]);C.push(_)}return B.params.actions=C.reduce((O,_)=>i.JSONX.compose(O,_),null),!!n.syncExecuteCommand(B.id,B.params)}},Tn={id:"doc.table.delete-columns",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getRectRanges(),s=t.getActiveTextRange(),a=yt(s,r);if(a==null)return!1;const{segmentId:c}=a,l=e.getCurrentUniverDocInstance(),d=l==null?void 0:l.getSelfOrHeaderFooterModel(c).getBody();if(l==null||d==null)return!1;const A=ce(o,l.getUnitId());if(A==null)return!1;const u=A.getViewModel(),h=l==null?void 0:l.getUnitId(),g=new i.TextX,m=i.JSONX.getInstance(),p=Ma(a,u);if(p==null)return!1;const{offsets:f,columnIndexes:S,tableId:v,cursor:E,rowCount:T,selectWholeTable:R}=p;if(R)return n.executeCommand(lt.id);const C=[],x=[{startOffset:E,endOffset:E,collapsed:!0}],B={id:D.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:x}};for(const O of f){const{retain:_,delete:F}=O;_>0&&g.push({t:i.TextXActionType.RETAIN,len:_}),g.push({t:i.TextXActionType.DELETE,len:F})}const y=J(l,c);C.push(m.editOp(g.serialize(),y)),S.reverse();for(let O=0;O<T;O++)for(const _ of S){const F=m.removeOp(["tableSource",v,"tableRows",O,"tableCells",_]);C.push(F)}for(const O of S){const _=m.removeOp(["tableSource",v,"tableColumns",O]);C.push(_)}return B.params.actions=C.reduce((O,_)=>i.JSONX.compose(O,_),null),!!n.syncExecuteCommand(B.id,B.params)}},lt={id:"doc.table.delete-table",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getRectRanges(),s=t.getActiveTextRange(),a=yt(s,r);if(a==null)return!1;const{segmentId:c}=a,l=e.getCurrentUniverDocInstance(),d=l==null?void 0:l.getSelfOrHeaderFooterModel(c).getBody();if(l==null||d==null)return!1;const A=ce(o,l.getUnitId());if(A==null)return!1;const u=A.getViewModel(),h=l==null?void 0:l.getUnitId(),g=new i.TextX,m=i.JSONX.getInstance(),p=wi(a,u);if(p==null)return!1;const{offset:f,len:S,tableId:v,cursor:E}=p,T=[],R=[{startOffset:E,endOffset:E,collapsed:!0}],C={id:D.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:R}};f>0&&g.push({t:i.TextXActionType.RETAIN,len:f}),g.push({t:i.TextXActionType.DELETE,len:S});const x=J(l,c);T.push(m.editOp(g.serialize(),x));const B=m.removeOp(["tableSource",v]);return T.push(B),C.params.actions=T.reduce((P,O)=>i.JSONX.compose(P,O),null),!!n.syncExecuteCommand(C.id,C.params)}},Xo="doc.command.table-insert-row",Ko="doc.command.table-insert-column",Dl="doc.command.table-insert-row-above",Bl="doc.command.table-insert-row-bellow",_l="doc.command.table-insert-column-left",Nl="doc.command.table-insert-column-right",yn={id:Dl,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Xo,{position:cn.ABOVE})},Rn={id:Bl,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Xo,{position:cn.BELLOW})},bn={id:_l,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Ko,{position:Eo.LEFT})},xn={id:Nl,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Ko,{position:Eo.RIGHT})},Yo={id:Xo,type:i.CommandType.COMMAND,handler:async(o,t)=>{const{position:e}=t,n=o.get(D.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=n.getRectRanges(),c=n.getActiveTextRange(),l=yt(c,a);if(l==null)return!1;const{segmentId:d}=l,A=r.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(d).getBody();if(A==null||u==null)return!1;const h=ce(o,A.getUnitId());if(h==null)return!1;const g=h.getViewModel(),m=A==null?void 0:A.getUnitId(),p=new i.TextX,f=i.JSONX.getInstance(),S=ba(l,e,g);if(S==null)return!1;const{offset:v,colCount:E,tableId:T,insertRowIndex:R}=S,C=[],x=v+2,B=[{startOffset:x,endOffset:x,collapsed:!0}],y={id:D.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:B}};v>0&&p.push({t:i.TextXActionType.RETAIN,len:v});const P=ya(E);p.push({t:i.TextXActionType.INSERT,body:P,len:P.dataStream.length});const O=J(A,d);C.push(f.editOp(p.serialize(),O));const _=dn(E),F=f.insertOp(["tableSource",T,"tableRows",R],_);return C.push(F),y.params.actions=C.reduce((U,L)=>i.JSONX.compose(U,L),null),!!s.syncExecuteCommand(y.id,y.params)}},ns={id:Ko,type:i.CommandType.COMMAND,handler:async(o,t)=>{var X,K,Y;const{position:e}=t,n=o.get(D.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=n.getRectRanges(),c=n.getActiveTextRange(),l=yt(c,a);if(l==null)return!1;const{segmentId:d}=l,A=r.getCurrentUniverDocInstance(),u=A==null?void 0:A.getSelfOrHeaderFooterModel(d).getBody();if(A==null||u==null)return!1;const h=ce(o,A.getUnitId());if(h==null)return!1;const g=h.getViewModel(),m=A==null?void 0:A.getUnitId(),p=new i.TextX,f=i.JSONX.getInstance(),S=xa(l,e,g);if(S==null)return!1;const{offsets:v,columnIndex:E,tableId:T,rowCount:R}=S,C=[],x=v[0]+1,B=[{startOffset:x,endOffset:x,collapsed:!0}],y={id:D.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:B}};for(const G of v){p.push({t:i.TextXActionType.RETAIN,len:G});const q=Ra();p.push({t:i.TextXActionType.INSERT,body:q,len:q.dataStream.length})}const P=J(A,d);C.push(f.editOp(p.serialize(),P));for(let G=0;G<R;G++){const q=ln(),ee=f.insertOp(["tableSource",T,"tableRows",G,"tableCells",E],q);C.push(ee)}const O=A.getSnapshot(),_=O.documentStyle,{marginLeft:F=0,marginRight:H=0}=_,U=((K=(X=_.pageSize)==null?void 0:X.width)!=null?K:800)-F-H,L=(Y=O==null?void 0:O.tableSource)==null?void 0:Y[T].tableColumns,{newColWidth:W,widths:z}=Oa(U,L,E);for(let G=0;G<z.length;G++){const q=f.replaceOp(["tableSource",T,"tableColumns",G,"size","width","v"],L[G].size.width.v,z[G]);C.push(q)}const j=An(W),k=f.insertOp(["tableSource",T,"tableColumns",E],j);return C.push(k),y.params.actions=C.reduce((G,q)=>i.JSONX.compose(G,q),null),!!s.syncExecuteCommand(y.id,y.params)}},fe={id:"doc-paragraph-setting.command",type:i.CommandType.COMMAND,handler:async(o,t)=>{var S,v,E;const e=o.get(D.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=e.getDocRanges();if(!s||a.length===0||!t)return!1;const c=a[0].segmentId,l=s.getUnitId(),d=(v=(S=s.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:S.paragraphs)!=null?v:[],A=(E=i.BuildTextUtils.range.getParagraphsInRanges(a,d))!=null?E:[],u={id:D.RichTextEditingMutation.id,params:{unitId:l,actions:[],textRanges:a}},h=new i.MemoryCursor;h.reset();const g=new i.TextX,m=i.JSONX.getInstance();for(const T of A){const{startIndex:R}=T;g.push({t:i.TextXActionType.RETAIN,len:R-h.cursor});const C={...T.paragraphStyle,...t.paragraph};g.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...T,paragraphStyle:C,startIndex:0}]},coverType:i.UpdateDocsAttributeType.REPLACE}),h.moveCursorTo(R+1)}const p=J(s,c);return u.params.actions=m.editOp(g.serialize(),p),!!r.syncExecuteCommand(u.id,u.params)}},Pl=()=>{const o=I.useDependency(D.DocSelectionManagerService),t=I.useDependency(it),e=w.useMemo(()=>o.getDocRanges(),[]);return w.useEffect(()=>{e.length||t.closePanel()},[e]),e},Ul=()=>{var a,c,l;const t=I.useDependency(i.IUniverInstanceService).getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),e=Pl();if(!t||e.length===0)return[];const n=e[0].segmentId,r=(c=(a=t.getSelfOrHeaderFooterModel(n).getBody())==null?void 0:a.paragraphs)!=null?c:[];return(l=i.BuildTextUtils.range.getParagraphsInRanges(e,r))!=null?l:[]},wl=(o,t)=>{const e=I.useDependency(i.ICommandService),[n,r]=w.useState(()=>{var c,l;const a=o[0];return a?String((l=(c=a.paragraphStyle)==null?void 0:c.horizontalAlign)!=null?l:t):t});return[n,a=>(r(a),e.executeCommand(fe.id,{paragraph:{horizontalAlign:Number(a)}}))]},Ll=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.indentStart,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{indentStart:{v:s}}}))]},Ql=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.indentEnd,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{indentEnd:{v:s}}}))]},Fl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.indentFirstLine,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{indentFirstLine:{v:s}}}))]},Hl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.hanging,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{hanging:{v:s}}}))]},kl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.spaceAbove,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{spaceAbove:{v:s}}}))]},Vl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.spaceBelow,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{spaceBelow:{v:s}}}))]},jl=o=>{const t=I.useDependency(i.ICommandService),e=I.useDependency(M.IRenderManagerService),n=I.useDependency(i.IUniverInstanceService),r=w.useMemo(()=>{var m;const g=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(g)return(m=e.getRenderById(g==null?void 0:g.getUnitId()))==null?void 0:m.with(D.DocSkeletonManagerService).getSkeleton()},[]),s=w.useMemo(()=>new N.BehaviorSubject({}),[]),[a,c]=w.useState(()=>{var m,p;const g=o[0];return g&&(p=(m=g.paragraphStyle)==null?void 0:m.lineSpacing)!=null?p:1}),l=w.useRef(a),[d,A]=w.useState(()=>{var m,p;const g=o[0];return g&&(p=(m=g.paragraphStyle)==null?void 0:m.spacingRule)!=null?p:i.SpacingRule.AUTO}),u=async g=>{c(g),s.next({lineSpacing:g,spacingRule:d})},h=async g=>{if(g!==d){let m=l.current;if(g===i.SpacingRule.AT_LEAST){const p=r==null?void 0:r.findNodeByCharIndex(o[0].startIndex),f=p==null?void 0:p.parent,S=f==null?void 0:f.parent;(S==null?void 0:S.contentHeight)!==void 0&&(m=Math.max(S.contentHeight,m))}else m>5&&(m=2);l.current=a,u(m),A(g),s.next({spacingRule:g})}};return w.useEffect(()=>{const g=s.pipe(pt.filter(m=>!!Object.keys(m).length),pt.bufferTime(16),pt.filter(m=>!!m.length),pt.map(m=>m.reduce((p,f)=>(Object.keys(f).forEach(S=>{p[S]=f[S]}),p),{}))).subscribe(m=>t.executeCommand(fe.id,{paragraph:{...m}}));return()=>g.unsubscribe()},[]),{lineSpacing:[a,u],spacingRule:[d,h]}},ke=o=>{const{value:t,onChange:e,className:n="",min:r=0,max:s=100,step:a=1}=o,c=w.useRef(null);return Q.jsx(te.InputNumber,{step:a,ref:c,min:r,max:s,value:t,onChange:l=>{e(l!=null?l:0).finally(()=>{setTimeout(()=>{var d;(d=c.current)==null||d.focus()},30)})},className:n})};function Wl(){const o=I.useDependency(i.LocaleService),t=w.useMemo(()=>[{label:o.t("toolbar.alignLeft"),value:String(i.HorizontalAlign.LEFT),icon:Q.jsx(yi,{})},{label:o.t("toolbar.alignCenter"),value:String(i.HorizontalAlign.CENTER),icon:Q.jsx(Ti,{})},{label:o.t("toolbar.alignRight"),value:String(i.HorizontalAlign.RIGHT),icon:Q.jsx(Ri,{})},{label:o.t("toolbar.alignJustify"),value:String(i.HorizontalAlign.JUSTIFIED),icon:Q.jsx(hi,{})}],[]),e=Ul(),[n,r]=wl(e,t[0].value),[s,a]=Ll(e),[c,l]=Ql(e),[d,A]=Fl(e),[u,h]=Hl(e),[g,m]=kl(e),[p,f]=Vl(e),{lineSpacing:[S,v],spacingRule:[E,T]}=jl(e),R=w.useMemo(()=>E===i.SpacingRule.AUTO?{min:1,max:5,step:S<2?.5:1}:{min:1,max:100},[E,S]);return Q.jsxs("div",{children:[Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.alignment")}),Q.jsx("div",{className:`
49
+ ${_?"univer-pointer-events-none univer-opacity-0":""}
50
+ `,onMouseEnter:H=>{var L,W,z,j,k,V;(L=o.onPointerEnter)==null||L.call(o,H),c.current=!0;const U=(W=a.current)==null?void 0:W.getBoundingClientRect();E.next({left:((z=U==null?void 0:U.left)!=null?z:0)-4,right:(j=U==null?void 0:U.right)!=null?j:0,top:(k=U==null?void 0:U.top)!=null?k:0,bottom:(V=U==null?void 0:U.bottom)!=null?V:0})},onMouseLeave:()=>{c.current=!1},onClick:()=>{e(!0),h==null||h.setParagraphMenuActive(!0)},children:[Q.jsx(y.component,{className:"univer-h-4 univer-w-4 univer-text-[#181C2A]"}),Q.jsx(fi,{className:"univer-h-3 univer-w-3 univer-text-[#979DAC]"})]}),t&&Q.jsx(I.RectPopup,{portal:!0,mask:!0,maskZIndex:100,anchorRect$:E,direction:"left",onMaskClick:R,children:Q.jsx("section",{ref:n,onMouseEnter:H=>{var U;(U=o.onPointerEnter)==null||U.call(o,H),c.current=!0},onMouseLeave:()=>{c.current=!1},children:Q.jsx(I.DesktopMenu,{style:{width:212},menuType:I.ContextMenuPosition.PARAGRAPH,onOptionSelect:H=>{const{label:U,commandId:L,value:W}=H;r&&r.executeCommand(L!=null?L:U,{value:W}),s.focus(),R()}})})})]})},rl="doc.command.tab",ze={id:rl,type:i.CommandType.COMMAND,async handler(o,t){const n=o.get(exports.DocAutoFormatService).onAutoFormat(ze.id,t);return(await i.sequenceExecuteAsync(n,o.get(i.ICommandService))).result}},il="doc.command.after-space",Nt={id:il,type:i.CommandType.COMMAND,async handler(o){const e=o.get(exports.DocAutoFormatService).onAutoFormat(Nt.id);return(await i.sequenceExecuteAsync(e,o.get(i.ICommandService))).result}},rt={id:"doc.command.enter",type:i.CommandType.COMMAND,async handler(o){const e=o.get(exports.DocAutoFormatService).onAutoFormat(rt.id);return(await i.sequenceExecuteAsync(e,o.get(i.ICommandService))).result}};function Z(o){return o.getContextValue(i.FOCUSING_DOC)&&o.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&!o.getContextValue(i.FOCUSING_COMMON_DRAWINGS)}function sl(o){return o.getContextValue(i.FOCUSING_DOC)&&o.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&!o.getContextValue(i.FOCUSING_COMMON_DRAWINGS)}const al={id:ze.id,binding:I.KeyCode.TAB,preconditions:Z},cl={id:ze.id,binding:I.KeyCode.TAB|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{shift:!0}},ll={id:Ne.id,binding:I.KeyCode.B|I.MetaKeys.CTRL_COMMAND,preconditions:Z},dl={id:Pe.id,binding:I.KeyCode.I|I.MetaKeys.CTRL_COMMAND,preconditions:Z},Al={id:Ue.id,binding:I.KeyCode.U|I.MetaKeys.CTRL_COMMAND,preconditions:Z},ul={id:we.id,binding:I.KeyCode.X|I.MetaKeys.SHIFT|I.MetaKeys.CTRL_COMMAND,preconditions:Z},gl={id:ye.id,binding:I.KeyCode.COMMA|I.MetaKeys.CTRL_COMMAND,preconditions:Z},hl={id:Le.id,binding:I.KeyCode.PERIOD|I.MetaKeys.CTRL_COMMAND,preconditions:Z},ml={id:Mt.id,binding:I.KeyCode.L|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},pl={id:Bt.id,binding:I.KeyCode.R|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},fl={id:Dt.id,binding:I.KeyCode.E|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},Sl={id:_t.id,binding:I.KeyCode.J|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},Il={id:ot.id,binding:I.KeyCode.Digit7|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},vl={id:nt.id,binding:I.KeyCode.Digit8|I.MetaKeys.CTRL_COMMAND|I.MetaKeys.SHIFT,preconditions:Z},El=[50,80,100,130,150,170,200,400],Cl=[10,400];function Tl(){const o=I.useDependency(i.ICommandService),t=I.useDependency(i.IUniverInstanceService),e=w.useMemo(()=>t.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC),[]),n=I.useObservable(e),r=w.useCallback(()=>{var d,A;if(!n)return 100;const l=((A=(d=n.getSettings())==null?void 0:d.zoomRatio)!=null?A:1)*100;return Math.round(l)},[n]),[s,a]=w.useState(()=>r());w.useEffect(()=>(a(r()),o.onCommandExecuted(d=>{if(d.id===Ae.id){const A=r();a(A)}}).dispose),[o,r]);function c(l){if(a(l),n==null)return;const d=l/100;o.executeCommand(Ae.id,{unitId:n.getUnitId(),zoomRatio:d})}return Q.jsx(I.Slider,{min:Cl[0],value:s,shortcuts:El,onChange:c})}function yl(o){return Q.jsx("section",{className:"univer-flex univer-flex-shrink-0 univer-flex-grow-0 univer-basis-[260px] univer-justify-end",children:Q.jsx(Tl,{})})}function bl(){const o=I.useDependency(i.IUniverInstanceService);return I.useObservable(()=>o.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_SHEET),void 0,void 0,[])?null:Q.jsxs("div",{className:"univer-box-border univer-flex univer-items-center univer-justify-between univer-px-5",children:[Q.jsx("div",{}),Q.jsx(yl,{})]})}const Rl=o=>{switch(o){case i.NamedStyleType.HEADING_1:return 1;case i.NamedStyleType.HEADING_2:return 2;case i.NamedStyleType.HEADING_3:return 3;case i.NamedStyleType.HEADING_4:return 4;case i.NamedStyleType.HEADING_5:return 5;case i.NamedStyleType.TITLE:return 1;default:return 1}};function xl(o,t,e,n){var c,l;if(!o)return;const r=Array.from(o.values()),s=r.findIndex(d=>d.paragraphStart!==d.paragraphEnd&&d.rect.top<n&&d.rect.bottom>e);if(s===-1)return;const a=r==null?void 0:r.findLastIndex(d=>d.paragraphStart!==d.paragraphEnd&&d.rect.top<n&&d.rect.bottom>e);for(let d=s;d<=a;d++){const A=r[d],u=t.get(A.startIndex);if((c=u==null?void 0:u.paragraphStyle)!=null&&c.headingId)return u.paragraphStyle.headingId}for(let d=s;d>=0;d--){const A=r[d],u=t.get(A.startIndex);if((l=u==null?void 0:u.paragraphStyle)!=null&&l.headingId)return u.paragraphStyle.headingId}}const wr="__title";function Ol(){var O,N,F,H,U,L,W,z,j;const o=I.useDependency(i.ICommandService),t=I.useDependency(i.IUniverInstanceService),e=I.useObservable(w.useMemo(()=>t.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC),[])),n=I.useDependency(M.IRenderManagerService),r=(N=(O=e==null?void 0:e.getBody())==null?void 0:O.dataStream)!=null?N:"",[s,a]=w.useState(0),c=(F=e==null?void 0:e.getUnitId())!=null?F:"",l=n.getRenderById(c),d=e==null?void 0:e.getTitle(),A=l==null?void 0:l.with(exports.DocEventManagerService),u=A==null?void 0:A.paragraphBounds,h=(U=(H=l==null?void 0:l.mainComponent)==null?void 0:H.left)!=null?U:0,[g,m]=w.useState(0),p=(L=l==null?void 0:l.engine.height)!=null?L:0,f=(W=l==null?void 0:l.scene.scaleY)!=null?W:1,S=g+p/f,v=(j=(z=e==null?void 0:e.getBody())==null?void 0:z.paragraphs)!=null?j:[],C=w.useMemo(()=>{const k=new Map;return v.forEach(V=>{k.set(V.startIndex,V)}),k},[v]);I.useObservable(w.useMemo(()=>l!=null&&l.engine.onTransformChange$?i.fromEventSubject(l==null?void 0:l.engine.onTransformChange$).pipe(P.throttleTime(33)):P.of(null),[l==null?void 0:l.engine.onTransformChange$]));const y=h<180?"float":"side-bar",b=v==null?void 0:v.filter(k=>{var V;return((V=k.paragraphStyle)==null?void 0:V.namedStyleType)!==void 0&&k.paragraphStyle.namedStyleType!==i.NamedStyleType.SUBTITLE&&k.paragraphStyle.namedStyleType!==i.NamedStyleType.NORMAL_TEXT}).map(k=>{var G;const V=Rl(k.paragraphStyle.namedStyleType),X=u==null?void 0:u.get(k.startIndex);if(!X)return null;const{paragraphStart:K,paragraphEnd:Y}=X;return{id:k.paragraphStyle.headingId,text:i.getPlainText(r.slice(K,Y)),level:V,isTitle:((G=k.paragraphStyle)==null?void 0:G.namedStyleType)===i.NamedStyleType.TITLE}}).filter(Boolean),E=b!=null&&b.find(k=>k.isTitle)?b:[...d?[{id:wr,text:d,level:1,isTitle:!0}]:[],...b!=null?b:[]].filter(Boolean),[R,D]=w.useState(!0),T=xl(u,C,g,S);w.useEffect(()=>{const k=i.debounce(a,100),V=o.onCommandExecuted(X=>{X.id===B.RichTextEditingMutation.id&&X.params.unitId===(e==null?void 0:e.getUnitId())&&k(Y=>Y+1)});return()=>{V.dispose()}},[o,e]),w.useEffect(()=>{const k=l==null?void 0:l.scene.getViewport(ie.VIEW_MAIN);if(!k)return;const V=i.fromEventSubject(k.onScrollAfter$).pipe(P.throttleTime(33)).subscribe(X=>{m(X.viewportScrollY)});return()=>{V.unsubscribe()}},[l]);const _=I.useEvent(k=>{const V=l==null?void 0:l.scene.getViewport(ie.VIEW_MAIN);if(!V)return;if(k.id===wr){V.scrollToViewportPos({viewportScrollY:0});return}const X=v.find(Y=>{var G;return((G=Y.paragraphStyle)==null?void 0:G.headingId)===k.id});if(!X)return;const K=u==null?void 0:u.get(X.startIndex);K&&V.scrollToViewportPos({viewportScrollY:K.rect.top})});return!e||i.isInternalEditorID(c)||!(E!=null&&E.length)?null:Q.jsx("div",{className:"univer-absolute univer-bottom-0 univer-left-0 univer-top-0 univer-z-[100] univer-w-[0px]",children:Q.jsx(te.SideMenu,{menus:E,open:R,onOpenChange:D,mode:y,maxWidth:y==="float"?void 0:Math.floor(h),wrapperClass:"univer-mt-12",activeId:T,onClick:_,maxHeight:p-48})})}const Go="docs-ui.config",Lr={layout:{docContainerConfig:Jr,toolbarConfig:qr}},Cn={id:"doc.table.delete-rows",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getRectRanges(),s=t.getActiveTextRange(),a=yt(s,r);if(a==null)return!1;const{segmentId:c}=a,l=e.getCurrentUniverDocInstance(),d=l==null?void 0:l.getSelfOrHeaderFooterModel(c).getBody();if(l==null||d==null)return!1;const A=ce(o,l.getUnitId());if(A==null)return!1;const u=A.getViewModel(),h=l==null?void 0:l.getUnitId(),g=new i.TextX,m=i.JSONX.getInstance(),p=Ui(a,u);if(p==null)return!1;const{offset:f,rowIndexes:S,len:v,tableId:C,cursor:y,selectWholeTable:b}=p;if(b)return n.executeCommand(lt.id);const E=[],R=[{startOffset:y,endOffset:y,collapsed:!0}],D={id:B.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:R}};f>0&&g.push({t:i.TextXActionType.RETAIN,len:f}),g.push({t:i.TextXActionType.DELETE,len:v});const T=J(l,c);E.push(m.editOp(g.serialize(),T));for(const O of S.reverse()){const N=m.removeOp(["tableSource",C,"tableRows",O]);E.push(N)}return D.params.actions=E.reduce((O,N)=>i.JSONX.compose(O,N),null),!!n.syncExecuteCommand(D.id,D.params)}},Tn={id:"doc.table.delete-columns",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getRectRanges(),s=t.getActiveTextRange(),a=yt(s,r);if(a==null)return!1;const{segmentId:c}=a,l=e.getCurrentUniverDocInstance(),d=l==null?void 0:l.getSelfOrHeaderFooterModel(c).getBody();if(l==null||d==null)return!1;const A=ce(o,l.getUnitId());if(A==null)return!1;const u=A.getViewModel(),h=l==null?void 0:l.getUnitId(),g=new i.TextX,m=i.JSONX.getInstance(),p=Oa(a,u);if(p==null)return!1;const{offsets:f,columnIndexes:S,tableId:v,cursor:C,rowCount:y,selectWholeTable:b}=p;if(b)return n.executeCommand(lt.id);const E=[],R=[{startOffset:C,endOffset:C,collapsed:!0}],D={id:B.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:R}};for(const O of f){const{retain:N,delete:F}=O;N>0&&g.push({t:i.TextXActionType.RETAIN,len:N}),g.push({t:i.TextXActionType.DELETE,len:F})}const T=J(l,c);E.push(m.editOp(g.serialize(),T)),S.reverse();for(let O=0;O<y;O++)for(const N of S){const F=m.removeOp(["tableSource",v,"tableRows",O,"tableCells",N]);E.push(F)}for(const O of S){const N=m.removeOp(["tableSource",v,"tableColumns",O]);E.push(N)}return D.params.actions=E.reduce((O,N)=>i.JSONX.compose(O,N),null),!!n.syncExecuteCommand(D.id,D.params)}},lt={id:"doc.table.delete-table",type:i.CommandType.COMMAND,handler:async o=>{const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService),n=o.get(i.ICommandService),r=t.getRectRanges(),s=t.getActiveTextRange(),a=yt(s,r);if(a==null)return!1;const{segmentId:c}=a,l=e.getCurrentUniverDocInstance(),d=l==null?void 0:l.getSelfOrHeaderFooterModel(c).getBody();if(l==null||d==null)return!1;const A=ce(o,l.getUnitId());if(A==null)return!1;const u=A.getViewModel(),h=l==null?void 0:l.getUnitId(),g=new i.TextX,m=i.JSONX.getInstance(),p=wi(a,u);if(p==null)return!1;const{offset:f,len:S,tableId:v,cursor:C}=p,y=[],b=[{startOffset:C,endOffset:C,collapsed:!0}],E={id:B.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:b}};f>0&&g.push({t:i.TextXActionType.RETAIN,len:f}),g.push({t:i.TextXActionType.DELETE,len:S});const R=J(l,c);y.push(m.editOp(g.serialize(),R));const D=m.removeOp(["tableSource",v]);return y.push(D),E.params.actions=y.reduce((_,O)=>i.JSONX.compose(_,O),null),!!n.syncExecuteCommand(E.id,E.params)}},Xo="doc.command.table-insert-row",Ko="doc.command.table-insert-column",Ml="doc.command.table-insert-row-above",Dl="doc.command.table-insert-row-bellow",Bl="doc.command.table-insert-column-left",_l="doc.command.table-insert-column-right",yn={id:Ml,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Xo,{position:ln.ABOVE})},bn={id:Dl,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Xo,{position:ln.BELLOW})},Rn={id:Bl,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Ko,{position:Eo.LEFT})},xn={id:_l,type:i.CommandType.COMMAND,handler:async o=>o.get(i.ICommandService).executeCommand(Ko,{position:Eo.RIGHT})},Yo={id:Xo,type:i.CommandType.COMMAND,handler:async(o,t)=>{const{position:e}=t,n=o.get(B.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=n.getRectRanges(),c=n.getActiveTextRange(),l=yt(c,a);if(l==null)return!1;const{segmentId:d}=l,A=r.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),u=A==null?void 0:A.getSelfOrHeaderFooterModel(d).getBody();if(A==null||u==null)return!1;const h=ce(o,A.getUnitId());if(h==null)return!1;const g=h.getViewModel(),m=A==null?void 0:A.getUnitId(),p=new i.TextX,f=i.JSONX.getInstance(),S=ba(l,e,g);if(S==null)return!1;const{offset:v,colCount:C,tableId:y,insertRowIndex:b}=S,E=[],R=v+2,D=[{startOffset:R,endOffset:R,collapsed:!0}],T={id:B.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:D}};v>0&&p.push({t:i.TextXActionType.RETAIN,len:v});const _=Ta(C);p.push({t:i.TextXActionType.INSERT,body:_,len:_.dataStream.length});const O=J(A,d);E.push(f.editOp(p.serialize(),O));const N=An(C),F=f.insertOp(["tableSource",y,"tableRows",b],N);return E.push(F),T.params.actions=E.reduce((U,L)=>i.JSONX.compose(U,L),null),!!s.syncExecuteCommand(T.id,T.params)}},ns={id:Ko,type:i.CommandType.COMMAND,handler:async(o,t)=>{var X,K,Y;const{position:e}=t,n=o.get(B.DocSelectionManagerService),r=o.get(i.IUniverInstanceService),s=o.get(i.ICommandService),a=n.getRectRanges(),c=n.getActiveTextRange(),l=yt(c,a);if(l==null)return!1;const{segmentId:d}=l,A=r.getCurrentUniverDocInstance(),u=A==null?void 0:A.getSelfOrHeaderFooterModel(d).getBody();if(A==null||u==null)return!1;const h=ce(o,A.getUnitId());if(h==null)return!1;const g=h.getViewModel(),m=A==null?void 0:A.getUnitId(),p=new i.TextX,f=i.JSONX.getInstance(),S=Ra(l,e,g);if(S==null)return!1;const{offsets:v,columnIndex:C,tableId:y,rowCount:b}=S,E=[],R=v[0]+1,D=[{startOffset:R,endOffset:R,collapsed:!0}],T={id:B.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:D}};for(const G of v){p.push({t:i.TextXActionType.RETAIN,len:G});const q=ya();p.push({t:i.TextXActionType.INSERT,body:q,len:q.dataStream.length})}const _=J(A,d);E.push(f.editOp(p.serialize(),_));for(let G=0;G<b;G++){const q=dn(),ee=f.insertOp(["tableSource",y,"tableRows",G,"tableCells",C],q);E.push(ee)}const O=A.getSnapshot(),N=O.documentStyle,{marginLeft:F=0,marginRight:H=0}=N,U=((K=(X=N.pageSize)==null?void 0:X.width)!=null?K:800)-F-H,L=(Y=O==null?void 0:O.tableSource)==null?void 0:Y[y].tableColumns,{newColWidth:W,widths:z}=xa(U,L,C);for(let G=0;G<z.length;G++){const q=f.replaceOp(["tableSource",y,"tableColumns",G,"size","width","v"],L[G].size.width.v,z[G]);E.push(q)}const j=un(W),k=f.insertOp(["tableSource",y,"tableColumns",C],j);return E.push(k),T.params.actions=E.reduce((G,q)=>i.JSONX.compose(G,q),null),!!s.syncExecuteCommand(T.id,T.params)}},fe={id:"doc-paragraph-setting.command",type:i.CommandType.COMMAND,handler:async(o,t)=>{var C,y,b,E,R;const e=o.get(B.DocSelectionManagerService),n=o.get(i.IUniverInstanceService),r=o.get(i.ICommandService),s=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),a=e.getDocRanges();if(!s||a.length===0||!t)return!1;const c=a[0].segmentId,l=s.getUnitId(),d=s.getSelfOrHeaderFooterModel(c),A=(y=(C=d.getBody())==null?void 0:C.paragraphs)!=null?y:[],u=(E=(b=d.getBody())==null?void 0:b.dataStream)!=null?E:"",h=(R=i.BuildTextUtils.range.getParagraphsInRanges(a,A,u))!=null?R:[],g={id:B.RichTextEditingMutation.id,params:{unitId:l,actions:[],textRanges:a}},m=new i.MemoryCursor;m.reset();const p=new i.TextX,f=i.JSONX.getInstance();for(const D of h){const{startIndex:T}=D;p.push({t:i.TextXActionType.RETAIN,len:T-m.cursor});const _={...D.paragraphStyle,...t.paragraph};p.push({t:i.TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...D,paragraphStyle:_,startIndex:0}]},coverType:i.UpdateDocsAttributeType.REPLACE}),m.moveCursorTo(T+1)}const S=J(s,c);return g.params.actions=f.editOp(p.serialize(),S),!!r.syncExecuteCommand(g.id,g.params)}},Nl=()=>{const o=I.useDependency(B.DocSelectionManagerService),t=I.useDependency(it),e=w.useMemo(()=>o.getDocRanges(),[]);return w.useEffect(()=>{e.length||t.closePanel()},[e]),e},Pl=()=>{var l,d,A,u,h;const t=I.useDependency(i.IUniverInstanceService).getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),e=Nl();if(!t||e.length===0)return[];const n=e[0].segmentId,r=t.getSelfOrHeaderFooterModel(n),s=(d=(l=r.getBody())==null?void 0:l.paragraphs)!=null?d:[],a=(u=(A=r.getBody())==null?void 0:A.dataStream)!=null?u:"";return(h=i.BuildTextUtils.range.getParagraphsInRanges(e,s,a))!=null?h:[]},Ul=(o,t)=>{const e=I.useDependency(i.ICommandService),[n,r]=w.useState(()=>{var c,l;const a=o[0];return a?String((l=(c=a.paragraphStyle)==null?void 0:c.horizontalAlign)!=null?l:t):t});return[n,a=>(r(a),e.executeCommand(fe.id,{paragraph:{horizontalAlign:Number(a)}}))]},wl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.indentStart,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{indentStart:{v:s}}}))]},Ll=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.indentEnd,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{indentEnd:{v:s}}}))]},Ql=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.indentFirstLine,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{indentFirstLine:{v:s}}}))]},Fl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.hanging,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{hanging:{v:s}}}))]},Hl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.spaceAbove,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{spaceAbove:{v:s}}}))]},kl=o=>{const t=I.useDependency(i.ICommandService),[e,n]=w.useState(()=>{var a;const s=o[0];return s?M.getNumberUnitValue((a=s.paragraphStyle)==null?void 0:a.spaceBelow,0):0});return[e,s=>(n(s),t.executeCommand(fe.id,{paragraph:{spaceBelow:{v:s}}}))]},Vl=o=>{const t=I.useDependency(i.ICommandService),e=I.useDependency(M.IRenderManagerService),n=I.useDependency(i.IUniverInstanceService),r=w.useMemo(()=>{var m;const g=n.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(g)return(m=e.getRenderById(g==null?void 0:g.getUnitId()))==null?void 0:m.with(B.DocSkeletonManagerService).getSkeleton()},[]),s=w.useMemo(()=>new P.BehaviorSubject({}),[]),[a,c]=w.useState(()=>{var m,p;const g=o[0];return g&&(p=(m=g.paragraphStyle)==null?void 0:m.lineSpacing)!=null?p:1}),l=w.useRef(a),[d,A]=w.useState(()=>{var m,p;const g=o[0];return g&&(p=(m=g.paragraphStyle)==null?void 0:m.spacingRule)!=null?p:i.SpacingRule.AUTO}),u=async g=>{c(g),s.next({lineSpacing:g,spacingRule:d})},h=async g=>{if(g!==d){let m=l.current;if(g===i.SpacingRule.AT_LEAST){const p=r==null?void 0:r.findNodeByCharIndex(o[0].startIndex),f=p==null?void 0:p.parent,S=f==null?void 0:f.parent;(S==null?void 0:S.contentHeight)!==void 0&&(m=Math.max(S.contentHeight,m))}else m>5&&(m=2);l.current=a,u(m),A(g),s.next({spacingRule:g})}};return w.useEffect(()=>{const g=s.pipe(pt.filter(m=>!!Object.keys(m).length),pt.bufferTime(16),pt.filter(m=>!!m.length),pt.map(m=>m.reduce((p,f)=>(Object.keys(f).forEach(S=>{p[S]=f[S]}),p),{}))).subscribe(m=>t.executeCommand(fe.id,{paragraph:{...m}}));return()=>g.unsubscribe()},[]),{lineSpacing:[a,u],spacingRule:[d,h]}},ke=o=>{const{value:t,onChange:e,className:n="",min:r=0,max:s=100,step:a=1}=o,c=w.useRef(null);return Q.jsx(te.InputNumber,{step:a,ref:c,min:r,max:s,value:t,onChange:l=>{e(l!=null?l:0).finally(()=>{setTimeout(()=>{var d;(d=c.current)==null||d.focus()},30)})},className:n})};function jl(){const o=I.useDependency(i.LocaleService),t=w.useMemo(()=>[{label:o.t("toolbar.alignLeft"),value:String(i.HorizontalAlign.LEFT),icon:Q.jsx(yi,{})},{label:o.t("toolbar.alignCenter"),value:String(i.HorizontalAlign.CENTER),icon:Q.jsx(Ti,{})},{label:o.t("toolbar.alignRight"),value:String(i.HorizontalAlign.RIGHT),icon:Q.jsx(bi,{})},{label:o.t("toolbar.alignJustify"),value:String(i.HorizontalAlign.JUSTIFIED),icon:Q.jsx(hi,{})}],[]),e=Pl(),[n,r]=Ul(e,t[0].value),[s,a]=wl(e),[c,l]=Ll(e),[d,A]=Ql(e),[u,h]=Fl(e),[g,m]=Hl(e),[p,f]=kl(e),{lineSpacing:[S,v],spacingRule:[C,y]}=Vl(e),b=w.useMemo(()=>C===i.SpacingRule.AUTO?{min:1,max:5,step:S<2?.5:1}:{min:1,max:100},[C,S]);return Q.jsxs("div",{children:[Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.alignment")}),Q.jsx("div",{className:`
50
51
  univer-mt-4 univer-box-border univer-flex univer-w-full univer-items-center univer-justify-between
51
52
  univer-gap-1 univer-rounded-md univer-border univer-border-solid univer-border-gray-200 univer-p-1
52
- `,children:t.map(C=>Q.jsx(te.Tooltip,{title:C.label,placement:"bottom",children:Q.jsx("span",{className:te.clsx(`
53
+ `,children:t.map(E=>Q.jsx(te.Tooltip,{title:E.label,placement:"bottom",children:Q.jsx("span",{className:te.clsx(`
53
54
  univer-flex univer-cursor-pointer univer-items-center univer-justify-center
54
55
  univer-rounded univer-bg-none univer-px-3 univer-py-1
55
56
  hover:univer-bg-black/60
56
- `,{"univer-bg-blend-color-dodge/90":n===C.value}),onClick:()=>r(C.value),children:C.icon})},C.value))}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.indentation")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.left"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:s,onChange:C=>a(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.right"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:c,onChange:C=>l(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.firstLine"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:d,onChange:C=>A(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.hanging"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:u,onChange:C=>h(C!=null?C:0)})]})]}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.spacing")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-betweenuniver-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.before"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:g,onChange:C=>m(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.after"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:p,onChange:C=>f(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between item-center",children:[Q.jsx("div",{className:"univer-mt-3 univer-text-xs",children:o.t("doc.paragraphSetting.lineSpace")}),Q.jsxs("div",{className:"univer-mt-4 univer-flex univer-flex-col univer-gap-1.5",style:{width:162},children:[Q.jsx(te.Select,{value:`${E}`,options:[{label:o.t("doc.paragraphSetting.multiSpace"),value:`${i.SpacingRule.AUTO}`},{label:o.t("doc.paragraphSetting.fixedValue"),value:`${i.SpacingRule.AT_LEAST}`}],onChange:C=>T(Number(C))}),Q.jsx(ke,{...R,value:S,onChange:C=>v(C!=null?C:0)})]})]})]})]})}const zl=(o,t)=>t.length===o.length&&o.some(e=>t.some(n=>n.startOffset===e.startOffset&&n.endOffset===e.endOffset));function Gl(){const o=I.useDependency(i.ICommandService),t=I.useDependency(i.LocaleService),e=I.useObservable(t.currentLocale$),[n,r]=w.useState(""),s=w.useMemo(()=>i.debounce(()=>r(i.generateRandomId(4)),300),[]),a=w.useRef([]);return w.useEffect(()=>{const c=o.onCommandExecuted(l=>{if(D.SetTextSelectionsOperation.id===l.id){const d=l.params.ranges;zl(d,a.current)||r(i.generateRandomId(4)),a.current=d}D.RichTextEditingMutation.id===l.id&&l.params.trigger!==fe.id&&s()});return()=>c.dispose()},[s]),w.useEffect(()=>{r(i.generateRandomId(4))},[e]),w.useEffect(()=>()=>s.cancel(),[s]),Q.jsx(Wl,{},n)}var Xl=Object.getOwnPropertyDescriptor,Kl=(o,t,e,n)=>{for(var r=n>1?void 0:n?Xl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Qn=(o,t)=>(e,n)=>t(e,n,o);const Qr="doc_ui_paragraph-setting-panel";let it=class extends i.Disposable{constructor(t,e,n){super();b(this,"_id");this._commandService=t,this._componentManager=e,this._sidebarService=n,this._init()}_init(){this.disposeWithMe(this._componentManager.register(Qr,Gl))}openPanel(){const t={header:{title:"doc.slider.paragraphSetting"},id:this._id,children:{label:Qr},width:300};this._sidebarService.open(t)}closePanel(){this._sidebarService.close(this._id)}};it=Kl([Qn(0,i.ICommandService),Qn(1,i.Inject(I.ComponentManager)),Qn(2,i.Inject(I.ISidebarService))],it);const qo={id:"sidebar.operation.doc-paragraph-setting-panel",type:i.CommandType.OPERATION,handler:o=>(o.get(it).openPanel(),!0)},Jo=o=>{const t=o.get(D.DocSelectionManagerService);return new N.Observable(e=>{const n=t.textSelection$.subscribe(()=>{t.getDocRanges().some(a=>a.collapsed===!1||a.rangeType===i.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function Yl(o){if(o.length<2)return!0;const t=o.map(e=>e.tableId);return t.every(e=>e===t[0])}function Fr(o,t,e){var s;const n=t.getRectRanges(),r=t.getActiveTextRange();if(n&&n.length&&Yl(n)&&r==null){o.next(!1);return}if(r&&(n==null||n.length===0)){const{segmentId:a,startOffset:c,endOffset:l}=r,d=e.getCurrentUniverDocInstance(),A=(s=d==null?void 0:d.getSelfOrHeaderFooterModel(a).getBody())==null?void 0:s.tables;if(A&&A.length&&A.some(u=>{const{startIndex:h,endIndex:g}=u;return c>h&&c<g||l>h&&l<g})){o.next(!1);return}}o.next(!0)}const be=o=>{const t=o.get(D.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new N.Observable(n=>{const r=t.textSelection$.subscribe(()=>{Fr(n,t,e)});return Fr(n,t,e),()=>r.unsubscribe()})},ql=o=>({id:Et.name,commandId:Et.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy",disabled$:Jo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),Jl=o=>({id:qo.id,type:I.MenuItemType.BUTTON,icon:"MenuSingle24",title:"doc.menu.paragraphSetting",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),Zl=o=>({id:fn.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.cut",disabled$:Jo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),$l=o=>({id:Sn.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.paste",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),ed=o=>({id:Rt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.delete",disabled$:Jo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),os="doc.menu.table-insert";function td(o){return{id:os,type:I.MenuItemType.SUBITEMS,title:"table.insert",icon:"Insert",hidden$:N.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),be(o),(t,e)=>t||e)}}function nd(o){return{id:yn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowAbove",icon:"InsertRowAbove",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function od(o){return{id:Rn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowBelow",icon:"InsertRowBelow",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function rd(o){return{id:bn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnLeft",icon:"LeftInsertColumn",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function id(o){return{id:xn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnRight",icon:"RightInsertColumn",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}const rs="doc.menu.table-delete";function sd(o){return{id:rs,type:I.MenuItemType.SUBITEMS,title:"table.delete",icon:"Reduce",hidden$:N.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),be(o),(t,e)=>t||e)}}function ad(o){return{id:Cn.id,type:I.MenuItemType.BUTTON,title:"table.deleteRows",icon:"DeleteRow",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function cd(o){return{id:Tn.id,type:I.MenuItemType.BUTTON,title:"table.deleteColumns",icon:"DeleteColumn",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function ld(o){return{id:lt.id,type:I.MenuItemType.BUTTON,title:"table.deleteTable",icon:"GridSingle",disabled$:be(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}const is={[I.RibbonStartGroup.FORMAT]:{[Ne.id]:{order:0,menuItemFactory:ic},[Pe.id]:{order:1,menuItemFactory:sc},[Ue.id]:{order:2,menuItemFactory:ac},[we.id]:{order:3,menuItemFactory:cc},[ye.id]:{order:4,menuItemFactory:lc},[Le.id]:{order:5,menuItemFactory:dc},[le.id]:{order:5.5,menuItemFactory:gc},[me.id]:{order:6,menuItemFactory:uc},[Me.id]:{order:7,menuItemFactory:Ac},[De.id]:{order:8,menuItemFactory:hc},[Be.id]:{order:9,menuItemFactory:bc,[at.id]:{order:0,menuItemFactory:Rc}}},[I.RibbonStartGroup.LAYOUT]:{[Zi]:{order:1,menuItemFactory:fc,[En.id]:{order:0,menuItemFactory:Sc}},[Ot.id]:{order:2,menuItemFactory:Ic},[Mt.id]:{order:3,menuItemFactory:vc},[Dt.id]:{order:4,menuItemFactory:Ec},[Bt.id]:{order:5,menuItemFactory:Cc},[bt.id]:{order:6,menuItemFactory:Tc},[ot.id]:{order:7,menuItemFactory:Mr},[nt.id]:{order:8,menuItemFactory:Dr},[Ct.id]:{order:9,menuItemFactory:Br},[So.id]:{order:10,menuItemFactory:mc},[vn.id]:{order:11,menuItemFactory:yc}},[I.ContextMenuPosition.MAIN_AREA]:{[I.ContextMenuGroup.FORMAT]:{[Et.name]:{order:0,menuItemFactory:ql},[fn.id]:{order:1,menuItemFactory:Zl},[Sn.id]:{order:2,menuItemFactory:$l},[Rt.id]:{order:3,menuItemFactory:ed}},[I.ContextMenuGroup.LAYOUT]:{[qo.id]:{order:0,menuItemFactory:Jl},[os]:{order:1,menuItemFactory:td,[yn.id]:{order:1,menuItemFactory:nd},[Rn.id]:{order:2,menuItemFactory:od},[bn.id]:{order:3,menuItemFactory:rd},[xn.id]:{order:4,menuItemFactory:id}},[rs]:{order:2,menuItemFactory:sd,[Cn.id]:{order:1,menuItemFactory:ad},[Tn.id]:{order:2,menuItemFactory:cd},[lt.id]:{order:3,menuItemFactory:ld}}}},[I.ContextMenuPosition.PARAGRAPH]:{[I.ContextMenuGroup.QUICK]:{[Ho.id]:{order:0,menuItemFactory:Oc},[ko.id]:{order:1,menuItemFactory:Mc},[Vo.id]:{order:2,menuItemFactory:Dc},[jo.id]:{order:3,menuItemFactory:Bc},[Wo.id]:{order:4,menuItemFactory:_c},[Yt.id]:{order:5,menuItemFactory:Nc},[ot.id]:{order:6,menuItemFactory:Mr},[nt.id]:{order:7,menuItemFactory:Dr},[Ct.id]:{order:8,menuItemFactory:Br}},[I.ContextMenuGroup.FORMAT]:{[Do.id]:{order:0,menuItemFactory:Pc},[Bo.id]:{order:1,menuItemFactory:Uc},[xo.id]:{order:2,menuItemFactory:wc}},[I.ContextMenuGroup.LAYOUT]:{[es]:{menuItemFactory:kc,[Lo.id]:{order:0,menuItemFactory:Lc},[Qo.id]:{order:1,menuItemFactory:Qc},[Fo.id]:{order:2,menuItemFactory:Fc},[No.id]:{order:3,menuItemFactory:Hc}}}}};var dd=Object.getOwnPropertyDescriptor,Ad=(o,t,e,n)=>{for(var r=n>1?void 0:n?dd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Se=(o,t)=>(e,n)=>t(e,n,o);exports.DocUIController=class extends i.Disposable{constructor(t,e,n,r,s,a,c,l,d){super(),this._injector=t,this._componentManager=e,this._commandService=n,this._layoutService=r,this._menuManagerService=s,this._uiPartsService=a,this._univerInstanceService=c,this._shortcutService=l,this._configService=d,this._init()}_initCustomComponents(){const t=this._componentManager;this.disposeWithMe(t.register(vo,te.ColorPicker)),this.disposeWithMe(t.register(Mi,I.FontFamily)),this.disposeWithMe(t.register(Di,I.FontFamilyItem)),this.disposeWithMe(t.register(Bi,I.FontSize)),this.disposeWithMe(t.register(Pi,Ca)),this.disposeWithMe(t.register(Ni,va)),this.disposeWithMe(t.register("TodoList",bi)),this.disposeWithMe(t.register("doc.paragraph.menu",rl)),this.disposeWithMe(t.register("CutSingle",mi)),this.disposeWithMe(t.register("DeleteSingle",pi))}_initUiParts(){var e,n,r,s,a;const t=this._configService.getConfig(Go);(n=(e=t==null?void 0:t.layout)==null?void 0:e.docContainerConfig)!=null&&n.footer&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.FOOTER,()=>I.connectInjector(bl,this._injector))),((a=(s=(r=t==null?void 0:t.layout)==null?void 0:r.docContainerConfig)==null?void 0:s.sideMenu)==null||a)&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.CONTENT,()=>I.connectInjector(Ml,this._injector)))}_initMenus(){this._menuManagerService.mergeMenu(is)}_initShortCut(){[dl,Al,ul,gl,hl,ml,Sl,Il,fl,pl,vl,El,cl].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}_init(){this._initCustomComponents(),this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[Oi,So,fo].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(i.UniverInstanceType.UNIVER_DOC,t=>{this._injector.get(M.IRenderManagerService).getRenderById(t).with(exports.DocSelectionRenderService).focus()}))}};exports.DocUIController=Ad([Se(0,i.Inject(i.Injector)),Se(1,i.Inject(I.ComponentManager)),Se(2,i.ICommandService),Se(3,I.ILayoutService),Se(4,I.IMenuManagerService),Se(5,I.IUIPartsService),Se(6,i.IUniverInstanceService),Se(7,I.IShortcutService),Se(8,i.IConfigService)],exports.DocUIController);var ud=Object.getOwnPropertyDescriptor,gd=(o,t,e,n)=>{for(var r=n>1?void 0:n?ud(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Fn=(o,t)=>(e,n)=>t(e,n,o);const Hr=1.5;exports.DocBackScrollRenderController=class extends i.RxDisposable{constructor(t,e,n,r){super(),this._context=t,this._textSelectionManagerService=e,this._editorService=n,this._docSkeletonManagerService=r,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe(N.takeUntil(this.dispose$)).subscribe(t=>{if(t==null)return;const{isEditing:e,unitId:n}=t;n!==this._context.unitId||!e||this._context.unitId!==i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(t){const e=this._docSkeletonManagerService.getSkeleton();if(!e)return;const{startOffset:n}=t,r=e.findNodePositionByCharIndex(n);r&&this.scrollToNode(r)}scrollToNode(t){var P;const{unitId:e,scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton();if(r==null||s==null)return;const a=r.getOffsetConfig(),{docsLeft:c,docsTop:l}=a,d=new ve(a,s),{contentBoxPointGroup:A}=d.getRangePointData(t,t),{left:u,top:h,height:g}=St(A),m=u+c,p=h+l,f=n.getViewport(ie.VIEW_MAIN),S=this._editorService.getEditor(e);if(f==null)return;const{left:v,top:E,right:T,bottom:R}=f.getBounding().viewBound;let C=0,x=0;const B=S?(P=S.params.backScrollOffset)!=null?P:0:100;p<E?C=p-E-B:p>R-g&&(C=p-R+g+B),m<v?x=m-v:m>T-Hr&&(x=m-T+Hr);const y=f.transViewportScroll2ScrollValue(x,C);f.scrollByBarDeltaValue(y)}_scrollToSelection(){const t=this._textSelectionManagerService.getActiveTextRange();if(t==null)return;const{collapsed:e,startNodePosition:n}=t;e&&this.scrollToNode(n)}};exports.DocBackScrollRenderController=gd([Fn(1,i.Inject(D.DocSelectionManagerService)),Fn(2,ae),Fn(3,i.Inject(D.DocSkeletonManagerService))],exports.DocBackScrollRenderController);var hd=Object.getOwnPropertyDescriptor,md=(o,t,e,n)=>{for(var r=n>1?void 0:n?hd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ye=(o,t)=>(e,n)=>t(e,n,o);exports.DocRenderController=class extends i.RxDisposable{constructor(t,e,n,r,s,a,c){super(),this._context=t,this._commandService=e,this._docSelectionRenderService=n,this._docSkeletonManagerService=r,this._editorService=s,this._renderManagerService=a,this._univerInstanceService=c,this._addNewRender(),this._initRenderRefresh(),this._initCommandListener()}reRender(t){var a,c;const e=(a=this._renderManagerService.getRenderById(t))==null?void 0:a.with(D.DocSkeletonManagerService),n=e==null?void 0:e.getSkeleton();if(!n||!!n.getViewModel().getDataModel().getSnapshot().disabled)return;n.calculate();const s=this._editorService.getEditor(t);if(this._editorService.isEditor(t)&&!(s!=null&&s.params.scrollBar)){(c=this._context.mainComponent)==null||c.makeDirty();return}this._recalculateSizeBySkeleton(n)}_addNewRender(){const{scene:t,engine:e}=this._context,n=new M.Viewport(ie.VIEW_MAIN,t,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});t.attachControl(),t.onMouseWheel$.subscribeEvent((s,a)=>{const c=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if((c==null?void 0:c.getUnitId())!==this._context.unitId)return;const l=s;if(l.ctrlKey){const d=Math.abs(l.deltaX);let A=d<40?.2:d<80?.4:.2;A*=l.deltaY>0?-1:1,t.scaleX<1&&(A/=2),t.scaleX+A>4?t.scale(4,4):t.scaleX+A<.1?t.scale(.1,.1):l.preventDefault()}else n.onMouseWheel(l,a)}),new M.ScrollBar(n),t.addLayer(new M.Layer(t,[],kt),new M.Layer(t,[],ei)),this._addComponent();const r=()=>t.render();this.disposeWithMe(this._context.activated$.subscribe(s=>{s?e.runRenderLoop(r):e.stopRenderLoop(r)})),this._docSelectionRenderService.__attachScrollEvent()}_addComponent(){const{scene:t,unit:e,components:n}=this._context,a={pageMarginLeft:20,pageMarginTop:20},c=new M.Documents(de.MAIN,void 0,a);c.zIndex=kn;const l=new M.DocBackground(de.BACKGROUND,void 0,a);l.zIndex=kn,this._context.mainComponent=c,n.set(de.MAIN,c),n.set(de.BACKGROUND,l),t.addObjects([c],kt),t.addObjects([l],$r),this._editorService.getEditor(e.getUnitId())==null&&t.enableLayerCache(kt)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe(N.takeUntil(this.dispose$)).subscribe(t=>{this._create(t)})}_create(t){var l;if(!t)return;const{mainComponent:e,components:n}=this._context,r=e,s=n.get(de.BACKGROUND);r.changeSkeleton(t),s.changeSkeleton(t);const{unitId:a}=this._context,c=this._editorService.getEditor(a);if(this._editorService.isEditor(a)&&!(c!=null&&c.params.scrollBar)){(l=this._context.mainComponent)==null||l.makeDirty();return}this._recalculateSizeBySkeleton(t)}_initCommandListener(){const t=[D.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:r}=n;this.reRender(r)}}))}_recalculateSizeBySkeleton(t){var m;const{mainComponent:e,scene:n,unitId:r,components:s}=this._context,a=e,c=s.get(de.BACKGROUND),l=(m=t.getSkeletonData())==null?void 0:m.pages;if(l==null)return;let d=0,A=0;const h=this._context.unit.getSnapshot().documentStyle.documentFlavor;for(let p=0,f=l.length;p<f;p++){const S=l[p];let{pageWidth:v,pageHeight:E}=S;if(h===i.DocumentFlavor.MODERN){const T=pd(S);v=T.pageWidth,E=T.pageHeight}a.pageLayoutType===M.PageLayoutType.VERTICAL?(A+=E,A+=a.pageMarginTop,p===f-1&&(A+=a.pageMarginTop),d=Math.max(d,v)):a.pageLayoutType===M.PageLayoutType.HORIZONTAL&&(d+=v,p!==f-1&&(d+=a.pageMarginLeft),A=Math.max(A,E))}a.resize(d,A),c.resize(d,A);const g=this._editorService.getEditor(r);(!this._editorService.isEditor(r)||g!=null&&g.params.scrollBar)&&n.resize(d,A)}};exports.DocRenderController=md([Ye(1,i.ICommandService),Ye(2,i.Inject(exports.DocSelectionRenderService)),Ye(3,i.Inject(D.DocSkeletonManagerService)),Ye(4,ae),Ye(5,M.IRenderManagerService),Ye(6,i.IUniverInstanceService)],exports.DocRenderController);function pd(o){let{pageWidth:t,pageHeight:e}=o;const{marginLeft:n,marginRight:r,marginTop:s,marginBottom:a,skeDrawings:c,skeTables:l}=o;t===Number.POSITIVE_INFINITY&&(t=o.width+n+r),e===Number.POSITIVE_INFINITY&&(e=o.height+s+a);for(const d of c.values())t=Math.max(t,d.aLeft+d.width+n+r),e=Math.max(e,d.aTop+d.height+s+a);for(const d of l.values())t=Math.max(t,d.left+d.width+n+r),e=Math.max(e,d.top+d.height+s+a);return{pageWidth:t,pageHeight:e}}const Zo={id:"doc.command.select-all",type:i.CommandType.COMMAND,handler:async o=>{var g;const t=o.get(i.IUniverInstanceService),e=o.get(D.DocSelectionManagerService),n=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),r=e.getDocRanges(),s=(g=r.find(m=>m.isActive))!=null?g:r[0];if(n==null||s==null)return!1;const{segmentId:a}=s,c=n.getUnitId(),l=n.getSelfOrHeaderFooterModel(a).getSnapshot().body;if(l==null)return!1;const{tables:d=[],dataStream:A}=l;if(A===`\r
57
- `)return!0;const u=[];let h=0;for(const m of d){const{startIndex:p,endIndex:f}=m;h!==p&&u.push({startOffset:h,endOffset:p-1,rangeType:i.DOC_RANGE_TYPE.TEXT}),u.push({startOffset:p+3,endOffset:f-5,rangeType:i.DOC_RANGE_TYPE.RECT}),h=f}return h!==l.dataStream.length-2&&u.push({startOffset:h,endOffset:l.dataStream.length-2,rangeType:i.DOC_RANGE_TYPE.TEXT}),e.replaceDocRanges(u,{unitId:c,subUnitId:c},!1),!0}};class Nt extends i.RxDisposable{constructor(e){super();b(this,"_previousActiveRange",null);b(this,"_undoMutationParamsCache",[]);b(this,"_redoMutationParamsCache",[]);this._context=e}clearUndoRedoMutationParamsCache(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[]}getUndoRedoMutationParamsCache(){return{undoCache:this._undoMutationParamsCache,redoCache:this._redoMutationParamsCache}}setUndoRedoMutationParamsCache({undoCache:e=[],redoCache:n=[]}){this._undoMutationParamsCache=e,this._redoMutationParamsCache=n}getActiveRange(){return this._previousActiveRange}setActiveRange(e){this._previousActiveRange=e}pushUndoRedoMutationParams(e,n){this._undoMutationParamsCache.push(e),this._redoMutationParamsCache.push(n)}fetchComposedUndoRedoMutationParams(){if(this._undoMutationParamsCache.length===0||this._previousActiveRange==null||this._redoMutationParamsCache.length===0)return null;const{unitId:e}=this._undoMutationParamsCache[0],n={unitId:e,actions:this._undoMutationParamsCache.reverse().reduce((s,a)=>i.JSONX.compose(s,a.actions),null),textRanges:[]};return{redoMutationParams:{unitId:e,actions:this._redoMutationParamsCache.reduce((s,a)=>i.JSONX.compose(s,a.actions),null),textRanges:[]},undoMutationParams:n,previousActiveRange:this._previousActiveRange}}dispose(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[],this._previousActiveRange=null}}const $o={id:"doc.command.ime-input",type:i.CommandType.COMMAND,handler:async(o,t)=>{var L,W,z;const{unitId:e,newText:n,oldTextLen:r,isCompositionEnd:s,isCompositionStart:a}=t,c=o.get(i.ICommandService),l=o.get(M.IRenderManagerService),d=o.get(i.IUniverInstanceService),A=o.get(Te),u=(L=l.getRenderById(e))==null?void 0:L.with(Nt),h=d.getUnit(e,i.UniverInstanceType.UNIVER_DOC);if(h==null||u==null)return!1;const g=u.getActiveRange();if(g==null)return!1;const{style:m,segmentId:p}=g,f=h.getSelfOrHeaderFooterModel(p).getBody();if(f==null)return!1;Object.assign(g,g);const{startOffset:v,endOffset:E}=g,T=n.length,R=[{startOffset:v+T,endOffset:v+T,collapsed:!0,style:m}],C={id:D.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:R}},x=A.getDefaultStyle(),B=A.getStyleCache(),y=co((W=f.customRanges)!=null?W:[],v+r,i.SHEET_EDITOR_UNITS.includes(e)),P=sn(f,a?E:v+r,x,B,i.SHEET_EDITOR_UNITS.includes(e)),O=lo((z=f.customDecorations)!=null?z:[],v+r),_=new i.TextX,F=i.JSONX.getInstance();if(!g.collapsed&&a){const j=i.BuildTextUtils.selection.delete([g],f,0,null,!1);_.push(...j),C.params.textRanges=[{startOffset:v+T,endOffset:v+T,collapsed:!0}]}else _.push({t:i.TextXActionType.RETAIN,len:v});r>0&&_.push({t:i.TextXActionType.DELETE,len:r}),_.push({t:i.TextXActionType.INSERT,body:{dataStream:n,textRuns:P?[{...P,st:0,ed:n.length}]:[],customRanges:y?[{...y,startIndex:0,endIndex:n.length-1}]:[],customDecorations:O.map(j=>({...j,startIndex:0,endIndex:n.length-1}))},len:n.length});const H=J(h,p);C.params.actions=F.editOp(_.serialize(),H),C.params.noHistory=!s,C.params.isCompositionEnd=s;const U=c.syncExecuteCommand(C.id,C.params);return u.pushUndoRedoMutationParams(U,C.params),!!U}},ss={id:"doc.command.insert-custom-range",type:i.CommandType.COMMAND,handler:(o,t)=>{if(!t)return!1;const e=o.get(i.ICommandService),{unitId:n,rangeId:r=i.generateRandomId(),textRanges:s,properties:a,text:c,wholeEntity:l}=t,d={unitId:n,textRanges:s,body:{dataStream:c,customRanges:[{startIndex:0,endIndex:c.length-1,rangeId:r,rangeType:i.CustomRangeType.CUSTOM,properties:a,wholeEntity:l}]}};return e.syncExecuteCommand(uo.id,d)}},vt={type:i.CommandType.COMMAND,id:"doc.command.set-zoom-ratio",handler:async(o,t)=>{var u,h,g;const e=o.get(i.ICommandService),n=o.get(i.IUndoRedoService),r=o.get(i.IUniverInstanceService);let s=(u=r.getCurrentUniverDocInstance())==null?void 0:u.getUnitId();if(!s)return!1;let a=1;if(t&&(s=(h=t.documentId)!=null?h:s,a=(g=t.zoomRatio)!=null?g:a),!r.getUniverDocInstance(s))return!1;const l={zoomRatio:a,unitId:s},d=Vc(o,l);return e.syncExecuteCommand(Ae.id,l)?(n.pushUndoRedo({unitID:s,undoMutations:[{id:Ae.id,params:d}],redoMutations:[{id:Ae.id,params:l}]}),!0):!1}},er={id:"doc.table.tab-in-table",type:i.CommandType.COMMAND,handler:async(o,t)=>{var m;const{shift:e}=t,n=o.get(D.DocSelectionManagerService),r=n.getDocRanges(),s=o.get(i.ICommandService),c=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(!c)return!1;const l=(m=r.find(p=>p.isActive))!=null?m:r[0],d=c.getUnitId(),A=ce(o,d),u=A==null?void 0:A.getSkeleton(),h=u==null?void 0:u.getViewModel().getSelfOrHeaderFooterViewModel(l==null?void 0:l.segmentId);if(h==null||l==null)return!1;let g=null;if(e?g=gr(h,l,Yn.PREV):g=gr(h,l,Yn.NEXT),g){const{startOffset:p,endOffset:f}=g,S=[{startOffset:p,endOffset:f}];return n.replaceDocRanges(S),!0}return e===!1?await s.executeCommand(Yo.id,{position:cn.BELLOW}):!0}};var fd=Object.getOwnPropertyDescriptor,Sd=(o,t,e,n)=>{for(var r=n>1?void 0:n?fd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Hn=(o,t)=>(e,n)=>t(e,n,o);let $n=class{constructor(o,t,e){b(this,"_docContainer");b(this,"getComponent",o=>{if(this._docContainer=o,!o.getContentRef().current)throw new Error("container is not ready")});b(this,"changeLocale",o=>{this._localeService.setLocale(o)});this._localeService=o,this._injector=t,this._configService=e}getUIConfig(){return{injector:this._injector,config:this._configService.getConfig(Go),changeLocale:this.changeLocale,getComponent:this.getComponent}}getContentRef(){return this._docContainer.getContentRef()}UIDidMount(o){if(this._docContainer)return o(this._docContainer)}getDocContainer(){return this._docContainer}};$n=Sd([Hn(0,i.Inject(i.LocaleService)),Hn(1,i.Inject(i.Injector)),Hn(2,i.IConfigService)],$n);var Id=Object.getOwnPropertyDescriptor,vd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Id(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ed=(o,t)=>(e,n)=>t(e,n,o);let Zt=class extends i.RxDisposable{constructor(t){super();b(this,"_docContainerController");this._injector=t,this._docContainerController=this._injector.createInstance($n)}};Zt=vd([Ed(0,i.Inject(i.Injector))],Zt);var Cd=Object.getOwnPropertyDescriptor,Td=(o,t,e,n)=>{for(var r=n>1?void 0:n?Cd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},kr=(o,t)=>(e,n)=>t(e,n,o);let $t=class extends i.Disposable{constructor(o,t){super(),this._docAutoFormatService=o,this._renderManagerService=t,this._initListTabAutoFormat(),this._initSpaceAutoFormat(),this._initDefaultEnterFormat(),this._initExitListAutoFormat()}_initListTabAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:ze.id,match:o=>{var r;const{selection:t,paragraphs:e,unit:n}=o;if(e.length===1&&t.startOffset===e[0].paragraphStart&&e[0].bullet){const s=(r=n.getBody())==null?void 0:r.paragraphs,a=s==null?void 0:s.filter(c=>{var l;return((l=c.bullet)==null?void 0:l.listId)===e[0].bullet.listId});return(a==null?void 0:a.findIndex(c=>c.startIndex===e[0].startIndex))!==0}else if(e.length>1&&e.some(s=>s.bullet))return!0;return!1},getMutations(o){const t=o.commandParams;return[{id:Kt.id,params:{type:t!=null&&t.shift?It.decrease:It.increase}}]},priority:100})),this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:ze.id,match:o=>{const{selection:t,unit:e}=o,{startNodePosition:n,endNodePosition:r}=t,s=this._renderManagerService.getRenderById(e.getUnitId()),a=s==null?void 0:s.with(D.DocSkeletonManagerService).getSkeleton();return a==null?!1:!!(n&&r&&di(a,n,r)||n&&!r&&n.path.indexOf("cells")>-1)},getMutations(o){const t=o.commandParams;return[{id:er.id,params:{shift:!!(t!=null&&t.shift)}}]},priority:99}))}_initSpaceAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:_t.id,match:o=>{var s;const{selection:t,paragraphs:e,unit:n}=o;if(!t.collapsed||e.length!==1||!t.collapsed)return!1;const r=(s=n.getBody())==null?void 0:s.dataStream.slice(e[0].paragraphStart,t.startOffset-1);return!!(r&&(Object.keys(i.QuickListTypeMap).includes(r)||Object.keys(wn).includes(r)))},getMutations(o){var s;const{paragraphs:t,unit:e,selection:n}=o,r=(s=e.getBody())==null?void 0:s.dataStream.slice(t[0].paragraphStart,n.startOffset-1);if(r&&Object.keys(i.QuickListTypeMap).includes(r)){const a=i.QuickListTypeMap[r];return[{id:Uo.id,params:{listType:a,paragraph:t[0]}}]}if(r&&Object.keys(wn).includes(r)){const a=wn[r];return[{id:Ki.id,params:{value:a}}]}return[]}}))}_initExitListAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:rt.id,match:o=>{const{paragraphs:t}=o;return!!(t.length===1&&t[0].bullet&&t[0].paragraphStart===t[0].paragraphEnd)},getMutations:o=>{const t=o.paragraphs[0].bullet;return t?t.nestingLevel>0?[{id:Kt.id,params:{type:It.decrease}}]:[{id:ct.id,params:{listType:o.paragraphs[0].bullet.listType}}]:[]}}))}_initDefaultEnterFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:rt.id,match:()=>!0,getMutations(){return[{id:In.id}]},priority:-9999}))}};$t=Td([kr(0,i.Inject(exports.DocAutoFormatService)),kr(1,M.IRenderManagerService)],$t);function yd(o){return o.rows[0].cells[0].sections[0].columns[0].lines[0]}function Rd(o){const t=o.rows[o.rows.length-1],e=t.cells[t.cells.length-1];return M.getLastLine(e)}function bd(o,t){const{ed:e}=o,{skeTables:n}=t;let r=null;for(const s of n.values())if(s.st===e+1){r=s;break}return r}function Vr(o){const t=o==null?void 0:o.parent;let e=null,n=null;if(o==null||t==null)return{lineBeforeTable:e,lineAfterTable:n};const{st:r,ed:s}=o,a=t.type===M.DocumentSkeletonPageType.CELL?[t]:t.parent.pages;return M.lineIterator(a,c=>{c.st===s+1?n=c:c.ed===r-1&&(e=c)}),{lineBeforeTable:e,lineAfterTable:n}}function as(o){return o.sections[0].columns[0].lines.length===0}function cs(o){var a,c;const t=o.parent,e=t==null?void 0:t.parent,n=e==null?void 0:e.tableId;if(t==null||e==null)return;const r=t.cells.indexOf(o);let s=e.rows[e.rows.indexOf(t)+1];if(s==null&&n.indexOf("#-#")){const[l,d]=n.split("#-#"),A=(c=(a=e.parent)==null?void 0:a.parent)==null?void 0:c.pages,u=`${l}#-#${Number.parseInt(d)+1}`;if(A)for(const h of A){const{skeTables:g}=h;if(g.has(u)){const m=g.get(u);if(m!=null&&m.rows.length){s=m.rows.find(p=>!p.isRepeatRow);break}}}}if(s!=null){const l=s.cells[r];return as(l)?cs(l):l}}function ls(o){var s,a;const t=o.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;let n=e.rows[e.rows.indexOf(t)-1];const r=t.cells.indexOf(o);if((n==null||n.isRepeatRow)&&e.tableId.indexOf("#-#")){const[c,l]=e.tableId.split("#-#"),d=(a=(s=e.parent)==null?void 0:s.parent)==null?void 0:a.pages,A=`${c}#-#${Number.parseInt(l)-1}`;if(d)for(const u of d){const{skeTables:h}=u;if(h.has(A)){const g=h.get(A);if(g!=null&&g.rows.length){n=g.rows[g.rows.length-1];break}}}}if(n!=null){const c=n.cells[r];return as(c)?ls(c):c}}function xd(o,t){const{st:e}=o,{skeTables:n}=t;let r=null;for(const s of n.values())if(s.ed===e-1){r=s;break}return r}function Od(o){return o.sections[0].columns[0].lines[0]}function Md(o){const t=M.getLastColumn(o);return t.lines[t.lines.length-1]}var Dd=Object.getOwnPropertyDescriptor,Bd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Dd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Lt=(o,t)=>(e,n)=>t(e,n,o);let en=class extends i.Disposable{constructor(t,e,n,r){super();b(this,"_onInputSubscription");this._univerInstanceService=t,this._renderManagerService=e,this._textSelectionManagerService=n,this._commandService=r,this._commandExecutedListener()}dispose(){var t;super.dispose(),(t=this._onInputSubscription)==null||t.unsubscribe()}_commandExecutedListener(){const t=[Ee.id,Ce.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(!t.includes(e.id))return;const n=e.params;switch(e.id){case Ee.id:return this._handleMoveCursor(n.direction);case Ce.id:return this._handleShiftMoveSelection(n.direction);default:throw new Error("Unknown command")}}))}_handleShiftMoveSelection(t){var E,T,R;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),r=this._univerInstanceService.getCurrentUniverDocInstance();if(r==null)return;const s=(E=this._renderManagerService.getRenderById(r.getUnitId()))==null?void 0:E.with(D.DocSkeletonManagerService).getSkeleton(),a=this._getDocObject();if(e==null||s==null||a==null)return;const{startOffset:c,endOffset:l,style:d,collapsed:A,direction:u,segmentId:h,startNodePosition:g,endNodePosition:m,segmentPage:p}=e;if(n.length>1){let C=Number.POSITIVE_INFINITY,x=Number.NEGATIVE_INFINITY;for(const B of n)C=Math.min(C,B.startOffset),x=Math.max(x,B.endOffset);this._textSelectionManagerService.replaceTextRanges([{startOffset:t===i.Direction.LEFT||t===i.Direction.UP?x:C,endOffset:t===i.Direction.LEFT||t===i.Direction.UP?C:x,style:d}],!1);return}const f=A||u===i.RANGE_DIRECTION.FORWARD?c:l;let S=A||u===i.RANGE_DIRECTION.FORWARD?l:c;const v=(T=r.getSelfOrHeaderFooterModel(h).getBody().dataStream.length)!=null?T:Number.POSITIVE_INFINITY;if(t===i.Direction.LEFT||t===i.Direction.RIGHT){const C=s.findNodeByCharIndex(S-1,h,p),x=s.findNodeByCharIndex(S,h,p);S=t===i.Direction.RIGHT?S+x.count:S-((R=C==null?void 0:C.count)!=null?R:0),S=Math.min(v-2,Math.max(0,S)),this._textSelectionManagerService.replaceTextRanges([{startOffset:f,endOffset:S,style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),S)}else{const C=s.findNodeByCharIndex(S,h,p),x=a.document.getOffsetConfig(),B=A?g:u===i.RANGE_DIRECTION.FORWARD?m:g,y=this._getTopOrBottomPosition(s,C,B,t===i.Direction.DOWN,!0);if(y==null){const O=t===i.Direction.UP?0:v-2;if(O===S)return;this._textSelectionManagerService.replaceTextRanges([{startOffset:f,endOffset:O,style:d}],!1);return}const P=new ve(x,s).getRangePointData(y,y).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{startOffset:f,endOffset:P.endOffset,style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),P.endOffset)}}_handleMoveCursor(t){var v,E,T,R;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),r=this._univerInstanceService.getCurrentUniverDocInstance();if(r==null)return!1;const s=(v=this._renderManagerService.getRenderById(r.getUnitId()))==null?void 0:v.with(D.DocSkeletonManagerService).getSkeleton(),a=this._getDocObject();if(e==null||s==null||a==null||n==null)return;const{startOffset:c,endOffset:l,style:d,collapsed:A,segmentId:u,startNodePosition:h,endNodePosition:g,segmentPage:m}=e,p=r.getSelfOrHeaderFooterModel(u).getBody();if(p==null)return;const f=(E=p.dataStream.length)!=null?E:Number.POSITIVE_INFINITY,S=(T=r.getCustomRanges())!=null?T:[];if(t===i.Direction.LEFT||t===i.Direction.RIGHT){let C;if(!e.collapsed||n.length>1){let y=Number.POSITIVE_INFINITY,P=Number.NEGATIVE_INFINITY;for(const O of n)y=Math.min(y,O.startOffset),P=Math.max(P,O.endOffset);C=t===i.Direction.LEFT?y:P}else{const y=s.findNodeByCharIndex(c-1,u,m),P=s.findNodeByCharIndex(c,u,m),O=s.findNodeByCharIndex(c+1,u,m);t===i.Direction.LEFT?C=Math.max(0,c-((R=y==null?void 0:y.count)!=null?R:1)):C=Math.min(f-2,l+P.count+((O==null?void 0:O.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK?1:0))}const x=[i.DataStreamTreeTokenType.TABLE_START,i.DataStreamTreeTokenType.TABLE_END,i.DataStreamTreeTokenType.TABLE_ROW_START,i.DataStreamTreeTokenType.TABLE_ROW_END,i.DataStreamTreeTokenType.TABLE_CELL_START,i.DataStreamTreeTokenType.TABLE_CELL_END,i.DataStreamTreeTokenType.SECTION_BREAK];if(t===i.Direction.LEFT)for(;x.includes(p.dataStream[C]);)C--;else for(;x.includes(p.dataStream[C]);)C++;S.filter(y=>y.wholeEntity&&y.startIndex<C&&y.endIndex>=C).forEach(y=>{t===i.Direction.LEFT?C=Math.min(y.startIndex,C):C=Math.max(y.endIndex+1,C)}),this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,C),endOffset:Math.max(0,C),style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),C)}else{const C=s.findNodeByCharIndex(c,u,m),x=s.findNodeByCharIndex(l,u,m),B=a.document.getOffsetConfig(),y=this._getTopOrBottomPosition(s,t===i.Direction.UP||A?C:x,t===i.Direction.UP||A?h:g,t===i.Direction.DOWN);if(y==null){let O;A?O=t===i.Direction.UP?0:f-2:O=t===i.Direction.UP?c:l,this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,O),endOffset:Math.max(0,O),style:d}],!1);return}const P=new ve(B,s).getRangePointData(y,y).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{...P,style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),P.endOffset)}}_getTopOrBottomPosition(t,e,n,r,s=!1){if(e==null||n==null)return;const a=this._getGlyphLeftOffsetInLine(e),c=this._getNextOrPrevLine(e,r,s);if(c==null)return;const l=this._matchPositionByLeftOffset(t,c,a,n);if(l!=null)return{...l,isBack:!0}}_getGlyphLeftOffsetInLine(t){const e=t.parent;if(e==null)return Number.NEGATIVE_INFINITY;const n=e.left,{left:r}=t;return n+r}_matchPositionByLeftOffset(t,e,n,r){const s={distance:Number.POSITIVE_INFINITY};for(const c of e.divides){const l=c.left;for(const d of c.glyphGroup){if(d.streamType===i.DataStreamTreeTokenType.SECTION_BREAK)continue;const{left:A}=d,u=l+A,h=Math.abs(n-u);h<s.distance&&(s.glyph=d,s.distance=h)}}if(s.glyph==null)return;const{segmentPage:a}=r;return t.findPositionByGlyph(s.glyph,a)}_getNextOrPrevLine(t,e,n=!1){var p,f,S,v,E,T,R,C,x,B,y,P;const r=t.parent,s=r==null?void 0:r.parent,a=s==null?void 0:s.parent,c=a==null?void 0:a.parent,l=c==null?void 0:c.parent;if(r==null||s==null||a==null||c==null||l==null)return;const d=a.lines.indexOf(s);if(d===-1)return;let A;if(l.type===M.DocumentSkeletonPageType.CELL&&n){const O=jr(l,e);if(O)return O}if(e===!0){A=a.lines[d+1];const O=bd(s,l);if(O){const _=yd(O);_&&(A=_)}}else{A=a.lines[d-1];const O=xd(s,l);if(O){const _=Rd(O);_&&(A=_)}}if(A!=null)return A;const u=c.columns.indexOf(a);if(u===-1)return;if(e===!0)A=(p=c.columns[u+1])==null?void 0:p.lines[0];else{const O=(S=(f=c.columns)==null?void 0:f[u-1])==null?void 0:S.lines;A=O==null?void 0:O[O.length-1]}if(A!=null)return A;const h=l.sections.indexOf(c);if(h===-1)return;if(e===!0)A=(E=(v=l.sections[h-1])==null?void 0:v.columns[0])==null?void 0:E.lines[0];else{const O=(R=(T=l.sections)==null?void 0:T[h-1])==null?void 0:R.columns,_=O==null?void 0:O[O.length-1],F=_==null?void 0:_.lines;A=F==null?void 0:F[F.length-1]}if(A!=null)return A;if(l.type===M.DocumentSkeletonPageType.CELL)return jr(l,e);const g=l.parent;if(g==null)return;const m=g.pages.indexOf(l);if(m!==-1){if(e===!0)A=(B=(x=(C=g.pages[m+1])==null?void 0:C.sections[0])==null?void 0:x.columns[0])==null?void 0:B.lines[0];else{const O=(y=g.pages[m-1])==null?void 0:y.sections;if(O==null)return;const _=(P=O[O.length-1])==null?void 0:P.columns,F=_[_.length-1],H=F==null?void 0:F.lines;A=H[H.length-1]}if(A!=null)return A}}_scrollToFocusNodePosition(t,e){var r;const n=(r=this._renderManagerService.getRenderById(t))==null?void 0:r.with(exports.DocBackScrollRenderController);n!=null&&n.scrollToRange({startOffset:e,endOffset:e,collapsed:!0})}_getDocObject(){return ti(this._univerInstanceService,this._renderManagerService)}};en=Bd([Lt(0,i.IUniverInstanceService),Lt(1,M.IRenderManagerService),Lt(2,i.Inject(D.DocSelectionManagerService)),Lt(3,i.ICommandService)],en);function jr(o,t){var n,r;let e=null;if(t===!0){const s=cs(o);if(s)e=Od(s);else{const a=(n=o.parent)==null?void 0:n.parent,{lineAfterTable:c}=Vr(a);c&&(e=c)}}else{const s=ls(o);if(s)e=Md(s);else{const a=(r=o.parent)==null?void 0:r.parent,{lineBeforeTable:c}=Vr(a);c&&(e=c)}}return e}const _d=({handleRowColChange:o,tableCreateParams:t})=>{const e=I.useDependency(i.LocaleService),[n,r]=w.useState(3),[s,a]=w.useState(5);function c(l,d){r(l),a(d),o(l,d)}return w.useEffect(()=>{r(t.rowCount),a(t.colCount)},[t]),Q.jsxs("div",{className:"univer-flex univer-items-center univer-justify-between",children:[Q.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[Q.jsx("span",{children:e.t("toolbar.table.rowCount")}),Q.jsx(te.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:n,onChange:l=>{c(l,s)}})]}),Q.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[Q.jsx("span",{children:e.t("toolbar.table.colCount")}),Q.jsx(te.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:s,onChange:l=>{c(n,l)}})]})]})};var Nd=Object.getOwnPropertyDescriptor,Pd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Nd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Wr=(o,t)=>(e,n)=>t(e,n,o);let tn=class extends i.Disposable{constructor(o,t){super(),this._commandService=o,this._componentManager=t,this._initialize()}_initialize(){this._init(),this._registerCommands(),this._initCustomComponents()}_registerCommands(){[En].forEach(o=>this.disposeWithMe(this._commandService.registerCommand(o)))}_initCustomComponents(){const o=this._componentManager;this.disposeWithMe(o.register(Ji,_d))}_init(){}};tn=Pd([Wr(0,i.ICommandService),Wr(1,i.Inject(I.ComponentManager))],tn);var Ud=Object.getOwnPropertyDescriptor,wd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ud(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Qt=(o,t)=>(e,n)=>t(e,n,o);let eo=class extends i.Disposable{constructor(o,t,e,n,r){super(),this._context=o,this._docSkeletonManagerService=t,this._commandService=e,this._docEventManagerService=n,this._textSelectionManagerService=r,this._initPointerDownObserver(),this._initHoverCursor()}_initPointerDownObserver(){this._docEventManagerService.clickBullets$.subscribe(o=>{const t=this._textSelectionManagerService.getTextRanges();this._commandService.executeCommand(Po.id,{index:o.paragraph.startIndex,segmentId:o.segmentId,textRanges:t})})}_initHoverCursor(){this.disposeWithMe(this._docEventManagerService.hoverBullet$.subscribe(o=>{o?this._context.mainComponent.setCursor(M.CURSOR_TYPE.POINTER):this._context.mainComponent.setCursor(M.CURSOR_TYPE.TEXT)}))}_getTransformCoordForDocumentOffset(o,t,e,n){const{documentTransform:r}=o.getOffsetConfig(),s=t.transformVector2SceneCoord(M.Vector2.FromArray([e,n]));if(s)return r.clone().invert().applyPoint(s)}};eo=wd([Qt(1,i.Inject(D.DocSkeletonManagerService)),Qt(2,i.ICommandService),Qt(3,i.Inject(exports.DocEventManagerService)),Qt(4,i.Inject(D.DocSelectionManagerService))],eo);var Ld=Object.getOwnPropertyDescriptor,Qd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ld(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},gt=(o,t)=>(e,n)=>t(e,n,o);let nn=class extends i.RxDisposable{constructor(o,t,e,n,r,s){super(),this._context=o,this._commandService=t,this._docClipboardService=e,this._docSelectionRenderService=n,this._contextService=r,this._editorService=s,this._init()}_init(){this._initLegacyPasteCommand()}_initLegacyPasteCommand(){var o;(o=this._docSelectionRenderService)==null||o.onPaste$.pipe(N.takeUntil(this.dispose$)).subscribe(t=>{var c,l,d;if(!pn(this._contextService))return;t.event.preventDefault();const e=t.event;let n=(c=e.clipboardData)==null?void 0:c.getData(I.HTML_CLIPBOARD_MIME_TYPE);const r=(l=e.clipboardData)==null?void 0:l.getData(I.PLAIN_TEXT_CLIPBOARD_MIME_TYPE),s=[...((d=e.clipboardData)==null?void 0:d.items)||[]].filter(A=>I.imageMimeTypeSet.has(A.type)).map(A=>A.getAsFile()).filter(A=>!!A);this._editorService.getEditor(this._context.unitId)&&(n!=null?n:"").indexOf("</table>")>-1&&(n=""),this._docClipboardService.legacyPaste({html:n,text:r,files:s})})}};nn=Qd([gt(1,i.ICommandService),gt(2,_e),gt(3,i.Inject(exports.DocSelectionRenderService)),gt(4,i.IContextService),gt(5,ae)],nn);var Fd=Object.getOwnPropertyDescriptor,Hd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Fd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},zr=(o,t)=>(e,n)=>t(e,n,o);const kd=[i.DEFAULT_EMPTY_DOCUMENT_VALUE,i.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY];let to=class extends i.Disposable{constructor(o,t,e){super(),this._context=o,this._contextMenuService=t,this._commandService=e,kd.includes(this._context.unitId)||(this._initPointerDown(),this._initEditChange())}_initPointerDown(){var e,n;const t=((n=(e=this._context)==null?void 0:e.mainComponent)==null?void 0:n.onPointerDown$).subscribeEvent(r=>{r.button===2&&this._contextMenuService.triggerContextMenu(r,I.ContextMenuPosition.MAIN_AREA)});this.disposeWithMe(t)}_initEditChange(){this.disposeWithMe(this._commandService.onCommandExecuted(o=>{o.id===D.RichTextEditingMutation.id&&this._contextMenuService.visible&&this._contextMenuService.hideContextMenu()}))}};to=Hd([zr(1,I.IContextMenuService),zr(2,i.ICommandService)],to);var Vd=Object.getOwnPropertyDescriptor,jd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Vd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},qe=(o,t)=>(e,n)=>t(e,n,o);let on=class extends i.Disposable{constructor(t,e,n,r,s,a,c){super();b(this,"_initialEditors",new Set);this._context=t,this._univerInstanceService=e,this._editorService=n,this._commandService=r,this._docSelectionRenderService=s,this._docSkeletonManagerService=a,this._renderManagerService=c,this._initialize()}_initialize(){this._editorService.getAllEditor().forEach(t=>{const e=t.getEditorId();e===this._context.unitId&&(this._initialEditors.has(e)||(this._initialEditors.add(e),this._resize(e)))}),this._commandExecutedListener(),this._initialBlur(),this._initialFocus()}_resize(t){if(t==null)return;const e=this._editorService.getEditor(t);if((e==null?void 0:e.cancelDefaultResizeListener)===!0)return;const n=this._univerInstanceService.getUniverDocInstance(t);if(!n)return;const r=this._docSkeletonManagerService.getSkeleton();if(e==null||e.render==null||r==null||n==null)return;r.calculate();const{marginTop:s=0,marginBottom:a=0,marginLeft:c=0,marginRight:l=0}=n.getSnapshot().documentStyle,{scene:d,mainComponent:A}=e.render;let{actualHeight:u,actualWidth:h}=r.getActualSize();u+=s+a,h+=c+l;const{width:g,height:m}=e.getBoundingClientRect(),p=Math.max(h,g),f=Math.max(u,m);d.transformByState({width:p,height:f}),A==null||A.resize(p,f)}_initialBlur(){this.disposeWithMe(this._editorService.blur$.subscribe(()=>{this._docSelectionRenderService.blur()})),this.disposeWithMe(this._docSelectionRenderService.onBlur$.subscribe(()=>{const{unitId:t}=this._context,e=this._editorService.getEditor(t),n=this._editorService.getFocusEditor();e==null||e.isSheetEditor()||n&&n.getEditorId()===t||t.includes("range_selector")||t.includes("embedding_formula_editor")||this._editorService.blur()}))}_initialFocus(){const t=["univer-formula-search","univer-formula-help","formula-help-decorator","univer-formula-help-param"];this.disposeWithMe(N.fromEvent(window,"mousedown").subscribe(n=>{const s=n.target.classList[0]||"";i.checkForSubstrings(s,t)&&n.stopPropagation()}));const e=new i.DisposableCollection;this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_SHEET).subscribe(n=>{if(e.dispose(),!n)return;const r=n.getUnitId(),s=this._renderManagerService.getRenderById(r),a=s==null?void 0:s.engine.getCanvas().getCanvasEle();if(a==null)return;const c=N.fromEvent(a,"mousedown").subscribe(l=>{l.stopPropagation()});e.add(c)})),this.disposeWithMe(()=>e.dispose())}_commandExecutedListener(){const t=[D.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:r}=n;if(this._editorService.isSheetEditor(r)||r!==this._context.unitId)return;const s=this._editorService.getEditor(r);s&&!s.params.scrollBar&&this._resize(r)}}))}};on=jd([qe(1,i.IUniverInstanceService),qe(2,ae),qe(3,i.ICommandService),qe(4,i.Inject(exports.DocSelectionRenderService)),qe(5,i.Inject(D.DocSkeletonManagerService)),qe(6,M.IRenderManagerService)],on);var Wd=Object.getOwnPropertyDescriptor,zd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Wd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ft=(o,t)=>(e,n)=>t(e,n,o);let no=class extends i.Disposable{constructor(t,e,n,r,s){super();b(this,"_previousIMEContent","");b(this,"_isCompositionStart",!0);b(this,"_onStartSubscription");b(this,"_onUpdateSubscription");b(this,"_onEndSubscription");this._context=t,this._docSelectionRenderService=e,this._docImeInputManagerService=n,this._docSkeletonManagerService=r,this._commandService=s,this._initialize()}dispose(){var t,e,n;(t=this._onStartSubscription)==null||t.unsubscribe(),(e=this._onUpdateSubscription)==null||e.unsubscribe(),(n=this._onEndSubscription)==null||n.unsubscribe()}_initialize(){this._initialOnCompositionstart(),this._initialOnCompositionUpdate(),this._initialOnCompositionend()}_initialOnCompositionstart(){this._onStartSubscription=this._docSelectionRenderService.onCompositionstart$.subscribe(t=>{if(t==null)return;this._resetIME();const{activeRange:e}=t;e!=null&&this._docImeInputManagerService.setActiveRange(i.Tools.deepClone(e))})}_initialOnCompositionUpdate(){this._onUpdateSubscription=this._docSelectionRenderService.onCompositionupdate$.subscribe(t=>{this._updateContent(t,!0)})}_initialOnCompositionend(){this._onEndSubscription=this._docSelectionRenderService.onCompositionend$.subscribe(t=>{this._updateContent(t,!1)})}async _updateContent(t,e){if(t==null)return;const n=this._context.unitId,r=this._docSkeletonManagerService.getSkeleton(),{event:s,activeRange:a}=t;if(r==null||a==null)return;const l=s.data;l===this._previousIMEContent&&e||(await this._commandService.executeCommand($o.id,{unitId:n,newText:l,oldTextLen:this._previousIMEContent.length,isCompositionStart:this._isCompositionStart,isCompositionEnd:!e}),e?(this._isCompositionStart&&(this._isCompositionStart=!1),this._previousIMEContent=l):this._resetIME())}_resetIME(){this._previousIMEContent="",this._isCompositionStart=!0,this._docImeInputManagerService.clearUndoRedoMutationParamsCache(),this._docImeInputManagerService.setActiveRange(null)}};no=zd([Ft(1,i.Inject(exports.DocSelectionRenderService)),Ft(2,i.Inject(Nt)),Ft(3,i.Inject(D.DocSkeletonManagerService)),Ft(4,i.ICommandService)],no);var Gd=Object.getOwnPropertyDescriptor,Xd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Gd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ht=(o,t)=>(e,n)=>t(e,n,o);let oo=class extends i.Disposable{constructor(t,e,n,r,s){super();b(this,"_onInputSubscription");this._context=t,this._docSelectionRenderService=e,this._docSkeletonManagerService=n,this._commandService=r,this._docMenuStyleService=s,this._init()}dispose(){var t;super.dispose(),(t=this._onInputSubscription)==null||t.unsubscribe()}_init(){this._initialNormalInput()}_initialNormalInput(){this._onInputSubscription=this._docSelectionRenderService.onInput$.subscribe(async t=>{var f,S;if(t==null)return;const{unitId:e}=this._context,{event:n,content:r="",activeRange:s}=t,a=n,c=this._docSkeletonManagerService.getSkeleton();if(a.data==null||c==null||s==null)return;const{segmentId:l}=s,A=this._context.unit.getSelfOrHeaderFooterModel(l).getBody(),u=this._docMenuStyleService.getDefaultStyle(),h=this._docMenuStyleService.getStyleCache(),g=co((f=A==null?void 0:A.customRanges)!=null?f:[],s.endOffset,i.SHEET_EDITOR_UNITS.includes(e)),m=sn(A,s.endOffset,u,h,i.SHEET_EDITOR_UNITS.includes(e)),p=lo((S=A==null?void 0:A.customDecorations)!=null?S:[],s.endOffset);await this._commandService.executeCommand(yo.id,{unitId:e,body:{dataStream:r,textRuns:m?[{...m,st:0,ed:r.length}]:[],customRanges:g?[{...g,startIndex:0,endIndex:r.length-1}]:[],customDecorations:p.map(v=>({...v,startIndex:0,endIndex:r.length-1}))},range:s,segmentId:l}),r===" "&&await this._commandService.executeCommand(_t.id)})}};oo=Xd([Ht(1,i.Inject(exports.DocSelectionRenderService)),Ht(2,i.Inject(D.DocSkeletonManagerService)),Ht(3,i.ICommandService),Ht(4,i.Inject(Te))],oo);class tr extends i.Disposable{constructor(t){super(),this._context=t}calculatePagePosition(){var T,R;const t=Ie(this._context),n=(R=(T=this._context.unit.getSettings())==null?void 0:T.zoomRatio)!=null?R:1,{document:r,scene:s,docBackground:a}=t,c=s==null?void 0:s.getParent(),{width:l,height:d,pageMarginLeft:A,pageMarginTop:u}=r;if(c==null||l===Number.POSITIVE_INFINITY||d===Number.POSITIVE_INFINITY)return;const{width:h,height:g}=c;let m=0,p=u,f=0,S=0,v=Number.POSITIVE_INFINITY;h>(l+A*2)*n?(m=h/2-l*n/2,m/=n,f=(h-A*2)/n,v=0):(m=A,f=l+A*2,v=(f-h/n)/2),g>d?S=(g-u*2)/n:S=d+u*2,s.resize(f,S),h<=1&&(m=-1e4,p=-1e4),r.translate(m,p),a.translate(m,p);const E=s.getViewport(ie.VIEW_MAIN);return v!==Number.POSITIVE_INFINITY&&E!=null&&E.scrollToViewportPos({viewportScrollX:v}),this}}var Kd=Object.getOwnPropertyDescriptor,Yd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Kd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Gr=(o,t)=>(e,n)=>t(e,n,o);let ro=class extends i.Disposable{constructor(o,t,e){super(),this._context=o,this._docPageLayoutService=t,this._textSelectionManagerService=e;const n=this._context.unitId;if(i.isInternalEditorID(n)&&n!==i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)return this;this._initResize()}_initResize(){this.disposeWithMe(i.fromEventSubject(this._context.engine.onTransformChange$).pipe(N.filter(o=>o.type===M.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),N.throttleTime(0,N.animationFrameScheduler)).subscribe(()=>{this._docPageLayoutService.calculatePagePosition(),this._textSelectionManagerService.refreshSelection()}))}};ro=Yd([Gr(1,i.Inject(tr)),Gr(2,i.Inject(D.DocSelectionManagerService))],ro);var qd=Object.getOwnPropertyDescriptor,Jd=(o,t,e,n)=>{for(var r=n>1?void 0:n?qd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Je=(o,t)=>(e,n)=>t(e,n,o);let io=class extends i.Disposable{constructor(t,e,n,r,s,a,c){super();b(this,"_loadedMap",new WeakSet);this._context=t,this._commandService=e,this._editorService=n,this._instanceSrv=r,this._docSelectionRenderService=s,this._docSkeletonManagerService=a,this._docSelectionManagerService=c,this._initialize()}_initialize(){this._init(),this._skeletonListener(),this._commandExecutedListener(),this._refreshListener(),this._syncSelection()}_init(){const{unitId:t}=this._context,e=Ie(this._context);e==null||e.document==null||this._loadedMap.has(e.document)||(this._initialMain(t),this._loadedMap.add(e.document))}_refreshListener(){this.disposeWithMe(this._docSelectionManagerService.refreshSelection$.subscribe(t=>{if(t==null)return;const{unitId:e,docRanges:n,isEditing:r,options:s}=t;e===this._context.unitId&&(this._docSelectionRenderService.removeAllRanges(),this._docSelectionRenderService.addDocRanges(n,r,s))}))}_syncSelection(){this.disposeWithMe(this._docSelectionRenderService.textSelectionInner$.subscribe(t=>{t!=null&&this._docSelectionManagerService.__replaceTextRangesWithNoRefresh(t,{unitId:this._context.unitId,subUnitId:this._context.unitId})}))}_initialMain(t){const e=Ie(this._context),{document:n,scene:r}=e;this.disposeWithMe(n.onPointerEnter$.subscribeEvent(()=>{this._isEditorReadOnly(t)||(n.cursor=M.CURSOR_TYPE.TEXT)})),this.disposeWithMe(n.onPointerLeave$.subscribeEvent(()=>{n.cursor=M.CURSOR_TYPE.DEFAULT,r.resetCursor()})),this.disposeWithMe(n.onPointerDown$.subscribeEvent((s,a)=>{if(this._isEditorReadOnly(t))return;const c=this._instanceSrv.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);(c==null?void 0:c.getUnitId())!==t&&this._instanceSrv.setCurrentUnitForType(t);const l=this._docSkeletonManagerService.getSkeleton(),{offsetX:d,offsetY:A}=s,u=this._getTransformCoordForDocumentOffset(d,A);if(u!=null){const{pageLayoutType:h=M.PageLayoutType.VERTICAL,pageMarginLeft:g,pageMarginTop:m}=n.getOffsetConfig(),{editArea:p}=l.findEditAreaByCoord(u,h,g,m),f=this._docSkeletonManagerService.getViewModel(),S=f.getEditArea();S!==M.DocumentEditArea.BODY&&p!==M.DocumentEditArea.BODY&&p!==S&&f.setEditArea(p)}if(this._docSelectionRenderService.__onPointDown(s),this._editorService.getEditor(t)){this._setEditorFocus(t);const{offsetX:h,offsetY:g}=s;setTimeout(()=>{t!==this._editorService.getFocusId()&&(this._setEditorFocus(t),this._docSelectionRenderService.setCursorManually(h,g))},0)}s.button!==2&&a.stopPropagation()})),this.disposeWithMe(n.onDblclick$.subscribeEvent(s=>{this._isEditorReadOnly(t)||this._docSelectionRenderService.__handleDblClick(s)})),this.disposeWithMe(n.onTripleClick$.subscribeEvent(s=>{this._isEditorReadOnly(t)||this._docSelectionRenderService.__handleTripleClick(s)}))}_getTransformCoordForDocumentOffset(t,e){const n=Ie(this._context),{document:r,scene:s}=n,{documentTransform:a}=r.getOffsetConfig(),c=s.getViewports()[0];if(c==null)return;const l=c.transformVector2SceneCoord(M.Vector2.FromArray([t,e]));return a.clone().invert().applyPoint(l)}_isEditorReadOnly(t){const e=this._editorService.getEditor(t);return e?e.isReadOnly():!1}_setEditorFocus(t){this._editorService.focus(t)}_commandExecutedListener(){const t=[Ae.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{var n;if(t.includes(e.id)){const r=e.params,{unitId:s}=r,a=(n=this._docSelectionManagerService.__getCurrentSelection())==null?void 0:n.unitId;if(s!==a)return;this._docSelectionManagerService.refreshSelection()}}))}_skeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(t=>{if(!t)return;const{unitId:e}=this._context;if(!i.isInternalEditorID(e)){this._docSelectionRenderService.focus();const s=this._context.unit.getSnapshot(),a=xi(s);this._docSelectionManagerService.replaceDocRanges([{startOffset:a,endOffset:a}],{unitId:e,subUnitId:e},!1)}}))}};io=Jd([Je(1,i.ICommandService),Je(2,ae),Je(3,i.IUniverInstanceService),Je(4,i.Inject(exports.DocSelectionRenderService)),Je(5,i.Inject(D.DocSkeletonManagerService)),Je(6,i.Inject(D.DocSelectionManagerService))],io);var Zd=Object.getOwnPropertyDescriptor,$d=(o,t,e,n)=>{for(var r=n>1?void 0:n?Zd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ve=(o,t)=>(e,n)=>t(e,n,o);let so=class extends i.Disposable{constructor(o,t,e,n,r,s,a,c){super(),this._context=o,this._contextService=t,this._docSkeletonManagerService=e,this._univerInstanceService=n,this._commandService=r,this._textSelectionManagerService=s,this._editorService=a,this._docPageLayoutService=c,this._initSkeletonListener(),this._initCommandExecutedListener(),this._initRenderRefresher(),setTimeout(()=>this.updateViewZoom(1,!0),20),i.isInternalEditorID(this._context.unitId)||this._initZoomEventListener()}_initRenderRefresher(){this._docSkeletonManagerService.currentSkeleton$.subscribe(o=>{if(o==null)return;const{unitId:t,scene:e}=this._context;this._editorService.isEditor(t)||this.disposeWithMe(e.onMouseWheel$.subscribeEvent(n=>{if(!n.ctrlKey||!this._contextService.getContextValue(i.FOCUSING_DOC))return;const r=this._univerInstanceService.getCurrentUniverDocInstance();if(!r)return;const{documentFlavor:s}=r.getSnapshot().documentStyle;if(s===i.DocumentFlavor.MODERN)return;const a=Math.abs(n.deltaX);let c=a<40?.2:a<80?.4:.2;c*=n.deltaY>0?-1:1,e.scaleX<1&&(c/=2);const l=r.zoomRatio;let d=+Number.parseFloat(`${l+c}`).toFixed(1);d=d>=4?4:d<=.1?.1:d,this._commandService.executeCommand(vt.id,{zoomRatio:d,unitId:r.getUnitId()}),n.preventDefault()}))})}_initSkeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(o=>{if(o==null)return;const t=this._univerInstanceService.getCurrentUniverDocInstance();if(!t)return;const e=t.zoomRatio||1;this.updateViewZoom(e,!1)}))}_initCommandExecutedListener(){const o=[Ae.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(o.includes(t.id)&&t.params.unitId===this._context.unitId){const n=this._context.unit.zoomRatio||1;this.updateViewZoom(n)}})),this.disposeWithMe(this._commandService.beforeCommandExecuted(t=>{t.id===vn.id&&this._commandService.executeCommand(vt.id,{zoomRatio:1,unitId:this._context.unitId})}))}updateViewZoom(o,t=!0){var n;const e=Ie(this._context);e.scene.scale(o,o),this._editorService.isEditor(this._context.unitId)||this._docPageLayoutService.calculatePagePosition(),t&&!this._editorService.isEditor(this._context.unitId)&&this._textSelectionManagerService.refreshSelection(),(n=e.scene.getTransformer())==null||n.clearSelectedObjects()}_initZoomEventListener(){const o=this._context.scene;this.disposeWithMe(o.onMouseWheel$.subscribeEvent(t=>{if(!t.ctrlKey)return;const e=Math.abs(t.deltaX);let n=e<40?.2:e<80?.4:.2;n*=t.deltaY>0?-1:1,o.scaleX<1&&(n/=2);const r=this._context.unit.zoomRatio;let s=+Number.parseFloat(`${r+n}`).toFixed(1);s=s>=4?4:s<=.1?.1:s,this._commandService.executeCommand(vt.id,{zoomRatio:Math.round(s*10)/10,documentId:this._context.unitId}),t.preventDefault()}))}};so=$d([Ve(1,i.IContextService),Ve(2,i.Inject(D.DocSkeletonManagerService)),Ve(3,i.IUniverInstanceService),Ve(4,i.ICommandService),Ve(5,i.Inject(D.DocSelectionManagerService)),Ve(6,ae),Ve(7,i.Inject(tr))],so);var eA=Object.getOwnPropertyDescriptor,tA=(o,t,e,n)=>{for(var r=n>1?void 0:n?eA(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},ht=(o,t)=>(e,n)=>t(e,n,o);const Xr=300;exports.DocStateChangeManagerService=class extends i.RxDisposable{constructor(e,n,r,s,a){super();b(this,"_docStateChange$",new N.BehaviorSubject(null));b(this,"docStateChange$",this._docStateChange$.asObservable());b(this,"_historyStateCache",new Map);b(this,"_changeStateCache",new Map);b(this,"_historyTimer",null);b(this,"_changeStateCacheTimer",null);this._undoRedoService=e,this._commandService=n,this._univerInstanceService=r,this._docStateEmitService=s,this._renderManagerService=a,this._initialize(),this._listenDocStateChange()}getStateCache(e){var n,r;return{history:(n=this._historyStateCache.get(e))!=null?n:[],collaboration:(r=this._changeStateCache.get(e))!=null?r:[]}}setStateCache(e,n){this._historyStateCache.set(e,n.history),this._changeStateCache.set(e,n.collaboration)}_setChangeState(e){this._cacheChangeState(e,"history"),this._cacheChangeState(e,"collaboration")}_initialize(){this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{if(e.id===i.UndoCommandId||e.id===i.RedoCommandId){const n=this._univerInstanceService.getCurrentUniverDocInstance();if(n==null)return;const r=n.getUnitId();this._pushHistory(r),this._emitChangeState(r)}}))}_listenDocStateChange(){this._docStateEmitService.docStateChangeParams$.pipe(N.takeUntil(this.dispose$)).subscribe(e=>{var l;if(e==null)return;const{isCompositionEnd:n,isSync:r,syncer:s,...a}=e,c=(l=this._renderManagerService.getRenderById(r?s:e.unitId))==null?void 0:l.with(Nt);if(c!=null){if(n){const d=c.fetchComposedUndoRedoMutationParams();if(d==null)throw new Error("historyParams is null in RichTextEditingMutation");const{undoMutationParams:A,redoMutationParams:u,previousActiveRange:h}=d;a.redoState.actions=u.actions,a.undoState.actions=A.actions,a.undoState.textRanges=[h]}this._setChangeState(a)}})}_cacheChangeState(e,n="history"){const{trigger:r,unitId:s,noHistory:a,debounce:c=!1}=e;if(a||r==null||n==="history"&&(r===i.RedoCommandId||r===i.UndoCommandId))return;const l=n==="history"?this._historyStateCache:this._changeStateCache,d=n==="history"?this._pushHistory.bind(this):this._emitChangeState.bind(this);if(l.has(s)){const A=l.get(s);A==null||A.push(e)}else l.set(s,[e]);c?n==="history"?(this._historyTimer&&clearTimeout(this._historyTimer),this._historyTimer=setTimeout(()=>{d(s)},Xr)):(this._changeStateCacheTimer&&clearTimeout(this._changeStateCacheTimer),this._changeStateCacheTimer=setTimeout(()=>{d(s)},Xr)):d(s)}_pushHistory(e){const n=this._undoRedoService,r=this._historyStateCache.get(e);if(!Array.isArray(r)||r.length===0)return;const s=r.length,a=r[0].commandId,c=r[0],l=r[s-1],d={unitId:e,actions:r.reduce((u,h)=>i.JSONX.compose(u,h.redoState.actions),null),textRanges:l.redoState.textRanges},A={unitId:e,actions:r.reverse().reduce((u,h)=>i.JSONX.compose(u,h.undoState.actions),null),textRanges:c.undoState.textRanges};n.pushUndoRedo({unitID:e,undoMutations:[{id:a,params:A}],redoMutations:[{id:a,params:d}]}),r.length=0}_emitChangeState(e){const n=this._changeStateCache.get(e);if(!Array.isArray(n)||n.length===0)return;const r=n.length,{commandId:s,trigger:a,segmentId:c,noHistory:l,debounce:d}=n[0],A=n[0],u=n[r-1],h={unitId:e,actions:n.reduce((p,f)=>i.JSONX.compose(p,f.redoState.actions),null),textRanges:u.redoState.textRanges},g={unitId:e,actions:n.reverse().reduce((p,f)=>i.JSONX.compose(p,f.undoState.actions),null),textRanges:A.undoState.textRanges},m={commandId:s,unitId:e,trigger:a,redoState:h,undoState:g,segmentId:c,noHistory:l,debounce:d};n.length=0,this._docStateChange$.next(m)}};exports.DocStateChangeManagerService=tA([ht(0,i.Inject(i.IUndoRedoService)),ht(1,i.ICommandService),ht(2,i.IUniverInstanceService),ht(3,i.Inject(D.DocStateEmitService)),ht(4,M.IRenderManagerService)],exports.DocStateChangeManagerService);var nA=Object.getOwnPropertyDescriptor,oA=(o,t,e,n)=>{for(var r=n>1?void 0:n?nA(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Kr=(o,t)=>(e,n)=>t(e,n,o);const Yr="univer-doc-main-canvas";exports.DocsRenderService=class extends i.RxDisposable{constructor(t,e){super(),this._instanceSrv=t,this._renderManagerService=e,this._init()}_init(){this._renderManagerService.createRender$.pipe(N.takeUntil(this.dispose$)).subscribe(t=>this._createRenderWithId(t)),this._instanceSrv.getAllUnitsForType(i.UniverInstanceType.UNIVER_DOC).forEach(t=>this._createRenderer(t)),this._instanceSrv.getTypeOfUnitAdded$(i.UniverInstanceType.UNIVER_DOC).pipe(N.takeUntil(this.dispose$)).subscribe(t=>this._createRenderer(t)),this._instanceSrv.getTypeOfUnitDisposed$(i.UniverInstanceType.UNIVER_DOC).pipe(N.takeUntil(this.dispose$)).subscribe(t=>this._disposeRenderer(t))}_createRenderer(t){var r;const e=t.getUnitId(),n=(r=this._instanceSrv.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC))==null?void 0:r.getUnitId();this._renderManagerService.created$.subscribe(s=>{s.unitId===n&&(s.engine.getCanvas().setId(Yr),s.engine.getCanvas().getContext().setId(Yr))}),this._renderManagerService.has(e)||this._createRenderWithId(e)}_createRenderWithId(t){this._renderManagerService.createRender(t)}_disposeRenderer(t){const e=t.getUnitId();this._renderManagerService.removeRender(e)}};exports.DocsRenderService=oA([Kr(0,i.IUniverInstanceService),Kr(1,M.IRenderManagerService)],exports.DocsRenderService);class ds extends i.Disposable{constructor(){super(...arguments);b(this,"_currentSelectorId");b(this,"_selectionChange$",new N.Subject);b(this,"selectionChange$",this._selectionChange$.asObservable());b(this,"_openSelector$",new N.Subject);b(this,"openSelector$",this._openSelector$.asObservable());b(this,"_selectorModalVisible$",new N.BehaviorSubject(!1));b(this,"selectorModalVisible$",this._selectorModalVisible$.asObservable())}get selectorModalVisible(){return this._selectorModalVisible$.getValue()}setCurrentSelectorId(e){this._currentSelectorId=e}getCurrentSelectorId(){return this._currentSelectorId}selectionChange(e){this._currentSelectorId&&this._selectionChange$.next(e)}openSelector(){this._openSelector$.next(null)}triggerModalVisibleChange(e){this._selectorModalVisible$.next(e)}}const As=i.createIdentifier("univer.range-selector.service"),rA={id:rt.id,preconditions:al,binding:I.KeyCode.ENTER},iA={id:Rt.id,preconditions:Z,binding:I.KeyCode.BACKSPACE},sA={id:bo.id,preconditions:Z,binding:I.KeyCode.DELETE},aA={id:Ee.id,binding:I.KeyCode.ARROW_UP,preconditions:Z,staticParameters:{direction:i.Direction.UP}},cA={id:Ee.id,binding:I.KeyCode.ARROW_DOWN,preconditions:Z,staticParameters:{direction:i.Direction.DOWN}},lA={id:Ee.id,binding:I.KeyCode.ARROW_LEFT,preconditions:Z,staticParameters:{direction:i.Direction.LEFT}},dA={id:Ee.id,binding:I.KeyCode.ARROW_RIGHT,preconditions:Z,staticParameters:{direction:i.Direction.RIGHT}},AA={id:Ce.id,binding:I.KeyCode.ARROW_UP|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.UP}},uA={id:Ce.id,binding:I.KeyCode.ARROW_DOWN|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.DOWN}},gA={id:Ce.id,binding:I.KeyCode.ARROW_LEFT|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.LEFT}},hA={id:Ce.id,binding:I.KeyCode.ARROW_RIGHT|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.RIGHT}},mA={id:Zo.id,binding:I.KeyCode.A|I.MetaKeys.CTRL_COMMAND,preconditions:o=>o.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&(o.getContextValue(i.FOCUSING_DOC)||o.getContextValue(i.EDITOR_ACTIVATED))};var pA=Object.defineProperty,fA=Object.getOwnPropertyDescriptor,SA=(o,t,e)=>t in o?pA(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e,IA=(o,t,e,n)=>{for(var r=n>1?void 0:n?fA(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},mt=(o,t)=>(e,n)=>t(e,n,o),vA=(o,t,e)=>SA(o,t+"",e);exports.UniverDocsUIPlugin=class extends i.Plugin{constructor(t=Lr,e,n,r,s,a){super(),this._config=t,this._injector=e,this._renderManagerSrv=n,this._commandService=r,this._logService=s,this._configService=a;const{menu:c,...l}=i.merge({},Lr,this._config);c&&this._configService.setConfig("menu",c,{merge:!0}),this._configService.setConfig(Go,l),this._initDependencies(e),this._initializeShortcut(),this._initCommand()}onReady(){this._initRenderBasics(),this._markDocAsFocused(),i.touchDependencies(this._injector,[[exports.DocStateChangeManagerService],[exports.DocsRenderService]])}onRendered(){this._initUI(),this._initRenderModules(),i.touchDependencies(this._injector,[[$t],[en],[it],[tn],[exports.DocUIController]])}_initCommand(){[Rt,bo,Ne,Pe,Ue,we,ye,Le,me,Me,De,at,Be,Re,In,yo,et,un,Ro,gn,Hi,Ae,ot,nt,ct,Ot,Mt,Dt,pe,Bt,bt,zo,Yo,yn,Rn,ns,bn,xn,Cn,Tn,lt,Io,er,ze,_t,rt,Kt,xt,Ct,Po,Uo,$o,vn,fe,To,We,ii,Ao,si,vt,Zo,qo,Ee,Ce,ci,uo,ss,le,Ki,xo,Do,Bo,Ho,ko,Vo,jo,Wo,Yt,Yi,qi,Lo,Qo,Fo,No].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))}),[Et,fn,Sn].forEach(t=>this.disposeWithMe(this._commandService.registerMultipleCommand(t)))}_initializeShortcut(){[aA,cA,dA,lA,AA,uA,gA,hA,mA,iA,sA,rA,ll].forEach(t=>{this._injector.get(I.IShortcutService).registerShortcut(t)})}_initDependencies(t){i.mergeOverrideWithDependencies([[nn],[on],[exports.DocUIController],[$t],[tn],[en],[Zt],[it],[ae,{useClass:exports.EditorService}],[As,{useClass:ds}],[_e,{useClass:qn}],[exports.DocCanvasPopManagerService],[exports.DocsRenderService],[exports.DocStateChangeManagerService],[exports.DocAutoFormatService],[Te]],this._config.override).forEach(n=>t.add(n))}_markDocAsFocused(){const t=this._injector.get(i.IUniverInstanceService),e=this._injector.get(ae);try{const n=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(!n)return;const r=n.getUnitId();e.isEditor(r)||t.focusUnit(n.getUnitId())}catch(n){this._logService.warn(n)}}_initUI(){this._injector.get(Zt)}_initRenderBasics(){[[D.DocSkeletonManagerService],[exports.DocSelectionRenderService],[D.DocInterceptorService],[tr],[Nt],[exports.DocRenderController],[so]].forEach(t=>{this._renderManagerSrv.registerRenderModule(i.UniverInstanceType.UNIVER_DOC,t)})}_initRenderModules(){[[exports.DocEventManagerService],[qt],[Jt],[exports.DocBackScrollRenderController],[io],[Kn],[ro],[to],[eo],[nn],[oo],[no],[on]].forEach(t=>{this._renderManagerSrv.registerRenderModule(i.UniverInstanceType.UNIVER_DOC,t)})}};vA(exports.UniverDocsUIPlugin,"pluginName",Zr);exports.UniverDocsUIPlugin=IA([i.DependentOn(M.UniverRenderEnginePlugin),mt(1,i.Inject(i.Injector)),mt(2,M.IRenderManagerService),mt(3,i.ICommandService),mt(4,i.ILogService),mt(5,i.IConfigService)],exports.UniverDocsUIPlugin);exports.AfterSpaceCommand=_t;exports.AlignCenterCommand=Mt;exports.AlignJustifyCommand=Bt;exports.AlignLeftCommand=Ot;exports.AlignOperationCommand=pe;exports.AlignRightCommand=Dt;exports.BreakLineCommand=In;exports.BulletListCommand=nt;exports.ChangeListNestingLevelCommand=Kt;exports.ChangeListNestingLevelType=It;exports.ChangeListTypeCommand=xt;exports.CheckListCommand=Ct;exports.CoverContentCommand=si;exports.CreateDocTableCommand=zo;exports.CutContentCommand=We;exports.DOCS_COMPONENT_BACKGROUND_LAYER_INDEX=$r;exports.DOCS_COMPONENT_DEFAULT_Z_INDEX=kn;exports.DOCS_COMPONENT_HEADER_LAYER_INDEX=ei;exports.DOCS_COMPONENT_MAIN_LAYER_INDEX=kt;exports.DOCS_VIEW_KEY=de;exports.DOC_UI_PLUGIN_NAME=Zr;exports.DOC_VERTICAL_PADDING=Zn;exports.DefaultDocContainerConfig=Jr;exports.DefaultToolbarConfig=qr;exports.DeleteCommand=et;exports.DeleteCustomBlockCommand=un;exports.DeleteLeftCommand=Rt;exports.DeleteRightCommand=bo;exports.DocCopyCommand=Et;exports.DocCreateTableOperation=En;exports.DocCutCommand=fn;exports.DocIMEInputManagerService=Nt;exports.DocPasteCommand=Sn;exports.DocSelectAllCommand=Zo;exports.DocTableDeleteColumnsCommand=Tn;exports.DocTableDeleteRowsCommand=Cn;exports.DocTableDeleteTableCommand=lt;exports.DocTableInsertColumnCommand=ns;exports.DocTableInsertColumnLeftCommand=bn;exports.DocTableInsertColumnRightCommand=xn;exports.DocTableInsertRowAboveCommand=yn;exports.DocTableInsertRowBellowCommand=Rn;exports.DocTableInsertRowCommand=Yo;exports.DocTableTabCommand=er;exports.DocsUIMenuSchema=is;exports.Editor=ui;exports.EditorInsertTextCommandId=Fi;exports.EnterCommand=rt;exports.HorizontalLineCommand=bt;exports.IDocClipboardService=_e;exports.IEditorService=ae;exports.IMEInputCommand=$o;exports.IRangeSelectorService=As;exports.InnerPasteCommand=To;exports.InsertCommand=yo;exports.InsertCustomRangeCommand=ss;exports.ListOperationCommand=ct;exports.MergeTwoParagraphCommand=gn;exports.MoveCursorOperation=Ee;exports.MoveSelectionOperation=Ce;exports.NORMAL_TEXT_SELECTION_PLUGIN_NAME=vs;exports.NodePositionConvertToCursor=ve;exports.NodePositionConvertToRectRange=mo;exports.OrderListCommand=ot;exports.PastePluginLark=Vi;exports.PastePluginUniver=Wi;exports.PastePluginWord=zi;exports.QuickListCommand=Uo;exports.RangeSelectorService=ds;exports.RectRange=po;exports.ReplaceContentCommand=ii;exports.ReplaceSelectionCommand=uo;exports.ReplaceSnapshotCommand=Ao;exports.ReplaceTextRunsCommand=ci;exports.ResetInlineFormatTextBackgroundColorCommand=at;exports.RichTextEditor=Gs;exports.SetDocZoomRatioCommand=vt;exports.SetDocZoomRatioOperation=Ae;exports.SetInlineFormatBoldCommand=Ne;exports.SetInlineFormatCommand=Re;exports.SetInlineFormatFontFamilyCommand=Me;exports.SetInlineFormatFontSizeCommand=me;exports.SetInlineFormatItalicCommand=Pe;exports.SetInlineFormatStrikethroughCommand=we;exports.SetInlineFormatSubscriptCommand=ye;exports.SetInlineFormatSuperscriptCommand=Le;exports.SetInlineFormatTextBackgroundColorCommand=Be;exports.SetInlineFormatTextColorCommand=De;exports.SetInlineFormatUnderlineCommand=Ue;exports.SetParagraphNamedStyleCommand=le;exports.TEXT_RANGE_LAYER_INDEX=Gt;exports.TabCommand=ze;exports.TextRange=je;exports.ToggleCheckListCommand=Po;exports.UpdateCommand=Ro;exports.VIEWPORT_KEY=ie;exports.addCustomDecorationBySelectionFactory=Cs;exports.addCustomDecorationFactory=ni;exports.calcDocRangePositions=zt;exports.convertPositionsToRectRanges=jt;exports.deleteCustomDecorationFactory=Ts;exports.docDrawingPositionToTransform=Rs;exports.genTableSource=Co;exports.generateParagraphs=_o;exports.getAnchorBounding=St;exports.getCanvasOffsetByEngine=Ai;exports.getCommandSkeleton=ce;exports.getCursorWhenDelete=hn;exports.getCustomBlockIdsInSelections=Li;exports.getCutActionsFromDocRanges=Qi;exports.getDocObject=ti;exports.getDocObjectById=Es;exports.getEmptyTableCell=ln;exports.getEmptyTableRow=dn;exports.getLineBounding=an;exports.getOneTextSelectionRange=jn;exports.getRichTextEditPath=J;exports.getTableColumn=An;exports.hasParagraphInTable=ys;exports.isInSameTableCell=ho;exports.isValidRectRange=li;exports.neoGetDocObject=Ie;exports.transformToDocDrawingPosition=bs;exports.useKeyboardEvent=oi;exports.useResize=ri;exports.whenDocAndEditorFocused=Z;
57
+ `,{"univer-bg-blend-color-dodge/90":n===E.value}),onClick:()=>r(E.value),children:E.icon})},E.value))}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.indentation")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.left"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:s,onChange:E=>a(E!=null?E:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.right"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:c,onChange:E=>l(E!=null?E:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.firstLine"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:d,onChange:E=>A(E!=null?E:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.hanging"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:u,onChange:E=>h(E!=null?E:0)})]})]}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.spacing")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-betweenuniver-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.before"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:g,onChange:E=>m(E!=null?E:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.after"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:p,onChange:E=>f(E!=null?E:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between item-center",children:[Q.jsx("div",{className:"univer-mt-3 univer-text-xs",children:o.t("doc.paragraphSetting.lineSpace")}),Q.jsxs("div",{className:"univer-mt-4 univer-flex univer-flex-col univer-gap-1.5",style:{width:162},children:[Q.jsx(te.Select,{value:`${C}`,options:[{label:o.t("doc.paragraphSetting.multiSpace"),value:`${i.SpacingRule.AUTO}`},{label:o.t("doc.paragraphSetting.fixedValue"),value:`${i.SpacingRule.AT_LEAST}`}],onChange:E=>y(Number(E))}),Q.jsx(ke,{...b,value:S,onChange:E=>v(E!=null?E:0)})]})]})]})]})}const Wl=(o,t)=>t.length===o.length&&o.some(e=>t.some(n=>n.startOffset===e.startOffset&&n.endOffset===e.endOffset));function zl(){const o=I.useDependency(i.ICommandService),t=I.useDependency(i.LocaleService),e=I.useObservable(t.currentLocale$),[n,r]=w.useState(""),s=w.useMemo(()=>i.debounce(()=>r(i.generateRandomId(4)),300),[]),a=w.useRef([]);return w.useEffect(()=>{const c=o.onCommandExecuted(l=>{if(B.SetTextSelectionsOperation.id===l.id){const d=l.params.ranges;Wl(d,a.current)||r(i.generateRandomId(4)),a.current=d}B.RichTextEditingMutation.id===l.id&&l.params.trigger!==fe.id&&s()});return()=>c.dispose()},[s]),w.useEffect(()=>{r(i.generateRandomId(4))},[e]),w.useEffect(()=>()=>s.cancel(),[s]),Q.jsx(jl,{},n)}var Gl=Object.getOwnPropertyDescriptor,Xl=(o,t,e,n)=>{for(var r=n>1?void 0:n?Gl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Qn=(o,t)=>(e,n)=>t(e,n,o);const Qr="doc_ui_paragraph-setting-panel";let it=class extends i.Disposable{constructor(t,e,n){super();x(this,"_id");this._commandService=t,this._componentManager=e,this._sidebarService=n,this._init()}_init(){this.disposeWithMe(this._componentManager.register(Qr,zl))}openPanel(){const t={header:{title:"doc.slider.paragraphSetting"},id:this._id,children:{label:Qr},width:300};this._sidebarService.open(t)}closePanel(){this._sidebarService.close(this._id)}};it=Xl([Qn(0,i.ICommandService),Qn(1,i.Inject(I.ComponentManager)),Qn(2,i.Inject(I.ISidebarService))],it);const qo={id:"sidebar.operation.doc-paragraph-setting-panel",type:i.CommandType.OPERATION,handler:o=>(o.get(it).openPanel(),!0)},Jo=o=>{const t=o.get(B.DocSelectionManagerService);return new P.Observable(e=>{const n=t.textSelection$.subscribe(()=>{t.getDocRanges().some(a=>a.collapsed===!1||a.rangeType===i.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function Kl(o){if(o.length<2)return!0;const t=o.map(e=>e.tableId);return t.every(e=>e===t[0])}function Fr(o,t,e){var s;const n=t.getRectRanges(),r=t.getActiveTextRange();if(n&&n.length&&Kl(n)&&r==null){o.next(!1);return}if(r&&(n==null||n.length===0)){const{segmentId:a,startOffset:c,endOffset:l}=r,d=e.getCurrentUniverDocInstance(),A=(s=d==null?void 0:d.getSelfOrHeaderFooterModel(a).getBody())==null?void 0:s.tables;if(A&&A.length&&A.some(u=>{const{startIndex:h,endIndex:g}=u;return c>h&&c<g||l>h&&l<g})){o.next(!1);return}}o.next(!0)}const Re=o=>{const t=o.get(B.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new P.Observable(n=>{const r=t.textSelection$.subscribe(()=>{Fr(n,t,e)});return Fr(n,t,e),()=>r.unsubscribe()})},Yl=o=>({id:Et.name,commandId:Et.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy",disabled$:Jo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),ql=o=>({id:qo.id,type:I.MenuItemType.BUTTON,icon:"MenuSingle24",title:"doc.menu.paragraphSetting",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),Jl=o=>({id:fn.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.cut",disabled$:Jo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),Zl=o=>({id:Sn.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.paste",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),$l=o=>({id:Rt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.delete",disabled$:Jo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),os="doc.menu.table-insert";function ed(o){return{id:os,type:I.MenuItemType.SUBITEMS,title:"table.insert",icon:"Insert",hidden$:P.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),Re(o),(t,e)=>t||e)}}function td(o){return{id:yn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowAbove",icon:"InsertRowAbove",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function nd(o){return{id:bn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowBelow",icon:"InsertRowBelow",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function od(o){return{id:Rn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnLeft",icon:"LeftInsertColumn",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function rd(o){return{id:xn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnRight",icon:"RightInsertColumn",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}const rs="doc.menu.table-delete";function id(o){return{id:rs,type:I.MenuItemType.SUBITEMS,title:"table.delete",icon:"Reduce",hidden$:P.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),Re(o),(t,e)=>t||e)}}function sd(o){return{id:Cn.id,type:I.MenuItemType.BUTTON,title:"table.deleteRows",icon:"DeleteRow",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function ad(o){return{id:Tn.id,type:I.MenuItemType.BUTTON,title:"table.deleteColumns",icon:"DeleteColumn",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function cd(o){return{id:lt.id,type:I.MenuItemType.BUTTON,title:"table.deleteTable",icon:"GridSingle",disabled$:Re(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}const is={[I.RibbonStartGroup.FORMAT]:{[Ne.id]:{order:0,menuItemFactory:rc},[Pe.id]:{order:1,menuItemFactory:ic},[Ue.id]:{order:2,menuItemFactory:sc},[we.id]:{order:3,menuItemFactory:ac},[ye.id]:{order:4,menuItemFactory:cc},[Le.id]:{order:5,menuItemFactory:lc},[le.id]:{order:5.5,menuItemFactory:uc},[me.id]:{order:6,menuItemFactory:Ac},[Me.id]:{order:7,menuItemFactory:dc},[De.id]:{order:8,menuItemFactory:gc},[Be.id]:{order:9,menuItemFactory:bc,[at.id]:{order:0,menuItemFactory:yc}}},[I.RibbonStartGroup.LAYOUT]:{[Zi]:{order:1,menuItemFactory:pc,[En.id]:{order:0,menuItemFactory:fc}},[Mt.id]:{order:2,menuItemFactory:Sc},[Dt.id]:{order:3,menuItemFactory:Ic},[Bt.id]:{order:4,menuItemFactory:vc},[_t.id]:{order:5,menuItemFactory:Ec},[xt.id]:{order:6,menuItemFactory:Cc},[ot.id]:{order:7,menuItemFactory:Mr},[nt.id]:{order:8,menuItemFactory:Dr},[Ct.id]:{order:9,menuItemFactory:Br},[So.id]:{order:10,menuItemFactory:hc},[vn.id]:{order:11,menuItemFactory:Tc}},[I.ContextMenuPosition.MAIN_AREA]:{[I.ContextMenuGroup.FORMAT]:{[Et.name]:{order:0,menuItemFactory:Yl},[fn.id]:{order:1,menuItemFactory:Jl},[Sn.id]:{order:2,menuItemFactory:Zl},[Rt.id]:{order:3,menuItemFactory:$l}},[I.ContextMenuGroup.LAYOUT]:{[qo.id]:{order:0,menuItemFactory:ql},[os]:{order:1,menuItemFactory:ed,[yn.id]:{order:1,menuItemFactory:td},[bn.id]:{order:2,menuItemFactory:nd},[Rn.id]:{order:3,menuItemFactory:od},[xn.id]:{order:4,menuItemFactory:rd}},[rs]:{order:2,menuItemFactory:id,[Cn.id]:{order:1,menuItemFactory:sd},[Tn.id]:{order:2,menuItemFactory:ad},[lt.id]:{order:3,menuItemFactory:cd}}}},[I.ContextMenuPosition.PARAGRAPH]:{[I.ContextMenuGroup.QUICK]:{[Ho.id]:{order:0,menuItemFactory:xc},[ko.id]:{order:1,menuItemFactory:Oc},[Vo.id]:{order:2,menuItemFactory:Mc},[jo.id]:{order:3,menuItemFactory:Dc},[Wo.id]:{order:4,menuItemFactory:Bc},[qt.id]:{order:5,menuItemFactory:_c},[ot.id]:{order:6,menuItemFactory:Mr},[nt.id]:{order:7,menuItemFactory:Dr},[Ct.id]:{order:8,menuItemFactory:Br}},[I.ContextMenuGroup.FORMAT]:{[Do.id]:{order:0,menuItemFactory:Nc},[Bo.id]:{order:1,menuItemFactory:Pc},[xo.id]:{order:2,menuItemFactory:Uc}},[I.ContextMenuGroup.LAYOUT]:{[es]:{menuItemFactory:Hc,[Lo.id]:{order:0,menuItemFactory:wc},[Qo.id]:{order:1,menuItemFactory:Lc},[Fo.id]:{order:2,menuItemFactory:Qc},[No.id]:{order:3,menuItemFactory:Fc}}}}};var ld=Object.getOwnPropertyDescriptor,dd=(o,t,e,n)=>{for(var r=n>1?void 0:n?ld(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Se=(o,t)=>(e,n)=>t(e,n,o);exports.DocUIController=class extends i.Disposable{constructor(t,e,n,r,s,a,c,l,d){super(),this._injector=t,this._componentManager=e,this._commandService=n,this._layoutService=r,this._menuManagerService=s,this._uiPartsService=a,this._univerInstanceService=c,this._shortcutService=l,this._configService=d,this._init()}_initCustomComponents(){const t=this._componentManager;this.disposeWithMe(t.register(vo,te.ColorPicker)),this.disposeWithMe(t.register(Mi,I.FontFamily)),this.disposeWithMe(t.register(Di,I.FontFamilyItem)),this.disposeWithMe(t.register(Bi,I.FontSize)),this.disposeWithMe(t.register(Pi,Ea)),this.disposeWithMe(t.register(Ni,Ia)),this.disposeWithMe(t.register("TodoList",Ri)),this.disposeWithMe(t.register("doc.paragraph.menu",ol)),this.disposeWithMe(t.register("CutSingle",mi)),this.disposeWithMe(t.register("DeleteSingle",pi))}_initUiParts(){var e,n,r,s,a;const t=this._configService.getConfig(Go);(n=(e=t==null?void 0:t.layout)==null?void 0:e.docContainerConfig)!=null&&n.footer&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.FOOTER,()=>I.connectInjector(bl,this._injector))),((a=(s=(r=t==null?void 0:t.layout)==null?void 0:r.docContainerConfig)==null?void 0:s.sideMenu)==null||a)&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.CONTENT,()=>I.connectInjector(Ol,this._injector)))}_initMenus(){this._menuManagerService.mergeMenu(is)}_initShortCut(){[ll,dl,Al,ul,gl,hl,fl,Sl,pl,ml,Il,vl,al].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}_init(){this._initCustomComponents(),this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[Oi,So,fo].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(i.UniverInstanceType.UNIVER_DOC,t=>{this._injector.get(M.IRenderManagerService).getRenderById(t).with(exports.DocSelectionRenderService).focus()}))}};exports.DocUIController=dd([Se(0,i.Inject(i.Injector)),Se(1,i.Inject(I.ComponentManager)),Se(2,i.ICommandService),Se(3,I.ILayoutService),Se(4,I.IMenuManagerService),Se(5,I.IUIPartsService),Se(6,i.IUniverInstanceService),Se(7,I.IShortcutService),Se(8,i.IConfigService)],exports.DocUIController);var Ad=Object.getOwnPropertyDescriptor,ud=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ad(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Fn=(o,t)=>(e,n)=>t(e,n,o);const Hr=1.5;exports.DocBackScrollRenderController=class extends i.RxDisposable{constructor(t,e,n,r){super(),this._context=t,this._textSelectionManagerService=e,this._editorService=n,this._docSkeletonManagerService=r,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe(P.takeUntil(this.dispose$)).subscribe(t=>{if(t==null)return;const{isEditing:e,unitId:n}=t;n!==this._context.unitId||!e||this._context.unitId!==i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(t){const e=this._docSkeletonManagerService.getSkeleton();if(!e)return;const{startOffset:n}=t,r=e.findNodePositionByCharIndex(n);r&&this.scrollToNode(r)}scrollToNode(t){var _;const{unitId:e,scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton();if(r==null||s==null)return;const a=r.getOffsetConfig(),{docsLeft:c,docsTop:l}=a,d=new ve(a,s),{contentBoxPointGroup:A}=d.getRangePointData(t,t),{left:u,top:h,height:g}=St(A),m=u+c,p=h+l,f=n.getViewport(ie.VIEW_MAIN),S=this._editorService.getEditor(e);if(f==null)return;const{left:v,top:C,right:y,bottom:b}=f.getBounding().viewBound;let E=0,R=0;const D=S?(_=S.params.backScrollOffset)!=null?_:0:100;p<C?E=p-C-D:p>b-g&&(E=p-b+g+D),m<v?R=m-v:m>y-Hr&&(R=m-y+Hr);const T=f.transViewportScroll2ScrollValue(R,E);f.scrollByBarDeltaValue(T)}_scrollToSelection(){const t=this._textSelectionManagerService.getActiveTextRange();if(t==null)return;const{collapsed:e,startNodePosition:n}=t;e&&this.scrollToNode(n)}};exports.DocBackScrollRenderController=ud([Fn(1,i.Inject(B.DocSelectionManagerService)),Fn(2,ae),Fn(3,i.Inject(B.DocSkeletonManagerService))],exports.DocBackScrollRenderController);var gd=Object.getOwnPropertyDescriptor,hd=(o,t,e,n)=>{for(var r=n>1?void 0:n?gd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ye=(o,t)=>(e,n)=>t(e,n,o);exports.DocRenderController=class extends i.RxDisposable{constructor(t,e,n,r,s,a,c){super(),this._context=t,this._commandService=e,this._docSelectionRenderService=n,this._docSkeletonManagerService=r,this._editorService=s,this._renderManagerService=a,this._univerInstanceService=c,this._addNewRender(),this._initRenderRefresh(),this._initCommandListener()}reRender(t){var a,c;const e=(a=this._renderManagerService.getRenderById(t))==null?void 0:a.with(B.DocSkeletonManagerService),n=e==null?void 0:e.getSkeleton();if(!n||!!n.getViewModel().getDataModel().getSnapshot().disabled)return;n.calculate();const s=this._editorService.getEditor(t);if(this._editorService.isEditor(t)&&!(s!=null&&s.params.scrollBar)){(c=this._context.mainComponent)==null||c.makeDirty();return}this._recalculateSizeBySkeleton(n)}_addNewRender(){const{scene:t,engine:e}=this._context,n=new M.Viewport(ie.VIEW_MAIN,t,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});t.attachControl(),t.onMouseWheel$.subscribeEvent((s,a)=>{const c=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if((c==null?void 0:c.getUnitId())!==this._context.unitId)return;const l=s;if(l.ctrlKey){const d=Math.abs(l.deltaX);let A=d<40?.2:d<80?.4:.2;A*=l.deltaY>0?-1:1,t.scaleX<1&&(A/=2),t.scaleX+A>4?t.scale(4,4):t.scaleX+A<.1?t.scale(.1,.1):l.preventDefault()}else n.onMouseWheel(l,a)}),new M.ScrollBar(n),t.addLayer(new M.Layer(t,[],Vt),new M.Layer(t,[],ei)),this._addComponent();const r=()=>t.render();this.disposeWithMe(this._context.activated$.subscribe(s=>{s?e.runRenderLoop(r):e.stopRenderLoop(r)})),this._docSelectionRenderService.__attachScrollEvent()}_addComponent(){const{scene:t,unit:e,components:n}=this._context,a={pageMarginLeft:20,pageMarginTop:20},c=new M.Documents(de.MAIN,void 0,a);c.zIndex=kn;const l=new M.DocBackground(de.BACKGROUND,void 0,a);l.zIndex=kn,this._context.mainComponent=c,n.set(de.MAIN,c),n.set(de.BACKGROUND,l),t.addObjects([c],Vt),t.addObjects([l],$r),this._editorService.getEditor(e.getUnitId())==null&&t.enableLayerCache(Vt)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe(P.takeUntil(this.dispose$)).subscribe(t=>{this._create(t)})}_create(t){var l;if(!t)return;const{mainComponent:e,components:n}=this._context,r=e,s=n.get(de.BACKGROUND);r.changeSkeleton(t),s.changeSkeleton(t);const{unitId:a}=this._context,c=this._editorService.getEditor(a);if(this._editorService.isEditor(a)&&!(c!=null&&c.params.scrollBar)){(l=this._context.mainComponent)==null||l.makeDirty();return}this._recalculateSizeBySkeleton(t)}_initCommandListener(){const t=[B.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:r}=n;this.reRender(r)}}))}_recalculateSizeBySkeleton(t){var m;const{mainComponent:e,scene:n,unitId:r,components:s}=this._context,a=e,c=s.get(de.BACKGROUND),l=(m=t.getSkeletonData())==null?void 0:m.pages;if(l==null)return;let d=0,A=0;const h=this._context.unit.getSnapshot().documentStyle.documentFlavor;for(let p=0,f=l.length;p<f;p++){const S=l[p];let{pageWidth:v,pageHeight:C}=S;if(h===i.DocumentFlavor.MODERN){const y=md(S);v=y.pageWidth,C=y.pageHeight}a.pageLayoutType===M.PageLayoutType.VERTICAL?(A+=C,A+=a.pageMarginTop,p===f-1&&(A+=a.pageMarginTop),d=Math.max(d,v)):a.pageLayoutType===M.PageLayoutType.HORIZONTAL&&(d+=v,p!==f-1&&(d+=a.pageMarginLeft),A=Math.max(A,C))}a.resize(d,A),c.resize(d,A);const g=this._editorService.getEditor(r);(!this._editorService.isEditor(r)||g!=null&&g.params.scrollBar)&&n.resize(d,A)}};exports.DocRenderController=hd([Ye(1,i.ICommandService),Ye(2,i.Inject(exports.DocSelectionRenderService)),Ye(3,i.Inject(B.DocSkeletonManagerService)),Ye(4,ae),Ye(5,M.IRenderManagerService),Ye(6,i.IUniverInstanceService)],exports.DocRenderController);function md(o){let{pageWidth:t,pageHeight:e}=o;const{marginLeft:n,marginRight:r,marginTop:s,marginBottom:a,skeDrawings:c,skeTables:l}=o;t===Number.POSITIVE_INFINITY&&(t=o.width+n+r),e===Number.POSITIVE_INFINITY&&(e=o.height+s+a);for(const d of c.values())t=Math.max(t,d.aLeft+d.width+n+r),e=Math.max(e,d.aTop+d.height+s+a);for(const d of l.values())t=Math.max(t,d.left+d.width+n+r),e=Math.max(e,d.top+d.height+s+a);return{pageWidth:t,pageHeight:e}}const Zo={id:"doc.command.select-all",type:i.CommandType.COMMAND,handler:async o=>{var g;const t=o.get(i.IUniverInstanceService),e=o.get(B.DocSelectionManagerService),n=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),r=e.getDocRanges(),s=(g=r.find(m=>m.isActive))!=null?g:r[0];if(n==null||s==null)return!1;const{segmentId:a}=s,c=n.getUnitId(),l=n.getSelfOrHeaderFooterModel(a).getSnapshot().body;if(l==null)return!1;const{tables:d=[],dataStream:A}=l;if(A===`\r
58
+ `)return!0;const u=[];let h=0;for(const m of d){const{startIndex:p,endIndex:f}=m;h!==p&&u.push({startOffset:h,endOffset:p-1,rangeType:i.DOC_RANGE_TYPE.TEXT}),u.push({startOffset:p+3,endOffset:f-5,rangeType:i.DOC_RANGE_TYPE.RECT}),h=f}return h!==l.dataStream.length-2&&u.push({startOffset:h,endOffset:l.dataStream.length-2,rangeType:i.DOC_RANGE_TYPE.TEXT}),e.replaceDocRanges(u,{unitId:c,subUnitId:c},!1),!0}};class Pt extends i.RxDisposable{constructor(e){super();x(this,"_previousActiveRange",null);x(this,"_undoMutationParamsCache",[]);x(this,"_redoMutationParamsCache",[]);this._context=e}clearUndoRedoMutationParamsCache(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[]}getUndoRedoMutationParamsCache(){return{undoCache:this._undoMutationParamsCache,redoCache:this._redoMutationParamsCache}}setUndoRedoMutationParamsCache({undoCache:e=[],redoCache:n=[]}){this._undoMutationParamsCache=e,this._redoMutationParamsCache=n}getActiveRange(){return this._previousActiveRange}setActiveRange(e){this._previousActiveRange=e}pushUndoRedoMutationParams(e,n){this._undoMutationParamsCache.push(e),this._redoMutationParamsCache.push(n)}fetchComposedUndoRedoMutationParams(){if(this._undoMutationParamsCache.length===0||this._previousActiveRange==null||this._redoMutationParamsCache.length===0)return null;const{unitId:e}=this._undoMutationParamsCache[0],n={unitId:e,actions:this._undoMutationParamsCache.reverse().reduce((s,a)=>i.JSONX.compose(s,a.actions),null),textRanges:[]};return{redoMutationParams:{unitId:e,actions:this._redoMutationParamsCache.reduce((s,a)=>i.JSONX.compose(s,a.actions),null),textRanges:[]},undoMutationParams:n,previousActiveRange:this._previousActiveRange}}dispose(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[],this._previousActiveRange=null}}const $o={id:"doc.command.ime-input",type:i.CommandType.COMMAND,handler:async(o,t)=>{var L,W,z;const{unitId:e,newText:n,oldTextLen:r,isCompositionEnd:s,isCompositionStart:a}=t,c=o.get(i.ICommandService),l=o.get(M.IRenderManagerService),d=o.get(i.IUniverInstanceService),A=o.get(Te),u=(L=l.getRenderById(e))==null?void 0:L.with(Pt),h=d.getUnit(e,i.UniverInstanceType.UNIVER_DOC);if(h==null||u==null)return!1;const g=u.getActiveRange();if(g==null)return!1;const{style:m,segmentId:p}=g,f=h.getSelfOrHeaderFooterModel(p).getBody();if(f==null)return!1;Object.assign(g,g);const{startOffset:v,endOffset:C}=g,y=n.length,b=[{startOffset:v+y,endOffset:v+y,collapsed:!0,style:m}],E={id:B.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:b}},R=A.getDefaultStyle(),D=A.getStyleCache(),T=co((W=f.customRanges)!=null?W:[],v+r,i.SHEET_EDITOR_UNITS.includes(e)),_=an(f,a?C:v+r,R,D,i.SHEET_EDITOR_UNITS.includes(e)),O=lo((z=f.customDecorations)!=null?z:[],v+r),N=new i.TextX,F=i.JSONX.getInstance();if(!g.collapsed&&a){const j=i.BuildTextUtils.selection.delete([g],f,0,null,!1);N.push(...j),E.params.textRanges=[{startOffset:v+y,endOffset:v+y,collapsed:!0}]}else N.push({t:i.TextXActionType.RETAIN,len:v});r>0&&N.push({t:i.TextXActionType.DELETE,len:r}),N.push({t:i.TextXActionType.INSERT,body:{dataStream:n,textRuns:_?[{..._,st:0,ed:n.length}]:[],customRanges:T?[{...T,startIndex:0,endIndex:n.length-1}]:[],customDecorations:O.map(j=>({...j,startIndex:0,endIndex:n.length-1}))},len:n.length});const H=J(h,p);E.params.actions=F.editOp(N.serialize(),H),E.params.noHistory=!s,E.params.isCompositionEnd=s;const U=c.syncExecuteCommand(E.id,E.params);return u.pushUndoRedoMutationParams(U,E.params),!!U}},ss={id:"doc.command.insert-custom-range",type:i.CommandType.COMMAND,handler:(o,t)=>{if(!t)return!1;const e=o.get(i.ICommandService),{unitId:n,rangeId:r=i.generateRandomId(),textRanges:s,properties:a,text:c,wholeEntity:l}=t,d={unitId:n,textRanges:s,body:{dataStream:c,customRanges:[{startIndex:0,endIndex:c.length-1,rangeId:r,rangeType:i.CustomRangeType.CUSTOM,properties:a,wholeEntity:l}]}};return e.syncExecuteCommand(uo.id,d)}},vt={type:i.CommandType.COMMAND,id:"doc.command.set-zoom-ratio",handler:async(o,t)=>{var u,h,g;const e=o.get(i.ICommandService),n=o.get(i.IUndoRedoService),r=o.get(i.IUniverInstanceService);let s=(u=r.getCurrentUniverDocInstance())==null?void 0:u.getUnitId();if(!s)return!1;let a=1;if(t&&(s=(h=t.documentId)!=null?h:s,a=(g=t.zoomRatio)!=null?g:a),!r.getUniverDocInstance(s))return!1;const l={zoomRatio:a,unitId:s},d=kc(o,l);return e.syncExecuteCommand(Ae.id,l)?(n.pushUndoRedo({unitID:s,undoMutations:[{id:Ae.id,params:d}],redoMutations:[{id:Ae.id,params:l}]}),!0):!1}},er={id:"doc.table.tab-in-table",type:i.CommandType.COMMAND,handler:async(o,t)=>{var m;const{shift:e}=t,n=o.get(B.DocSelectionManagerService),r=n.getDocRanges(),s=o.get(i.ICommandService),c=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(!c)return!1;const l=(m=r.find(p=>p.isActive))!=null?m:r[0],d=c.getUnitId(),A=ce(o,d),u=A==null?void 0:A.getSkeleton(),h=u==null?void 0:u.getViewModel().getSelfOrHeaderFooterViewModel(l==null?void 0:l.segmentId);if(h==null||l==null)return!1;let g=null;if(e?g=gr(h,l,Yn.PREV):g=gr(h,l,Yn.NEXT),g){const{startOffset:p,endOffset:f}=g,S=[{startOffset:p,endOffset:f}];return n.replaceDocRanges(S),!0}return e===!1?await s.executeCommand(Yo.id,{position:ln.BELLOW}):!0}};var pd=Object.getOwnPropertyDescriptor,fd=(o,t,e,n)=>{for(var r=n>1?void 0:n?pd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Hn=(o,t)=>(e,n)=>t(e,n,o);let $n=class{constructor(o,t,e){x(this,"_docContainer");x(this,"getComponent",o=>{if(this._docContainer=o,!o.getContentRef().current)throw new Error("container is not ready")});x(this,"changeLocale",o=>{this._localeService.setLocale(o)});this._localeService=o,this._injector=t,this._configService=e}getUIConfig(){return{injector:this._injector,config:this._configService.getConfig(Go),changeLocale:this.changeLocale,getComponent:this.getComponent}}getContentRef(){return this._docContainer.getContentRef()}UIDidMount(o){if(this._docContainer)return o(this._docContainer)}getDocContainer(){return this._docContainer}};$n=fd([Hn(0,i.Inject(i.LocaleService)),Hn(1,i.Inject(i.Injector)),Hn(2,i.IConfigService)],$n);var Sd=Object.getOwnPropertyDescriptor,Id=(o,t,e,n)=>{for(var r=n>1?void 0:n?Sd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},vd=(o,t)=>(e,n)=>t(e,n,o);let $t=class extends i.RxDisposable{constructor(t){super();x(this,"_docContainerController");this._injector=t,this._docContainerController=this._injector.createInstance($n)}};$t=Id([vd(0,i.Inject(i.Injector))],$t);var Ed=Object.getOwnPropertyDescriptor,Cd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Ed(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},kr=(o,t)=>(e,n)=>t(e,n,o);let en=class extends i.Disposable{constructor(o,t){super(),this._docAutoFormatService=o,this._renderManagerService=t,this._initListTabAutoFormat(),this._initSpaceAutoFormat(),this._initDefaultEnterFormat(),this._initExitListAutoFormat()}_initListTabAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:ze.id,match:o=>{var r;const{selection:t,paragraphs:e,unit:n}=o;if(e.length===1&&t.startOffset===e[0].paragraphStart&&e[0].bullet){const s=(r=n.getBody())==null?void 0:r.paragraphs,a=s==null?void 0:s.filter(c=>{var l;return((l=c.bullet)==null?void 0:l.listId)===e[0].bullet.listId});return(a==null?void 0:a.findIndex(c=>c.startIndex===e[0].startIndex))!==0}else if(e.length>1&&e.some(s=>s.bullet))return!0;return!1},getMutations(o){const t=o.commandParams;return[{id:Yt.id,params:{type:t!=null&&t.shift?It.decrease:It.increase}}]},priority:100})),this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:ze.id,match:o=>{const{selection:t,unit:e}=o,{startNodePosition:n,endNodePosition:r}=t,s=this._renderManagerService.getRenderById(e.getUnitId()),a=s==null?void 0:s.with(B.DocSkeletonManagerService).getSkeleton();return a==null?!1:!!(n&&r&&di(a,n,r)||n&&!r&&n.path.indexOf("cells")>-1)},getMutations(o){const t=o.commandParams;return[{id:er.id,params:{shift:!!(t!=null&&t.shift)}}]},priority:99}))}_initSpaceAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Nt.id,match:o=>{var s;const{selection:t,paragraphs:e,unit:n}=o;if(!t.collapsed||e.length!==1||!t.collapsed)return!1;const r=(s=n.getBody())==null?void 0:s.dataStream.slice(e[0].paragraphStart,t.startOffset-1);return!!(r&&(Object.keys(i.QuickListTypeMap).includes(r)||Object.keys(wn).includes(r)))},getMutations(o){var s;const{paragraphs:t,unit:e,selection:n}=o,r=(s=e.getBody())==null?void 0:s.dataStream.slice(t[0].paragraphStart,n.startOffset-1);if(r&&Object.keys(i.QuickListTypeMap).includes(r)){const a=i.QuickListTypeMap[r];return[{id:Uo.id,params:{listType:a,paragraph:t[0]}}]}if(r&&Object.keys(wn).includes(r)){const a=wn[r];return[{id:Ki.id,params:{value:a}}]}return[]}}))}_initExitListAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:rt.id,match:o=>{const{paragraphs:t}=o;return!!(t.length===1&&t[0].bullet&&t[0].paragraphStart===t[0].paragraphEnd)},getMutations:o=>{const t=o.paragraphs[0].bullet;return t?t.nestingLevel>0?[{id:Yt.id,params:{type:It.decrease}}]:[{id:ct.id,params:{listType:o.paragraphs[0].bullet.listType}}]:[]}}))}_initDefaultEnterFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:rt.id,match:()=>!0,getMutations(){return[{id:In.id}]},priority:-9999}))}};en=Cd([kr(0,i.Inject(exports.DocAutoFormatService)),kr(1,M.IRenderManagerService)],en);function Td(o){return o.rows[0].cells[0].sections[0].columns[0].lines[0]}function yd(o){const t=o.rows[o.rows.length-1],e=t.cells[t.cells.length-1];return M.getLastLine(e)}function bd(o,t){const{ed:e}=o,{skeTables:n}=t;let r=null;for(const s of n.values())if(s.st===e+1){r=s;break}return r}function Vr(o){const t=o==null?void 0:o.parent;let e=null,n=null;if(o==null||t==null)return{lineBeforeTable:e,lineAfterTable:n};const{st:r,ed:s}=o,a=t.type===M.DocumentSkeletonPageType.CELL?[t]:t.parent.pages;return M.lineIterator(a,c=>{c.st===s+1?n=c:c.ed===r-1&&(e=c)}),{lineBeforeTable:e,lineAfterTable:n}}function as(o){return o.sections[0].columns[0].lines.length===0}function cs(o){var a,c;const t=o.parent,e=t==null?void 0:t.parent,n=e==null?void 0:e.tableId;if(t==null||e==null)return;const r=t.cells.indexOf(o);let s=e.rows[e.rows.indexOf(t)+1];if(s==null&&n.indexOf("#-#")){const[l,d]=n.split("#-#"),A=(c=(a=e.parent)==null?void 0:a.parent)==null?void 0:c.pages,u=`${l}#-#${Number.parseInt(d)+1}`;if(A)for(const h of A){const{skeTables:g}=h;if(g.has(u)){const m=g.get(u);if(m!=null&&m.rows.length){s=m.rows.find(p=>!p.isRepeatRow);break}}}}if(s!=null){const l=s.cells[r];return as(l)?cs(l):l}}function ls(o){var s,a;const t=o.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;let n=e.rows[e.rows.indexOf(t)-1];const r=t.cells.indexOf(o);if((n==null||n.isRepeatRow)&&e.tableId.indexOf("#-#")){const[c,l]=e.tableId.split("#-#"),d=(a=(s=e.parent)==null?void 0:s.parent)==null?void 0:a.pages,A=`${c}#-#${Number.parseInt(l)-1}`;if(d)for(const u of d){const{skeTables:h}=u;if(h.has(A)){const g=h.get(A);if(g!=null&&g.rows.length){n=g.rows[g.rows.length-1];break}}}}if(n!=null){const c=n.cells[r];return as(c)?ls(c):c}}function Rd(o,t){const{st:e}=o,{skeTables:n}=t;let r=null;for(const s of n.values())if(s.ed===e-1){r=s;break}return r}function xd(o){return o.sections[0].columns[0].lines[0]}function Od(o){const t=M.getLastColumn(o);return t.lines[t.lines.length-1]}var Md=Object.getOwnPropertyDescriptor,Dd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Md(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Qt=(o,t)=>(e,n)=>t(e,n,o);let tn=class extends i.Disposable{constructor(t,e,n,r){super();x(this,"_onInputSubscription");this._univerInstanceService=t,this._renderManagerService=e,this._textSelectionManagerService=n,this._commandService=r,this._commandExecutedListener()}dispose(){var t;super.dispose(),(t=this._onInputSubscription)==null||t.unsubscribe()}_commandExecutedListener(){const t=[Ee.id,Ce.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(!t.includes(e.id))return;const n=e.params;switch(e.id){case Ee.id:return this._handleMoveCursor(n.direction);case Ce.id:return this._handleShiftMoveSelection(n.direction);default:throw new Error("Unknown command")}}))}_handleShiftMoveSelection(t){var C,y,b;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),r=this._univerInstanceService.getCurrentUniverDocInstance();if(r==null)return;const s=(C=this._renderManagerService.getRenderById(r.getUnitId()))==null?void 0:C.with(B.DocSkeletonManagerService).getSkeleton(),a=this._getDocObject();if(e==null||s==null||a==null)return;const{startOffset:c,endOffset:l,style:d,collapsed:A,direction:u,segmentId:h,startNodePosition:g,endNodePosition:m,segmentPage:p}=e;if(n.length>1){let E=Number.POSITIVE_INFINITY,R=Number.NEGATIVE_INFINITY;for(const D of n)E=Math.min(E,D.startOffset),R=Math.max(R,D.endOffset);this._textSelectionManagerService.replaceTextRanges([{startOffset:t===i.Direction.LEFT||t===i.Direction.UP?R:E,endOffset:t===i.Direction.LEFT||t===i.Direction.UP?E:R,style:d}],!1);return}const f=A||u===i.RANGE_DIRECTION.FORWARD?c:l;let S=A||u===i.RANGE_DIRECTION.FORWARD?l:c;const v=(y=r.getSelfOrHeaderFooterModel(h).getBody().dataStream.length)!=null?y:Number.POSITIVE_INFINITY;if(t===i.Direction.LEFT||t===i.Direction.RIGHT){const E=s.findNodeByCharIndex(S-1,h,p),R=s.findNodeByCharIndex(S,h,p);S=t===i.Direction.RIGHT?S+R.count:S-((b=E==null?void 0:E.count)!=null?b:0),S=Math.min(v-2,Math.max(0,S)),this._textSelectionManagerService.replaceTextRanges([{startOffset:f,endOffset:S,style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),S)}else{const E=s.findNodeByCharIndex(S,h,p),R=a.document.getOffsetConfig(),D=A?g:u===i.RANGE_DIRECTION.FORWARD?m:g,T=this._getTopOrBottomPosition(s,E,D,t===i.Direction.DOWN,!0);if(T==null){const O=t===i.Direction.UP?0:v-2;if(O===S)return;this._textSelectionManagerService.replaceTextRanges([{startOffset:f,endOffset:O,style:d}],!1);return}const _=new ve(R,s).getRangePointData(T,T).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{startOffset:f,endOffset:_.endOffset,style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),_.endOffset)}}_handleMoveCursor(t){var v,C,y,b;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),r=this._univerInstanceService.getCurrentUniverDocInstance();if(r==null)return!1;const s=(v=this._renderManagerService.getRenderById(r.getUnitId()))==null?void 0:v.with(B.DocSkeletonManagerService).getSkeleton(),a=this._getDocObject();if(e==null||s==null||a==null||n==null)return;const{startOffset:c,endOffset:l,style:d,collapsed:A,segmentId:u,startNodePosition:h,endNodePosition:g,segmentPage:m}=e,p=r.getSelfOrHeaderFooterModel(u).getBody();if(p==null)return;const f=(C=p.dataStream.length)!=null?C:Number.POSITIVE_INFINITY,S=(y=r.getCustomRanges())!=null?y:[];if(t===i.Direction.LEFT||t===i.Direction.RIGHT){let E;if(!e.collapsed||n.length>1){let T=Number.POSITIVE_INFINITY,_=Number.NEGATIVE_INFINITY;for(const O of n)T=Math.min(T,O.startOffset),_=Math.max(_,O.endOffset);E=t===i.Direction.LEFT?T:_}else{const T=s.findNodeByCharIndex(c-1,u,m),_=s.findNodeByCharIndex(c,u,m),O=s.findNodeByCharIndex(c+1,u,m);t===i.Direction.LEFT?E=Math.max(0,c-((b=T==null?void 0:T.count)!=null?b:1)):E=Math.min(f-2,l+_.count+((O==null?void 0:O.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK?1:0))}const R=[i.DataStreamTreeTokenType.TABLE_START,i.DataStreamTreeTokenType.TABLE_END,i.DataStreamTreeTokenType.TABLE_ROW_START,i.DataStreamTreeTokenType.TABLE_ROW_END,i.DataStreamTreeTokenType.TABLE_CELL_START,i.DataStreamTreeTokenType.TABLE_CELL_END,i.DataStreamTreeTokenType.SECTION_BREAK];if(t===i.Direction.LEFT)for(;R.includes(p.dataStream[E]);)E--;else for(;R.includes(p.dataStream[E]);)E++;S.filter(T=>T.wholeEntity&&T.startIndex<E&&T.endIndex>=E).forEach(T=>{t===i.Direction.LEFT?E=Math.min(T.startIndex,E):E=Math.max(T.endIndex+1,E)}),this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,E),endOffset:Math.max(0,E),style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),E)}else{const E=s.findNodeByCharIndex(c,u,m),R=s.findNodeByCharIndex(l,u,m),D=a.document.getOffsetConfig(),T=this._getTopOrBottomPosition(s,t===i.Direction.UP||A?E:R,t===i.Direction.UP||A?h:g,t===i.Direction.DOWN);if(T==null){let O;A?O=t===i.Direction.UP?0:f-2:O=t===i.Direction.UP?c:l,this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,O),endOffset:Math.max(0,O),style:d}],!1);return}const _=new ve(D,s).getRangePointData(T,T).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{..._,style:d}],!1),this._scrollToFocusNodePosition(r.getUnitId(),_.endOffset)}}_getTopOrBottomPosition(t,e,n,r,s=!1){if(e==null||n==null)return;const a=this._getGlyphLeftOffsetInLine(e),c=this._getNextOrPrevLine(e,r,s);if(c==null)return;const l=this._matchPositionByLeftOffset(t,c,a,n);if(l!=null)return{...l,isBack:!0}}_getGlyphLeftOffsetInLine(t){const e=t.parent;if(e==null)return Number.NEGATIVE_INFINITY;const n=e.left,{left:r}=t;return n+r}_matchPositionByLeftOffset(t,e,n,r){const s={distance:Number.POSITIVE_INFINITY};for(const c of e.divides){const l=c.left;for(const d of c.glyphGroup){if(d.streamType===i.DataStreamTreeTokenType.SECTION_BREAK)continue;const{left:A}=d,u=l+A,h=Math.abs(n-u);h<s.distance&&(s.glyph=d,s.distance=h)}}if(s.glyph==null)return;const{segmentPage:a}=r;return t.findPositionByGlyph(s.glyph,a)}_getNextOrPrevLine(t,e,n=!1){var p,f,S,v,C,y,b,E,R,D,T,_;const r=t.parent,s=r==null?void 0:r.parent,a=s==null?void 0:s.parent,c=a==null?void 0:a.parent,l=c==null?void 0:c.parent;if(r==null||s==null||a==null||c==null||l==null)return;const d=a.lines.indexOf(s);if(d===-1)return;let A;if(l.type===M.DocumentSkeletonPageType.CELL&&n){const O=jr(l,e);if(O)return O}if(e===!0){A=a.lines[d+1];const O=bd(s,l);if(O){const N=Td(O);N&&(A=N)}}else{A=a.lines[d-1];const O=Rd(s,l);if(O){const N=yd(O);N&&(A=N)}}if(A!=null)return A;const u=c.columns.indexOf(a);if(u===-1)return;if(e===!0)A=(p=c.columns[u+1])==null?void 0:p.lines[0];else{const O=(S=(f=c.columns)==null?void 0:f[u-1])==null?void 0:S.lines;A=O==null?void 0:O[O.length-1]}if(A!=null)return A;const h=l.sections.indexOf(c);if(h===-1)return;if(e===!0)A=(C=(v=l.sections[h-1])==null?void 0:v.columns[0])==null?void 0:C.lines[0];else{const O=(b=(y=l.sections)==null?void 0:y[h-1])==null?void 0:b.columns,N=O==null?void 0:O[O.length-1],F=N==null?void 0:N.lines;A=F==null?void 0:F[F.length-1]}if(A!=null)return A;if(l.type===M.DocumentSkeletonPageType.CELL)return jr(l,e);const g=l.parent;if(g==null)return;const m=g.pages.indexOf(l);if(m!==-1){if(e===!0)A=(D=(R=(E=g.pages[m+1])==null?void 0:E.sections[0])==null?void 0:R.columns[0])==null?void 0:D.lines[0];else{const O=(T=g.pages[m-1])==null?void 0:T.sections;if(O==null)return;const N=(_=O[O.length-1])==null?void 0:_.columns,F=N[N.length-1],H=F==null?void 0:F.lines;A=H[H.length-1]}if(A!=null)return A}}_scrollToFocusNodePosition(t,e){var r;const n=(r=this._renderManagerService.getRenderById(t))==null?void 0:r.with(exports.DocBackScrollRenderController);n!=null&&n.scrollToRange({startOffset:e,endOffset:e,collapsed:!0})}_getDocObject(){return ti(this._univerInstanceService,this._renderManagerService)}};tn=Dd([Qt(0,i.IUniverInstanceService),Qt(1,M.IRenderManagerService),Qt(2,i.Inject(B.DocSelectionManagerService)),Qt(3,i.ICommandService)],tn);function jr(o,t){var n,r;let e=null;if(t===!0){const s=cs(o);if(s)e=xd(s);else{const a=(n=o.parent)==null?void 0:n.parent,{lineAfterTable:c}=Vr(a);c&&(e=c)}}else{const s=ls(o);if(s)e=Od(s);else{const a=(r=o.parent)==null?void 0:r.parent,{lineBeforeTable:c}=Vr(a);c&&(e=c)}}return e}const Bd=({handleRowColChange:o,tableCreateParams:t})=>{const e=I.useDependency(i.LocaleService),[n,r]=w.useState(3),[s,a]=w.useState(5);function c(l,d){r(l),a(d),o(l,d)}return w.useEffect(()=>{r(t.rowCount),a(t.colCount)},[t]),Q.jsxs("div",{className:"univer-flex univer-items-center univer-justify-between",children:[Q.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[Q.jsx("span",{children:e.t("toolbar.table.rowCount")}),Q.jsx(te.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:n,onChange:l=>{c(l,s)}})]}),Q.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[Q.jsx("span",{children:e.t("toolbar.table.colCount")}),Q.jsx(te.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:s,onChange:l=>{c(n,l)}})]})]})};var _d=Object.getOwnPropertyDescriptor,Nd=(o,t,e,n)=>{for(var r=n>1?void 0:n?_d(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Wr=(o,t)=>(e,n)=>t(e,n,o);let nn=class extends i.Disposable{constructor(o,t){super(),this._commandService=o,this._componentManager=t,this._initialize()}_initialize(){this._init(),this._registerCommands(),this._initCustomComponents()}_registerCommands(){[En].forEach(o=>this.disposeWithMe(this._commandService.registerCommand(o)))}_initCustomComponents(){const o=this._componentManager;this.disposeWithMe(o.register(Ji,Bd))}_init(){}};nn=Nd([Wr(0,i.ICommandService),Wr(1,i.Inject(I.ComponentManager))],nn);var Pd=Object.getOwnPropertyDescriptor,Ud=(o,t,e,n)=>{for(var r=n>1?void 0:n?Pd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ft=(o,t)=>(e,n)=>t(e,n,o);let eo=class extends i.Disposable{constructor(o,t,e,n,r){super(),this._context=o,this._docSkeletonManagerService=t,this._commandService=e,this._docEventManagerService=n,this._textSelectionManagerService=r,this._initPointerDownObserver(),this._initHoverCursor()}_initPointerDownObserver(){this._docEventManagerService.clickBullets$.subscribe(o=>{const t=this._textSelectionManagerService.getTextRanges();this._commandService.executeCommand(Po.id,{index:o.paragraph.startIndex,segmentId:o.segmentId,textRanges:t})})}_initHoverCursor(){this.disposeWithMe(this._docEventManagerService.hoverBullet$.subscribe(o=>{o?this._context.mainComponent.setCursor(M.CURSOR_TYPE.POINTER):this._context.mainComponent.setCursor(M.CURSOR_TYPE.TEXT)}))}_getTransformCoordForDocumentOffset(o,t,e,n){const{documentTransform:r}=o.getOffsetConfig(),s=t.transformVector2SceneCoord(M.Vector2.FromArray([e,n]));if(s)return r.clone().invert().applyPoint(s)}};eo=Ud([Ft(1,i.Inject(B.DocSkeletonManagerService)),Ft(2,i.ICommandService),Ft(3,i.Inject(exports.DocEventManagerService)),Ft(4,i.Inject(B.DocSelectionManagerService))],eo);var wd=Object.getOwnPropertyDescriptor,Ld=(o,t,e,n)=>{for(var r=n>1?void 0:n?wd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},gt=(o,t)=>(e,n)=>t(e,n,o);let on=class extends i.RxDisposable{constructor(o,t,e,n,r,s){super(),this._context=o,this._commandService=t,this._docClipboardService=e,this._docSelectionRenderService=n,this._contextService=r,this._editorService=s,this._init()}_init(){this._initLegacyPasteCommand()}_initLegacyPasteCommand(){var o;(o=this._docSelectionRenderService)==null||o.onPaste$.pipe(P.takeUntil(this.dispose$)).subscribe(t=>{var c,l,d;if(!pn(this._contextService))return;t.event.preventDefault();const e=t.event;let n=(c=e.clipboardData)==null?void 0:c.getData(I.HTML_CLIPBOARD_MIME_TYPE);const r=(l=e.clipboardData)==null?void 0:l.getData(I.PLAIN_TEXT_CLIPBOARD_MIME_TYPE),s=[...((d=e.clipboardData)==null?void 0:d.items)||[]].filter(A=>I.imageMimeTypeSet.has(A.type)).map(A=>A.getAsFile()).filter(A=>!!A);this._editorService.getEditor(this._context.unitId)&&(n!=null?n:"").indexOf("</table>")>-1&&(n=""),this._docClipboardService.legacyPaste({html:n,text:r,files:s})})}};on=Ld([gt(1,i.ICommandService),gt(2,_e),gt(3,i.Inject(exports.DocSelectionRenderService)),gt(4,i.IContextService),gt(5,ae)],on);var Qd=Object.getOwnPropertyDescriptor,Fd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Qd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},zr=(o,t)=>(e,n)=>t(e,n,o);const Hd=[i.DEFAULT_EMPTY_DOCUMENT_VALUE,i.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY];let to=class extends i.Disposable{constructor(o,t,e){super(),this._context=o,this._contextMenuService=t,this._commandService=e,Hd.includes(this._context.unitId)||(this._initPointerDown(),this._initEditChange())}_initPointerDown(){var e,n;const t=((n=(e=this._context)==null?void 0:e.mainComponent)==null?void 0:n.onPointerDown$).subscribeEvent(r=>{r.button===2&&this._contextMenuService.triggerContextMenu(r,I.ContextMenuPosition.MAIN_AREA)});this.disposeWithMe(t)}_initEditChange(){this.disposeWithMe(this._commandService.onCommandExecuted(o=>{o.id===B.RichTextEditingMutation.id&&this._contextMenuService.visible&&this._contextMenuService.hideContextMenu()}))}};to=Fd([zr(1,I.IContextMenuService),zr(2,i.ICommandService)],to);var kd=Object.getOwnPropertyDescriptor,Vd=(o,t,e,n)=>{for(var r=n>1?void 0:n?kd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},qe=(o,t)=>(e,n)=>t(e,n,o);let rn=class extends i.Disposable{constructor(t,e,n,r,s,a,c){super();x(this,"_initialEditors",new Set);this._context=t,this._univerInstanceService=e,this._editorService=n,this._commandService=r,this._docSelectionRenderService=s,this._docSkeletonManagerService=a,this._renderManagerService=c,this._initialize()}_initialize(){this._editorService.getAllEditor().forEach(t=>{const e=t.getEditorId();e===this._context.unitId&&(this._initialEditors.has(e)||(this._initialEditors.add(e),this._resize(e)))}),this._commandExecutedListener(),this._initialBlur(),this._initialFocus()}_resize(t){if(t==null)return;const e=this._editorService.getEditor(t);if((e==null?void 0:e.cancelDefaultResizeListener)===!0)return;const n=this._univerInstanceService.getUniverDocInstance(t);if(!n)return;const r=this._docSkeletonManagerService.getSkeleton();if(e==null||e.render==null||r==null||n==null)return;r.calculate();const{marginTop:s=0,marginBottom:a=0,marginLeft:c=0,marginRight:l=0}=n.getSnapshot().documentStyle,{scene:d,mainComponent:A}=e.render;let{actualHeight:u,actualWidth:h}=r.getActualSize();u+=s+a,h+=c+l;const{width:g,height:m}=e.getBoundingClientRect(),p=Math.max(h,g),f=Math.max(u,m);d.transformByState({width:p,height:f}),A==null||A.resize(p,f)}_initialBlur(){this.disposeWithMe(this._editorService.blur$.subscribe(()=>{this._docSelectionRenderService.blur()})),this.disposeWithMe(this._docSelectionRenderService.onBlur$.subscribe(()=>{const{unitId:t}=this._context,e=this._editorService.getEditor(t),n=this._editorService.getFocusEditor();e==null||e.isSheetEditor()||n&&n.getEditorId()===t||t.includes("range_selector")||t.includes("embedding_formula_editor")||this._editorService.blur()}))}_initialFocus(){const t=["univer-formula-search","univer-formula-help","formula-help-decorator","univer-formula-help-param"];this.disposeWithMe(P.fromEvent(window,"mousedown").subscribe(n=>{const s=n.target.classList[0]||"";i.checkForSubstrings(s,t)&&n.stopPropagation()}));const e=new i.DisposableCollection;this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_SHEET).subscribe(n=>{if(e.dispose(),!n)return;const r=n.getUnitId(),s=this._renderManagerService.getRenderById(r),a=s==null?void 0:s.engine.getCanvas().getCanvasEle();if(a==null)return;const c=P.fromEvent(a,"mousedown").subscribe(l=>{l.stopPropagation()});e.add(c)})),this.disposeWithMe(()=>e.dispose())}_commandExecutedListener(){const t=[B.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:r}=n;if(this._editorService.isSheetEditor(r)||r!==this._context.unitId)return;const s=this._editorService.getEditor(r);s&&!s.params.scrollBar&&this._resize(r)}}))}};rn=Vd([qe(1,i.IUniverInstanceService),qe(2,ae),qe(3,i.ICommandService),qe(4,i.Inject(exports.DocSelectionRenderService)),qe(5,i.Inject(B.DocSkeletonManagerService)),qe(6,M.IRenderManagerService)],rn);var jd=Object.getOwnPropertyDescriptor,Wd=(o,t,e,n)=>{for(var r=n>1?void 0:n?jd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ht=(o,t)=>(e,n)=>t(e,n,o);let no=class extends i.Disposable{constructor(t,e,n,r,s){super();x(this,"_previousIMEContent","");x(this,"_isCompositionStart",!0);x(this,"_onStartSubscription");x(this,"_onUpdateSubscription");x(this,"_onEndSubscription");this._context=t,this._docSelectionRenderService=e,this._docImeInputManagerService=n,this._docSkeletonManagerService=r,this._commandService=s,this._initialize()}dispose(){var t,e,n;(t=this._onStartSubscription)==null||t.unsubscribe(),(e=this._onUpdateSubscription)==null||e.unsubscribe(),(n=this._onEndSubscription)==null||n.unsubscribe()}_initialize(){this._initialOnCompositionstart(),this._initialOnCompositionUpdate(),this._initialOnCompositionend()}_initialOnCompositionstart(){this._onStartSubscription=this._docSelectionRenderService.onCompositionstart$.subscribe(t=>{if(t==null)return;this._resetIME();const{activeRange:e}=t;e!=null&&this._docImeInputManagerService.setActiveRange(i.Tools.deepClone(e))})}_initialOnCompositionUpdate(){this._onUpdateSubscription=this._docSelectionRenderService.onCompositionupdate$.subscribe(t=>{this._updateContent(t,!0)})}_initialOnCompositionend(){this._onEndSubscription=this._docSelectionRenderService.onCompositionend$.subscribe(t=>{this._updateContent(t,!1)})}async _updateContent(t,e){if(t==null)return;const n=this._context.unitId,r=this._docSkeletonManagerService.getSkeleton(),{event:s,activeRange:a}=t;if(r==null||a==null)return;const l=s.data;l===this._previousIMEContent&&e||(await this._commandService.executeCommand($o.id,{unitId:n,newText:l,oldTextLen:this._previousIMEContent.length,isCompositionStart:this._isCompositionStart,isCompositionEnd:!e}),e?(this._isCompositionStart&&(this._isCompositionStart=!1),this._previousIMEContent=l):this._resetIME())}_resetIME(){this._previousIMEContent="",this._isCompositionStart=!0,this._docImeInputManagerService.clearUndoRedoMutationParamsCache(),this._docImeInputManagerService.setActiveRange(null)}};no=Wd([Ht(1,i.Inject(exports.DocSelectionRenderService)),Ht(2,i.Inject(Pt)),Ht(3,i.Inject(B.DocSkeletonManagerService)),Ht(4,i.ICommandService)],no);var zd=Object.getOwnPropertyDescriptor,Gd=(o,t,e,n)=>{for(var r=n>1?void 0:n?zd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},kt=(o,t)=>(e,n)=>t(e,n,o);let oo=class extends i.Disposable{constructor(t,e,n,r,s){super();x(this,"_onInputSubscription");this._context=t,this._docSelectionRenderService=e,this._docSkeletonManagerService=n,this._commandService=r,this._docMenuStyleService=s,this._init()}dispose(){var t;super.dispose(),(t=this._onInputSubscription)==null||t.unsubscribe()}_init(){this._initialNormalInput()}_initialNormalInput(){this._onInputSubscription=this._docSelectionRenderService.onInput$.subscribe(async t=>{var f,S;if(t==null)return;const{unitId:e}=this._context,{event:n,content:r="",activeRange:s}=t,a=n,c=this._docSkeletonManagerService.getSkeleton();if(a.data==null||c==null||s==null)return;const{segmentId:l}=s,A=this._context.unit.getSelfOrHeaderFooterModel(l).getBody(),u=this._docMenuStyleService.getDefaultStyle(),h=this._docMenuStyleService.getStyleCache(),g=co((f=A==null?void 0:A.customRanges)!=null?f:[],s.endOffset,i.SHEET_EDITOR_UNITS.includes(e)),m=an(A,s.endOffset,u,h,i.SHEET_EDITOR_UNITS.includes(e)),p=lo((S=A==null?void 0:A.customDecorations)!=null?S:[],s.endOffset);await this._commandService.executeCommand(yo.id,{unitId:e,body:{dataStream:r,textRuns:m?[{...m,st:0,ed:r.length}]:[],customRanges:g?[{...g,startIndex:0,endIndex:r.length-1}]:[],customDecorations:p.map(v=>({...v,startIndex:0,endIndex:r.length-1}))},range:s,segmentId:l}),r===" "&&await this._commandService.executeCommand(Nt.id)})}};oo=Gd([kt(1,i.Inject(exports.DocSelectionRenderService)),kt(2,i.Inject(B.DocSkeletonManagerService)),kt(3,i.ICommandService),kt(4,i.Inject(Te))],oo);class tr extends i.Disposable{constructor(t){super(),this._context=t}calculatePagePosition(){var y,b;const t=Ie(this._context),n=(b=(y=this._context.unit.getSettings())==null?void 0:y.zoomRatio)!=null?b:1,{document:r,scene:s,docBackground:a}=t,c=s==null?void 0:s.getParent(),{width:l,height:d,pageMarginLeft:A,pageMarginTop:u}=r;if(c==null||l===Number.POSITIVE_INFINITY||d===Number.POSITIVE_INFINITY)return;const{width:h,height:g}=c;let m=0,p=u,f=0,S=0,v=Number.POSITIVE_INFINITY;h>(l+A*2)*n?(m=h/2-l*n/2,m/=n,f=(h-A*2)/n,v=0):(m=A,f=l+A*2,v=(f-h/n)/2),g>d?S=(g-u*2)/n:S=d+u*2,s.resize(f,S),h<=1&&(m=-1e4,p=-1e4),r.translate(m,p),a.translate(m,p);const C=s.getViewport(ie.VIEW_MAIN);return v!==Number.POSITIVE_INFINITY&&C!=null&&C.scrollToViewportPos({viewportScrollX:v}),this}}var Xd=Object.getOwnPropertyDescriptor,Kd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Xd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Gr=(o,t)=>(e,n)=>t(e,n,o);let ro=class extends i.Disposable{constructor(o,t,e){super(),this._context=o,this._docPageLayoutService=t,this._textSelectionManagerService=e;const n=this._context.unitId;if(i.isInternalEditorID(n)&&n!==i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)return this;this._initResize()}_initResize(){this.disposeWithMe(i.fromEventSubject(this._context.engine.onTransformChange$).pipe(P.filter(o=>o.type===M.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),P.throttleTime(0,P.animationFrameScheduler)).subscribe(()=>{this._docPageLayoutService.calculatePagePosition(),this._textSelectionManagerService.refreshSelection()}))}};ro=Kd([Gr(1,i.Inject(tr)),Gr(2,i.Inject(B.DocSelectionManagerService))],ro);var Yd=Object.getOwnPropertyDescriptor,qd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Yd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Je=(o,t)=>(e,n)=>t(e,n,o);let io=class extends i.Disposable{constructor(t,e,n,r,s,a,c){super();x(this,"_loadedMap",new WeakSet);this._context=t,this._commandService=e,this._editorService=n,this._instanceSrv=r,this._docSelectionRenderService=s,this._docSkeletonManagerService=a,this._docSelectionManagerService=c,this._initialize()}_initialize(){this._init(),this._skeletonListener(),this._commandExecutedListener(),this._refreshListener(),this._syncSelection()}_init(){const{unitId:t}=this._context,e=Ie(this._context);e==null||e.document==null||this._loadedMap.has(e.document)||(this._initialMain(t),this._loadedMap.add(e.document))}_refreshListener(){this.disposeWithMe(this._docSelectionManagerService.refreshSelection$.subscribe(t=>{if(t==null)return;const{unitId:e,docRanges:n,isEditing:r,options:s}=t;e===this._context.unitId&&(this._docSelectionRenderService.removeAllRanges(),this._docSelectionRenderService.addDocRanges(n,r,s))}))}_syncSelection(){this.disposeWithMe(this._docSelectionRenderService.textSelectionInner$.subscribe(t=>{t!=null&&this._docSelectionManagerService.__replaceTextRangesWithNoRefresh(t,{unitId:this._context.unitId,subUnitId:this._context.unitId})}))}_initialMain(t){const e=Ie(this._context),{document:n,scene:r}=e;this.disposeWithMe(n.onPointerEnter$.subscribeEvent(()=>{this._isEditorReadOnly(t)||(n.cursor=M.CURSOR_TYPE.TEXT)})),this.disposeWithMe(n.onPointerLeave$.subscribeEvent(()=>{n.cursor=M.CURSOR_TYPE.DEFAULT,r.resetCursor()})),this.disposeWithMe(n.onPointerDown$.subscribeEvent((s,a)=>{if(this._isEditorReadOnly(t))return;const c=this._instanceSrv.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);(c==null?void 0:c.getUnitId())!==t&&this._instanceSrv.setCurrentUnitForType(t);const l=this._docSkeletonManagerService.getSkeleton(),{offsetX:d,offsetY:A}=s,u=this._getTransformCoordForDocumentOffset(d,A);if(u!=null){const{pageLayoutType:h=M.PageLayoutType.VERTICAL,pageMarginLeft:g,pageMarginTop:m}=n.getOffsetConfig(),{editArea:p}=l.findEditAreaByCoord(u,h,g,m),f=this._docSkeletonManagerService.getViewModel(),S=f.getEditArea();S!==M.DocumentEditArea.BODY&&p!==M.DocumentEditArea.BODY&&p!==S&&f.setEditArea(p)}if(this._docSelectionRenderService.__onPointDown(s),this._editorService.getEditor(t)){this._setEditorFocus(t);const{offsetX:h,offsetY:g}=s;setTimeout(()=>{t!==this._editorService.getFocusId()&&(this._setEditorFocus(t),this._docSelectionRenderService.setCursorManually(h,g))},0)}s.button!==2&&a.stopPropagation()})),this.disposeWithMe(n.onDblclick$.subscribeEvent(s=>{this._isEditorReadOnly(t)||this._docSelectionRenderService.__handleDblClick(s)})),this.disposeWithMe(n.onTripleClick$.subscribeEvent(s=>{this._isEditorReadOnly(t)||this._docSelectionRenderService.__handleTripleClick(s)}))}_getTransformCoordForDocumentOffset(t,e){const n=Ie(this._context),{document:r,scene:s}=n,{documentTransform:a}=r.getOffsetConfig(),c=s.getViewports()[0];if(c==null)return;const l=c.transformVector2SceneCoord(M.Vector2.FromArray([t,e]));return a.clone().invert().applyPoint(l)}_isEditorReadOnly(t){const e=this._editorService.getEditor(t);return e?e.isReadOnly():!1}_setEditorFocus(t){this._editorService.focus(t)}_commandExecutedListener(){const t=[Ae.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{var n;if(t.includes(e.id)){const r=e.params,{unitId:s}=r,a=(n=this._docSelectionManagerService.__getCurrentSelection())==null?void 0:n.unitId;if(s!==a)return;this._docSelectionManagerService.refreshSelection()}}))}_skeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(t=>{if(!t)return;const{unitId:e}=this._context;if(!i.isInternalEditorID(e)){this._docSelectionRenderService.focus();const s=this._context.unit.getSnapshot(),a=xi(s);this._docSelectionManagerService.replaceDocRanges([{startOffset:a,endOffset:a}],{unitId:e,subUnitId:e},!1)}}))}};io=qd([Je(1,i.ICommandService),Je(2,ae),Je(3,i.IUniverInstanceService),Je(4,i.Inject(exports.DocSelectionRenderService)),Je(5,i.Inject(B.DocSkeletonManagerService)),Je(6,i.Inject(B.DocSelectionManagerService))],io);var Jd=Object.getOwnPropertyDescriptor,Zd=(o,t,e,n)=>{for(var r=n>1?void 0:n?Jd(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ve=(o,t)=>(e,n)=>t(e,n,o);let so=class extends i.Disposable{constructor(o,t,e,n,r,s,a,c){super(),this._context=o,this._contextService=t,this._docSkeletonManagerService=e,this._univerInstanceService=n,this._commandService=r,this._textSelectionManagerService=s,this._editorService=a,this._docPageLayoutService=c,this._initSkeletonListener(),this._initCommandExecutedListener(),this._initRenderRefresher(),setTimeout(()=>this.updateViewZoom(1,!0),20),i.isInternalEditorID(this._context.unitId)||this._initZoomEventListener()}_initRenderRefresher(){this._docSkeletonManagerService.currentSkeleton$.subscribe(o=>{if(o==null)return;const{unitId:t,scene:e}=this._context;this._editorService.isEditor(t)||this.disposeWithMe(e.onMouseWheel$.subscribeEvent(n=>{if(!n.ctrlKey||!this._contextService.getContextValue(i.FOCUSING_DOC))return;const r=this._univerInstanceService.getCurrentUniverDocInstance();if(!r)return;const{documentFlavor:s}=r.getSnapshot().documentStyle;if(s===i.DocumentFlavor.MODERN)return;const a=Math.abs(n.deltaX);let c=a<40?.2:a<80?.4:.2;c*=n.deltaY>0?-1:1,e.scaleX<1&&(c/=2);const l=r.zoomRatio;let d=+Number.parseFloat(`${l+c}`).toFixed(1);d=d>=4?4:d<=.1?.1:d,this._commandService.executeCommand(vt.id,{zoomRatio:d,unitId:r.getUnitId()}),n.preventDefault()}))})}_initSkeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(o=>{if(o==null)return;const t=this._univerInstanceService.getCurrentUniverDocInstance();if(!t)return;const e=t.zoomRatio||1;this.updateViewZoom(e,!1)}))}_initCommandExecutedListener(){const o=[Ae.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(o.includes(t.id)&&t.params.unitId===this._context.unitId){const n=this._context.unit.zoomRatio||1;this.updateViewZoom(n)}})),this.disposeWithMe(this._commandService.beforeCommandExecuted(t=>{t.id===vn.id&&this._commandService.executeCommand(vt.id,{zoomRatio:1,unitId:this._context.unitId})}))}updateViewZoom(o,t=!0){var n;const e=Ie(this._context);e.scene.scale(o,o),this._editorService.isEditor(this._context.unitId)||this._docPageLayoutService.calculatePagePosition(),t&&!this._editorService.isEditor(this._context.unitId)&&this._textSelectionManagerService.refreshSelection(),(n=e.scene.getTransformer())==null||n.clearSelectedObjects()}_initZoomEventListener(){const o=this._context.scene;this.disposeWithMe(o.onMouseWheel$.subscribeEvent(t=>{if(!t.ctrlKey)return;const e=Math.abs(t.deltaX);let n=e<40?.2:e<80?.4:.2;n*=t.deltaY>0?-1:1,o.scaleX<1&&(n/=2);const r=this._context.unit.zoomRatio;let s=+Number.parseFloat(`${r+n}`).toFixed(1);s=s>=4?4:s<=.1?.1:s,this._commandService.executeCommand(vt.id,{zoomRatio:Math.round(s*10)/10,documentId:this._context.unitId}),t.preventDefault()}))}};so=Zd([Ve(1,i.IContextService),Ve(2,i.Inject(B.DocSkeletonManagerService)),Ve(3,i.IUniverInstanceService),Ve(4,i.ICommandService),Ve(5,i.Inject(B.DocSelectionManagerService)),Ve(6,ae),Ve(7,i.Inject(tr))],so);var $d=Object.getOwnPropertyDescriptor,eA=(o,t,e,n)=>{for(var r=n>1?void 0:n?$d(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},ht=(o,t)=>(e,n)=>t(e,n,o);const Xr=300;exports.DocStateChangeManagerService=class extends i.RxDisposable{constructor(e,n,r,s,a){super();x(this,"_docStateChange$",new P.BehaviorSubject(null));x(this,"docStateChange$",this._docStateChange$.asObservable());x(this,"_historyStateCache",new Map);x(this,"_changeStateCache",new Map);x(this,"_historyTimer",null);x(this,"_changeStateCacheTimer",null);this._undoRedoService=e,this._commandService=n,this._univerInstanceService=r,this._docStateEmitService=s,this._renderManagerService=a,this._initialize(),this._listenDocStateChange()}getStateCache(e){var n,r;return{history:(n=this._historyStateCache.get(e))!=null?n:[],collaboration:(r=this._changeStateCache.get(e))!=null?r:[]}}setStateCache(e,n){this._historyStateCache.set(e,n.history),this._changeStateCache.set(e,n.collaboration)}_setChangeState(e){this._cacheChangeState(e,"history"),this._cacheChangeState(e,"collaboration")}_initialize(){this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{if(e.id===i.UndoCommandId||e.id===i.RedoCommandId){const n=this._univerInstanceService.getCurrentUniverDocInstance();if(n==null)return;const r=n.getUnitId();this._pushHistory(r),this._emitChangeState(r)}}))}_listenDocStateChange(){this._docStateEmitService.docStateChangeParams$.pipe(P.takeUntil(this.dispose$)).subscribe(e=>{var l;if(e==null)return;const{isCompositionEnd:n,isSync:r,syncer:s,...a}=e,c=(l=this._renderManagerService.getRenderById(r?s:e.unitId))==null?void 0:l.with(Pt);if(c!=null){if(n){const d=c.fetchComposedUndoRedoMutationParams();if(d==null)throw new Error("historyParams is null in RichTextEditingMutation");const{undoMutationParams:A,redoMutationParams:u,previousActiveRange:h}=d;a.redoState.actions=u.actions,a.undoState.actions=A.actions,a.undoState.textRanges=[h]}this._setChangeState(a)}})}_cacheChangeState(e,n="history"){const{trigger:r,unitId:s,noHistory:a,debounce:c=!1}=e;if(a||r==null||n==="history"&&(r===i.RedoCommandId||r===i.UndoCommandId))return;const l=n==="history"?this._historyStateCache:this._changeStateCache,d=n==="history"?this._pushHistory.bind(this):this._emitChangeState.bind(this);if(l.has(s)){const A=l.get(s);A==null||A.push(e)}else l.set(s,[e]);c?n==="history"?(this._historyTimer&&clearTimeout(this._historyTimer),this._historyTimer=setTimeout(()=>{d(s)},Xr)):(this._changeStateCacheTimer&&clearTimeout(this._changeStateCacheTimer),this._changeStateCacheTimer=setTimeout(()=>{d(s)},Xr)):d(s)}_pushHistory(e){const n=this._undoRedoService,r=this._historyStateCache.get(e);if(!Array.isArray(r)||r.length===0)return;const s=r.length,a=r[0].commandId,c=r[0],l=r[s-1],d={unitId:e,actions:r.reduce((u,h)=>i.JSONX.compose(u,h.redoState.actions),null),textRanges:l.redoState.textRanges},A={unitId:e,actions:r.reverse().reduce((u,h)=>i.JSONX.compose(u,h.undoState.actions),null),textRanges:c.undoState.textRanges};n.pushUndoRedo({unitID:e,undoMutations:[{id:a,params:A}],redoMutations:[{id:a,params:d}]}),r.length=0}_emitChangeState(e){const n=this._changeStateCache.get(e);if(!Array.isArray(n)||n.length===0)return;const r=n.length,{commandId:s,trigger:a,segmentId:c,noHistory:l,debounce:d}=n[0],A=n[0],u=n[r-1],h={unitId:e,actions:n.reduce((p,f)=>i.JSONX.compose(p,f.redoState.actions),null),textRanges:u.redoState.textRanges},g={unitId:e,actions:n.reverse().reduce((p,f)=>i.JSONX.compose(p,f.undoState.actions),null),textRanges:A.undoState.textRanges},m={commandId:s,unitId:e,trigger:a,redoState:h,undoState:g,segmentId:c,noHistory:l,debounce:d};n.length=0,this._docStateChange$.next(m)}};exports.DocStateChangeManagerService=eA([ht(0,i.Inject(i.IUndoRedoService)),ht(1,i.ICommandService),ht(2,i.IUniverInstanceService),ht(3,i.Inject(B.DocStateEmitService)),ht(4,M.IRenderManagerService)],exports.DocStateChangeManagerService);var tA=Object.getOwnPropertyDescriptor,nA=(o,t,e,n)=>{for(var r=n>1?void 0:n?tA(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Kr=(o,t)=>(e,n)=>t(e,n,o);const Yr="univer-doc-main-canvas";exports.DocsRenderService=class extends i.RxDisposable{constructor(t,e){super(),this._instanceSrv=t,this._renderManagerService=e,this._init()}_init(){this._renderManagerService.createRender$.pipe(P.takeUntil(this.dispose$)).subscribe(t=>this._createRenderWithId(t)),this._instanceSrv.getAllUnitsForType(i.UniverInstanceType.UNIVER_DOC).forEach(t=>this._createRenderer(t)),this._instanceSrv.getTypeOfUnitAdded$(i.UniverInstanceType.UNIVER_DOC).pipe(P.takeUntil(this.dispose$)).subscribe(t=>this._createRenderer(t)),this._instanceSrv.getTypeOfUnitDisposed$(i.UniverInstanceType.UNIVER_DOC).pipe(P.takeUntil(this.dispose$)).subscribe(t=>this._disposeRenderer(t))}_createRenderer(t){var r;const e=t.getUnitId(),n=(r=this._instanceSrv.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC))==null?void 0:r.getUnitId();this._renderManagerService.created$.subscribe(s=>{s.unitId===n&&(s.engine.getCanvas().setId(Yr),s.engine.getCanvas().getContext().setId(Yr))}),this._renderManagerService.has(e)||this._createRenderWithId(e)}_createRenderWithId(t){this._renderManagerService.createRender(t)}_disposeRenderer(t){const e=t.getUnitId();this._renderManagerService.removeRender(e)}};exports.DocsRenderService=nA([Kr(0,i.IUniverInstanceService),Kr(1,M.IRenderManagerService)],exports.DocsRenderService);class ds extends i.Disposable{constructor(){super(...arguments);x(this,"_currentSelectorId");x(this,"_selectionChange$",new P.Subject);x(this,"selectionChange$",this._selectionChange$.asObservable());x(this,"_openSelector$",new P.Subject);x(this,"openSelector$",this._openSelector$.asObservable());x(this,"_selectorModalVisible$",new P.BehaviorSubject(!1));x(this,"selectorModalVisible$",this._selectorModalVisible$.asObservable())}get selectorModalVisible(){return this._selectorModalVisible$.getValue()}setCurrentSelectorId(e){this._currentSelectorId=e}getCurrentSelectorId(){return this._currentSelectorId}selectionChange(e){this._currentSelectorId&&this._selectionChange$.next(e)}openSelector(){this._openSelector$.next(null)}triggerModalVisibleChange(e){this._selectorModalVisible$.next(e)}}const As=i.createIdentifier("univer.range-selector.service"),oA={id:rt.id,preconditions:sl,binding:I.KeyCode.ENTER},rA={id:Rt.id,preconditions:Z,binding:I.KeyCode.BACKSPACE},iA={id:Ro.id,preconditions:Z,binding:I.KeyCode.DELETE},sA={id:Ee.id,binding:I.KeyCode.ARROW_UP,preconditions:Z,staticParameters:{direction:i.Direction.UP}},aA={id:Ee.id,binding:I.KeyCode.ARROW_DOWN,preconditions:Z,staticParameters:{direction:i.Direction.DOWN}},cA={id:Ee.id,binding:I.KeyCode.ARROW_LEFT,preconditions:Z,staticParameters:{direction:i.Direction.LEFT}},lA={id:Ee.id,binding:I.KeyCode.ARROW_RIGHT,preconditions:Z,staticParameters:{direction:i.Direction.RIGHT}},dA={id:Ce.id,binding:I.KeyCode.ARROW_UP|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.UP}},AA={id:Ce.id,binding:I.KeyCode.ARROW_DOWN|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.DOWN}},uA={id:Ce.id,binding:I.KeyCode.ARROW_LEFT|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.LEFT}},gA={id:Ce.id,binding:I.KeyCode.ARROW_RIGHT|I.MetaKeys.SHIFT,preconditions:Z,staticParameters:{direction:i.Direction.RIGHT}},hA={id:Zo.id,binding:I.KeyCode.A|I.MetaKeys.CTRL_COMMAND,preconditions:o=>o.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&(o.getContextValue(i.FOCUSING_DOC)||o.getContextValue(i.EDITOR_ACTIVATED))};var mA=Object.defineProperty,pA=Object.getOwnPropertyDescriptor,fA=(o,t,e)=>t in o?mA(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e,SA=(o,t,e,n)=>{for(var r=n>1?void 0:n?pA(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},mt=(o,t)=>(e,n)=>t(e,n,o),IA=(o,t,e)=>fA(o,t+"",e);exports.UniverDocsUIPlugin=class extends i.Plugin{constructor(t=Lr,e,n,r,s,a){super(),this._config=t,this._injector=e,this._renderManagerSrv=n,this._commandService=r,this._logService=s,this._configService=a;const{menu:c,...l}=i.merge({},Lr,this._config);c&&this._configService.setConfig("menu",c,{merge:!0}),this._configService.setConfig(Go,l),this._initDependencies(e),this._initializeShortcut(),this._initCommand()}onReady(){this._initRenderBasics(),this._markDocAsFocused(),i.touchDependencies(this._injector,[[exports.DocStateChangeManagerService],[exports.DocsRenderService]])}onRendered(){this._initUI(),this._initRenderModules(),i.touchDependencies(this._injector,[[en],[tn],[it],[nn],[exports.DocUIController]])}_initCommand(){[Rt,Ro,Ne,Pe,Ue,we,ye,Le,me,Me,De,at,Be,be,In,yo,et,gn,bo,hn,Hi,Ae,ot,nt,ct,Mt,Dt,Bt,pe,_t,xt,zo,Yo,yn,bn,ns,Rn,xn,Cn,Tn,lt,Io,er,ze,Nt,rt,Yt,Ot,Ct,Po,Uo,$o,vn,fe,To,We,ii,Ao,si,vt,Zo,qo,Ee,Ce,ci,uo,ss,le,Ki,xo,Do,Bo,Ho,ko,Vo,jo,Wo,qt,Yi,qi,Lo,Qo,Fo,No].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))}),[Et,fn,Sn].forEach(t=>this.disposeWithMe(this._commandService.registerMultipleCommand(t)))}_initializeShortcut(){[sA,aA,lA,cA,dA,AA,uA,gA,hA,rA,iA,oA,cl].forEach(t=>{this._injector.get(I.IShortcutService).registerShortcut(t)})}_initDependencies(t){i.mergeOverrideWithDependencies([[on],[rn],[exports.DocUIController],[en],[nn],[tn],[$t],[it],[ae,{useClass:exports.EditorService}],[As,{useClass:ds}],[_e,{useClass:qn}],[exports.DocCanvasPopManagerService],[exports.DocsRenderService],[exports.DocStateChangeManagerService],[exports.DocAutoFormatService],[Te]],this._config.override).forEach(n=>t.add(n))}_markDocAsFocused(){const t=this._injector.get(i.IUniverInstanceService),e=this._injector.get(ae);try{const n=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if(!n)return;const r=n.getUnitId();e.isEditor(r)||t.focusUnit(n.getUnitId())}catch(n){this._logService.warn(n)}}_initUI(){this._injector.get($t)}_initRenderBasics(){[[B.DocSkeletonManagerService],[exports.DocSelectionRenderService],[B.DocInterceptorService],[tr],[Pt],[exports.DocRenderController],[so]].forEach(t=>{this._renderManagerSrv.registerRenderModule(i.UniverInstanceType.UNIVER_DOC,t)})}_initRenderModules(){[[exports.DocEventManagerService],[Jt],[Zt],[exports.DocBackScrollRenderController],[io],[Kn],[ro],[to],[eo],[on],[oo],[no],[rn]].forEach(t=>{this._renderManagerSrv.registerRenderModule(i.UniverInstanceType.UNIVER_DOC,t)})}};IA(exports.UniverDocsUIPlugin,"pluginName",Zr);exports.UniverDocsUIPlugin=SA([i.DependentOn(M.UniverRenderEnginePlugin),mt(1,i.Inject(i.Injector)),mt(2,M.IRenderManagerService),mt(3,i.ICommandService),mt(4,i.ILogService),mt(5,i.IConfigService)],exports.UniverDocsUIPlugin);exports.AfterSpaceCommand=Nt;exports.AlignCenterCommand=Dt;exports.AlignJustifyCommand=_t;exports.AlignLeftCommand=Mt;exports.AlignOperationCommand=pe;exports.AlignRightCommand=Bt;exports.BreakLineCommand=In;exports.BulletListCommand=nt;exports.ChangeListNestingLevelCommand=Yt;exports.ChangeListNestingLevelType=It;exports.ChangeListTypeCommand=Ot;exports.CheckListCommand=Ct;exports.CoverContentCommand=si;exports.CreateDocTableCommand=zo;exports.CutContentCommand=We;exports.DOCS_COMPONENT_BACKGROUND_LAYER_INDEX=$r;exports.DOCS_COMPONENT_DEFAULT_Z_INDEX=kn;exports.DOCS_COMPONENT_HEADER_LAYER_INDEX=ei;exports.DOCS_COMPONENT_MAIN_LAYER_INDEX=Vt;exports.DOCS_VIEW_KEY=de;exports.DOC_UI_PLUGIN_NAME=Zr;exports.DOC_VERTICAL_PADDING=Zn;exports.DefaultDocContainerConfig=Jr;exports.DefaultToolbarConfig=qr;exports.DeleteCommand=et;exports.DeleteCustomBlockCommand=gn;exports.DeleteLeftCommand=Rt;exports.DeleteRightCommand=Ro;exports.DocCopyCommand=Et;exports.DocCreateTableOperation=En;exports.DocCutCommand=fn;exports.DocIMEInputManagerService=Pt;exports.DocPasteCommand=Sn;exports.DocSelectAllCommand=Zo;exports.DocTableDeleteColumnsCommand=Tn;exports.DocTableDeleteRowsCommand=Cn;exports.DocTableDeleteTableCommand=lt;exports.DocTableInsertColumnCommand=ns;exports.DocTableInsertColumnLeftCommand=Rn;exports.DocTableInsertColumnRightCommand=xn;exports.DocTableInsertRowAboveCommand=yn;exports.DocTableInsertRowBellowCommand=bn;exports.DocTableInsertRowCommand=Yo;exports.DocTableTabCommand=er;exports.DocsUIMenuSchema=is;exports.Editor=ui;exports.EditorInsertTextCommandId=Fi;exports.EnterCommand=rt;exports.HorizontalLineCommand=xt;exports.IDocClipboardService=_e;exports.IEditorService=ae;exports.IMEInputCommand=$o;exports.IRangeSelectorService=As;exports.InnerPasteCommand=To;exports.InsertCommand=yo;exports.InsertCustomRangeCommand=ss;exports.ListOperationCommand=ct;exports.MergeTwoParagraphCommand=hn;exports.MoveCursorOperation=Ee;exports.MoveSelectionOperation=Ce;exports.NORMAL_TEXT_SELECTION_PLUGIN_NAME=Is;exports.NodePositionConvertToCursor=ve;exports.NodePositionConvertToRectRange=mo;exports.OrderListCommand=ot;exports.PastePluginLark=Vi;exports.PastePluginUniver=Wi;exports.PastePluginWord=zi;exports.QuickListCommand=Uo;exports.RangeSelectorService=ds;exports.RectRange=po;exports.ReplaceContentCommand=ii;exports.ReplaceSelectionCommand=uo;exports.ReplaceSnapshotCommand=Ao;exports.ReplaceTextRunsCommand=ci;exports.ResetInlineFormatTextBackgroundColorCommand=at;exports.RichTextEditor=zs;exports.SetDocZoomRatioCommand=vt;exports.SetDocZoomRatioOperation=Ae;exports.SetInlineFormatBoldCommand=Ne;exports.SetInlineFormatCommand=be;exports.SetInlineFormatFontFamilyCommand=Me;exports.SetInlineFormatFontSizeCommand=me;exports.SetInlineFormatItalicCommand=Pe;exports.SetInlineFormatStrikethroughCommand=we;exports.SetInlineFormatSubscriptCommand=ye;exports.SetInlineFormatSuperscriptCommand=Le;exports.SetInlineFormatTextBackgroundColorCommand=Be;exports.SetInlineFormatTextColorCommand=De;exports.SetInlineFormatUnderlineCommand=Ue;exports.SetParagraphNamedStyleCommand=le;exports.TEXT_RANGE_LAYER_INDEX=Xt;exports.TabCommand=ze;exports.TextRange=je;exports.ToggleCheckListCommand=Po;exports.UpdateCommand=bo;exports.VIEWPORT_KEY=ie;exports.addCustomDecorationBySelectionFactory=Es;exports.addCustomDecorationFactory=ni;exports.calcDocRangePositions=Gt;exports.convertPositionsToRectRanges=Wt;exports.deleteCustomDecorationFactory=Cs;exports.docDrawingPositionToTransform=ys;exports.genTableSource=Co;exports.generateParagraphs=_o;exports.getAnchorBounding=St;exports.getCanvasOffsetByEngine=Ai;exports.getCommandSkeleton=ce;exports.getCursorWhenDelete=mn;exports.getCustomBlockIdsInSelections=Li;exports.getCutActionsFromDocRanges=Qi;exports.getDocObject=ti;exports.getDocObjectById=vs;exports.getEmptyTableCell=dn;exports.getEmptyTableRow=An;exports.getLineBounding=cn;exports.getOneTextSelectionRange=jn;exports.getRichTextEditPath=J;exports.getTableColumn=un;exports.hasParagraphInTable=Ts;exports.isInSameTableCell=ho;exports.isValidRectRange=li;exports.neoGetDocObject=Ie;exports.transformToDocDrawingPosition=bs;exports.useKeyboardEvent=oi;exports.useResize=ri;exports.whenDocAndEditorFocused=Z;