@univerjs/docs-ui 1.0.0-beta.1 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/umd/index.js CHANGED
@@ -1,5 +1,5 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/engine-render"),require("@univerjs/ui"),require("rxjs"),require("rxjs/operators"),require("@univerjs/design"),require("react"),require("react/jsx-runtime")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs`,`@univerjs/engine-render`,`@univerjs/ui`,`rxjs`,`rxjs/operators`,`@univerjs/design`,`react`,`react/jsx-runtime`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverDocsUi={},e.UniverCore,e.UniverDocs,e.UniverEngineRender,e.UniverUi,e.rxjs,e.rxjs.operators,e.UniverDesign,e.React,e.React))})(this,function(e,t,n,r,i,a,o,s,c,l){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let u=function(e){return e.MAIN=`__Document_Render_Main__`,e.BACKGROUND=`__Document_Render_Background__`,e}({}),d=function(e){return e.VIEW_MAIN=`viewMain`,e.VIEW_TOP=`viewTop`,e.VIEW_LEFT=`viewLeft`,e.VIEW_LEFT_TOP=`viewLeftTop`,e}({});function f(e){let{mainComponent:t,scene:n,engine:r,components:i}=e;return{document:t,docBackground:i.get(`__Document_Render_Background__`),scene:n,engine:r}}function p(e,t){let n=t.getRenderUnitById(e);if(n==null)return;let{mainComponent:r,scene:i,engine:a,components:o}=n;return{document:r,docBackground:o.get(`__Document_Render_Background__`),scene:i,engine:a}}function m(e){let{unitId:r,ranges:i,id:a,type:o,segmentId:s}=e,c={id:n.RichTextEditingMutation.id,params:{unitId:r,actions:[],textRanges:void 0,segmentId:s}},l=t.JSONX.getInstance(),u=t.BuildTextUtils.customDecoration.add({ranges:i,id:a,type:o});return c.params.actions=l.editOp(u.serialize()),c}function h(e,r){let{segmentId:i,id:a,type:o,unitId:s}=r,c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService),u=s?l.getUnit(s,t.UniverInstanceType.UNIVER_DOC):l.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!u)return!1;let d=u.getUnitId(),f=c.getTextRanges({unitId:d,subUnitId:d});return!f||!u.getBody()?!1:m({unitId:d,ranges:f,id:a,type:o,segmentId:i})}function g(e,r){let{unitId:i,id:a,segmentId:o}=r,s=e.get(t.IUniverInstanceService).getUnit(i);if(!s)return!1;let c={id:n.RichTextEditingMutation.id,params:{unitId:i,actions:[],textRanges:void 0,segmentId:o}},l=t.BuildTextUtils.customDecoration.delete({id:a,segmentId:o,documentDataModel:s});if(!l)return!1;let u=t.JSONX.getInstance();return c.params.actions=u.editOp(l.serialize()),c}let _=.07;function v(e){let n=e.getColorFromTheme(`primary.600`);return{background:new t.ColorKit(n).setAlpha(_).toRgbString(),border:n}}function y(e,t,n){e.save(),e.fillStyle=n.background,e.strokeStyle=n.border,e.lineWidth=1,e.beginPath(),e.roundRect(t.left,t.top,t.right-t.left,t.bottom-t.top,1),e.fill(),e.stroke(),e.restore()}function b(e,n){let r=e[n-1],i=e[n];return r===t.DataStreamTreeTokenType.BLOCK_END||r===t.DataStreamTreeTokenType.TABLE_END||r===t.DataStreamTreeTokenType.COLUMN_GROUP_END||i===t.DataStreamTreeTokenType.BLOCK_START||i===t.DataStreamTreeTokenType.TABLE_START||i===t.DataStreamTreeTokenType.COLUMN_GROUP_START}function x(e,t){return t.some(t=>e.startIndex>t.startIndex&&e.startIndex<t.endIndex)}function S(e,t,n,r,i){let{textRuns:a=[],dataStream:o}=e,s=i&&o.startsWith(`=`),c={st:0,ed:0,ts:n.cl?{cl:{...n.cl}}:{}};if(s)return c;for(let e=a.length-1;e>=0;e--){let n=a[e],{st:r,ed:i}=n;t>r&&t<=i&&(c.st=r,c.ed=i,c.ts={...c.ts,...n.ts})}if(t===0){let e=a==null?void 0:a[0];e&&e.st===0&&(c.ts={...c.ts,...e.ts})}return r&&(c.ts={...c.ts,...r}),c}function C(e,t,n){if(n){let n=e.find(e=>t>=e.startIndex&&t<=e.endIndex+1);return n!=null&&n.wholeEntity?null:n}let r=e.find(e=>t>e.startIndex&&t<=e.endIndex);return r!=null&&r.wholeEntity?null:r}function w(e,t){return e.filter(e=>t>e.startIndex&&t<=e.endIndex)}function T(e){"@babel/helpers - typeof";return T=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},T(e)}function E(e,t){if(T(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(T(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function D(e){var t=E(e,`string`);return T(t)==`symbol`?t:t+``}function O(e,t,n){return(t=D(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function k(e,t){return function(n,r){t(n,r,e)}}function A(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let j=class extends t.Disposable{constructor(e,t){super(),this._univerInstanceService=e,this._textSelectionManagerService=t,O(this,`_matches`,new Map)}registerAutoFormat(e){let n=this._matches.get(e.id);return n?(n.push(e),n.sort((e,t)=>(t.priority??0)-(e.priority??0))):this._matches.set(e.id,[e]),(0,t.toDisposable)(()=>{let t=this._matches.get(e.id);if(t){let n=t.findIndex(t=>t===e);n>=0&&t.splice(n,1)}})}onAutoFormat(e,n){let r=this._matches.get(e)??[],i=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),a=this._textSelectionManagerService.getDocRanges(),o=a.find(e=>e.isActive)??a[0],s=i==null?void 0:i.getSelfOrHeaderFooterModel((o==null?void 0:o.segmentId)??``);if(i&&o&&s){var c,l,u;let i={unit:s,selection:o,isBody:!o.segmentId,paragraphs:t.BuildTextUtils.range.getParagraphsInRange(o,((c=s.getBody())==null?void 0:c.paragraphs)??[],((l=s.getBody())==null?void 0:l.dataStream)??``),customRanges:t.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(o,((u=s.getBody())==null?void 0:u.customRanges)??[]),commandId:e,commandParams:n},a=r.find(e=>e.match(i));return(a==null?void 0:a.getMutations(i))??[]}return[]}};j=A([k(0,t.IUniverInstanceService),k(1,(0,t.Inject)(n.DocSelectionManagerService))],j);let M={id:`doc.command.tab`,type:t.CommandType.COMMAND,async handler(e,n){return(await(0,t.sequenceExecuteAsync)(e.get(j).onAutoFormat(M.id,n),e.get(t.ICommandService))).result}},N={id:`doc.command.after-space`,type:t.CommandType.COMMAND,async handler(e){return(await(0,t.sequenceExecuteAsync)(e.get(j).onAutoFormat(N.id),e.get(t.ICommandService))).result}},P={id:`doc.command.enter`,type:t.CommandType.COMMAND,async handler(e){return(await(0,t.sequenceExecuteAsync)(e.get(j).onAutoFormat(P.id),e.get(t.ICommandService))).result}},F={ff:`Arial`,fs:11},I=class extends t.Disposable{constructor(e,t,n,r){super(),this._textSelectionManagerService=e,this._univerInstanceService=t,this._renderManagerService=n,this._themeService=r,O(this,`_cacheStyle`,null),this._init()}_init(){this._listenDocRangeChange()}_listenDocRangeChange(){this.disposeWithMe(this._textSelectionManagerService.textSelection$.subscribe(()=>{this._clearStyleCache()}))}getStyleCache(){return this._cacheStyle}getDefaultStyle(){var e;let i={...F,cl:{rgb:this._themeService.getColorFromTheme(`gray.900`)}},a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(a==null)return{...i};let o=a==null?void 0:a.getUnitId(),s=(e=this._renderManagerService.getRenderUnitById(o))==null?void 0:e.with(n.DocSkeletonManagerService),c=s==null?void 0:s.getViewModel();return c==null||c.getEditArea()===r.DocumentEditArea.BODY?{...i}:{...i,fs:9}}setStyleCache(e){this._cacheStyle={...this._cacheStyle,...e}}_clearStyleCache(){this._cacheStyle=null}};I=A([k(0,(0,t.Inject)(n.DocSelectionManagerService)),k(1,t.IUniverInstanceService),k(2,r.IRenderManagerService),k(3,(0,t.Inject)(t.ThemeService))],I);let L={id:`doc.command.break-line`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a,o;let s=e.get(n.DocSelectionManagerService),c=e.get(t.IUniverInstanceService),l=e.get(t.ICommandService),u=e.get(I),d=(r==null?void 0:r.textRange)??s.getActiveTextRange(),f=s.getRectRanges();if(d==null)return!1;if(f&&f.length){let{startOffset:e}=d;return s.replaceDocRanges([{startOffset:e,endOffset:e}]),!0}let{horizontalLine:p,insertionMode:m=`split-paragraph`}=r??{},{segmentId:h}=d,g=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),_=g==null||(i=g.getSelfOrHeaderFooterModel(h??``))==null?void 0:i.getBody();if(g==null||_==null)return!1;let v=g.getUnitId(),{startOffset:y,endOffset:x}=d,C=_.paragraphs??[],w=b(_.dataStream,y)&&_.dataStream[y]!==t.DataStreamTreeTokenType.PARAGRAPH,T=m===`insert-gap`||w,E=T?void 0:C.find(e=>e.startIndex>=y);if(!E&&!T)return!1;let D=y===(E==null?void 0:E.startIndex),O=E==null?void 0:E.startIndex,k=S(_,x,u.getDefaultStyle(),u.getStyleCache()),A={dataStream:t.DataStreamTreeTokenType.PARAGRAPH,paragraphs:(0,n.generateParagraphs)(t.DataStreamTreeTokenType.PARAGRAPH,E,p),textRuns:[{st:0,ed:1,ts:{...k.ts}}]};if(g==null)return!1;let j=s.getActiveTextRange();if(_==null)return!1;let{collapsed:M}=d,N=T?0:A.dataStream.length,P=[{startOffset:y+N,endOffset:y+N,style:j==null?void 0:j.style,collapsed:M}],F={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:P,debounce:!0,trigger:L.id}},R=new t.TextX,z=t.JSONX.getInstance();if(M)y>0&&R.push({t:t.TextXActionType.RETAIN,len:y}),R.push({t:t.TextXActionType.INSERT,body:A,len:A.dataStream.length});else{let e=t.BuildTextUtils.selection.delete([d],_,0,A);R.push(...e)}if(E&&(((a=E.bullet)==null?void 0:a.listType)===t.PresetListType.CHECK_LIST_CHECKED||(o=E.paragraphStyle)!=null&&o.headingId)){var B;O!=null&&d.endOffset<O&&R.push({t:t.TextXActionType.RETAIN,len:O-d.endOffset}),R.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{...E,paragraphStyle:{...E.paragraphStyle,...D?{headingId:void 0,namedStyleType:void 0}:null},startIndex:0,bullet:(B=E.paragraphStyle)!=null&&B.headingId?void 0:{...E.bullet,listType:t.PresetListType.CHECK_LIST}}]},coverType:t.UpdateDocsAttributeType.REPLACE})}F.params.textRanges=[{startOffset:y+N,endOffset:y+N,collapsed:M}];let ee=(0,t.getRichTextEditPath)(g,h);return F.params.actions=z.editOp(R.serialize(),ee),!!l.syncExecuteCommand(F.id,F.params)}},R=(0,t.createIdentifier)(`doc.clipboard-paste-adapter.service`);var z=class{constructor(){O(this,`_adapters`,[])}registerAdapter(e){return this._adapters.push(e),(0,t.toDisposable)(()=>{let t=this._adapters.indexOf(e);t>=0&&this._adapters.splice(t,1)})}getPasteMutationInfos(e){let t={redoMutations:[],undoMutations:[]};for(let r of this._adapters){var n;let i=(n=r.getPasteMutationInfos)==null?void 0:n.call(r,e);i&&(t.redoMutations.push(...i.redoMutations),t.undoMutations.push(...i.undoMutations))}return t}};function B(e,t){var i;return(i=e.get(r.IRenderManagerService).getRenderUnitById(t))==null?void 0:i.with(n.DocSkeletonManagerService)}function ee(e,n){let r=t.DataStreamTreeTokenType.TABLE_START,i=[],a=[],o=new Set,s=new Set;for(let c=0;c<e;c++){r+=t.DataStreamTreeTokenType.TABLE_ROW_START;for(let e=0;e<n;e++)r+=`${t.DataStreamTreeTokenType.TABLE_CELL_START}\r\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`,i.push({startIndex:r.length-3,paragraphId:(0,t.createParagraphId)(o),paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),a.push({sectionId:(0,t.createSectionId)(s),startIndex:r.length-2});r+=t.DataStreamTreeTokenType.TABLE_ROW_END}return r+=t.DataStreamTreeTokenType.TABLE_END,{dataStream:r,paragraphs:i,sectionBreaks:a}}function V(){return{margin:{start:{v:10},end:{v:10},top:{v:5},bottom:{v:5}}}}function H(e){let n=V();return{tableCells:[...Array(e).fill(null).map(()=>t.Tools.deepClone(n))],trHeight:{val:{v:30},hRule:t.TableRowHeightRule.AUTO}}}function U(e){return{size:{type:t.TableSizeType.SPECIFIED,width:{v:e}}}}function W(e,n,r){let i=U(r/n),a=H(n);return{tableRows:[...Array(e).fill(null).map(()=>t.Tools.deepClone(a))],tableColumns:[...Array(n).fill(null).map(()=>t.Tools.deepClone(i))],tableId:(0,t.generateRandomId)(6),align:t.TableAlignmentType.START,indent:{v:0},textWrap:t.TableTextWrapType.NONE,position:{positionH:{relativeFrom:t.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:t.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:t.TableSizeType.UNSPECIFIED,width:{v:r}}}}function G(e,t){if(!e&&!t)return null;if(t&&t.length>0){let e=1/0,n=-1/0;for(let r of t){let{startOffset:t,endOffset:i,segmentId:a}=r;t!=null&&i!=null&&a!=null&&(e=Math.min(e,t),n=Math.max(n,i))}if(Number.isFinite(e)&&Number.isFinite(n))return{startOffset:e,endOffset:n,segmentId:``}}else if(e){let{startOffset:t,endOffset:n,segmentId:r}=e;return t==null||n==null||r==null?null:{startOffset:t,endOffset:n,segmentId:r}}}function te(e){let n=t.DataStreamTreeTokenType.TABLE_ROW_START,r=[],i=[],a=new Set,o=new Set;for(let s=0;s<e;s++)n+=`${t.DataStreamTreeTokenType.TABLE_CELL_START}\r\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`,r.push({startIndex:n.length-3,paragraphId:(0,t.createParagraphId)(a),paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),i.push({sectionId:(0,t.createSectionId)(o),startIndex:n.length-2});return n+=t.DataStreamTreeTokenType.TABLE_ROW_END,{dataStream:n,paragraphs:r,sectionBreaks:i}}function ne(){let e=`${t.DataStreamTreeTokenType.TABLE_CELL_START}\r\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`,n=[],r=[];return n.push({startIndex:1,paragraphId:(0,t.createParagraphId)(new Set),paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),r.push({sectionId:(0,t.createSectionId)(new Set),startIndex:2}),{dataStream:e,paragraphs:n,sectionBreaks:r}}function re(e,t,n){var r;let{startOffset:i,endOffset:a,segmentId:o}=e,s=n.getSelfOrHeaderFooterViewModel(o),c=t===0?i:a,l=null,u=(r=n.getBody())==null||(r=r.tables)==null||(r=r.find(e=>c>=e.startIndex&&c<=e.endIndex))==null?void 0:r.tableId,d=0;for(let e of s.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){for(let e of n.children)if(e.startIndex<=c&&c<=e.endIndex){d=n.children.indexOf(e),l=e;break}}if(l)break}if(l)break}return l==null||u==null?null:{offset:t===0?l.startIndex:l.endIndex+1,colCount:l.children.length,tableId:u,insertRowIndex:t===0?d:d+1}}function ie(e,t,n){var r;let{startOffset:i,endOffset:a,segmentId:o}=e,s=n.getSelfOrHeaderFooterViewModel(o),c=t===0?i:a,l=(r=n.getBody())==null||(r=r.tables)==null||(r=r.find(e=>c>=e.startIndex&&c<=e.endIndex))==null?void 0:r.tableId,u=[],d=null,f=-1;for(let e of s.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(c<n.startIndex||c>n.endIndex)continue;d=n;for(let e of n.children){for(let t of e.children){let n=e.children.indexOf(t);if(c>=t.startIndex&&c<=t.endIndex){f=n;break}}if(f!==-1)break}}if(d)break}if(d)break}if(d==null||l==null||f===-1)return null;let p=0;for(let e of d.children){let n=e.children[f],r=t===0?n.startIndex:n.endIndex+1;u.push(r-p),p=r}return{offsets:u,tableId:l,columnIndex:f,rowCount:d.children.length}}function ae(e,t,n){let r=[],i=t[n].size.width.v,a=0;for(let e=0;e<t.length;e++)a+=t[e].size.width.v;a+=i;for(let n=0;n<t.length;n++)r.push(t[n].size.width.v/a*e);return i=i/a*e,{widths:r,newColWidth:i}}function oe(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=[],l=-1,u=0,d=-1,f=!1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;d=n.startIndex+3;for(let e of n.children){let t=n.children.indexOf(e),{startIndex:a,endIndex:o}=e;r>=a&&r<=o?(l=a,c.push(t),u+=o-a+1):(a>r&&o<i||i>=a&&i<=o)&&(c.push(t),u+=o-a+1),c.length===n.children.length&&(f=!0)}}if(c.length)break}if(c.length)break}return s==null||c.length===0?null:{tableId:s,rowIndexes:c,offset:l,len:u,cursor:d,selectWholeTable:f}}function K(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=[],l=null,u=[],d=-1,f=-1,p=-1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;l=n;for(let e of n.children)for(let t of e.children){let n=e.children.indexOf(t);r>=t.startIndex&&r<=t.endIndex&&(f=n),i>=t.startIndex&&i<=t.endIndex&&(p=n)}}if(l)break}if(l)break}if(l==null||s==null)return null;for(let e=f;e<=p;e++)u.push(e);let m=0;for(let e of l.children){let t=e.children[f],n=e.children[p];c.push({retain:t.startIndex-m,delete:n.endIndex-t.startIndex+1}),m=n.endIndex+1}return d=l.startIndex+3,{offsets:c,tableId:s,columnIndexes:u,cursor:d,selectWholeTable:u.length===l.children[0].children.length,rowCount:l.children.length}}function q(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=-1,l=0,u=-1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;c=n.startIndex,l=n.endIndex-n.startIndex+1,u=n.startIndex}if(n)break}if(l>0)break}return s==null?null:{tableId:s,offset:c,len:l,cursor:u}}function se(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=[],l=null,u=-1,d=-1,f=-1,p=-1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;l=n;for(let e of n.children){let t=n.children.indexOf(e);for(let n of e.children){let a=e.children.indexOf(n);r>=n.startIndex&&r<=n.endIndex&&(d=t,f=a),i>=n.startIndex&&i<=n.endIndex&&(p=a)}}}if(l)break}if(l)break}if(l==null||s==null||d===-1)return null;let m=l.children[d];for(let e=f;e<=p;e++){let t=m.children[e];c.push({retain:t.startIndex+1,delete:t.endIndex-t.startIndex-3})}return u=l.startIndex+3,{offsets:c,tableId:s,cursor:u,rowCount:l.children.length}}function ce(e,t,n){let{startOffset:r}=t,i=null;for(let t of e.getChildren()){for(let e of t.children){let t=e.children[0];if(t&&r>t.startIndex&&r<t.endIndex){i=t;break}}if(i)break}if(i==null)return null;let a=-1,o=-1,s=null;for(let e of i.children){for(let t of e.children)if(r>t.startIndex&&r<t.endIndex){a=e.children.indexOf(t),o=i.children.indexOf(e),s=e;break}if(a>-1)break}if(a===-1||o===-1||s==null)return null;let c=null;if(n===0){if(c=s.children[a+1],!c){let e=i.children[o+1];e&&(c=e.children[0])}}else if(c=s.children[a-1],!c){let e=i.children[o-1];e&&(c=e.children[e.children.length-1])}if(c){let{startIndex:e,endIndex:t}=c;return{startOffset:e+1,endOffset:t-2}}}function le(e){return e.some(e=>{let{startNodePosition:t}=e;return t?(t==null?void 0:t.path.indexOf(`cells`))>-1:!1})}let ue=t.SHEET_EDITOR_UNITS,de={id:`doc.command.inner-paste`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i,a,o,s,c;let{customRangeMappings:l=[],segmentId:u,textRanges:d,doc:f}=r,p=e.get(t.ICommandService),m=e.get(t.IUndoRedoService),h=e.get(n.DocSelectionManagerService),g=e.get(t.IUniverInstanceService),_=fe(e),v=h.getTextRanges()??[],y=h.getRectRanges()??[],b=h.getSelectionInfo(),{body:x,tableSource:S,drawings:T}=f;if(v.length===0&&y.length===0||x==null)return!1;let E=g.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),D=E==null||(i=E.getSelfOrHeaderFooterModel(u))==null?void 0:i.getBody();if(E==null||D==null)return!1;let O=E.getUnitId(),k={id:n.RichTextEditingMutation.id,params:{unitId:O,actions:[],textRanges:d,segmentId:u,trigger:de.id}},A=new t.MemoryCursor;A.reset();let j=new t.TextX,M=t.JSONX.getInstance(),N=[],P=[],F=[],I=[],L=!!((a=x.tables)!=null&&a.length),R=!!((o=x.customBlocks)!=null&&o.length),z=!!((s=x.blockRanges)!=null&&s.length);if(L&&u||L&&(le(v)||y.some(e=>!e.spanEntireTable)))return!1;let ee=y.length>0||(b==null||(c=b.options)==null?void 0:c.wholeDocument)===!0,V=[],H=v;if(ee){var U,W;let t=B(e,O);if(!t)return!1;let n=(b==null||(U=b.options)==null?void 0:U.wholeDocument)===!0||J(v,y,D),r=n?0:Ce(v,y);if(r==null)return!1;V=xe(v,y,E,t.getViewModel(),u,n),H=[{startOffset:r,endOffset:r,collapsed:!0,segmentId:u}],k.params.textRanges=[{startOffset:r+x.dataStream.length,endOffset:r+x.dataStream.length,collapsed:!0,segmentId:u,style:(W=v.find(e=>e.isActive))==null?void 0:W.style}]}for(let e=0;e<H.length;e++){let n=H[e],{startOffset:r,endOffset:i,collapsed:a}=n,o=r-A.cursor,s=t.Tools.deepClone(x),c=[],d=[],p=l.map(({sourceRange:e})=>({sourceRange:e,targetRange:t.BuildTextUtils.customRange.copyCustomRange(e)}));if(p.length>0&&(s.customRanges=p.map(({targetRange:e})=>e)),z&&s.blockRanges.forEach((e,n)=>{let r=x.blockRanges[n];e.blockId=(0,t.generateRandomId)(6),c.push({sourceBlockRange:r,targetBlockRange:e})}),L)for(let e of s.tables){let{tableId:n}=e,r=(0,t.generateRandomId)(6);e.tableId=r;let i=t.Tools.deepClone(S[n]);i.tableId=r;let a=M.insertOp([`tableSource`,r],i);N.push(a)}if(R&&T){var G;let e=((G=E.getSnapshot().drawingsOrder)==null?void 0:G.length)??0;for(let e of s.customBlocks){let{blockId:n}=e,r=(0,t.generateRandomId)(6);e.blockId=r;let i=T[n],a=t.Tools.deepClone(i);a.drawingId=r,d.push({sourceBlockId:n,targetBlockId:r,sourceDrawing:i,targetDrawing:a})}d.forEach(({targetBlockId:t,targetDrawing:n})=>{let r=M.insertOp([`drawings`,t],n),i=M.insertOp([`drawingsOrder`,e],t);N.push(r),N.push(i)})}if((c.length>0||d.length>0||p.length>0)&&_){let e=_.getPasteMutationInfos({unitId:O,segmentId:u,doc:f,sourceBody:x,targetBody:s,blockRangeMappings:c,customRangeMappings:p,customBlockMappings:d});(e.redoMutations.length>0||e.undoMutations.length>0)&&(P.push(...e.redoMutations),F.push(...e.undoMutations),I.push(e))}let m=C(D.customRanges??[],i,ue.includes(O)),h=w(D.customDecorations??[],i);if(m&&(s.customRanges=[{...m,startIndex:0,endIndex:x.dataStream.length-1}]),h.length&&(s.customDecorations=h.map(e=>({...e,startIndex:0,endIndex:x.dataStream.length-1}))),a)j.push({t:t.TextXActionType.RETAIN,len:o}),j.push({t:t.TextXActionType.INSERT,body:s,len:x.dataStream.length});else{let e=t.BuildTextUtils.selection.delete([n],x,A.cursor,s,H.length===1);j.push(...e)}A.reset(),A.moveCursor(i)}let te=(0,t.getRichTextEditPath)(E,u);N.push(M.editOp(j.serialize(),te));let ne=N.reduce((e,n)=>t.JSONX.compose(e,n),null);if(k.params.actions=V&&V.length>0?t.JSONX.compose(V,ne):ne,!pe(I,p))return!1;let re=`doc-paste-resource:${O}:${Date.now()}`,ie=null;(P.length>0||F.length>0)&&(ie=m.__tempBatchingUndoRedo(O),m.pushUndoRedo({unitID:O,redoMutations:P,undoMutations:F,id:re}));let ae=p.syncExecuteCommand(k.id,k.params);return!ae&&ie!=null?(ie.dispose(),m.rollback(re,O),!1):(ie==null||ie.dispose(),!!ae)}};function fe(e){try{return e.get(R)}catch{return null}}function pe(e,t){let n=[];for(let r of e){if(!he(r.redoMutations,t))return me([...n].reverse(),t),!1;n.push(r.undoMutations)}return!0}function me(e,t){e.forEach(e=>{he(e,t)})}function he(e,t){for(let n of e)if(!t.syncExecuteCommand(n.id,n.params))return!1;return!0}function ge(e,t){let{startOffset:n,endOffset:r}=e,i=t.some(e=>e.startIndex===r),a=Math.max(n,i?r-1:r);return{...e,endOffset:a,collapsed:n===a}}function _e(e,n,r){var i;let a=(i=n.getSelfOrHeaderFooterModel(r))==null?void 0:i.getBody(),o=new t.TextX,s=t.JSONX.getInstance(),c=[];if(a==null)return c;let{tables:l=[]}=a,u=e.map(e=>ge(e,l));o.push(...t.BuildTextUtils.selection.delete(u,a,0,null,!1));let d=(0,t.getRichTextEditPath)(n,r);c.push(s.editOp(o.serialize(),d));let f=(0,t.getCustomBlockIdsInSelections)(a,e),p=n.getDrawings()??{},m=n.getDrawingsOrder()??[],h=f.sort((e,t)=>m.indexOf(e)>m.indexOf(t)?-1:+(m.indexOf(e)<m.indexOf(t)));if(h.length>0)for(let e of h){let t=p[e],n=m.indexOf(e);if(t==null||n<0)continue;let r=s.removeOp([`drawings`,e],t),i=s.removeOp([`drawingsOrder`,n],e);c.push(r),c.push(i)}return c.reduce((e,n)=>t.JSONX.compose(e,n),null)}let ve=new Set([t.DataStreamTreeTokenType.PARAGRAPH,t.DataStreamTreeTokenType.SECTION_BREAK,t.DataStreamTreeTokenType.BLOCK_START,t.DataStreamTreeTokenType.BLOCK_END,t.DataStreamTreeTokenType.COLUMN_GROUP_START,t.DataStreamTreeTokenType.COLUMN_START,t.DataStreamTreeTokenType.COLUMN_END,t.DataStreamTreeTokenType.COLUMN_GROUP_END]);function J(e,n,r){let i=(Array.isArray(e)?e:[]).filter(e=>!e.collapsed).map(({startOffset:e,endOffset:t})=>({startOffset:e,endOffset:t}));for(let e of Array.isArray(n)?n:[]){if(!e.spanEntireTable)continue;let n=(r.tables??[]).find(t=>e.tableId&&t.tableId===e.tableId||t.startIndex===e.startOffset);n&&i.push((0,t.getTableRangeInterval)(n))}i.sort((e,t)=>e.startOffset-t.startOffset||e.endOffset-t.endOffset);let a=Math.max(0,r.dataStream.length-2),o=0;for(let e=0;e<a;e++){for(var s;((s=i[o])==null?void 0:s.endOffset)<=e;)o++;let t=i[o];if(!(t&&t.startOffset<=e&&e<t.endOffset)&&!ve.has(r.dataStream[e]))return!1}return a>0}function ye(e,n,r){var i;let a=(i=n.getSelfOrHeaderFooterModel(r))==null?void 0:i.getBody();if(!a)return[];let o={dataStream:t.DataStreamTreeTokenType.PARAGRAPH,paragraphs:[{paragraphId:(0,t.createParagraphId)(new Set((a.paragraphs??[]).map(e=>e.paragraphId))),startIndex:0}]},s=Math.max(0,a.dataStream.length-1),c=new t.TextX;c.push({t:t.TextXActionType.INSERT,len:o.dataStream.length,body:o}),c.push({t:t.TextXActionType.DELETE,len:s});let l=t.JSONX.getInstance(),u=(0,t.getRichTextEditPath)(n,r),d=[],f=l.editOp(c.serialize(),u);f&&d.push(f);let p=n.getDrawings()??{},m=n.getDrawingsOrder()??[],h=(0,t.getCustomBlockIdsInSelections)(a,[{...e[0]??{collapsed:!1},startOffset:0,endOffset:s,collapsed:!1}]).sort((e,t)=>m.indexOf(t)-m.indexOf(e));for(let e of h){let t=p[e],n=m.indexOf(e);if(t==null||n<0)continue;let r=l.removeOp([`drawings`,e],t),i=l.removeOp([`drawingsOrder`,n],e);r&&d.push(r),i&&d.push(i)}for(let e of a.tables??[]){let t=l.removeOp([`tableSource`,e.tableId]);t&&d.push(t)}let g=null;for(let e of d)g=g==null?e:t.JSONX.compose(g,e);return g??[]}function be(e,n,r,i){var a;let o=[];if(((a=n.getSelfOrHeaderFooterModel(i))==null?void 0:a.getBody())==null)return o;let s=new t.TextX,c=t.JSONX.getInstance(),l=new t.MemoryCursor;l.reset();for(let n of e){let{startOffset:e,endOffset:a,spanEntireRow:u,spanEntireTable:d}=n;if(e!=null&&a!=null)if(d){let n=q({startOffset:e,endOffset:a,segmentId:i},r);if(n==null)continue;let{offset:u,len:d,tableId:f}=n;u-l.cursor>0&&s.push({t:t.TextXActionType.RETAIN,len:u-l.cursor}),s.push({t:t.TextXActionType.DELETE,len:d});let p=c.removeOp([`tableSource`,f]);o.push(p),l.moveCursorTo(u+d)}else if(u){let n=oe({startOffset:e,endOffset:a,segmentId:i},r);if(n==null)continue;let{offset:u,rowIndexes:d,len:f,tableId:p}=n;u-l.cursor>0&&s.push({t:t.TextXActionType.RETAIN,len:u-l.cursor}),s.push({t:t.TextXActionType.DELETE,len:f});for(let e of d.reverse()){let t=c.removeOp([`tableSource`,p,`tableRows`,e]);o.push(t)}l.moveCursorTo(u+f)}else{let n=se({startOffset:e,endOffset:a,segmentId:i},r);if(n==null)continue;let{offsets:o}=n;for(let e of o){let{retain:n,delete:r}=e;n-l.cursor>0&&s.push({t:t.TextXActionType.RETAIN,len:n-l.cursor}),s.push({t:t.TextXActionType.DELETE,len:r}),l.moveCursorTo(n+r)}}}let u=(0,t.getRichTextEditPath)(n,i);return o.push(c.editOp(s.serialize(),u)),o.reduce((e,n)=>t.JSONX.compose(e,n),null)}function xe(e,n,r,i,a,o=!1){var s;let c=[],l=(s=r.getSelfOrHeaderFooterModel(a))==null?void 0:s.getBody();if(l&&Array.isArray(e)&&Array.isArray(n)&&(o||J(e,n,l)))return ye(e,r,a);if(Array.isArray(e)&&(e==null?void 0:e.length)!==0&&(c=_e(e,r,a)),Array.isArray(n)&&(n==null?void 0:n.length)!==0){let e=be(n,r,i,a);c=c==null||c.length===0?e:t.JSONX.compose(c,t.JSONX.transform(e,c,`right`))}return c}function Se(e,n,r,i,a,o,s=!1){var c;let l=(c=r.getSelfOrHeaderFooterModel(a))==null?void 0:c.getBody(),u=s||l&&J(e,n,l)?0:Ce(e,n);if(u==null)return null;let d=xe(e,n,r,i,a,s),f=new t.TextX;u>0&&f.push({t:t.TextXActionType.RETAIN,len:u}),o.dataStream.length>0&&f.push({t:t.TextXActionType.INSERT,body:o,len:o.dataStream.length});let p=t.JSONX.getInstance().editOp(f.serialize(),(0,t.getRichTextEditPath)(r,a));return{actions:p==null?d:d==null||d.length===0?p:t.JSONX.compose(d,p),insertOffset:u}}function Ce(e,t){let n=[...Array.isArray(e)?e:[],...Array.isArray(t)?t:[]].filter(e=>e.startOffset!=null&&e.endOffset!=null).reduce((e,t)=>Math.min(e,t.startOffset),1/0);return Number.isFinite(n)?n:null}let we={id:`doc.command.inner-cut`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.ICommandService),s=e.get(t.IUniverInstanceService),c=a.getSelectionInfo(),{segmentId:l,textRanges:u,selections:d=a.getTextRanges(),rectRanges:f=a.getRectRanges(),wholeBodySelected:p=(c==null||(i=c.options)==null?void 0:i.wholeDocument)===!0}=r;if((!Array.isArray(d)||d.length===0)&&(!Array.isArray(f)||f.length===0))return!1;let m=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(m==null)return!1;let h=m.getUnitId(),g=B(e,h);if(g==null)return!1;let _=g.getViewModel(),v={id:n.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:u,trigger:we.id}};return v.params.actions=xe(d,f,m,_,l,p),!!o.syncExecuteCommand(v.id,v.params)}};function Te(e){var r,i;let a=e.get(t.IUniverInstanceService),o=e.get(n.DocSelectionManagerService).getActiveTextRange(),s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);return!o||!o.collapsed||!s||o.segmentId?!1:t.BuildTextUtils.range.getParagraphsInRange(o,((r=s.getBody())==null?void 0:r.paragraphs)??[],((i=s.getBody())==null?void 0:i.dataStream)??``)[0]}let Ee={id:`doc.command.delete-custom-block`,type:t.CommandType.COMMAND,handler:async(e,r)=>{let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),{direction:s,range:c,unitId:l,drawingId:u}=r,d=i.getActiveTextRange(),f=a.getUnit(l,t.UniverInstanceType.UNIVER_DOC);if(d==null||f==null)return!1;let{startOffset:p,segmentId:m,style:h}=d,g=s===t.DeleteDirection.LEFT?p-1:p,_=[{startOffset:g,endOffset:g,style:h}],v={id:n.RichTextEditingMutation.id,params:{unitId:l,actions:[],textRanges:_,prevTextRanges:[c]}},y=new t.TextX,b=t.JSONX.getInstance(),x=[];p>0&&y.push({t:t.TextXActionType.RETAIN,len:s===t.DeleteDirection.LEFT?p-1:p}),y.push({t:t.TextXActionType.DELETE,len:1});let S=(0,t.getRichTextEditPath)(f,m);x.push(b.editOp(y.serialize(),S));let C=(f.getDrawings()??{})[u],w=f.getDrawingsOrder().indexOf(u),T=b.removeOp([`drawings`,u],C),E=b.removeOp([`drawingsOrder`,w],u);return x.push(T),x.push(E),v.params.actions=x.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(v.id,v.params)}},De={id:`doc.command.merge-two-paragraph`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),{direction:c,range:l}=r,u=a.getActiveTextRange(),d=a.getTextRanges();if(u==null||d==null)return!1;let{segmentId:f,style:p}=u,m=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),h=m==null||(i=m.getSelfOrHeaderFooterModel(f))==null?void 0:i.getBody();if(m==null||h==null)return!1;let g=h.dataStream,_=u,v=m.getUnitId(),{startOffset:y,collapsed:b}=_;if(!b)return!1;let x=c===t.DeleteDirection.LEFT?y:y+1,S,C;for(let e of h.paragraphs){if(e.startIndex>=x){C=e;break}S=e}if(S==null||C==null)return!1;let w=c===t.DeleteDirection.LEFT?y-1:y,T=[{startOffset:w,endOffset:w,style:p}],E={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:T,prevTextRanges:[l]}},D=new t.TextX,O=t.JSONX.getInstance();S.startIndex>0&&D.push({t:t.TextXActionType.RETAIN,len:S.startIndex}),D.push({t:t.TextXActionType.DELETE,len:1}),C.startIndex>S.startIndex+1&&D.push({t:t.TextXActionType.RETAIN,len:C.startIndex-S.startIndex-1});let k=Object.values(t.DataStreamTreeTokenType),A=g[S.startIndex-1];(A&&!k.includes(A)||A===` `)&&D.push({t:t.TextXActionType.RETAIN,len:1,coverType:t.UpdateDocsAttributeType.REPLACE,body:{dataStream:``,paragraphs:[{...t.Tools.deepClone(S),startIndex:0}]}});let j=(0,t.getRichTextEditPath)(m,f);return E.params.actions=O.editOp(D.serialize(),j),!!s.syncExecuteCommand(E.id,E.params)}},Oe={id:`doc.command.remove-horizontal-line`,type:t.CommandType.COMMAND,handler:async e=>{var r,i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=a.getActiveTextRange(),l=a.getTextRanges();if(c==null||l==null)return!1;let{segmentId:u,style:d}=c,f=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),p=f==null||(r=f.getSelfOrHeaderFooterModel(u))==null?void 0:r.getBody();if(f==null||p==null)return!1;let m=c,h=f.getUnitId(),{startOffset:g,collapsed:_}=m;if(!_)return!1;let v=(i=p.paragraphs)==null?void 0:i.find(e=>e.startIndex===g-1);if(v==null)return!1;let y=[{startOffset:g,endOffset:g,style:d}],b={id:n.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:y}},x=new t.TextX,S=t.JSONX.getInstance();v.startIndex>0&&x.push({t:t.TextXActionType.RETAIN,len:v.startIndex}),x.push({t:t.TextXActionType.RETAIN,len:1,coverType:t.UpdateDocsAttributeType.REPLACE,body:{dataStream:``,paragraphs:[{...t.Tools.deepClone({...v,paragraphStyle:{...v.paragraphStyle,borderBottom:void 0}}),startIndex:0}]}});let C=(0,t.getRichTextEditPath)(f,u);return b.params.actions=S.editOp(x.serialize(),C),!!s.syncExecuteCommand(b.id,b.params)}};function ke(e,t){let n=0;if(e==null||e.length===0){if(typeof t[0].startOffset==`number`){let e=t[0],{spanEntireRow:r,spanEntireTable:i}=e;n=i?e.startOffset-3:r?e.startRow>0?e.startOffset-6:e.startOffset:t[0].startOffset}}else if(e.length>0&&t.length>0){let r=e[0],i=t[0];if(r.startOffset!=null&&i.startOffset!=null){if(r.startOffset<i.startOffset)n=r.startOffset;else if(r.startOffset>=i.startOffset){let{spanEntireRow:e,spanEntireTable:t}=i;t?n=i.startOffset-3:e&&(n=i.startOffset-6)}}}return n}function Ae(e,n){var r;return((r=e.blockRanges)==null?void 0:r.some(e=>{let r=(0,t.getBlockRangeInterval)(e);return r.startOffset<n&&n<r.endOffset-1}))??!1}let je={id:`doc.command.delete-left`,type:t.CommandType.COMMAND,handler:async e=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=!0,l=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(l==null)return!1;let u=B(e,l.getUnitId()),d=a.getActiveTextRange(),f=a.getRectRanges(),p=a.getTextRanges(),m=u==null?void 0:u.getSkeleton();if(m==null)return!1;if(f!=null&&f.length){let e=ke(p,f),t=f[0].segmentId,n=[{startOffset:e,endOffset:e}];return s.executeCommand(we.id,{segmentId:t,textRanges:n})}if(d==null||p==null)return!1;let h=await Ne(e,je.id);if(h!=null)return h;let{segmentId:g,style:_,segmentPage:v}=d,y=(i=l.getSelfOrHeaderFooterModel(g))==null?void 0:i.getBody();if(y==null)return!1;let b=d,{startOffset:x,collapsed:S}=b;if(S){let e=Fe(y,x);if(e!=null)return Ie(s,l,g??``,e,_)}let C=m.findNodeByCharIndex(x,g,v),w=(0,r.hasListGlyph)(C),T=(0,r.isIndentByGlyph)(C,y),E=x,D=m.findNodeByCharIndex(x-1,g,v);if(!Ae(y,x)&&(0,r.isFirstGlyph)(C)&&D!==C&&(w===!0||T===!0)&&S){let e=(0,r.getParagraphByGlyph)(C,y);if(e==null)return!1;let i=e==null?void 0:e.startIndex,a={startIndex:0,paragraphId:e.paragraphId},o=e.paragraphStyle;if(w===!0){if(o){a.paragraphStyle={...o};let{hanging:e}=o;e&&(a.paragraphStyle.indentStart={...e},a.paragraphStyle.hanging=void 0)}}else if(T===!0){let t=e.bullet;t&&(a.bullet=t),o&&(a.paragraphStyle={...o},delete a.paragraphStyle.hanging,delete a.paragraphStyle.indentStart)}let u=[{startOffset:E,endOffset:E,collapsed:!0,style:_}];c=await s.executeCommand(n.UpdateTextCommand.id,{unitId:l.getUnitId(),updateBody:{dataStream:``,paragraphs:[{...a}]},range:{startOffset:i,endOffset:i+1,collapsed:!0},textRanges:u,coverType:t.UpdateDocsAttributeType.REPLACE,segmentId:g})}else if(S===!0){if(D==null)return!0;if(D.content===`\r`){var O,k;let e=(O=y.paragraphs)==null?void 0:O.find(e=>e.startIndex===x-1);c=e!=null&&(k=e.paragraphStyle)!=null&&k.borderBottom?await s.executeCommand(Oe.id):await s.executeCommand(De.id,{direction:t.DeleteDirection.LEFT,range:b})}else if(D.streamType===`\b`){var A,j;let e=(A=l.getSnapshot().drawings)==null?void 0:A[D.drawingId??``];if(e==null)return!0;let r=(j=l.getBody())==null||(j=j.customBlocks)==null?void 0:j.find(e=>e.blockId===D.drawingId);if(e.layoutType===t.PositionedObjectLayoutType.INLINE||(r==null?void 0:r.blockType)===t.BlockType.CUSTOM){let e=l.getUnitId();c=await s.executeCommand(Ee.id,{direction:t.DeleteDirection.LEFT,range:d,unitId:e,drawingId:D.drawingId})}else{let e=m.findNodeByCharIndex(x-2);if(e==null)return!0;E-=D.count,E-=e.count,c=await s.executeCommand(n.DeleteTextCommand.id,{unitId:l.getUnitId(),range:{...d,startOffset:d.startOffset-1,endOffset:d.endOffset-1},segmentId:g,direction:t.DeleteDirection.LEFT,len:e.count})}}else E-=D.count,c=await s.executeCommand(n.DeleteTextCommand.id,{unitId:l.getUnitId(),range:b,segmentId:g,direction:t.DeleteDirection.LEFT,len:D.count})}else{let e=Pe(b,[b]);c=await s.executeCommand(we.id,{segmentId:g,textRanges:e,selections:[b]})}return c}},Me={id:`doc.command.delete-right`,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!a)return!1;let o=B(e,a.getUnitId()),s=e.get(t.ICommandService),c=i.getActiveTextRange(),l=i.getRectRanges(),u=i.getTextRanges(),d=o==null?void 0:o.getSkeleton();if(l!=null&&l.length){let e=ke(u,l),t=l[0].segmentId,n=[{startOffset:e,endOffset:e}];return s.executeCommand(we.id,{segmentId:t,textRanges:n})}if(c==null||d==null||u==null)return!1;let f=await Ne(e,Me.id);if(f!=null)return f;let{segmentId:p,style:m,segmentPage:h}=c,g=a==null||(r=a.getSelfOrHeaderFooterModel(p))==null?void 0:r.getBody();if(!a||!g)return!1;let _=c,{startOffset:v,endOffset:y,collapsed:b}=_;if(b){let e=Fe(g,v);if(e!=null)return Ie(s,a,p??``,e,m)}if(v===g.dataStream.length-2&&b)return!0;let x=!1;if(b===!0){let e=d.findNodeByCharIndex(v,p,h),r=d.findNodeByCharIndex(v+1);if(e.streamType===t.DataStreamTreeTokenType.PARAGRAPH&&(r==null?void 0:r.streamType)===t.DataStreamTreeTokenType.SECTION_BREAK)return!1;if(e.content===`\r`)x=await s.executeCommand(De.id,{direction:t.DeleteDirection.RIGHT,range:c});else if(e.streamType===`\b`){var S;let i=(S=a.getSnapshot().drawings)==null?void 0:S[e.drawingId??``];if(i==null)return!0;if(i.layoutType===t.PositionedObjectLayoutType.INLINE){let n=a.getUnitId();x=await s.executeCommand(Ee.id,{direction:t.DeleteDirection.RIGHT,range:c,unitId:n,drawingId:e.drawingId})}else{if(r==null)return!0;x=await s.executeCommand(n.DeleteTextCommand.id,{unitId:a.getUnitId(),range:{...c,startOffset:v+1,endOffset:y+1},segmentId:p,direction:t.DeleteDirection.RIGHT,len:r.count})}}else x=await s.executeCommand(n.DeleteTextCommand.id,{unitId:a.getUnitId(),range:_,segmentId:p,direction:t.DeleteDirection.RIGHT,len:e.count})}else{let e=Pe(_,[_]);x=await s.executeCommand(we.id,{segmentId:p,textRanges:e,selections:[_]})}return x}};async function Ne(e,n){if(!e.has(j))return null;let r=e.get(t.ICommandService),i=e.get(j).onAutoFormat(n);return i.length?(await(0,t.sequenceExecuteAsync)(i,r)).result:null}function Pe(e,t){let n=e.endOffset;for(let r of t){let{startOffset:t,endOffset:i}=r;t!=null&&i!=null&&i<=e.endOffset&&(n-=i-t)}return[{startOffset:n,endOffset:n,style:e.style}]}function Fe(e,n){let r=e.paragraphs??[];for(let e=0;e<r.length;e++){var i;let a=r[e],o=e===0?0:r[e-1].startIndex+1;if(a.startIndex===o&&a.startIndex===n&&((i=a.paragraphStyle)==null?void 0:i.horizontalAlign)===t.HorizontalAlign.CENTER)return a}}function Ie(e,r,i,a,o){return e.executeCommand(n.UpdateTextCommand.id,{unitId:r.getUnitId(),updateBody:{dataStream:``,paragraphs:[{...a,startIndex:0,paragraphStyle:{...a.paragraphStyle,horizontalAlign:t.HorizontalAlign.LEFT}}]},range:{startOffset:a.startIndex,endOffset:a.startIndex+1,collapsed:!0},textRanges:[{startOffset:a.startIndex,endOffset:a.startIndex,collapsed:!0,style:o}],coverType:t.UpdateDocsAttributeType.REPLACE,segmentId:i})}let Le={id:`doc.command.delete-current-paragraph`,name:`doc.command.delete-current-paragraph`,multi:!0,priority:0,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(t.IUniverInstanceService),a=e.get(t.ICommandService),o=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!o)return!1;let s=((r=o.getBody())==null?void 0:r.dataStream)??``,c=Te(e);if(!c)return!1;let l=t.BuildTextUtils.selection.delete([{startOffset:c.paragraphStart,endOffset:s[c.paragraphEnd+1]===`
2
- `?c.paragraphEnd:c.paragraphEnd+1,collapsed:!1}],o.getBody(),0,void 0,!0),u=(0,t.getRichTextEditPath)(o),d={unitId:o.getUnitId(),actions:t.JSONX.getInstance().editOp(l,u),textRanges:[{startOffset:c.paragraphStart,endOffset:c.paragraphStart,collapsed:!0}]};return a.syncExecuteCommand(n.RichTextEditingMutation.id,d)}};function Re(e){let t=e.match(/data-copy-id="([^\s]+)"/);return t&&t[1]?t[1]:null}let ze=new class{constructor(){O(this,`_cache`,new t.LRUMap(10))}set(e,t){this._cache.set(e,t)}get(e){return this._cache.get(e)}clear(){this._cache.clear()}};function Be(e){let n=e.style,i={},a=e.tagName.toLowerCase();switch(a){case`b`:case`em`:case`strong`:i.bl=t.BooleanNumber.TRUE;break;case`s`:i.st={s:t.BooleanNumber.TRUE};break;case`u`:i.ul={s:t.BooleanNumber.TRUE};break;case`i`:i.it=t.BooleanNumber.TRUE;break;case`sub`:case`sup`:i.va=a===`sup`?t.BaselineOffset.SUPERSCRIPT:t.BaselineOffset.SUBSCRIPT;break}for(let e=0;e<n.length;e++){let a=n[e],o=n.getPropertyValue(a);switch(a){case`font-family`:i.ff=o.replace(/^"/g,``).replace(/"$/g,``);break;case`font-size`:{let e=Number.parseInt(o);Number.isNaN(e)||(o.endsWith(`pt`)?i.fs=e:o.endsWith(`px`)&&(i.fs=(0,r.pixelToPt)(e)));break}case`font-style`:o===`italic`&&(i.it=t.BooleanNumber.TRUE);break;case`font-weight`:(Number(o)>400||String(o)===`bold`)&&(i.bl=t.BooleanNumber.TRUE);break;case`text-decoration`:/underline/.test(o)?i.ul={s:t.BooleanNumber.TRUE}:/overline/.test(o)?i.ol={s:t.BooleanNumber.TRUE}:/line-through/.test(o)&&(i.st={s:t.BooleanNumber.TRUE});break;case`color`:try{let e=new t.ColorKit(o);e.isValid&&(i.cl={rgb:e.toRgbString()})}catch{}break;case`background-color`:case`background`:{let e=new t.ColorKit(o);e.isValid&&(i.bg={rgb:e.toRgbString()});break}default:break}}return i}function Ve(e){let t=new DOMParser,n=`<x-univer id="univer-root">${e}</x-univer>`;return t.parseFromString(n,`text/html`).querySelector(`#univer-root`)}function He(e,t){let n=e.tagName.toLowerCase();return typeof t==`string`?n===t:Array.isArray(t)?t.some(e=>e===n):t(e)}var Ue=class e{constructor(){O(this,`_tableCache`,[]),O(this,`_styleCache`,new Map),O(this,`_styleRules`,[]),O(this,`_afterProcessRules`,[]),O(this,`_listStack`,[]),O(this,`_lastParagraphIndex`,-1)}static use(e){if(this._pluginList.includes(e))throw Error(`Univer paste plugin ${e.name} already added`);this._pluginList.push(e)}_createParagraphId(e){var n;return(0,t.createParagraphId)(new Set((n=e.paragraphs)==null?void 0:n.map(e=>e.paragraphId)))}_createSectionId(e){var n;return(0,t.createSectionId)(new Set((n=e.sectionBreaks)==null?void 0:n.map(e=>e.sectionId)))}convert(t,n={}){var r;let i=e._pluginList.find(e=>e.checkPasteType(t)),a=Ve((i==null||(r=i.preprocessHtml)==null?void 0:r.call(i,t))??t),o={body:{dataStream:``,paragraphs:[],sectionBreaks:[],tables:[],textRuns:[],customBlocks:[]},tableSource:{},id:(n==null?void 0:n.unitId)??``};return i&&(this._styleRules=[...i.stylesRules],this._afterProcessRules=[...i.afterProcessRules]),this._tableCache=[],this._listStack=[],this._lastParagraphIndex=-1,this._styleCache.clear(),this._process(null,a.childNodes,o),this._styleCache.clear(),this._styleRules=[],this._afterProcessRules=[],o}_process(e,r,i){let a=i.body;for(let s of r)if(s.nodeType===Node.TEXT_NODE){let t=Ge(s);if(!t)continue;let n;e&&this._styleCache.has(e)&&(n=this._styleCache.get(e)),a.dataStream+=t,n&&Object.getOwnPropertyNames(n).length&&a.textRuns.push({st:a.dataStream.length-t.length,ed:a.dataStream.length,ts:n})}else if(s.nodeName===`IMG`){let e=s,r=e.dataset.imageSourceType??(e.src?Ke(e.src):void 0),c=r===t.ImageSourceType.UUID?e.dataset.source:e.src;if(c&&r){var o;let s=st(e,`width`)??100,l=st(e,`height`)??100,u=at(e.dataset.docTransformWidth||null,null,`width`)??s,d=at(e.dataset.docTransformHeight||null,null,`height`)??l,f=(0,t.generateRandomId)(6);(o=i.body)==null||(o=o.customBlocks)==null||o.push({startIndex:a.dataStream.length,blockId:f}),a.dataStream+=`\b`,i.drawings||={},i.drawings[f]={drawingId:f,title:``,description:``,imageSourceType:r,source:c,transform:{width:s,height:l,left:0},docTransform:(0,n.buildDocTransform)(u,d),layoutType:t.PositionedObjectLayoutType.INLINE,drawingType:t.DrawingTypeEnum.DRAWING_IMAGE,unitId:i.id||``,subUnitId:i.id||``}}}else if(t.skipParseTagNames.includes(s.nodeName.toLowerCase()))continue;else if(s.nodeType===Node.ELEMENT_NODE){let t=s;if(t.tagName.toUpperCase()===`TABLE`){this._processHtmlTable(t,i);continue}if(this._processCodeBlock(t,i))continue;let n=this._processBeforeLink(t,i),r=this._processBeforeStructuredBlock(t,i),a=this._processBeforeList(t),o=e?this._styleCache.get(e):{},c=this._styleRules.find(({filter:e})=>He(s,e)),l=c?c.getStyle(s):Be(s);this._styleCache.set(s,{...o,...l});let{childNodes:u}=s;this._processBeforeTable(s,i),this._process(s,u,i),this._processAfterTable(s,i),this._processAfterList(a);let d=this._afterProcessRules.find(({filter:e})=>He(s,e)),f=!!d;d&&d.handler(i,s),this._processAfterDefaultBlock(t,i,f),this._processAfterStructuredBlock(t,i,r),this._processAfterLink(t,i,n)}}_processCodeBlock(e,n){if(e.tagName.toUpperCase()!==`PRE`)return!1;let r=n.body,i=r.dataStream.length,a=e.textContent??``;return r.dataStream+=a,this._appendParagraph(n,e),r.blockRanges??=[],r.blockRanges.push({blockId:(0,t.generateRandomId)(6),blockType:t.DocumentBlockRangeType.CODE,startIndex:i,endIndex:r.dataStream.length-1}),!0}_processBeforeStructuredBlock(e,t){return ut(e)?t.body.dataStream.length:null}_processAfterStructuredBlock(e,n,r){let i=ut(e),a=n.body;!i||r==null||a.dataStream.length<=r||(a.blockRanges??=[],a.blockRanges.push({blockId:(0,t.generateRandomId)(6),blockType:i,startIndex:r,endIndex:a.dataStream.length-1}))}_processBeforeList(e){let n=e.tagName.toUpperCase();if(n!==`OL`&&n!==`UL`)return null;let r={listId:(0,t.generateRandomId)(6),listType:n===`OL`?t.PresetListType.ORDER_LIST:t.PresetListType.BULLET_LIST,nestingLevel:this._listStack.length};return this._listStack.push(r),r}_processAfterList(e){e&&this._listStack.pop()}_processAfterDefaultBlock(e,t,n){if(n){this._applyListInfo(e,t),this._lastParagraphIndex=t.body.dataStream.length-1;return}dt(e)&&this._appendParagraph(t,e)}_appendParagraph(e,n){let r=e.body;if(r.dataStream[this._lastParagraphIndex]===`\r`&&this._lastParagraphIndex===r.dataStream.length-1)return;r.paragraphs??=[];let i={startIndex:r.dataStream.length,paragraphId:this._createParagraphId(r)},a=ft(n);a!=null&&(i.paragraphStyle={...i.paragraphStyle,headingId:(0,t.generateRandomId)(6),namedStyleType:a});let o=this._listStack[this._listStack.length-1]??pt(n);o&&(i.bullet={listId:o.listId,listType:o.listType,nestingLevel:o.nestingLevel},i.startIndex-=mt(r)),r.paragraphs.push(i),r.dataStream+=`\r`,this._lastParagraphIndex=r.dataStream.length-1}_applyListInfo(e,t){var n;let r=this._listStack[this._listStack.length-1],i=pt(e),a=r??i,o=(n=t.body)==null||(n=n.paragraphs)==null?void 0:n[t.body.paragraphs.length-1];!a||!o||(o.bullet={listId:a.listId,listType:a.listType,nestingLevel:a.nestingLevel},i&&(o.startIndex-=mt(t.body)))}_processHtmlTable(e,n){let r=n.body;r.dataStream[r.dataStream.length-1]!==`\r`&&(r.dataStream+=`\r`,r.paragraphs??=[],r.paragraphs.push({startIndex:r.dataStream.length-1,paragraphId:this._createParagraphId(r)})),n.tableSource??={},r.tables??=[],r.sectionBreaks??=[];let i=We(e),a=Je(i),o=Math.max(1,...a.map(e=>e.length)),s=W(0,o,660),c=at(e.getAttribute(`width`),e.getAttribute(`style`),`width`),l=Ze(e,a,o,c);s.tableRows=[],s.tableColumns=l.map(e=>U(e)),s.size={type:t.TableSizeType.SPECIFIED,width:{v:c??s.tableColumns.reduce((e,t)=>e+t.size.width.v,0)}};let u=r.dataStream.length;r.dataStream+=t.DataStreamTreeTokenType.TABLE_START,a.forEach((e,a)=>{let c=H(0),l=i[a],u=l?at(l.getAttribute(`height`),l.getAttribute(`style`),`height`):void 0;u!=null&&(c.trHeight={val:{v:u},hRule:t.TableRowHeightRule.EXACT}),s.tableRows.push(c),r.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_START;for(let t=0;t<o;t++){let r=e[t]??{element:null,rowSpan:1,colSpan:1,covered:!0},i=r.covered?{...V(),rowSpan:0,columnSpan:0}:Qe(r.element,r.rowSpan,r.colSpan);c.tableCells.push(i),this._appendHtmlTableCell(r,n)}r.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_END}),n.tableSource[s.tableId]=s,r.dataStream+=t.DataStreamTreeTokenType.TABLE_END,r.tables.push({startIndex:u,endIndex:r.dataStream.length,tableId:s.tableId})}_appendHtmlTableCell(e,n){let r=n.body;r.dataStream+=t.DataStreamTreeTokenType.TABLE_CELL_START,e.element&&!e.covered&&this._process(e.element,e.element.childNodes,n),r.dataStream[r.dataStream.length-1]!==`\r`&&this._appendParagraph(n,e.element??document.createElement(`td`)),r.sectionBreaks??=[],r.sectionBreaks.push({sectionId:this._createSectionId(r),startIndex:r.dataStream.length}),r.dataStream+=`\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`}_processBeforeTable(e,n){let r=e.tagName.toUpperCase(),i=n.body;switch(r){case`TABLE`:{if(i.dataStream[i.dataStream.length-1]!==`\r`){var a;i.dataStream+=`\r`,i.paragraphs??=[],(a=i.paragraphs)==null||a.push({startIndex:i.dataStream.length-1,paragraphId:this._createParagraphId(i)})}let e=W(0,0,660);this._tableCache.push({table:e,startIndex:i.dataStream.length}),i.dataStream+=t.DataStreamTreeTokenType.TABLE_START;break}case`TR`:{let e=H(0);this._tableCache[this._tableCache.length-1].table.tableRows.push(e),i.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_START;break}case`TD`:{let e=V(),n=this._tableCache[this._tableCache.length-1].table;n.tableRows[n.tableRows.length-1].tableCells.push(e),i.dataStream+=t.DataStreamTreeTokenType.TABLE_CELL_START;break}}}_processAfterTable(e,n){let r=e.tagName.toUpperCase(),i=n.body;n.tableSource??={},i.tables??=[],i.sectionBreaks??=[];let{tableSource:a}=n;switch(r){case`TABLE`:{let{startIndex:e,table:n}=this._tableCache.pop(),r=n.tableRows[0].tableCells.length,o=U(660/r);n.tableColumns=[...Array(r).fill(null).map(()=>t.Tools.deepClone(o))],a[n.tableId]=n,i.dataStream+=t.DataStreamTreeTokenType.TABLE_END,i.tables.push({startIndex:e,endIndex:i.dataStream.length,tableId:n.tableId});break}case`TR`:i.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_END;break;case`TD`:var o;if(i.dataStream[i.dataStream.length-1]!==`\r`){var s;(s=i.paragraphs)==null||s.push({startIndex:i.dataStream.length,paragraphId:this._createParagraphId(i)}),i.dataStream+=`\r`}(o=i.sectionBreaks)==null||o.push({sectionId:this._createSectionId(i),startIndex:i.dataStream.length}),i.dataStream+=`\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`;break}}_processBeforeLink(e,t){return t.body.dataStream.length}_processAfterLink(e,n,r){let i=n.body,a=e;if(a.tagName.toUpperCase()===`A`){let e=a.href;if(!(0,t.isSafeUrl)(e))return;i.customRanges=i.customRanges??[],i.customRanges.push({startIndex:r,endIndex:i.dataStream.length-1,rangeId:a.dataset.rangeid??(0,t.generateRandomId)(),rangeType:t.CustomRangeType.HYPERLINK,properties:{url:e}})}}};O(Ue,`_pluginList`,[]);function We(e){let t=[];return Array.from(e.children).forEach(e=>{let n=e.tagName.toUpperCase();n===`TR`?t.push(e):(n===`TBODY`||n===`THEAD`||n===`TFOOT`)&&t.push(...Array.from(e.children).filter(e=>e.tagName.toUpperCase()===`TR`))}),t}function Ge(e){let t=e.nodeValue??``;if(t.includes(``))return t.replace(/[\t\u00A0]+/g,` `).replace(/[ \r\n]+/g,` `).replace(/ *\uE000+ */g,e=>` `.repeat(Array.from(e).filter(e=>e===``).length));let n=/[\t\u00A0]/.test(t),r=t.replace(/[\t\u00A0]+/g,` `).replace(/[ \r\n]+/g,` `);return r.trim()?r:n&&qe(e.previousSibling,`previous`)&&qe(e.nextSibling,`next`)?` `:``}function Ke(e){return e.startsWith(`data:image/`)?t.ImageSourceType.BASE64:t.ImageSourceType.URL}function qe(e,t){let n=e;for(;n;){var r;if(n.nodeType===Node.TEXT_NODE&&(r=n.nodeValue)!=null&&r.trim()||n.nodeType===Node.ELEMENT_NODE&&(n.textContent??``).trim())return!0;n=t===`previous`?n.previousSibling:n.nextSibling}return!1}function Je(e){let t=[],n=new Set;e.forEach((e,r)=>{let i=[],a=0;for(Ye(e).forEach(e=>{for(;n.has(`${r}:${a}`);)i[a]={element:null,rowSpan:1,colSpan:1,covered:!0},a++;let t=Math.max(1,Number(e.getAttribute(`rowspan`)??1)),o=Math.max(1,Number(e.getAttribute(`colspan`)??1));i[a]={element:e,rowSpan:t,colSpan:o};for(let e=0;e<t;e++)for(let t=0;t<o;t++)(e!==0||t!==0)&&(n.add(`${r+e}:${a+t}`),e===0&&(i[a+t]={element:null,rowSpan:1,colSpan:1,covered:!0}));a+=o});n.has(`${r}:${a}`);)i[a]={element:null,rowSpan:1,colSpan:1,covered:!0},a++;t.push(i)});let r=Math.max(0,...t.map(e=>e.length));return t.forEach(e=>{for(;e.length<r;)e.push({element:null,rowSpan:1,colSpan:1,covered:!0})}),t.length?t:[[]]}function Ye(e){return Array.from(e.children).filter(e=>{let t=e.tagName.toUpperCase();return t===`TD`||t===`TH`})}function Xe(e,t,n){let r=Array.from({length:n});return Array.from(e.querySelectorAll(`col`)).forEach((e,t)=>{t<r.length&&(r[t]=at(e.getAttribute(`width`),e.getAttribute(`style`),`width`))}),t.forEach(e=>{e.forEach((e,t)=>{if(!e.element||r[t]!=null)return;let n=at(e.element.getAttribute(`width`),e.element.getAttribute(`style`),`width`);n!=null&&e.colSpan<=1&&(r[t]=n)})}),r}function Ze(e,t,n,r){let i=Xe(e,t,n),a=r??660,o=i.reduce((e,t)=>e+(t??0),0),s=i.filter(e=>e==null).length,c=s?Math.max((a-o)/s,1):a/n;return i.map(e=>e??lt(c))}function Qe(e,n,r){let i=V();n>1&&(i.rowSpan=n),r>1&&(i.columnSpan=r);let a=e.getAttribute(`style`)??``,o=at(e.getAttribute(`width`),a,`width`),s=nt(a,`background-color`)??nt(a,`background`)??tt(e,`bgcolor`),c=$e(a,`top`),l=$e(a,`right`),u=$e(a,`bottom`),d=$e(a,`left`);return o!=null&&(i.size={type:t.TableSizeType.SPECIFIED,width:{v:o}}),s&&(i.backgroundColor={rgb:s}),c&&(i.borderTop=c),l&&(i.borderRight=l),u&&(i.borderBottom=u),d&&(i.borderLeft=d),i}function $e(e,t){var n,r;let i=it(e,`border-${t}`),a=nt(e,`border-${t}-color`)??rt(i==null||(n=i.match(/(#[0-9a-f]{3,8}|rgb\([^)]+\))/i))==null?void 0:n[1])??nt(e,`border-color`)??rt((r=it(e,`border`))==null||(r=r.match(/(#[0-9a-f]{3,8}|rgb\([^)]+\))/i))==null?void 0:r[1])??et(e),o=ot(it(e,`border-${t}-width`))??ot(i)??ot(it(e,`border-width`))??ot(it(e,`border`));if(!(!a&&o==null))return{color:{rgb:rt(a)??`#1f1f1f`},width:{v:o??1}}}function et(e){let t=e.match(/border(?:-[a-z]+)?\s*:\s*([^;]+)/i);if(t)return rt(t[1].split(/\s+/).find(e=>{let t=e.toLowerCase();return t&&!/^[0-9.]+/.test(t)&&![`none`,`hidden`,`dotted`,`dashed`,`solid`,`double`,`groove`,`ridge`,`inset`,`outset`].includes(t)}))}function tt(e,t){return rt(e.getAttribute(t))}function nt(e,t){return rt(it(e,t))}function rt(e){if(e)try{let n=new t.ColorKit(e.trim());return n.isValid?n.toRgbString():void 0}catch{return}}function it(e,t){let n=t.toLowerCase(),r=e.split(`;`).map(e=>e.split(`:`)).find(([e])=>(e==null?void 0:e.trim().toLowerCase())===n);return(r==null?void 0:r.slice(1).join(`:`).trim())||void 0}function at(e,t,n){var r;let i=(r=it(t??``,n))==null?void 0:r.match(/^([0-9.]+)\s*(px|pt|in|cm|mm)?$/i);if(i)return ct(Number(i[1]),i[2]);let a=e==null?void 0:e.match(/([0-9.]+)\s*(px|pt|in|cm|mm)?/i);return a?ct(Number(a[1]),a[2]):void 0}function ot(e){let t=(e==null?void 0:e.match(/(?:^|\s)([0-9.]+)\s*(px|pt|in|cm|mm)(?=\s|$)/i))??(e==null?void 0:e.match(/^\s*([0-9.]+)\s*$/));return t?ct(Number(t[1]),t[2]):void 0}function st(e,t){return at((t===`width`?e.dataset.width:e.dataset.height)||null,null,t)??at(e.getAttribute(t),e.getAttribute(`style`),t)}function ct(e,t){switch(t==null?void 0:t.toLowerCase()){case`pt`:return lt(e*4/3);case`in`:return lt(e*96);case`cm`:return lt(e*96/2.54);case`mm`:return lt(e*96/25.4);default:return lt(e)}}function lt(e){return Math.round(e*100)/100}function ut(e){let n=e.dataset.docType;if(n===t.DocumentBlockRangeType.QUOTE)return t.DocumentBlockRangeType.QUOTE;if(n===t.DocumentBlockRangeType.CALLOUT)return t.DocumentBlockRangeType.CALLOUT;let r=e.tagName.toUpperCase();return r===`BLOCKQUOTE`?n===t.DocumentBlockRangeType.CALLOUT?t.DocumentBlockRangeType.CALLOUT:t.DocumentBlockRangeType.QUOTE:r===`ASIDE`&&e.getAttribute(`role`)===`note`?t.DocumentBlockRangeType.CALLOUT:null}function dt(e){let t=e.tagName.toUpperCase();return[`P`,`DIV`,`H1`,`H2`,`H3`,`H4`,`H5`,`H6`,`LI`].includes(t)}function ft(e){switch(e.tagName.toUpperCase()){case`H1`:return t.NamedStyleType.HEADING_1;case`H2`:return t.NamedStyleType.HEADING_2;case`H3`:return t.NamedStyleType.HEADING_3;case`H4`:return t.NamedStyleType.HEADING_4;case`H5`:return t.NamedStyleType.HEADING_5;default:return null}}function pt(e){let n=(e.getAttribute(`style`)??``).match(/mso-list:\s*([^ ;]+)\s+level(\d+)/i);if(!n&&!/MsoListParagraph/i.test(e.className))return null;{let r=(e.textContent??``).trim().match(/^([0-9]+[.)]|[a-zA-Z][.)]|[ivxlcdmIVXLCDM]+[.)]|[\u2022\u00B7\u25CF\u25CB\u25AA\u25AB-])/),i=(r==null?void 0:r[1])??``,a=!!(i&&!/^[\u2022\u00B7\u25CF\u25CB\u25AA\u25AB-]$/.test(i));return{listId:(n==null?void 0:n[1])??`mso-list`,listType:a?t.PresetListType.ORDER_LIST:t.PresetListType.BULLET_LIST,nestingLevel:Math.max(0,Number((n==null?void 0:n[2])??1)-1)}}}function mt(e){var t;let n=e.dataStream.endsWith(`\r`)?e.dataStream.length-1:e.dataStream.length,r=Math.max(0,e.dataStream.lastIndexOf(`\r`,n-1)+1),i=e.dataStream.slice(r,n);{let t=i.match(/^(\s*(?:[0-9]+[.)]|[a-zA-Z][.)]|[ivxlcdmIVXLCDM]+[.)]|[\u2022\u00B7\u25CF\u25CB\u25AA\u25AB-])\s*)/);if(t){var a;let n=t[1].length;return e.dataStream=e.dataStream.slice(0,r)+e.dataStream.slice(r+n),(a=e.textRuns)==null||a.forEach(e=>{e.st>=r+n?(e.st-=n,e.ed-=n):e.ed>r&&(e.ed=Math.max(e.st,e.ed-n))}),n}}let o=i.match(/^(\s*(?:[0-9]+\.|[a-zA-Z]\.|[ivxlcdmIVXLCDM]+\.|[·•●○\-])\s*)/);if(!o)return 0;let s=o[1].length;return e.dataStream=e.dataStream.slice(0,r)+e.dataStream.slice(r+s),(t=e.textRuns)==null||t.forEach(e=>{e.st>=r+s?(e.st-=s,e.ed-=s):e.ed>r&&(e.ed=Math.max(e.st,e.ed-s))}),s}let ht={name:`univer-doc-paste-plugin-lark`,checkPasteType(e){return/lark-record-clipboard/i.test(e)},stylesRules:[{filter:[`s`],getStyle(e){let n=Be(e);return{st:{s:t.BooleanNumber.TRUE},...n}}}],afterProcessRules:[{filter(e){return e.tagName===`DIV`&&/ace-line/i.test(e.className)},handler(e){let n=e.body;n.paragraphs??=[],n.paragraphs.push({startIndex:n.dataStream.length,paragraphId:(0,t.createParagraphId)(new Set(n.paragraphs.map(e=>e.paragraphId)))}),n.dataStream+=`\r`}}]};function gt(e){let t=e.style,n={};for(let e=0;e<t.length;e++){let i=t[e],a=t.getPropertyValue(i);switch(i){case`margin-top`:{let e=Number.parseInt(a);n.spaceAbove={v:/pt/.test(a)?(0,r.ptToPixel)(e):e};break}case`margin-bottom`:{let e=Number.parseInt(a);n.spaceBelow={v:/pt/.test(a)?(0,r.ptToPixel)(e):e};break}case`line-height`:{let e=Number.parseFloat(a);a.endsWith(`%`)&&(e/=100),n.lineSpacing=e;break}case`text-align`:n.horizontalAlign=_t(a);break;default:break}}return Object.getOwnPropertyNames(n).length?n:null}function _t(e){switch(e.trim().toLowerCase()){case`center`:return t.HorizontalAlign.CENTER;case`right`:case`end`:return t.HorizontalAlign.RIGHT;case`justify`:return t.HorizontalAlign.JUSTIFIED;case`left`:case`start`:return t.HorizontalAlign.LEFT;default:return t.HorizontalAlign.UNSPECIFIED}}let vt={name:`univer-doc-paste-plugin-univer`,checkPasteType(e){return/UniverNormal/i.test(e)},stylesRules:[],afterProcessRules:[{filter(e){return e.tagName===`P`&&/UniverNormal/i.test(e.className)},handler(e,n){let r=e.body;r.paragraphs??=[];let i={startIndex:r.dataStream.length,paragraphId:(0,t.createParagraphId)(new Set(r.paragraphs.map(e=>e.paragraphId)))},a=gt(n);a&&(i.paragraphStyle=a),r.paragraphs.push(i),r.dataStream+=`\r`}}]},yt={name:`univer-doc-paste-plugin-word`,checkPasteType(e){return/word|mso|wps|kingsoft/i.test(e)},preprocessHtml(e){return e.replace(/<span\b([^>]*)>([\s\S]*?)<\/span>/gi,(e,t,n)=>{let r=/mso-spacerun\s*:\s*yes/i.test(t),i=bt(t);if(!r&&i==null)return e;let a=xt(n),o=i==null?1:Math.max(1,Math.round(i*4)),s=Math.max(a,o);return`&#57344;`.repeat(s)})},stylesRules:[{filter:[`b`],getStyle(e){let n=Be(e);return{bl:t.BooleanNumber.TRUE,...n}}}],afterProcessRules:[{filter(e){return e.tagName===`P`},handler(e,n){let r=e.body;r.paragraphs??=[];let i={startIndex:r.dataStream.length,paragraphId:(0,t.createParagraphId)(new Set(r.paragraphs.map(e=>e.paragraphId)))},a=gt(n);a&&(i.paragraphStyle=a),r.paragraphs.push(i),r.dataStream+=`\r`}}]};function bt(e){let t=e.match(/mso-tab-count\s*:\s*([0-9.]+)/i);if(!t)return;let n=Number(t[1]);return Number.isFinite(n)?n:void 0}function xt(e){var t,n,r;let i=((t=e.match(/&nbsp;|&#160;|&#x0*a0;/gi))==null?void 0:t.length)??0,a=e.replace(/&nbsp;|&#160;|&#x0*a0;/gi,`\xA0`).replace(/<[^>]*>/g,``),o=((n=a.match(/[\u00A0\t]/g))==null?void 0:n.reduce((e,t)=>e+(t===` `?4:1),0))??0;return i||o?o:((r=a.replace(/\r?\n/g,``).match(/ /g))==null?void 0:r.length)??0}let St=`application/x-doc-fragment+json`,Ct=`univer-doc-fragment:`;function wt(e){return JSON.stringify({version:1,kind:`univer-doc-fragment`,doc:t.Tools.deepClone(e)})}function Tt(e){if(!e)return null;try{var t;let n=JSON.parse(e);if((n==null?void 0:n.version)===1&&n.kind===`univer-doc-fragment`&&(t=n.doc)!=null&&t.body)return n.doc}catch{return null}return null}function Et(e){var n,r,i;let a=t.Tools.deepClone(e.body),o={body:a};a!=null&&(n=a.tables)!=null&&n.length&&e.tableSource&&(o.tableSource={},a.tables.forEach(n=>{var r;let i=(r=e.tableSource)==null?void 0:r[n.tableId];i&&(o.tableSource[n.tableId]=t.Tools.deepClone(i))}));let s=new Set(a==null||(r=a.paragraphs)==null?void 0:r.map(e=>{var t;return(t=e.bullet)==null?void 0:t.listType}).filter(Boolean));if(s.size&&e.lists&&(o.lists={},s.forEach(n=>{var r;let i=(r=e.lists)==null?void 0:r[String(n)];i&&(o.lists[String(n)]=t.Tools.deepClone(i))})),a!=null&&(i=a.customBlocks)!=null&&i.length){o.drawings={};for(let n of a.customBlocks){var c;let{blockId:r}=n,i=(c=e.drawings)==null?void 0:c[r];if(i){let e=(0,t.generateRandomId)(6);n.blockId=e,o.drawings[e]={...t.Tools.deepClone(i),drawingId:e}}}}return o}function Dt(e){var t;if(e.length===0)return null;if(e.length===1)return Et(e[0]);let n={body:{dataStream:``}};for(let t of e){let e=Et(t),r=e.body;if(!r)continue;let i=n.body.dataStream.length;n.body.dataStream+=r.dataStream??``,jt(n.body,r,i),e.tableSource&&(n.tableSource??={},Object.assign(n.tableSource,e.tableSource)),e.lists&&(n.lists??={},Object.assign(n.lists,e.lists)),e.drawings&&(n.drawings??={},Object.assign(n.drawings,e.drawings))}return(t=n.body)!=null&&t.dataStream?n:null}function Ot(e,t){return`<!--${Ct}${Mt(t)}-->${e}`}function kt(e){if(!e)return null;let t=Ct.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),n=e.match(RegExp(`<!--\\s*${t}([A-Za-z0-9+/=]+)\\s*-->`));return n?Tt(Nt(n[1])):null}function At(e){return`<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head>
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/engine-render"),require("@univerjs/ui"),require("rxjs"),require("rxjs/operators"),require("@univerjs/design"),require("react"),require("react/jsx-runtime")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs`,`@univerjs/engine-render`,`@univerjs/ui`,`rxjs`,`rxjs/operators`,`@univerjs/design`,`react`,`react/jsx-runtime`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverDocsUi={},e.UniverCore,e.UniverDocs,e.UniverEngineRender,e.UniverUi,e.rxjs,e.rxjs.operators,e.UniverDesign,e.React,e.React))})(this,function(e,t,n,r,i,a,o,s,c,l){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let u=function(e){return e.MAIN=`__Document_Render_Main__`,e.BACKGROUND=`__Document_Render_Background__`,e}({}),d=function(e){return e.VIEW_MAIN=`viewMain`,e.VIEW_TOP=`viewTop`,e.VIEW_LEFT=`viewLeft`,e.VIEW_LEFT_TOP=`viewLeftTop`,e}({});function f(e){let{mainComponent:t,scene:n,engine:r,components:i}=e;return{document:t,docBackground:i.get(`__Document_Render_Background__`),scene:n,engine:r}}function p(e,t){let n=t.getRenderUnitById(e);if(n==null)return;let{mainComponent:r,scene:i,engine:a,components:o}=n;return{document:r,docBackground:o.get(`__Document_Render_Background__`),scene:i,engine:a}}function m(e){let{unitId:r,ranges:i,id:a,type:o,segmentId:s}=e,c={id:n.RichTextEditingMutation.id,params:{unitId:r,actions:[],textRanges:void 0,segmentId:s}},l=t.JSONX.getInstance(),u=t.BuildTextUtils.customDecoration.add({ranges:i,id:a,type:o});return c.params.actions=l.editOp(u.serialize()),c}function h(e,r){let{segmentId:i,id:a,type:o,unitId:s}=r,c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService),u=s?l.getUnit(s,t.UniverInstanceType.UNIVER_DOC):l.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!u)return!1;let d=u.getUnitId(),f=c.getTextRanges({unitId:d,subUnitId:d});return!f||!u.getBody()?!1:m({unitId:d,ranges:f,id:a,type:o,segmentId:i})}function g(e,r){let{unitId:i,id:a,segmentId:o}=r,s=e.get(t.IUniverInstanceService).getUnit(i);if(!s)return!1;let c={id:n.RichTextEditingMutation.id,params:{unitId:i,actions:[],textRanges:void 0,segmentId:o}},l=t.BuildTextUtils.customDecoration.delete({id:a,segmentId:o,documentDataModel:s});if(!l)return!1;let u=t.JSONX.getInstance();return c.params.actions=u.editOp(l.serialize()),c}let _=.07;function v(e){let n=e.getColorFromTheme(`primary.600`);return{background:new t.ColorKit(n).setAlpha(_).toRgbString(),border:n}}function y(e,t,n){e.save(),e.fillStyle=n.background,e.strokeStyle=n.border,e.lineWidth=1,e.beginPath(),e.roundRect(t.left,t.top,t.right-t.left,t.bottom-t.top,1),e.fill(),e.stroke(),e.restore()}function b(e,n){let r=e[n-1],i=e[n];return r===t.DataStreamTreeTokenType.BLOCK_END||r===t.DataStreamTreeTokenType.TABLE_END||r===t.DataStreamTreeTokenType.COLUMN_GROUP_END||i===t.DataStreamTreeTokenType.BLOCK_START||i===t.DataStreamTreeTokenType.TABLE_START||i===t.DataStreamTreeTokenType.COLUMN_GROUP_START}function x(e,t){return t.some(t=>e.startIndex>t.startIndex&&e.startIndex<t.endIndex)}function S(e,t,n,r,i){let{textRuns:a=[],dataStream:o}=e,s=i&&o.startsWith(`=`),c={st:0,ed:0,ts:n.cl?{cl:{...n.cl}}:{}};if(s)return c;for(let e=a.length-1;e>=0;e--){let n=a[e],{st:r,ed:i}=n;t>r&&t<=i&&(c.st=r,c.ed=i,c.ts={...c.ts,...n.ts})}if(t===0){let e=a==null?void 0:a[0];e&&e.st===0&&(c.ts={...c.ts,...e.ts})}return r&&(c.ts={...c.ts,...r}),c}function C(e,t,n){if(n){let n=e.find(e=>t>=e.startIndex&&t<=e.endIndex+1);return n!=null&&n.wholeEntity?null:n}let r=e.find(e=>t>e.startIndex&&t<=e.endIndex);return r!=null&&r.wholeEntity?null:r}function w(e,t){return e.filter(e=>t>e.startIndex&&t<=e.endIndex)}function T(e){"@babel/helpers - typeof";return T=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},T(e)}function E(e,t){if(T(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(T(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function D(e){var t=E(e,`string`);return T(t)==`symbol`?t:t+``}function O(e,t,n){return(t=D(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function k(e,t){return function(n,r){t(n,r,e)}}function A(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let j=class extends t.Disposable{constructor(e,t){super(),this._univerInstanceService=e,this._textSelectionManagerService=t,O(this,`_matches`,new Map)}registerAutoFormat(e){let n=this._matches.get(e.id);return n?(n.push(e),n.sort((e,t)=>(t.priority??0)-(e.priority??0))):this._matches.set(e.id,[e]),(0,t.toDisposable)(()=>{let t=this._matches.get(e.id);if(t){let n=t.findIndex(t=>t===e);n>=0&&t.splice(n,1)}})}onAutoFormat(e,n){let r=this._matches.get(e)??[],i=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),a=this._textSelectionManagerService.getDocRanges(),o=a.find(e=>e.isActive)??a[0],s=i==null?void 0:i.getSelfOrHeaderFooterModel((o==null?void 0:o.segmentId)??``);if(i&&o&&s){var c,l,u;let i={unit:s,selection:o,isBody:!o.segmentId,paragraphs:t.BuildTextUtils.range.getParagraphsInRange(o,((c=s.getBody())==null?void 0:c.paragraphs)??[],((l=s.getBody())==null?void 0:l.dataStream)??``),customRanges:t.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(o,((u=s.getBody())==null?void 0:u.customRanges)??[]),commandId:e,commandParams:n},a=r.find(e=>e.match(i));return(a==null?void 0:a.getMutations(i))??[]}return[]}};j=A([k(0,t.IUniverInstanceService),k(1,(0,t.Inject)(n.DocSelectionManagerService))],j);let M={id:`doc.command.tab`,type:t.CommandType.COMMAND,async handler(e,n){return(await(0,t.sequenceExecuteAsync)(e.get(j).onAutoFormat(M.id,n),e.get(t.ICommandService))).result}},N={id:`doc.command.after-space`,type:t.CommandType.COMMAND,async handler(e){return(await(0,t.sequenceExecuteAsync)(e.get(j).onAutoFormat(N.id),e.get(t.ICommandService))).result}},P={id:`doc.command.enter`,type:t.CommandType.COMMAND,async handler(e){return(await(0,t.sequenceExecuteAsync)(e.get(j).onAutoFormat(P.id),e.get(t.ICommandService))).result}},F={ff:`Arial`,fs:11},I=class extends t.Disposable{constructor(e,t,n,r){super(),this._textSelectionManagerService=e,this._univerInstanceService=t,this._renderManagerService=n,this._themeService=r,O(this,`_cacheStyle`,null),this._init()}_init(){this._listenDocRangeChange()}_listenDocRangeChange(){this.disposeWithMe(this._textSelectionManagerService.textSelection$.subscribe(()=>{this._clearStyleCache()}))}getStyleCache(){return this._cacheStyle}getDefaultStyle(){var e;let i={...F,cl:{rgb:this._themeService.getColorFromTheme(`gray.900`)}},a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(a==null)return{...i};let o={...i,...a.getDocumentStyle().textStyle},s=a==null?void 0:a.getUnitId(),c=(e=this._renderManagerService.getRenderUnitById(s))==null?void 0:e.with(n.DocSkeletonManagerService),l=c==null?void 0:c.getViewModel();return l==null||l.getEditArea()===r.DocumentEditArea.BODY?{...o}:{...o,fs:9}}setStyleCache(e){this._cacheStyle={...this._cacheStyle,...e}}_clearStyleCache(){this._cacheStyle=null}};I=A([k(0,(0,t.Inject)(n.DocSelectionManagerService)),k(1,t.IUniverInstanceService),k(2,r.IRenderManagerService),k(3,(0,t.Inject)(t.ThemeService))],I);let L={id:`doc.command.set-input-style`,type:t.CommandType.COMMAND,handler:(e,t)=>t?(e.get(I).setStyleCache(t.style),!0):!1},R={id:`doc.command.break-line`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a,o;let s=e.get(n.DocSelectionManagerService),c=e.get(t.IUniverInstanceService),l=e.get(t.ICommandService),u=e.get(I),d=(r==null?void 0:r.textRange)??s.getActiveTextRange(),f=s.getRectRanges();if(d==null)return!1;if(f&&f.length){let{startOffset:e}=d;return s.replaceDocRanges([{startOffset:e,endOffset:e}]),!0}let{horizontalLine:p,insertionMode:m=`split-paragraph`}=r??{},{segmentId:h}=d,g=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),_=g==null||(i=g.getSelfOrHeaderFooterModel(h??``))==null?void 0:i.getBody();if(g==null||_==null)return!1;let v=g.getUnitId(),{startOffset:y,endOffset:x}=d,C=_.paragraphs??[],w=b(_.dataStream,y)&&_.dataStream[y]!==t.DataStreamTreeTokenType.PARAGRAPH,T=m===`insert-gap`||w,E=T?void 0:C.find(e=>e.startIndex>=y);if(!E&&!T)return!1;let D=y===(E==null?void 0:E.startIndex),O=E==null?void 0:E.startIndex,k=S(_,x,u.getDefaultStyle(),u.getStyleCache()),A={dataStream:t.DataStreamTreeTokenType.PARAGRAPH,paragraphs:(0,n.generateParagraphs)(t.DataStreamTreeTokenType.PARAGRAPH,E,p),textRuns:[{st:0,ed:1,ts:{...k.ts}}]};if(g==null)return!1;let j=s.getActiveTextRange();if(_==null)return!1;let{collapsed:M}=d,N=T?0:A.dataStream.length,P=[{startOffset:y+N,endOffset:y+N,style:j==null?void 0:j.style,collapsed:M}],F={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:P,debounce:!0,trigger:R.id}},L=new t.TextX,z=t.JSONX.getInstance();if(M)y>0&&L.push({t:t.TextXActionType.RETAIN,len:y}),L.push({t:t.TextXActionType.INSERT,body:A,len:A.dataStream.length});else{let e=t.BuildTextUtils.selection.delete([d],_,0,A);L.push(...e)}let B=M&&D,V=(E==null||(a=E.bullet)==null?void 0:a.listType)===t.PresetListType.CHECK_LIST_CHECKED||(E==null||(o=E.paragraphStyle)==null?void 0:o.headingId);if(E&&(B||V)){var ee;O!=null&&d.endOffset<O&&L.push({t:t.TextXActionType.RETAIN,len:O-d.endOffset}),L.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,...B?{textRuns:[{st:0,ed:1,ts:{...k.ts}}]}:null,...V?{paragraphs:[{...E,paragraphStyle:{...E.paragraphStyle,...D?{headingId:void 0,namedStyleType:void 0}:null},startIndex:0,bullet:(ee=E.paragraphStyle)!=null&&ee.headingId?void 0:{...E.bullet,listType:t.PresetListType.CHECK_LIST}}]}:null},coverType:t.UpdateDocsAttributeType.REPLACE})}F.params.textRanges=[{startOffset:y+N,endOffset:y+N,collapsed:M}];let H=(0,t.getRichTextEditPath)(g,h);return F.params.actions=z.editOp(L.serialize(),H),!!l.syncExecuteCommand(F.id,F.params)}},z=(0,t.createIdentifier)(`doc.clipboard-paste-adapter.service`);var B=class{constructor(){O(this,`_adapters`,[])}registerAdapter(e){return this._adapters.push(e),(0,t.toDisposable)(()=>{let t=this._adapters.indexOf(e);t>=0&&this._adapters.splice(t,1)})}getPasteMutationInfos(e){let t={redoMutations:[],undoMutations:[]};for(let r of this._adapters){var n;let i=(n=r.getPasteMutationInfos)==null?void 0:n.call(r,e);i&&(t.redoMutations.push(...i.redoMutations),t.undoMutations.push(...i.undoMutations))}return t}};function V(e,t){var i;return(i=e.get(r.IRenderManagerService).getRenderUnitById(t))==null?void 0:i.with(n.DocSkeletonManagerService)}function ee(e,n){let r=t.DataStreamTreeTokenType.TABLE_START,i=[],a=[],o=new Set,s=new Set;for(let c=0;c<e;c++){r+=t.DataStreamTreeTokenType.TABLE_ROW_START;for(let e=0;e<n;e++)r+=`${t.DataStreamTreeTokenType.TABLE_CELL_START}\r\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`,i.push({startIndex:r.length-3,paragraphId:(0,t.createParagraphId)(o),paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),a.push({sectionId:(0,t.createSectionId)(s),startIndex:r.length-2});r+=t.DataStreamTreeTokenType.TABLE_ROW_END}return r+=t.DataStreamTreeTokenType.TABLE_END,{dataStream:r,paragraphs:i,sectionBreaks:a}}function H(){return{margin:{start:{v:10},end:{v:10},top:{v:5},bottom:{v:5}}}}function U(e){let n=H();return{tableCells:[...Array(e).fill(null).map(()=>t.Tools.deepClone(n))],trHeight:{val:{v:30},hRule:t.TableRowHeightRule.AUTO}}}function W(e){return{size:{type:t.TableSizeType.SPECIFIED,width:{v:e}}}}function G(e,n,r){let i=W(r/n),a=U(n);return{tableRows:[...Array(e).fill(null).map(()=>t.Tools.deepClone(a))],tableColumns:[...Array(n).fill(null).map(()=>t.Tools.deepClone(i))],tableId:(0,t.generateRandomId)(6),align:t.TableAlignmentType.START,indent:{v:0},textWrap:t.TableTextWrapType.NONE,position:{positionH:{relativeFrom:t.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:t.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:t.TableSizeType.UNSPECIFIED,width:{v:r}}}}function te(e,t){if(!e&&!t)return null;if(t&&t.length>0){let e=1/0,n=-1/0;for(let r of t){let{startOffset:t,endOffset:i,segmentId:a}=r;t!=null&&i!=null&&a!=null&&(e=Math.min(e,t),n=Math.max(n,i))}if(Number.isFinite(e)&&Number.isFinite(n))return{startOffset:e,endOffset:n,segmentId:``}}else if(e){let{startOffset:t,endOffset:n,segmentId:r}=e;return t==null||n==null||r==null?null:{startOffset:t,endOffset:n,segmentId:r}}}function ne(e){let n=t.DataStreamTreeTokenType.TABLE_ROW_START,r=[],i=[],a=new Set,o=new Set;for(let s=0;s<e;s++)n+=`${t.DataStreamTreeTokenType.TABLE_CELL_START}\r\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`,r.push({startIndex:n.length-3,paragraphId:(0,t.createParagraphId)(a),paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),i.push({sectionId:(0,t.createSectionId)(o),startIndex:n.length-2});return n+=t.DataStreamTreeTokenType.TABLE_ROW_END,{dataStream:n,paragraphs:r,sectionBreaks:i}}function re(){let e=`${t.DataStreamTreeTokenType.TABLE_CELL_START}\r\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`,n=[],r=[];return n.push({startIndex:1,paragraphId:(0,t.createParagraphId)(new Set),paragraphStyle:{spaceAbove:{v:3},lineSpacing:2,spaceBelow:{v:0}}}),r.push({sectionId:(0,t.createSectionId)(new Set),startIndex:2}),{dataStream:e,paragraphs:n,sectionBreaks:r}}function ie(e,t,n){var r;let{startOffset:i,endOffset:a,segmentId:o}=e,s=n.getSelfOrHeaderFooterViewModel(o),c=t===0?i:a,l=null,u=(r=n.getBody())==null||(r=r.tables)==null||(r=r.find(e=>c>=e.startIndex&&c<=e.endIndex))==null?void 0:r.tableId,d=0;for(let e of s.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){for(let e of n.children)if(e.startIndex<=c&&c<=e.endIndex){d=n.children.indexOf(e),l=e;break}}if(l)break}if(l)break}return l==null||u==null?null:{offset:t===0?l.startIndex:l.endIndex+1,colCount:l.children.length,tableId:u,insertRowIndex:t===0?d:d+1}}function ae(e,t,n){var r;let{startOffset:i,endOffset:a,segmentId:o}=e,s=n.getSelfOrHeaderFooterViewModel(o),c=t===0?i:a,l=(r=n.getBody())==null||(r=r.tables)==null||(r=r.find(e=>c>=e.startIndex&&c<=e.endIndex))==null?void 0:r.tableId,u=[],d=null,f=-1;for(let e of s.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(c<n.startIndex||c>n.endIndex)continue;d=n;for(let e of n.children){for(let t of e.children){let n=e.children.indexOf(t);if(c>=t.startIndex&&c<=t.endIndex){f=n;break}}if(f!==-1)break}}if(d)break}if(d)break}if(d==null||l==null||f===-1)return null;let p=0;for(let e of d.children){let n=e.children[f],r=t===0?n.startIndex:n.endIndex+1;u.push(r-p),p=r}return{offsets:u,tableId:l,columnIndex:f,rowCount:d.children.length}}function oe(e,t,n){let r=[],i=t[n].size.width.v,a=0;for(let e=0;e<t.length;e++)a+=t[e].size.width.v;a+=i;for(let n=0;n<t.length;n++)r.push(t[n].size.width.v/a*e);return i=i/a*e,{widths:r,newColWidth:i}}function K(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=[],l=-1,u=0,d=-1,f=!1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;d=n.startIndex+3;for(let e of n.children){let t=n.children.indexOf(e),{startIndex:a,endIndex:o}=e;r>=a&&r<=o?(l=a,c.push(t),u+=o-a+1):(a>r&&o<i||i>=a&&i<=o)&&(c.push(t),u+=o-a+1),c.length===n.children.length&&(f=!0)}}if(c.length)break}if(c.length)break}return s==null||c.length===0?null:{tableId:s,rowIndexes:c,offset:l,len:u,cursor:d,selectWholeTable:f}}function q(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=[],l=null,u=[],d=-1,f=-1,p=-1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;l=n;for(let e of n.children)for(let t of e.children){let n=e.children.indexOf(t);r>=t.startIndex&&r<=t.endIndex&&(f=n),i>=t.startIndex&&i<=t.endIndex&&(p=n)}}if(l)break}if(l)break}if(l==null||s==null)return null;for(let e=f;e<=p;e++)u.push(e);let m=0;for(let e of l.children){let t=e.children[f],n=e.children[p];c.push({retain:t.startIndex-m,delete:n.endIndex-t.startIndex+1}),m=n.endIndex+1}return d=l.startIndex+3,{offsets:c,tableId:s,columnIndexes:u,cursor:d,selectWholeTable:u.length===l.children[0].children.length,rowCount:l.children.length}}function se(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=-1,l=0,u=-1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;c=n.startIndex,l=n.endIndex-n.startIndex+1,u=n.startIndex}if(n)break}if(l>0)break}return s==null?null:{tableId:s,offset:c,len:l,cursor:u}}function ce(e,t){var n;let{startOffset:r,endOffset:i,segmentId:a}=e,o=t.getSelfOrHeaderFooterViewModel(a),s=(n=t.getBody())==null||(n=n.tables)==null||(n=n.find(e=>r>=e.startIndex&&i<=e.endIndex))==null?void 0:n.tableId,c=[],l=null,u=-1,d=-1,f=-1,p=-1;for(let e of o.getChildren()){for(let t of e.children){let{children:e}=t,n=e[0];if(n){if(r<n.startIndex||i>n.endIndex)continue;l=n;for(let e of n.children){let t=n.children.indexOf(e);for(let n of e.children){let a=e.children.indexOf(n);r>=n.startIndex&&r<=n.endIndex&&(d=t,f=a),i>=n.startIndex&&i<=n.endIndex&&(p=a)}}}if(l)break}if(l)break}if(l==null||s==null||d===-1)return null;let m=l.children[d];for(let e=f;e<=p;e++){let t=m.children[e];c.push({retain:t.startIndex+1,delete:t.endIndex-t.startIndex-3})}return u=l.startIndex+3,{offsets:c,tableId:s,cursor:u,rowCount:l.children.length}}function le(e,t,n){let{startOffset:r}=t,i=null;for(let t of e.getChildren()){for(let e of t.children){let t=e.children[0];if(t&&r>t.startIndex&&r<t.endIndex){i=t;break}}if(i)break}if(i==null)return null;let a=-1,o=-1,s=null;for(let e of i.children){for(let t of e.children)if(r>t.startIndex&&r<t.endIndex){a=e.children.indexOf(t),o=i.children.indexOf(e),s=e;break}if(a>-1)break}if(a===-1||o===-1||s==null)return null;let c=null;if(n===0){if(c=s.children[a+1],!c){let e=i.children[o+1];e&&(c=e.children[0])}}else if(c=s.children[a-1],!c){let e=i.children[o-1];e&&(c=e.children[e.children.length-1])}if(c){let{startIndex:e,endIndex:t}=c;return{startOffset:e+1,endOffset:t-2}}}function ue(e){return e.some(e=>{let{startNodePosition:t}=e;return t?(t==null?void 0:t.path.indexOf(`cells`))>-1:!1})}let de=t.SHEET_EDITOR_UNITS,fe={id:`doc.command.inner-paste`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i,a,o,s,c;let{customRangeMappings:l=[],segmentId:u,textRanges:d,doc:f}=r,p=e.get(t.ICommandService),m=e.get(t.IUndoRedoService),h=e.get(n.DocSelectionManagerService),g=e.get(t.IUniverInstanceService),_=pe(e),v=h.getTextRanges()??[],y=h.getRectRanges()??[],b=h.getSelectionInfo(),{body:x,tableSource:S,drawings:T}=f;if(v.length===0&&y.length===0||x==null)return!1;let E=g.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),D=E==null||(i=E.getSelfOrHeaderFooterModel(u))==null?void 0:i.getBody();if(E==null||D==null)return!1;let O=E.getUnitId(),k={id:n.RichTextEditingMutation.id,params:{unitId:O,actions:[],textRanges:d,segmentId:u,trigger:fe.id}},A=new t.MemoryCursor;A.reset();let j=new t.TextX,M=t.JSONX.getInstance(),N=[],P=[],F=[],I=[],L=!!((a=x.tables)!=null&&a.length),R=!!((o=x.customBlocks)!=null&&o.length),z=!!((s=x.blockRanges)!=null&&s.length);if(L&&u||L&&(ue(v)||y.some(e=>!e.spanEntireTable)))return!1;let B=y.length>0||(b==null||(c=b.options)==null?void 0:c.wholeDocument)===!0,ee=[],H=v;if(B){var U,W;let t=V(e,O);if(!t)return!1;let n=(b==null||(U=b.options)==null?void 0:U.wholeDocument)===!0||be(v,y,D),r=n?0:Te(v,y);if(r==null)return!1;ee=Ce(v,y,E,t.getViewModel(),u,n),H=[{startOffset:r,endOffset:r,collapsed:!0,segmentId:u}],k.params.textRanges=[{startOffset:r+x.dataStream.length,endOffset:r+x.dataStream.length,collapsed:!0,segmentId:u,style:(W=v.find(e=>e.isActive))==null?void 0:W.style}]}for(let e=0;e<H.length;e++){let n=H[e],{startOffset:r,endOffset:i,collapsed:a}=n,o=r-A.cursor,s=t.Tools.deepClone(x),c=[],d=[],p=l.map(({sourceRange:e})=>({sourceRange:e,targetRange:t.BuildTextUtils.customRange.copyCustomRange(e)}));if(p.length>0&&(s.customRanges=p.map(({targetRange:e})=>e)),z&&s.blockRanges.forEach((e,n)=>{let r=x.blockRanges[n];e.blockId=(0,t.generateRandomId)(6),c.push({sourceBlockRange:r,targetBlockRange:e})}),L)for(let e of s.tables){let{tableId:n}=e,r=(0,t.generateRandomId)(6);e.tableId=r;let i=t.Tools.deepClone(S[n]);i.tableId=r;let a=M.insertOp([`tableSource`,r],i);N.push(a)}if(R&&T){var G;let e=((G=E.getSnapshot().drawingsOrder)==null?void 0:G.length)??0;for(let e of s.customBlocks){let{blockId:n}=e,r=(0,t.generateRandomId)(6);e.blockId=r;let i=T[n],a=t.Tools.deepClone(i);a.drawingId=r,d.push({sourceBlockId:n,targetBlockId:r,sourceDrawing:i,targetDrawing:a})}d.forEach(({targetBlockId:t,targetDrawing:n})=>{let r=M.insertOp([`drawings`,t],n),i=M.insertOp([`drawingsOrder`,e],t);N.push(r),N.push(i)})}if((c.length>0||d.length>0||p.length>0)&&_){let e=_.getPasteMutationInfos({unitId:O,segmentId:u,doc:f,sourceBody:x,targetBody:s,blockRangeMappings:c,customRangeMappings:p,customBlockMappings:d});(e.redoMutations.length>0||e.undoMutations.length>0)&&(P.push(...e.redoMutations),F.push(...e.undoMutations),I.push(e))}let m=C(D.customRanges??[],i,de.includes(O)),h=w(D.customDecorations??[],i);if(m&&(s.customRanges=[{...m,startIndex:0,endIndex:x.dataStream.length-1}]),h.length&&(s.customDecorations=h.map(e=>({...e,startIndex:0,endIndex:x.dataStream.length-1}))),a)j.push({t:t.TextXActionType.RETAIN,len:o}),j.push({t:t.TextXActionType.INSERT,body:s,len:x.dataStream.length});else{let e=t.BuildTextUtils.selection.delete([n],x,A.cursor,s,H.length===1);j.push(...e)}A.reset(),A.moveCursor(i)}let te=(0,t.getRichTextEditPath)(E,u);N.push(M.editOp(j.serialize(),te));let ne=N.reduce((e,n)=>t.JSONX.compose(e,n),null);if(k.params.actions=ee&&ee.length>0?t.JSONX.compose(ee,ne):ne,!me(I,p))return!1;let re=`doc-paste-resource:${O}:${Date.now()}`,ie=null;(P.length>0||F.length>0)&&(ie=m.__tempBatchingUndoRedo(O),m.pushUndoRedo({unitID:O,redoMutations:P,undoMutations:F,id:re}));let ae=p.syncExecuteCommand(k.id,k.params);return!ae&&ie!=null?(ie.dispose(),m.rollback(re,O),!1):(ie==null||ie.dispose(),!!ae)}};function pe(e){try{return e.get(z)}catch{return null}}function me(e,t){let n=[];for(let r of e){if(!ge(r.redoMutations,t))return he([...n].reverse(),t),!1;n.push(r.undoMutations)}return!0}function he(e,t){e.forEach(e=>{ge(e,t)})}function ge(e,t){for(let n of e)if(!t.syncExecuteCommand(n.id,n.params))return!1;return!0}function _e(e,t){let{startOffset:n,endOffset:r}=e,i=t.some(e=>e.startIndex===r),a=Math.max(n,i?r-1:r);return{...e,endOffset:a,collapsed:n===a}}function ve(e,n,r){var i;let a=(i=n.getSelfOrHeaderFooterModel(r))==null?void 0:i.getBody(),o=new t.TextX,s=t.JSONX.getInstance(),c=[];if(a==null)return c;let{tables:l=[]}=a,u=e.map(e=>_e(e,l));o.push(...t.BuildTextUtils.selection.delete(u,a,0,null,!1));let d=(0,t.getRichTextEditPath)(n,r);c.push(s.editOp(o.serialize(),d));let f=(0,t.getCustomBlockIdsInSelections)(a,e),p=n.getDrawings()??{},m=n.getDrawingsOrder()??[],h=f.sort((e,t)=>m.indexOf(e)>m.indexOf(t)?-1:+(m.indexOf(e)<m.indexOf(t)));if(h.length>0)for(let e of h){let t=p[e],n=m.indexOf(e);if(t==null||n<0)continue;let r=s.removeOp([`drawings`,e],t),i=s.removeOp([`drawingsOrder`,n],e);c.push(r),c.push(i)}return c.reduce((e,n)=>t.JSONX.compose(e,n),null)}let ye=new Set([t.DataStreamTreeTokenType.PARAGRAPH,t.DataStreamTreeTokenType.SECTION_BREAK,t.DataStreamTreeTokenType.BLOCK_START,t.DataStreamTreeTokenType.BLOCK_END,t.DataStreamTreeTokenType.COLUMN_GROUP_START,t.DataStreamTreeTokenType.COLUMN_START,t.DataStreamTreeTokenType.COLUMN_END,t.DataStreamTreeTokenType.COLUMN_GROUP_END]);function be(e,n,r){let i=(Array.isArray(e)?e:[]).filter(e=>!e.collapsed).map(({startOffset:e,endOffset:t})=>({startOffset:e,endOffset:t}));for(let e of Array.isArray(n)?n:[]){if(!e.spanEntireTable)continue;let n=(r.tables??[]).find(t=>e.tableId&&t.tableId===e.tableId||t.startIndex===e.startOffset);n&&i.push((0,t.getTableRangeInterval)(n))}i.sort((e,t)=>e.startOffset-t.startOffset||e.endOffset-t.endOffset);let a=Math.max(0,r.dataStream.length-2),o=0;for(let e=0;e<a;e++){for(var s;((s=i[o])==null?void 0:s.endOffset)<=e;)o++;let t=i[o];if(!(t&&t.startOffset<=e&&e<t.endOffset)&&!ye.has(r.dataStream[e]))return!1}return a>0}function xe(e,n,r){var i;let a=(i=n.getSelfOrHeaderFooterModel(r))==null?void 0:i.getBody();if(!a)return[];let o={dataStream:t.DataStreamTreeTokenType.PARAGRAPH,paragraphs:[{paragraphId:(0,t.createParagraphId)(new Set((a.paragraphs??[]).map(e=>e.paragraphId))),startIndex:0}]},s=Math.max(0,a.dataStream.length-1),c=new t.TextX;c.push({t:t.TextXActionType.INSERT,len:o.dataStream.length,body:o}),c.push({t:t.TextXActionType.DELETE,len:s});let l=t.JSONX.getInstance(),u=(0,t.getRichTextEditPath)(n,r),d=[],f=l.editOp(c.serialize(),u);f&&d.push(f);let p=n.getDrawings()??{},m=n.getDrawingsOrder()??[],h=(0,t.getCustomBlockIdsInSelections)(a,[{...e[0]??{collapsed:!1},startOffset:0,endOffset:s,collapsed:!1}]).sort((e,t)=>m.indexOf(t)-m.indexOf(e));for(let e of h){let t=p[e],n=m.indexOf(e);if(t==null||n<0)continue;let r=l.removeOp([`drawings`,e],t),i=l.removeOp([`drawingsOrder`,n],e);r&&d.push(r),i&&d.push(i)}for(let e of a.tables??[]){let t=l.removeOp([`tableSource`,e.tableId]);t&&d.push(t)}let g=null;for(let e of d)g=g==null?e:t.JSONX.compose(g,e);return g??[]}function Se(e,n,r,i){var a;let o=[];if(((a=n.getSelfOrHeaderFooterModel(i))==null?void 0:a.getBody())==null)return o;let s=new t.TextX,c=t.JSONX.getInstance(),l=new t.MemoryCursor;l.reset();for(let n of e){let{startOffset:e,endOffset:a,spanEntireRow:u,spanEntireTable:d}=n;if(e!=null&&a!=null)if(d){let n=se({startOffset:e,endOffset:a,segmentId:i},r);if(n==null)continue;let{offset:u,len:d,tableId:f}=n;u-l.cursor>0&&s.push({t:t.TextXActionType.RETAIN,len:u-l.cursor}),s.push({t:t.TextXActionType.DELETE,len:d});let p=c.removeOp([`tableSource`,f]);o.push(p),l.moveCursorTo(u+d)}else if(u){let n=K({startOffset:e,endOffset:a,segmentId:i},r);if(n==null)continue;let{offset:u,rowIndexes:d,len:f,tableId:p}=n;u-l.cursor>0&&s.push({t:t.TextXActionType.RETAIN,len:u-l.cursor}),s.push({t:t.TextXActionType.DELETE,len:f});for(let e of d.reverse()){let t=c.removeOp([`tableSource`,p,`tableRows`,e]);o.push(t)}l.moveCursorTo(u+f)}else{let n=ce({startOffset:e,endOffset:a,segmentId:i},r);if(n==null)continue;let{offsets:o}=n;for(let e of o){let{retain:n,delete:r}=e;n-l.cursor>0&&s.push({t:t.TextXActionType.RETAIN,len:n-l.cursor}),s.push({t:t.TextXActionType.DELETE,len:r}),l.moveCursorTo(n+r)}}}let u=(0,t.getRichTextEditPath)(n,i);return o.push(c.editOp(s.serialize(),u)),o.reduce((e,n)=>t.JSONX.compose(e,n),null)}function Ce(e,n,r,i,a,o=!1){var s;let c=[],l=(s=r.getSelfOrHeaderFooterModel(a))==null?void 0:s.getBody();if(l&&Array.isArray(e)&&Array.isArray(n)&&(o||be(e,n,l)))return xe(e,r,a);if(Array.isArray(e)&&(e==null?void 0:e.length)!==0&&(c=ve(e,r,a)),Array.isArray(n)&&(n==null?void 0:n.length)!==0){let e=Se(n,r,i,a);c=c==null||c.length===0?e:t.JSONX.compose(c,t.JSONX.transform(e,c,`right`))}return c}function we(e,n,r,i,a,o,s=!1){var c;let l=(c=r.getSelfOrHeaderFooterModel(a))==null?void 0:c.getBody(),u=s||l&&be(e,n,l)?0:Te(e,n);if(u==null)return null;let d=Ce(e,n,r,i,a,s),f=new t.TextX;u>0&&f.push({t:t.TextXActionType.RETAIN,len:u}),o.dataStream.length>0&&f.push({t:t.TextXActionType.INSERT,body:o,len:o.dataStream.length});let p=t.JSONX.getInstance().editOp(f.serialize(),(0,t.getRichTextEditPath)(r,a));return{actions:p==null?d:d==null||d.length===0?p:t.JSONX.compose(d,p),insertOffset:u}}function Te(e,t){let n=[...Array.isArray(e)?e:[],...Array.isArray(t)?t:[]].filter(e=>e.startOffset!=null&&e.endOffset!=null).reduce((e,t)=>Math.min(e,t.startOffset),1/0);return Number.isFinite(n)?n:null}let Ee={id:`doc.command.inner-cut`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.ICommandService),s=e.get(t.IUniverInstanceService),c=a.getSelectionInfo(),{segmentId:l,textRanges:u,selections:d=a.getTextRanges(),rectRanges:f=a.getRectRanges(),wholeBodySelected:p=(c==null||(i=c.options)==null?void 0:i.wholeDocument)===!0}=r;if((!Array.isArray(d)||d.length===0)&&(!Array.isArray(f)||f.length===0))return!1;let m=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(m==null)return!1;let h=m.getUnitId(),g=V(e,h);if(g==null)return!1;let _=g.getViewModel(),v={id:n.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:u,trigger:Ee.id}};return v.params.actions=Ce(d,f,m,_,l,p),!!o.syncExecuteCommand(v.id,v.params)}};function De(e){var r,i;let a=e.get(t.IUniverInstanceService),o=e.get(n.DocSelectionManagerService).getActiveTextRange(),s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);return!o||!o.collapsed||!s||o.segmentId?!1:t.BuildTextUtils.range.getParagraphsInRange(o,((r=s.getBody())==null?void 0:r.paragraphs)??[],((i=s.getBody())==null?void 0:i.dataStream)??``)[0]}let Oe={id:`doc.command.delete-custom-block`,type:t.CommandType.COMMAND,handler:async(e,r)=>{let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),{direction:s,range:c,unitId:l,drawingId:u}=r,d=i.getActiveTextRange(),f=a.getUnit(l,t.UniverInstanceType.UNIVER_DOC);if(d==null||f==null)return!1;let{startOffset:p,segmentId:m,style:h}=d,g=s===t.DeleteDirection.LEFT?p-1:p,_=[{startOffset:g,endOffset:g,style:h}],v={id:n.RichTextEditingMutation.id,params:{unitId:l,actions:[],textRanges:_,prevTextRanges:[c]}},y=new t.TextX,b=t.JSONX.getInstance(),x=[];p>0&&y.push({t:t.TextXActionType.RETAIN,len:s===t.DeleteDirection.LEFT?p-1:p}),y.push({t:t.TextXActionType.DELETE,len:1});let S=(0,t.getRichTextEditPath)(f,m);x.push(b.editOp(y.serialize(),S));let C=(f.getDrawings()??{})[u],w=f.getDrawingsOrder().indexOf(u),T=b.removeOp([`drawings`,u],C),E=b.removeOp([`drawingsOrder`,w],u);return x.push(T),x.push(E),v.params.actions=x.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(v.id,v.params)}},ke={id:`doc.command.merge-two-paragraph`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),{direction:c,range:l}=r,u=a.getActiveTextRange(),d=a.getTextRanges();if(u==null||d==null)return!1;let{segmentId:f,style:p}=u,m=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),h=m==null||(i=m.getSelfOrHeaderFooterModel(f))==null?void 0:i.getBody();if(m==null||h==null)return!1;let g=h.dataStream,_=u,v=m.getUnitId(),{startOffset:y,collapsed:b}=_;if(!b)return!1;let x=c===t.DeleteDirection.LEFT?y:y+1,S,C;for(let e of h.paragraphs){if(e.startIndex>=x){C=e;break}S=e}if(S==null||C==null)return!1;let w=c===t.DeleteDirection.LEFT?y-1:y,T=[{startOffset:w,endOffset:w,style:p}],E={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:T,prevTextRanges:[l]}},D=new t.TextX,O=t.JSONX.getInstance();S.startIndex>0&&D.push({t:t.TextXActionType.RETAIN,len:S.startIndex}),D.push({t:t.TextXActionType.DELETE,len:1}),C.startIndex>S.startIndex+1&&D.push({t:t.TextXActionType.RETAIN,len:C.startIndex-S.startIndex-1});let k=Object.values(t.DataStreamTreeTokenType),A=g[S.startIndex-1];(A&&!k.includes(A)||A===` `)&&D.push({t:t.TextXActionType.RETAIN,len:1,coverType:t.UpdateDocsAttributeType.REPLACE,body:{dataStream:``,paragraphs:[{...t.Tools.deepClone(S),startIndex:0}]}});let j=(0,t.getRichTextEditPath)(m,f);return E.params.actions=O.editOp(D.serialize(),j),!!s.syncExecuteCommand(E.id,E.params)}},Ae={id:`doc.command.remove-horizontal-line`,type:t.CommandType.COMMAND,handler:async e=>{var r,i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=a.getActiveTextRange(),l=a.getTextRanges();if(c==null||l==null)return!1;let{segmentId:u,style:d}=c,f=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),p=f==null||(r=f.getSelfOrHeaderFooterModel(u))==null?void 0:r.getBody();if(f==null||p==null)return!1;let m=c,h=f.getUnitId(),{startOffset:g,collapsed:_}=m;if(!_)return!1;let v=(i=p.paragraphs)==null?void 0:i.find(e=>e.startIndex===g-1);if(v==null)return!1;let y=[{startOffset:g,endOffset:g,style:d}],b={id:n.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:y}},x=new t.TextX,S=t.JSONX.getInstance();v.startIndex>0&&x.push({t:t.TextXActionType.RETAIN,len:v.startIndex}),x.push({t:t.TextXActionType.RETAIN,len:1,coverType:t.UpdateDocsAttributeType.REPLACE,body:{dataStream:``,paragraphs:[{...t.Tools.deepClone({...v,paragraphStyle:{...v.paragraphStyle,borderBottom:void 0}}),startIndex:0}]}});let C=(0,t.getRichTextEditPath)(f,u);return b.params.actions=S.editOp(x.serialize(),C),!!s.syncExecuteCommand(b.id,b.params)}};function je(e,t){let n=0;if(e==null||e.length===0){if(typeof t[0].startOffset==`number`){let e=t[0],{spanEntireRow:r,spanEntireTable:i}=e;n=i?e.startOffset-3:r?e.startRow>0?e.startOffset-6:e.startOffset:t[0].startOffset}}else if(e.length>0&&t.length>0){let r=e[0],i=t[0];if(r.startOffset!=null&&i.startOffset!=null){if(r.startOffset<i.startOffset)n=r.startOffset;else if(r.startOffset>=i.startOffset){let{spanEntireRow:e,spanEntireTable:t}=i;t?n=i.startOffset-3:e&&(n=i.startOffset-6)}}}return n}function Me(e,n){var r;return((r=e.blockRanges)==null?void 0:r.some(e=>{let r=(0,t.getBlockRangeInterval)(e);return r.startOffset<n&&n<r.endOffset-1}))??!1}let Ne={id:`doc.command.delete-left`,type:t.CommandType.COMMAND,handler:async e=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=!0,l=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(l==null)return!1;let u=V(e,l.getUnitId()),d=a.getActiveTextRange(),f=a.getRectRanges(),p=a.getTextRanges(),m=u==null?void 0:u.getSkeleton();if(m==null)return!1;if(f!=null&&f.length){let e=je(p,f),t=f[0].segmentId,n=[{startOffset:e,endOffset:e}];return s.executeCommand(Ee.id,{segmentId:t,textRanges:n})}if(d==null||p==null)return!1;let h=await Fe(e,Ne.id);if(h!=null)return h;let{segmentId:g,style:_,segmentPage:v}=d,y=(i=l.getSelfOrHeaderFooterModel(g))==null?void 0:i.getBody();if(y==null)return!1;let b=d,{startOffset:x,collapsed:S}=b;if(S&&Re(l)){let e=Le(y,x);if(e!=null)return ze(s,l,g??``,e,_)}let C=m.findNodeByCharIndex(x,g,v),w=(0,r.hasListGlyph)(C),T=(0,r.isIndentByGlyph)(C,y),E=x,D=m.findNodeByCharIndex(x-1,g,v);if(!Me(y,x)&&(0,r.isFirstGlyph)(C)&&D!==C&&(w===!0||T===!0)&&S){let e=(0,r.getParagraphByGlyph)(C,y);if(e==null)return!1;let i=e==null?void 0:e.startIndex,a={startIndex:0,paragraphId:e.paragraphId},o=e.paragraphStyle;if(w===!0){if(o){a.paragraphStyle={...o};let{hanging:e}=o;e&&(a.paragraphStyle.indentStart={...e},a.paragraphStyle.hanging=void 0)}}else if(T===!0){let t=e.bullet;t&&(a.bullet=t),o&&(a.paragraphStyle={...o},delete a.paragraphStyle.hanging,delete a.paragraphStyle.indentStart)}let u=[{startOffset:E,endOffset:E,collapsed:!0,style:_}];c=await s.executeCommand(n.UpdateTextCommand.id,{unitId:l.getUnitId(),updateBody:{dataStream:``,paragraphs:[{...a}]},range:{startOffset:i,endOffset:i+1,collapsed:!0},textRanges:u,coverType:t.UpdateDocsAttributeType.REPLACE,segmentId:g})}else if(S===!0){if(D==null)return!0;if(D.content===`\r`){var O,k;let e=(O=y.paragraphs)==null?void 0:O.find(e=>e.startIndex===x-1);c=e!=null&&(k=e.paragraphStyle)!=null&&k.borderBottom?await s.executeCommand(Ae.id):await s.executeCommand(ke.id,{direction:t.DeleteDirection.LEFT,range:b})}else if(D.streamType===`\b`){var A,j;let e=(A=l.getSnapshot().drawings)==null?void 0:A[D.drawingId??``];if(e==null)return!0;let r=(j=l.getBody())==null||(j=j.customBlocks)==null?void 0:j.find(e=>e.blockId===D.drawingId);if(e.layoutType===t.PositionedObjectLayoutType.INLINE||(r==null?void 0:r.blockType)===t.BlockType.CUSTOM){let e=l.getUnitId();c=await s.executeCommand(Oe.id,{direction:t.DeleteDirection.LEFT,range:d,unitId:e,drawingId:D.drawingId})}else{let e=m.findNodeByCharIndex(x-2);if(e==null)return!0;E-=D.count,E-=e.count,c=await s.executeCommand(n.DeleteTextCommand.id,{unitId:l.getUnitId(),range:{...d,startOffset:d.startOffset-1,endOffset:d.endOffset-1},segmentId:g,direction:t.DeleteDirection.LEFT,len:e.count})}}else E-=D.count,c=await s.executeCommand(n.DeleteTextCommand.id,{unitId:l.getUnitId(),range:b,segmentId:g,direction:t.DeleteDirection.LEFT,len:D.count})}else{let e=Ie(b,[b]);c=await s.executeCommand(Ee.id,{segmentId:g,textRanges:e,selections:[b]})}return c}},Pe={id:`doc.command.delete-right`,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!a)return!1;let o=V(e,a.getUnitId()),s=e.get(t.ICommandService),c=i.getActiveTextRange(),l=i.getRectRanges(),u=i.getTextRanges(),d=o==null?void 0:o.getSkeleton();if(l!=null&&l.length){let e=je(u,l),t=l[0].segmentId,n=[{startOffset:e,endOffset:e}];return s.executeCommand(Ee.id,{segmentId:t,textRanges:n})}if(c==null||d==null||u==null)return!1;let f=await Fe(e,Pe.id);if(f!=null)return f;let{segmentId:p,style:m,segmentPage:h}=c,g=a==null||(r=a.getSelfOrHeaderFooterModel(p))==null?void 0:r.getBody();if(!a||!g)return!1;let _=c,{startOffset:v,endOffset:y,collapsed:b}=_;if(b&&Re(a)){let e=Le(g,v);if(e!=null)return ze(s,a,p??``,e,m)}if(v===g.dataStream.length-2&&b)return!0;let x=!1;if(b===!0){let e=d.findNodeByCharIndex(v,p,h),r=d.findNodeByCharIndex(v+1);if(e.streamType===t.DataStreamTreeTokenType.PARAGRAPH&&(r==null?void 0:r.streamType)===t.DataStreamTreeTokenType.SECTION_BREAK)return!1;if(e.content===`\r`)x=await s.executeCommand(ke.id,{direction:t.DeleteDirection.RIGHT,range:c});else if(e.streamType===`\b`){var S;let i=(S=a.getSnapshot().drawings)==null?void 0:S[e.drawingId??``];if(i==null)return!0;if(i.layoutType===t.PositionedObjectLayoutType.INLINE){let n=a.getUnitId();x=await s.executeCommand(Oe.id,{direction:t.DeleteDirection.RIGHT,range:c,unitId:n,drawingId:e.drawingId})}else{if(r==null)return!0;x=await s.executeCommand(n.DeleteTextCommand.id,{unitId:a.getUnitId(),range:{...c,startOffset:v+1,endOffset:y+1},segmentId:p,direction:t.DeleteDirection.RIGHT,len:r.count})}}else x=await s.executeCommand(n.DeleteTextCommand.id,{unitId:a.getUnitId(),range:_,segmentId:p,direction:t.DeleteDirection.RIGHT,len:e.count})}else{let e=Ie(_,[_]);x=await s.executeCommand(Ee.id,{segmentId:p,textRanges:e,selections:[_]})}return x}};async function Fe(e,n){if(!e.has(j))return null;let r=e.get(t.ICommandService),i=e.get(j).onAutoFormat(n);return i.length?(await(0,t.sequenceExecuteAsync)(i,r)).result:null}function Ie(e,t){let n=e.endOffset;for(let r of t){let{startOffset:t,endOffset:i}=r;t!=null&&i!=null&&i<=e.endOffset&&(n-=i-t)}return[{startOffset:n,endOffset:n,style:e.style}]}function Le(e,n){let r=e.paragraphs??[];for(let e=0;e<r.length;e++){var i;let a=r[e],o=e===0?0:r[e-1].startIndex+1;if(a.startIndex===o&&a.startIndex===n&&((i=a.paragraphStyle)==null?void 0:i.horizontalAlign)===t.HorizontalAlign.CENTER)return a}}function Re(e){return!t.SHEET_EDITOR_UNITS.includes(e.getUnitId())}function ze(e,r,i,a,o){return e.executeCommand(n.UpdateTextCommand.id,{unitId:r.getUnitId(),updateBody:{dataStream:``,paragraphs:[{...a,startIndex:0,paragraphStyle:{...a.paragraphStyle,horizontalAlign:t.HorizontalAlign.LEFT}}]},range:{startOffset:a.startIndex,endOffset:a.startIndex+1,collapsed:!0},textRanges:[{startOffset:a.startIndex,endOffset:a.startIndex,collapsed:!0,style:o}],coverType:t.UpdateDocsAttributeType.REPLACE,segmentId:i})}let Be={id:`doc.command.delete-current-paragraph`,name:`doc.command.delete-current-paragraph`,multi:!0,priority:0,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(t.IUniverInstanceService),a=e.get(t.ICommandService),o=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!o)return!1;let s=((r=o.getBody())==null?void 0:r.dataStream)??``,c=De(e);if(!c)return!1;let l=t.BuildTextUtils.selection.delete([{startOffset:c.paragraphStart,endOffset:s[c.paragraphEnd+1]===`
2
+ `?c.paragraphEnd:c.paragraphEnd+1,collapsed:!1}],o.getBody(),0,void 0,!0),u=(0,t.getRichTextEditPath)(o),d={unitId:o.getUnitId(),actions:t.JSONX.getInstance().editOp(l,u),textRanges:[{startOffset:c.paragraphStart,endOffset:c.paragraphStart,collapsed:!0}]};return a.syncExecuteCommand(n.RichTextEditingMutation.id,d)}};function Ve(e){let t=e.match(/data-copy-id="([^\s]+)"/);return t&&t[1]?t[1]:null}let He=new class{constructor(){O(this,`_cache`,new t.LRUMap(10))}set(e,t){this._cache.set(e,t)}get(e){return this._cache.get(e)}clear(){this._cache.clear()}};function Ue(e){let n=e.style,i={},a=e.tagName.toLowerCase();switch(a){case`b`:case`em`:case`strong`:i.bl=t.BooleanNumber.TRUE;break;case`s`:i.st={s:t.BooleanNumber.TRUE};break;case`u`:i.ul={s:t.BooleanNumber.TRUE};break;case`i`:i.it=t.BooleanNumber.TRUE;break;case`sub`:case`sup`:i.va=a===`sup`?t.BaselineOffset.SUPERSCRIPT:t.BaselineOffset.SUBSCRIPT;break}for(let e=0;e<n.length;e++){let a=n[e],o=n.getPropertyValue(a);switch(a){case`font-family`:i.ff=o.replace(/^"/g,``).replace(/"$/g,``);break;case`font-size`:{let e=Number.parseInt(o);Number.isNaN(e)||(o.endsWith(`pt`)?i.fs=e:o.endsWith(`px`)&&(i.fs=(0,r.pixelToPt)(e)));break}case`font-style`:o===`italic`&&(i.it=t.BooleanNumber.TRUE);break;case`font-weight`:(Number(o)>400||String(o)===`bold`)&&(i.bl=t.BooleanNumber.TRUE);break;case`text-decoration`:/underline/.test(o)?i.ul={s:t.BooleanNumber.TRUE}:/overline/.test(o)?i.ol={s:t.BooleanNumber.TRUE}:/line-through/.test(o)&&(i.st={s:t.BooleanNumber.TRUE});break;case`color`:try{let e=new t.ColorKit(o);e.isValid&&(i.cl={rgb:e.toRgbString()})}catch{}break;case`background-color`:case`background`:{let e=new t.ColorKit(o);e.isValid&&(i.bg={rgb:e.toRgbString()});break}default:break}}return i}function We(e){let t=new DOMParser,n=`<x-univer id="univer-root">${e}</x-univer>`;return t.parseFromString(n,`text/html`).querySelector(`#univer-root`)}function Ge(e,t){let n=e.tagName.toLowerCase();return typeof t==`string`?n===t:Array.isArray(t)?t.some(e=>e===n):t(e)}var Ke=class e{constructor(){O(this,`_tableCache`,[]),O(this,`_styleCache`,new Map),O(this,`_styleRules`,[]),O(this,`_afterProcessRules`,[]),O(this,`_listStack`,[]),O(this,`_lastParagraphIndex`,-1)}static use(e){if(this._pluginList.includes(e))throw Error(`Univer paste plugin ${e.name} already added`);this._pluginList.push(e)}_createParagraphId(e){var n;return(0,t.createParagraphId)(new Set((n=e.paragraphs)==null?void 0:n.map(e=>e.paragraphId)))}_createSectionId(e){var n;return(0,t.createSectionId)(new Set((n=e.sectionBreaks)==null?void 0:n.map(e=>e.sectionId)))}convert(t,n={}){var r;let i=e._pluginList.find(e=>e.checkPasteType(t)),a=We((i==null||(r=i.preprocessHtml)==null?void 0:r.call(i,t))??t),o={body:{dataStream:``,paragraphs:[],sectionBreaks:[],tables:[],textRuns:[],customBlocks:[]},tableSource:{},id:(n==null?void 0:n.unitId)??``};return i&&(this._styleRules=[...i.stylesRules],this._afterProcessRules=[...i.afterProcessRules]),this._tableCache=[],this._listStack=[],this._lastParagraphIndex=-1,this._styleCache.clear(),this._process(null,a.childNodes,o),this._styleCache.clear(),this._styleRules=[],this._afterProcessRules=[],o}_process(e,r,i){let a=i.body;for(let s of r)if(s.nodeType===Node.TEXT_NODE){let t=Je(s);if(!t)continue;let n;e&&this._styleCache.has(e)&&(n=this._styleCache.get(e)),a.dataStream+=t,n&&Object.getOwnPropertyNames(n).length&&a.textRuns.push({st:a.dataStream.length-t.length,ed:a.dataStream.length,ts:n})}else if(s.nodeName===`IMG`){let e=s,r=e.dataset.imageSourceType??(e.src?Ye(e.src):void 0),c=r===t.ImageSourceType.UUID?e.dataset.source:e.src;if(c&&r){var o;let s=ut(e,`width`)??100,l=ut(e,`height`)??100,u=ct(e.dataset.docTransformWidth||null,null,`width`)??s,d=ct(e.dataset.docTransformHeight||null,null,`height`)??l,f=(0,t.generateRandomId)(6);(o=i.body)==null||(o=o.customBlocks)==null||o.push({startIndex:a.dataStream.length,blockId:f}),a.dataStream+=`\b`,i.drawings||={},i.drawings[f]={drawingId:f,title:``,description:``,imageSourceType:r,source:c,transform:{width:s,height:l,left:0},docTransform:(0,n.buildDocTransform)(u,d),layoutType:t.PositionedObjectLayoutType.INLINE,drawingType:t.DrawingTypeEnum.DRAWING_IMAGE,unitId:i.id||``,subUnitId:i.id||``}}}else if(t.skipParseTagNames.includes(s.nodeName.toLowerCase()))continue;else if(s.nodeType===Node.ELEMENT_NODE){let t=s;if(t.tagName.toUpperCase()===`TABLE`){this._processHtmlTable(t,i);continue}if(this._processCodeBlock(t,i))continue;let n=this._processBeforeLink(t,i),r=this._processBeforeStructuredBlock(t,i),a=this._processBeforeList(t),o=e?this._styleCache.get(e):{},c=this._styleRules.find(({filter:e})=>Ge(s,e)),l=c?c.getStyle(s):Ue(s);this._styleCache.set(s,{...o,...l});let{childNodes:u}=s;this._processBeforeTable(s,i),this._process(s,u,i),this._processAfterTable(s,i),this._processAfterList(a);let d=this._afterProcessRules.find(({filter:e})=>Ge(s,e)),f=!!d;d&&d.handler(i,s),this._processAfterDefaultBlock(t,i,f),this._processAfterStructuredBlock(t,i,r),this._processAfterLink(t,i,n)}}_processCodeBlock(e,n){if(e.tagName.toUpperCase()!==`PRE`)return!1;let r=n.body,i=r.dataStream.length,a=e.textContent??``;return r.dataStream+=a,this._appendParagraph(n,e),r.blockRanges??=[],r.blockRanges.push({blockId:(0,t.generateRandomId)(6),blockType:t.DocumentBlockRangeType.CODE,startIndex:i,endIndex:r.dataStream.length-1}),!0}_processBeforeStructuredBlock(e,t){return pt(e)?t.body.dataStream.length:null}_processAfterStructuredBlock(e,n,r){let i=pt(e),a=n.body;!i||r==null||a.dataStream.length<=r||(a.blockRanges??=[],a.blockRanges.push({blockId:(0,t.generateRandomId)(6),blockType:i,startIndex:r,endIndex:a.dataStream.length-1}))}_processBeforeList(e){let n=e.tagName.toUpperCase();if(n!==`OL`&&n!==`UL`)return null;let r={listId:(0,t.generateRandomId)(6),listType:n===`OL`?t.PresetListType.ORDER_LIST:t.PresetListType.BULLET_LIST,nestingLevel:this._listStack.length};return this._listStack.push(r),r}_processAfterList(e){e&&this._listStack.pop()}_processAfterDefaultBlock(e,t,n){if(n){this._applyListInfo(e,t),this._lastParagraphIndex=t.body.dataStream.length-1;return}mt(e)&&this._appendParagraph(t,e)}_appendParagraph(e,n){let r=e.body;if(r.dataStream[this._lastParagraphIndex]===`\r`&&this._lastParagraphIndex===r.dataStream.length-1)return;r.paragraphs??=[];let i={startIndex:r.dataStream.length,paragraphId:this._createParagraphId(r)},a=ht(n);a!=null&&(i.paragraphStyle={...i.paragraphStyle,headingId:(0,t.generateRandomId)(6),namedStyleType:a});let o=this._listStack[this._listStack.length-1]??gt(n);o&&(i.bullet={listId:o.listId,listType:o.listType,nestingLevel:o.nestingLevel},i.startIndex-=_t(r)),r.paragraphs.push(i),r.dataStream+=`\r`,this._lastParagraphIndex=r.dataStream.length-1}_applyListInfo(e,t){var n;let r=this._listStack[this._listStack.length-1],i=gt(e),a=r??i,o=(n=t.body)==null||(n=n.paragraphs)==null?void 0:n[t.body.paragraphs.length-1];!a||!o||(o.bullet={listId:a.listId,listType:a.listType,nestingLevel:a.nestingLevel},i&&(o.startIndex-=_t(t.body)))}_processHtmlTable(e,n){let r=n.body;r.dataStream[r.dataStream.length-1]!==`\r`&&(r.dataStream+=`\r`,r.paragraphs??=[],r.paragraphs.push({startIndex:r.dataStream.length-1,paragraphId:this._createParagraphId(r)})),n.tableSource??={},r.tables??=[],r.sectionBreaks??=[];let i=qe(e),a=Ze(i),o=Math.max(1,...a.map(e=>e.length)),s=G(0,o,660),c=ct(e.getAttribute(`width`),e.getAttribute(`style`),`width`),l=et(e,a,o,c);s.tableRows=[],s.tableColumns=l.map(e=>W(e)),s.size={type:t.TableSizeType.SPECIFIED,width:{v:c??s.tableColumns.reduce((e,t)=>e+t.size.width.v,0)}};let u=r.dataStream.length;r.dataStream+=t.DataStreamTreeTokenType.TABLE_START,a.forEach((e,a)=>{let c=U(0),l=i[a],u=l?ct(l.getAttribute(`height`),l.getAttribute(`style`),`height`):void 0;u!=null&&(c.trHeight={val:{v:u},hRule:t.TableRowHeightRule.EXACT}),s.tableRows.push(c),r.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_START;for(let t=0;t<o;t++){let r=e[t]??{element:null,rowSpan:1,colSpan:1,covered:!0},i=r.covered?{...H(),rowSpan:0,columnSpan:0}:tt(r.element,r.rowSpan,r.colSpan);c.tableCells.push(i),this._appendHtmlTableCell(r,n)}r.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_END}),n.tableSource[s.tableId]=s,r.dataStream+=t.DataStreamTreeTokenType.TABLE_END,r.tables.push({startIndex:u,endIndex:r.dataStream.length,tableId:s.tableId})}_appendHtmlTableCell(e,n){let r=n.body;r.dataStream+=t.DataStreamTreeTokenType.TABLE_CELL_START,e.element&&!e.covered&&this._process(e.element,e.element.childNodes,n),r.dataStream[r.dataStream.length-1]!==`\r`&&this._appendParagraph(n,e.element??document.createElement(`td`)),r.sectionBreaks??=[],r.sectionBreaks.push({sectionId:this._createSectionId(r),startIndex:r.dataStream.length}),r.dataStream+=`\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`}_processBeforeTable(e,n){let r=e.tagName.toUpperCase(),i=n.body;switch(r){case`TABLE`:{if(i.dataStream[i.dataStream.length-1]!==`\r`){var a;i.dataStream+=`\r`,i.paragraphs??=[],(a=i.paragraphs)==null||a.push({startIndex:i.dataStream.length-1,paragraphId:this._createParagraphId(i)})}let e=G(0,0,660);this._tableCache.push({table:e,startIndex:i.dataStream.length}),i.dataStream+=t.DataStreamTreeTokenType.TABLE_START;break}case`TR`:{let e=U(0);this._tableCache[this._tableCache.length-1].table.tableRows.push(e),i.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_START;break}case`TD`:{let e=H(),n=this._tableCache[this._tableCache.length-1].table;n.tableRows[n.tableRows.length-1].tableCells.push(e),i.dataStream+=t.DataStreamTreeTokenType.TABLE_CELL_START;break}}}_processAfterTable(e,n){let r=e.tagName.toUpperCase(),i=n.body;n.tableSource??={},i.tables??=[],i.sectionBreaks??=[];let{tableSource:a}=n;switch(r){case`TABLE`:{let{startIndex:e,table:n}=this._tableCache.pop(),r=n.tableRows[0].tableCells.length,o=W(660/r);n.tableColumns=[...Array(r).fill(null).map(()=>t.Tools.deepClone(o))],a[n.tableId]=n,i.dataStream+=t.DataStreamTreeTokenType.TABLE_END,i.tables.push({startIndex:e,endIndex:i.dataStream.length,tableId:n.tableId});break}case`TR`:i.dataStream+=t.DataStreamTreeTokenType.TABLE_ROW_END;break;case`TD`:var o;if(i.dataStream[i.dataStream.length-1]!==`\r`){var s;(s=i.paragraphs)==null||s.push({startIndex:i.dataStream.length,paragraphId:this._createParagraphId(i)}),i.dataStream+=`\r`}(o=i.sectionBreaks)==null||o.push({sectionId:this._createSectionId(i),startIndex:i.dataStream.length}),i.dataStream+=`\n${t.DataStreamTreeTokenType.TABLE_CELL_END}`;break}}_processBeforeLink(e,t){return t.body.dataStream.length}_processAfterLink(e,n,r){let i=n.body,a=e;if(a.tagName.toUpperCase()===`A`){let e=a.href;if(!(0,t.isSafeUrl)(e))return;i.customRanges=i.customRanges??[],i.customRanges.push({startIndex:r,endIndex:i.dataStream.length-1,rangeId:a.dataset.rangeid??(0,t.generateRandomId)(),rangeType:t.CustomRangeType.HYPERLINK,properties:{url:e}})}}};O(Ke,`_pluginList`,[]);function qe(e){let t=[];return Array.from(e.children).forEach(e=>{let n=e.tagName.toUpperCase();n===`TR`?t.push(e):(n===`TBODY`||n===`THEAD`||n===`TFOOT`)&&t.push(...Array.from(e.children).filter(e=>e.tagName.toUpperCase()===`TR`))}),t}function Je(e){let t=e.nodeValue??``;if(t.includes(``))return t.replace(/[\t\u00A0]+/g,` `).replace(/[ \r\n]+/g,` `).replace(/ *\uE000+ */g,e=>` `.repeat(Array.from(e).filter(e=>e===``).length));let n=/[\t\u00A0]/.test(t),r=t.replace(/[\t\u00A0]+/g,` `).replace(/[ \r\n]+/g,` `);return r.trim()?r:n&&Xe(e.previousSibling,`previous`)&&Xe(e.nextSibling,`next`)?` `:``}function Ye(e){return e.startsWith(`data:image/`)?t.ImageSourceType.BASE64:t.ImageSourceType.URL}function Xe(e,t){let n=e;for(;n;){var r;if(n.nodeType===Node.TEXT_NODE&&(r=n.nodeValue)!=null&&r.trim()||n.nodeType===Node.ELEMENT_NODE&&(n.textContent??``).trim())return!0;n=t===`previous`?n.previousSibling:n.nextSibling}return!1}function Ze(e){let t=[],n=new Set;e.forEach((e,r)=>{let i=[],a=0;for(Qe(e).forEach(e=>{for(;n.has(`${r}:${a}`);)i[a]={element:null,rowSpan:1,colSpan:1,covered:!0},a++;let t=Math.max(1,Number(e.getAttribute(`rowspan`)??1)),o=Math.max(1,Number(e.getAttribute(`colspan`)??1));i[a]={element:e,rowSpan:t,colSpan:o};for(let e=0;e<t;e++)for(let t=0;t<o;t++)(e!==0||t!==0)&&(n.add(`${r+e}:${a+t}`),e===0&&(i[a+t]={element:null,rowSpan:1,colSpan:1,covered:!0}));a+=o});n.has(`${r}:${a}`);)i[a]={element:null,rowSpan:1,colSpan:1,covered:!0},a++;t.push(i)});let r=Math.max(0,...t.map(e=>e.length));return t.forEach(e=>{for(;e.length<r;)e.push({element:null,rowSpan:1,colSpan:1,covered:!0})}),t.length?t:[[]]}function Qe(e){return Array.from(e.children).filter(e=>{let t=e.tagName.toUpperCase();return t===`TD`||t===`TH`})}function $e(e,t,n){let r=Array.from({length:n});return Array.from(e.querySelectorAll(`col`)).forEach((e,t)=>{t<r.length&&(r[t]=ct(e.getAttribute(`width`),e.getAttribute(`style`),`width`))}),t.forEach(e=>{e.forEach((e,t)=>{if(!e.element||r[t]!=null)return;let n=ct(e.element.getAttribute(`width`),e.element.getAttribute(`style`),`width`);n!=null&&e.colSpan<=1&&(r[t]=n)})}),r}function et(e,t,n,r){let i=$e(e,t,n),a=r??660,o=i.reduce((e,t)=>e+(t??0),0),s=i.filter(e=>e==null).length,c=s?Math.max((a-o)/s,1):a/n;return i.map(e=>e??ft(c))}function tt(e,n,r){let i=H();n>1&&(i.rowSpan=n),r>1&&(i.columnSpan=r);let a=e.getAttribute(`style`)??``,o=ct(e.getAttribute(`width`),a,`width`),s=at(a,`background-color`)??at(a,`background`)??it(e,`bgcolor`),c=nt(a,`top`),l=nt(a,`right`),u=nt(a,`bottom`),d=nt(a,`left`);return o!=null&&(i.size={type:t.TableSizeType.SPECIFIED,width:{v:o}}),s&&(i.backgroundColor={rgb:s}),c&&(i.borderTop=c),l&&(i.borderRight=l),u&&(i.borderBottom=u),d&&(i.borderLeft=d),i}function nt(e,t){var n,r;let i=st(e,`border-${t}`),a=at(e,`border-${t}-color`)??ot(i==null||(n=i.match(/(#[0-9a-f]{3,8}|rgb\([^)]+\))/i))==null?void 0:n[1])??at(e,`border-color`)??ot((r=st(e,`border`))==null||(r=r.match(/(#[0-9a-f]{3,8}|rgb\([^)]+\))/i))==null?void 0:r[1])??rt(e),o=lt(st(e,`border-${t}-width`))??lt(i)??lt(st(e,`border-width`))??lt(st(e,`border`));if(!(!a&&o==null))return{color:{rgb:ot(a)??`#1f1f1f`},width:{v:o??1}}}function rt(e){let t=e.match(/border(?:-[a-z]+)?\s*:\s*([^;]+)/i);if(t)return ot(t[1].split(/\s+/).find(e=>{let t=e.toLowerCase();return t&&!/^[0-9.]+/.test(t)&&![`none`,`hidden`,`dotted`,`dashed`,`solid`,`double`,`groove`,`ridge`,`inset`,`outset`].includes(t)}))}function it(e,t){return ot(e.getAttribute(t))}function at(e,t){return ot(st(e,t))}function ot(e){if(e)try{let n=new t.ColorKit(e.trim());return n.isValid?n.toRgbString():void 0}catch{return}}function st(e,t){let n=t.toLowerCase(),r=e.split(`;`).map(e=>e.split(`:`)).find(([e])=>(e==null?void 0:e.trim().toLowerCase())===n);return(r==null?void 0:r.slice(1).join(`:`).trim())||void 0}function ct(e,t,n){var r;let i=(r=st(t??``,n))==null?void 0:r.match(/^([0-9.]+)\s*(px|pt|in|cm|mm)?$/i);if(i)return dt(Number(i[1]),i[2]);let a=e==null?void 0:e.match(/([0-9.]+)\s*(px|pt|in|cm|mm)?/i);return a?dt(Number(a[1]),a[2]):void 0}function lt(e){let t=(e==null?void 0:e.match(/(?:^|\s)([0-9.]+)\s*(px|pt|in|cm|mm)(?=\s|$)/i))??(e==null?void 0:e.match(/^\s*([0-9.]+)\s*$/));return t?dt(Number(t[1]),t[2]):void 0}function ut(e,t){return ct((t===`width`?e.dataset.width:e.dataset.height)||null,null,t)??ct(e.getAttribute(t),e.getAttribute(`style`),t)}function dt(e,t){switch(t==null?void 0:t.toLowerCase()){case`pt`:return ft(e*4/3);case`in`:return ft(e*96);case`cm`:return ft(e*96/2.54);case`mm`:return ft(e*96/25.4);default:return ft(e)}}function ft(e){return Math.round(e*100)/100}function pt(e){let n=e.dataset.docType;if(n===t.DocumentBlockRangeType.QUOTE)return t.DocumentBlockRangeType.QUOTE;if(n===t.DocumentBlockRangeType.CALLOUT)return t.DocumentBlockRangeType.CALLOUT;let r=e.tagName.toUpperCase();return r===`BLOCKQUOTE`?n===t.DocumentBlockRangeType.CALLOUT?t.DocumentBlockRangeType.CALLOUT:t.DocumentBlockRangeType.QUOTE:r===`ASIDE`&&e.getAttribute(`role`)===`note`?t.DocumentBlockRangeType.CALLOUT:null}function mt(e){let t=e.tagName.toUpperCase();return[`P`,`DIV`,`H1`,`H2`,`H3`,`H4`,`H5`,`H6`,`LI`].includes(t)}function ht(e){switch(e.tagName.toUpperCase()){case`H1`:return t.NamedStyleType.HEADING_1;case`H2`:return t.NamedStyleType.HEADING_2;case`H3`:return t.NamedStyleType.HEADING_3;case`H4`:return t.NamedStyleType.HEADING_4;case`H5`:return t.NamedStyleType.HEADING_5;default:return null}}function gt(e){let n=(e.getAttribute(`style`)??``).match(/mso-list:\s*([^ ;]+)\s+level(\d+)/i);if(!n&&!/MsoListParagraph/i.test(e.className))return null;{let r=(e.textContent??``).trim().match(/^([0-9]+[.)]|[a-zA-Z][.)]|[ivxlcdmIVXLCDM]+[.)]|[\u2022\u00B7\u25CF\u25CB\u25AA\u25AB-])/),i=(r==null?void 0:r[1])??``,a=!!(i&&!/^[\u2022\u00B7\u25CF\u25CB\u25AA\u25AB-]$/.test(i));return{listId:(n==null?void 0:n[1])??`mso-list`,listType:a?t.PresetListType.ORDER_LIST:t.PresetListType.BULLET_LIST,nestingLevel:Math.max(0,Number((n==null?void 0:n[2])??1)-1)}}}function _t(e){var t;let n=e.dataStream.endsWith(`\r`)?e.dataStream.length-1:e.dataStream.length,r=Math.max(0,e.dataStream.lastIndexOf(`\r`,n-1)+1),i=e.dataStream.slice(r,n);{let t=i.match(/^(\s*(?:[0-9]+[.)]|[a-zA-Z][.)]|[ivxlcdmIVXLCDM]+[.)]|[\u2022\u00B7\u25CF\u25CB\u25AA\u25AB-])\s*)/);if(t){var a;let n=t[1].length;return e.dataStream=e.dataStream.slice(0,r)+e.dataStream.slice(r+n),(a=e.textRuns)==null||a.forEach(e=>{e.st>=r+n?(e.st-=n,e.ed-=n):e.ed>r&&(e.ed=Math.max(e.st,e.ed-n))}),n}}let o=i.match(/^(\s*(?:[0-9]+\.|[a-zA-Z]\.|[ivxlcdmIVXLCDM]+\.|[·•●○\-])\s*)/);if(!o)return 0;let s=o[1].length;return e.dataStream=e.dataStream.slice(0,r)+e.dataStream.slice(r+s),(t=e.textRuns)==null||t.forEach(e=>{e.st>=r+s?(e.st-=s,e.ed-=s):e.ed>r&&(e.ed=Math.max(e.st,e.ed-s))}),s}let vt={name:`univer-doc-paste-plugin-lark`,checkPasteType(e){return/lark-record-clipboard/i.test(e)},stylesRules:[{filter:[`s`],getStyle(e){let n=Ue(e);return{st:{s:t.BooleanNumber.TRUE},...n}}}],afterProcessRules:[{filter(e){return e.tagName===`DIV`&&/ace-line/i.test(e.className)},handler(e){let n=e.body;n.paragraphs??=[],n.paragraphs.push({startIndex:n.dataStream.length,paragraphId:(0,t.createParagraphId)(new Set(n.paragraphs.map(e=>e.paragraphId)))}),n.dataStream+=`\r`}}]};function yt(e){let t=e.style,n={};for(let e=0;e<t.length;e++){let i=t[e],a=t.getPropertyValue(i);switch(i){case`margin-top`:{let e=Number.parseInt(a);n.spaceAbove={v:/pt/.test(a)?(0,r.ptToPixel)(e):e};break}case`margin-bottom`:{let e=Number.parseInt(a);n.spaceBelow={v:/pt/.test(a)?(0,r.ptToPixel)(e):e};break}case`line-height`:{let e=Number.parseFloat(a);a.endsWith(`%`)&&(e/=100),n.lineSpacing=e;break}case`text-align`:n.horizontalAlign=bt(a);break;default:break}}return Object.getOwnPropertyNames(n).length?n:null}function bt(e){switch(e.trim().toLowerCase()){case`center`:return t.HorizontalAlign.CENTER;case`right`:case`end`:return t.HorizontalAlign.RIGHT;case`justify`:return t.HorizontalAlign.JUSTIFIED;case`left`:case`start`:return t.HorizontalAlign.LEFT;default:return t.HorizontalAlign.UNSPECIFIED}}let xt={name:`univer-doc-paste-plugin-univer`,checkPasteType(e){return/UniverNormal/i.test(e)},stylesRules:[],afterProcessRules:[{filter(e){return e.tagName===`P`&&/UniverNormal/i.test(e.className)},handler(e,n){let r=e.body;r.paragraphs??=[];let i={startIndex:r.dataStream.length,paragraphId:(0,t.createParagraphId)(new Set(r.paragraphs.map(e=>e.paragraphId)))},a=yt(n);a&&(i.paragraphStyle=a),r.paragraphs.push(i),r.dataStream+=`\r`}}]},St={name:`univer-doc-paste-plugin-word`,checkPasteType(e){return/word|mso|wps|kingsoft/i.test(e)},preprocessHtml(e){return e.replace(/<span\b([^>]*)>([\s\S]*?)<\/span>/gi,(e,t,n)=>{let r=/mso-spacerun\s*:\s*yes/i.test(t),i=Ct(t);if(!r&&i==null)return e;let a=wt(n),o=i==null?1:Math.max(1,Math.round(i*4)),s=Math.max(a,o);return`&#57344;`.repeat(s)})},stylesRules:[{filter:[`b`],getStyle(e){let n=Ue(e);return{bl:t.BooleanNumber.TRUE,...n}}}],afterProcessRules:[{filter(e){return e.tagName===`P`},handler(e,n){let r=e.body;r.paragraphs??=[];let i={startIndex:r.dataStream.length,paragraphId:(0,t.createParagraphId)(new Set(r.paragraphs.map(e=>e.paragraphId)))},a=yt(n);a&&(i.paragraphStyle=a),r.paragraphs.push(i),r.dataStream+=`\r`}}]};function Ct(e){let t=e.match(/mso-tab-count\s*:\s*([0-9.]+)/i);if(!t)return;let n=Number(t[1]);return Number.isFinite(n)?n:void 0}function wt(e){var t,n,r;let i=((t=e.match(/&nbsp;|&#160;|&#x0*a0;/gi))==null?void 0:t.length)??0,a=e.replace(/&nbsp;|&#160;|&#x0*a0;/gi,`\xA0`).replace(/<[^>]*>/g,``),o=((n=a.match(/[\u00A0\t]/g))==null?void 0:n.reduce((e,t)=>e+(t===` `?4:1),0))??0;return i||o?o:((r=a.replace(/\r?\n/g,``).match(/ /g))==null?void 0:r.length)??0}let Tt=`application/x-doc-fragment+json`,Et=`univer-doc-fragment:`;function Dt(e){return JSON.stringify({version:1,kind:`univer-doc-fragment`,doc:t.Tools.deepClone(e)})}function Ot(e){if(!e)return null;try{var t;let n=JSON.parse(e);if((n==null?void 0:n.version)===1&&n.kind===`univer-doc-fragment`&&(t=n.doc)!=null&&t.body)return n.doc}catch{return null}return null}function kt(e){var n,r,i;let a=t.Tools.deepClone(e.body),o={body:a};a!=null&&(n=a.tables)!=null&&n.length&&e.tableSource&&(o.tableSource={},a.tables.forEach(n=>{var r;let i=(r=e.tableSource)==null?void 0:r[n.tableId];i&&(o.tableSource[n.tableId]=t.Tools.deepClone(i))}));let s=new Set(a==null||(r=a.paragraphs)==null?void 0:r.map(e=>{var t;return(t=e.bullet)==null?void 0:t.listType}).filter(Boolean));if(s.size&&e.lists&&(o.lists={},s.forEach(n=>{var r;let i=(r=e.lists)==null?void 0:r[String(n)];i&&(o.lists[String(n)]=t.Tools.deepClone(i))})),a!=null&&(i=a.customBlocks)!=null&&i.length){o.drawings={};for(let n of a.customBlocks){var c;let{blockId:r}=n,i=(c=e.drawings)==null?void 0:c[r];if(i){let e=(0,t.generateRandomId)(6);n.blockId=e,o.drawings[e]={...t.Tools.deepClone(i),drawingId:e}}}}return o}function At(e){var t;if(e.length===0)return null;if(e.length===1)return kt(e[0]);let n={body:{dataStream:``}};for(let t of e){let e=kt(t),r=e.body;if(!r)continue;let i=n.body.dataStream.length;n.body.dataStream+=r.dataStream??``,Pt(n.body,r,i),e.tableSource&&(n.tableSource??={},Object.assign(n.tableSource,e.tableSource)),e.lists&&(n.lists??={},Object.assign(n.lists,e.lists)),e.drawings&&(n.drawings??={},Object.assign(n.drawings,e.drawings))}return(t=n.body)!=null&&t.dataStream?n:null}function jt(e,t){return`<!--${Et}${Ft(t)}-->${e}`}function Mt(e){if(!e)return null;let t=Et.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),n=e.match(RegExp(`<!--\\s*${t}([A-Za-z0-9+/=]+)\\s*-->`));return n?Ot(It(n[1])):null}function Nt(e){return`<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head>
3
3
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4
4
  <meta name="ProgId" content="Word.Document">
5
5
  <meta name="Generator" content="Microsoft Word 15">
@@ -11,15 +11,15 @@ p.UniverHeading, li.UniverHeading, div.UniverHeading, p.univerheading, li.univer
11
11
  table.MsoNormalTable, table.UniverTable{mso-style-name:"Normal Table";mso-tstyle-rowband-size:0;mso-tstyle-colband-size:0;mso-style-noshow:yes;mso-style-priority:99;mso-style-parent:"";mso-padding-alt:0cm 5.4pt 0cm 5.4pt;mso-para-margin:0cm;mso-pagination:widow-orphan;font-size:11.0pt;font-family:Arial,sans-serif;border-collapse:collapse;mso-table-lspace:0pt;mso-table-rspace:0pt;}
12
12
  td.UniverTableCell, th.UniverTableCell{mso-padding-alt:0cm 5.4pt 0cm 5.4pt;}
13
13
  --></style>
14
- </head><body lang="ZH-CN" style="tab-interval:21.0pt;word-wrap:break-word"><!--StartFragment-->${e}<!--EndFragment--></body></html>`}function jt(e,t,n){var r,i,a,o,s,c,l,u;(r=t.textRuns)!=null&&r.length&&(e.textRuns??=[],e.textRuns.push(...t.textRuns.map(e=>({...e,st:e.st+n,ed:e.ed+n})))),(i=t.paragraphs)!=null&&i.length&&(e.paragraphs??=[],e.paragraphs.push(...t.paragraphs.map(e=>({...e,startIndex:e.startIndex+n})))),(a=t.sectionBreaks)!=null&&a.length&&(e.sectionBreaks??=[],e.sectionBreaks.push(...t.sectionBreaks.map(e=>({...e,startIndex:e.startIndex+n})))),(o=t.tables)!=null&&o.length&&(e.tables??=[],e.tables.push(...t.tables.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(s=t.blockRanges)!=null&&s.length&&(e.blockRanges??=[],e.blockRanges.push(...t.blockRanges.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(c=t.customRanges)!=null&&c.length&&(e.customRanges??=[],e.customRanges.push(...t.customRanges.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(l=t.customDecorations)!=null&&l.length&&(e.customDecorations??=[],e.customDecorations.push(...t.customDecorations.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(u=t.customBlocks)!=null&&u.length&&(e.customBlocks??=[],e.customBlocks.push(...t.customBlocks.map(e=>({...e,startIndex:e.startIndex+n}))))}function Mt(e){return btoa(unescape(encodeURIComponent(e)))}function Nt(e){return decodeURIComponent(escape(atob(e)))}let Pt=`Arial`;function Ft(e){var n,r;return`<img ${(e=>{let t=``;return Object.keys(e).forEach(n=>{e[n]!==void 0&&(t+=` ${n}=${e[n]}`)}),t})({"data-doc-transform-height":e.docTransform.size.height,"data-doc-transform-width":e.docTransform.size.width,"data-width":(n=e.transform)==null?void 0:n.width,"data-height":(r=e.transform)==null?void 0:r.height,"data-image-source-type":e.imageSourceType,"data-source":e.imageSourceType===t.ImageSourceType.UUID?e.source:void 0,src:e.source})}></img>`}function It(e,n){let{st:r,ed:i,ts:a={}}=n,{ff:o,fs:s,it:c,bl:l,ul:u,st:d,ol:f,bg:p,cl:m,va:h}=a,g=an(e.slice(r,i)),_=[];return c===t.BooleanNumber.TRUE&&(g=`<i>${g}</i>`),h===t.BaselineOffset.SUPERSCRIPT?g=`<sup>${g}</sup>`:h===t.BaselineOffset.SUBSCRIPT&&(g=`<sub>${g}</sub>`),(u==null?void 0:u.s)===t.BooleanNumber.TRUE&&(g=`<u>${g}</u>`),(d==null?void 0:d.s)===t.BooleanNumber.TRUE&&(g=`<s>${g}</s>`),l===t.BooleanNumber.TRUE&&(g=`<strong>${g}</strong>`),_.push(`font-family: ${o??Pt}`),m!=null&&m.rgb&&_.push(`color: ${Zt(m.rgb)}`),s&&_.push(`font-size: ${s}pt`),f&&_.push(`text-decoration: overline`),p!=null&&p.rgb&&_.push(`background: ${Zt(p.rgb)}`),_.length?`<span style="${_.join(`; `)};">${g}</span>`:g}function Lt(e,n,r){let{dataStream:i,textRuns:a=[]}=e;if(n===r)return``;let o=n,s=[];for(let e of a){let{st:a,ed:c}=e;t.Tools.hasIntersectionBetweenTwoRanges(n,r,a,c)&&(a>o?(s.push(an(i.slice(o,a))),s.push(It(i,{...e,ed:Math.min(c,r)}))):s.push(It(i,{...e,st:o,ed:Math.min(c,r)}))),o=Math.max(n,Math.min(c,r))}return o!==r&&s.push(an(i.slice(o,r))),s.join(``)}function Rt(e,n,r){let i=e.body,a=e.drawings||{},{customRanges:o=[],customBlocks:s=[]}=i||{},c=[...s],l=o.filter(e=>e.startIndex>=n&&e.endIndex<=r),u=n,d=``,f=(e,n)=>{let r=``,o=0,s=e,l=c.findIndex(t=>e<=t.startIndex&&n>=t.startIndex);if(l===-1)return r=Lt(i,e,n),{sliceHtml:r,customBlockLength:o};for(;l!==-1;){let e=c[l];c.splice(l,1),r+=Lt(i,s,e.startIndex);let u=a[e.blockId];if(u)switch(u.drawingType){case t.DrawingTypeEnum.DRAWING_IMAGE:r+=Ft(u),o++;break}s=e.startIndex+1,l=c.findIndex(e=>s<=e.startIndex&&n>=e.startIndex)}return r+=Lt(i,s,n+1),{sliceHtml:r,customBlockLength:o}};l.forEach(e=>{let{startIndex:n,endIndex:r,rangeType:i,rangeId:a}=e,o=f(u,n);d+=o.sliceHtml;let s=f(n,r+1);switch(i){case t.CustomRangeType.HYPERLINK:var c;d+=`<a data-rangeid="${a}" href="${((c=e.properties)==null?void 0:c.url)??``}">${s.sliceHtml}</a>`;break;default:d+=s.sliceHtml;break}u=r+1+(o.customBlockLength+s.customBlockLength)});let p=f(u,r);return d+=p.sliceHtml,d}function zt(e){let n=e.body||{},{paragraphs:i=[],sectionBreaks:a=[]}=n,{dataStream:o=``}=n;o.endsWith(`\r
14
+ </head><body lang="ZH-CN" style="tab-interval:21.0pt;word-wrap:break-word"><!--StartFragment-->${e}<!--EndFragment--></body></html>`}function Pt(e,t,n){var r,i,a,o,s,c,l,u;(r=t.textRuns)!=null&&r.length&&(e.textRuns??=[],e.textRuns.push(...t.textRuns.map(e=>({...e,st:e.st+n,ed:e.ed+n})))),(i=t.paragraphs)!=null&&i.length&&(e.paragraphs??=[],e.paragraphs.push(...t.paragraphs.map(e=>({...e,startIndex:e.startIndex+n})))),(a=t.sectionBreaks)!=null&&a.length&&(e.sectionBreaks??=[],e.sectionBreaks.push(...t.sectionBreaks.map(e=>({...e,startIndex:e.startIndex+n})))),(o=t.tables)!=null&&o.length&&(e.tables??=[],e.tables.push(...t.tables.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(s=t.blockRanges)!=null&&s.length&&(e.blockRanges??=[],e.blockRanges.push(...t.blockRanges.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(c=t.customRanges)!=null&&c.length&&(e.customRanges??=[],e.customRanges.push(...t.customRanges.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(l=t.customDecorations)!=null&&l.length&&(e.customDecorations??=[],e.customDecorations.push(...t.customDecorations.map(e=>({...e,startIndex:e.startIndex+n,endIndex:e.endIndex+n})))),(u=t.customBlocks)!=null&&u.length&&(e.customBlocks??=[],e.customBlocks.push(...t.customBlocks.map(e=>({...e,startIndex:e.startIndex+n}))))}function Ft(e){return btoa(unescape(encodeURIComponent(e)))}function It(e){return decodeURIComponent(escape(atob(e)))}let Lt=`Arial`;function Rt(e){var n,r;return`<img ${(e=>{let t=``;return Object.keys(e).forEach(n=>{e[n]!==void 0&&(t+=` ${n}=${e[n]}`)}),t})({"data-doc-transform-height":e.docTransform.size.height,"data-doc-transform-width":e.docTransform.size.width,"data-width":(n=e.transform)==null?void 0:n.width,"data-height":(r=e.transform)==null?void 0:r.height,"data-image-source-type":e.imageSourceType,"data-source":e.imageSourceType===t.ImageSourceType.UUID?e.source:void 0,src:e.source})}></img>`}function zt(e,n){let{st:r,ed:i,ts:a={}}=n,{ff:o,fs:s,it:c,bl:l,ul:u,st:d,ol:f,bg:p,cl:m,va:h}=a,g=cn(e.slice(r,i)),_=[];return c===t.BooleanNumber.TRUE&&(g=`<i>${g}</i>`),h===t.BaselineOffset.SUPERSCRIPT?g=`<sup>${g}</sup>`:h===t.BaselineOffset.SUBSCRIPT&&(g=`<sub>${g}</sub>`),(u==null?void 0:u.s)===t.BooleanNumber.TRUE&&(g=`<u>${g}</u>`),(d==null?void 0:d.s)===t.BooleanNumber.TRUE&&(g=`<s>${g}</s>`),l===t.BooleanNumber.TRUE&&(g=`<strong>${g}</strong>`),_.push(`font-family: ${o??Lt}`),m!=null&&m.rgb&&_.push(`color: ${en(m.rgb)}`),s&&_.push(`font-size: ${s}pt`),f&&_.push(`text-decoration: overline`),p!=null&&p.rgb&&_.push(`background: ${en(p.rgb)}`),_.length?`<span style="${_.join(`; `)};">${g}</span>`:g}function Bt(e,n,r){let{dataStream:i,textRuns:a=[]}=e;if(n===r)return``;let o=n,s=[];for(let e of a){let{st:a,ed:c}=e;t.Tools.hasIntersectionBetweenTwoRanges(n,r,a,c)&&(a>o?(s.push(cn(i.slice(o,a))),s.push(zt(i,{...e,ed:Math.min(c,r)}))):s.push(zt(i,{...e,st:o,ed:Math.min(c,r)}))),o=Math.max(n,Math.min(c,r))}return o!==r&&s.push(cn(i.slice(o,r))),s.join(``)}function Vt(e,n,r){let i=e.body,a=e.drawings||{},{customRanges:o=[],customBlocks:s=[]}=i||{},c=[...s],l=o.filter(e=>e.startIndex>=n&&e.endIndex<=r),u=n,d=``,f=(e,n)=>{let r=``,o=0,s=e,l=c.findIndex(t=>e<=t.startIndex&&n>=t.startIndex);if(l===-1)return r=Bt(i,e,n),{sliceHtml:r,customBlockLength:o};for(;l!==-1;){let e=c[l];c.splice(l,1),r+=Bt(i,s,e.startIndex);let u=a[e.blockId];if(u)switch(u.drawingType){case t.DrawingTypeEnum.DRAWING_IMAGE:r+=Rt(u),o++;break}s=e.startIndex+1,l=c.findIndex(e=>s<=e.startIndex&&n>=e.startIndex)}return r+=Bt(i,s,n+1),{sliceHtml:r,customBlockLength:o}};l.forEach(e=>{let{startIndex:n,endIndex:r,rangeType:i,rangeId:a}=e,o=f(u,n);d+=o.sliceHtml;let s=f(n,r+1);switch(i){case t.CustomRangeType.HYPERLINK:var c;d+=`<a data-rangeid="${a}" href="${((c=e.properties)==null?void 0:c.url)??``}">${s.sliceHtml}</a>`;break;default:d+=s.sliceHtml;break}u=r+1+(o.customBlockLength+s.customBlockLength)});let p=f(u,r);return d+=p.sliceHtml,d}function Ht(e){let n=e.body||{},{paragraphs:i=[],sectionBreaks:a=[]}=n,{dataStream:o=``}=n;o.endsWith(`\r
15
15
  `)||(o+=`\r
16
- `,i.push({startIndex:o.length-2,paragraphId:(0,t.createParagraphId)(new Set(i.map(e=>e.paragraphId)))}),a.push({sectionId:(0,t.createSectionId)(new Set(a.map(e=>e.sectionId))),startIndex:o.length-1}),n.dataStream=o,n.paragraphs=i,n.sectionBreaks=a);let s={html:``},c=(0,r.parseDataStreamToTree)(o).sectionList;for(let t of c)Bt(t,e,s);return qt(s),s.html}function Bt(e,n,r){switch(e.nodeType){case t.DataStreamTreeNodeType.SECTION_BREAK:for(let t of e.children)Bt(t,n,r);break;case t.DataStreamTreeNodeType.PARAGRAPH:{var i;let{children:t,startIndex:a,endIndex:o}=e,s=((i=n.body)==null||(i=i.paragraphs)==null?void 0:i.find(e=>e.startIndex===o))??{},{paragraphStyle:c={}}=s,{horizontalAlign:l,spaceAbove:u,spaceBelow:d,lineSpacing:f}=c,p=[];if(l!=null){let e=en(l);e&&p.push(`text-align: ${e}`)}u!=null&&(typeof u==`number`?p.push(`margin-top: ${u}px`):p.push(`margin-top: ${u.v}px`)),d!=null&&(typeof d==`number`?p.push(`margin-bottom: ${d}px`):p.push(`margin-bottom: ${d.v}px`)),f!=null&&p.push(`line-height: ${f}`),p.push(...Yt(c.textStyle));let m=Xt(Rt(n,a,o),c.textStyle),h=t.map(e=>{let t={html:``};return Bt(e,n,t),qt(t),t.html}).join(``);if(h){qt(r),r.html+=h;break}Vt(n,s,a,o,m,p,r);break}case t.DataStreamTreeNodeType.TABLE:{var a,o,s;let{children:t}=e;qt(r),r.tableIndex??=0,r.tableStack??=[];let i=(a=n.body)==null||(a=a.tables)==null?void 0:a[r.tableIndex++],c=i?(o=n.tableSource)==null?void 0:o[i.tableId]:void 0,l=c==null||(s=c.tableColumns)==null?void 0:s.reduce((e,t)=>{var n;return e+(((n=t.size)==null||(n=n.width)==null?void 0:n.v)??0)},0),u=[`border-collapse: collapse`,l?`width: ${Qt(l)}px`:`width: 100%`].join(`; `);r.tableStack.push({table:c,rowIndex:-1,columnIndex:0}),r.html+=`<table class="MsoNormalTable UniverTable" style="${u};"><tbody>`;for(let e of t)Bt(e,n,r);r.html+=`</tbody></table>`,r.tableStack.pop();break}case t.DataStreamTreeNodeType.TABLE_ROW:{var c,l,u;let{children:t}=e,i=(c=r.tableStack)==null?void 0:c[r.tableStack.length-1];i&&(i.rowIndex++,i.columnIndex=0);let a=i==null||(l=i.table)==null||(l=l.tableRows)==null?void 0:l[i.rowIndex],o=(a==null||(u=a.trHeight)==null||(u=u.val)==null?void 0:u.v)==null?``:` style="height: ${Qt(a.trHeight.val.v)}px"`;r.html+=`<tr class="UniverTableRow"${o}>`;for(let e of t)Bt(e,n,r);r.html+=`</tr>`;break}case t.DataStreamTreeNodeType.TABLE_CELL:{var d,f,p;let{children:t}=e,i=(d=r.tableStack)==null?void 0:d[r.tableStack.length-1],a=i==null||(f=i.table)==null||(f=f.tableRows)==null?void 0:f[i.rowIndex],o=a==null||(p=a.tableCells)==null?void 0:p[(i==null?void 0:i.columnIndex)??0];if(i&&i.columnIndex++,(o==null?void 0:o.rowSpan)===0||(o==null?void 0:o.columnSpan)===0)break;r.html+=`<td class="UniverTableCell"${Jt(o)}>`;for(let e of t)Bt(e,n,r);qt(r),r.html+=`</td>`;break}default:throw Error(`Unknown node type: ${e.nodeType}`)}}function Vt(e,t,n,r,i,a,o){let s=Wt(e,t,i,a);if(s){Gt(o,s);return}qt(o),o.html+=Ht(e,t,n,r,i,a)}function Ht(e,n,r,i,a,o){var s;let c=(s=e.body)==null||(s=s.blockRanges)==null?void 0:s.find(e=>e.startIndex<=r&&i<=e.endIndex+1);if(c&&!sn(a))return``;let l=Ut(n,a,o)??`<p class="UniverNormal" ${o.length?`style="${o.join(`; `)};"`:``}>${a}</p>`;switch(c==null?void 0:c.blockType){case t.DocumentBlockRangeType.QUOTE:return`<blockquote data-doc-type="quote" style="border-left: 4px solid #d0d7de; margin: 8px 0; padding: 4px 0 4px 12px; color: #57606a;">${l}</blockquote>`;case t.DocumentBlockRangeType.CODE:return`<pre data-doc-type="code-block" style="font-family: Consolas, 'Courier New', monospace; background: #f6f8fa; padding: 12px; border-radius: 6px; white-space: pre-wrap;"><code>${a.replace(/<\/?[^>]+>/g,``)}</code></pre>`;case t.DocumentBlockRangeType.CALLOUT:return`<aside data-doc-type="callout" role="note" style="background: #fff8c5; border-left: 4px solid #d4a72c; padding: 8px 12px; margin: 8px 0; border-radius: 4px;"><p><span data-callout-icon="true" style="margin-right: 6px;">💡</span>${a}</p></aside>`;default:return l}}function Ut(e,t,n){var r;let i=$t((r=e.paragraphStyle)==null?void 0:r.namedStyleType);return i?`<p class="UniverHeading" role="heading" aria-level="${i}" data-heading-level="${i}" ${n.length?`style="${n.join(`; `)};"`:``}>${t}</p>`:null}function Wt(e,t,n,r){let i=t.bullet;if(!i)return null;let a=tn(String(i.listType))?`ol`:`ul`,o=i.nestingLevel??0,s=nn(e,String(i.listType),o);return{tag:a,level:o,listType:String(i.listType),listStyle:s,html:`<p class="UniverNormal" ${r.length?`style="${r.join(`; `)};"`:``}>${n}</p>`}}function Gt(e,t){e.listStack??=[];let n=e.listStack;for(;n.length>t.level+1;)e.html+=`</li></${n.pop().tag}>`;let r=n[n.length-1];if(r&&r.level===t.level)r.tag===t.tag&&r.listType===t.listType?e.html+=`</li><li>`:(e.html+=`</li></${n.pop().tag}>`,Kt(e,t));else{for(;n.length<t.level;)Kt(e,{...t,level:n.length});Kt(e,t)}e.html+=t.html}function Kt(e,t){let n=t.listStyle?` list-style-type: ${t.listStyle};`:``,r=t.level>0?` margin-left: ${t.level*24}px;`:``;e.html+=`<${t.tag} data-doc-type="${t.tag===`ol`?`ordered-list`:`bullet-list`}" style="margin-top: 0; margin-bottom: 0;${r}${n}"><li>`,e.listStack.push({tag:t.tag,level:t.level,listType:t.listType})}function qt(e){for(var t;(t=e.listStack)!=null&&t.length;)e.html+=`</li></${e.listStack.pop().tag}>`}function Jt(e){var t,n;if(!e)return``;let r=[],i=[];return(e.rowSpan??1)>1&&r.push(`rowspan="${e.rowSpan}"`),(e.columnSpan??1)>1&&r.push(`colspan="${e.columnSpan}"`),((t=e.size)==null||(t=t.width)==null?void 0:t.v)!=null&&i.push(`width: ${Qt(e.size.width.v)}px`),(n=e.backgroundColor)!=null&&n.rgb&&i.push(`background-color: ${e.backgroundColor.rgb}`),[[`top`,e.borderTop],[`right`,e.borderRight],[`bottom`,e.borderBottom],[`left`,e.borderLeft]].forEach(([e,t])=>{var n,r;t&&i.push(`border-${e}: ${Qt(((n=t.width)==null?void 0:n.v)??1)}px solid ${((r=t.color)==null?void 0:r.rgb)??`#1f1f1f`}`)}),i.length&&r.push(`style="${i.join(`; `)};"`),r.length?` ${r.join(` `)}`:``}function Yt(e){if(!e)return[];let{ff:n,fs:r,it:i,bl:a,ul:o,st:s,ol:c,bg:l,cl:u}=e,d=[];d.push(`font-family: ${n??Pt}`),r!=null&&d.push(`font-size: ${r}pt`),u!=null&&u.rgb&&d.push(`color: ${Zt(u.rgb)}`),l!=null&&l.rgb&&d.push(`background-color: ${Zt(l.rgb)}`),a===t.BooleanNumber.TRUE&&d.push(`font-weight: bold`),i===t.BooleanNumber.TRUE&&d.push(`font-style: italic`);let f=[];return(o==null?void 0:o.s)===t.BooleanNumber.TRUE&&f.push(`underline`),(s==null?void 0:s.s)===t.BooleanNumber.TRUE&&f.push(`line-through`),(c==null?void 0:c.s)===t.BooleanNumber.TRUE&&f.push(`overline`),f.length&&d.push(`text-decoration: ${f.join(` `)}`),d}function Xt(e,n){var r,i;if(!n||!sn(e))return e;let a=e;return n.it===t.BooleanNumber.TRUE&&(a=`<i>${a}</i>`),((r=n.ul)==null?void 0:r.s)===t.BooleanNumber.TRUE&&(a=`<u>${a}</u>`),((i=n.st)==null?void 0:i.s)===t.BooleanNumber.TRUE&&(a=`<s>${a}</s>`),n.bl===t.BooleanNumber.TRUE&&(a=`<strong>${a}</strong>`),a}function Zt(e){let t=e.match(/^rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})(?:\s*,\s*[\d.]+)?\s*\)$/i);return t?`#${t.slice(1,4).map(e=>Math.max(0,Math.min(255,Number(e))).toString(16).padStart(2,`0`)).join(``)}`:e}function Qt(e){return Math.round(e*100)/100}function $t(e){switch(e){case t.NamedStyleType.TITLE:case t.NamedStyleType.HEADING_1:return 1;case t.NamedStyleType.HEADING_2:return 2;case t.NamedStyleType.HEADING_3:return 3;case t.NamedStyleType.HEADING_4:return 4;case t.NamedStyleType.HEADING_5:return 5;default:return null}}function en(e){switch(e){case t.HorizontalAlign.LEFT:return`left`;case t.HorizontalAlign.CENTER:return`center`;case t.HorizontalAlign.RIGHT:return`right`;case t.HorizontalAlign.JUSTIFIED:case t.HorizontalAlign.BOTH:return`justify`;default:return null}}function tn(e){return e.includes(`ORDER`)||e===t.PresetListType.ORDER_LIST}function nn(e,t,n){var r;switch((r=e.lists)==null||(r=r[t])==null||(r=r.nestingLevel)==null||(r=r[n])==null?void 0:r.glyphType){case 3:return`upper-alpha`;case 4:return`lower-alpha`;case 5:return`upper-roman`;case 6:return`lower-roman`;default:return tn(t)?`decimal`:null}}function rn(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}function an(e){return rn(on(e)).replace(/\r\n|\r|\n/g,`<br>`)}function on(e){return e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g,``)}function sn(e){return/<(?:img|br)\b/i.test(e)||e.replace(/<[^>]+>/g,``).replace(/&nbsp;/gi,` `).trim().length>0}var cn=class{constructor(e){this._docHtmlExportService=e}convert(e){if(e.length===0)throw Error(`The bodyList length at least to be 1`);let n=``;for(let i of t.Tools.deepClone(e)){var r;n+=zt(((r=this._docHtmlExportService)==null?void 0:r.transformDocumentForHtmlExport(i))??i)}return n}},ln=class extends t.Disposable{constructor(...e){super(...e),O(this,`_transformers`,[])}registerTransformer(e){return this._transformers.push(e),this.disposeWithMe((0,t.toDisposable)(()=>(0,t.remove)(this._transformers,e)))}transformDocumentForHtmlExport(e){return this._transformers.reduce((e,t)=>t(e),e)}};Ue.use(ht),Ue.use(vt),Ue.use(yt);function un(e,n){let{startOffset:r,endOffset:i,spanEntireTable:a,tableId:o}=n;if(r==null||i==null)return{dataStream:``};if(a){var s;let n=(s=e.tables)==null?void 0:s.find(e=>e.tableId===o);if(n)return(0,t.getBodySlice)(e,n.startIndex,n.endIndex,!1,t.SliceBodyType.copy)}return dn(e,r,i)}function dn(e,n,r){var i,a,o;let s=(0,t.getBodySlice)(e,n,r+2);return s.dataStream=t.DataStreamTreeTokenType.TABLE_START+t.DataStreamTreeTokenType.TABLE_ROW_START+t.DataStreamTreeTokenType.TABLE_CELL_START+s.dataStream+t.DataStreamTreeTokenType.TABLE_CELL_END+t.DataStreamTreeTokenType.TABLE_ROW_END+t.DataStreamTreeTokenType.TABLE_END,(i=s.textRuns)==null||i.forEach(e=>{let{st:t,ed:n}=e;e.st=t+3,e.ed=n+3}),(a=s.tables)==null||a.forEach(e=>{let{startIndex:t,endIndex:n}=e;e.startIndex=t+3,e.endIndex=n+3}),(o=s.paragraphs)==null||o.forEach(e=>{let{startIndex:t}=e;e.startIndex=t+3}),s}let fn=(0,t.createIdentifier)(`doc.clipboard-service`),pn=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._univerInstanceService=e,this._logService=t,this._commandService=n,this._clipboardInterfaceService=r,this._docSelectionManagerService=a,O(this,`_clipboardHooks`,[]),O(this,`_memoryClipboardData`,null),O(this,`_htmlToUDM`,new Ue),O(this,`_umdToHtml`,void 0),this._umdToHtml=new cn(i)}async copy(e=t.SliceBodyType.copy,n){let{newSnapshotList:r=[],needCache:i=!1,plainTextList:a,snapshot:o,ranges:s}=this._getDocumentBodyInRanges(e,n)??{};if(r.length===0||o==null)return!1;try{var c;let e=!!(s!=null&&(c=s[0])!=null&&c.segmentId);await this._setClipboardData(r,!e&&i,a)}catch(e){return this._logService.error(`[DocClipboardService] copy failed`,e),!1}return!0}async cut(e){return this._cut(e)}async paste(e){if(!(e!=null&&e.length))return this._memoryClipboardData?this._paste(t.Tools.deepClone(this._memoryClipboardData)):!1;let n=await this._genDocDataFromClipboardItems(e);return this._paste(n)}async legacyPaste(e){let{html:n,internalJson:r,text:i,files:a}=e,o=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),s=(o==null?void 0:o.getUnitId())||``;if(!n&&!i&&a.length?n=await this._createImagePasteHtml(a):n&&a.length&&(n+=await this._createImagePasteHtml(a)),n=await this._uploadBase64ImagesInHtml(n),!n&&!i)return this._logService.warn(`[DocClipboardController] html and text cannot be both empty!`),!1;let c=this._genDocDataFromHtmlAndText(n,i,s,r);if(s===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)if(i){let e=t.BuildTextUtils.transform.fromPlainText(i);return this._paste({body:e})}else c.body.textRuns=[];return this._paste(c)}async _cut(e){let n=(e==null?void 0:e.filter(e=>e.rangeType===t.DOC_RANGE_TYPE.TEXT))??this._docSelectionManagerService.getTextRanges()??[],r=(e==null?void 0:e.filter(e=>e.rangeType===t.DOC_RANGE_TYPE.RECT))??this._docSelectionManagerService.getRectRanges()??[],{segmentId:i,endOffset:a,style:o}=n[0]??{};if(i??this._logService.error(`[DocClipboardController] segmentId is not existed`),n.length===0&&r.length===0)return!1;this.copy(t.SliceBodyType.cut,e);try{let e=0;if(r.length>0)e=ke(n,r);else if(a!=null){e=a;for(let t of n){let{startOffset:n,endOffset:r}=t;n!=null&&r!=null&&r<=a&&(e-=r-n)}}let t=[{startOffset:e,endOffset:e,style:o}];return this._commandService.executeCommand(we.id,{segmentId:i,textRanges:t,rectRanges:r,selections:n})}catch{return this._logService.error(`[DocClipboardController] cut content failed`),!1}}async _paste(e){var n,r,i;let{body:a}=e;if(a==null)return!1;let o=(0,t.normalizeBody)(a),s=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!s)return!1;this._clipboardHooks.forEach(t=>{t.onBeforePaste&&(o=t.onBeforePaste(o,{documentData:e,targetUnitId:s.getUnitId()}))});let c=((n=o.customRanges)==null?void 0:n.map(e=>({sourceRange:e,targetRange:t.BuildTextUtils.customRange.copyCustomRange(e)})))??[];o.customRanges=c.map(({targetRange:e})=>e),(r=o.paragraphs)==null||r.forEach(e=>{var n;(n=e.paragraphStyle)!=null&&n.headingId&&(e.paragraphStyle.headingId=(0,t.generateRandomId)(6))});let l=this._docSelectionManagerService.getActiveTextRange(),u=this._docSelectionManagerService.getDocRanges(),{segmentId:d,endOffset:f,style:p}=(l??u.find(e=>e.isActive)??u[0])||{},m=this._docSelectionManagerService.getTextRanges()??[];if(d??this._logService.error(`[DocClipboardController] segmentId does not exist!`),f==null)return!1;let h=d==null?null:(i=s.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();h&&hn(o,h,m);try{let t=f;for(let e of m){let{startOffset:n,endOffset:r}=e;n!=null&&r!=null&&r<=f&&(t+=o.dataStream.length-(r-n))}let n=[{startOffset:t,endOffset:t,style:p}];return this._commandService.executeCommand(de.id,{doc:{...e,body:o},customRangeMappings:c,segmentId:d,textRanges:n})}catch{return this._logService.error(`[DocClipboardController]`,`clipboard is empty.`),!1}}async _setClipboardData(e,n=!0,r){var i;let a=(0,t.generateRandomId)(6),o=(r?r.join(`
16
+ `,i.push({startIndex:o.length-2,paragraphId:(0,t.createParagraphId)(new Set(i.map(e=>e.paragraphId)))}),a.push({sectionId:(0,t.createSectionId)(new Set(a.map(e=>e.sectionId))),startIndex:o.length-1}),n.dataStream=o,n.paragraphs=i,n.sectionBreaks=a);let s={html:``},c=(0,r.parseDataStreamToTree)(o).sectionList;for(let t of c)Ut(t,e,s);return Xt(s),s.html}function Ut(e,n,r){switch(e.nodeType){case t.DataStreamTreeNodeType.SECTION_BREAK:for(let t of e.children)Ut(t,n,r);break;case t.DataStreamTreeNodeType.PARAGRAPH:{var i;let{children:t,startIndex:a,endIndex:o}=e,s=((i=n.body)==null||(i=i.paragraphs)==null?void 0:i.find(e=>e.startIndex===o))??{},{paragraphStyle:c={}}=s,{horizontalAlign:l,spaceAbove:u,spaceBelow:d,lineSpacing:f}=c,p=[];if(l!=null){let e=rn(l);e&&p.push(`text-align: ${e}`)}u!=null&&(typeof u==`number`?p.push(`margin-top: ${u}px`):p.push(`margin-top: ${u.v}px`)),d!=null&&(typeof d==`number`?p.push(`margin-bottom: ${d}px`):p.push(`margin-bottom: ${d.v}px`)),f!=null&&p.push(`line-height: ${f}`),p.push(...Qt(c.textStyle));let m=$t(Vt(n,a,o),c.textStyle),h=t.map(e=>{let t={html:``};return Ut(e,n,t),Xt(t),t.html}).join(``);if(h){Xt(r),r.html+=h;break}Wt(n,s,a,o,m,p,r);break}case t.DataStreamTreeNodeType.TABLE:{var a,o,s;let{children:t}=e;Xt(r),r.tableIndex??=0,r.tableStack??=[];let i=(a=n.body)==null||(a=a.tables)==null?void 0:a[r.tableIndex++],c=i?(o=n.tableSource)==null?void 0:o[i.tableId]:void 0,l=c==null||(s=c.tableColumns)==null?void 0:s.reduce((e,t)=>{var n;return e+(((n=t.size)==null||(n=n.width)==null?void 0:n.v)??0)},0),u=[`border-collapse: collapse`,l?`width: ${tn(l)}px`:`width: 100%`].join(`; `);r.tableStack.push({table:c,rowIndex:-1,columnIndex:0}),r.html+=`<table class="MsoNormalTable UniverTable" style="${u};"><tbody>`;for(let e of t)Ut(e,n,r);r.html+=`</tbody></table>`,r.tableStack.pop();break}case t.DataStreamTreeNodeType.TABLE_ROW:{var c,l,u;let{children:t}=e,i=(c=r.tableStack)==null?void 0:c[r.tableStack.length-1];i&&(i.rowIndex++,i.columnIndex=0);let a=i==null||(l=i.table)==null||(l=l.tableRows)==null?void 0:l[i.rowIndex],o=(a==null||(u=a.trHeight)==null||(u=u.val)==null?void 0:u.v)==null?``:` style="height: ${tn(a.trHeight.val.v)}px"`;r.html+=`<tr class="UniverTableRow"${o}>`;for(let e of t)Ut(e,n,r);r.html+=`</tr>`;break}case t.DataStreamTreeNodeType.TABLE_CELL:{var d,f,p;let{children:t}=e,i=(d=r.tableStack)==null?void 0:d[r.tableStack.length-1],a=i==null||(f=i.table)==null||(f=f.tableRows)==null?void 0:f[i.rowIndex],o=a==null||(p=a.tableCells)==null?void 0:p[(i==null?void 0:i.columnIndex)??0];if(i&&i.columnIndex++,(o==null?void 0:o.rowSpan)===0||(o==null?void 0:o.columnSpan)===0)break;r.html+=`<td class="UniverTableCell"${Zt(o)}>`;for(let e of t)Ut(e,n,r);Xt(r),r.html+=`</td>`;break}default:throw Error(`Unknown node type: ${e.nodeType}`)}}function Wt(e,t,n,r,i,a,o){let s=qt(e,t,i,a);if(s){Jt(o,s);return}Xt(o),o.html+=Gt(e,t,n,r,i,a)}function Gt(e,n,r,i,a,o){var s;let c=(s=e.body)==null||(s=s.blockRanges)==null?void 0:s.find(e=>e.startIndex<=r&&i<=e.endIndex+1);if(c&&!un(a))return``;let l=Kt(n,a,o)??`<p class="UniverNormal" ${o.length?`style="${o.join(`; `)};"`:``}>${a}</p>`;switch(c==null?void 0:c.blockType){case t.DocumentBlockRangeType.QUOTE:return`<blockquote data-doc-type="quote" style="border-left: 4px solid #d0d7de; margin: 8px 0; padding: 4px 0 4px 12px; color: #57606a;">${l}</blockquote>`;case t.DocumentBlockRangeType.CODE:return`<pre data-doc-type="code-block" style="font-family: Consolas, 'Courier New', monospace; background: #f6f8fa; padding: 12px; border-radius: 6px; white-space: pre-wrap;"><code>${a.replace(/<\/?[^>]+>/g,``)}</code></pre>`;case t.DocumentBlockRangeType.CALLOUT:return`<aside data-doc-type="callout" role="note" style="background: #fff8c5; border-left: 4px solid #d4a72c; padding: 8px 12px; margin: 8px 0; border-radius: 4px;"><p><span data-callout-icon="true" style="margin-right: 6px;">💡</span>${a}</p></aside>`;default:return l}}function Kt(e,t,n){var r;let i=nn((r=e.paragraphStyle)==null?void 0:r.namedStyleType);return i?`<p class="UniverHeading" role="heading" aria-level="${i}" data-heading-level="${i}" ${n.length?`style="${n.join(`; `)};"`:``}>${t}</p>`:null}function qt(e,t,n,r){let i=t.bullet;if(!i)return null;let a=an(String(i.listType))?`ol`:`ul`,o=i.nestingLevel??0,s=on(e,String(i.listType),o);return{tag:a,level:o,listType:String(i.listType),listStyle:s,html:`<p class="UniverNormal" ${r.length?`style="${r.join(`; `)};"`:``}>${n}</p>`}}function Jt(e,t){e.listStack??=[];let n=e.listStack;for(;n.length>t.level+1;)e.html+=`</li></${n.pop().tag}>`;let r=n[n.length-1];if(r&&r.level===t.level)r.tag===t.tag&&r.listType===t.listType?e.html+=`</li><li>`:(e.html+=`</li></${n.pop().tag}>`,Yt(e,t));else{for(;n.length<t.level;)Yt(e,{...t,level:n.length});Yt(e,t)}e.html+=t.html}function Yt(e,t){let n=t.listStyle?` list-style-type: ${t.listStyle};`:``,r=t.level>0?` margin-left: ${t.level*24}px;`:``;e.html+=`<${t.tag} data-doc-type="${t.tag===`ol`?`ordered-list`:`bullet-list`}" style="margin-top: 0; margin-bottom: 0;${r}${n}"><li>`,e.listStack.push({tag:t.tag,level:t.level,listType:t.listType})}function Xt(e){for(var t;(t=e.listStack)!=null&&t.length;)e.html+=`</li></${e.listStack.pop().tag}>`}function Zt(e){var t,n;if(!e)return``;let r=[],i=[];return(e.rowSpan??1)>1&&r.push(`rowspan="${e.rowSpan}"`),(e.columnSpan??1)>1&&r.push(`colspan="${e.columnSpan}"`),((t=e.size)==null||(t=t.width)==null?void 0:t.v)!=null&&i.push(`width: ${tn(e.size.width.v)}px`),(n=e.backgroundColor)!=null&&n.rgb&&i.push(`background-color: ${e.backgroundColor.rgb}`),[[`top`,e.borderTop],[`right`,e.borderRight],[`bottom`,e.borderBottom],[`left`,e.borderLeft]].forEach(([e,t])=>{var n,r;t&&i.push(`border-${e}: ${tn(((n=t.width)==null?void 0:n.v)??1)}px solid ${((r=t.color)==null?void 0:r.rgb)??`#1f1f1f`}`)}),i.length&&r.push(`style="${i.join(`; `)};"`),r.length?` ${r.join(` `)}`:``}function Qt(e){if(!e)return[];let{ff:n,fs:r,it:i,bl:a,ul:o,st:s,ol:c,bg:l,cl:u}=e,d=[];d.push(`font-family: ${n??Lt}`),r!=null&&d.push(`font-size: ${r}pt`),u!=null&&u.rgb&&d.push(`color: ${en(u.rgb)}`),l!=null&&l.rgb&&d.push(`background-color: ${en(l.rgb)}`),a===t.BooleanNumber.TRUE&&d.push(`font-weight: bold`),i===t.BooleanNumber.TRUE&&d.push(`font-style: italic`);let f=[];return(o==null?void 0:o.s)===t.BooleanNumber.TRUE&&f.push(`underline`),(s==null?void 0:s.s)===t.BooleanNumber.TRUE&&f.push(`line-through`),(c==null?void 0:c.s)===t.BooleanNumber.TRUE&&f.push(`overline`),f.length&&d.push(`text-decoration: ${f.join(` `)}`),d}function $t(e,n){var r,i;if(!n||!un(e))return e;let a=e;return n.it===t.BooleanNumber.TRUE&&(a=`<i>${a}</i>`),((r=n.ul)==null?void 0:r.s)===t.BooleanNumber.TRUE&&(a=`<u>${a}</u>`),((i=n.st)==null?void 0:i.s)===t.BooleanNumber.TRUE&&(a=`<s>${a}</s>`),n.bl===t.BooleanNumber.TRUE&&(a=`<strong>${a}</strong>`),a}function en(e){let t=e.match(/^rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})(?:\s*,\s*[\d.]+)?\s*\)$/i);return t?`#${t.slice(1,4).map(e=>Math.max(0,Math.min(255,Number(e))).toString(16).padStart(2,`0`)).join(``)}`:e}function tn(e){return Math.round(e*100)/100}function nn(e){switch(e){case t.NamedStyleType.TITLE:case t.NamedStyleType.HEADING_1:return 1;case t.NamedStyleType.HEADING_2:return 2;case t.NamedStyleType.HEADING_3:return 3;case t.NamedStyleType.HEADING_4:return 4;case t.NamedStyleType.HEADING_5:return 5;default:return null}}function rn(e){switch(e){case t.HorizontalAlign.LEFT:return`left`;case t.HorizontalAlign.CENTER:return`center`;case t.HorizontalAlign.RIGHT:return`right`;case t.HorizontalAlign.JUSTIFIED:case t.HorizontalAlign.BOTH:return`justify`;default:return null}}function an(e){return e.includes(`ORDER`)||e===t.PresetListType.ORDER_LIST}function on(e,t,n){var r;switch((r=e.lists)==null||(r=r[t])==null||(r=r.nestingLevel)==null||(r=r[n])==null?void 0:r.glyphType){case 3:return`upper-alpha`;case 4:return`lower-alpha`;case 5:return`upper-roman`;case 6:return`lower-roman`;default:return an(t)?`decimal`:null}}function sn(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}function cn(e){return sn(ln(e)).replace(/\r\n|\r|\n/g,`<br>`)}function ln(e){return e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g,``)}function un(e){return/<(?:img|br)\b/i.test(e)||e.replace(/<[^>]+>/g,``).replace(/&nbsp;/gi,` `).trim().length>0}var dn=class{constructor(e){this._docHtmlExportService=e}convert(e){if(e.length===0)throw Error(`The bodyList length at least to be 1`);let n=``;for(let i of t.Tools.deepClone(e)){var r;n+=Ht(((r=this._docHtmlExportService)==null?void 0:r.transformDocumentForHtmlExport(i))??i)}return n}},fn=class extends t.Disposable{constructor(...e){super(...e),O(this,`_transformers`,[])}registerTransformer(e){return this._transformers.push(e),this.disposeWithMe((0,t.toDisposable)(()=>(0,t.remove)(this._transformers,e)))}transformDocumentForHtmlExport(e){return this._transformers.reduce((e,t)=>t(e),e)}};Ke.use(vt),Ke.use(xt),Ke.use(St);function pn(e,n){let{startOffset:r,endOffset:i,spanEntireTable:a,tableId:o}=n;if(r==null||i==null)return{dataStream:``};if(a){var s;let n=(s=e.tables)==null?void 0:s.find(e=>e.tableId===o);if(n)return(0,t.getBodySlice)(e,n.startIndex,n.endIndex,!1,t.SliceBodyType.copy)}return mn(e,r,i)}function mn(e,n,r){var i,a,o;let s=(0,t.getBodySlice)(e,n,r+2);return s.dataStream=t.DataStreamTreeTokenType.TABLE_START+t.DataStreamTreeTokenType.TABLE_ROW_START+t.DataStreamTreeTokenType.TABLE_CELL_START+s.dataStream+t.DataStreamTreeTokenType.TABLE_CELL_END+t.DataStreamTreeTokenType.TABLE_ROW_END+t.DataStreamTreeTokenType.TABLE_END,(i=s.textRuns)==null||i.forEach(e=>{let{st:t,ed:n}=e;e.st=t+3,e.ed=n+3}),(a=s.tables)==null||a.forEach(e=>{let{startIndex:t,endIndex:n}=e;e.startIndex=t+3,e.endIndex=n+3}),(o=s.paragraphs)==null||o.forEach(e=>{let{startIndex:t}=e;e.startIndex=t+3}),s}let hn=(0,t.createIdentifier)(`doc.clipboard-service`),gn=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._univerInstanceService=e,this._logService=t,this._commandService=n,this._clipboardInterfaceService=r,this._docSelectionManagerService=a,O(this,`_clipboardHooks`,[]),O(this,`_memoryClipboardData`,null),O(this,`_htmlToUDM`,new Ke),O(this,`_umdToHtml`,void 0),this._umdToHtml=new dn(i)}async copy(e=t.SliceBodyType.copy,n){let{newSnapshotList:r=[],needCache:i=!1,plainTextList:a,snapshot:o,ranges:s}=this._getDocumentBodyInRanges(e,n)??{};if(r.length===0||o==null)return!1;try{var c;let e=!!(s!=null&&(c=s[0])!=null&&c.segmentId);await this._setClipboardData(r,!e&&i,a)}catch(e){return this._logService.error(`[DocClipboardService] copy failed`,e),!1}return!0}async cut(e){return this._cut(e)}async paste(e){if(!(e!=null&&e.length))return this._memoryClipboardData?this._paste(t.Tools.deepClone(this._memoryClipboardData)):!1;let n=await this._genDocDataFromClipboardItems(e);return this._paste(n)}async legacyPaste(e){let{html:n,internalJson:r,text:i,files:a}=e,o=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),s=(o==null?void 0:o.getUnitId())||``;if(!n&&!i&&a.length?n=await this._createImagePasteHtml(a):n&&a.length&&(n+=await this._createImagePasteHtml(a)),n=await this._uploadBase64ImagesInHtml(n),!n&&!i)return this._logService.warn(`[DocClipboardController] html and text cannot be both empty!`),!1;let c=this._genDocDataFromHtmlAndText(n,i,s,r);if(s===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)if(i){let e=t.BuildTextUtils.transform.fromPlainText(i);return this._paste({body:e})}else c.body.textRuns=[];return this._paste(c)}async _cut(e){let n=(e==null?void 0:e.filter(e=>e.rangeType===t.DOC_RANGE_TYPE.TEXT))??this._docSelectionManagerService.getTextRanges()??[],r=(e==null?void 0:e.filter(e=>e.rangeType===t.DOC_RANGE_TYPE.RECT))??this._docSelectionManagerService.getRectRanges()??[],{segmentId:i,endOffset:a,style:o}=n[0]??{};if(i??this._logService.error(`[DocClipboardController] segmentId is not existed`),n.length===0&&r.length===0)return!1;this.copy(t.SliceBodyType.cut,e);try{let e=0;if(r.length>0)e=je(n,r);else if(a!=null){e=a;for(let t of n){let{startOffset:n,endOffset:r}=t;n!=null&&r!=null&&r<=a&&(e-=r-n)}}let t=[{startOffset:e,endOffset:e,style:o}];return this._commandService.executeCommand(Ee.id,{segmentId:i,textRanges:t,rectRanges:r,selections:n})}catch{return this._logService.error(`[DocClipboardController] cut content failed`),!1}}async _paste(e){var n,r,i;let{body:a}=e;if(a==null)return!1;let o=(0,t.normalizeBody)(a),s=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!s)return!1;this._clipboardHooks.forEach(t=>{t.onBeforePaste&&(o=t.onBeforePaste(o,{documentData:e,targetUnitId:s.getUnitId()}))});let c=((n=o.customRanges)==null?void 0:n.map(e=>({sourceRange:e,targetRange:t.BuildTextUtils.customRange.copyCustomRange(e)})))??[];o.customRanges=c.map(({targetRange:e})=>e),(r=o.paragraphs)==null||r.forEach(e=>{var n;(n=e.paragraphStyle)!=null&&n.headingId&&(e.paragraphStyle.headingId=(0,t.generateRandomId)(6))});let l=this._docSelectionManagerService.getActiveTextRange(),u=this._docSelectionManagerService.getDocRanges(),{segmentId:d,endOffset:f,style:p}=(l??u.find(e=>e.isActive)??u[0])||{},m=this._docSelectionManagerService.getTextRanges()??[];if(d??this._logService.error(`[DocClipboardController] segmentId does not exist!`),f==null)return!1;let h=d==null?null:(i=s.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();h&&vn(o,h,m);try{let t=f;for(let e of m){let{startOffset:n,endOffset:r}=e;n!=null&&r!=null&&r<=f&&(t+=o.dataStream.length-(r-n))}let n=[{startOffset:t,endOffset:t,style:p}];return this._commandService.executeCommand(fe.id,{doc:{...e,body:o},customRangeMappings:c,segmentId:d,textRanges:n})}catch{return this._logService.error(`[DocClipboardController]`,`clipboard is empty.`),!1}}async _setClipboardData(e,n=!0,r){var i;let a=(0,t.generateRandomId)(6),o=(r?r.join(`
17
17
  `):e.length>1?e.map(e=>{var t;return((t=e.body)==null?void 0:t.dataStream)||``}).join(`
18
18
  `):((i=e[0].body)==null?void 0:i.dataStream)||``).replaceAll(t.DataStreamTreeTokenType.TABLE_START,``).replaceAll(t.DataStreamTreeTokenType.TABLE_END,``).replaceAll(t.DataStreamTreeTokenType.TABLE_ROW_START,``).replaceAll(t.DataStreamTreeTokenType.TABLE_ROW_END,``).replaceAll(t.DataStreamTreeTokenType.TABLE_CELL_START,``).replaceAll(t.DataStreamTreeTokenType.TABLE_CELL_END,``).replaceAll(t.DataStreamTreeTokenType.BLOCK_START,``).replaceAll(t.DataStreamTreeTokenType.BLOCK_END,``).replaceAll(`\r
19
- `,` `).replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g,``),s=this._umdToHtml.convert(e),c=``,l=null;if(e.length===1&&n){s=s.replace(/(<[a-z]+)/,(e,t)=>`${t} data-copy-id="${a}"`);let t=e[0],n=Et(t);ze.set(a,n),l=n}else l=Dt(e);l&&(l=this._applyCopyDocDataHooks(l,e),c=wt(l),s=Ot(s,c)),s=At(s),await this._clipboardInterfaceService.write(o,s,c?{[St]:c}:void 0),this._memoryClipboardData=t.Tools.deepClone(l)}addClipboardHook(e){return this._clipboardHooks.push(e),(0,t.toDisposable)(()=>{let t=this._clipboardHooks.indexOf(e);t>-1&&this._clipboardHooks.splice(t,1)})}_applyCopyDocDataHooks(e,t){return this._clipboardHooks.reduce((e,n)=>{var r;return((r=n.onCopyDocData)==null?void 0:r.call(n,e,{sourceDocuments:t}))??e},e)}_getDocumentBodyInRanges(e,n){var r,i;let a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),o=n??this._docSelectionManagerService.getDocRanges(),s=[],c=[],l=(r=this._clipboardHooks.find(e=>e.onCopyContent))==null?void 0:r.onCopyContent,u=!0;if(a==null||o.length===0)return;let d=o[0].segmentId,f=a==null||(i=a.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody(),p=a.getSnapshot();if(f!=null){for(let n of o){var m;let{startOffset:r,endOffset:i,collapsed:o,rangeType:p}=n;if(o||r==null||i==null)continue;if(p===t.DOC_RANGE_TYPE.RECT){u=!1;let e=un(f,n);s.push(e),c.push(e.dataStream);continue}let h={startOffset:r,endOffset:i,collapsed:o},g=(m=a.getSelfOrHeaderFooterModel(d))==null?void 0:m.sliceBody(h.startOffset,h.endOffset,e);g!=null&&(s.push(g),c.push((l==null?void 0:l(h.startOffset,h.endOffset,{body:f,segmentId:d,unitId:a.getUnitId()}))??g.dataStream))}return{newSnapshotList:s.map(e=>({...p,body:e})),needCache:u,plainTextList:c,snapshot:p,ranges:o}}}async _genDocDataFromClipboardItems(e){try{let t=``,n=``,r=``,a=[];for(let o of e)for(let e of o.types)switch(e){case St:r=await o.getType(e).then(e=>e&&e.text());break;case i.PLAIN_TEXT_CLIPBOARD_MIME_TYPE:n=await o.getType(e).then(e=>e&&e.text());break;case i.HTML_CLIPBOARD_MIME_TYPE:t=await o.getType(e).then(e=>e&&e.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:{let t=await o.getType(e),n=new File([t],`pasted_image.${e.split(`/`)[1]}`,{type:e});a.push(n);break}}return!t&&!n&&a.length&&(t=await this._createImagePasteHtml(a)),t=await this._uploadBase64ImagesInHtml(t)??``,this._genDocDataFromHtmlAndText(t,n,void 0,r)}catch(e){return Promise.reject(e)}}_genDocDataFromHtmlAndText(e,n,r,i){let a=Tt(i)??kt(e);if(a!=null&&a.body)return a;if(!e){if(n)return{body:t.BuildTextUtils.transform.fromPlainText(n)};throw Error(`[DocClipboardService] html and text cannot be both empty!`)}let o=Re(e);if(o){let e=ze.get(o);if(e)return e}if(!r){let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);r=(e==null?void 0:e.getUnitId())||``}let s=this._htmlToUDM.convert(e,{unitId:r});return o&&ze.set(o,s),s}async _uploadBase64ImagesInHtml(e){var n;if(!e||!e.includes(`data:image/`))return e;let r=(n=this._clipboardHooks.find(e=>e.onBeforePasteImage))==null?void 0:n.onBeforePasteImage;if(!r)return e;let i=new DOMParser().parseFromString(e,`text/html`),a=Array.from(i.querySelectorAll(`img[src^="data:image/"]`));return a.length===0?e:(await Promise.all(a.map(async(e,n)=>{if(e.dataset.imageSourceType&&e.dataset.imageSourceType!==t.ImageSourceType.BASE64)return;let i=gn(e.getAttribute(`src`)||e.src,`pasted_image_${n}`),a=await r(i);a&&(e.dataset.imageSourceType=a.imageSourceType,a.imageSourceType===t.ImageSourceType.UUID?(e.dataset.source=a.source,e.setAttribute(`src`,a.source)):(e.removeAttribute(`data-source`),e.setAttribute(`src`,a.source)))})),i.documentElement.outerHTML)}async _createImagePasteHtml(e){var n;let r={id:``,documentStyle:{},body:{dataStream:``,customBlocks:[]},drawings:{}},i=async e=>{let n=new FileReader;return new Promise(r=>{n.onloadend=function(){r({source:n.result,imageSourceType:t.ImageSourceType.BASE64})},n.readAsDataURL(e)})},a=e=>{let t=new Image;return new Promise(n=>{t.src=typeof e==`string`?e:URL.createObjectURL(e),t.onload=()=>{let e=Math.min(500,t.naturalWidth);n({width:e,height:e*(t.naturalHeight/t.naturalWidth)})}})},o=((n=this._clipboardHooks.find(e=>e.onBeforePasteImage))==null?void 0:n.onBeforePasteImage)??i;return await Promise.all(e.map(async(e,n)=>{var i;let s=await o(e);if(!s)return Promise.resolve();let{width:c=100,height:l=100}=await a(e),u=`paste_image_id_${n}`,d=r.body,f=r.drawings;d.dataStream+=`\b`,(i=d.customBlocks)==null||i.push({startIndex:n,blockId:u}),f[u]={drawingId:u,unitId:``,subUnitId:``,imageSourceType:s.imageSourceType,title:``,source:s.source,description:``,layoutType:t.PositionedObjectLayoutType.INLINE,drawingType:t.DrawingTypeEnum.DRAWING_IMAGE,transform:{width:c,height:l,angle:0},docTransform:{angle:0,size:{width:c,height:l},positionH:{relativeFrom:t.ObjectRelativeFromH.CHARACTER,posOffset:0},positionV:{relativeFrom:t.ObjectRelativeFromV.LINE,posOffset:0}}}})),this._umdToHtml.convert([r])}};pn=A([k(0,t.IUniverInstanceService),k(1,t.ILogService),k(2,t.ICommandService),k(3,i.IClipboardInterfaceService),k(4,(0,t.Inject)(ln)),k(5,(0,t.Inject)(n.DocSelectionManagerService))],pn);function mn(e){let n=e[e.length-1];return n===t.DataStreamTreeTokenType.PARAGRAPH||n===t.DataStreamTreeTokenType.SECTION_BREAK||n===t.DataStreamTreeTokenType.BLOCK_END||n===t.DataStreamTreeTokenType.TABLE_END||n===t.DataStreamTreeTokenType.COLUMN_GROUP_END}function hn(e,n,r){var i;if(mn(e.dataStream)||!r.every(e=>e.collapsed&&b(n.dataStream,e.startOffset)))return;let a=e.dataStream.length,o=new Set(((i=e.paragraphs)==null?void 0:i.map(e=>e.paragraphId))??[]);e.dataStream+=t.DataStreamTreeTokenType.PARAGRAPH,e.paragraphs=[...e.paragraphs??[],{startIndex:a,paragraphId:(0,t.createParagraphId)(o)}]}function gn(e,t){let n=/^data:([^;,]+)(;base64)?,(.*)$/i.exec(e);if(!n)throw Error(`[DocClipboardService] invalid image data url.`);let[,r,i,a]=n,o=i?Uint8Array.from(atob(a),e=>e.charCodeAt(0)):new TextEncoder().encode(decodeURIComponent(a)),s=r.split(`/`)[1]||`png`;return new File([o],`${t}.${s}`,{type:r})}function _n(e){return e.getContextValue(t.FOCUSING_DOC)||e.getContextValue(t.EDITOR_ACTIVATED)}let vn={id:i.CopyCommand.id,name:`doc.command.copy`,type:t.CommandType.COMMAND,multi:!0,priority:999,preconditions:_n,handler:async e=>e.get(fn).copy()},yn={id:`doc.command.copy-current-paragraph`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(fn),r=Te(e);return r?n.copy(t.SliceBodyType.copy,[{startOffset:r.paragraphStart,endOffset:r.paragraphEnd+1,collapsed:!1}]):!1}},bn={id:i.CutCommand.id,name:`doc.command.cut`,type:t.CommandType.COMMAND,multi:!0,priority:999,preconditions:_n,handler:async e=>e.get(fn).cut()},xn={id:`doc.command.cut-current-paragraph`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(fn),r=Te(e);return r?n.cut([{startOffset:r.paragraphStart,endOffset:r.paragraphEnd+1,collapsed:!1,rangeType:t.DOC_RANGE_TYPE.TEXT}]):!1}},Sn={id:i.PasteCommand.id,name:`doc.command.paste`,type:t.CommandType.COMMAND,multi:!0,priority:999,preconditions:_n,handler:async e=>{let t=e.get(fn),n=e.get(i.IClipboardInterfaceService),r=n.supportClipboard?await n.read():[];return t.paste(r)}},Cn=[`paragraphs`,`sectionBreaks`,`tables`,`columnGroups`,`customBlocks`,`blockRanges`,`customRanges`,`customDecorations`,`textRuns`],wn={id:`doc.command.move-block`,type:t.CommandType.COMMAND,handler:async(e,r)=>{if(!r)return!1;let i=e.get(t.IUniverInstanceService),a=e.get(t.ICommandService),{unitId:o,sourceRange:s,targetOffset:c}=r,l=o?i.getUnit(o,t.UniverInstanceType.UNIVER_DOC):i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!l)return!1;let u=l.getSnapshot(),d=Tn({documentData:u,sourceRange:s,targetOffset:c}),{nextDocumentData:f,movedRange:p}=e.get(n.DocBlockMoveValidatorService).transformMoveResult({unitId:l.getUnitId(),sourceRange:s,targetOffset:c,previousDocumentData:u,result:d}),m=En(u,f,{sourceRange:s,targetOffset:c,movedRange:p});if(!m)return!1;let h=[{startOffset:p.startOffset,endOffset:p.endOffset,collapsed:!1}];return!!a.syncExecuteCommand(n.RichTextEditingMutation.id,{unitId:l.getUnitId(),actions:m,textRanges:h})}};function Tn(e){let n=t.Tools.deepClone(e.documentData),r=n.body;if(!(r!=null&&r.dataStream))return{nextDocumentData:n,movedRange:e.sourceRange};let i=r.dataStream.length,a=Bn(e.sourceRange.startOffset,0,i),o=Bn(e.sourceRange.endOffset,a,i),s=Bn(e.targetOffset,0,i);if(a===o||s>=a&&s<=o)return{nextDocumentData:n,movedRange:{startOffset:a,endOffset:o}};let c=r.dataStream.slice(a,o),l=c.length,u=s>o?s-l:s,d=r.dataStream.slice(0,a)+r.dataStream.slice(o);return r.dataStream=d.slice(0,u)+c+d.slice(u),Fn(r,a,o,s,u,l),{nextDocumentData:n,movedRange:{startOffset:u,endOffset:u+l}}}function En(e,n,r){t.JSONX.getInstance();let i=e.body,a=n.body;if(!i||!a)return null;let o=[],s=t.Tools.deepClone(e),c=r?Dn(i,a,r):null;c&&(o.push(c),s=t.JSONX.apply(s,c));let l=On(s.body,a);return l&&(o.push(l),s=t.JSONX.apply(s,l)),c||An(s.body,a,o),o.reduce((e,n)=>t.JSONX.compose(e,n),null)}function Dn(e,n,r){let i=e.dataStream.length,a=Bn(r.sourceRange.startOffset,0,i),o=Bn(r.sourceRange.endOffset,a,i),s=Bn(r.targetOffset,0,i),c=o-a;if(c<=0||s>=a&&s<=o)return null;let l=new t.TextX,u=r.movedRange.startOffset,d=(0,t.getBodySliceForTextXAction)(n,u,u+c,!1);return s<a?(l.retain(s),l.insert(c,d),l.retain(a-s),l.delete(c)):(l.retain(a),l.delete(c),l.retain(s-o),l.insert(c,d)),t.JSONX.getInstance().editOp(l.serialize(),[`body`])}function On(e,n){let r=kn(e==null?void 0:e.dataStream,n.dataStream);if(!r)return null;let i=new t.TextX;return i.retain(r.start),r.insertLength>0&&i.insert(r.insertLength,(0,t.getBodySliceForTextXAction)(n,r.start,r.start+r.insertLength,!1)),r.deleteLength>0&&i.delete(r.deleteLength),t.JSONX.getInstance().editOp(i.serialize(),[`body`])}function kn(e,t){if(e==null||t==null||e===t)return null;let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];)n++;let r=e.length,i=t.length;for(;r>n&&i>n&&e[r-1]===t[i-1];)r--,i--;return{start:n,deleteLength:r-n,insertLength:i-n}}function An(e,n,r){for(let i of Cn)jn(t.JSONX.getInstance(),[`body`,i],e==null?void 0:e[i],n[i],r)}function jn(e,n,r,i,a){if(!Pn(r,i)&&!t.Tools.diffValue(r,i)){if(r==null){a.push(e.insertOp(n,i));return}if(i==null){a.push(e.removeOp(n,r));return}if(Array.isArray(r)&&Array.isArray(i)){Mn(e,n,r,i,a);return}if(Nn(r)&&Nn(i)){new Set([...Object.keys(r),...Object.keys(i)]).forEach(t=>{jn(e,[...n,t],r[t],i[t],a)});return}a.push(e.replaceOp(n,r,i))}}function Mn(e,n,r,i,a){if(r.length===i.length){r.forEach((t,r)=>jn(e,[...n,r],t,i[r],a));return}let o=0;for(;o<r.length&&o<i.length&&t.Tools.diffValue(r[o],i[o]);)o++;let s=r.length-1,c=i.length-1;for(;s>=o&&c>=o&&t.Tools.diffValue(r[s],i[c]);)s--,c--;for(let t=s;t>=o;t--)a.push(e.removeOp([...n,t],r[t]));for(let t=o;t<=c;t++)a.push(e.insertOp([...n,t],i[t]))}function Nn(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Pn(e,t){return e==null&&Array.isArray(t)&&t.length===0||t==null&&Array.isArray(e)&&e.length===0}function Fn(e,t,n,r,i,a){var o,s,c,l,u,d,f,p,m;e.paragraphs=(o=e.paragraphs)==null?void 0:o.map(e=>({...e,startIndex:Rn(e.startIndex,t,n,r,i,a)})).sort((e,t)=>e.startIndex-t.startIndex),e.sectionBreaks=(s=e.sectionBreaks)==null?void 0:s.map(e=>({...e,startIndex:Rn(e.startIndex,t,n,r,i,a)})).sort((e,t)=>e.startIndex-t.startIndex),e.customBlocks=(c=e.customBlocks)==null?void 0:c.map(e=>({...e,startIndex:Rn(e.startIndex,t,n,r,i,a)})).sort((e,t)=>e.startIndex-t.startIndex),e.tables=(l=e.tables)==null?void 0:l.map(e=>In(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.columnGroups=(u=e.columnGroups)==null?void 0:u.map(e=>In(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.blockRanges=(d=e.blockRanges)==null?void 0:d.map(e=>Ln(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.customRanges=(f=e.customRanges)==null?void 0:f.map(e=>Ln(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.customDecorations=(p=e.customDecorations)==null?void 0:p.map(e=>Ln(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.textRuns=(m=e.textRuns)==null?void 0:m.map(e=>{let o=In({startIndex:e.st,endIndex:e.ed},t,n,r,i,a);return{...e,st:o.startIndex,ed:o.endIndex}}).sort((e,t)=>e.st-t.st)}function In(e,t,n,r,i,a){return e.startIndex>=t&&e.endIndex<=n?{...e,startIndex:i+e.startIndex-t,endIndex:i+e.endIndex-t}:{...e,startIndex:Rn(e.startIndex,t,n,r,i,a),endIndex:zn(e.endIndex,t,n,r,i,a)}}function Ln(e,t,n,r,i,a){return e.startIndex>=t&&e.endIndex<n?{...e,startIndex:i+e.startIndex-t,endIndex:i+e.endIndex-t}:{...e,startIndex:Rn(e.startIndex,t,n,r,i,a),endIndex:Rn(e.endIndex,t,n,r,i,a)}}function Rn(e,t,n,r,i,a){return e>=t&&e<n?i+e-t:r<t&&e>=r&&e<t?e+a:r>n&&e>=n&&e<r?e-a:e}function zn(e,t,n,r,i,a){return e>t&&e<=n?i+e-t:r>n&&e>=n&&e<=r?e-a:Rn(e,t,n,r,i,a)}function Bn(e,t,n){return Math.min(Math.max(e,t),n)}let Vn={id:`doc.command.horizontal-line`,type:t.CommandType.COMMAND,handler:(e,n)=>e.get(t.ICommandService).syncExecuteCommand(L.id,{horizontalLine:{padding:5,color:{rgb:`#CDD0D8`},width:1,dashStyle:t.DashStyleType.SOLID},insertionMode:n==null?void 0:n.insertionMode,textRange:n==null?void 0:n.insertRange})},Hn={id:`doc.command.insert-horizontal-line-bellow`,type:t.CommandType.COMMAND,handler:e=>{let r=e.get(t.ICommandService),i=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),a=null;try{a=e.get(n.DocContentInsertService).consumeInsertRange(i==null?void 0:i.getUnitId())}catch{a=null}if(a)return r.syncExecuteCommand(Vn.id,{insertionMode:`insert-gap`,insertRange:{startOffset:a.startOffset,endOffset:a.endOffset}});let o=Te(e);return o?r.syncExecuteCommand(Vn.id,{insertRange:{startOffset:o.startIndex+1,endOffset:o.startIndex+1}}):!1}},Un={id:`doc.command.select-all`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let a=e.get(t.IUniverInstanceService),o=e.get(n.DocSelectionManagerService),s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),c=o.getDocRanges(),l=c.find(e=>e.isActive)??c[0];if(s==null)return!1;let u=(r==null?void 0:r.segmentId)??(l==null?void 0:l.segmentId);if(u==null)return!1;let d=s.getUnitId(),f=(i=s.getSelfOrHeaderFooterModel(u))==null?void 0:i.getBody();if(f==null)return!1;let{dataStream:p}=f;if(p===`\r
20
- `)return!0;let m,h;if(r!=null&&r.wholeDocument)m=Wn(f),h=!0;else{if(l==null)return!1;let e=Jn(f,l),t=e.findIndex(e=>er(c,e));m=e[Math.min(t+1,e.length-1)],h=m===e[e.length-1]}return o.replaceDocRanges(m,{unitId:d,subUnitId:d},!1,{wholeDocument:h}),!0}};function Wn(e){return Gn(e,0,e.dataStream.length-2)}function Gn(e,t,n){let r=[...e.columnGroups??[]].sort((e,t)=>e.startIndex-t.startIndex),i=[],a=t;for(let o of r)if(!(o.endIndex<t||o.startIndex>n)){a<o.startIndex&&i.push(...Kn(e,a,Math.min(n,o.startIndex-1)));for(let r of Yn(e,o)){let a=Math.max(t,r.startOffset),o=Math.min(n,r.endOffset);a<=o&&i.push(...Kn(e,a,o))}a=o.endIndex+1}return a<=n&&i.push(...Kn(e,a,n)),i}function Kn(e,t,n){let r=[],i=t;for(let a of[...e.tables??[]].sort((e,t)=>e.startIndex-t.startIndex)){let{startIndex:o,endIndex:s}=a;o<t||s>n||(i!==o&&r.push(...qn(e,i,o-1)),r.push(Zn(a)),i=s)}return i<=n&&r.push(...qn(e,i,n)),r}function qn(e,n,r){if(n>r)return[];let i=[...e.paragraphs??[]].sort((e,t)=>e.startIndex-t.startIndex),a=[],o=n;for(let e of i)if(!(e.startIndex<o)){if(e.startIndex>r)break;a.push({startOffset:o,endOffset:e.startIndex,rangeType:t.DOC_RANGE_TYPE.TEXT}),o=e.startIndex+1}return o<=r&&a.push({startOffset:o,endOffset:r,rangeType:t.DOC_RANGE_TYPE.TEXT}),a}function Jn(e,n){let r=[],i=e=>{e!=null&&e.length&&!r.some(t=>er(t,e))&&r.push(e)},a=n.startOffset,o=n.endOffset;if(a==null||o==null)return[Wn(e)];let s=(e.tables??[]).find(e=>$n(a,o,e.startIndex,e.endIndex)),c=(e.customBlocks??[]).find(e=>e.startIndex>=a&&e.startIndex<=o),l=(e.blockRanges??[]).find(e=>$n(a,o,e.startIndex,e.endIndex));if(s)i([Zn(s)]);else if(c)i([{endOffset:c.startIndex,rangeType:t.DOC_RANGE_TYPE.TEXT,startOffset:c.startIndex}]);else if(l)i([{endOffset:Math.max(l.startIndex+1,l.endIndex-1),rangeType:t.DOC_RANGE_TYPE.TEXT,startOffset:l.startIndex+1}]);else{let n=Xn(Qn(e,a),e.tables??[],a);i(n?[{...n,rangeType:t.DOC_RANGE_TYPE.TEXT}]:null)}let u=(e.columnGroups??[]).find(e=>$n(a,o,e.startIndex,e.endIndex));if(u){let t=Yn(e,u).find(e=>$n(a,o,e.startOffset,e.endOffset));t&&i(Gn(e,t.startOffset,t.endOffset)),i(Gn(e,u.startIndex,u.endIndex))}return i(Wn(e)),r}function Yn(e,n){let r=[],i;for(let a=n.startIndex;a<=n.endIndex;a++){let n=e.dataStream[a];n===t.DataStreamTreeTokenType.COLUMN_START?i=a+1:n===t.DataStreamTreeTokenType.COLUMN_END&&i!=null&&(r.push({startOffset:i,endOffset:a-1,rangeType:t.DOC_RANGE_TYPE.TEXT}),i=void 0)}return r}function Xn(e,t,n){if(!e)return null;let r={...e};for(let e of t)n<e.startIndex&&r.startOffset<e.startIndex&&e.startIndex<=r.endOffset?r.endOffset=e.startIndex-1:n>=e.endIndex&&r.startOffset<=e.endIndex&&e.endIndex<r.endOffset&&(r.startOffset=e.endIndex);return r.startOffset<=r.endOffset?r:null}function Zn(e){return{startOffset:e.startIndex+3,endOffset:e.endIndex-5,rangeType:t.DOC_RANGE_TYPE.RECT}}function Qn(e,n){let r=[...e.paragraphs??[]].sort((e,t)=>e.startIndex-t.startIndex),i=(0,t.getParagraphContentStartOffsets)(e);for(let e of r){let t=i.get(e.startIndex)??0;if(t<=n&&n<=e.startIndex)return{endOffset:e.startIndex,startOffset:t}}return null}function $n(e,t,n,r){return e>=n&&t<=r}function er(e,n){return e.length===n.length?e.every((e,r)=>{let i=n[r],a=nr(e)===nr(i),o=a&&nr(i)===t.DOC_RANGE_TYPE.TEXT&&!e.collapsed&&e.endOffset+1===i.endOffset;return e.startOffset===i.startOffset&&(e.endOffset===i.endOffset||o)&&a}):tr(e,n)}function tr(e,n){if(n.length!==1||nr(n[0])!==t.DOC_RANGE_TYPE.TEXT)return!1;let r=n[0];if(r.startOffset==null||r.endOffset==null||e.some(e=>nr(e)!==t.DOC_RANGE_TYPE.TEXT||e.startOffset==null||e.endOffset==null))return!1;let i=Math.min(...e.map(e=>e.startOffset)),a=Math.max(...e.map(e=>e.endOffset));return i===r.startOffset&&a===r.endOffset&&e.every(e=>e.startOffset>=r.startOffset&&e.endOffset<=r.endOffset)}function nr(e){return e.rangeType??t.DOC_RANGE_TYPE.TEXT}var rr=class extends t.RxDisposable{constructor(e){super(),this._context=e,O(this,`_previousActiveRange`,null),O(this,`_previousDocRanges`,[]),O(this,`_compositionRange`,null),O(this,`_previousSelectionOptions`,null),O(this,`_undoMutationParamsCache`,[]),O(this,`_redoMutationParamsCache`,[])}clearUndoRedoMutationParamsCache(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[]}getUndoRedoMutationParamsCache(){return{undoCache:this._undoMutationParamsCache,redoCache:this._redoMutationParamsCache}}setUndoRedoMutationParamsCache({undoCache:e=[],redoCache:t=[]}){this._undoMutationParamsCache=e,this._redoMutationParamsCache=t}getActiveRange(){return this._previousActiveRange}setActiveRange(e){this._previousActiveRange=e,this._compositionRange=e}getCompositionRange(){return this._compositionRange}setCompositionRange(e){this._compositionRange=e}getPreviousDocRanges(){return this._previousDocRanges}setPreviousDocRanges(e){this._previousDocRanges=e}getPreviousSelectionOptions(){return this._previousSelectionOptions}setPreviousSelectionOptions(e){this._previousSelectionOptions=e}pushUndoRedoMutationParams(e,t){this._undoMutationParamsCache.push(e),this._redoMutationParamsCache.push(t)}fetchComposedUndoRedoMutationParams(){if(this._undoMutationParamsCache.length===0||this._previousActiveRange==null||this._redoMutationParamsCache.length===0)return null;let{unitId:e}=this._undoMutationParamsCache[0],n=this._undoMutationParamsCache[0],r=this._redoMutationParamsCache.at(-1),i={unitId:e,actions:this._undoMutationParamsCache.reverse().reduce((e,n)=>t.JSONX.compose(e,n.actions),null),textRanges:[],segmentId:n.segmentId};return{redoMutationParams:{unitId:e,actions:this._redoMutationParamsCache.reduce((e,n)=>t.JSONX.compose(e,n.actions),null),textRanges:(r==null?void 0:r.textRanges)??[],segmentId:r==null?void 0:r.segmentId,options:r==null?void 0:r.options,isEditing:r==null?void 0:r.isEditing},undoMutationParams:i,previousActiveRange:this._previousActiveRange,previousDocRanges:this._previousDocRanges,previousSelectionOptions:this._previousSelectionOptions}}dispose(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[],this._previousActiveRange=null,this._previousDocRanges=[],this._compositionRange=null,this._previousSelectionOptions=null}};let ir={id:`doc.command.ime-input`,type:t.CommandType.COMMAND,handler:async(e,i)=>{var a,o,s;let{unitId:c,newText:l,oldTextLen:u,isCompositionEnd:d,isCompositionStart:f}=i,p=e.get(t.ICommandService),m=e.get(r.IRenderManagerService),h=e.get(t.IUniverInstanceService),g=e.get(I),_=(a=m.getRenderUnitById(c))==null?void 0:a.with(rr),v=h.getUnit(c,t.UniverInstanceType.UNIVER_DOC);if(v==null||_==null)return!1;let y=_.getCompositionRange();if(y==null)return!1;let{style:b,segmentId:x}=y,T=(o=v.getSelfOrHeaderFooterModel(x))==null?void 0:o.getBody();if(T==null)return!1;Object.assign(y,y);let{startOffset:E,endOffset:D}=y,O=_.getPreviousDocRanges(),k=O.filter(ar),A=O.filter(e=>!ar(e)),j=((s=_.getPreviousSelectionOptions())==null?void 0:s.wholeDocument)===!0,M=f&&(j||k.length>0||A.length>1),N=M?j?0:Ce(A,k):E;if(N==null)return!1;let P=l.length,F=[{startOffset:N+P,endOffset:N+P,collapsed:!0,style:b,segmentId:x}],L={id:n.RichTextEditingMutation.id,params:{unitId:c,actions:[],textRanges:F,segmentId:x,trigger:ir.id}},R=g.getDefaultStyle(),z=g.getStyleCache(),B=M?N:E+u,ee=C(T.customRanges??[],B,t.SHEET_EDITOR_UNITS.includes(c)),V=S(T,M?N:f?D:E+u,R,z,t.SHEET_EDITOR_UNITS.includes(c)),H=w(T.customDecorations??[],B),U={dataStream:l,textRuns:V?[{...V,st:0,ed:l.length}]:[],customRanges:ee?[{...ee,startIndex:0,endIndex:l.length-1}]:[],customDecorations:H.map(e=>({...e,startIndex:0,endIndex:l.length-1}))},W=new t.TextX,G=t.JSONX.getInstance();if(M){var te;let e=(te=m.getRenderUnitById(c))==null?void 0:te.with(n.DocSkeletonManagerService);if(!e)return!1;let t=Se(A,k,v,e.getViewModel(),x??``,U,j);if(!t)return!1;N=t.insertOffset,L.params.actions=t.actions,L.params.textRanges=[{startOffset:N+P,endOffset:N+P,collapsed:!0,style:b,segmentId:x}]}else if(!y.collapsed&&f){let e=t.BuildTextUtils.selection.delete([y],T,0,null,!1);W.push(...e),L.params.textRanges=[{startOffset:N+P,endOffset:N+P,collapsed:!0,segmentId:x}]}else W.push({t:t.TextXActionType.RETAIN,len:E});if(!M&&u>0&&W.push({t:t.TextXActionType.DELETE,len:u}),M||W.push({t:t.TextXActionType.INSERT,body:U,len:l.length}),!M){let e=(0,t.getRichTextEditPath)(v,x);L.params.actions=G.editOp(W.serialize(),e)}L.params.noHistory=!d,L.params.isCompositionEnd=d;let ne=p.syncExecuteCommand(L.id,L.params);return _.pushUndoRedoMutationParams(ne,L.params),M&&_.setCompositionRange({...y,startOffset:N,endOffset:N,collapsed:!0}),!!ne}};function ar(e){return`tableId`in e}function or(e,t,n){return n.executeCommand(Pr.id,{preCommandId:e,...t??{}})}let sr=`doc.command.set-inline-format-bold`,cr={id:sr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(sr,n,r)}},lr=`doc.command.set-inline-format-italic`,ur={id:lr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(lr,n,r)}},dr=`doc.command.set-inline-format-underline`,fr={id:dr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(dr,n,r)}},pr=`doc.command.set-inline-format-strikethrough`,mr={id:pr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(pr,n,r)}},hr=`doc.command.set-inline-format-subscript`,gr={id:hr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(hr,n,r)}},_r=`doc.command.set-inline-format-superscript`,vr={id:_r,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(_r,n,r)}},yr=`doc.command.set-inline-format-fontsize`,br={id:yr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(yr,n,r)}},xr=`doc.command.set-inline-format-font-family`,Sr={id:xr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(xr,n,r)}},Cr=`doc.command.set-inline-format-text-color`,wr={id:Cr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(Cr,n,r)}},Tr=`doc.command.reset-inline-format-text-color`,Er={id:Tr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(Tr,n,r)}},Dr=`doc.command.set-inline-format-text-fill`,Or={id:Dr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(Dr,n,r)}},kr=`doc.command.set-inline-format-text-background-color`,Ar={id:kr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(kr,n,r)}},jr=`doc.command.reset-inline-format-text-background-color`,Mr={id:jr,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return or(jr,n,r)}},Nr={[cr.id]:`bl`,[ur.id]:`it`,[fr.id]:`ul`,[mr.id]:`st`,[br.id]:`fs`,[Sr.id]:`ff`,[wr.id]:`cl`,[Er.id]:`cl`,[Ar.id]:`bg`,[Mr.id]:`bg`,[gr.id]:`va`,[vr.id]:`va`},Pr={id:`doc.command.set-inline-format`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let{value:a,preCommandId:o}=r,s=e.get(t.ICommandService),c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService),u=e.get(I),d=c.getTextRanges()??[],f=d.length>0?d.filter(e=>e.startOffset!=null&&e.endOffset!=null):c.getDocRanges(),p=f.find(e=>e.isActive)??f[0];if(f.length===0)return!1;let{segmentId:m}=f[0],h=l.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(h==null)return!1;let g=(i=h.getSelfOrHeaderFooterModel(m))==null?void 0:i.getBody();if(g==null)return!1;let _=h.getUnitId(),v,y;switch(o){case cr.id:case ur.id:case fr.id:case mr.id:case gr.id:case vr.id:v=zr(Rr(g,p,u.getDefaultStyle()),o);break;case br.id:case Sr.id:v=a;break;case wr.id:case Ar.id:v={rgb:a};break;case Or.id:y=a;break;case Er.id:case Mr.id:v={rgb:null};break;default:throw Error(`Unknown command: ${o} in handleInlineFormat`)}let b={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:f}},x=new t.TextX,S=t.JSONX.getInstance(),C=new t.MemoryCursor;C.reset();for(let e of f){let{startOffset:n,endOffset:r,rangeType:i}=e;if(n==null||r==null)continue;if(i===t.DOC_RANGE_TYPE.RECT&&--n,n===r){let e=u.getStyleCache(),t=Nr[o];y?u.setStyleCache(y):u.setStyleCache({[t]:(e==null?void 0:e[t])!==void 0&&Ir(t)?Lr(e,t,o):v});continue}let a={dataStream:``,textRuns:[{st:0,ed:r-n,ts:y??{[Nr[o]]:v}}]},s=n-C.cursor;s!==0&&x.push({t:t.TextXActionType.RETAIN,len:s}),x.push({t:t.TextXActionType.RETAIN,body:a,len:r-n}),C.reset(),C.moveCursor(r)}let w=(0,t.getRichTextEditPath)(h,m);return b.params.actions=S.editOp(x.serialize(),w),!!s.syncExecuteCommand(b.id,b.params)}};function Fr(e){return typeof e==`object`&&!!e}function Ir(e){return!/fs|ff|cl|bg/.test(e)}function Lr(e,n,r){if(/bl|it/.test(n))return(e==null?void 0:e[n])===t.BooleanNumber.TRUE?t.BooleanNumber.FALSE:t.BooleanNumber.TRUE;if(/ul|st/.test(n))return Fr(e==null?void 0:e[n])&&(e==null?void 0:e[n]).s===t.BooleanNumber.TRUE?{s:t.BooleanNumber.FALSE}:{s:t.BooleanNumber.TRUE};if(/va/.test(n))return r===gr.id?(e==null?void 0:e[n])===t.BaselineOffset.SUBSCRIPT?t.BaselineOffset.NORMAL:t.BaselineOffset.SUBSCRIPT:(e==null?void 0:e[n])===t.BaselineOffset.SUPERSCRIPT?t.BaselineOffset.NORMAL:t.BaselineOffset.SUPERSCRIPT}function Rr(e,n,r){var i,a,o,s,c,l;let{startOffset:u,endOffset:d,collapsed:f}=n;if(f){let t=e.textRuns??[],n=null;for(let e=t.length-1;e>=0;e--){let r=t[e];if(r.st<u&&u<=r.ed){n=r;break}}return n!=null&&n.ts?{...r,...n.ts}:r}let{textRuns:p=[]}=(0,t.getBodySlice)(e,u,d),m=t.Tools.deepClone(r),h=p.map(e=>{var t;return e==null||(t=e.ts)==null?void 0:t.fs}).filter(Boolean);m.fs=m.fs?Math.max(m.fs,...h):h.length?Math.max(...h):void 0,m.fs=!m.fs||Number.isNaN(m.fs)?void 0:m.fs,m.ff=((i=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.ff)!=null}))==null||(i=i.ts)==null?void 0:i.ff)??m.ff,m.it=p.length&&p.every(e=>{var n;return((n=e.ts)==null?void 0:n.it)===t.BooleanNumber.TRUE})?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE,m.bl=p.length&&p.every(e=>{var n;return((n=e.ts)==null?void 0:n.bl)===t.BooleanNumber.TRUE})?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE,m.ul=p.length&&p.every(e=>{var n;return((n=e.ts)==null||(n=n.ul)==null?void 0:n.s)===t.BooleanNumber.TRUE})?(a=p[0].ts)==null?void 0:a.ul:m.ul,m.st=p.length&&p.every(e=>{var n;return((n=e.ts)==null||(n=n.st)==null?void 0:n.s)===t.BooleanNumber.TRUE})?(o=p[0].ts)==null?void 0:o.st:m.st,m.bg=((s=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.bg)!=null}))==null||(s=s.ts)==null?void 0:s.bg)??m.bg,m.cl=((c=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.cl)!=null}))==null||(c=c.ts)==null?void 0:c.cl)??m.cl,m.textFill=((l=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.textFill)!=null}))==null||(l=l.ts)==null?void 0:l.textFill)??m.textFill;let g=p.filter(e=>{var t;return(e==null||(t=e.ts)==null?void 0:t.va)!=null});if(g.length>0&&g.length===p.length){var _;let e=(_=g[0].ts)==null?void 0:_.va,t=!0;for(let n=1;n<g.length;n++){var v;if(((v=g[n].ts)==null?void 0:v.va)!==e){t=!1;break}}t&&(m.va=e)}return m}function zr(e,t){let n=Nr[t];return Lr(e,n,t)}let Br={id:`doc.command-replace-snapshot`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;let{unitId:a,snapshot:o,textRanges:s,segmentId:c=``,options:l}=r,u=e.get(t.IUniverInstanceService),d=e.get(t.ICommandService),f=e.get(n.DocSelectionManagerService),p=u.getUnit(a,t.UniverInstanceType.UNIVER_DOC),m=p==null||(i=p.getSelfOrHeaderFooterModel(c))==null?void 0:i.getSnapshot();if(p==null||m==null)return!1;let{body:h,tableSource:g,footers:_,headers:v,lists:y,drawings:b,drawingsOrder:x,documentStyle:S}=t.Tools.deepClone(o),{body:C,tableSource:w,footers:T,headers:E,lists:D,drawings:O,drawingsOrder:k,documentStyle:A}=m;if(h==null||C==null)return!1;if(t.Tools.diffValue(h,C)&&s)return f.replaceDocRanges(s,{unitId:a,subUnitId:a},!1),!0;let j={id:n.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:s}};return l&&(j.params.options=l),j.params.actions=Vr({body:C,documentStyle:A,tableSource:w,footers:T,headers:E,lists:D,drawings:O,drawingsOrder:k},{body:h,documentStyle:S,tableSource:g,footers:_,headers:v,lists:y,drawings:b,drawingsOrder:x}),!!d.syncExecuteCommand(j.id,j.params)}};function Vr(e,n){let r=t.JSONX.getInstance(),i=[],a=Hr(e.body,n.body);return a&&i.push(a),Ur(r,i,[`documentStyle`],e.documentStyle,n.documentStyle),Ur(r,i,[`tableSource`],e.tableSource,n.tableSource),Ur(r,i,[`footers`],e.footers,n.footers),Ur(r,i,[`headers`],e.headers,n.headers),Ur(r,i,[`lists`],e.lists,n.lists),Ur(r,i,[`drawings`],e.drawings,n.drawings),Ur(r,i,[`drawingsOrder`],e.drawingsOrder,n.drawingsOrder),i.reduce((e,n)=>t.JSONX.compose(e,n),null)}function Hr(e,n){if(!e||!n||t.Tools.diffValue(e,n))return null;let r=new t.TextX;return e.dataStream.length>0&&r.delete(e.dataStream.length),n.dataStream.length>0&&r.insert(n.dataStream.length,n),t.JSONX.getInstance().editOp(r.serialize(),[`body`])}function Ur(e,n,r,i,a){if(t.Tools.diffValue(i,a))return;let o=e.replaceOp(r,i,a);o!=null&&n.push(o)}let Wr={id:`doc.command-cover-content`,type:t.CommandType.COMMAND,handler:(e,n)=>{let{unitId:r,body:i,segmentId:a=``,textRanges:o}=n,s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),l=e.get(t.IUndoRedoService),u=s.getUnit(r,t.UniverInstanceType.UNIVER_DOC),d=u==null?void 0:u.getSnapshot().body;if(u==null||d==null)return!1;let f=Kr(r,a,u,d,i);return f.params.noNeedSetTextRange=!0,f.params.noHistory=!0,f.params.textRanges=o,c.syncExecuteCommand(f.id,f.params),l.clearUndoRedo(r),!0}};function Gr(e,n,r,i){let a=new t.TextX,o=t.JSONX.getInstance(),s=(r==null?void 0:r.dataStream.length)-2;s>0&&a.push({t:t.TextXActionType.DELETE,len:s}),i.dataStream.length>0&&a.push({t:t.TextXActionType.INSERT,body:i,len:i.dataStream.length});let c=(0,t.getRichTextEditPath)(n,e);return o.editOp(a.serialize(),c)}function Kr(e,t,r,i,a){let o={id:n.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:[]}},s=Gr(t,r,i,a);return o.params.actions=s,o}let qr={id:`doc.command.replace-selection`,type:t.CommandType.COMMAND,handler(e,r){var i,a,o,s,c,l,u,d,f;if(!r)return!1;let p=e.get(t.ICommandService),{unitId:m,body:h,textRanges:g,segmentId:_}=r,v=e.get(t.IUniverInstanceService).getUnit(m),y=e.get(n.DocSelectionManagerService);if(!v)return!1;let b=r.selection??y.getActiveTextRange(),x=_??((i=y.getActiveTextRange())==null?void 0:i.segmentId)??``,S=(a=v.getSelfOrHeaderFooterModel(x))==null?void 0:a.getBody();if(!b||!S)return!1;let C=y.getSelectionInfo(),w=r.selection?[r.selection]:y.getTextRanges()??[],T=r.selection?[]:y.getRectRanges()??[],E=!b.collapsed&&((o=S.blockRanges)!=null&&o.length||(s=S.columnGroups)!=null&&s.length||(c=S.customBlocks)!=null&&c.length||(l=S.tables)!=null&&l.length)||T.length>0||w.length>1||(C==null||(u=C.options)==null?void 0:u.wholeDocument)===!0?B(e,m):null,D=E?Se(w,T,v,E.getViewModel(),x,h,(C==null||(d=C.options)==null?void 0:d.wholeDocument)===!0):null,O=(D==null?void 0:D.insertOffset)??b.startOffset,k={id:n.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:g??[{startOffset:O+h.dataStream.length,endOffset:O+h.dataStream.length,collapsed:!0,style:(f=y.getActiveTextRange())==null?void 0:f.style,segmentId:x}],segmentId:x,debounce:!0,trigger:qr.id}};if(D)k.params.actions=D.actions;else{let e=new t.TextX;e.push(...t.BuildTextUtils.selection.delete([b],S,0,h)),k.params.actions=t.JSONX.getInstance().editOp(e.serialize(),(0,t.getRichTextEditPath)(v,x))}return p.syncExecuteCommand(k.id,k.params)}},Jr={id:`doc.command.replace-text-runs`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;let{unitId:a,body:o,textRanges:s,segmentId:c=``,options:l}=r,u=e.get(t.IUniverInstanceService),d=e.get(t.ICommandService),f=e.get(t.ThemeService),p=u.getUnit(a,t.UniverInstanceType.UNIVER_DOC),m=p==null||(i=p.getSelfOrHeaderFooterModel(c))==null?void 0:i.getBody();if(p==null||m==null)return!1;let h=t.BuildTextUtils.selection.replaceTextRuns({doc:p,body:o,selection:{startOffset:0,endOffset:m.dataStream.length-2,collapsed:!1},themeService:f});if(!h)return!1;let g={id:n.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:s,noHistory:!0}},_=t.JSONX.getInstance(),v=(0,t.getRichTextEditPath)(p,c);return g.params.actions=_.editOp(h.serialize(),v),g.params.textRanges=s,l&&(g.params.options=l),!!d.syncExecuteCommand(g.id,g.params)}},Yr={id:`doc.command.insert-custom-range`,type:t.CommandType.COMMAND,handler:(e,n)=>{if(!n)return!1;let r=e.get(t.ICommandService),{unitId:i,rangeId:a=(0,t.generateRandomId)(),textRanges:o,properties:s,text:c,wholeEntity:l}=n,u={unitId:i,textRanges:o,body:{dataStream:c,customRanges:[{startIndex:0,endIndex:c.length-1,rangeId:a,rangeType:t.CustomRangeType.CUSTOM,properties:s,wholeEntity:l}]}};return r.syncExecuteCommand(qr.id,u)}},Xr={id:`doc.command.list-operation`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;let o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),l=r.listType,u=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=r.docRange??o.getDocRanges()??[];if(u==null||d.length===0)return!1;let f=d[0].segmentId,p=u.getSelfOrHeaderFooterModel(f),m=(p==null||(i=p.getBody())==null?void 0:i.paragraphs)??[],h=(p==null||(a=p.getBody())==null?void 0:a.dataStream)??``;if(!m.length)return!1;let g=t.BuildTextUtils.range.getParagraphsInRanges(d,m,h),_=u.getUnitId(),v={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:d,isEditing:!1}};new t.MemoryCursor().reset();let y=t.BuildTextUtils.paragraph.bullet.switch({paragraphs:g,listType:l,document:u,segmentId:f}),b=t.JSONX.getInstance(),x=(0,t.getRichTextEditPath)(u,f);return v.params.actions=b.editOp(y.serialize(),x),!!c.syncExecuteCommand(v.id,v.params)}},Zr={id:`doc.command.change-list-type`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;let o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),{listType:l}=r,u=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=r.docRange??o.getDocRanges();if(u==null||d==null||!d.length)return!1;let{segmentId:f}=d[0],p=u.getSelfOrHeaderFooterModel(f),m=(p==null||(i=p.getBody())==null?void 0:i.paragraphs)??[],h=(p==null||(a=p.getBody())==null?void 0:a.dataStream)??``;if(!m.length)return!1;let g=t.BuildTextUtils.range.getParagraphsInRanges(d,m,h),_=u.getUnitId(),v=t.BuildTextUtils.paragraph.bullet.set({paragraphs:g,listType:l,segmentId:f,document:u});if(!v)return!1;let y=t.JSONX.getInstance(),b={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:d,isEditing:!1}},x=(0,t.getRichTextEditPath)(u,f);return b.params.actions=y.editOp(v.serialize(),x),!!c.syncExecuteCommand(b.id,b.params)}},Qr=function(e){return e[e.increase=1]=`increase`,e[e.decrease=-1]=`decrease`,e}({}),$r={id:`doc.command.change-list-nesting-level`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;if(!r)return!1;let{type:o}=r,s=e.get(n.DocSelectionManagerService),c=e.get(t.IUniverInstanceService),l=e.get(t.ICommandService),u=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=s.getActiveTextRange();if(u==null||d==null)return!1;let{segmentId:f}=d,p=s.getDocRanges()??[],m=u.getSelfOrHeaderFooterModel(f),h=(m==null||(i=m.getBody())==null?void 0:i.paragraphs)??[],g=(m==null||(a=m.getBody())==null?void 0:a.dataStream)??``;if(!h.length)return!1;let _=t.BuildTextUtils.range.getParagraphsInRange(d,h,g),v=u.getUnitId(),y=t.JSONX.getInstance(),b=t.BuildTextUtils.paragraph.bullet.changeNestLevel({paragraphs:_,type:o,segmentId:f,document:u}),x={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:p,isEditing:!1}},S=(0,t.getRichTextEditPath)(u,f);return x.params.actions=y.editOp(b.serialize(),S),!!l.syncExecuteCommand(x.id,x.params)}},ei={id:`doc.command.bullet-list`,type:t.CommandType.COMMAND,handler:(e,n)=>{let r=e.get(t.ICommandService);return n!=null&&n.value?r.syncExecuteCommand(Zr.id,{listType:n.value,docRange:n.docRange}):r.syncExecuteCommand(Xr.id,{listType:t.PresetListType.BULLET_LIST,docRange:n==null?void 0:n.docRange})}},ti={id:`doc.command.check-list`,type:t.CommandType.COMMAND,handler:(e,n)=>{let r=e.get(t.ICommandService);return n!=null&&n.value?r.syncExecuteCommand(Zr.id,{listType:n.value,docRange:n.docRange}):r.syncExecuteCommand(Xr.id,{listType:t.PresetListType.CHECK_LIST,docRange:n==null?void 0:n.docRange})}},ni={id:`doc.command.toggle-check-list`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;if(!r)return!1;let a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),{index:s,segmentId:c,textRanges:l}=r,u=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(u==null||((i=u.getSelfOrHeaderFooterModel(c))==null||(i=i.getBody())==null?void 0:i.paragraphs)==null)return!1;let d=u.getUnitId(),f={id:n.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:l??[],segmentId:c,isEditing:!1}},p=t.BuildTextUtils.paragraph.bullet.toggleChecklist({document:u,paragraphIndex:s,segmentId:c});if(!p)return!1;let m=t.JSONX.getInstance(),h=(0,t.getRichTextEditPath)(u,c);return f.params.actions=m.editOp(p.serialize(),h),!!o.syncExecuteCommand(f.id,f.params)}},ri={id:`doc.command.order-list`,type:t.CommandType.COMMAND,handler:(e,n)=>{let r=e.get(t.ICommandService);return n!=null&&n.value?r.syncExecuteCommand(Zr.id,{listType:n.value,docRange:n.docRange}):r.syncExecuteCommand(Xr.id,{listType:t.PresetListType.ORDER_LIST,docRange:n==null?void 0:n.docRange})}},ii={id:`doc.command.quick-list`,type:t.CommandType.COMMAND,handler(e,r){var i;if(!r)return!1;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),l=a.getActiveTextRange();if(c==null||l==null)return!1;let{segmentId:u,startOffset:d}=l,{listType:f,paragraph:p}=r,{paragraphStart:m,paragraphEnd:h}=p,g=new t.TextX,_=t.JSONX.getInstance(),{paragraphStyle:v={}}=p,y=(t.PRESET_LIST_TYPE[f].nestingLevel[0].paragraphProperties||{}).textStyle,b=(0,t.generateRandomId)(6),x=((i=c.getBody())==null?void 0:i.paragraphs)??[],S=x.findIndex(e=>e.startIndex===p.startIndex),C=x[S-1],w=x[S+1];C&&C.bullet&&C.bullet.listType.indexOf(f)===0?b=C.bullet.listId:w&&w.bullet&&w.bullet.listType.indexOf(f)===0&&(b=w.bullet.listId);let T={id:n.RichTextEditingMutation.id,params:{unitId:c.getUnitId(),actions:[],textRanges:[{startOffset:m,endOffset:m,collapsed:!0}],isEditing:!1}};g.push({t:t.TextXActionType.RETAIN,len:m}),g.push({t:t.TextXActionType.DELETE,len:d-m}),h>d&&g.push({t:t.TextXActionType.RETAIN,len:h-d}),g.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{startIndex:0,paragraphId:p.paragraphId,paragraphStyle:{...v,textStyle:{...v.textStyle,...y},indentFirstLine:void 0},bullet:{...p.bullet??{nestingLevel:0},listType:f,listId:b}}]}});let E=(0,t.getRichTextEditPath)(c,u);return T.params.actions=_.editOp(g.serialize(),E),!!s.syncExecuteCommand(T.id,T.params)}};function ai(e,r,i){let a=e.get(t.ICommandService),o=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!o)return!1;let s=null;try{s=e.get(n.DocContentInsertService).consumeInsertRange(o.getUnitId())}catch{s=null}let c=s?null:Te(e);if(!s&&!c)return!1;let l=c||void 0,u=(s==null?void 0:s.startOffset)??l.startIndex+1,d=l==null?void 0:l.bullet,f=t.BuildTextUtils.selection.replace({doc:o,selection:{startOffset:u,endOffset:(s==null?void 0:s.endOffset)??u,collapsed:!0},body:{dataStream:`\r`,paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set),paragraphStyle:{...(l==null?void 0:l.paragraphStyle)??{}},bullet:{listType:r,listId:(d==null?void 0:d.listType)===r?d.listId:(0,t.generateRandomId)(6),nestingLevel:(d==null?void 0:d.listType)===r?d.nestingLevel:0}}]}});if(!f)return!1;let p={id:n.RichTextEditingMutation.id,params:{unitId:o.getUnitId(),actions:[],textRanges:[{startOffset:u,endOffset:u,collapsed:!0}],isEditing:!1,trigger:i}},m=t.JSONX.getInstance(),h=(0,t.getRichTextEditPath)(o);return p.params.actions=m.editOp(f.serialize(),h),!!a.syncExecuteCommand(p.id,p.params)}let oi={id:`doc.command.insert-bullet-list-bellow`,type:t.CommandType.COMMAND,handler:e=>ai(e,t.PresetListType.BULLET_LIST,oi.id)},si={id:`doc.command.insert-order-list-bellow`,type:t.CommandType.COMMAND,handler:e=>ai(e,t.PresetListType.ORDER_LIST,si.id)},ci={id:`doc.command.insert-check-list-bellow`,type:t.CommandType.COMMAND,handler:e=>ai(e,t.PresetListType.CHECK_LIST,ci.id)},li={id:`doc.command.align-action`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;let o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),{alignType:l}=r,u=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(u==null)return!1;let d=o.getDocRanges();if(d.length===0)return!1;let f=d[0].segmentId,p=u.getSelfOrHeaderFooterModel(f),m=(p==null||(i=p.getBody())==null?void 0:i.paragraphs)??[],h=(p==null||(a=p.getBody())==null?void 0:a.dataStream)??``;if(m==null)return!1;let g=t.BuildTextUtils.range.getParagraphsInRanges(d,m,h),_=u.getUnitId(),v=g.every(e=>{var t;return((t=e.paragraphStyle)==null?void 0:t.horizontalAlign)===l}),y={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:d}},b=new t.MemoryCursor;b.reset();let x=new t.TextX,S=t.JSONX.getInstance();for(let e of g){let{startIndex:n}=e;x.push({t:t.TextXActionType.RETAIN,len:n-b.cursor});let r={...e.paragraphStyle,horizontalAlign:v?t.HorizontalAlign.UNSPECIFIED:l};x.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{...e,paragraphStyle:r,startIndex:0}]},coverType:t.UpdateDocsAttributeType.REPLACE}),b.moveCursorTo(n+1)}let C=(0,t.getRichTextEditPath)(u,f);return y.params.actions=S.editOp(x.serialize(),C),!!c.syncExecuteCommand(y.id,y.params)}},ui={id:`doc.command.align-left`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(li.id,{alignType:t.HorizontalAlign.LEFT})},di={id:`doc.command.align-center`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(li.id,{alignType:t.HorizontalAlign.CENTER})},fi={id:`doc.command.align-right`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(li.id,{alignType:t.HorizontalAlign.RIGHT})},pi={id:`doc.command.align-justify`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(li.id,{alignType:t.HorizontalAlign.JUSTIFIED})},mi=(e,n)=>{let r=e.get(t.IUniverInstanceService).getUnit(n.unitId,t.UniverInstanceType.UNIVER_DOC);return r==null||r.setZoomRatio(n.zoomRatio),{...n}},hi={id:`doc.operation.set-zoom-ratio`,type:t.CommandType.OPERATION,handler:(e,n)=>{let r=e.get(t.IUniverInstanceService).getUnit(n.unitId,t.UniverInstanceType.UNIVER_DOC);return r?(r.setZoomRatio(n.zoomRatio),!0):!1}},gi={type:t.CommandType.COMMAND,id:`doc.command.set-zoom-ratio`,handler:async(e,n)=>{let r=e.get(t.ICommandService),i=e.get(t.IUndoRedoService),a=e.get(t.IUniverInstanceService),{zoomRatio:o=1,documentId:s}=n||{},c=s?a.getUnit(s,t.UniverInstanceType.UNIVER_DOC):a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=c.getUnitId(),u={zoomRatio:o,unitId:l},d=mi(e,u);return r.syncExecuteCommand(hi.id,u)?(i.pushUndoRedo({unitID:l,undoMutations:[{id:hi.id,params:d}],redoMutations:[{id:hi.id,params:u}]}),!0):!1}},_i={id:`doc.command.set-paragraph-named-style`,type:t.CommandType.COMMAND,handler(e,r){if(!r)return!1;let i=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!i)return!1;let a=i.getUnitId(),o=e.get(n.DocSelectionManagerService),s=r.textRanges?null:(0,n.consumeContentInsertRange)(e,a);if(s)return vi(e,i,r.value,s.startOffset,s.endOffset,s.segmentId);let c=r.textRanges??o.getTextRanges({unitId:a,subUnitId:a});if(!(c!=null&&c.length))return!1;let l=c[0].segmentId,u=i.getSelfOrHeaderFooterModel(l);if(!u)return!1;let d=t.BuildTextUtils.paragraph.style.set({document:u,textRanges:c,style:{namedStyleType:r.value,headingId:!r.value||r.value===t.NamedStyleType.NORMAL_TEXT?void 0:(0,t.generateRandomId)(6),spaceAbove:void 0,spaceBelow:void 0,lineSpacing:void 0},paragraphTextRun:{}}),f={id:n.RichTextEditingMutation.id,params:{actions:[],textRanges:c,unitId:a,segmentId:l}},p=t.JSONX.getInstance(),m=(0,t.getRichTextEditPath)(i,l);return f.params.actions=p.editOp(d.serialize(),m),!!e.get(t.ICommandService).syncExecuteCommand(f.id,f.params)}};function vi(e,r,i,a,o,s=``){let c=t.BuildTextUtils.selection.replace({doc:r,selection:{startOffset:a,endOffset:o,collapsed:a===o,segmentId:s},body:{dataStream:`\r`,paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set),paragraphStyle:{namedStyleType:i,headingId:!i||i===t.NamedStyleType.NORMAL_TEXT?void 0:(0,t.generateRandomId)(6)}}]}});if(!c)return!1;let l=t.JSONX.getInstance(),u=!!e.get(t.ICommandService).syncExecuteCommand(n.RichTextEditingMutation.id,{actions:l.editOp(c.serialize(),(0,t.getRichTextEditPath)(r,s)),isEditing:!1,textRanges:[{startOffset:a,endOffset:a,collapsed:!0}],segmentId:s,unitId:r.getUnitId()});return u&&e.get(n.DocSelectionManagerService).replaceDocRanges([{startOffset:a,endOffset:a}],void 0,!1),u}let yi={id:`doc.command.quick-heading`,type:t.CommandType.COMMAND,handler(e,r){var i,a;if(!r)return!1;let{value:o}=r,s=e.get(n.DocSelectionManagerService),c=e.get(t.IUniverInstanceService),l=e.get(t.ICommandService),u=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=s.getActiveTextRange();if(u==null||d==null||!d.collapsed)return!1;let{segmentId:f,startOffset:p}=d,m=u.getSelfOrHeaderFooterModel(f),h=(m==null||(i=m.getBody())==null?void 0:i.paragraphs)??[],g=(m==null||(a=m.getBody())==null?void 0:a.dataStream)??``,_=t.BuildTextUtils.paragraph.util.getParagraphsInRange(d,h,g)[0];if(!_)return!1;let{paragraphStart:v}=_,y=new t.TextX,b=t.JSONX.getInstance(),{paragraphStyle:x={}}=_,S={id:n.RichTextEditingMutation.id,params:{unitId:u.getUnitId(),actions:[],textRanges:[{startOffset:v,endOffset:v,collapsed:!0}],isEditing:!1}};y.push({t:t.TextXActionType.RETAIN,len:v}),t.BuildTextUtils.paragraph.style.set({textRanges:[d],document:u,style:{...x,headingId:(0,t.generateRandomId)(6),namedStyleType:o},cursor:p,deleteLen:p-v,textX:y,paragraphTextRun:{}});let C=(0,t.getRichTextEditPath)(u,f);return S.params.actions=b.editOp(y.serialize(),C),!!l.syncExecuteCommand(S.id,S.params)}},bi={"#":t.NamedStyleType.HEADING_1,"##":t.NamedStyleType.HEADING_2,"###":t.NamedStyleType.HEADING_3,"####":t.NamedStyleType.HEADING_4,"#####":t.NamedStyleType.HEADING_5},xi={id:`doc.command.h1-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.HEADING_1})},Si={id:`doc.command.h2-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.HEADING_2})},Ci={id:`doc.command.h3-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.HEADING_3})},wi={id:`doc.command.h4-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.HEADING_4})},Ti={id:`doc.command.h5-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.HEADING_5})},Ei={id:`doc.command.normal-text-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.NORMAL_TEXT})},Di={id:`doc.command.title`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.TITLE})},Oi={id:`doc.command.subtitle-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(_i.id,{value:t.NamedStyleType.SUBTITLE})},ki=`data-embed-interaction-boundary-owner`,Ai=class{constructor(){O(this,`_roots`,new Map)}registerOwnedElement(e,n){n.setAttribute(ki,e),n.querySelectorAll(`*`).forEach(t=>t.setAttribute(ki,e));let r=this._roots.get(e);return r||(r=new Set,this._roots.set(e,r)),r.add(n),(0,t.toDisposable)(()=>{r==null||r.delete(n),n.removeAttribute(ki),n.querySelectorAll(`*`).forEach(e=>e.removeAttribute(ki))})}contains(e,t){var n;return t instanceof HTMLElement?e?((n=this._roots.get(e))==null?void 0:n.has(t))===!0||this._roots.get(e)!=null&&[...this._roots.get(e)].some(e=>e.contains(t)):[...this._roots.values()].some(e=>[...e].some(e=>e.contains(t))):!1}hasRecentInteraction(){return!1}hasRecentInteractionFor(){return!1}},ji=class{constructor(){O(this,`_leases`,new Set),O(this,`_elements`,new Map),O(this,`runtimeSessionChanged$`,new a.Subject)}acquireLease(e){return this._leases.add(e),this.runtimeSessionChanged$.next(),(0,t.toDisposable)(()=>{this._leases.delete(e),this.runtimeSessionChanged$.next()})}registerElement(e){e.element.setAttribute(ki,e.embedId);let n=this._elements.get(e.embedId);return n||(n=new Set,this._elements.set(e.embedId,n)),n.add(e.element),(0,t.toDisposable)(()=>{n==null||n.delete(e.element),e.element.removeAttribute(ki)})}registerRuntimeScope(e){return(0,t.toDisposable)(()=>{})}isChildUnitRuntimeEvent(e,t){return t instanceof HTMLElement&&t.closest(`[data-embed-interaction-boundary-owner]`)!=null}isChildUnitInActiveSession(e){return[...this._leases].some(t=>t.role!==`runtime`&&t.childUnitId===e)}shouldSuppressHostInteraction(e,t){return!this.isChildUnitRuntimeEvent(e,t)&&[...this._leases].some(t=>t.role===`runtime`||t.childUnitId===e?!1:t.hostUnitId===e||!t.hostUnitId&&!t.childUnitId)}},Mi=function(e){return e[e.page=0]=`page`,e[e.section=1]=`section`,e[e.column=2]=`column`,e[e.line=3]=`line`,e[e.divide=4]=`divide`,e[e.glyph=5]=`glyph`,e}({}),Ni={page:0,section:1,column:2,line:3,divide:4,glyph:5};function Pi(e,t){return(0,r.compareDocumentSkeletonNestedPagePathOrder)(e,t)??(e.page>t.page?!1:e.page<t.page?!0:e.section>t.section?!1:e.section<t.section?!0:e.column>t.column?!1:e.column<t.column?!0:e.line>t.line?!1:e.line<t.line?!0:e.divide>t.divide?!1:e.divide<t.divide?!0:e.glyph>t.glyph?!1:(e.glyph,t.glyph,!0))}function Fi(e,t){return Pi(e,t)?{start:e,end:t}:{start:t,end:e}}function Ii(e){let t=e.length;if(t===0)return;let n=e[0],r=e[t-1],i=e.length===1&&n.collapsed;return{startOffset:n.startOffset,endOffset:r.endOffset,collapsed:i}}function Li(e,t,n,r){let i=r,a=r;for(let r=0;r<e.length;r++){let o=e[r].count;r<t&&(i+=o),r<n&&(a+=o)}return{startOffset:i,endOffset:a}}function Ri(e){let{startX:t,startY:n,endX:r,endY:i}=e,a=[];return a.push({x:t,y:n}),a.push({x:r,y:n}),a.push({x:r,y:i}),a.push({x:t,y:i}),a.push({x:t,y:n}),a}var zi=class{constructor(e,t){this._documentOffsetConfig=e,this._docSkeleton=t,O(this,`_liquid`,new r.Liquid),O(this,`_horizontalClip`,null),O(this,`_currentStartState`,{page:0,section:0,column:0,line:0,divide:0,glyph:0}),O(this,`_currentEndState`,{page:0,section:0,column:0,line:0,divide:0,glyph:0})}getRangePointData(e,t){let n=[],i=[],a=[];if(e==null||t==null)return{borderBoxPointGroup:n,contentBoxPointGroup:i,cursorList:a};if(!this._isValidPosition(e,t))throw Error(`
19
+ `,` `).replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g,``),s=this._umdToHtml.convert(e),c=``,l=null;if(e.length===1&&n){s=s.replace(/(<[a-z]+)/,(e,t)=>`${t} data-copy-id="${a}"`);let t=e[0],n=kt(t);He.set(a,n),l=n}else l=At(e);l&&(l=this._applyCopyDocDataHooks(l,e),c=Dt(l),s=jt(s,c)),s=Nt(s),await this._clipboardInterfaceService.write(o,s,c?{[Tt]:c}:void 0),this._memoryClipboardData=t.Tools.deepClone(l)}addClipboardHook(e){return this._clipboardHooks.push(e),(0,t.toDisposable)(()=>{let t=this._clipboardHooks.indexOf(e);t>-1&&this._clipboardHooks.splice(t,1)})}_applyCopyDocDataHooks(e,t){return this._clipboardHooks.reduce((e,n)=>{var r;return((r=n.onCopyDocData)==null?void 0:r.call(n,e,{sourceDocuments:t}))??e},e)}_getDocumentBodyInRanges(e,n){var r,i;let a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),o=n??this._docSelectionManagerService.getDocRanges(),s=[],c=[],l=(r=this._clipboardHooks.find(e=>e.onCopyContent))==null?void 0:r.onCopyContent,u=!0;if(a==null||o.length===0)return;let d=o[0].segmentId,f=a==null||(i=a.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody(),p=a.getSnapshot();if(f!=null){for(let n of o){var m;let{startOffset:r,endOffset:i,collapsed:o,rangeType:p}=n;if(o||r==null||i==null)continue;if(p===t.DOC_RANGE_TYPE.RECT){u=!1;let e=pn(f,n);s.push(e),c.push(e.dataStream);continue}let h={startOffset:r,endOffset:i,collapsed:o},g=(m=a.getSelfOrHeaderFooterModel(d))==null?void 0:m.sliceBody(h.startOffset,h.endOffset,e);g!=null&&(s.push(g),c.push((l==null?void 0:l(h.startOffset,h.endOffset,{body:f,segmentId:d,unitId:a.getUnitId()}))??g.dataStream))}return{newSnapshotList:s.map(e=>({...p,body:e})),needCache:u,plainTextList:c,snapshot:p,ranges:o}}}async _genDocDataFromClipboardItems(e){try{let t=``,n=``,r=``,a=[];for(let o of e)for(let e of o.types)switch(e){case Tt:r=await o.getType(e).then(e=>e&&e.text());break;case i.PLAIN_TEXT_CLIPBOARD_MIME_TYPE:n=await o.getType(e).then(e=>e&&e.text());break;case i.HTML_CLIPBOARD_MIME_TYPE:t=await o.getType(e).then(e=>e&&e.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:{let t=await o.getType(e),n=new File([t],`pasted_image.${e.split(`/`)[1]}`,{type:e});a.push(n);break}}return!t&&!n&&a.length&&(t=await this._createImagePasteHtml(a)),t=await this._uploadBase64ImagesInHtml(t)??``,this._genDocDataFromHtmlAndText(t,n,void 0,r)}catch(e){return Promise.reject(e)}}_genDocDataFromHtmlAndText(e,n,r,i){let a=Ot(i)??Mt(e);if(a!=null&&a.body)return a;if(!e){if(n)return{body:t.BuildTextUtils.transform.fromPlainText(n)};throw Error(`[DocClipboardService] html and text cannot be both empty!`)}let o=Ve(e);if(o){let e=He.get(o);if(e)return e}if(!r){let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);r=(e==null?void 0:e.getUnitId())||``}let s=this._htmlToUDM.convert(e,{unitId:r});return o&&He.set(o,s),s}async _uploadBase64ImagesInHtml(e){var n;if(!e||!e.includes(`data:image/`))return e;let r=(n=this._clipboardHooks.find(e=>e.onBeforePasteImage))==null?void 0:n.onBeforePasteImage;if(!r)return e;let i=new DOMParser().parseFromString(e,`text/html`),a=Array.from(i.querySelectorAll(`img[src^="data:image/"]`));return a.length===0?e:(await Promise.all(a.map(async(e,n)=>{if(e.dataset.imageSourceType&&e.dataset.imageSourceType!==t.ImageSourceType.BASE64)return;let i=yn(e.getAttribute(`src`)||e.src,`pasted_image_${n}`),a=await r(i);a&&(e.dataset.imageSourceType=a.imageSourceType,a.imageSourceType===t.ImageSourceType.UUID?(e.dataset.source=a.source,e.setAttribute(`src`,a.source)):(e.removeAttribute(`data-source`),e.setAttribute(`src`,a.source)))})),i.documentElement.outerHTML)}async _createImagePasteHtml(e){var n;let r={id:``,documentStyle:{},body:{dataStream:``,customBlocks:[]},drawings:{}},i=async e=>{let n=new FileReader;return new Promise(r=>{n.onloadend=function(){r({source:n.result,imageSourceType:t.ImageSourceType.BASE64})},n.readAsDataURL(e)})},a=e=>{let t=new Image;return new Promise(n=>{t.src=typeof e==`string`?e:URL.createObjectURL(e),t.onload=()=>{let e=Math.min(500,t.naturalWidth);n({width:e,height:e*(t.naturalHeight/t.naturalWidth)})}})},o=((n=this._clipboardHooks.find(e=>e.onBeforePasteImage))==null?void 0:n.onBeforePasteImage)??i;return await Promise.all(e.map(async(e,n)=>{var i;let s=await o(e);if(!s)return Promise.resolve();let{width:c=100,height:l=100}=await a(e),u=`paste_image_id_${n}`,d=r.body,f=r.drawings;d.dataStream+=`\b`,(i=d.customBlocks)==null||i.push({startIndex:n,blockId:u}),f[u]={drawingId:u,unitId:``,subUnitId:``,imageSourceType:s.imageSourceType,title:``,source:s.source,description:``,layoutType:t.PositionedObjectLayoutType.INLINE,drawingType:t.DrawingTypeEnum.DRAWING_IMAGE,transform:{width:c,height:l,angle:0},docTransform:{angle:0,size:{width:c,height:l},positionH:{relativeFrom:t.ObjectRelativeFromH.CHARACTER,posOffset:0},positionV:{relativeFrom:t.ObjectRelativeFromV.LINE,posOffset:0}}}})),this._umdToHtml.convert([r])}};gn=A([k(0,t.IUniverInstanceService),k(1,t.ILogService),k(2,t.ICommandService),k(3,i.IClipboardInterfaceService),k(4,(0,t.Inject)(fn)),k(5,(0,t.Inject)(n.DocSelectionManagerService))],gn);function _n(e){let n=e[e.length-1];return n===t.DataStreamTreeTokenType.PARAGRAPH||n===t.DataStreamTreeTokenType.SECTION_BREAK||n===t.DataStreamTreeTokenType.BLOCK_END||n===t.DataStreamTreeTokenType.TABLE_END||n===t.DataStreamTreeTokenType.COLUMN_GROUP_END}function vn(e,n,r){var i;if(_n(e.dataStream)||!r.every(e=>e.collapsed&&b(n.dataStream,e.startOffset)))return;let a=e.dataStream.length,o=new Set(((i=e.paragraphs)==null?void 0:i.map(e=>e.paragraphId))??[]);e.dataStream+=t.DataStreamTreeTokenType.PARAGRAPH,e.paragraphs=[...e.paragraphs??[],{startIndex:a,paragraphId:(0,t.createParagraphId)(o)}]}function yn(e,t){let n=/^data:([^;,]+)(;base64)?,(.*)$/i.exec(e);if(!n)throw Error(`[DocClipboardService] invalid image data url.`);let[,r,i,a]=n,o=i?Uint8Array.from(atob(a),e=>e.charCodeAt(0)):new TextEncoder().encode(decodeURIComponent(a)),s=r.split(`/`)[1]||`png`;return new File([o],`${t}.${s}`,{type:r})}function bn(e){return e.getContextValue(t.FOCUSING_DOC)||e.getContextValue(t.EDITOR_ACTIVATED)}let xn={id:i.CopyCommand.id,name:`doc.command.copy`,type:t.CommandType.COMMAND,multi:!0,priority:999,preconditions:bn,handler:async e=>e.get(hn).copy()},Sn={id:`doc.command.copy-current-paragraph`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(hn),r=De(e);return r?n.copy(t.SliceBodyType.copy,[{startOffset:r.paragraphStart,endOffset:r.paragraphEnd+1,collapsed:!1}]):!1}},Cn={id:i.CutCommand.id,name:`doc.command.cut`,type:t.CommandType.COMMAND,multi:!0,priority:999,preconditions:bn,handler:async e=>e.get(hn).cut()},wn={id:`doc.command.cut-current-paragraph`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(hn),r=De(e);return r?n.cut([{startOffset:r.paragraphStart,endOffset:r.paragraphEnd+1,collapsed:!1,rangeType:t.DOC_RANGE_TYPE.TEXT}]):!1}},Tn={id:i.PasteCommand.id,name:`doc.command.paste`,type:t.CommandType.COMMAND,multi:!0,priority:999,preconditions:bn,handler:async e=>{let t=e.get(hn),n=e.get(i.IClipboardInterfaceService),r=n.supportClipboard?await n.read():[];return t.paste(r)}},En=[`paragraphs`,`sectionBreaks`,`tables`,`columnGroups`,`customBlocks`,`blockRanges`,`customRanges`,`customDecorations`,`textRuns`],Dn={id:`doc.command.move-block`,type:t.CommandType.COMMAND,handler:async(e,r)=>{if(!r)return!1;let i=e.get(t.IUniverInstanceService),a=e.get(t.ICommandService),{unitId:o,sourceRange:s,targetOffset:c}=r,l=o?i.getUnit(o,t.UniverInstanceType.UNIVER_DOC):i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!l)return!1;let u=l.getSnapshot(),d=On({documentData:u,sourceRange:s,targetOffset:c}),{nextDocumentData:f,movedRange:p}=e.get(n.DocBlockMoveValidatorService).transformMoveResult({unitId:l.getUnitId(),sourceRange:s,targetOffset:c,previousDocumentData:u,result:d}),m=kn(u,f,{sourceRange:s,targetOffset:c,movedRange:p});if(!m)return!1;let h=[{startOffset:p.startOffset,endOffset:p.endOffset,collapsed:!1}];return!!a.syncExecuteCommand(n.RichTextEditingMutation.id,{unitId:l.getUnitId(),actions:m,textRanges:h})}};function On(e){let n=t.Tools.deepClone(e.documentData),r=n.body;if(!(r!=null&&r.dataStream))return{nextDocumentData:n,movedRange:e.sourceRange};let i=r.dataStream.length,a=Un(e.sourceRange.startOffset,0,i),o=Un(e.sourceRange.endOffset,a,i),s=Un(e.targetOffset,0,i);if(a===o||s>=a&&s<=o)return{nextDocumentData:n,movedRange:{startOffset:a,endOffset:o}};let c=r.dataStream.slice(a,o),l=c.length,u=s>o?s-l:s,d=r.dataStream.slice(0,a)+r.dataStream.slice(o);return r.dataStream=d.slice(0,u)+c+d.slice(u),Rn(r,a,o,s,u,l),{nextDocumentData:n,movedRange:{startOffset:u,endOffset:u+l}}}function kn(e,n,r){t.JSONX.getInstance();let i=e.body,a=n.body;if(!i||!a)return null;let o=[],s=t.Tools.deepClone(e),c=r?An(i,a,r):null;c&&(o.push(c),s=t.JSONX.apply(s,c));let l=jn(s.body,a);return l&&(o.push(l),s=t.JSONX.apply(s,l)),c||Nn(s.body,a,o),o.reduce((e,n)=>t.JSONX.compose(e,n),null)}function An(e,n,r){let i=e.dataStream.length,a=Un(r.sourceRange.startOffset,0,i),o=Un(r.sourceRange.endOffset,a,i),s=Un(r.targetOffset,0,i),c=o-a;if(c<=0||s>=a&&s<=o)return null;let l=new t.TextX,u=r.movedRange.startOffset,d=(0,t.getBodySliceForTextXAction)(n,u,u+c,!1);return s<a?(l.retain(s),l.insert(c,d),l.retain(a-s),l.delete(c)):(l.retain(a),l.delete(c),l.retain(s-o),l.insert(c,d)),t.JSONX.getInstance().editOp(l.serialize(),[`body`])}function jn(e,n){let r=Mn(e==null?void 0:e.dataStream,n.dataStream);if(!r)return null;let i=new t.TextX;return i.retain(r.start),r.insertLength>0&&i.insert(r.insertLength,(0,t.getBodySliceForTextXAction)(n,r.start,r.start+r.insertLength,!1)),r.deleteLength>0&&i.delete(r.deleteLength),t.JSONX.getInstance().editOp(i.serialize(),[`body`])}function Mn(e,t){if(e==null||t==null||e===t)return null;let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];)n++;let r=e.length,i=t.length;for(;r>n&&i>n&&e[r-1]===t[i-1];)r--,i--;return{start:n,deleteLength:r-n,insertLength:i-n}}function Nn(e,n,r){for(let i of En)Pn(t.JSONX.getInstance(),[`body`,i],e==null?void 0:e[i],n[i],r)}function Pn(e,n,r,i,a){if(!Ln(r,i)&&!t.Tools.diffValue(r,i)){if(r==null){a.push(e.insertOp(n,i));return}if(i==null){a.push(e.removeOp(n,r));return}if(Array.isArray(r)&&Array.isArray(i)){Fn(e,n,r,i,a);return}if(In(r)&&In(i)){new Set([...Object.keys(r),...Object.keys(i)]).forEach(t=>{Pn(e,[...n,t],r[t],i[t],a)});return}a.push(e.replaceOp(n,r,i))}}function Fn(e,n,r,i,a){if(r.length===i.length){r.forEach((t,r)=>Pn(e,[...n,r],t,i[r],a));return}let o=0;for(;o<r.length&&o<i.length&&t.Tools.diffValue(r[o],i[o]);)o++;let s=r.length-1,c=i.length-1;for(;s>=o&&c>=o&&t.Tools.diffValue(r[s],i[c]);)s--,c--;for(let t=s;t>=o;t--)a.push(e.removeOp([...n,t],r[t]));for(let t=o;t<=c;t++)a.push(e.insertOp([...n,t],i[t]))}function In(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ln(e,t){return e==null&&Array.isArray(t)&&t.length===0||t==null&&Array.isArray(e)&&e.length===0}function Rn(e,t,n,r,i,a){var o,s,c,l,u,d,f,p,m;e.paragraphs=(o=e.paragraphs)==null?void 0:o.map(e=>({...e,startIndex:Vn(e.startIndex,t,n,r,i,a)})).sort((e,t)=>e.startIndex-t.startIndex),e.sectionBreaks=(s=e.sectionBreaks)==null?void 0:s.map(e=>({...e,startIndex:Vn(e.startIndex,t,n,r,i,a)})).sort((e,t)=>e.startIndex-t.startIndex),e.customBlocks=(c=e.customBlocks)==null?void 0:c.map(e=>({...e,startIndex:Vn(e.startIndex,t,n,r,i,a)})).sort((e,t)=>e.startIndex-t.startIndex),e.tables=(l=e.tables)==null?void 0:l.map(e=>zn(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.columnGroups=(u=e.columnGroups)==null?void 0:u.map(e=>zn(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.blockRanges=(d=e.blockRanges)==null?void 0:d.map(e=>Bn(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.customRanges=(f=e.customRanges)==null?void 0:f.map(e=>Bn(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.customDecorations=(p=e.customDecorations)==null?void 0:p.map(e=>Bn(e,t,n,r,i,a)).sort((e,t)=>e.startIndex-t.startIndex),e.textRuns=(m=e.textRuns)==null?void 0:m.map(e=>{let o=zn({startIndex:e.st,endIndex:e.ed},t,n,r,i,a);return{...e,st:o.startIndex,ed:o.endIndex}}).sort((e,t)=>e.st-t.st)}function zn(e,t,n,r,i,a){return e.startIndex>=t&&e.endIndex<=n?{...e,startIndex:i+e.startIndex-t,endIndex:i+e.endIndex-t}:{...e,startIndex:Vn(e.startIndex,t,n,r,i,a),endIndex:Hn(e.endIndex,t,n,r,i,a)}}function Bn(e,t,n,r,i,a){return e.startIndex>=t&&e.endIndex<n?{...e,startIndex:i+e.startIndex-t,endIndex:i+e.endIndex-t}:{...e,startIndex:Vn(e.startIndex,t,n,r,i,a),endIndex:Vn(e.endIndex,t,n,r,i,a)}}function Vn(e,t,n,r,i,a){return e>=t&&e<n?i+e-t:r<t&&e>=r&&e<t?e+a:r>n&&e>=n&&e<r?e-a:e}function Hn(e,t,n,r,i,a){return e>t&&e<=n?i+e-t:r>n&&e>=n&&e<=r?e-a:Vn(e,t,n,r,i,a)}function Un(e,t,n){return Math.min(Math.max(e,t),n)}let Wn={id:`doc.command.horizontal-line`,type:t.CommandType.COMMAND,handler:(e,n)=>e.get(t.ICommandService).syncExecuteCommand(R.id,{horizontalLine:{padding:5,color:{rgb:`#CDD0D8`},width:1,dashStyle:t.DashStyleType.SOLID},insertionMode:n==null?void 0:n.insertionMode,textRange:n==null?void 0:n.insertRange})},Gn={id:`doc.command.insert-horizontal-line-bellow`,type:t.CommandType.COMMAND,handler:e=>{let r=e.get(t.ICommandService),i=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),a=null;try{a=e.get(n.DocContentInsertService).consumeInsertRange(i==null?void 0:i.getUnitId())}catch{a=null}if(a)return r.syncExecuteCommand(Wn.id,{insertionMode:`insert-gap`,insertRange:{startOffset:a.startOffset,endOffset:a.endOffset}});let o=De(e);return o?r.syncExecuteCommand(Wn.id,{insertRange:{startOffset:o.startIndex+1,endOffset:o.startIndex+1}}):!1}},Kn={id:`doc.command.select-all`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let a=e.get(t.IUniverInstanceService),o=e.get(n.DocSelectionManagerService),s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),c=o.getDocRanges(),l=c.find(e=>e.isActive)??c[0];if(s==null)return!1;let u=(r==null?void 0:r.segmentId)??(l==null?void 0:l.segmentId);if(u==null)return!1;let d=s.getUnitId(),f=(i=s.getSelfOrHeaderFooterModel(u))==null?void 0:i.getBody();if(f==null)return!1;let{dataStream:p}=f;if(p===`\r
20
+ `)return!0;let m,h;if(r!=null&&r.wholeDocument)m=qn(f),h=!0;else{if(l==null)return!1;let e=Zn(f,l),t=e.findIndex(e=>rr(c,e));m=e[Math.min(t+1,e.length-1)],h=m===e[e.length-1]}return o.replaceDocRanges(m,{unitId:d,subUnitId:d},!1,{wholeDocument:h}),!0}};function qn(e){return Jn(e,0,e.dataStream.length-2)}function Jn(e,t,n){let r=[...e.columnGroups??[]].sort((e,t)=>e.startIndex-t.startIndex),i=[],a=t;for(let o of r)if(!(o.endIndex<t||o.startIndex>n)){a<o.startIndex&&i.push(...Yn(e,a,Math.min(n,o.startIndex-1)));for(let r of Qn(e,o)){let a=Math.max(t,r.startOffset),o=Math.min(n,r.endOffset);a<=o&&i.push(...Yn(e,a,o))}a=o.endIndex+1}return a<=n&&i.push(...Yn(e,a,n)),i}function Yn(e,t,n){let r=[],i=t;for(let a of[...e.tables??[]].sort((e,t)=>e.startIndex-t.startIndex)){let{startIndex:o,endIndex:s}=a;o<t||s>n||(i!==o&&r.push(...Xn(e,i,o-1)),r.push(er(a)),i=s)}return i<=n&&r.push(...Xn(e,i,n)),r}function Xn(e,n,r){if(n>r)return[];let i=[...e.paragraphs??[]].sort((e,t)=>e.startIndex-t.startIndex),a=[],o=n;for(let e of i)if(!(e.startIndex<o)){if(e.startIndex>r)break;a.push({startOffset:o,endOffset:e.startIndex,rangeType:t.DOC_RANGE_TYPE.TEXT}),o=e.startIndex+1}return o<=r&&a.push({startOffset:o,endOffset:r,rangeType:t.DOC_RANGE_TYPE.TEXT}),a}function Zn(e,n){let r=[],i=e=>{e!=null&&e.length&&!r.some(t=>rr(t,e))&&r.push(e)},a=n.startOffset,o=n.endOffset;if(a==null||o==null)return[qn(e)];let s=(e.tables??[]).find(e=>nr(a,o,e.startIndex,e.endIndex)),c=(e.customBlocks??[]).find(e=>e.startIndex>=a&&e.startIndex<=o),l=(e.blockRanges??[]).find(e=>nr(a,o,e.startIndex,e.endIndex));if(s)i([er(s)]);else if(c)i([{endOffset:c.startIndex,rangeType:t.DOC_RANGE_TYPE.TEXT,startOffset:c.startIndex}]);else if(l)i([{endOffset:Math.max(l.startIndex+1,l.endIndex-1),rangeType:t.DOC_RANGE_TYPE.TEXT,startOffset:l.startIndex+1}]);else{let n=$n(tr(e,a),e.tables??[],a);i(n?[{...n,rangeType:t.DOC_RANGE_TYPE.TEXT}]:null)}let u=(e.columnGroups??[]).find(e=>nr(a,o,e.startIndex,e.endIndex));if(u){let t=Qn(e,u).find(e=>nr(a,o,e.startOffset,e.endOffset));t&&i(Jn(e,t.startOffset,t.endOffset)),i(Jn(e,u.startIndex,u.endIndex))}return i(qn(e)),r}function Qn(e,n){let r=[],i;for(let a=n.startIndex;a<=n.endIndex;a++){let n=e.dataStream[a];n===t.DataStreamTreeTokenType.COLUMN_START?i=a+1:n===t.DataStreamTreeTokenType.COLUMN_END&&i!=null&&(r.push({startOffset:i,endOffset:a-1,rangeType:t.DOC_RANGE_TYPE.TEXT}),i=void 0)}return r}function $n(e,t,n){if(!e)return null;let r={...e};for(let e of t)n<e.startIndex&&r.startOffset<e.startIndex&&e.startIndex<=r.endOffset?r.endOffset=e.startIndex-1:n>=e.endIndex&&r.startOffset<=e.endIndex&&e.endIndex<r.endOffset&&(r.startOffset=e.endIndex);return r.startOffset<=r.endOffset?r:null}function er(e){return{startOffset:e.startIndex+3,endOffset:e.endIndex-5,rangeType:t.DOC_RANGE_TYPE.RECT}}function tr(e,n){let r=[...e.paragraphs??[]].sort((e,t)=>e.startIndex-t.startIndex),i=(0,t.getParagraphContentStartOffsets)(e);for(let e of r){let t=i.get(e.startIndex)??0;if(t<=n&&n<=e.startIndex)return{endOffset:e.startIndex,startOffset:t}}return null}function nr(e,t,n,r){return e>=n&&t<=r}function rr(e,n){return e.length===n.length?e.every((e,r)=>{let i=n[r],a=ar(e)===ar(i),o=a&&ar(i)===t.DOC_RANGE_TYPE.TEXT&&!e.collapsed&&e.endOffset+1===i.endOffset;return e.startOffset===i.startOffset&&(e.endOffset===i.endOffset||o)&&a}):ir(e,n)}function ir(e,n){if(n.length!==1||ar(n[0])!==t.DOC_RANGE_TYPE.TEXT)return!1;let r=n[0];if(r.startOffset==null||r.endOffset==null||e.some(e=>ar(e)!==t.DOC_RANGE_TYPE.TEXT||e.startOffset==null||e.endOffset==null))return!1;let i=Math.min(...e.map(e=>e.startOffset)),a=Math.max(...e.map(e=>e.endOffset));return i===r.startOffset&&a===r.endOffset&&e.every(e=>e.startOffset>=r.startOffset&&e.endOffset<=r.endOffset)}function ar(e){return e.rangeType??t.DOC_RANGE_TYPE.TEXT}var or=class extends t.RxDisposable{constructor(e){super(),this._context=e,O(this,`_previousActiveRange`,null),O(this,`_previousDocRanges`,[]),O(this,`_compositionRange`,null),O(this,`_previousSelectionOptions`,null),O(this,`_undoMutationParamsCache`,[]),O(this,`_redoMutationParamsCache`,[])}clearUndoRedoMutationParamsCache(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[]}getUndoRedoMutationParamsCache(){return{undoCache:this._undoMutationParamsCache,redoCache:this._redoMutationParamsCache}}setUndoRedoMutationParamsCache({undoCache:e=[],redoCache:t=[]}){this._undoMutationParamsCache=e,this._redoMutationParamsCache=t}getActiveRange(){return this._previousActiveRange}setActiveRange(e){this._previousActiveRange=e,this._compositionRange=e}getCompositionRange(){return this._compositionRange}setCompositionRange(e){this._compositionRange=e}getPreviousDocRanges(){return this._previousDocRanges}setPreviousDocRanges(e){this._previousDocRanges=e}getPreviousSelectionOptions(){return this._previousSelectionOptions}setPreviousSelectionOptions(e){this._previousSelectionOptions=e}pushUndoRedoMutationParams(e,t){this._undoMutationParamsCache.push(e),this._redoMutationParamsCache.push(t)}fetchComposedUndoRedoMutationParams(){if(this._undoMutationParamsCache.length===0||this._previousActiveRange==null||this._redoMutationParamsCache.length===0)return null;let{unitId:e}=this._undoMutationParamsCache[0],n=this._undoMutationParamsCache[0],r=this._redoMutationParamsCache.at(-1),i={unitId:e,actions:this._undoMutationParamsCache.reverse().reduce((e,n)=>t.JSONX.compose(e,n.actions),null),textRanges:[],segmentId:n.segmentId};return{redoMutationParams:{unitId:e,actions:this._redoMutationParamsCache.reduce((e,n)=>t.JSONX.compose(e,n.actions),null),textRanges:(r==null?void 0:r.textRanges)??[],segmentId:r==null?void 0:r.segmentId,options:r==null?void 0:r.options,isEditing:r==null?void 0:r.isEditing},undoMutationParams:i,previousActiveRange:this._previousActiveRange,previousDocRanges:this._previousDocRanges,previousSelectionOptions:this._previousSelectionOptions}}dispose(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[],this._previousActiveRange=null,this._previousDocRanges=[],this._compositionRange=null,this._previousSelectionOptions=null}};let sr={id:`doc.command.ime-input`,type:t.CommandType.COMMAND,handler:async(e,i)=>{var a,o,s;let{unitId:c,newText:l,oldTextLen:u,isCompositionEnd:d,isCompositionStart:f}=i,p=e.get(t.ICommandService),m=e.get(r.IRenderManagerService),h=e.get(t.IUniverInstanceService),g=e.get(I),_=(a=m.getRenderUnitById(c))==null?void 0:a.with(or),v=h.getUnit(c,t.UniverInstanceType.UNIVER_DOC);if(v==null||_==null)return!1;let y=_.getCompositionRange();if(y==null)return!1;let{style:b,segmentId:x}=y,T=(o=v.getSelfOrHeaderFooterModel(x))==null?void 0:o.getBody();if(T==null)return!1;Object.assign(y,y);let{startOffset:E,endOffset:D}=y,O=_.getPreviousDocRanges(),k=O.filter(cr),A=O.filter(e=>!cr(e)),j=((s=_.getPreviousSelectionOptions())==null?void 0:s.wholeDocument)===!0,M=f&&(j||k.length>0||A.length>1),N=M?j?0:Te(A,k):E;if(N==null)return!1;let P=l.length,F=[{startOffset:N+P,endOffset:N+P,collapsed:!0,style:b,segmentId:x}],L={id:n.RichTextEditingMutation.id,params:{unitId:c,actions:[],textRanges:F,segmentId:x,trigger:sr.id}},R=g.getDefaultStyle(),z=g.getStyleCache(),B=M?N:E+u,V=C(T.customRanges??[],B,t.SHEET_EDITOR_UNITS.includes(c)),ee=S(T,M?N:f?D:E+u,R,z,t.SHEET_EDITOR_UNITS.includes(c)),H=w(T.customDecorations??[],B),U={dataStream:l,textRuns:ee?[{...ee,st:0,ed:l.length}]:[],customRanges:V?[{...V,startIndex:0,endIndex:l.length-1}]:[],customDecorations:H.map(e=>({...e,startIndex:0,endIndex:l.length-1}))},W=new t.TextX,G=t.JSONX.getInstance();if(M){var te;let e=(te=m.getRenderUnitById(c))==null?void 0:te.with(n.DocSkeletonManagerService);if(!e)return!1;let t=we(A,k,v,e.getViewModel(),x??``,U,j);if(!t)return!1;N=t.insertOffset,L.params.actions=t.actions,L.params.textRanges=[{startOffset:N+P,endOffset:N+P,collapsed:!0,style:b,segmentId:x}]}else if(!y.collapsed&&f){let e=t.BuildTextUtils.selection.delete([y],T,0,null,!1);W.push(...e),L.params.textRanges=[{startOffset:N+P,endOffset:N+P,collapsed:!0,segmentId:x}]}else W.push({t:t.TextXActionType.RETAIN,len:E});if(!M&&u>0&&W.push({t:t.TextXActionType.DELETE,len:u}),M||W.push({t:t.TextXActionType.INSERT,body:U,len:l.length}),!M){let e=(0,t.getRichTextEditPath)(v,x);L.params.actions=G.editOp(W.serialize(),e)}L.params.noHistory=!d,L.params.isCompositionEnd=d;let ne=p.syncExecuteCommand(L.id,L.params);return _.pushUndoRedoMutationParams(ne,L.params),M&&_.setCompositionRange({...y,startOffset:N,endOffset:N,collapsed:!0}),!!ne}};function cr(e){return`tableId`in e}let lr=`transparent`;function ur(e){let{documentFlavor:n,canvasColorService:r,editorBackgroundColor:i,isEditor:a}=e,o=i??dr(n,a);if(a)return{canvasElementBackgroundColor:o,docBackgroundFillColor:lr};if(i!=null)return{canvasElementBackgroundColor:(r==null?void 0:r.getRenderColor(i))??i,docBackgroundFillColor:void 0};if(n!==t.DocumentFlavor.TRADITIONAL&&n!==t.DocumentFlavor.MODERN)return{canvasElementBackgroundColor:o,docBackgroundFillColor:void 0};let s=fr(n);return{canvasElementBackgroundColor:(r==null?void 0:r.getRenderColor(s))??o,docBackgroundFillColor:void 0}}function dr(e,n){if(n)return lr;switch(e){case t.DocumentFlavor.MODERN:return`var(--univer-gray-0)`;case t.DocumentFlavor.TRADITIONAL:return`var(--univer-gray-100)`;default:return`var(--univer-gray-100)`}}function fr(e){return e===t.DocumentFlavor.MODERN?`gray.0`:`gray.100`}let pr={id:`doc.command-replace-snapshot`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;let{unitId:a,snapshot:o,textRanges:s,segmentId:c=``,options:l}=r,u=e.get(t.IUniverInstanceService),d=e.get(t.ICommandService),f=e.get(n.DocSelectionManagerService),p=u.getUnit(a,t.UniverInstanceType.UNIVER_DOC),m=p==null||(i=p.getSelfOrHeaderFooterModel(c))==null?void 0:i.getSnapshot();if(p==null||m==null)return!1;let{body:h,tableSource:g,footers:_,headers:v,lists:y,drawings:b,drawingsOrder:x,documentStyle:S}=t.Tools.deepClone(o),{body:C,tableSource:w,footers:T,headers:E,lists:D,drawings:O,drawingsOrder:k,documentStyle:A}=m;if(h==null||C==null)return!1;if(t.Tools.diffValue(h,C)&&s)return f.replaceDocRanges(s,{unitId:a,subUnitId:a},!1),!0;let j={id:n.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:s}};return l&&(j.params.options=l),j.params.actions=mr({body:C,documentStyle:A,tableSource:w,footers:T,headers:E,lists:D,drawings:O,drawingsOrder:k},{body:h,documentStyle:S,tableSource:g,footers:_,headers:v,lists:y,drawings:b,drawingsOrder:x}),!!d.syncExecuteCommand(j.id,j.params)}};function mr(e,n){let r=t.JSONX.getInstance(),i=[],a=hr(e.body,n.body);return a&&i.push(a),gr(r,i,[`documentStyle`],e.documentStyle,n.documentStyle),gr(r,i,[`tableSource`],e.tableSource,n.tableSource),gr(r,i,[`footers`],e.footers,n.footers),gr(r,i,[`headers`],e.headers,n.headers),gr(r,i,[`lists`],e.lists,n.lists),gr(r,i,[`drawings`],e.drawings,n.drawings),gr(r,i,[`drawingsOrder`],e.drawingsOrder,n.drawingsOrder),i.reduce((e,n)=>t.JSONX.compose(e,n),null)}function hr(e,n){if(!e||!n||t.Tools.diffValue(e,n))return null;let r=new t.TextX;return e.dataStream.length>0&&r.delete(e.dataStream.length),n.dataStream.length>0&&r.insert(n.dataStream.length,n),t.JSONX.getInstance().editOp(r.serialize(),[`body`])}function gr(e,n,r,i,a){if(t.Tools.diffValue(i,a))return;let o=e.replaceOp(r,i,a);o!=null&&n.push(o)}let _r={id:`doc.command-cover-content`,type:t.CommandType.COMMAND,handler:(e,n)=>{let{unitId:r,body:i,segmentId:a=``,textRanges:o}=n,s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),l=e.get(t.IUndoRedoService),u=s.getUnit(r,t.UniverInstanceType.UNIVER_DOC),d=u==null?void 0:u.getSnapshot().body;if(u==null||d==null)return!1;let f=yr(r,a,u,d,i);return f.params.noNeedSetTextRange=!0,f.params.noHistory=!0,f.params.textRanges=o,c.syncExecuteCommand(f.id,f.params),l.clearUndoRedo(r),!0}};function vr(e,n,r,i){let a=new t.TextX,o=t.JSONX.getInstance(),s=(r==null?void 0:r.dataStream.length)-2;s>0&&a.push({t:t.TextXActionType.DELETE,len:s}),i.dataStream.length>0&&a.push({t:t.TextXActionType.INSERT,body:i,len:i.dataStream.length});let c=(0,t.getRichTextEditPath)(n,e);return o.editOp(a.serialize(),c)}function yr(e,t,r,i,a){let o={id:n.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:[]}},s=vr(t,r,i,a);return o.params.actions=s,o}let br={id:`doc.command.replace-selection`,type:t.CommandType.COMMAND,handler(e,r){var i,a,o,s,c,l,u,d,f;if(!r)return!1;let p=e.get(t.ICommandService),{unitId:m,body:h,textRanges:g,segmentId:_}=r,v=e.get(t.IUniverInstanceService).getUnit(m),y=e.get(n.DocSelectionManagerService);if(!v)return!1;let b=r.selection??y.getActiveTextRange(),x=_??((i=y.getActiveTextRange())==null?void 0:i.segmentId)??``,S=(a=v.getSelfOrHeaderFooterModel(x))==null?void 0:a.getBody();if(!b||!S)return!1;let C=y.getSelectionInfo(),w=r.selection?[r.selection]:y.getTextRanges()??[],T=r.selection?[]:y.getRectRanges()??[],E=!b.collapsed&&((o=S.blockRanges)!=null&&o.length||(s=S.columnGroups)!=null&&s.length||(c=S.customBlocks)!=null&&c.length||(l=S.tables)!=null&&l.length)||T.length>0||w.length>1||(C==null||(u=C.options)==null?void 0:u.wholeDocument)===!0?V(e,m):null,D=E?we(w,T,v,E.getViewModel(),x,h,(C==null||(d=C.options)==null?void 0:d.wholeDocument)===!0):null,O=(D==null?void 0:D.insertOffset)??b.startOffset,k={id:n.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:g??[{startOffset:O+h.dataStream.length,endOffset:O+h.dataStream.length,collapsed:!0,style:(f=y.getActiveTextRange())==null?void 0:f.style,segmentId:x}],segmentId:x,debounce:!0,trigger:br.id}};if(D)k.params.actions=D.actions;else{let e=new t.TextX;e.push(...t.BuildTextUtils.selection.delete([b],S,0,h)),k.params.actions=t.JSONX.getInstance().editOp(e.serialize(),(0,t.getRichTextEditPath)(v,x))}return p.syncExecuteCommand(k.id,k.params)}},xr={id:`doc.command.replace-text-runs`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;let{unitId:a,body:o,textRanges:s,segmentId:c=``,options:l}=r,u=e.get(t.IUniverInstanceService),d=e.get(t.ICommandService),f=e.get(t.ThemeService),p=u.getUnit(a,t.UniverInstanceType.UNIVER_DOC),m=p==null||(i=p.getSelfOrHeaderFooterModel(c))==null?void 0:i.getBody();if(p==null||m==null)return!1;let h=t.BuildTextUtils.selection.replaceTextRuns({doc:p,body:o,selection:{startOffset:0,endOffset:m.dataStream.length-2,collapsed:!1},themeService:f});if(!h)return!1;let g={id:n.RichTextEditingMutation.id,params:{unitId:a,actions:[],textRanges:s,noHistory:!0}},_=t.JSONX.getInstance(),v=(0,t.getRichTextEditPath)(p,c);return g.params.actions=_.editOp(h.serialize(),v),g.params.textRanges=s,l&&(g.params.options=l),!!d.syncExecuteCommand(g.id,g.params)}},Sr=`data-embed-interaction-boundary-owner`,Cr=class{constructor(){O(this,`_roots`,new Map)}registerOwnedElement(e,n){n.setAttribute(Sr,e),n.querySelectorAll(`*`).forEach(t=>t.setAttribute(Sr,e));let r=this._roots.get(e);return r||(r=new Set,this._roots.set(e,r)),r.add(n),(0,t.toDisposable)(()=>{r==null||r.delete(n),n.removeAttribute(Sr),n.querySelectorAll(`*`).forEach(e=>e.removeAttribute(Sr))})}contains(e,t){var n;return t instanceof HTMLElement?e?((n=this._roots.get(e))==null?void 0:n.has(t))===!0||this._roots.get(e)!=null&&[...this._roots.get(e)].some(e=>e.contains(t)):[...this._roots.values()].some(e=>[...e].some(e=>e.contains(t))):!1}hasRecentInteraction(){return!1}hasRecentInteractionFor(){return!1}},wr=class{constructor(){O(this,`_leases`,new Set),O(this,`_elements`,new Map),O(this,`runtimeSessionChanged$`,new a.Subject)}acquireLease(e){return this._leases.add(e),this.runtimeSessionChanged$.next(),(0,t.toDisposable)(()=>{this._leases.delete(e),this.runtimeSessionChanged$.next()})}registerElement(e){e.element.setAttribute(Sr,e.embedId);let n=this._elements.get(e.embedId);return n||(n=new Set,this._elements.set(e.embedId,n)),n.add(e.element),(0,t.toDisposable)(()=>{n==null||n.delete(e.element),e.element.removeAttribute(Sr)})}registerRuntimeScope(e){return(0,t.toDisposable)(()=>{})}isChildUnitRuntimeEvent(e,t){return t instanceof HTMLElement&&t.closest(`[data-embed-interaction-boundary-owner]`)!=null}isChildUnitInActiveSession(e){return[...this._leases].some(t=>t.role!==`runtime`&&t.childUnitId===e)}shouldSuppressHostInteraction(e,t){return!this.isChildUnitRuntimeEvent(e,t)&&[...this._leases].some(t=>t.role===`runtime`||t.childUnitId===e?!1:t.hostUnitId===e||!t.hostUnitId&&!t.childUnitId)}},Tr=function(e){return e[e.page=0]=`page`,e[e.section=1]=`section`,e[e.column=2]=`column`,e[e.line=3]=`line`,e[e.divide=4]=`divide`,e[e.glyph=5]=`glyph`,e}({}),Er={page:0,section:1,column:2,line:3,divide:4,glyph:5};function Dr(e,t){return(0,r.compareDocumentSkeletonNestedPagePathOrder)(e,t)??(e.page>t.page?!1:e.page<t.page?!0:e.section>t.section?!1:e.section<t.section?!0:e.column>t.column?!1:e.column<t.column?!0:e.line>t.line?!1:e.line<t.line?!0:e.divide>t.divide?!1:e.divide<t.divide?!0:e.glyph>t.glyph?!1:(e.glyph,t.glyph,!0))}function Or(e,t){return Dr(e,t)?{start:e,end:t}:{start:t,end:e}}function kr(e){let t=e.length;if(t===0)return;let n=e[0],r=e[t-1],i=e.length===1&&n.collapsed;return{startOffset:n.startOffset,endOffset:r.endOffset,collapsed:i}}function Ar(e,t,n,r){let i=r,a=r;for(let r=0;r<e.length;r++){let o=e[r].count;r<t&&(i+=o),r<n&&(a+=o)}return{startOffset:i,endOffset:a}}function jr(e){let{startX:t,startY:n,endX:r,endY:i}=e,a=[];return a.push({x:t,y:n}),a.push({x:r,y:n}),a.push({x:r,y:i}),a.push({x:t,y:i}),a.push({x:t,y:n}),a}var Mr=class{constructor(e,t){this._documentOffsetConfig=e,this._docSkeleton=t,O(this,`_liquid`,new r.Liquid),O(this,`_horizontalClip`,null),O(this,`_currentStartState`,{page:0,section:0,column:0,line:0,divide:0,glyph:0}),O(this,`_currentEndState`,{page:0,section:0,column:0,line:0,divide:0,glyph:0})}getRangePointData(e,t){let n=[],i=[],a=[];if(e==null||t==null)return{borderBoxPointGroup:n,contentBoxPointGroup:i,cursorList:a};if(!this._isValidPosition(e,t))throw Error(`
21
21
  Invalid positions in NodePositionConvertToCursor,
22
- they are not in the same segment page when in header or footer.`);let{start:o,end:s}=Fi(e,t);return this._selectionIterator(o,s,(e,t,c,l,u,d)=>{let{lineHeight:f,asc:p,paddingTop:m,paddingBottom:h,contentHeight:g,marginTop:_,marginBottom:v}=d,{glyphGroup:y,st:b}=u;if(y.length===0)return;let{x,y:S}=this._liquid,C,w,T=y[e],E=y[t],D=y[e-1],O=(T==null?void 0:T.left)||0,k=(T==null?void 0:T.width)||0,A=(E==null?void 0:E.left)||0,j=(E==null?void 0:E.width)||0,M=(T==null?void 0:T.glyphType)===r.GlyphType.LIST,{startOffset:N,endOffset:P}=Li(y,e,t,b),F=o.glyph===e&&c?o.isBack:!0,I=s.glyph===t&&l?s.isBack:!1,L=o===s,R=F?D??T:T,z=this._getCaretGlyph(R,y,e),B=y.slice(e,t+1),ee=!L&&B.length>0&&B.every(e=>this._isNonInlineDrawingGlyph(e)),V=S,H=g==null?S+f-_-v:S+m+g+h;if(e===0&&t===y.length-1)C={startX:x+O+(M?k:0),startY:V,endX:x+A+(I?0:j),endY:H},w={startX:x+O+(M?k:0),startY:S+m+p-z.bBox.ba,endX:x+A+(I?0:j),endY:S+m+p+z.bBox.bd};else{let e=F&&!M;C={startX:x+O+(e?0:k),startY:V,endX:x+A+(I?0:j),endY:H},w={startX:x+O+(e?0:k),startY:S+m+p-z.bBox.ba,endX:x+A+(I?0:j),endY:S+m+p+z.bBox.bd}}let U=Vi(C,this._horizontalClip),W=Vi(w,this._horizontalClip);U&&!ee&&n.push(Ri(U)),W&&!ee&&i.push(Ri(W)),a.push({startOffset:F?N:N+T.count,endOffset:I?P:P+E.count,collapsed:L})}),{borderBoxPointGroup:n,contentBoxPointGroup:i,cursorList:a}}_getCaretGlyph(e,t,n){return!e||!this._isNonInlineDrawingGlyph(e)?e:this._findTextLikeGlyph(t,n-1,-1)??this._findTextLikeGlyph(t,n+1,1)??{...e,bBox:Ui(e)}}_findTextLikeGlyph(e,t,n){for(let r=t;r>=0&&r<e.length;r+=n){let t=e[r];if(!this._isNonInlineDrawingGlyph(t))return t}}_isNonInlineDrawingGlyph(e){var r,i,a,o,s,c;if(!(e!=null&&e.drawingId)||e.streamType!==t.DataStreamTreeTokenType.CUSTOM_BLOCK)return!1;let l=(r=(i=this._docSkeleton).getViewModel)==null||(o=(a=r.call(i)).getDataModel)==null||(c=(s=o.call(a)).getSnapshot)==null||(c=c.call(s).drawings)==null?void 0:c[e.drawingId];return(l==null?void 0:l.layoutType)==null?!(0,n.shouldUseInlineTextSelectionForDocsCustomBlockDrawing)(l):l.layoutType!==t.PositionedObjectLayoutType.INLINE}_isValidPosition(e,t){let{segmentPage:n,pageType:i}=e,{segmentPage:a,pageType:o}=t;return i===o?i===r.DocumentSkeletonPageType.HEADER||i===r.DocumentSkeletonPageType.FOOTER?n===a:!0:!1}_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(e=0,t,n,r){r===t?this._currentStartState[e]=1:this._currentStartState[e]=0,r===n?this._currentEndState[e]=2:this._currentEndState[e]=0}_checkPreviousNodePositionState(e,t=!0){let n=e,r;for(;n>=0;){let e=Mi[n],i;if(i=t?this._currentStartState[e]:this._currentEndState[e],i===void 0)return;if(r===void 0&&(r=i),i!==r)return 0;n--}return r}_getSelectionRuler(e,t,n,r,i){let a=0,o=r,s=Mi[e],c=Mi[e+1];if(c===null||s===null)return{start_next:a,end_next:o};let l=t[s],u=n[s];this._setNodePositionState(s,l,u,i);let d=this._checkPreviousNodePositionState(e),f=this._checkPreviousNodePositionState(e,!1);return d===1&&(a=t[c]),f===2&&(o=n[c]),{start_next:a,end_next:o}}_selectionIterator(e,t,n){let i=this._docSkeleton;if(!i)return[];let{pageType:a,path:o}=e;this._liquid.reset();let s=i.getSkeletonData();if(s==null)return[];let{pages:c,skeHeaders:l,skeFooters:u}=s,{page:d,segmentPage:f}=e,{page:p,segmentPage:m}=t;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];let{pageLayoutType:h,pageMarginLeft:g,pageMarginTop:_}=this._documentOffsetConfig,v=a===r.DocumentSkeletonPageType.CELL&&c[d]==null?f:d,y=a===r.DocumentSkeletonPageType.CELL&&c[p]==null?m:p,b=a===r.DocumentSkeletonPageType.BODY||a===r.DocumentSkeletonPageType.CELL?v:f;for(let e=0;e<b;e++){let t=c[e];this._liquid.translatePage(t,h,g,_)}let x=a===r.DocumentSkeletonPageType.BODY||a===r.DocumentSkeletonPageType.CELL?y:m;for(let d=b;d<=x;d++){let f=c[d];if(f==null)continue;let{headerId:p,footerId:m,pageWidth:v}=f,y=f;if(a===r.DocumentSkeletonPageType.HEADER){var S;y=(S=l.get(p))==null?void 0:S.get(v)}else if(a===r.DocumentSkeletonPageType.FOOTER){var C;y=(C=u.get(m))==null?void 0:C.get(v)}else a===r.DocumentSkeletonPageType.CELL&&(y=o[0]===`pages`?(0,r.getPageFromPath)(s,o):Hi(s,f,o));if(y==null){this._liquid.translatePage(f,h,g,_);continue}let w=y.sections,{start_next:T,end_next:E}=this._getSelectionRuler(Ni.page,e,t,w.length-1,a===r.DocumentSkeletonPageType.BODY||a===r.DocumentSkeletonPageType.CELL?d:0);this._liquid.translateSave();let D=this._horizontalClip;switch(this._horizontalClip=null,a){case r.DocumentSkeletonPageType.HEADER:this._liquid.translatePagePadding({...y,marginLeft:f.marginLeft});break;case r.DocumentSkeletonPageType.FOOTER:{let e=f.pageHeight-y.height-y.marginBottom;this._liquid.translate(f.marginLeft,e);break}case r.DocumentSkeletonPageType.CELL:{let e=(0,r.getDocumentSkeletonNestedPageOffset)(y);if(e){this._liquid.translatePagePadding(f),this._liquid.translate(e.left,e.top),this._liquid.translatePagePadding(y);break}let t=y.parent,n=t.parent,a=n.parent,o=a?(0,r.getDocumentSkeletonNestedPageOffset)(a):void 0,{left:s}=y,{top:c,left:l}=n,{top:u}=t,d=(0,r.getTableIdAndSliceIndex)(n.tableId).tableId,p=(0,r.getDocsTableRenderViewport)(Gi(i),d),m=Bi(p),h=m?p.scrollLeft:0;if((a==null?void 0:a.type)===r.DocumentSkeletonPageType.HEADER)this._liquid.translatePagePadding({...a,marginLeft:f.marginLeft});else if((a==null?void 0:a.type)===r.DocumentSkeletonPageType.FOOTER){let e=f.pageHeight-a.height-a.marginBottom;this._liquid.translate(f.marginLeft,e)}else this._liquid.translatePagePadding(f);if(o&&(this._liquid.translate(o.left,o.top),this._liquid.translatePagePadding(a)),m){let e=this._liquid.x+l-(p.leadingInsetLeft??0);this._horizontalClip={left:e,right:e+p.viewportWidth}}this._liquid.translate(l+s-h,c+u),this._liquid.translatePagePadding(y);break}default:this._liquid.translatePagePadding(f);break}for(let r=T;r<=E;r++){let i=w[r],a=i.columns,{start_next:o,end_next:s}=this._getSelectionRuler(Ni.section,e,t,a.length-1,r);this._liquid.translateSave(),this._liquid.translateSection(i);for(let c=o;c<=s;c++){let l=a[c],u=l.lines,{start_next:f,end_next:p}=this._getSelectionRuler(Ni.column,e,t,u.length-1,c);this._liquid.translateSave(),this._liquid.translateColumn(l);for(let a=f;a<=p;a++){let m=u[a],{divides:h}=m,{start_next:g,end_next:_}=this._getSelectionRuler(Ni.line,e,t,h.length-1,a);this._liquid.translateSave(),this._liquid.translateLine(m,!0,!1);for(let u=g;u<=_;u++){let v=h[u];this._liquid.translateSave(),this._liquid.translateDivide(v);let{glyphGroup:S}=v,{start_next:C,end_next:w}=this._getSelectionRuler(Ni.divide,e,t,S.length-1,u),D=!1,O=!1;d===b&&r===T&&c===o&&a===f&&u===g&&(D=!0),d===x&&r===E&&c===s&&a===p&&u===_&&(O=!0),n&&n(C,w,D,O,v,m,l,i,y),this._liquid.translateRestore()}this._liquid.translateRestore()}this._liquid.translateRestore()}this._liquid.translateRestore()}this._liquid.translateRestore(),this._horizontalClip=D,this._liquid.translatePage(f,h,g,_)}}};function Bi(e){return e!=null&&(e.leadingInsetLeft??0)+e.contentWidth+(e.trailingInsetRight??0)>e.viewportWidth}function Vi(e,t){if(!t)return e;let n=Math.max(e.startX,t.left),r=Math.min(e.endX,t.right);return e.startX===e.endX?e.startX>=t.left&&e.startX<=t.right?e:null:r<=n?null:{...e,startX:n,endX:r}}function Hi(e,t,n){var i,a;if(n[0]===`pages`)return null;let o=[],{headerId:s,footerId:c,pageWidth:l}=t,u=s==null?null:(i=e.skeHeaders.get(s))==null?void 0:i.get(l),d=c==null?null:(a=e.skeFooters.get(c))==null?void 0:a.get(l);u!=null&&o.push(u),d!=null&&o.push(d);for(let t of o){let i=(0,r.getPageFromPath)({...e,pages:[t]},[`pages`,0,...n]);if(i!=null)return i}return null}function Ui(e){let t=Wi(e);return{...e.bBox,ba:t,bd:Math.max(2,Math.ceil(t*.25))}}function Wi(e){var t,n,r;let i=((t=e.fontStyle)==null?void 0:t.originFontSize)??((n=e.fontStyle)==null?void 0:n.fontSize)??((r=e.ts)==null?void 0:r.fs);return typeof i==`number`&&Number.isFinite(i)&&i>0?i:14}function Gi(e){var t,n,r;let i=e.getViewModel();return((t=i.getDataModel)==null||(r=(n=t.call(i)).getUnitId)==null?void 0:r.call(n))??``}function Ki(e,t){let{path:n}=e,{path:i}=t;if(n.length!==i.length||n.indexOf(`cells`)===-1)return!1;let a=n.indexOf(`skeTables`)+1,o=n.indexOf(`rows`)+1,s=n.indexOf(`cells`)+1,{tableId:c,sliceIndex:l}=(0,r.getTableIdAndSliceIndex)(n[a]),{tableId:u,sliceIndex:d}=(0,r.getTableIdAndSliceIndex)(i[a]);if(c!==u)return!1;let f=n[o],p=i[o],m=n[s],h=i[s];return f!==p||m!==h||l!==d}function qi(e,t){let{path:n}=e,{path:r}=t;if(n.indexOf(`cells`)===-1||r.indexOf(`cells`)===-1)return!1;let i=n.indexOf(`skeTables`)+1,a=n.indexOf(`rows`)+1,o=n.indexOf(`cells`)+1,s=r.indexOf(`skeTables`)+1,c=r.indexOf(`rows`)+1,l=r.indexOf(`cells`)+1;return i===0||a===0||o===0||s===0||c===0||l===0?!1:n[i]===r[s]&&n[a]===r[c]&&n[o]===r[l]}function Ji(e,t,n){var r,i;let{path:a}=t,{path:o}=n;if(a.indexOf(`cells`)===-1||o.indexOf(`cells`)===-1)return!1;let s=e.findGlyphByPosition(t),c=e.findGlyphByPosition(n),l=s==null||(r=s.parent)==null||(r=r.parent)==null||(r=r.parent)==null||(r=r.parent)==null?void 0:r.parent,u=c==null||(i=c.parent)==null||(i=i.parent)==null||(i=i.parent)==null||(i=i.parent)==null?void 0:i.parent;if(l==null||u==null)return!1;let d=l.parent,f=u.parent;return d.cells.indexOf(l)===f.cells.indexOf(u)&&d.index===f.index}function Yi(e,t){if(qi(e,t))return Pi(e,t);let{path:n}=e,{path:r}=t,i=n[n.length-5],a=r[r.length-5];if(i!==a&&typeof i==`string`&&typeof a==`string`){let e=i.split(`#-#`)[1],t=a.split(`#-#`)[1];return+e<+t}let o=n[n.length-3],s=r[r.length-3],c=n[n.length-1],l=r[r.length-1];return o<s?!0:o>s?!1:c<=l}function Xi(e){return e.sections[0].columns[0].lines.length===0}function Zi(e,t,n){let r=t,i=n,a=e[r],o=e[i];for(;r<i&&(Xi(a)||Xi(o));)Xi(a)?(r++,a=e[r]):Xi(o)&&(i--,o=e[i]);if(!Xi(a)&&!Xi(o))return[a,o]}function Qi(e,t){var n;let r=(n=e.tableSource)==null?void 0:n.tableColumns;if(r&&t>=0&&t<=r.length)return r.slice(0,t).reduce((e,t)=>{var n;return e+(((n=t.size)==null||(n=n.width)==null?void 0:n.v)??0)},0);let i=e.rows[0],a=i==null?void 0:i.cells[t];if(a)return a.left;let o=i==null?void 0:i.cells[t-1];return o?o.left+o.pageWidth:null}function $i(e){var t,n,r;let i=e.getViewModel();return((t=i.getDataModel)==null||(r=(n=t.call(i)).getUnitId)==null?void 0:r.call(n))??``}function ea(e,t,n,r){let i=ta(n)?n.scrollLeft:0,a=ta(n)?n.viewportWidth:null,o=r-((n==null?void 0:n.leadingInsetLeft)??0),s=t.startX-i,c=t.endX-i,l=a==null?s:Math.max(s,o),u=a==null?c:Math.min(c,o+a);u<=l||e.push(Ri({...t,startX:l,endX:u}))}function ta(e){return e!=null&&(e.leadingInsetLeft??0)+e.contentWidth+(e.trailingInsetRight??0)>e.viewportWidth}var na=class{constructor(e,t){this._documentOffsetConfig=e,this._docSkeleton=t,O(this,`_liquid`,new r.Liquid)}getRangePointData(e,t){let n=[],i=this._docSkeleton,a=i.getSkeletonData();if(a==null)return;let{pages:o}=a,{segmentPage:s,page:c,pageType:l}=e,u=this._getTableRectRangeInfo(e,t);if(u==null)return;let{tableId:d,startRowIndex:f,startColumnIndex:p,endRowIndex:m,endColumnIndex:h,intersectsMergedCell:g}=u;this._liquid.reset();let{pageLayoutType:_,pageMarginLeft:v,pageMarginTop:y}=this._documentOffsetConfig,b=$i(i),x=(0,r.getTableIdAndSliceIndex)(d).tableId,S=(0,r.documentSkeletonTableIterator)(o,{docsLeft:this._documentOffsetConfig.docsLeft??0,docsTop:this._documentOffsetConfig.docsTop??0,pageMarginTop:y,skeFooters:a==null?void 0:a.skeFooters,skeHeaders:a==null?void 0:a.skeHeaders,unitId:b}),C=l===r.DocumentSkeletonPageType.CELL&&o[c]==null?s:c,w=l===r.DocumentSkeletonPageType.BODY||l===r.DocumentSkeletonPageType.CELL?C:s;for(let e=0;e<w;e++){let t=o[e];this._liquid.translatePage(t,_,v,y)}for(let e=w;e<o.length;e++){let t=o[e];this._liquid.translatePagePadding(t);let{skeTables:i}=t,a=null;for(let[e,t]of i.entries())e.startsWith(d)&&(a=t);if(a==null){let i=S.find(t=>t.pageIndex===e&&(t.source===`column`||t.source===`header`||t.source===`footer`)&&t.tableId.startsWith(d));if(i){let e=i.table,a=(0,r.getDocsTableRenderViewport)(b,x),o=i.tableRect.left-e.left-(this._documentOffsetConfig.docsLeft??0),s=i.tableRect.top-(this._documentOffsetConfig.docsTop??0);if(g){let r=e.rows.filter(e=>e.index>=f&&e.index<=m),i=r[0],c=r[r.length-1],l=Qi(e,p),u=Qi(e,h+1);i&&c&&l!=null&&u!=null&&ea(n,{startX:o+e.left+l,startY:s+i.top,endX:o+e.left+u,endY:s+c.top+c.height},a,o+e.left),this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}for(let t of e.rows)if(t.index>=f&&t.index<=m){let r=Zi(t.cells,p,h);if(r==null)continue;let[i,c]=r;ea(n,{startX:o+i.left+e.left,startY:s+t.top,endX:o+c.left+c.pageWidth+e.left,endY:s+t.top+t.height},a,o+e.left)}this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}this._liquid.translateSave(),this._liquid.translate(0,a.top);let{x:s,y:c}=this._liquid,{left:l}=a,u=(0,r.getDocsTableRenderViewport)(b,x);if(g){let e=a.rows.filter(e=>e.index>=f&&e.index<=m),r=e[0],i=e[e.length-1],o=Qi(a,p),d=Qi(a,h+1);r&&i&&o!=null&&d!=null&&ea(n,{startX:s+l+o,startY:c+r.top,endX:s+l+d,endY:c+i.top+i.height},u,s+l),this._liquid.translateRestore(),this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}for(let e of a.rows)if(e.index>=f&&e.index<=m){let t=Zi(e.cells,p,h);if(t==null)continue;let[r,i]=t;ea(n,{startX:s+r.left+l,startY:c+e.top,endX:s+i.left+i.pageWidth+l,endY:c+e.top+e.height},u,s+l)}this._liquid.translateRestore(),this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y)}return{pointGroup:n,startRow:f,startColumn:p,endRow:m,endColumn:h,tableId:d}}getNodePositionGroup(e,t){let n=[],r=this._docSkeleton.findCharIndexByPosition(e),i=this._docSkeleton.findCharIndexByPosition(t);if(r==null||i==null)return;let a=r<i,o=this._getTableRectRangeInfo(e,t);if(o==null)return;let{tableId:s,startRowIndex:c,startColumnIndex:l,endRowIndex:u,endColumnIndex:d,intersectsMergedCell:f}=o;if(f)return[{anchor:e,focus:t}];let p=this._docSkeleton.getViewModel().findTableNodeById(s);if(p==null)return;let m=p.children[0].children.length;if(l===0&&d===m-1){let e=p.children[c].children[l],t=this._docSkeleton.findNodePositionByCharIndex(e.startIndex+1),r=p.children[u].children[d],i=this._docSkeleton.findNodePositionByCharIndex(r.endIndex-2);if(t==null||i==null)return;n.push({anchor:a?t:i,focus:a?i:t})}else for(let e=c;e<=u;e++){let t=p.children[e],r=t.children[l],i=t.children[d],o=this._docSkeleton.findNodePositionByCharIndex(r.startIndex+1),s=this._docSkeleton.findNodePositionByCharIndex(i.endIndex-2);if(o==null||s==null)return;n.push({anchor:a?o:s,focus:a?s:o})}return n}_getTableRectRangeInfo(e,t){var n;let i=this._docSkeleton,a=i.getSkeletonData();if(a==null)return;let{pages:o}=a,{path:s}=e,{path:c}=t;if(s.indexOf(`cells`)===-1||c.indexOf(`cells`)===-1)return;let l=aa(a,e),u=aa(a,t);if(l==null||u==null)return;let d=l.parent,f=u.parent;if(!Array.isArray(d==null?void 0:d.cells)||!Array.isArray(f==null?void 0:f.cells))return;let p=l.segmentId,m=d.index,h=d.cells.indexOf(l),g=f.index,_=f.cells.indexOf(u),v=(0,r.getTableIdAndSliceIndex)(p).tableId,y=(n=i.getViewModel().getSnapshot().tableSource)==null?void 0:n[v],b={startRowIndex:Math.min(m,g),endRowIndex:Math.max(m,g),startColumnIndex:Math.min(h,_),endColumnIndex:Math.max(h,_)};return{pages:o,tableId:p,intersectsMergedCell:ia(y,b),...ra(y,b)}}};function ra(e,t){if(!e)return t;let n=oa(t),r=!0;for(;r;)r=!1,e.tableRows.forEach((e,t)=>{e.tableCells.forEach((e,i)=>{let a=e.rowSpan??1,o=e.columnSpan??1;if(a<=0||o<=0||a===1&&o===1)return;let s={startRowIndex:t,endRowIndex:t+a-1,startColumnIndex:i,endColumnIndex:i+o-1};if(!sa(n,s))return;let c={startRowIndex:Math.min(n.startRowIndex,s.startRowIndex),endRowIndex:Math.max(n.endRowIndex,s.endRowIndex),startColumnIndex:Math.min(n.startColumnIndex,s.startColumnIndex),endColumnIndex:Math.max(n.endColumnIndex,s.endColumnIndex)};ca(n,c)||(n=c,r=!0)})});return n}function ia(e,t){if(!e)return!1;let n=oa(t);return e.tableRows.some((e,t)=>e.tableCells.some((e,r)=>{let i=e.rowSpan??1,a=e.columnSpan??1;return i<=0||a<=0||i===1&&a===1?!1:sa(n,{startRowIndex:t,endRowIndex:t+i-1,startColumnIndex:r,endColumnIndex:r+a-1})}))}function aa(e,t){var n,i;let{path:a,segmentPage:o}=t;if(a[0]===`pages`)return(0,r.getPageFromPath)(e,a);let s=e.pages[o];if(s==null)return null;let{headerId:c,footerId:l,pageWidth:u}=s,d=[c==null?null:(n=e.skeHeaders.get(c))==null?void 0:n.get(u),l==null?null:(i=e.skeFooters.get(l))==null?void 0:i.get(u)];for(let t of d){if(t==null)continue;let n=(0,r.getPageFromPath)({...e,pages:[t]},[`pages`,0,...a]);if(n!=null)return n}return null}function oa(e){return{startRowIndex:Math.min(e.startRowIndex,e.endRowIndex),endRowIndex:Math.max(e.startRowIndex,e.endRowIndex),startColumnIndex:Math.min(e.startColumnIndex,e.endColumnIndex),endColumnIndex:Math.max(e.startColumnIndex,e.endColumnIndex)}}function sa(e,t){return e.startRowIndex<=t.endRowIndex&&e.endRowIndex>=t.startRowIndex&&e.startColumnIndex<=t.endColumnIndex&&e.endColumnIndex>=t.startColumnIndex}function ca(e,t){return e.startRowIndex===t.startRowIndex&&e.endRowIndex===t.endRowIndex&&e.startColumnIndex===t.startColumnIndex&&e.endColumnIndex===t.endColumnIndex}let la=`gray.1000`;function ua(e,t,n,i){let{startOffset:a,endOffset:o,style:s=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,segmentId:c=``,segmentPage:l}=t;return new pa(e,i,n,n.findNodePositionByCharIndex(a,!0,c,l),a===o?null:n.findNodePositionByCharIndex(o,!0,c,l),s,c,l)}function da(e){let t=e[0],n=t[0],r=t[2],{x:i,y:a}=n,{x:o,y:s}=r;return{left:i,top:a,width:o-i,height:s-a}}function fa(e){return e.map(e=>{let t=1/0,n=-1/0,r=1/0,i=-1/0;return e.forEach(e=>{t=Math.min(e.x,t),n=Math.max(e.x,n),i=Math.max(e.y,i),r=Math.min(e.y,r)}),{left:t,right:n,top:r,bottom:i}})}var pa=class{constructor(e,n,i,a,o,s=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c=``,l=-1){this._scene=e,this._document=n,this._docSkeleton=i,this.anchorNodePosition=a,this.focusNodePosition=o,this.style=s,this._segmentId=c,this._segmentPage=l,O(this,`rangeType`,t.DOC_RANGE_TYPE.TEXT),O(this,`_current`,!1),O(this,`_rangeShape`,void 0),O(this,`_anchorShape`,void 0),O(this,`_cursorList`,[]),O(this,`_anchorBlinkTimer`,null),O(this,`_anchorActiveStroke`,la),this._anchorBlink(),this.refresh()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},500),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},500))},1e3)}get startOffset(){var e;let{startOffset:t}=Ii(this._cursorList)??{},n=(e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId))==null?void 0:e.getBody();if(t==null||n==null)return t;let r=n.dataStream.length-2;return Math.min(r,t)}get endOffset(){var e;let{endOffset:t}=Ii(this._cursorList)??{},n=(e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId))==null?void 0:e.getBody();if(t==null||n==null)return t;let r=n.dataStream.length-2;return Math.min(t,r)}get collapsed(){let{startOffset:e,endOffset:t}=this;return e!=null&&e===t}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;let{start:e}=Fi(this.anchorNodePosition,this.focusNodePosition);return e}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;let{end:e}=Fi(this.anchorNodePosition,this.focusNodePosition);return e}get direction(){let{collapsed:e,anchorNodePosition:n,focusNodePosition:r}=this;return e||n==null||r==null?t.RANGE_DIRECTION.NONE:Pi(n,r)?t.RANGE_DIRECTION.FORWARD:t.RANGE_DIRECTION.BACKWARD}get segmentId(){return this._segmentId}get segmentPage(){return this._segmentPage}getAbsolutePosition(){let e=this.anchorNodePosition,t=this.focusNodePosition;if(this._isEmpty())return;let n=this._document.getOffsetConfig(),{docsLeft:r,docsTop:i}=n,a=new zi(n,this._docSkeleton);if(this._isCollapsed()){let{contentBoxPointGroup:t,cursorList:n}=a.getRangePointData(e,e);if(this._setCursorList(n),t.length===0)return;let o=da(t);return{...o,left:o.left+r,top:o.top+i}}let{borderBoxPointGroup:o,cursorList:s}=a.getRangePointData(e,t);if(this._setCursorList(s),o.length===0)return;let c=da(o);return{...c,left:c.left+r,top:c.top+i}}getAnchor(){return this._anchorShape}activeStatic(){var e;(e=this._anchorShape)==null||e.setProps({stroke:this._anchorActiveStroke})}deactivateStatic(){var e,n;(e=this._anchorShape)==null||e.setProps({stroke:((n=this.style)==null?void 0:n.stroke)||(0,r.getColor)(t.COLORS.black,0)})}isActive(){return this._current===!0}activate(){if(this._current=!0,this._isCollapsed()){var e;(e=this._anchorShape)==null||e.show(),this.activeStatic()}}deactivate(){if(this._current=!1,this._isCollapsed()){var e;(e=this._anchorShape)==null||e.hide()}}dispose(){var e,t;(e=this._rangeShape)==null||e.dispose(),this._rangeShape=null,(t=this._anchorShape)==null||t.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&=(clearInterval(this._anchorBlinkTimer),null)}isIntersection(e){let{startOffset:t,endOffset:n}=this,{startOffset:r,endOffset:i}=e;return t==null||n==null||r==null||i==null?!1:t<=i&&n>=r}refresh(){var e,t;let{_document:n,_docSkeleton:r}=this,i=this.anchorNodePosition,a=this.focusNodePosition;if((e=this._anchorShape)==null||e.hide(),(t=this._rangeShape)==null||t.hide(),this._isEmpty())return;let o=n.getOffsetConfig(),{docsLeft:s,docsTop:c}=o,l=new zi(o,r);if(this._isCollapsed()){let{contentBoxPointGroup:e,cursorList:t}=l.getRangePointData(i,i);if(this._setCursorList(t),e.length>0){let t=r.findGlyphByPosition(i);this._createOrUpdateAnchor(e,s,c,t)}return}let{borderBoxPointGroup:u,cursorList:d}=l.getRangePointData(i,a);this._setCursorList(d),u.length>0&&this._createOrUpdateRange(u,s,c)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){let e=this.anchorNodePosition,t=this.focusNodePosition;if(e!=null&&t==null)return!0;if(e==null||t==null)return!1;let n=Object.keys(Ni);for(let r of n)if(e[r]!==t[r])return!1;return e.isBack===t.isBack}_createOrUpdateRange(e,n,i){var a;if(this._rangeShape){this._rangeShape.translate(n,i),this._rangeShape.updatePointGroup(e),this._rangeShape.show();return}let o=new r.RegularPolygon(`__TestSelectionRange__`+(0,t.generateRandomId)(6),{pointsGroup:e,fill:((a=this.style)==null?void 0:a.fill)||(0,r.getColor)(t.COLORS.black,.3),left:n,top:i,evented:!1,debounceParentDirty:!1});this._rangeShape=o,this._scene.addObject(o,3)}_createOrUpdateAnchor(e,n,i,a){var o,s;let c=da(e),{left:l}=c,{top:u,height:d}=c;d<14&&(u-=14-d,d=14);let f=l+n,p=u+i,m=(a==null||(o=a.ts)==null?void 0:o.it)===t.BooleanNumber.TRUE;if(this._anchorActiveStroke=this._getAnchorActiveStroke(a),m&&(f+=d*Math.tan(12*Math.PI/180)/2),this._anchorShape){this._anchorShape.transformByState({left:f,top:p,height:d}),this._anchorShape.show(),m?this._anchorShape.skew(-12,0):this._anchorShape.skew(0,0),this.activeStatic();return}let h=new r.Rect(`__TestSelectionAnchor__`+(0,t.generateRandomId)(6),{left:f,top:p,height:d,strokeWidth:((s=this.style)==null?void 0:s.strokeWidth)||1,stroke:this._anchorActiveStroke,evented:!1});m&&h.skew(-12,0),this._anchorShape=h,this._scene.addObject(h,3),this.activeStatic()}_getAnchorActiveStroke(e){var n,i,a;if((n=this.style)!=null&&n.strokeActive&&this.style.strokeActive!==r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE.strokeActive)return this.style.strokeActive;let o=(i=(a=this._scene).getEngine)==null||(i=i.call(a))==null?void 0:i.canvasColorService;if(!o)return la;try{let n=new t.ColorKit(o.getRenderColor(this._getAnchorBackgroundColor(e)));return n.isValid&&t.ColorKit.getContrastRatio(o.getRenderColor(`gray.0`),n)>t.ColorKit.getContrastRatio(o.getRenderColor(la),n)?`gray.0`:la}catch{return la}}_getAnchorBackgroundColor(e){var n,i,a;let o=e==null||(n=e.parent)==null?void 0:n.parent,s=o==null||(i=o.parent)==null||(i=i.parent)==null?void 0:i.parent,c;if((s==null?void 0:s.type)===r.DocumentSkeletonPageType.CELL&&s.parent&&`rowSource`in s.parent){var l;let e=s.parent,t=e.cells.indexOf(s);c=(l=e.rowSource.tableCells[t])==null?void 0:l.backgroundColor}let u=(e==null||(a=e.ts)==null?void 0:a.bg)??(o==null?void 0:o.backgroundColor)??c;return(u==null?void 0:u.rgb)??(0,t.getColorStyle)(u)??`gray.0`}_setCursorList(e){e.length!==0&&(this._cursorList=e)}};function ma(e,t,n,i,a,o=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,s=``,c=-1){let l=new na(t.getOffsetConfig(),n).getNodePositionGroup(i,a),u=[];try{for(let r of l??[])u.push(new ha(e,t,n,r.anchor,r.focus,o,s,c));return u}catch(e){throw u.forEach(e=>e.dispose()),e}}var ha=class{constructor(e,n,i,a,o,s=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c=``,l=-1){this._scene=e,this._document=n,this._docSkeleton=i,this.anchorNodePosition=a,this.focusNodePosition=o,this.style=s,this._segmentId=c,this._segmentPage=l,O(this,`rangeType`,t.DOC_RANGE_TYPE.RECT),O(this,`_rangeShape`,void 0),O(this,`_current`,!1),O(this,`_startRow`,void 0),O(this,`_startCol`,void 0),O(this,`_endRow`,void 0),O(this,`_endCol`,void 0),O(this,`_tableId`,void 0),this.refresh()}get startOffset(){let{startNodePosition:e}=this;return this._docSkeleton.findCharIndexByPosition(e)}get endOffset(){let{endNodePosition:e}=this;return this._docSkeleton.findCharIndexByPosition(e)}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 e;let t=(e=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:e[this._tableId],{_startCol:n,_endCol:r}=this;if(t==null)throw Error(`Table is not found.`);let{tableColumns:i}=t;return n===0&&r===i.length-1}get spanEntireColumn(){var e;let t=(e=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:e[this._tableId],{_startRow:n,_endRow:r}=this;if(t==null)throw Error(`Table is not found.`);let{tableRows:i}=t;return n===0&&r===i.length-1}get spanEntireTable(){return this.spanEntireRow&&this.spanEntireColumn}get startNodePosition(){let{anchorNodePosition:e,focusNodePosition:t}=this;return Yi(e,t)?e:t}get endNodePosition(){let{anchorNodePosition:e,focusNodePosition:t}=this;return Yi(e,t)?t:e}get direction(){let{anchorNodePosition:e,focusNodePosition:n}=this;return Yi(e,n)?t.RANGE_DIRECTION.FORWARD:t.RANGE_DIRECTION.BACKWARD}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var e;(e=this._rangeShape)==null||e.dispose(),this._rangeShape=null}isIntersection(e){let{startRow:n,startColumn:r,endRow:i,endColumn:a}=this,{startRow:o,startColumn:s,endRow:c,endColumn:l}=e,u={left:r,top:n,right:a,bottom:i},d={left:s,top:o,right:l,bottom:c};return t.Rectangle.hasIntersectionBetweenTwoRect(u,d)}refresh(){var e;(e=this._rangeShape)==null||e.hide();let{startNodePosition:t,endNodePosition:n,_document:r,_docSkeleton:i}=this,a=r.getOffsetConfig(),{docsLeft:o,docsTop:s}=a,c=new na(a,i).getRangePointData(t,n);if(c==null)return;let{pointGroup:l=[],startRow:u,endRow:d,startColumn:f,endColumn:p,tableId:m}=c;(l==null?void 0:l.length)>0&&this._createOrUpdateRange(l,o,s),this._updateTableInfo(u,d,f,p,m)}_updateTableInfo(e,t,n,r,i){this._startRow=e,this._endRow=t,this._startCol=n,this._endCol=r,this._tableId=i}_createOrUpdateRange(e,n,i){var a;if(this._rangeShape){this._rangeShape.translate(n,i),this._rangeShape.updatePointGroup(e),this._rangeShape.show();return}let o=new r.RegularPolygon(`__DocTableRectRange__`+(0,t.generateRandomId)(6),{pointsGroup:e,fill:((a=this.style)==null?void 0:a.fill)||(0,r.getColor)(t.COLORS.black,.3),left:n,top:i,evented:!1,debounceParentDirty:!1});this._rangeShape=o,this._scene.addObject(o,3)}};function ga({textRanges:e,rectRanges:t}){e.forEach(e=>e.dispose()),t.forEach(e=>e.dispose())}function _a(e,t){if(e==null||t==null||e.pageType!==t.pageType||(e.pageType===r.DocumentSkeletonPageType.HEADER||e.pageType===r.DocumentSkeletonPageType.FOOTER)&&e.segmentPage!==t.segmentPage)return!1;let n=(0,r.getDocumentSkeletonColumnPagePathInfo)(e),i=(0,r.getDocumentSkeletonColumnPagePathInfo)(t);return n==null||i==null?n==null&&i==null:n.pageIndex===i.pageIndex&&n.columnGroupId===i.columnGroupId&&n.columnIndex===i.columnIndex}function va(e){return e.nodeType===t.DataStreamTreeNodeType.TABLE?[e]:e.children.flatMap(va)}function ya(e,t){var n,i;let a=(0,r.getDocumentSkeletonColumnPagePathInfo)(e),o=(0,r.getDocumentSkeletonColumnPagePathInfo)(t),s=((n=e.path)==null?void 0:n.indexOf(`page`))??-1,c=((i=t.path)==null?void 0:i.indexOf(`page`))??-1;return s>=0&&c>=0&&s===e.path.length-1&&c===t.path.length-1&&!!a&&!!o&&a.pageIndex===o.pageIndex&&a.columnGroupId===o.columnGroupId&&a.columnIndex===o.columnIndex}function ba(e,t,n){let i=(0,r.getDocumentSkeletonColumnPagePathInfo)(e),a=(0,r.getDocumentSkeletonColumnPagePathInfo)(t);if(!i||!a||i.pageIndex!==a.pageIndex||i.columnGroupId!==a.columnGroupId||i.columnIndex+1!==a.columnIndex)return;let o=n.findCharIndexByPosition(e),s=n.findCharIndexByPosition(t);if(!(o==null||s==null||o<=s))return e}function xa(e,t,n,r,i,a,o,s,c=!0,l=!0){let u=i.findNodePositionByCharIndex(e,c,o,s),d=i.findNodePositionByCharIndex(t,l,o,s);if(u!=null&&d!=null)return new pa(n,r,i,u,d,a,o,s)}function Sa(e,t,n,r,i,a,o,s){let c=i.findNodePositionByCharIndex(e,!0,o,s),l=i.findNodePositionByCharIndex(t,!0,o,s);if(c!=null&&l!=null)return new ha(n,r,i,c,l,a,o,s)}function Ca(e,t,n,r,i,a,o,s){let c=i.findNodePositionByCharIndex(e,!0,o,s),l=i.findNodePositionByCharIndex(t,!0,o,s);if(c!=null&&l!=null)return wa(c,l,n,r,i,a,o,s)}function wa(e,n,r,i,a,o,s,c){let l=[],u=[],d=[r,i,a,e,n,o,s,c],f=ba(e,n,a);if(f)return l.push(new pa(r,i,a,f,f,o,s,c)),{textRanges:l,rectRanges:u};if(Ji(a,e,n)){if(qi(e,n))return l.push(new pa(...d)),{textRanges:l,rectRanges:u};{let e=ma(...d);return u.push(...e),{textRanges:l,rectRanges:u}}}if(Ki(e,n)){let e=ma(...d);return u.push(...e),{textRanges:l,rectRanges:u}}if(ya(e,n))return l.push(new pa(...d)),{textRanges:l,rectRanges:u};let p=a.getViewModel().getSelfOrHeaderFooterViewModel(s),m=a.findCharIndexByPosition(e),h=a.findCharIndexByPosition(n);if(m==null||h==null)return;let g=m<=h?t.RANGE_DIRECTION.FORWARD:t.RANGE_DIRECTION.BACKWARD,_=Math.min(m,h),v=Math.max(m,h),y=Fi(e,n),b=(e,t=!0)=>a.findNodePositionByCharIndex(e,t,s,c)??(e===_?y.start:void 0),x=(e,t=!0)=>a.findNodePositionByCharIndex(e,t,s,c)??(e===v?y.end:void 0),S=(e,n,u=!0)=>{if(e>n)return!0;let d=b(e,!0),f=x(n,u),p=g===t.RANGE_DIRECTION.FORWARD?d:f,m=g===t.RANGE_DIRECTION.FORWARD?f:d;return _a(p,m)?(l.push(new pa(r,i,a,p,m,o,s,c)),!0):!1},C=(e,n,l)=>{let{startIndex:d,endIndex:f,children:p}=e,m=p.find(e=>e.startIndex<=n&&e.endIndex>=n),h=p.find(e=>e.startIndex<=l&&e.endIndex>=l),_=n>d&&n<f?(m==null?void 0:m.startIndex)==null?void 0:m.startIndex+2:d+3,v=l>d&&l<f?(h==null?void 0:h.endIndex)==null?void 0:h.endIndex-3:f-4;if(_==null||v==null)return!1;let y=a.findNodePositionByCharIndex(_,!0,s,c),b=a.findNodePositionByCharIndex(v,!0,s,c);if(y==null||b==null)return!1;let x=g===t.RANGE_DIRECTION.FORWARD?y:b,S=g===t.RANGE_DIRECTION.FORWARD?b:y;return u.push(...ma(r,i,a,x,S,o,s,c)),!0},w=(e,t,n)=>{let r=t,i=va(e).sort((e,t)=>e.startIndex-t.startIndex);for(let e of i)if(!(e.endIndex<t||e.startIndex>n)){if(!S(r,Math.min(n,e.startIndex-1),!1)||!C(e,Math.max(t,e.startIndex),Math.min(n,e.endIndex)))return!1;r=e.endIndex+1}return S(r,n)},T=_,E=v;try{for(let e of p.getChildren())for(let n of e.children){let{startIndex:d,endIndex:f,children:p}=n;if(n.nodeType===t.DataStreamTreeNodeType.COLUMN_GROUP&&T<=f&&E>=d){if(T<d&&!S(T,Math.min(E,d-1),!1)){ga({textRanges:l,rectRanges:u});return}for(let e of p.filter(e=>e.nodeType===t.DataStreamTreeNodeType.COLUMN)){let t=Math.max(T,e.startIndex+1),n=Math.min(E,e.endIndex-1);if(t<=n&&!w(e,t,n)){ga({textRanges:l,rectRanges:u});return}}T=f+1;continue}let m=e.children.indexOf(n),h=e.children[m+1],y=p.find(e=>e.nodeType===t.DataStreamTreeNodeType.TABLE),C=h==null?void 0:h.children.find(e=>e.nodeType===t.DataStreamTreeNodeType.TABLE),D=!1;if(y){let{startIndex:e,endIndex:n,children:d}=y,f=null,p=null;if(_>e&&_<n){let e=d.find(e=>e.startIndex<=_&&e.endIndex>=_);if(e==null){ga({textRanges:l,rectRanges:u});return}f=a.findNodePositionByCharIndex(e.startIndex+2,!0,s,c),p=a.findNodePositionByCharIndex(n-4,!0,s,c),T=n+1}else if(v>e&&v<n){let t=d.find(e=>e.startIndex<=v&&e.endIndex>=v);if(t==null){ga({textRanges:l,rectRanges:u});return}f=a.findNodePositionByCharIndex(e+3,!0,s,c),p=a.findNodePositionByCharIndex(t.endIndex-3,!0,s,c),E=e-1,D=!0}else if(e>_&&n<v){if(f=a.findNodePositionByCharIndex(e+3,!0,s,c),p=a.findNodePositionByCharIndex(n-4,!0,s,c),T<=e-1){let n=b(T,!0),d=x(e-1,!1),f=g===t.RANGE_DIRECTION.FORWARD?n:d,p=g===t.RANGE_DIRECTION.FORWARD?d:n;if(!_a(f,p)){ga({textRanges:l,rectRanges:u});return}l.push(new pa(r,i,a,f,p,o,s,c))}T=n+1}if(f&&p){let e=g===t.RANGE_DIRECTION.FORWARD?f:p,n=g===t.RANGE_DIRECTION.FORWARD?p:f;u.push(...ma(r,i,a,e,n,o,s,c))}}if(E===f+1&&!D&&C&&(E=f,D=!0),E>=d&&E<=f||D){let e=b(T,!0),n=x(E,!D),d=g===t.RANGE_DIRECTION.FORWARD?e:n,f=g===t.RANGE_DIRECTION.FORWARD?n:e;if(u.length&&t.Tools.diffValue(d,f))continue;if(!_a(d,f)){ga({textRanges:l,rectRanges:u});return}l.push(new pa(r,i,a,d,f,o,s,c))}}return{textRanges:l,rectRanges:u}}catch(e){throw ga({textRanges:l,rectRanges:u}),e}}function Ta(e){let t=e==null?void 0:e.getCanvasElement();if(!t)return{left:0,top:0};let{top:n,left:i}=(0,r.getOffsetRectForDom)(t);return{left:i,top:n}}function Ea(e){var t;let n=(t=e.parent)==null?void 0:t.parent,r=n==null?void 0:n.parent;if(n==null||r==null)return;let{paragraphIndex:i}=n,a=r.lines.filter(e=>e.paragraphIndex===i),o=-1,s=``,c=!1;for(let t of a)for(let n of t.divides)for(let t of n.glyphGroup)c||(o+=t.count),t===e&&(c=!0),s+=t.count>0?t.content:``;return{st:a[0].st,ed:i,content:s,nodeIndex:o}}function Da(e){let{startOffset:t,endOffset:n,collapsed:r,rangeType:i,startNodePosition:a,endNodePosition:o,direction:s,segmentId:c,segmentPage:l,style:u}=e;return{startOffset:t,endOffset:n,collapsed:r,rangeType:i,startNodePosition:a,endNodePosition:o,direction:s,segmentId:c,segmentPage:l,style:u,isActive:e.isActive()}}function Oa(e){let t=Da(e),{startRow:n,startColumn:r,endRow:i,endColumn:a,tableId:o,spanEntireRow:s,spanEntireColumn:c,spanEntireTable:l}=e;return{...t,startRow:n,startColumn:r,endRow:i,endColumn:a,tableId:o,spanEntireRow:s,spanEntireColumn:c,spanEntireTable:l}}function ka(e){let t=new Intl.Segmenter(void 0,{granularity:`word`});return Array.from(t.segment(e)).filter(e=>e.isWordLike).map(e=>({start:e.index,end:e.index+e.segment.length}))}function Aa(e,t,n){if(t<0)return null;let r=ka(e).find(e=>e.start<=t&&t<e.end);return r==null?null:{startOffset:n+r.start,endOffset:n+r.end}}function ja(e,n,r,i){if(n<0)return null;let a=ka(e);if(i===t.Direction.LEFT){for(let e=a.length-1;e>=0;e--){let t=a[e];if(t.start<n)return r+t.start}return r}if(i===t.Direction.RIGHT){let t=a.find(e=>e.end>n);return r+((t==null?void 0:t.end)??e.length)}return null}let Y=class extends t.RxDisposable{get isOnPointerEvent(){return this._onPointerEvent}get isFocusing(){return this._input===this._getOwnerDocument().activeElement}get canFocusing(){let e=this._getOwnerDocument(),t=e.activeElement;return!this._shouldPreserveExternalFocus()&&(this.isFocusing||t===e.body||t===null||t instanceof HTMLElement&&this._containsCurrentEmbedRuntimeElement(t))}cancelPointerSelection(){this._onPointerEvent&&(this._scenePointerMoveSubs.forEach(e=>e.unsubscribe()),this._scenePointerUpSubs.forEach(e=>e.unsubscribe()),this._scenePointerMoveSubs=[],this._scenePointerUpSubs=[],this._onPointerEvent=!1,this._anchorNodePosition=null,this._focusNodePosition=null,this._removeAllRanges(),this._removeAllCacheRanges(),this._disposeScrollTimers(),this._context.scene.enableObjectsEvent())}constructor(e,t,n,o,s,c,l){super(),this._context=e,this._layoutService=t,this._logService=n,this._univerInstanceService=o,this._docSkeletonManagerService=s,this._embedInteractionBoundaryService=c,this._embedRuntimeFocusCoordinator=l,O(this,`_onInputBefore$`,new a.Subject),O(this,`onInputBefore$`,this._onInputBefore$.asObservable()),O(this,`_onKeydown$`,new a.Subject),O(this,`onKeydown$`,this._onKeydown$.asObservable()),O(this,`_onInput$`,new a.Subject),O(this,`onInput$`,this._onInput$.asObservable()),O(this,`_onCompositionstart$`,new a.BehaviorSubject(null)),O(this,`onCompositionstart$`,this._onCompositionstart$.asObservable()),O(this,`_onCompositionupdate$`,new a.BehaviorSubject(null)),O(this,`onCompositionupdate$`,this._onCompositionupdate$.asObservable()),O(this,`_onCompositionend$`,new a.BehaviorSubject(null)),O(this,`onCompositionend$`,this._onCompositionend$.asObservable()),O(this,`_onSelectionStart$`,new a.BehaviorSubject(null)),O(this,`onSelectionStart$`,this._onSelectionStart$.asObservable()),O(this,`onChangeByEvent$`,(0,a.merge)(this._onInput$,this._onKeydown$.pipe((0,a.filter)(e=>e.event.keyCode===i.KeyCode.BACKSPACE)),this._onCompositionend$)),O(this,`_onPaste$`,new a.Subject),O(this,`onPaste$`,this._onPaste$.asObservable()),O(this,`_textSelectionInner$`,new a.BehaviorSubject(null)),O(this,`textSelectionInner$`,this._textSelectionInner$.asObservable()),O(this,`_onFocus$`,new a.Subject),O(this,`onFocus$`,this._onFocus$.asObservable()),O(this,`_onBlur$`,new a.Subject),O(this,`onBlur$`,this._onBlur$.asObservable()),O(this,`_onPointerDown$`,new a.Subject),O(this,`onPointerDown$`,this._onPointerDown$.asObservable()),O(this,`_container`,void 0),O(this,`_inputParent`,void 0),O(this,`_input`,void 0),O(this,`_scrollTimers`,[]),O(this,`_rangeList`,[]),O(this,`_rangeListCache`,[]),O(this,`_rectRangeList`,[]),O(this,`_rectRangeListCache`,[]),O(this,`_anchorNodePosition`,null),O(this,`_focusNodePosition`,null),O(this,`_currentSegmentId`,``),O(this,`_currentSegmentPage`,-1),O(this,`_segmentContext$`,new a.BehaviorSubject({segmentId:``,segmentPage:-1})),O(this,`segmentContext$`,this._segmentContext$.asObservable()),O(this,`_selectionStyle`,r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE),O(this,`_onPointerEvent`,!1),O(this,`_viewPortObserverMap`,new Map),O(this,`_isIMEInputApply`,!1),O(this,`_scenePointerMoveSubs`,[]),O(this,`_scenePointerUpSubs`,[]),O(this,`_reserveRanges`,!1),this._initDOM(),this._registerContainer(),this._setSystemHighlightColorToStyle(),this._listenCurrentUnitChange()}_listenCurrentUnitChange(){this._univerInstanceService.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{e!=null&&e.getUnitId()!==this._context.unitId&&!this._reserveRanges&&this.removeAllRanges()})}get activeViewPort(){return this._context.scene.getViewports()[0]}setSegment(e){this._currentSegmentId!==e&&(this._currentSegmentId=e,this._segmentContext$.next({segmentId:e,segmentPage:this._currentSegmentPage}))}getSegment(){return this._currentSegmentId}setSegmentPage(e){this._currentSegmentPage!==e&&(this._currentSegmentPage=e,this._segmentContext$.next({segmentId:this._currentSegmentId,segmentPage:e}))}getSegmentPage(){return this._currentSegmentPage}setReserveRangesStatus(e){this._reserveRanges=e}_setRangeStyle(e=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE){this._selectionStyle=e}addDocRanges(e,n=!0,r){let{_currentSegmentId:i,_currentSegmentPage:a,_selectionStyle:o}=this,{scene:s,mainComponent:c}=this._context,l=c,u=this._docSkeletonManagerService.getSkeleton(),d=(e,t,n)=>{let r=Ca(e,t,s,l,u,n,i,a);if(r==null)return;let{textRanges:o,rectRanges:c}=r;for(let e of o)this._addTextRange(e);this._addRectRanges(c)};for(let n of e){let{startOffset:e,endOffset:r,rangeType:c,startNodePosition:f,endNodePosition:p}=n,m=n.style??o;if(c!==t.DOC_RANGE_TYPE.RECT&&e===r){let e=ua(s,{...n,segmentId:i,segmentPage:a,style:m},u,l);e&&this._addTextRange(e)}else if(c===t.DOC_RANGE_TYPE.RECT){let t=Sa(e,r,s,l,u,m,i,a);t&&this._addRectRanges([t])}else if(c===t.DOC_RANGE_TYPE.TEXT)try{let t=null;t=f&&p?xa(f.isBack?e:e-1,p.isBack?r:r-1,s,l,u,m,i,a,f.isBack,p.isBack):xa(e,r,s,l,u,m,i,a),t&&this._addTextRange(t)}catch{d(e,r,m)}else d(e,r,m)}this._hideCollapsedCaretsForVisibleSelection(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:i,segmentPage:a,style:o,isEditing:n,options:r}),!(!e.length||(r==null?void 0:r.shouldFocus)===!1)&&this._updateInputPosition(r==null?void 0:r.forceFocus)}setCursorManually(e,n){let r=this._findNodeByCoord(e,n,{strict:!0,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),i=this._getNodePosition(r);if(i==null){this._removeAllRanges();return}(r==null?void 0:r.node.streamType)===t.DataStreamTreeTokenType.PARAGRAPH&&(i.isBack=!0),this._createTextRangeByAnchorPosition(i),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1})}sync(){this._updateInputPosition()}setInputPosition(e,t){this._positionInput(e,t)}activate(e,t,n=!1){this._positionInput(e,t),(n&&!this._shouldPreserveExternalFocus()||!n&&this.canFocusing)&&this.focus()}_positionInput(e,t){this._ensureHostContainer(),this._container.style.position=`fixed`;let n=e,r=t,i=this._container.offsetParent;if(i){let e=i.getBoundingClientRect();n-=e.left,r-=e.top}this._container.style.left=`${n}px`,this._container.style.top=`${r}px`,this._container.style.zIndex=`1000`}hasFocus(){return this._getOwnerDocument().activeElement===this._input}focus(){this._input.hasAttribute(`tabindex`)||(this._input.tabIndex=-1),this._input.focus()}blur(){this._input.blur()}deactivate(){this._container.style.left=`0px`,this._container.style.top=`0px`}__handleDblClick(e){let{offsetX:t,offsetY:n}=e,r=this._findNodeByCoord(t,n,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(r==null||r.node==null)return;let i=Ea(r.node);if(i==null)return;let{content:a,st:o,nodeIndex:s}=i;if(s===-1)return;let c=Aa(a,s,o);if(c!=null){this.removeAllRanges();let e=[{startOffset:c.startOffset,endOffset:c.endOffset}];this.addDocRanges(e,!1,{forceFocus:!0})}}__handleTripleClick(e){let{offsetX:t,offsetY:n}=e,r=this._findNodeByCoord(t,n,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(r==null||r.node==null)return;let i=Ea(r.node);if(i==null)return;this.removeAllRanges();let{st:a,ed:o}=i,s=[{startOffset:a,endOffset:o}];this.addDocRanges(s,!1,{forceFocus:!0})}__onPointDown(e){var n,i;let{scene:a,mainComponent:o}=this._context,s=this._docSkeletonManagerService.getSkeleton(),{offsetX:c,offsetY:l}=e,u=this._findNodeByCoord(c,l,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),d=this._getNodePosition(u);if(d==null||u==null){this._removeAllRanges();return}(u==null?void 0:u.node.streamType)===t.DataStreamTreeTokenType.PARAGRAPH&&(d.isBack=!0);let f=this._textSelectionInner$.value;if(u&&e.button===2&&f){let e=s.findCharIndexByPosition(d);if(typeof e==`number`&&f.textRanges.some(t=>t.startOffset<=e&&t.endOffset>e)||typeof e==`number`&&f.rectRanges.some(t=>t.startOffset<=e&&t.endOffset>=e))return}let{segmentId:p,segmentPage:m}=u;p&&this._currentSegmentId&&p!==this._currentSegmentId&&this.setSegment(p),p&&m!==this._currentSegmentPage&&this.setSegmentPage(m),this._anchorNodePosition=d,e.shiftKey&&this._getActiveRangeInstance()?this._updateActiveRangePosition(d):e.ctrlKey?this._removeAllCollapsedTextRanges():this._isEmpty()||this._removeAllRanges(),a.disableObjectsEvent();let h=r.ScrollTimer.create(a);this._scrollTimers.push(h),h.startScroll(c,l),this._onSelectionStart$.next((n=this._getActiveRangeInstance())==null?void 0:n.startNodePosition),(i=a.getTransformer())==null||i.clearSelectedObjects();let g=c,_=l;this._onPointerEvent=!0,this._scenePointerMoveSubs.push(a.onPointerMove$.subscribeEvent(e=>{let{offsetX:t,offsetY:n}=e;a.setCursor(r.CURSOR_TYPE.TEXT),!(Math.sqrt((t-g)**2+(n-_)**2)<3)&&(this._tryMoving(t,n),h.scrolling(t,n,()=>{this._tryMoving(t,n)}),g=t,_=n)})),this._scenePointerUpSubs.push(a.onPointerUp$.subscribeEvent(()=>{if([...this._scenePointerMoveSubs,...this._scenePointerUpSubs].forEach(e=>{e.unsubscribe()}),this._onPointerEvent=!1,a.enableObjectsEvent(),this._anchorNodePosition&&!this._focusNodePosition){if(e.ctrlKey){this._disposeScrollTimers();return}let t=new pa(a,o,s,this._anchorNodePosition,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(t)}else if(this._anchorNodePosition&&this._focusNodePosition){for(let t of this._rangeListCache)e.ctrlKey&&t.collapsed?t.dispose():this._addTextRange(t);this._addRectRanges(this._rectRangeListCache),this._rangeListCache=[],this._rectRangeListCache=[]}this._anchorNodePosition=null,this._focusNodePosition=null;let t={textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1};this._textSelectionInner$.next(t),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(){let{r:e,g:t,b:n,a:i}=(0,r.getSystemHighlightColor)(),a={strokeWidth:1,stroke:`rgba(0, 0, 0, 0)`,strokeActive:`rgba(0, 0, 0, 1)`,fill:`rgba(${e}, ${t}, ${n}, ${i??.3})`};this._setRangeStyle(a)}_getAllTextRanges(){return this._rangeList.map(Da)}_getAllRectRanges(){return this._rectRangeList.map(Oa)}getAllTextRanges(){return this._getAllTextRanges()}getAllRectRanges(){return this._getAllRectRanges()}_getActiveRange(){let e=this._rangeList.find(e=>e.isActive());if(e==null)return null;let{startOffset:t,endOffset:n}=e;return t==null||n==null?null:Da(e)}_getActiveRangeInstance(){return this._rangeList.find(e=>e.isActive())}dispose(){super.dispose(),this._detachEvent(),this._removeAllRanges(),this._container.remove()}_initDOM(){let{unitId:e}=this._context,t=document.createElement(`div`);t.style.position=`fixed`,t.style.left=`0px`,t.style.top=`0px`,t.id=`univer-doc-selection-container-${e}`;let n=document.createElement(`div`),r=document.createElement(`div`);n.appendChild(r),t.appendChild(n),this._container=t,this._inputParent=n,this._input=r,this._initInput(),this._initInputEvents();let i=this._layoutService.rootContainerElement;(i!=null&&i.isConnected?i:document.body).appendChild(t)}_registerContainer(){this.disposeWithMe(this._layoutService.registerContainerElement(this._container))}_initInput(){this._inputParent.style.cssText=`
22
+ they are not in the same segment page when in header or footer.`);let{start:o,end:s}=Or(e,t);return this._selectionIterator(o,s,(e,t,c,l,u,d)=>{let{lineHeight:f,asc:p,paddingTop:m,paddingBottom:h,contentHeight:g,marginTop:_,marginBottom:v}=d,{glyphGroup:y,st:b}=u;if(y.length===0)return;let{x,y:S}=this._liquid,C,w,T=y[e],E=y[t],D=y[e-1],O=(T==null?void 0:T.left)||0,k=(T==null?void 0:T.width)||0,A=(E==null?void 0:E.left)||0,j=(E==null?void 0:E.width)||0,M=(T==null?void 0:T.glyphType)===r.GlyphType.LIST,{startOffset:N,endOffset:P}=Ar(y,e,t,b),F=o.glyph===e&&c?o.isBack:!0,I=s.glyph===t&&l?s.isBack:!1,L=o===s,R=F?D??T:T,z=this._getCaretGlyph(R,y,e),B=y.slice(e,t+1),V=!L&&B.length>0&&B.every(e=>this._isNonInlineDrawingGlyph(e)),ee=S,H=g==null?S+f-_-v:S+m+g+h;if(e===0&&t===y.length-1)C={startX:x+O+(M?k:0),startY:ee,endX:x+A+(I?0:j),endY:H},w={startX:x+O+(M?k:0),startY:S+m+p-z.bBox.ba,endX:x+A+(I?0:j),endY:S+m+p+z.bBox.bd};else{let e=F&&!M;C={startX:x+O+(e?0:k),startY:ee,endX:x+A+(I?0:j),endY:H},w={startX:x+O+(e?0:k),startY:S+m+p-z.bBox.ba,endX:x+A+(I?0:j),endY:S+m+p+z.bBox.bd}}let U=Pr(C,this._horizontalClip),W=Pr(w,this._horizontalClip);U&&!V&&n.push(jr(U)),W&&!V&&i.push(jr(W)),a.push({startOffset:F?N:N+T.count,endOffset:I?P:P+E.count,collapsed:L})}),{borderBoxPointGroup:n,contentBoxPointGroup:i,cursorList:a}}_getCaretGlyph(e,t,n){return!e||!this._isNonInlineDrawingGlyph(e)?e:this._findTextLikeGlyph(t,n-1,-1)??this._findTextLikeGlyph(t,n+1,1)??{...e,bBox:Ir(e)}}_findTextLikeGlyph(e,t,n){for(let r=t;r>=0&&r<e.length;r+=n){let t=e[r];if(!this._isNonInlineDrawingGlyph(t))return t}}_isNonInlineDrawingGlyph(e){var r,i,a,o,s,c;if(!(e!=null&&e.drawingId)||e.streamType!==t.DataStreamTreeTokenType.CUSTOM_BLOCK)return!1;let l=(r=(i=this._docSkeleton).getViewModel)==null||(o=(a=r.call(i)).getDataModel)==null||(c=(s=o.call(a)).getSnapshot)==null||(c=c.call(s).drawings)==null?void 0:c[e.drawingId];return(l==null?void 0:l.layoutType)==null?!(0,n.shouldUseInlineTextSelectionForDocsCustomBlockDrawing)(l):l.layoutType!==t.PositionedObjectLayoutType.INLINE}_isValidPosition(e,t){let{segmentPage:n,pageType:i}=e,{segmentPage:a,pageType:o}=t;return i===o?i===r.DocumentSkeletonPageType.HEADER||i===r.DocumentSkeletonPageType.FOOTER?n===a:!0:!1}_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(e=0,t,n,r){r===t?this._currentStartState[e]=1:this._currentStartState[e]=0,r===n?this._currentEndState[e]=2:this._currentEndState[e]=0}_checkPreviousNodePositionState(e,t=!0){let n=e,r;for(;n>=0;){let e=Tr[n],i;if(i=t?this._currentStartState[e]:this._currentEndState[e],i===void 0)return;if(r===void 0&&(r=i),i!==r)return 0;n--}return r}_getSelectionRuler(e,t,n,r,i){let a=0,o=r,s=Tr[e],c=Tr[e+1];if(c===null||s===null)return{start_next:a,end_next:o};let l=t[s],u=n[s];this._setNodePositionState(s,l,u,i);let d=this._checkPreviousNodePositionState(e),f=this._checkPreviousNodePositionState(e,!1);return d===1&&(a=t[c]),f===2&&(o=n[c]),{start_next:a,end_next:o}}_selectionIterator(e,t,n){let i=this._docSkeleton;if(!i)return[];let{pageType:a,path:o}=e;this._liquid.reset();let s=i.getSkeletonData();if(s==null)return[];let{pages:c,skeHeaders:l,skeFooters:u}=s,{page:d,segmentPage:f}=e,{page:p,segmentPage:m}=t;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];let{pageLayoutType:h,pageMarginLeft:g,pageMarginTop:_}=this._documentOffsetConfig,v=a===r.DocumentSkeletonPageType.CELL&&c[d]==null?f:d,y=a===r.DocumentSkeletonPageType.CELL&&c[p]==null?m:p,b=a===r.DocumentSkeletonPageType.BODY||a===r.DocumentSkeletonPageType.CELL?v:f;for(let e=0;e<b;e++){let t=c[e];this._liquid.translatePage(t,h,g,_)}let x=a===r.DocumentSkeletonPageType.BODY||a===r.DocumentSkeletonPageType.CELL?y:m;for(let d=b;d<=x;d++){let f=c[d];if(f==null)continue;let{headerId:p,footerId:m,pageWidth:v}=f,y=f;if(a===r.DocumentSkeletonPageType.HEADER){var S;y=(S=l.get(p))==null?void 0:S.get(v)}else if(a===r.DocumentSkeletonPageType.FOOTER){var C;y=(C=u.get(m))==null?void 0:C.get(v)}else a===r.DocumentSkeletonPageType.CELL&&(y=o[0]===`pages`?(0,r.getPageFromPath)(s,o):Fr(s,f,o));if(y==null){this._liquid.translatePage(f,h,g,_);continue}let w=y.sections,{start_next:T,end_next:E}=this._getSelectionRuler(Er.page,e,t,w.length-1,a===r.DocumentSkeletonPageType.BODY||a===r.DocumentSkeletonPageType.CELL?d:0);this._liquid.translateSave();let D=this._horizontalClip;switch(this._horizontalClip=null,a){case r.DocumentSkeletonPageType.HEADER:this._liquid.translatePagePadding({...y,marginLeft:f.marginLeft});break;case r.DocumentSkeletonPageType.FOOTER:{let e=f.pageHeight-y.height-y.marginBottom;this._liquid.translate(f.marginLeft,e);break}case r.DocumentSkeletonPageType.CELL:{let e=(0,r.getDocumentSkeletonNestedPageOffset)(y);if(e){this._liquid.translatePagePadding(f),this._liquid.translate(e.left,e.top),this._liquid.translatePagePadding(y);break}let t=y.parent,n=t.parent,a=n.parent,o=a?(0,r.getDocumentSkeletonNestedPageOffset)(a):void 0,{left:s}=y,{top:c,left:l}=n,{top:u}=t,d=(0,r.getTableIdAndSliceIndex)(n.tableId).tableId,p=(0,r.getDocsTableRenderViewport)(Rr(i),d),m=Nr(p),h=m?p.scrollLeft:0;if((a==null?void 0:a.type)===r.DocumentSkeletonPageType.HEADER)this._liquid.translatePagePadding({...a,marginLeft:f.marginLeft});else if((a==null?void 0:a.type)===r.DocumentSkeletonPageType.FOOTER){let e=f.pageHeight-a.height-a.marginBottom;this._liquid.translate(f.marginLeft,e)}else this._liquid.translatePagePadding(f);if(o&&(this._liquid.translate(o.left,o.top),this._liquid.translatePagePadding(a)),m){let e=this._liquid.x+l-(p.leadingInsetLeft??0);this._horizontalClip={left:e,right:e+p.viewportWidth}}this._liquid.translate(l+s-h,c+u),this._liquid.translatePagePadding(y);break}default:this._liquid.translatePagePadding(f);break}for(let r=T;r<=E;r++){let i=w[r],a=i.columns,{start_next:o,end_next:s}=this._getSelectionRuler(Er.section,e,t,a.length-1,r);this._liquid.translateSave(),this._liquid.translateSection(i);for(let c=o;c<=s;c++){let l=a[c],u=l.lines,{start_next:f,end_next:p}=this._getSelectionRuler(Er.column,e,t,u.length-1,c);this._liquid.translateSave(),this._liquid.translateColumn(l);for(let a=f;a<=p;a++){let m=u[a],{divides:h}=m,{start_next:g,end_next:_}=this._getSelectionRuler(Er.line,e,t,h.length-1,a);this._liquid.translateSave(),this._liquid.translateLine(m,!0,!1);for(let u=g;u<=_;u++){let v=h[u];this._liquid.translateSave(),this._liquid.translateDivide(v);let{glyphGroup:S}=v,{start_next:C,end_next:w}=this._getSelectionRuler(Er.divide,e,t,S.length-1,u),D=!1,O=!1;d===b&&r===T&&c===o&&a===f&&u===g&&(D=!0),d===x&&r===E&&c===s&&a===p&&u===_&&(O=!0),n&&n(C,w,D,O,v,m,l,i,y),this._liquid.translateRestore()}this._liquid.translateRestore()}this._liquid.translateRestore()}this._liquid.translateRestore()}this._liquid.translateRestore(),this._horizontalClip=D,this._liquid.translatePage(f,h,g,_)}}};function Nr(e){return e!=null&&(e.leadingInsetLeft??0)+e.contentWidth+(e.trailingInsetRight??0)>e.viewportWidth}function Pr(e,t){if(!t)return e;let n=Math.max(e.startX,t.left),r=Math.min(e.endX,t.right);return e.startX===e.endX?e.startX>=t.left&&e.startX<=t.right?e:null:r<=n?null:{...e,startX:n,endX:r}}function Fr(e,t,n){var i,a;if(n[0]===`pages`)return null;let o=[],{headerId:s,footerId:c,pageWidth:l}=t,u=s==null?null:(i=e.skeHeaders.get(s))==null?void 0:i.get(l),d=c==null?null:(a=e.skeFooters.get(c))==null?void 0:a.get(l);u!=null&&o.push(u),d!=null&&o.push(d);for(let t of o){let i=(0,r.getPageFromPath)({...e,pages:[t]},[`pages`,0,...n]);if(i!=null)return i}return null}function Ir(e){let t=Lr(e);return{...e.bBox,ba:t,bd:Math.max(2,Math.ceil(t*.25))}}function Lr(e){var t,n,r;let i=((t=e.fontStyle)==null?void 0:t.originFontSize)??((n=e.fontStyle)==null?void 0:n.fontSize)??((r=e.ts)==null?void 0:r.fs);return typeof i==`number`&&Number.isFinite(i)&&i>0?i:14}function Rr(e){var t,n,r;let i=e.getViewModel();return((t=i.getDataModel)==null||(r=(n=t.call(i)).getUnitId)==null?void 0:r.call(n))??``}function zr(e,t){let{path:n}=e,{path:i}=t;if(n.length!==i.length||n.indexOf(`cells`)===-1)return!1;let a=n.indexOf(`skeTables`)+1,o=n.indexOf(`rows`)+1,s=n.indexOf(`cells`)+1,{tableId:c,sliceIndex:l}=(0,r.getTableIdAndSliceIndex)(n[a]),{tableId:u,sliceIndex:d}=(0,r.getTableIdAndSliceIndex)(i[a]);if(c!==u)return!1;let f=n[o],p=i[o],m=n[s],h=i[s];return f!==p||m!==h||l!==d}function Br(e,t){let{path:n}=e,{path:r}=t;if(n.indexOf(`cells`)===-1||r.indexOf(`cells`)===-1)return!1;let i=n.indexOf(`skeTables`)+1,a=n.indexOf(`rows`)+1,o=n.indexOf(`cells`)+1,s=r.indexOf(`skeTables`)+1,c=r.indexOf(`rows`)+1,l=r.indexOf(`cells`)+1;return i===0||a===0||o===0||s===0||c===0||l===0?!1:n[i]===r[s]&&n[a]===r[c]&&n[o]===r[l]}function Vr(e,t,n){var r,i;let{path:a}=t,{path:o}=n;if(a.indexOf(`cells`)===-1||o.indexOf(`cells`)===-1)return!1;let s=e.findGlyphByPosition(t),c=e.findGlyphByPosition(n),l=s==null||(r=s.parent)==null||(r=r.parent)==null||(r=r.parent)==null||(r=r.parent)==null?void 0:r.parent,u=c==null||(i=c.parent)==null||(i=i.parent)==null||(i=i.parent)==null||(i=i.parent)==null?void 0:i.parent;if(l==null||u==null)return!1;let d=l.parent,f=u.parent;return d.cells.indexOf(l)===f.cells.indexOf(u)&&d.index===f.index}function Hr(e,t){if(Br(e,t))return Dr(e,t);let{path:n}=e,{path:r}=t,i=n[n.length-5],a=r[r.length-5];if(i!==a&&typeof i==`string`&&typeof a==`string`){let e=i.split(`#-#`)[1],t=a.split(`#-#`)[1];return+e<+t}let o=n[n.length-3],s=r[r.length-3],c=n[n.length-1],l=r[r.length-1];return o<s?!0:o>s?!1:c<=l}function Ur(e){return e.sections[0].columns[0].lines.length===0}function Wr(e,t,n){let r=t,i=n,a=e[r],o=e[i];for(;r<i&&(Ur(a)||Ur(o));)Ur(a)?(r++,a=e[r]):Ur(o)&&(i--,o=e[i]);if(!Ur(a)&&!Ur(o))return[a,o]}function Gr(e,t){var n;let r=(n=e.tableSource)==null?void 0:n.tableColumns;if(r&&t>=0&&t<=r.length)return r.slice(0,t).reduce((e,t)=>{var n;return e+(((n=t.size)==null||(n=n.width)==null?void 0:n.v)??0)},0);let i=e.rows[0],a=i==null?void 0:i.cells[t];if(a)return a.left;let o=i==null?void 0:i.cells[t-1];return o?o.left+o.pageWidth:null}function Kr(e){var t,n,r;let i=e.getViewModel();return((t=i.getDataModel)==null||(r=(n=t.call(i)).getUnitId)==null?void 0:r.call(n))??``}function qr(e,t,n,r){let i=Jr(n)?n.scrollLeft:0,a=Jr(n)?n.viewportWidth:null,o=r-((n==null?void 0:n.leadingInsetLeft)??0),s=t.startX-i,c=t.endX-i,l=a==null?s:Math.max(s,o),u=a==null?c:Math.min(c,o+a);u<=l||e.push(jr({...t,startX:l,endX:u}))}function Jr(e){return e!=null&&(e.leadingInsetLeft??0)+e.contentWidth+(e.trailingInsetRight??0)>e.viewportWidth}var Yr=class{constructor(e,t){this._documentOffsetConfig=e,this._docSkeleton=t,O(this,`_liquid`,new r.Liquid)}getRangePointData(e,t){let n=[],i=this._docSkeleton,a=i.getSkeletonData();if(a==null)return;let{pages:o}=a,{segmentPage:s,page:c,pageType:l}=e,u=this._getTableRectRangeInfo(e,t);if(u==null)return;let{tableId:d,startRowIndex:f,startColumnIndex:p,endRowIndex:m,endColumnIndex:h,intersectsMergedCell:g}=u;this._liquid.reset();let{pageLayoutType:_,pageMarginLeft:v,pageMarginTop:y}=this._documentOffsetConfig,b=Kr(i),x=(0,r.getTableIdAndSliceIndex)(d).tableId,S=(0,r.documentSkeletonTableIterator)(o,{docsLeft:this._documentOffsetConfig.docsLeft??0,docsTop:this._documentOffsetConfig.docsTop??0,pageMarginTop:y,skeFooters:a==null?void 0:a.skeFooters,skeHeaders:a==null?void 0:a.skeHeaders,unitId:b}),C=l===r.DocumentSkeletonPageType.CELL&&o[c]==null?s:c,w=l===r.DocumentSkeletonPageType.BODY||l===r.DocumentSkeletonPageType.CELL?C:s;for(let e=0;e<w;e++){let t=o[e];this._liquid.translatePage(t,_,v,y)}for(let e=w;e<o.length;e++){let t=o[e];this._liquid.translatePagePadding(t);let{skeTables:i}=t,a=null;for(let[e,t]of i.entries())e.startsWith(d)&&(a=t);if(a==null){let i=S.find(t=>t.pageIndex===e&&(t.source===`column`||t.source===`header`||t.source===`footer`)&&t.tableId.startsWith(d));if(i){let e=i.table,a=(0,r.getDocsTableRenderViewport)(b,x),o=i.tableRect.left-e.left-(this._documentOffsetConfig.docsLeft??0),s=i.tableRect.top-(this._documentOffsetConfig.docsTop??0);if(g){let r=e.rows.filter(e=>e.index>=f&&e.index<=m),i=r[0],c=r[r.length-1],l=Gr(e,p),u=Gr(e,h+1);i&&c&&l!=null&&u!=null&&qr(n,{startX:o+e.left+l,startY:s+i.top,endX:o+e.left+u,endY:s+c.top+c.height},a,o+e.left),this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}for(let t of e.rows)if(t.index>=f&&t.index<=m){let r=Wr(t.cells,p,h);if(r==null)continue;let[i,c]=r;qr(n,{startX:o+i.left+e.left,startY:s+t.top,endX:o+c.left+c.pageWidth+e.left,endY:s+t.top+t.height},a,o+e.left)}this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}this._liquid.translateSave(),this._liquid.translate(0,a.top);let{x:s,y:c}=this._liquid,{left:l}=a,u=(0,r.getDocsTableRenderViewport)(b,x);if(g){let e=a.rows.filter(e=>e.index>=f&&e.index<=m),r=e[0],i=e[e.length-1],o=Gr(a,p),d=Gr(a,h+1);r&&i&&o!=null&&d!=null&&qr(n,{startX:s+l+o,startY:c+r.top,endX:s+l+d,endY:c+i.top+i.height},u,s+l),this._liquid.translateRestore(),this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y);continue}for(let e of a.rows)if(e.index>=f&&e.index<=m){let t=Wr(e.cells,p,h);if(t==null)continue;let[r,i]=t;qr(n,{startX:s+r.left+l,startY:c+e.top,endX:s+i.left+i.pageWidth+l,endY:c+e.top+e.height},u,s+l)}this._liquid.translateRestore(),this._liquid.restorePagePadding(t),this._liquid.translatePage(t,_,v,y)}return{pointGroup:n,startRow:f,startColumn:p,endRow:m,endColumn:h,tableId:d}}getNodePositionGroup(e,t){let n=[],r=this._docSkeleton.findCharIndexByPosition(e),i=this._docSkeleton.findCharIndexByPosition(t);if(r==null||i==null)return;let a=r<i,o=this._getTableRectRangeInfo(e,t);if(o==null)return;let{tableId:s,startRowIndex:c,startColumnIndex:l,endRowIndex:u,endColumnIndex:d,intersectsMergedCell:f}=o;if(f)return[{anchor:e,focus:t}];let p=this._docSkeleton.getViewModel().findTableNodeById(s);if(p==null)return;let m=p.children[0].children.length;if(l===0&&d===m-1){let e=p.children[c].children[l],t=this._docSkeleton.findNodePositionByCharIndex(e.startIndex+1),r=p.children[u].children[d],i=this._docSkeleton.findNodePositionByCharIndex(r.endIndex-2);if(t==null||i==null)return;n.push({anchor:a?t:i,focus:a?i:t})}else for(let e=c;e<=u;e++){let t=p.children[e],r=t.children[l],i=t.children[d],o=this._docSkeleton.findNodePositionByCharIndex(r.startIndex+1),s=this._docSkeleton.findNodePositionByCharIndex(i.endIndex-2);if(o==null||s==null)return;n.push({anchor:a?o:s,focus:a?s:o})}return n}_getTableRectRangeInfo(e,t){var n;let i=this._docSkeleton,a=i.getSkeletonData();if(a==null)return;let{pages:o}=a,{path:s}=e,{path:c}=t;if(s.indexOf(`cells`)===-1||c.indexOf(`cells`)===-1)return;let l=Qr(a,e),u=Qr(a,t);if(l==null||u==null)return;let d=l.parent,f=u.parent;if(!Array.isArray(d==null?void 0:d.cells)||!Array.isArray(f==null?void 0:f.cells))return;let p=l.segmentId,m=d.index,h=d.cells.indexOf(l),g=f.index,_=f.cells.indexOf(u),v=(0,r.getTableIdAndSliceIndex)(p).tableId,y=(n=i.getViewModel().getSnapshot().tableSource)==null?void 0:n[v],b={startRowIndex:Math.min(m,g),endRowIndex:Math.max(m,g),startColumnIndex:Math.min(h,_),endColumnIndex:Math.max(h,_)};return{pages:o,tableId:p,intersectsMergedCell:Zr(y,b),...Xr(y,b)}}};function Xr(e,t){if(!e)return t;let n=$r(t),r=!0;for(;r;)r=!1,e.tableRows.forEach((e,t)=>{e.tableCells.forEach((e,i)=>{let a=e.rowSpan??1,o=e.columnSpan??1;if(a<=0||o<=0||a===1&&o===1)return;let s={startRowIndex:t,endRowIndex:t+a-1,startColumnIndex:i,endColumnIndex:i+o-1};if(!ei(n,s))return;let c={startRowIndex:Math.min(n.startRowIndex,s.startRowIndex),endRowIndex:Math.max(n.endRowIndex,s.endRowIndex),startColumnIndex:Math.min(n.startColumnIndex,s.startColumnIndex),endColumnIndex:Math.max(n.endColumnIndex,s.endColumnIndex)};ti(n,c)||(n=c,r=!0)})});return n}function Zr(e,t){if(!e)return!1;let n=$r(t);return e.tableRows.some((e,t)=>e.tableCells.some((e,r)=>{let i=e.rowSpan??1,a=e.columnSpan??1;return i<=0||a<=0||i===1&&a===1?!1:ei(n,{startRowIndex:t,endRowIndex:t+i-1,startColumnIndex:r,endColumnIndex:r+a-1})}))}function Qr(e,t){var n,i;let{path:a,segmentPage:o}=t;if(a[0]===`pages`)return(0,r.getPageFromPath)(e,a);let s=e.pages[o];if(s==null)return null;let{headerId:c,footerId:l,pageWidth:u}=s,d=[c==null?null:(n=e.skeHeaders.get(c))==null?void 0:n.get(u),l==null?null:(i=e.skeFooters.get(l))==null?void 0:i.get(u)];for(let t of d){if(t==null)continue;let n=(0,r.getPageFromPath)({...e,pages:[t]},[`pages`,0,...a]);if(n!=null)return n}return null}function $r(e){return{startRowIndex:Math.min(e.startRowIndex,e.endRowIndex),endRowIndex:Math.max(e.startRowIndex,e.endRowIndex),startColumnIndex:Math.min(e.startColumnIndex,e.endColumnIndex),endColumnIndex:Math.max(e.startColumnIndex,e.endColumnIndex)}}function ei(e,t){return e.startRowIndex<=t.endRowIndex&&e.endRowIndex>=t.startRowIndex&&e.startColumnIndex<=t.endColumnIndex&&e.endColumnIndex>=t.startColumnIndex}function ti(e,t){return e.startRowIndex===t.startRowIndex&&e.endRowIndex===t.endRowIndex&&e.startColumnIndex===t.startColumnIndex&&e.endColumnIndex===t.endColumnIndex}let ni=`gray.1000`;function ri(e,t,n,i){let{startOffset:a,endOffset:o,style:s=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,segmentId:c=``,segmentPage:l}=t;return new oi(e,i,n,n.findNodePositionByCharIndex(a,!0,c,l),a===o?null:n.findNodePositionByCharIndex(o,!0,c,l),s,c,l)}function ii(e){let t=e[0],n=t[0],r=t[2],{x:i,y:a}=n,{x:o,y:s}=r;return{left:i,top:a,width:o-i,height:s-a}}function ai(e){return e.map(e=>{let t=1/0,n=-1/0,r=1/0,i=-1/0;return e.forEach(e=>{t=Math.min(e.x,t),n=Math.max(e.x,n),i=Math.max(e.y,i),r=Math.min(e.y,r)}),{left:t,right:n,top:r,bottom:i}})}var oi=class{constructor(e,n,i,a,o,s=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c=``,l=-1){this._scene=e,this._document=n,this._docSkeleton=i,this.anchorNodePosition=a,this.focusNodePosition=o,this.style=s,this._segmentId=c,this._segmentPage=l,O(this,`rangeType`,t.DOC_RANGE_TYPE.TEXT),O(this,`_current`,!1),O(this,`_rangeShape`,void 0),O(this,`_anchorShape`,void 0),O(this,`_cursorList`,[]),O(this,`_anchorBlinkTimer`,null),O(this,`_anchorActiveStroke`,ni),this._anchorBlink(),this.refresh()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},500),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},500))},1e3)}get startOffset(){var e;let{startOffset:t}=kr(this._cursorList)??{},n=(e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId))==null?void 0:e.getBody();if(t==null||n==null)return t;let r=n.dataStream.length-2;return Math.min(r,t)}get endOffset(){var e;let{endOffset:t}=kr(this._cursorList)??{},n=(e=this._docSkeleton.getViewModel().getDataModel().getSelfOrHeaderFooterModel(this._segmentId))==null?void 0:e.getBody();if(t==null||n==null)return t;let r=n.dataStream.length-2;return Math.min(t,r)}get collapsed(){let{startOffset:e,endOffset:t}=this;return e!=null&&e===t}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;let{start:e}=Or(this.anchorNodePosition,this.focusNodePosition);return e}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;let{end:e}=Or(this.anchorNodePosition,this.focusNodePosition);return e}get direction(){let{collapsed:e,anchorNodePosition:n,focusNodePosition:r}=this;return e||n==null||r==null?t.RANGE_DIRECTION.NONE:Dr(n,r)?t.RANGE_DIRECTION.FORWARD:t.RANGE_DIRECTION.BACKWARD}get segmentId(){return this._segmentId}get segmentPage(){return this._segmentPage}getAbsolutePosition(){let e=this.anchorNodePosition,t=this.focusNodePosition;if(this._isEmpty())return;let n=this._document.getOffsetConfig(),{docsLeft:r,docsTop:i}=n,a=new Mr(n,this._docSkeleton);if(this._isCollapsed()){let{contentBoxPointGroup:t,cursorList:n}=a.getRangePointData(e,e);if(this._setCursorList(n),t.length===0)return;let o=ii(t);return{...o,left:o.left+r,top:o.top+i}}let{borderBoxPointGroup:o,cursorList:s}=a.getRangePointData(e,t);if(this._setCursorList(s),o.length===0)return;let c=ii(o);return{...c,left:c.left+r,top:c.top+i}}getAnchor(){return this._anchorShape}activeStatic(){var e;(e=this._anchorShape)==null||e.setProps({stroke:this._anchorActiveStroke})}deactivateStatic(){var e,n;(e=this._anchorShape)==null||e.setProps({stroke:((n=this.style)==null?void 0:n.stroke)||(0,r.getColor)(t.COLORS.black,0)})}isActive(){return this._current===!0}activate(){if(this._current=!0,this._isCollapsed()){var e;(e=this._anchorShape)==null||e.show(),this.activeStatic()}}deactivate(){if(this._current=!1,this._isCollapsed()){var e;(e=this._anchorShape)==null||e.hide()}}dispose(){var e,t;(e=this._rangeShape)==null||e.dispose(),this._rangeShape=null,(t=this._anchorShape)==null||t.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&=(clearInterval(this._anchorBlinkTimer),null)}isIntersection(e){let{startOffset:t,endOffset:n}=this,{startOffset:r,endOffset:i}=e;return t==null||n==null||r==null||i==null?!1:t<=i&&n>=r}refresh(){var e,t;let{_document:n,_docSkeleton:r}=this,i=this.anchorNodePosition,a=this.focusNodePosition;if((e=this._anchorShape)==null||e.hide(),(t=this._rangeShape)==null||t.hide(),this._isEmpty())return;let o=n.getOffsetConfig(),{docsLeft:s,docsTop:c}=o,l=new Mr(o,r);if(this._isCollapsed()){let{contentBoxPointGroup:e,cursorList:t}=l.getRangePointData(i,i);if(this._setCursorList(t),e.length>0){let t=r.findGlyphByPosition(i);this._createOrUpdateAnchor(e,s,c,t)}return}let{borderBoxPointGroup:u,cursorList:d}=l.getRangePointData(i,a);this._setCursorList(d),u.length>0&&this._createOrUpdateRange(u,s,c)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){let e=this.anchorNodePosition,t=this.focusNodePosition;if(e!=null&&t==null)return!0;if(e==null||t==null)return!1;let n=Object.keys(Er);for(let r of n)if(e[r]!==t[r])return!1;return e.isBack===t.isBack}_createOrUpdateRange(e,n,i){var a;if(this._rangeShape){this._rangeShape.translate(n,i),this._rangeShape.updatePointGroup(e),this._rangeShape.show();return}let o=new r.RegularPolygon(`__TestSelectionRange__`+(0,t.generateRandomId)(6),{pointsGroup:e,fill:((a=this.style)==null?void 0:a.fill)||(0,r.getColor)(t.COLORS.black,.3),left:n,top:i,evented:!1,debounceParentDirty:!1});this._rangeShape=o,this._scene.addObject(o,3)}_createOrUpdateAnchor(e,n,i,a){var o,s;let c=ii(e),{left:l}=c,{top:u,height:d}=c;d<14&&(u-=14-d,d=14);let f=l+n,p=u+i,m=(a==null||(o=a.ts)==null?void 0:o.it)===t.BooleanNumber.TRUE;if(this._anchorActiveStroke=this._getAnchorActiveStroke(a),m&&(f+=d*Math.tan(12*Math.PI/180)/2),this._anchorShape){this._anchorShape.transformByState({left:f,top:p,height:d}),this._anchorShape.show(),m?this._anchorShape.skew(-12,0):this._anchorShape.skew(0,0),this.activeStatic();return}let h=new r.Rect(`__TestSelectionAnchor__`+(0,t.generateRandomId)(6),{left:f,top:p,height:d,strokeWidth:((s=this.style)==null?void 0:s.strokeWidth)||1,stroke:this._anchorActiveStroke,evented:!1});m&&h.skew(-12,0),this._anchorShape=h,this._scene.addObject(h,3),this.activeStatic()}_getAnchorActiveStroke(e){var n,i,a;if((n=this.style)!=null&&n.strokeActive&&this.style.strokeActive!==r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE.strokeActive)return this.style.strokeActive;let o=(i=(a=this._scene).getEngine)==null||(i=i.call(a))==null?void 0:i.canvasColorService;if(!o)return ni;try{let n=new t.ColorKit(o.getRenderColor(this._getAnchorBackgroundColor(e)));return n.isValid&&t.ColorKit.getContrastRatio(o.getRenderColor(`gray.0`),n)>t.ColorKit.getContrastRatio(o.getRenderColor(ni),n)?`gray.0`:ni}catch{return ni}}_getAnchorBackgroundColor(e){var n,i,a;let o=e==null||(n=e.parent)==null?void 0:n.parent,s=o==null||(i=o.parent)==null||(i=i.parent)==null?void 0:i.parent,c;if((s==null?void 0:s.type)===r.DocumentSkeletonPageType.CELL&&s.parent&&`rowSource`in s.parent){var l;let e=s.parent,t=e.cells.indexOf(s);c=(l=e.rowSource.tableCells[t])==null?void 0:l.backgroundColor}let u=(e==null||(a=e.ts)==null?void 0:a.bg)??(o==null?void 0:o.backgroundColor)??c;return(u==null?void 0:u.rgb)??(0,t.getColorStyle)(u)??`gray.0`}_setCursorList(e){e.length!==0&&(this._cursorList=e)}};function si(e,t,n,i,a,o=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,s=``,c=-1){let l=new Yr(t.getOffsetConfig(),n).getNodePositionGroup(i,a),u=[];try{for(let r of l??[])u.push(new ci(e,t,n,r.anchor,r.focus,o,s,c));return u}catch(e){throw u.forEach(e=>e.dispose()),e}}var ci=class{constructor(e,n,i,a,o,s=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE,c=``,l=-1){this._scene=e,this._document=n,this._docSkeleton=i,this.anchorNodePosition=a,this.focusNodePosition=o,this.style=s,this._segmentId=c,this._segmentPage=l,O(this,`rangeType`,t.DOC_RANGE_TYPE.RECT),O(this,`_rangeShape`,void 0),O(this,`_current`,!1),O(this,`_startRow`,void 0),O(this,`_startCol`,void 0),O(this,`_endRow`,void 0),O(this,`_endCol`,void 0),O(this,`_tableId`,void 0),this.refresh()}get startOffset(){let{startNodePosition:e}=this;return this._docSkeleton.findCharIndexByPosition(e)}get endOffset(){let{endNodePosition:e}=this;return this._docSkeleton.findCharIndexByPosition(e)}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 e;let t=(e=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:e[this._tableId],{_startCol:n,_endCol:r}=this;if(t==null)throw Error(`Table is not found.`);let{tableColumns:i}=t;return n===0&&r===i.length-1}get spanEntireColumn(){var e;let t=(e=this._docSkeleton.getViewModel().getSnapshot().tableSource)==null?void 0:e[this._tableId],{_startRow:n,_endRow:r}=this;if(t==null)throw Error(`Table is not found.`);let{tableRows:i}=t;return n===0&&r===i.length-1}get spanEntireTable(){return this.spanEntireRow&&this.spanEntireColumn}get startNodePosition(){let{anchorNodePosition:e,focusNodePosition:t}=this;return Hr(e,t)?e:t}get endNodePosition(){let{anchorNodePosition:e,focusNodePosition:t}=this;return Hr(e,t)?t:e}get direction(){let{anchorNodePosition:e,focusNodePosition:n}=this;return Hr(e,n)?t.RANGE_DIRECTION.FORWARD:t.RANGE_DIRECTION.BACKWARD}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var e;(e=this._rangeShape)==null||e.dispose(),this._rangeShape=null}isIntersection(e){let{startRow:n,startColumn:r,endRow:i,endColumn:a}=this,{startRow:o,startColumn:s,endRow:c,endColumn:l}=e,u={left:r,top:n,right:a,bottom:i},d={left:s,top:o,right:l,bottom:c};return t.Rectangle.hasIntersectionBetweenTwoRect(u,d)}refresh(){var e;(e=this._rangeShape)==null||e.hide();let{startNodePosition:t,endNodePosition:n,_document:r,_docSkeleton:i}=this,a=r.getOffsetConfig(),{docsLeft:o,docsTop:s}=a,c=new Yr(a,i).getRangePointData(t,n);if(c==null)return;let{pointGroup:l=[],startRow:u,endRow:d,startColumn:f,endColumn:p,tableId:m}=c;(l==null?void 0:l.length)>0&&this._createOrUpdateRange(l,o,s),this._updateTableInfo(u,d,f,p,m)}_updateTableInfo(e,t,n,r,i){this._startRow=e,this._endRow=t,this._startCol=n,this._endCol=r,this._tableId=i}_createOrUpdateRange(e,n,i){var a;if(this._rangeShape){this._rangeShape.translate(n,i),this._rangeShape.updatePointGroup(e),this._rangeShape.show();return}let o=new r.RegularPolygon(`__DocTableRectRange__`+(0,t.generateRandomId)(6),{pointsGroup:e,fill:((a=this.style)==null?void 0:a.fill)||(0,r.getColor)(t.COLORS.black,.3),left:n,top:i,evented:!1,debounceParentDirty:!1});this._rangeShape=o,this._scene.addObject(o,3)}};function li({textRanges:e,rectRanges:t}){e.forEach(e=>e.dispose()),t.forEach(e=>e.dispose())}function ui(e,t){if(e==null||t==null||e.pageType!==t.pageType||(e.pageType===r.DocumentSkeletonPageType.HEADER||e.pageType===r.DocumentSkeletonPageType.FOOTER)&&e.segmentPage!==t.segmentPage)return!1;let n=(0,r.getDocumentSkeletonColumnPagePathInfo)(e),i=(0,r.getDocumentSkeletonColumnPagePathInfo)(t);return n==null||i==null?n==null&&i==null:n.pageIndex===i.pageIndex&&n.columnGroupId===i.columnGroupId&&n.columnIndex===i.columnIndex}function di(e){return e.nodeType===t.DataStreamTreeNodeType.TABLE?[e]:e.children.flatMap(di)}function fi(e,t){var n,i;let a=(0,r.getDocumentSkeletonColumnPagePathInfo)(e),o=(0,r.getDocumentSkeletonColumnPagePathInfo)(t),s=((n=e.path)==null?void 0:n.indexOf(`page`))??-1,c=((i=t.path)==null?void 0:i.indexOf(`page`))??-1;return s>=0&&c>=0&&s===e.path.length-1&&c===t.path.length-1&&!!a&&!!o&&a.pageIndex===o.pageIndex&&a.columnGroupId===o.columnGroupId&&a.columnIndex===o.columnIndex}function pi(e,t,n){let i=(0,r.getDocumentSkeletonColumnPagePathInfo)(e),a=(0,r.getDocumentSkeletonColumnPagePathInfo)(t);if(!i||!a||i.pageIndex!==a.pageIndex||i.columnGroupId!==a.columnGroupId||i.columnIndex+1!==a.columnIndex)return;let o=n.findCharIndexByPosition(e),s=n.findCharIndexByPosition(t);if(!(o==null||s==null||o<=s))return e}function mi(e,t,n,r,i,a,o,s,c=!0,l=!0){let u=i.findNodePositionByCharIndex(e,c,o,s),d=i.findNodePositionByCharIndex(t,l,o,s);if(u!=null&&d!=null)return new oi(n,r,i,u,d,a,o,s)}function hi(e,t,n,r,i,a,o,s){let c=i.findNodePositionByCharIndex(e,!0,o,s),l=i.findNodePositionByCharIndex(t,!0,o,s);if(c!=null&&l!=null)return new ci(n,r,i,c,l,a,o,s)}function gi(e,t,n,r,i,a,o,s){let c=i.findNodePositionByCharIndex(e,!0,o,s),l=i.findNodePositionByCharIndex(t,!0,o,s);if(c!=null&&l!=null)return _i(c,l,n,r,i,a,o,s)}function _i(e,n,r,i,a,o,s,c){let l=[],u=[],d=[r,i,a,e,n,o,s,c],f=pi(e,n,a);if(f)return l.push(new oi(r,i,a,f,f,o,s,c)),{textRanges:l,rectRanges:u};if(Vr(a,e,n)){if(Br(e,n))return l.push(new oi(...d)),{textRanges:l,rectRanges:u};{let e=si(...d);return u.push(...e),{textRanges:l,rectRanges:u}}}if(zr(e,n)){let e=si(...d);return u.push(...e),{textRanges:l,rectRanges:u}}if(fi(e,n))return l.push(new oi(...d)),{textRanges:l,rectRanges:u};let p=a.getViewModel().getSelfOrHeaderFooterViewModel(s),m=a.findCharIndexByPosition(e),h=a.findCharIndexByPosition(n);if(m==null||h==null)return;let g=m<=h?t.RANGE_DIRECTION.FORWARD:t.RANGE_DIRECTION.BACKWARD,_=Math.min(m,h),v=Math.max(m,h),y=Or(e,n),b=(e,t=!0)=>a.findNodePositionByCharIndex(e,t,s,c)??(e===_?y.start:void 0),x=(e,t=!0)=>a.findNodePositionByCharIndex(e,t,s,c)??(e===v?y.end:void 0),S=(e,n,u=!0)=>{if(e>n)return!0;let d=b(e,!0),f=x(n,u),p=g===t.RANGE_DIRECTION.FORWARD?d:f,m=g===t.RANGE_DIRECTION.FORWARD?f:d;return ui(p,m)?(l.push(new oi(r,i,a,p,m,o,s,c)),!0):!1},C=(e,n,l)=>{let{startIndex:d,endIndex:f,children:p}=e,m=p.find(e=>e.startIndex<=n&&e.endIndex>=n),h=p.find(e=>e.startIndex<=l&&e.endIndex>=l),_=n>d&&n<f?(m==null?void 0:m.startIndex)==null?void 0:m.startIndex+2:d+3,v=l>d&&l<f?(h==null?void 0:h.endIndex)==null?void 0:h.endIndex-3:f-4;if(_==null||v==null)return!1;let y=a.findNodePositionByCharIndex(_,!0,s,c),b=a.findNodePositionByCharIndex(v,!0,s,c);if(y==null||b==null)return!1;let x=g===t.RANGE_DIRECTION.FORWARD?y:b,S=g===t.RANGE_DIRECTION.FORWARD?b:y;return u.push(...si(r,i,a,x,S,o,s,c)),!0},w=(e,t,n)=>{let r=t,i=di(e).sort((e,t)=>e.startIndex-t.startIndex);for(let e of i)if(!(e.endIndex<t||e.startIndex>n)){if(!S(r,Math.min(n,e.startIndex-1),!1)||!C(e,Math.max(t,e.startIndex),Math.min(n,e.endIndex)))return!1;r=e.endIndex+1}return S(r,n)},T=_,E=v;try{for(let e of p.getChildren())for(let n of e.children){let{startIndex:d,endIndex:f,children:p}=n;if(n.nodeType===t.DataStreamTreeNodeType.COLUMN_GROUP&&T<=f&&E>=d){if(T<d&&!S(T,Math.min(E,d-1),!1)){li({textRanges:l,rectRanges:u});return}for(let e of p.filter(e=>e.nodeType===t.DataStreamTreeNodeType.COLUMN)){let t=Math.max(T,e.startIndex+1),n=Math.min(E,e.endIndex-1);if(t<=n&&!w(e,t,n)){li({textRanges:l,rectRanges:u});return}}T=f+1;continue}let m=e.children.indexOf(n),h=e.children[m+1],y=p.find(e=>e.nodeType===t.DataStreamTreeNodeType.TABLE),C=h==null?void 0:h.children.find(e=>e.nodeType===t.DataStreamTreeNodeType.TABLE),D=!1;if(y){let{startIndex:e,endIndex:n,children:d}=y,f=null,p=null;if(_>e&&_<n){let e=d.find(e=>e.startIndex<=_&&e.endIndex>=_);if(e==null){li({textRanges:l,rectRanges:u});return}f=a.findNodePositionByCharIndex(e.startIndex+2,!0,s,c),p=a.findNodePositionByCharIndex(n-4,!0,s,c),T=n+1}else if(v>e&&v<n){let t=d.find(e=>e.startIndex<=v&&e.endIndex>=v);if(t==null){li({textRanges:l,rectRanges:u});return}f=a.findNodePositionByCharIndex(e+3,!0,s,c),p=a.findNodePositionByCharIndex(t.endIndex-3,!0,s,c),E=e-1,D=!0}else if(e>_&&n<v){if(f=a.findNodePositionByCharIndex(e+3,!0,s,c),p=a.findNodePositionByCharIndex(n-4,!0,s,c),T<=e-1){let n=b(T,!0),d=x(e-1,!1),f=g===t.RANGE_DIRECTION.FORWARD?n:d,p=g===t.RANGE_DIRECTION.FORWARD?d:n;if(!ui(f,p)){li({textRanges:l,rectRanges:u});return}l.push(new oi(r,i,a,f,p,o,s,c))}T=n+1}if(f&&p){let e=g===t.RANGE_DIRECTION.FORWARD?f:p,n=g===t.RANGE_DIRECTION.FORWARD?p:f;u.push(...si(r,i,a,e,n,o,s,c))}}if(E===f+1&&!D&&C&&(E=f,D=!0),E>=d&&E<=f||D){let e=b(T,!0),n=x(E,!D),d=g===t.RANGE_DIRECTION.FORWARD?e:n,f=g===t.RANGE_DIRECTION.FORWARD?n:e;if(u.length&&t.Tools.diffValue(d,f))continue;if(!ui(d,f)){li({textRanges:l,rectRanges:u});return}l.push(new oi(r,i,a,d,f,o,s,c))}}return{textRanges:l,rectRanges:u}}catch(e){throw li({textRanges:l,rectRanges:u}),e}}function vi(e){let t=e==null?void 0:e.getCanvasElement();if(!t)return{left:0,top:0};let{top:n,left:i}=(0,r.getOffsetRectForDom)(t);return{left:i,top:n}}function yi(e){var t;let n=(t=e.parent)==null?void 0:t.parent,r=n==null?void 0:n.parent;if(n==null||r==null)return;let{paragraphIndex:i}=n,a=r.lines.filter(e=>e.paragraphIndex===i),o=-1,s=``,c=!1;for(let t of a)for(let n of t.divides)for(let t of n.glyphGroup)c||(o+=t.count),t===e&&(c=!0),s+=t.count>0?t.content:``;return{st:a[0].st,ed:i,content:s,nodeIndex:o}}function bi(e){let{startOffset:t,endOffset:n,collapsed:r,rangeType:i,startNodePosition:a,endNodePosition:o,direction:s,segmentId:c,segmentPage:l,style:u}=e;return{startOffset:t,endOffset:n,collapsed:r,rangeType:i,startNodePosition:a,endNodePosition:o,direction:s,segmentId:c,segmentPage:l,style:u,isActive:e.isActive()}}function xi(e){let t=bi(e),{startRow:n,startColumn:r,endRow:i,endColumn:a,tableId:o,spanEntireRow:s,spanEntireColumn:c,spanEntireTable:l}=e;return{...t,startRow:n,startColumn:r,endRow:i,endColumn:a,tableId:o,spanEntireRow:s,spanEntireColumn:c,spanEntireTable:l}}function Si(e){let t=new Intl.Segmenter(void 0,{granularity:`word`});return Array.from(t.segment(e)).filter(e=>e.isWordLike).map(e=>({start:e.index,end:e.index+e.segment.length}))}function Ci(e,t,n){if(t<0)return null;let r=Si(e).find(e=>e.start<=t&&t<e.end);return r==null?null:{startOffset:n+r.start,endOffset:n+r.end}}function wi(e,n,r,i){if(n<0)return null;let a=Si(e);if(i===t.Direction.LEFT){for(let e=a.length-1;e>=0;e--){let t=a[e];if(t.start<n)return r+t.start}return r}if(i===t.Direction.RIGHT){let t=a.find(e=>e.end>n);return r+((t==null?void 0:t.end)??e.length)}return null}let J=class extends t.RxDisposable{get isOnPointerEvent(){return this._onPointerEvent}get isFocusing(){return this._input===this._getOwnerDocument().activeElement}get canFocusing(){let e=this._getOwnerDocument(),t=e.activeElement;return!this._shouldPreserveExternalFocus()&&(this.isFocusing||t===e.body||t===null||t instanceof HTMLElement&&this._containsCurrentEmbedRuntimeElement(t))}cancelPointerSelection(){this._onPointerEvent&&(this._scenePointerMoveSubs.forEach(e=>e.unsubscribe()),this._scenePointerUpSubs.forEach(e=>e.unsubscribe()),this._scenePointerMoveSubs=[],this._scenePointerUpSubs=[],this._onPointerEvent=!1,this._anchorNodePosition=null,this._focusNodePosition=null,this._removeAllRanges(),this._removeAllCacheRanges(),this._disposeScrollTimers(),this._context.scene.enableObjectsEvent())}constructor(e,t,n,o,s,c,l){super(),this._context=e,this._layoutService=t,this._logService=n,this._univerInstanceService=o,this._docSkeletonManagerService=s,this._embedInteractionBoundaryService=c,this._embedRuntimeFocusCoordinator=l,O(this,`_onInputBefore$`,new a.Subject),O(this,`onInputBefore$`,this._onInputBefore$.asObservable()),O(this,`_onKeydown$`,new a.Subject),O(this,`onKeydown$`,this._onKeydown$.asObservable()),O(this,`_onInput$`,new a.Subject),O(this,`onInput$`,this._onInput$.asObservable()),O(this,`_onCompositionstart$`,new a.BehaviorSubject(null)),O(this,`onCompositionstart$`,this._onCompositionstart$.asObservable()),O(this,`_onCompositionupdate$`,new a.BehaviorSubject(null)),O(this,`onCompositionupdate$`,this._onCompositionupdate$.asObservable()),O(this,`_onCompositionend$`,new a.BehaviorSubject(null)),O(this,`onCompositionend$`,this._onCompositionend$.asObservable()),O(this,`_onSelectionStart$`,new a.BehaviorSubject(null)),O(this,`onSelectionStart$`,this._onSelectionStart$.asObservable()),O(this,`onChangeByEvent$`,(0,a.merge)(this._onInput$,this._onKeydown$.pipe((0,a.filter)(e=>e.event.keyCode===i.KeyCode.BACKSPACE)),this._onCompositionend$)),O(this,`_onPaste$`,new a.Subject),O(this,`onPaste$`,this._onPaste$.asObservable()),O(this,`_textSelectionInner$`,new a.BehaviorSubject(null)),O(this,`textSelectionInner$`,this._textSelectionInner$.asObservable()),O(this,`_onFocus$`,new a.Subject),O(this,`onFocus$`,this._onFocus$.asObservable()),O(this,`_onBlur$`,new a.Subject),O(this,`onBlur$`,this._onBlur$.asObservable()),O(this,`_onPointerDown$`,new a.Subject),O(this,`onPointerDown$`,this._onPointerDown$.asObservable()),O(this,`_container`,void 0),O(this,`_inputParent`,void 0),O(this,`_input`,void 0),O(this,`_scrollTimers`,[]),O(this,`_rangeList`,[]),O(this,`_rangeListCache`,[]),O(this,`_rectRangeList`,[]),O(this,`_rectRangeListCache`,[]),O(this,`_anchorNodePosition`,null),O(this,`_focusNodePosition`,null),O(this,`_currentSegmentId`,``),O(this,`_currentSegmentPage`,-1),O(this,`_segmentContext$`,new a.BehaviorSubject({segmentId:``,segmentPage:-1})),O(this,`segmentContext$`,this._segmentContext$.asObservable()),O(this,`_selectionStyle`,r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE),O(this,`_onPointerEvent`,!1),O(this,`_viewPortObserverMap`,new Map),O(this,`_isIMEInputApply`,!1),O(this,`_scenePointerMoveSubs`,[]),O(this,`_scenePointerUpSubs`,[]),O(this,`_reserveRanges`,!1),this._initDOM(),this._registerContainer(),this._setSystemHighlightColorToStyle(),this._listenCurrentUnitChange()}_listenCurrentUnitChange(){this._univerInstanceService.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{e!=null&&e.getUnitId()!==this._context.unitId&&!this._reserveRanges&&this.removeAllRanges()})}get activeViewPort(){return this._context.scene.getViewports()[0]}setSegment(e){this._currentSegmentId!==e&&(this._currentSegmentId=e,this._segmentContext$.next({segmentId:e,segmentPage:this._currentSegmentPage}))}getSegment(){return this._currentSegmentId}setSegmentPage(e){this._currentSegmentPage!==e&&(this._currentSegmentPage=e,this._segmentContext$.next({segmentId:this._currentSegmentId,segmentPage:e}))}getSegmentPage(){return this._currentSegmentPage}setReserveRangesStatus(e){this._reserveRanges=e}_setRangeStyle(e=r.NORMAL_TEXT_SELECTION_PLUGIN_STYLE){this._selectionStyle=e}addDocRanges(e,n=!0,r){let{_currentSegmentId:i,_currentSegmentPage:a,_selectionStyle:o}=this,{scene:s,mainComponent:c}=this._context,l=c,u=this._docSkeletonManagerService.getSkeleton(),d=(e,t,n)=>{let r=gi(e,t,s,l,u,n,i,a);if(r==null)return;let{textRanges:o,rectRanges:c}=r;for(let e of o)this._addTextRange(e);this._addRectRanges(c)};for(let n of e){let{startOffset:e,endOffset:r,rangeType:c,startNodePosition:f,endNodePosition:p}=n,m=n.style??o;if(c!==t.DOC_RANGE_TYPE.RECT&&e===r){let e=ri(s,{...n,segmentId:i,segmentPage:a,style:m},u,l);e&&this._addTextRange(e)}else if(c===t.DOC_RANGE_TYPE.RECT){let t=hi(e,r,s,l,u,m,i,a);t&&this._addRectRanges([t])}else if(c===t.DOC_RANGE_TYPE.TEXT)try{let t=null;t=f&&p?mi(f.isBack?e:e-1,p.isBack?r:r-1,s,l,u,m,i,a,f.isBack,p.isBack):mi(e,r,s,l,u,m,i,a),t&&this._addTextRange(t)}catch{d(e,r,m)}else d(e,r,m)}this._hideCollapsedCaretsForVisibleSelection(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:i,segmentPage:a,style:o,isEditing:n,options:r}),!(!e.length||(r==null?void 0:r.shouldFocus)===!1)&&this._updateInputPosition(r==null?void 0:r.forceFocus)}setCursorManually(e,n){let r=this._findNodeByCoord(e,n,{strict:!0,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),i=this._getNodePosition(r);if(i==null){this._removeAllRanges();return}(r==null?void 0:r.node.streamType)===t.DataStreamTreeTokenType.PARAGRAPH&&(i.isBack=!0),this._createTextRangeByAnchorPosition(i),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1})}sync(){this._updateInputPosition()}setInputPosition(e,t){this._positionInput(e,t)}activate(e,t,n=!1){this._positionInput(e,t),(n&&!this._shouldPreserveExternalFocus()||!n&&this.canFocusing)&&this.focus()}_positionInput(e,t){this._ensureHostContainer(),this._container.style.position=`fixed`;let n=e,r=t,i=this._container.offsetParent;if(i){let e=i.getBoundingClientRect();n-=e.left,r-=e.top}this._container.style.left=`${n}px`,this._container.style.top=`${r}px`,this._container.style.zIndex=`1000`}hasFocus(){return this._getOwnerDocument().activeElement===this._input}focus(){this._input.hasAttribute(`tabindex`)||(this._input.tabIndex=-1),this._input.focus({preventScroll:!0})}blur(){this._input.blur()}deactivate(){this._container.style.left=`0px`,this._container.style.top=`0px`}__handleDblClick(e){let{offsetX:t,offsetY:n}=e,r=this._findNodeByCoord(t,n,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(r==null||r.node==null)return;let i=yi(r.node);if(i==null)return;let{content:a,st:o,nodeIndex:s}=i;if(s===-1)return;let c=Ci(a,s,o);if(c!=null){this.removeAllRanges();let e=[{startOffset:c.startOffset,endOffset:c.endOffset}];this.addDocRanges(e,!1,{forceFocus:!0})}}__handleTripleClick(e){let{offsetX:t,offsetY:n}=e,r=this._findNodeByCoord(t,n,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage});if(r==null||r.node==null)return;let i=yi(r.node);if(i==null)return;this.removeAllRanges();let{st:a,ed:o}=i,s=[{startOffset:a,endOffset:o}];this.addDocRanges(s,!1,{forceFocus:!0})}__onPointDown(e){var n,i;let{scene:a,mainComponent:o}=this._context,s=this._docSkeletonManagerService.getSkeleton(),{offsetX:c,offsetY:l}=e,u=this._findNodeByCoord(c,l,{strict:!1,segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage}),d=this._getNodePosition(u);if(d==null||u==null){this._removeAllRanges();return}(u==null?void 0:u.node.streamType)===t.DataStreamTreeTokenType.PARAGRAPH&&(d.isBack=!0);let f=this._textSelectionInner$.value;if(u&&e.button===2&&f){let e=s.findCharIndexByPosition(d);if(typeof e==`number`&&f.textRanges.some(t=>t.startOffset<=e&&t.endOffset>e)||typeof e==`number`&&f.rectRanges.some(t=>t.startOffset<=e&&t.endOffset>=e))return}let{segmentId:p,segmentPage:m}=u;p&&this._currentSegmentId&&p!==this._currentSegmentId&&this.setSegment(p),p&&m!==this._currentSegmentPage&&this.setSegmentPage(m),this._anchorNodePosition=d,e.shiftKey&&this._getActiveRangeInstance()?this._updateActiveRangePosition(d):e.ctrlKey?this._removeAllCollapsedTextRanges():this._isEmpty()||this._removeAllRanges(),a.disableObjectsEvent();let h=r.ScrollTimer.create(a);this._scrollTimers.push(h),h.startScroll(c,l),this._onSelectionStart$.next((n=this._getActiveRangeInstance())==null?void 0:n.startNodePosition),(i=a.getTransformer())==null||i.clearSelectedObjects();let g=c,_=l;this._onPointerEvent=!0,this._scenePointerMoveSubs.push(a.onPointerMove$.subscribeEvent(e=>{let{offsetX:t,offsetY:n}=e;a.setCursor(r.CURSOR_TYPE.TEXT),!(Math.sqrt((t-g)**2+(n-_)**2)<3)&&(this._tryMoving(t,n),h.scrolling(t,n,()=>{this._tryMoving(t,n)}),g=t,_=n)})),this._scenePointerUpSubs.push(a.onPointerUp$.subscribeEvent(()=>{if([...this._scenePointerMoveSubs,...this._scenePointerUpSubs].forEach(e=>{e.unsubscribe()}),this._onPointerEvent=!1,a.enableObjectsEvent(),this._anchorNodePosition&&!this._focusNodePosition){if(e.ctrlKey){this._disposeScrollTimers();return}let t=new oi(a,o,s,this._anchorNodePosition,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(t)}else if(this._anchorNodePosition&&this._focusNodePosition){for(let t of this._rangeListCache)e.ctrlKey&&t.collapsed?t.dispose():this._addTextRange(t);this._addRectRanges(this._rectRangeListCache),this._rangeListCache=[],this._rectRangeListCache=[]}this._anchorNodePosition=null,this._focusNodePosition=null;let t={textRanges:this._getAllTextRanges(),rectRanges:this._getAllRectRanges(),segmentId:this._currentSegmentId,segmentPage:this._currentSegmentPage,style:this._selectionStyle,isEditing:!1};this._textSelectionInner$.next(t),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(){let{r:e,g:t,b:n,a:i}=(0,r.getSystemHighlightColor)(),a={strokeWidth:1,stroke:`rgba(0, 0, 0, 0)`,strokeActive:`rgba(0, 0, 0, 1)`,fill:`rgba(${e}, ${t}, ${n}, ${i??.3})`};this._setRangeStyle(a)}_getAllTextRanges(){return this._rangeList.map(bi)}_getAllRectRanges(){return this._rectRangeList.map(xi)}getAllTextRanges(){return this._getAllTextRanges()}getAllRectRanges(){return this._getAllRectRanges()}_getActiveRange(){let e=this._rangeList.find(e=>e.isActive());if(e==null)return null;let{startOffset:t,endOffset:n}=e;return t==null||n==null?null:bi(e)}_getActiveRangeInstance(){return this._rangeList.find(e=>e.isActive())}dispose(){super.dispose(),this._detachEvent(),this._removeAllRanges(),this._container.remove()}_initDOM(){let{unitId:e}=this._context,t=document.createElement(`div`);t.style.position=`fixed`,t.style.left=`0px`,t.style.top=`0px`,t.id=`univer-doc-selection-container-${e}`;let n=document.createElement(`div`),r=document.createElement(`div`);n.appendChild(r),t.appendChild(n),this._container=t,this._inputParent=n,this._input=r,this._initInput(),this._initInputEvents();let i=this._layoutService.rootContainerElement;(i!=null&&i.isConnected?i:document.body).appendChild(t)}_registerContainer(){this.disposeWithMe(this._layoutService.registerContainerElement(this._container))}_initInput(){this._inputParent.style.cssText=`
23
23
  position:absolute;
24
24
  height:1px;
25
25
  width:1px;
@@ -35,5 +35,5 @@ td.UniverTableCell, th.UniverTableCell{mso-padding-alt:0cm 5.4pt 0cm 5.4pt;}
35
35
  caret-color: transparent;
36
36
  white-space: pre-wrap;
37
37
  user-select: text;
38
- `}_ensureHostContainer(){let e=this._layoutService.rootContainerElement;if(e!=null&&e.isConnected){this._container.parentElement!==e&&e.appendChild(this._container);return}this._container.parentElement!==document.body&&document.body.appendChild(this._container)}_getOwnerDocument(){var e;return((e=this._container)==null?void 0:e.ownerDocument)??document}_getNodePosition(e){if(e==null)return;let{node:t,ratioX:n,segmentPage:i}=e,a=this._docSkeletonManagerService.getSkeleton().findPositionByGlyph(t,i);if(a==null)return;let o=n<.5;return t.glyphType===r.GlyphType.LIST&&(o=!0),{...a,isBack:o}}_interactTextRanges(e){let t=[];for(let n of this._rangeList){if(e.some(e=>e.isIntersection(n))){n.dispose();continue}t.push(n)}this._rangeList=t}_interactRectRanges(e){let t=[];for(let n of this._rectRangeList){if(e.some(e=>e.isIntersection(n))){n.dispose();continue}t.push(n)}this._rectRangeList=t}_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(){let e=[];for(let t of this._rangeList){if(t.collapsed){t.dispose();continue}e.push(t)}this._rangeList=e}_hideCollapsedCaretsForVisibleSelection(){var e;let t=this._rangeList.filter(e=>!e.collapsed);(t.length!==0||this._rectRangeList.length!==0)&&(this._deactivateAllTextRanges(),(e=t[t.length-1])==null||e.activate())}_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();let{scene:t,mainComponent:n}=this._context,r=new pa(t,n,this._docSkeletonManagerService.getSkeleton(),e,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(r)}_updateActiveRangePosition(e){let t=this._getActiveRangeInstance();if(t==null||t.anchorNodePosition==null){this._logService.error(`[DocSelectionRenderService] _updateActiveRangeFocusPosition: active range has no anchor`);return}this._removeAllRanges(),this._anchorNodePosition=t.anchorNodePosition,this._focusNodePosition=e;let{scene:n,mainComponent:r}=this._context,i=this._docSkeletonManagerService.getSkeleton(),{_anchorNodePosition:a,_focusNodePosition:o,_selectionStyle:s,_currentSegmentId:c,_currentSegmentPage:l}=this;if(a==null||o==null||r==null)return;let u=wa(a,o,n,r,i,s,c,l);if(u==null)return;let{textRanges:d,rectRanges:f}=u;this._addTextRangesToCache(d),this._addRectRangesToCache(f),this.deactivate()}_isEmpty(){return this._rangeList.length===0&&this._rectRangeList.length===0}_getCanvasOffset(){var e;return Ta((e=this._context.scene)==null?void 0:e.getEngine())}_updateInputPosition(e=!1){let t=this._getActiveRangeInstance(),n=t==null?void 0:t.getAnchor();if(!n||n&&!n.visible||this.activeViewPort==null){if(this._shouldPreserveExternalFocus())return;this.focus();return}let{left:i,top:a}=n,{x:o,y:s}=this.activeViewPort.getAbsoluteVector(r.Vector2.FromArray([i,a])),{left:c,top:l}=this._getCanvasOffset();c+=o,l+=s,this.activate(c,l,e)}_tryMoving(e,t){try{this._moving(e,t)}catch(e){this._logService.error(`[DocSelectionRenderService] Failed to update moving selection`,e)}}_moving(e,n){var r;let{_currentSegmentId:i,_currentSegmentPage:a}=this,o=this._findNodeByCoord(e,n,{strict:!0,segmentId:i,segmentPage:a}),s=this._getNodePosition(o);if(s==null||o==null)return;let c=o==null?void 0:o.node.parent,l=c==null?void 0:c.glyphGroup[c.glyphGroup.indexOf(o.node)+1];(o==null?void 0:o.node.streamType)===t.DataStreamTreeTokenType.PARAGRAPH&&(l==null?void 0:l.streamType)===t.DataStreamTreeTokenType.SECTION_BREAK&&(s.isBack=!0),this._shouldSnapBackwardFocusToGlyphStart(o,s)&&(s.isBack=!0);let{_anchorNodePosition:u,_selectionStyle:d}=this,{scene:f,mainComponent:p}=this._context,m=this._docSkeletonManagerService.getSkeleton();if(u==null||p==null)return;let h=wa(u,s,f,p,m,d,i,a);if(h==null)return;let{textRanges:g,rectRanges:_}=h;if(!this._hasVisibleSelectionRanges(g,_)){g.forEach(e=>e.dispose()),_.forEach(e=>e.dispose());return}this._focusNodePosition=s,this._removeAllCacheRanges(),this._rangeList.length>0&&g.length>0&&this._interactTextRanges(g),this._rectRangeList.length>0&&_.length>0&&this._interactRectRanges(_),this._addTextRangesToCache(g),this._addRectRangesToCache(_),this.deactivate(),(r=this._context.scene)==null||(r=r.getEngine())==null||r.setCapture()}_hasVisibleSelectionRanges(e,t){return t.length>0||e.some(e=>!e.collapsed)}_shouldSnapBackwardFocusToGlyphStart(e,t){let n=this._anchorNodePosition;return!n||!this._isBeforeNodePosition(t,n)?!1:this._isFirstSelectableGlyphInDivide(e)}_isBeforeNodePosition(e,t){return Pi(e,t)?e.page!==t.page||e.section!==t.section||e.column!==t.column||e.line!==t.line||e.divide!==t.divide||e.glyph!==t.glyph:!1}_isFirstSelectableGlyphInDivide(e){var t;let n=(t=e.node.parent)==null?void 0:t.glyphGroup;return n?n.find(e=>e.content&&e.glyphType!==r.GlyphType.LIST)===e.node:!1}__attachScrollEvent(){let e=this.activeViewPort;if(!e)return;let{unitId:t}=this._context;if(this._viewPortObserverMap.has(t))return;let n=e.onScrollAfter$.subscribeEvent(e=>{if(!e.viewport)return;let t=this._getActiveRangeInstance();t==null||t.activeStatic()}),r=e.onScrollEnd$.subscribeEvent(e=>{let t=e.viewport;if(!t)return;let n=t.calcViewportInfo(),r=this._getActiveRangeInstance(),i=r==null?void 0:r.getAnchor();if(!(!i||i&&!i.visible)){if(n){let{left:e,top:t,right:a,bottom:o}=n.viewBound;if(i.left<e||i.left>a||i.top<t||i.top>o){r==null||r.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(t,{scrollBefore:n,scrollStop:r})}_initInputEvents(){this.disposeWithMe((0,a.fromEvent)(this._input,`keydown`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._isIMEInputApply||(this._stopEmbedOwnedEditorShortcutPropagation(e),this._eventHandle(e,e=>{this._onKeydown$.next(e)}))})),this.disposeWithMe((0,a.fromEvent)(this._input,`input`).subscribe(e=>{if(!this._shouldSuppressHostHiddenEditorEvent(e)&&e.inputType!==`historyUndo`&&e.inputType!==`historyRedo`){if(this._rectRangeList.length>0&&this._getActiveRange()==null)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply||this._eventHandle(e,e=>{this._onInputBefore$.next(e),this._onInput$.next(e)})}})),this.disposeWithMe((0,a.fromEvent)(this._input,`compositionstart`).subscribe(e=>{if(!this._shouldSuppressHostHiddenEditorEvent(e)){if(this._rectRangeList.length>0&&this._getActiveRange()==null)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply=!0,this._eventHandle(e,e=>{this._onCompositionstart$.next(e)})}})),this.disposeWithMe((0,a.fromEvent)(this._input,`compositionend`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||(this._isIMEInputApply=!1,this._eventHandle(e,e=>{this._onCompositionend$.next(e)}))})),this.disposeWithMe((0,a.fromEvent)(this._input,`compositionupdate`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onInputBefore$.next(e),this._onCompositionupdate$.next(e)})})),this.disposeWithMe((0,a.fromEvent)(this._input,`paste`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onPaste$.next(e)})})),this.disposeWithMe((0,a.fromEvent)(this._input,`focus`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onFocus$.next(e)})})),this.disposeWithMe((0,a.fromEvent)(this._input,`blur`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onBlur$.next(e)})}))}_eventHandle(e,t){let n=this._input.textContent||``;this._input.innerHTML=``,t({event:e,content:n,activeRange:this._getActiveRange(),rangeList:this._getAllTextRanges()})}_shouldSuppressHostHiddenEditorEvent(e){var n,r,i;let a=this._context.unitId;return(0,t.isInternalEditorID)(a)||(n=this._embedRuntimeFocusCoordinator)!=null&&n.isChildUnitRuntimeEvent(a,e.target,e)||(r=this._embedRuntimeFocusCoordinator)!=null&&r.isChildUnitInActiveSession(a)||e.target instanceof HTMLElement&&this._containsCurrentEmbedRuntimeElement(e.target)?!1:(i=this._embedRuntimeFocusCoordinator)!=null&&i.shouldSuppressHostInteraction(a,e.target,e)?(e.stopPropagation(),e.cancelable&&e.preventDefault(),e.type===`focus`&&e.target instanceof HTMLElement&&e.target.blur(),!0):!1}_stopEmbedOwnedEditorShortcutPropagation(e){!(e instanceof KeyboardEvent)||!this._getCurrentEmbedOwner()||e.key.toLowerCase()===`a`&&(e.metaKey||e.ctrlKey)&&e.stopPropagation()}_getTransformCoordForDocumentOffset(e,t){let{documentTransform:n}=this._context.mainComponent.getOffsetConfig();if(this.activeViewPort==null||n==null)return;let i=this.activeViewPort.transformVector2SceneCoord(r.Vector2.FromArray([e,t]));if(i)return n.clone().invert().applyPoint(i)}_findNodeByCoord(e,t,n){let i=this._getTransformCoordForDocumentOffset(e,t);if(i==null)return;let a=this._context.mainComponent,o=this._docSkeletonManagerService.getSkeleton(),{pageLayoutType:s=r.PageLayoutType.VERTICAL,pageMarginLeft:c,pageMarginTop:l}=a.getOffsetConfig();return o.findNodeByCoord(i,s,c,l,n)}_shouldPreserveExternalFocus(){var e,t,n,r,i,a;let o=this._getOwnerDocument(),s=o.activeElement,c=this._getCurrentEmbedOwner();return(e=this._embedRuntimeFocusCoordinator)!=null&&e.isChildUnitInActiveSession(this._context.unitId)||(t=this._embedRuntimeFocusCoordinator)!=null&&t.isChildUnitRuntimeEvent(this._context.unitId,s)||s instanceof HTMLElement&&this._containsOwnEditorElement(s)||s instanceof HTMLElement&&this._containsCurrentEmbedRuntimeElement(s)?!1:(n=this._embedRuntimeFocusCoordinator)!=null&&n.shouldSuppressHostInteraction(this._context.unitId,s)||c&&(r=this._embedInteractionBoundaryService)!=null&&r.contains(c,s)?!0:s instanceof HTMLElement&&this._containsCurrentLayoutElement(s)?!1:((i=this._embedInteractionBoundaryService)==null||(a=i.hasRecentInteractionFor)==null?void 0:a.call(i,c,o))===!0}_containsCurrentEmbedRuntimeElement(e){let t=this._getCurrentEmbedOwner();return t?this._getElementEmbedOwner(e)===t&&this._containsCurrentLayoutElement(e):!1}_getCurrentEmbedOwner(){var e;let t=(e=this._layoutService)==null?void 0:e.rootContainerElement;return this._getElementEmbedOwner(this._input)??this._getElementEmbedOwner(this._container)??this._getElementEmbedOwner(t instanceof HTMLElement?t:void 0)}_getElementEmbedOwner(e){var t;if(!(!e||typeof e.closest!=`function`))return((t=e.closest(`[data-embed-interaction-boundary-owner]`))==null?void 0:t.getAttribute(`data-embed-interaction-boundary-owner`))??void 0}_containsOwnEditorElement(e){var t,n;return this._container===e||this._input===e||typeof((t=this._container)==null?void 0:t.contains)==`function`&&this._container.contains(e)||typeof((n=this._inputParent)==null?void 0:n.contains)==`function`&&this._inputParent.contains(e)}_containsCurrentLayoutElement(e){var t,n;let r=this._layoutService;if(!r){var i;return this._container===e||typeof((i=this._container)==null?void 0:i.contains)==`function`&&this._container.contains(e)}if((t=r.checkElementInCurrentContainers)!=null&&t.call(r,e))return!0;let a=r.rootContainerElement;return a===e||(a==null?void 0:a.contains(e))===!0||this._container===e||typeof((n=this._container)==null?void 0:n.contains)==`function`&&this._container.contains(e)}_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(),this._segmentContext$.complete()}};Y=A([k(1,i.ILayoutService),k(2,t.ILogService),k(3,t.IUniverInstanceService),k(4,(0,t.Inject)(n.DocSkeletonManagerService)),k(5,(0,t.Optional)(Ai)),k(6,(0,t.Optional)(ji))],Y);let Ma={id:`doc.command.switch-mode`,type:t.CommandType.COMMAND,handler:e=>{var i,a;let o=e.get(t.ICommandService),s=e.get(r.IRenderManagerService),c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(l==null)return!1;let u=l.getUnitId(),d=(i=s.getRenderUnitById(u))==null?void 0:i.with(n.DocSkeletonManagerService).getSkeleton(),f=(a=s.getRenderUnitById(u))==null?void 0:a.with(Y);if(d==null||f==null)return!1;let p=f==null?void 0:f.getSegment(),m=f==null?void 0:f.getSegmentPage(),h=l.getSnapshot().documentStyle.documentFlavor,g=c.getDocRanges(),_={id:n.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:h===t.DocumentFlavor.TRADITIONAL&&p?[]:g}},v=t.JSONX.getInstance(),y=[],b;if(b=h===void 0?v.insertOp([`documentStyle`,`documentFlavor`],t.DocumentFlavor.MODERN):h===t.DocumentFlavor.MODERN?v.replaceOp([`documentStyle`,`documentFlavor`],h,t.DocumentFlavor.TRADITIONAL):v.replaceOp([`documentStyle`,`documentFlavor`],h,t.DocumentFlavor.MODERN),b)y.push(b);else return!1;if(h!==t.DocumentFlavor.MODERN){let{drawings:e={},body:n}=l.getSnapshot(),r=(n==null?void 0:n.customBlocks)??[];for(let n in e){var x,S;let i=e[n],a=r.find(e=>e.blockId===n);if(a==null)continue;let o=i.docTransform.positionV,{relativeFrom:s,posOffset:c}=o;if(s===t.ObjectRelativeFromV.PARAGRAPH)continue;let{startIndex:l}=a,u=d.findNodeByCharIndex(l,p,m),f=u==null||(x=u.parent)==null?void 0:x.parent,h=f==null?void 0:f.parent,g=h==null?void 0:h.lines.find(e=>e.paragraphIndex===(f==null?void 0:f.paragraphIndex)&&e.paragraphStart),_=h==null||(S=h.parent)==null?void 0:S.parent;if(u==null||f==null||g==null||h==null||_==null)continue;let b=0;s===t.ObjectRelativeFromV.LINE?b-=f.top:s===t.ObjectRelativeFromV.PAGE&&(b+=_.marginTop),b+=g.top;let C={...o,relativeFrom:t.ObjectRelativeFromV.PARAGRAPH,posOffset:(c??0)-b},w=v.replaceOp([`drawings`,n,`docTransform`,`positionV`],o,C);w&&y.push(w)}}return _.params.actions=y.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(_.id,_.params)}};function Na(e){let{tableDataStream:n,tableParagraphs:r,sectionBreaks:i,tableId:a,textRun:o}=e,s=e.existingParagraphIds??new Set(r.map(e=>e.paragraphId)),c=`${n}${t.DataStreamTreeTokenType.PARAGRAPH}`,l=n.length;return{dataStream:c,paragraphs:[...r,{startIndex:l,paragraphId:(0,t.createParagraphId)(s)}],sectionBreaks:i,textRuns:[{...o,st:0,ed:l}],tables:[{startIndex:0,endIndex:l,tableId:a}]}}function Pa(e,n){return n<=0||e.dataStream[n-1]!==t.DataStreamTreeTokenType.PARAGRAPH}function Fa(e,n){return n===0&&e.dataStream[0]===t.DataStreamTreeTokenType.PARAGRAPH?1:n}function Ia(e,t){return!(La(e.tables,t)||Ra(e.blockRanges,t)||za(e.customBlocks,t))}function La(e,n){return!!(e!=null&&e.some(e=>(0,t.containsInteriorInsertionOffset)((0,t.getTableRangeInterval)(e),n)))}function Ra(e,n){return!!(e!=null&&e.some(e=>(0,t.containsInteriorInsertionOffset)((0,t.getBlockRangeInterval)(e),n)))}function za(e,t){return!!(e!=null&&e.some(e=>e.startIndex===t))}let Ba={id:`doc.command.create-table`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i,a,o;let{rowCount:s,colCount:c}=r,l=e.get(n.DocSelectionManagerService),u=e.get(t.IUniverInstanceService),d=e.get(t.ICommandService),f=e.get(I),p=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(p==null)return!1;let m=null;try{m=e.get(n.DocContentInsertService).consumeInsertRange(p.getUnitId())}catch{m=null}let h=l.getActiveTextRange();if(h==null&&m==null)return!1;let g=(m==null?void 0:m.segmentId)??(h==null?void 0:h.segmentId)??``,_=h==null?void 0:h.segmentPage,v=p==null||(i=p.getSelfOrHeaderFooterModel(g))==null?void 0:i.getBody();if(v==null)return!1;let y=p.getUnitId(),b=B(e,y),x=b==null?void 0:b.getSkeleton();if(x==null)return!1;let C=Fa(v,(m==null?void 0:m.startOffset)??h.startOffset);if(!Ia(v,C))return!1;let w=(v.paragraphs??[]).find(e=>(0,t.getParagraphContentStartOffset)(v,e)<C&&C<=e.startIndex),T=x.findNodeByCharIndex(C,g,_);if(T==null)return!1;let E=Pa(v,C),D=new t.TextX,O=t.JSONX.getInstance(),k=[],A=C+(E?4:3),j=[{startOffset:A,endOffset:A,collapsed:!0}],M={id:n.RichTextEditingMutation.id,params:{unitId:y,actions:[],textRanges:j}};C>0&&D.push({t:t.TextXActionType.RETAIN,len:C}),E&&D.push({t:t.TextXActionType.INSERT,body:{dataStream:t.DataStreamTreeTokenType.PARAGRAPH,paragraphs:(0,n.generateParagraphs)(t.DataStreamTreeTokenType.PARAGRAPH,w)},len:1});let N=S(v,C,f.getDefaultStyle(),f.getStyleCache()),{dataStream:P,paragraphs:F,sectionBreaks:L}=ee(s,c),R=(a=T.parent)==null||(a=a.parent)==null||(a=a.parent)==null||(a=a.parent)==null?void 0:a.parent;if(R==null)return!1;let{pageWidth:z,marginLeft:V,marginRight:H}=R,U=W(s,c,z-V-H),G=Na({tableDataStream:P,tableParagraphs:F,sectionBreaks:L,tableId:U.tableId,textRun:N,existingParagraphIds:new Set((o=v.paragraphs)==null?void 0:o.map(e=>e.paragraphId))});D.push({t:t.TextXActionType.INSERT,body:G,len:G.dataStream.length});let te=(0,t.getRichTextEditPath)(p,g);k.push(O.editOp(D.serialize(),te));let ne=O.insertOp([`tableSource`,U.tableId],U);return k.push(ne),M.params.actions=k.reduce((e,n)=>t.JSONX.compose(e,n),null),!!d.syncExecuteCommand(M.id,M.params)}},Va={id:`doc.table.delete-rows`,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=i.getRectRanges(),c=G(i.getActiveTextRange(),s);if(c==null)return!1;let{segmentId:l}=c,u=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=u==null||(r=u.getSelfOrHeaderFooterModel(l))==null?void 0:r.getBody();if(u==null||d==null)return!1;let f=B(e,u.getUnitId());if(f==null)return!1;let p=f.getViewModel(),m=u==null?void 0:u.getUnitId(),h=new t.TextX,g=t.JSONX.getInstance(),_=oe(c,p);if(_==null)return!1;let{offset:v,rowIndexes:y,len:b,tableId:x,cursor:S,selectWholeTable:C}=_;if(C)return o.executeCommand(Ua.id);let w=[],T=[{startOffset:S,endOffset:S,collapsed:!0}],E={id:n.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:T}};v>0&&h.push({t:t.TextXActionType.RETAIN,len:v}),h.push({t:t.TextXActionType.DELETE,len:b});let D=(0,t.getRichTextEditPath)(u,l);w.push(g.editOp(h.serialize(),D));for(let e of y.reverse()){let t=g.removeOp([`tableSource`,x,`tableRows`,e]);w.push(t)}return E.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(E.id,E.params)}},Ha={id:`doc.table.delete-columns`,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=i.getRectRanges(),c=G(i.getActiveTextRange(),s);if(c==null)return!1;let{segmentId:l}=c,u=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=u==null||(r=u.getSelfOrHeaderFooterModel(l))==null?void 0:r.getBody();if(u==null||d==null)return!1;let f=B(e,u.getUnitId());if(f==null)return!1;let p=f.getViewModel(),m=u==null?void 0:u.getUnitId(),h=new t.TextX,g=t.JSONX.getInstance(),_=K(c,p);if(_==null)return!1;let{offsets:v,columnIndexes:y,tableId:b,cursor:x,rowCount:S,selectWholeTable:C}=_;if(C)return o.executeCommand(Ua.id);let w=[],T=[{startOffset:x,endOffset:x,collapsed:!0}],E={id:n.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:T}};for(let e of v){let{retain:n,delete:r}=e;n>0&&h.push({t:t.TextXActionType.RETAIN,len:n}),h.push({t:t.TextXActionType.DELETE,len:r})}let D=(0,t.getRichTextEditPath)(u,l);w.push(g.editOp(h.serialize(),D)),y.reverse();for(let e=0;e<S;e++)for(let t of y){let n=g.removeOp([`tableSource`,b,`tableRows`,e,`tableCells`,t]);w.push(n)}for(let e of y){let t=g.removeOp([`tableSource`,b,`tableColumns`,e]);w.push(t)}return E.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(E.id,E.params)}},Ua={id:`doc.table.delete-table`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=a.getRectRanges(),l=a.getActiveTextRange(),u=G((r==null?void 0:r.targetRange)??l,r!=null&&r.targetRange?[]:c);if(u==null)return!1;let{segmentId:d}=u,f=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),p=f==null||(i=f.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();if(f==null||p==null)return!1;let m=B(e,f.getUnitId());if(m==null)return!1;let h=m.getViewModel(),g=f==null?void 0:f.getUnitId(),_=new t.TextX,v=t.JSONX.getInstance(),y=q(u,h);if(y==null)return!1;let{offset:b,len:x,tableId:S,cursor:C}=y,w=[],T=[{startOffset:C,endOffset:C,collapsed:!0}],E={id:n.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:T}};b>0&&_.push({t:t.TextXActionType.RETAIN,len:b}),_.push({t:t.TextXActionType.DELETE,len:x});let D=(0,t.getRichTextEditPath)(f,d);w.push(v.editOp(_.serialize(),D));let O=v.removeOp([`tableSource`,S]);return w.push(O),E.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!s.syncExecuteCommand(E.id,E.params)}},Wa=`doc.command.table-insert-row`,Ga=`doc.command.table-insert-column`,Ka={id:`doc.command.table-insert-row-above`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(Wa,{position:0})},qa={id:`doc.command.table-insert-row-bellow`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(Wa,{position:1})},Ja={id:`doc.command.table-insert-column-left`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(Ga,{position:0})},Ya={id:`doc.command.table-insert-column-right`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(Ga,{position:1})},Xa={id:Wa,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let{position:a}=r,o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),l=o.getRectRanges(),u=G(o.getActiveTextRange(),l);if(u==null)return!1;let{segmentId:d}=u,f=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),p=f==null||(i=f.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();if(f==null||p==null)return!1;let m=B(e,f.getUnitId());if(m==null)return!1;let h=m.getViewModel(),g=f==null?void 0:f.getUnitId(),_=new t.TextX,v=t.JSONX.getInstance(),y=re(u,a,h);if(y==null)return!1;let{offset:b,colCount:x,tableId:S,insertRowIndex:C}=y,w=[],T=b+2,E=[{startOffset:T,endOffset:T,collapsed:!0}],D={id:n.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:E}};b>0&&_.push({t:t.TextXActionType.RETAIN,len:b});let O=te(x);_.push({t:t.TextXActionType.INSERT,body:O,len:O.dataStream.length});let k=(0,t.getRichTextEditPath)(f,d);w.push(v.editOp(_.serialize(),k));let A=H(x),j=v.insertOp([`tableSource`,S,`tableRows`,C],A);return w.push(j),D.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!c.syncExecuteCommand(D.id,D.params)}},Za={id:Ga,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i,a,o;let{position:s}=r,c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService),u=e.get(t.ICommandService),d=c.getRectRanges(),f=G(c.getActiveTextRange(),d);if(f==null)return!1;let{segmentId:p}=f,m=l.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),h=m==null||(i=m.getSelfOrHeaderFooterModel(p))==null?void 0:i.getBody();if(m==null||h==null)return!1;let g=B(e,m.getUnitId());if(g==null)return!1;let _=g.getViewModel(),v=m==null?void 0:m.getUnitId(),y=new t.TextX,b=t.JSONX.getInstance(),x=ie(f,s,_);if(x==null)return!1;let{offsets:S,columnIndex:C,tableId:w,rowCount:T}=x,E=[],D=S[0]+1,O=[{startOffset:D,endOffset:D,collapsed:!0}],k={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:O}};for(let e of S){y.push({t:t.TextXActionType.RETAIN,len:e});let n=ne();y.push({t:t.TextXActionType.INSERT,body:n,len:n.dataStream.length})}let A=(0,t.getRichTextEditPath)(m,p);E.push(b.editOp(y.serialize(),A));for(let e=0;e<T;e++){let t=V(),n=b.insertOp([`tableSource`,w,`tableRows`,e,`tableCells`,C],t);E.push(n)}let j=m.getSnapshot(),M=j.documentStyle,{marginLeft:N=0,marginRight:P=0}=M,F=j==null||(a=j.tableSource)==null||(a=a[w])==null?void 0:a.tableColumns;if(!F)return!1;let I=(((o=M.pageSize)==null?void 0:o.width)??800)-N-P,L=F.reduce((e,t)=>e+t.size.width.v,0),{newColWidth:R,widths:z}=ae(L>0?L:I,F,C);for(let e=0;e<z.length;e++){let t=b.replaceOp([`tableSource`,w,`tableColumns`,e,`size`,`width`,`v`],F[e].size.width.v,z[e]);E.push(t)}let ee=U(R),H=b.insertOp([`tableSource`,w,`tableColumns`,C],ee);return E.push(H),k.params.actions=E.reduce((e,n)=>t.JSONX.compose(e,n),null),!!u.syncExecuteCommand(k.id,k.params)}},Qa={id:`doc.table.tab-in-table`,type:t.CommandType.COMMAND,handler:async(e,r)=>{let{shift:i}=r,a=e.get(n.DocSelectionManagerService),o=a.getDocRanges(),s=e.get(t.ICommandService),c=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=o.find(e=>e.isActive)??o[0],u=B(e,c.getUnitId()),d=u==null?void 0:u.getSkeleton(),f=d==null?void 0:d.getViewModel().getSelfOrHeaderFooterViewModel(l==null?void 0:l.segmentId);if(f==null||l==null)return!1;let p=null;if(p=i?ce(f,l,1):ce(f,l,0),p){let{startOffset:e,endOffset:t}=p,n=[{startOffset:e,endOffset:t}];return a.replaceDocRanges(n),!0}return i!==!1||await s.executeCommand(Xa.id,{position:1})}},$a=`COMPONENT_DOC_CREATE_TABLE_CONFIRM`,eo=`doc.component.create-table-confirm`,to={id:`doc.operation.create-table`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(t.LocaleService),r=e.get(t.IConfirmService),i=e.get(t.ICommandService),a={rowCount:3,colCount:5};return await r.open({id:eo,children:{label:{name:$a,props:{handleRowColChange:(e,t)=>{a.rowCount=e,a.colCount=t},tableCreateParams:a}}},width:`auto`,title:{title:n.t(`docs-ui.toolbar.table.insert`)},onConfirm:()=>{i.executeCommand(Ba.id,a),r.close(eo)},onClose:()=>{r.close(eo)}}),!0}},no={id:`doc.operation.move-cursor`,type:t.CommandType.OPERATION,handler:(e,t)=>!!t},ro={id:`doc.operation.move-selection`,type:t.CommandType.OPERATION,handler:(e,t)=>!!t},io=`docs-ui.config`,ao={mode:`none`,target:`viewport`,paddingX:20,minScale:1,maxScale:void 0,align:`center`},oo={toc:!1,footer:!0,wordCount:!0,placeholder:!0,fitToWidth:ao},so=`transparent`;function co(e){let{documentFlavor:n,canvasColorService:r,editorBackgroundColor:i,isEditor:a}=e,o=i??lo(n,a);if(a)return{canvasElementBackgroundColor:o,docBackgroundFillColor:so};if(i!=null)return{canvasElementBackgroundColor:(r==null?void 0:r.getRenderColor(i))??i,docBackgroundFillColor:void 0};if(n!==t.DocumentFlavor.TRADITIONAL&&n!==t.DocumentFlavor.MODERN)return{canvasElementBackgroundColor:o,docBackgroundFillColor:void 0};let s=uo(n);return{canvasElementBackgroundColor:(r==null?void 0:r.getRenderColor(s))??o,docBackgroundFillColor:void 0}}function lo(e,n){if(n)return so;switch(e){case t.DocumentFlavor.MODERN:return`var(--univer-gray-0)`;case t.DocumentFlavor.TRADITIONAL:return`var(--univer-gray-100)`;default:return`var(--univer-gray-100)`}}function uo(e){return e===t.DocumentFlavor.MODERN?`gray.0`:`gray.100`}var fo=class extends t.Disposable{constructor(e,t,n,r,i,o){super(),this._param=e,this._univerInstanceService=t,this._docSelectionManagerService=n,this._commandService=r,this._undoRedoService=i,this._injector=o,O(this,`_change$`,new a.Subject),O(this,`change$`,this._change$.asObservable()),O(this,`_input$`,new a.Subject),O(this,`input$`,this._input$.asObservable()),O(this,`_paste$`,new a.Subject),O(this,`paste$`,this._paste$.asObservable()),O(this,`_focus$`,new a.Subject),O(this,`focus$`,this._focus$.asObservable()),O(this,`_blur$`,new a.Subject),O(this,`blur$`,this._blur$.asObservable()),O(this,`_selectionChange$`,new a.Subject),O(this,`selectionChange$`,this._selectionChange$.asObservable()),this._listenSelection()}get docSelectionRenderService(){return this._param.render.with(Y)}_listenSelection(){let e=this._param.render.with(Y);this.disposeWithMe(e.onBlur$.subscribe(e=>{this._blur$.next(e);let t=this.getDocumentData();this._change$.next({target:this,data:t})})),this.disposeWithMe(e.onFocus$.subscribe(e=>{this._focus$.next(e)})),this.disposeWithMe(e.onPaste$.subscribe(e=>{this._paste$.next(e)})),this.disposeWithMe((0,a.merge)(e.onInput$,e.onKeydown$.pipe((0,o.filter)(e=>{let t=e.event;return t.ctrlKey||t.metaKey?[i.KeyCode.X,i.KeyCode.V].includes(t.keyCode):[i.KeyCode.BACKSPACE].includes(t.keyCode)})),e.onCompositionupdate$,e.onCompositionend$,e.onPaste$).subscribe(e=>{if(e==null)return;let{content:t=``}=e,n=this.getDocumentData();this._input$.next({target:this,content:t,data:n,isComposing:e.event.type===`compositionupdate`})})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(e=>{if(e==null)return;let{unitId:t,subUnitId:n,...r}=e;t===this.getEditorId()&&this._selectionChange$.next(r)}))}isFocus(){let e=this._param.render.with(Y);return e.isFocusing&&!!e.getActiveTextRange()}focus(){let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),n=this.getEditorId();(e==null||e.getUnitId()!==n)&&this._univerInstanceService.setCurrentUnitForType(n),this._param.render.with(Y).focus()}blur(){this._param.render.with(Y).blur()}select(){let e=this.getDocumentData();return this.setSelectionRanges([{startOffset:0,endOffset:e.body?e.body.dataStream.length-2:0}])}setSelectionRanges(e,t=!0){let n=this.getEditorId(),r={unitId:n,subUnitId:n};return this._docSelectionManagerService.replaceDocRanges(e,r,!1,{shouldFocus:t})}getSelectionRanges(){let e=this.getEditorId(),t={unitId:e,subUnitId:e};return this._docSelectionManagerService.getDocRanges(t)}getCursorPosition(){var e;return((e=this.getSelectionRanges().find(e=>e.collapsed))==null?void 0:e.startOffset)??-1}getEditorId(){return this._getEditorId()}getDocumentData(){return this._getDocDataModel().getSnapshot()}getDocumentDataModel(){return this._getDocDataModel()}setDocumentData(e,t){this._commandService.syncExecuteCommand(Br.id,{unitId:this.getEditorId(),snapshot:e,textRanges:t})}replaceText(e,n=!0){let r=this.getDocumentData();this.setDocumentData({...r,body:{dataStream:`${e}\r\n`,paragraphs:[{startIndex:e.length,paragraphId:(0,t.createParagraphId)(new Set)}],customRanges:[],sectionBreaks:[{sectionId:(0,t.createSectionId)(new Set),startIndex:e.length+1}],tables:[],textRuns:[]}},typeof n==`object`?n:n?[{startOffset:e.length,endOffset:e.length,collapsed:!0}]:null)}clearUndoRedoHistory(){let e=this.getEditorId();return this._undoRedoService.clearUndoRedo(e)}dispose(){let e=this._getDocDataModel();e==null||e.dispose()}get cancelDefaultResizeListener(){return this._param.cancelDefaultResizeListener}getRenderConfig(){return{canvasStyle:this._param.canvasStyle??{},scrollBar:this._param.scrollBar,...this._param.backScrollOffset===void 0?{}:{backScrollOffset:this._param.backScrollOffset}}}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}getSkeleton(){var e;return(e=this._injector.get(r.IRenderManagerService).getRenderUnitById(this._getEditorId()))==null?void 0:e.with(n.DocSkeletonManagerService).getSkeleton()}isSheetEditor(){return(0,t.isInternalEditorID)(this._getEditorId())}_getDocDataModel(){let e=this._getEditorId();return this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC)}_getEditorId(){var e;return((e=this._param.initialSnapshot)==null?void 0:e.id)||this._param.editorUnitId||``}};let po=[`editor`,`render-canvas`],mo=class extends t.Disposable{constructor(e,t,n,r,i,o,s){super(),this._univerInstanceService=e,this._renderManagerService=t,this._docSelectionManagerService=n,this._contextService=r,this._commandService=i,this._undoRedoService=o,this._injector=s,O(this,`_editors`,new Map),O(this,`_editorRenderConfigs`,new Map),O(this,`_focusEditorUnitId`,void 0),O(this,`_blur$`,new a.Subject),O(this,`blur$`,this._blur$.asObservable()),O(this,`_focus$`,new a.Subject),O(this,`focus$`,this._focus$.asObservable()),this._initUniverFocusListener()}_initUniverFocusListener(){this.disposeWithMe((0,a.fromEvent)(window,`focusin`).subscribe(e=>{let t=e.target;this._blurSheetEditor(t)}))}_blurSheetEditor(e){if(po.some(t=>e.dataset.uComp===t))return;let t=this.getFocusEditor();t&&t.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._editorRenderConfigs.has(e)||this._editors.has(e)}isSheetEditor(e){let t=this._editors.get(e);return!!(t&&t.isSheetEditor())}blur(e){let n=this.getFocusEditor();e&&(n==null||n.setSelectionRanges([])),n==null||n.blur(),this._contextService.setContextValue(t.EDITOR_ACTIVATED,!1),this._contextService.setContextValue(t.FOCUSING_EDITOR_STANDALONE,!1),this._contextService.setContextValue(t.FOCUSING_COMMENT_EDITOR,!1),this._setFocusId(null),this._blur$.next(null)}focus(e){var n;if(e===this._focusEditorUnitId||(this._focusEditorUnitId&&this.blur(),e==null))return;let r=this.getEditor(e);if(r==null)return;this._univerInstanceService.setCurrentUnitForType(e);let i=(((n=r.getDocumentData().body)==null?void 0:n.dataStream)??``).replace(/\r?\n/g,``).length;this._contextService.setContextValue(t.EDITOR_ACTIVATED,!0),(0,t.isInternalEditorID)(e)||this._contextService.setContextValue(t.FOCUSING_EDITOR_STANDALONE,!0),(0,t.isCommentEditorID)(e)&&this._contextService.setContextValue(t.FOCUSING_COMMENT_EDITOR,!0),r.focus(),this._setFocusId(e),this._focus$.next({startOffset:i,endOffset:i})}dispose(){this._editors.clear(),this._editorRenderConfigs.clear(),super.dispose()}getEditor(e=this._getCurrentEditorUnitId()){return this._editors.get(e)}getAllEditor(){return this._editors}getEditorRenderConfig(e){let t=this._editors.get(e);return this._editorRenderConfigs.get(e)??(t==null?void 0:t.getRenderConfig())??null}register(e,n){let{initialSnapshot:r,canvasStyle:i={}}=e,a=r.id;this._editorRenderConfigs.set(a,{canvasStyle:i,scrollBar:e.scrollBar,...e.backScrollOffset===void 0?{}:{backScrollOffset:e.backScrollOffset},...e.preserveHostFocus===void 0?{}:{preserveHostFocus:e.preserveHostFocus}}),this._univerInstanceService.getUnit(a,t.UniverInstanceType.UNIVER_DOC)??this._univerInstanceService.createUnit(t.UniverInstanceType.UNIVER_DOC,r||this._getBlank(a),{makeCurrent:!1});let o=this._renderManagerService.getRenderUnitById(a);if(o??=this._renderManagerService.createRender(a),o){o.engine.mount(n);let t=new fo({...e,render:o,editorDom:n,canvasStyle:i},this._univerInstanceService,this._docSelectionManagerService,this._commandService,this._undoRedoService,this._injector);this._editors.set(a,t);let r=co({canvasColorService:o.engine.canvasColorService,editorBackgroundColor:i.backgroundColor,isEditor:!0});o.engine.getCanvas().getCanvasEle().style.backgroundColor=r.canvasElementBackgroundColor;let l=o.components.get(`__Document_Render_Background__`);if(l==null||l.setFillColors(r.docBackgroundFillColor,r.docBackgroundFillColor,r.docBackgroundFillColor,r.docBackgroundFillColor),!e.scrollBar){var s,c;let e=(s=o.mainComponent)==null||(s=s.getScene())==null||(s=s.getViewports())==null?void 0:s[0];e==null||(c=e.getScrollBar())==null||c.dispose(),e==null||e.updateScrollVal({scrollX:0,scrollY:0,viewportScrollX:0,viewportScrollY:0})}}return(0,t.toDisposable)(()=>{this._unRegister(a)})}_unRegister(e){let t=this._editors.get(e);if(t==null){this._editorRenderConfigs.delete(e);return}this._renderManagerService.removeRender(e),t.dispose(),this._editors.delete(e),this._editorRenderConfigs.delete(e),this._univerInstanceService.disposeUnit(e)}_getCurrentEditorUnitId(){return this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC).getUnitId()}_getBlank(e){return{id:e,body:{dataStream:`${t.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set)}]},documentStyle:{renderConfig:{verticalAlign:t.VerticalAlign.TOP,horizontalAlign:t.HorizontalAlign.LEFT},marginLeft:3,marginTop:0,marginRight:3}}}};mo=A([k(0,t.IUniverInstanceService),k(1,r.IRenderManagerService),k(2,(0,t.Inject)(n.DocSelectionManagerService)),k(3,t.IContextService),k(4,t.ICommandService),k(5,t.IUndoRedoService),k(6,(0,t.Inject)(t.Injector))],mo);let ho=(0,t.createIdentifier)(`univer.editor.service`),go=1.5,_o=class extends t.RxDisposable{constructor(e,t,n,r){super(),this._context=e,this._textSelectionManagerService=t,this._editorService=n,this._docSkeletonManagerService=r,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{if(e==null)return;let{isEditing:n,unitId:r}=e;r!==this._context.unitId||!n||this._context.unitId!==t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(e){let t=this._docSkeletonManagerService.getSkeleton();if(!t)return;let{startOffset:n}=e,r=t.findNodePositionByCharIndex(n);r&&this.scrollToNode(r)}scrollToNode(e){let{unitId:t,scene:n,mainComponent:r}=this._context,i=this._docSkeletonManagerService.getSkeleton();if(r==null||i==null)return;let a=r.getOffsetConfig(),{docsLeft:o,docsTop:s}=a,{contentBoxPointGroup:c}=new zi(a,i).getRangePointData(e,e),{left:l,top:u,height:d}=da(c),f=l+o,p=u+s,m=n.getViewport(`viewMain`);if(m==null)return;let{left:h,top:g,right:_,bottom:v}=m.calcViewportInfo().viewBound,y=0,b=0,x=this._editorService.getEditorRenderConfig(t),S=x?x.backScrollOffset??0:100;p<g?y=p-g-S:p>v-d&&(y=p-v+d+S),f<h?b=f-h:f>_-go&&(b=f-_+go);let C=m.transViewportScroll2ScrollValue(b,y);m.scrollByBarDeltaValue(C)}_scrollToSelection(){let e=this._textSelectionManagerService.getActiveTextRange();if(e==null)return;let{collapsed:t,startNodePosition:n}=e;t&&this.scrollToNode(n)}};_o=A([k(1,(0,t.Inject)(n.DocSelectionManagerService)),k(2,ho),k(3,(0,t.Inject)(n.DocSkeletonManagerService))],_o);let vo=class extends t.Disposable{constructor(e,t,n,r){super(),this._context=e,this._localeService=t,this._docSelectionManagerService=n,this._configService=r,this._initParagraphPlaceholderRender()}_initParagraphPlaceholderRender(){let e=this._configService.getConfig(io);if(!yo(this._context.unit,this._context.unitId,e))return;let t=this._context.mainComponent;t&&(this.disposeWithMe(t.pageRender$.subscribe(e=>this._drawPagePlaceholders(e))),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(({unitId:e})=>{e===this._context.unitId&&t.makeDirty(!0)})))}_drawPagePlaceholders({page:e,pageLeft:t,pageTop:n,ctx:r}){var i,a;let o=(i=this._context.unit.getSelfOrHeaderFooterModel(e.segmentId))==null?void 0:i.getBody();if(!o)return;let s=this._docSelectionManagerService.getActiveTextRange();if(!s||(s.segmentId??``)!==(e.segmentId??``)||s.startOffset==null||s.endOffset==null||s.startOffset!==s.endOffset)return;let c=bo(e,o,this._getLocale(),t,n,s.startOffset,{docsLeft:(a=this._context.mainComponent)==null?void 0:a.getOffsetConfig().docsLeft,unitId:this._context.unitId});c.length&&Ao(r,c)}_getLocale(){return{heading1:this._localeService.t(`docs-ui.placeholder.heading1`),heading2:this._localeService.t(`docs-ui.placeholder.heading2`),heading3:this._localeService.t(`docs-ui.placeholder.heading3`),heading4:this._localeService.t(`docs-ui.placeholder.heading4`),heading5:this._localeService.t(`docs-ui.placeholder.heading5`),listItem:this._localeService.t(`docs-ui.placeholder.listItem`),normalText:this._localeService.t(`docs-ui.placeholder.normalText`)}}};vo=A([k(1,(0,t.Inject)(t.LocaleService)),k(2,(0,t.Inject)(n.DocSelectionManagerService)),k(3,t.IConfigService)],vo);function yo(e,n,r){var i;return(r==null?void 0:r.placeholder)===!1||(0,t.isInternalEditorID)(n)?!1:((i=e.getSnapshot().documentStyle)==null?void 0:i.documentFlavor)===t.DocumentFlavor.MODERN}function bo(e,t,n,i=0,a=0,o,s){var c;let l=new Map((t.paragraphs??[]).map(e=>[e.startIndex,e])),u=[],d=(e,r,i,a)=>{for(let s of e.columns)xo(s,t,l,n,u,r+s.left,i+e.top,o,a)};for(let t of e.sections)d(t,i+e.marginLeft,a+e.marginTop);return(c=e.skeTables)==null||c.forEach((t,n)=>{let o=(0,r.getTableIdAndSliceIndex)(t.tableId??n).tableId,c=(0,r.getDocsTableRenderViewport)((s==null?void 0:s.unitId)??``,o),l=c!=null&&(c.leadingInsetLeft??0)+c.contentWidth+(c.trailingInsetRight??0)>c.viewportWidth,u=i+e.marginLeft+t.left,f=l?(0,r.getDocsTableViewportLeft)(c,u-(c.leadingInsetLeft??0),s==null?void 0:s.docsLeft):u,p=f+(l?c.viewportWidth:t.width),m=l?c.scrollLeft:0;for(let n of t.rows)for(let r of n.cells){let i=u+r.left-m,o=i+r.marginLeft,s=i+r.pageWidth-r.marginRight,c=Math.max(o,f),l=Math.min(s,p);if(!(l<=c))for(let i of r.sections)d(i,o,a+e.marginTop+t.top+n.top+r.marginTop,{left:c,right:l})}}),u}function xo(e,t,n,r,i,a,o,s,c){for(let l of e.lines){if(!l.paragraphStart)continue;let e=l.st,u=l.paragraphIndex;if(!So(s,e,u))continue;let d=n.get(u);if(!d||!To(t.dataStream,l.st,l.paragraphIndex))continue;let f=Co(d,r);f&&i.push(wo(l,d,f,a,o,c))}}function So(e,t,n){return t<=e&&e<=n}function Co(e,n){var r;if(e.bullet)return n.listItem;switch((r=e.paragraphStyle)==null?void 0:r.namedStyleType){case t.NamedStyleType.HEADING_1:return n.heading1;case t.NamedStyleType.HEADING_2:return n.heading2;case t.NamedStyleType.HEADING_3:return n.heading3;case t.NamedStyleType.HEADING_4:return n.heading4;case t.NamedStyleType.HEADING_5:return n.heading5;default:return n.normalText}}function wo(e,n,r,i,a,o){var s;let c=e.divides[0],l=((c==null?void 0:c.glyphGroup)??[])[0],u=t.NAMED_STYLE_MAP[((s=n.paragraphStyle)==null?void 0:s.namedStyleType)??t.NamedStyleType.NORMAL_TEXT],d=Oo(e,n),f=ko(e)??`Arial`,p=u!=null&&u.bl?`bold`:`normal`,m=i+((c==null?void 0:c.left)??0)+((c==null?void 0:c.paddingLeft)??0),h=n.bullet&&l?l.left+l.width+4:0,g=m+h,_=Math.max(0,((c==null?void 0:c.width)??e.width??0)-h),v=Math.max(g,(o==null?void 0:o.left)??g),y=Math.min(g+_,(o==null?void 0:o.right)??g+_),b=a+e.top;return{clipBottom:b+e.lineHeight,clipLeft:v,clipRight:y,clipTop:b,fontFamily:f,fontSize:d,fontWeight:p,maxWidth:Math.max(0,y-v),text:r,x:g,y:a+e.top+e.marginTop+e.paddingTop+e.asc}}function To(e,t,n){return Eo((e==null?void 0:e.slice(t,n))??``).trim()===``}function Eo(e){return e.replaceAll(t.DataStreamTreeTokenType.PARAGRAPH,``).replaceAll(t.DataStreamTreeTokenType.SECTION_BREAK,``).replaceAll(t.DataStreamTreeTokenType.DOCS_END,``)}function Do(e){for(let i of e.divides)for(let e of i.glyphGroup){var t,n,r;let i=((t=e.fontStyle)==null?void 0:t.originFontSize)??((n=e.fontStyle)==null?void 0:n.fontSize)??((r=e.ts)==null?void 0:r.fs);if(i)return i}return null}function Oo(e,n){var r;let i=((r=n.paragraphStyle)==null?void 0:r.namedStyleType)??t.NamedStyleType.NORMAL_TEXT,a=t.NAMED_STYLE_MAP[i],o=Do(e)??(a==null?void 0:a.fs)??12;return i===t.NamedStyleType.NORMAL_TEXT?Math.max(o,16):o}function ko(e){for(let r of e.divides)for(let e of r.glyphGroup){var t,n;let r=((t=e.fontStyle)==null?void 0:t.fontFamily)??((n=e.ts)==null?void 0:n.ff);if(r)return r}return null}function Ao(e,t){e.save(),e.fillStyle=`gray.400`,e.textBaseline=`alphabetic`;for(let n of t){let t=n.clipLeft??n.x,r=n.clipRight??n.x+n.maxWidth,i=n.clipTop??n.y-n.fontSize,a=n.clipBottom??n.y+n.fontSize;r<=t||a<=i||(e.save(),e.beginPath(),e.rectByPrecision(t,i,r-t,a-i),e.closePath(),e.clip(),e.font=`${n.fontWeight} ${n.fontSize}px ${n.fontFamily}`,e.fillText(n.text,n.x,n.y),e.restore())}e.restore()}function jo(e){var n,r;return((n=e.getSettings())==null?void 0:n.zoomRatio)??((r=e.getSnapshot().documentStyle)==null||r.documentFlavor,t.DocumentFlavor.MODERN,1)}function Mo(e){return{...ao,...e}}function No(e,t){if(typeof t==`number`)return Number.isFinite(t)?t:0;if(typeof t==`string`){let n=t.trim();if(n.endsWith(`%`)){let t=Number(n.slice(0,-1));return Number.isFinite(t)?e*t/100:0}}return 0}function Po(e){let t=Mo(e.options);if(t.mode!==`fit-width`||!Number.isFinite(e.availableWidth)||!Number.isFinite(e.baseWidth)||e.baseWidth<=0)return 1;let n=No(e.availableWidth,t.paddingX),r=Math.max(0,e.availableWidth-n*2)/e.baseWidth,i=t.maxScale??1/0;return Math.min(i,Math.max(t.minScale,r))}function Fo(e){return e.documentStylePageWidth!=null&&Number.isFinite(e.documentStylePageWidth)&&e.documentStylePageWidth>0?e.documentStylePageWidth:e.documentFlavor===t.DocumentFlavor.MODERN?t.MODERN_DOCUMENT_WIDTH[t.ModernDocumentWidthMode.MEDIUM]:e.skeletonPageWidth!=null&&Number.isFinite(e.skeletonPageWidth)&&e.skeletonPageWidth>0?e.skeletonPageWidth:t.MODERN_DOCUMENT_WIDTH[t.ModernDocumentWidthMode.MEDIUM]}function Io(e,t){return e*t}let Lo=class extends t.Disposable{constructor(e,t){super(),this._context=e,this._configService=t}getPluginConfig(){return this._configService.getConfig(`docs-ui.config`)??{}}getOptions(){return this.getPluginConfig().fitToWidth??ao}getBaseWidth(){var e,t,n;let r=(e=this._context.unit)==null||(t=e.getSnapshot)==null||(t=t.call(e))==null?void 0:t.documentStyle;return Fo({documentFlavor:r==null?void 0:r.documentFlavor,documentStylePageWidth:r==null||(n=r.pageSize)==null?void 0:n.width})}getAvailableWidth(){let e=this.getPluginConfig();if(Mo(e.fitToWidth).target===`container`){let t=this._resolveContainer(e.container),n=t==null?void 0:t.clientWidth;if(n!=null&&Number.isFinite(n)&&n>0)return n}return this._context.engine.width}getUserZoomRatio(){return this._context.unit==null?1:jo(this._context.unit)}getFitToWidthScale(){return Po({availableWidth:this.getAvailableWidth(),baseWidth:this.getBaseWidth(),options:this.getOptions()})}getViewScale(e=this.getUserZoomRatio()){return Io(e,this.getFitToWidthScale())}_resolveContainer(e){if(e!=null)return typeof e==`string`?document.querySelector(e)??document.getElementById(e)??void 0:e}};Lo=A([k(1,t.IConfigService)],Lo);let Ro=class extends t.Disposable{constructor(e,t){super(),this._context=e,this._docViewScaleService=t}calculatePagePosition(){if(this._disposed)return;let e=f(this._context),t=this._docViewScaleService.getViewScale(),n=this._docViewScaleService.getOptions(),r=n.mode===`fit-width`&&n.align===`start`,{document:i,scene:a,docBackground:o}=e;(a.scaleX!==t||a.scaleY!==t)&&a.scale(t,t);let s=a==null?void 0:a.getParent(),{width:c,height:l,pageMarginLeft:u,pageMarginTop:d}=i,p=r?No(this._docViewScaleService.getAvailableWidth(),n.paddingX)/t:u;if(s==null||c===1/0||l===1/0)return;let{width:m,height:h}=s,g=0,_=d,v=0,y=0,b=1/0;m>(c+p*2)*t?(g=r?p:(m/2-c*t/2)/t,v=(m-p*2)/t,b=0):(g=p,v=c+p*2,b=0),y=h>l?(h-d*2)/t:l+d*2,a.transformByState({width:v,height:y}),m<=1&&(g=-1e4,_=-1e4),i.translate(g,_),o.translate(g,_);let x=a.getViewport(`viewMain`);return b!==1/0&&x!=null&&x.scrollToViewportPos({viewportScrollX:b}),this}};Ro=A([k(1,(0,t.Inject)(Lo))],Ro);let zo=class extends t.RxDisposable{constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this._context=e,this._commandService=t,this._docSelectionRenderService=n,this._docSkeletonManagerService=r,this._editorService=i,this._renderManagerService=a,this._univerInstanceService=o,this._docPageLayoutService=s,this._textSelectionManagerService=c,this._docViewScaleService=l,this._themeService=u,O(this,`_changesetRenderScheduled`,!1),this._addNewRender(),this._initRenderRefresh(),this._initCommandListener(),this._initThemeListener()}reRender(e){var t;let r=(t=this._renderManagerService.getRenderUnitById(e))==null?void 0:t.with(n.DocSkeletonManagerService),i=r==null?void 0:r.getSkeleton();if(!i||i.getViewModel().getDataModel().getSnapshot().disabled)return;i.calculate();let a=this._editorService.getEditorRenderConfig(e);if(a&&!a.scrollBar){var o;(o=this._context.mainComponent)==null||o.makeDirty();return}this._recalculateSizeBySkeleton(i),this._refreshPagePositionAndSelection()}_addNewRender(){let{scene:e,engine:n}=this._context,i=new r.Viewport(`viewMain`,e,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});e.attachControl(),e.onMouseWheel$.subscribeEvent((n,r)=>{let a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if((a==null?void 0:a.getUnitId())!==this._context.unitId)return;let o=n;if(o.ctrlKey){let t=Math.abs(o.deltaX),n=t<40?.2:t<80?.4:.2;n*=o.deltaY>0?-1:1,e.scaleX<1&&(n/=2),e.scaleX+n>4?e.scale(4,4):e.scaleX+n<.1?e.scale(.1,.1):o.preventDefault()}else i.onMouseWheel(o,r)}),new r.ScrollBar(i,{enableHorizontal:this._shouldEnableHorizontalScrollBar()}),e.addLayer(new r.Layer(e,[],2),new r.Layer(e,[],4)),this._addComponent();let a=()=>e.render();this.disposeWithMe(this._context.activated$.subscribe(e=>{e?n.runRenderLoop(a):n.stopRenderLoop(a)})),this._docSelectionRenderService.__attachScrollEvent()}_shouldEnableHorizontalScrollBar(){let e=this._docViewScaleService.getOptions();return e.mode!==`fit-width`||e.target!==`container`||e.align!==`start`}_addComponent(){let{scene:e,unit:t,components:n}=this._context,i={pageMarginLeft:20,pageMarginTop:20,...this._getEditorBackgroundConfig()},a=new r.Documents(`__Document_Render_Main__`,void 0,i);a.zIndex=10;let o=new r.DocBackground(`__Document_Render_Background__`,void 0,i);o.zIndex=10,this._context.mainComponent=a,n.set(`__Document_Render_Main__`,a),n.set(`__Document_Render_Background__`,o),e.addObjects([a],2),e.addObjects([o],0),this._isEditorRenderUnit(t.getUnitId())||e.enableLayerCache(2)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{this._create(e)})}_create(e){if(!e)return;let{mainComponent:t,components:n}=this._context,r=t,i=n.get(`__Document_Render_Background__`);r.changeSkeleton(e),i.changeSkeleton(e),this._syncCanvasBackground();let{unitId:a}=this._context,o=this._editorService.getEditorRenderConfig(a);if(o&&!o.scrollBar){var s;(s=this._context.mainComponent)==null||s.makeDirty();return}this._recalculateSizeBySkeleton(e),this._refreshPagePositionAndSelection()}_initCommandListener(){let e=[n.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted((t,n)=>{if(!e.includes(t.id))return;let{unitId:r}=t.params;if(r===this._context.unitId){if(n!=null&&n.fromChangeset){this._scheduleChangesetRender();return}this.reRender(r)}}))}_scheduleChangesetRender(){this._changesetRenderScheduled||(this._changesetRenderScheduled=!0,queueMicrotask(()=>{this._changesetRenderScheduled=!1,!this._disposed&&this.reRender(this._context.unitId)}))}_initThemeListener(){this.disposeWithMe((0,a.combineLatest)([this._themeService.currentTheme$,this._themeService.darkMode$]).pipe((0,a.takeUntil)(this.dispose$)).subscribe(()=>{var e,t;this._syncCanvasBackground(),(e=this._context.mainComponent)==null||e.makeDirty(!0),(t=this._context.components.get(`__Document_Render_Background__`))==null||t.makeDirty(!0)}))}_refreshPagePositionAndSelection(){this._isEditorRenderUnit()||(this._docPageLayoutService.calculatePagePosition(),this._textSelectionManagerService.refreshSelection())}_recalculateSizeBySkeleton(e){var n;let{mainComponent:i,scene:a,unitId:o,components:s}=this._context,c=i,l=s.get(`__Document_Render_Background__`),u=(n=e.getSkeletonData())==null?void 0:n.pages;if(u==null)return;let d=0,f=0,p=this._context.unit.getSnapshot().documentStyle.documentFlavor;this._syncCanvasBackground(p);for(let e=0,n=u.length;e<n;e++){let i=u[e],{pageWidth:a,pageHeight:o}=i;if(p===t.DocumentFlavor.MODERN){let e=Bo(i);a=e.pageWidth,o=e.pageHeight}c.pageLayoutType===r.PageLayoutType.VERTICAL?(f+=o,f+=c.pageMarginTop,e===n-1&&(f+=c.pageMarginTop),d=Math.max(d,a)):c.pageLayoutType===r.PageLayoutType.HORIZONTAL&&(d+=a,e!==n-1&&(d+=c.pageMarginLeft),f=Math.max(f,o))}c.resize(d,f),l.resize(d,f);let m=this._editorService.getEditorRenderConfig(o);(!m||m.scrollBar)&&a.transformByState({width:d,height:f})}_syncCanvasBackground(e=this._context.unit.getSnapshot().documentStyle.documentFlavor){var t;let n=this._editorService.getEditorRenderConfig(this._context.unitId),r=n==null?void 0:n.canvasStyle.backgroundColor,i=co({documentFlavor:e,canvasColorService:this._context.engine.canvasColorService,editorBackgroundColor:r,isEditor:this._isEditorRenderUnit()});this._context.engine.getCanvas().getCanvasEle().style.backgroundColor=i.canvasElementBackgroundColor;let a=this._context.components.get(`__Document_Render_Background__`);a==null||(t=a.setFillColors)==null||t.call(a,i.docBackgroundFillColor,i.docBackgroundFillColor,i.docBackgroundFillColor,i.docBackgroundFillColor)}_getEditorBackgroundConfig(){if(!this._isEditorRenderUnit())return{};let e=`transparent`;return{backgroundFillColor:e,pageFillColor:e,pageStrokeColor:e,marginStrokeColor:e}}_isEditorRenderUnit(e=this._context.unitId){return this._editorService.isEditor(e)||(0,t.isInternalEditorID)(e)}};zo=A([k(1,t.ICommandService),k(2,(0,t.Inject)(Y)),k(3,(0,t.Inject)(n.DocSkeletonManagerService)),k(4,ho),k(5,r.IRenderManagerService),k(6,t.IUniverInstanceService),k(7,(0,t.Inject)(Ro)),k(8,(0,t.Inject)(n.DocSelectionManagerService)),k(9,(0,t.Inject)(Lo)),k(10,(0,t.Inject)(t.ThemeService))],zo);function Bo(e){let{pageWidth:t,pageHeight:n}=e,{marginLeft:r,marginRight:i,marginTop:a,marginBottom:o,skeDrawings:s,skeTables:c}=e;t===1/0&&(t=e.width+r+i),n===1/0&&(n=e.height+a+o);for(let e of s.values())n=Math.max(n,e.aTop+e.height+a+o);for(let e of c.values())n=Math.max(n,e.top+e.height+a+o);return{pageWidth:t,pageHeight:n}}function Vo(e){let{dataStream:n}=e.body??{},r=[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.COLUMN_BREAK,t.DataStreamTreeTokenType.PAGE_BREAK,t.DataStreamTreeTokenType.TAB,t.DataStreamTreeTokenType.DOCS_END,t.DataStreamTreeTokenType.CUSTOM_BLOCK];if(typeof n==`string`)for(let e=0;e<n.length;e++){let t=n[e];if(!r.includes(t))return e}return 0}let Ho=`COMPONENT_DOC_HEADER_FOOTER_PANEL`,Uo={id:`sidebar.operation.doc-header-footer-panel`,type:t.CommandType.OPERATION,handler:async(e,n)=>{let r=e.get(i.ISidebarService),a=e.get(t.LocaleService);switch(n.value){case`open`:r.open({header:{title:a.t(`docs-ui.headerFooter.panel`)},children:{label:Ho},onClose:()=>{},width:400});break;default:r.close();break}return!0}},Wo=`doc.command.core-header-footer`,Go={id:Wo,type:t.CommandType.COMMAND,handler:async(e,i)=>{var a;let o=e.get(t.ICommandService),s=e.get(t.IUniverInstanceService),c=e.get(r.IRenderManagerService),{unitId:l,segmentId:u,createType:d,headerFooterProps:f,sectionId:p}=i,m=(a=c.getRenderUnitById(l))==null?void 0:a.with(n.DocSkeletonManagerService),h=s.getUnit(l,t.UniverInstanceType.UNIVER_DOC),g=m==null?void 0:m.getViewModel();if(h==null||g==null)return!1;let _=g.getEditArea(),v=h.getSnapshot(),y=p,b=v.body?(0,n.getTopLevelSectionBreaks)(v.body):[],x=y==null?-1:b.findIndex(e=>e.sectionId===y),S=x<0?void 0:b[x],C=y==null?v.documentStyle:{...v.documentStyle,...S,...(0,t.resolveSectionHeaderFooterReferences)(v.documentStyle,b,x)},w=d;return f!=null&&Object.keys(f).forEach(e=>{let i=f[e];w==null&&e===`useFirstPageHeaderFooter`&&i===t.BooleanNumber.TRUE&&!C.firstPageHeaderId?w=_===r.DocumentEditArea.HEADER?n.HeaderFooterType.FIRST_PAGE_HEADER:n.HeaderFooterType.FIRST_PAGE_FOOTER:w==null&&e===`evenAndOddHeaders`&&i===t.BooleanNumber.TRUE&&!C.evenPageHeaderId&&(w=_===r.DocumentEditArea.HEADER?n.HeaderFooterType.EVEN_PAGE_HEADER:n.HeaderFooterType.EVEN_PAGE_FOOTER)}),o.syncExecuteCommand(n.CreateHeaderFooterCommand.id,{unitId:l,segmentId:u,createType:w,headerFooterProps:f,createMode:y==null?`pair`:`single`,sectionId:y})}},Ko={id:`doc.command.open-header-footer-panel`,type:t.CommandType.COMMAND,handler:async(e,n)=>e.get(t.ICommandService).executeCommand(Uo.id,{value:`open`})},qo={id:`doc.command.close-header-footer`,type:t.CommandType.COMMAND,handler:async(e,i)=>{var a,o;let s=e.get(t.ICommandService),c=e.get(r.IRenderManagerService),l=e.get(n.DocSelectionManagerService),u=e.get(t.IUniverInstanceService),d=(i==null?void 0:i.unitId)??((a=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC))==null?void 0:a.getUnitId());if(d==null)return!1;let f=c.getRenderUnitById(d);if(f==null)return!1;let p=f.with(n.DocSkeletonManagerService),m=p==null?void 0:p.getViewModel();if(m==null||m.getEditArea()===r.DocumentEditArea.BODY)return!1;let h=p==null?void 0:p.getSkeleton();if(h==null)return!1;let{scene:g}=f,_=g.getTransformerByCreate(),v=f.with(Y);return l.replaceDocRanges([]),_.clearSelectedObjects(),v.setSegment(``),v.setSegmentPage(-1),m.setEditArea(r.DocumentEditArea.BODY),h.calculate(),(o=f.mainComponent)==null||o.makeDirty(!0),queueMicrotask(()=>{let e=u.getUnit(d),t=e==null?void 0:e.getSnapshot();if(t==null)return;let n=Vo(t);l.replaceDocRanges([{startOffset:n,endOffset:n}])}),s.executeCommand(Uo.id,{value:`close`}),!0}},Jo=class extends t.Disposable{constructor(e,t){super(),this._commandService=e,this._sidebarService=t,O(this,`_id`,void 0)}openPanel(){let e={header:{title:`docs-ui.doc.slider.paragraphSetting`},id:this._id,children:{label:`doc_ui_paragraph-setting-panel`},width:300};this._sidebarService.open(e)}closePanel(){this._sidebarService.close(this._id)}};Jo=A([k(0,t.ICommandService),k(1,(0,t.Inject)(i.ISidebarService))],Jo);let Yo={id:`sidebar.operation.doc-paragraph-setting-panel`,type:t.CommandType.OPERATION,handler:e=>(e.get(Jo).openPanel(),!0)},Xo=`doc_ui_section-setting-panel`,Zo=class extends t.Disposable{constructor(e,t){super(),this._sidebarService=e,this._selectionManager=t,O(this,`_panelId`,`DocSectionSetting`)}openPanel(){this._sidebarService.open({header:{title:`docs-ui.doc.slider.sectionSetting`},id:this._panelId,children:{label:Xo},width:300})}closePanel(){this._sidebarService.close(this._panelId)}navigateToSectionEnd(e,t,n){let r={unitId:e,subUnitId:e},i=Math.max(t,n-1);this._selectionManager.replaceDocRanges([{startOffset:i,endOffset:i}],r,!0,{shouldFocus:!1})}};Zo=A([k(0,(0,t.Inject)(i.ISidebarService)),k(1,(0,t.Inject)(n.DocSelectionManagerService))],Zo);let Qo={id:`sidebar.operation.doc-section-setting-panel`,type:t.CommandType.OPERATION,handler:e=>(e.get(Zo).openPanel(),!0)};function $o(e){let t=e.getActiveTextRange();return!(t!=null&&t.collapsed)||t.segmentId||!Number.isInteger(t.startOffset)?null:t.startOffset}let es={id:`docs.operation.insert-column-break`,type:t.CommandType.OPERATION,handler:e=>{let r=e.get(t.IUniverInstanceService),i=e.get(n.DocSelectionManagerService),a=e.get(t.ICommandService),o=r.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),s=$o(i);return!o||o.getDocumentStyle().documentFlavor!==t.DocumentFlavor.TRADITIONAL||s==null?!1:a.syncExecuteCommand(n.InsertDocumentColumnBreakCommand.id,{unitId:o.getUnitId(),offset:s})}},ts={id:`docs.operation.insert-section-break`,type:t.CommandType.OPERATION,handler:(e,r)=>{var i;if(!r)return!1;let a=e.get(t.IUniverInstanceService),o=e.get(n.DocSelectionManagerService),s=e.get(t.ICommandService),c=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),l=$o(o),u=c==null?void 0:c.getBody();if(!c||!u||c.getDocumentStyle().documentFlavor!==t.DocumentFlavor.TRADITIONAL||l==null)return!1;let d=(0,t.createSectionId)(new Set((i=u.sectionBreaks)==null?void 0:i.map(e=>e.sectionId)));return s.syncExecuteCommand(n.InsertDocumentSectionBreakCommand.id,{unitId:c.getUnitId(),offset:l,sectionId:d,nextSectionType:r.sectionType})}},ns=[t.ModernDocumentWidthMode.NARROW,t.ModernDocumentWidthMode.MEDIUM,t.ModernDocumentWidthMode.WIDE],rs=e=>Object.keys(t.PAGE_SIZE).find(n=>{let{width:r,height:i}=t.PAGE_SIZE[n];return e.width===r&&e.height===i})??`A4`,is=e=>{let n=(e==null?void 0:e.width)??t.MODERN_DOCUMENT_WIDTH[t.ModernDocumentWidthMode.MEDIUM];return ns.reduce((e,r)=>{let i=Math.abs(t.MODERN_DOCUMENT_WIDTH[e]-n);return Math.abs(t.MODERN_DOCUMENT_WIDTH[r]-n)<i?r:e},t.ModernDocumentWidthMode.MEDIUM)};function as(e){let{children:t,muted:n}=e;return(0,l.jsx)(`label`,{className:(0,s.clsx)(`univer-text-sm univer-font-medium`,n?`univer-text-gray-500`:`univer-text-gray-900 dark:!univer-text-gray-0`),children:t})}function os(e){let{hooks:n}=e,r=(0,i.useDependency)(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC).getDocumentStyle(),a=(0,i.useDependency)(t.LocaleService),[o,u]=(0,c.useState)(()=>{var e,n;return{mode:r.documentFlavor===t.DocumentFlavor.TRADITIONAL?t.DocumentFlavor.TRADITIONAL:t.DocumentFlavor.MODERN,modernWidth:is(r.pageSize),paperSize:rs(r.pageSize??t.PAGE_SIZE.A4),pageSize:{width:((e=r.pageSize)==null?void 0:e.width)??0,height:((n=r.pageSize)==null?void 0:n.height)??0},orientation:r.pageOrient??t.PageOrientType.PORTRAIT,margins:{top:r.marginTop??0,bottom:r.marginBottom??0,left:r.marginLeft??0,right:r.marginRight??0}}});(0,c.useEffect)(()=>{n.beforeClose=()=>o,n.beforeConfirm=()=>o},[o]);let d=e=>{u(n=>({...n,paperSize:e,pageSize:t.PAGE_SIZE[e]}))},f=(e,t)=>{u(n=>({...n,margins:{...n.margins,[e]:t||0}}))},p=e=>{u(t=>({...t,modernWidth:e}))};return(0,l.jsx)(`div`,{className:`univer-flex univer-flex-col univer-gap-4`,children:o.mode===t.DocumentFlavor.MODERN?(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2.5`,children:[(0,l.jsx)(as,{children:a.t(`docs-ui.page-settings.modern-width`)}),(0,l.jsx)(`div`,{className:`univer-grid univer-grid-cols-3 univer-gap-2`,children:ns.map(e=>(0,l.jsxs)(`button`,{type:`button`,className:(0,s.clsx)(s.resetButtonClassName,s.borderClassName,`univer-h-16 univer-flex-col univer-gap-1 univer-rounded-lg univer-bg-gray-0 univer-text-sm univer-font-medium univer-text-gray-700 univer-transition-colors hover:univer-border-primary-500 hover:univer-text-primary-600 dark:!univer-bg-gray-900 dark:!univer-text-gray-100`,{"!univer-border-primary-500 !univer-bg-primary-50 !univer-text-primary-600 dark:!univer-bg-primary-900":o.modernWidth===e}),onClick:()=>p(e),children:[(0,l.jsx)(`span`,{children:a.t(`docs-ui.page-settings.modern-width-${e}`)}),(0,l.jsxs)(`span`,{className:`univer-text-xs univer-font-normal univer-text-gray-400`,children:[t.MODERN_DOCUMENT_WIDTH[e],`px`]})]},e))})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2`,children:[(0,l.jsx)(as,{children:a.t(`docs-ui.page-settings.paper-size`)}),(0,l.jsx)(s.Select,{value:o.paperSize,onChange:d,options:t.PAPER_TYPES.map(e=>({label:a.t(`docs-ui.page-settings.page-size.${e.toLocaleLowerCase()}`),value:e}))})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2`,children:[(0,l.jsx)(as,{children:a.t(`docs-ui.page-settings.custom-paper-size`)}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2.5`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-gap-2.5`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(as,{muted:!0,children:a.t(`docs-ui.page-settings.top`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.height/2,value:o.margins.top,onChange:e=>f(`top`,e)})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(as,{muted:!0,children:a.t(`docs-ui.page-settings.bottom`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.height/2,value:o.margins.bottom,onChange:e=>f(`bottom`,e)})]})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-gap-2.5`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(as,{muted:!0,children:a.t(`docs-ui.page-settings.left`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.width/2,value:o.margins.left,onChange:e=>f(`left`,e)})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(as,{muted:!0,children:a.t(`docs-ui.page-settings.right`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.width/2,value:o.margins.right,onChange:e=>f(`right`,e)})]})]})]})]})]})})}let ss=`docs.component.page-setting`;function cs(e){var n;let r=((n=e.pageSize)==null?void 0:n.width)??0;return r?e.documentFlavor===t.DocumentFlavor.MODERN?Math.max(0,r-t.MODERN_DOCUMENT_DEFAULT_MARGIN*2):Math.max(0,r-(e.marginLeft??0)-(e.marginRight??0)):0}function ls(e){return e.tableColumns.reduce((e,t)=>e+(t.size.width.v??0),0)}function us(e,t){if(t<=0||e.tableColumns.length===0)return!1;let n=ls(e)||e.size.width.v;return Math.abs(n-t)<=2}function ds(e,t,n,r,i){!n||r<=0||i<=0||Math.abs(r-i)<=2||Object.entries(n).forEach(([n,a])=>{if(!us(a,r))return;let o=ls(a);if(o<=0)return;let s=e.replaceOp([`tableSource`,n,`size`,`width`,`v`],a.size.width.v,i);s&&t.push(s),a.tableColumns.forEach((r,a)=>{let s=r.size.width.v/o*i,c=e.replaceOp([`tableSource`,n,`tableColumns`,a,`size`,`width`,`v`],r.size.width.v,s);c&&t.push(c)})})}let fs={id:`docs.command.page-setup`,type:t.CommandType.COMMAND,handler:(e,r)=>{if(!r)return!1;let i=e.get(t.IUniverInstanceService),a=e.get(t.ICommandService),o=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!o)return!1;let{documentFlavor:s,marginLeft:c,marginRight:l,marginBottom:u,marginTop:d,pageOrient:f,pageSize:p}=r,m=t.JSONX.getInstance(),h=o.getDocumentStyle(),g=o.getSnapshot(),_={...h,documentFlavor:s??h.documentFlavor,marginBottom:u,marginLeft:c,marginRight:l,marginTop:d,pageOrient:f,pageSize:p},{marginBottom:v,marginLeft:y,marginRight:b,marginTop:x,pageOrient:S,pageSize:C,documentFlavor:w}=h,T=[];if(ds(m,T,g.tableSource,cs(h),cs(_)),s!==void 0)if(w===void 0){let e=m.insertOp([`documentStyle`,`documentFlavor`],s);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`documentFlavor`],w,s);e&&T.push(e)}if(v===void 0){let e=m.insertOp([`documentStyle`,`marginBottom`],u);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginBottom`],v,u);e&&T.push(e)}if(y===void 0){let e=m.insertOp([`documentStyle`,`marginLeft`],c);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginLeft`],y,c);e&&T.push(e)}if(b===void 0){let e=m.insertOp([`documentStyle`,`marginRight`],l);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginRight`],b,l);e&&T.push(e)}if(x===void 0){let e=m.insertOp([`documentStyle`,`marginTop`],d);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginTop`],x,d);e&&T.push(e)}if(C===void 0){let e=m.insertOp([`documentStyle`,`pageSize`],p);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`pageSize`],C,p);e&&T.push(e)}if(S===void 0){let e=m.insertOp([`documentStyle`,`pageOrient`],f);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`pageOrient`],S,f);e&&T.push(e)}let E={id:n.RichTextEditingMutation.id,params:{unitId:o.getUnitId(),actions:[],textRanges:void 0}};return E.params.actions=T.reduce((e,n)=>t.JSONX.compose(e,n),null),!!a.syncExecuteCommand(E.id,E.params)}},ps={id:`docs.operation.open-page-setting`,type:t.CommandType.OPERATION,handler:e=>{let n=e.get(t.IConfirmService),r=e.get(t.ICommandService),i=e.get(t.LocaleService),a=n.open({id:ss,title:{label:i.t(`docs-ui.page-settings.document-setting`)},children:{label:ss},width:528,onClose:()=>{a.dispose()},onConfirm:e=>{if(a.dispose(),!e)return;let n=e.mode===t.DocumentFlavor.MODERN?{width:t.MODERN_DOCUMENT_WIDTH[e.modernWidth],height:t.PAGE_SIZE.A4.height}:t.PAGE_SIZE[e.paperSize];r.executeCommand(fs.id,{documentFlavor:e.mode,pageOrient:e.orientation,marginTop:e.margins.top,marginBottom:e.margins.bottom,marginLeft:e.margins.left,marginRight:e.margins.right,pageSize:n})},confirmText:i.t(`docs-ui.page-settings.confirm`),cancelText:i.t(`docs-ui.page-settings.cancel`)});return!0}},ms=e=>{let r=e.get(n.DocSelectionManagerService);return new a.Observable(e=>{let n=r.textSelection$.subscribe(()=>{r.getDocRanges().some(e=>e.collapsed===!1||e.rangeType===t.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function hs(e){if(e.length<2)return!0;let t=e.map(e=>e.tableId);return t.every(e=>e===t[0])}function gs(e,n,r){let i=n.getRectRanges(),a=n.getActiveTextRange();if(i&&i.length&&hs(i)&&a==null){e.next(!1);return}if(a&&(i==null||i.length===0)){var o;let{segmentId:n,startOffset:i,endOffset:s}=a;if(a.collapsed!==!0&&i!==s){e.next(!0);return}let c=r.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),l=c==null||(o=c.getSelfOrHeaderFooterModel(n))==null||(o=o.getBody())==null?void 0:o.tables;if(l&&l.length&&l.some(e=>{let{startIndex:t,endIndex:n}=e;return i>t&&i<n||s>t&&s<n})){e.next(!1);return}}e.next(!0)}let _s=e=>{let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let t=r.textSelection$.subscribe(()=>{gs(e,r,i)});return gs(e,r,i),()=>t.unsubscribe()})};function vs(e){return{id:vn.name,commandId:vn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.copy`,disabled$:ms(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ys(e){return{id:Yo.id,type:i.MenuItemType.BUTTON,icon:`MenuIcon`,title:`docs-ui.doc.menu.paragraphSetting`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function bs(e){return{id:bn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.cut`,disabled$:ms(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function xs(e){return{id:Sn.id,type:i.MenuItemType.BUTTON,icon:`PasteSpecialDoubleIcon`,title:`docs-ui.rightClick.paste`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ss(e){return{id:je.id,type:i.MenuItemType.BUTTON,icon:`PasteSpecialDoubleIcon`,title:`docs-ui.rightClick.delete`,disabled$:ms(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Cs=`doc.menu.table-insert`;function ws(e){return{id:Cs,type:i.MenuItemType.SUBITEMS,title:`docs-ui.table.insert`,icon:`InsertDoubleIcon`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),_s(e),(e,t)=>e||t)}}function Ts(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let n=()=>{var n;let a=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),o=r.getActiveTextRange(),s=a==null?void 0:a.getBody(),c=!a||a.getDocumentStyle().documentFlavor!==t.DocumentFlavor.TRADITIONAL||!o||!!o.segmentId||!!(s!=null&&(n=s.tables)!=null&&n.some(e=>o.startOffset>e.startIndex&&o.startOffset<e.endIndex));e.next(c)};n();let a=r.textSelection$.subscribe(n);return()=>a.unsubscribe()})}function Es(e){return{id:Qo.id,type:i.MenuItemType.BUTTON,icon:`MenuIcon`,title:`docs-ui.doc.menu.sectionSetting`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),Ts(e),(e,t)=>e||t)}}function Ds(e){return{id:Ka.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertRowAbove`,icon:`InsertRowAboveDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Os(e){return{id:qa.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertRowBelow`,icon:`InsertRowBelowDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ks(e){return{id:Ja.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertColumnLeft`,icon:`LeftInsertColumnDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function As(e){return{id:Ya.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertColumnRight`,icon:`RightInsertColumnDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let js=`doc.menu.table-delete`;function Ms(e){return{id:js,type:i.MenuItemType.SUBITEMS,title:`docs-ui.table.delete`,icon:`ReduceDoubleIcon`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),_s(e),(e,t)=>e||t)}}function Ns(e){return{id:Va.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.deleteRows`,icon:`DeleteRowDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ps(e){return{id:Ha.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.deleteColumns`,icon:`DeleteColumnDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Fs(e){return{id:Ua.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.deleteTable`,icon:`DeleteTableDoubleIcon`,disabled$:_s(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Is={id:`doc.command.insert-special-character`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;if(!(r!=null&&r.value))return!1;let a=e.get(t.ICommandService),o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(I),l=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),u=o.getActiveTextRange();if(!l||!u)return!1;let{segmentId:d}=u,f=(i=l.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();if(!f)return!1;let{value:p}=r,m=S(f,u.endOffset,c.getDefaultStyle(),c.getStyleCache()),h=C(f.customRanges??[],u.endOffset),g=w(f.customDecorations??[],u.endOffset);return a.executeCommand(n.InsertTextCommand.id,{unitId:l.getUnitId(),body:{dataStream:p,textRuns:[{...m,st:0,ed:p.length}],customRanges:h?[{...h,startIndex:0,endIndex:p.length-1}]:[],customDecorations:g.map(e=>({...e,startIndex:0,endIndex:p.length-1}))},range:u,segmentId:d})}},Ls=`UI_PLUGIN_DOCS`,Rs=e=>{let{value:n,onChange:r,options:i}=e,a=[{id:`level-0-top`,levelIndex:0},{id:`level-1`,levelIndex:1},{id:`level-2`,levelIndex:2},{id:`level-0-bottom`,levelIndex:0}],o=[``,`univer-pl-2`,`univer-pl-4`],c=e=>{switch(e){case t.ListGlyphType.DECIMAL_ZERO:return`01`;case t.ListGlyphType.UPPER_LETTER:return`A`;case t.ListGlyphType.LOWER_LETTER:return`a`;case t.ListGlyphType.UPPER_ROMAN:return`I`;case t.ListGlyphType.LOWER_ROMAN:return`i`;default:return`1`}},u=(e,n)=>{var r;let i=t.PRESET_LIST_TYPE[e].nestingLevel,a=i[n];return a.glyphSymbol?a.glyphSymbol:((r=a.glyphFormat)==null?void 0:r.replace(/%(\d+)/g,(e,t)=>{var n;return c((n=i[Number(t)-1])==null?void 0:n.glyphType)}))??`1.`};return(0,l.jsx)(`div`,{className:`univer-grid univer-grid-cols-3 univer-gap-2 univer-p-1.5`,"data-u-editor-interaction-boundary":`true`,children:i.map(e=>(0,l.jsx)(`a`,{className:(0,s.clsx)(`univer-block univer-h-20 univer-w-[72px] univer-cursor-pointer univer-overflow-hidden univer-rounded univer-transition-all hover:univer-border-primary-500`,s.borderClassName,{"univer-border-primary-500":n===e}),onClick:()=>r(e),children:(0,l.jsx)(`div`,{className:`univer-box-border univer-grid univer-size-full univer-grid-rows-4 univer-gap-1 univer-bg-gray-50 univer-p-2 univer-text-gray-900`,"data-u-comp":`list-type-preview`,children:a.map(({id:t,levelIndex:n})=>(0,l.jsxs)(`div`,{className:(0,s.clsx)(`univer-flex univer-items-center univer-gap-1`,o[n]),children:[(0,l.jsx)(`span`,{className:`univer-w-3 univer-shrink-0 univer-overflow-hidden univer-text-center univer-text-[10px] univer-leading-none`,children:u(e,n)}),(0,l.jsx)(`span`,{className:`univer-h-1 univer-flex-1 univer-rounded univer-bg-gray-200`})]},t))})},e))})},zs=[t.PresetListType.ORDER_LIST,t.PresetListType.ORDER_LIST_1,t.PresetListType.ORDER_LIST_2,t.PresetListType.ORDER_LIST_3,t.PresetListType.ORDER_LIST_4,t.PresetListType.ORDER_LIST_5],Bs=e=>(0,l.jsx)(Rs,{...e,options:zs}),Vs=[t.PresetListType.BULLET_LIST,t.PresetListType.BULLET_LIST_1,t.PresetListType.BULLET_LIST_2,t.PresetListType.BULLET_LIST_3,t.PresetListType.BULLET_LIST_4,t.PresetListType.BULLET_LIST_5],Hs=e=>(0,l.jsx)(Rs,{...e,options:Vs}),Us=`${Ls}_ORDER_LIST_TYPE_COMPONENT`,Ws=`${Ls}_BULLET_LIST_TYPE_COMPONENT`;function X(e){let n,r;try{n=e.get(t.IUniverInstanceService)}catch(e){if(Qc(e))return!0;throw e}try{r=e.get(ji)}catch{return!1}let i=n.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),a=i==null?void 0:i.getUnitId();return r.shouldSuppressHostInteraction(a)}function Gs(e){let i=e.get(t.IUniverInstanceService),o=e.get(r.IRenderManagerService);return new a.Observable(e=>{let a=null,s=i.focused$.subscribe(s=>{if(a==null||a.unsubscribe(),a=null,s==null||i.getUnitType(s)!==t.UniverInstanceType.UNIVER_DOC)return e.next(!0);let c=o.getRenderUnitById(s);if(c==null)return e.next(!0);a=c.with(n.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(t=>{e.next(t===r.DocumentEditArea.HEADER||t===r.DocumentEditArea.FOOTER)})});return()=>{a==null||a.unsubscribe(),s.unsubscribe()}})}function Ks(e){let i=e.get(t.IUniverInstanceService),o=e.get(r.IRenderManagerService);return new a.Observable(e=>{let a=null,s,c=t=>{t!==s&&(s=t,e.next(t))},l=i.focused$.subscribe(e=>{if(a==null||a.unsubscribe(),a=null,!e||i.getUnitType(e)!==t.UniverInstanceType.UNIVER_DOC){c(!0);return}let s=o.getRenderUnitById(e),l=s==null?void 0:s.with(n.DocSkeletonManagerService),u=l==null?void 0:l.getViewModel();if(!u){c(!0);return}let d=e=>{let t=e??u.getEditArea();c(t===r.DocumentEditArea.HEADER||t===r.DocumentEditArea.FOOTER)};d(),a=u.editAreaChange$.subscribe(d)});return()=>{a==null||a.unsubscribe(),l.unsubscribe()}})}function qs(e){let r=e.get(t.IUniverInstanceService),i=e.get(t.ICommandService);return new a.Observable(e=>{let a=i.onCommandExecuted(i=>{if(i.id===n.RichTextEditingMutation.id){let{unitId:n}=i.params,a=r.getUnit(n);if(a==null){e.next(!0);return}let{documentStyle:o}=a.getSnapshot();e.next((o==null?void 0:o.documentFlavor)!==t.DocumentFlavor.TRADITIONAL)}}),o=r.focused$.subscribe(n=>{if(n==null)return e.next(!0);let i=r.getUnit(n,t.UniverInstanceType.UNIVER_DOC),a=i==null?void 0:i.getSnapshot().documentStyle.documentFlavor;e.next(a!==t.DocumentFlavor.TRADITIONAL)}),s=r.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),c=s==null?void 0:s.getSnapshot().documentStyle.documentFlavor;return e.next(s==null||c!==t.DocumentFlavor.TRADITIONAL),()=>{a.dispose(),o.unsubscribe()}})}function Js(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(n=>{let a=r.textSelection$.subscribe(r=>{if(r==null){n.next(!0);return}let{textRanges:a}=r;if(a.length!==1){n.next(!0);return}let{collapsed:o,startNodePosition:s,startOffset:c}=a[0];if(!o||c==null){n.next(!0);return}let l=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(l==null){n.next(!0);return}let u=B(e,l.getUnitId());if(u==null){n.next(!0);return}if(u.getViewModel().getCustomRangeRaw(c)){n.next(!0);return}if(s!=null){let{path:e}=s;if(e.indexOf(`cells`)!==-1){n.next(!0);return}}n.next(!1)});return()=>a.unsubscribe()})}function Z(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let n=r.textSelection$.subscribe(n=>{var r;if(n==null){e.next(!0);return}let{textRanges:a,rectRanges:o}=n;if(a.length===0&&o.length===0){e.next(!0);return}let s=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(((s==null||(r=s.getBody())==null||(r=r.blockRanges)==null?void 0:r.filter(e=>e.blockType===t.DocumentBlockRangeType.CODE))??[]).some(e=>a.some(t=>Math.max(t.startOffset,e.startIndex)<=Math.min(t.endOffset,e.endIndex)))){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}let Ys=`doc.menu.insert-emoji`,Xs=`doc.menu.insert-symbol`;function Zs(e){return{id:Ys,type:i.MenuItemType.SELECTOR,icon:`SmileIcon`,tooltip:`ui.emojiPicker.emojis`,selectionsCommandId:Is.id,selections:[{label:{name:i.EMOJI_PICKER_COMPONENT,hoverable:!1,selectable:!1,props:{embedded:!0}}}],disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Qs(e){return{id:Xs,type:i.MenuItemType.SELECTOR,icon:`SymbolsIcon`,tooltip:`ui.emojiPicker.symbols`,selectionsCommandId:Is.id,selections:[{label:{name:i.SYMBOL_PICKER_COMPONENT,hoverable:!1,selectable:!1,props:{embedded:!0}}}],disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function $s(e,t){var n;let r=(e==null||(n=e.getBody())==null?void 0:n.blockRanges)??[],i=t.startOffset,a=t.collapsed?t.startOffset:t.endOffset-1;return r.some(e=>Math.max(i,e.startIndex)<=Math.min(a,e.endIndex))}function ec(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let n=n=>{var a;let o=(a=r.__getCurrentSelection)==null?void 0:a.call(r),s=(n==null?void 0:n.textRanges)??[...r.getTextRanges()??[]],c=(n==null?void 0:n.unitId)??(o==null?void 0:o.unitId),l=c?i.getUnit(c,t.UniverInstanceType.UNIVER_DOC):i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);e.next(s.some(e=>$s(l,e)))};n();let a=r.textSelection$.subscribe(e=>n(e));return()=>a.unsubscribe()})}function tc(e){let r=e.get(t.ICommandService);return{id:cr.id,type:i.MenuItemType.BUTTON,icon:`BoldIcon`,title:`docs-ui.toolbar.bold`,tooltip:`docs-ui.toolbar.bold`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Xc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.bl;i.next(a===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Pr.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function nc(e){let r=e.get(t.ICommandService);return{id:ur.id,type:i.MenuItemType.BUTTON,icon:`ItalicIcon`,title:`docs-ui.toolbar.italic`,tooltip:`docs-ui.toolbar.italic`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Xc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.it;i.next(a===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Pr.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function rc(e){let r=e.get(t.ICommandService);return{id:fr.id,type:i.MenuItemType.BUTTON,icon:`UnderlineIcon`,title:`docs-ui.toolbar.underline`,tooltip:`docs-ui.toolbar.underline`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Xc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.ul;i.next((a==null?void 0:a.s)===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Pr.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ic(e){let r=e.get(t.ICommandService);return{id:mr.id,type:i.MenuItemType.BUTTON,icon:`StrikethroughIcon`,title:`docs-ui.toolbar.strikethrough`,tooltip:`docs-ui.toolbar.strikethrough`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Xc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.st;i.next((a==null?void 0:a.s)===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Pr.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ac(e){let r=e.get(t.ICommandService);return{id:gr.id,type:i.MenuItemType.BUTTON,icon:`SubscriptIcon`,tooltip:`docs-ui.toolbar.subscript`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Xc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.va;i.next(a===t.BaselineOffset.SUBSCRIPT)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Pr.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function oc(e){let r=e.get(t.ICommandService);return{id:vr.id,type:i.MenuItemType.BUTTON,icon:`SuperscriptIcon`,tooltip:`docs-ui.toolbar.superscript`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Xc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.va;i.next(a===t.BaselineOffset.SUPERSCRIPT)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Pr.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function sc(e){let r=e.get(t.ICommandService);return{id:Sr.id,tooltip:`docs-ui.toolbar.font`,type:i.MenuItemType.SELECTOR,label:{name:i.FONT_FAMILY_COMPONENT,props:{id:Sr.id}},selections:[{label:{name:i.FONT_FAMILY_ITEM_COMPONENT,hoverable:!1,selectable:!1,props:{id:Sr.id}}}],value$:new a.Observable(i=>{let a=t.DEFAULT_STYLES.ff,o=()=>{var t;if(X(e))return;let n=Xc(e);if(n==null){i.next(a);return}let r=(t=n.ts)==null?void 0:t.ff;i.next(r??a)},s=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Sr.id)&&o()});return o(),s.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function cc(e){let r=e.get(t.ICommandService);return{id:br.id,type:i.MenuItemType.SELECTOR,tooltip:`docs-ui.toolbar.fontSize`,label:{name:i.FONT_SIZE_COMPONENT,props:{min:1,max:400}},selections:i.FONT_SIZE_LIST,value$:new a.Observable(i=>{let a=t.DEFAULT_STYLES.fs,o=()=>{var t;if(X(e))return;let n=Xc(e);if(n==null){i.next(a);return}let r=(t=n.ts)==null?void 0:t.fs;i.next(r??a)},s=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===br.id)&&o()});return o(),s.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function lc(e){let r=e.get(t.ICommandService);return{id:_i.id,type:i.MenuItemType.SELECTOR,tooltip:`docs-ui.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 a.Observable(i=>{let a=t.NamedStyleType.NORMAL_TEXT,o=()=>{var t;if(X(e))return;let n=Zc(e);if(n==null){i.next(a);return}let r=((t=n.paragraphStyle)==null?void 0:t.namedStyleType)??a;i.next(r)},s=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===br.id)&&o()});return o(),s.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let uc=`doc.menu.float-text-style`,dc=`doc.menu.float-toolbar`,fc=[{icon:`TextTypeIcon`,label:`docs-ui.toolbar.heading.normal`,value:t.NamedStyleType.NORMAL_TEXT},{icon:`H1Icon`,label:`docs-ui.toolbar.heading.leading1`,value:t.NamedStyleType.HEADING_1},{icon:`H2Icon`,label:`docs-ui.toolbar.heading.leading2`,value:t.NamedStyleType.HEADING_2},{icon:`H3Icon`,label:`docs-ui.toolbar.heading.leading3`,value:t.NamedStyleType.HEADING_3},{icon:`H4Icon`,label:`docs-ui.toolbar.heading.leading4`,value:t.NamedStyleType.HEADING_4},{icon:`H5Icon`,label:`docs-ui.toolbar.heading.leading5`,value:t.NamedStyleType.HEADING_5},{id:ri.id,icon:`OrderIcon`,label:`docs-ui.toolbar.order`,value:t.PresetListType.ORDER_LIST},{id:ei.id,icon:`UnorderIcon`,label:`docs-ui.toolbar.unorder`,value:t.PresetListType.BULLET_LIST},{id:ti.id,icon:`TodoListDoubleIcon`,label:`docs-ui.toolbar.checklist`,value:t.PresetListType.CHECK_LIST}];function pc(e){var n,r;let i=e==null||(n=e.bullet)==null?void 0:n.listType;return i!=null&&i.startsWith(t.PresetListType.ORDER_LIST)?t.PresetListType.ORDER_LIST:i!=null&&i.startsWith(t.PresetListType.BULLET_LIST)?t.PresetListType.BULLET_LIST:i===t.PresetListType.CHECK_LIST||i===t.PresetListType.CHECK_LIST_CHECKED?t.PresetListType.CHECK_LIST:(e==null||(r=e.paragraphStyle)==null?void 0:r.namedStyleType)??t.NamedStyleType.NORMAL_TEXT}function mc(e){let r=e.get(t.ICommandService);return{id:uc,commandId:_i.id,type:i.MenuItemType.SELECTOR,icon:`TextTypeIcon`,tooltip:`docs-ui.toolbar.heading.tooltip`,selections:fc,value$:new a.Observable(t=>{let i=()=>{X(e)||t.next(pc(Zc(e)))},a=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===_i.id||t===ri.id||t===ei.id||t===ti.id)&&i()});return i(),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function hc(e){let n=e.get(t.ICommandService),r=e.get(t.ThemeService);return{id:wr.id,icon:`FontColorDoubleIcon`,tooltip:`docs-ui.toolbar.textColor.main`,type:i.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:i.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1},value$:new a.Observable(t=>{let i=r.getColorFromTheme(`gray.900`),a=()=>{var n;if(X(e))return;let r=Xc(e);if(!r){t.next(i);return}let a=(n=r.ts)==null||(n=n.cl)==null?void 0:n.rgb;t.next(a??i)},o=n.onCommandExecuted(e=>{e.id===wr.id&&a()});return a(),o.dispose})}],value$:new a.Observable(t=>{let i=r.getColorFromTheme(`gray.900`),a=n.onCommandExecuted(n=>{if(n.id===wr.id){if(X(e))return;let r=n.params.value;t.next(r??i)}});return t.next(i),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function gc(e){return{id:Ko.id,type:i.MenuItemType.BUTTON,icon:`HeaderFooterIcon`,tooltip:`docs-ui.toolbar.headerFooter`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),qs(e),(e,t)=>e||t)}}let _c=`doc.menu.breaks`,vc=`doc.menu.section-break.next-page`,yc=`doc.menu.section-break.continuous`,bc=`doc.menu.section-break.next-column`,xc=`doc.menu.section-break.even-page`,Sc=`doc.menu.section-break.odd-page`;function Cc(e){return{id:_c,type:i.MenuItemType.SUBITEMS,icon:`ColumnIcon`,tooltip:`docs-ui.toolbar.breaks`,disabled$:Z(e),hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),qs(e),(e,t)=>e||t)}}function wc(e){return{id:es.id,type:i.MenuItemType.BUTTON,title:`docs-ui.toolbar.columnBreak`,disabled$:Z(e)}}function Tc(e,t,n,r){return{id:t,commandId:ts.id,params:{sectionType:r},type:i.MenuItemType.BUTTON,title:n,disabled$:Z(e)}}function Ec(e){return Tc(e,vc,`docs-ui.toolbar.sectionBreakNextPage`,t.SectionType.NEXT_PAGE)}function Dc(e){return Tc(e,yc,`docs-ui.toolbar.sectionBreakContinuous`,t.SectionType.CONTINUOUS)}function Oc(e){return Tc(e,bc,`docs-ui.toolbar.sectionBreakNextColumn`,t.SectionType.NEXT_COLUMN)}function kc(e){return Tc(e,xc,`docs-ui.toolbar.sectionBreakEvenPage`,t.SectionType.EVEN_PAGE)}function Ac(e){return Tc(e,Sc,`docs-ui.toolbar.sectionBreakOddPage`,t.SectionType.ODD_PAGE)}let jc=`GridIcon`,Mc=`doc.menu.table`;function Nc(e){return{id:Mc,type:i.MenuItemType.SUBITEMS,icon:jc,tooltip:`docs-ui.toolbar.table.main`,disabled$:Js(e),hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),Gs(e),(e,t)=>e||t)}}function Pc(e){return{id:to.id,title:`docs-ui.toolbar.table.insert`,type:i.MenuItemType.BUTTON,icon:jc,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Fc(e){return{id:to.id,commandId:Ba.id,params:{rowCount:3,colCount:5},title:`docs-ui.toolbar.table.insert`,type:i.MenuItemType.BUTTON,icon:jc,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ic(e){let r=e.get(t.ICommandService);return{id:ui.id,type:i.MenuItemType.BUTTON,icon:`LeftJustifyingIcon`,tooltip:`docs-ui.toolbar.alignLeft`,disabled$:Z(e),activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===li.id){var o;if(X(e))return;let n=Zc(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.LEFT)}});return i.next(!1),a.dispose}),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Lc(e){let r=e.get(t.ICommandService);return{id:di.id,type:i.MenuItemType.BUTTON,icon:`HorizontallyIcon`,tooltip:`docs-ui.toolbar.alignCenter`,activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===li.id){var o;if(X(e))return;let n=Zc(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.CENTER)}});return i.next(!1),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Rc(e){let r=e.get(t.ICommandService);return{id:fi.id,type:i.MenuItemType.BUTTON,icon:`RightJustifyingIcon`,tooltip:`docs-ui.toolbar.alignRight`,activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===li.id){var o;if(X(e))return;let n=Zc(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.RIGHT)}});return i.next(!1),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function zc(e){let r=e.get(t.ICommandService);return{id:pi.id,type:i.MenuItemType.BUTTON,icon:`AlignTextBothIcon`,tooltip:`docs-ui.toolbar.alignJustify`,activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===li.id){var o;if(X(e))return;let n=Zc(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.JUSTIFIED)}});return i.next(!1),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Bc=[{id:ui.id,value:t.HorizontalAlign.LEFT,label:`docs-ui.toolbar.alignLeft`,icon:`LeftJustifyingIcon`},{id:di.id,value:t.HorizontalAlign.CENTER,label:`docs-ui.toolbar.alignCenter`,icon:`HorizontallyIcon`},{id:fi.id,value:t.HorizontalAlign.RIGHT,label:`docs-ui.toolbar.alignRight`,icon:`RightJustifyingIcon`},{id:pi.id,value:t.HorizontalAlign.JUSTIFIED,label:`docs-ui.toolbar.alignJustify`,icon:`AlignTextBothIcon`}];function Vc(e){let r=e.get(t.ICommandService),o=new a.Observable(i=>{let a=()=>{var n;if(X(e)){i.next(t.HorizontalAlign.LEFT);return}let r=Zc(e);i.next((r==null||(n=r.paragraphStyle)==null?void 0:n.horizontalAlign)??t.HorizontalAlign.LEFT)},o=r.onCommandExecuted(e=>{(e.id===n.SetTextSelectionsOperation.id||e.id===li.id)&&a()});return a(),o.dispose}).pipe((0,a.distinctUntilChanged)(),(0,a.shareReplay)({bufferSize:1,refCount:!0}));return{id:li.id,type:i.MenuItemType.SELECTOR,icon:o.pipe((0,a.map)(e=>{var t;return((t=Bc.find(t=>t.value===e))==null?void 0:t.icon)??`LeftJustifyingIcon`})),tooltip:`docs-ui.toolbar.alignLeft`,selections:Bc,value$:o,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Hc(e){return{id:Vn.id,type:i.MenuItemType.BUTTON,icon:`ReduceIcon`,tooltip:`docs-ui.toolbar.horizontalLine`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Uc=e=>new a.Observable(r=>{let i=e.get(t.IUniverInstanceService),a=e.get(n.DocSelectionManagerService),o=i.focused$.subscribe(n=>{if(X(e)||n==null)return;let o=i.getUnit(n,t.UniverInstanceType.UNIVER_DOC);if(o==null)return;let s=a.getDocRanges(),c=s.find(e=>e.isActive)??s[0];if(c){var l,u;let e=o.getSelfOrHeaderFooterModel(c==null?void 0:c.segmentId),n=t.BuildTextUtils.range.getParagraphsInRange(c,(e==null||(l=e.getBody())==null?void 0:l.paragraphs)??[],(e==null||(u=e.getBody())==null?void 0:u.dataStream)??``),i;if(n.every(e=>{if(!i){var t;i=(t=e.bullet)==null?void 0:t.listType}return e.bullet&&e.bullet.listType===i})){r.next(i);return}}r.next(void 0)});return()=>{o.unsubscribe()}});function Wc(e){return{id:ri.id,type:i.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Us,hoverable:!1,selectable:!1},value$:Uc(e)}],icon:`OrderIcon`,tooltip:`docs-ui.toolbar.order`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),disabled$:Z(e),activated$:Uc(e).pipe((0,a.map)(e=>!!(e&&e.indexOf(`ORDER_LIST`)===0)))}}function Gc(e){return{id:ei.id,type:i.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Ws,hoverable:!1,selectable:!1},value$:Uc(e)}],icon:`UnorderIcon`,tooltip:`docs-ui.toolbar.unorder`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:Uc(e).pipe((0,a.map)(e=>!!(e&&e.indexOf(`BULLET_LIST`)===0)))}}function Kc(e){return{id:ti.id,type:i.MenuItemType.BUTTON,icon:`TodoListDoubleIcon`,tooltip:`docs-ui.toolbar.checklist`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:Uc(e).pipe((0,a.map)(e=>!!(e&&e.indexOf(`CHECK_LIST`)===0)))}}function qc(e){let n=e.get(t.ThemeService);return{id:Er.id,commandId:wr.id,type:i.MenuItemType.BUTTON,title:`docs-ui.toolbar.resetColor`,icon:`NoColorDoubleIcon`,params:()=>({value:n.getColorFromTheme(`gray.900`)})}}function Jc(e){let n=e.get(t.ThemeService);return{id:Mr.id,commandId:Ar.id,type:i.MenuItemType.BUTTON,title:`docs-ui.toolbar.resetColor`,icon:`NoColorDoubleIcon`,params:()=>({value:n.getColorFromTheme(`primary.600`)})}}function Yc(e){let n=e.get(t.ICommandService),r=e.get(t.ThemeService);return{id:Ar.id,tooltip:`docs-ui.toolbar.fillColor.main`,type:i.MenuItemType.BUTTON_SELECTOR,icon:`PaintBucketDoubleIcon`,selections:[{label:{name:i.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1},value$:new a.Observable(t=>{let i=r.getColorFromTheme(`primary.600`),a=()=>{var n;if(X(e))return;let r=Xc(e);if(!r){t.next(i);return}let a=(n=r.ts)==null||(n=n.bg)==null?void 0:n.rgb;t.next(a??i)},o=n.onCommandExecuted(e=>{e.id===Ar.id&&a()});return a(),o.dispose})}],value$:new a.Observable(t=>{let i=r.getColorFromTheme(`primary.600`),a=n.onCommandExecuted(n=>{if(n.id===Ar.id){if(X(e))return;let r=n.params.value;t.next(r??i)}});return t.next(i),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Xc(e){var r,i,a;if(X(e))return;let o,s,c;try{o=e.get(t.IUniverInstanceService),s=e.get(n.DocSelectionManagerService),c=e.get(I)}catch(e){if(Qc(e))return;throw e}let l=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),u=s.getDocRanges(),d=u.find(e=>e.isActive)??u[0],f=c.getDefaultStyle(),p=c.getStyleCache()??{},m=Zc(e),h=m!=null&&(r=m.paragraphStyle)!=null&&r.namedStyleType?t.NAMED_STYLE_MAP[m==null||(i=m.paragraphStyle)==null?void 0:i.namedStyleType]:null;if(l==null||d==null)return{ts:{...f,...h,...p}};let{segmentId:g}=d,_=(a=l.getSelfOrHeaderFooterModel(g))==null?void 0:a.getBody();if(_==null)return{ts:{...f,...h,...p}};let v=Rr(_,d,{});return t.Tools.deleteNull(v),{ts:{...f,...h,...v,...p}}}function Zc(e){var r;if(X(e))return;let i,a;try{i=e.get(t.IUniverInstanceService),a=e.get(n.DocSelectionManagerService)}catch(e){if(Qc(e))return;throw e}let o=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),s=a.getDocRanges(),c=s.find(e=>e.isActive)??s[0];if(o==null||c==null)return;let{startOffset:l,segmentId:u}=c,d=(r=o.getSelfOrHeaderFooterModel(u))==null||(r=r.getBody())==null?void 0:r.paragraphs;if(d==null)return;let f=-1;for(let e of d){let{startIndex:t}=e;if(l>f&&l<=t)return e;f=t}return null}function Qc(e){return e instanceof Error?e.name===`InjectorAlreadyDisposedError`||e.message.includes(`Injector cannot be accessed after it was disposed`):!1}function $c(e){return{id:ps.id,type:i.MenuItemType.BUTTON,icon:`DocSettingIcon`,tooltip:`docs-ui.toolbar.pageSetup`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function el(e,n){let r=`highlight.background.${n+1}`,i=e.getColorFromTheme(r);if(i==null||typeof i.color!=`string`||typeof i.alpha!=`number`)throw Error(`Theme token ${r} is required.`);return new t.ColorKit(e.getColorFromTheme(i.color)??i.color).setAlpha(i.alpha).toRgbString()}let tl=[`#FE4B4B`,`#FF8C51`,`#A4DC16`,`#2DAEFF`,`#3A60F7`,`#9E6DE3`,`#F248A6`],nl=[`DocParagraphTextColorSwatchIcon.0`,`DocParagraphTextColorSwatchIcon.1`,`DocParagraphTextColorSwatchIcon.2`,`DocParagraphTextColorSwatchIcon.3`,`DocParagraphTextColorSwatchIcon.4`,`DocParagraphTextColorSwatchIcon.5`,`DocParagraphTextColorSwatchIcon.6`],rl=[`DocParagraphBackgroundColorSwatchIcon.0`,`DocParagraphBackgroundColorSwatchIcon.1`,`DocParagraphBackgroundColorSwatchIcon.2`,`DocParagraphBackgroundColorSwatchIcon.3`,`DocParagraphBackgroundColorSwatchIcon.4`,`DocParagraphBackgroundColorSwatchIcon.5`,`DocParagraphBackgroundColorSwatchIcon.6`,`DocParagraphBackgroundColorSwatchIcon.7`,`DocParagraphBackgroundColorSwatchIcon.8`,`DocParagraphBackgroundColorSwatchIcon.9`,`DocParagraphBackgroundColorSwatchIcon.10`,`DocParagraphBackgroundColorSwatchIcon.11`,`DocParagraphBackgroundColorSwatchIcon.12`,`DocParagraphBackgroundColorSwatchIcon.13`,`DocParagraphBackgroundColorSwatchIcon.14`];function il(e,r){let i=e.get(t.ICommandService);return new a.Observable(a=>{let o=t.NamedStyleType.NORMAL_TEXT,s=()=>{var t;if(X(e))return;let n=Zc(e);if(n==null){a.next(o===r);return}let i=((t=n.paragraphStyle)==null?void 0:t.namedStyleType)??o;a.next(i===r)},c=i.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===br.id)&&s()});return s(),c.dispose})}function al(e){return{id:xi.id,type:i.MenuItemType.BUTTON,icon:`H1Icon`,title:`docs-ui.toolbar.heading.leading1`,tooltip:`docs-ui.toolbar.heading.leading1`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.HEADING_1)}}function ol(e){return{id:Si.id,type:i.MenuItemType.BUTTON,icon:`H2Icon`,title:`docs-ui.toolbar.heading.leading2`,tooltip:`docs-ui.toolbar.heading.leading2`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.HEADING_2)}}function sl(e){return{id:Ci.id,type:i.MenuItemType.BUTTON,icon:`H3Icon`,title:`docs-ui.toolbar.heading.leading3`,tooltip:`docs-ui.toolbar.heading.leading3`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.HEADING_3)}}function cl(e){return{id:wi.id,type:i.MenuItemType.BUTTON,icon:`H4Icon`,title:`docs-ui.toolbar.heading.leading4`,tooltip:`docs-ui.toolbar.heading.leading4`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.HEADING_4)}}function ll(e){return{id:Ti.id,type:i.MenuItemType.BUTTON,icon:`H5Icon`,title:`docs-ui.toolbar.heading.leading5`,tooltip:`docs-ui.toolbar.heading.leading5`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.HEADING_5)}}function ul(e){return{id:Ei.id,type:i.MenuItemType.BUTTON,icon:`TextTypeIcon`,title:`docs-ui.toolbar.heading.normal`,tooltip:`docs-ui.toolbar.heading.normal`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.NORMAL_TEXT)}}function dl(e){return{id:Di.id,type:i.MenuItemType.BUTTON,icon:`TitleTypeIcon`,title:`docs-ui.toolbar.heading.title`,tooltip:`docs-ui.toolbar.heading.title`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.TITLE)}}function fl(e){return{id:Oi.id,type:i.MenuItemType.BUTTON,icon:`SubtitleTypeIcon`,title:`docs-ui.toolbar.heading.subTitle`,tooltip:`docs-ui.toolbar.heading.subTitle`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:il(e,t.NamedStyleType.SUBTITLE)}}let pl=`doc.menu.empty-paragraph`;function ml(){return{id:xi.id,type:i.MenuItemType.BUTTON,icon:`H1Icon`,title:`docs-ui.toolbar.heading.leading1`,tooltip:`docs-ui.toolbar.heading.leading1`}}function hl(){return{id:Si.id,type:i.MenuItemType.BUTTON,icon:`H2Icon`,title:`docs-ui.toolbar.heading.leading2`,tooltip:`docs-ui.toolbar.heading.leading2`}}function gl(){return{id:Ci.id,type:i.MenuItemType.BUTTON,icon:`H3Icon`,title:`docs-ui.toolbar.heading.leading3`,tooltip:`docs-ui.toolbar.heading.leading3`}}function _l(){return{id:wi.id,type:i.MenuItemType.BUTTON,icon:`H4Icon`,title:`docs-ui.toolbar.heading.leading4`,tooltip:`docs-ui.toolbar.heading.leading4`}}function vl(){return{id:Ti.id,type:i.MenuItemType.BUTTON,icon:`H5Icon`,title:`docs-ui.toolbar.heading.leading5`,tooltip:`docs-ui.toolbar.heading.leading5`}}function yl(){return{id:Ei.id,type:i.MenuItemType.BUTTON,icon:`TextTypeIcon`,title:`docs-ui.toolbar.heading.normal`,tooltip:`docs-ui.toolbar.heading.normal`}}function bl(){return{id:ri.id,type:i.MenuItemType.BUTTON,icon:`OrderIcon`,title:`docs-ui.rightClick.orderList`,tooltip:`docs-ui.rightClick.orderList`}}function xl(){return{id:ei.id,type:i.MenuItemType.BUTTON,icon:`UnorderIcon`,title:`docs-ui.rightClick.bulletList`,tooltip:`docs-ui.rightClick.bulletList`}}function Sl(){return{id:ti.id,type:i.MenuItemType.BUTTON,icon:`TodoListDoubleIcon`,title:`docs-ui.rightClick.checkList`,tooltip:`docs-ui.rightClick.checkList`}}function Cl(){return{id:Vn.id,type:i.MenuItemType.BUTTON,icon:`ReduceIcon`,title:`docs-ui.toolbar.horizontalLine`,tooltip:`docs-ui.toolbar.horizontalLine`}}function wl(){return{id:yn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.copy`}}function Tl(){return{id:xn.id,type:i.MenuItemType.BUTTON,icon:`CutIcon`,title:`docs-ui.rightClick.cut`}}function El(){return{id:Le.id,type:i.MenuItemType.BUTTON,icon:`DeleteIcon`,title:`docs-ui.rightClick.delete`}}function Dl(){return{id:oi.id,type:i.MenuItemType.BUTTON,icon:`UnorderIcon`,title:`docs-ui.rightClick.bulletList`,tooltip:`docs-ui.rightClick.bulletList`}}function Ol(){return{id:si.id,type:i.MenuItemType.BUTTON,icon:`OrderIcon`,title:`docs-ui.rightClick.orderList`,tooltip:`docs-ui.rightClick.orderList`}}function kl(){return{id:ci.id,type:i.MenuItemType.BUTTON,icon:`TodoListDoubleIcon`,title:`docs-ui.rightClick.checkList`,tooltip:`docs-ui.rightClick.checkList`}}function Al(){return{id:Hn.id,type:i.MenuItemType.BUTTON,icon:`ReduceIcon`,title:`docs-ui.toolbar.horizontalLine`,tooltip:`docs-ui.toolbar.horizontalLine`}}let jl=`doc.menu.insert-bellow`,Ml=`doc.menu.content-insert`,Nl=`doc.menu.table-block`,Pl=`doc.menu.paragraph-t.insert`,Fl=`doc.menu.paragraph-t.edit`,Il=`doc.menu.paragraph-t.divider`,Ll=`doc.menu.paragraph-t.align`,Rl=`doc.menu.paragraph-t.colors`,zl=`doc.menu.paragraph-t.insert-below`,Bl=`doc.menu.paragraph-t.indent.increase`,Vl=`doc.menu.paragraph-t.indent.decrease`,Hl=`doc.menu.paragraph-t.insert-below.command`;function Ul(e){return`doc.block-range.${e}.menu`}function Wl(){return{id:vn.name,commandId:vn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.copy`}}function Gl(){return{id:Sn.id,type:i.MenuItemType.BUTTON,icon:`PasteSpecialDoubleIcon`,title:`docs-ui.rightClick.paste`}}function Kl(){return{id:Ua.id,type:i.MenuItemType.BUTTON,icon:`DeleteIcon`,title:`docs-ui.rightClick.delete`}}function ql(){return{id:jl,type:i.MenuItemType.SUBITEMS,title:`docs-ui.rightClick.insertBellow`}}function Jl(e){return{id:Ll,type:i.MenuItemType.SUBITEMS,icon:`LeftJustifyingIcon`,title:`docs-ui.paragraphMenu.alignAndIndent`,tooltip:`docs-ui.paragraphMenu.alignAndIndent`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Yl(e){return{id:Rl,type:i.MenuItemType.SUBITEMS,icon:`PaintBucketDoubleIcon`,title:`docs-ui.paragraphMenu.color`,tooltip:`docs-ui.paragraphMenu.color`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Xl(e){return{...hc(e),icon:`HeaderTextColorIcon`,tooltip:void 0,title:void 0}}function Zl(e){return{...Yc(e),icon:`PaintBucketDoubleIcon`,tooltip:void 0,title:void 0}}function Ql(e){return{id:zl,type:i.MenuItemType.SUBITEMS,icon:`TextTypeIcon`,title:`docs-ui.rightClick.insertBellow`,tooltip:`docs-ui.rightClick.insertBellow`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function $l(e){return{id:`${Hl}.h1`,commandId:Hl,type:i.MenuItemType.BUTTON,icon:`H1Icon`,title:`docs-ui.toolbar.heading.leading1`,tooltip:`docs-ui.toolbar.heading.leading1`,params:{commandId:xi.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function eu(e){return{id:`${Hl}.h2`,commandId:Hl,type:i.MenuItemType.BUTTON,icon:`H2Icon`,title:`docs-ui.toolbar.heading.leading2`,tooltip:`docs-ui.toolbar.heading.leading2`,params:{commandId:Si.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function tu(e){return{id:`${Hl}.h3`,commandId:Hl,type:i.MenuItemType.BUTTON,icon:`H3Icon`,title:`docs-ui.toolbar.heading.leading3`,tooltip:`docs-ui.toolbar.heading.leading3`,params:{commandId:Ci.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function nu(e){return{id:`${Hl}.h4`,commandId:Hl,type:i.MenuItemType.BUTTON,icon:`H4Icon`,title:`docs-ui.toolbar.heading.leading4`,tooltip:`docs-ui.toolbar.heading.leading4`,params:{commandId:wi.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ru(e){return{id:`${Hl}.h5`,commandId:Hl,type:i.MenuItemType.BUTTON,icon:`H5Icon`,title:`docs-ui.toolbar.heading.leading5`,tooltip:`docs-ui.toolbar.heading.leading5`,params:{commandId:Ti.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function iu(e){return{id:`${to.id}.below`,commandId:to.id,type:i.MenuItemType.BUTTON,icon:`GridIcon`,title:`docs-ui.toolbar.table.insert`,tooltip:`docs-ui.toolbar.table.insert`,params:{rowCount:3,colCount:5},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function au(e){return{id:Bl,type:i.MenuItemType.BUTTON,icon:`LineIndentIncreaseIcon`,title:`docs-ui.paragraphMenu.increase`,tooltip:`docs-ui.paragraphMenu.increaseIndent`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ou(e){return{id:Vl,type:i.MenuItemType.BUTTON,icon:`LineIndentDecreaseIcon`,title:`docs-ui.paragraphMenu.decrease`,tooltip:`docs-ui.paragraphMenu.decreaseIndent`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function su(e){return{id:Mr.id,type:i.MenuItemType.BUTTON,icon:`NoColorDoubleIcon`,title:`docs-ui.paragraphMenu.noBackground`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function cu(e){let n=e.get(t.ThemeService);return{id:Er.id,commandId:wr.id,type:i.MenuItemType.BUTTON,icon:`NoColorDoubleIcon`,title:`docs-ui.toolbar.resetColor`,tooltip:`docs-ui.toolbar.resetColor`,params:()=>({value:n.getColorFromTheme(`gray.900`)}),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let lu=tl.reduce((e,n,r)=>{let a=`doc.menu.paragraph-t.text-color.${r}`;return e[a]={order:r,menuItemFactory:e=>({id:a,commandId:wr.id,type:i.MenuItemType.BUTTON,icon:nl[r],params:{value:n},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)})},e},{}),uu=rl.reduce((e,n,r)=>{let a=`doc.menu.paragraph-t.background-color.${r}`;return e[a]={order:r,menuItemFactory:e=>{let o=el(e.get(t.ThemeService),r);return{id:a,commandId:Ar.id,type:i.MenuItemType.BUTTON,icon:n,params:{value:o},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}},e},{}),du={[dc]:{[uc]:{order:0,menuItemFactory:mc}}},fu={...du,[i.RibbonStartGroup.FORMAT]:{[cr.id]:{order:0,gridLayout:{row:2,column:1},menuItemFactory:tc},[ur.id]:{order:1,gridLayout:{row:2,column:2},menuItemFactory:nc},[fr.id]:{order:2,gridLayout:{row:2,column:3},menuItemFactory:rc},[mr.id]:{order:3,gridLayout:{row:2,column:4},menuItemFactory:ic},[gr.id]:{order:4,gridLayout:{row:2,column:5},menuItemFactory:ac},[vr.id]:{order:5,gridLayout:{row:2,column:6},menuItemFactory:oc},[_i.id]:{order:5.5,gridLayout:{row:1,column:1,columnSpan:2,width:100},menuItemFactory:lc},[br.id]:{order:6,gridLayout:{row:1,column:7,width:64},menuItemFactory:cc},[Sr.id]:{order:7,gridLayout:{row:1,column:3,columnSpan:4,width:160},menuItemFactory:sc},[wr.id]:{order:8,gridLayout:{row:2,column:7},menuItemFactory:hc,[Er.id]:{order:0,menuItemFactory:qc}},[Ar.id]:{order:9,gridLayout:{row:2,column:8},menuItemFactory:Yc,[Mr.id]:{order:0,menuItemFactory:Jc}}},[i.RibbonStartGroup.LAYOUT]:{[li.id]:{order:2,gridLayout:{row:1,column:1},menuItemFactory:Vc},[ri.id]:{order:7,gridLayout:{row:2,column:1},menuItemFactory:Wc},[ei.id]:{order:8,gridLayout:{row:1,column:2},menuItemFactory:Gc},[ti.id]:{order:9,gridLayout:{row:2,column:2},menuItemFactory:Kc},[Ko.id]:{order:10,gridLayout:{row:1,column:3,rowSpan:2,showLabel:!0},menuItemFactory:gc},[ps.id]:{order:12,gridLayout:{row:1,column:4,rowSpan:2,showLabel:!0},menuItemFactory:$c}},[i.RibbonInsertGroup.MEDIA]:{[Mc]:{order:2,gridLayout:{row:1,column:1,rowSpan:2,showLabel:!0},menuItemFactory:Nc,[to.id]:{order:0,menuItemFactory:Pc}},[Vn.id]:{order:3,gridLayout:{row:1,column:2,rowSpan:2,showLabel:!0},menuItemFactory:Hc},[_c]:{order:4,gridLayout:{row:1,column:3,rowSpan:2,showLabel:!0},menuItemFactory:Cc,[es.id]:{order:0,menuItemFactory:wc},[vc]:{order:1,menuItemFactory:Ec},[yc]:{order:2,menuItemFactory:Dc},[bc]:{order:3,menuItemFactory:Oc},[xc]:{order:4,menuItemFactory:kc},[Sc]:{order:5,menuItemFactory:Ac}},[Ys]:{order:5,gridLayout:{row:1,column:4},menuItemFactory:Zs},[Xs]:{order:6,gridLayout:{row:2,column:4},menuItemFactory:Qs}},[i.ContextMenuPosition.MAIN_AREA]:{[i.ContextMenuGroup.QUICK]:{quickLayout:`tile`,[vn.name]:{order:0,menuItemFactory:vs},[bn.id]:{order:1,menuItemFactory:bs},[Sn.id]:{order:2,menuItemFactory:xs}},[i.ContextMenuGroup.FORMAT]:{[je.id]:{order:0,menuItemFactory:Ss}},[i.ContextMenuGroup.LAYOUT]:{[Yo.id]:{order:0,menuItemFactory:ys},[Qo.id]:{order:1,menuItemFactory:Es},[Cs]:{order:1,menuItemFactory:ws,[Ka.id]:{order:1,menuItemFactory:Ds},[qa.id]:{order:2,menuItemFactory:Os},[Ja.id]:{order:3,menuItemFactory:ks},[Ya.id]:{order:4,menuItemFactory:As}},[js]:{order:2,menuItemFactory:Ms,[Va.id]:{order:1,menuItemFactory:Ns},[Ha.id]:{order:2,menuItemFactory:Ps},[Ua.id]:{order:3,menuItemFactory:Fs}}}},[i.ContextMenuPosition.PARAGRAPH]:{[i.ContextMenuGroup.QUICK]:{[xi.id]:{order:0,menuItemFactory:al},[Si.id]:{order:1,menuItemFactory:ol},[Ci.id]:{order:2,menuItemFactory:sl},[wi.id]:{order:3,menuItemFactory:cl},[Ti.id]:{order:4,menuItemFactory:ll},[Di.id]:{order:-1,menuItemFactory:dl},[Oi.id]:{order:-1,menuItemFactory:fl},[Ei.id]:{order:5,menuItemFactory:ul}},[i.ContextMenuGroup.FORMAT]:{[yn.id]:{order:0,menuItemFactory:wl},[xn.id]:{order:1,menuItemFactory:Tl},[Le.id]:{order:2,menuItemFactory:El}},[i.ContextMenuGroup.LAYOUT]:{[Yo.id]:{order:0,menuItemFactory:ys},[Qo.id]:{order:1,menuItemFactory:Es},[jl]:{order:1,menuItemFactory:ql,[oi.id]:{order:0,menuItemFactory:Dl},[si.id]:{order:1,menuItemFactory:Ol},[ci.id]:{order:2,menuItemFactory:kl},[Hn.id]:{order:3,menuItemFactory:Al},[to.id]:{order:4,menuItemFactory:Fc}}},[Ml]:{[i.ContextMenuGroup.QUICK]:{order:-2,quickLayout:`icon`,[xi.id]:{order:0,menuItemFactory:al},[Si.id]:{order:1,menuItemFactory:ol},[Ci.id]:{order:2,menuItemFactory:sl},[wi.id]:{order:3,menuItemFactory:cl},[Ti.id]:{order:4,menuItemFactory:ll},[Ei.id]:{order:5,menuItemFactory:ul}},[i.ContextMenuGroup.LAYOUT]:{order:1,[oi.id]:{order:0,menuItemFactory:Dl},[si.id]:{order:1,menuItemFactory:Ol},[ci.id]:{order:2,menuItemFactory:kl},[Hn.id]:{order:3,menuItemFactory:Al},[to.id]:{order:4,menuItemFactory:Fc}}},[pl]:{[i.ContextMenuGroup.QUICK]:{order:-1,quickLayout:`icon`,[xi.id]:{order:0,menuItemFactory:ml},[Si.id]:{order:1,menuItemFactory:hl},[Ci.id]:{order:2,menuItemFactory:gl},[wi.id]:{order:3,menuItemFactory:_l},[Ti.id]:{order:4,menuItemFactory:vl},[Ei.id]:{order:5,menuItemFactory:yl}},[i.ContextMenuGroup.LAYOUT]:{order:1,[Yo.id]:{order:0,menuItemFactory:ys},[Qo.id]:{order:1,menuItemFactory:Es},[ei.id]:{order:1,menuItemFactory:xl},[ri.id]:{order:2,menuItemFactory:bl},[ti.id]:{order:3,menuItemFactory:Sl},[Vn.id]:{order:4,menuItemFactory:Cl},[to.id]:{order:5,menuItemFactory:Fc}}},[Nl]:{[i.ContextMenuGroup.FORMAT]:{[vn.name]:{order:0,menuItemFactory:Wl},[Sn.id]:{order:1,menuItemFactory:Gl},[Ua.id]:{order:2,menuItemFactory:Kl}},[i.ContextMenuGroup.LAYOUT]:{[jl]:{order:0,menuItemFactory:ql,[oi.id]:{order:0,menuItemFactory:Dl},[si.id]:{order:1,menuItemFactory:Ol},[ci.id]:{order:2,menuItemFactory:kl},[Hn.id]:{order:3,menuItemFactory:Al},[to.id]:{order:4,menuItemFactory:Fc}}}},[Pl]:{quickTop:{order:0,quickLayout:`icon`,[xi.id]:{order:0,menuItemFactory:ml},[Si.id]:{order:1,menuItemFactory:hl},[Ci.id]:{order:2,menuItemFactory:gl},[wi.id]:{order:3,menuItemFactory:_l},[Ti.id]:{order:4,menuItemFactory:vl},[ri.id]:{order:5,menuItemFactory:bl}},quickBottom:{order:1,quickLayout:`icon`,[ei.id]:{order:0,menuItemFactory:xl},[ti.id]:{order:1,menuItemFactory:Sl},[Vn.id]:{order:5,menuItemFactory:Cl}},insert:{order:2,[to.id]:{order:0,menuItemFactory:Fc}},format:{order:3,[Sn.id]:{order:0,menuItemFactory:xs}}},[zl]:{quickTop:{order:0,quickLayout:`icon`,[`${Hl}.h1`]:{order:0,menuItemFactory:$l},[`${Hl}.h2`]:{order:1,menuItemFactory:eu},[`${Hl}.h3`]:{order:2,menuItemFactory:tu},[`${Hl}.h4`]:{order:3,menuItemFactory:nu},[`${Hl}.h5`]:{order:4,menuItemFactory:ru},[si.id]:{order:5,menuItemFactory:Ol}},quickBottom:{order:1,quickLayout:`icon`,[oi.id]:{order:0,menuItemFactory:Dl},[ci.id]:{order:1,menuItemFactory:kl},[Hn.id]:{order:5,menuItemFactory:Al}},insert:{order:2,[`${to.id}.below`]:{order:0,menuItemFactory:iu}}},[Fl]:{quickTop:{order:0,quickLayout:`icon`,[Ei.id]:{order:0,menuItemFactory:ul},[xi.id]:{order:1,menuItemFactory:al},[Si.id]:{order:2,menuItemFactory:ol},[Ci.id]:{order:3,menuItemFactory:sl},[wi.id]:{order:4,menuItemFactory:cl},[Ti.id]:{order:5,menuItemFactory:ll},[Di.id]:{order:6,menuItemFactory:dl},[Oi.id]:{order:7,menuItemFactory:fl}},quickBottom:{order:1,quickLayout:`icon`,[ri.id]:{order:0,menuItemFactory:Wc},[ei.id]:{order:1,menuItemFactory:Gc},[ti.id]:{order:2,menuItemFactory:Kc}},layout:{order:2,[Ll]:{order:0,menuItemFactory:Jl},[Rl]:{order:1,menuItemFactory:Yl}},format:{order:3,[xn.id]:{order:0,menuItemFactory:Tl},[yn.id]:{order:1,menuItemFactory:wl},[Sn.id]:{order:2,menuItemFactory:xs},[Le.id]:{order:3,menuItemFactory:El}},others:{order:4,[zl]:{order:0,menuItemFactory:Ql}}},[Il]:{layout:{order:1,[Rl]:{order:0,menuItemFactory:Yl}},format:{order:2,[xn.id]:{order:0,menuItemFactory:Tl},[yn.id]:{order:1,menuItemFactory:wl},[Le.id]:{order:2,menuItemFactory:El}},others:{order:3,[zl]:{order:0,menuItemFactory:Ql}}},[Ll]:{align:{order:0,title:`docs-ui.paragraphMenu.align`,quickLayout:`icon`,[li.id]:{order:0,menuItemFactory:Ic},[`${li.id}.center`]:{order:1,menuItemFactory:Lc},[`${li.id}.right`]:{order:2,menuItemFactory:Rc},[`${li.id}.justify`]:{order:3,menuItemFactory:zc}},indent:{order:1,title:`docs-ui.paragraphMenu.indent`,[Bl]:{order:0,menuItemFactory:au},[Vl]:{order:1,menuItemFactory:ou}}},[Rl]:{text:{order:0,title:`docs-ui.toolbar.textColor.main`,headerActionMenuItemFactory:Xl,quickLayout:`icon`,quickColumns:8,quickLayoutVariant:`compact`,[Er.id]:{order:0,menuItemFactory:cu},...lu},backgroundTop:{order:1,title:`docs-ui.toolbar.fillColor.main`,headerActionMenuItemFactory:Zl,quickLayout:`icon`,quickColumns:8,quickLayoutVariant:`compact`,[Mr.id]:{order:0,menuItemFactory:su},...Object.fromEntries(Object.entries(uu).filter(([,e])=>e.order<7))},backgroundBottom:{order:2,quickLayout:`icon`,quickColumns:8,quickLayoutVariant:`compact`,...Object.fromEntries(Object.entries(uu).filter(([,e])=>e.order>=7))}}}};function Q(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&!e.getContextValue(t.FOCUSING_COMMON_DRAWINGS)}function pu(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&!e.getContextValue(t.FOCUSING_COMMON_DRAWINGS)}let mu={id:M.id,binding:i.KeyCode.TAB,preconditions:Q},hu={id:M.id,binding:i.KeyCode.TAB|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{shift:!0}},gu={id:cr.id,binding:i.KeyCode.B|i.MetaKeys.CTRL_COMMAND,preconditions:Q},_u={id:ur.id,binding:i.KeyCode.I|i.MetaKeys.CTRL_COMMAND,preconditions:Q},vu={id:fr.id,binding:i.KeyCode.U|i.MetaKeys.CTRL_COMMAND,preconditions:Q},yu={id:mr.id,binding:i.KeyCode.X|i.MetaKeys.SHIFT|i.MetaKeys.CTRL_COMMAND,preconditions:Q},bu={id:gr.id,binding:i.KeyCode.COMMA|i.MetaKeys.CTRL_COMMAND,preconditions:Q},xu={id:vr.id,binding:i.KeyCode.PERIOD|i.MetaKeys.CTRL_COMMAND,preconditions:Q},Su={id:ui.id,binding:i.KeyCode.L|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Cu={id:fi.id,binding:i.KeyCode.R|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},wu={id:di.id,binding:i.KeyCode.E|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Tu={id:pi.id,binding:i.KeyCode.J|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Eu={id:ri.id,binding:i.KeyCode.Digit7|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Du={id:ei.id,binding:i.KeyCode.Digit8|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Ou=[50,80,100,130,150,170,200,400],ku=[10,400];function Au(){let e=(0,i.useDependency)(t.ICommandService),n=(0,i.useDependency)(t.IUniverInstanceService),r=(0,i.useObservable)(()=>n.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.filter)(e=>e!=null)),null,!1,[n]),o=(0,c.useCallback)((e=r)=>e?Math.round(jo(e)*100):100,[r]),[s,u]=(0,c.useState)(100);(0,c.useEffect)(()=>u(o(r)),[r,o]),(0,c.useEffect)(()=>e.onCommandExecuted(e=>{e.id===hi.id&&u(o())}).dispose,[e,o]);function d(t){if(u(t),r==null)return;let n=t/100;e.executeCommand(hi.id,{unitId:r.getUnitId(),zoomRatio:n})}return(0,l.jsx)(i.Slider,{min:ku[0],value:s,shortcuts:Ou,onChange:d})}function ju(e){return(0,l.jsx)(`section`,{className:`univer-flex univer-flex-shrink-0 univer-justify-end`,children:(0,l.jsx)(Au,{})})}function $({ref:e,...t}){let{icon:n,id:r,className:i,extend:a,...o}=t,s=`univerjs-icon univerjs-icon-${r} ${i||``}`.trim(),l=(0,c.useRef)(`_${Fu()}`);return Mu(n,`${r}`,{defIds:n.defIds,idSuffix:l.current},{ref:e,className:s,...o},a)}function Mu(e,t,n,r,i){return(0,c.createElement)(e.tag,{key:t,...Nu(e,n,i),...r},(Pu(e,n).children||[]).map((r,a)=>Mu(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function Nu(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),n!=null&&n.colorChannel1&&r.stroke===`colorChannel1`&&(r.stroke=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function Pu(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function Fu(){return Math.random().toString(36).substring(2,8)}$.displayName=`UniverIcon`;let Iu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.2498 3.65005C2.2498 2.87685 2.87661 2.25005 3.64981 2.25005H7.9998C8.33118 2.25005 8.5998 1.98142 8.5998 1.65005C8.5998 1.31868 8.33118 1.05005 7.9998 1.05005H3.64981C2.21387 1.05005 1.0498 2.21411 1.0498 3.65005V12.35C1.0498 13.786 2.21386 14.95 3.6498 14.95H12.3498C13.7857 14.95 14.9498 13.786 14.9498 12.3501V8.00005C14.9498 7.66868 14.6812 7.40005 14.3498 7.40005C14.0184 7.40005 13.7498 7.66868 13.7498 8.00005V9.23974L12.2385 8.1063C11.7252 7.72129 11.0068 7.7723 10.5531 8.22605L9.00869 9.77041L6.73916 7.8251C6.24387 7.40055 5.5095 7.41278 5.02864 7.85359L2.2498 10.4009V3.65005ZM2.2498 12.0287V12.35C2.2498 13.1232 2.87661 13.75 3.6498 13.75H12.3498C13.123 13.75 13.7498 13.1232 13.7498 12.3501V10.7397L11.5186 9.06631C11.4829 9.03956 11.433 9.04314 11.4016 9.07458L9.92249 10.5537L11.1015 11.5642C11.3531 11.7799 11.3822 12.1587 11.1666 12.4103C10.9509 12.6619 10.5721 12.691 10.3205 12.4753L5.9582 8.7362C5.92384 8.70674 5.87288 8.70758 5.83952 8.73816L2.2498 12.0287Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M11.8097 1.14783C12.1411 1.14783 12.4097 1.41646 12.4097 1.74783V3.297H14.1541C14.4855 3.297 14.7541 3.56563 14.7541 3.897C14.7541 4.22837 14.4855 4.497 14.1541 4.497H12.4097V6.24167C12.4097 6.57304 12.1411 6.84167 11.8097 6.84167C11.4783 6.84167 11.2097 6.57304 11.2097 6.24167V4.497H9.6603C9.32893 4.497 9.0603 4.22837 9.0603 3.897C9.0603 3.56563 9.32893 3.297 9.6603 3.297H11.2097V1.74783C11.2097 1.41646 11.4783 1.14783 11.8097 1.14783Z`}}]},Lu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`add-image-icon`,ref:t,icon:Iu}))});Lu.displayName=`AddImageIcon`;let Ru={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641C1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H13.9999C14.3313 6.76641 14.5999 6.49778 14.5999 6.16641C14.5999 5.83504 14.3313 5.56641 13.9999 5.56641H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004C1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H13.9999C14.3313 14.1004 14.5999 13.8318 14.5999 13.5004C14.5999 13.169 14.3313 12.9004 13.9999 12.9004H1.9999Z`}}]},zu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`align-text-both-icon`,ref:t,icon:Ru}))});zu.displayName=`AlignTextBothIcon`;let Bu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.65791 1.30005C3.77355 1.30005 3.05664 2.01696 3.05664 2.90132V12.8588C3.05664 13.8755 3.88086 14.6998 4.89759 14.6998H9.1016C11.2233 14.6998 12.9433 12.9798 12.9433 10.8581C12.9433 9.13925 11.8145 7.68407 10.2578 7.1934C10.8806 6.56856 11.2655 5.70659 11.2655 4.75472C11.2655 2.84676 9.71883 1.30005 7.81087 1.30005H4.65791ZM4.25664 2.90132C4.25664 2.6797 4.4363 2.50005 4.65791 2.50005H7.81087C9.05609 2.50005 10.0655 3.5095 10.0655 4.75472C10.0655 5.99993 9.05609 7.00938 7.81087 7.00938H4.25664V2.90132ZM4.25664 12.8588V8.21636H9.1016C10.5606 8.21636 11.7433 9.39909 11.7433 10.8581C11.7433 12.317 10.5606 13.4998 9.1016 13.4998H4.89759C4.5436 13.4998 4.25664 13.2128 4.25664 12.8588Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Vu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`bold-icon`,ref:t,icon:Bu}))});Vu.displayName=`BoldIcon`;let Hu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9834 3.98332C1.9834 3.61513 2.28188 3.31665 2.65007 3.31665H13.3167C13.6849 3.31665 13.9834 3.61513 13.9834 3.98332C13.9834 4.35151 13.6849 4.64998 13.3167 4.64998H2.65007C2.28188 4.64998 1.9834 4.35151 1.9834 3.98332Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9834 7.98267C1.9834 7.61448 2.28188 7.316 2.65007 7.316H10.6501C11.0183 7.316 11.3167 7.61448 11.3167 7.98267C11.3167 8.35086 11.0183 8.64933 10.6501 8.64933H2.65007C2.28188 8.64933 1.9834 8.35086 1.9834 7.98267Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.65007 11.316C2.28188 11.316 1.9834 11.6145 1.9834 11.9827C1.9834 12.3509 2.28188 12.6493 2.65007 12.6493H7.9834C8.35159 12.6493 8.65006 12.3509 8.65006 11.9827C8.65006 11.6145 8.35159 11.316 7.9834 11.316H2.65007Z`}}]},Uu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`catalogue-icon`,ref:t,icon:Hu}))});Uu.displayName=`CatalogueIcon`;let Wu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M6.79407 7.49183L6.80825 7.49199L6.82241 7.49183L10.9728 7.49192L10.9821 7.49199L10.9913 7.49192L14.0562 7.49199C14.9951 7.49201 15.7562 6.73089 15.7562 5.79199V3.99202C15.7562 3.05313 14.9951 2.29202 14.0562 2.29202L10.9893 2.29203L10.9821 2.29199L10.9749 2.29203L6.81682 2.29205L6.80825 2.29199L6.79967 2.29205L3.73417 2.29207C2.79527 2.29207 2.03416 3.05321 2.03418 3.99211L2.03422 5.7918C2.03425 6.73065 2.79533 7.49174 3.73419 7.49176L6.79407 7.49183ZM14.0562 6.29199L11.5821 6.29194V3.49203L14.0562 3.49202C14.3324 3.49202 14.5562 3.71588 14.5562 3.99202V5.79199C14.5562 6.06814 14.3323 6.292 14.0562 6.29199ZM10.3821 6.29191V3.49204L7.40825 3.49205V6.29184L10.3821 6.29191ZM6.20825 6.29181V3.49205L3.73418 3.49207C3.45803 3.49207 3.23417 3.71593 3.23418 3.99208L3.23422 5.79177C3.23423 6.0679 3.45808 6.29175 3.73421 6.29176L6.20825 6.29181Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.53413 9.19951L3.73415 9.19954C2.79526 9.19955 2.03415 9.96069 2.03418 10.8996L2.03423 12.6995C2.03425 13.6384 2.79536 14.3995 3.73423 14.3995H5.53415C6.47303 14.3995 7.23415 13.6384 7.23415 12.6995V10.8995C7.23415 9.96062 6.47302 9.1995 5.53413 9.19951ZM3.73417 10.3995L5.53414 10.3995C5.81029 10.3995 6.03415 10.6234 6.03415 10.8995V12.6995C6.03415 12.9756 5.81029 13.1995 5.53415 13.1995H3.73423C3.45809 13.1995 3.23423 12.9756 3.23423 12.6995L3.23418 10.8996C3.23417 10.6234 3.45803 10.3995 3.73417 10.3995Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Gu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`column-icon`,ref:t,icon:Wu}))});Gu.displayName=`ColumnIcon`;let Ku={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},qu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`cut-icon`,ref:t,icon:Ku}))});qu.displayName=`CutIcon`;let Ju={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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 0.866699 5.9313 0.866699H10.069C10.4004 0.866699 10.669 1.13533 10.669 1.4667C10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.64443C14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928L9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171C10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778L9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539C9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263L6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539C5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778L6.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`}}]},Yu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-icon`,ref:t,icon:Ju}))});Yu.displayName=`DeleteIcon`;let Xu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M10.9913 10.8779C11.4971 10.8779 11.9073 11.2882 11.9073 11.7939C11.9073 12.2997 11.4971 12.71 10.9913 12.71C10.4857 12.7099 10.0754 12.2996 10.0753 11.7939C10.0753 11.2882 10.4857 10.878 10.9913 10.8779Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M11.9572 8.51465C12.5471 8.51471 13.0936 8.82742 13.3927 9.33594L14.3419 10.9502C14.6291 11.4386 14.6479 12.037 14.3966 12.5391L14.3419 12.6377L13.3927 14.252C13.0936 14.7605 12.5471 15.0732 11.9572 15.0732H10.0255C9.50941 15.0731 9.02688 14.8339 8.71399 14.4336L8.59094 14.252L7.64075 12.6377C7.33466 12.1169 7.33466 11.471 7.64075 10.9502L8.59094 9.33594L8.71399 9.1543C9.02688 8.75387 9.50935 8.51477 10.0255 8.51465H11.9572ZM10.0255 9.84473C9.93678 9.84483 9.85287 9.87988 9.79114 9.94043L9.73743 10.0098L8.78723 11.624C8.72565 11.7288 8.72564 11.8591 8.78723 11.9639L9.73743 13.5781L9.79114 13.6475C9.85286 13.7079 9.93684 13.7431 10.0255 13.7432H11.9572C12.0757 13.7431 12.186 13.6803 12.2462 13.5781L13.1954 11.9639L13.2306 11.8809C13.2536 11.7953 13.2415 11.7025 13.1954 11.624L12.2462 10.0098C12.186 9.90756 12.0758 9.84479 11.9572 9.84473H10.0255Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.5031 0.926758C11.9748 0.926758 13.1679 2.12013 13.1681 3.5918V6.41602C13.1679 6.78314 12.8702 7.08105 12.5031 7.08105C12.1361 7.08084 11.8382 6.783 11.838 6.41602V3.5918C11.8378 2.85467 11.2402 2.25684 10.5031 2.25684H4.0929C3.35572 2.25684 2.75813 2.85467 2.75793 3.5918V12.085C2.75818 12.8221 3.35574 13.4199 4.0929 13.4199H6.18958L6.32434 13.4326C6.62712 13.4947 6.85444 13.7639 6.85461 14.085C6.8544 14.406 6.62705 14.6742 6.32434 14.7363L6.18958 14.75H4.0929C2.62121 14.75 1.4281 13.5566 1.42786 12.085V3.5918C1.42806 2.12013 2.62118 0.926758 4.0929 0.926758H10.5031Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M8.04993 6.42969C8.35293 6.49172 8.58118 6.75971 8.58118 7.08105C8.581 7.40229 8.35289 7.67047 8.04993 7.73242L7.91614 7.74609H4.73547C4.36833 7.74609 4.07063 7.44816 4.07043 7.08105C4.07043 6.71379 4.3682 6.41602 4.73547 6.41602H7.91614L8.04993 6.42969Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.1007 3.92188C10.4034 3.98418 10.631 4.25215 10.631 4.57324C10.6309 4.8943 10.4033 5.16233 10.1007 5.22461L9.96594 5.23828H4.73547C4.36824 5.23828 4.0705 4.94046 4.07043 4.57324C4.07043 4.20597 4.3682 3.9082 4.73547 3.9082H9.96594L10.1007 3.92188Z`}}]},Zu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`doc-setting-icon`,ref:t,icon:Xu}))});Zu.displayName=`DocSettingIcon`;let Qu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.33325 2.60309C1.33325 1.90178 1.90178 1.33325 2.60309 1.33325H13.3967C14.0981 1.33325 14.6666 1.90178 14.6666 2.60309V13.3967C14.6666 14.0981 14.0981 14.6666 13.3967 14.6666H2.60309C1.90178 14.6666 1.33325 14.0981 1.33325 13.3967V2.60309ZM10.5396 13.3967H13.3967V10.5396H10.5396V13.3967ZM9.26976 10.5396V13.3967H6.41262V10.5396H9.26976ZM10.5396 9.26976H13.3967V6.73008H10.5396V9.26976ZM9.26976 6.73008V9.26976H6.41262V6.73008H9.26976ZM10.5396 5.46024H13.3967V2.60309H10.5396V5.46024ZM9.26976 2.60309V5.46024H6.41262V2.60309H9.26976ZM2.60309 2.60309H5.14278V5.46024H2.60309V2.60309ZM2.60309 6.73008H5.14278V9.26976H2.60309V6.73008ZM2.60309 10.5396H5.14278V13.3967H2.60309V10.5396Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},$u=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`grid-icon`,ref:t,icon:Qu}))});$u.displayName=`GridIcon`;let ed={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C2.16853 2.06689 1.8999 2.33552 1.8999 2.66689V13.3336C1.8999 13.6649 2.16853 13.9336 2.4999 13.9336C2.83127 13.9336 3.0999 13.6649 3.0999 13.3336V8.5999H8.2334V13.3336C8.2334 13.6649 8.50203 13.9336 8.8334 13.9336C9.16477 13.9336 9.4334 13.6649 9.4334 13.3336V2.66689C9.4334 2.33552 9.16477 2.06689 8.8334 2.06689C8.50203 2.06689 8.2334 2.33552 8.2334 2.66689V7.3999H3.0999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M14.0999 6.33879C14.0999 6.09377 13.9509 5.87336 13.7236 5.78203C13.4962 5.6907 13.2362 5.74679 13.0667 5.92373L11.4753 7.58486C11.2461 7.82415 11.2542 8.20396 11.4935 8.43319C11.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.9333C13.8313 13.9333 14.0999 13.6646 14.0999 13.3333V6.33879Z`}}]},td=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h1-icon`,ref:t,icon:ed}))});td.displayName=`H1Icon`;let nd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336C2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336C8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689C7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M11.2667 8.33356C11.2667 7.67245 11.8201 7.26689 12.3333 7.26689C12.8465 7.26689 13.4 7.67244 13.4 8.33356C13.4 8.62807 13.2712 8.94814 12.9954 9.32391C12.7183 9.70153 12.3394 10.0744 11.9174 10.4803L11.8355 10.559C11.4524 10.9268 11.0365 11.3263 10.7149 11.7373C10.3718 12.1759 10.0667 12.7122 10.0667 13.3336C10.0667 13.6649 10.3353 13.9336 10.6667 13.9336H14C14.3314 13.9336 14.6 13.6649 14.6 13.3336C14.6 13.0022 14.3314 12.7336 14 12.7336H11.4782C11.5286 12.6531 11.5889 12.5676 11.6601 12.4767C11.9269 12.1355 12.2843 11.792 12.6877 11.4043L12.7492 11.3452C13.1606 10.9496 13.615 10.5079 13.9629 10.0338C14.3122 9.55787 14.6 8.98906 14.6 8.33356C14.6 6.88362 13.3757 6.06689 12.3333 6.06689C11.291 6.06689 10.0667 6.88361 10.0667 8.33356C10.0667 8.66493 10.3353 8.93356 10.6667 8.93356C10.998 8.93356 11.2667 8.66493 11.2667 8.33356Z`}}]},rd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h2-icon`,ref:t,icon:nd}))});rd.displayName=`H2Icon`;let id={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336C2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336C8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689C7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.6667 6.06689C10.3353 6.06689 10.0667 6.33552 10.0667 6.66689C10.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.93051C11.2283 10.1364 11.4375 10.2669 11.6667 10.2669C12.2418 10.2669 12.6786 10.4115 12.9585 10.6354C13.2204 10.845 13.4 11.166 13.4 11.6669C13.4 12.1622 13.2254 12.3937 13.0567 12.5202C12.8588 12.6686 12.5829 12.7336 12.3333 12.7336C11.7271 12.7336 11.3432 12.4858 11.1106 12.23C10.8877 11.9848 10.5082 11.9667 10.2631 12.1896C10.0179 12.4125 9.99979 12.792 10.2227 13.0372C10.6568 13.5147 11.3522 13.9336 12.3333 13.9336C12.7504 13.9336 13.3078 13.8319 13.7767 13.4802C14.2746 13.1068 14.6 12.5049 14.6 11.6669C14.6 10.8345 14.2796 10.1555 13.7081 9.69837C13.4342 9.47923 13.117 9.32231 12.7746 9.21971L14.4736 7.03526C14.6143 6.85437 14.6397 6.60914 14.539 6.40328C14.4383 6.19743 14.2291 6.06689 14 6.06689H10.6667Z`}}]},ad=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h3-icon`,ref:t,icon:id}))});ad.displayName=`H3Icon`;let od={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},sd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h4-icon`,ref:t,icon:od}))});sd.displayName=`H4Icon`;let cd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336C2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336C8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689C7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.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.94492C10.7822 9.94492 10.8899 9.91238 10.9814 9.85599C10.9901 9.85195 11.0027 9.84632 11.0192 9.83936C11.0764 9.81533 11.1692 9.78033 11.2927 9.74447C11.5397 9.67268 11.8996 9.60022 12.3336 9.60022C12.4975 9.60022 12.5978 9.63412 12.6624 9.67167C12.7263 9.70877 12.79 9.76953 12.8503 9.87834C12.983 10.1181 13.0669 10.5337 13.0669 11.1669C13.0669 11.8061 12.9802 12.1936 12.8338 12.414C12.7252 12.5775 12.5275 12.7336 12.0002 12.7336C11.6445 12.7336 11.4936 12.622 11.4192 12.5328C11.3289 12.4245 11.2669 12.2453 11.2669 12.0028C11.2669 11.6714 10.9983 11.4028 10.6669 11.4028C10.3355 11.4028 10.0669 11.6714 10.0669 12.0028C10.0669 12.4244 10.1716 12.9106 10.4979 13.3016C10.8401 13.7118 11.356 13.9336 12.0002 13.9336C12.8063 13.9336 13.4419 13.6673 13.8334 13.0779C14.1869 12.5456 14.2669 11.8497 14.2669 11.1669C14.2669 10.4781 14.1841 9.81027 13.9002 9.29724C13.7521 9.02964 13.545 8.79662 13.2651 8.63403C12.986 8.4719 12.6697 8.40022 12.3336 8.40022C11.9239 8.40022 11.5627 8.44957 11.2669 8.51389V7.60332H13.3336C13.6649 7.60332 13.9336 7.33469 13.9336 7.00332C13.9336 6.67195 13.6649 6.40332 13.3336 6.40332H10.6669Z`}}]},ld=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h5-icon`,ref:t,icon:cd}))});ld.displayName=`H5Icon`;let ud={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.9999 3.90137C4.66853 3.90137 4.3999 4.17 4.3999 4.50137C4.3999 4.83274 4.66853 5.10137 4.9999 5.10137H10.9999C11.3313 5.10137 11.5999 4.83274 11.5999 4.50137C11.5999 4.17 11.3313 3.90137 10.9999 3.90137H4.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.9999 10.8987C4.66853 10.8987 4.3999 11.1673 4.3999 11.4987C4.3999 11.8301 4.66853 12.0987 4.9999 12.0987H10.9999C11.3313 12.0987 11.5999 11.8301 11.5999 11.4987C11.5999 11.1673 11.3313 10.8987 10.9999 10.8987H4.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M12.7 2.0999H3.30005C2.85822 2.0999 2.50005 2.45807 2.50005 2.8999V13.0999C2.50005 13.5417 2.85822 13.8999 3.30005 13.8999H12.7C13.1419 13.8999 13.5 13.5417 13.5 13.0999V2.8999C13.5 2.45808 13.1419 2.0999 12.7 2.0999ZM3.30005 0.899902C2.19548 0.899902 1.30005 1.79533 1.30005 2.8999V13.0999C1.30005 14.2045 2.19548 15.0999 3.30005 15.0999H12.7C13.8046 15.0999 14.7 14.2045 14.7 13.0999V2.8999C14.7 1.79533 13.8046 0.899902 12.7 0.899902H3.30005Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},dd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`header-footer-icon`,ref:t,icon:ud}))});dd.displayName=`HeaderFooterIcon`;let fd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.33315 5.56641C3.00178 5.56641 2.73315 5.83504 2.73315 6.16641C2.73315 6.49778 3.00178 6.76641 3.33315 6.76641H12.6665C12.9979 6.76641 13.2665 6.49778 13.2665 6.16641C13.2665 5.83504 12.9979 5.56641 12.6665 5.56641H3.33315Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.33315 12.9004C3.00178 12.9004 2.73315 13.169 2.73315 13.5004C2.73315 13.8318 3.00178 14.1004 3.33315 14.1004H12.6665C12.9979 14.1004 13.2665 13.8318 13.2665 13.5004C13.2665 13.169 12.9979 12.9004 12.6665 12.9004H3.33315Z`}}]},pd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`horizontally-icon`,ref:t,icon:fd}))});pd.displayName=`HorizontallyIcon`;let md={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M9.80385 1.40005H11.9997C12.3311 1.40005 12.5997 1.66868 12.5997 2.00005C12.5997 2.33143 12.3311 2.60005 11.9997 2.60005H10.1185L7.12251 13.4001H9.33324C9.66461 13.4001 9.93324 13.6687 9.93324 14.0001C9.93324 14.3314 9.66461 14.6001 9.33324 14.6001H6.34785C6.33847 14.6003 6.32905 14.6003 6.31962 14.6001H3.9999C3.66853 14.6001 3.3999 14.3314 3.3999 14.0001C3.3999 13.6687 3.66853 13.4001 3.9999 13.4001H5.87719L8.87322 2.60005H6.66641C6.33504 2.60005 6.06641 2.33143 6.06641 2.00005C6.06641 1.66868 6.33504 1.40005 6.66641 1.40005H9.52916C9.61698 1.37929 9.71064 1.3781 9.80385 1.40005Z`}}]},hd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`italic-icon`,ref:t,icon:md}))});hd.displayName=`ItalicIcon`;let gd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M3.39986 6.33339C3.39986 6.00202 3.66849 5.73339 3.99986 5.73339H4.66652C4.99789 5.73339 5.26652 6.00202 5.26652 6.33339C5.26652 6.66476 4.99789 6.93339 4.66652 6.93339H3.99986C3.66849 6.93339 3.39986 6.66476 3.39986 6.33339Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.99986 5.73339C6.66849 5.73339 6.39986 6.00202 6.39986 6.33339C6.39986 6.66476 6.66849 6.93339 6.99986 6.93339H7.66652C7.99789 6.93339 8.26652 6.66476 8.26652 6.33339C8.26652 6.00202 7.99789 5.73339 7.66652 5.73339H6.99986Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M9.06636 6.33339C9.06636 6.00202 9.33499 5.73339 9.66636 5.73339H11.9997C12.3311 5.73339 12.5997 6.00202 12.5997 6.33339C12.5997 6.66476 12.3311 6.93339 11.9997 6.93339H9.66636C9.33499 6.93339 9.06636 6.66476 9.06636 6.33339Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.99986 8.73339C3.66849 8.73339 3.39986 9.00202 3.39986 9.33339C3.39986 9.66476 3.66849 9.93339 3.99986 9.93339H11.9999C12.3312 9.93339 12.5999 9.66476 12.5999 9.33339C12.5999 9.00202 12.3312 8.73339 11.9999 8.73339H3.99986Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.33338 1.73345L12.6667 1.7334C14.1026 1.73339 15.2667 2.89745 15.2667 4.3334V11C15.2667 12.4359 14.1027 13.6 12.6667 13.6H3.33355C1.89763 13.6 0.733583 12.4359 0.73355 11L0.733398 4.33351C0.733366 2.89755 1.89742 1.73346 3.33338 1.73345ZM12.6667 2.9334L3.33339 2.93345C2.56018 2.93346 1.93338 3.56028 1.9334 4.33348L1.93355 11C1.93357 11.7732 2.56036 12.4 3.33355 12.4H12.6667C13.4399 12.4 14.0667 11.7732 14.0667 11V4.3334C14.0667 3.5602 13.4399 2.93339 12.6667 2.9334Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},_d=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`keyboard-icon`,ref:t,icon:gd}))});_d.displayName=`KeyboardIcon`;let vd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641C1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H11.3332C11.6646 6.76641 11.9332 6.49778 11.9332 6.16641C11.9332 5.83504 11.6646 5.56641 11.3332 5.56641H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004C1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H11.3332C11.6646 14.1004 11.9332 13.8318 11.9332 13.5004C11.9332 13.169 11.6646 12.9004 11.3332 12.9004H1.9999Z`}}]},yd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`left-justifying-icon`,ref:t,icon:vd}))});yd.displayName=`LeftJustifyingIcon`;let bd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.1 2.5H13.9M7.1 5.8H13.9M7.1 9.1H13.9M2.1 12.4H13.9`,strokeLinecap:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5 5.6L2.4 8L5 10.4`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.4 8H5.1`,strokeLinecap:`round`,strokeWidth:1.3}}]},xd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`line-indent-decrease-icon`,ref:t,icon:bd}))});xd.displayName=`LineIndentDecreaseIcon`;let Sd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.1 2.5H13.9M7.1 5.8H13.9M7.1 9.1H13.9M2.1 12.4H13.9`,strokeLinecap:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.4 5.6L5 8L2.4 10.4`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.3 8H5`,strokeLinecap:`round`,strokeWidth:1.3}}]},Cd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`line-indent-increase-icon`,ref:t,icon:Sd}))});Cd.displayName=`LineIndentIncreaseIcon`;let wd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.66504 2.8666C1.66504 2.53523 1.93367 2.2666 2.26504 2.2666H13.735C14.0664 2.2666 14.335 2.53523 14.335 2.8666C14.335 3.19797 14.0664 3.4666 13.735 3.4666H2.26504C1.93367 3.4666 1.66504 3.19797 1.66504 2.8666Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.66504 8.00002C1.66504 7.66865 1.93367 7.40002 2.26504 7.40002H13.735C14.0664 7.40002 14.335 7.66865 14.335 8.00002C14.335 8.3314 14.0664 8.60002 13.735 8.60002H2.26504C1.93367 8.60002 1.66504 8.3314 1.66504 8.00002Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.26504 12.5334C1.93367 12.5334 1.66504 12.8021 1.66504 13.1334C1.66504 13.4648 1.93367 13.7334 2.26504 13.7334H13.735C14.0664 13.7334 14.335 13.4648 14.335 13.1334C14.335 12.8021 14.0664 12.5334 13.735 12.5334H2.26504Z`}}]},Td=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`menu-icon`,ref:t,icon:wd}))});Td.displayName=`MenuIcon`;let Ed={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M10.3536 12.3536C10.1583 12.5488 9.84171 12.5488 9.64645 12.3536L6.64645 9.35355C6.45118 9.15829 6.45118 8.84171 6.64645 8.64645L9.64645 5.64645C9.84171 5.45118 10.1583 5.45118 10.3536 5.64645C10.5488 5.84171 10.5488 6.15829 10.3536 6.35355L7.70711 9L10.3536 11.6464C10.5488 11.8417 10.5488 12.1583 10.3536 12.3536Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Dd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`more-left-icon`,ref:t,icon:Ed}))});Dd.displayName=`MoreLeftIcon`;let Od={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M6.14645 4.64645C6.34171 4.45118 6.65829 4.45118 6.85355 4.64645L9.85355 7.64645C10.0488 7.84171 10.0488 8.15829 9.85355 8.35355L6.85355 11.3536C6.65829 11.5488 6.34171 11.5488 6.14645 11.3536C5.95118 11.1583 5.95118 10.8417 6.14645 10.6464L8.79289 8L6.14645 5.35355C5.95118 5.15829 5.95118 4.84171 6.14645 4.64645Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},kd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`more-right-icon`,ref:t,icon:Od}))});kd.displayName=`MoreRightIcon`;let Ad={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.65465 3.96697V2.9942C1.65465 2.9188 1.64353 2.86563 1.62465 2.83387C1.61052 2.81011 1.58943 2.79243 1.53852 2.79243H1.44483C1.23836 2.79243 1.07099 2.62506 1.07099 2.41859C1.07099 2.23956 1.19714 2.09152 1.36369 2.04728C1.4425 2.02634 1.51336 2.00423 1.57642 1.98104C1.65529 1.94986 1.73286 1.91381 1.80913 1.87285C1.8974 1.82544 1.99768 1.79517 2.10303 1.79517C2.41692 1.79517 2.67137 2.04962 2.67137 2.36351V4.02047C2.67137 4.12385 2.75517 4.20765 2.85855 4.20765C3.0614 4.20765 3.22585 4.3721 3.22585 4.57495V4.63332C3.22585 4.86842 3.03527 5.059 2.80018 5.059H1.41884C1.1829 5.059 0.993164 4.86511 0.993164 4.63087C0.993164 4.39932 1.18072 4.20765 1.41398 4.20765C1.5469 4.20765 1.65465 4.09989 1.65465 3.96697Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M0.949709 9.2145C1.14957 9.02907 1.33226 8.85497 1.49677 8.69321C1.6914 8.50496 1.84244 8.33306 1.95136 8.17747C2.05826 8.02476 2.10492 7.89219 2.10492 7.77781C2.10492 7.65255 2.07293 7.57986 2.02759 7.53865L2.0245 7.5357C1.97641 7.48761 1.9103 7.46013 1.81635 7.46013C1.71986 7.46013 1.6383 7.47348 1.5822 7.51611L1.58034 7.51749C1.42279 7.63092 1.19425 7.67086 1.03149 7.50811L1.02187 7.49849C0.868433 7.34505 0.852261 7.07998 1.03819 6.93364C1.12802 6.86293 1.21897 6.8051 1.31109 6.76081C1.48788 6.67257 1.69616 6.63037 1.93278 6.63037C2.15191 6.63037 2.34929 6.67491 2.52246 6.76665C2.69563 6.85514 2.83257 6.98323 2.93172 7.14966C3.03175 7.31758 3.08022 7.51184 3.08022 7.72929C3.08022 7.91104 3.03028 8.09333 2.93429 8.27521C2.84374 8.45283 2.72797 8.62691 2.58859 8.79616C2.51109 8.88842 2.43304 8.97759 2.35442 9.06369C2.34919 9.06941 2.34388 9.07573 2.33892 9.08228C2.34542 9.08201 2.35268 9.08151 2.36075 9.08073C2.46266 9.07087 2.54985 9.06576 2.62168 9.06576H2.78662C3.02915 9.06576 3.22576 9.26237 3.22576 9.5049C3.22576 9.74742 3.02915 9.94403 2.78662 9.94403H1.23472C1.00261 9.94403 0.814453 9.75587 0.814453 9.52376C0.814453 9.40615 0.86379 9.29421 0.949709 9.2145Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.2579 14.674C1.45109 14.7553 1.67487 14.7946 1.92711 14.7946C2.1451 14.7946 2.34841 14.7599 2.53619 14.6895L2.53746 14.689C2.7264 14.6148 2.88145 14.5071 2.99952 14.3647L3.00018 14.3639C3.12167 14.2138 3.18089 14.0326 3.18089 13.8252C3.18089 13.6181 3.12169 13.4411 2.99737 13.3022C2.91596 13.2112 2.81864 13.1388 2.70642 13.0846C2.80611 13.023 2.88805 12.9505 2.95017 12.8661C3.04138 12.7422 3.08609 12.5977 3.08609 12.4365C3.08609 12.1403 2.97594 11.9041 2.7521 11.7404C2.53645 11.5772 2.25212 11.5002 1.90815 11.5002C1.7136 11.5002 1.52963 11.5372 1.35712 11.6115C1.28512 11.6418 1.21426 11.6776 1.14456 11.7188C0.938688 11.8404 0.928034 12.1099 1.06649 12.2774C1.21291 12.4544 1.46028 12.4561 1.63989 12.363C1.70891 12.3286 1.78521 12.3109 1.87023 12.3109C1.96356 12.3109 2.01717 12.3317 2.04691 12.3578C2.07449 12.3821 2.09529 12.4231 2.09529 12.4981C2.09529 12.5709 2.0658 12.6284 1.99667 12.6764C1.96042 12.6999 1.8978 12.7216 1.80025 12.7355C1.61051 12.7625 1.44118 12.9145 1.44118 13.1237C1.44118 13.3319 1.60937 13.4885 1.80489 13.5068C1.87785 13.5136 1.93575 13.5234 1.97985 13.5355C2.07997 13.562 2.12905 13.596 2.14927 13.6246C2.17519 13.6614 2.19008 13.7078 2.19008 13.7684C2.19008 13.8334 2.16583 13.8754 2.1142 13.9064C2.05357 13.9428 1.96521 13.965 1.84179 13.965C1.749 13.965 1.6547 13.9433 1.55817 13.8981C1.363 13.7983 1.08846 13.8083 0.942801 14.01L0.936366 14.0189C0.827321 14.1699 0.821861 14.401 0.994678 14.5262C1.07406 14.5836 1.16225 14.633 1.2579 14.674Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.13037 2.827C4.799 2.827 4.53037 3.09563 4.53037 3.427C4.53037 3.75837 4.799 4.027 5.13037 4.027H15.1489C15.4803 4.027 15.7489 3.75837 15.7489 3.427C15.7489 3.09563 15.4803 2.827 15.1489 2.827H5.13037Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53037 8.28711C4.53037 7.95574 4.799 7.68711 5.13037 7.68711H15.1489C15.4803 7.68711 15.7489 7.95574 15.7489 8.28711C15.7489 8.61848 15.4803 8.88711 15.1489 8.88711H5.13037C4.799 8.88711 4.53037 8.61848 4.53037 8.28711Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.13037 12.5475C4.799 12.5475 4.53037 12.8161 4.53037 13.1475C4.53037 13.4788 4.799 13.7475 5.13037 13.7475H15.1489C15.4803 13.7475 15.7489 13.4788 15.7489 13.1475C15.7489 12.8161 15.4803 12.5475 15.1489 12.5475H5.13037Z`}}]},jd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`order-icon`,ref:t,icon:Ad}))});jd.displayName=`OrderIcon`;let Md={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.3999 7.9999C1.3999 7.66853 1.66853 7.3999 1.9999 7.3999H13.9999C14.3313 7.3999 14.5999 7.66853 14.5999 7.9999C14.5999 8.33127 14.3313 8.5999 13.9999 8.5999H1.9999C1.66853 8.5999 1.3999 8.33127 1.3999 7.9999Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Nd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`reduce-icon`,ref:t,icon:Md}))});Nd.displayName=`ReduceIcon`;let Pd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.66665 5.56641C4.33528 5.56641 4.06665 5.83504 4.06665 6.16641C4.06665 6.49778 4.33528 6.76641 4.66665 6.76641H14C14.3314 6.76641 14.6 6.49778 14.6 6.16641C14.6 5.83504 14.3314 5.56641 14 5.56641H4.66665Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.66665 12.9004C4.33528 12.9004 4.06665 13.169 4.06665 13.5004C4.06665 13.8318 4.33528 14.1004 4.66665 14.1004H14C14.3314 14.1004 14.6 13.8318 14.6 13.5004C14.6 13.169 14.3314 12.9004 14 12.9004H4.66665Z`}}]},Fd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`right-justifying-icon`,ref:t,icon:Pd}))});Fd.displayName=`RightJustifyingIcon`;let Id={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 20 20`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.1543 1.00391C13.7394 1.08421 15 2.39489 15 4V5.30762C14.5832 5.14723 14.149 5.02276 13.7002 4.93848V4C13.7002 3.06112 12.9389 2.2998 12 2.2998H4C3.06112 2.2998 2.2998 3.06112 2.2998 4V12C2.2998 12.9389 3.06112 13.7002 4 13.7002H4.93848C5.02276 14.149 5.14723 14.5832 5.30762 15H4C2.39489 15 1.08421 13.7394 1.00391 12.1543L1 12V4C1 2.34315 2.34315 1 4 1H12L12.1543 1.00391Z`}},{tag:`circle`,attrs:{cx:12.5,cy:12.5,r:5.85,stroke:`currentColor`,strokeWidth:1.3}}]},Ld=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`shape-icon`,ref:t,icon:Id}))});Ld.displayName=`ShapeIcon`;let Rd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`circle`,attrs:{cx:8,cy:8,r:6.4,stroke:`currentColor`,strokeWidth:1.2}},{tag:`circle`,attrs:{cx:5.75,cy:6.3,r:.75,fill:`currentColor`}},{tag:`circle`,attrs:{cx:10.25,cy:6.3,r:.75,fill:`currentColor`}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5 9.3C5.65 10.65 6.65 11.35 8 11.35C9.35 11.35 10.35 10.65 11 9.3`,strokeLinecap:`round`,strokeWidth:1.2}}]},zd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`smile-icon`,ref:t,icon:Rd}))});zd.displayName=`SmileIcon`;let Bd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`rect`,attrs:{width:11.2,height:13.2,x:2.4,y:1.4,stroke:`currentColor`,rx:1.6,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5 12H11M5.5 9.7V7.8M8 9.7V5M10.5 9.7V6.5M5 9.7H11`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}}]},Vd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`statistical-function-icon`,ref:t,icon:Bd}))});Vd.displayName=`StatisticalFunctionIcon`;let Hd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M8.00033 1.20996C6.43345 1.20996 5.23596 1.88077 4.64804 2.94304C4.06338 3.99943 4.15123 5.32084 4.90099 6.47062C5.08199 6.7482 5.45374 6.82648 5.73131 6.64548C6.00888 6.46448 6.08716 6.09273 5.90616 5.81516C5.36418 4.98402 5.35768 4.13897 5.69797 3.52412C6.035 2.91515 6.78176 2.40996 8.00033 2.40996C9.19423 2.40996 10.0017 2.93409 10.5236 3.46755C10.7871 3.73682 10.9756 4.00712 11.0974 4.20903C11.158 4.30951 11.2013 4.39164 11.2284 4.44625C11.2419 4.47351 11.2514 4.49377 11.2568 4.50588L11.2621 4.51771C11.3901 4.82216 11.7407 4.96686 12.046 4.83992C12.3519 4.71267 12.4968 4.36149 12.3695 4.05552L11.8231 4.28278C12.3695 4.05552 12.3697 4.0558 12.3695 4.05552L12.3691 4.05437L12.3685 4.05298L12.367 4.04953L12.3629 4.03993L12.3498 4.01036C12.3388 3.98619 12.3234 3.95326 12.3033 3.91282C12.2632 3.83203 12.2043 3.72072 12.1249 3.58908C11.9666 3.32674 11.7235 2.97805 11.3814 2.62834C10.6921 1.92381 9.59192 1.20996 8.00033 1.20996Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.11953 8.5999H7.88935C10.1109 9.46549 10.5895 10.7649 10.4268 11.6869C10.2475 12.703 9.26939 13.5898 8.00009 13.5898C6.63323 13.5898 5.77631 13.0502 5.25534 12.528C4.99021 12.2623 4.80823 11.9965 4.69365 11.7993C4.63659 11.7011 4.59698 11.6211 4.5727 11.5686C4.56059 11.5424 4.55236 11.5231 4.54774 11.512L4.54352 11.5016C4.4267 11.193 4.0823 11.0363 3.77279 11.1516C3.46228 11.2673 3.30438 11.6129 3.4201 11.9234L3.9649 11.7203C3.4201 11.9234 3.41998 11.9231 3.4201 11.9234L3.4206 11.9247L3.42118 11.9263L3.42262 11.9301L3.42661 11.9403C3.42977 11.9484 3.43394 11.9588 3.43914 11.9713C3.44956 11.9965 3.46418 12.0304 3.48334 12.0719C3.52161 12.1547 3.57828 12.2682 3.65608 12.4021C3.81124 12.6692 4.0534 13.0223 4.40584 13.3756C5.12 14.0914 6.27196 14.7898 8.00009 14.7898C9.82574 14.7898 11.3236 13.5101 11.6085 11.8955C11.812 10.7422 11.3901 9.55402 10.2665 8.5999H13.8804C14.2117 8.5999 14.4803 8.33127 14.4803 7.9999C14.4803 7.66853 14.2117 7.3999 13.8804 7.3999H8.01411C8.0048 7.39968 7.99551 7.39969 7.98625 7.3999H2.11953C1.78816 7.3999 1.51953 7.66853 1.51953 7.9999C1.51953 8.33127 1.78816 8.5999 2.11953 8.5999Z`}}]},Ud=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`strikethrough-icon`,ref:t,icon:Hd}))});Ud.displayName=`StrikethroughIcon`;let Wd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.08596 14.1387L10.3379 2.66873`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M10.3379 14.1387L2.08596 2.66873`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M12.8098 10.0174C13.4565 9.45285 14.781 9.44507 15.0272 10.5759C15.2798 11.736 13.8101 13.2515 12.7376 14.1033C12.7227 14.1151 12.7315 14.1389 12.7505 14.1388L15.2251 14.1388`,strokeLinecap:`round`,strokeWidth:1.2}}]},Gd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`subscript-icon`,ref:t,icon:Wd}))});Gd.displayName=`SubscriptIcon`;let Kd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.10904 14.4537L10.299 3.06987`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M10.2989 14.4537L2.10899 3.06987`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M12.7525 3.35933C13.3943 2.79901 14.7089 2.79129 14.9533 3.91363C15.204 5.06487 13.7456 6.56876 12.6812 7.41429C12.6663 7.4261 12.6751 7.44982 12.6941 7.44982L15.1497 7.44977`,strokeLinecap:`round`,strokeWidth:1.2}}]},qd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`superscript-icon`,ref:t,icon:Kd}))});qd.displayName=`SuperscriptIcon`;let Jd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M3 20H7.5A.5.5 0 0 0 8 19.5V19.218A.52.52 0 0 0 7.753 18.781A8 8 0 1 1 16.247 18.78A.52.52 0 0 0 16 19.218V19.5A.5.5 0 0 0 16.5 20H21`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2}}]},Yd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`symbols-icon`,ref:t,icon:Jd}))});Yd.displayName=`SymbolsIcon`;let Xd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},Zd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`text-type-icon`,ref:t,icon:Xd}))});Zd.displayName=`TextTypeIcon`;let Qd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.46416 2.03237C4.46416 1.701 4.19553 1.43237 3.86416 1.43237C3.53279 1.43237 3.26416 1.701 3.26416 2.03237V7.33338C3.26416 10.0313 5.35834 12.2667 7.9999 12.2667C10.6415 12.2667 12.7356 10.0313 12.7356 7.33338V2.03237C12.7356 1.701 12.467 1.43237 12.1356 1.43237C11.8043 1.43237 11.5356 1.701 11.5356 2.03237V7.33338C11.5356 9.42194 9.92656 11.0667 7.9999 11.0667C6.07325 11.0667 4.46416 9.42194 4.46416 7.33338V2.03237Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.66641 13.4663C2.33504 13.4663 2.06641 13.7349 2.06641 14.0663C2.06641 14.3977 2.33504 14.6663 2.66641 14.6663H13.3331C13.6644 14.6663 13.9331 14.3977 13.9331 14.0663C13.9331 13.7349 13.6644 13.4663 13.3331 13.4663H2.66641Z`}}]},$d=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`underline-icon`,ref:t,icon:Qd}))});$d.displayName=`UnderlineIcon`;let ef={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M3.03012 3.14006C3.03012 3.59845 2.65851 3.97006 2.20012 3.97006C1.74172 3.97006 1.37012 3.59845 1.37012 3.14006C1.37012 2.68166 1.74172 2.31006 2.20012 2.31006C2.65851 2.31006 3.03012 2.68166 3.03012 3.14006Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53027 2.54014C4.1989 2.54014 3.93027 2.80877 3.93027 3.14014C3.93027 3.47151 4.1989 3.74014 4.53027 3.74014H14.5488C14.8802 3.74014 15.1488 3.47151 15.1488 3.14014C15.1488 2.80877 14.8802 2.54014 14.5488 2.54014H4.53027Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.20012 8.82992C2.65851 8.82992 3.03012 8.45832 3.03012 7.99992C3.03012 7.54153 2.65851 7.16992 2.20012 7.16992C1.74172 7.16992 1.37012 7.54153 1.37012 7.99992C1.37012 8.45832 1.74172 8.82992 2.20012 8.82992Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53027 7.4C4.1989 7.4 3.93027 7.66863 3.93027 8C3.93027 8.33137 4.1989 8.6 4.53027 8.6H14.5488C14.8802 8.6 15.1488 8.33137 15.1488 8C15.1488 7.66863 14.8802 7.4 14.5488 7.4H4.53027Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.20012 13.6905C2.65851 13.6905 3.03012 13.3189 3.03012 12.8605C3.03012 12.4021 2.65851 12.0305 2.20012 12.0305C1.74172 12.0305 1.37012 12.4021 1.37012 12.8605C1.37012 13.3189 1.74172 13.6905 2.20012 13.6905Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53027 12.2604C4.1989 12.2604 3.93027 12.529 3.93027 12.8604C3.93027 13.1917 4.1989 13.4604 4.53027 13.4604H14.5488C14.8802 13.4604 15.1488 13.1917 15.1488 12.8604C15.1488 12.529 14.8802 12.2604 14.5488 12.2604H4.53027Z`}}]},tf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`unorder-icon`,ref:t,icon:ef}))});tf.displayName=`UnorderIcon`;let nf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`#0B9EFB`,d:`M8.79993 14.0166C8.79993 14.4585 8.44176 14.8166 7.99993 14.8166C4.23529 14.8166 1.18345 11.7648 1.18345 8.00017C1.18345 4.23554 4.23529 1.18369 7.99993 1.1837C11.7646 1.1837 14.8164 4.23554 14.8164 8.00017C14.8164 8.442 14.4582 8.80017 14.0164 8.80017C13.5746 8.80017 13.2164 8.442 13.2164 8.00017C13.2164 5.11919 10.8809 2.7837 7.99993 2.7837C5.11895 2.7837 2.78345 5.11919 2.78345 8.00017C2.78345 10.8812 5.11895 13.2166 7.99993 13.2166C8.44176 13.2166 8.79993 13.5748 8.79993 14.0166Z`,fillOpacity:.2,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`#0B9EFB`,d:`M7.20007 1.98384C7.20007 1.54201 7.55824 1.18384 8.00007 1.18384C11.7647 1.18384 14.8165 4.23568 14.8165 8.00032C14.8165 11.765 11.7647 14.8168 8.00007 14.8168C4.23543 14.8168 1.18359 11.765 1.18359 8.00032C1.18359 7.55849 1.54177 7.20031 1.98359 7.20031C2.42542 7.20031 2.78359 7.55849 2.78359 8.00032C2.78359 10.8813 5.11909 13.2168 8.00007 13.2168C10.8811 13.2168 13.2165 10.8813 13.2165 8.00032C13.2165 5.11933 10.8811 2.78384 8.00007 2.78384C7.55824 2.78384 7.20007 2.42567 7.20007 1.98384Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},rf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`loading-multi-icon`,ref:t,icon:nf}))});rf.displayName=`LoadingMultiIcon`;let af={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`colorChannel1`,d:`M5.4004 2.60213C5.25792 2.60213 5.14241 2.71763 5.14241 2.86011V4.32679C5.14241 4.67752 4.85809 4.96184 4.50736 4.96184C4.15663 4.96184 3.87231 4.67752 3.87231 4.32679V2.86011C3.87231 2.01618 4.55646 1.33203 5.4004 1.33203H13.14C13.984 1.33203 14.6681 2.01618 14.6681 2.86011V10.5998C14.6681 11.4437 13.984 12.1278 13.14 12.1278H11.6568C11.3061 12.1278 11.0218 11.8435 11.0218 11.4928C11.0218 11.1421 11.3061 10.8577 11.6568 10.8577H13.14C13.2825 10.8577 13.398 10.7422 13.398 10.5998V2.86011C13.398 2.71763 13.2825 2.60213 13.14 2.60213H5.4004Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.33203 5.40015C1.33203 4.55622 2.01618 3.87207 2.86011 3.87207H10.5998C11.4437 3.87207 12.1278 4.55622 12.1278 5.40015V13.1398C12.1278 13.9837 11.4437 14.6679 10.5998 14.6679H2.86011C2.01618 14.6679 1.33203 13.9837 1.33203 13.1398V5.40015ZM2.86011 5.14217C2.71763 5.14217 2.60213 5.25767 2.60213 5.40015V13.1398C2.60213 13.2823 2.71763 13.3978 2.86011 13.3978H10.5998C10.7422 13.3978 10.8577 13.2823 10.8577 13.1398V5.40015C10.8577 5.25767 10.7422 5.14217 10.5998 5.14217H2.86011Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},of=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`copy-double-icon`,ref:t,icon:af}))});of.displayName=`CopyDoubleIcon`;let sf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M11.9503 1.33317C12.6866 1.33317 13.2836 1.9301 13.2836 2.6665V13.3332C13.2836 14.0695 12.6866 14.6665 11.9503 14.6665H9.28359C8.54721 14.6665 7.95026 14.0696 7.95026 13.3332L7.95026 2.6665C7.95026 1.9301 8.54721 1.33317 9.28359 1.33317H11.9503ZM11.9503 2.6665V13.3332H9.28359V2.6665H11.9503Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M3.8542 6.29716C3.59385 6.03681 3.17174 6.03681 2.91139 6.29716C2.65104 6.55751 2.65104 6.97962 2.91139 7.23997L3.67157 8.00014L2.9114 8.76031C2.65105 9.02066 2.65105 9.44277 2.9114 9.70312C3.17175 9.96347 3.59387 9.96347 3.85421 9.70312L4.61437 8.94296L5.37459 9.70318C5.63494 9.96352 6.05705 9.96353 6.31741 9.70318C6.57775 9.44283 6.57775 9.02072 6.31741 8.76036L5.55718 8.00014L6.31742 7.23991C6.57777 6.97956 6.57777 6.55745 6.31742 6.2971C6.05707 6.03675 5.63496 6.03675 5.37461 6.2971L4.61437 7.05734L3.8542 6.29716Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},cf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-column-double-icon`,ref:t,icon:sf}))});cf.displayName=`DeleteColumnDoubleIcon`;let lf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M14.6666 11.9502C14.6666 12.6866 14.0697 13.2835 13.3333 13.2835H2.66665C1.93027 13.2835 1.33331 12.6866 1.33331 11.9502V9.28353C1.33331 8.54715 1.93027 7.9502 2.66665 7.9502L13.3333 7.9502C14.0697 7.9502 14.6666 8.54715 14.6666 9.28353V11.9502ZM13.3333 11.9502H2.66665V9.28353H13.3333V11.9502Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M9.60134 3.85438C9.86169 3.59403 9.86169 3.17192 9.60134 2.91157C9.34099 2.65122 8.91888 2.65122 8.65853 2.91157L7.89835 3.67175L7.13819 2.91159C6.87784 2.65124 6.45573 2.65124 6.19538 2.91159C5.93503 3.17194 5.93503 3.59405 6.19538 3.8544L6.95554 4.61456L6.19532 5.37478C5.93497 5.63513 5.93497 6.05724 6.19532 6.31759C6.45567 6.57794 6.87778 6.57794 7.13813 6.31759L7.89835 5.55737L8.65859 6.3176C8.91893 6.57796 9.34105 6.57796 9.60139 6.3176C9.86175 6.05726 9.86175 5.63514 9.60139 5.3748L8.84116 4.61456L9.60134 3.85438Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},uf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-row-double-icon`,ref:t,icon:lf}))});uf.displayName=`DeleteRowDoubleIcon`;let df={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M1.5 1.5H13.5M1.5 1.5V13.5M5.5 1.5V13.5M9.5 1.5V8M1.5 5.5H13.5M1.5 9.5H8M13.5 1.5V8M1.5 13.5H8`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`colorChannel1`,d:`M9.7 9.7L14.5 14.5M14.5 9.7L9.7 14.5`,strokeLinecap:`round`,strokeWidth:1.3}}]},ff=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-table-double-icon`,ref:t,icon:df}))});ff.displayName=`DeleteTableDoubleIcon`;let pf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`colorChannel1`,d:`M1.98682 13.4992C1.98682 12.5603 2.74793 11.7992 3.68682 11.7992H14.2868C15.2257 11.7992 15.9868 12.5603 15.9868 13.4992V13.4992C15.9868 14.4381 15.2257 15.1992 14.2868 15.1992H3.68682C2.74793 15.1992 1.98682 14.4381 1.98682 13.4992V13.4992Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.3014 1.70389C9.85268 0.479568 8.12109 0.479557 7.67238 1.70389L4.72235 9.75326C4.60832 10.0644 4.76811 10.4091 5.07924 10.5231C5.39038 10.6371 5.73504 10.4773 5.84907 10.1662L6.99975 7.02646C7.03588 7.03324 7.07314 7.03679 7.11123 7.03679H10.9778L12.1247 10.1662C12.2387 10.4773 12.5834 10.6371 12.8945 10.5231C13.2057 10.4091 13.3654 10.0644 13.2514 9.75326L10.3014 1.70389ZM10.538 5.83679L9.17467 2.11682C9.11057 1.94192 8.8632 1.94192 8.7991 2.11682L7.43576 5.83679H10.538Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},mf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`font-color-double-icon`,ref:t,icon:pf}))});mf.displayName=`FontColorDoubleIcon`;let hf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.53337 14C2.35658 14 2.18704 13.9297 2.06203 13.8047C1.93703 13.6797 1.86681 13.5101 1.86681 13.3333C1.86681 13.1565 1.93703 12.987 2.06203 12.862C2.18704 12.7369 2.35658 12.6667 2.53337 12.6667L13.4667 12.6667C13.6435 12.6667 13.813 12.7369 13.938 12.862C14.063 12.987 14.1333 13.1565 14.1333 13.3333C14.1333 13.5101 14.063 13.6797 13.938 13.8047C13.813 13.9297 13.6435 14 13.4667 14L2.53337 14ZM2.53337 3.33333C2.35658 3.33331 2.18703 3.26306 2.06203 3.13804C1.93703 3.01301 1.86681 2.84346 1.86681 2.66667C1.86681 2.48987 1.93703 2.32032 2.06203 2.1953C2.18703 2.07028 2.35658 2.00003 2.53337 2L13.4667 2C13.6435 2.00003 13.813 2.07028 13.938 2.1953C14.063 2.32032 14.1333 2.48987 14.1333 2.66667C14.1333 2.84346 14.063 3.01301 13.938 3.13803C13.813 3.26306 13.6435 3.33331 13.4667 3.33333L2.53337 3.33333Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M11.0573 7.33327L10.1953 6.47127C10.0703 6.34627 10.0001 6.17672 10.0001 5.99994C10.0001 5.82315 10.0703 5.65361 10.1953 5.52861C10.3203 5.4036 10.4899 5.33337 10.6667 5.33337C10.8434 5.33337 11.013 5.4036 11.138 5.52861L13.138 7.5286C13.2 7.59046 13.2491 7.66393 13.2827 7.74481C13.3162 7.82569 13.3335 7.91238 13.3335 7.99994C13.3335 8.08749 13.3162 8.17419 13.2827 8.25507C13.2491 8.33594 13.2 8.40941 13.138 8.47127L11.138 10.4713C11.0761 10.5332 11.0026 10.5823 10.9217 10.6158C10.8409 10.6493 10.7542 10.6665 10.6667 10.6665C10.5791 10.6665 10.4925 10.6493 10.4116 10.6158C10.3307 10.5823 10.2572 10.5332 10.1953 10.4713C10.1334 10.4094 10.0843 10.3359 10.0508 10.255C10.0173 10.1742 10.0001 10.0875 10.0001 9.99994C10.0001 9.9124 10.0173 9.82573 10.0508 9.74486C10.0843 9.66398 10.1334 9.5905 10.1953 9.52861L11.0573 8.6666L3.33333 8.66661C3.15652 8.66661 2.98695 8.59637 2.86193 8.47134C2.7369 8.34632 2.66666 8.17675 2.66666 7.99994C2.66666 7.82313 2.7369 7.65356 2.86193 7.52853C2.98695 7.40351 3.15652 7.33327 3.33333 7.33327L11.0573 7.33327Z`}}]},gf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`insert-double-icon`,ref:t,icon:hf}))});gf.displayName=`InsertDoubleIcon`;let _f={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M13.3333 13.4087C14.0697 13.4087 14.6666 12.8117 14.6666 12.0754L14.6666 9.40869C14.6666 8.67231 14.0697 8.07536 13.3333 8.07536L2.66663 8.07536C1.93023 8.07536 1.33329 8.67231 1.33329 9.40869L1.33329 12.0754C1.33329 12.8117 1.93023 13.4087 2.66663 13.4087L13.3333 13.4087ZM2.66663 12.0754L13.3333 12.0754L13.3333 9.40869L2.66663 9.40869L2.66663 12.0754Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M7.74168 2.59137C8.10987 2.59137 8.40835 2.88984 8.40835 3.25804L8.40835 4.33309L9.48348 4.33309C9.85167 4.33309 10.1501 4.63156 10.1501 4.99976C10.1501 5.36794 9.85167 5.66642 9.48348 5.66642L8.40835 5.66642L8.40835 6.74154C8.40835 7.10973 8.10987 7.4082 7.74168 7.4082C7.37349 7.4082 7.07501 7.10973 7.07501 6.74154L7.07501 5.66642L5.99998 5.66642C5.63179 5.66642 5.33331 5.36794 5.33331 4.99976C5.33331 4.63156 5.63179 4.33309 5.99998 4.33309L7.07501 4.33309L7.07501 3.25804C7.07501 2.88984 7.37349 2.59137 7.74168 2.59137Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},vf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`insert-row-above-double-icon`,ref:t,icon:_f}))});vf.displayName=`InsertRowAboveDoubleIcon`;let yf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.66671 2.59131C1.93033 2.59131 1.33337 3.18826 1.33337 3.92464L1.33337 6.59131C1.33337 7.32769 1.93033 7.92464 2.66671 7.92464L13.3334 7.92464C14.0698 7.92464 14.6667 7.32769 14.6667 6.59131L14.6667 3.92464C14.6667 3.18826 14.0698 2.59131 13.3334 2.59131L2.66671 2.59131ZM13.3334 3.92464L2.66671 3.92464L2.66671 6.59131L13.3334 6.59131L13.3334 3.92464Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M8.25838 13.4086C7.8902 13.4086 7.59172 13.1102 7.59172 12.742L7.59172 11.6669L6.51658 11.6669C6.14839 11.6669 5.84992 11.3684 5.84991 11.0002C5.84991 10.6321 6.14839 10.3336 6.51658 10.3336L7.59172 10.3336L7.59171 9.25846C7.59171 8.89027 7.89019 8.5918 8.25838 8.5918C8.62657 8.5918 8.92505 8.89027 8.92505 9.25846L8.92505 10.3336L10.0001 10.3336C10.3683 10.3336 10.6667 10.6321 10.6667 11.0002C10.6667 11.3684 10.3683 11.6669 10.0001 11.6669L8.92505 11.6669L8.92505 12.742C8.92505 13.1102 8.62658 13.4086 8.25838 13.4086Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},bf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`insert-row-below-double-icon`,ref:t,icon:yf}))});bf.displayName=`InsertRowBelowDoubleIcon`;let xf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M13.4322 2.66683C13.4322 1.93045 12.8352 1.3335 12.0989 1.3335H9.43219C8.69581 1.3335 8.09886 1.93045 8.09886 2.66683V13.3335C8.09886 14.0699 8.69581 14.6668 9.43219 14.6668H12.0989C12.8352 14.6668 13.4322 14.0699 13.4322 13.3335V2.66683ZM12.0989 13.3335V2.66683H9.43219V13.3335H12.0989Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M2.56769 7.99978C2.56769 7.63159 2.86616 7.33311 3.23435 7.33311H4.30941V6.25798C4.30941 5.88979 4.60788 5.59131 4.97607 5.59131C5.34426 5.59131 5.64274 5.88979 5.64274 6.25798V7.33311H6.71785C7.08604 7.33311 7.38452 7.63159 7.38452 7.99978C7.38452 8.36797 7.08604 8.66644 6.71785 8.66644H5.64274V9.74148C5.64274 10.1097 5.34426 10.4081 4.97607 10.4081C4.60788 10.4081 4.30941 10.1097 4.30941 9.74148V8.66644H3.23435C2.86616 8.66644 2.56769 8.36797 2.56769 7.99978Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Sf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`left-insert-column-double-icon`,ref:t,icon:xf}))});Sf.displayName=`LeftInsertColumnDoubleIcon`;let Cf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.665 2.66496H3.33496C2.96493 2.66496 2.66496 2.96493 2.66496 3.33496V12.665C2.66496 13.035 2.96493 13.335 3.33496 13.335H12.665C13.035 13.335 13.335 13.035 13.335 12.665V3.33496C13.335 2.96493 13.035 2.66496 12.665 2.66496ZM3.33496 1.33496C2.23039 1.33496 1.33496 2.23039 1.33496 3.33496V12.665C1.33496 13.7695 2.23039 14.665 3.33496 14.665H12.665C13.7695 14.665 14.665 13.7695 14.665 12.665V3.33496C14.665 2.23039 13.7695 1.33496 12.665 1.33496H3.33496Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M13.2559 14.1963L1.64941 2.58984L2.58987 1.64939L14.1963 13.2558L13.2559 14.1963Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},wf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`no-color-double-icon`,ref:t,icon:Cf}))});wf.displayName=`NoColorDoubleIcon`;let Tf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M8.01281 1.36643C8.79386 0.585377 10.0602 0.585378 10.8412 1.36643L12.9223 3.44752C13.7034 4.22857 13.7034 5.4949 12.9223 6.27595L9.36445 9.83383C8.5834 10.6149 7.31707 10.6149 6.53602 9.83383L4.45493 7.75273C3.67388 6.97168 3.67388 5.70535 4.45493 4.9243L8.01281 1.36643ZM9.9927 2.21495C9.68028 1.90253 9.17375 1.90253 8.86133 2.21495L5.30346 5.77283L5.29671 5.77966L10.839 6.66224L12.0738 5.42742C12.3862 5.115 12.3862 4.60847 12.0738 4.29605L9.9927 2.21495Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M14.5179 9.48875C14.5179 9.99175 14.1101 10.3995 13.607 10.3995C13.1041 10.3995 12.6963 9.99175 12.6963 9.48875C12.6963 9.1773 13.0455 8.59966 13.3114 8.20487C13.4549 7.99177 13.7591 7.99177 13.9027 8.20486C14.1687 8.59965 14.5179 9.1773 14.5179 9.48875Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M1.98682 13.4992C1.98682 12.5603 2.74793 11.7992 3.68682 11.7992H14.2868C15.2257 11.7992 15.9868 12.5603 15.9868 13.4992V13.4992C15.9868 14.4381 15.2257 15.1992 14.2868 15.1992H3.68682C2.74793 15.1992 1.98682 14.4381 1.98682 13.4992V13.4992Z`}}]},Ef=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`paint-bucket-double-icon`,ref:t,icon:Tf}))});Ef.displayName=`PaintBucketDoubleIcon`;let Df={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`colorChannel1`,d:`M7.74692 9.12463C7.74692 9.46018 8.01893 9.73219 8.35448 9.73219H11.4933C11.8288 9.73219 12.1009 9.46018 12.1009 9.12463C12.1009 8.78909 11.8288 8.51707 11.4933 8.51707H8.35448C8.01893 8.51707 7.74692 8.78909 7.74692 9.12463Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M10.8636 10.8523C10.8636 11.1879 10.5915 11.4599 10.256 11.4599H8.35448C8.01893 11.4599 7.74692 11.1879 7.74692 10.8523C7.74692 10.5168 8.01893 10.2447 8.35448 10.2447H10.256C10.5915 10.2447 10.8636 10.5168 10.8636 10.8523Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.4791 1.98268C5.47913 1.71529 5.87912 1.49854 6.37252 1.49854C6.86593 1.49854 7.26592 1.71529 7.26595 1.98268H7.62187C8.22277 1.98268 8.72459 2.39534 8.84412 2.9452H9.39563C10.0856 2.9452 10.6449 3.48923 10.6449 4.16032V6.00569H12.1261C13.161 6.00569 14 6.82174 14 7.82838V11.334C14 11.8174 13.8025 12.281 13.4511 12.6228L12.0693 13.9647C11.7179 14.3065 11.2412 14.4985 10.7442 14.4985H7.91116C7.05024 14.4985 6.32492 14.0431 6.10535 13.2737H3.34925C2.6593 13.2737 2.09998 12.7297 2.09998 12.0586V4.16032C2.09998 3.48923 2.6593 2.9452 3.34925 2.9452H3.90107C4.0206 2.39534 4.52241 1.98268 5.12332 1.98268H5.4791ZM3.97249 4.16032H3.24925L3.24925 12.0586H6.03725V7.82838C6.03725 6.82174 6.87623 6.00569 7.91116 6.00569H9.49563V4.16032H8.7727C8.58289 4.59611 8.13909 4.90183 7.62187 4.90183H5.12332C4.6061 4.90183 4.1623 4.59611 3.97249 4.16032ZM5.12332 2.89403H7.62187C7.79436 2.89403 7.93419 3.03003 7.93419 3.19781V3.68671C7.93419 3.85448 7.79436 3.99049 7.62187 3.99049H5.12332C4.95083 3.99049 4.811 3.85448 4.811 3.68671V3.19781C4.811 3.03003 4.95083 2.89403 5.12332 2.89403ZM7.91116 7.11157C7.56618 7.11157 7.28652 7.38359 7.28652 7.71913V12.7851C7.28652 13.1206 7.56618 13.3927 7.91116 13.3927H10.7442C10.8401 13.3927 10.9337 13.3712 11.0182 13.3311C11.1373 13.2746 11.1859 13.1423 11.1859 13.0134V12.0066C11.1859 11.8724 11.2978 11.7636 11.4358 11.7636H12.4709C12.6034 11.7636 12.7394 11.7163 12.7975 11.6004C12.8388 11.5182 12.8608 11.4272 12.8608 11.334V7.71913C12.8608 7.38359 12.5811 7.11157 12.2362 7.11157H7.91116Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Of=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`paste-special-double-icon`,ref:t,icon:Df}))});Of.displayName=`PasteSpecialDoubleIcon`;let kf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.53331 14C2.35652 14 2.18697 13.9297 2.06197 13.8047C1.93697 13.6797 1.86675 13.5101 1.86675 13.3333C1.86675 13.1565 1.93697 12.987 2.06197 12.862C2.18697 12.7369 2.35652 12.6667 2.53331 12.6667L13.4666 12.6667C13.6434 12.6667 13.813 12.7369 13.938 12.862C14.063 12.987 14.1332 13.1565 14.1332 13.3333C14.1332 13.5101 14.063 13.6797 13.938 13.8047C13.813 13.9297 13.6434 14 13.4666 14L2.53331 14ZM2.53331 3.33333C2.35652 3.33331 2.18697 3.26306 2.06197 3.13804C1.93697 3.01301 1.86675 2.84346 1.86675 2.66667C1.86675 2.48987 1.93697 2.32032 2.06197 2.1953C2.18697 2.07028 2.35652 2.00003 2.53331 2L13.4666 2C13.6434 2.00003 13.813 2.07028 13.938 2.1953C14.063 2.32032 14.1332 2.48987 14.1332 2.66667C14.1332 2.84346 14.063 3.01301 13.938 3.13803C13.813 3.26306 13.6434 3.33331 13.4666 3.33333L2.53331 3.33333Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M10.8142 10.8141C10.5588 11.0695 10.1447 11.0695 9.88929 10.8141L7.97868 8.90354L6.14021 10.742C5.89652 10.9857 5.50142 10.9857 5.25774 10.742C5.01405 10.4983 5.01405 10.1032 5.25774 9.85955L7.09621 8.02107L5.18561 6.11047C4.93021 5.85507 4.93021 5.44098 5.18561 5.18557C5.44101 4.93017 5.8551 4.93017 6.11051 5.18557L8.02111 7.09618L9.85959 5.2577C10.1033 5.01401 10.4984 5.01401 10.7421 5.2577C10.9857 5.50139 10.9857 5.89648 10.7421 6.14017L8.90358 7.97865L10.8142 9.88925C11.0696 10.1447 11.0696 10.5587 10.8142 10.8141Z`}}]},Af=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`reduce-double-icon`,ref:t,icon:kf}))});Af.displayName=`ReduceDoubleIcon`;let jf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.56781 13.3332C2.56781 14.0695 3.16476 14.6665 3.90114 14.6665L6.56781 14.6665C7.30419 14.6665 7.90114 14.0695 7.90114 13.3332L7.90114 2.6665C7.90114 1.9301 7.30419 1.33317 6.56781 1.33317L3.90114 1.33317C3.16476 1.33317 2.56781 1.9301 2.56781 2.6665L2.56781 13.3332ZM3.90114 2.6665L3.90114 13.3332L6.56781 13.3332L6.56781 2.6665L3.90114 2.6665Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M13.4323 8.00022C13.4323 8.36841 13.1338 8.66689 12.7656 8.66689L11.6906 8.66689L11.6906 9.74202C11.6906 10.1102 11.3921 10.4087 11.0239 10.4087C10.6557 10.4087 10.3573 10.1102 10.3573 9.74202L10.3573 8.66689L9.28215 8.66689C8.91396 8.66689 8.61548 8.36841 8.61548 8.00022C8.61548 7.63203 8.91396 7.33356 9.28214 7.33356L10.3573 7.33356L10.3573 6.25852C10.3573 5.89033 10.6557 5.59186 11.0239 5.59186C11.3921 5.59186 11.6906 5.89033 11.6906 6.25852L11.6906 7.33356L12.7656 7.33356C13.1338 7.33356 13.4323 7.63203 13.4323 8.00022Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Mf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`right-insert-column-double-icon`,ref:t,icon:jf}))});Mf.displayName=`RightInsertColumnDoubleIcon`;let Nf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.74263C4.7294 1.50832 4.3495 1.50832 4.11519 1.74263L2.53945 3.31837L1.96372 2.74263C1.7294 2.50832 1.3495 2.50832 1.11519 2.74263C0.880874 2.97695 0.880874 3.35684 1.11519 3.59116L2.11519 4.59116C2.3495 4.82547 2.7294 4.82547 2.96372 4.59116L4.96372 2.59116Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M14.4605 2.56689H6.8981C6.56672 2.56689 6.2981 2.83552 6.2981 3.16689C6.2981 3.49827 6.56672 3.76689 6.8981 3.76689H14.4605C14.7918 3.76689 15.0605 3.49827 15.0605 3.16689C15.0605 2.83552 14.7918 2.56689 14.4605 2.56689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.8981 7.2334C6.56672 7.2334 6.2981 7.50203 6.2981 7.8334C6.2981 8.16477 6.56672 8.4334 6.8981 8.4334H14.4605C14.7918 8.4334 15.0605 8.16477 15.0605 7.8334C15.0605 7.50203 14.7918 7.2334 14.4605 7.2334H6.8981Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.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.4999C15.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 0.939453 6.76549 0.939453 7.83324C0.939453 8.90099 1.80504 9.76657 2.87279 9.76657C3.94054 9.76657 4.80612 8.90099 4.80612 7.83324C4.80612 6.76549 3.94054 5.8999 2.87279 5.8999ZM2.13945 7.83324C2.13945 7.42823 2.46778 7.0999 2.87279 7.0999C3.2778 7.0999 3.60612 7.42823 3.60612 7.83324C3.60612 8.23824 3.2778 8.56657 2.87279 8.56657C2.46778 8.56657 2.13945 8.23824 2.13945 7.83324Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M0.939453 12.5002C0.939453 11.4325 1.80504 10.5669 2.87279 10.5669C3.94054 10.5669 4.80612 11.4325 4.80612 12.5002C4.80612 13.568 3.94054 14.4336 2.87279 14.4336C1.80504 14.4336 0.939453 13.568 0.939453 12.5002ZM2.87279 11.7669C2.46778 11.7669 2.13945 12.0952 2.13945 12.5002C2.13945 12.9052 2.46778 13.2336 2.87279 13.2336C3.2778 13.2336 3.60612 12.9052 3.60612 12.5002C3.60612 12.0952 3.2778 11.7669 2.87279 11.7669Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Pf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`todo-list-double-icon`,ref:t,icon:Nf}))});Pf.displayName=`TodoListDoubleIcon`;let Ff={words:0,charactersWithoutSpaces:0,charactersWithSpaces:0,paragraphs:0,nonAsianWords:0,asianCharactersAndKoreanWords:0},If={pages:0,lines:0};function Lf(e){return(e.getTextRanges()??[]).filter(e=>!e.collapsed&&!e.segmentId).map(({collapsed:e,direction:t,endOffset:n,isActive:r,rangeType:i,segmentId:a,segmentPage:o,startOffset:s})=>({collapsed:e,direction:t,endOffset:n,isActive:r,rangeType:i,segmentId:a,segmentPage:o,startOffset:s}))}function Rf(e,t,n){let r=Math.min(e.startOffset,e.endOffset),i=Math.max(e.startOffset,e.endOffset);return r<n&&i>t}function zf(e,t=[],n=!0){var i;let a=(e==null||(i=e.getSkeletonData())==null?void 0:i.pages)??[];if(t.length===0){let e=0;return(0,r.documentSkeletonLineIterator)(a,{},()=>e++),{lines:e,pages:n?a.length:0}}let o=0,s=n?new Set:null;return(0,r.documentSkeletonLineIterator)(a,{},({line:e,pageIndex:n})=>{t.some(t=>Rf(t,e.st,e.ed))&&(o+=1,s==null||s.add(n))}),{lines:o,pages:(s==null?void 0:s.size)??0}}async function Bf({calculateLayout:e,calculatePages:t,documentDataModel:n,cachedStatistics:r,locale:i,selectionRanges:a,signal:o,skeleton:s}){let c=e?zf(s,[],t):If,l=e&&a.length>0?zf(s,a,t):If,[u,d]=await Promise.all([r??n.getStatistics({locale:i,signal:o}),a.length>0?n.getStatistics({locale:i,ranges:a,signal:o}):null]);return{document:{...u,...c},selection:d?{...d,...l}:null}}function Vf(e,t,n,r,i){e.current={documentDataModel:t,locale:n,revision:r,statistics:{words:i.words,charactersWithoutSpaces:i.charactersWithoutSpaces,charactersWithSpaces:i.charactersWithSpaces,paragraphs:i.paragraphs,nonAsianWords:i.nonAsianWords,asianCharactersAndKoreanWords:i.asianCharactersAndKoreanWords}}}function Hf(e,t){return(0,i.useObservable)(e?()=>(0,a.combineLatest)([t.textSelection$.pipe((0,a.startWith)(void 0)),e.change$]).pipe((0,a.map)(([,e])=>({ranges:Lf(t),revision:e}))):null,{ranges:[],revision:0},!1,[e,t])}function Uf(e,t){var r;let o=e?(r=t.getRenderUnitById(e.getUnitId()))==null?void 0:r.with(n.DocSkeletonManagerService):null;return(0,i.useObservable)(o?o.currentSkeleton$.pipe((0,a.map)(e=>({value:e}))):null,{value:(o==null?void 0:o.getSkeleton())??null},!1,[o]).value}function Wf(e=!1){let a=(0,i.useDependency)(t.IUniverInstanceService),o=(0,i.useDependency)(t.LocaleService),s=(0,i.useDependency)(r.IRenderManagerService),l=(0,i.useDependency)(n.DocSelectionManagerService),u=(0,c.useRef)(null),d=(0,i.useObservable)((0,c.useMemo)(()=>a.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC),[a])),f=Hf(d,l),p=(0,i.useObservable)(o.currentLocale$,o.getCurrentLocale()),m=(d==null?void 0:d.getDocumentStyle().documentFlavor)!==t.DocumentFlavor.MODERN,h=Uf(e?d:null,s),[g,_]=(0,c.useState)({document:{...Ff,lines:0,pages:0},selection:null,loading:!0}),v=f.ranges;return(0,c.useEffect)(()=>{if(!(d!=null&&d.getBody()))return;let t=d,n=u.current,r=(n==null?void 0:n.documentDataModel)===t&&n.locale===p&&n.revision===f.revision,i=new AbortController,a=setTimeout(async()=>{_(e=>({...e,loading:!0}));try{let a=await Bf({calculateLayout:e,calculatePages:m,documentDataModel:t,cachedStatistics:r?n.statistics:void 0,locale:p,selectionRanges:v,signal:i.signal,skeleton:h??null});r||Vf(u,t,p,f.revision,a.document),_({...a,loading:!1})}catch{i.signal.aborted||_(e=>({...e,loading:!1}))}},200);return()=>{clearTimeout(a),i.abort()}},[e,d,p,v,f,m,h]),{...g,showPages:m}}let Gf=[{key:`pages`,label:`docs-ui.statistics.pages`},{key:`words`,label:`docs-ui.statistics.words`},{key:`charactersWithoutSpaces`,label:`docs-ui.statistics.charactersWithoutSpaces`},{key:`charactersWithSpaces`,label:`docs-ui.statistics.charactersWithSpaces`},{key:`paragraphs`,label:`docs-ui.statistics.paragraphs`},{key:`lines`,label:`docs-ui.statistics.lines`},{key:`nonAsianWords`,label:`docs-ui.statistics.nonAsianWords`},{key:`asianCharactersAndKoreanWords`,label:`docs-ui.statistics.asianCharactersAndKoreanWords`}];function Kf({statistics:e,selection:n,showPages:r}){let a=(0,i.useDependency)(t.LocaleService),o=t.LOCALE_META[a.getCurrentLocale()].tag;return(0,l.jsxs)(`div`,{role:`dialog`,"aria-label":a.t(`docs-ui.statistics.title`),className:`univer-w-80 univer-rounded-lg univer-border univer-border-gray-200 univer-bg-gray-0 univer-p-4 univer-shadow-lg dark:!univer-border-gray-600 dark:!univer-bg-gray-800`,children:[(0,l.jsxs)(`div`,{className:`univer-mb-3`,children:[(0,l.jsx)(`div`,{className:`univer-text-sm univer-font-medium`,children:a.t(`docs-ui.statistics.title`)}),(0,l.jsx)(`div`,{className:`univer-mt-0.5 univer-text-xs univer-text-gray-500 dark:!univer-text-gray-400`,children:a.t(n?`docs-ui.statistics.selection`:`docs-ui.statistics.document`)})]}),(0,l.jsx)(`dl`,{className:`univer-grid univer-grid-cols-[1fr_auto] univer-gap-x-5 univer-gap-y-2 univer-text-sm`,children:Gf.filter(({key:e})=>r||e!==`pages`).map(({key:t,label:n})=>(0,l.jsxs)(`div`,{className:`univer-contents`,children:[(0,l.jsx)(`dt`,{children:a.t(n)}),(0,l.jsx)(`dd`,{className:`univer-m-0 univer-text-right univer-font-medium univer-tabular-nums`,children:e[t].toLocaleString(o)})]},String(t)))})]})}function qf(){let e=(0,i.useDependency)(t.LocaleService),[n,r]=(0,c.useState)(!1),{document:o,selection:s,loading:u,showPages:d}=Wf(n),f=(0,c.useRef)(null),p=(0,c.useMemo)(()=>new a.BehaviorSubject({left:0,right:0,top:0,bottom:0}),[]),m=t.LOCALE_META[e.getCurrentLocale()].tag,h=s??o,g=e.t(`docs-ui.statistics.open`),_=s?e.t(`docs-ui.statistics.selectedWords`,s.words.toLocaleString(m),o.words.toLocaleString(m)):e.t(`docs-ui.statistics.wordCount`,o.words.toLocaleString(m));return(0,c.useEffect)(()=>{if(!n)return;let e=()=>{var e;let t=(e=f.current)==null?void 0:e.getBoundingClientRect();t&&p.next({left:t.left,right:t.right,top:t.top,bottom:t.bottom})},t=e=>{e.key===`Escape`&&r(!1)};return e(),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`keydown`,t)}},[p,n]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`span`,{ref:f,title:n?void 0:g,children:(0,l.jsx)(i.ToolbarButton,{noIcon:!0,active:n,className:`!univer-h-7 univer-px-2 univer-text-xs !univer-text-gray-600 focus-visible:univer-ring-2 focus-visible:univer-ring-primary-500 dark:!univer-text-gray-300`,"aria-expanded":n,"aria-haspopup":`dialog`,"aria-label":g,onClick:()=>r(e=>!e),children:(0,l.jsxs)(`span`,{className:`univer-flex univer-items-center univer-gap-1.5`,children:[(0,l.jsx)(Vd,{className:`univer-size-4`}),(0,l.jsx)(`span`,{children:_}),u&&(0,l.jsx)(rf,{className:`univer-size-3.5 univer-animate-spin`})]})})}),n&&(0,l.jsx)(i.RectPopup,{portal:!0,anchorRect$:p,direction:`top-left`,onClickOutside:()=>r(!1),onContextMenu:()=>r(!1),children:(0,l.jsx)(Kf,{statistics:h,selection:s!=null,showPages:d})})]})}function Jf(){let e=(0,i.useConfigValue)(io);return((e==null?void 0:e.footer)??!0)&&(0,l.jsxs)(`div`,{className:`univer-box-border univer-flex univer-items-center univer-justify-between univer-px-5 univer-py-1.5`,children:[(e==null?void 0:e.wordCount)!==!1&&(0,l.jsx)(qf,{}),(0,l.jsx)(ju,{})]})}function Yf(){let e=(0,i.useDependency)(t.IUniverInstanceService),n=(0,i.useObservable)(()=>e.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_SHEET),void 0,void 0,[]),r=(0,i.useObservable)(()=>e.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_SLIDE),void 0,void 0,[]);return n||r?null:(0,l.jsx)(Jf,{})}function Xf(e,t){let n=Zf(e.left,e.top,t),r=Zf(e.right,e.bottom,t);return{left:n.x,top:n.y,right:r.x,bottom:r.y}}function Zf(e,t,n){let{scaleX:r,scaleY:i}=n.getAncestorScale(),a=n.getViewport(`viewMain`);if(!a)return{x:e,y:t};let{viewportScrollX:o,viewportScrollY:s}=a;return{x:(e-o)*r,y:(t-s)*i}}function Qf(e,t,n){let{scaleX:r,scaleY:i}=n.getAncestorScale(),a=n.getViewport(`viewMain`);if(!a)return{x:e,y:t};let{viewportScrollX:o,viewportScrollY:s}=a;return{x:e/r+o,y:t/i+s}}let $f=(e,t)=>{let{scene:i,mainComponent:a,engine:o}=t,s=t.with(n.DocSkeletonManagerService).getSkeleton(),c=s.findNodePositionByCharIndex(e.startOffset,!0,e.segmentId,e.segmentPage),l=e.collapsed?e.startOffset:e.endOffset-1,u=s.findNodePositionByCharIndex(l,!0,e.segmentId,e.segmentPage),d=a;if(!u||!c)return;let f=d.getOffsetConfig(),{docsLeft:p,docsTop:m}=f,h=o.getCanvasElement();if(h==null)return;let g=h.getBoundingClientRect(),_=(0,r.pxToNum)(h.style.width),{top:v,left:y,width:b}=g,x=b/_,{scaleX:S,scaleY:C}=i.getAncestorScale(),{borderBoxPointGroup:w}=new zi(f,s).getRangePointData(c,u);return fa(w).map(e=>Xf(e,i)).map(e=>({left:(e.left+p*S)*x+y,right:(e.right+p*S)*x+y,top:(e.top+m*C)*x+v,bottom:(e.bottom+m*C)*x+v}))},ep=class extends t.Disposable{constructor(e,t,n,r){super(),this._globalPopupManagerService=e,this._renderManagerService=t,this._univerInstanceService=n,this._commandService=r}_shouldUpdateForCommand(e,t){if(e.id!==hi.id&&e.id!==n.RichTextEditingMutation.id)return!1;let r=e.params;return(r==null?void 0:r.unitId)==null||r.unitId===t}_createRectPositionObserver(e,n){let i=()=>{let{scene:t,engine:i}=n,a=typeof e==`function`?e():e,o=i.getCanvasElement();if(o==null)return;let s=o.getBoundingClientRect(),c=(0,r.pxToNum)(o.style.width),l=Xf(a,t),{top:u,left:d,width:f}=s,p=f/c;return{left:l.left*p+d,right:l.right*p+d,top:l.top*p+u,bottom:l.bottom*p+u}},o=i();if(o==null)throw Error(`Current render canvas not found, unitId: ${n.unitId}`);let s=new a.BehaviorSubject(o),c=new t.DisposableCollection,l=()=>{try{let e=i();e&&s.next(e)}catch{}};c.add(this._commandService.onCommandExecuted(e=>{this._shouldUpdateForCommand(e,n.unitId)&&l()}));let u=n.scene.getViewport(`viewMain`);return u&&c.add(u.onScrollAfter$.subscribeEvent(()=>{l()})),c.add(n.scene.onTransformChange$.subscribeEvent(()=>{l()})),{position:o,position$:s,disposable:c}}_createObjectPositionObserver(e,t){return this._createRectPositionObserver(()=>{let{left:t,top:n,width:r,height:i}=e;return{left:t,right:t+r,top:n,bottom:n+i}},t)}_createRangePositionObserver(e,r){let i=$f(e,r)??[],o=new a.BehaviorSubject(i),s=new t.DisposableCollection;s.add(this._commandService.onCommandExecuted(t=>{if((t.id===hi.id||t.id===n.RichTextEditingMutation.id)&&t.params.unitId===r.unitId){let t=$f(e,r);t&&o.next(t)}}));let c=r.scene.getViewport(`viewMain`);return c&&s.add(c.onScrollAfter$.subscribeEvent(()=>{let t=$f(e,r);t&&o.next(t)})),s.add(r.scene.onTransformChange$.subscribeEvent(()=>{let t=$f(e,r);t&&o.next(t)})),{positions:i,positions$:o,disposable:s}}attachPopupToRect(e,t,n){let r=this._renderManagerService.getRenderUnitById(n);if(!r)throw Error(`Current render not found, unitId: ${n}`);let i=this._resolveEmbeddedPopupInjector(n,r),{position:a,position$:o,disposable:s}=this._createRectPositionObserver(e,r),c=this._globalPopupManagerService.addPopup({...t,unitId:n,subUnitId:`default`,connectorInjector:i,anchorRect:a,anchorRect$:o,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(c),o.complete(),s.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==c}}attachPopupToObject(e,t,n){let r=this._renderManagerService.getRenderUnitById(n);if(!r)throw Error(`Current render not found, unitId: ${n}`);let i=this._resolveEmbeddedPopupInjector(n,r),{position:a,position$:o,disposable:s}=this._createObjectPositionObserver(e,r),c=this._globalPopupManagerService.addPopup({...t,unitId:n,subUnitId:`default`,connectorInjector:i,anchorRect:a,anchorRect$:o,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(c),o.complete(),s.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==c}}attachPopupToRange(e,t,n){if(!this._univerInstanceService.getUnit(n))throw Error(`Document not found, unitId: ${n}`);let{direction:r=`top`,multipleDirection:i}=t,o=this._renderManagerService.getRenderUnitById(n);if(!o)throw Error(`Current render not found, unitId: ${n}`);let s=this._resolveEmbeddedPopupInjector(n,o),{positions:c,positions$:l,disposable:u}=this._createRangePositionObserver(e,o),d=l.pipe((0,a.map)(e=>r.includes(`top`)?e[0]:e[e.length-1])),f=this._globalPopupManagerService.addPopup({...t,unitId:n,subUnitId:`default`,connectorInjector:s,anchorRect:r.includes(`top`)?c[0]:c[c.length-1],anchorRect$:d,excludeRects:c,excludeRects$:l,direction:[`top`,`bottom`,`horizontal`].some(e=>r.includes(e))&&c.length>1?i??r:r,canvasElement:o.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(f),l.complete(),u.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==f}}_resolveEmbeddedPopupInjector(e,t){var n,r;return((n=this._univerInstanceService.getUnitCreateOptions(e))==null?void 0:n.embeddedRender)===!0?(r=t.getInjector)==null?void 0:r.call(t):void 0}};ep=A([k(0,(0,t.Inject)(i.ICanvasPopupService)),k(1,r.IRenderManagerService),k(2,t.IUniverInstanceService),k(3,t.ICommandService)],ep);let tp=(e,t,n,r)=>{let i=n.findNodePositionByCharIndex(e.startOffset,!0,e.segmentId,r),a=n.getSkeletonData(),o=e.collapsed?e.startOffset:e.endOffset-1;if(e.segmentId){var s,c;let t=Array.from((a==null||(s=a.skeFooters.get(e.segmentId))==null?void 0:s.values())??[])[0]??Array.from((a==null||(c=a.skeHeaders.get(e.segmentId))==null?void 0:c.values())??[])[0];t&&(o=Math.min(t.ed,o))}let l=n.findNodePositionByCharIndex(o,!0,e.segmentId,r);if(!l||!i)return;let u=t.getOffsetConfig(),{borderBoxPointGroup:d}=new zi(u,n).getRangePointData(i,l);return fa(d).map(e=>({top:e.top+u.docsTop-4,bottom:e.bottom+u.docsTop+4,left:e.left+u.docsLeft,right:e.right+u.docsLeft}))},np=(e,t,n,r)=>{let i=[];for(let a of e){let e=a.top;for(let o of a.columns){let s=o.left,c=a.colCount===1?r:o.width,l=null;for(let r of o.lines){let a=r.paragraphIndex;if(r.paragraphStart){l&&=(i.push(l),null);let o={top:t+e+r.top,left:n+s,right:n+s+c,bottom:t+e+r.top+r.lineHeight};l={paragraphStart:r.st,paragraphEnd:a,startIndex:a,rect:o,fisrtLine:{top:t+e+r.top+r.marginTop+r.paddingTop,left:n+s,right:n+s+c,bottom:t+e+r.top+r.marginTop+r.paddingTop+r.contentHeight}}}else l&&l.startIndex===a&&(l.rect.bottom=t+e+r.top+r.lineHeight)}l&&i.push(l)}}return i},rp=(e,t,n)=>{let r=[],i=new Map;for(let a of e){let{column:e,line:o,lineWidth:s,pageLeft:c,sectionTop:l}=a,u=o.paragraphIndex,d=c+e.left+t,f=l+o.top+n,p=ip(a,f),m=`${a.source}:${a.pageIndex}:${c}:${e.left}:${u}`;if(o.paragraphStart){let e=i.get(m);e&&r.push(e),i.set(m,{paragraphStart:o.st,paragraphEnd:u,startIndex:u,rect:{top:f,left:d,right:d+s,bottom:p},fisrtLine:{top:f+o.marginTop+o.paddingTop,left:d,right:d+s,bottom:f+o.marginTop+o.paddingTop+o.contentHeight}})}else{let e=i.get(m);e&&(e.rect.bottom=p)}}return r.push(...i.values()),r};function ip(e,t){let n=t+e.line.lineHeight;if(e.source!==`column`||e.line!==e.column.lines[e.column.lines.length-1]||!Number.isFinite(e.page.pageHeight))return n;let r=t-e.line.top-e.section.top;return Math.max(n,r+e.page.pageHeight)}let ap=(e,t,n,r=-1)=>{let i=n.findPositionByGlyph(e,r);if(!i)return;let a=t.getOffsetConfig(),o={...i,isBack:!0},{borderBoxPointGroup:s}=new zi(a,n).getRangePointData(o,o),c=fa(s)[0];if(c)return{top:c.top+a.docsTop,bottom:c.bottom+a.docsTop,left:c.left+a.docsLeft,right:c.left+a.docsLeft+e.width}};function op(e,t,n){let r=lp(e,t);return!r||!up(n.x,n.y,r.rect)?null:r}function sp(e,t,n){return op(e,t,n)}function cp(e){return e===t.PresetListType.CHECK_LIST||e===t.PresetListType.CHECK_LIST_CHECKED}function lp(e,t){return t!=null&&t.bullet?{paragraph:t,rect:{bottom:e.firstLine.bottom,left:e.rect.left,right:Math.min(e.rect.right,e.rect.left+36),top:e.firstLine.top},segmentId:e.segmentId,segmentPageIndex:e.pageIndex}:null}function up(e,t,n){let{left:r,right:i,top:a,bottom:o}=n;return e>=r&&e<=i&&t>=a&&t<=o}function dp(e){return Math.max(0,e.right-e.left)*Math.max(0,e.bottom-e.top)}function fp(e,t){return e.left<=t.left&&e.right>=t.right&&e.top<=t.top&&e.bottom>=t.bottom}function pp(e){return Math.max(0,e.paragraphEnd-e.paragraphStart)}function mp(e){return e.sort((e,t)=>dp(e.rect)-dp(t.rect)||pp(e)-pp(t))[0]}function hp(e){return e.filter(t=>!e.some(e=>e!==t&&dp(e.rect)<dp(t.rect)&&fp(t.rect,e.rect)))}function gp(e){return{bottom:e.bottom,left:e.left-72,right:e.right,top:e.top-42}}function _p(e,t,n){let r=vp(n),i=r?e-(n.leadingInsetLeft??0):e;return{scrollLeft:r?n.scrollLeft:0,visibleLeft:i,visibleRight:i+(r?n.viewportWidth:t)}}function vp(e){return e!=null&&(e.leadingInsetLeft??0)+e.contentWidth+(e.trailingInsetRight??0)>e.viewportWidth}let yp=class extends t.Disposable{get hoverParagraph(){return this._hoverParagraph$.value}get hoverParagraphLeft(){return this._hoverParagraphLeft$.value}get _skeleton(){return this._docSkeletonManagerService.getSkeleton()}get _documents(){return this._context.mainComponent}constructor(e,t){super(),this._context=e,this._docSkeletonManagerService=t,O(this,`_hoverCustomRanges$`,new a.BehaviorSubject([])),O(this,`hoverCustomRanges$`,this._hoverCustomRanges$.pipe((0,a.distinctUntilChanged)((e,t)=>e.length===t.length&&e.every((e,n)=>t[n].range.rangeId===e.range.rangeId&&t[n].segmentId===e.segmentId&&t[n].segmentPageIndex===e.segmentPageIndex&&t[n].range.startIndex===e.range.startIndex)))),O(this,`_clickCustomRanges$`,new a.Subject),O(this,`clickCustomRanges$`,this._clickCustomRanges$.asObservable()),O(this,`_hoverBullet$`,new a.Subject),O(this,`hoverBullet$`,this._hoverBullet$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.paragraph.startIndex)===(t==null?void 0:t.paragraph.startIndex)&&(e==null?void 0:e.segmentId)===(t==null?void 0:t.segmentId)&&(e==null?void 0:e.segmentPageIndex)===(t==null?void 0:t.segmentPageIndex)))),O(this,`_clickBullet$`,new a.Subject),O(this,`clickBullets$`,this._clickBullet$.asObservable()),O(this,`_contextMenuBullet$`,new a.Subject),O(this,`contextMenuBullets$`,this._contextMenuBullet$.asObservable()),O(this,`_hoverParagraph$`,new a.BehaviorSubject(null)),O(this,`hoverParagraph$`,this._hoverParagraph$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.startIndex)===(t==null?void 0:t.startIndex)&&(e==null?void 0:e.segmentId)===(t==null?void 0:t.segmentId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverParagraphRealTime$`,this._hoverParagraph$.asObservable()),O(this,`_hoverParagraphLeft$`,new a.BehaviorSubject(null)),O(this,`hoverParagraphLeft$`,this._hoverParagraphLeft$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.startIndex)===(t==null?void 0:t.startIndex)&&(e==null?void 0:e.segmentId)===(t==null?void 0:t.segmentId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverParagraphLeftRealTime$`,this._hoverParagraphLeft$.asObservable()),O(this,`_hoverTableCell$`,new a.Subject),O(this,`hoverTableCell$`,this._hoverTableCell$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.rowIndex)===(t==null?void 0:t.rowIndex)&&(e==null?void 0:e.colIndex)===(t==null?void 0:t.colIndex)&&(e==null?void 0:e.tableId)===(t==null?void 0:t.tableId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverTableCellRealTime$`,this._hoverTableCell$.asObservable()),O(this,`_hoverTable$`,new a.Subject),O(this,`hoverTable$`,this._hoverTable$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.tableId)===(t==null?void 0:t.tableId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverTableRealTime$`,this._hoverTable$.asObservable()),O(this,`_customRangeDirty`,!0),O(this,`_bulletDirty`,!0),O(this,`_paragraphDirty`,!0),O(this,`_customRangeBounds`,[]),O(this,`_bulletBounds`,[]),O(this,`_paragraphBounds`,new Map),O(this,`_paragraphLeftBounds`,[]),O(this,`_tableParagraphBounds`,new Map),O(this,`_segmentParagraphBounds`,new Map),O(this,`_tableViewportSignature`,``),O(this,`_tableCellBounds`,new Map),O(this,`_tableBounds`,new Map),this._initResetDirty(),this._initEvents(),this._initPointer()}dispose(){this._hoverCustomRanges$.complete(),this._clickCustomRanges$.complete(),super.dispose()}_initPointer(){let e=r.CURSOR_TYPE.TEXT;this.disposeWithMe(this.hoverCustomRanges$.subscribe(t=>{t.length?(e=this._context.scene.getCursor(),this._context.scene.setCursor(r.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((0,t.fromEventSubject)(this._context.engine.onTransformChange$).pipe((0,a.filter)(e=>e.type===r.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize)).subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0})),this.disposeWithMe((0,t.fromEventSubject)(this._context.scene.onTransformChange$).pipe((0,a.filter)(e=>e.type===r.TRANSFORM_CHANGE_OBSERVABLE_TYPE.scale)).subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0}))}_initEvents(){this.disposeWithMe((0,t.fromEventSubject)(this._context.scene.onPointerMove$).pipe((0,a.throttleTime)(30,void 0,{leading:!0,trailing:!0})).subscribe(e=>{if(e.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}let{x:t,y:n}=Qf(e.offsetX,e.offsetY,this._context.scene);this._hoverCustomRanges$.next(this._calcActiveRanges({x:t,y:n})),this._hoverParagraph$.next(this._calcActiveParagraph({x:t,y:n})),this._hoverParagraphLeft$.next(this._calcActiveParagraphLeft({x:t,y:n})),this._hoverBullet$.next(this._calcActiveBullet({x:t,y:n}))})),this.disposeWithMe(this._context.scene.onPointerEnter$.subscribeEvent(()=>{this._hoverBullet$.next(null),this._hoverCustomRanges$.next([])}));let e=(0,t.fromEventSubject)(this._context.mainComponent.onPointerDown$),n=(0,t.fromEventSubject)(this._context.scene.onPointerUp$);this.disposeWithMe(e.pipe((0,a.switchMap)(e=>n.pipe((0,a.take)(1),(0,a.map)(t=>({down:e,up:t})))),(0,a.filter)(({down:e,up:t})=>e.target===t.target&&(e.button===2||t.timeStamp-e.timeStamp<300))).subscribe(({down:e})=>{let t=Qf(e.offsetX,e.offsetY,this._context.scene);if(e.button===2){let n=this._calcActiveBullet(t)??this._calcActiveListParagraph(t);n&&this._contextMenuBullet$.next({...n,x:e.offsetX,y:e.offsetY});return}let n=this._calcActiveRanges(t);n.length&&this._clickCustomRanges$.next(n.pop());let r=this._calcActiveBullet(t);r&&this._clickBullet$.next(r)}))}isPointerOnBullet(e,t){return!!this._calcActiveBullet(Qf(e,t,this._context.scene))}isPointerOnNonChecklistBullet(e,t){var n;let r=this._calcActiveBullet(Qf(e,t,this._context.scene));return!!(r&&!cp((n=r.paragraph.bullet)==null?void 0:n.listType))}getBulletBounds(){return this._buildBulletBounds(),[...this._bulletBounds]}getListContextMenuBulletByOffset(e,t){let n=Qf(e,t,this._context.scene);return this._calcActiveBullet(n)??this._calcActiveListParagraph(n)}_buildCustomRangeBoundsBySegment(e,t=-1){var n;let r=((n=this._context.unit.getSelfOrHeaderFooterModel(e))==null||(n=n.getBody())==null?void 0:n.customRanges)??[],i=[];return r.forEach(n=>{let r={startOffset:n.startIndex,endOffset:n.endIndex+1,collapsed:!1,segmentId:e},a=tp(r,this._documents,this._skeleton,t);if(!a)return null;i.push({customRange:n,rects:a,segmentId:e,segmentPageIndex:t})}),i}_buildCustomRangeBounds(){var e;if(!this._customRangeDirty)return;this._customRangeDirty=!1;let t=[];t.push(...this._buildCustomRangeBoundsBySegment()),(e=this._skeleton.getSkeletonData())==null||e.pages.forEach((e,n)=>{e.headerId&&t.push(...this._buildCustomRangeBoundsBySegment(e.headerId,n)),e.footerId&&t.push(...this._buildCustomRangeBoundsBySegment(e.footerId,n))}),this._customRangeBounds=t}_calcActiveRanges(e){this._buildCustomRangeBounds();let{x:t,y:n}=e;return this._customRangeBounds.filter(e=>e.rects.some(e=>up(t,n,e))).map(e=>({segmentId:e.segmentId,range:e.customRange,segmentPageIndex:e.segmentPageIndex,rects:e.rects}))}_buildBulletBoundsBySegment(e,t=-1){var n;let r=(n=this._context.unit.getSelfOrHeaderFooterModel(e))==null?void 0:n.getBody(),i=((r==null?void 0:r.paragraphs)??[]).filter(e=>e.bullet),a=[],o=this._skeleton.getSkeletonData();if(!o)return a;let s=n=>{for(let o of n){let n=[...o.sections];if(o.skeTables){let e=Array.from(o.skeTables.values());n.push(...e.map(e=>e.rows.map(e=>e.cells.map(e=>e.sections))).flat(4))}for(let o of n)for(let n of o.columns)for(let o of n.lines)if(o.paragraphStart){let n=i.find(e=>e.startIndex===o.paragraphIndex);if(n){var r;let i=o,s=i==null||(r=i.divides)==null||(r=r[0])==null||(r=r.glyphGroup)==null?void 0:r[0];if(!s)continue;let c=ap(s,this._documents,this._skeleton,t);if(!c)continue;a.push({rect:c,segmentId:e,segmentPageIndex:t,paragraph:n})}}}return a};if(e){var c,l;let t=((c=o.skeFooters.get(e))==null?void 0:c.values())??((l=o.skeHeaders.get(e))==null?void 0:l.values());return t?s(Array.from(t)):a}return s(o.pages)}_buildBulletBounds(){var e;this._bulletDirty&&(this._bulletDirty=!1,this._bulletBounds=[],this._bulletBounds.push(...this._buildBulletBoundsBySegment()),(e=this._skeleton.getSkeletonData())==null||e.pages.forEach((e,t)=>{e.headerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(e.headerId,t)),e.footerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(e.footerId,t))}))}_calcActiveBullet(e){this._buildBulletBounds();let{x:t,y:n}=e,r=this._bulletBounds.find(e=>up(t,n,e.rect));if(r)return r;let i=this._calcActiveParagraph(e);return i?op(i,this._getParagraphByStartIndex(i.startIndex,i.segmentId),e):null}_calcActiveListParagraph(e){let t=this._calcActiveParagraph(e);return t?sp(t,this._getParagraphByStartIndex(t.startIndex,t.segmentId),e):null}_getParagraphByStartIndex(e,t){var n;return(n=this._context.unit.getSelfOrHeaderFooterModel(t))==null||(n=n.getBody())==null||(n=n.paragraphs)==null?void 0:n.find(t=>t.startIndex===e)}_buildParagraphBoundsBySegment(e){let t=this._skeleton.getSkeletonData(),n=this._documents.getOffsetConfig();if(!t)return null;let i=t=>{let i=new Map,a=(e,t,n,r)=>{t.forEach(t=>{if(!e.has(t.startIndex))e.set(t.startIndex,{rect:t.rect,paragraphStart:t.paragraphStart,paragraphEnd:t.paragraphEnd,startIndex:t.startIndex,rects:[t.rect],pageIndex:n,segmentId:r,firstLine:t.fisrtLine});else{let n=e.get(t.startIndex);n&&(n.rect.bottom=t.rect.bottom,n.rects.push(t.rect))}})},o=new Map;(0,r.documentSkeletonLineIterator)(t,{docsLeft:n.docsLeft,pageMarginTop:n.pageMarginTop,unitId:this._context.unitId},e=>{if(e.source===`table-cell`)return;let t=o.get(e.pageIndex)??[];t.push(e),o.set(e.pageIndex,t)}),o.forEach((t,r)=>{a(i,rp(t,n.docsLeft,n.docsTop),r,e)});for(let i of(0,r.documentSkeletonTableIterator)(t,{docsLeft:n.docsLeft,docsTop:n.docsTop,pageMarginTop:n.pageMarginTop,unitId:this._context.unitId})){let t=i.tableId,n=(0,r.getTableIdAndSliceIndex)(t).tableId,a=_p(i.tableRect.left,i.table.width,(0,r.getDocsTableRenderViewport)(this._context.unitId,n));this._tableBounds.set(t,{rect:{...i.tableRect,right:a.visibleRight},pageIndex:i.pageIndex,tableId:t});for(let n of i.cells){let r=n.cell,a=(r.pageWidth??0)-(r.marginLeft??0)-(r.marginRight??0),o=np(r.sections,n.pageTop,n.pageLeft,a).map(e=>Sp(e,n.clipLeft,n.clipRight)).filter(e=>e!=null),s=this._tableParagraphBounds.get(t);s||(s=[],this._tableParagraphBounds.set(t,s)),s.push(...o.map(r=>({rect:r.rect,paragraphStart:r.paragraphStart,paragraphEnd:r.paragraphEnd,startIndex:r.startIndex,pageIndex:i.pageIndex,segmentId:e,rowIndex:n.rowIndex,colIndex:n.columnIndex,firstLine:r.fisrtLine,tableId:t})));let c=this._tableCellBounds.get(t);c||(c=[],this._tableCellBounds.set(t,c)),c.push({rect:n.cellRect,pageIndex:i.pageIndex,rowIndex:n.rowIndex,colIndex:n.columnIndex,tableId:t})}}return i};if(e){var a,o;let n=((a=t.skeFooters.get(e))==null?void 0:a.values())??((o=t.skeHeaders.get(e))==null?void 0:o.values());return n?i(Array.from(n)):null}return i(t.pages)}_buildParagraphBounds(){var e;let t=this._getTableViewportSignature();if(!this._paragraphDirty&&this._tableViewportSignature===t)return;this._paragraphDirty=!1,this._tableViewportSignature=t,this._tableParagraphBounds=new Map,this._tableCellBounds=new Map,this._tableBounds=new Map,this._paragraphBounds=this._buildParagraphBoundsBySegment()??new Map,this._paragraphLeftBounds=Array.from(this._paragraphBounds.values()).map(e=>({...e,rect:{left:e.rect.left-60,right:e.rect.left,top:e.rect.top,bottom:e.rect.bottom}}));let n=e=>{this._segmentParagraphBounds.set(e,this._buildParagraphBoundsBySegment(e)??new Map)};(e=this._skeleton.getSkeletonData())==null||e.pages.forEach(e=>{e.headerId&&n(e.headerId),e.footerId&&n(e.footerId)})}_calcActiveParagraph(e){this._buildParagraphBounds();let{x:t,y:n}=e,r=Array.from(this._tableBounds.values()).find(e=>up(t,n,gp(e.rect)));if(this._hoverTable$.next(r),r){var i,a;let e=(i=this._tableCellBounds.get(r.tableId))==null?void 0:i.find(e=>up(t,n,e.rect));if(this._hoverTableCell$.next(e),!e)return null;let o=(a=this._tableParagraphBounds.get(e.tableId))==null?void 0:a.filter(t=>t.colIndex===e.colIndex&&t.rowIndex===e.rowIndex),s=o==null?void 0:o.find(e=>up(t,n,e.rect));return s&&{...s,rects:[s.rect]}}return mp([...this._paragraphBounds.values()].filter(e=>e.rects.some(e=>up(t,n,e))))}_calcActiveParagraphLeft(e){this._buildParagraphBounds();let{x:t,y:n}=e;return mp(this._paragraphLeftBounds.filter(e=>up(t,n,e.rect)))}get paragraphBounds(){return this._buildParagraphBounds(),this._paragraphBounds}get tableBounds(){return this._buildParagraphBounds(),this._tableBounds}findTableCellBound(e,t,n,r){var i;return this._buildParagraphBounds(),(i=this._tableCellBounds.get(e))==null?void 0:i.find(e=>e.rowIndex===t&&e.colIndex===n&&(r==null||e.pageIndex===r))}findParagraphBoundByIndex(e){this._buildParagraphBounds();let t=Array.from(this._tableParagraphBounds.values()).flat().find(t=>t.startIndex===e);if(t)return t;let n=this._paragraphBounds.get(e);if(n)return n}findParagraphBoundsInRange(e,t){return this._buildParagraphBounds(),bp([...this._paragraphBounds.values()],Array.from(this._tableParagraphBounds.values()).flat().map(e=>({rect:e.rect,paragraphStart:e.paragraphStart,paragraphEnd:e.paragraphEnd,startIndex:e.startIndex,rects:[e.rect],pageIndex:e.pageIndex,segmentId:e.segmentId,firstLine:e.firstLine})),e,t)}_getTableViewportSignature(){var e;let t=((e=this._skeleton.getSkeletonData())==null?void 0:e.pages)??[],n=[];for(let e of(0,r.documentSkeletonTableIterator)(t,{pageMarginTop:this._documents.getOffsetConfig().pageMarginTop,resolveViewport:!1,unitId:this._context.unitId})){let t=(0,r.getTableIdAndSliceIndex)(e.tableId).tableId,i=(0,r.getDocsTableRenderViewport)(this._context.unitId,t);if(!i){n.push(`${t}:none`);continue}n.push(`${t}:${i.contentWidth}:${i.viewportWidth}:${i.scrollLeft}`)}return n.join(`|`)}};yp=A([k(1,(0,t.Inject)(n.DocSkeletonManagerService))],yp);function bp(e,t,n,r){let i=t.filter(e=>xp(e,n,r));return i.length?i:hp(e.filter(e=>xp(e,n,r)))}function xp(e,t,n){return Math.max(e.paragraphStart,t)<=Math.min(e.paragraphEnd,n)}function Sp(e,t,n){let r=Cp(e.rect,t,n);return r?{...e,rect:r,fisrtLine:Cp(e.fisrtLine,t,n)??r}:null}function Cp(e,t,n){let r=Math.max(e.left,t),i=Math.min(e.right,n);return i<=r?null:{...e,left:r,right:i}}let wp=(0,c.forwardRef)((e,t)=>{let{menus:n,onClick:r,className:i,style:a,mode:o,maxHeight:u,activeId:d,open:f,onOpenChange:p,maxWidth:m,wrapperClass:h,wrapperStyle:g,iconClass:_,iconStyle:v}=e,y=o===`side-bar`,b=(0,c.useRef)(null),x=(0,c.useRef)(n);x.current=n;let S=(0,c.useMemo)(()=>({scrollTo:e=>{var t;if(!x.current||x.current.findIndex(t=>t.id===e)===-1||!b.current)return;let n=document.getElementById(`univer-side-menu-${e}`);if(!n)return;let r=n.offsetTop,i=b.current.clientHeight,a=b.current.scrollHeight-i,o=Math.max(0,Math.min(r-i/2+n.clientHeight/2,a));(t=b.current)==null||t.scrollTo({behavior:`smooth`,top:o})}}),[]);return(0,c.useImperativeHandle)(t,()=>S),(0,c.useEffect)(()=>{d&&S.scrollTo(d)},[d,S]),(0,l.jsxs)(`div`,{className:(0,s.clsx)(`univer-relative`,h),style:g,children:[(0,l.jsx)(`div`,{onClick:()=>p==null?void 0:p(!f),className:(0,s.clsx)(`univer-absolute univer-left-5 univer-top-4 univer-z-[100] univer-flex univer-size-8 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded-full univer-bg-gray-0 univer-text-gray-800 univer-shadow-sm dark:!univer-bg-gray-600 dark:!univer-text-gray-200`,_),style:v,children:f?(0,l.jsx)(Dd,{}):(0,l.jsx)(Uu,{})}),(0,l.jsx)(`div`,{className:(0,s.clsx)(i,`univer-absolute univer-left-0 univer-top-0 univer-box-border univer-flex univer-min-w-[180px] univer-flex-col univer-px-4 univer-pb-4 univer-pt-14 univer-transition-all univer-duration-300`,{"univer-rounded-r-2xl univer-bg-gray-0 univer-shadow univer-backdrop-blur-[10px] dark:!univer-bg-gray-900":y}),style:{...a,transform:f?`translateX(0)`:`translateX(-100%)`,maxHeight:u,opacity:+!!f,maxWidth:m??(o===`side-bar`?320:180),paddingRight:o===`float`?void 0:0},children:(0,l.jsx)(`div`,{ref:b,className:(0,s.clsx)(`univer-flex-1 univer-overflow-y-auto univer-overflow-x-hidden`,s.scrollbarClassName),children:n==null?void 0:n.map(e=>(0,l.jsx)(`div`,{id:`univer-side-menu-${e.id}`,className:(0,s.clsx)(`univer-mb-2 univer-h-[24px] univer-cursor-pointer univer-truncate univer-pr-1 univer-font-[500] univer-leading-[24px]`,{"univer-text-base univer-font-semibold":e.isTitle,"univer-text-sm univer-font-semibold":e.level===1,"univer-text-sm":e.level>1,"univer-text-gray-500 dark:!univer-text-gray-400":e.id!==d,"univer-text-gray-800 dark:!univer-text-gray-200":e.id===d}),style:{paddingLeft:(e.level-1)*12},onClick:()=>{r==null||r(e)},children:e.text},e.id))})})]})}),Tp=e=>{switch(e){case t.NamedStyleType.HEADING_1:return 1;case t.NamedStyleType.HEADING_2:return 2;case t.NamedStyleType.HEADING_3:return 3;case t.NamedStyleType.HEADING_4:return 4;case t.NamedStyleType.HEADING_5:return 5;case t.NamedStyleType.TITLE:return 1;default:return 1}};function Ep(e,t,n,r){if(!e)return;let i=Array.from(e.values()),a=i.findIndex(e=>e.paragraphStart!==e.paragraphEnd&&e.rect.top<r&&e.rect.bottom>n);if(a===-1)return;let o=i==null?void 0:i.findLastIndex(e=>e.paragraphStart!==e.paragraphEnd&&e.rect.top<r&&e.rect.bottom>n);for(let e=a;e<=o;e++){var s;let n=i[e],r=t.get(n.startIndex);if(r!=null&&(s=r.paragraphStyle)!=null&&s.headingId)return r.paragraphStyle.headingId}for(let e=a;e>=0;e--){var c;let n=i[e],r=t.get(n.startIndex);if(r!=null&&(c=r.paragraphStyle)!=null&&c.headingId)return r.paragraphStyle.headingId}}let Dp=`__title`;function Op(){let e=(0,i.useConfigValue)(io);return e!=null&&e.toc?(0,l.jsx)(kp,{}):null}function kp(){var e,n;let o=(0,i.useDependency)(t.IUniverInstanceService),s=(0,i.useObservable)((0,c.useMemo)(()=>o.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC),[])),u=(0,i.useDependency)(r.IRenderManagerService),d=(0,i.useObservable)(s?()=>s.change$.pipe((0,a.debounceTime)(100),(0,a.map)(()=>s.getSnapshot())):null,s==null?void 0:s.getSnapshot(),!1,[s]),f=(d==null||(e=d.body)==null?void 0:e.dataStream)??``,[p,m]=(0,c.useState)(void 0),h=(s==null?void 0:s.getUnitId())??``,g=u.getRenderUnitById(h),_=d==null?void 0:d.title,v=g==null?void 0:g.with(yp),y=v==null?void 0:v.paragraphBounds,b=()=>{var e;return{left:(g==null||(e=g.mainComponent)==null?void 0:e.left)??0,canvasHeight:(g==null?void 0:g.engine.height)??0,scaleY:(g==null?void 0:g.scene.scaleY)??1}},{left:x,canvasHeight:S,scaleY:C}=(0,i.useObservable)(g!=null&&g.engine.onTransformChange$?()=>(0,t.fromEventSubject)(g.engine.onTransformChange$).pipe((0,a.throttleTime)(33),(0,a.map)(b),(0,a.startWith)(b())):null,b(),!1,[g]),w=(d==null||(n=d.body)==null?void 0:n.paragraphs)??[],T=(0,c.useMemo)(()=>{let e=new Map;return w.forEach(t=>{e.set(t.startIndex,t)}),e},[w]),E=x<180?`float`:`side-bar`,D=1/0,O=w==null?void 0:w.filter(e=>{var n;return((n=e.paragraphStyle)==null?void 0:n.namedStyleType)!==void 0&&e.paragraphStyle.namedStyleType!==t.NamedStyleType.SUBTITLE&&e.paragraphStyle.namedStyleType!==t.NamedStyleType.NORMAL_TEXT}).map(e=>{var n;let r=Tp(e.paragraphStyle.namedStyleType);D=Math.min(D,r);let i=y==null?void 0:y.get(e.startIndex);if(!i)return null;let{paragraphStart:a,paragraphEnd:o}=i;return{id:e.paragraphStyle.headingId,text:(0,t.getPlainText)(f.slice(a,o)),level:r,isTitle:((n=e.paragraphStyle)==null?void 0:n.namedStyleType)===t.NamedStyleType.TITLE}}).filter(e=>e==null?void 0:e.text),k=(0,i.useEvent)(e=>{let t=e.viewportScrollY,n=t+S/C,r=Ep(y,T,t,n);r&&m(r)}),A=O!=null&&O.find(e=>e.isTitle)?O:[..._?[{id:Dp,text:_,level:1,isTitle:!0}]:[],...O??[]].filter(Boolean),[j,M]=(0,c.useState)(!0);(0,c.useEffect)(()=>{let e=g==null?void 0:g.scene.getViewport(`viewMain`);if(!e)return;let n=(0,t.fromEventSubject)(e.onScrollAfter$).pipe((0,a.throttleTime)(33)).subscribe(k);return()=>{n.unsubscribe()}},[g]);let N=(0,i.useEvent)(e=>{let t=g==null?void 0:g.scene.getViewport(`viewMain`);if(!t)return;if(e.id===Dp){t.scrollToViewportPos({viewportScrollY:0});return}let n=w.find(t=>{var n;return((n=t.paragraphStyle)==null?void 0:n.headingId)===e.id});if(!n)return;let r=y==null?void 0:y.get(n.startIndex);r&&(t.scrollToViewportPos({viewportScrollY:r.rect.top}),m(e.id))});return!s||(0,t.isInternalEditorID)(h)||!(A!=null&&A.length)?null:(0,l.jsx)(`div`,{className:`univer-absolute univer-bottom-0 univer-left-0 univer-top-0 univer-z-[100] univer-w-[0px]`,children:(0,l.jsx)(wp,{menus:A,open:j,onOpenChange:M,mode:E,maxWidth:E===`float`?void 0:Math.floor(x)-10,wrapperClass:`univer-mt-12`,activeId:p,onClick:N,maxHeight:S-48})})}let Ap=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c,l){super(),this._injector=e,this._commandService=t,this._layoutService=n,this._menuManagerService=r,this._uiPartsService=i,this._univerInstanceService=a,this._shortcutService=o,this._configService=s,this._embedRuntimeFocusCoordinator=l,this._init()}_initUiParts(){this.disposeWithMe(this._uiPartsService.registerComponent(i.BuiltInUIPart.FOOTER,()=>(0,i.connectInjector)(Yf,this._injector))),this.disposeWithMe(this._uiPartsService.registerComponent(i.BuiltInUIPart.CONTENT,()=>(0,i.connectInjector)(Op,this._injector)))}_initMenus(){this._menuManagerService.appendRootMenu(du),this._menuManagerService.mergeMenu(fu)}_initShortCut(){[gu,_u,vu,yu,bu,xu,wu,Tu,Cu,Su,Eu,Du,mu].forEach(e=>{this.disposeWithMe(this._shortcutService.registerShortcut(e))})}_init(){this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[Go,Ko,Uo].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(t.UniverInstanceType.UNIVER_DOC,e=>{this._shouldPreserveEmbedFocus(e)||this._injector.get(r.IRenderManagerService).getRenderUnitById(e).with(Y).focus()}))}_shouldPreserveEmbedFocus(e){var t;return!!((t=this._embedRuntimeFocusCoordinator)!=null&&t.shouldSuppressHostInteraction(e))}};Ap=A([k(0,(0,t.Inject)(t.Injector)),k(1,t.ICommandService),k(2,i.ILayoutService),k(3,i.IMenuManagerService),k(4,i.IUIPartsService),k(5,t.IUniverInstanceService),k(6,i.IShortcutService),k(7,t.IConfigService),k(8,(0,t.Optional)(Ai)),k(9,(0,t.Optional)(ji))],Ap);function jp(){if(typeof window>`u`)return{bleedLeft:0,bleedRight:0,bleedWidth:1,contentWidth:1,virtualWidth:1};let e=Math.max(1,window.innerWidth-20);return{bleedLeft:0,bleedRight:0,bleedWidth:e,contentWidth:1,virtualWidth:e}}function Mp(e,t,n){let r=e.getBoundingClientRect(),i=n==null?void 0:n.viewScale,a=typeof i==`number`&&Number.isFinite(i)&&i>0?i:1,o=Math.max(1,r.width/a),s=Math.max(1,t),c=n==null?void 0:n.bleedLeft,l=n==null?void 0:n.bleedWidth,u=Number.isFinite(l)&&(l??0)>0;if(s<=o&&(n!=null&&n.authoritativeContentWidth||!u))return{bleedLeft:0,bleedRight:0,bleedWidth:o,contentWidth:s,virtualWidth:o};if(u){let e=Math.max(0,c??0),t=Math.max(1,l);return{bleedLeft:e,bleedRight:Math.max(0,t-e-o),bleedWidth:t,contentWidth:s,virtualWidth:Math.max(t,e+s)}}let d=Fp(e),f=d.left+10,p=Math.max(1,d.width-20),m=Math.max(0,(r.left-f)/a),h=Math.max(0,(f+p-r.right)/a),g=p/a;return{bleedLeft:m,bleedRight:h,bleedWidth:g,contentWidth:s,virtualWidth:Math.max(g,m+s)}}function Np(e,t){return Number.isFinite(e)&&(e??0)>0?e:Math.max(1,t)}function Pp(e,t){return Number.isFinite(e)&&(e??0)>0?e:Math.max(1,t)}function Fp(e){let t=Ip(e);if(t){let e=t.getBoundingClientRect();if(Number.isFinite(e.width)&&e.width>0)return{left:e.left,width:e.width}}return{left:0,width:typeof window>`u`?1:Math.max(1,window.innerWidth)}}function Ip(e){let t=e.parentElement;for(;t&&t!==document.body&&t!==document.documentElement;){if(Lp(t))return t;t=t.parentElement}return null}function Lp(e){let t=window.getComputedStyle(e);return Rp(t.overflow)||Rp(t.overflowX)||Rp(t.overflowY)}function Rp(e){return e===`hidden`||e===`auto`||e===`scroll`||e===`clip`}function zp(e,t){let r=new Set;return Object.values(e??{}).forEach(e=>{let i=Bp(e),a=i?(t==null?void 0:t(i))??(typeof i.childUnitId==`string`?i.childUnitId:void 0):void 0,o=typeof(i==null?void 0:i.childType)==`number`?i.childType:void 0;!a||!(0,n.isSheetLikeDocsCustomBlockChildType)(o)||r.add(a)}),r}function Bp(e){if(!e||typeof e!=`object`)return;let t=e.data;return t&&typeof t==`object`?t:void 0}function Vp(e){if(!e||typeof e!=`object`)return;let t=e;return typeof t.unitId==`string`?t.unitId:typeof t.unitID==`string`?t.unitID:void 0}function Hp(e){if(e.commandId&&Wp(e.commandId))return!1;let t=Vp(e.commandParams);return!!(t&&t!==e.hostUnitId&&e.childUnitIds.has(t))}let Up=new Set([`sheet.command.expand-selection`,`sheet.command.move-selection`,`sheet.operation.scroll-to-cell`,`sheet.operation.scroll-to-range`,`sheet.operation.set-activate-cell-edit`,`sheet.operation.set-cell-edit-visible`,`sheet.operation.set-cell-edit-visible-arrow`,`sheet.operation.set-cell-edit-visible-f2`,`sheet.operation.set-format-painter`,`sheet.operation.set-scroll`,`sheet.operation.set-selections`,`sheet.operation.set-zoom-ratio`]);function Wp(e){return Up.has(e)}function Gp(e){let t;return{dispose:()=>{t!=null&&(window.cancelAnimationFrame(t),t=void 0)},schedule:()=>{t??=window.requestAnimationFrame(()=>{t=void 0,e()})}}}function Kp(e,t,n={}){if(e.defaultPrevented||e.ctrlKey||e.metaKey)return!1;let r=e.deltaX||(e.shiftKey?e.deltaY:0),i=e.shiftKey?0:e.deltaY,a=t.scrollLeft,o=t.scrollTop,s=Xp(t,n.maxScrollLeft);return r&&qp(t,r,s)&&(t.scrollLeft=Yp(a+r,0,s)),i&&Jp(t,i)&&(t.scrollTop=Yp(o+i,0,t.scrollHeight-t.clientHeight)),t.scrollLeft!==a||t.scrollTop!==o}function qp(e,t,n){return e.scrollWidth>e.clientWidth&&(t<0?e.scrollLeft>0:e.scrollLeft<n)}function Jp(e,t){return e.scrollHeight>e.clientHeight&&(t<0?e.scrollTop>0:e.scrollTop+e.clientHeight<e.scrollHeight)}function Yp(e,t,n){return Math.max(t,Math.min(n,e))}function Xp(e,t){let n=Math.max(0,e.scrollWidth-e.clientWidth);return Number.isFinite(t)?Yp(t??n,0,n):n}function Zp(e){let r=(0,n.resolveDocsCustomBlockSize)(e.childType),i=e.fallbackWidth??r.width,a=e.fallbackHeight??r.height,o=(0,n.isSheetLikeDocsCustomBlockChildType)(e.childType),s=Number.isFinite(e.contentHeight)&&(e.contentHeight??0)>0?e.contentHeight:a,c=Number.isFinite(e.visibleCanvasHeight)&&(e.visibleCanvasHeight??0)>0?e.visibleCanvasHeight:void 0,l=o?s:a,u=o&&c!=null?Math.min(s,c):l,d=e.scale&&e.scale>0?e.scale:1;if(!o)return{height:l,width:i};let f=e.pageWidth,p=e.pageMarginLeft??0,m=e.pageMarginRight??0,h=Number.isFinite(f)?Math.max(0,f-p-m):i,g=Number.isFinite(e.contentWidth)&&(e.contentWidth??0)>0?e.contentWidth:i;if(e.documentFlavor!==t.DocumentFlavor.MODERN||!Number.isFinite(f)){let e=Math.min(g,h||g);return{contentHeight:s,contentWidth:g,height:l,layoutWidth:e,offsetLeft:0,pageContentWidth:h,viewScale:d,viewportHeight:u,width:e}}let _=10/d,v=e.docsLeft??0,y=v+_,b=Math.max(0,f-_*2),x=Number.isFinite(e.visibleCanvasLeft)&&Number.isFinite(e.visibleCanvasWidth)&&(e.visibleCanvasWidth??0)>0,S=x?e.visibleCanvasLeft+_:y,C=x?Math.max(0,e.visibleCanvasWidth-_*2):b,w=v+p,T=Math.max(0,w-S),E=Math.min(g,h||g);return{bleedLeft:T,bleedWidth:C,contentHeight:s,contentWidth:g,height:l,layoutWidth:E,offsetLeft:0,pageContentWidth:h,viewScale:d,viewportHeight:u,width:E}}var Qp=`@univerjs/docs-ui`,$p=`1.0.0-beta.1`;let em={id:`doc-paragraph-setting.command`,type:t.CommandType.COMMAND,handler:async(e,r)=>{let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),c=i.getDocRanges();if(!s||c.length===0||!r)return!1;let l=c[0].segmentId,u=s.getUnitId(),d=s.getSelfOrHeaderFooterModel(l),f=d==null?void 0:d.getBody(),p=(f==null?void 0:f.paragraphs)??[],m=(f==null?void 0:f.dataStream)??``,h=t.BuildTextUtils.range.getParagraphsInRanges(c,p,m)??[],g={id:n.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:c}};if(!r.paragraph||Object.keys(r.paragraph).length===0)return!1;let _=new t.MemoryCursor;_.reset();let v=new t.TextX,y=t.JSONX.getInstance();for(let e of h){let{startIndex:n}=e;v.push({t:t.TextXActionType.RETAIN,len:n-_.cursor}),v.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{...e,paragraphStyle:{...e.paragraphStyle,...r.paragraph},startIndex:0}]},coverType:t.UpdateDocsAttributeType.REPLACE}),_.moveCursorTo(n+1)}let b=(0,t.getRichTextEditPath)(s,l);return g.params.actions=y.editOp(v.serialize(),b),!!o.syncExecuteCommand(g.id,g.params)}},tm=`univer.doc.float-menu`,nm=[uc,br.id,cr.id,ur.id,fr.id,mr.id,gr.id,vr.id,wr.id,{id:Ar.id,iconColor:`var(--univer-primary-600)`}];function rm(e,t){let n=e.getMenuByPositionKey(dc),r=[...e.getFlatMenuByPositionKey(dc),...e.getFlatMenuByPositionKey(i.MenuManagerPosition.RIBBON)],a=[],o=t.map(e=>typeof e==`string`?e:e.id);for(let e of t){let t=typeof e==`string`?e:e.id,n=r.find(e=>e.key===t);n&&a.push(typeof e==`string`?n:{...n,iconColor:e.iconColor})}return{menus:a,extraMenus:n.filter(e=>e.item&&!o.includes(e.key))}}function im(e){let{avaliableMenus:t=nm}=e,n=(0,i.useDependency)(i.IMenuManagerService),r=(0,c.useRef)(null),[a,o]=(0,c.useState)([]),[u,d]=(0,c.useState)([]);return(0,c.useEffect)(()=>{function e(){let{menus:e,extraMenus:r}=rm(n,t);o(e),d(r)}e();let r=n.menuChanged$.subscribe(e);return()=>{r.unsubscribe()}},[t,n]),(0,c.useEffect)(()=>{let e=r.current;if(e)return(0,i.preventBrowserZoomInContainers)([e])},[]),(0,l.jsxs)(`div`,{ref:r,className:(0,s.clsx)(`univer-box-border univer-flex univer-rounded univer-bg-gray-0 univer-py-1.5 univer-shadow-sm dark:!univer-border-gray-700 dark:!univer-bg-gray-900`,s.borderClassName),children:[a.map(e=>e.item&&(0,l.jsx)(`div`,{className:`univer-flex univer-flex-nowrap univer-gap-2 univer-px-2`,children:(0,l.jsx)(i.ToolbarItem,{...e.item,iconColor:e.iconColor},e.key)},e.key)),u.length>0&&(0,l.jsx)(`div`,{className:`univer-my-1 univer-w-px univer-bg-gray-200 dark:univer-bg-gray-700`}),u.map(e=>e.item&&(0,l.jsx)(`div`,{className:`univer-flex univer-flex-nowrap univer-gap-2 univer-px-2`,children:(0,l.jsx)(i.ToolbarItem,{...e.item},e.key)},e.key))]})}function am(e,r){let i=e.body?(0,n.getTopLevelSectionBreaks)(e.body):[],a=(r==null?void 0:r.sectionId)==null?-1:i.findIndex(e=>e.sectionId===r.sectionId),o=a<0?void 0:i[a],s=o==null?{}:(0,t.resolveSectionHeaderFooterReferences)(e.documentStyle,i,a);return{sectionId:o==null?void 0:o.sectionId,sectionIndex:a,sections:i,section:o,config:{...e.documentStyle,...o,...s}}}function om(e,n,i,a){let{useFirstPageHeaderFooter:o,evenAndOddHeaders:s,defaultHeaderId:c,defaultFooterId:l,firstPageHeaderId:u,firstPageFooterId:d,evenPageHeaderId:f,evenPageFooterId:p}=e,m=a?a.pageNumber===a.pageNumberStart:i===0,h=a?a.pageNumber%2==0:i%2==1;return n===r.DocumentEditArea.HEADER?o===t.BooleanNumber.TRUE&&m?u:s===t.BooleanNumber.TRUE&&h?f:c:o===t.BooleanNumber.TRUE&&m?d:s===t.BooleanNumber.TRUE&&h?p:l}let sm=e=>{let t=(0,i.useDependency)(r.IRenderManagerService).getRenderUnitById(e.unitId).with(Y),n=(0,i.useObservable)(t.segmentContext$,{segmentId:t.getSegment(),segmentPage:t.getSegmentPage()});return(0,l.jsx)(cm,{...e},`${(n==null?void 0:n.segmentId)??``}:${(n==null?void 0:n.segmentPage)??-1}`)};function cm(e){var a,o;let u=(0,i.useDependency)(t.LocaleService),d=(0,i.useDependency)(t.IUniverInstanceService),f=(0,i.useDependency)(r.IRenderManagerService),p=(0,i.useDependency)(t.ICommandService),m=(0,i.useDependency)(i.ILayoutService),{unitId:h}=e,g=f.getRenderUnitById(h).with(Y),_=d.getUnit(h,t.UniverInstanceType.UNIVER_DOC),v=()=>{var e,t;let r=_==null?void 0:_.getSnapshot(),i=(e=f.getRenderUnitById(h))==null?void 0:e.with(n.DocSkeletonManagerService),a=i==null||(t=i.getSkeleton)==null||(t=t.call(i))==null||(t=t.getSkeletonData())==null?void 0:t.pages[g.getSegmentPage()];return r==null?void 0:{...am(r,a),page:a}},[y,b]=(0,c.useState)(()=>{var e;let n=(e=v())==null?void 0:e.config;return{marginHeader:(n==null?void 0:n.marginHeader)??0,marginFooter:(n==null?void 0:n.marginFooter)??0,useFirstPageHeaderFooter:(n==null?void 0:n.useFirstPageHeaderFooter)??t.BooleanNumber.FALSE,evenAndOddHeaders:(n==null?void 0:n.evenAndOddHeaders)??t.BooleanNumber.FALSE}}),x=v(),S=(0,t.getSectionHeaderFooterReferenceKey)(((a=f.getRenderUnitById(h))==null||(a=a.with(n.DocSkeletonManagerService))==null||(a=a.getViewModel())==null?void 0:a.getEditArea())===r.DocumentEditArea.FOOTER?`footer`:`header`,lm((x==null?void 0:x.config)??{},g.getSegmentPage(),x==null?void 0:x.page)),C=((x==null?void 0:x.sectionIndex)??-1)>0,[w,T]=(0,c.useState)(C&&!(x!=null&&(o=x.section)!=null&&o[S])),E=(e,i)=>{var a;b(n=>({...n,[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE}));let o=v(),s=o==null?void 0:o.config,c=(a=f.getRenderUnitById(h))==null?void 0:a.with(n.DocSkeletonManagerService),l=c==null?void 0:c.getViewModel();if(s==null||l==null)return;let u=l.getEditArea(),d=!1,_=g.getSegmentPage(),y=o!=null&&o.page?o.page.pageNumber===o.page.pageNumberStart:_===0,x=o!=null&&o.page?o.page.pageNumber%2==0:_%2==1,S=!1;if(i===`useFirstPageHeaderFooter`&&e===!0&&((u===r.DocumentEditArea.HEADER&&!s.firstPageHeaderId||u===r.DocumentEditArea.FOOTER&&!s.firstPageFooterId)&&(d=!0),d&&y&&(S=!0)),i===`evenAndOddHeaders`&&e===!0&&((u===r.DocumentEditArea.HEADER&&!s.evenPageHeaderId||u===r.DocumentEditArea.FOOTER&&!s.evenPageFooterId)&&(d=!0),d&&x&&(S=!0)),d){let n=(0,t.generateRandomId)(6);S&&g.setSegment(n),p.executeCommand(Wo,{unitId:h,segmentId:n,headerFooterProps:{[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE},sectionId:o==null?void 0:o.sectionId})}else{let n=g.getSegmentPage(),r=g.getSegment(),a=om({...s,[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE},u,n,o==null?void 0:o.page);a&&a!==r&&g.setSegment(a),p.executeCommand(Wo,{unitId:h,headerFooterProps:{[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE},sectionId:o==null?void 0:o.sectionId})}m.focus()},D=async(e,t)=>{var n;b(n=>({...n,[t]:e})),await p.executeCommand(Wo,{unitId:h,headerFooterProps:{[t]:e},sectionId:(n=v())==null?void 0:n.sectionId}),g.removeAllRanges(),g.blur()},O=()=>{p.executeCommand(qo.id,{unitId:h})},k=async e=>{var i;let a=v();if(!(a!=null&&a.sectionId)||a.sectionIndex<=0||!_)return;let o=((i=f.getRenderUnitById(h))==null||(i=i.with(n.DocSkeletonManagerService))==null||(i=i.getViewModel())==null?void 0:i.getEditArea())===r.DocumentEditArea.FOOTER?`footer`:`header`,s=lm(a.config,g.getSegmentPage(),a.page),c=(0,t.getSectionHeaderFooterReferenceKey)(o,s),l=(0,t.generateRandomId)(6),u=(0,t.resolveSectionHeaderFooterReference)(_.getDocumentStyle(),a.sections,a.sectionIndex-1,c).segmentId;await p.executeCommand(n.SetSectionHeaderFooterLinkCommand.id,{unitId:h,sectionId:a.sectionId,kind:o,variant:s,linkedToPrevious:e,...e?{}:{segmentId:l}})&&(T(e),g.setSegment(e?u??``:l),m.focus())};return(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-4`,children:[C&&(0,l.jsx)(`div`,{children:(0,l.jsx)(s.Checkbox,{checked:w,onChange:e=>{k(e)},children:u.t(`docs-ui.headerFooter.linkToPrevious`)})}),(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-2`,children:[(0,l.jsx)(`div`,{children:(0,l.jsx)(s.Checkbox,{checked:y.useFirstPageHeaderFooter===t.BooleanNumber.TRUE,onChange:e=>{E(e,`useFirstPageHeaderFooter`)},children:u.t(`docs-ui.headerFooter.firstPageCheckBox`)})}),(0,l.jsx)(`div`,{children:(0,l.jsx)(s.Checkbox,{checked:y.evenAndOddHeaders===t.BooleanNumber.TRUE,onChange:e=>{E(e,`evenAndOddHeaders`)},children:u.t(`docs-ui.headerFooter.oddEvenCheckBox`)})})]}),(0,l.jsxs)(`div`,{className:`univer-mb-1 univer-flex`,children:[(0,l.jsxs)(`div`,{children:[(0,l.jsx)(`span`,{children:u.t(`docs-ui.headerFooter.headerTopMargin`)}),(0,l.jsx)(s.InputNumber,{className:`univer-mt-1.5 univer-w-4/5`,min:0,max:200,precision:1,value:y.marginHeader,onChange:e=>{D(e,`marginHeader`)}})]}),(0,l.jsxs)(`div`,{children:[(0,l.jsx)(`span`,{children:u.t(`docs-ui.headerFooter.footerBottomMargin`)}),(0,l.jsx)(s.InputNumber,{className:`univer-mt-1.5 univer-w-4/5`,min:0,max:200,precision:1,value:y.marginFooter,onChange:e=>{D(e,`marginFooter`)}})]})]}),(0,l.jsx)(`div`,{className:`univer-flex univer-justify-end`,children:(0,l.jsx)(s.Button,{onClick:O,children:u.t(`docs-ui.headerFooter.closeHeaderFooter`)})})]})}function lm(e,n,r){let i=r?r.pageNumber===r.pageNumberStart:n===0,a=r?r.pageNumber%2==0:n%2==1;return e.useFirstPageHeaderFooter===t.BooleanNumber.TRUE&&i?`first`:e.evenAndOddHeaders===t.BooleanNumber.TRUE&&a?`even`:`default`}let um=()=>{var e;let o=(0,i.useDependency)(t.LocaleService),s=(0,i.useDependency)(r.IRenderManagerService),c=(0,i.useDependency)(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC).getUnitId(),u=((e=s.getRenderUnitById(c))==null?void 0:e.with(n.DocSkeletonManagerService)).getViewModel();return(0,l.jsx)(`div`,{className:`univer-text-sm`,children:(0,i.useObservable)(()=>u.editAreaChange$.pipe((0,a.filter)(e=>e!=null),(0,a.map)(e=>e!==r.DocumentEditArea.BODY)),u.getEditArea()!==r.DocumentEditArea.BODY,!1,[u])?(0,l.jsx)(sm,{unitId:c}):(0,l.jsx)(`div`,{className:`univer-text-gray-400`,children:o.t(`docs-ui.headerFooter.disableText`)})})};function dm({className:e,style:t,onClick:n}){return(0,l.jsxs)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,onClick:n,children:[(0,l.jsx)(`text`,{x:2,y:19,fontFamily:`Arial, sans-serif`,fontSize:19,fontWeight:500,children:`T`}),(0,l.jsx)(`text`,{x:15,y:19,fontFamily:`Arial, sans-serif`,fontSize:13,fontWeight:500,children:`t`})]})}function fm({className:e,style:t,onClick:n}){return(0,l.jsx)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,onClick:n,children:(0,l.jsx)(`text`,{x:5,y:19,fontFamily:`Arial, sans-serif`,fontSize:19,fontWeight:500,children:`S`})})}function pm({className:e,style:t,onClick:n,color:r}){return(0,l.jsxs)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,width:`1em`,height:`1em`,fill:`none`,"aria-hidden":`true`,onClick:n,children:[(0,l.jsx)(`rect`,{x:1,y:1,width:22,height:22,rx:2.5,fill:`none`,stroke:`currentColor`,strokeWidth:1,strokeOpacity:.12}),(0,l.jsx)(`text`,{x:12,y:17.25,direction:`ltr`,fontFamily:`Arial, sans-serif`,fontSize:15,fontWeight:400,fill:r,textAnchor:`middle`,children:`A`})]})}function mm({className:e,style:t,onClick:n,color:r}){return(0,l.jsx)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,width:`1em`,height:`1em`,fill:`none`,"aria-hidden":`true`,onClick:n,children:(0,l.jsx)(`rect`,{x:3,y:3,width:18,height:18,rx:3,fill:r,stroke:`currentColor`,strokeOpacity:.12})})}function hm({className:e,style:t,onClick:n,extend:r}){return(0,l.jsx)(pm,{className:e,style:t,onClick:n,color:(r==null?void 0:r.colorChannel1)??`currentColor`})}function gm({className:e,style:t,onClick:n}){return(0,l.jsx)(pm,{className:e,style:t,onClick:n,color:`#000000`})}function _m(e){return function(t){return(0,l.jsx)(pm,{...t,color:e})}}function vm(e){return function(n){let r=(0,i.useDependency)(t.ThemeService),o=(0,i.useObservable)(()=>r.currentTheme$.pipe((0,a.map)(()=>el(r,e))),el(r,e),!1,[e,r]);return(0,l.jsx)(mm,{...n,color:o})}}let ym=_m(`#FE4B4B`),bm=_m(`#FF8C51`),xm=_m(`#A4DC16`),Sm=_m(`#2DAEFF`),Cm=_m(`#3A60F7`),wm=_m(`#9E6DE3`),Tm=_m(`#F248A6`),Em=vm(0),Dm=vm(1),Om=vm(2),km=vm(3),Am=vm(4),jm=vm(5),Mm=vm(6),Nm=vm(7),Pm=vm(8),Fm=vm(9),Im=vm(10),Lm=vm(11),Rm=vm(12),zm=vm(13),Bm=vm(14),Vm=vm(15),Hm=`doc.paragraph.menu`,Um=`doc.table-block.menu`,Wm={min:1,max:5,step:.1},Gm={min:1,max:100};function Km(e,t){let n=10**t;return Math.round(e*n)/n}function qm(e,t,n){return Math.min(n,Math.max(t,e))}let Jm=[{label:`docs-ui.doc.paragraphSetting.multiSpace`,value:`${t.SpacingRule.AUTO}`},{label:`docs-ui.doc.paragraphSetting.atLeast`,value:`${t.SpacingRule.AT_LEAST}`},{label:`docs-ui.doc.paragraphSetting.exactly`,value:`${t.SpacingRule.EXACT}`}];function Ym(e){return e===t.SpacingRule.AUTO?Wm:Gm}function Xm(e,n){return n===t.SpacingRule.AUTO?e:Km(e,2)}function Zm(e,n){return n===t.SpacingRule.AUTO?e:Km(e,4)}function Qm(e){if(!e)return null;let t=Math.max(0,...(e.divides??[]).flatMap(e=>(e.glyphGroup??[]).map(e=>{var t,n;return(((t=e.bBox)==null?void 0:t.ba)??0)+(((n=e.bBox)==null?void 0:n.bd)??0)})))||e.contentHeight||0;return t?{glyphLineHeight:t,renderedLineHeight:(e.paddingTop??0)+(e.contentHeight??t)+(e.paddingBottom??0)||t}:null}function $m(e,n,r,i){return n===r?e:r===t.SpacingRule.AUTO?i!=null&&i.glyphLineHeight&&i.renderedLineHeight?Km(qm(i.renderedLineHeight/i.glyphLineHeight,Wm.min,Wm.max),2):t.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING:i!=null&&i.renderedLineHeight?Km(i.renderedLineHeight,4):Km(t.DEFAULT_STYLES.fs*e,4)}let eh=new Set([t.DocumentBlockRangeType.CALLOUT,t.DocumentBlockRangeType.CODE,t.DocumentBlockRangeType.QUOTE]);function th(e,n,r){return e.map(e=>{var i;let a=((i=n.blockRanges)==null?void 0:i.some(t=>eh.has(t.blockType)&&e.startIndex>t.startIndex&&e.startIndex<t.endIndex))??!1;return{...e,paragraphStyle:(0,t.resolveDocumentParagraphStyle)(r,e.paragraphStyle,{excludeDocumentOuterSpacing:a})}})}let nh=()=>{let e=(0,i.useDependency)(n.DocSelectionManagerService),t=(0,i.useDependency)(Jo),r=(0,c.useMemo)(()=>e.getDocRanges(),[]);return(0,c.useEffect)(()=>{r.length||t.closePanel()},[r]),r},rh=()=>{let e=(0,i.useDependency)(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),n=nh();if(!e||n.length===0)return[];let r=n[0].segmentId,a=e.getSelfOrHeaderFooterModel(r),o=a==null?void 0:a.getBody(),s=(o==null?void 0:o.paragraphs)??[],c=(o==null?void 0:o.dataStream)??``,l=t.BuildTextUtils.range.getParagraphsInRanges(n,s,c)??[];return o==null?l:th(l,o,e.getDocumentStyle())},ih=(e,n)=>{let r=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let r=e[0];return r?String(((t=r.paragraphStyle)==null?void 0:t.horizontalAlign)??n):n});return[a,e=>(o(e),r.executeCommand(em.id,{paragraph:{horizontalAlign:Number(e)}}))]},ah=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.indentStart,0):0});return[a,e=>(o(e),n.executeCommand(em.id,{paragraph:{indentStart:{v:e}}}))]},oh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.indentEnd,0):0});return[a,e=>(o(e),n.executeCommand(em.id,{paragraph:{indentEnd:{v:e}}}))]},sh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.indentFirstLine,0):0});return[a,e=>(o(e),n.executeCommand(em.id,{paragraph:{indentFirstLine:{v:e}}}))]},ch=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.hanging,0):0});return[a,e=>(o(e),n.executeCommand(em.id,{paragraph:{hanging:{v:e}}}))]},lh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var n;let i=e[0];return i?(0,r.getNumberUnitValue)((n=i.paragraphStyle)==null?void 0:n.spaceAbove,t.DEFAULT_DOCUMENT_PARAGRAPH_SPACE_ABOVE):0});return[a,e=>(o(e),n.executeCommand(em.id,{paragraph:{spaceAbove:{v:e}}}))]},uh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var n;let i=e[0];return i?(0,r.getNumberUnitValue)((n=i.paragraphStyle)==null?void 0:n.spaceBelow,t.DEFAULT_DOCUMENT_PARAGRAPH_SPACE_BELOW):0});return[a,e=>(o(e),n.executeCommand(em.id,{paragraph:{spaceBelow:{v:e}}}))]},dh=e=>{let s=(0,i.useDependency)(t.ICommandService),l=(0,i.useDependency)(r.IRenderManagerService),u=(0,i.useDependency)(t.IUniverInstanceService),d=(0,c.useMemo)(()=>{var e;let r=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(r)return(e=l.getRenderUnitById(r==null?void 0:r.getUnitId()))==null?void 0:e.with(n.DocSkeletonManagerService).getSkeleton()},[]),f=(0,c.useMemo)(()=>new a.BehaviorSubject({}),[]),[p,m]=(0,c.useState)(()=>{var n;let r=e[0];return r?((n=r.paragraphStyle)==null?void 0:n.spacingRule)??t.SpacingRule.AUTO:t.SpacingRule.AUTO}),[h,g]=(0,c.useState)(()=>{var n,r;let i=e[0];if(!i)return t.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING;let a=((n=i.paragraphStyle)==null?void 0:n.spacingRule)??t.SpacingRule.AUTO;return Xm(((r=i.paragraphStyle)==null?void 0:r.lineSpacing)??t.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING,a)});return(0,c.useEffect)(()=>{let e=f.pipe((0,o.filter)(e=>!!Object.keys(e).length),(0,o.bufferTime)(16),(0,o.filter)(e=>!!e.length),(0,o.map)(e=>e.reduce((e,t)=>(Object.keys(t).forEach(n=>{e[n]=t[n]}),e),{}))).subscribe(e=>s.executeCommand(em.id,{paragraph:{...e}}));return()=>e.unsubscribe()},[]),{lineSpacing:[h,async e=>{g(e),f.next({lineSpacing:Zm(e,p),spacingRule:p})}],spacingRule:[p,async t=>{if(t!==p){let n=d==null?void 0:d.findNodeByCharIndex(e[0].startIndex),r=n==null?void 0:n.parent,i=Qm(r==null?void 0:r.parent),a=$m(Zm(h,p),p,t,i),o=Xm(a,t);g(o),m(t),f.next({spacingRule:t,lineSpacing:a})}}]}},fh=[{label:`docs-ui.toolbar.alignLeft`,value:String(t.HorizontalAlign.LEFT),icon:(0,l.jsx)(yd,{})},{label:`docs-ui.toolbar.alignCenter`,value:String(t.HorizontalAlign.CENTER),icon:(0,l.jsx)(pd,{})},{label:`docs-ui.toolbar.alignRight`,value:String(t.HorizontalAlign.RIGHT),icon:(0,l.jsx)(Fd,{})},{label:`docs-ui.toolbar.alignJustify`,value:String(t.HorizontalAlign.JUSTIFIED),icon:(0,l.jsx)(zu,{})}],ph=e=>{let{title:t,children:n,first:r=!1}=e;return(0,l.jsxs)(`section`,{className:(0,s.clsx)(!r&&`univer-mt-5`),children:[(0,l.jsx)(`div`,{className:`univer-text-sm univer-font-medium univer-leading-5`,children:t}),(0,l.jsx)(`div`,{className:`univer-mt-3`,children:n})]})},mh=e=>{let{label:t,unit:n,children:r}=e;return(0,l.jsxs)(`div`,{className:`univer-grid univer-min-h-8 univer-items-center univer-gap-3`,style:{gridTemplateColumns:`minmax(0, 1fr) minmax(160px, 180px)`},children:[(0,l.jsxs)(`div`,{className:`univer-min-w-0 univer-text-xs univer-leading-5 univer-text-gray-900 dark:!univer-text-gray-100`,children:[t,n]}),(0,l.jsx)(`div`,{className:`univer-w-full univer-min-w-0`,children:r})]})},hh=e=>{let{value:t,onChange:n,className:r=``,min:i=0,max:a=100,step:o=.1,precision:u=1}=e,d=(0,c.useRef)(null);return(0,l.jsx)(s.InputNumber,{step:o,precision:u,ref:d,min:i,max:a,value:t,onChange:e=>{n(e??0).finally(()=>{setTimeout(()=>{var e;(e=d.current)==null||e.focus()},30)})},className:(0,s.clsx)(`univer-w-full`,r)})};function gh(){let e=(0,i.useDependency)(t.LocaleService),n=rh(),[r,a]=ih(n,fh[0].value),[o,u]=ah(n),[d,f]=oh(n),[p,m]=sh(n),[h,g]=ch(n),[_,v]=lh(n),[y,b]=uh(n),{lineSpacing:[x,S],spacingRule:[C,w]}=dh(n),T=(0,c.useMemo)(()=>Ym(C),[C]),E=Jm.map(t=>({...t,label:e.t(t.label)}));return(0,l.jsxs)(`div`,{className:`univer-box-border univer-w-full`,children:[(0,l.jsx)(ph,{title:e.t(`docs-ui.doc.paragraphSetting.alignment`),first:!0,children:(0,l.jsx)(`div`,{className:(0,s.clsx)(`univer-flex univer-grid-cols-4 univer-items-center univer-justify-around univer-gap-2 univer-rounded-lg univer-bg-gray-0 univer-p-1 dark:!univer-bg-gray-900`,s.borderClassName),children:fh.map(t=>(0,l.jsx)(s.Tooltip,{title:e.t(t.label),placement:`bottom`,children:(0,l.jsx)(`span`,{className:`univer-flex univer-w-full univer-items-center univer-justify-center`,children:(0,l.jsx)(s.Button,{type:`button`,variant:`text`,className:(0,s.clsx)({"!univer-bg-gray-200 dark:!univer-bg-gray-700":r===t.value}),onClick:()=>a(t.value),children:(0,l.jsx)(`span`,{className:`univer-flex univer-size-5 univer-items-center univer-justify-center univer-text-lg`,children:t.icon})})})},t.value))})}),(0,l.jsx)(ph,{title:e.t(`docs-ui.doc.paragraphSetting.indentation`),children:(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-3`,children:[(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.left`),unit:`(px)`,children:(0,l.jsx)(hh,{value:o,onChange:e=>u(e??0)})}),(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.right`),unit:`(px)`,children:(0,l.jsx)(hh,{value:d,onChange:e=>f(e??0)})}),(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.firstLine`),unit:`(px)`,children:(0,l.jsx)(hh,{value:p,onChange:e=>m(e??0)})}),(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.hanging`),unit:`(px)`,children:(0,l.jsx)(hh,{value:h,onChange:e=>g(e??0)})})]})}),(0,l.jsx)(ph,{title:e.t(`docs-ui.doc.paragraphSetting.spacing`),children:(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-3`,children:[(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.before`),unit:`(px)`,children:(0,l.jsx)(hh,{value:_,onChange:e=>v(e??0)})}),(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.after`),unit:`(px)`,children:(0,l.jsx)(hh,{value:y,onChange:e=>b(e??0)})}),(0,l.jsx)(mh,{label:e.t(`docs-ui.doc.paragraphSetting.lineSpace`),children:(0,l.jsxs)(`div`,{className:`univer-flex univer-w-full univer-flex-col univer-gap-2`,children:[(0,l.jsx)(s.Select,{className:`univer-w-full`,value:`${C}`,options:E,onChange:e=>w(Number(e))}),(0,l.jsx)(hh,{...T,value:x,onChange:e=>S(e??0)})]})})]})})]})}let _h=(e,t)=>t.length===e.length&&e.some(e=>t.some(t=>t.startOffset===e.startOffset&&t.endOffset===e.endOffset));function vh(){let e=(0,i.useDependency)(t.ICommandService),r=(0,i.useObservable)((0,i.useDependency)(t.LocaleService).currentLocale$),[a,o]=(0,c.useState)(``),s=(0,c.useMemo)(()=>(0,t.debounce)(()=>o((0,t.generateRandomId)(4)),300),[]),u=(0,c.useRef)([]);return(0,c.useEffect)(()=>{let r=e.onCommandExecuted(e=>{if(n.SetTextSelectionsOperation.id===e.id){let n=e.params.ranges;_h(n,u.current)||o((0,t.generateRandomId)(4)),u.current=n}n.RichTextEditingMutation.id===e.id&&e.params.trigger!==em.id&&s()});return()=>r.dispose()},[s]),(0,c.useEffect)(()=>{o((0,t.generateRandomId)(4))},[r]),(0,c.useEffect)(()=>()=>s.cancel(),[s]),(0,l.jsx)(gh,{},a)}function yh(e,n){if(e==null||n==null)return!1;let{glyph:r,...i}=e,{glyph:a,...o}=n;return(0,t.deepCompare)(i,o)}let bh=[t.DataStreamTreeTokenType.CUSTOM_BLOCK,t.DataStreamTreeTokenType.PARAGRAPH],xh=class extends t.Disposable{constructor(e,n,r,i,a,o){super(),this._context=e,this._docSelectionManagerService=n,this._docCanvasPopManagerService=r,this._univerInstanceService=i,this._docSelectionRenderService=a,this._contextService=o,O(this,`_floatMenu`,null),O(this,`_suppressed`,!1),!(0,t.isInternalEditorID)(this._context.unitId)&&(this._initSelectionChange(),this.disposeWithMe(()=>{this._hideFloatMenu()}))}get floatMenu(){return this._floatMenu}hideFloatMenu(){this._hideFloatMenu()}setSuppressed(e){this._suppressed!==e&&(this._suppressed=e,e&&this._hideFloatMenu())}_initSelectionChange(){this.disposeWithMe(this._docSelectionRenderService.onSelectionStart$.subscribe(()=>{this._hideFloatMenu()})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(e=>{let{unitId:n,textRanges:r}=e;if(n!==this._context.unitId)return;if(this._suppressed||this._contextService.getContextValue(t.FOCUSING_COMMON_DRAWINGS)){this._hideFloatMenu();return}let i=r.length>0&&r.find(e=>!e.collapsed);if(i){var a,o;if(i.startOffset===((a=this._floatMenu)==null?void 0:a.start)&&i.endOffset===((o=this._floatMenu)==null?void 0:o.end))return;this._hideFloatMenu(),this._showFloatMenu(n,i);return}this._hideFloatMenu()}))}_hideFloatMenu(){var e;(e=this._floatMenu)==null||e.disposable.dispose(),this._floatMenu=null}_showFloatMenu(e,n){var r,i;let a=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(!a||a.getDisabled()||Sh(a,n))return;let o=(r=a.getBody())==null?void 0:r.dataStream[n.startOffset];if(n.endOffset-n.startOffset===1&&o&&bh.includes(o))return;let s=(i=a.getBody())==null||(i=i.customRanges)==null?void 0:i.filter(e=>e.wholeEntity);if(!(s!=null&&s.some(e=>e.startIndex===n.startOffset&&e.endIndex===n.endOffset-1)))return this._floatMenu={disposable:this._docCanvasPopManagerService.attachPopupToRange(n,{componentKey:tm,direction:n.direction===`backward`||yh(n.startNodePosition,n.endNodePosition)?`top-center`:`bottom-center`,offset:[0,4]},e),start:n.startOffset,end:n.endOffset},(0,t.toDisposable)(()=>this._hideFloatMenu())}};xh=A([k(1,(0,t.Inject)(n.DocSelectionManagerService)),k(2,(0,t.Inject)(ep)),k(3,(0,t.Inject)(t.IUniverInstanceService)),k(4,(0,t.Inject)(Y)),k(5,t.IContextService)],xh);function Sh(e,n){var r;return(((r=e.getBody())==null?void 0:r.blockRanges)??[]).some(e=>e.blockType===t.DocumentBlockRangeType.CODE&&Math.max(n.startOffset,e.startIndex)<=Math.min(n.endOffset,e.endIndex))}let Ch={code:`CodeBlockIcon`,quote:`QuoteIcon`,callout:`CalloutIcon`},wh={[t.PresetListType.ORDER_LIST]:`OrderIcon`,[t.PresetListType.ORDER_LIST_1]:`OrderIcon`,[t.PresetListType.ORDER_LIST_2]:`OrderIcon`,[t.PresetListType.ORDER_LIST_3]:`OrderIcon`,[t.PresetListType.ORDER_LIST_4]:`OrderIcon`,[t.PresetListType.ORDER_LIST_5]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_2]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_3]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_4]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_5]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_6]:`OrderIcon`,[t.PresetListType.BULLET_LIST]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_1]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_2]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_3]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_4]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_5]:`UnorderIcon`,[t.PresetListType.CHECK_LIST]:`TodoListDoubleIcon`,[t.PresetListType.CHECK_LIST_CHECKED]:`TodoListDoubleIcon`},Th=class extends t.Disposable{get activeParagraph(){var e;return(e=this._paragraphMenu)==null?void 0:e.paragraph}get activeTarget(){var e;return((e=this._paragraphMenu)==null?void 0:e.target)??null}setBlockMenuDragging(e){this._isBlockMenuDragging=e}get isBlockMenuDragging(){return this._isBlockMenuDragging}constructor(e,n,r,i,o,s,c){super(),this._context=e,this._docSelectionManagerService=n,this._docEventManagerService=r,this._docPopupManagerService=i,this._docSkeletonManagerService=o,this._floatMenuService=s,this._docSelectionRenderService=c,O(this,`_paragraphMenu`,null),O(this,`_activeTarget$`,new a.BehaviorSubject(null)),O(this,`activeTarget$`,this._activeTarget$.asObservable()),O(this,`_slashMenuRequest$`,new a.BehaviorSubject(null)),O(this,`slashMenuRequest$`,this._slashMenuRequest$.asObservable()),O(this,`_isBlockMenuDragging`,!1),O(this,`_isSlashMenuActive`,!1),O(this,`_slashMenuRequestNonce`,0),!(0,t.isInternalEditorID)(this._context.unitId)&&this._init()}_isCursorInActiveParagraph(){if(!this._paragraphMenu)return!1;let e=this._docSelectionManagerService.getActiveTextRange();return!(!(e!=null&&e.collapsed)||!(e!=null&&e.collapsed)||e.startOffset<this._paragraphMenu.paragraph.paragraphStart||e.startOffset>this._paragraphMenu.paragraph.paragraphEnd)}_getExpandedSelectionState(e){return e.reduce((e,n)=>n.rangeType===t.DOC_RANGE_TYPE.RECT?(e.hasRectRange=!0,e):n.collapsed===!1?(e.hasExpandedTextRange=!0,e):(typeof n.startOffset==`number`&&typeof n.endOffset==`number`&&n.endOffset>n.startOffset&&n.collapsed!==!0&&(e.hasExpandedTextRange=!0),e),{hasExpandedTextRange:!1,hasRectRange:!1})}_hasExpandedSelectionRanges(e){let t=this._getExpandedSelectionState(e);return t.hasExpandedTextRange||t.hasRectRange}_hasExpandedTextSelection(){return this._getExpandedSelectionState(this._docSelectionManagerService.getDocRanges()).hasExpandedTextRange}_hasExpandedSelection(){return this._hasExpandedSelectionRanges(this._docSelectionManagerService.getDocRanges())}setParagraphMenuActive(e){this._paragraphMenu&&(this._paragraphMenu.active=e)}_init(){let e=(e,n)=>{if(this._isBlockMenuDragging)return;if(this._docSelectionRenderService.isOnPointerEvent){this.hideParagraphMenu(!0);return}let i=this._getExpandedSelectionState(this._docSelectionManagerService.getDocRanges());if(i.hasExpandedTextRange){this.hideParagraphMenu(!0);return}if(i.hasRectRange){var a;if(n){this.showTableMenu(n);return}if(((a=this._paragraphMenu)==null?void 0:a.target.kind)===t.DocumentBlockType.TABLE)return;this.hideParagraphMenu(!0);return}if(this._docSkeletonManagerService.getViewModel().getEditArea()===r.DocumentEditArea.BODY&&!this._floatMenuService.floatMenu&&!this._context.unit.getDisabled()){var o;if((o=this._paragraphMenu)!=null&&o.active)return;if(e){this.showParagraphMenu(e);return}if(n){this.showTableMenu(n);return}}this.hideParagraphMenu(!0)};this.disposeWithMe((0,a.combineLatest)([this._docEventManagerService.hoverParagraphRealTime$,this._docEventManagerService.hoverParagraphLeft$,this._docEventManagerService.hoverTableRealTime$??new a.BehaviorSubject(null)]).pipe((0,a.throttleTime)(16,void 0,{leading:!0,trailing:!0})).subscribe(([t,n,r])=>{e(t??n,r)})),this.disposeWithMe(this._docSelectionRenderService.onSelectionStart$.subscribe(()=>{this.hideParagraphMenu(!0)})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(({textRanges:e,rectRanges:n})=>{var r;let i=this._getExpandedSelectionState([...e,...n]);(i.hasExpandedTextRange||i.hasRectRange&&((r=this._paragraphMenu)==null?void 0:r.target.kind)!==t.DocumentBlockType.TABLE)&&this.hideParagraphMenu(!0)}));let n=0;this.disposeWithMe(this._context.scene.getViewport(`viewMain`).onScrollAfter$.subscribeEvent(e=>{var t;n!==e.scrollY&&(n=e.scrollY,!((t=this._paragraphMenu)!=null&&t.blockRange)&&(this._isBlockMenuDragging||this.hideParagraphMenu(!0)))})),this.disposeWithMe(this._docEventManagerService.clickCustomRanges$.subscribe(()=>{this._isBlockMenuDragging||this.hideParagraphMenu(!0)})),this.disposeWithMe(this._docSelectionRenderService.onKeydown$.subscribe(e=>{this._isBlockMenuDragging||this._handleSlashMenuKeydown(e)||this.hideParagraphMenu(!0)})),this.disposeWithMe(this._docSelectionRenderService.onInputBefore$.subscribe(e=>{!e||this._isBlockMenuDragging||this._handleSlashMenuInputBefore(e)}))}_handleSlashMenuKeydown(e){return this._shouldOpenSlashMenu(e)?this._openSlashMenu(e):!1}_handleSlashMenuInputBefore(e){return this._shouldOpenSlashMenuFromInput(e)?this._openSlashMenu(e):!1}_openSlashMenu(e){e.event.preventDefault(),e.event.stopPropagation();let t=this._getSlashMenuParagraph(e);if(!t)return!0;this.showParagraphMenu(t);let n=this.activeTarget;return n?(this._slashMenuRequest$.next({anchorRect:this._getSlashMenuAnchorRect(e,t),nonce:++this._slashMenuRequestNonce,target:n}),this._isSlashMenuActive=!0,!0):!0}_shouldOpenSlashMenu(e){let t=e.event;return t.key!==`/`||t.altKey||t.ctrlKey||t.metaKey?!1:this._getCollapsedTextRange(e)!=null}_shouldOpenSlashMenuFromInput(e){let t=e.event;return(e.content??t.data??``)===`/`&&this._getCollapsedTextRange(e)!=null}_getCollapsedTextRange(e){let t=e.activeRange??this._docSelectionManagerService.getActiveTextRange();return t&&(t.collapsed||t.startOffset===t.endOffset)?{...t,collapsed:!0}:null}_getSlashMenuParagraph(e){var t;let n=this._getCollapsedTextRange(e),r=n==null?void 0:n.startOffset,i=((t=this._paragraphMenu)==null?void 0:t.paragraph)??null;return i&&r!=null&&r>=i.paragraphStart&&r<=i.paragraphEnd||i&&r==null?i:r==null?null:[...this._docEventManagerService.paragraphBounds.values()].find(e=>r>=e.paragraphStart&&r<=e.paragraphEnd)??null}_getSlashMenuAnchorRect(e,t){let n=this._getCollapsedTextRange(e);if(!n)return t.firstLine;try{var r;return((r=$f({...n,collapsed:!0,endOffset:n.startOffset},this._context))==null?void 0:r[0])??t.firstLine}catch{return t.firstLine}}showParagraphMenu(e){var t;if(this._hasExpandedSelection()){this.hideParagraphMenu(!0);return}let n=this._buildParagraphMenuTarget(e);if(!n){this.hideParagraphMenu(!0);return}if(((t=this._paragraphMenu)==null?void 0:t.target.key)===n.key)return;this.hideParagraphMenu(!0);let r=n.paragraph??e,i=n.blockRange,o=this._docPopupManagerService.attachPopupToRect(()=>{let t=this._docEventManagerService.findParagraphBoundByIndex(r.startIndex)??r,a=i?Ph(this._docEventManagerService,i,e):t.firstLine??e.firstLine;return n.cellRange?jh(this._docEventManagerService,t,a):a},{componentKey:Hm,direction:`left-center`,onClickOutside:()=>{if(this._isSlashMenuActive){this.hideParagraphMenu(!0);return}this._docSelectionManagerService.textSelection$.pipe((0,a.first)()).subscribe(()=>{this._isCursorInActiveParagraph()||this.hideParagraphMenu(!0)})},zIndex:101},this._context.unitId);this._paragraphMenu={paragraph:r,target:n,blockRange:i,disposable:o,active:!1},this._activeTarget$.next(n)}showTableMenu(e){var n,r;if(this._hasExpandedTextSelection()){this.hideParagraphMenu(!0);return}let i=this._context.unit.getBody(),a=i==null||(n=i.tables)==null?void 0:n.find(t=>t.tableId===e.tableId);if(!a)return;let o={kind:t.DocumentBlockType.TABLE,key:`${t.DocumentBlockType.TABLE}:${a.tableId}`,table:a,icon:`GridIcon`,menuRange:{startOffset:a.startIndex,endOffset:a.endIndex,collapsed:!1},moveRange:{startOffset:a.startIndex,endOffset:a.endIndex},emptyMode:!1,draggable:!0};if(this._shouldKeepCurrentCellMenuForTable(a)||((r=this._paragraphMenu)==null?void 0:r.target.key)===o.key)return;let s=Ah(e),c={rect:e.rect,rects:[e.rect],paragraphStart:a.startIndex,paragraphEnd:a.endIndex,startIndex:a.startIndex,pageIndex:e.pageIndex,firstLine:s};this.hideParagraphMenu(!0);let l=this._docPopupManagerService.attachPopupToRect(()=>Ah(this._docEventManagerService.tableBounds.get(a.tableId)??e),{componentKey:Um,direction:`top-right`,onClickOutside:()=>{this.hideParagraphMenu(!0)},zIndex:101},this._context.unitId);this._paragraphMenu={paragraph:c,target:o,disposable:l,active:!1},this._activeTarget$.next(o)}_shouldKeepCurrentCellMenuForTable(e){var n;let r=(n=this._paragraphMenu)==null?void 0:n.target;return!r||r.kind===t.DocumentBlockType.TABLE||!r.cellRange?!1:r.cellRange.startOffset>=e.startIndex&&r.cellRange.startOffset<=e.endIndex}getDropTargetFromClientPoint(e,t,n){let r=this._context.engine.getCanvasElement().getBoundingClientRect(),i=Qf(e-r.left,t-r.top,this._context.scene),a=this._context.unit.getBody(),o=a!=null&&a.dataStream?kh(a.dataStream,n.startOffset):null,s=(o?this._getCellBlockTargets(o):this._getBodyBlockTargets()).filter(e=>e.moveRange.startOffset!==n.startOffset||e.moveRange.endOffset!==n.endOffset).filter(e=>e.moveRange.endOffset<=n.startOffset||e.moveRange.startOffset>=n.endOffset).sort((e,t)=>e.rect.top-t.rect.top||e.rect.left-t.rect.left);if(!s.length)return null;let c=s[0],l=1/0;for(let e of s){let t=(e.rect.top+e.rect.bottom)/2,n=Math.abs(i.y-t);n<l&&(l=n,c=e)}let u=i.y<(c.rect.top+c.rect.bottom)/2,d=u?c.moveRange.startOffset:c.moveRange.endOffset,f=Xf({left:c.rect.left,right:c.rect.right,top:u?c.rect.top:c.rect.bottom,bottom:u?c.rect.top:c.rect.bottom},this._context.scene);return{targetOffset:d,rect:{left:r.left+f.left,right:r.left+f.right,top:r.top+f.top,bottom:r.top+f.bottom}}}hideParagraphMenu(e=!1){this._isBlockMenuDragging||this._paragraphMenu&&(this._paragraphMenu.disposable.canDispose()||e)&&(this._paragraphMenu.disposable.dispose(),this._paragraphMenu=null,this._isSlashMenuActive=!1,this._slashMenuRequest$.next(null),this._activeTarget$.next(null))}_buildParagraphMenuTarget(e){var n,r,i,a;let o=this._context.unit.getBody(),s=(o==null?void 0:o.dataStream)??``,c=kh(s,e.paragraphStart),l=c!=null||Eh(this._context.unit,e.paragraphStart),u=Nh(this._context.unit,e);if(u){let n={...e,paragraphStart:u.startIndex,paragraphEnd:u.endIndex+1,startIndex:u.startIndex,blockRange:u};return{kind:t.DocumentBlockType.BLOCK_RANGE,key:`${t.DocumentBlockType.BLOCK_RANGE}:${u.blockId}`,paragraph:n,blockRange:u,icon:Ch[u.blockType],cellRange:c??void 0,menuRange:{startOffset:u.startIndex,endOffset:u.endIndex+1,collapsed:!1},moveRange:{startOffset:u.startIndex,endOffset:u.endIndex+1},emptyMode:!1,draggable:c!=null||!l}}let d=s.slice(e.paragraphStart,e.paragraphEnd),f=o==null||(n=o.paragraphs)==null?void 0:n.find(t=>t.startIndex===e.startIndex),p=Oh(f==null||(r=f.bullet)==null?void 0:r.listType),m=d.replace(/[\r\n]/g,``)===``&&!!(f!=null&&(i=f.paragraphStyle)!=null&&i.borderBottom),h=o==null||(a=o.customBlocks)==null?void 0:a.find(t=>t.startIndex>=e.paragraphStart&&t.startIndex<=e.paragraphEnd),g=(h==null?void 0:h.blockType)===t.BlockType.CUSTOM&&d.replace(/[\b\r\n]/g,``)===``;return h&&h.blockType===t.BlockType.CUSTOM&&g?{kind:t.DocumentBlockType.CUSTOM_BLOCK,key:`${t.DocumentBlockType.CUSTOM_BLOCK}:${h.blockId}`,paragraph:e,customBlock:h,icon:`TextTypeIcon`,cellRange:c??void 0,menuRange:{startOffset:h.startIndex,endOffset:h.startIndex,collapsed:!0},moveRange:Dh(this._context.unit,e,c),emptyMode:!1,draggable:c!=null||!l}:d===`\b`?null:{kind:t.DocumentBlockType.PARAGRAPH,key:`${t.DocumentBlockType.PARAGRAPH}:${e.startIndex}`,paragraph:e,icon:m?`ReduceIcon`:p,cellRange:c??void 0,menuRange:{startOffset:e.paragraphStart,endOffset:e.paragraphStart,collapsed:!0},moveRange:Dh(this._context.unit,e,c),emptyMode:!m&&d.replace(/[\r\n]/g,``)===``,draggable:c!=null||!l}}_getBodyBlockTargets(){let e=this._context.unit.getBody();if(!e)return[];let n=e.tables??[],r=e.blockRanges??[],i=[...this._docEventManagerService.paragraphBounds.values()],a=[];for(let e of n){let n=this._docEventManagerService.tableBounds.get(e.tableId);n&&a.push({kind:t.DocumentBlockType.TABLE,key:`${t.DocumentBlockType.TABLE}:${e.tableId}`,table:e,icon:`GridIcon`,menuRange:{startOffset:e.startIndex,endOffset:e.endIndex,collapsed:!1},moveRange:{startOffset:e.startIndex,endOffset:e.endIndex},emptyMode:!1,draggable:!0,rect:n.rect})}for(let e of r){let n=Mh(i.filter(t=>Math.max(t.paragraphStart,e.startIndex)<=Math.min(t.paragraphEnd,e.endIndex)).map(e=>e.rect));n&&a.push({kind:t.DocumentBlockType.BLOCK_RANGE,key:`${t.DocumentBlockType.BLOCK_RANGE}:${e.blockId}`,blockRange:e,icon:Ch[e.blockType],menuRange:{startOffset:e.startIndex,endOffset:e.endIndex+1,collapsed:!1},moveRange:{startOffset:e.startIndex,endOffset:e.endIndex+1},emptyMode:!1,draggable:!0,rect:n})}for(let e of i){if(n.some(t=>e.paragraphStart>t.startIndex&&e.paragraphStart<t.endIndex)||r.some(t=>Math.max(e.paragraphStart,t.startIndex)<=Math.min(e.paragraphEnd,t.endIndex)))continue;let t=this._buildParagraphMenuTarget(e);t&&a.push({...t,rect:e.rect})}return a}_getCellBlockTargets(e){let n=this._context.unit.getBody();if(!n)return[];let r=n.blockRanges??[],i=[...this._docEventManagerService.paragraphBounds.values()].filter(t=>t.paragraphStart>e.startOffset&&t.paragraphStart<e.endOffset),a=[];for(let n of r){if(n.startIndex<=e.startOffset||n.endIndex>=e.endOffset)continue;let r=Mh(i.filter(e=>Math.max(e.paragraphStart,n.startIndex)<=Math.min(e.paragraphEnd,n.endIndex)).map(e=>e.rect));r&&a.push({kind:t.DocumentBlockType.BLOCK_RANGE,key:`${t.DocumentBlockType.BLOCK_RANGE}:${n.blockId}`,blockRange:n,icon:Ch[n.blockType],cellRange:e,menuRange:{startOffset:n.startIndex,endOffset:n.endIndex+1,collapsed:!1},moveRange:{startOffset:n.startIndex,endOffset:n.endIndex+1},emptyMode:!1,draggable:!0,rect:r})}for(let e of i){if(r.some(t=>Math.max(e.paragraphStart,t.startIndex)<=Math.min(e.paragraphEnd,t.endIndex)))continue;let t=this._buildParagraphMenuTarget(e);t&&a.push({...t,rect:e.rect})}return a}};Th=A([k(1,(0,t.Inject)(n.DocSelectionManagerService)),k(2,(0,t.Inject)(yp)),k(3,(0,t.Inject)(ep)),k(4,(0,t.Inject)(n.DocSkeletonManagerService)),k(5,(0,t.Inject)(xh)),k(6,(0,t.Inject)(Y))],Th);function Eh(e,t){var n;return(((n=e.getBody())==null?void 0:n.tables)??[]).some(e=>t>e.startIndex&&t<e.endIndex)}function Dh(e,n,r){let i=e.getBody(),a=i?(0,t.getParagraphContentStartOffset)(i,n):0;return{startOffset:r?Math.max(a,r.startOffset+1):a,endOffset:n.startIndex+1}}function Oh(e){if(e)return wh[e]}function kh(e,n){let r=e.lastIndexOf(t.DataStreamTreeTokenType.TABLE_CELL_START,Math.max(0,n));if(r<0||e.lastIndexOf(t.DataStreamTreeTokenType.TABLE_CELL_END,Math.max(0,n))>r)return null;let i=e.indexOf(t.DataStreamTreeTokenType.TABLE_CELL_END,r+1);return i<0||n>i?null:{startOffset:r,endOffset:i}}function Ah(e){let t=e.rect.left-4,n=e.rect.top-4;return{left:t,right:t,top:n,bottom:n}}function jh(e,t,n){let r=t;if(!r.tableId||r.rowIndex==null||r.colIndex==null)return n;let i=e.findTableCellBound(r.tableId,r.rowIndex,r.colIndex,r.pageIndex);if(!i)return n;let a=r.colIndex===0?20:10,o=i.rect.left-a;return{...n,left:o,right:o}}function Mh(e){return e.length?e.reduce((e,t)=>({left:Math.min(e.left,t.left),right:Math.max(e.right,t.right),top:Math.min(e.top,t.top),bottom:Math.max(e.bottom,t.bottom)})):null}function Nh(e,t){var n;return(((n=e.getBody())==null?void 0:n.blockRanges)??[]).find(e=>Math.max(t.paragraphStart,e.startIndex)<=Math.min(t.paragraphEnd,e.endIndex))}function Ph(e,t,n){var r;let i=e.findParagraphBoundsInRange(t.startIndex,t.endIndex).sort((e,t)=>e.firstLine.top-t.firstLine.top||e.firstLine.left-t.firstLine.left),a=((r=i[0])==null?void 0:r.firstLine)??n.firstLine,o=Math.min(...(i.length?i:[n]).map(e=>e.firstLine.left)),s=a.top;return{...a,left:o,right:o,top:s,bottom:s}}function Fh(e,t=212,n=8,r={}){let{anchorRight:i=e,direction:a=`ltr`,viewportWidth:o=1/0}=r,s=e-t>=n,c=i+t+n<=o;return a===`rtl`?c||!s?`right`:`left`:s||!c?`left`:`right`}function Ih(e){return e===`TextTypeIcon`?`univer-size-3`:`univer-size-4`}function Lh(e,t){return e.canMoveBlock(t)}function Rh(e){switch(e){case t.NamedStyleType.HEADING_1:return`H1Icon`;case t.NamedStyleType.HEADING_2:return`H2Icon`;case t.NamedStyleType.HEADING_3:return`H3Icon`;case t.NamedStyleType.HEADING_4:return`H4Icon`;case t.NamedStyleType.HEADING_5:return`H5Icon`;case t.NamedStyleType.TITLE:return`TitleTypeIcon`;case t.NamedStyleType.SUBTITLE:return`SubtitleTypeIcon`;case t.NamedStyleType.NORMAL_TEXT:case t.NamedStyleType.NAMED_STYLE_TYPE_UNSPECIFIED:default:return`TextTypeIcon`}}function zh(e,t=800){let n=null,r=()=>{n!=null&&(window.clearTimeout(n),n=null)};return{schedule(){r(),n=window.setTimeout(()=>{n=null,e()},t)},cancel:r,openNow(){r(),e()}}}function Bh(e,t){e==null||e.setParagraphMenuActive(t)}function Vh(e,t){return t?e.slice(t.paragraphStart,t.paragraphEnd).replace(/[\r\n]/g,``)===``:!1}function Hh(e){if(!e)return null;let t=e.blockRange;return t?{startOffset:t.startIndex,endOffset:t.endIndex+1,collapsed:!1,segmentId:e.segmentId}:{startOffset:e.paragraphStart,endOffset:e.paragraphStart,collapsed:!0,segmentId:e.segmentId}}function Uh(e,t,n=12,r=8){if(e)return{left:t===`left`?e.left-n:e.right-n,top:e.top-r,width:n*2,height:e.bottom-e.top+r*2}}let Wh={[xi.id]:t.NamedStyleType.HEADING_1,[Si.id]:t.NamedStyleType.HEADING_2,[Ci.id]:t.NamedStyleType.HEADING_3,[wi.id]:t.NamedStyleType.HEADING_4,[Ti.id]:t.NamedStyleType.HEADING_5,[Ei.id]:t.NamedStyleType.NORMAL_TEXT,[Di.id]:t.NamedStyleType.TITLE,[Oi.id]:t.NamedStyleType.SUBTITLE},Gh={[t.NamedStyleType.HEADING_1]:xi.id,[t.NamedStyleType.HEADING_2]:Si.id,[t.NamedStyleType.HEADING_3]:Ci.id,[t.NamedStyleType.HEADING_4]:wi.id,[t.NamedStyleType.HEADING_5]:Ti.id,[t.NamedStyleType.NORMAL_TEXT]:Ei.id,[t.NamedStyleType.TITLE]:Di.id,[t.NamedStyleType.SUBTITLE]:Oi.id};function Kh(e){return Gh[e??t.NamedStyleType.NORMAL_TEXT]??Ei.id}function qh(e){return e===t.NamedStyleType.TITLE?[wi.id,Ti.id,Oi.id]:e===t.NamedStyleType.SUBTITLE?[wi.id,Ti.id,Di.id]:e===t.NamedStyleType.HEADING_5?[wi.id,Di.id,Oi.id]:[Ti.id,Di.id,Oi.id]}let Jh={OrderIcon:ri.id,UnorderIcon:ei.id,TodoListDoubleIcon:ti.id},Yh=[t.DocumentBlockRangeType.CODE,t.DocumentBlockRangeType.QUOTE,t.DocumentBlockRangeType.CALLOUT];function Xh(e){return e?`docs-${e}.command.insert`:void 0}let Zh=new Set(Yh.map(e=>Xh(e))),Qh=new Set([Sn.id,ei.id,ri.id,ti.id,Vn.id,wr.id,Er.id,Ar.id,Mr.id,...Zh,ui.id,di.id,fi.id,pi.id]),$h=new Set([yn.id,xn.id,Le.id]),eg=new Set([wr.id,Er.id,Ar.id,Mr.id]);function tg(e){return!!e&&eg.has(e)}function ng(e,t){let n=e.commandId??e.id??(typeof e.label==`string`?e.label:void 0);if(n&&t&&n in Wh)return{commandId:_i.id,params:{value:Wh[n],textRanges:[t]}};if(n&&t&&(n===ei.id||n===ri.id||n===ti.id))return{commandId:n,params:{docRange:[t]}};if(n===Vn.id&&t)return{commandId:n,params:{insertRange:t}};let r=typeof e.params==`function`?e.params():e.params,i=e.value===void 0?r:{value:e.value};return{commandId:n,params:i&&typeof i==`object`?i:void 0}}function rg(e,t){let n=e.commandId??e.id??(typeof e.label==`string`?e.label:void 0);return n?ng({...e,commandId:n,id:e.id??n},t):{}}function ig(e,t,n,r){return e!==Le.id||(n==null?void 0:n.kind)!==`blockRange`||!n.blockRange?t:{...t??{},unitId:r,blockRange:n.blockRange}}function ag(e,t){return(e==null?void 0:e.kind)===`table`?Nl:t?Pl:(e==null?void 0:e.icon)===`ReduceIcon`?Il:Fl}function og(e,t){if((e==null?void 0:e.kind)===`blockRange`){var n;let t=Xh((n=e.blockRange)==null?void 0:n.blockType);return t&&Zh.has(t)?[t]:[]}let r=[Kh(t)],i=e!=null&&e.icon?Jh[e.icon]:void 0;return i&&r.push(i),r}function sg(e,n,r){var i;if(e===`doc.menu.paragraph-t.insert`)return[];let a=[...qh(r)],o=(n==null?void 0:n.kind)===`blockRange`?(i=n.blockRange)==null?void 0:i.blockType:void 0;return(n==null?void 0:n.kind)!==`blockRange`&&a.push(Sn.id),o===t.DocumentBlockRangeType.CALLOUT?a.push(Xh(t.DocumentBlockRangeType.CODE),Xh(t.DocumentBlockRangeType.QUOTE)):(o===t.DocumentBlockRangeType.QUOTE||o===t.DocumentBlockRangeType.CODE)&&a.push(Xh(t.DocumentBlockRangeType.CALLOUT)),a}function cg(e,n){return e.dataStream[n.endIndex]===t.DataStreamTreeTokenType.BLOCK_END?n.endIndex:e.dataStream[n.endIndex+1]===t.DataStreamTreeTokenType.BLOCK_END?n.endIndex+1:n.endIndex}function lg(e,t,n){let r=t+n;return e==null?void 0:e.map(e=>e.startIndex>=t&&e.startIndex<r?null:e.startIndex>=r?{...e,startIndex:e.startIndex-n}:e).filter(e=>e!=null)}function ug(e,t,n){let r=t+n;return e==null?void 0:e.map(e=>e.st>=t&&e.ed<r?null:e.st>=r?{...e,st:e.st-n,ed:e.ed-n}:e.ed>=t?{...e,st:e.st<t?e.st:t,ed:Math.max(t,e.ed-n)}:e).filter(e=>e!=null)}function dg(e,t,n){let r=t+n;return e==null?void 0:e.map(e=>e.startIndex>=t&&e.endIndex<r?null:e.startIndex>=r?{...e,startIndex:e.startIndex-n,endIndex:e.endIndex-n}:e.endIndex>=t?{...e,startIndex:e.startIndex<t?e.startIndex:t,endIndex:Math.max(t,e.endIndex-n)}:e).filter(e=>e!=null)}function fg(e,t,n){let r=n-t;e.dataStream=`${e.dataStream.slice(0,t)}${e.dataStream.slice(n)}`,e.paragraphs=lg(e.paragraphs,t,r),e.sectionBreaks=lg(e.sectionBreaks,t,r),e.customBlocks=lg(e.customBlocks,t,r),e.textRuns=ug(e.textRuns,t,r),e.tables=dg(e.tables,t,r),e.customRanges=dg(e.customRanges,t,r),e.customDecorations=dg(e.customDecorations,t,r),e.blockRanges=dg(e.blockRanges,t,r)}function pg(e,n){let r={...e};if(n===t.DocumentBlockRangeType.QUOTE)return delete r.indentStart,delete r.spaceAbove,delete r.spaceBelow,r;if(n===t.DocumentBlockRangeType.CODE){var i,a;return delete r.indentStart,delete r.indentEnd,delete r.spaceAbove,delete r.spaceBelow,((i=r.textStyle)==null?void 0:i.ff)===`monospace`&&((a=r.textStyle)==null?void 0:a.fs)===12&&delete r.textStyle,r}return n===t.DocumentBlockRangeType.CALLOUT?(delete r.indentStart,delete r.indentEnd,delete r.spaceAbove,delete r.spaceBelow,r):r}function mg(e,n){var r;let i=t.Tools.deepClone(e),a=cg(i,n);return(i.paragraphs??[]).filter(e=>e.startIndex>n.startIndex&&e.startIndex<a).forEach(e=>{e.paragraphStyle=pg(e.paragraphStyle,n.blockType)}),fg(i,a,a+1),fg(i,n.startIndex,n.startIndex+1),i.blockRanges=(r=i.blockRanges)==null?void 0:r.filter(e=>e.blockId!==n.blockId),{body:i,range:{startOffset:n.startIndex,endOffset:Math.max(n.startIndex,a-1),collapsed:!1}}}let hg=[`paragraphs`,`sectionBreaks`,`textRuns`,`customRanges`,`customDecorations`,`customBlocks`,`tables`,`columnGroups`,`blockRanges`];function gg(e,n,r){let i=cg(e,r),a=new t.TextX;a.retain(r.startIndex),a.delete(1),a.retain(Math.max(0,i-r.startIndex-1)),a.delete(1);let o=t.JSONX.getInstance().editOp(a.serialize(),[`body`]),s=t.Tools.deepClone(e);t.TextX.apply(s,a.serialize());let c=[o];return _g(s,n,c),c.reduce((e,n)=>t.JSONX.compose(e,n),null)}function _g(e,n,r){for(let i of hg)vg(t.JSONX.getInstance(),[`body`,i],e[i],n[i],r)}function vg(e,n,r,i,a){if(!(xg(r,i)||t.Tools.diffValue(r,i))){if(r==null){a.push(e.insertOp(n,i));return}if(i==null){a.push(e.removeOp(n,r));return}if(Array.isArray(r)&&Array.isArray(i)){yg(e,n,r,i,a);return}if(bg(r)&&bg(i)){new Set([...Object.keys(r),...Object.keys(i)]).forEach(t=>vg(e,[...n,t],r[t],i[t],a));return}a.push(e.replaceOp(n,r,i))}}function yg(e,n,r,i,a){if(r.length===i.length){r.forEach((t,r)=>vg(e,[...n,r],t,i[r],a));return}let o=0;for(;o<r.length&&o<i.length&&t.Tools.diffValue(r[o],i[o]);)o++;let s=r.length-1,c=i.length-1;for(;s>=o&&c>=o&&t.Tools.diffValue(r[s],i[c]);)s--,c--;for(let t=s;t>=o;t--)a.push(e.removeOp([...n,t],r[t]));for(let t=o;t<=c;t++)a.push(e.insertOp([...n,t],i[t]))}function bg(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function xg(e,t){return e==null&&Array.isArray(t)&&t.length===0||t==null&&Array.isArray(e)&&e.length===0}function Sg(e,t){return e?{...e.menuRange,segmentId:t==null?void 0:t.segmentId}:Hh(t)}function Cg(e,t){return(e==null?void 0:e.kind)===`blockRange`?Eg(e,t):t?{startOffset:t.paragraphStart,endOffset:t.paragraphEnd,collapsed:!1,segmentId:t.segmentId}:Sg(e,t)}function wg(e,t,n){return e===Sn.id?t:e&&Qh.has(e)?n??t:t??n}function Tg(e,t,n){e==null||e.hideParagraphMenu(!0),n(),t.focus()}function Eg(e,t){if((e==null?void 0:e.kind)!==`blockRange`)return Sg(e,t);let n=e.blockRange;return n?{startOffset:n.startIndex,endOffset:n.endIndex+1,collapsed:!1,segmentId:t==null?void 0:t.segmentId}:Sg(e,t)}function Dg(e,t,n){return(t==null?void 0:t.kind)===`blockRange`?e===Sn.id?{startOffset:t.moveRange.endOffset,endOffset:t.moveRange.endOffset,collapsed:!0,segmentId:n==null?void 0:n.segmentId}:e===yn.id||e===xn.id?Eg(t,n??void 0):null:null}function Og({popup:e,tableBlockOnly:o=!1}){var u,d;let[f,p]=(0,c.useState)(!1),[m,h]=(0,c.useState)(`pointer`),[g,_]=(0,c.useState)(null),[v,y]=(0,c.useState)(null),[b,x]=(0,c.useState)(`left`),S=(0,c.useRef)(null),C=(0,c.useRef)(null),w=(0,c.useRef)(null),T=(0,c.useRef)(!1),E=(0,c.useRef)(()=>void 0),D=(0,c.useRef)(zh(()=>E.current())),O=(0,i.useDependency)(t.ICommandService),k=(0,i.useDependency)(t.LocaleService),A=(0,i.useDependency)(t.ThemeService),j=(0,i.useDependency)(n.DocSelectionManagerService),M=(0,i.useObservable)(k.direction$,`ltr`),N=(0,i.useDependency)(fn),P=(0,i.useDependency)(n.DocContentInsertService),F=(0,i.useDependency)(n.DocBlockMoveValidatorService),I=(0,i.useDependency)(i.ILayoutService),L=(0,i.useDependency)(i.IconManager),R=(0,c.useRef)(null),z=(0,c.useRef)(!1),B=(0,c.useRef)(null),ee=(0,c.useRef)(0),V=(0,i.useDependency)(r.IRenderManagerService),H=(0,i.useDependency)(t.IUniverInstanceService),U=V.getRenderUnitById(e.unitId),W=H.getUnit(e.unitId,t.UniverInstanceType.UNIVER_DOC),G=U==null?void 0:U.with(Th),te=U==null?void 0:U.with(yp),ne=(0,i.useObservable)(G==null?void 0:G.activeTarget$),re=(0,i.useObservable)(G==null?void 0:G.slashMenuRequest$),ie=(0,i.useObservable)(te==null?void 0:te.hoverParagraph$),ae=(0,i.useObservable)(te==null?void 0:te.hoverParagraphLeft$),oe=ne??(G==null?void 0:G.activeTarget),K=o?(oe==null?void 0:oe.kind)===`table`?oe:null:(oe==null?void 0:oe.kind)===`table`?null:oe,q=(K==null?void 0:K.paragraph)??(G==null?void 0:G.activeParagraph)??ie??ae,se=q==null?void 0:q.startIndex,ce=(W==null||(u=W.getBody())==null?void 0:u.dataStream)??``,le=(0,c.useMemo)(()=>{var e;return W==null||(e=W.getBody())==null||(e=e.paragraphs)==null?void 0:e.find(e=>e.startIndex===se)},[W,se]),ue=(K==null?void 0:K.emptyMode)??Vh(ce,q),de=le==null||(d=le.paragraphStyle)==null?void 0:d.namedStyleType,fe=(K==null?void 0:K.icon)??Rh(de),pe=L.get(fe),me=(0,c.useMemo)(()=>ag(K,ue),[K,ue]),he=(0,c.useMemo)(()=>og(K,de),[K,de]),ge=(0,c.useMemo)(()=>(K==null?void 0:K.kind)===`table`?[]:sg(me,K,de),[K,de,me]),_e=(0,c.useMemo)(()=>new a.BehaviorSubject({left:0,right:0,top:0,bottom:0}),[]),ve=()=>{var e,t;let n=(e=R.current)==null?void 0:e.getBoundingClientRect(),r=((n==null?void 0:n.left)??0)-4,i=(n==null?void 0:n.right)??0,a=((t=R.current)==null||(t=t.ownerDocument.defaultView)==null?void 0:t.innerWidth)??window.innerWidth;x(Fh(r,212,8,{anchorRight:i,direction:M,viewportWidth:a}));let o={left:r,right:i,top:(n==null?void 0:n.top)??0,bottom:(n==null?void 0:n.bottom)??0};_(o),_e.next(o)},J=()=>{p(!1),h(`pointer`),S.current=null,Bh(G,!1)},ye=()=>{B.current!=null&&(window.clearTimeout(B.current),B.current=null)},be=()=>{ye(),B.current=window.setTimeout(()=>{!z.current&&!T.current&&J()},240)};E.current=(e=`pointer`)=>{ye();let t=(G==null?void 0:G.activeTarget)??ne;Bh(G,!0);let n=t?{...t.menuRange,segmentId:q==null?void 0:q.segmentId}:Hh(q);S.current=n,ve(),h(e),p(!0)};let xe=e=>{var t;ye(),S.current={...e.target.menuRange,segmentId:((t=e.target.paragraph)==null?void 0:t.segmentId)??(q==null?void 0:q.segmentId)},x(`vertical`),_(e.anchorRect),_e.next(e.anchorRect),h(`slash`),p(!0)},Se=()=>{ye(),D.current.schedule()},Ce=()=>{D.current.cancel()},we=e=>{e&&j.replaceDocRanges([e],void 0,!1)},Te=()=>(j.getTextRanges()??[]).map(e=>({...e})),Ee=e=>{e&&j.replaceDocRanges(e,void 0,!1)},De=(e,t)=>{let n=rg(e,t);return n.commandId?O.executeCommand(n.commandId,n.params):!1},Oe=async()=>{let t=(G==null?void 0:G.activeTarget)??ne;if(!t||t.kind!==`blockRange`||!t.blockRange||!(W!=null&&W.getBody()))return null;let r=W.getBody(),{body:i,range:a}=mg(r,t.blockRange),o=gg(r,i,t.blockRange),s=(q==null?void 0:q.segmentId)??``;if(!await O.executeCommand(n.RichTextEditingMutation.id,{unitId:e.unitId,actions:o,textRanges:[{...a,segmentId:s}]}))return null;let c={...a,segmentId:s};return we(c),S.current=c,c},ke=async n=>{let r=(G==null?void 0:G.activeTarget)??ne,i=Sg(r,q??void 0),a=Eg(r,q??void 0),o=Cg(r,q??void 0),s=n.commandId??n.id??(typeof n.label==`string`?n.label:void 0),c=typeof n.params==`function`?n.params():n.params;if(!s)return;if(s===`doc.menu.paragraph-t.reset-colors`){o&&we(o),await O.executeCommand(wr.id,{value:A.getColorFromTheme(`gray.900`)}),await O.executeCommand(Ar.id,{value:A.getColorFromTheme(`primary.600`)}),Tg(G,I,J);return}if(s===`doc.menu.paragraph-t.indent.increase`||s===`doc.menu.paragraph-t.indent.decrease`){var l;o&&we(o);let e=(le==null||(l=le.paragraphStyle)==null||(l=l.indentFirstLine)==null?void 0:l.v)??0,t=s===`doc.menu.paragraph-t.indent.increase`?20:-20;await O.executeCommand(em.id,{paragraph:{indentFirstLine:{v:Math.max(0,e+t)}}}),Tg(G,I,J);return}if(s===`doc.menu.paragraph-t.insert-below.command`){if(!(r!=null&&r.moveRange))return;P.setInsertRange({unitId:e.unitId,startOffset:r.moveRange.endOffset,endOffset:r.moveRange.endOffset,segmentId:q==null?void 0:q.segmentId});let t=typeof(c==null?void 0:c.commandId)==`string`?c.commandId:void 0;t&&await O.executeCommand(t),Tg(G,I,J);return}if((r==null?void 0:r.kind)===`blockRange`){var u;let e=Xh((u=r.blockRange)==null?void 0:u.blockType),i=Dg(s,r,q);if(i){s===yn.id?await N.copy(t.SliceBodyType.copy,[i]):s===xn.id?await N.cut([i]):(we(i),await De(n,i)),Tg(G,I,J);return}if(s===e){await Oe(),Tg(G,I,J);return}if(s===Ei.id||s in Wh||s===ei.id||s===ri.id||s===ti.id){let e=await Oe();s!==Ei.id&&await De({...n,commandId:s,params:c},e),Tg(G,I,J);return}if(Zh.has(s)){a&&we(a),await De({...n,commandId:s,params:c},a),Tg(G,I,J);return}}if(s===Kh(de)&&s!==Ei.id){i&&we(i),await De({id:Ei.id},i),Tg(G,I,J);return}let d=tg(s)?Te():null;s&&jg(s,n)&&r!=null&&r.moveRange?P.setInsertRange({unitId:e.unitId,startOffset:r.moveRange.endOffset,endOffset:r.moveRange.endOffset,segmentId:(i==null?void 0:i.segmentId)??(q==null?void 0:q.segmentId)??``}):Qh.has(s)&&!$h.has(s)&&we(wg(s,i,o));try{await De({...n,commandId:s,params:ig(s,c,r,e.unitId)},wg(s,i,o))}finally{Ee(d)}Tg(G,I,J)},Ae=f&&(b===`left`||b===`right`)?Uh(g,b):void 0,je=m===`slash`?Pl:me;return(0,c.useEffect)(()=>()=>{B.current!=null&&(window.clearTimeout(B.current),B.current=null),D.current.cancel(),Bh(G,!1)},[]),(0,c.useEffect)(()=>{!re||ee.current>=re.nonce||(ee.current=re.nonce,D.current.cancel(),ye(),z.current=!1,xe(re))},[re]),K?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{"data-u-comp":`paragraph-menu`,ref:R,className:(0,s.clsx)(`univer-mr-1 univer-inline-flex univer-h-7 univer-cursor-pointer univer-items-center univer-gap-1 univer-rounded-md univer-border univer-border-gray-200 univer-bg-gray-0 univer-px-2 univer-py-0 univer-shadow-sm univer-transition-colors hover:univer-bg-gray-50 hover:univer-shadow-md dark:!univer-border-gray-700 dark:!univer-bg-gray-900 dark:hover:!univer-bg-gray-800`,{"univer-bg-gray-100 univer-shadow-md dark:!univer-bg-gray-800":f}),onMouseEnter:t=>{var n;(n=e.onPointerEnter)==null||n.call(e,t),Bh(G,!0),z.current=!0,Se()},onMouseLeave:()=>{z.current=!1,Bh(G,!1),Ce(),be()},onClick:e=>{e.preventDefault(),e.stopPropagation(),z.current=!0,D.current.openNow()},children:[(0,l.jsx)(pe,{className:(0,s.clsx)(Ih(fe),`univer-shrink-0 univer-text-gray-700 dark:!univer-text-gray-0`)}),(K==null?void 0:K.draggable)&&(0,l.jsx)(`button`,{type:`button`,className:`univer-group univer-flex univer-h-4 univer-w-2.5 univer-cursor-grab univer-items-center univer-justify-center univer-border-none univer-bg-transparent univer-p-0 active:univer-cursor-grabbing`,"aria-label":k.t(`docs-ui.doc.blockMenu.dragBlock`),title:k.t(`docs-ui.doc.blockMenu.dragBlock`),onPointerDown:t=>{var n,r;let i=(G==null?void 0:G.activeTarget)??ne,a=i==null?void 0:i.moveRange;if(!a||!(i!=null&&i.draggable))return;t.preventDefault(),t.stopPropagation(),(n=(r=t.currentTarget).setPointerCapture)==null||n.call(r,t.pointerId),ye(),z.current=!0,T.current=!0,G==null||G.setBlockMenuDragging(!0),w.current=a,C.current=null,y(null);let o=t.pointerId,s=e=>{if(e.pointerId!==o)return;e.preventDefault();let t=w.current;if(!t)return;let n=G==null?void 0:G.getDropTargetFromClientPoint(e.clientX,e.clientY,t);C.current=(n==null?void 0:n.targetOffset)??null,y((n==null?void 0:n.rect)??null)},c=t=>{window.removeEventListener(`pointermove`,s),window.removeEventListener(`pointerup`,l),window.removeEventListener(`pointercancel`,u),window.removeEventListener(`blur`,d);let n=w.current,r=C.current;w.current=null,C.current=null,T.current=!1,G==null||G.setBlockMenuDragging(!1),y(null),t&&n&&r!=null&&Lh(F,{unitId:e.unitId,sourceRange:n,targetOffset:r})&&O.executeCommand(wn.id,{unitId:e.unitId,sourceRange:n,targetOffset:r})},l=e=>{e.pointerId===o&&(e.preventDefault(),c(!0))},u=e=>{e.pointerId===o&&c(!1)},d=()=>{c(!1)};window.addEventListener(`pointermove`,s),window.addEventListener(`pointerup`,l),window.addEventListener(`pointercancel`,u),window.addEventListener(`blur`,d,{once:!0})},children:(0,l.jsx)(Ng,{})})]}),f&&Ae&&(0,l.jsx)(`div`,{"aria-hidden":`true`,className:`univer-fixed univer-z-[1019] univer-bg-transparent`,style:Ae,onMouseEnter:t=>{var n;(n=e.onPointerEnter)==null||n.call(e,t),Bh(G,!0),z.current=!0,ye()},onMouseLeave:()=>{z.current=!1,Bh(G,!1),be()}}),f&&(0,l.jsx)(i.RectPopup,{portal:!0,anchorRect$:_e,direction:b,children:(0,l.jsx)(`section`,{onMouseEnter:t=>{var n;(n=e.onPointerEnter)==null||n.call(e,t),Bh(G,!0),z.current=!0,ye()},onMouseLeave:()=>{z.current=!1,Bh(G,!1),be()},children:(0,l.jsx)(i.ContextMenuPanel,{className:`univer-w-[212px]`,menuType:je,flowQuickGroups:!0,activeItemIds:(K==null?void 0:K.kind)===`table`?void 0:he,hiddenItemIds:m===`slash`||(K==null?void 0:K.kind)===`table`?void 0:ge,autoFocus:m===`slash`,autoFocusTarget:m===`slash`?`container`:void 0,suppressHoverUntilPointerMove:m===`slash`,onMenuPointerEnter:()=>{Bh(G,!0),z.current=!0,ye()},onMenuPointerLeave:()=>{z.current=!1,Bh(G,!1),be()},onCancel:()=>{Tg(G,I,J)},onOptionSelect:async e=>{let n=S.current??Hh(q),{commandId:r,params:i}=ng(e,n),a=(G==null?void 0:G.activeTarget)??ne;if((a==null?void 0:a.kind)===`table`&&r&&n){let o={...n,segmentId:n.segmentId??``,collapsed:!1},s={startOffset:a.moveRange.endOffset,endOffset:a.moveRange.endOffset,collapsed:!0,segmentId:n.segmentId??``};if(r===vn.id||r===vn.name){await N.copy(t.SliceBodyType.copy,[o]),Tg(G,I,J);return}if(r===Sn.id){j.replaceDocRanges([s],void 0,!1),await O.executeCommand(Sn.id),Tg(G,I,J);return}r===Ua.id?j.replaceDocRanges([o],void 0,!1):(e.id===`doc.menu.insert-bellow`||r!==`doc.menu.insert-bellow`)&&j.replaceDocRanges([s],void 0,!1),O&&r&&O.executeCommand(r,r===Ua.id?{...i,targetRange:o}:i),Tg(G,I,J);return}await ke(e)}})})}),v&&(0,l.jsx)(`div`,{className:`univer-pointer-events-none univer-fixed univer-z-[10000] univer-h-0.5 univer-rounded-full univer-bg-primary-600`,style:{left:v.left,top:v.top,width:Math.max(60,v.right-v.left)}})]}):null}let kg=({popup:e})=>(0,l.jsx)(Og,{popup:e}),Ag=({popup:e})=>(0,l.jsx)(Og,{popup:e,tableBlockOnly:!0});function jg(e,t){if(t.id===`doc.menu.insert-bellow`||typeof t.id==`string`&&t.id.toLowerCase().includes(`below`))return!0;let n=e.toLowerCase();return n.includes(`insert`)&&(n.includes(`below`)||n.includes(`bellow`))||n.includes(`insert`)&&n.includes(`image`)||n.includes(`table`)&&n.includes(`create`)?!0:n===`doc.command.create-table`||n===`doc.operation.create-table`||n===`doc.menu.paragraph-t.insert-below.command`}let Mg=[`top-left`,`top-right`,`middle-left`,`middle-right`,`bottom-left`,`bottom-right`];function Ng(){return(0,l.jsx)(`span`,{className:`univer-grid univer-h-3.5 univer-w-2 univer-grid-cols-2 univer-place-items-center univer-gap-x-0.5 univer-gap-y-px`,"aria-hidden":`true`,children:Mg.map(e=>(0,l.jsx)(`span`,{className:`univer-size-0.5 univer-rounded-full univer-bg-gray-400 univer-transition-colors group-hover:univer-bg-gray-500 dark:!univer-bg-gray-500 dark:group-hover:!univer-bg-gray-300`},e))})}function Pg(e){let t=e[0];return e.every(e=>e===t)?t:void 0}function Fg(e){var t;return((t=e.columnProperties)==null?void 0:t.length)||1}function Ig(e){var t;return((t=e.columnProperties)==null||(t=t[0])==null?void 0:t.paddingEnd)??18}function Lg(e,n){return{columnCount:Pg(e.map(Fg)),columnGap:Pg(e.map(Ig)),separatorType:Pg(e.map(e=>e.columnSeparatorType??t.ColumnSeparatorType.NONE)),sectionType:Pg(e.map(e=>e.sectionType??t.SectionType.SECTION_TYPE_UNSPECIFIED)),pageWidth:Pg(e.map(e=>{var t,r;return((t=e.pageSize)==null?void 0:t.width)??((r=n.pageSize)==null?void 0:r.width)})),pageHeight:Pg(e.map(e=>{var t,r;return((t=e.pageSize)==null?void 0:t.height)??((r=n.pageSize)==null?void 0:r.height)})),pageOrient:Pg(e.map(e=>e.pageOrient??n.pageOrient)),marginTop:Pg(e.map(e=>e.marginTop??n.marginTop??0)),marginBottom:Pg(e.map(e=>e.marginBottom??n.marginBottom??0)),marginLeft:Pg(e.map(e=>e.marginLeft??n.marginLeft??0)),marginRight:Pg(e.map(e=>e.marginRight??n.marginRight??0)),pageNumberStart:Pg(e.map(e=>e.pageNumberStart??n.pageNumberStart??1))}}function Rg(e,t,r){return e.map(e=>{let i=`columnCount`in r?r.columnCount:Fg(e),a=`columnGap`in r?r.columnGap:Ig(e);return{sectionId:e.sectionId,config:{columnProperties:(0,n.createSectionColumnProperties)(t,e,i,a)}}})}function zg(e,n,r){return e.map(e=>{let i=e.pageOrient??n.pageOrient??t.PageOrientType.PORTRAIT,a=e.pageSize??n.pageSize;return{sectionId:e.sectionId,config:{pageOrient:r,...i!==r&&(a==null?void 0:a.width)!=null&&a.height!=null?{pageSize:{width:a.height,height:a.width}}:{}}}})}function Bg(e,t){let r=e.getBody();if(!r||t.length===0||t.some(e=>!!e.segmentId))return[];let i=(0,n.getTopLevelSectionBreaks)(r);return i.filter((e,n)=>{let r=n===0?0:i[n-1].startIndex+1;return t.some(t=>{let n=Math.min(t.startOffset,t.endOffset),i=Math.max(t.startOffset,t.endOffset);return n<=e.startIndex&&i>=r})})}function Vg(e,t,n,r){let i=n.findIndex(e=>e.sectionId===r);!t||i<0||e.navigateToSectionEnd(t.getUnitId(),i===0?0:n[i-1].startIndex+1,n[i].startIndex)}function Hg(){let e=(0,i.useDependency)(t.ICommandService),r=(0,i.useDependency)(t.IUniverInstanceService),o=(0,i.useDependency)(n.DocSelectionManagerService),s=(0,i.useDependency)(Zo),l=(0,i.useObservable)((0,c.useMemo)(()=>r.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC),[r])),u=()=>(l==null?void 0:l.getDocumentStyle().documentFlavor)===t.DocumentFlavor.TRADITIONAL?Bg(l,o.getDocRanges()):[],d=(0,i.useObservable)(l?()=>(0,a.combineLatest)([o.textSelection$.pipe((0,a.startWith)(void 0)),l.change$.pipe((0,a.startWith)(void 0))]).pipe((0,a.map)(u)):null,u(),!1,[l,o]),f=(l==null?void 0:l.getDocumentStyle())??{},p=Lg(d,f),m=l==null?void 0:l.getBody(),h=(l==null?void 0:l.getDocumentStyle().documentFlavor)===t.DocumentFlavor.TRADITIONAL&&m?(0,n.getTopLevelSectionBreaks)(m):[],g=t=>!l||t.length===0?Promise.resolve(!1):e.executeCommand(n.UpdateDocumentSectionCommand.id,{unitId:l.getUnitId(),updates:t}),_=e=>g(d.map(t=>({sectionId:t.sectionId,config:e})));return{valid:!!(l&&d.length>0),selectedCount:d.length,sectionOptions:h.map((e,t)=>({label:`#${t+1}`,value:e.sectionId})),selectedSectionId:d.length===1?d[0].sectionId:void 0,...p,selectSection(e){Vg(s,l??void 0,h,e)},setColumnCount(e){let t=Math.max(1,Math.round(e));return g(l?Rg(d,l.getDocumentStyle(),{columnCount:t}):[])},setColumnGap(e){let t=Math.max(0,e);return g(l?Rg(d,l.getDocumentStyle(),{columnGap:t}):[])},setSeparatorType(e){return _({columnSeparatorType:e})},setSectionType(e){return _({sectionType:e})},setPageWidth(e){return g(d.map(t=>({sectionId:t.sectionId,config:{pageSize:{...f.pageSize,...t.pageSize,width:Math.max(1,e)}}})))},setPageHeight(e){return g(d.map(t=>({sectionId:t.sectionId,config:{pageSize:{...f.pageSize,...t.pageSize,height:Math.max(1,e)}}})))},setPageOrient(e){return g(zg(d,f,e))},setMarginTop(e){return _({marginTop:Math.max(0,e)})},setMarginBottom(e){return _({marginBottom:Math.max(0,e)})},setMarginLeft(e){return _({marginLeft:Math.max(0,e)})},setMarginRight(e){return _({marginRight:Math.max(0,e)})},setPageNumberStart(e){return _({pageNumberStart:Math.max(1,Math.round(e))})}}}function Ug(e){return(0,l.jsxs)(`div`,{className:`univer-grid univer-min-h-8 univer-items-center univer-gap-3`,style:{gridTemplateColumns:`minmax(0, 1fr) minmax(140px, 160px)`},children:[(0,l.jsxs)(`div`,{className:`univer-min-w-0 univer-text-xs univer-leading-5 univer-text-gray-900 dark:!univer-text-gray-100`,children:[e.label,e.unit]}),(0,l.jsx)(`div`,{className:`univer-w-full univer-min-w-0`,children:e.children})]})}function Wg(){let e=(0,i.useDependency)(t.LocaleService),n=(0,i.useDependency)(Zo),r=Hg();return(0,i.useObservable)(e.currentLocale$),(0,c.useEffect)(()=>{r.valid||n.closePanel()},[n,r.valid]),r.valid?(0,l.jsxs)(`div`,{className:`univer-box-border univer-w-full`,children:[r.selectedCount>1&&(0,l.jsx)(`div`,{className:`univer-mb-4 univer-text-xs univer-text-gray-600 dark:!univer-text-gray-300`,children:e.t(`docs-ui.doc.sectionSetting.selectedSections`,`${r.selectedCount}`)}),(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-3`,children:[(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.slider.sectionSetting`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.selectedSectionId??``,options:[...r.selectedSectionId==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],...r.sectionOptions],onChange:r.selectSection})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.columnCount`),children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.columnCount`),className:`univer-w-full`,min:1,max:12,step:1,precision:0,value:r.columnCount,onChange:e=>e!=null&&r.setColumnCount(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.columnGap`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.columnGap`),className:`univer-w-full`,min:0,max:1e3,step:1,precision:1,value:r.columnGap,onChange:e=>e!=null&&r.setColumnGap(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.columnSeparator`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.separatorType==null?``:`${r.separatorType}`,options:[...r.separatorType==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],{label:e.t(`docs-ui.doc.sectionSetting.none`),value:`${t.ColumnSeparatorType.NONE}`},{label:e.t(`docs-ui.doc.sectionSetting.betweenColumns`),value:`${t.ColumnSeparatorType.BETWEEN_EACH_COLUMN}`}],onChange:e=>r.setSeparatorType(Number(e))})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.sectionStart`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.sectionType==null?``:`${r.sectionType}`,options:[...r.sectionType==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],{label:e.t(`docs-ui.doc.sectionSetting.unspecified`),value:`${t.SectionType.SECTION_TYPE_UNSPECIFIED}`},{label:e.t(`docs-ui.doc.sectionSetting.continuous`),value:`${t.SectionType.CONTINUOUS}`},{label:e.t(`docs-ui.doc.sectionSetting.nextColumn`),value:`${t.SectionType.NEXT_COLUMN}`},{label:e.t(`docs-ui.doc.sectionSetting.nextPage`),value:`${t.SectionType.NEXT_PAGE}`},{label:e.t(`docs-ui.doc.sectionSetting.evenPage`),value:`${t.SectionType.EVEN_PAGE}`},{label:e.t(`docs-ui.doc.sectionSetting.oddPage`),value:`${t.SectionType.ODD_PAGE}`}],onChange:e=>r.setSectionType(Number(e))})}),(0,l.jsx)(`div`,{className:`univer-pt-2 univer-text-sm univer-font-medium`,children:e.t(`docs-ui.doc.sectionSetting.pageSetup`)}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.pageWidth`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.pageWidth`),className:`univer-w-full`,min:1,step:1,precision:1,value:r.pageWidth,onChange:e=>e!=null&&r.setPageWidth(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.pageHeight`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.pageHeight`),className:`univer-w-full`,min:1,step:1,precision:1,value:r.pageHeight,onChange:e=>e!=null&&r.setPageHeight(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.page-settings.orientation`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.pageOrient==null?``:`${r.pageOrient}`,options:[...r.pageOrient==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],{label:e.t(`docs-ui.page-settings.portrait`),value:`${t.PageOrientType.PORTRAIT}`},{label:e.t(`docs-ui.page-settings.landscape`),value:`${t.PageOrientType.LANDSCAPE}`}],onChange:e=>r.setPageOrient(Number(e))})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.page-settings.top`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.top`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginTop,onChange:e=>e!=null&&r.setMarginTop(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.page-settings.bottom`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.bottom`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginBottom,onChange:e=>e!=null&&r.setMarginBottom(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.page-settings.left`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.left`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginLeft,onChange:e=>e!=null&&r.setMarginLeft(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.page-settings.right`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.right`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginRight,onChange:e=>e!=null&&r.setMarginRight(e)})}),(0,l.jsx)(Ug,{label:e.t(`docs-ui.doc.sectionSetting.pageNumberStart`),children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.pageNumberStart`),className:`univer-w-full`,min:1,step:1,precision:0,value:r.pageNumberStart,onChange:e=>e!=null&&r.setPageNumberStart(e)})})]})]}):null}function Gg(){let e=(0,i.useDependency)(t.ICommandService),[r,a]=(0,c.useState)(()=>(0,t.generateRandomId)(4));return(0,c.useEffect)(()=>{let r=e.onCommandExecuted(e=>{e.id===n.SetTextSelectionsOperation.id?e.params.ranges.length>0&&a((0,t.generateRandomId)(4)):e.id===n.RichTextEditingMutation.id&&a((0,t.generateRandomId)(4))});return()=>r.dispose()},[e]),(0,l.jsx)(Wg,{},r)}let Kg=({handleRowColChange:e,tableCreateParams:n})=>{let r=(0,i.useDependency)(t.LocaleService),[a,o]=(0,c.useState)(3),[u,d]=(0,c.useState)(5);function f(t,n){o(t),d(n),e(t,n)}return(0,c.useEffect)(()=>{o(n.rowCount),d(n.colCount)},[n]),(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-justify-between univer-gap-2`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-gap-2`,children:[(0,l.jsx)(`span`,{children:r.t(`docs-ui.toolbar.table.rowCount`)}),(0,l.jsx)(s.InputNumber,{className:`univer-w-28`,min:1,max:20,precision:0,value:a,onChange:e=>{f(e,u)}})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-gap-2`,children:[(0,l.jsx)(`span`,{children:r.t(`docs-ui.toolbar.table.colCount`)}),(0,l.jsx)(s.InputNumber,{className:`univer-w-28`,min:1,max:20,precision:0,value:u,onChange:e=>{f(a,e)}})]})]})},qg=class extends t.Disposable{constructor(e,t){super(),this._componentManager=e,this._iconManager=t,this._registerComponents(),this._registerParts(),this._registerIcons()}_registerParts(){let e=this._componentManager;this.disposeWithMe(e.register($a,Kg))}_registerIcons(){this.disposeWithMe(this._iconManager.register({AlignTextBothIcon:zu,AddImageIcon:Lu,BoldIcon:Vu,CopyDoubleIcon:of,ColumnIcon:Gu,CutIcon:qu,DeleteColumnDoubleIcon:cf,DeleteIcon:Yu,DeleteRowDoubleIcon:uf,DeleteTableDoubleIcon:ff,DocSettingIcon:Zu,FontColorDoubleIcon:mf,GridIcon:$u,H1Icon:td,H2Icon:rd,H3Icon:ad,H4Icon:sd,H5Icon:ld,HeaderFooterIcon:dd,HorizontallyIcon:pd,InsertDoubleIcon:gf,InsertRowAboveDoubleIcon:vf,InsertRowBelowDoubleIcon:bf,ItalicIcon:hd,KeyboardIcon:_d,LeftInsertColumnDoubleIcon:Sf,LeftJustifyingIcon:yd,LineIndentDecreaseIcon:xd,LineIndentIncreaseIcon:Cd,MenuIcon:Td,TextTypeIcon:Zd,NoColorDoubleIcon:wf,OrderIcon:jd,PaintBucketDoubleIcon:Ef,PasteSpecialDoubleIcon:Of,ReduceDoubleIcon:Af,ReduceIcon:Nd,RightInsertColumnDoubleIcon:Mf,RightJustifyingIcon:Fd,ShapeIcon:Ld,SmileIcon:zd,StrikethroughIcon:Ud,SubscriptIcon:Gd,SuperscriptIcon:qd,SymbolsIcon:Yd,TitleTypeIcon:dm,SubtitleTypeIcon:fm,TodoListDoubleIcon:Pf,UnderlineIcon:$d,UnorderIcon:tf,DefaultTextColorIcon:gm,HeaderTextColorIcon:hm,MoreRightIcon:kd,MoreLeftIcon:Dd,"DocParagraphTextColorSwatchIcon.0":ym,"DocParagraphTextColorSwatchIcon.1":bm,"DocParagraphTextColorSwatchIcon.2":xm,"DocParagraphTextColorSwatchIcon.3":Sm,"DocParagraphTextColorSwatchIcon.4":Cm,"DocParagraphTextColorSwatchIcon.5":wm,"DocParagraphTextColorSwatchIcon.6":Tm,"DocParagraphBackgroundColorSwatchIcon.0":Em,"DocParagraphBackgroundColorSwatchIcon.1":Dm,"DocParagraphBackgroundColorSwatchIcon.2":Om,"DocParagraphBackgroundColorSwatchIcon.3":km,"DocParagraphBackgroundColorSwatchIcon.4":Am,"DocParagraphBackgroundColorSwatchIcon.5":jm,"DocParagraphBackgroundColorSwatchIcon.6":Mm,"DocParagraphBackgroundColorSwatchIcon.7":Nm,"DocParagraphBackgroundColorSwatchIcon.8":Pm,"DocParagraphBackgroundColorSwatchIcon.9":Fm,"DocParagraphBackgroundColorSwatchIcon.10":Im,"DocParagraphBackgroundColorSwatchIcon.11":Lm,"DocParagraphBackgroundColorSwatchIcon.12":Rm,"DocParagraphBackgroundColorSwatchIcon.13":zm,"DocParagraphBackgroundColorSwatchIcon.14":Bm,"DocParagraphBackgroundColorSwatchIcon.15":Vm}))}_registerComponents(){this._componentManager.get(`COMPONENT_DOC_HEADER_FOOTER_PANEL`)||this.disposeWithMe(this._componentManager.register(Ho,um)),this.disposeWithMe(this._componentManager.register(`doc_ui_paragraph-setting-panel`,vh)),this.disposeWithMe(this._componentManager.register(Xo,Gg)),[[Ws,Hs],[Us,Bs],[Hm,kg],[Um,Ag],[tm,im],[ss,os]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}};qg=A([k(0,(0,t.Inject)(i.ComponentManager)),k(1,(0,t.Inject)(i.IconManager))],qg);function Jg(e){return Object.prototype.hasOwnProperty.call(t.QuickListTypeMap,e)}function Yg(e){return Object.prototype.hasOwnProperty.call(bi,e)}let Xg=class extends t.Disposable{constructor(e,t){super(),this._docAutoFormatService=e,this._renderManagerService=t,this._initListTabAutoFormat(),this._initSpaceAutoFormat(),this._initDefaultEnterFormat(),this._initExitListAutoFormat()}_initListTabAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:M.id,match:e=>{let{selection:t,paragraphs:n,unit:r}=e;if(n.length===1&&t.startOffset===n[0].paragraphStart&&n[0].bullet){var i;let e=(i=r.getBody())==null?void 0:i.paragraphs,t=e==null?void 0:e.filter(e=>{var t;return((t=e.bullet)==null?void 0:t.listId)===n[0].bullet.listId});return(t==null?void 0:t.findIndex(e=>e.startIndex===n[0].startIndex))!==0}else if(n.length>1&&n.some(e=>e.bullet))return!0;return!1},getMutations(e){let t=e.commandParams;return[{id:$r.id,params:{type:t!=null&&t.shift?-1:1}}]},priority:100})),this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:M.id,match:e=>{let{selection:t,unit:r}=e,{startNodePosition:i,endNodePosition:a}=t,o=this._renderManagerService.getRenderUnitById(r.getUnitId()),s=o==null?void 0:o.with(n.DocSkeletonManagerService).getSkeleton();return s!=null&&!!(i&&a&&Ji(s,i,a)||i&&!a&&i.path.indexOf(`cells`)>-1)},getMutations(e){let t=e.commandParams;return[{id:Qa.id,params:{shift:!!(t!=null&&t.shift)}}]},priority:99}))}_initSpaceAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:N.id,match:e=>{var t;let{selection:n,paragraphs:r,unit:i}=e;if(!n.collapsed||r.length!==1||!n.collapsed)return!1;let a=(t=i.getBody())==null?void 0:t.dataStream.slice(r[0].paragraphStart,n.startOffset-1);return!!(a&&(Jg(a)||Yg(a)))},getMutations(e){var n;let{paragraphs:r,unit:i,selection:a}=e,o=(n=i.getBody())==null?void 0:n.dataStream.slice(r[0].paragraphStart,a.startOffset-1);if(o&&Jg(o)){let e=t.QuickListTypeMap[o];return[{id:ii.id,params:{listType:e,paragraph:r[0]}}]}if(o&&Yg(o)){let e=bi[o];return[{id:yi.id,params:{value:e}}]}return[]}}))}_initExitListAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:P.id,match:e=>{let{paragraphs:t}=e;return!!(t.length===1&&t[0].bullet&&t[0].paragraphStart===t[0].paragraphEnd)},getMutations:e=>{let t=e.paragraphs[0].bullet;return t?t.nestingLevel>0?[{id:$r.id,params:{type:-1}}]:[{id:Xr.id,params:{listType:e.paragraphs[0].bullet.listType}}]:[]}}))}_initDefaultEnterFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:P.id,match:()=>!0,getMutations(){return[{id:L.id}]},priority:-9999}))}};Xg=A([k(0,(0,t.Inject)(j)),k(1,r.IRenderManagerService)],Xg);function Zg(e,t){let{radius:n,width:r,height:i}=t;n??=0,r??=30,i??=30;let a=0;a=Math.min(n,r/2,i/2),e.beginPath(),e.moveTo(0,0),e.lineTo(r,0),e.lineTo(r,i-a),e.arc(r-a,i-a,a,0,Math.PI/2,!1),e.lineTo(0,i),e.lineTo(0,0),e.closePath(),t.fill&&(e.save(),e.fillStyle=t.fill,t.fillRule===`evenodd`?e.fill(`evenodd`):e.fill(),e.restore())}var Qg=class e extends r.Shape{constructor(e,t){super(e,t),O(this,`color`,void 0),O(this,`text`,void 0),this.color=t==null?void 0:t.color,this.text=t==null?void 0:t.text}static drawWith(e,t){let{text:n,color:r}=t;e.save(),e.font=`13px Source Han Sans CN`;let i=e.measureText(n).width;if(Zg(e,{height:18,width:Math.min(i+12,200),radius:4,fill:r,evented:!1}),e.fillStyle=`rgba(58, 96, 247, 1)`,i>188){let t=``,r=0;for(let i of n){let n=e.measureText(i).width;if(r+n<=188-e.measureText(`...`).width)t+=i,r+=n;else{t+=`...`;break}}e.fillText(t,6,14)}else e.fillText(n,6,14);e.restore()}_draw(t){e.drawWith(t,this)}};let $g=`alpha(gray.0, 0.5)`,e_=`primary.600`,t_=`alpha(primary.600, 0.08)`;function n_(e,i,a,o){let{sectionId:s,config:c}=am(e.getDataModel().getSnapshot(),o),{defaultHeaderId:l,defaultFooterId:u,evenPageHeaderId:d,evenPageFooterId:f,firstPageHeaderId:p,firstPageFooterId:m,evenAndOddHeaders:h,useFirstPageHeaderFooter:g}=c,_=o?o.pageNumber===o.pageNumberStart:a===0,v=o?o.pageNumber%2==0:a%2==1;if(i===r.DocumentEditArea.BODY)return{createType:null,headerFooterId:null,sectionId:s};let y=i===r.DocumentEditArea.HEADER;if(!y&&i!==r.DocumentEditArea.FOOTER)throw Error(`Invalid editArea: ${i}`);let b=y?{first:[p,n.HeaderFooterType.FIRST_PAGE_HEADER],even:[d,n.HeaderFooterType.EVEN_PAGE_HEADER],default:[l,n.HeaderFooterType.DEFAULT_HEADER]}:{first:[m,n.HeaderFooterType.FIRST_PAGE_FOOTER],even:[f,n.HeaderFooterType.EVEN_PAGE_FOOTER],default:[u,n.HeaderFooterType.DEFAULT_FOOTER]},[x,S]=g===t.BooleanNumber.TRUE&&_?b.first:h===t.BooleanNumber.TRUE&&v?b.even:b.default;return{createType:x?null:S,headerFooterId:x??null,sectionId:s}}let r_=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s){super(),this._context=e,this._commandService=t,this._editorService=n,this._instanceSrv=r,this._renderManagerService=i,this._docSkeletonManagerService=a,this._docSelectionRenderService=o,this._localeService=s,O(this,`_loadedMap`,new WeakSet),this._initialize()}_initialize(){this._init(),this._drawHeaderFooterLabel(),this._listenSwitchMode()}dispose(){super.dispose()}_listenSwitchMode(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(n.RichTextEditingMutation.id===e.id){let e=this._context.unit,n=this._docSkeletonManagerService.getViewModel().getEditArea(),i=e.getSnapshot().documentStyle.documentFlavor;n!==r.DocumentEditArea.BODY&&i===t.DocumentFlavor.MODERN&&this._commandService.executeCommand(qo.id,{unitId:this._context.unitId})}}))}_init(){let{unitId:e}=this._context,t=f(this._context);t!=null&&t.document!=null&&(this._loadedMap.has(t.document)||(this._initialMain(e),this._loadedMap.add(t.document)))}_initialMain(e){let{document:n}=f(this._context);this.disposeWithMe(n.onDblclick$.subscribeEvent(async i=>{var a;if(this._isEditorReadOnly(e)||!this._isTraditionalMode())return;let{offsetX:o,offsetY:s}=i,{pageLayoutType:c=r.PageLayoutType.VERTICAL,pageMarginLeft:l,pageMarginTop:u}=n.getOffsetConfig(),d=this._getTransformCoordForDocumentOffset(o,s);if(d==null)return;let f=this._docSkeletonManagerService.getViewModel(),p=this._docSkeletonManagerService.getSkeleton(),m=f.getEditArea(),{editArea:h,pageNumber:g}=p.findEditAreaByCoord(d,c,l,u);if(m===h&&(h===r.DocumentEditArea.BODY||this._docSelectionRenderService.getSegmentPage()===g))return;f.setEditArea(h);let{createType:_,headerFooterId:v,sectionId:y}=n_(f,h,g,(a=p.getSkeletonData())==null?void 0:a.pages[g]);if(h===r.DocumentEditArea.BODY)this._docSelectionRenderService.setSegment(``),this._docSelectionRenderService.setSegmentPage(-1),this._docSelectionRenderService.setCursorManually(o,s);else if(_!=null){let n=(0,t.generateRandomId)(6);this._docSelectionRenderService.setSegment(n),this._docSelectionRenderService.setSegmentPage(g),await this._commandService.executeCommand(Go.id,{unitId:e,createType:_,segmentId:n,sectionId:y})}else v!=null&&(this._docSelectionRenderService.setSegment(v),this._docSelectionRenderService.setSegmentPage(g),this._docSelectionRenderService.setCursorManually(o,s))}))}_getTransformCoordForDocumentOffset(e,t){let{document:n,scene:i}=f(this._context),{documentTransform:a}=n.getOffsetConfig(),o=i.getViewports()[0];if(o==null)return;let s=o.transformVector2SceneCoord(r.Vector2.FromArray([e,t]));return a.clone().invert().applyPoint(s)}_drawHeaderFooterLabel(){let e=this._localeService;this.disposeWithMe(this._instanceSrv.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).subscribe(n=>{if(n==null)return;let i=n.getUnitId(),a=this._renderManagerService.getRenderUnitById(i);if(this._editorService.isEditor(i)||this._instanceSrv.getUnit(i,t.UniverInstanceType.UNIVER_DOC)==null||a==null)return;let{mainComponent:o}=a,s=o;this.disposeWithMe((0,t.toDisposable)(s.pageRender$.subscribe(t=>{if(this._editorService.isEditor(i)||!this._isTraditionalMode())return;let n=this._docSkeletonManagerService.getViewModel().getEditArea()===r.DocumentEditArea.BODY,{page:a,pageLeft:o,pageTop:s,ctx:c}=t,{pageWidth:l,pageHeight:u,marginTop:d,marginBottom:f}=a;if(c.save(),c.translate(o-.5,s-.5),n?(r.Rect.drawWith(c,{left:0,top:0,width:l,height:d,fill:$g}),c.save(),c.translate(0,u-f),r.Rect.drawWith(c,{left:0,top:0,width:l,height:f,fill:$g}),c.restore()):(c.save(),c.translate(0,d),r.Rect.drawWith(c,{left:0,top:d,width:l,height:u-d-f,fill:$g}),c.restore()),!n){let t={dataArray:[{command:`M`,points:[0,d]},{command:`L`,points:[l,d]}],strokeWidth:1,stroke:e_},n={dataArray:[{command:`M`,points:[0,u-f]},{command:`L`,points:[l,u-f]}],strokeWidth:1,stroke:e_};r.Path.drawWith(c,t),r.Path.drawWith(c,n),c.translate(0,d+1),Qg.drawWith(c,{text:e.t(`docs-ui.headerFooter.header`),color:t_}),c.translate(0,u-d-f),Qg.drawWith(c,{text:e.t(`docs-ui.headerFooter.footer`),color:t_})}c.restore()})))}))}_isEditorReadOnly(e){let t=this._editorService.getEditor(e);return t?t.isReadOnly():!1}_isTraditionalMode(){return this._context.unit.getSnapshot().documentStyle.documentFlavor===t.DocumentFlavor.TRADITIONAL}};r_=A([k(1,t.ICommandService),k(2,ho),k(3,t.IUniverInstanceService),k(4,r.IRenderManagerService),k(5,(0,t.Inject)(n.DocSkeletonManagerService)),k(6,(0,t.Inject)(Y)),k(7,(0,t.Inject)(t.LocaleService))],r_);function i_(e,t){let{ed:n}=e,{skeTables:r}=t,i=null;for(let e of r.values())if(e.st===n+1){i=e;break}return i}function a_(e,t){let{st:n}=e,{skeTables:r}=t,i=null;for(let e of r.values())if(e.ed===n-1){i=e;break}return i}function o_(e){return e.sections[0].columns[0].lines[0]}function s_(e){let t=(0,r.getLastColumn)(e);return t.lines[t.lines.length-1]}let c_=class extends t.Disposable{constructor(e,t,n,r){super(),this._univerInstanceService=e,this._renderManagerService=t,this._textSelectionManagerService=n,this._commandService=r,O(this,`_onInputSubscription`,void 0),this._commandExecutedListener()}dispose(){var e;super.dispose(),(e=this._onInputSubscription)==null||e.unsubscribe()}_commandExecutedListener(){let e=[no.id,ro.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(!e.includes(t.id))return;let n=t.params;switch(t.id){case no.id:return this._handleMoveCursor(n.direction,n.granularity??`character`);case ro.id:return this._handleShiftMoveSelection(n.direction,n.granularity??`character`);default:throw Error(`Unknown command`)}}))}_handleShiftMoveSelection(e,r=`character`){var i;let a=this._textSelectionManagerService.getActiveTextRange(),o=this._textSelectionManagerService.getTextRanges(),s=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(s==null)return;let c=this._renderManagerService.getRenderUnitById(s.getUnitId()),l=c==null?void 0:c.with(n.DocSkeletonManagerService).getSkeleton(),u=c?f(c):null;if(a==null||l==null||u==null)return;let{startOffset:d,endOffset:p,style:m,collapsed:h,direction:g,segmentId:_,startNodePosition:v,endNodePosition:y,segmentPage:b}=a,x=_??``,S=b??-1;if(o.length>1){let n=1/0,r=-1/0;for(let e of o)n=Math.min(n,e.startOffset),r=Math.max(r,e.endOffset);this._textSelectionManagerService.replaceDocRanges([{startOffset:e===t.Direction.LEFT||e===t.Direction.UP?r:n,endOffset:e===t.Direction.LEFT||e===t.Direction.UP?n:r,style:m}],void 0,!1);return}let C=h||g===t.RANGE_DIRECTION.FORWARD?d:p,w=h||g===t.RANGE_DIRECTION.FORWARD?p:d,T=(i=s.getSelfOrHeaderFooterModel(x))==null?void 0:i.getBody();if(T==null)return;let E=T.dataStream.length??1/0,D=s.getCustomRanges()??[];if(r!==`character`){let t=this._getCursorOffsetByGranularity(l,w,e,r,x,S,E,T.dataStream);if(t==null||t===w)return;let n=this._normalizeRenderableCursorOffset(l,T.dataStream,D,t,e,x,S);if(n==null||n===w)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:n,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),n);return}if(e===t.Direction.LEFT||e===t.Direction.RIGHT){let n=l.findNodeByCharIndex(w-1,_,b),r=l.findNodeByCharIndex(w,_,b);w=e===t.Direction.RIGHT?w+r.count:w-((n==null?void 0:n.count)??0),w=Math.min(E-2,Math.max(0,w)),this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:w,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),w)}else{let n=l.findNodeByCharIndex(w,_,b),r=u.document.getOffsetConfig(),i=h?v:g===t.RANGE_DIRECTION.FORWARD?y:v,a=this._getTopOrBottomPosition(l,n,i,e===t.Direction.DOWN,!0);if(a==null){let n=this._normalizeRenderableCursorOffset(l,T.dataStream,D,e===t.Direction.UP?0:E-2,e,x,S);if(n==null||n===w)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:n,style:m}],void 0,!1);return}let o=new zi(r,l).getRangePointData(a,a).cursorList[0],c=this._normalizeRenderableCursorOffset(l,T.dataStream,D,o.endOffset,e,x,S);if(c==null||c===w)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:c,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),c)}}_handleMoveCursor(e,r=`character`){var i;let a=this._textSelectionManagerService.getActiveTextRange(),o=this._textSelectionManagerService.getTextRanges(),s=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(s==null)return!1;let c=this._renderManagerService.getRenderUnitById(s.getUnitId()),l=c==null?void 0:c.with(n.DocSkeletonManagerService).getSkeleton(),u=c?f(c):null;if(a==null||l==null||u==null||o==null)return;let{startOffset:d,endOffset:p,style:m,collapsed:h,segmentId:g,startNodePosition:_,endNodePosition:v,segmentPage:y}=a,b=g??``,x=y??-1,S=(i=s.getSelfOrHeaderFooterModel(b))==null?void 0:i.getBody();if(S==null)return;let C=S.dataStream.length??1/0,w=s.getCustomRanges()??[];if(r!==`character`){let n;if(!a.collapsed||o.length>1){let r=1/0,i=-1/0;for(let e of o)r=Math.min(r,e.startOffset),i=Math.max(i,e.endOffset);n=e===t.Direction.LEFT||e===t.Direction.UP?r:i}else n=e===t.Direction.LEFT||e===t.Direction.UP?d:p;let i=this._getCursorOffsetByGranularity(l,n,e,r,b,x,C,S.dataStream);if(i==null||(i=this._normalizeRenderableCursorOffset(l,S.dataStream,w,i,e,b,x),i==null))return;this._textSelectionManagerService.replaceDocRanges([{startOffset:i,endOffset:i,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),i);return}if(e===t.Direction.LEFT||e===t.Direction.RIGHT){let n;if(!a.collapsed||o.length>1){let r=1/0,i=-1/0;for(let e of o)r=Math.min(r,e.startOffset),i=Math.max(i,e.endOffset);n=e===t.Direction.LEFT?r:i}else{let r=l.findNodeByCharIndex(d-1,g,y),i=l.findNodeByCharIndex(d,g,y),a=l.findNodeByCharIndex(d+1,g,y);n=e===t.Direction.LEFT?Math.max(0,d-((r==null?void 0:r.count)??1)):Math.min(C-2,p+i.count+ +((a==null?void 0:a.streamType)===t.DataStreamTreeTokenType.SECTION_BREAK))}let r=[...this._getCursorSkipTokens()];if(e===t.Direction.LEFT)for(;r.includes(S.dataStream[n]);)n--;else for(;r.includes(S.dataStream[n]);)n++;n=this._normalizeCursorOffset(S.dataStream,w,n,e);let i=this._normalizeRenderableCursorOffset(l,S.dataStream,w,n,e,b,x);if(i==null)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:i,endOffset:i,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),i)}else{let n=l.findNodeByCharIndex(d,g,y),r=l.findNodeByCharIndex(p,g,y),i=u.document.getOffsetConfig(),a=this._getTopOrBottomPosition(l,e===t.Direction.UP||h?n:r,e===t.Direction.UP||h?_:v,e===t.Direction.DOWN);if(a==null){let n;if(n=h?this._normalizeRenderableCursorOffset(l,S.dataStream,w,e===t.Direction.UP?0:C-2,e,b,x):this._normalizeRenderableCursorOffset(l,S.dataStream,w,e===t.Direction.UP?d:p,e,b,x),n==null)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:n,endOffset:n,style:m}],void 0,!1);return}let o=new zi(i,l).getRangePointData(a,a).cursorList[0],c=this._normalizeRenderableCursorOffset(l,S.dataStream,w,o.endOffset,e,b,x);if(c==null)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:c,endOffset:c,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),c)}}_getCursorOffsetByGranularity(e,n,r,i,a,o,s,c=``){switch(i){case`document`:return r===t.Direction.LEFT||r===t.Direction.UP?0:s-2;case`paragraph`:return this._getParagraphBoundaryOffset(c,n,r);case`line`:return this._getLineBoundaryOffset(e,n,r,a,o,s);case`word`:return this._getWordBoundaryOffset(e,n,r,a,o,s);default:return null}}_getParagraphBoundaryOffset(e,n,r){if(r!==t.Direction.UP&&r!==t.Direction.DOWN)return;if(e.length===0)return 0;let i=Math.min(Math.max(0,n),e.length-1);if(r===t.Direction.UP){let t=this._getCurrentParagraphStartOffset(e,i);return i>t?t:this._getCurrentParagraphStartOffset(e,Math.max(0,t-1))}let a=e.indexOf(t.DataStreamTreeTokenType.PARAGRAPH,i);return a===-1?e.length-1:a+1}_getCurrentParagraphStartOffset(e,n){for(let r=Math.min(n-1,e.length-1);r>=0;r--){let n=e[r];if(n===t.DataStreamTreeTokenType.PARAGRAPH||n===t.DataStreamTreeTokenType.SECTION_BREAK)return r+1}return 0}_getWordBoundaryOffset(e,n,r,i,a,o){if(r!==t.Direction.LEFT&&r!==t.Direction.RIGHT)return;let s=e.findNodeByCharIndex(n,i,a)??e.findNodeByCharIndex(Math.max(0,n-1),i,a);if(s==null)return r===t.Direction.LEFT?0:o-2;let c=Ea(s);if(c==null)return;let l=Math.min(Math.max(0,n-c.st),c.content.length),u=ja(c.content,l,c.st,r);if(u!=null)return Math.min(o-2,Math.max(0,u))}_getLineBoundaryOffset(e,n,r,i,a,o){var s;if(r!==t.Direction.LEFT&&r!==t.Direction.RIGHT)return;let c=e.findNodeByCharIndex(n,i,a)??e.findNodeByCharIndex(Math.max(0,n-1),i,a),l=c==null||(s=c.parent)==null?void 0:s.parent;if(l==null)return r===t.Direction.LEFT?0:o-2;let u=r===t.Direction.LEFT?this._getFirstCursorGlyphInLine(l):this._getLastCursorGlyphInLine(l),d=u==null?void 0:e.findPositionByGlyph(u,a);if(d==null)return r===t.Direction.LEFT?0:o-2;let f=e.findCharIndexByPosition({...d,isBack:r===t.Direction.LEFT});if(f!=null)return Math.min(o-2,Math.max(0,f))}_getFirstCursorGlyphInLine(e){for(let t of e.divides)for(let e of t.glyphGroup)if(this._isCursorAddressableGlyph(e))return e}_getLastCursorGlyphInLine(e){for(let t=e.divides.length-1;t>=0;t--){let n=e.divides[t];for(let e=n.glyphGroup.length-1;e>=0;e--){let t=n.glyphGroup[e];if(this._isCursorAddressableGlyph(t))return t}}}_isCursorAddressableGlyph(e){return e.count>0&&!this._getCursorSkipTokens(!0).includes(e.streamType)}_normalizeCursorOffset(e,n,r,i){r=Math.max(0,r);let a=this._getCursorSkipTokens();if(i===t.Direction.LEFT||i===t.Direction.UP)for(;r>0&&a.includes(e[r]);)r--;else for(;r<e.length-1&&a.includes(e[r]);)r++;return this._normalizeWholeEntityRanges(n,r,i)}_normalizeRenderableCursorOffset(e,n,r,i,a,o,s){let c=Math.min(Math.max(0,i),Math.max(0,n.length-1)),l=this._findNearestRenderableCursorOffset(e,n,r,c,a,o,s);if(l!=null)return l;let u=a===t.Direction.LEFT||a===t.Direction.UP?t.Direction.DOWN:t.Direction.UP;return this._findNearestRenderableCursorOffset(e,n,r,c,u,o,s)}_findNearestRenderableCursorOffset(e,n,r,i,a,o,s){let c=a===t.Direction.LEFT||a===t.Direction.UP?-1:1,l=Math.min(Math.max(0,i),Math.max(0,n.length-1)),u=new Set;for(;l>=0&&l<n.length&&!u.has(l);){u.add(l);let t=this._normalizeCursorOffset(n,r,l,a);if(t<0||t>=n.length)return;if(this._isRenderableCursorOffset(e,n,t,o,s))return t;l=t+c}}_isRenderableCursorOffset(e,t,n,r,i){return n<0||n>=t.length||this._getNonRenderableCursorTokens().includes(t[n])?!1:e.findNodePositionByCharIndex(n,!0,r,i)!=null}_normalizeWholeEntityRanges(e,n,r){return e.filter(e=>e.wholeEntity&&e.startIndex<n&&e.endIndex>=n).forEach(e=>{n=r===t.Direction.LEFT||r===t.Direction.UP?Math.min(e.startIndex,n):Math.max(e.endIndex+1,n)}),n}_getCursorSkipTokens(e=!1){let n=[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.SECTION_BREAK,t.DataStreamTreeTokenType.BLOCK_START,t.DataStreamTreeTokenType.BLOCK_END];return e&&n.push(t.DataStreamTreeTokenType.PARAGRAPH),n}_getNonRenderableCursorTokens(){return[...this._getCursorSkipTokens(),t.DataStreamTreeTokenType.COLUMN_GROUP_START,t.DataStreamTreeTokenType.COLUMN_GROUP_END,t.DataStreamTreeTokenType.COLUMN_START,t.DataStreamTreeTokenType.COLUMN_END]}_getTopOrBottomPosition(e,t,n,r,i=!1){if(t==null||n==null)return;let a=this._getGlyphLeftOffsetInLine(t),o=this._getNextOrPrevLineTarget(t,r,a,i);if(o==null)return;let s=this._matchPositionByLeftOffset(e,o.line,o.offsetLeft,n);if(s!=null)return{...s,isBack:!0}}_getGlyphLeftOffsetInLine(e){let t=e.parent;if(t==null)return-1/0;let n=t.left,{left:r}=e;return n+r}_matchPositionByLeftOffset(e,n,r,i){let a={distance:1/0},o={distance:1/0};for(let e of n.divides){let n=e.left;for(let i of e.glyphGroup){if(!this._isCursorAddressableGlyph(i)){if(i.streamType===t.DataStreamTreeTokenType.PARAGRAPH&&i.count>0){let{left:e}=i,t=n+e,a=Math.abs(r-t);a<o.distance&&(o.glyph=i,o.distance=a)}continue}let{left:e}=i,s=n+e,c=Math.abs(r-s);c<a.distance&&(a.glyph=i,a.distance=c)}}let s=a.glyph??o.glyph;if(s==null)return;let{segmentPage:c}=i;return e.findPositionByGlyph(s,c)}_getNextOrPrevLineTarget(e,t,n,r=!1){let i=e.parent,a=i==null?void 0:i.parent,o=a==null?void 0:a.parent,s=o==null?void 0:o.parent,c=s==null?void 0:s.parent;if(i==null||a==null||o==null||s==null||c==null)return;let l=o.lines.indexOf(a);if(l===-1)return;let u;if(this._isTableCellContentPage(c)&&r){let e=this._getAdjacentTableCellLineTarget(c,t,n);if(e!=null)return e}if(t===!0){u=o.lines[l+1];let e=this._getTableLineTargetFromPageLine(a,c,t,n);if(e!=null)return e}else{u=o.lines[l-1];let e=this._getTableLineTargetFromPageLine(a,c,t,n);if(e!=null)return e}let d=this._getColumnGroupLineTargetFromBlockLine(u,c,t,n);if(d!=null)return d;if(u!=null)return{line:u,offsetLeft:n};let f=s.columns.indexOf(o);if(f===-1)return;if(t===!0){var p;u=(p=s.columns[f+1])==null?void 0:p.lines[0]}else{var m;let e=(m=s.columns)==null||(m=m[f-1])==null?void 0:m.lines;u=e==null?void 0:e[e.length-1]}if(u!=null)return{line:u,offsetLeft:n};let h=c.sections.indexOf(s);if(h===-1)return;if(t===!0){var g;u=(g=c.sections[h-1])==null||(g=g.columns[0])==null?void 0:g.lines[0]}else{var _;let e=(_=c.sections)==null||(_=_[h-1])==null?void 0:_.columns,t=e==null?void 0:e[e.length-1],n=t==null?void 0:t.lines;u=n==null?void 0:n[n.length-1]}if(u!=null)return{line:u,offsetLeft:n};if(this._isColumnGroupContentPage(c))return this._getColumnGroupExitLineTarget(c,t,n);if(this._isTableCellContentPage(c))return this._getAdjacentTableCellLineTarget(c,t,n);let v=c.parent;if((v==null?void 0:v.pages)==null)return;let y=v.pages.indexOf(c);if(y!==-1){if(t===!0){var b;u=(b=v.pages[y+1])==null||(b=b.sections[0])==null||(b=b.columns[0])==null?void 0:b.lines[0]}else{var x,S;let e=(x=v.pages[y-1])==null?void 0:x.sections;if(e==null)return;let t=(S=e[e.length-1])==null?void 0:S.columns,n=t[t.length-1],r=n==null?void 0:n.lines;u=r[r.length-1]}if(u!=null)return{line:u,offsetLeft:n}}}_getTableLineTargetFromPageLine(e,t,n,r){let i=n?i_(e,t):a_(e,t);if(i!=null)return this._getTableBoundaryLineTarget(i,n,r)}_getTableBoundaryLineTarget(e,t,n){let r=t?e.rows:[...e.rows].reverse();for(let e of r){if(e.isRepeatRow)continue;let r=this._getNearestTableCellLineTarget(e.cells,t,n);if(r!=null)return r}}_getAdjacentTableCellLineTarget(e,t,n){let r=e.parent,i=r==null?void 0:r.parent;if(r==null||i==null)return;let a=this._getTableCellHostOffsetLeft(e)+n,o=this._findAdjacentTableRow(i,r,t);if(o!=null)return this._getNearestTableCellLineTarget(o.cells,t,a);let s=this._findLineAroundTable(i,t);if(s!=null)return{line:s,offsetLeft:a}}_findAdjacentTableRow(e,t,n){let r=e.rows.indexOf(t);if(r===-1)return;let i=n?1:-1,a=r+i;for(;a>=0&&a<e.rows.length;){let t=e.rows[a];if(!t.isRepeatRow)return t;a+=i}return this._findAdjacentTableSliceRow(e,n)}_findAdjacentTableSliceRow(e,t){if(!e.tableId.includes(`#-#`))return;let[n,r]=e.tableId.split(`#-#`),i=Number.parseInt(r),a=e.parent,o=a==null?void 0:a.parent;if(!Number.isFinite(i)||(o==null?void 0:o.pages)==null)return;let s=`${n}#-#${i+(t?1:-1)}`;for(let e of o.pages){var c;let n=(c=e.skeTables)==null?void 0:c.get(s),r=(n==null?[]:t?n.rows:[...n.rows].reverse()).find(e=>!e.isRepeatRow);if(r!=null)return r}}_getNearestTableCellLineTarget(e,t,n){let r=e.filter(e=>!e.isMergedCellCovered).map(e=>({cell:e,distance:this._getDistanceToTableCell(e,n)})).sort((e,t)=>e.distance-t.distance);for(let e of r){let r=t?o_(e.cell):s_(e.cell);if(r!=null)return{line:r,offsetLeft:n-this._getTableCellHostOffsetLeft(e.cell)}}}_findLineAroundTable(e,t){var n;let r=e.parent;if(r==null)return;let i=((n=r.parent)==null?void 0:n.pages)??[r],a=t?t=>t.st===e.ed+1:t=>t.ed===e.st-1;for(let e of i)for(let n of e.sections)for(let e of n.columns){let n=(t?e.lines:[...e.lines].reverse()).find(a);if(n!=null)return n}}_getDistanceToTableCell(e,t){let n=this._getTableCellHostOffsetLeft(e),r=n+this._getTableCellContentWidth(e);return t>=n&&t<=r?0:Math.min(Math.abs(t-n),Math.abs(t-r))}_getTableCellHostOffsetLeft(e){let t=e.parent,n=t==null?void 0:t.parent;return((n==null?void 0:n.left)??0)+(e.left??0)+(e.marginLeft??0)}_getTableCellContentWidth(e){return Math.max(0,(e.pageWidth??0)-(e.marginLeft??0)-(e.marginRight??0))}_isTableCellContentPage(e){var t;let n=e.parent,i=n==null?void 0:n.parent;return e.type===r.DocumentSkeletonPageType.CELL&&n!=null&&(i==null||(t=i.rows)==null?void 0:t.includes(n))===!0&&n.cells.includes(e)}_getColumnGroupLineTargetFromBlockLine(e,t,n,i){if(e==null||e.type!==r.LineType.BLOCK)return;let a=this._findColumnGroupByBlockLine(t,e);if(a!=null)return this._getColumnGroupContentLineTarget(a,n,i)}_getColumnGroupContentLineTarget(e,t,n){let r=e.columns.map(e=>({column:e,distance:this._getDistanceToColumnGroupColumn(e,n)})).sort((e,t)=>e.distance-t.distance);for(let e of r){let r=this._getColumnGroupColumnBoundaryLine(e.column,t);if(r!=null)return{line:r,offsetLeft:n-e.column.left}}}_getColumnGroupExitLineTarget(e,t,n){let r=e.parent,i=r==null?void 0:r.parent,a=i==null?void 0:i.parent;if(r==null||i==null||a==null)return;let o=this._findColumnGroupBlockLine(i),s=o==null?void 0:this._getAdjacentLineAroundBlockLine(o,t);if(s!=null)return{line:s,offsetLeft:r.left+n}}_findColumnGroupByBlockLine(e,t){var n;for(let r of((n=e.skeColumnGroups)==null?void 0:n.values())??[])if(t.paragraphIndex===r.ed||t.st<=r.ed&&t.ed>=r.st)return r}_findColumnGroupBlockLine(e){let t=e.parent;if(t!=null){for(let n of t.sections)for(let i of n.columns)for(let n of i.lines)if(n.type===r.LineType.BLOCK&&this._findColumnGroupByBlockLine(t,n)===e)return n}}_getAdjacentLineAroundBlockLine(e,t){var n;let r=e.parent,i=r==null?void 0:r.parent,a=i==null?void 0:i.parent;if(r==null||i==null||a==null)return;let o=r.lines.indexOf(e);if(o===-1)return;let s=r.lines[t?o+1:o-1];if(s!=null)return s;let c=i.columns.indexOf(r);if(c===-1)return;if(t){var l;return(l=i.columns[c+1])==null?void 0:l.lines[0]}let u=(n=i.columns[c-1])==null?void 0:n.lines;return u==null?void 0:u[u.length-1]}_getColumnGroupColumnBoundaryLine(e,t){let n=t?e.page.sections:[...e.page.sections].reverse();for(let e of n){let n=t?e.columns:[...e.columns].reverse();for(let e of n){let n=(t?e.lines:[...e.lines].reverse()).find(e=>e.type!==r.LineType.BLOCK);if(n!=null)return n}}}_getDistanceToColumnGroupColumn(e,t){return t>=e.left&&t<=e.left+e.width?0:Math.min(Math.abs(t-e.left),Math.abs(t-e.left-e.width))}_isColumnGroupContentPage(e){var t;let n=e.parent;return(n==null?void 0:n.page)===e&&((t=n.parent)==null||(t=t.columns)==null?void 0:t.includes(n))===!0}_scrollToFocusNodePosition(e,t){var n;let r=(n=this._renderManagerService.getRenderUnitById(e))==null?void 0:n.with(_o);r!=null&&r.scrollToRange({startOffset:t,endOffset:t,collapsed:!0})}};c_=A([k(0,t.IUniverInstanceService),k(1,r.IRenderManagerService),k(2,(0,t.Inject)(n.DocSelectionManagerService)),k(3,t.ICommandService)],c_);let l_=class extends t.Disposable{constructor(e){super(),this._commandService=e,this._initialize()}_initialize(){this._init(),this._registerCommands()}_registerCommands(){[to].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}_init(){}};l_=A([k(0,t.ICommandService)],l_);let u_=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._context=e,this._docSkeletonManagerService=t,this._commandService=n,this._docEventManagerService=r,this._textSelectionManagerService=i,this._initPointerDownObserver(),this._initHoverCursor()}_initPointerDownObserver(){this._docEventManagerService.clickBullets$.subscribe(e=>{let t=this._textSelectionManagerService.getTextRanges();this._commandService.executeCommand(ni.id,{index:e.paragraph.startIndex,segmentId:e.segmentId,textRanges:t})})}_initHoverCursor(){this.disposeWithMe(this._docEventManagerService.hoverBullet$.subscribe(e=>{e?this._context.mainComponent.setCursor(r.CURSOR_TYPE.POINTER):this._context.mainComponent.setCursor(r.CURSOR_TYPE.TEXT)}))}_getTransformCoordForDocumentOffset(e,t,n,i){let{documentTransform:a}=e.getOffsetConfig(),o=t.transformVector2SceneCoord(r.Vector2.FromArray([n,i]));if(o)return a.clone().invert().applyPoint(o)}};u_=A([k(1,(0,t.Inject)(n.DocSkeletonManagerService)),k(2,t.ICommandService),k(3,(0,t.Inject)(yp)),k(4,(0,t.Inject)(n.DocSelectionManagerService))],u_);let d_=class extends t.RxDisposable{constructor(e,t,n,r,i,a){super(),this._context=e,this._commandService=t,this._docClipboardService=n,this._docSelectionRenderService=r,this._contextService=i,this._editorService=a,this._init()}_init(){this._initLegacyPasteCommand()}_initLegacyPasteCommand(){var e;(e=this._docSelectionRenderService)==null||e.onPaste$.pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{var t,n,r,a;if(!_n(this._contextService))return;e.event.preventDefault();let o=e.event,s=(t=o.clipboardData)==null?void 0:t.getData(i.HTML_CLIPBOARD_MIME_TYPE),c=(n=o.clipboardData)==null?void 0:n.getData(`application/x-doc-fragment+json`),l=(r=o.clipboardData)==null?void 0:r.getData(i.PLAIN_TEXT_CLIPBOARD_MIME_TYPE),u=[...((a=o.clipboardData)==null?void 0:a.items)||[]].filter(e=>i.imageMimeTypeSet.has(e.type)).map(e=>e.getAsFile()).filter(e=>!!e);this._editorService.getEditor(this._context.unitId)&&(s??``).indexOf(`</table>`)>-1&&(s=``),this._docClipboardService.legacyPaste({html:s,internalJson:c,text:l,files:u})})}};d_=A([k(1,t.ICommandService),k(2,fn),k(3,(0,t.Inject)(Y)),k(4,t.IContextService),k(5,ho)],d_);let f_=[t.DEFAULT_EMPTY_DOCUMENT_VALUE,t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY],p_=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._context=e,this._contextMenuService=t,this._commandService=n,this._docEventManagerService=r,this._docSelectionManagerService=i,this._univerInstanceService=a,f_.includes(this._context.unitId)||(this._initPointerDown(),this._initEditChange())}_initPointerDown(){var e;let t=((e=this._context)==null||(e=e.mainComponent)==null?void 0:e.onPointerDown$).subscribeEvent(e=>{if(e.button===2){if(this._docEventManagerService.isPointerOnNonChecklistBullet(e.offsetX,e.offsetY)||this._isSelectionInCodeBlock())return;this._contextMenuService.triggerContextMenu(e,i.ContextMenuPosition.MAIN_AREA)}});this.disposeWithMe(t)}_initEditChange(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{e.id===n.RichTextEditingMutation.id&&this._contextMenuService.visible&&this._contextMenuService.hideContextMenu()}))}_isSelectionInCodeBlock(){var e;let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),r=(n==null||(e=n.getBody())==null||(e=e.blockRanges)==null?void 0:e.filter(e=>e.blockType===t.DocumentBlockRangeType.CODE))??[],i=this._docSelectionManagerService.getTextRanges()??[];return!r.length||!i.length?!1:r.some(e=>i.some(t=>m_(t,e.startIndex,e.endIndex)))}};p_=A([k(1,i.IContextMenuService),k(2,t.ICommandService),k(3,(0,t.Inject)(yp)),k(4,(0,t.Inject)(n.DocSelectionManagerService)),k(5,(0,t.Inject)(t.IUniverInstanceService))],p_);function m_(e,t,n){return Math.max(e.startOffset,t)<=Math.min(e.endOffset,n)}let h_=class extends t.Disposable{constructor(e,t,n,r,i,a,o){super(),this._context=e,this._univerInstanceService=t,this._editorService=n,this._commandService=r,this._docSelectionRenderService=i,this._docSkeletonManagerService=a,this._renderManagerService=o,O(this,`_initialEditors`,new Set),this._initialize()}_initialize(){this._editorService.getAllEditor().forEach(e=>{let t=e.getEditorId();t===this._context.unitId&&(this._initialEditors.has(t)||(this._initialEditors.add(t),this._resize(t)))}),this._commandExecutedListener(),this._initialBlur(),this._initialFocus()}_resize(e){if(e==null)return;let n=this._editorService.getEditor(e);if((n==null?void 0:n.cancelDefaultResizeListener)===!0)return;let r=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(!r)return;let i=this._docSkeletonManagerService.getSkeleton();if(n==null||n.render==null||i==null||r==null)return;i.calculate();let{marginTop:a=0,marginBottom:o=0,marginLeft:s=0,marginRight:c=0}=r.getSnapshot().documentStyle,{scene:l,mainComponent:u}=n.render,{actualHeight:d,actualWidth:f}=i.getActualSize();d+=a+o,f+=s+c;let{width:p,height:m}=n.getBoundingClientRect(),h=Math.max(f,p),g=Math.max(d,m);l.transformByState({width:h,height:g}),u==null||u.resize(h,g)}_initialBlur(){this.disposeWithMe(this._editorService.blur$.subscribe(()=>{this._docSelectionRenderService.blur()})),this.disposeWithMe(this._docSelectionRenderService.onBlur$.subscribe(()=>{let{unitId:e}=this._context,t=this._editorService.getEditor(e),n=this._editorService.getFocusEditor();t==null||t.isSheetEditor()||n&&n.getEditorId()===e||e.includes(`range_selector`)||e.includes(`embedding_formula_editor`)||this._editorService.blur()}))}_initialFocus(){let e=[`univer-formula-search`,`univer-formula-help`,`formula-help-decorator`,`univer-formula-help-param`];this.disposeWithMe((0,a.fromEvent)(window,`mousedown`).subscribe(n=>{(0,t.checkForSubstrings)(n.target.classList[0]||``,e)&&n.stopPropagation()}));let n=new t.DisposableCollection;this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{if(n.dispose(),!e)return;let t=e.getUnitId(),r=this._renderManagerService.getRenderUnitById(t),i=r==null?void 0:r.engine.getCanvas().getCanvasEle();if(i==null)return;let o=(0,a.fromEvent)(i,`mousedown`).subscribe(e=>{e.stopPropagation()});n.add(o)})),this.disposeWithMe(()=>n.dispose())}_commandExecutedListener(){let e=[n.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)){let{unitId:e}=t.params;if(this._editorService.isSheetEditor(e)||e!==this._context.unitId)return;let n=this._editorService.getEditorRenderConfig(e);n&&!n.scrollBar&&this._resize(e)}}))}};h_=A([k(1,t.IUniverInstanceService),k(2,ho),k(3,t.ICommandService),k(4,(0,t.Inject)(Y)),k(5,(0,t.Inject)(n.DocSkeletonManagerService)),k(6,r.IRenderManagerService)],h_);let g_=class extends t.Disposable{constructor(e,t,n,r,i,a,o){super(),this._context=e,this._docSelectionRenderService=t,this._docImeInputManagerService=n,this._docSkeletonManagerService=r,this._docStateEmitService=i,this._docSelectionManagerService=a,this._commandService=o,O(this,`_previousIMEContent`,``),O(this,`_isCompositionStart`,!0),O(this,`_onStartSubscription`,void 0),O(this,`_onUpdateSubscription`,void 0),O(this,`_onEndSubscription`,void 0),this._initialize()}dispose(){var e,t,n;(e=this._onStartSubscription)==null||e.unsubscribe(),(t=this._onUpdateSubscription)==null||t.unsubscribe(),(n=this._onEndSubscription)==null||n.unsubscribe()}_initialize(){this._initialOnCompositionstart(),this._initialOnCompositionUpdate(),this._initialOnCompositionend()}_initialOnCompositionstart(){this._onStartSubscription=this._docSelectionRenderService.onCompositionstart$.subscribe(e=>{var n;if(e==null)return;this._resetIME();let{activeRange:r,rangeList:i=[]}=e;r!=null&&(this._docImeInputManagerService.setActiveRange(t.Tools.deepClone(r)),this._docImeInputManagerService.setPreviousDocRanges(t.Tools.deepClone([...i,...this._docSelectionRenderService.getAllRectRanges()])),this._docImeInputManagerService.setPreviousSelectionOptions(t.Tools.deepClone(((n=this._docSelectionManagerService.getSelectionInfo())==null?void 0:n.options)??null)))})}_initialOnCompositionUpdate(){this._onUpdateSubscription=this._docSelectionRenderService.onCompositionupdate$.subscribe(e=>{this._updateContent(e,!0)})}_initialOnCompositionend(){this._onEndSubscription=this._docSelectionRenderService.onCompositionend$.subscribe(e=>{this._updateContent(e,!1)})}async _updateContent(e,t){if(e==null)return;let n=this._context.unitId,r=this._docSkeletonManagerService.getSkeleton(),{event:i,activeRange:a}=e;if(r==null||a==null)return;let o=i.data;if(!(o===this._previousIMEContent&&t)){if(!t&&o===this._previousIMEContent){this._finalizeComposition(),this._resetIME();return}await this._commandService.executeCommand(ir.id,{unitId:n,newText:o,oldTextLen:this._previousIMEContent.length,isCompositionStart:this._isCompositionStart,isCompositionEnd:!t}),t?(this._isCompositionStart&&=!1,this._previousIMEContent=o):this._resetIME()}}_finalizeComposition(){let e=this._docImeInputManagerService.getActiveRange();e!=null&&this._docStateEmitService.emitStateChangeInfo({commandId:n.RichTextEditingMutation.id,unitId:this._context.unitId,segmentId:e.segmentId,trigger:ir.id,redoState:{actions:[],textRanges:this._docImeInputManagerService.getPreviousDocRanges().length?this._docImeInputManagerService.getPreviousDocRanges():[e]},undoState:{actions:[],textRanges:this._docImeInputManagerService.getPreviousDocRanges().length?this._docImeInputManagerService.getPreviousDocRanges():[e],options:this._docImeInputManagerService.getPreviousSelectionOptions()??void 0},isCompositionEnd:!0})}_resetIME(){this._previousIMEContent=``,this._isCompositionStart=!0,this._docImeInputManagerService.clearUndoRedoMutationParamsCache(),this._docImeInputManagerService.setActiveRange(null),this._docImeInputManagerService.setPreviousDocRanges([]),this._docImeInputManagerService.setPreviousSelectionOptions(null)}};g_=A([k(1,(0,t.Inject)(Y)),k(2,(0,t.Inject)(rr)),k(3,(0,t.Inject)(n.DocSkeletonManagerService)),k(4,(0,t.Inject)(n.DocStateEmitService)),k(5,(0,t.Inject)(n.DocSelectionManagerService)),k(6,t.ICommandService)],g_);let __=class extends t.Disposable{constructor(e,t,n,r,i,a,o){super(),this._context=e,this._docSelectionRenderService=t,this._docSkeletonManagerService=n,this._commandService=r,this._docMenuStyleService=i,this._embedRuntimeFocusCoordinator=o,O(this,`_onInputSubscription`,void 0),this._init()}dispose(){var e;super.dispose(),(e=this._onInputSubscription)==null||e.unsubscribe()}_init(){this._initialNormalInput()}_initialNormalInput(){this._onInputSubscription=this._docSelectionRenderService.onInput$.subscribe(async e=>{var r,i,a,o,s;if(e==null)return;let{unitId:c}=this._context,{event:l,content:u=``,activeRange:d,rangeList:f=[]}=e,p=l;if(p.defaultPrevented||!t.SHEET_EDITOR_UNITS.includes(c)&&this._isEmbedChildInputActive(c,p))return;let m=this._docSkeletonManagerService.getSkeleton();if(p.data==null||m==null||d==null)return;let{segmentId:h}=d,g=(r=this._context.unit.getSelfOrHeaderFooterModel(h))==null?void 0:r.getBody();if(!g)return;let _=this._docMenuStyleService.getDefaultStyle(),v=this._docMenuStyleService.getStyleCache(),y=C((g==null?void 0:g.customRanges)??[],d.endOffset,t.SHEET_EDITOR_UNITS.includes(c)),b=S(g,d.endOffset,_,v,t.SHEET_EDITOR_UNITS.includes(c)),x=w((g==null?void 0:g.customDecorations)??[],d.endOffset),T={dataStream:u,textRuns:b?[{...b,st:0,ed:u.length}]:[],customRanges:y?[{...y,startIndex:0,endIndex:u.length-1}]:[],customDecorations:x.map(e=>({...e,startIndex:0,endIndex:u.length-1}))};!d.collapsed&&((i=g.blockRanges)!=null&&i.length||(a=g.columnGroups)!=null&&a.length||(o=g.customBlocks)!=null&&o.length||(s=g.tables)!=null&&s.length)||f.length>1||this._docSelectionRenderService.getAllRectRanges().length>0?await this._commandService.executeCommand(qr.id,{unitId:c,body:T,segmentId:h}):await this._commandService.executeCommand(n.InsertTextCommand.id,{unitId:c,body:T,range:d,segmentId:h}),u===` `&&await this._commandService.executeCommand(N.id)})}_isEmbedChildInputActive(e,t){var n,r,i;return(n=this._embedRuntimeFocusCoordinator)!=null&&n.isChildUnitRuntimeEvent(e,t.target,t)||(r=this._embedRuntimeFocusCoordinator)!=null&&r.isChildUnitInActiveSession(e)?!1:!!((i=this._embedRuntimeFocusCoordinator)!=null&&i.shouldSuppressHostInteraction(e,t.target,t))}};__=A([k(1,(0,t.Inject)(Y)),k(2,(0,t.Inject)(n.DocSkeletonManagerService)),k(3,t.ICommandService),k(4,(0,t.Inject)(I)),k(5,(0,t.Optional)(Ai)),k(6,(0,t.Optional)(ji))],__);let v_=class extends t.Disposable{constructor(e,n,r){super(),this._context=e,this._docPageLayoutService=n,this._textSelectionManagerService=r;let i=this._context.unitId;if((0,t.isInternalEditorID)(i))return this;this._initResize()}_initResize(){this.disposeWithMe((0,t.fromEventSubject)(this._context.engine.onTransformChange$).pipe((0,a.filter)(e=>e.type===r.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),(0,a.throttleTime)(0,a.animationFrameScheduler)).subscribe(()=>{this._disposed||(this._docPageLayoutService.calculatePagePosition(),this._textSelectionManagerService.refreshSelection())}))}};v_=A([k(1,(0,t.Inject)(Ro)),k(2,(0,t.Inject)(n.DocSelectionManagerService))],v_);let y_=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c){super(),this._context=e,this._commandService=t,this._editorService=n,this._instanceSrv=r,this._docSelectionRenderService=i,this._docSkeletonManagerService=a,this._docSelectionManagerService=o,this._embedRuntimeFocusCoordinator=c,O(this,`_loadedMap`,new WeakSet),this._initialize()}_initialize(){this._init(),this._skeletonListener(),this._commandExecutedListener(),this._refreshListener(),this._syncSelection()}_init(){let{unitId:e}=this._context,t=f(this._context);t!=null&&t.document!=null&&(this._loadedMap.has(t.document)||(this._initialMain(e),this._loadedMap.add(t.document)))}_refreshListener(){this.disposeWithMe(this._docSelectionManagerService.refreshSelection$.subscribe(e=>{if(e==null)return;let{unitId:t,docRanges:n,isEditing:r,options:i}=e;t===this._context.unitId&&(this._docSelectionRenderService.removeAllRanges(),this._docSelectionRenderService.addDocRanges(n,r,i))}))}_syncSelection(){this.disposeWithMe(this._docSelectionRenderService.textSelectionInner$.subscribe(e=>{e!=null&&(!(0,t.isInternalEditorID)(this._context.unitId)&&this._isEmbedChildInteractionActive(this._context.unitId)||this._docSelectionManagerService.__replaceTextRangesWithNoRefresh(e,{unitId:this._context.unitId,subUnitId:this._context.unitId}))}))}_initialMain(e){let{document:n,scene:i}=f(this._context);this.disposeWithMe(n.onPointerEnter$.subscribeEvent(()=>{this._isEditorReadOnly(e)||(n.cursor=r.CURSOR_TYPE.TEXT)})),this.disposeWithMe(n.onPointerLeave$.subscribeEvent(()=>{n.cursor=r.CURSOR_TYPE.DEFAULT,i.resetCursor()})),this.disposeWithMe(n.onPointerDown$.subscribeEvent((i,a)=>{var o;if(this._isEditorReadOnly(e)||this._isEmbedInteractionEvent(i,e))return;let s=this._instanceSrv.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);(s==null?void 0:s.getUnitId())!==e&&this._instanceSrv.setCurrentUnitForType(e),(o=this._editorService.getEditorRenderConfig(e))!=null&&o.preserveHostFocus||this._instanceSrv.focusUnit(e);let c=this._docSkeletonManagerService.getSkeleton(),{offsetX:l,offsetY:u}=i,d=this._getTransformCoordForDocumentOffset(l,u);if(d!=null){let{pageLayoutType:e=r.PageLayoutType.VERTICAL,pageMarginLeft:t,pageMarginTop:i}=n.getOffsetConfig(),{editArea:a}=c.findEditAreaByCoord(d,e,t,i),o=this._docSkeletonManagerService.getViewModel(),s=o.getEditArea();s!==r.DocumentEditArea.BODY&&a!==r.DocumentEditArea.BODY&&a!==s&&o.setEditArea(a)}if(this._docSelectionRenderService.__onPointDown(i),this._editorService.getEditor(e)){this._setEditorFocus(e);let{offsetX:t,offsetY:n}=i;setTimeout(()=>{e===this._editorService.getFocusId()||this._docSelectionRenderService.isOnPointerEvent||(this._setEditorFocus(e),this._docSelectionRenderService.setCursorManually(t,n))},0)}i.button!==2&&a.stopPropagation()})),this.disposeWithMe(n.onDblclick$.subscribeEvent(t=>{this._isEditorReadOnly(e)||this._isEmbedInteractionEvent(t,e)||this._docSelectionRenderService.__handleDblClick(t)})),this.disposeWithMe(n.onTripleClick$.subscribeEvent(t=>{this._isEditorReadOnly(e)||this._isEmbedInteractionEvent(t,e)||this._docSelectionRenderService.__handleTripleClick(t)}))}_getTransformCoordForDocumentOffset(e,t){let{document:n,scene:i}=f(this._context),{documentTransform:a}=n.getOffsetConfig(),o=i.getViewports()[0];if(o==null)return;let s=o.transformVector2SceneCoord(r.Vector2.FromArray([e,t]));return a.clone().invert().applyPoint(s)}_isEditorReadOnly(e){let t=this._editorService.getEditor(e);return t?t.isReadOnly():!1}_setEditorFocus(e){this._editorService.focus(e)}_isEmbedInteractionEvent(e,n){var r,i,a;if((0,t.isInternalEditorID)(n))return!1;let o=e.target;return(r=this._embedRuntimeFocusCoordinator)!=null&&r.isChildUnitRuntimeEvent(n,o,e)||(i=this._embedRuntimeFocusCoordinator)!=null&&i.isChildUnitInActiveSession(n)?!1:(a=this._embedRuntimeFocusCoordinator)!=null&&a.shouldSuppressHostInteraction(n,o,e)?!0:b_(e)}_isEmbedChildInteractionActive(e){var t;return((t=this._embedRuntimeFocusCoordinator)==null?void 0:t.shouldSuppressHostInteraction(e))===!0}_commandExecutedListener(){let e=[hi.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)){var n;let{unitId:e}=t.params;if(e!==((n=this._docSelectionManagerService.__getCurrentSelection())==null?void 0:n.unitId)||this._isEmbedChildInteractionActive(e))return;this._docSelectionManagerService.refreshSelection()}}))}_skeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(e=>{if(!e)return;let{unitId:n}=this._context;if(!(0,t.isInternalEditorID)(n)){if(this._isEmbedChildInteractionActive(n))return;this._docSelectionRenderService.focus();let e=Vo(this._context.unit.getSnapshot());this._docSelectionManagerService.replaceDocRanges([{startOffset:e,endOffset:e}],{unitId:n,subUnitId:n},!1)}}))}};y_=A([k(1,t.ICommandService),k(2,ho),k(3,t.IUniverInstanceService),k(4,(0,t.Inject)(Y)),k(5,(0,t.Inject)(n.DocSkeletonManagerService)),k(6,(0,t.Inject)(n.DocSelectionManagerService)),k(7,(0,t.Optional)(Ai)),k(8,(0,t.Optional)(ji))],y_);function b_(e){var t;let n=e.target;if(typeof Element<`u`&&n instanceof Element&&n.closest(`[data-embed-interaction-boundary-owner]`)!=null)return!0;if(typeof document>`u`)return!1;let r=x_(e,n),i=r==null?void 0:r.clientX,a=r==null?void 0:r.clientY;return typeof i!=`number`||typeof a!=`number`||!Number.isFinite(i)||!Number.isFinite(a)||typeof document.elementFromPoint!=`function`?!1:((t=document.elementFromPoint(i,a))==null?void 0:t.closest(`[${ki}]`))!=null}function x_(e,t){if(Number.isFinite(e.clientX)&&Number.isFinite(e.clientY))return{clientX:e.clientX,clientY:e.clientY};if(typeof Element<`u`&&t instanceof Element&&Number.isFinite(e.offsetX)&&Number.isFinite(e.offsetY)){let n=t.getBoundingClientRect();return{clientX:n.left+e.offsetX,clientY:n.top+e.offsetY}}if(Number.isFinite(e.x)&&Number.isFinite(e.y))return{clientX:e.x,clientY:e.y}}function S_(e,t,n){return t&&(e.ctrlKey||e.metaKey)}let C_=class extends t.Disposable{constructor(e,n,r,i,a,o,s,c,l,u,d){super(),this._context=e,this._contextService=n,this._docSkeletonManagerService=r,this._univerInstanceService=i,this._commandService=a,this._textSelectionManagerService=o,this._editorService=s,this._docPageLayoutService=c,this._renderManagerService=l,this._docViewScaleService=u,this._embedInteractionBoundaryService=d,O(this,`_isSheetEditor`,!1),O(this,`_initTimer`,void 0),O(this,`_updateTimer`,void 0),this._initSkeletonListener(),this._initCommandExecutedListener(),this._isSheetEditor=this._context.unitId===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY;let f=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),p=f&&this._renderManagerService.getRenderUnitById(f.getUnitId());this._initTimer=window.setTimeout(()=>{let e=p&&this._isSheetEditor?p.scene.scaleX:jo(this._context.unit);this.updateViewZoom(e,!0)},20),(0,t.isInternalEditorID)(this._context.unitId)||this._initZoomEventListener()}dispose(){window.clearTimeout(this._initTimer),window.clearTimeout(this._updateTimer)}_initSkeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(e=>{if(e==null)return;let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);n&&(this._updateTimer=window.setTimeout(()=>{let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),r=e&&this._renderManagerService.getRenderUnitById(e.getUnitId()),i=this._isSheetEditor?(r==null?void 0:r.scene.scaleX)||1:jo(n);this.updateViewZoom(i,!1)}))}))}_initCommandExecutedListener(){let e=[hi.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)&&t.params.unitId===this._context.unitId){let e=this._context.unit,t=jo(e);this.updateViewZoom(t)}})),this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{var n;(e.id===Ma.id||e.id===fs.id&&((n=e.params)==null?void 0:n.documentFlavor)===t.DocumentFlavor.MODERN)&&this._commandService.executeCommand(gi.id,{zoomRatio:1,documentId:this._context.unitId})}))}updateViewZoom(e,n=!0){var r;let i=f(this._context),a=this._docViewScaleService.getViewScale(e);if(i.scene.scale(a,a),this._editorService.isEditor(this._context.unitId)||this._docPageLayoutService.calculatePagePosition(),n&&!this._editorService.isEditor(this._context.unitId)&&!((r=this._embedInteractionBoundaryService)!=null&&r.hasRecentInteraction())&&this._textSelectionManagerService.refreshSelection(),!(0,t.isInternalEditorID)(this._context.unitId)){var o;(o=i.scene.getTransformer())==null||o.clearSelectedObjects()}let s=this._univerInstanceService.getUnitCreateOptions(this._context.unitId);((s==null?void 0:s.embeddedRender)===!0||(s==null?void 0:s.skipAutoRender)===!0)&&(this._context.scene.makeDirty(),this._context.scene.render())}_initZoomEventListener(){let e=this._context.scene;this.disposeWithMe(e.onMouseWheel$.subscribeEvent(e=>{let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!n)return;let{documentFlavor:i}=n.getSnapshot().documentStyle;if(!S_(e,!!this._contextService.getContextValue(t.FOCUSING_DOC),i))return;let a=(0,r.getNextWheelZoomRatio)(jo(n),e);this._commandService.executeCommand(gi.id,{zoomRatio:a,documentId:n.getUnitId()}),e.preventDefault()}))}};C_=A([k(1,t.IContextService),k(2,(0,t.Inject)(n.DocSkeletonManagerService)),k(3,t.IUniverInstanceService),k(4,t.ICommandService),k(5,(0,t.Inject)(n.DocSelectionManagerService)),k(6,ho),k(7,(0,t.Inject)(Ro)),k(8,r.IRenderManagerService),k(9,(0,t.Inject)(Lo)),k(10,(0,t.Optional)(Ai))],C_);let w_=class{constructor(e){this._renderManagerService=e}transformChangeStateInfo(e){var t;let{isCompositionEnd:n,isSync:r,syncer:i}=e;if(!n)return e;let a=(t=this._renderManagerService.getRenderUnitById(r?i:e.unitId))==null?void 0:t.with(rr);if(a==null)return null;let o=a.fetchComposedUndoRedoMutationParams();if(o==null)throw Error(`historyParams is null in RichTextEditingMutation`);let{undoMutationParams:s,redoMutationParams:c,previousActiveRange:l,previousDocRanges:u,previousSelectionOptions:d}=o;return{...e,redoState:{...e.redoState,actions:c.actions,textRanges:c.textRanges,options:c.options,isEditing:c.isEditing},undoState:{...e.undoState,actions:s.actions,textRanges:u.length?u:[l],options:d??void 0}}}};w_=A([k(0,r.IRenderManagerService)],w_);let T_=(0,t.createInterceptorKey)(`PRINTING_COMPONENT_COLLECT`),E_=(0,t.createInterceptorKey)(`PRINTING_DOM_COLLECT`);var D_=class extends t.Disposable{constructor(){super(),O(this,`_printComponentMap`,new Map),O(this,`interceptor`,new t.InterceptorManager({PRINTING_COMPONENT_COLLECT:T_,PRINTING_DOM_COLLECT:E_})),this.disposeWithMe(this.interceptor.intercept(this.interceptor.getInterceptPoints().PRINTING_COMPONENT_COLLECT,{priority:-1,handler:e=>e})),this.disposeWithMe(this.interceptor.intercept(this.interceptor.getInterceptPoints().PRINTING_DOM_COLLECT,{priority:-1,handler:e=>e}))}registerPrintComponent(e,t){this._printComponentMap.set(e,t)}getPrintComponent(e){return this._printComponentMap.get(e)}};let O_=`univer-doc-main-canvas`;function k_(e,t,n,r){return co({documentFlavor:e,canvasColorService:t,editorBackgroundColor:n,isEditor:r}).canvasElementBackgroundColor}let A_=class extends t.RxDisposable{constructor(e,t){super(),this._instanceSrv=e,this._renderManagerService=t,this._init()}_init(){this._instanceSrv.getAllUnitsForType(t.UniverInstanceType.UNIVER_DOC).forEach(e=>this._createRenderer(e,this._instanceSrv.getUnitCreateOptions(e.getUnitId())??void 0)),this._instanceSrv.getTypeOfUnitAdded$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>this._createRenderer(e.unit,e.options)),this._instanceSrv.getTypeOfUnitDisposed$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>this._disposeRenderer(e))}_createRenderer(e,t){if(t!=null&&t.skipAutoRender)return;let n=e.getUnitId();if(!this._renderManagerService.has(n)){this._createRenderWithId(n,e);return}let r=this._renderManagerService.getRenderUnitById(n);r&&this._syncRendererCanvas(r,e)}_createRenderWithId(e,t){let n=this._renderManagerService.createRender(e);t&&this._syncRendererCanvas(n,t)}_syncRendererCanvas(e,n){let r=n.getUnitId(),i=n.getSnapshot().documentStyle.documentFlavor,a=e.engine.getCanvas();a.setId(O_),a.getContext().setId(O_),a.getCanvasEle().style.backgroundColor=k_(i,e.engine.canvasColorService,void 0,(0,t.isInternalEditorID)(r))}_disposeRenderer(e){let t=e.getUnitId();this._renderManagerService.removeRender(t)}};A_=A([k(0,t.IUniverInstanceService),k(1,r.IRenderManagerService)],A_);let j_={id:P.id,preconditions:pu,binding:i.KeyCode.ENTER},M_={id:L.id,preconditions:pu,binding:i.KeyCode.ENTER|i.MetaKeys.SHIFT},N_={id:je.id,preconditions:Q,binding:i.KeyCode.BACKSPACE},P_={id:Me.id,preconditions:Q,binding:i.KeyCode.DELETE},F_={id:qo.id,preconditions:Q,binding:i.KeyCode.ESC};function I_(e,t,n,r=n,i=n,a=n){return{id:no.id,binding:n,mac:r,win:i,linux:a,preconditions:Q,staticParameters:{direction:e,granularity:t}}}function L_(e,t,n,r=n,i=n,a=n){return{id:ro.id,binding:n,mac:r,win:i,linux:a,preconditions:Q,staticParameters:{direction:e,granularity:t}}}let R_={id:no.id,binding:i.KeyCode.ARROW_UP,preconditions:Q,staticParameters:{direction:t.Direction.UP}},z_={id:no.id,binding:i.KeyCode.ARROW_DOWN,preconditions:Q,staticParameters:{direction:t.Direction.DOWN}},B_={id:no.id,binding:i.KeyCode.ARROW_LEFT,preconditions:Q,staticParameters:{direction:t.Direction.LEFT}},V_={id:no.id,binding:i.KeyCode.ARROW_RIGHT,preconditions:Q,staticParameters:{direction:t.Direction.RIGHT}},H_={id:ro.id,binding:i.KeyCode.ARROW_UP|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.UP}},U_={id:ro.id,binding:i.KeyCode.ARROW_DOWN|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.DOWN}},W_={id:ro.id,binding:i.KeyCode.ARROW_LEFT|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.LEFT}},G_={id:ro.id,binding:i.KeyCode.ARROW_RIGHT|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.RIGHT}},K_=I_(t.Direction.LEFT,`line`,i.KeyCode.HOME,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND),q_=I_(t.Direction.RIGHT,`line`,i.KeyCode.END,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND),J_=L_(t.Direction.LEFT,`line`,i.KeyCode.HOME|i.MetaKeys.SHIFT,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),Y_=L_(t.Direction.RIGHT,`line`,i.KeyCode.END|i.MetaKeys.SHIFT,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),X_=I_(t.Direction.UP,`document`,i.KeyCode.HOME|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND),Z_=I_(t.Direction.DOWN,`document`,i.KeyCode.END|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND),Q_=L_(t.Direction.UP,`document`,i.KeyCode.HOME|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),$_=L_(t.Direction.DOWN,`document`,i.KeyCode.END|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),ev=I_(t.Direction.LEFT,`word`,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_LEFT|i.MetaKeys.ALT),tv=I_(t.Direction.RIGHT,`word`,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_RIGHT|i.MetaKeys.ALT),nv=L_(t.Direction.LEFT,`word`,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_LEFT|i.MetaKeys.ALT|i.MetaKeys.SHIFT),rv=L_(t.Direction.RIGHT,`word`,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_RIGHT|i.MetaKeys.ALT|i.MetaKeys.SHIFT),iv=I_(t.Direction.UP,`paragraph`,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_UP|i.MetaKeys.ALT),av=I_(t.Direction.DOWN,`paragraph`,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_DOWN|i.MetaKeys.ALT),ov=L_(t.Direction.UP,`paragraph`,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_UP|i.MetaKeys.ALT|i.MetaKeys.SHIFT),sv=L_(t.Direction.DOWN,`paragraph`,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_DOWN|i.MetaKeys.ALT|i.MetaKeys.SHIFT),cv={id:Un.id,binding:i.KeyCode.A|i.MetaKeys.CTRL_COMMAND,preconditions:e=>e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&(e.getContextValue(t.FOCUSING_DOC)||e.getContextValue(t.EDITOR_ACTIVATED))};function lv(e,t){let n=t|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.ALT;return{id:e,binding:n,mac:n,win:n,linux:n,preconditions:Q}}let uv=lv(Ei.id,i.KeyCode.Digit0),dv=lv(xi.id,i.KeyCode.Digit1),fv=lv(Si.id,i.KeyCode.Digit2),pv=lv(Ci.id,i.KeyCode.Digit3),mv=lv(wi.id,i.KeyCode.Digit4),hv=lv(Ti.id,i.KeyCode.Digit5),gv=class extends t.Plugin{constructor(e=oo,n,r,i,a){super(),this._config=e,this._injector=n,this._renderManagerSrv=r,this._commandService=i,this._configService=a;let{menu:o,...s}=(0,t.merge)({},oo,this._config);o&&this._configService.setConfig(`menu`,o,{merge:!0}),this._configService.setConfig(io,s),this._initDependencies(n),this._initializeShortcut(),this._initCommand()}onReady(){this._initRenderBasics(),this._initAutoFocus(),(0,t.touchDependencies)(this._injector,[[A_]])}onRendered(){this._initRenderModules(),(0,t.touchDependencies)(this._injector,[[Xg],[c_],[Jo],[Zo],[l_],[qg],[Ap]])}_initCommand(){[je,Me,cr,ur,fr,mr,gr,vr,br,Sr,wr,Er,Or,Mr,Ar,Pr,L,Ee,wn,De,Oe,hi,ri,ei,Xr,ui,di,fi,li,pi,Vn,Ba,Xa,Ka,qa,Za,Ja,Ya,Va,Ha,Ua,qo,Qa,M,N,P,$r,Zr,ti,ni,ii,ir,Ma,em,de,we,Br,Wr,gi,Un,Yo,Qo,es,ts,no,ro,Jr,qr,Yr,Is,_i,yi,yn,xn,xi,Si,Ci,wi,Ti,Ei,Di,Oi,oi,si,ci,Hn,fs,ps].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))}),[vn,bn,Sn,Le].forEach(e=>this.disposeWithMe(this._commandService.registerMultipleCommand(e)))}_initializeShortcut(){[R_,z_,V_,B_,H_,U_,W_,G_,K_,q_,J_,Y_,iv,av,ov,sv,X_,Z_,Q_,$_,ev,tv,nv,rv,cv,N_,P_,F_,j_,M_,hu,uv,dv,fv,pv,mv,hv].forEach(e=>{this._injector.get(i.IShortcutService).registerShortcut(e)})}_initDependencies(e){(0,t.mergeOverrideWithDependencies)([[D_],[d_],[h_],[qg],[Ap],[Xg],[l_],[c_],[Jo],[Zo],[ho,{useClass:mo}],[fn,{useClass:pn}],[z],[R,{useClass:z}],[ln],[ep],[A_],[n.IDocStateChangeInterceptorService,{useClass:w_}],[j],[I]],this._config.override).forEach(t=>e.add(t))}_initAutoFocus(){let e=this._injector.get(t.IUniverInstanceService),n=this._injector.get(ho);this.disposeWithMe(e.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).subscribe(t=>{if(!t)return;let r=t.getUnitId();n.isEditor(r)||e.focusUnit(r)}))}_initRenderBasics(){[[n.DocSkeletonManagerService],[Y],[n.DocInterceptorService],[Lo],[Ro],[rr],[zo],[C_]].forEach(e=>{this._renderManagerSrv.registerRenderModule(t.UniverInstanceType.UNIVER_DOC,e)})}_initRenderModules(){[[yp],[xh],[Th],[_o],[y_],[r_],[v_],[vo],[p_],[u_],[d_],[__],[g_],[h_]].forEach(e=>{this._renderManagerSrv.registerRenderModule(t.UniverInstanceType.UNIVER_DOC,e)})}};O(gv,`pluginName`,`DOC_UI_PLUGIN`),O(gv,`packageName`,Qp),O(gv,`version`,$p),gv=A([(0,t.DependentOn)(n.UniverDocsPlugin,r.UniverRenderEnginePlugin),k(1,(0,t.Inject)(t.Injector)),k(2,r.IRenderManagerService),k(3,t.ICommandService),k(4,t.IConfigService)],gv);function _v(e,n){var r;if(e!==t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&e!==t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY)return!1;let i=n.getUnit(e,t.UniverInstanceType.UNIVER_DOC);return(i==null||(r=i.getBody())==null||(r=r.dataStream)==null?void 0:r.startsWith(`=`))??!1}function vv(e){var n;let{commandId:r,commandService:i,editorUnitId:a,univerInstanceService:o}=e,s=a===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY||a===t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY;if(_v(a,o))return;let c=((n=o.getFocusedUnit())==null?void 0:n.getUnitId())??null,l=!s&&c!==null&&c!==a;!s&&c!==a&&o.focusUnit(a),i.executeCommand(r).finally(()=>{l&&o.focusUnit(c)})}function yv(e){let{commandService:n,editorUnitId:r,handler:a,keyCodes:o=[],univerInstanceService:s}=e,c=i.MetaKeys.CTRL_COMMAND,l=i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT;return{keyCodes:[{keyCode:i.KeyCode.Z,metaKey:c},{keyCode:i.KeyCode.Y,metaKey:c},{keyCode:i.KeyCode.Z,metaKey:l},...o],handler:(e,o)=>{switch(`${e}:${o??0}`){case`${i.KeyCode.Z}:${c}`:vv({commandId:t.UndoCommand.id,commandService:n,editorUnitId:r,univerInstanceService:s});return;case`${i.KeyCode.Y}:${c}`:case`${i.KeyCode.Z}:${l}`:vv({commandId:t.RedoCommand.id,commandService:n,editorUnitId:r,univerInstanceService:s});return}a==null||a(e,o)}}}function bv(e){let{editorId:n,initialValue:r,container:a,preserveHostFocus:o,autoFocus:s,isSingle:l,canvasStyle:u}=e,d=(0,c.useMemo)(()=>s??!1,[]),[f,p]=(0,c.useState)(),m=(0,i.useDependency)(ho);return(0,c.useLayoutEffect)(()=>{if(a.current){let i=typeof r==`string`?t.RichTextBuilder.create().insertText(r).getData():t.Tools.deepClone(r),s={body:{dataStream:typeof r==`string`?`${r}\r\n`:`\r
39
- `,textRuns:[],customBlocks:[],customDecorations:[],customRanges:[],paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set)}]},...i,documentStyle:{...i==null?void 0:i.documentStyle,pageSize:{width:l?1/0:a.current.clientWidth,height:1/0}},id:n},c=m.register({autofocus:!0,canvasStyle:u,editorUnitId:n,initialSnapshot:s,preserveHostFocus:o},a.current),f=m.getEditor(n);if(p(f),d){var e;m.focus(n);let t=(((e=s.body)==null?void 0:e.dataStream.length)??2)-2;f.setSelectionRanges([{startOffset:t,endOffset:t}])}return()=>{c==null||c.dispose()}}},[]),f}let xv=(e,t,n)=>{let r=(0,i.useDependency)(ho);(0,c.useEffect)(()=>{let i=i=>{var a;r.getFocusId()===e&&((a=i.target)==null||(a=a.dataset)==null?void 0:a.editorid)!==e&&t.current&&!t.current.contains(i.target)&&(n==null||n())},a=setTimeout(()=>{document.addEventListener(`click`,i)},100);return()=>{document.removeEventListener(`click`,i),clearTimeout(a)}},[e,r,n,t])};function Sv(e){let t=(0,i.useDependency)(r.IRenderManagerService).getRenderUnitById(e),n=t==null?void 0:t.with(Y),a=(0,i.useObservable)(n==null?void 0:n.textSelectionInner$);return!!(((n==null?void 0:n.isFocusing)??!1)&&a!=null&&a.textRanges.some(e=>e.collapsed))}function Cv(e,n,a){let o=(0,i.useDependency)(t.ICommandService),s=(0,i.useDependency)(i.IShortcutService),l=(0,c.useMemo)(()=>(0,t.generateRandomId)(4),[]);(0,c.useEffect)(()=>{if(!a||!e||!n)return;let i=a.getEditorId(),c=`sheet.operation.editor-${i}-keyboard-${l}`,u=new t.DisposableCollection;return u.add(o.registerCommand({id:c,type:t.CommandType.OPERATION,handler(e,t){let{keyCode:r,metaKey:i}=t;n.handler(r,i)}})),n.keyCodes.map(e=>({id:c,binding:e.metaKey?e.keyCode|e.metaKey:e.keyCode,eventPreconditions:e.nativeTextEditorBehavior==null?void 0:e=>e.target instanceof HTMLElement&&e.target.id===`__editor_${i}`,nativeTextEditorBehavior:e.nativeTextEditorBehavior,preconditions:()=>!0,priority:901,staticParameters:{eventType:r.DeviceInputEventType.Keyboard,keyCode:e.keyCode,metaKey:e.metaKey}})).forEach(e=>{u.add(s.registerShortcut(e))}),()=>{u.dispose()}},[o,n,a,e,l,s])}let wv=(e,n,a,o)=>{let s=(0,i.useDependency)(t.ICommandService),l=(0,i.useDependency)(i.IShortcutService),u=`doc.rich-text-editor.arrow.${(0,c.useId)()}`,d=(0,c.useRef)(n);d.current=n;let f=(0,c.useRef)(o);f.current=o,(0,c.useEffect)(()=>{if(!a||!e)return;let n=new t.DisposableCollection,o=(e,n)=>{if(f.current){f.current(e,n);return}let r=t.Direction.LEFT;e===i.KeyCode.ARROW_DOWN?r=t.Direction.DOWN:e===i.KeyCode.ARROW_UP?r=t.Direction.UP:e===i.KeyCode.ARROW_RIGHT&&(r=t.Direction.RIGHT),n===i.MetaKeys.SHIFT?s.executeCommand(ro.id,{direction:r}):s.executeCommand(no.id,{direction:r})};return n.add(s.registerCommand({id:u,type:t.CommandType.OPERATION,handler(e,t){let{keyCode:n,metaKey:r}=t;o(n,r)}})),[{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}].map(({keyCode:e,metaKey:t})=>({id:u,binding:t?e|t:e,preconditions:()=>a.isFocus(),priority:900,staticParameters:{eventType:r.DeviceInputEventType.Keyboard,keyCode:e,metaKey:t}})).forEach(e=>{n.add(l.registerShortcut(e))}),()=>{n.dispose()}},[s,a,e,u,l])};function Tv(e,r){let a=(0,i.useDependency)(t.ICommandService);(0,c.useEffect)(()=>{if(!e)return;let i=a.onCommandExecuted(i=>{if(i.id===n.RichTextEditingMutation.id){var a;if(i.params.unitId!==e.getEditorId())return;let n=e.getDocumentData();r(n,(0,t.getPlainText)(((a=n.body)==null?void 0:a.dataStream)??``))}});return()=>{i.dispose()}},[e,r,a])}let Ev=(e,i=!0,a,o)=>{let s=(0,c.useCallback)(()=>{if(e){var t;let{scene:r,mainComponent:a}=e.render,o=e.render.with(n.DocSkeletonManagerService),{width:s,height:c}=e.getBoundingClientRect();o.getViewModel().getDataModel().updateDocumentDataPageSize(i?1/0:s,1/0),r.transformByState({width:s,height:c}),a==null||a.resize(s,c),a==null||a.translate(0,0),(t=e.render.components.get(`__Document_Render_Background__`))==null||t.translate(0,0);let l=e.getSelectionRanges();l.length>0&&e.setSelectionRanges(l,!1)}},[e,i]),l=(0,c.useMemo)(()=>(0,t.debounce)(()=>{if(!a||!e||!a||e.render.isDisposed())return;let t=e.render.with(n.DocSkeletonManagerService).getSkeleton(),{scene:s,mainComponent:c}=e.render,l=s.getViewport(`viewMain`),{actualWidth:u,actualHeight:d}=t.getActualSize(),{width:f,height:p}=e.getBoundingClientRect(),m=l==null?void 0:l.getScrollBar(),h=Math.max(u,f),g=Math.max(d,p);if(s.transformByState({width:h,height:g}),c==null||c.resize(h,g),!i)if(d>p)m==null?l&&(m=new r.ScrollBar(l,{enableHorizontal:!1,enableVertical:!0,barSize:8,minThumbSizeV:8})):l==null||l.resetCanvasSizeAndUpdateScroll(),o&&(l==null||l.scrollToBarPos({x:0,y:1/0}));else{var _;m=null,l==null||l.scrollToBarPos({x:0,y:0}),l==null||(_=l.getScrollBar())==null||_.dispose()}else if(u>f)m==null?l&&new r.ScrollBar(l,{barSize:8,enableVertical:!1,enableHorizontal:!0,minThumbSizeV:8}):l==null||l.resetCanvasSizeAndUpdateScroll(),o&&(l==null||l.scrollToBarPos({x:1/0,y:0}));else{var v;m=null,l==null||l.scrollToBarPos({x:0,y:0}),l==null||(v=l.getScrollBar())==null||v.dispose()}},30),[e,a,i,o]);return(0,c.useEffect)(()=>{if(a&&e){let e=setTimeout(()=>{s(),l()},500);return()=>{clearTimeout(e)}}},[e,a,s,l]),(0,c.useEffect)(()=>{if(a&&e){let t=e.input$.subscribe(()=>{l()});return()=>{t.unsubscribe()}}},[e,a,l]),{resize:s,checkScrollBar:l}};e.AfterSpaceCommand=N,e.AlignCenterCommand=di,e.AlignJustifyCommand=pi,e.AlignLeftCommand=ui,e.AlignMenuItemFactory=Vc,e.AlignOperationCommand=li,e.AlignRightCommand=fi,e.BackgroundColorSelectorMenuItemFactory=Yc,e.BoldMenuItemFactory=tc,e.BreakLineCommand=L,e.BulletListCommand=ei,e.BulletListTypePicker=Hs,e.ChangeListNestingLevelCommand=$r,e.ChangeListNestingLevelType=Qr,e.ChangeListTypeCommand=Zr,e.CheckListCommand=ti,e.CoverContentCommand=Wr,e.CreateDocTableCommand=Ba,e.CutContentCommand=we,e.DEFAULT_DOC_FIT_TO_WIDTH_OPTIONS=ao,e.DOCS_COMPONENT_BACKGROUND_LAYER_INDEX=0,e.DOCS_COMPONENT_DEFAULT_Z_INDEX=10,e.DOCS_COMPONENT_HEADER_LAYER_INDEX=4,e.DOCS_COMPONENT_MAIN_LAYER_INDEX=2,e.DOCS_UI_PLUGIN_CONFIG_KEY=io,e.DOCS_VIEW_KEY=u,e.DOC_CONTENT_INSERT_MENU_ID=Ml,e.DOC_CUSTOM_RANGE_CHROME_BACKGROUND_ALPHA=_,e.DOC_CUSTOM_RANGE_CHROME_RADIUS=1,e.DOC_EMBED_INTERACTION_BOUNDARY_OWNER_ATTRIBUTE=ki,e.DOC_PARAGRAPH_T_ALIGN_MENU_ID=Ll,e.DOC_PARAGRAPH_T_COLORS_MENU_ID=Rl,e.DOC_PARAGRAPH_T_DIVIDER_MENU_ID=Il,e.DOC_PARAGRAPH_T_EDIT_MENU_ID=Fl,e.DOC_PARAGRAPH_T_INSERT_BELOW_MENU_ID=zl,e.DOC_PARAGRAPH_T_INSERT_MENU_ID=Pl,e.DOC_TABLE_BLOCK_MENU_ID=Nl,e.DOC_VERTICAL_PADDING=4,e.DeleteCurrentParagraphCommand=Le,e.DeleteCustomBlockCommand=Ee,e.DeleteLeftCommand=je,e.DeleteRightCommand=Me,Object.defineProperty(e,"DocAutoFormatService",{enumerable:!0,get:function(){return j}}),Object.defineProperty(e,"DocBackScrollRenderController",{enumerable:!0,get:function(){return _o}}),Object.defineProperty(e,"DocCanvasPopManagerService",{enumerable:!0,get:function(){return ep}}),e.DocClipboardPasteAdapterService=z,e.DocCopyCommand=vn,e.DocCreateTableOperation=to,e.DocCutCommand=bn,Object.defineProperty(e,"DocEventManagerService",{enumerable:!0,get:function(){return yp}}),Object.defineProperty(e,"DocFloatMenuService",{enumerable:!0,get:function(){return xh}}),e.DocHtmlExportService=ln,e.DocIMEInputManagerService=rr,Object.defineProperty(e,"DocPageLayoutService",{enumerable:!0,get:function(){return Ro}}),Object.defineProperty(e,"DocParagraphMenuService",{enumerable:!0,get:function(){return Th}}),Object.defineProperty(e,"DocParagraphPlaceholderRenderController",{enumerable:!0,get:function(){return vo}}),e.DocPasteCommand=Sn,e.DocPrintInterceptorService=D_,Object.defineProperty(e,"DocRenderController",{enumerable:!0,get:function(){return zo}}),e.DocSelectAllCommand=Un,Object.defineProperty(e,"DocSelectionRenderService",{enumerable:!0,get:function(){return Y}}),e.DocTableDeleteColumnsCommand=Ha,e.DocTableDeleteRowsCommand=Va,e.DocTableDeleteTableCommand=Ua,e.DocTableInsertColumnCommand=Za,e.DocTableInsertColumnLeftCommand=Ja,e.DocTableInsertColumnRightCommand=Ya,e.DocTableInsertRowAboveCommand=Ka,e.DocTableInsertRowBellowCommand=qa,e.DocTableInsertRowCommand=Xa,e.DocTableTabCommand=Qa,Object.defineProperty(e,"DocUIController",{enumerable:!0,get:function(){return Ap}}),Object.defineProperty(e,"DocViewScaleService",{enumerable:!0,get:function(){return Lo}}),Object.defineProperty(e,"DocsRenderService",{enumerable:!0,get:function(){return A_}}),e.DocsUIMenuSchema=fu,e.EMPTY_PARAGRAPH_MENU_ID=pl,e.Editor=fo,Object.defineProperty(e,"EditorService",{enumerable:!0,get:function(){return mo}}),e.EnterCommand=P,e.FLOAT_TEXT_STYLE_MENU_ID=uc,e.FLOAT_TOOLBAR_MENU_POSITION=dc,e.FloatTextStyleMenuItemFactory=mc,e.FontFamilySelectorMenuItemFactory=sc,e.FontSizeSelectorMenuItemFactory=cc,e.HorizontalLineCommand=Vn,e.IDocClipboardPasteAdapterService=R,e.IDocClipboardService=fn,e.IDocEmbedInteractionBoundaryService=Ai,e.IDocEmbedRuntimeFocusCoordinator=ji,e.IEditorService=ho,e.IMEInputCommand=ir,e.INSERT_BELLOW_MENU_ID=jl,e.InnerPasteCommand=de,e.InsertCustomRangeCommand=Yr,e.ItalicMenuItemFactory=nc,e.ListOperationCommand=Xr,e.MergeTwoParagraphCommand=De,e.MoveCursorOperation=no,e.MoveDocBlockCommand=wn,e.MoveSelectionOperation=ro,e.NORMAL_TEXT_SELECTION_PLUGIN_NAME=`normalTextSelectionPluginName`,e.NodePositionConvertToCursor=zi,e.NodePositionConvertToRectRange=na,e.OrderListCommand=ri,e.OrderListTypePicker=Bs,e.ParagraphMenuInsertBelowSubmenuItemFactory=Ql,e.PastePluginLark=ht,e.PastePluginUniver=vt,e.PastePluginWord=yt,e.QuickListCommand=ii,e.RectRange=ha,e.ReplaceSelectionCommand=qr,e.ReplaceSnapshotCommand=Br,e.ReplaceTextRunsCommand=Jr,e.ResetInlineFormatTextBackgroundColorCommand=Mr,e.ResetInlineFormatTextColorCommand=Er,e.RichTextEditor=e=>{let{className:o,autoFocus:u,onFocusChange:d,initialValue:f,onClickOutside:p,preserveHostFocus:m,keyboardEventConfig:h,moveCursor:g=!0,style:_,isSingle:v,editorId:y,onHeightChange:b,onChange:x,defaultHeight:S=32,maxHeight:C=32,icon:w,editorRef:T,placeholder:E,noStyle:D}=e;(0,i.useDependency)(ho);let O=(0,i.useDependency)(t.ICommandService),k=(0,i.useDependency)(t.IUniverInstanceService),A=(0,i.useEvent)(d),j=(0,i.useEvent)(p),[M,N]=(0,c.useState)(S),P=(0,c.useRef)(null),F=(0,c.useMemo)(()=>y??(0,t.createInternalEditorID)(`RICH_TEXT_EDITOR-${(0,t.generateRandomId)(4)}`),[y]),I=bv({editorId:F,initialValue:f,container:P,preserveHostFocus:m,autoFocus:u,isSingle:v}),L=(0,i.useDependency)(r.IRenderManagerService).getRenderUnitById(F),R=Sv(F),z=L==null?void 0:L.with(Y),B=(0,i.useObservable)(I?()=>(0,a.merge)(I.focus$,I.blur$).pipe((0,a.map)(()=>(z==null?void 0:z.isFocusing)??!1),(0,a.startWith)((z==null?void 0:z.isFocusing)??!1)):null,(z==null?void 0:z.isFocusing)??!1,!1,[z,I]),ee=R&&B,V=(0,c.useRef)(null),H=()=>{var e;return!t.BuildTextUtils.transform.getPlainText((I==null||(e=I.getDocumentData().body)==null?void 0:e.dataStream)??``)},U=(0,i.useObservable)(I?()=>I.selectionChange$.pipe((0,a.map)(H),(0,a.startWith)(H())):null,H(),!1,[I]),{checkScrollBar:W}=Ev(I,v,!0,!0);(0,c.useLayoutEffect)(()=>{if(!(!T||!I)){if(typeof T==`function`){T(I);return}T.current=I}},[I]);let G=(0,i.useEvent)(e=>{var r;let i=L==null?void 0:L.with(n.DocSkeletonManagerService),a=i==null?void 0:i.getSkeleton().getActualSize();a&&(b==null||b(a.actualHeight),N(Math.max(S,Math.min(a.actualHeight+10,C)))),x==null||x(e,(0,t.getPlainText)(((r=e.body)==null?void 0:r.dataStream)??``)),W()});(0,c.useEffect)(()=>{var e;let n=I==null?void 0:I.getDocumentData();A==null||A(ee,(0,t.getPlainText)((n==null||(e=n.body)==null?void 0:e.dataStream)??``))},[ee,A]),xv(F,V,j);let te=(0,c.useMemo)(()=>yv({commandService:O,univerInstanceService:k,editorUnitId:F,keyCodes:h==null?void 0:h.keyCodes,handler:h==null?void 0:h.handler}),[O,F,h,k]);return wv(ee&&g,!1,I),Cv(ee,te,I),Tv(I,G),(0,l.jsx)(`div`,{className:o,style:_,children:(0,l.jsxs)(`div`,{className:(0,s.clsx)({"univer-border-primary-500":ee&&!D,"univer-relative univer-box-border univer-flex univer-h-8 univer-w-full univer-items-center univer-justify-around univer-gap-2 univer-rounded-md univer-pb-0.5 univer-pl-1.5 univer-pr-2 univer-pt-1.5":!D,"univer-size-full":D,[s.borderClassName]:!D}),style:{height:M},ref:V,children:[(0,l.jsx)(`div`,{ref:P,className:`univer-relative univer-size-full`,onMouseUp:()=>I==null?void 0:I.focus()}),w,U?(0,l.jsx)(`div`,{className:`univer-absolute univer-left-[5px] univer-top-[5px] univer-text-sm univer-text-gray-500`,children:E}):null]})})},e.SetDocZoomRatioCommand=gi,e.SetDocZoomRatioOperation=hi,e.SetInlineFormatBoldCommand=cr,e.SetInlineFormatCommand=Pr,e.SetInlineFormatFontFamilyCommand=Sr,e.SetInlineFormatFontSizeCommand=br,e.SetInlineFormatItalicCommand=ur,e.SetInlineFormatStrikethroughCommand=mr,e.SetInlineFormatSubscriptCommand=gr,e.SetInlineFormatSuperscriptCommand=vr,e.SetInlineFormatTextBackgroundColorCommand=Ar,e.SetInlineFormatTextColorCommand=wr,e.SetInlineFormatTextFillCommand=Or,e.SetInlineFormatUnderlineCommand=fr,e.SetParagraphNamedStyleCommand=_i,e.StrikeThroughMenuItemFactory=ic,e.SwitchDocModeCommand=Ma,e.TEXT_RANGE_LAYER_INDEX=3,e.TabCommand=M,e.TextColorSelectorMenuItemFactory=hc,e.TextRange=pa,e.ToggleCheckListCommand=ni,e.UnderlineMenuItemFactory=rc,Object.defineProperty(e,"UniverDocsUIPlugin",{enumerable:!0,get:function(){return gv}}),e.VIEWPORT_KEY=d,e.addCustomDecorationBySelectionFactory=h,e.addCustomDecorationFactory=m,e.buildMoveDocBlockActions=Tn,e.calcDocFitToWidthScale=Po,e.calcDocRangePositions=$f,e.collectDocsTableLikeEmbedChildUnitIds=zp,e.convertBodyToHtml=zt,e.convertPositionsToRectRanges=ma,e.createDefaultDocsTableLikeCustomBlockBleedViewport=jp,e.createDocsCustomBlockSizeRefreshScheduler=Gp,e.createEditorUndoRedoKeyboardConfig=yv,e.deleteCustomDecorationFactory=g,e.disableMenuWhenHeaderFooterEditing=Ks,e.drawDocCustomRangeChrome=y,e.executeEditorUndoRedoCommand=vv,e.genTableSource=W,e.generateParagraphs=n.generateParagraphs,e.getAnchorBounding=da,e.getCanvasOffsetByEngine=Ta,e.getCommandSkeleton=B,e.getCursorWhenDelete=ke,e.getCutActionsFromDocRanges=xe,e.getDocBlockRangeMenuId=Ul,e.getDocObjectById=p,e.getEmptyTableCell=V,e.getEmptyTableRow=H,e.getLineBounding=fa,e.getListMarkerFallbackBound=lp,e.getListParagraphContextMenuHit=sp,e.getOneTextSelectionRange=Ii,e.getStyleInTextRange=Rr,e.getTableColumn=U,e.getTextRangeFromCharIndex=xa,e.hasParagraphInTable=x,e.hideMenuWhenSelectionInBlockRange=ec,e.isInSameTableCell=qi,e.isTextRangeInAnyBlockRange=$s,e.isValidRectRange=Ki,e.neoGetDocObject=f,e.normalizeDocFitToWidthOptions=Mo,e.resolveDocCustomRangeChromeTheme=v,e.resolveDocFitBaseWidth=Fo,e.resolveDocViewScale=Io,e.resolveDocsCustomBlockRenderViewport=Zp,e.resolveDocsTableLikeCustomBlockBleedViewport=Mp,e.resolveDocsTableLikeCustomBlockContentHeight=Pp,e.resolveDocsTableLikeCustomBlockContentWidth=Np,e.scrollDocsTableLikeCustomBlockLive=Kp,e.shouldRefreshDocsCustomBlockSizeForCommand=Hp,e.useEditor=bv,e.useEditorClickOutside=xv,e.useIsFocusing=Sv,e.useKeyboardEvent=Cv,e.useLeftAndRightArrow=wv,e.useOnChange=Tv,e.useResize=Ev,e.whenDocAndEditorFocused=Q});
38
+ `}_ensureHostContainer(){let e=this._layoutService.rootContainerElement;if(e!=null&&e.isConnected){this._container.parentElement!==e&&e.appendChild(this._container);return}this._container.parentElement!==document.body&&document.body.appendChild(this._container)}_getOwnerDocument(){var e;return((e=this._container)==null?void 0:e.ownerDocument)??document}_getNodePosition(e){if(e==null)return;let{node:t,ratioX:n,segmentPage:i}=e,a=this._docSkeletonManagerService.getSkeleton().findPositionByGlyph(t,i);if(a==null)return;let o=n<.5;return t.glyphType===r.GlyphType.LIST&&(o=!0),{...a,isBack:o}}_interactTextRanges(e){let t=[];for(let n of this._rangeList){if(e.some(e=>e.isIntersection(n))){n.dispose();continue}t.push(n)}this._rangeList=t}_interactRectRanges(e){let t=[];for(let n of this._rectRangeList){if(e.some(e=>e.isIntersection(n))){n.dispose();continue}t.push(n)}this._rectRangeList=t}_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(){let e=[];for(let t of this._rangeList){if(t.collapsed){t.dispose();continue}e.push(t)}this._rangeList=e}_hideCollapsedCaretsForVisibleSelection(){var e;let t=this._rangeList.filter(e=>!e.collapsed);(t.length!==0||this._rectRangeList.length!==0)&&(this._deactivateAllTextRanges(),(e=t[t.length-1])==null||e.activate())}_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();let{scene:t,mainComponent:n}=this._context,r=new oi(t,n,this._docSkeletonManagerService.getSkeleton(),e,void 0,this._selectionStyle,this._currentSegmentId,this._currentSegmentPage);this._addTextRange(r)}_updateActiveRangePosition(e){let t=this._getActiveRangeInstance();if(t==null||t.anchorNodePosition==null){this._logService.error(`[DocSelectionRenderService] _updateActiveRangeFocusPosition: active range has no anchor`);return}this._removeAllRanges(),this._anchorNodePosition=t.anchorNodePosition,this._focusNodePosition=e;let{scene:n,mainComponent:r}=this._context,i=this._docSkeletonManagerService.getSkeleton(),{_anchorNodePosition:a,_focusNodePosition:o,_selectionStyle:s,_currentSegmentId:c,_currentSegmentPage:l}=this;if(a==null||o==null||r==null)return;let u=_i(a,o,n,r,i,s,c,l);if(u==null)return;let{textRanges:d,rectRanges:f}=u;this._addTextRangesToCache(d),this._addRectRangesToCache(f),this.deactivate()}_isEmpty(){return this._rangeList.length===0&&this._rectRangeList.length===0}_getCanvasOffset(){var e;return vi((e=this._context.scene)==null?void 0:e.getEngine())}_updateInputPosition(e=!1){let t=this._getActiveRangeInstance(),n=t==null?void 0:t.getAnchor();if(!n||n&&!n.visible||this.activeViewPort==null){if(this._shouldPreserveExternalFocus())return;this.focus();return}let{left:i,top:a}=n,{x:o,y:s}=this.activeViewPort.getAbsoluteVector(r.Vector2.FromArray([i,a])),{left:c,top:l}=this._getCanvasOffset();c+=o,l+=s,this.activate(c,l,e)}_tryMoving(e,t){try{this._moving(e,t)}catch(e){this._logService.error(`[DocSelectionRenderService] Failed to update moving selection`,e)}}_moving(e,n){var r;let{_currentSegmentId:i,_currentSegmentPage:a}=this,o=this._findNodeByCoord(e,n,{strict:!0,segmentId:i,segmentPage:a}),s=this._getNodePosition(o);if(s==null||o==null)return;let c=o==null?void 0:o.node.parent,l=c==null?void 0:c.glyphGroup[c.glyphGroup.indexOf(o.node)+1];(o==null?void 0:o.node.streamType)===t.DataStreamTreeTokenType.PARAGRAPH&&(l==null?void 0:l.streamType)===t.DataStreamTreeTokenType.SECTION_BREAK&&(s.isBack=!0),this._shouldSnapBackwardFocusToGlyphStart(o,s)&&(s.isBack=!0);let{_anchorNodePosition:u,_selectionStyle:d}=this,{scene:f,mainComponent:p}=this._context,m=this._docSkeletonManagerService.getSkeleton();if(u==null||p==null)return;let h=_i(u,s,f,p,m,d,i,a);if(h==null)return;let{textRanges:g,rectRanges:_}=h;if(!this._hasVisibleSelectionRanges(g,_)){g.forEach(e=>e.dispose()),_.forEach(e=>e.dispose());return}this._focusNodePosition=s,this._removeAllCacheRanges(),this._rangeList.length>0&&g.length>0&&this._interactTextRanges(g),this._rectRangeList.length>0&&_.length>0&&this._interactRectRanges(_),this._addTextRangesToCache(g),this._addRectRangesToCache(_),this.deactivate(),(r=this._context.scene)==null||(r=r.getEngine())==null||r.setCapture()}_hasVisibleSelectionRanges(e,t){return t.length>0||e.some(e=>!e.collapsed)}_shouldSnapBackwardFocusToGlyphStart(e,t){let n=this._anchorNodePosition;return!n||!this._isBeforeNodePosition(t,n)?!1:this._isFirstSelectableGlyphInDivide(e)}_isBeforeNodePosition(e,t){return Dr(e,t)?e.page!==t.page||e.section!==t.section||e.column!==t.column||e.line!==t.line||e.divide!==t.divide||e.glyph!==t.glyph:!1}_isFirstSelectableGlyphInDivide(e){var t;let n=(t=e.node.parent)==null?void 0:t.glyphGroup;return n?n.find(e=>e.content&&e.glyphType!==r.GlyphType.LIST)===e.node:!1}__attachScrollEvent(){let e=this.activeViewPort;if(!e)return;let{unitId:t}=this._context;if(this._viewPortObserverMap.has(t))return;let n=e.onScrollAfter$.subscribeEvent(e=>{if(!e.viewport)return;let t=this._getActiveRangeInstance();t==null||t.activeStatic()}),r=e.onScrollEnd$.subscribeEvent(e=>{let t=e.viewport;if(!t)return;let n=t.calcViewportInfo(),r=this._getActiveRangeInstance(),i=r==null?void 0:r.getAnchor();if(!(!i||i&&!i.visible)){if(n){let{left:e,top:t,right:a,bottom:o}=n.viewBound;if(i.left<e||i.left>a||i.top<t||i.top>o){r==null||r.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(t,{scrollBefore:n,scrollStop:r})}_initInputEvents(){this.disposeWithMe((0,a.fromEvent)(this._input,`keydown`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._isIMEInputApply||(this._stopEmbedOwnedEditorShortcutPropagation(e),this._eventHandle(e,e=>{this._onKeydown$.next(e)}))})),this.disposeWithMe((0,a.fromEvent)(this._input,`input`).subscribe(e=>{if(!this._shouldSuppressHostHiddenEditorEvent(e)&&e.inputType!==`historyUndo`&&e.inputType!==`historyRedo`){if(this._rectRangeList.length>0&&this._getActiveRange()==null)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply||this._eventHandle(e,e=>{this._onInputBefore$.next(e),this._onInput$.next(e)})}})),this.disposeWithMe((0,a.fromEvent)(this._input,`compositionstart`).subscribe(e=>{if(!this._shouldSuppressHostHiddenEditorEvent(e)){if(this._rectRangeList.length>0&&this._getActiveRange()==null)return e.stopPropagation(),e.preventDefault();this._isIMEInputApply=!0,this._eventHandle(e,e=>{this._onCompositionstart$.next(e)})}})),this.disposeWithMe((0,a.fromEvent)(this._input,`compositionend`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||(this._isIMEInputApply=!1,this._eventHandle(e,e=>{this._onCompositionend$.next(e)}))})),this.disposeWithMe((0,a.fromEvent)(this._input,`compositionupdate`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onInputBefore$.next(e),this._onCompositionupdate$.next(e)})})),this.disposeWithMe((0,a.fromEvent)(this._input,`paste`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onPaste$.next(e)})})),this.disposeWithMe((0,a.fromEvent)(this._input,`focus`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onFocus$.next(e)})})),this.disposeWithMe((0,a.fromEvent)(this._input,`blur`).subscribe(e=>{this._shouldSuppressHostHiddenEditorEvent(e)||this._eventHandle(e,e=>{this._onBlur$.next(e)})}))}_eventHandle(e,t){let n=this._input.textContent||``;this._input.innerHTML=``,t({event:e,content:n,activeRange:this._getActiveRange(),rangeList:this._getAllTextRanges()})}_shouldSuppressHostHiddenEditorEvent(e){var n,r,i;let a=this._context.unitId;return(0,t.isInternalEditorID)(a)||(n=this._embedRuntimeFocusCoordinator)!=null&&n.isChildUnitRuntimeEvent(a,e.target,e)||(r=this._embedRuntimeFocusCoordinator)!=null&&r.isChildUnitInActiveSession(a)||e.target instanceof HTMLElement&&this._containsCurrentEmbedRuntimeElement(e.target)?!1:(i=this._embedRuntimeFocusCoordinator)!=null&&i.shouldSuppressHostInteraction(a,e.target,e)?(e.stopPropagation(),e.cancelable&&e.preventDefault(),e.type===`focus`&&e.target instanceof HTMLElement&&e.target.blur(),!0):!1}_stopEmbedOwnedEditorShortcutPropagation(e){!(e instanceof KeyboardEvent)||!this._getCurrentEmbedOwner()||e.key.toLowerCase()===`a`&&(e.metaKey||e.ctrlKey)&&e.stopPropagation()}_getTransformCoordForDocumentOffset(e,t){let{documentTransform:n}=this._context.mainComponent.getOffsetConfig();if(this.activeViewPort==null||n==null)return;let i=this.activeViewPort.transformVector2SceneCoord(r.Vector2.FromArray([e,t]));if(i)return n.clone().invert().applyPoint(i)}_findNodeByCoord(e,t,n){let i=this._getTransformCoordForDocumentOffset(e,t);if(i==null)return;let a=this._context.mainComponent,o=this._docSkeletonManagerService.getSkeleton(),{pageLayoutType:s=r.PageLayoutType.VERTICAL,pageMarginLeft:c,pageMarginTop:l}=a.getOffsetConfig();return o.findNodeByCoord(i,s,c,l,n)}_shouldPreserveExternalFocus(){var e,t,n,r,i,a;let o=this._getOwnerDocument(),s=o.activeElement,c=this._getCurrentEmbedOwner();return(e=this._embedRuntimeFocusCoordinator)!=null&&e.isChildUnitInActiveSession(this._context.unitId)||(t=this._embedRuntimeFocusCoordinator)!=null&&t.isChildUnitRuntimeEvent(this._context.unitId,s)||s instanceof HTMLElement&&this._containsOwnEditorElement(s)||s instanceof HTMLElement&&this._containsCurrentEmbedRuntimeElement(s)?!1:(n=this._embedRuntimeFocusCoordinator)!=null&&n.shouldSuppressHostInteraction(this._context.unitId,s)||c&&(r=this._embedInteractionBoundaryService)!=null&&r.contains(c,s)?!0:s instanceof HTMLElement&&this._containsCurrentLayoutElement(s)?!1:((i=this._embedInteractionBoundaryService)==null||(a=i.hasRecentInteractionFor)==null?void 0:a.call(i,c,o))===!0}_containsCurrentEmbedRuntimeElement(e){let t=this._getCurrentEmbedOwner();return t?this._getElementEmbedOwner(e)===t&&this._containsCurrentLayoutElement(e):!1}_getCurrentEmbedOwner(){var e;let t=(e=this._layoutService)==null?void 0:e.rootContainerElement;return this._getElementEmbedOwner(this._input)??this._getElementEmbedOwner(this._container)??this._getElementEmbedOwner(t instanceof HTMLElement?t:void 0)}_getElementEmbedOwner(e){var t;if(!(!e||typeof e.closest!=`function`))return((t=e.closest(`[data-embed-interaction-boundary-owner]`))==null?void 0:t.getAttribute(`data-embed-interaction-boundary-owner`))??void 0}_containsOwnEditorElement(e){var t,n;return this._container===e||this._input===e||typeof((t=this._container)==null?void 0:t.contains)==`function`&&this._container.contains(e)||typeof((n=this._inputParent)==null?void 0:n.contains)==`function`&&this._inputParent.contains(e)}_containsCurrentLayoutElement(e){var t,n;let r=this._layoutService;if(!r){var i;return this._container===e||typeof((i=this._container)==null?void 0:i.contains)==`function`&&this._container.contains(e)}if((t=r.checkElementInCurrentContainers)!=null&&t.call(r,e))return!0;let a=r.rootContainerElement;return a===e||(a==null?void 0:a.contains(e))===!0||this._container===e||typeof((n=this._container)==null?void 0:n.contains)==`function`&&this._container.contains(e)}_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(),this._segmentContext$.complete()}};J=A([k(1,i.ILayoutService),k(2,t.ILogService),k(3,t.IUniverInstanceService),k(4,(0,t.Inject)(n.DocSkeletonManagerService)),k(5,(0,t.Optional)(Cr)),k(6,(0,t.Optional)(wr))],J);var Ti=class extends t.Disposable{constructor(e,t,n,r,i,o){super(),this._param=e,this._univerInstanceService=t,this._docSelectionManagerService=n,this._commandService=r,this._undoRedoService=i,this._injector=o,O(this,`_change$`,new a.Subject),O(this,`change$`,this._change$.asObservable()),O(this,`_input$`,new a.Subject),O(this,`input$`,this._input$.asObservable()),O(this,`_paste$`,new a.Subject),O(this,`paste$`,this._paste$.asObservable()),O(this,`_focus$`,new a.Subject),O(this,`focus$`,this._focus$.asObservable()),O(this,`_blur$`,new a.Subject),O(this,`blur$`,this._blur$.asObservable()),O(this,`_selectionChange$`,new a.Subject),O(this,`selectionChange$`,this._selectionChange$.asObservable()),this._listenSelection()}get docSelectionRenderService(){return this._param.render.with(J)}_listenSelection(){let e=this._param.render.with(J);this.disposeWithMe(e.onBlur$.subscribe(e=>{this._blur$.next(e);let t=this.getDocumentData();this._change$.next({target:this,data:t})})),this.disposeWithMe(e.onFocus$.subscribe(e=>{this._focus$.next(e)})),this.disposeWithMe(e.onPaste$.subscribe(e=>{this._paste$.next(e)})),this.disposeWithMe((0,a.merge)(e.onInput$,e.onKeydown$.pipe((0,o.filter)(e=>{let t=e.event;return t.ctrlKey||t.metaKey?[i.KeyCode.X,i.KeyCode.V].includes(t.keyCode):[i.KeyCode.BACKSPACE].includes(t.keyCode)})),e.onCompositionupdate$,e.onCompositionend$,e.onPaste$).subscribe(e=>{if(e==null)return;let{content:t=``}=e,n=this.getDocumentData();this._input$.next({target:this,content:t,data:n,isComposing:e.event.type===`compositionupdate`})})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(e=>{if(e==null)return;let{unitId:t,subUnitId:n,...r}=e;t===this.getEditorId()&&this._selectionChange$.next(r)}))}isFocus(){let e=this._param.render.with(J);return e.isFocusing&&!!e.getActiveTextRange()}focus(){let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),n=this.getEditorId();(e==null||e.getUnitId()!==n)&&this._univerInstanceService.setCurrentUnitForType(n),this._param.render.with(J).focus()}blur(){this._param.render.with(J).blur()}select(){let e=this.getDocumentData();return this.setSelectionRanges([{startOffset:0,endOffset:e.body?e.body.dataStream.length-2:0}])}setSelectionRanges(e,t=!0){let n=this.getEditorId(),r={unitId:n,subUnitId:n};return this._docSelectionManagerService.replaceDocRanges(e,r,!1,{shouldFocus:t})}getSelectionRanges(){let e=this.getEditorId(),t={unitId:e,subUnitId:e};return this._docSelectionManagerService.getDocRanges(t)}getCursorPosition(){var e;return((e=this.getSelectionRanges().find(e=>e.collapsed))==null?void 0:e.startOffset)??-1}getEditorId(){return this._getEditorId()}getDocumentData(){return this._getDocDataModel().getSnapshot()}getDocumentDataModel(){return this._getDocDataModel()}setDocumentData(e,t){this._commandService.syncExecuteCommand(pr.id,{unitId:this.getEditorId(),snapshot:e,textRanges:t})}replaceText(e,n=!0){let r=this.getDocumentData();this.setDocumentData({...r,body:{dataStream:`${e}\r\n`,paragraphs:[{startIndex:e.length,paragraphId:(0,t.createParagraphId)(new Set)}],customRanges:[],sectionBreaks:[{sectionId:(0,t.createSectionId)(new Set),startIndex:e.length+1}],tables:[],textRuns:[]}},typeof n==`object`?n:n?[{startOffset:e.length,endOffset:e.length,collapsed:!0}]:null)}clearUndoRedoHistory(){let e=this.getEditorId();return this._undoRedoService.clearUndoRedo(e)}dispose(){let e=this._getDocDataModel();e==null||e.dispose()}get cancelDefaultResizeListener(){return this._param.cancelDefaultResizeListener}getRenderConfig(){return{canvasStyle:this._param.canvasStyle??{},scrollBar:this._param.scrollBar,...this._param.backScrollOffset===void 0?{}:{backScrollOffset:this._param.backScrollOffset}}}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}getSkeleton(){var e;return(e=this._injector.get(r.IRenderManagerService).getRenderUnitById(this._getEditorId()))==null?void 0:e.with(n.DocSkeletonManagerService).getSkeleton()}isSheetEditor(){return(0,t.isInternalEditorID)(this._getEditorId())}_getDocDataModel(){let e=this._getEditorId();return this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC)}_getEditorId(){var e;return((e=this._param.initialSnapshot)==null?void 0:e.id)||this._param.editorUnitId||``}};let Ei=[`editor`,`render-canvas`],Di=class extends t.Disposable{constructor(e,t,n,r,i,o,s){super(),this._univerInstanceService=e,this._renderManagerService=t,this._docSelectionManagerService=n,this._contextService=r,this._commandService=i,this._undoRedoService=o,this._injector=s,O(this,`_editors`,new Map),O(this,`_editorRenderConfigs`,new Map),O(this,`_focusEditorUnitId`,void 0),O(this,`_blur$`,new a.Subject),O(this,`blur$`,this._blur$.asObservable()),O(this,`_focus$`,new a.Subject),O(this,`focus$`,this._focus$.asObservable()),this._initUniverFocusListener()}_initUniverFocusListener(){this.disposeWithMe((0,a.fromEvent)(window,`focusin`).subscribe(e=>{let t=e.target;this._blurSheetEditor(t)}))}_blurSheetEditor(e){if(Ei.some(t=>e.dataset.uComp===t))return;let t=this.getFocusEditor();t&&t.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._editorRenderConfigs.has(e)||this._editors.has(e)}isSheetEditor(e){let t=this._editors.get(e);return!!(t&&t.isSheetEditor())}blur(e){let n=this.getFocusEditor();e&&(n==null||n.setSelectionRanges([])),n==null||n.blur(),this._contextService.setContextValue(t.EDITOR_ACTIVATED,!1),this._contextService.setContextValue(t.FOCUSING_EDITOR_STANDALONE,!1),this._contextService.setContextValue(t.FOCUSING_COMMENT_EDITOR,!1),this._setFocusId(null),this._blur$.next(null)}focus(e){var n;if(e===this._focusEditorUnitId||(this._focusEditorUnitId&&this.blur(),e==null))return;let r=this.getEditor(e);if(r==null)return;this._univerInstanceService.setCurrentUnitForType(e);let i=(((n=r.getDocumentData().body)==null?void 0:n.dataStream)??``).replace(/\r?\n/g,``).length;this._contextService.setContextValue(t.EDITOR_ACTIVATED,!0),(0,t.isInternalEditorID)(e)||this._contextService.setContextValue(t.FOCUSING_EDITOR_STANDALONE,!0),(0,t.isCommentEditorID)(e)&&this._contextService.setContextValue(t.FOCUSING_COMMENT_EDITOR,!0),r.focus(),this._setFocusId(e),this._focus$.next({startOffset:i,endOffset:i})}dispose(){this._editors.clear(),this._editorRenderConfigs.clear(),super.dispose()}getEditor(e=this._getCurrentEditorUnitId()){return this._editors.get(e)}getAllEditor(){return this._editors}getEditorRenderConfig(e){let t=this._editors.get(e);return this._editorRenderConfigs.get(e)??(t==null?void 0:t.getRenderConfig())??null}register(e,n){let{initialSnapshot:r,canvasStyle:i={}}=e,a=r.id;this._editorRenderConfigs.set(a,{canvasStyle:i,scrollBar:e.scrollBar,...e.backScrollOffset===void 0?{}:{backScrollOffset:e.backScrollOffset},...e.preserveHostFocus===void 0?{}:{preserveHostFocus:e.preserveHostFocus}}),this._univerInstanceService.getUnit(a,t.UniverInstanceType.UNIVER_DOC)??this._univerInstanceService.createUnit(t.UniverInstanceType.UNIVER_DOC,r||this._getBlank(a),{makeCurrent:!1});let o=this._renderManagerService.getRenderUnitById(a);if(o??=this._renderManagerService.createRender(a),o){o.engine.mount(n);let t=new Ti({...e,render:o,editorDom:n,canvasStyle:i},this._univerInstanceService,this._docSelectionManagerService,this._commandService,this._undoRedoService,this._injector);this._editors.set(a,t);let r=ur({canvasColorService:o.engine.canvasColorService,editorBackgroundColor:i.backgroundColor,isEditor:!0});o.engine.getCanvas().getCanvasEle().style.backgroundColor=r.canvasElementBackgroundColor;let l=o.components.get(`__Document_Render_Background__`);if(l==null||l.setFillColors(r.docBackgroundFillColor,r.docBackgroundFillColor,r.docBackgroundFillColor,r.docBackgroundFillColor),!e.scrollBar){var s,c;let e=(s=o.mainComponent)==null||(s=s.getScene())==null||(s=s.getViewports())==null?void 0:s[0];e==null||(c=e.getScrollBar())==null||c.dispose(),e==null||e.updateScrollVal({scrollX:0,scrollY:0,viewportScrollX:0,viewportScrollY:0})}}return(0,t.toDisposable)(()=>{this._unRegister(a)})}_unRegister(e){let t=this._editors.get(e);if(t==null){this._editorRenderConfigs.delete(e);return}this._renderManagerService.removeRender(e),t.dispose(),this._editors.delete(e),this._editorRenderConfigs.delete(e),this._univerInstanceService.disposeUnit(e)}_getCurrentEditorUnitId(){return this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC).getUnitId()}_getBlank(e){return{id:e,body:{dataStream:`${t.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set)}]},documentStyle:{renderConfig:{verticalAlign:t.VerticalAlign.TOP,horizontalAlign:t.HorizontalAlign.LEFT},marginLeft:3,marginTop:0,marginRight:3}}}};Di=A([k(0,t.IUniverInstanceService),k(1,r.IRenderManagerService),k(2,(0,t.Inject)(n.DocSelectionManagerService)),k(3,t.IContextService),k(4,t.ICommandService),k(5,t.IUndoRedoService),k(6,(0,t.Inject)(t.Injector))],Di);let Oi=(0,t.createIdentifier)(`univer.editor.service`);function ki(e,t,n){return n.executeCommand(ra.id,{preCommandId:e,...t??{}})}let Ai=`doc.command.set-inline-format-bold`,ji={id:Ai,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Ai,n,r)}},Mi=`doc.command.set-inline-format-italic`,Ni={id:Mi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Mi,n,r)}},Pi=`doc.command.set-inline-format-underline`,Fi={id:Pi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Pi,n,r)}},Ii=`doc.command.set-inline-format-strikethrough`,Li={id:Ii,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Ii,n,r)}},Ri=`doc.command.set-inline-format-subscript`,zi={id:Ri,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Ri,n,r)}},Bi=`doc.command.set-inline-format-superscript`,Vi={id:Bi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Bi,n,r)}},Hi=`doc.command.set-inline-format-fontsize`,Ui={id:Hi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Hi,n,r)}},Wi=`doc.command.set-inline-format-font-family`,Gi={id:Wi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Wi,n,r)}},Ki=`doc.command.set-inline-format-text-color`,qi={id:Ki,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Ki,n,r)}},Ji=`doc.command.reset-inline-format-text-color`,Yi={id:Ji,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Ji,n,r)}},Xi=`doc.command.set-inline-format-text-fill`,Zi={id:Xi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Xi,n,r)}},Qi=`doc.command.set-inline-format-text-background-color`,$i={id:Qi,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(Qi,n,r)}},ea=`doc.command.reset-inline-format-text-background-color`,ta={id:ea,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(t.ICommandService);return ki(ea,n,r)}},na={[ji.id]:`bl`,[Ni.id]:`it`,[Fi.id]:`ul`,[Li.id]:`st`,[Ui.id]:`fs`,[Gi.id]:`ff`,[qi.id]:`cl`,[Yi.id]:`cl`,[$i.id]:`bg`,[ta.id]:`bg`,[zi.id]:`va`,[Vi.id]:`va`},ra={id:`doc.command.set-inline-format`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let{value:a,preCommandId:o}=r,s=e.get(t.ICommandService),c=e.has(Oi)?e.get(Oi):null,l=e.get(n.DocSelectionManagerService),u=e.get(t.IUniverInstanceService),d=e.get(I),f=l.getTextRanges()??[],p=f.length>0?f.filter(e=>e.startOffset!=null&&e.endOffset!=null):l.getDocRanges(),m=p.find(e=>e.isActive)??p[0];if(p.length===0)return!1;let{segmentId:h}=p[0],g=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(g==null)return!1;let _=(i=g.getSelfOrHeaderFooterModel(h))==null?void 0:i.getBody();if(_==null)return!1;let v=g.getUnitId(),y,b;switch(o){case ji.id:case Ni.id:case Fi.id:case Li.id:case zi.id:case Vi.id:y=ca(sa(_,m,d.getDefaultStyle()),o);break;case Ui.id:case Gi.id:y=a;break;case qi.id:case $i.id:y={rgb:a};break;case Zi.id:b=a;break;case Yi.id:case ta.id:y={rgb:null};break;default:throw Error(`Unknown command: ${o} in handleInlineFormat`)}let x={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:p}},S=new t.TextX,C=t.JSONX.getInstance(),w=b??{[na[o]]:y},T=o===qi.id&&!(0,t.isInternalEditorID)(v)&&!(c!=null&&c.isEditor(v)),E=(e,n,r=!1)=>{e<=0||S.push({t:t.TextXActionType.RETAIN,body:{dataStream:``,textRuns:[{st:0,ed:e,ts:n}]},len:e,...r?{coverType:t.UpdateDocsAttributeType.REPLACE}:{}})},D=new t.MemoryCursor;D.reset();for(let e of p){let{startOffset:n,endOffset:r,rangeType:i}=e;if(n==null||r==null)continue;if(i===t.DOC_RANGE_TYPE.RECT&&--n,n===r){let e=d.getStyleCache(),t=na[o];b?d.setStyleCache(b):d.setStyleCache({[t]:(e==null?void 0:e[t])!==void 0&&aa(t)?oa(e,t,o):y});continue}let a=n-D.cursor;if(a!==0&&S.push({t:t.TextXActionType.RETAIN,len:a}),T){let e=n;for(let t of _.textRuns??[]){var O;if(((O=t.ts)==null||(O=O.textFill)==null?void 0:O.type)!==`solid`)continue;let n=Math.max(e,t.st),i=Math.min(r,t.ed);if(n>=i)continue;E(n-e,w);let a={...t.ts,...w};delete a.textFill,E(i-n,a,!0),e=i}E(r-e,w)}else E(r-n,w);D.reset(),D.moveCursor(r)}let k=(0,t.getRichTextEditPath)(g,h);return x.params.actions=C.editOp(S.serialize(),k),!!s.syncExecuteCommand(x.id,x.params)}};function ia(e){return typeof e==`object`&&!!e}function aa(e){return!/fs|ff|cl|bg/.test(e)}function oa(e,n,r){if(/bl|it/.test(n))return(e==null?void 0:e[n])===t.BooleanNumber.TRUE?t.BooleanNumber.FALSE:t.BooleanNumber.TRUE;if(/ul|st/.test(n))return ia(e==null?void 0:e[n])&&(e==null?void 0:e[n]).s===t.BooleanNumber.TRUE?{s:t.BooleanNumber.FALSE}:{s:t.BooleanNumber.TRUE};if(/va/.test(n))return r===zi.id?(e==null?void 0:e[n])===t.BaselineOffset.SUBSCRIPT?t.BaselineOffset.NORMAL:t.BaselineOffset.SUBSCRIPT:(e==null?void 0:e[n])===t.BaselineOffset.SUPERSCRIPT?t.BaselineOffset.NORMAL:t.BaselineOffset.SUPERSCRIPT}function sa(e,n,r){var i,a,o,s,c,l;let{startOffset:u,endOffset:d,collapsed:f}=n;if(f){let t=e.textRuns??[],n=null;for(let e=t.length-1;e>=0;e--){let r=t[e];if(r.st<u&&u<=r.ed){n=r;break}}return n!=null&&n.ts?{...r,...n.ts}:r}let{textRuns:p=[]}=(0,t.getBodySlice)(e,u,d),m=t.Tools.deepClone(r),h=p.map(e=>{var t;return e==null||(t=e.ts)==null?void 0:t.fs}).filter(Boolean);m.fs=m.fs?Math.max(m.fs,...h):h.length?Math.max(...h):void 0,m.fs=!m.fs||Number.isNaN(m.fs)?void 0:m.fs,m.ff=((i=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.ff)!=null}))==null||(i=i.ts)==null?void 0:i.ff)??m.ff,m.it=p.length&&p.every(e=>{var n;return((n=e.ts)==null?void 0:n.it)===t.BooleanNumber.TRUE})?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE,m.bl=p.length&&p.every(e=>{var n;return((n=e.ts)==null?void 0:n.bl)===t.BooleanNumber.TRUE})?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE,m.ul=p.length&&p.every(e=>{var n;return((n=e.ts)==null||(n=n.ul)==null?void 0:n.s)===t.BooleanNumber.TRUE})?(a=p[0].ts)==null?void 0:a.ul:m.ul,m.st=p.length&&p.every(e=>{var n;return((n=e.ts)==null||(n=n.st)==null?void 0:n.s)===t.BooleanNumber.TRUE})?(o=p[0].ts)==null?void 0:o.st:m.st,m.bg=((s=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.bg)!=null}))==null||(s=s.ts)==null?void 0:s.bg)??m.bg,m.cl=((c=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.cl)!=null}))==null||(c=c.ts)==null?void 0:c.cl)??m.cl,m.textFill=((l=p.find(e=>{var t;return((t=e.ts)==null?void 0:t.textFill)!=null}))==null||(l=l.ts)==null?void 0:l.textFill)??m.textFill;let g=p.filter(e=>{var t;return(e==null||(t=e.ts)==null?void 0:t.va)!=null});if(g.length>0&&g.length===p.length){var _;let e=(_=g[0].ts)==null?void 0:_.va,t=!0;for(let n=1;n<g.length;n++){var v;if(((v=g[n].ts)==null?void 0:v.va)!==e){t=!1;break}}t&&(m.va=e)}return m}function ca(e,t){let n=na[t];return oa(e,n,t)}let la={id:`doc.command.insert-custom-range`,type:t.CommandType.COMMAND,handler:(e,n)=>{if(!n)return!1;let r=e.get(t.ICommandService),{unitId:i,rangeId:a=(0,t.generateRandomId)(),textRanges:o,properties:s,text:c,wholeEntity:l}=n,u={unitId:i,textRanges:o,body:{dataStream:c,customRanges:[{startIndex:0,endIndex:c.length-1,rangeId:a,rangeType:t.CustomRangeType.CUSTOM,properties:s,wholeEntity:l}]}};return r.syncExecuteCommand(br.id,u)}},ua={id:`doc.command.list-operation`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;let o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),l=r.listType,u=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=r.docRange??o.getDocRanges()??[];if(u==null||d.length===0)return!1;let f=d[0].segmentId,p=u.getSelfOrHeaderFooterModel(f),m=(p==null||(i=p.getBody())==null?void 0:i.paragraphs)??[],h=(p==null||(a=p.getBody())==null?void 0:a.dataStream)??``;if(!m.length)return!1;let g=t.BuildTextUtils.range.getParagraphsInRanges(d,m,h),_=u.getUnitId(),v={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:d,isEditing:!1}};new t.MemoryCursor().reset();let y=t.BuildTextUtils.paragraph.bullet.switch({paragraphs:g,listType:l,document:u,segmentId:f}),b=t.JSONX.getInstance(),x=(0,t.getRichTextEditPath)(u,f);return v.params.actions=b.editOp(y.serialize(),x),!!c.syncExecuteCommand(v.id,v.params)}},da={id:`doc.command.change-list-type`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;let o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),{listType:l}=r,u=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=r.docRange??o.getDocRanges();if(u==null||d==null||!d.length)return!1;let{segmentId:f}=d[0],p=u.getSelfOrHeaderFooterModel(f),m=(p==null||(i=p.getBody())==null?void 0:i.paragraphs)??[],h=(p==null||(a=p.getBody())==null?void 0:a.dataStream)??``;if(!m.length)return!1;let g=t.BuildTextUtils.range.getParagraphsInRanges(d,m,h),_=u.getUnitId(),v=t.BuildTextUtils.paragraph.bullet.set({paragraphs:g,listType:l,segmentId:f,document:u});if(!v)return!1;let y=t.JSONX.getInstance(),b={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:d,isEditing:!1}},x=(0,t.getRichTextEditPath)(u,f);return b.params.actions=y.editOp(v.serialize(),x),!!c.syncExecuteCommand(b.id,b.params)}},fa=function(e){return e[e.increase=1]=`increase`,e[e.decrease=-1]=`decrease`,e}({}),pa={id:`doc.command.change-list-nesting-level`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;if(!r)return!1;let{type:o}=r,s=e.get(n.DocSelectionManagerService),c=e.get(t.IUniverInstanceService),l=e.get(t.ICommandService),u=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=s.getActiveTextRange();if(u==null||d==null)return!1;let{segmentId:f}=d,p=s.getDocRanges()??[],m=u.getSelfOrHeaderFooterModel(f),h=(m==null||(i=m.getBody())==null?void 0:i.paragraphs)??[],g=(m==null||(a=m.getBody())==null?void 0:a.dataStream)??``;if(!h.length)return!1;let _=t.BuildTextUtils.range.getParagraphsInRange(d,h,g),v=u.getUnitId(),y=t.JSONX.getInstance(),b=t.BuildTextUtils.paragraph.bullet.changeNestLevel({paragraphs:_,type:o,segmentId:f,document:u}),x={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:p,isEditing:!1}},S=(0,t.getRichTextEditPath)(u,f);return x.params.actions=y.editOp(b.serialize(),S),!!l.syncExecuteCommand(x.id,x.params)}},ma={id:`doc.command.bullet-list`,type:t.CommandType.COMMAND,handler:(e,n)=>{let r=e.get(t.ICommandService);return n!=null&&n.value?r.syncExecuteCommand(da.id,{listType:n.value,docRange:n.docRange}):r.syncExecuteCommand(ua.id,{listType:t.PresetListType.BULLET_LIST,docRange:n==null?void 0:n.docRange})}},ha={id:`doc.command.check-list`,type:t.CommandType.COMMAND,handler:(e,n)=>{let r=e.get(t.ICommandService);return n!=null&&n.value?r.syncExecuteCommand(da.id,{listType:n.value,docRange:n.docRange}):r.syncExecuteCommand(ua.id,{listType:t.PresetListType.CHECK_LIST,docRange:n==null?void 0:n.docRange})}},ga={id:`doc.command.toggle-check-list`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;if(!r)return!1;let a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),{index:s,segmentId:c,textRanges:l}=r,u=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(u==null||((i=u.getSelfOrHeaderFooterModel(c))==null||(i=i.getBody())==null?void 0:i.paragraphs)==null)return!1;let d=u.getUnitId(),f={id:n.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:l??[],segmentId:c,isEditing:!1}},p=t.BuildTextUtils.paragraph.bullet.toggleChecklist({document:u,paragraphIndex:s,segmentId:c});if(!p)return!1;let m=t.JSONX.getInstance(),h=(0,t.getRichTextEditPath)(u,c);return f.params.actions=m.editOp(p.serialize(),h),!!o.syncExecuteCommand(f.id,f.params)}},_a={id:`doc.command.order-list`,type:t.CommandType.COMMAND,handler:(e,n)=>{let r=e.get(t.ICommandService);return n!=null&&n.value?r.syncExecuteCommand(da.id,{listType:n.value,docRange:n.docRange}):r.syncExecuteCommand(ua.id,{listType:t.PresetListType.ORDER_LIST,docRange:n==null?void 0:n.docRange})}},va={id:`doc.command.quick-list`,type:t.CommandType.COMMAND,handler(e,r){var i;if(!r)return!1;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),l=a.getActiveTextRange();if(c==null||l==null)return!1;let{segmentId:u,startOffset:d}=l,{listType:f,paragraph:p}=r,{paragraphStart:m,paragraphEnd:h}=p,g=new t.TextX,_=t.JSONX.getInstance(),{paragraphStyle:v={}}=p,y=(t.PRESET_LIST_TYPE[f].nestingLevel[0].paragraphProperties||{}).textStyle,b=(0,t.generateRandomId)(6),x=((i=c.getBody())==null?void 0:i.paragraphs)??[],S=x.findIndex(e=>e.startIndex===p.startIndex),C=x[S-1],w=x[S+1];C&&C.bullet&&C.bullet.listType.indexOf(f)===0?b=C.bullet.listId:w&&w.bullet&&w.bullet.listType.indexOf(f)===0&&(b=w.bullet.listId);let T={id:n.RichTextEditingMutation.id,params:{unitId:c.getUnitId(),actions:[],textRanges:[{startOffset:m,endOffset:m,collapsed:!0}],isEditing:!1}};g.push({t:t.TextXActionType.RETAIN,len:m}),g.push({t:t.TextXActionType.DELETE,len:d-m}),h>d&&g.push({t:t.TextXActionType.RETAIN,len:h-d}),g.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{startIndex:0,paragraphId:p.paragraphId,paragraphStyle:{...v,textStyle:{...v.textStyle,...y},indentFirstLine:void 0},bullet:{...p.bullet??{nestingLevel:0},listType:f,listId:b}}]}});let E=(0,t.getRichTextEditPath)(c,u);return T.params.actions=_.editOp(g.serialize(),E),!!s.syncExecuteCommand(T.id,T.params)}};function ya(e,r,i){let a=e.get(t.ICommandService),o=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!o)return!1;let s=null;try{s=e.get(n.DocContentInsertService).consumeInsertRange(o.getUnitId())}catch{s=null}let c=s?null:De(e);if(!s&&!c)return!1;let l=c||void 0,u=(s==null?void 0:s.startOffset)??l.startIndex+1,d=l==null?void 0:l.bullet,f=t.BuildTextUtils.selection.replace({doc:o,selection:{startOffset:u,endOffset:(s==null?void 0:s.endOffset)??u,collapsed:!0},body:{dataStream:`\r`,paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set),paragraphStyle:{...(l==null?void 0:l.paragraphStyle)??{}},bullet:{listType:r,listId:(d==null?void 0:d.listType)===r?d.listId:(0,t.generateRandomId)(6),nestingLevel:(d==null?void 0:d.listType)===r?d.nestingLevel:0}}]}});if(!f)return!1;let p={id:n.RichTextEditingMutation.id,params:{unitId:o.getUnitId(),actions:[],textRanges:[{startOffset:u,endOffset:u,collapsed:!0}],isEditing:!1,trigger:i}},m=t.JSONX.getInstance(),h=(0,t.getRichTextEditPath)(o);return p.params.actions=m.editOp(f.serialize(),h),!!a.syncExecuteCommand(p.id,p.params)}let ba={id:`doc.command.insert-bullet-list-bellow`,type:t.CommandType.COMMAND,handler:e=>ya(e,t.PresetListType.BULLET_LIST,ba.id)},xa={id:`doc.command.insert-order-list-bellow`,type:t.CommandType.COMMAND,handler:e=>ya(e,t.PresetListType.ORDER_LIST,xa.id)},Sa={id:`doc.command.insert-check-list-bellow`,type:t.CommandType.COMMAND,handler:e=>ya(e,t.PresetListType.CHECK_LIST,Sa.id)},Y={id:`doc.command.align-action`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,a;let o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),{alignType:l}=r,u=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(u==null)return!1;let d=o.getDocRanges();if(d.length===0)return!1;let f=d[0].segmentId,p=u.getSelfOrHeaderFooterModel(f),m=(p==null||(i=p.getBody())==null?void 0:i.paragraphs)??[],h=(p==null||(a=p.getBody())==null?void 0:a.dataStream)??``;if(m==null)return!1;let g=t.BuildTextUtils.range.getParagraphsInRanges(d,m,h),_=u.getUnitId(),v=g.every(e=>{var t;return((t=e.paragraphStyle)==null?void 0:t.horizontalAlign)===l}),y={id:n.RichTextEditingMutation.id,params:{unitId:_,actions:[],textRanges:d}},b=new t.MemoryCursor;b.reset();let x=new t.TextX,S=t.JSONX.getInstance();for(let e of g){let{startIndex:n}=e;x.push({t:t.TextXActionType.RETAIN,len:n-b.cursor});let r={...e.paragraphStyle,horizontalAlign:v?t.HorizontalAlign.UNSPECIFIED:l};x.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{...e,paragraphStyle:r,startIndex:0}]},coverType:t.UpdateDocsAttributeType.REPLACE}),b.moveCursorTo(n+1)}let C=(0,t.getRichTextEditPath)(u,f);return y.params.actions=S.editOp(x.serialize(),C),!!c.syncExecuteCommand(y.id,y.params)}},Ca={id:`doc.command.align-left`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Y.id,{alignType:t.HorizontalAlign.LEFT})},wa={id:`doc.command.align-center`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Y.id,{alignType:t.HorizontalAlign.CENTER})},Ta={id:`doc.command.align-right`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Y.id,{alignType:t.HorizontalAlign.RIGHT})},Ea={id:`doc.command.align-justify`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Y.id,{alignType:t.HorizontalAlign.JUSTIFIED})},Da=(e,n)=>{let r=e.get(t.IUniverInstanceService).getUnit(n.unitId,t.UniverInstanceType.UNIVER_DOC);return r==null||r.setZoomRatio(n.zoomRatio),{...n}},Oa={id:`doc.operation.set-zoom-ratio`,type:t.CommandType.OPERATION,handler:(e,n)=>{let r=e.get(t.IUniverInstanceService).getUnit(n.unitId,t.UniverInstanceType.UNIVER_DOC);return r?(r.setZoomRatio(n.zoomRatio),!0):!1}},ka={type:t.CommandType.COMMAND,id:`doc.command.set-zoom-ratio`,handler:async(e,n)=>{let r=e.get(t.ICommandService),i=e.get(t.IUndoRedoService),a=e.get(t.IUniverInstanceService),{zoomRatio:o=1,documentId:s}=n||{},c=s?a.getUnit(s,t.UniverInstanceType.UNIVER_DOC):a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=c.getUnitId(),u={zoomRatio:o,unitId:l},d=Da(e,u);return r.syncExecuteCommand(Oa.id,u)?(i.pushUndoRedo({unitID:l,undoMutations:[{id:Oa.id,params:d}],redoMutations:[{id:Oa.id,params:u}]}),!0):!1}},Aa={id:`doc.command.set-paragraph-named-style`,type:t.CommandType.COMMAND,handler(e,r){if(!r)return!1;let i=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!i)return!1;let a=i.getUnitId(),o=e.get(n.DocSelectionManagerService),s=r.textRanges?null:(0,n.consumeContentInsertRange)(e,a);if(s)return ja(e,i,r.value,s.startOffset,s.endOffset,s.segmentId);let c=r.textRanges??o.getTextRanges({unitId:a,subUnitId:a});if(!(c!=null&&c.length))return!1;let l=c[0].segmentId,u=i.getSelfOrHeaderFooterModel(l);if(!u)return!1;let d=t.BuildTextUtils.paragraph.style.set({document:u,textRanges:c,style:{namedStyleType:r.value,headingId:!r.value||r.value===t.NamedStyleType.NORMAL_TEXT?void 0:(0,t.generateRandomId)(6),spaceAbove:void 0,spaceBelow:void 0,lineSpacing:void 0,spacingRule:void 0},paragraphTextRun:{}}),f={id:n.RichTextEditingMutation.id,params:{actions:[],textRanges:c,unitId:a,segmentId:l}},p=t.JSONX.getInstance(),m=(0,t.getRichTextEditPath)(i,l);return f.params.actions=p.editOp(d.serialize(),m),!!e.get(t.ICommandService).syncExecuteCommand(f.id,f.params)}};function ja(e,r,i,a,o,s=``){let c=t.BuildTextUtils.selection.replace({doc:r,selection:{startOffset:a,endOffset:o,collapsed:a===o,segmentId:s},body:{dataStream:`\r`,paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set),paragraphStyle:{namedStyleType:i,headingId:!i||i===t.NamedStyleType.NORMAL_TEXT?void 0:(0,t.generateRandomId)(6)}}]}});if(!c)return!1;let l=t.JSONX.getInstance(),u=!!e.get(t.ICommandService).syncExecuteCommand(n.RichTextEditingMutation.id,{actions:l.editOp(c.serialize(),(0,t.getRichTextEditPath)(r,s)),isEditing:!1,textRanges:[{startOffset:a,endOffset:a,collapsed:!0}],segmentId:s,unitId:r.getUnitId()});return u&&e.get(n.DocSelectionManagerService).replaceDocRanges([{startOffset:a,endOffset:a}],void 0,!1),u}let Ma={id:`doc.command.quick-heading`,type:t.CommandType.COMMAND,handler(e,r){var i,a;if(!r)return!1;let{value:o}=r,s=e.get(n.DocSelectionManagerService),c=e.get(t.IUniverInstanceService),l=e.get(t.ICommandService),u=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=s.getActiveTextRange();if(u==null||d==null||!d.collapsed)return!1;let{segmentId:f,startOffset:p}=d,m=u.getSelfOrHeaderFooterModel(f),h=(m==null||(i=m.getBody())==null?void 0:i.paragraphs)??[],g=(m==null||(a=m.getBody())==null?void 0:a.dataStream)??``,_=t.BuildTextUtils.paragraph.util.getParagraphsInRange(d,h,g)[0];if(!_)return!1;let{paragraphStart:v}=_,y=new t.TextX,b=t.JSONX.getInstance(),{paragraphStyle:x={}}=_,S={id:n.RichTextEditingMutation.id,params:{unitId:u.getUnitId(),actions:[],textRanges:[{startOffset:v,endOffset:v,collapsed:!0}],isEditing:!1}};y.push({t:t.TextXActionType.RETAIN,len:v}),t.BuildTextUtils.paragraph.style.set({textRanges:[d],document:u,style:{...x,headingId:(0,t.generateRandomId)(6),namedStyleType:o,lineSpacing:void 0,spacingRule:void 0},cursor:p,deleteLen:p-v,textX:y,paragraphTextRun:{}});let C=(0,t.getRichTextEditPath)(u,f);return S.params.actions=b.editOp(y.serialize(),C),!!l.syncExecuteCommand(S.id,S.params)}},Na={"#":t.NamedStyleType.HEADING_1,"##":t.NamedStyleType.HEADING_2,"###":t.NamedStyleType.HEADING_3,"####":t.NamedStyleType.HEADING_4,"#####":t.NamedStyleType.HEADING_5},Pa={id:`doc.command.h1-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.HEADING_1})},Fa={id:`doc.command.h2-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.HEADING_2})},Ia={id:`doc.command.h3-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.HEADING_3})},La={id:`doc.command.h4-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.HEADING_4})},Ra={id:`doc.command.h5-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.HEADING_5})},za={id:`doc.command.normal-text-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.NORMAL_TEXT})},Ba={id:`doc.command.title`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.TITLE})},Va={id:`doc.command.subtitle-heading`,type:t.CommandType.COMMAND,handler:e=>e.get(t.ICommandService).syncExecuteCommand(Aa.id,{value:t.NamedStyleType.SUBTITLE})},Ha={id:`doc.command.switch-mode`,type:t.CommandType.COMMAND,handler:e=>{var i,a;let o=e.get(t.ICommandService),s=e.get(r.IRenderManagerService),c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(l==null)return!1;let u=l.getUnitId(),d=(i=s.getRenderUnitById(u))==null?void 0:i.with(n.DocSkeletonManagerService).getSkeleton(),f=(a=s.getRenderUnitById(u))==null?void 0:a.with(J);if(d==null||f==null)return!1;let p=f==null?void 0:f.getSegment(),m=f==null?void 0:f.getSegmentPage(),h=l.getSnapshot().documentStyle.documentFlavor,g=c.getDocRanges(),_={id:n.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:h===t.DocumentFlavor.TRADITIONAL&&p?[]:g}},v=t.JSONX.getInstance(),y=[],b;if(b=h===void 0?v.insertOp([`documentStyle`,`documentFlavor`],t.DocumentFlavor.MODERN):h===t.DocumentFlavor.MODERN?v.replaceOp([`documentStyle`,`documentFlavor`],h,t.DocumentFlavor.TRADITIONAL):v.replaceOp([`documentStyle`,`documentFlavor`],h,t.DocumentFlavor.MODERN),b)y.push(b);else return!1;if(h!==t.DocumentFlavor.MODERN){let{drawings:e={},body:n}=l.getSnapshot(),r=(n==null?void 0:n.customBlocks)??[];for(let n in e){var x,S;let i=e[n],a=r.find(e=>e.blockId===n);if(a==null)continue;let o=i.docTransform.positionV,{relativeFrom:s,posOffset:c}=o;if(s===t.ObjectRelativeFromV.PARAGRAPH)continue;let{startIndex:l}=a,u=d.findNodeByCharIndex(l,p,m),f=u==null||(x=u.parent)==null?void 0:x.parent,h=f==null?void 0:f.parent,g=h==null?void 0:h.lines.find(e=>e.paragraphIndex===(f==null?void 0:f.paragraphIndex)&&e.paragraphStart),_=h==null||(S=h.parent)==null?void 0:S.parent;if(u==null||f==null||g==null||h==null||_==null)continue;let b=0;s===t.ObjectRelativeFromV.LINE?b-=f.top:s===t.ObjectRelativeFromV.PAGE&&(b+=_.marginTop),b+=g.top;let C={...o,relativeFrom:t.ObjectRelativeFromV.PARAGRAPH,posOffset:(c??0)-b},w=v.replaceOp([`drawings`,n,`docTransform`,`positionV`],o,C);w&&y.push(w)}}return _.params.actions=y.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(_.id,_.params)}};function Ua(e){let{tableDataStream:n,tableParagraphs:r,sectionBreaks:i,tableId:a,textRun:o}=e,s=e.existingParagraphIds??new Set(r.map(e=>e.paragraphId)),c=`${n}${t.DataStreamTreeTokenType.PARAGRAPH}`,l=n.length;return{dataStream:c,paragraphs:[...r,{startIndex:l,paragraphId:(0,t.createParagraphId)(s)}],sectionBreaks:i,textRuns:[{...o,st:0,ed:l}],tables:[{startIndex:0,endIndex:l,tableId:a}]}}function Wa(e,n){return n<=0||e.dataStream[n-1]!==t.DataStreamTreeTokenType.PARAGRAPH}function Ga(e,n){return n===0&&e.dataStream[0]===t.DataStreamTreeTokenType.PARAGRAPH?1:n}function Ka(e,t){return!(qa(e.tables,t)||Ja(e.blockRanges,t)||Ya(e.customBlocks,t))}function qa(e,n){return!!(e!=null&&e.some(e=>(0,t.containsInteriorInsertionOffset)((0,t.getTableRangeInterval)(e),n)))}function Ja(e,n){return!!(e!=null&&e.some(e=>(0,t.containsInteriorInsertionOffset)((0,t.getBlockRangeInterval)(e),n)))}function Ya(e,t){return!!(e!=null&&e.some(e=>e.startIndex===t))}let Xa={id:`doc.command.create-table`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i,a,o;let{rowCount:s,colCount:c}=r,l=e.get(n.DocSelectionManagerService),u=e.get(t.IUniverInstanceService),d=e.get(t.ICommandService),f=e.get(I),p=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(p==null)return!1;let m=null;try{m=e.get(n.DocContentInsertService).consumeInsertRange(p.getUnitId())}catch{m=null}let h=l.getActiveTextRange();if(h==null&&m==null)return!1;let g=(m==null?void 0:m.segmentId)??(h==null?void 0:h.segmentId)??``,_=h==null?void 0:h.segmentPage,v=p==null||(i=p.getSelfOrHeaderFooterModel(g))==null?void 0:i.getBody();if(v==null)return!1;let y=p.getUnitId(),b=V(e,y),x=b==null?void 0:b.getSkeleton();if(x==null)return!1;let C=Ga(v,(m==null?void 0:m.startOffset)??h.startOffset);if(!Ka(v,C))return!1;let w=(v.paragraphs??[]).find(e=>(0,t.getParagraphContentStartOffset)(v,e)<C&&C<=e.startIndex),T=x.findNodeByCharIndex(C,g,_);if(T==null)return!1;let E=Wa(v,C),D=new t.TextX,O=t.JSONX.getInstance(),k=[],A=C+(E?4:3),j=[{startOffset:A,endOffset:A,collapsed:!0}],M={id:n.RichTextEditingMutation.id,params:{unitId:y,actions:[],textRanges:j}};C>0&&D.push({t:t.TextXActionType.RETAIN,len:C}),E&&D.push({t:t.TextXActionType.INSERT,body:{dataStream:t.DataStreamTreeTokenType.PARAGRAPH,paragraphs:(0,n.generateParagraphs)(t.DataStreamTreeTokenType.PARAGRAPH,w)},len:1});let N=S(v,C,f.getDefaultStyle(),f.getStyleCache()),{dataStream:P,paragraphs:F,sectionBreaks:L}=ee(s,c),R=(a=T.parent)==null||(a=a.parent)==null||(a=a.parent)==null||(a=a.parent)==null?void 0:a.parent;if(R==null)return!1;let{pageWidth:z,marginLeft:B,marginRight:H}=R,U=G(s,c,z-B-H),W=Ua({tableDataStream:P,tableParagraphs:F,sectionBreaks:L,tableId:U.tableId,textRun:N,existingParagraphIds:new Set((o=v.paragraphs)==null?void 0:o.map(e=>e.paragraphId))});D.push({t:t.TextXActionType.INSERT,body:W,len:W.dataStream.length});let te=(0,t.getRichTextEditPath)(p,g);k.push(O.editOp(D.serialize(),te));let ne=O.insertOp([`tableSource`,U.tableId],U);return k.push(ne),M.params.actions=k.reduce((e,n)=>t.JSONX.compose(e,n),null),!!d.syncExecuteCommand(M.id,M.params)}},Za={id:`doc.table.delete-rows`,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=i.getRectRanges(),c=te(i.getActiveTextRange(),s);if(c==null)return!1;let{segmentId:l}=c,u=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=u==null||(r=u.getSelfOrHeaderFooterModel(l))==null?void 0:r.getBody();if(u==null||d==null)return!1;let f=V(e,u.getUnitId());if(f==null)return!1;let p=f.getViewModel(),m=u==null?void 0:u.getUnitId(),h=new t.TextX,g=t.JSONX.getInstance(),_=K(c,p);if(_==null)return!1;let{offset:v,rowIndexes:y,len:b,tableId:x,cursor:S,selectWholeTable:C}=_;if(C)return o.executeCommand($a.id);let w=[],T=[{startOffset:S,endOffset:S,collapsed:!0}],E={id:n.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:T}};v>0&&h.push({t:t.TextXActionType.RETAIN,len:v}),h.push({t:t.TextXActionType.DELETE,len:b});let D=(0,t.getRichTextEditPath)(u,l);w.push(g.editOp(h.serialize(),D));for(let e of y.reverse()){let t=g.removeOp([`tableSource`,x,`tableRows`,e]);w.push(t)}return E.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(E.id,E.params)}},Qa={id:`doc.table.delete-columns`,type:t.CommandType.COMMAND,handler:async e=>{var r;let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=i.getRectRanges(),c=te(i.getActiveTextRange(),s);if(c==null)return!1;let{segmentId:l}=c,u=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),d=u==null||(r=u.getSelfOrHeaderFooterModel(l))==null?void 0:r.getBody();if(u==null||d==null)return!1;let f=V(e,u.getUnitId());if(f==null)return!1;let p=f.getViewModel(),m=u==null?void 0:u.getUnitId(),h=new t.TextX,g=t.JSONX.getInstance(),_=q(c,p);if(_==null)return!1;let{offsets:v,columnIndexes:y,tableId:b,cursor:x,rowCount:S,selectWholeTable:C}=_;if(C)return o.executeCommand($a.id);let w=[],T=[{startOffset:x,endOffset:x,collapsed:!0}],E={id:n.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:T}};for(let e of v){let{retain:n,delete:r}=e;n>0&&h.push({t:t.TextXActionType.RETAIN,len:n}),h.push({t:t.TextXActionType.DELETE,len:r})}let D=(0,t.getRichTextEditPath)(u,l);w.push(g.editOp(h.serialize(),D)),y.reverse();for(let e=0;e<S;e++)for(let t of y){let n=g.removeOp([`tableSource`,b,`tableRows`,e,`tableCells`,t]);w.push(n)}for(let e of y){let t=g.removeOp([`tableSource`,b,`tableColumns`,e]);w.push(t)}return E.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!o.syncExecuteCommand(E.id,E.params)}},$a={id:`doc.table.delete-table`,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let a=e.get(n.DocSelectionManagerService),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=a.getRectRanges(),l=a.getActiveTextRange(),u=te((r==null?void 0:r.targetRange)??l,r!=null&&r.targetRange?[]:c);if(u==null)return!1;let{segmentId:d}=u,f=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),p=f==null||(i=f.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();if(f==null||p==null)return!1;let m=V(e,f.getUnitId());if(m==null)return!1;let h=m.getViewModel(),g=f==null?void 0:f.getUnitId(),_=new t.TextX,v=t.JSONX.getInstance(),y=se(u,h);if(y==null)return!1;let{offset:b,len:x,tableId:S,cursor:C}=y,w=[],T=[{startOffset:C,endOffset:C,collapsed:!0}],E={id:n.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:T}};b>0&&_.push({t:t.TextXActionType.RETAIN,len:b}),_.push({t:t.TextXActionType.DELETE,len:x});let D=(0,t.getRichTextEditPath)(f,d);w.push(v.editOp(_.serialize(),D));let O=v.removeOp([`tableSource`,S]);return w.push(O),E.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!s.syncExecuteCommand(E.id,E.params)}},eo=`doc.command.table-insert-row`,to=`doc.command.table-insert-column`,no={id:`doc.command.table-insert-row-above`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(eo,{position:0})},ro={id:`doc.command.table-insert-row-bellow`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(eo,{position:1})},io={id:`doc.command.table-insert-column-left`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(to,{position:0})},ao={id:`doc.command.table-insert-column-right`,type:t.CommandType.COMMAND,handler:async e=>e.get(t.ICommandService).executeCommand(to,{position:1})},oo={id:eo,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i;let{position:a}=r,o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(t.ICommandService),l=o.getRectRanges(),u=te(o.getActiveTextRange(),l);if(u==null)return!1;let{segmentId:d}=u,f=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),p=f==null||(i=f.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();if(f==null||p==null)return!1;let m=V(e,f.getUnitId());if(m==null)return!1;let h=m.getViewModel(),g=f==null?void 0:f.getUnitId(),_=new t.TextX,v=t.JSONX.getInstance(),y=ie(u,a,h);if(y==null)return!1;let{offset:b,colCount:x,tableId:S,insertRowIndex:C}=y,w=[],T=b+2,E=[{startOffset:T,endOffset:T,collapsed:!0}],D={id:n.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:E}};b>0&&_.push({t:t.TextXActionType.RETAIN,len:b});let O=ne(x);_.push({t:t.TextXActionType.INSERT,body:O,len:O.dataStream.length});let k=(0,t.getRichTextEditPath)(f,d);w.push(v.editOp(_.serialize(),k));let A=U(x),j=v.insertOp([`tableSource`,S,`tableRows`,C],A);return w.push(j),D.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null),!!c.syncExecuteCommand(D.id,D.params)}},so={id:to,type:t.CommandType.COMMAND,handler:async(e,r)=>{var i,a,o;let{position:s}=r,c=e.get(n.DocSelectionManagerService),l=e.get(t.IUniverInstanceService),u=e.get(t.ICommandService),d=c.getRectRanges(),f=te(c.getActiveTextRange(),d);if(f==null)return!1;let{segmentId:p}=f,m=l.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),h=m==null||(i=m.getSelfOrHeaderFooterModel(p))==null?void 0:i.getBody();if(m==null||h==null)return!1;let g=V(e,m.getUnitId());if(g==null)return!1;let _=g.getViewModel(),v=m==null?void 0:m.getUnitId(),y=new t.TextX,b=t.JSONX.getInstance(),x=ae(f,s,_);if(x==null)return!1;let{offsets:S,columnIndex:C,tableId:w,rowCount:T}=x,E=[],D=S[0]+1,O=[{startOffset:D,endOffset:D,collapsed:!0}],k={id:n.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:O}};for(let e of S){y.push({t:t.TextXActionType.RETAIN,len:e});let n=re();y.push({t:t.TextXActionType.INSERT,body:n,len:n.dataStream.length})}let A=(0,t.getRichTextEditPath)(m,p);E.push(b.editOp(y.serialize(),A));for(let e=0;e<T;e++){let t=H(),n=b.insertOp([`tableSource`,w,`tableRows`,e,`tableCells`,C],t);E.push(n)}let j=m.getSnapshot(),M=j.documentStyle,{marginLeft:N=0,marginRight:P=0}=M,F=j==null||(a=j.tableSource)==null||(a=a[w])==null?void 0:a.tableColumns;if(!F)return!1;let I=(((o=M.pageSize)==null?void 0:o.width)??800)-N-P,L=F.reduce((e,t)=>e+t.size.width.v,0),{newColWidth:R,widths:z}=oe(L>0?L:I,F,C);for(let e=0;e<z.length;e++){let t=b.replaceOp([`tableSource`,w,`tableColumns`,e,`size`,`width`,`v`],F[e].size.width.v,z[e]);E.push(t)}let B=W(R),ee=b.insertOp([`tableSource`,w,`tableColumns`,C],B);return E.push(ee),k.params.actions=E.reduce((e,n)=>t.JSONX.compose(e,n),null),!!u.syncExecuteCommand(k.id,k.params)}},co={id:`doc.table.tab-in-table`,type:t.CommandType.COMMAND,handler:async(e,r)=>{let{shift:i}=r,a=e.get(n.DocSelectionManagerService),o=a.getDocRanges(),s=e.get(t.ICommandService),c=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=o.find(e=>e.isActive)??o[0],u=V(e,c.getUnitId()),d=u==null?void 0:u.getSkeleton(),f=d==null?void 0:d.getViewModel().getSelfOrHeaderFooterViewModel(l==null?void 0:l.segmentId);if(f==null||l==null)return!1;let p=null;if(p=i?le(f,l,1):le(f,l,0),p){let{startOffset:e,endOffset:t}=p,n=[{startOffset:e,endOffset:t}];return a.replaceDocRanges(n),!0}return i!==!1||await s.executeCommand(oo.id,{position:1})}},lo=`COMPONENT_DOC_CREATE_TABLE_CONFIRM`,uo=`doc.component.create-table-confirm`,fo={id:`doc.operation.create-table`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(t.LocaleService),r=e.get(t.IConfirmService),i=e.get(t.ICommandService),a={rowCount:3,colCount:5};return await r.open({id:uo,children:{label:{name:lo,props:{handleRowColChange:(e,t)=>{a.rowCount=e,a.colCount=t},tableCreateParams:a}}},width:`auto`,title:{title:n.t(`docs-ui.toolbar.table.insert`)},onConfirm:()=>{i.executeCommand(Xa.id,a),r.close(uo)},onClose:()=>{r.close(uo)}}),!0}},po={id:`doc.operation.move-cursor`,type:t.CommandType.OPERATION,handler:(e,t)=>!!t},mo={id:`doc.operation.move-selection`,type:t.CommandType.OPERATION,handler:(e,t)=>!!t},ho=`docs-ui.config`,go={mode:`none`,target:`viewport`,paddingX:20,minScale:1,maxScale:void 0,align:`center`},_o={toc:!1,footer:!0,wordCount:!0,placeholder:!0,fitToWidth:go},vo=1.5,yo=class extends t.RxDisposable{constructor(e,t,n,r){super(),this._context=e,this._textSelectionManagerService=t,this._editorService=n,this._docSkeletonManagerService=r,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{if(e==null)return;let{isEditing:n,unitId:r}=e;r!==this._context.unitId||!n||this._context.unitId!==t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(e){let t=this._docSkeletonManagerService.getSkeleton();if(!t)return;let{startOffset:n}=e,r=t.findNodePositionByCharIndex(n);r&&this.scrollToNode(r)}scrollToNode(e){let{unitId:t,scene:n,mainComponent:r}=this._context,i=this._docSkeletonManagerService.getSkeleton();if(r==null||i==null)return;let a=r.getOffsetConfig(),{docsLeft:o,docsTop:s}=a,{contentBoxPointGroup:c}=new Mr(a,i).getRangePointData(e,e),{left:l,top:u,height:d}=ii(c),f=l+o,p=u+s,m=n.getViewport(`viewMain`);if(m==null)return;let{left:h,top:g,right:_,bottom:v}=m.calcViewportInfo().viewBound,y=0,b=0,x=this._editorService.getEditorRenderConfig(t),S=x?x.backScrollOffset??0:100;p<g?y=p-g-S:p>v-d&&(y=p-v+d+S),f<h?b=f-h:f>_-vo&&(b=f-_+vo);let C=m.transViewportScroll2ScrollValue(b,y);m.scrollByBarDeltaValue(C)}_scrollToSelection(){let e=this._textSelectionManagerService.getActiveTextRange();if(e==null)return;let{collapsed:t,startNodePosition:n}=e;t&&this.scrollToNode(n)}};yo=A([k(1,(0,t.Inject)(n.DocSelectionManagerService)),k(2,Oi),k(3,(0,t.Inject)(n.DocSkeletonManagerService))],yo);let bo=class extends t.Disposable{constructor(e,t,n,r){super(),this._context=e,this._localeService=t,this._docSelectionManagerService=n,this._configService=r,this._initParagraphPlaceholderRender()}_initParagraphPlaceholderRender(){let e=this._configService.getConfig(ho);if(!xo(this._context.unit,this._context.unitId,e))return;let t=this._context.mainComponent;t&&(this.disposeWithMe(t.pageRender$.subscribe(e=>this._drawPagePlaceholders(e))),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(({unitId:e})=>{e===this._context.unitId&&t.makeDirty(!0)})))}_drawPagePlaceholders({page:e,pageLeft:t,pageTop:n,ctx:r}){var i,a;let o=(i=this._context.unit.getSelfOrHeaderFooterModel(e.segmentId))==null?void 0:i.getBody();if(!o)return;let s=this._docSelectionManagerService.getActiveTextRange();if(!s||(s.segmentId??``)!==(e.segmentId??``)||s.startOffset==null||s.endOffset==null||s.startOffset!==s.endOffset)return;let c=So(e,o,this._getLocale(),t,n,s.startOffset,{docsLeft:(a=this._context.mainComponent)==null?void 0:a.getOffsetConfig().docsLeft,unitId:this._context.unitId});c.length&&Mo(r,c)}_getLocale(){return{heading1:this._localeService.t(`docs-ui.placeholder.heading1`),heading2:this._localeService.t(`docs-ui.placeholder.heading2`),heading3:this._localeService.t(`docs-ui.placeholder.heading3`),heading4:this._localeService.t(`docs-ui.placeholder.heading4`),heading5:this._localeService.t(`docs-ui.placeholder.heading5`),listItem:this._localeService.t(`docs-ui.placeholder.listItem`),normalText:this._localeService.t(`docs-ui.placeholder.normalText`)}}};bo=A([k(1,(0,t.Inject)(t.LocaleService)),k(2,(0,t.Inject)(n.DocSelectionManagerService)),k(3,t.IConfigService)],bo);function xo(e,n,r){var i;return(r==null?void 0:r.placeholder)===!1||(0,t.isInternalEditorID)(n)?!1:((i=e.getSnapshot().documentStyle)==null?void 0:i.documentFlavor)===t.DocumentFlavor.MODERN}function So(e,t,n,i=0,a=0,o,s){var c;let l=new Map((t.paragraphs??[]).map(e=>[e.startIndex,e])),u=[],d=(e,r,i,a)=>{for(let s of e.columns)Co(s,t,l,n,u,r+s.left,i+e.top,o,a)};for(let t of e.sections)d(t,i+e.marginLeft,a+e.marginTop);return(c=e.skeTables)==null||c.forEach((t,n)=>{let o=(0,r.getTableIdAndSliceIndex)(t.tableId??n).tableId,c=(0,r.getDocsTableRenderViewport)((s==null?void 0:s.unitId)??``,o),l=c!=null&&(c.leadingInsetLeft??0)+c.contentWidth+(c.trailingInsetRight??0)>c.viewportWidth,u=i+e.marginLeft+t.left,f=l?(0,r.getDocsTableViewportLeft)(c,u-(c.leadingInsetLeft??0),s==null?void 0:s.docsLeft):u,p=f+(l?c.viewportWidth:t.width),m=l?c.scrollLeft:0;for(let n of t.rows)for(let r of n.cells){let i=u+r.left-m,o=i+r.marginLeft,s=i+r.pageWidth-r.marginRight,c=Math.max(o,f),l=Math.min(s,p);if(!(l<=c))for(let i of r.sections)d(i,o,a+e.marginTop+t.top+n.top+r.marginTop,{left:c,right:l})}}),u}function Co(e,t,n,r,i,a,o,s,c){for(let l of e.lines){if(!l.paragraphStart)continue;let e=l.st,u=l.paragraphIndex;if(!wo(s,e,u))continue;let d=n.get(u);if(!d||!Do(t.dataStream,l.st,l.paragraphIndex))continue;let f=To(d,r);f&&i.push(Eo(l,d,f,a,o,c))}}function wo(e,t,n){return t<=e&&e<=n}function To(e,n){var r;if(e.bullet)return n.listItem;switch((r=e.paragraphStyle)==null?void 0:r.namedStyleType){case t.NamedStyleType.HEADING_1:return n.heading1;case t.NamedStyleType.HEADING_2:return n.heading2;case t.NamedStyleType.HEADING_3:return n.heading3;case t.NamedStyleType.HEADING_4:return n.heading4;case t.NamedStyleType.HEADING_5:return n.heading5;default:return n.normalText}}function Eo(e,n,r,i,a,o){var s;let c=e.divides[0],l=((c==null?void 0:c.glyphGroup)??[])[0],u=t.NAMED_STYLE_MAP[((s=n.paragraphStyle)==null?void 0:s.namedStyleType)??t.NamedStyleType.NORMAL_TEXT],d=Ao(e,n),f=jo(e)??`Arial`,p=u!=null&&u.bl?`bold`:`normal`,m=i+((c==null?void 0:c.left)??0)+((c==null?void 0:c.paddingLeft)??0),h=n.bullet&&l?l.left+l.width+4:0,g=m+h,_=Math.max(0,((c==null?void 0:c.width)??e.width??0)-h),v=Math.max(g,(o==null?void 0:o.left)??g),y=Math.min(g+_,(o==null?void 0:o.right)??g+_),b=a+e.top;return{clipBottom:b+e.lineHeight,clipLeft:v,clipRight:y,clipTop:b,fontFamily:f,fontSize:d,fontWeight:p,maxWidth:Math.max(0,y-v),text:r,x:g,y:a+e.top+e.marginTop+e.paddingTop+e.asc}}function Do(e,t,n){return Oo((e==null?void 0:e.slice(t,n))??``).trim()===``}function Oo(e){return e.replaceAll(t.DataStreamTreeTokenType.PARAGRAPH,``).replaceAll(t.DataStreamTreeTokenType.SECTION_BREAK,``).replaceAll(t.DataStreamTreeTokenType.DOCS_END,``)}function ko(e){for(let i of e.divides)for(let e of i.glyphGroup){var t,n,r;let i=((t=e.fontStyle)==null?void 0:t.originFontSize)??((n=e.fontStyle)==null?void 0:n.fontSize)??((r=e.ts)==null?void 0:r.fs);if(i)return i}return null}function Ao(e,n){var r;let i=((r=n.paragraphStyle)==null?void 0:r.namedStyleType)??t.NamedStyleType.NORMAL_TEXT,a=t.NAMED_STYLE_MAP[i],o=ko(e)??(a==null?void 0:a.fs)??12;return i===t.NamedStyleType.NORMAL_TEXT?Math.max(o,16):o}function jo(e){for(let r of e.divides)for(let e of r.glyphGroup){var t,n;let r=((t=e.fontStyle)==null?void 0:t.fontFamily)??((n=e.ts)==null?void 0:n.ff);if(r)return r}return null}function Mo(e,t){e.save(),e.fillStyle=`gray.400`,e.textBaseline=`alphabetic`;for(let n of t){let t=n.clipLeft??n.x,r=n.clipRight??n.x+n.maxWidth,i=n.clipTop??n.y-n.fontSize,a=n.clipBottom??n.y+n.fontSize;r<=t||a<=i||(e.save(),e.beginPath(),e.rectByPrecision(t,i,r-t,a-i),e.closePath(),e.clip(),e.font=`${n.fontWeight} ${n.fontSize}px ${n.fontFamily}`,e.fillText(n.text,n.x,n.y),e.restore())}e.restore()}function No(e){var n,r;return((n=e.getSettings())==null?void 0:n.zoomRatio)??((r=e.getSnapshot().documentStyle)==null||r.documentFlavor,t.DocumentFlavor.MODERN,1)}function Po(e){return{...go,...e}}function Fo(e,t){if(typeof t==`number`)return Number.isFinite(t)?t:0;if(typeof t==`string`){let n=t.trim();if(n.endsWith(`%`)){let t=Number(n.slice(0,-1));return Number.isFinite(t)?e*t/100:0}}return 0}function Io(e){let t=Po(e.options);if(t.mode!==`fit-width`||!Number.isFinite(e.availableWidth)||!Number.isFinite(e.baseWidth)||e.baseWidth<=0)return 1;let n=Fo(e.availableWidth,t.paddingX),r=Math.max(0,e.availableWidth-n*2)/e.baseWidth,i=t.maxScale??1/0;return Math.min(i,Math.max(t.minScale,r))}function Lo(e){return e.documentStylePageWidth!=null&&Number.isFinite(e.documentStylePageWidth)&&e.documentStylePageWidth>0?e.documentStylePageWidth:e.documentFlavor===t.DocumentFlavor.MODERN?t.MODERN_DOCUMENT_WIDTH[t.ModernDocumentWidthMode.MEDIUM]:e.skeletonPageWidth!=null&&Number.isFinite(e.skeletonPageWidth)&&e.skeletonPageWidth>0?e.skeletonPageWidth:t.MODERN_DOCUMENT_WIDTH[t.ModernDocumentWidthMode.MEDIUM]}function Ro(e,t){return e*t}let zo=class extends t.Disposable{constructor(e,t){super(),this._context=e,this._configService=t}getPluginConfig(){return this._configService.getConfig(`docs-ui.config`)??{}}getOptions(){return this.getPluginConfig().fitToWidth??go}getBaseWidth(){var e,t,n;let r=(e=this._context.unit)==null||(t=e.getSnapshot)==null||(t=t.call(e))==null?void 0:t.documentStyle;return Lo({documentFlavor:r==null?void 0:r.documentFlavor,documentStylePageWidth:r==null||(n=r.pageSize)==null?void 0:n.width})}getAvailableWidth(){let e=this.getPluginConfig();if(Po(e.fitToWidth).target===`container`){let t=this._resolveContainer(e.container),n=t==null?void 0:t.clientWidth;if(n!=null&&Number.isFinite(n)&&n>0)return n}return this._context.engine.width}getUserZoomRatio(){return this._context.unit==null?1:No(this._context.unit)}getFitToWidthScale(){return Io({availableWidth:this.getAvailableWidth(),baseWidth:this.getBaseWidth(),options:this.getOptions()})}getViewScale(e=this.getUserZoomRatio()){return Ro(e,this.getFitToWidthScale())}_resolveContainer(e){if(e!=null)return typeof e==`string`?document.querySelector(e)??document.getElementById(e)??void 0:e}};zo=A([k(1,t.IConfigService)],zo);let Bo=class extends t.Disposable{constructor(e,t){super(),this._context=e,this._docViewScaleService=t}calculatePagePosition(){if(this._disposed)return;let e=f(this._context),t=this._docViewScaleService.getViewScale(),n=this._docViewScaleService.getOptions(),r=n.mode===`fit-width`&&n.align===`start`,{document:i,scene:a,docBackground:o}=e;(a.scaleX!==t||a.scaleY!==t)&&a.scale(t,t);let s=a==null?void 0:a.getParent(),{width:c,height:l,pageMarginLeft:u,pageMarginTop:d}=i,p=r?Fo(this._docViewScaleService.getAvailableWidth(),n.paddingX)/t:u;if(s==null||c===1/0||l===1/0)return;let{width:m,height:h}=s,g=0,_=d,v=0,y=0,b=1/0;m>(c+p*2)*t?(g=r?p:(m/2-c*t/2)/t,v=(m-p*2)/t,b=0):(g=p,v=c+p*2,b=0),y=h>l?(h-d*2)/t:l+d*2,a.transformByState({width:v,height:y}),m<=1&&(g=-1e4,_=-1e4),i.translate(g,_),o.translate(g,_);let x=a.getViewport(`viewMain`);return b!==1/0&&x!=null&&x.scrollToViewportPos({viewportScrollX:b}),this}};Bo=A([k(1,(0,t.Inject)(zo))],Bo);let Vo=class extends t.RxDisposable{constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this._context=e,this._commandService=t,this._docSelectionRenderService=n,this._docSkeletonManagerService=r,this._editorService=i,this._renderManagerService=a,this._univerInstanceService=o,this._docPageLayoutService=s,this._textSelectionManagerService=c,this._docViewScaleService=l,this._themeService=u,O(this,`_changesetRenderScheduled`,!1),this._addNewRender(),this._initRenderRefresh(),this._initCommandListener(),this._initThemeListener()}reRender(e){var t;let r=(t=this._renderManagerService.getRenderUnitById(e))==null?void 0:t.with(n.DocSkeletonManagerService),i=r==null?void 0:r.getSkeleton();if(!i||i.getViewModel().getDataModel().getSnapshot().disabled)return;i.calculate();let a=this._editorService.getEditorRenderConfig(e);if(a&&!a.scrollBar){var o;(o=this._context.mainComponent)==null||o.makeDirty();return}this._recalculateSizeBySkeleton(i),this._refreshPagePositionAndSelection()}_addNewRender(){let{scene:e,engine:n}=this._context,i=new r.Viewport(`viewMain`,e,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});e.attachControl(),e.onMouseWheel$.subscribeEvent((n,r)=>{let a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if((a==null?void 0:a.getUnitId())!==this._context.unitId)return;let o=n;if(o.ctrlKey){let t=Math.abs(o.deltaX),n=t<40?.2:t<80?.4:.2;n*=o.deltaY>0?-1:1,e.scaleX<1&&(n/=2),e.scaleX+n>4?e.scale(4,4):e.scaleX+n<.1?e.scale(.1,.1):o.preventDefault()}else i.onMouseWheel(o,r)}),new r.ScrollBar(i,{enableHorizontal:this._shouldEnableHorizontalScrollBar()}),e.addLayer(new r.Layer(e,[],2),new r.Layer(e,[],4)),this._addComponent();let a=()=>e.render();this.disposeWithMe(this._context.activated$.subscribe(e=>{e?n.runRenderLoop(a):n.stopRenderLoop(a)})),this._docSelectionRenderService.__attachScrollEvent()}_shouldEnableHorizontalScrollBar(){let e=this._docViewScaleService.getOptions();return e.mode!==`fit-width`||e.target!==`container`||e.align!==`start`}_addComponent(){let{scene:e,unit:t,components:n}=this._context,i={pageMarginLeft:20,pageMarginTop:20,...this._getEditorBackgroundConfig()},a=new r.Documents(`__Document_Render_Main__`,void 0,i);a.zIndex=10;let o=new r.DocBackground(`__Document_Render_Background__`,void 0,i);o.zIndex=10,this._context.mainComponent=a,n.set(`__Document_Render_Main__`,a),n.set(`__Document_Render_Background__`,o),e.addObjects([a],2),e.addObjects([o],0),this._isEditorRenderUnit(t.getUnitId())||e.enableLayerCache(2)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{this._create(e)})}_create(e){if(!e)return;let{mainComponent:t,components:n}=this._context,r=t,i=n.get(`__Document_Render_Background__`);r.changeSkeleton(e),i.changeSkeleton(e),this._syncCanvasBackground();let{unitId:a}=this._context,o=this._editorService.getEditorRenderConfig(a);if(o&&!o.scrollBar){var s;(s=this._context.mainComponent)==null||s.makeDirty();return}this._recalculateSizeBySkeleton(e),this._refreshPagePositionAndSelection()}_initCommandListener(){let e=[n.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted((t,n)=>{if(!e.includes(t.id))return;let{unitId:r}=t.params;if(r===this._context.unitId){if(n!=null&&n.fromChangeset){this._scheduleChangesetRender();return}this.reRender(r)}}))}_scheduleChangesetRender(){this._changesetRenderScheduled||(this._changesetRenderScheduled=!0,queueMicrotask(()=>{this._changesetRenderScheduled=!1,!this._disposed&&this.reRender(this._context.unitId)}))}_initThemeListener(){this.disposeWithMe((0,a.combineLatest)([this._themeService.currentTheme$,this._themeService.darkMode$]).pipe((0,a.takeUntil)(this.dispose$)).subscribe(()=>{var e,t;this._syncCanvasBackground(),(e=this._context.mainComponent)==null||e.makeDirty(!0),(t=this._context.components.get(`__Document_Render_Background__`))==null||t.makeDirty(!0)}))}_refreshPagePositionAndSelection(){this._isEditorRenderUnit()||(this._docPageLayoutService.calculatePagePosition(),this._textSelectionManagerService.refreshSelection())}_recalculateSizeBySkeleton(e){var n;let{mainComponent:i,scene:a,unitId:o,components:s}=this._context,c=i,l=s.get(`__Document_Render_Background__`),u=(n=e.getSkeletonData())==null?void 0:n.pages;if(u==null)return;let d=0,f=0,p=this._context.unit.getSnapshot().documentStyle.documentFlavor;this._syncCanvasBackground(p);for(let e=0,n=u.length;e<n;e++){let i=u[e],{pageWidth:a,pageHeight:o}=i;if(p===t.DocumentFlavor.MODERN){let e=Ho(i);a=e.pageWidth,o=e.pageHeight}c.pageLayoutType===r.PageLayoutType.VERTICAL?(f+=o,f+=c.pageMarginTop,e===n-1&&(f+=c.pageMarginTop),d=Math.max(d,a)):c.pageLayoutType===r.PageLayoutType.HORIZONTAL&&(d+=a,e!==n-1&&(d+=c.pageMarginLeft),f=Math.max(f,o))}c.resize(d,f),l.resize(d,f);let m=this._editorService.getEditorRenderConfig(o);(!m||m.scrollBar)&&a.transformByState({width:d,height:f})}_syncCanvasBackground(e=this._context.unit.getSnapshot().documentStyle.documentFlavor){var t;let n=this._editorService.getEditorRenderConfig(this._context.unitId),r=n==null?void 0:n.canvasStyle.backgroundColor,i=ur({documentFlavor:e,canvasColorService:this._context.engine.canvasColorService,editorBackgroundColor:r,isEditor:this._isEditorRenderUnit()});this._context.engine.getCanvas().getCanvasEle().style.backgroundColor=i.canvasElementBackgroundColor;let a=this._context.components.get(`__Document_Render_Background__`);a==null||(t=a.setFillColors)==null||t.call(a,i.docBackgroundFillColor,i.docBackgroundFillColor,i.docBackgroundFillColor,i.docBackgroundFillColor)}_getEditorBackgroundConfig(){if(!this._isEditorRenderUnit())return{};let e=`transparent`;return{backgroundFillColor:e,pageFillColor:e,pageStrokeColor:e,marginStrokeColor:e}}_isEditorRenderUnit(e=this._context.unitId){return this._editorService.isEditor(e)||(0,t.isInternalEditorID)(e)}};Vo=A([k(1,t.ICommandService),k(2,(0,t.Inject)(J)),k(3,(0,t.Inject)(n.DocSkeletonManagerService)),k(4,Oi),k(5,r.IRenderManagerService),k(6,t.IUniverInstanceService),k(7,(0,t.Inject)(Bo)),k(8,(0,t.Inject)(n.DocSelectionManagerService)),k(9,(0,t.Inject)(zo)),k(10,(0,t.Inject)(t.ThemeService))],Vo);function Ho(e){let{pageWidth:t,pageHeight:n}=e,{marginLeft:r,marginRight:i,marginTop:a,marginBottom:o,skeDrawings:s,skeTables:c}=e;t===1/0&&(t=e.width+r+i),n===1/0&&(n=e.height+a+o);for(let e of s.values())n=Math.max(n,e.aTop+e.height+a+o);for(let e of c.values())n=Math.max(n,e.top+e.height+a+o);return{pageWidth:t,pageHeight:n}}function Uo(e){let{dataStream:n}=e.body??{},r=[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.COLUMN_BREAK,t.DataStreamTreeTokenType.PAGE_BREAK,t.DataStreamTreeTokenType.TAB,t.DataStreamTreeTokenType.DOCS_END,t.DataStreamTreeTokenType.CUSTOM_BLOCK];if(typeof n==`string`)for(let e=0;e<n.length;e++){let t=n[e];if(!r.includes(t))return e}return 0}let Wo=`COMPONENT_DOC_HEADER_FOOTER_PANEL`,Go={id:`sidebar.operation.doc-header-footer-panel`,type:t.CommandType.OPERATION,handler:async(e,n)=>{let r=e.get(i.ISidebarService),a=e.get(t.LocaleService);switch(n.value){case`open`:r.open({header:{title:a.t(`docs-ui.headerFooter.panel`)},children:{label:Wo},onClose:()=>{},width:400});break;default:r.close();break}return!0}},Ko=`doc.command.core-header-footer`,qo={id:Ko,type:t.CommandType.COMMAND,handler:async(e,i)=>{var a;let o=e.get(t.ICommandService),s=e.get(t.IUniverInstanceService),c=e.get(r.IRenderManagerService),{unitId:l,segmentId:u,createType:d,headerFooterProps:f,sectionId:p}=i,m=(a=c.getRenderUnitById(l))==null?void 0:a.with(n.DocSkeletonManagerService),h=s.getUnit(l,t.UniverInstanceType.UNIVER_DOC),g=m==null?void 0:m.getViewModel();if(h==null||g==null)return!1;let _=g.getEditArea(),v=h.getSnapshot(),y=p,b=v.body?(0,n.getTopLevelSectionBreaks)(v.body):[],x=y==null?-1:b.findIndex(e=>e.sectionId===y),S=x<0?void 0:b[x],C=y==null?v.documentStyle:{...v.documentStyle,...S,...(0,t.resolveSectionHeaderFooterReferences)(v.documentStyle,b,x)},w=d;return f!=null&&Object.keys(f).forEach(e=>{let i=f[e];w==null&&e===`useFirstPageHeaderFooter`&&i===t.BooleanNumber.TRUE&&!C.firstPageHeaderId?w=_===r.DocumentEditArea.HEADER?n.HeaderFooterType.FIRST_PAGE_HEADER:n.HeaderFooterType.FIRST_PAGE_FOOTER:w==null&&e===`evenAndOddHeaders`&&i===t.BooleanNumber.TRUE&&!C.evenPageHeaderId&&(w=_===r.DocumentEditArea.HEADER?n.HeaderFooterType.EVEN_PAGE_HEADER:n.HeaderFooterType.EVEN_PAGE_FOOTER)}),o.syncExecuteCommand(n.CreateHeaderFooterCommand.id,{unitId:l,segmentId:u,createType:w,headerFooterProps:f,createMode:y==null?`pair`:`single`,sectionId:y})}},Jo={id:`doc.command.open-header-footer-panel`,type:t.CommandType.COMMAND,handler:async(e,n)=>e.get(t.ICommandService).executeCommand(Go.id,{value:`open`})},Yo={id:`doc.command.close-header-footer`,type:t.CommandType.COMMAND,handler:async(e,i)=>{var a,o;let s=e.get(t.ICommandService),c=e.get(r.IRenderManagerService),l=e.get(n.DocSelectionManagerService),u=e.get(t.IUniverInstanceService),d=(i==null?void 0:i.unitId)??((a=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC))==null?void 0:a.getUnitId());if(d==null)return!1;let f=c.getRenderUnitById(d);if(f==null)return!1;let p=f.with(n.DocSkeletonManagerService),m=p==null?void 0:p.getViewModel();if(m==null||m.getEditArea()===r.DocumentEditArea.BODY)return!1;let h=p==null?void 0:p.getSkeleton();if(h==null)return!1;let{scene:g}=f,_=g.getTransformerByCreate(),v=f.with(J);return l.replaceDocRanges([]),_.clearSelectedObjects(),v.setSegment(``),v.setSegmentPage(-1),m.setEditArea(r.DocumentEditArea.BODY),h.calculate(),(o=f.mainComponent)==null||o.makeDirty(!0),queueMicrotask(()=>{let e=u.getUnit(d),t=e==null?void 0:e.getSnapshot();if(t==null)return;let n=Uo(t);l.replaceDocRanges([{startOffset:n,endOffset:n}])}),s.executeCommand(Go.id,{value:`close`}),!0}},Xo=class extends t.Disposable{constructor(e,t){super(),this._commandService=e,this._sidebarService=t,O(this,`_id`,void 0)}openPanel(){let e={header:{title:`docs-ui.doc.slider.paragraphSetting`},id:this._id,children:{label:`doc_ui_paragraph-setting-panel`},width:300};this._sidebarService.open(e)}closePanel(){this._sidebarService.close(this._id)}};Xo=A([k(0,t.ICommandService),k(1,(0,t.Inject)(i.ISidebarService))],Xo);let Zo={id:`sidebar.operation.doc-paragraph-setting-panel`,type:t.CommandType.OPERATION,handler:e=>(e.get(Xo).openPanel(),!0)},Qo=`doc_ui_section-setting-panel`,$o=class extends t.Disposable{constructor(e,t){super(),this._sidebarService=e,this._selectionManager=t,O(this,`_panelId`,`DocSectionSetting`)}openPanel(){this._sidebarService.open({header:{title:`docs-ui.doc.slider.sectionSetting`},id:this._panelId,children:{label:Qo},width:300})}closePanel(){this._sidebarService.close(this._panelId)}navigateToSectionEnd(e,t,n){let r={unitId:e,subUnitId:e},i=Math.max(t,n-1);this._selectionManager.replaceDocRanges([{startOffset:i,endOffset:i}],r,!0,{shouldFocus:!1})}};$o=A([k(0,(0,t.Inject)(i.ISidebarService)),k(1,(0,t.Inject)(n.DocSelectionManagerService))],$o);let es={id:`sidebar.operation.doc-section-setting-panel`,type:t.CommandType.OPERATION,handler:e=>(e.get($o).openPanel(),!0)};function ts(e){let t=e.getActiveTextRange();return!(t!=null&&t.collapsed)||t.segmentId||!Number.isInteger(t.startOffset)?null:t.startOffset}let ns={id:`docs.operation.insert-column-break`,type:t.CommandType.OPERATION,handler:e=>{let r=e.get(t.IUniverInstanceService),i=e.get(n.DocSelectionManagerService),a=e.get(t.ICommandService),o=r.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),s=ts(i);return!o||o.getDocumentStyle().documentFlavor!==t.DocumentFlavor.TRADITIONAL||s==null?!1:a.syncExecuteCommand(n.InsertDocumentColumnBreakCommand.id,{unitId:o.getUnitId(),offset:s})}},rs={id:`docs.operation.insert-section-break`,type:t.CommandType.OPERATION,handler:(e,r)=>{var i;if(!r)return!1;let a=e.get(t.IUniverInstanceService),o=e.get(n.DocSelectionManagerService),s=e.get(t.ICommandService),c=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),l=ts(o),u=c==null?void 0:c.getBody();if(!c||!u||c.getDocumentStyle().documentFlavor!==t.DocumentFlavor.TRADITIONAL||l==null)return!1;let d=(0,t.createSectionId)(new Set((i=u.sectionBreaks)==null?void 0:i.map(e=>e.sectionId)));return s.syncExecuteCommand(n.InsertDocumentSectionBreakCommand.id,{unitId:c.getUnitId(),offset:l,sectionId:d,nextSectionType:r.sectionType})}},is=[t.ModernDocumentWidthMode.NARROW,t.ModernDocumentWidthMode.MEDIUM,t.ModernDocumentWidthMode.WIDE],as=e=>Object.keys(t.PAGE_SIZE).find(n=>{let{width:r,height:i}=t.PAGE_SIZE[n];return e.width===r&&e.height===i})??`A4`,os=e=>{let n=(e==null?void 0:e.width)??t.MODERN_DOCUMENT_WIDTH[t.ModernDocumentWidthMode.MEDIUM];return is.reduce((e,r)=>{let i=Math.abs(t.MODERN_DOCUMENT_WIDTH[e]-n);return Math.abs(t.MODERN_DOCUMENT_WIDTH[r]-n)<i?r:e},t.ModernDocumentWidthMode.MEDIUM)};function ss(e){let{children:t,muted:n}=e;return(0,l.jsx)(`label`,{className:(0,s.clsx)(`univer-text-sm univer-font-medium`,n?`univer-text-gray-500`:`univer-text-gray-900 dark:!univer-text-gray-0`),children:t})}function cs(e){let{hooks:n}=e,r=(0,i.useDependency)(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC).getDocumentStyle(),a=(0,i.useDependency)(t.LocaleService),[o,u]=(0,c.useState)(()=>{var e,n;return{mode:r.documentFlavor===t.DocumentFlavor.TRADITIONAL?t.DocumentFlavor.TRADITIONAL:t.DocumentFlavor.MODERN,modernWidth:os(r.pageSize),paperSize:as(r.pageSize??t.PAGE_SIZE.A4),pageSize:{width:((e=r.pageSize)==null?void 0:e.width)??0,height:((n=r.pageSize)==null?void 0:n.height)??0},orientation:r.pageOrient??t.PageOrientType.PORTRAIT,margins:{top:r.marginTop??0,bottom:r.marginBottom??0,left:r.marginLeft??0,right:r.marginRight??0}}});(0,c.useEffect)(()=>{n.beforeClose=()=>o,n.beforeConfirm=()=>o},[o]);let d=e=>{u(n=>({...n,paperSize:e,pageSize:t.PAGE_SIZE[e]}))},f=(e,t)=>{u(n=>({...n,margins:{...n.margins,[e]:t||0}}))},p=e=>{u(t=>({...t,modernWidth:e}))};return(0,l.jsx)(`div`,{className:`univer-flex univer-flex-col univer-gap-4`,children:o.mode===t.DocumentFlavor.MODERN?(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2.5`,children:[(0,l.jsx)(ss,{children:a.t(`docs-ui.page-settings.modern-width`)}),(0,l.jsx)(`div`,{className:`univer-grid univer-grid-cols-3 univer-gap-2`,children:is.map(e=>(0,l.jsxs)(`button`,{type:`button`,className:(0,s.clsx)(s.resetButtonClassName,s.borderClassName,`univer-h-16 univer-flex-col univer-gap-1 univer-rounded-lg univer-bg-gray-0 univer-text-sm univer-font-medium univer-text-gray-700 univer-transition-colors hover:univer-border-primary-500 hover:univer-text-primary-600 dark:!univer-bg-gray-900 dark:!univer-text-gray-100`,{"!univer-border-primary-500 !univer-bg-primary-50 !univer-text-primary-600 dark:!univer-bg-primary-900":o.modernWidth===e}),onClick:()=>p(e),children:[(0,l.jsx)(`span`,{children:a.t(`docs-ui.page-settings.modern-width-${e}`)}),(0,l.jsxs)(`span`,{className:`univer-text-xs univer-font-normal univer-text-gray-400`,children:[t.MODERN_DOCUMENT_WIDTH[e],`px`]})]},e))})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2`,children:[(0,l.jsx)(ss,{children:a.t(`docs-ui.page-settings.paper-size`)}),(0,l.jsx)(s.Select,{value:o.paperSize,onChange:d,options:t.PAPER_TYPES.map(e=>({label:a.t(`docs-ui.page-settings.page-size.${e.toLocaleLowerCase()}`),value:e}))})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2`,children:[(0,l.jsx)(ss,{children:a.t(`docs-ui.page-settings.custom-paper-size`)}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-col univer-gap-2.5`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-gap-2.5`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(ss,{muted:!0,children:a.t(`docs-ui.page-settings.top`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.height/2,value:o.margins.top,onChange:e=>f(`top`,e)})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(ss,{muted:!0,children:a.t(`docs-ui.page-settings.bottom`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.height/2,value:o.margins.bottom,onChange:e=>f(`bottom`,e)})]})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-gap-2.5`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(ss,{muted:!0,children:a.t(`docs-ui.page-settings.left`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.width/2,value:o.margins.left,onChange:e=>f(`left`,e)})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-flex-1 univer-flex-col univer-gap-2`,children:[(0,l.jsx)(ss,{muted:!0,children:a.t(`docs-ui.page-settings.right`)}),(0,l.jsx)(s.InputNumber,{precision:2,min:0,max:o.pageSize.width/2,value:o.margins.right,onChange:e=>f(`right`,e)})]})]})]})]})]})})}let ls=`docs.component.page-setting`;function us(e){var n;let r=((n=e.pageSize)==null?void 0:n.width)??0;return r?e.documentFlavor===t.DocumentFlavor.MODERN?Math.max(0,r-t.MODERN_DOCUMENT_DEFAULT_MARGIN*2):Math.max(0,r-(e.marginLeft??0)-(e.marginRight??0)):0}function ds(e){return e.tableColumns.reduce((e,t)=>e+(t.size.width.v??0),0)}function fs(e,t){if(t<=0||e.tableColumns.length===0)return!1;let n=ds(e)||e.size.width.v;return Math.abs(n-t)<=2}function ps(e,t,n,r,i){!n||r<=0||i<=0||Math.abs(r-i)<=2||Object.entries(n).forEach(([n,a])=>{if(!fs(a,r))return;let o=ds(a);if(o<=0)return;let s=e.replaceOp([`tableSource`,n,`size`,`width`,`v`],a.size.width.v,i);s&&t.push(s),a.tableColumns.forEach((r,a)=>{let s=r.size.width.v/o*i,c=e.replaceOp([`tableSource`,n,`tableColumns`,a,`size`,`width`,`v`],r.size.width.v,s);c&&t.push(c)})})}let ms={id:`docs.command.page-setup`,type:t.CommandType.COMMAND,handler:(e,r)=>{if(!r)return!1;let i=e.get(t.IUniverInstanceService),a=e.get(t.ICommandService),o=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!o)return!1;let{documentFlavor:s,marginLeft:c,marginRight:l,marginBottom:u,marginTop:d,pageOrient:f,pageSize:p}=r,m=t.JSONX.getInstance(),h=o.getDocumentStyle(),g=o.getSnapshot(),_={...h,documentFlavor:s??h.documentFlavor,marginBottom:u,marginLeft:c,marginRight:l,marginTop:d,pageOrient:f,pageSize:p},{marginBottom:v,marginLeft:y,marginRight:b,marginTop:x,pageOrient:S,pageSize:C,documentFlavor:w}=h,T=[];if(ps(m,T,g.tableSource,us(h),us(_)),s!==void 0)if(w===void 0){let e=m.insertOp([`documentStyle`,`documentFlavor`],s);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`documentFlavor`],w,s);e&&T.push(e)}if(v===void 0){let e=m.insertOp([`documentStyle`,`marginBottom`],u);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginBottom`],v,u);e&&T.push(e)}if(y===void 0){let e=m.insertOp([`documentStyle`,`marginLeft`],c);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginLeft`],y,c);e&&T.push(e)}if(b===void 0){let e=m.insertOp([`documentStyle`,`marginRight`],l);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginRight`],b,l);e&&T.push(e)}if(x===void 0){let e=m.insertOp([`documentStyle`,`marginTop`],d);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`marginTop`],x,d);e&&T.push(e)}if(C===void 0){let e=m.insertOp([`documentStyle`,`pageSize`],p);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`pageSize`],C,p);e&&T.push(e)}if(S===void 0){let e=m.insertOp([`documentStyle`,`pageOrient`],f);e&&T.push(e)}else{let e=m.replaceOp([`documentStyle`,`pageOrient`],S,f);e&&T.push(e)}let E={id:n.RichTextEditingMutation.id,params:{unitId:o.getUnitId(),actions:[],textRanges:void 0}};return E.params.actions=T.reduce((e,n)=>t.JSONX.compose(e,n),null),!!a.syncExecuteCommand(E.id,E.params)}},hs={id:`docs.operation.open-page-setting`,type:t.CommandType.OPERATION,handler:e=>{let n=e.get(t.IConfirmService),r=e.get(t.ICommandService),i=e.get(t.LocaleService),a=n.open({id:ls,title:{label:i.t(`docs-ui.page-settings.document-setting`)},children:{label:ls},width:528,onClose:()=>{a.dispose()},onConfirm:e=>{if(a.dispose(),!e)return;let n=e.mode===t.DocumentFlavor.MODERN?{width:t.MODERN_DOCUMENT_WIDTH[e.modernWidth],height:t.PAGE_SIZE.A4.height}:t.PAGE_SIZE[e.paperSize];r.executeCommand(ms.id,{documentFlavor:e.mode,pageOrient:e.orientation,marginTop:e.margins.top,marginBottom:e.margins.bottom,marginLeft:e.margins.left,marginRight:e.margins.right,pageSize:n})},confirmText:i.t(`docs-ui.page-settings.confirm`),cancelText:i.t(`docs-ui.page-settings.cancel`)});return!0}},gs=e=>{let r=e.get(n.DocSelectionManagerService);return new a.Observable(e=>{let n=r.textSelection$.subscribe(()=>{r.getDocRanges().some(e=>e.collapsed===!1||e.rangeType===t.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function _s(e){if(e.length<2)return!0;let t=e.map(e=>e.tableId);return t.every(e=>e===t[0])}function vs(e,n,r){let i=n.getRectRanges(),a=n.getActiveTextRange();if(i&&i.length&&_s(i)&&a==null){e.next(!1);return}if(a&&(i==null||i.length===0)){var o;let{segmentId:n,startOffset:i,endOffset:s}=a;if(a.collapsed!==!0&&i!==s){e.next(!0);return}let c=r.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),l=c==null||(o=c.getSelfOrHeaderFooterModel(n))==null||(o=o.getBody())==null?void 0:o.tables;if(l&&l.length&&l.some(e=>{let{startIndex:t,endIndex:n}=e;return i>t&&i<n||s>t&&s<n})){e.next(!1);return}}e.next(!0)}let ys=e=>{let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let t=r.textSelection$.subscribe(()=>{vs(e,r,i)});return vs(e,r,i),()=>t.unsubscribe()})};function bs(e){return{id:xn.name,commandId:xn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.copy`,disabled$:gs(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function xs(e){return{id:Zo.id,type:i.MenuItemType.BUTTON,title:`docs-ui.doc.menu.paragraphSetting`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ss(e){return{id:Cn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.cut`,disabled$:gs(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Cs(e){return{id:Tn.id,type:i.MenuItemType.BUTTON,icon:`PasteSpecialDoubleIcon`,title:`docs-ui.rightClick.paste`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ws(e){return{id:Ne.id,type:i.MenuItemType.BUTTON,icon:`PasteSpecialDoubleIcon`,title:`docs-ui.rightClick.delete`,disabled$:gs(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Ts=`doc.menu.table-insert`;function Es(e){return{id:Ts,type:i.MenuItemType.SUBITEMS,title:`docs-ui.table.insert`,icon:`InsertDoubleIcon`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),ys(e),(e,t)=>e||t)}}function Ds(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let n=()=>{var n;let a=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),o=r.getActiveTextRange(),s=a==null?void 0:a.getBody(),c=!a||a.getDocumentStyle().documentFlavor!==t.DocumentFlavor.TRADITIONAL||!o||!!o.segmentId||!!(s!=null&&(n=s.tables)!=null&&n.some(e=>o.startOffset>e.startIndex&&o.startOffset<e.endIndex));e.next(c)};n();let a=r.textSelection$.subscribe(n);return()=>a.unsubscribe()})}function Os(e){return{id:es.id,type:i.MenuItemType.BUTTON,title:`docs-ui.doc.menu.sectionSetting`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),Ds(e),(e,t)=>e||t)}}function ks(e){return{id:no.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertRowAbove`,icon:`InsertRowAboveDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function As(e){return{id:ro.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertRowBelow`,icon:`InsertRowBelowDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function js(e){return{id:io.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertColumnLeft`,icon:`LeftInsertColumnDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ms(e){return{id:ao.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.insertColumnRight`,icon:`RightInsertColumnDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Ns=`doc.menu.table-delete`;function Ps(e){return{id:Ns,type:i.MenuItemType.SUBITEMS,title:`docs-ui.table.delete`,icon:`ReduceDoubleIcon`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),ys(e),(e,t)=>e||t)}}function Fs(e){return{id:Za.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.deleteRows`,icon:`DeleteRowDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Is(e){return{id:Qa.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.deleteColumns`,icon:`DeleteColumnDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ls(e){return{id:$a.id,type:i.MenuItemType.BUTTON,title:`docs-ui.table.deleteTable`,icon:`DeleteTableDoubleIcon`,disabled$:ys(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Rs={id:`doc.command.insert-special-character`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;if(!(r!=null&&r.value))return!1;let a=e.get(t.ICommandService),o=e.get(n.DocSelectionManagerService),s=e.get(t.IUniverInstanceService),c=e.get(I),l=s.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),u=o.getActiveTextRange();if(!l||!u)return!1;let{segmentId:d}=u,f=(i=l.getSelfOrHeaderFooterModel(d))==null?void 0:i.getBody();if(!f)return!1;let{value:p}=r,m=S(f,u.endOffset,c.getDefaultStyle(),c.getStyleCache()),h=C(f.customRanges??[],u.endOffset),g=w(f.customDecorations??[],u.endOffset);return a.executeCommand(n.InsertTextCommand.id,{unitId:l.getUnitId(),body:{dataStream:p,textRuns:[{...m,st:0,ed:p.length}],customRanges:h?[{...h,startIndex:0,endIndex:p.length-1}]:[],customDecorations:g.map(e=>({...e,startIndex:0,endIndex:p.length-1}))},range:u,segmentId:d})}},zs=`UI_PLUGIN_DOCS`,Bs=e=>{let{value:n,onChange:r,options:i}=e,a=[{id:`level-0-top`,levelIndex:0},{id:`level-1`,levelIndex:1},{id:`level-2`,levelIndex:2},{id:`level-0-bottom`,levelIndex:0}],o=[``,`univer-pl-2`,`univer-pl-4`],c=e=>{switch(e){case t.ListGlyphType.DECIMAL_ZERO:return`01`;case t.ListGlyphType.UPPER_LETTER:return`A`;case t.ListGlyphType.LOWER_LETTER:return`a`;case t.ListGlyphType.UPPER_ROMAN:return`I`;case t.ListGlyphType.LOWER_ROMAN:return`i`;default:return`1`}},u=(e,n)=>{var r;let i=t.PRESET_LIST_TYPE[e].nestingLevel,a=i[n];return a.glyphSymbol?a.glyphSymbol:((r=a.glyphFormat)==null?void 0:r.replace(/%(\d+)/g,(e,t)=>{var n;return c((n=i[Number(t)-1])==null?void 0:n.glyphType)}))??`1.`};return(0,l.jsx)(`div`,{className:`univer-grid univer-grid-cols-3 univer-gap-2 univer-p-1.5`,"data-u-editor-interaction-boundary":`true`,children:i.map(e=>(0,l.jsx)(`a`,{className:(0,s.clsx)(`univer-block univer-h-20 univer-w-[72px] univer-cursor-pointer univer-overflow-hidden univer-rounded univer-transition-all hover:univer-border-primary-500`,s.borderClassName,{"univer-border-primary-500":n===e}),onClick:()=>r(e),children:(0,l.jsx)(`div`,{className:`univer-box-border univer-grid univer-size-full univer-grid-rows-4 univer-gap-1 univer-bg-gray-50 univer-p-2 univer-text-gray-900`,"data-u-comp":`list-type-preview`,children:a.map(({id:t,levelIndex:n})=>(0,l.jsxs)(`div`,{className:(0,s.clsx)(`univer-flex univer-items-center univer-gap-1`,o[n]),children:[(0,l.jsx)(`span`,{className:`univer-w-3 univer-shrink-0 univer-overflow-hidden univer-text-center univer-text-[10px] univer-leading-none`,children:u(e,n)}),(0,l.jsx)(`span`,{className:`univer-h-1 univer-flex-1 univer-rounded univer-bg-gray-200`})]},t))})},e))})},Vs=[t.PresetListType.ORDER_LIST,t.PresetListType.ORDER_LIST_1,t.PresetListType.ORDER_LIST_2,t.PresetListType.ORDER_LIST_3,t.PresetListType.ORDER_LIST_4,t.PresetListType.ORDER_LIST_5],Hs=e=>(0,l.jsx)(Bs,{...e,options:Vs}),Us=[t.PresetListType.BULLET_LIST,t.PresetListType.BULLET_LIST_1,t.PresetListType.BULLET_LIST_2,t.PresetListType.BULLET_LIST_3,t.PresetListType.BULLET_LIST_4,t.PresetListType.BULLET_LIST_5],Ws=e=>(0,l.jsx)(Bs,{...e,options:Us}),Gs=`${zs}_ORDER_LIST_TYPE_COMPONENT`,Ks=`${zs}_BULLET_LIST_TYPE_COMPONENT`;function X(e){let n,r;try{n=e.get(t.IUniverInstanceService)}catch(e){if(el(e))return!0;throw e}try{r=e.get(wr)}catch{return!1}let i=n.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),a=i==null?void 0:i.getUnitId();return r.shouldSuppressHostInteraction(a)}function qs(e){let i=e.get(t.IUniverInstanceService),o=e.get(r.IRenderManagerService);return new a.Observable(e=>{let a=null,s=i.focused$.subscribe(s=>{if(a==null||a.unsubscribe(),a=null,s==null||i.getUnitType(s)!==t.UniverInstanceType.UNIVER_DOC)return e.next(!0);let c=o.getRenderUnitById(s);if(c==null)return e.next(!0);a=c.with(n.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(t=>{e.next(t===r.DocumentEditArea.HEADER||t===r.DocumentEditArea.FOOTER)})});return()=>{a==null||a.unsubscribe(),s.unsubscribe()}})}function Js(e){let i=e.get(t.IUniverInstanceService),o=e.get(r.IRenderManagerService);return new a.Observable(e=>{let a=null,s,c=t=>{t!==s&&(s=t,e.next(t))},l=i.focused$.subscribe(e=>{if(a==null||a.unsubscribe(),a=null,!e||i.getUnitType(e)!==t.UniverInstanceType.UNIVER_DOC){c(!0);return}let s=o.getRenderUnitById(e),l=s==null?void 0:s.with(n.DocSkeletonManagerService),u=l==null?void 0:l.getViewModel();if(!u){c(!0);return}let d=e=>{let t=e??u.getEditArea();c(t===r.DocumentEditArea.HEADER||t===r.DocumentEditArea.FOOTER)};d(),a=u.editAreaChange$.subscribe(d)});return()=>{a==null||a.unsubscribe(),l.unsubscribe()}})}function Ys(e){let r=e.get(t.IUniverInstanceService),i=e.get(t.ICommandService);return new a.Observable(e=>{let a=i.onCommandExecuted(i=>{if(i.id===n.RichTextEditingMutation.id){let{unitId:n}=i.params,a=r.getUnit(n);if(a==null){e.next(!0);return}let{documentStyle:o}=a.getSnapshot();e.next((o==null?void 0:o.documentFlavor)!==t.DocumentFlavor.TRADITIONAL)}}),o=r.focused$.subscribe(n=>{if(n==null)return e.next(!0);let i=r.getUnit(n,t.UniverInstanceType.UNIVER_DOC),a=i==null?void 0:i.getSnapshot().documentStyle.documentFlavor;e.next(a!==t.DocumentFlavor.TRADITIONAL)}),s=r.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),c=s==null?void 0:s.getSnapshot().documentStyle.documentFlavor;return e.next(s==null||c!==t.DocumentFlavor.TRADITIONAL),()=>{a.dispose(),o.unsubscribe()}})}function Xs(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(n=>{let a=r.textSelection$.subscribe(r=>{if(r==null){n.next(!0);return}let{textRanges:a}=r;if(a.length!==1){n.next(!0);return}let{collapsed:o,startNodePosition:s,startOffset:c}=a[0];if(!o||c==null){n.next(!0);return}let l=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(l==null){n.next(!0);return}let u=V(e,l.getUnitId());if(u==null){n.next(!0);return}if(u.getViewModel().getCustomRangeRaw(c)){n.next(!0);return}if(s!=null){let{path:e}=s;if(e.indexOf(`cells`)!==-1){n.next(!0);return}}n.next(!1)});return()=>a.unsubscribe()})}function Z(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let n=r.textSelection$.subscribe(n=>{var r;if(n==null){e.next(!0);return}let{textRanges:a,rectRanges:o}=n;if(a.length===0&&o.length===0){e.next(!0);return}let s=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(((s==null||(r=s.getBody())==null||(r=r.blockRanges)==null?void 0:r.filter(e=>e.blockType===t.DocumentBlockRangeType.CODE))??[]).some(e=>a.some(t=>Math.max(t.startOffset,e.startIndex)<=Math.min(t.endOffset,e.endIndex)))){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}let Zs=`doc.menu.insert-emoji`,Qs=`doc.menu.insert-symbol`;function $s(e){return{id:Zs,type:i.MenuItemType.SELECTOR,icon:`SmileIcon`,tooltip:`ui.emojiPicker.emojis`,selectionsCommandId:Rs.id,selections:[{label:{name:i.EMOJI_PICKER_COMPONENT,hoverable:!1,selectable:!1,props:{embedded:!0}}}],disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ec(e){return{id:Qs,type:i.MenuItemType.SELECTOR,icon:`SymbolsIcon`,tooltip:`ui.emojiPicker.symbols`,selectionsCommandId:Rs.id,selections:[{label:{name:i.SYMBOL_PICKER_COMPONENT,hoverable:!1,selectable:!1,props:{embedded:!0}}}],disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function tc(e,t){var n;let r=(e==null||(n=e.getBody())==null?void 0:n.blockRanges)??[],i=t.startOffset,a=t.collapsed?t.startOffset:t.endOffset-1;return r.some(e=>Math.max(i,e.startIndex)<=Math.min(a,e.endIndex))}function nc(e){let r=e.get(n.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new a.Observable(e=>{let n=n=>{var a;let o=(a=r.__getCurrentSelection)==null?void 0:a.call(r),s=(n==null?void 0:n.textRanges)??[...r.getTextRanges()??[]],c=(n==null?void 0:n.unitId)??(o==null?void 0:o.unitId),l=c?i.getUnit(c,t.UniverInstanceType.UNIVER_DOC):i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);e.next(s.some(e=>tc(l,e)))};n();let a=r.textSelection$.subscribe(e=>n(e));return()=>a.unsubscribe()})}function rc(e){let r=e.get(t.ICommandService);return{id:ji.id,type:i.MenuItemType.BUTTON,icon:`BoldIcon`,title:`docs-ui.toolbar.bold`,tooltip:`docs-ui.toolbar.bold`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Qc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.bl;i.next(a===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===ra.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ic(e){let r=e.get(t.ICommandService);return{id:Ni.id,type:i.MenuItemType.BUTTON,icon:`ItalicIcon`,title:`docs-ui.toolbar.italic`,tooltip:`docs-ui.toolbar.italic`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Qc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.it;i.next(a===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===ra.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ac(e){let r=e.get(t.ICommandService);return{id:Fi.id,type:i.MenuItemType.BUTTON,icon:`UnderlineIcon`,title:`docs-ui.toolbar.underline`,tooltip:`docs-ui.toolbar.underline`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Qc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.ul;i.next((a==null?void 0:a.s)===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===ra.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function oc(e){let r=e.get(t.ICommandService);return{id:Li.id,type:i.MenuItemType.BUTTON,icon:`StrikethroughIcon`,title:`docs-ui.toolbar.strikethrough`,tooltip:`docs-ui.toolbar.strikethrough`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Qc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.st;i.next((a==null?void 0:a.s)===t.BooleanNumber.TRUE)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===ra.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function sc(e){let r=e.get(t.ICommandService);return{id:zi.id,type:i.MenuItemType.BUTTON,icon:`SubscriptIcon`,tooltip:`docs-ui.toolbar.subscript`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Qc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.va;i.next(a===t.BaselineOffset.SUBSCRIPT)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===ra.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function cc(e){let r=e.get(t.ICommandService);return{id:Vi.id,type:i.MenuItemType.BUTTON,icon:`SuperscriptIcon`,tooltip:`docs-ui.toolbar.superscript`,activated$:new a.Observable(i=>{let a=()=>{var n;if(X(e))return;let r=Qc(e);if(r==null){i.next(!1);return}let a=(n=r.ts)==null?void 0:n.va;i.next(a===t.BaselineOffset.SUPERSCRIPT)},o=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===ra.id)&&a()});return a(),o.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function lc(e){let r=e.get(t.ICommandService);return{id:Gi.id,tooltip:`docs-ui.toolbar.font`,type:i.MenuItemType.SELECTOR,label:{name:i.FONT_FAMILY_COMPONENT,props:{id:Gi.id}},selections:[{label:{name:i.FONT_FAMILY_ITEM_COMPONENT,hoverable:!1,selectable:!1,props:{id:Gi.id}}}],value$:new a.Observable(i=>{let a=t.DEFAULT_STYLES.ff,o=()=>{var t;if(X(e))return;let n=Qc(e);if(n==null){i.next(a);return}let r=(t=n.ts)==null?void 0:t.ff;i.next(r??a)},s=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Gi.id)&&o()});return o(),s.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function uc(e){let r=e.get(t.ICommandService);return{id:Ui.id,type:i.MenuItemType.SELECTOR,tooltip:`docs-ui.toolbar.fontSize`,label:{name:i.FONT_SIZE_COMPONENT,props:{min:1,max:400}},selections:i.FONT_SIZE_LIST,value$:new a.Observable(i=>{let a=t.DEFAULT_STYLES.fs,o=()=>{var t;if(X(e))return;let n=Qc(e);if(n==null){i.next(a);return}let r=(t=n.ts)==null?void 0:t.fs;i.next(r??a)},s=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Ui.id)&&o()});return o(),s.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function dc(e){let r=e.get(t.ICommandService);return{id:Aa.id,type:i.MenuItemType.SELECTOR,tooltip:`docs-ui.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 a.Observable(i=>{let a=t.NamedStyleType.NORMAL_TEXT,o=()=>{var t;if(X(e))return;let n=$c(e);if(n==null){i.next(a);return}let r=((t=n.paragraphStyle)==null?void 0:t.namedStyleType)??a;i.next(r)},s=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Ui.id)&&o()});return o(),s.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let fc=`doc.menu.float-text-style`,pc=`doc.menu.float-toolbar`,mc=[{icon:`TextTypeIcon`,label:`docs-ui.toolbar.heading.normal`,value:t.NamedStyleType.NORMAL_TEXT},{icon:`H1Icon`,label:`docs-ui.toolbar.heading.leading1`,value:t.NamedStyleType.HEADING_1},{icon:`H2Icon`,label:`docs-ui.toolbar.heading.leading2`,value:t.NamedStyleType.HEADING_2},{icon:`H3Icon`,label:`docs-ui.toolbar.heading.leading3`,value:t.NamedStyleType.HEADING_3},{icon:`H4Icon`,label:`docs-ui.toolbar.heading.leading4`,value:t.NamedStyleType.HEADING_4},{icon:`H5Icon`,label:`docs-ui.toolbar.heading.leading5`,value:t.NamedStyleType.HEADING_5},{id:_a.id,icon:`OrderIcon`,label:`docs-ui.toolbar.order`,value:t.PresetListType.ORDER_LIST},{id:ma.id,icon:`UnorderIcon`,label:`docs-ui.toolbar.unorder`,value:t.PresetListType.BULLET_LIST},{id:ha.id,icon:`TodoListDoubleIcon`,label:`docs-ui.toolbar.checklist`,value:t.PresetListType.CHECK_LIST}];function hc(e){var n,r;let i=e==null||(n=e.bullet)==null?void 0:n.listType;return i!=null&&i.startsWith(t.PresetListType.ORDER_LIST)?t.PresetListType.ORDER_LIST:i!=null&&i.startsWith(t.PresetListType.BULLET_LIST)?t.PresetListType.BULLET_LIST:i===t.PresetListType.CHECK_LIST||i===t.PresetListType.CHECK_LIST_CHECKED?t.PresetListType.CHECK_LIST:(e==null||(r=e.paragraphStyle)==null?void 0:r.namedStyleType)??t.NamedStyleType.NORMAL_TEXT}function gc(e){let r=e.get(t.ICommandService);return{id:fc,commandId:Aa.id,type:i.MenuItemType.SELECTOR,icon:`TextTypeIcon`,tooltip:`docs-ui.toolbar.heading.tooltip`,selections:mc,value$:new a.Observable(t=>{let i=()=>{X(e)||t.next(hc($c(e)))},a=r.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Aa.id||t===_a.id||t===ma.id||t===ha.id)&&i()});return i(),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function _c(e){let n=e.get(t.ICommandService),r=e.get(t.ThemeService);return{id:qi.id,icon:`FontColorDoubleIcon`,tooltip:`docs-ui.toolbar.textColor.main`,type:i.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:i.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1},value$:new a.Observable(t=>{let i=r.getColorFromTheme(`gray.900`),a=()=>{var n;if(X(e))return;let r=Qc(e);if(!r){t.next(i);return}let a=(n=r.ts)==null||(n=n.cl)==null?void 0:n.rgb;t.next(a??i)},o=n.onCommandExecuted(e=>{e.id===qi.id&&a()});return a(),o.dispose})}],value$:new a.Observable(t=>{let i=r.getColorFromTheme(`gray.900`),a=n.onCommandExecuted(n=>{if(n.id===qi.id){if(X(e))return;let r=n.params.value;t.next(r??i)}});return t.next(i),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function vc(e){return{id:Jo.id,type:i.MenuItemType.BUTTON,icon:`HeaderFooterIcon`,tooltip:`docs-ui.toolbar.headerFooter`,hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),Ys(e),(e,t)=>e||t)}}let yc=`doc.menu.breaks`,bc=`doc.menu.section-break.next-page`,xc=`doc.menu.section-break.continuous`,Sc=`doc.menu.section-break.next-column`,Cc=`doc.menu.section-break.even-page`,wc=`doc.menu.section-break.odd-page`;function Tc(e){return{id:yc,type:i.MenuItemType.SUBITEMS,icon:`ColumnIcon`,tooltip:`docs-ui.toolbar.breaks`,disabled$:Z(e),hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),Ys(e),(e,t)=>e||t)}}function Ec(e){return{id:ns.id,type:i.MenuItemType.BUTTON,title:`docs-ui.toolbar.columnBreak`,disabled$:Z(e)}}function Dc(e,t,n,r){return{id:t,commandId:rs.id,params:{sectionType:r},type:i.MenuItemType.BUTTON,title:n,disabled$:Z(e)}}function Oc(e){return Dc(e,bc,`docs-ui.toolbar.sectionBreakNextPage`,t.SectionType.NEXT_PAGE)}function kc(e){return Dc(e,xc,`docs-ui.toolbar.sectionBreakContinuous`,t.SectionType.CONTINUOUS)}function Ac(e){return Dc(e,Sc,`docs-ui.toolbar.sectionBreakNextColumn`,t.SectionType.NEXT_COLUMN)}function jc(e){return Dc(e,Cc,`docs-ui.toolbar.sectionBreakEvenPage`,t.SectionType.EVEN_PAGE)}function Mc(e){return Dc(e,wc,`docs-ui.toolbar.sectionBreakOddPage`,t.SectionType.ODD_PAGE)}let Nc=`GridIcon`,Pc=`doc.menu.table`;function Fc(e){return{id:Pc,type:i.MenuItemType.SUBITEMS,icon:Nc,tooltip:`docs-ui.toolbar.table.main`,disabled$:Xs(e),hidden$:(0,a.combineLatest)((0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),qs(e),(e,t)=>e||t)}}function Ic(e){return{id:fo.id,title:`docs-ui.toolbar.table.insert`,type:i.MenuItemType.BUTTON,icon:Nc,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Lc(e){return{id:fo.id,commandId:Xa.id,params:{rowCount:3,colCount:5},title:`docs-ui.toolbar.table.insert`,type:i.MenuItemType.BUTTON,icon:Nc,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Rc(e){let r=e.get(t.ICommandService);return{id:Ca.id,type:i.MenuItemType.BUTTON,icon:`LeftJustifyingIcon`,tooltip:`docs-ui.toolbar.alignLeft`,disabled$:Z(e),activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===Y.id){var o;if(X(e))return;let n=$c(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.LEFT)}});return i.next(!1),a.dispose}),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function zc(e){let r=e.get(t.ICommandService);return{id:wa.id,type:i.MenuItemType.BUTTON,icon:`HorizontallyIcon`,tooltip:`docs-ui.toolbar.alignCenter`,activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===Y.id){var o;if(X(e))return;let n=$c(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.CENTER)}});return i.next(!1),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Bc(e){let r=e.get(t.ICommandService);return{id:Ta.id,type:i.MenuItemType.BUTTON,icon:`RightJustifyingIcon`,tooltip:`docs-ui.toolbar.alignRight`,activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===Y.id){var o;if(X(e))return;let n=$c(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.RIGHT)}});return i.next(!1),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Vc(e){let r=e.get(t.ICommandService);return{id:Ea.id,type:i.MenuItemType.BUTTON,icon:`AlignTextBothIcon`,tooltip:`docs-ui.toolbar.alignJustify`,activated$:new a.Observable(i=>{let a=r.onCommandExecuted(r=>{let a=r.id;if(a===n.SetTextSelectionsOperation.id||a===Y.id){var o;if(X(e))return;let n=$c(e);if(n==null)return;let r=(o=n.paragraphStyle)==null?void 0:o.horizontalAlign;i.next(r===t.HorizontalAlign.JUSTIFIED)}});return i.next(!1),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Hc=[{id:Ca.id,value:t.HorizontalAlign.LEFT,label:`docs-ui.toolbar.alignLeft`,icon:`LeftJustifyingIcon`},{id:wa.id,value:t.HorizontalAlign.CENTER,label:`docs-ui.toolbar.alignCenter`,icon:`HorizontallyIcon`},{id:Ta.id,value:t.HorizontalAlign.RIGHT,label:`docs-ui.toolbar.alignRight`,icon:`RightJustifyingIcon`},{id:Ea.id,value:t.HorizontalAlign.JUSTIFIED,label:`docs-ui.toolbar.alignJustify`,icon:`AlignTextBothIcon`}];function Uc(e){let r=e.get(t.ICommandService),o=new a.Observable(i=>{let a=()=>{var n;if(X(e)){i.next(t.HorizontalAlign.LEFT);return}let r=$c(e);i.next((r==null||(n=r.paragraphStyle)==null?void 0:n.horizontalAlign)??t.HorizontalAlign.LEFT)},o=r.onCommandExecuted(e=>{(e.id===n.SetTextSelectionsOperation.id||e.id===Y.id)&&a()});return a(),o.dispose}).pipe((0,a.distinctUntilChanged)(),(0,a.shareReplay)({bufferSize:1,refCount:!0}));return{id:Y.id,type:i.MenuItemType.SELECTOR,icon:o.pipe((0,a.map)(e=>{var t;return((t=Hc.find(t=>t.value===e))==null?void 0:t.icon)??`LeftJustifyingIcon`})),tooltip:`docs-ui.toolbar.alignLeft`,selections:Hc,value$:o,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Wc(e){return{id:Wn.id,type:i.MenuItemType.BUTTON,icon:`ReduceIcon`,tooltip:`docs-ui.toolbar.horizontalLine`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let Gc=e=>new a.Observable(r=>{let i=e.get(t.IUniverInstanceService),a=e.get(n.DocSelectionManagerService),o=i.focused$.subscribe(n=>{if(X(e)||n==null)return;let o=i.getUnit(n,t.UniverInstanceType.UNIVER_DOC);if(o==null)return;let s=a.getDocRanges(),c=s.find(e=>e.isActive)??s[0];if(c){var l,u;let e=o.getSelfOrHeaderFooterModel(c==null?void 0:c.segmentId),n=t.BuildTextUtils.range.getParagraphsInRange(c,(e==null||(l=e.getBody())==null?void 0:l.paragraphs)??[],(e==null||(u=e.getBody())==null?void 0:u.dataStream)??``),i;if(n.every(e=>{if(!i){var t;i=(t=e.bullet)==null?void 0:t.listType}return e.bullet&&e.bullet.listType===i})){r.next(i);return}}r.next(void 0)});return()=>{o.unsubscribe()}});function Kc(e){return{id:_a.id,type:i.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Gs,hoverable:!1,selectable:!1},value$:Gc(e)}],icon:`OrderIcon`,tooltip:`docs-ui.toolbar.order`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),disabled$:Z(e),activated$:Gc(e).pipe((0,a.map)(e=>!!(e&&e.indexOf(`ORDER_LIST`)===0)))}}function qc(e){return{id:ma.id,type:i.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Ks,hoverable:!1,selectable:!1},value$:Gc(e)}],icon:`UnorderIcon`,tooltip:`docs-ui.toolbar.unorder`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:Gc(e).pipe((0,a.map)(e=>!!(e&&e.indexOf(`BULLET_LIST`)===0)))}}function Jc(e){return{id:ha.id,type:i.MenuItemType.BUTTON,icon:`TodoListDoubleIcon`,tooltip:`docs-ui.toolbar.checklist`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:Gc(e).pipe((0,a.map)(e=>!!(e&&e.indexOf(`CHECK_LIST`)===0)))}}function Yc(e){let n=e.get(t.ThemeService);return{id:Yi.id,commandId:qi.id,type:i.MenuItemType.BUTTON,title:`docs-ui.toolbar.resetColor`,icon:`NoColorDoubleIcon`,params:()=>({value:n.getColorFromTheme(`gray.900`)})}}function Xc(e){let n=e.get(t.ThemeService);return{id:ta.id,commandId:$i.id,type:i.MenuItemType.BUTTON,title:`docs-ui.toolbar.resetColor`,icon:`NoColorDoubleIcon`,params:()=>({value:n.getColorFromTheme(`primary.600`)})}}function Zc(e){let n=e.get(t.ICommandService),r=e.get(t.ThemeService);return{id:$i.id,tooltip:`docs-ui.toolbar.fillColor.main`,type:i.MenuItemType.BUTTON_SELECTOR,icon:`PaintBucketDoubleIcon`,selections:[{label:{name:i.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1},value$:new a.Observable(t=>{let i=r.getColorFromTheme(`primary.600`),a=()=>{var n;if(X(e))return;let r=Qc(e);if(!r){t.next(i);return}let a=(n=r.ts)==null||(n=n.bg)==null?void 0:n.rgb;t.next(a??i)},o=n.onCommandExecuted(e=>{e.id===$i.id&&a()});return a(),o.dispose})}],value$:new a.Observable(t=>{let i=r.getColorFromTheme(`primary.600`),a=n.onCommandExecuted(n=>{if(n.id===$i.id){if(X(e))return;let r=n.params.value;t.next(r??i)}});return t.next(i),a.dispose}),disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Qc(e){var r,i,a;if(X(e))return;let o,s,c;try{o=e.get(t.IUniverInstanceService),s=e.get(n.DocSelectionManagerService),c=e.get(I)}catch(e){if(el(e))return;throw e}let l=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),u=s.getDocRanges(),d=u.find(e=>e.isActive)??u[0],f=c.getDefaultStyle(),p=c.getStyleCache()??{},m=$c(e),h=m!=null&&(r=m.paragraphStyle)!=null&&r.namedStyleType?t.NAMED_STYLE_MAP[m==null||(i=m.paragraphStyle)==null?void 0:i.namedStyleType]:null;if(l==null||d==null)return{ts:{...f,...h,...p}};let{segmentId:g}=d,_=(a=l.getSelfOrHeaderFooterModel(g))==null?void 0:a.getBody();if(_==null)return{ts:{...f,...h,...p}};let v=sa(_,d,{});return t.Tools.deleteNull(v),{ts:{...f,...h,...v,...p}}}function $c(e){var r;if(X(e))return;let i,a;try{i=e.get(t.IUniverInstanceService),a=e.get(n.DocSelectionManagerService)}catch(e){if(el(e))return;throw e}let o=i.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),s=a.getDocRanges(),c=s.find(e=>e.isActive)??s[0];if(o==null||c==null)return;let{startOffset:l,segmentId:u}=c,d=(r=o.getSelfOrHeaderFooterModel(u))==null||(r=r.getBody())==null?void 0:r.paragraphs;if(d==null)return;let f=-1;for(let e of d){let{startIndex:t}=e;if(l>f&&l<=t)return e;f=t}return null}function el(e){return e instanceof Error?e.name===`InjectorAlreadyDisposedError`||e.message.includes(`Injector cannot be accessed after it was disposed`):!1}function tl(e){return{id:hs.id,type:i.MenuItemType.BUTTON,icon:`DocSettingIcon`,tooltip:`docs-ui.toolbar.pageSetup`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function nl(e,n){let r=`highlight.background.${n+1}`,i=e.getColorFromTheme(r);if(i==null||typeof i.color!=`string`||typeof i.alpha!=`number`)throw Error(`Theme token ${r} is required.`);return new t.ColorKit(e.getColorFromTheme(i.color)??i.color).setAlpha(i.alpha).toRgbString()}let rl=[`#FE4B4B`,`#FF8C51`,`#A4DC16`,`#2DAEFF`,`#3A60F7`,`#9E6DE3`,`#F248A6`],il=[`DocParagraphTextColorSwatchIcon.0`,`DocParagraphTextColorSwatchIcon.1`,`DocParagraphTextColorSwatchIcon.2`,`DocParagraphTextColorSwatchIcon.3`,`DocParagraphTextColorSwatchIcon.4`,`DocParagraphTextColorSwatchIcon.5`,`DocParagraphTextColorSwatchIcon.6`],al=[`DocParagraphBackgroundColorSwatchIcon.0`,`DocParagraphBackgroundColorSwatchIcon.1`,`DocParagraphBackgroundColorSwatchIcon.2`,`DocParagraphBackgroundColorSwatchIcon.3`,`DocParagraphBackgroundColorSwatchIcon.4`,`DocParagraphBackgroundColorSwatchIcon.5`,`DocParagraphBackgroundColorSwatchIcon.6`,`DocParagraphBackgroundColorSwatchIcon.7`,`DocParagraphBackgroundColorSwatchIcon.8`,`DocParagraphBackgroundColorSwatchIcon.9`,`DocParagraphBackgroundColorSwatchIcon.10`,`DocParagraphBackgroundColorSwatchIcon.11`,`DocParagraphBackgroundColorSwatchIcon.12`,`DocParagraphBackgroundColorSwatchIcon.13`,`DocParagraphBackgroundColorSwatchIcon.14`];function ol(e,r){let i=e.get(t.ICommandService);return new a.Observable(a=>{let o=t.NamedStyleType.NORMAL_TEXT,s=()=>{var t;if(X(e))return;let n=$c(e);if(n==null){a.next(o===r);return}let i=((t=n.paragraphStyle)==null?void 0:t.namedStyleType)??o;a.next(i===r)},c=i.onCommandExecuted(e=>{let t=e.id;(t===n.SetTextSelectionsOperation.id||t===Ui.id)&&s()});return s(),c.dispose})}function sl(e){return{id:Pa.id,type:i.MenuItemType.BUTTON,icon:`H1Icon`,title:`docs-ui.toolbar.heading.leading1`,tooltip:`docs-ui.toolbar.heading.leading1`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.HEADING_1)}}function cl(e){return{id:Fa.id,type:i.MenuItemType.BUTTON,icon:`H2Icon`,title:`docs-ui.toolbar.heading.leading2`,tooltip:`docs-ui.toolbar.heading.leading2`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.HEADING_2)}}function ll(e){return{id:Ia.id,type:i.MenuItemType.BUTTON,icon:`H3Icon`,title:`docs-ui.toolbar.heading.leading3`,tooltip:`docs-ui.toolbar.heading.leading3`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.HEADING_3)}}function ul(e){return{id:La.id,type:i.MenuItemType.BUTTON,icon:`H4Icon`,title:`docs-ui.toolbar.heading.leading4`,tooltip:`docs-ui.toolbar.heading.leading4`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.HEADING_4)}}function dl(e){return{id:Ra.id,type:i.MenuItemType.BUTTON,icon:`H5Icon`,title:`docs-ui.toolbar.heading.leading5`,tooltip:`docs-ui.toolbar.heading.leading5`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.HEADING_5)}}function fl(e){return{id:za.id,type:i.MenuItemType.BUTTON,icon:`TextTypeIcon`,title:`docs-ui.toolbar.heading.normal`,tooltip:`docs-ui.toolbar.heading.normal`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.NORMAL_TEXT)}}function pl(e){return{id:Ba.id,type:i.MenuItemType.BUTTON,icon:`TitleTypeIcon`,title:`docs-ui.toolbar.heading.title`,tooltip:`docs-ui.toolbar.heading.title`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.TITLE)}}function ml(e){return{id:Va.id,type:i.MenuItemType.BUTTON,icon:`SubtitleTypeIcon`,title:`docs-ui.toolbar.heading.subTitle`,tooltip:`docs-ui.toolbar.heading.subTitle`,disabled$:Z(e),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC),activated$:ol(e,t.NamedStyleType.SUBTITLE)}}let hl=`doc.menu.empty-paragraph`;function gl(){return{id:Pa.id,type:i.MenuItemType.BUTTON,icon:`H1Icon`,title:`docs-ui.toolbar.heading.leading1`,tooltip:`docs-ui.toolbar.heading.leading1`}}function _l(){return{id:Fa.id,type:i.MenuItemType.BUTTON,icon:`H2Icon`,title:`docs-ui.toolbar.heading.leading2`,tooltip:`docs-ui.toolbar.heading.leading2`}}function vl(){return{id:Ia.id,type:i.MenuItemType.BUTTON,icon:`H3Icon`,title:`docs-ui.toolbar.heading.leading3`,tooltip:`docs-ui.toolbar.heading.leading3`}}function yl(){return{id:La.id,type:i.MenuItemType.BUTTON,icon:`H4Icon`,title:`docs-ui.toolbar.heading.leading4`,tooltip:`docs-ui.toolbar.heading.leading4`}}function bl(){return{id:Ra.id,type:i.MenuItemType.BUTTON,icon:`H5Icon`,title:`docs-ui.toolbar.heading.leading5`,tooltip:`docs-ui.toolbar.heading.leading5`}}function xl(){return{id:za.id,type:i.MenuItemType.BUTTON,icon:`TextTypeIcon`,title:`docs-ui.toolbar.heading.normal`,tooltip:`docs-ui.toolbar.heading.normal`}}function Sl(){return{id:_a.id,type:i.MenuItemType.BUTTON,icon:`OrderIcon`,title:`docs-ui.rightClick.orderList`,tooltip:`docs-ui.rightClick.orderList`}}function Cl(){return{id:ma.id,type:i.MenuItemType.BUTTON,icon:`UnorderIcon`,title:`docs-ui.rightClick.bulletList`,tooltip:`docs-ui.rightClick.bulletList`}}function wl(){return{id:ha.id,type:i.MenuItemType.BUTTON,icon:`TodoListDoubleIcon`,title:`docs-ui.rightClick.checkList`,tooltip:`docs-ui.rightClick.checkList`}}function Tl(){return{id:Wn.id,type:i.MenuItemType.BUTTON,icon:`ReduceIcon`,title:`docs-ui.toolbar.horizontalLine`,tooltip:`docs-ui.toolbar.horizontalLine`}}function El(){return{id:Sn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.copy`}}function Dl(){return{id:wn.id,type:i.MenuItemType.BUTTON,icon:`CutIcon`,title:`docs-ui.rightClick.cut`}}function Ol(){return{id:Be.id,type:i.MenuItemType.BUTTON,icon:`DeleteIcon`,title:`docs-ui.rightClick.delete`}}function kl(){return{id:ba.id,type:i.MenuItemType.BUTTON,icon:`UnorderIcon`,title:`docs-ui.rightClick.bulletList`,tooltip:`docs-ui.rightClick.bulletList`}}function Al(){return{id:xa.id,type:i.MenuItemType.BUTTON,icon:`OrderIcon`,title:`docs-ui.rightClick.orderList`,tooltip:`docs-ui.rightClick.orderList`}}function jl(){return{id:Sa.id,type:i.MenuItemType.BUTTON,icon:`TodoListDoubleIcon`,title:`docs-ui.rightClick.checkList`,tooltip:`docs-ui.rightClick.checkList`}}function Ml(){return{id:Gn.id,type:i.MenuItemType.BUTTON,icon:`ReduceIcon`,title:`docs-ui.toolbar.horizontalLine`,tooltip:`docs-ui.toolbar.horizontalLine`}}let Nl=`doc.menu.insert-bellow`,Pl=`doc.menu.content-insert`,Fl=`doc.menu.table-block`,Il=`doc.menu.paragraph-t.insert`,Ll=`doc.menu.paragraph-t.edit`,Rl=`doc.menu.paragraph-t.divider`,zl=`doc.menu.paragraph-t.align`,Bl=`doc.menu.paragraph-t.colors`,Vl=`doc.menu.paragraph-t.insert-below`,Hl=`doc.menu.paragraph-t.indent.increase`,Ul=`doc.menu.paragraph-t.indent.decrease`,Wl=`doc.menu.paragraph-t.insert-below.command`;function Gl(e){return`doc.block-range.${e}.menu`}function Kl(){return{id:xn.name,commandId:xn.id,type:i.MenuItemType.BUTTON,icon:`CopyDoubleIcon`,title:`docs-ui.rightClick.copy`}}function ql(){return{id:Tn.id,type:i.MenuItemType.BUTTON,icon:`PasteSpecialDoubleIcon`,title:`docs-ui.rightClick.paste`}}function Jl(){return{id:$a.id,type:i.MenuItemType.BUTTON,icon:`DeleteIcon`,title:`docs-ui.rightClick.delete`}}function Yl(){return{id:Nl,type:i.MenuItemType.SUBITEMS,title:`docs-ui.rightClick.insertBellow`}}function Xl(e){return{id:zl,type:i.MenuItemType.SUBITEMS,icon:`LeftJustifyingIcon`,title:`docs-ui.paragraphMenu.alignAndIndent`,tooltip:`docs-ui.paragraphMenu.alignAndIndent`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Zl(e){return{id:Bl,type:i.MenuItemType.SUBITEMS,icon:`PaintBucketDoubleIcon`,title:`docs-ui.paragraphMenu.color`,tooltip:`docs-ui.paragraphMenu.color`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function Ql(e){return{..._c(e),icon:`HeaderTextColorIcon`,tooltip:void 0,title:void 0}}function $l(e){return{...Zc(e),icon:`PaintBucketDoubleIcon`,tooltip:void 0,title:void 0}}function eu(e){return{id:Vl,type:i.MenuItemType.SUBITEMS,icon:`TextTypeIcon`,title:`docs-ui.rightClick.insertBellow`,tooltip:`docs-ui.rightClick.insertBellow`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function tu(e){return{id:`${Wl}.h1`,commandId:Wl,type:i.MenuItemType.BUTTON,icon:`H1Icon`,title:`docs-ui.toolbar.heading.leading1`,tooltip:`docs-ui.toolbar.heading.leading1`,params:{commandId:Pa.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function nu(e){return{id:`${Wl}.h2`,commandId:Wl,type:i.MenuItemType.BUTTON,icon:`H2Icon`,title:`docs-ui.toolbar.heading.leading2`,tooltip:`docs-ui.toolbar.heading.leading2`,params:{commandId:Fa.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ru(e){return{id:`${Wl}.h3`,commandId:Wl,type:i.MenuItemType.BUTTON,icon:`H3Icon`,title:`docs-ui.toolbar.heading.leading3`,tooltip:`docs-ui.toolbar.heading.leading3`,params:{commandId:Ia.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function iu(e){return{id:`${Wl}.h4`,commandId:Wl,type:i.MenuItemType.BUTTON,icon:`H4Icon`,title:`docs-ui.toolbar.heading.leading4`,tooltip:`docs-ui.toolbar.heading.leading4`,params:{commandId:La.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function au(e){return{id:`${Wl}.h5`,commandId:Wl,type:i.MenuItemType.BUTTON,icon:`H5Icon`,title:`docs-ui.toolbar.heading.leading5`,tooltip:`docs-ui.toolbar.heading.leading5`,params:{commandId:Ra.id,paragraphMenuInsertMode:`breakline`},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function ou(e){return{id:`${fo.id}.below`,commandId:fo.id,type:i.MenuItemType.BUTTON,icon:`GridIcon`,title:`docs-ui.toolbar.table.insert`,tooltip:`docs-ui.toolbar.table.insert`,params:{rowCount:3,colCount:5},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function su(e){return{id:Hl,type:i.MenuItemType.BUTTON,icon:`LineIndentIncreaseIcon`,title:`docs-ui.paragraphMenu.increase`,tooltip:`docs-ui.paragraphMenu.increaseIndent`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function cu(e){return{id:Ul,type:i.MenuItemType.BUTTON,icon:`LineIndentDecreaseIcon`,title:`docs-ui.paragraphMenu.decrease`,tooltip:`docs-ui.paragraphMenu.decreaseIndent`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function lu(e){return{id:ta.id,type:i.MenuItemType.BUTTON,icon:`NoColorDoubleIcon`,title:`docs-ui.paragraphMenu.noBackground`,hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}function uu(e){let n=e.get(t.ThemeService);return{id:Yi.id,commandId:qi.id,type:i.MenuItemType.BUTTON,icon:`NoColorDoubleIcon`,title:`docs-ui.toolbar.resetColor`,tooltip:`docs-ui.toolbar.resetColor`,params:()=>({value:n.getColorFromTheme(`gray.900`)}),hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}let du=rl.reduce((e,n,r)=>{let a=`doc.menu.paragraph-t.text-color.${r}`;return e[a]={order:r,menuItemFactory:e=>({id:a,commandId:qi.id,type:i.MenuItemType.BUTTON,icon:il[r],params:{value:n},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)})},e},{}),fu=al.reduce((e,n,r)=>{let a=`doc.menu.paragraph-t.background-color.${r}`;return e[a]={order:r,menuItemFactory:e=>{let o=nl(e.get(t.ThemeService),r);return{id:a,commandId:$i.id,type:i.MenuItemType.BUTTON,icon:n,params:{value:o},hidden$:(0,i.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC)}}},e},{}),pu={[pc]:{[fc]:{order:0,menuItemFactory:gc}}},mu={...pu,[i.RibbonStartGroup.FORMAT]:{[ji.id]:{order:0,gridLayout:{row:2,column:1},menuItemFactory:rc},[Ni.id]:{order:1,gridLayout:{row:2,column:2},menuItemFactory:ic},[Fi.id]:{order:2,gridLayout:{row:2,column:3},menuItemFactory:ac},[Li.id]:{order:3,gridLayout:{row:2,column:4},menuItemFactory:oc},[zi.id]:{order:4,gridLayout:{row:2,column:5},menuItemFactory:sc},[Vi.id]:{order:5,gridLayout:{row:2,column:6},menuItemFactory:cc},[Aa.id]:{order:5.5,gridLayout:{row:1,column:1,columnSpan:2,width:100},menuItemFactory:dc},[Ui.id]:{order:6,gridLayout:{row:1,column:7,width:64},menuItemFactory:uc},[Gi.id]:{order:7,gridLayout:{row:1,column:3,columnSpan:4,width:160},menuItemFactory:lc},[qi.id]:{order:8,gridLayout:{row:2,column:7},menuItemFactory:_c,[Yi.id]:{order:0,menuItemFactory:Yc}},[$i.id]:{order:9,gridLayout:{row:2,column:8},menuItemFactory:Zc,[ta.id]:{order:0,menuItemFactory:Xc}}},[i.RibbonStartGroup.LAYOUT]:{[Y.id]:{order:2,gridLayout:{row:1,column:1},menuItemFactory:Uc},[_a.id]:{order:7,gridLayout:{row:2,column:1},menuItemFactory:Kc},[ma.id]:{order:8,gridLayout:{row:1,column:2},menuItemFactory:qc},[ha.id]:{order:9,gridLayout:{row:2,column:2},menuItemFactory:Jc},[Jo.id]:{order:10,gridLayout:{row:1,column:3,rowSpan:2,showLabel:!0},menuItemFactory:vc},[hs.id]:{order:12,gridLayout:{row:1,column:4,rowSpan:2,showLabel:!0},menuItemFactory:tl}},[i.RibbonInsertGroup.MEDIA]:{[Pc]:{order:2,gridLayout:{row:1,column:1,rowSpan:2,showLabel:!0},menuItemFactory:Fc,[fo.id]:{order:0,menuItemFactory:Ic}},[Wn.id]:{order:3,gridLayout:{row:1,column:2,rowSpan:2,showLabel:!0},menuItemFactory:Wc},[yc]:{order:4,gridLayout:{row:1,column:3,rowSpan:2,showLabel:!0},menuItemFactory:Tc,[ns.id]:{order:0,menuItemFactory:Ec},[bc]:{order:1,menuItemFactory:Oc},[xc]:{order:2,menuItemFactory:kc},[Sc]:{order:3,menuItemFactory:Ac},[Cc]:{order:4,menuItemFactory:jc},[wc]:{order:5,menuItemFactory:Mc}},[Zs]:{order:5,gridLayout:{row:1,column:4},menuItemFactory:$s},[Qs]:{order:6,gridLayout:{row:2,column:4},menuItemFactory:ec}},[i.ContextMenuPosition.MAIN_AREA]:{[i.ContextMenuGroup.QUICK]:{quickLayout:`tile`,[xn.name]:{order:0,menuItemFactory:bs},[Cn.id]:{order:1,menuItemFactory:Ss},[Tn.id]:{order:2,menuItemFactory:Cs}},[i.ContextMenuGroup.FORMAT]:{[Ne.id]:{order:0,menuItemFactory:ws}},[i.ContextMenuGroup.LAYOUT]:{[Zo.id]:{order:0,menuItemFactory:xs},[es.id]:{order:1,menuItemFactory:Os},[Ts]:{order:1,menuItemFactory:Es,[no.id]:{order:1,menuItemFactory:ks},[ro.id]:{order:2,menuItemFactory:As},[io.id]:{order:3,menuItemFactory:js},[ao.id]:{order:4,menuItemFactory:Ms}},[Ns]:{order:2,menuItemFactory:Ps,[Za.id]:{order:1,menuItemFactory:Fs},[Qa.id]:{order:2,menuItemFactory:Is},[$a.id]:{order:3,menuItemFactory:Ls}}}},[i.ContextMenuPosition.PARAGRAPH]:{[i.ContextMenuGroup.QUICK]:{[Pa.id]:{order:0,menuItemFactory:sl},[Fa.id]:{order:1,menuItemFactory:cl},[Ia.id]:{order:2,menuItemFactory:ll},[La.id]:{order:3,menuItemFactory:ul},[Ra.id]:{order:4,menuItemFactory:dl},[Ba.id]:{order:-1,menuItemFactory:pl},[Va.id]:{order:-1,menuItemFactory:ml},[za.id]:{order:5,menuItemFactory:fl}},[i.ContextMenuGroup.FORMAT]:{[Sn.id]:{order:0,menuItemFactory:El},[wn.id]:{order:1,menuItemFactory:Dl},[Be.id]:{order:2,menuItemFactory:Ol}},[i.ContextMenuGroup.LAYOUT]:{[Zo.id]:{order:0,menuItemFactory:xs},[es.id]:{order:1,menuItemFactory:Os},[Nl]:{order:1,menuItemFactory:Yl,[ba.id]:{order:0,menuItemFactory:kl},[xa.id]:{order:1,menuItemFactory:Al},[Sa.id]:{order:2,menuItemFactory:jl},[Gn.id]:{order:3,menuItemFactory:Ml},[fo.id]:{order:4,menuItemFactory:Lc}}},[Pl]:{[i.ContextMenuGroup.QUICK]:{order:-2,quickLayout:`icon`,[Pa.id]:{order:0,menuItemFactory:sl},[Fa.id]:{order:1,menuItemFactory:cl},[Ia.id]:{order:2,menuItemFactory:ll},[La.id]:{order:3,menuItemFactory:ul},[Ra.id]:{order:4,menuItemFactory:dl},[za.id]:{order:5,menuItemFactory:fl}},[i.ContextMenuGroup.LAYOUT]:{order:1,[ba.id]:{order:0,menuItemFactory:kl},[xa.id]:{order:1,menuItemFactory:Al},[Sa.id]:{order:2,menuItemFactory:jl},[Gn.id]:{order:3,menuItemFactory:Ml},[fo.id]:{order:4,menuItemFactory:Lc}}},[hl]:{[i.ContextMenuGroup.QUICK]:{order:-1,quickLayout:`icon`,[Pa.id]:{order:0,menuItemFactory:gl},[Fa.id]:{order:1,menuItemFactory:_l},[Ia.id]:{order:2,menuItemFactory:vl},[La.id]:{order:3,menuItemFactory:yl},[Ra.id]:{order:4,menuItemFactory:bl},[za.id]:{order:5,menuItemFactory:xl}},[i.ContextMenuGroup.LAYOUT]:{order:1,[Zo.id]:{order:0,menuItemFactory:xs},[es.id]:{order:1,menuItemFactory:Os},[ma.id]:{order:1,menuItemFactory:Cl},[_a.id]:{order:2,menuItemFactory:Sl},[ha.id]:{order:3,menuItemFactory:wl},[Wn.id]:{order:4,menuItemFactory:Tl},[fo.id]:{order:5,menuItemFactory:Lc}}},[Fl]:{[i.ContextMenuGroup.FORMAT]:{[xn.name]:{order:0,menuItemFactory:Kl},[Tn.id]:{order:1,menuItemFactory:ql},[$a.id]:{order:2,menuItemFactory:Jl}},[i.ContextMenuGroup.LAYOUT]:{[Nl]:{order:0,menuItemFactory:Yl,[ba.id]:{order:0,menuItemFactory:kl},[xa.id]:{order:1,menuItemFactory:Al},[Sa.id]:{order:2,menuItemFactory:jl},[Gn.id]:{order:3,menuItemFactory:Ml},[fo.id]:{order:4,menuItemFactory:Lc}}}},[Il]:{quickTop:{order:0,quickLayout:`icon`,[Pa.id]:{order:0,menuItemFactory:gl},[Fa.id]:{order:1,menuItemFactory:_l},[Ia.id]:{order:2,menuItemFactory:vl},[La.id]:{order:3,menuItemFactory:yl},[Ra.id]:{order:4,menuItemFactory:bl},[_a.id]:{order:5,menuItemFactory:Sl}},quickBottom:{order:1,quickLayout:`icon`,[ma.id]:{order:0,menuItemFactory:Cl},[ha.id]:{order:1,menuItemFactory:wl},[Wn.id]:{order:5,menuItemFactory:Tl}},insert:{order:2,[fo.id]:{order:0,menuItemFactory:Lc}},format:{order:3,[Tn.id]:{order:0,menuItemFactory:Cs}}},[Vl]:{quickTop:{order:0,quickLayout:`icon`,[`${Wl}.h1`]:{order:0,menuItemFactory:tu},[`${Wl}.h2`]:{order:1,menuItemFactory:nu},[`${Wl}.h3`]:{order:2,menuItemFactory:ru},[`${Wl}.h4`]:{order:3,menuItemFactory:iu},[`${Wl}.h5`]:{order:4,menuItemFactory:au},[xa.id]:{order:5,menuItemFactory:Al}},quickBottom:{order:1,quickLayout:`icon`,[ba.id]:{order:0,menuItemFactory:kl},[Sa.id]:{order:1,menuItemFactory:jl},[Gn.id]:{order:5,menuItemFactory:Ml}},insert:{order:2,[`${fo.id}.below`]:{order:0,menuItemFactory:ou}}},[Ll]:{quickTop:{order:0,quickLayout:`icon`,[za.id]:{order:0,menuItemFactory:fl},[Pa.id]:{order:1,menuItemFactory:sl},[Fa.id]:{order:2,menuItemFactory:cl},[Ia.id]:{order:3,menuItemFactory:ll},[La.id]:{order:4,menuItemFactory:ul},[Ra.id]:{order:5,menuItemFactory:dl},[Ba.id]:{order:6,menuItemFactory:pl},[Va.id]:{order:7,menuItemFactory:ml}},quickBottom:{order:1,quickLayout:`icon`,[_a.id]:{order:0,menuItemFactory:Kc},[ma.id]:{order:1,menuItemFactory:qc},[ha.id]:{order:2,menuItemFactory:Jc}},layout:{order:2,[zl]:{order:0,menuItemFactory:Xl},[Bl]:{order:1,menuItemFactory:Zl}},format:{order:3,[wn.id]:{order:0,menuItemFactory:Dl},[Sn.id]:{order:1,menuItemFactory:El},[Tn.id]:{order:2,menuItemFactory:Cs},[Be.id]:{order:3,menuItemFactory:Ol}},others:{order:4,[Vl]:{order:0,menuItemFactory:eu}}},[Rl]:{layout:{order:1,[Bl]:{order:0,menuItemFactory:Zl}},format:{order:2,[wn.id]:{order:0,menuItemFactory:Dl},[Sn.id]:{order:1,menuItemFactory:El},[Be.id]:{order:2,menuItemFactory:Ol}},others:{order:3,[Vl]:{order:0,menuItemFactory:eu}}},[zl]:{align:{order:0,title:`docs-ui.paragraphMenu.align`,quickLayout:`icon`,[Y.id]:{order:0,menuItemFactory:Rc},[`${Y.id}.center`]:{order:1,menuItemFactory:zc},[`${Y.id}.right`]:{order:2,menuItemFactory:Bc},[`${Y.id}.justify`]:{order:3,menuItemFactory:Vc}},indent:{order:1,title:`docs-ui.paragraphMenu.indent`,[Hl]:{order:0,menuItemFactory:su},[Ul]:{order:1,menuItemFactory:cu}}},[Bl]:{text:{order:0,title:`docs-ui.toolbar.textColor.main`,headerActionMenuItemFactory:Ql,quickLayout:`icon`,quickColumns:8,quickLayoutVariant:`compact`,[Yi.id]:{order:0,menuItemFactory:uu},...du},backgroundTop:{order:1,title:`docs-ui.toolbar.fillColor.main`,headerActionMenuItemFactory:$l,quickLayout:`icon`,quickColumns:8,quickLayoutVariant:`compact`,[ta.id]:{order:0,menuItemFactory:lu},...Object.fromEntries(Object.entries(fu).filter(([,e])=>e.order<7))},backgroundBottom:{order:2,quickLayout:`icon`,quickColumns:8,quickLayoutVariant:`compact`,...Object.fromEntries(Object.entries(fu).filter(([,e])=>e.order>=7))}}}};function Q(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&!e.getContextValue(t.FOCUSING_COMMON_DRAWINGS)}function hu(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&!e.getContextValue(t.FOCUSING_COMMON_DRAWINGS)}let gu={id:M.id,binding:i.KeyCode.TAB,preconditions:Q},_u={id:M.id,binding:i.KeyCode.TAB|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{shift:!0}},vu={id:ji.id,binding:i.KeyCode.B|i.MetaKeys.CTRL_COMMAND,preconditions:Q},yu={id:Ni.id,binding:i.KeyCode.I|i.MetaKeys.CTRL_COMMAND,preconditions:Q},bu={id:Fi.id,binding:i.KeyCode.U|i.MetaKeys.CTRL_COMMAND,preconditions:Q},xu={id:Li.id,binding:i.KeyCode.X|i.MetaKeys.SHIFT|i.MetaKeys.CTRL_COMMAND,preconditions:Q},Su={id:zi.id,binding:i.KeyCode.COMMA|i.MetaKeys.CTRL_COMMAND,preconditions:Q},Cu={id:Vi.id,binding:i.KeyCode.PERIOD|i.MetaKeys.CTRL_COMMAND,preconditions:Q},wu={id:Ca.id,binding:i.KeyCode.L|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Tu={id:Ta.id,binding:i.KeyCode.R|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Eu={id:wa.id,binding:i.KeyCode.E|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Du={id:Ea.id,binding:i.KeyCode.J|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Ou={id:_a.id,binding:i.KeyCode.Digit7|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},ku={id:ma.id,binding:i.KeyCode.Digit8|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,preconditions:Q},Au=[50,80,100,130,150,170,200,400],ju=[10,400];function Mu(){let e=(0,i.useDependency)(t.ICommandService),n=(0,i.useDependency)(t.IUniverInstanceService),r=(0,i.useObservable)(()=>n.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.filter)(e=>e!=null)),null,!1,[n]),o=(0,c.useCallback)((e=r)=>e?Math.round(No(e)*100):100,[r]),[s,u]=(0,c.useState)(100);(0,c.useEffect)(()=>u(o(r)),[r,o]),(0,c.useEffect)(()=>e.onCommandExecuted(e=>{e.id===Oa.id&&u(o())}).dispose,[e,o]);function d(t){if(u(t),r==null)return;let n=t/100;e.executeCommand(Oa.id,{unitId:r.getUnitId(),zoomRatio:n})}return(0,l.jsx)(i.Slider,{min:ju[0],value:s,shortcuts:Au,onChange:d})}function Nu(e){return(0,l.jsx)(`section`,{className:`univer-flex univer-flex-shrink-0 univer-justify-end`,children:(0,l.jsx)(Mu,{})})}function $({ref:e,...t}){let{preserveStrokeWidth:n,icon:r,id:i,className:a,extend:o,...s}=t,l=`univerjs-icon univerjs-icon-${i} ${a||``}`.trim(),u=`_${(0,c.useId)()}`,d=(0,c.useRef)(null);return(0,c.useImperativeHandle)(e,()=>d.current),(0,c.useLayoutEffect)(()=>{if(!(!n||!d.current||d.current.localName!==r.tag))return Lu(d.current)},[n,r]),Pu(r,`${i}`,{defIds:r.defIds,idSuffix:u},{ref:d,className:l,...s},o)}function Pu(e,t,n,r,i){return(0,c.createElement)(e.tag,{key:t,...Fu(e,n,i),...r},(Iu(e,n).children||[]).map((r,a)=>Pu(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function Fu(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),n!=null&&n.colorChannel1&&r.stroke===`colorChannel1`&&(r.stroke=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function Iu(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function Lu(e){let t=e.viewBox.baseVal,n=Math.max(t.width,t.height);if(!Number.isFinite(n)||n<=0||t.width<=0||t.height<=0)return()=>void 0;let r=16/n,i=Array.from(e.querySelectorAll(`circle, ellipse, line, path, polygon, polyline, rect, text, textPath, tspan, use`)).flatMap(e=>{let t=getComputedStyle(e),n=Number.parseFloat(t.strokeWidth);return t.stroke===`none`||Number.parseFloat(t.strokeOpacity)===0||t.vectorEffect===`non-scaling-stroke`||!Number.isFinite(n)||n<=0?[]:[{element:e,hadStyleAttribute:e.hasAttribute(`style`),originalStrokeWidth:n,strokeWidth:Ru(e.style,`stroke-width`)}]}).map(e=>({appliedStrokeWidth:null,element:e.element,hadStyleAttribute:e.hadStyleAttribute,isReleased:!1,originalStrokeWidth:e.originalStrokeWidth,strokeWidth:e.strokeWidth}));if(i.length===0)return()=>void 0;let a=(e,n)=>{if(t.width<=0||t.height<=0||e<=0||n<=0)return;let a=Math.min(e/t.width,n/t.height);!Number.isFinite(a)||a<=0||i.forEach(e=>{if(e.isReleased)return;if(e.appliedStrokeWidth!==null&&(e.element.style.getPropertyValue(`stroke-width`)!==e.appliedStrokeWidth||e.element.style.getPropertyPriority(`stroke-width`)!==e.strokeWidth.priority)){e.appliedStrokeWidth=null,e.isReleased=!0;return}let t=e.originalStrokeWidth*r/a,n=`${Number(t.toFixed(12))}px`;e.element.style.setProperty(`stroke-width`,n,e.strokeWidth.priority),e.appliedStrokeWidth=n})},o=e.getBoundingClientRect();a(o.width,o.height);let s=typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{if(t.some(t=>t.target===e)){let t=e.getBoundingClientRect();a(t.width,t.height)}});return s==null||s.observe(e),()=>{s==null||s.disconnect(),i.forEach(e=>{e.appliedStrokeWidth!==null&&(zu(e.element.style,`stroke-width`,e.appliedStrokeWidth,e.strokeWidth.priority,e.strokeWidth),!e.hadStyleAttribute&&e.element.style.length===0&&e.element.removeAttribute(`style`))})}}function Ru(e,t){return{priority:e.getPropertyPriority(t),value:e.getPropertyValue(t)}}function zu(e,t,n,r,i){e.getPropertyValue(t)===n&&e.getPropertyPriority(t)===r&&(i.value?e.setProperty(t,i.value,i.priority):e.removeProperty(t))}$.displayName=`UniverIcon`;let Bu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M7.9998 1.65005H3.64981C2.54524 1.65005 1.6498 2.54548 1.6498 3.65005V12.35C1.6498 13.4546 2.54523 14.35 3.6498 14.35H12.3498C13.4544 14.35 14.3498 13.4546 14.3498 12.3501V8.00005`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M1.6498 11.2148L5.43408 8.29588L10.711 12.0198`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M9.46559 10.1621L10.9774 8.65032C11.2042 8.42344 11.5634 8.39794 11.8201 8.59045L14.3498 10.4877`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M11.8097 1.74783V6.24167M9.6603 3.897H14.1541`,strokeLinecap:`round`,strokeWidth:1.2}}]},Vu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`add-image-icon`,ref:t,icon:Bu}))});Vu.displayName=`AddImageIcon`;let Hu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641C1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H13.9999C14.3313 6.76641 14.5999 6.49778 14.5999 6.16641C14.5999 5.83504 14.3313 5.56641 13.9999 5.56641H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004C1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H13.9999C14.3313 14.1004 14.5999 13.8318 14.5999 13.5004C14.5999 13.169 14.3313 12.9004 13.9999 12.9004H1.9999Z`}}]},Uu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`align-text-both-icon`,ref:t,icon:Hu}))});Uu.displayName=`AlignTextBothIcon`;let Wu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.65791 1.30005C3.77355 1.30005 3.05664 2.01696 3.05664 2.90132V12.8588C3.05664 13.8755 3.88086 14.6998 4.89759 14.6998H9.1016C11.2233 14.6998 12.9433 12.9798 12.9433 10.8581C12.9433 9.13925 11.8145 7.68407 10.2578 7.1934C10.8806 6.56856 11.2655 5.70659 11.2655 4.75472C11.2655 2.84676 9.71883 1.30005 7.81087 1.30005H4.65791ZM4.25664 2.90132C4.25664 2.6797 4.4363 2.50005 4.65791 2.50005H7.81087C9.05609 2.50005 10.0655 3.5095 10.0655 4.75472C10.0655 5.99993 9.05609 7.00938 7.81087 7.00938H4.25664V2.90132ZM4.25664 12.8588V8.21636H9.1016C10.5606 8.21636 11.7433 9.39909 11.7433 10.8581C11.7433 12.317 10.5606 13.4998 9.1016 13.4998H4.89759C4.5436 13.4998 4.25664 13.2128 4.25664 12.8588Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Gu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`bold-icon`,ref:t,icon:Wu}))});Gu.displayName=`BoldIcon`;let Ku={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9834 3.98332C1.9834 3.61513 2.28188 3.31665 2.65007 3.31665H13.3167C13.6849 3.31665 13.9834 3.61513 13.9834 3.98332C13.9834 4.35151 13.6849 4.64998 13.3167 4.64998H2.65007C2.28188 4.64998 1.9834 4.35151 1.9834 3.98332Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9834 7.98267C1.9834 7.61448 2.28188 7.316 2.65007 7.316H10.6501C11.0183 7.316 11.3167 7.61448 11.3167 7.98267C11.3167 8.35086 11.0183 8.64933 10.6501 8.64933H2.65007C2.28188 8.64933 1.9834 8.35086 1.9834 7.98267Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.65007 11.316C2.28188 11.316 1.9834 11.6145 1.9834 11.9827C1.9834 12.3509 2.28188 12.6493 2.65007 12.6493H7.9834C8.35159 12.6493 8.65006 12.3509 8.65006 11.9827C8.65006 11.6145 8.35159 11.316 7.9834 11.316H2.65007Z`}}]},qu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`catalogue-icon`,ref:t,icon:Ku}))});qu.displayName=`CatalogueIcon`;let Ju={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 17`,width:`1em`,height:`1em`},children:[{tag:`rect`,attrs:{width:12.52,height:4,x:2.63,y:2.89,stroke:`currentColor`,rx:1.1,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M6.80825 2.89202V6.89199M10.9821 2.89202V6.89199`,strokeWidth:1.2}},{tag:`rect`,attrs:{width:4,height:4,x:2.63,y:9.8,stroke:`currentColor`,rx:1.1,strokeWidth:1.2}}]},Yu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`column-icon`,ref:t,icon:Ju}))});Yu.displayName=`ColumnIcon`;let Xu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},Zu=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`cut-icon`,ref:t,icon:Xu}))});Zu.displayName=`CutIcon`;let Qu={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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 0.866699 5.9313 0.866699H10.069C10.4004 0.866699 10.669 1.13533 10.669 1.4667C10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.64443C14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928L9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171C10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778L9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539C9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263L6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539C5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778L6.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`}}]},$u=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-icon`,ref:t,icon:Qu}))});$u.displayName=`DeleteIcon`;let ed={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M6.18958 14.085H4.0929C2.98833 14.085 2.0929 13.1895 2.0929 12.085V3.5918C2.0929 2.48723 2.98833 1.5918 4.0929 1.5918H10.5031C11.6077 1.5918 12.5031 2.48723 12.5031 3.5918V6.41602`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.33}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M4.73547 4.57324H9.96594M4.73547 7.08105H7.91614`,strokeLinecap:`round`,strokeWidth:1.33}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M10.0255 9.17969H11.9572L13.7687 11.7939L11.9572 14.4082H10.0255L8.21399 11.7939L10.0255 9.17969Z`,strokeLinejoin:`round`,strokeWidth:1.33}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M10.9913 11.7939H10.9914`,strokeLinecap:`round`,strokeWidth:1.83}}]},td=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`doc-setting-icon`,ref:t,icon:ed}))});td.displayName=`DocSettingIcon`;let nd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`rect`,attrs:{width:12.06,height:12.06,x:1.97,y:1.97,stroke:`currentColor`,rx:.63,strokeWidth:1.27}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5.7777 1.96817V14.0317M9.90468 1.96817V14.0317M1.96817 6.09516H14.0317M1.96817 9.90468H14.0317`,strokeWidth:1.27}}]},rd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`grid-icon`,ref:t,icon:nd}))});rd.displayName=`GridIcon`;let id={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C2.16853 2.06689 1.8999 2.33552 1.8999 2.66689V13.3336C1.8999 13.6649 2.16853 13.9336 2.4999 13.9336C2.83127 13.9336 3.0999 13.6649 3.0999 13.3336V8.5999H8.2334V13.3336C8.2334 13.6649 8.50203 13.9336 8.8334 13.9336C9.16477 13.9336 9.4334 13.6649 9.4334 13.3336V2.66689C9.4334 2.33552 9.16477 2.06689 8.8334 2.06689C8.50203 2.06689 8.2334 2.33552 8.2334 2.66689V7.3999H3.0999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M14.0999 6.33879C14.0999 6.09377 13.9509 5.87336 13.7236 5.78203C13.4962 5.6907 13.2362 5.74679 13.0667 5.92373L11.4753 7.58486C11.2461 7.82415 11.2542 8.20396 11.4935 8.43319C11.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.9333C13.8313 13.9333 14.0999 13.6646 14.0999 13.3333V6.33879Z`}}]},ad=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h1-icon`,ref:t,icon:id}))});ad.displayName=`H1Icon`;let od={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336C2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336C8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689C7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M11.2667 8.33356C11.2667 7.67245 11.8201 7.26689 12.3333 7.26689C12.8465 7.26689 13.4 7.67244 13.4 8.33356C13.4 8.62807 13.2712 8.94814 12.9954 9.32391C12.7183 9.70153 12.3394 10.0744 11.9174 10.4803L11.8355 10.559C11.4524 10.9268 11.0365 11.3263 10.7149 11.7373C10.3718 12.1759 10.0667 12.7122 10.0667 13.3336C10.0667 13.6649 10.3353 13.9336 10.6667 13.9336H14C14.3314 13.9336 14.6 13.6649 14.6 13.3336C14.6 13.0022 14.3314 12.7336 14 12.7336H11.4782C11.5286 12.6531 11.5889 12.5676 11.6601 12.4767C11.9269 12.1355 12.2843 11.792 12.6877 11.4043L12.7492 11.3452C13.1606 10.9496 13.615 10.5079 13.9629 10.0338C14.3122 9.55787 14.6 8.98906 14.6 8.33356C14.6 6.88362 13.3757 6.06689 12.3333 6.06689C11.291 6.06689 10.0667 6.88361 10.0667 8.33356C10.0667 8.66493 10.3353 8.93356 10.6667 8.93356C10.998 8.93356 11.2667 8.66493 11.2667 8.33356Z`}}]},sd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h2-icon`,ref:t,icon:od}))});sd.displayName=`H2Icon`;let cd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336C2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336C8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689C7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.6667 6.06689C10.3353 6.06689 10.0667 6.33552 10.0667 6.66689C10.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.93051C11.2283 10.1364 11.4375 10.2669 11.6667 10.2669C12.2418 10.2669 12.6786 10.4115 12.9585 10.6354C13.2204 10.845 13.4 11.166 13.4 11.6669C13.4 12.1622 13.2254 12.3937 13.0567 12.5202C12.8588 12.6686 12.5829 12.7336 12.3333 12.7336C11.7271 12.7336 11.3432 12.4858 11.1106 12.23C10.8877 11.9848 10.5082 11.9667 10.2631 12.1896C10.0179 12.4125 9.99979 12.792 10.2227 13.0372C10.6568 13.5147 11.3522 13.9336 12.3333 13.9336C12.7504 13.9336 13.3078 13.8319 13.7767 13.4802C14.2746 13.1068 14.6 12.5049 14.6 11.6669C14.6 10.8345 14.2796 10.1555 13.7081 9.69837C13.4342 9.47923 13.117 9.32231 12.7746 9.21971L14.4736 7.03526C14.6143 6.85437 14.6397 6.60914 14.539 6.40328C14.4383 6.19743 14.2291 6.06689 14 6.06689H10.6667Z`}}]},ld=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h3-icon`,ref:t,icon:cd}))});ld.displayName=`H3Icon`;let ud={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},dd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h4-icon`,ref:t,icon:ud}))});dd.displayName=`H4Icon`;let fd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.06689C1.66853 2.06689 1.3999 2.33552 1.3999 2.66689V13.3336C1.3999 13.6649 1.66853 13.9336 1.9999 13.9336C2.33127 13.9336 2.5999 13.6649 2.5999 13.3336V8.5999H7.3999V13.3336C7.3999 13.6649 7.66853 13.9336 7.9999 13.9336C8.33127 13.9336 8.5999 13.6649 8.5999 13.3336V2.66689C8.5999 2.33552 8.33127 2.06689 7.9999 2.06689C7.66853 2.06689 7.3999 2.33552 7.3999 2.66689V7.3999H2.5999V2.66689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.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.94492C10.7822 9.94492 10.8899 9.91238 10.9814 9.85599C10.9901 9.85195 11.0027 9.84632 11.0192 9.83936C11.0764 9.81533 11.1692 9.78033 11.2927 9.74447C11.5397 9.67268 11.8996 9.60022 12.3336 9.60022C12.4975 9.60022 12.5978 9.63412 12.6624 9.67167C12.7263 9.70877 12.79 9.76953 12.8503 9.87834C12.983 10.1181 13.0669 10.5337 13.0669 11.1669C13.0669 11.8061 12.9802 12.1936 12.8338 12.414C12.7252 12.5775 12.5275 12.7336 12.0002 12.7336C11.6445 12.7336 11.4936 12.622 11.4192 12.5328C11.3289 12.4245 11.2669 12.2453 11.2669 12.0028C11.2669 11.6714 10.9983 11.4028 10.6669 11.4028C10.3355 11.4028 10.0669 11.6714 10.0669 12.0028C10.0669 12.4244 10.1716 12.9106 10.4979 13.3016C10.8401 13.7118 11.356 13.9336 12.0002 13.9336C12.8063 13.9336 13.4419 13.6673 13.8334 13.0779C14.1869 12.5456 14.2669 11.8497 14.2669 11.1669C14.2669 10.4781 14.1841 9.81027 13.9002 9.29724C13.7521 9.02964 13.545 8.79662 13.2651 8.63403C12.986 8.4719 12.6697 8.40022 12.3336 8.40022C11.9239 8.40022 11.5627 8.44957 11.2669 8.51389V7.60332H13.3336C13.6649 7.60332 13.9336 7.33469 13.9336 7.00332C13.9336 6.67195 13.6649 6.40332 13.3336 6.40332H10.6669Z`}}]},pd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`h5-icon`,ref:t,icon:fd}))});pd.displayName=`H5Icon`;let md={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`rect`,attrs:{width:12.2,height:13,x:1.9,y:1.5,stroke:`currentColor`,rx:1.4,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M4.9999 4.50137H10.9999M4.9999 11.4987H10.9999`,strokeLinecap:`round`,strokeWidth:1.2}}]},hd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`header-footer-icon`,ref:t,icon:md}))});hd.displayName=`HeaderFooterIcon`;let gd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.33315 5.56641C3.00178 5.56641 2.73315 5.83504 2.73315 6.16641C2.73315 6.49778 3.00178 6.76641 3.33315 6.76641H12.6665C12.9979 6.76641 13.2665 6.49778 13.2665 6.16641C13.2665 5.83504 12.9979 5.56641 12.6665 5.56641H3.33315Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.33315 12.9004C3.00178 12.9004 2.73315 13.169 2.73315 13.5004C2.73315 13.8318 3.00178 14.1004 3.33315 14.1004H12.6665C12.9979 14.1004 13.2665 13.8318 13.2665 13.5004C13.2665 13.169 12.9979 12.9004 12.6665 12.9004H3.33315Z`}}]},_d=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`horizontally-icon`,ref:t,icon:gd}))});_d.displayName=`HorizontallyIcon`;let vd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M9.80385 1.40005H11.9997C12.3311 1.40005 12.5997 1.66868 12.5997 2.00005C12.5997 2.33143 12.3311 2.60005 11.9997 2.60005H10.1185L7.12251 13.4001H9.33324C9.66461 13.4001 9.93324 13.6687 9.93324 14.0001C9.93324 14.3314 9.66461 14.6001 9.33324 14.6001H6.34785C6.33847 14.6003 6.32905 14.6003 6.31962 14.6001H3.9999C3.66853 14.6001 3.3999 14.3314 3.3999 14.0001C3.3999 13.6687 3.66853 13.4001 3.9999 13.4001H5.87719L8.87322 2.60005H6.66641C6.33504 2.60005 6.06641 2.33143 6.06641 2.00005C6.06641 1.66868 6.33504 1.40005 6.66641 1.40005H9.52916C9.61698 1.37929 9.71064 1.3781 9.80385 1.40005Z`}}]},yd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`italic-icon`,ref:t,icon:vd}))});yd.displayName=`ItalicIcon`;let bd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M3.39986 6.33339C3.39986 6.00202 3.66849 5.73339 3.99986 5.73339H4.66652C4.99789 5.73339 5.26652 6.00202 5.26652 6.33339C5.26652 6.66476 4.99789 6.93339 4.66652 6.93339H3.99986C3.66849 6.93339 3.39986 6.66476 3.39986 6.33339Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.99986 5.73339C6.66849 5.73339 6.39986 6.00202 6.39986 6.33339C6.39986 6.66476 6.66849 6.93339 6.99986 6.93339H7.66652C7.99789 6.93339 8.26652 6.66476 8.26652 6.33339C8.26652 6.00202 7.99789 5.73339 7.66652 5.73339H6.99986Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M9.06636 6.33339C9.06636 6.00202 9.33499 5.73339 9.66636 5.73339H11.9997C12.3311 5.73339 12.5997 6.00202 12.5997 6.33339C12.5997 6.66476 12.3311 6.93339 11.9997 6.93339H9.66636C9.33499 6.93339 9.06636 6.66476 9.06636 6.33339Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.99986 8.73339C3.66849 8.73339 3.39986 9.00202 3.39986 9.33339C3.39986 9.66476 3.66849 9.93339 3.99986 9.93339H11.9999C12.3312 9.93339 12.5999 9.66476 12.5999 9.33339C12.5999 9.00202 12.3312 8.73339 11.9999 8.73339H3.99986Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.33338 1.73345L12.6667 1.7334C14.1026 1.73339 15.2667 2.89745 15.2667 4.3334V11C15.2667 12.4359 14.1027 13.6 12.6667 13.6H3.33355C1.89763 13.6 0.733583 12.4359 0.73355 11L0.733398 4.33351C0.733366 2.89755 1.89742 1.73346 3.33338 1.73345ZM12.6667 2.9334L3.33339 2.93345C2.56018 2.93346 1.93338 3.56028 1.9334 4.33348L1.93355 11C1.93357 11.7732 2.56036 12.4 3.33355 12.4H12.6667C13.4399 12.4 14.0667 11.7732 14.0667 11V4.3334C14.0667 3.5602 13.4399 2.93339 12.6667 2.9334Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},xd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`keyboard-icon`,ref:t,icon:bd}))});xd.displayName=`KeyboardIcon`;let Sd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 5.56641C1.66853 5.56641 1.3999 5.83504 1.3999 6.16641C1.3999 6.49778 1.66853 6.76641 1.9999 6.76641H11.3332C11.6646 6.76641 11.9332 6.49778 11.9332 6.16641C11.9332 5.83504 11.6646 5.56641 11.3332 5.56641H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.9999 12.9004C1.66853 12.9004 1.3999 13.169 1.3999 13.5004C1.3999 13.8318 1.66853 14.1004 1.9999 14.1004H11.3332C11.6646 14.1004 11.9332 13.8318 11.9332 13.5004C11.9332 13.169 11.6646 12.9004 11.3332 12.9004H1.9999Z`}}]},Cd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`left-justifying-icon`,ref:t,icon:Sd}))});Cd.displayName=`LeftJustifyingIcon`;let wd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.1 2.5H13.9M7.1 5.8H13.9M7.1 9.1H13.9M2.1 12.4H13.9`,strokeLinecap:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5 5.6L2.4 8L5 10.4`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.4 8H5.1`,strokeLinecap:`round`,strokeWidth:1.3}}]},Td=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`line-indent-decrease-icon`,ref:t,icon:wd}))});Td.displayName=`LineIndentDecreaseIcon`;let Ed={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.1 2.5H13.9M7.1 5.8H13.9M7.1 9.1H13.9M2.1 12.4H13.9`,strokeLinecap:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.4 5.6L5 8L2.4 10.4`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.3}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.3 8H5`,strokeLinecap:`round`,strokeWidth:1.3}}]},Dd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`line-indent-increase-icon`,ref:t,icon:Ed}))});Dd.displayName=`LineIndentIncreaseIcon`;let Od={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.66504 2.8666C1.66504 2.53523 1.93367 2.2666 2.26504 2.2666H13.735C14.0664 2.2666 14.335 2.53523 14.335 2.8666C14.335 3.19797 14.0664 3.4666 13.735 3.4666H2.26504C1.93367 3.4666 1.66504 3.19797 1.66504 2.8666Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.66504 8.00002C1.66504 7.66865 1.93367 7.40002 2.26504 7.40002H13.735C14.0664 7.40002 14.335 7.66865 14.335 8.00002C14.335 8.3314 14.0664 8.60002 13.735 8.60002H2.26504C1.93367 8.60002 1.66504 8.3314 1.66504 8.00002Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.26504 12.5334C1.93367 12.5334 1.66504 12.8021 1.66504 13.1334C1.66504 13.4648 1.93367 13.7334 2.26504 13.7334H13.735C14.0664 13.7334 14.335 13.4648 14.335 13.1334C14.335 12.8021 14.0664 12.5334 13.735 12.5334H2.26504Z`}}]},kd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`menu-icon`,ref:t,icon:Od}))});kd.displayName=`MenuIcon`;let Ad={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M10.3536 12.3536C10.1583 12.5488 9.84171 12.5488 9.64645 12.3536L6.64645 9.35355C6.45118 9.15829 6.45118 8.84171 6.64645 8.64645L9.64645 5.64645C9.84171 5.45118 10.1583 5.45118 10.3536 5.64645C10.5488 5.84171 10.5488 6.15829 10.3536 6.35355L7.70711 9L10.3536 11.6464C10.5488 11.8417 10.5488 12.1583 10.3536 12.3536Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},jd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`more-left-icon`,ref:t,icon:Ad}))});jd.displayName=`MoreLeftIcon`;let Md={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M6.14645 4.64645C6.34171 4.45118 6.65829 4.45118 6.85355 4.64645L9.85355 7.64645C10.0488 7.84171 10.0488 8.15829 9.85355 8.35355L6.85355 11.3536C6.65829 11.5488 6.34171 11.5488 6.14645 11.3536C5.95118 11.1583 5.95118 10.8417 6.14645 10.6464L8.79289 8L6.14645 5.35355C5.95118 5.15829 5.95118 4.84171 6.14645 4.64645Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Nd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`more-right-icon`,ref:t,icon:Md}))});Nd.displayName=`MoreRightIcon`;let Pd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.65465 3.96697V2.9942C1.65465 2.9188 1.64353 2.86563 1.62465 2.83387C1.61052 2.81011 1.58943 2.79243 1.53852 2.79243H1.44483C1.23836 2.79243 1.07099 2.62506 1.07099 2.41859C1.07099 2.23956 1.19714 2.09152 1.36369 2.04728C1.4425 2.02634 1.51336 2.00423 1.57642 1.98104C1.65529 1.94986 1.73286 1.91381 1.80913 1.87285C1.8974 1.82544 1.99768 1.79517 2.10303 1.79517C2.41692 1.79517 2.67137 2.04962 2.67137 2.36351V4.02047C2.67137 4.12385 2.75517 4.20765 2.85855 4.20765C3.0614 4.20765 3.22585 4.3721 3.22585 4.57495V4.63332C3.22585 4.86842 3.03527 5.059 2.80018 5.059H1.41884C1.1829 5.059 0.993164 4.86511 0.993164 4.63087C0.993164 4.39932 1.18072 4.20765 1.41398 4.20765C1.5469 4.20765 1.65465 4.09989 1.65465 3.96697Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M0.949709 9.2145C1.14957 9.02907 1.33226 8.85497 1.49677 8.69321C1.6914 8.50496 1.84244 8.33306 1.95136 8.17747C2.05826 8.02476 2.10492 7.89219 2.10492 7.77781C2.10492 7.65255 2.07293 7.57986 2.02759 7.53865L2.0245 7.5357C1.97641 7.48761 1.9103 7.46013 1.81635 7.46013C1.71986 7.46013 1.6383 7.47348 1.5822 7.51611L1.58034 7.51749C1.42279 7.63092 1.19425 7.67086 1.03149 7.50811L1.02187 7.49849C0.868433 7.34505 0.852261 7.07998 1.03819 6.93364C1.12802 6.86293 1.21897 6.8051 1.31109 6.76081C1.48788 6.67257 1.69616 6.63037 1.93278 6.63037C2.15191 6.63037 2.34929 6.67491 2.52246 6.76665C2.69563 6.85514 2.83257 6.98323 2.93172 7.14966C3.03175 7.31758 3.08022 7.51184 3.08022 7.72929C3.08022 7.91104 3.03028 8.09333 2.93429 8.27521C2.84374 8.45283 2.72797 8.62691 2.58859 8.79616C2.51109 8.88842 2.43304 8.97759 2.35442 9.06369C2.34919 9.06941 2.34388 9.07573 2.33892 9.08228C2.34542 9.08201 2.35268 9.08151 2.36075 9.08073C2.46266 9.07087 2.54985 9.06576 2.62168 9.06576H2.78662C3.02915 9.06576 3.22576 9.26237 3.22576 9.5049C3.22576 9.74742 3.02915 9.94403 2.78662 9.94403H1.23472C1.00261 9.94403 0.814453 9.75587 0.814453 9.52376C0.814453 9.40615 0.86379 9.29421 0.949709 9.2145Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.2579 14.674C1.45109 14.7553 1.67487 14.7946 1.92711 14.7946C2.1451 14.7946 2.34841 14.7599 2.53619 14.6895L2.53746 14.689C2.7264 14.6148 2.88145 14.5071 2.99952 14.3647L3.00018 14.3639C3.12167 14.2138 3.18089 14.0326 3.18089 13.8252C3.18089 13.6181 3.12169 13.4411 2.99737 13.3022C2.91596 13.2112 2.81864 13.1388 2.70642 13.0846C2.80611 13.023 2.88805 12.9505 2.95017 12.8661C3.04138 12.7422 3.08609 12.5977 3.08609 12.4365C3.08609 12.1403 2.97594 11.9041 2.7521 11.7404C2.53645 11.5772 2.25212 11.5002 1.90815 11.5002C1.7136 11.5002 1.52963 11.5372 1.35712 11.6115C1.28512 11.6418 1.21426 11.6776 1.14456 11.7188C0.938688 11.8404 0.928034 12.1099 1.06649 12.2774C1.21291 12.4544 1.46028 12.4561 1.63989 12.363C1.70891 12.3286 1.78521 12.3109 1.87023 12.3109C1.96356 12.3109 2.01717 12.3317 2.04691 12.3578C2.07449 12.3821 2.09529 12.4231 2.09529 12.4981C2.09529 12.5709 2.0658 12.6284 1.99667 12.6764C1.96042 12.6999 1.8978 12.7216 1.80025 12.7355C1.61051 12.7625 1.44118 12.9145 1.44118 13.1237C1.44118 13.3319 1.60937 13.4885 1.80489 13.5068C1.87785 13.5136 1.93575 13.5234 1.97985 13.5355C2.07997 13.562 2.12905 13.596 2.14927 13.6246C2.17519 13.6614 2.19008 13.7078 2.19008 13.7684C2.19008 13.8334 2.16583 13.8754 2.1142 13.9064C2.05357 13.9428 1.96521 13.965 1.84179 13.965C1.749 13.965 1.6547 13.9433 1.55817 13.8981C1.363 13.7983 1.08846 13.8083 0.942801 14.01L0.936366 14.0189C0.827321 14.1699 0.821861 14.401 0.994678 14.5262C1.07406 14.5836 1.16225 14.633 1.2579 14.674Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.13037 2.827C4.799 2.827 4.53037 3.09563 4.53037 3.427C4.53037 3.75837 4.799 4.027 5.13037 4.027H15.1489C15.4803 4.027 15.7489 3.75837 15.7489 3.427C15.7489 3.09563 15.4803 2.827 15.1489 2.827H5.13037Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53037 8.28711C4.53037 7.95574 4.799 7.68711 5.13037 7.68711H15.1489C15.4803 7.68711 15.7489 7.95574 15.7489 8.28711C15.7489 8.61848 15.4803 8.88711 15.1489 8.88711H5.13037C4.799 8.88711 4.53037 8.61848 4.53037 8.28711Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.13037 12.5475C4.799 12.5475 4.53037 12.8161 4.53037 13.1475C4.53037 13.4788 4.799 13.7475 5.13037 13.7475H15.1489C15.4803 13.7475 15.7489 13.4788 15.7489 13.1475C15.7489 12.8161 15.4803 12.5475 15.1489 12.5475H5.13037Z`}}]},Fd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`order-icon`,ref:t,icon:Pd}))});Fd.displayName=`OrderIcon`;let Id={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M1.9999 7.9999H13.9999`,strokeLinecap:`round`,strokeWidth:1.2}}]},Ld=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`reduce-icon`,ref:t,icon:Id}))});Ld.displayName=`ReduceIcon`;let Rd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.49941C1.3999 2.83078 1.66853 3.09941 1.9999 3.09941H13.9999C14.3313 3.09941 14.5999 2.83078 14.5999 2.49941C14.5999 2.16804 14.3313 1.89941 13.9999 1.89941H1.9999Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.66665 5.56641C4.33528 5.56641 4.06665 5.83504 4.06665 6.16641C4.06665 6.49778 4.33528 6.76641 4.66665 6.76641H14C14.3314 6.76641 14.6 6.49778 14.6 6.16641C14.6 5.83504 14.3314 5.56641 14 5.56641H4.66665Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.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.8334C14.5999 10.1648 14.3313 10.4334 13.9999 10.4334H1.9999C1.66853 10.4334 1.3999 10.1648 1.3999 9.8334Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.66665 12.9004C4.33528 12.9004 4.06665 13.169 4.06665 13.5004C4.06665 13.8318 4.33528 14.1004 4.66665 14.1004H14C14.3314 14.1004 14.6 13.8318 14.6 13.5004C14.6 13.169 14.3314 12.9004 14 12.9004H4.66665Z`}}]},zd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`right-justifying-icon`,ref:t,icon:Rd}))});zd.displayName=`RightJustifyingIcon`;let Bd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 20 20`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M14.35 5.3V4A2.35 2.35 0 0 0 12 1.65H4A2.35 2.35 0 0 0 1.65 4V12A2.35 2.35 0 0 0 4 14.35H5.3`,strokeLinecap:`round`,strokeWidth:1.3}},{tag:`circle`,attrs:{cx:12.5,cy:12.5,r:5.85,stroke:`currentColor`,strokeWidth:1.3}}]},Vd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`shape-icon`,ref:t,icon:Bd}))});Vd.displayName=`ShapeIcon`;let Hd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`circle`,attrs:{cx:8,cy:8,r:6.4,stroke:`currentColor`,strokeWidth:1.2}},{tag:`circle`,attrs:{cx:5.75,cy:6.3,r:.75,fill:`currentColor`}},{tag:`circle`,attrs:{cx:10.25,cy:6.3,r:.75,fill:`currentColor`}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5 9.3C5.65 10.65 6.65 11.35 8 11.35C9.35 11.35 10.35 10.65 11 9.3`,strokeLinecap:`round`,strokeWidth:1.2}}]},Ud=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`smile-icon`,ref:t,icon:Hd}))});Ud.displayName=`SmileIcon`;let Wd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`rect`,attrs:{width:11.2,height:13.2,x:2.4,y:1.4,stroke:`currentColor`,rx:1.6,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5 12H11M5.5 9.7V7.8M8 9.7V5M10.5 9.7V6.5M5 9.7H11`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}}]},Gd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`statistical-function-icon`,ref:t,icon:Wd}))});Gd.displayName=`StatisticalFunctionIcon`;let Kd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M8.00033 1.20996C6.43345 1.20996 5.23596 1.88077 4.64804 2.94304C4.06338 3.99943 4.15123 5.32084 4.90099 6.47062C5.08199 6.7482 5.45374 6.82648 5.73131 6.64548C6.00888 6.46448 6.08716 6.09273 5.90616 5.81516C5.36418 4.98402 5.35768 4.13897 5.69797 3.52412C6.035 2.91515 6.78176 2.40996 8.00033 2.40996C9.19423 2.40996 10.0017 2.93409 10.5236 3.46755C10.7871 3.73682 10.9756 4.00712 11.0974 4.20903C11.158 4.30951 11.2013 4.39164 11.2284 4.44625C11.2419 4.47351 11.2514 4.49377 11.2568 4.50588L11.2621 4.51771C11.3901 4.82216 11.7407 4.96686 12.046 4.83992C12.3519 4.71267 12.4968 4.36149 12.3695 4.05552L11.8231 4.28278C12.3695 4.05552 12.3697 4.0558 12.3695 4.05552L12.3691 4.05437L12.3685 4.05298L12.367 4.04953L12.3629 4.03993L12.3498 4.01036C12.3388 3.98619 12.3234 3.95326 12.3033 3.91282C12.2632 3.83203 12.2043 3.72072 12.1249 3.58908C11.9666 3.32674 11.7235 2.97805 11.3814 2.62834C10.6921 1.92381 9.59192 1.20996 8.00033 1.20996Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.11953 8.5999H7.88935C10.1109 9.46549 10.5895 10.7649 10.4268 11.6869C10.2475 12.703 9.26939 13.5898 8.00009 13.5898C6.63323 13.5898 5.77631 13.0502 5.25534 12.528C4.99021 12.2623 4.80823 11.9965 4.69365 11.7993C4.63659 11.7011 4.59698 11.6211 4.5727 11.5686C4.56059 11.5424 4.55236 11.5231 4.54774 11.512L4.54352 11.5016C4.4267 11.193 4.0823 11.0363 3.77279 11.1516C3.46228 11.2673 3.30438 11.6129 3.4201 11.9234L3.9649 11.7203C3.4201 11.9234 3.41998 11.9231 3.4201 11.9234L3.4206 11.9247L3.42118 11.9263L3.42262 11.9301L3.42661 11.9403C3.42977 11.9484 3.43394 11.9588 3.43914 11.9713C3.44956 11.9965 3.46418 12.0304 3.48334 12.0719C3.52161 12.1547 3.57828 12.2682 3.65608 12.4021C3.81124 12.6692 4.0534 13.0223 4.40584 13.3756C5.12 14.0914 6.27196 14.7898 8.00009 14.7898C9.82574 14.7898 11.3236 13.5101 11.6085 11.8955C11.812 10.7422 11.3901 9.55402 10.2665 8.5999H13.8804C14.2117 8.5999 14.4803 8.33127 14.4803 7.9999C14.4803 7.66853 14.2117 7.3999 13.8804 7.3999H8.01411C8.0048 7.39968 7.99551 7.39969 7.98625 7.3999H2.11953C1.78816 7.3999 1.51953 7.66853 1.51953 7.9999C1.51953 8.33127 1.78816 8.5999 2.11953 8.5999Z`}}]},qd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`strikethrough-icon`,ref:t,icon:Kd}))});qd.displayName=`StrikethroughIcon`;let Jd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.08596 14.1387L10.3379 2.66873`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M10.3379 14.1387L2.08596 2.66873`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M12.8098 10.0174C13.4565 9.45285 14.781 9.44507 15.0272 10.5759C15.2798 11.736 13.8101 13.2515 12.7376 14.1033C12.7227 14.1151 12.7315 14.1389 12.7505 14.1388L15.2251 14.1388`,strokeLinecap:`round`,strokeWidth:1.2}}]},Yd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`subscript-icon`,ref:t,icon:Jd}))});Yd.displayName=`SubscriptIcon`;let Xd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M2.10904 14.4537L10.299 3.06987`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M10.2989 14.4537L2.10899 3.06987`,strokeLinecap:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M12.7525 3.35933C13.3943 2.79901 14.7089 2.79129 14.9533 3.91363C15.204 5.06487 13.7456 6.56876 12.6812 7.41429C12.6663 7.4261 12.6751 7.44982 12.6941 7.44982L15.1497 7.44977`,strokeLinecap:`round`,strokeWidth:1.2}}]},Zd=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`superscript-icon`,ref:t,icon:Xd}))});Zd.displayName=`SuperscriptIcon`;let Qd={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M3 20H7.5A.5.5 0 0 0 8 19.5V19.218A.52.52 0 0 0 7.753 18.781A8 8 0 1 1 16.247 18.78A.52.52 0 0 0 16 19.218V19.5A.5.5 0 0 0 16.5 20H21`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2}}]},$d=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`symbols-icon`,ref:t,icon:Qd}))});$d.displayName=`SymbolsIcon`;let ef={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},tf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`text-type-icon`,ref:t,icon:ef}))});tf.displayName=`TextTypeIcon`;let nf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.46416 2.03237C4.46416 1.701 4.19553 1.43237 3.86416 1.43237C3.53279 1.43237 3.26416 1.701 3.26416 2.03237V7.33338C3.26416 10.0313 5.35834 12.2667 7.9999 12.2667C10.6415 12.2667 12.7356 10.0313 12.7356 7.33338V2.03237C12.7356 1.701 12.467 1.43237 12.1356 1.43237C11.8043 1.43237 11.5356 1.701 11.5356 2.03237V7.33338C11.5356 9.42194 9.92656 11.0667 7.9999 11.0667C6.07325 11.0667 4.46416 9.42194 4.46416 7.33338V2.03237Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.66641 13.4663C2.33504 13.4663 2.06641 13.7349 2.06641 14.0663C2.06641 14.3977 2.33504 14.6663 2.66641 14.6663H13.3331C13.6644 14.6663 13.9331 14.3977 13.9331 14.0663C13.9331 13.7349 13.6644 13.4663 13.3331 13.4663H2.66641Z`}}]},rf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`underline-icon`,ref:t,icon:nf}))});rf.displayName=`UnderlineIcon`;let af={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M3.03012 3.14006C3.03012 3.59845 2.65851 3.97006 2.20012 3.97006C1.74172 3.97006 1.37012 3.59845 1.37012 3.14006C1.37012 2.68166 1.74172 2.31006 2.20012 2.31006C2.65851 2.31006 3.03012 2.68166 3.03012 3.14006Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53027 2.54014C4.1989 2.54014 3.93027 2.80877 3.93027 3.14014C3.93027 3.47151 4.1989 3.74014 4.53027 3.74014H14.5488C14.8802 3.74014 15.1488 3.47151 15.1488 3.14014C15.1488 2.80877 14.8802 2.54014 14.5488 2.54014H4.53027Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.20012 8.82992C2.65851 8.82992 3.03012 8.45832 3.03012 7.99992C3.03012 7.54153 2.65851 7.16992 2.20012 7.16992C1.74172 7.16992 1.37012 7.54153 1.37012 7.99992C1.37012 8.45832 1.74172 8.82992 2.20012 8.82992Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53027 7.4C4.1989 7.4 3.93027 7.66863 3.93027 8C3.93027 8.33137 4.1989 8.6 4.53027 8.6H14.5488C14.8802 8.6 15.1488 8.33137 15.1488 8C15.1488 7.66863 14.8802 7.4 14.5488 7.4H4.53027Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M2.20012 13.6905C2.65851 13.6905 3.03012 13.3189 3.03012 12.8605C3.03012 12.4021 2.65851 12.0305 2.20012 12.0305C1.74172 12.0305 1.37012 12.4021 1.37012 12.8605C1.37012 13.3189 1.74172 13.6905 2.20012 13.6905Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.53027 12.2604C4.1989 12.2604 3.93027 12.529 3.93027 12.8604C3.93027 13.1917 4.1989 13.4604 4.53027 13.4604H14.5488C14.8802 13.4604 15.1488 13.1917 15.1488 12.8604C15.1488 12.529 14.8802 12.2604 14.5488 12.2604H4.53027Z`}}]},of=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`unorder-icon`,ref:t,icon:af}))});of.displayName=`UnorderIcon`;let sf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`#0B9EFB`,d:`M8.79993 14.0166C8.79993 14.4585 8.44176 14.8166 7.99993 14.8166C4.23529 14.8166 1.18345 11.7648 1.18345 8.00017C1.18345 4.23554 4.23529 1.18369 7.99993 1.1837C11.7646 1.1837 14.8164 4.23554 14.8164 8.00017C14.8164 8.442 14.4582 8.80017 14.0164 8.80017C13.5746 8.80017 13.2164 8.442 13.2164 8.00017C13.2164 5.11919 10.8809 2.7837 7.99993 2.7837C5.11895 2.7837 2.78345 5.11919 2.78345 8.00017C2.78345 10.8812 5.11895 13.2166 7.99993 13.2166C8.44176 13.2166 8.79993 13.5748 8.79993 14.0166Z`,fillOpacity:.2,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`#0B9EFB`,d:`M7.20007 1.98384C7.20007 1.54201 7.55824 1.18384 8.00007 1.18384C11.7647 1.18384 14.8165 4.23568 14.8165 8.00032C14.8165 11.765 11.7647 14.8168 8.00007 14.8168C4.23543 14.8168 1.18359 11.765 1.18359 8.00032C1.18359 7.55849 1.54177 7.20031 1.98359 7.20031C2.42542 7.20031 2.78359 7.55849 2.78359 8.00032C2.78359 10.8813 5.11909 13.2168 8.00007 13.2168C10.8811 13.2168 13.2165 10.8813 13.2165 8.00032C13.2165 5.11933 10.8811 2.78384 8.00007 2.78384C7.55824 2.78384 7.20007 2.42567 7.20007 1.98384Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},cf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`loading-multi-icon`,ref:t,icon:sf}))});cf.displayName=`LoadingMultiIcon`;let lf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`colorChannel1`,d:`M5.4004 2.60213C5.25792 2.60213 5.14241 2.71763 5.14241 2.86011V4.32679C5.14241 4.67752 4.85809 4.96184 4.50736 4.96184C4.15663 4.96184 3.87231 4.67752 3.87231 4.32679V2.86011C3.87231 2.01618 4.55646 1.33203 5.4004 1.33203H13.14C13.984 1.33203 14.6681 2.01618 14.6681 2.86011V10.5998C14.6681 11.4437 13.984 12.1278 13.14 12.1278H11.6568C11.3061 12.1278 11.0218 11.8435 11.0218 11.4928C11.0218 11.1421 11.3061 10.8577 11.6568 10.8577H13.14C13.2825 10.8577 13.398 10.7422 13.398 10.5998V2.86011C13.398 2.71763 13.2825 2.60213 13.14 2.60213H5.4004Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.33203 5.40015C1.33203 4.55622 2.01618 3.87207 2.86011 3.87207H10.5998C11.4437 3.87207 12.1278 4.55622 12.1278 5.40015V13.1398C12.1278 13.9837 11.4437 14.6679 10.5998 14.6679H2.86011C2.01618 14.6679 1.33203 13.9837 1.33203 13.1398V5.40015ZM2.86011 5.14217C2.71763 5.14217 2.60213 5.25767 2.60213 5.40015V13.1398C2.60213 13.2823 2.71763 13.3978 2.86011 13.3978H10.5998C10.7422 13.3978 10.8577 13.2823 10.8577 13.1398V5.40015C10.8577 5.25767 10.7422 5.14217 10.5998 5.14217H2.86011Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},uf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`copy-double-icon`,ref:t,icon:lf}))});uf.displayName=`CopyDoubleIcon`;let df={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M11.9503 1.33317C12.6866 1.33317 13.2836 1.9301 13.2836 2.6665V13.3332C13.2836 14.0695 12.6866 14.6665 11.9503 14.6665H9.28359C8.54721 14.6665 7.95026 14.0696 7.95026 13.3332L7.95026 2.6665C7.95026 1.9301 8.54721 1.33317 9.28359 1.33317H11.9503ZM11.9503 2.6665V13.3332H9.28359V2.6665H11.9503Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M3.8542 6.29716C3.59385 6.03681 3.17174 6.03681 2.91139 6.29716C2.65104 6.55751 2.65104 6.97962 2.91139 7.23997L3.67157 8.00014L2.9114 8.76031C2.65105 9.02066 2.65105 9.44277 2.9114 9.70312C3.17175 9.96347 3.59387 9.96347 3.85421 9.70312L4.61437 8.94296L5.37459 9.70318C5.63494 9.96352 6.05705 9.96353 6.31741 9.70318C6.57775 9.44283 6.57775 9.02072 6.31741 8.76036L5.55718 8.00014L6.31742 7.23991C6.57777 6.97956 6.57777 6.55745 6.31742 6.2971C6.05707 6.03675 5.63496 6.03675 5.37461 6.2971L4.61437 7.05734L3.8542 6.29716Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},ff=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-column-double-icon`,ref:t,icon:df}))});ff.displayName=`DeleteColumnDoubleIcon`;let pf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M14.6666 11.9502C14.6666 12.6866 14.0697 13.2835 13.3333 13.2835H2.66665C1.93027 13.2835 1.33331 12.6866 1.33331 11.9502V9.28353C1.33331 8.54715 1.93027 7.9502 2.66665 7.9502L13.3333 7.9502C14.0697 7.9502 14.6666 8.54715 14.6666 9.28353V11.9502ZM13.3333 11.9502H2.66665V9.28353H13.3333V11.9502Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M9.60134 3.85438C9.86169 3.59403 9.86169 3.17192 9.60134 2.91157C9.34099 2.65122 8.91888 2.65122 8.65853 2.91157L7.89835 3.67175L7.13819 2.91159C6.87784 2.65124 6.45573 2.65124 6.19538 2.91159C5.93503 3.17194 5.93503 3.59405 6.19538 3.8544L6.95554 4.61456L6.19532 5.37478C5.93497 5.63513 5.93497 6.05724 6.19532 6.31759C6.45567 6.57794 6.87778 6.57794 7.13813 6.31759L7.89835 5.55737L8.65859 6.3176C8.91893 6.57796 9.34105 6.57796 9.60139 6.3176C9.86175 6.05726 9.86175 5.63514 9.60139 5.3748L8.84116 4.61456L9.60134 3.85438Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},mf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-row-double-icon`,ref:t,icon:pf}))});mf.displayName=`DeleteRowDoubleIcon`;let hf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M1.5 1.5H13.5M1.5 1.5V13.5M5.5 1.5V13.5M9.5 1.5V8M1.5 5.5H13.5M1.5 9.5H8M13.5 1.5V8M1.5 13.5H8`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.2}},{tag:`path`,attrs:{stroke:`colorChannel1`,d:`M9.7 9.7L14.5 14.5M14.5 9.7L9.7 14.5`,strokeLinecap:`round`,strokeWidth:1.3}}]},gf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`delete-table-double-icon`,ref:t,icon:hf}))});gf.displayName=`DeleteTableDoubleIcon`;let _f={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`colorChannel1`,d:`M1.98682 13.4992C1.98682 12.5603 2.74793 11.7992 3.68682 11.7992H14.2868C15.2257 11.7992 15.9868 12.5603 15.9868 13.4992V13.4992C15.9868 14.4381 15.2257 15.1992 14.2868 15.1992H3.68682C2.74793 15.1992 1.98682 14.4381 1.98682 13.4992V13.4992Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.3014 1.70389C9.85268 0.479568 8.12109 0.479557 7.67238 1.70389L4.72235 9.75326C4.60832 10.0644 4.76811 10.4091 5.07924 10.5231C5.39038 10.6371 5.73504 10.4773 5.84907 10.1662L6.99975 7.02646C7.03588 7.03324 7.07314 7.03679 7.11123 7.03679H10.9778L12.1247 10.1662C12.2387 10.4773 12.5834 10.6371 12.8945 10.5231C13.2057 10.4091 13.3654 10.0644 13.2514 9.75326L10.3014 1.70389ZM10.538 5.83679L9.17467 2.11682C9.11057 1.94192 8.8632 1.94192 8.7991 2.11682L7.43576 5.83679H10.538Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},vf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`font-color-double-icon`,ref:t,icon:_f}))});vf.displayName=`FontColorDoubleIcon`;let yf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.53337 14C2.35658 14 2.18704 13.9297 2.06203 13.8047C1.93703 13.6797 1.86681 13.5101 1.86681 13.3333C1.86681 13.1565 1.93703 12.987 2.06203 12.862C2.18704 12.7369 2.35658 12.6667 2.53337 12.6667L13.4667 12.6667C13.6435 12.6667 13.813 12.7369 13.938 12.862C14.063 12.987 14.1333 13.1565 14.1333 13.3333C14.1333 13.5101 14.063 13.6797 13.938 13.8047C13.813 13.9297 13.6435 14 13.4667 14L2.53337 14ZM2.53337 3.33333C2.35658 3.33331 2.18703 3.26306 2.06203 3.13804C1.93703 3.01301 1.86681 2.84346 1.86681 2.66667C1.86681 2.48987 1.93703 2.32032 2.06203 2.1953C2.18703 2.07028 2.35658 2.00003 2.53337 2L13.4667 2C13.6435 2.00003 13.813 2.07028 13.938 2.1953C14.063 2.32032 14.1333 2.48987 14.1333 2.66667C14.1333 2.84346 14.063 3.01301 13.938 3.13803C13.813 3.26306 13.6435 3.33331 13.4667 3.33333L2.53337 3.33333Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M11.0573 7.33327L10.1953 6.47127C10.0703 6.34627 10.0001 6.17672 10.0001 5.99994C10.0001 5.82315 10.0703 5.65361 10.1953 5.52861C10.3203 5.4036 10.4899 5.33337 10.6667 5.33337C10.8434 5.33337 11.013 5.4036 11.138 5.52861L13.138 7.5286C13.2 7.59046 13.2491 7.66393 13.2827 7.74481C13.3162 7.82569 13.3335 7.91238 13.3335 7.99994C13.3335 8.08749 13.3162 8.17419 13.2827 8.25507C13.2491 8.33594 13.2 8.40941 13.138 8.47127L11.138 10.4713C11.0761 10.5332 11.0026 10.5823 10.9217 10.6158C10.8409 10.6493 10.7542 10.6665 10.6667 10.6665C10.5791 10.6665 10.4925 10.6493 10.4116 10.6158C10.3307 10.5823 10.2572 10.5332 10.1953 10.4713C10.1334 10.4094 10.0843 10.3359 10.0508 10.255C10.0173 10.1742 10.0001 10.0875 10.0001 9.99994C10.0001 9.9124 10.0173 9.82573 10.0508 9.74486C10.0843 9.66398 10.1334 9.5905 10.1953 9.52861L11.0573 8.6666L3.33333 8.66661C3.15652 8.66661 2.98695 8.59637 2.86193 8.47134C2.7369 8.34632 2.66666 8.17675 2.66666 7.99994C2.66666 7.82313 2.7369 7.65356 2.86193 7.52853C2.98695 7.40351 3.15652 7.33327 3.33333 7.33327L11.0573 7.33327Z`}}]},bf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`insert-double-icon`,ref:t,icon:yf}))});bf.displayName=`InsertDoubleIcon`;let xf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M13.3333 13.4087C14.0697 13.4087 14.6666 12.8117 14.6666 12.0754L14.6666 9.40869C14.6666 8.67231 14.0697 8.07536 13.3333 8.07536L2.66663 8.07536C1.93023 8.07536 1.33329 8.67231 1.33329 9.40869L1.33329 12.0754C1.33329 12.8117 1.93023 13.4087 2.66663 13.4087L13.3333 13.4087ZM2.66663 12.0754L13.3333 12.0754L13.3333 9.40869L2.66663 9.40869L2.66663 12.0754Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M7.74168 2.59137C8.10987 2.59137 8.40835 2.88984 8.40835 3.25804L8.40835 4.33309L9.48348 4.33309C9.85167 4.33309 10.1501 4.63156 10.1501 4.99976C10.1501 5.36794 9.85167 5.66642 9.48348 5.66642L8.40835 5.66642L8.40835 6.74154C8.40835 7.10973 8.10987 7.4082 7.74168 7.4082C7.37349 7.4082 7.07501 7.10973 7.07501 6.74154L7.07501 5.66642L5.99998 5.66642C5.63179 5.66642 5.33331 5.36794 5.33331 4.99976C5.33331 4.63156 5.63179 4.33309 5.99998 4.33309L7.07501 4.33309L7.07501 3.25804C7.07501 2.88984 7.37349 2.59137 7.74168 2.59137Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Sf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`insert-row-above-double-icon`,ref:t,icon:xf}))});Sf.displayName=`InsertRowAboveDoubleIcon`;let Cf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.66671 2.59131C1.93033 2.59131 1.33337 3.18826 1.33337 3.92464L1.33337 6.59131C1.33337 7.32769 1.93033 7.92464 2.66671 7.92464L13.3334 7.92464C14.0698 7.92464 14.6667 7.32769 14.6667 6.59131L14.6667 3.92464C14.6667 3.18826 14.0698 2.59131 13.3334 2.59131L2.66671 2.59131ZM13.3334 3.92464L2.66671 3.92464L2.66671 6.59131L13.3334 6.59131L13.3334 3.92464Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M8.25838 13.4086C7.8902 13.4086 7.59172 13.1102 7.59172 12.742L7.59172 11.6669L6.51658 11.6669C6.14839 11.6669 5.84992 11.3684 5.84991 11.0002C5.84991 10.6321 6.14839 10.3336 6.51658 10.3336L7.59172 10.3336L7.59171 9.25846C7.59171 8.89027 7.89019 8.5918 8.25838 8.5918C8.62657 8.5918 8.92505 8.89027 8.92505 9.25846L8.92505 10.3336L10.0001 10.3336C10.3683 10.3336 10.6667 10.6321 10.6667 11.0002C10.6667 11.3684 10.3683 11.6669 10.0001 11.6669L8.92505 11.6669L8.92505 12.742C8.92505 13.1102 8.62658 13.4086 8.25838 13.4086Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},wf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`insert-row-below-double-icon`,ref:t,icon:Cf}))});wf.displayName=`InsertRowBelowDoubleIcon`;let Tf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M13.4322 2.66683C13.4322 1.93045 12.8352 1.3335 12.0989 1.3335H9.43219C8.69581 1.3335 8.09886 1.93045 8.09886 2.66683V13.3335C8.09886 14.0699 8.69581 14.6668 9.43219 14.6668H12.0989C12.8352 14.6668 13.4322 14.0699 13.4322 13.3335V2.66683ZM12.0989 13.3335V2.66683H9.43219V13.3335H12.0989Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M2.56769 7.99978C2.56769 7.63159 2.86616 7.33311 3.23435 7.33311H4.30941V6.25798C4.30941 5.88979 4.60788 5.59131 4.97607 5.59131C5.34426 5.59131 5.64274 5.88979 5.64274 6.25798V7.33311H6.71785C7.08604 7.33311 7.38452 7.63159 7.38452 7.99978C7.38452 8.36797 7.08604 8.66644 6.71785 8.66644H5.64274V9.74148C5.64274 10.1097 5.34426 10.4081 4.97607 10.4081C4.60788 10.4081 4.30941 10.1097 4.30941 9.74148V8.66644H3.23435C2.86616 8.66644 2.56769 8.36797 2.56769 7.99978Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Ef=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`left-insert-column-double-icon`,ref:t,icon:Tf}))});Ef.displayName=`LeftInsertColumnDoubleIcon`;let Df={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.665 2.66496H3.33496C2.96493 2.66496 2.66496 2.96493 2.66496 3.33496V12.665C2.66496 13.035 2.96493 13.335 3.33496 13.335H12.665C13.035 13.335 13.335 13.035 13.335 12.665V3.33496C13.335 2.96493 13.035 2.66496 12.665 2.66496ZM3.33496 1.33496C2.23039 1.33496 1.33496 2.23039 1.33496 3.33496V12.665C1.33496 13.7695 2.23039 14.665 3.33496 14.665H12.665C13.7695 14.665 14.665 13.7695 14.665 12.665V3.33496C14.665 2.23039 13.7695 1.33496 12.665 1.33496H3.33496Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M13.2559 14.1963L1.64941 2.58984L2.58987 1.64939L14.1963 13.2558L13.2559 14.1963Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Of=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`no-color-double-icon`,ref:t,icon:Df}))});Of.displayName=`NoColorDoubleIcon`;let kf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M8.01281 1.36643C8.79386 0.585377 10.0602 0.585378 10.8412 1.36643L12.9223 3.44752C13.7034 4.22857 13.7034 5.4949 12.9223 6.27595L9.36445 9.83383C8.5834 10.6149 7.31707 10.6149 6.53602 9.83383L4.45493 7.75273C3.67388 6.97168 3.67388 5.70535 4.45493 4.9243L8.01281 1.36643ZM9.9927 2.21495C9.68028 1.90253 9.17375 1.90253 8.86133 2.21495L5.30346 5.77283L5.29671 5.77966L10.839 6.66224L12.0738 5.42742C12.3862 5.115 12.3862 4.60847 12.0738 4.29605L9.9927 2.21495Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M14.5179 9.48875C14.5179 9.99175 14.1101 10.3995 13.607 10.3995C13.1041 10.3995 12.6963 9.99175 12.6963 9.48875C12.6963 9.1773 13.0455 8.59966 13.3114 8.20487C13.4549 7.99177 13.7591 7.99177 13.9027 8.20486C14.1687 8.59965 14.5179 9.1773 14.5179 9.48875Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M1.98682 13.4992C1.98682 12.5603 2.74793 11.7992 3.68682 11.7992H14.2868C15.2257 11.7992 15.9868 12.5603 15.9868 13.4992V13.4992C15.9868 14.4381 15.2257 15.1992 14.2868 15.1992H3.68682C2.74793 15.1992 1.98682 14.4381 1.98682 13.4992V13.4992Z`}}]},Af=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`paint-bucket-double-icon`,ref:t,icon:kf}))});Af.displayName=`PaintBucketDoubleIcon`;let jf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`colorChannel1`,d:`M7.74692 9.12463C7.74692 9.46018 8.01893 9.73219 8.35448 9.73219H11.4933C11.8288 9.73219 12.1009 9.46018 12.1009 9.12463C12.1009 8.78909 11.8288 8.51707 11.4933 8.51707H8.35448C8.01893 8.51707 7.74692 8.78909 7.74692 9.12463Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M10.8636 10.8523C10.8636 11.1879 10.5915 11.4599 10.256 11.4599H8.35448C8.01893 11.4599 7.74692 11.1879 7.74692 10.8523C7.74692 10.5168 8.01893 10.2447 8.35448 10.2447H10.256C10.5915 10.2447 10.8636 10.5168 10.8636 10.8523Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M5.4791 1.98268C5.47913 1.71529 5.87912 1.49854 6.37252 1.49854C6.86593 1.49854 7.26592 1.71529 7.26595 1.98268H7.62187C8.22277 1.98268 8.72459 2.39534 8.84412 2.9452H9.39563C10.0856 2.9452 10.6449 3.48923 10.6449 4.16032V6.00569H12.1261C13.161 6.00569 14 6.82174 14 7.82838V11.334C14 11.8174 13.8025 12.281 13.4511 12.6228L12.0693 13.9647C11.7179 14.3065 11.2412 14.4985 10.7442 14.4985H7.91116C7.05024 14.4985 6.32492 14.0431 6.10535 13.2737H3.34925C2.6593 13.2737 2.09998 12.7297 2.09998 12.0586V4.16032C2.09998 3.48923 2.6593 2.9452 3.34925 2.9452H3.90107C4.0206 2.39534 4.52241 1.98268 5.12332 1.98268H5.4791ZM3.97249 4.16032H3.24925L3.24925 12.0586H6.03725V7.82838C6.03725 6.82174 6.87623 6.00569 7.91116 6.00569H9.49563V4.16032H8.7727C8.58289 4.59611 8.13909 4.90183 7.62187 4.90183H5.12332C4.6061 4.90183 4.1623 4.59611 3.97249 4.16032ZM5.12332 2.89403H7.62187C7.79436 2.89403 7.93419 3.03003 7.93419 3.19781V3.68671C7.93419 3.85448 7.79436 3.99049 7.62187 3.99049H5.12332C4.95083 3.99049 4.811 3.85448 4.811 3.68671V3.19781C4.811 3.03003 4.95083 2.89403 5.12332 2.89403ZM7.91116 7.11157C7.56618 7.11157 7.28652 7.38359 7.28652 7.71913V12.7851C7.28652 13.1206 7.56618 13.3927 7.91116 13.3927H10.7442C10.8401 13.3927 10.9337 13.3712 11.0182 13.3311C11.1373 13.2746 11.1859 13.1423 11.1859 13.0134V12.0066C11.1859 11.8724 11.2978 11.7636 11.4358 11.7636H12.4709C12.6034 11.7636 12.7394 11.7163 12.7975 11.6004C12.8388 11.5182 12.8608 11.4272 12.8608 11.334V7.71913C12.8608 7.38359 12.5811 7.11157 12.2362 7.11157H7.91116Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Mf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`paste-special-double-icon`,ref:t,icon:jf}))});Mf.displayName=`PasteSpecialDoubleIcon`;let Nf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.53331 14C2.35652 14 2.18697 13.9297 2.06197 13.8047C1.93697 13.6797 1.86675 13.5101 1.86675 13.3333C1.86675 13.1565 1.93697 12.987 2.06197 12.862C2.18697 12.7369 2.35652 12.6667 2.53331 12.6667L13.4666 12.6667C13.6434 12.6667 13.813 12.7369 13.938 12.862C14.063 12.987 14.1332 13.1565 14.1332 13.3333C14.1332 13.5101 14.063 13.6797 13.938 13.8047C13.813 13.9297 13.6434 14 13.4666 14L2.53331 14ZM2.53331 3.33333C2.35652 3.33331 2.18697 3.26306 2.06197 3.13804C1.93697 3.01301 1.86675 2.84346 1.86675 2.66667C1.86675 2.48987 1.93697 2.32032 2.06197 2.1953C2.18697 2.07028 2.35652 2.00003 2.53331 2L13.4666 2C13.6434 2.00003 13.813 2.07028 13.938 2.1953C14.063 2.32032 14.1332 2.48987 14.1332 2.66667C14.1332 2.84346 14.063 3.01301 13.938 3.13803C13.813 3.26306 13.6434 3.33331 13.4666 3.33333L2.53331 3.33333Z`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M10.8142 10.8141C10.5588 11.0695 10.1447 11.0695 9.88929 10.8141L7.97868 8.90354L6.14021 10.742C5.89652 10.9857 5.50142 10.9857 5.25774 10.742C5.01405 10.4983 5.01405 10.1032 5.25774 9.85955L7.09621 8.02107L5.18561 6.11047C4.93021 5.85507 4.93021 5.44098 5.18561 5.18557C5.44101 4.93017 5.8551 4.93017 6.11051 5.18557L8.02111 7.09618L9.85959 5.2577C10.1033 5.01401 10.4984 5.01401 10.7421 5.2577C10.9857 5.50139 10.9857 5.89648 10.7421 6.14017L8.90358 7.97865L10.8142 9.88925C11.0696 10.1447 11.0696 10.5587 10.8142 10.8141Z`}}]},Pf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`reduce-double-icon`,ref:t,icon:Nf}))});Pf.displayName=`ReduceDoubleIcon`;let Ff={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M2.56781 13.3332C2.56781 14.0695 3.16476 14.6665 3.90114 14.6665L6.56781 14.6665C7.30419 14.6665 7.90114 14.0695 7.90114 13.3332L7.90114 2.6665C7.90114 1.9301 7.30419 1.33317 6.56781 1.33317L3.90114 1.33317C3.16476 1.33317 2.56781 1.9301 2.56781 2.6665L2.56781 13.3332ZM3.90114 2.6665L3.90114 13.3332L6.56781 13.3332L6.56781 2.6665L3.90114 2.6665Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`colorChannel1`,d:`M13.4323 8.00022C13.4323 8.36841 13.1338 8.66689 12.7656 8.66689L11.6906 8.66689L11.6906 9.74202C11.6906 10.1102 11.3921 10.4087 11.0239 10.4087C10.6557 10.4087 10.3573 10.1102 10.3573 9.74202L10.3573 8.66689L9.28215 8.66689C8.91396 8.66689 8.61548 8.36841 8.61548 8.00022C8.61548 7.63203 8.91396 7.33356 9.28214 7.33356L10.3573 7.33356L10.3573 6.25852C10.3573 5.89033 10.6557 5.59186 11.0239 5.59186C11.3921 5.59186 11.6906 5.89033 11.6906 6.25852L11.6906 7.33356L12.7656 7.33356C13.1338 7.33356 13.4323 7.63203 13.4323 8.00022Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},If=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`right-insert-column-double-icon`,ref:t,icon:Ff}))});If.displayName=`RightInsertColumnDoubleIcon`;let Lf={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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.74263C4.7294 1.50832 4.3495 1.50832 4.11519 1.74263L2.53945 3.31837L1.96372 2.74263C1.7294 2.50832 1.3495 2.50832 1.11519 2.74263C0.880874 2.97695 0.880874 3.35684 1.11519 3.59116L2.11519 4.59116C2.3495 4.82547 2.7294 4.82547 2.96372 4.59116L4.96372 2.59116Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M14.4605 2.56689H6.8981C6.56672 2.56689 6.2981 2.83552 6.2981 3.16689C6.2981 3.49827 6.56672 3.76689 6.8981 3.76689H14.4605C14.7918 3.76689 15.0605 3.49827 15.0605 3.16689C15.0605 2.83552 14.7918 2.56689 14.4605 2.56689Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.8981 7.2334C6.56672 7.2334 6.2981 7.50203 6.2981 7.8334C6.2981 8.16477 6.56672 8.4334 6.8981 8.4334H14.4605C14.7918 8.4334 15.0605 8.16477 15.0605 7.8334C15.0605 7.50203 14.7918 7.2334 14.4605 7.2334H6.8981Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M6.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.4999C15.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 0.939453 6.76549 0.939453 7.83324C0.939453 8.90099 1.80504 9.76657 2.87279 9.76657C3.94054 9.76657 4.80612 8.90099 4.80612 7.83324C4.80612 6.76549 3.94054 5.8999 2.87279 5.8999ZM2.13945 7.83324C2.13945 7.42823 2.46778 7.0999 2.87279 7.0999C3.2778 7.0999 3.60612 7.42823 3.60612 7.83324C3.60612 8.23824 3.2778 8.56657 2.87279 8.56657C2.46778 8.56657 2.13945 8.23824 2.13945 7.83324Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M0.939453 12.5002C0.939453 11.4325 1.80504 10.5669 2.87279 10.5669C3.94054 10.5669 4.80612 11.4325 4.80612 12.5002C4.80612 13.568 3.94054 14.4336 2.87279 14.4336C1.80504 14.4336 0.939453 13.568 0.939453 12.5002ZM2.87279 11.7669C2.46778 11.7669 2.13945 12.0952 2.13945 12.5002C2.13945 12.9052 2.46778 13.2336 2.87279 13.2336C3.2778 13.2336 3.60612 12.9052 3.60612 12.5002C3.60612 12.0952 3.2778 11.7669 2.87279 11.7669Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},Rf=(0,c.forwardRef)(function(e,t){return(0,c.createElement)($,Object.assign({},e,{id:`todo-list-double-icon`,ref:t,icon:Lf}))});Rf.displayName=`TodoListDoubleIcon`;let zf={words:0,charactersWithoutSpaces:0,charactersWithSpaces:0,paragraphs:0,nonAsianWords:0,asianCharactersAndKoreanWords:0},Bf={pages:0,lines:0};function Vf(e){return(e.getTextRanges()??[]).filter(e=>!e.collapsed&&!e.segmentId).map(({collapsed:e,direction:t,endOffset:n,isActive:r,rangeType:i,segmentId:a,segmentPage:o,startOffset:s})=>({collapsed:e,direction:t,endOffset:n,isActive:r,rangeType:i,segmentId:a,segmentPage:o,startOffset:s}))}function Hf(e,t,n){let r=Math.min(e.startOffset,e.endOffset),i=Math.max(e.startOffset,e.endOffset);return r<n&&i>t}function Uf(e,t=[],n=!0){var i;let a=(e==null||(i=e.getSkeletonData())==null?void 0:i.pages)??[];if(t.length===0){let e=0;return(0,r.documentSkeletonLineIterator)(a,{},()=>e++),{lines:e,pages:n?a.length:0}}let o=0,s=n?new Set:null;return(0,r.documentSkeletonLineIterator)(a,{},({line:e,pageIndex:n})=>{t.some(t=>Hf(t,e.st,e.ed))&&(o+=1,s==null||s.add(n))}),{lines:o,pages:(s==null?void 0:s.size)??0}}async function Wf({calculateLayout:e,calculatePages:t,documentDataModel:n,cachedStatistics:r,locale:i,selectionRanges:a,signal:o,skeleton:s}){let c=e?Uf(s,[],t):Bf,l=e&&a.length>0?Uf(s,a,t):Bf,[u,d]=await Promise.all([r??n.getStatistics({locale:i,signal:o}),a.length>0?n.getStatistics({locale:i,ranges:a,signal:o}):null]);return{document:{...u,...c},selection:d?{...d,...l}:null}}function Gf(e,t,n,r,i){e.current={documentDataModel:t,locale:n,revision:r,statistics:{words:i.words,charactersWithoutSpaces:i.charactersWithoutSpaces,charactersWithSpaces:i.charactersWithSpaces,paragraphs:i.paragraphs,nonAsianWords:i.nonAsianWords,asianCharactersAndKoreanWords:i.asianCharactersAndKoreanWords}}}function Kf(e,t){return(0,i.useObservable)(e?()=>(0,a.combineLatest)([t.textSelection$.pipe((0,a.startWith)(void 0)),e.change$]).pipe((0,a.map)(([,e])=>({ranges:Vf(t),revision:e}))):null,{ranges:[],revision:0},!1,[e,t])}function qf(e,t){var r;let o=e?(r=t.getRenderUnitById(e.getUnitId()))==null?void 0:r.with(n.DocSkeletonManagerService):null;return(0,i.useObservable)(o?o.currentSkeleton$.pipe((0,a.map)(e=>({value:e}))):null,{value:(o==null?void 0:o.getSkeleton())??null},!1,[o]).value}function Jf(e=!1){let a=(0,i.useDependency)(t.IUniverInstanceService),o=(0,i.useDependency)(t.LocaleService),s=(0,i.useDependency)(r.IRenderManagerService),l=(0,i.useDependency)(n.DocSelectionManagerService),u=(0,c.useRef)(null),d=(0,i.useObservable)((0,c.useMemo)(()=>a.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC),[a])),f=Kf(d,l),p=(0,i.useObservable)(o.currentLocale$,o.getCurrentLocale()),m=(d==null?void 0:d.getDocumentStyle().documentFlavor)!==t.DocumentFlavor.MODERN,h=qf(e?d:null,s),[g,_]=(0,c.useState)({document:{...zf,lines:0,pages:0},selection:null,loading:!0}),v=f.ranges;return(0,c.useEffect)(()=>{if(!(d!=null&&d.getBody()))return;let t=d,n=u.current,r=(n==null?void 0:n.documentDataModel)===t&&n.locale===p&&n.revision===f.revision,i=new AbortController,a=setTimeout(async()=>{_(e=>({...e,loading:!0}));try{let a=await Wf({calculateLayout:e,calculatePages:m,documentDataModel:t,cachedStatistics:r?n.statistics:void 0,locale:p,selectionRanges:v,signal:i.signal,skeleton:h??null});r||Gf(u,t,p,f.revision,a.document),_({...a,loading:!1})}catch{i.signal.aborted||_(e=>({...e,loading:!1}))}},200);return()=>{clearTimeout(a),i.abort()}},[e,d,p,v,f,m,h]),{...g,showPages:m}}let Yf=[[{key:`pages`,label:`docs-ui.statistics.pages`},{key:`words`,label:`docs-ui.statistics.words`}],[{key:`charactersWithoutSpaces`,label:`docs-ui.statistics.charactersWithoutSpaces`},{key:`charactersWithSpaces`,label:`docs-ui.statistics.charactersWithSpaces`}],[{key:`paragraphs`,label:`docs-ui.statistics.paragraphs`},{key:`lines`,label:`docs-ui.statistics.lines`}],[{key:`nonAsianWords`,label:`docs-ui.statistics.nonAsianWords`},{key:`asianCharactersAndKoreanWords`,label:`docs-ui.statistics.asianCharactersAndKoreanWords`}]];function Xf({statistics:e,selection:n,showPages:r,loading:a}){let o=(0,i.useDependency)(t.LocaleService),c=(0,i.useDependency)(t.RegionService),u=(0,i.useObservable)(o.direction$,o.getDirection()),d=t.LOCALE_META[(0,i.useObservable)(c.currentRegion$,c.getCurrentRegion())].tag,f=Yf.map(e=>e.filter(({key:e})=>r||e!==`pages`)).filter(e=>e.length>0),p=a&&f.flat().every(({key:t})=>e[t]===0);return(0,l.jsxs)(`div`,{className:`univer-w-full`,dir:u,children:[(0,l.jsxs)(`header`,{className:`univer-flex univer-items-center univer-gap-3 univer-px-4 univer-py-3`,children:[(0,l.jsxs)(`div`,{className:`univer-min-w-0 univer-flex-1 rtl:univer-text-right`,children:[(0,l.jsx)(`div`,{className:`univer-truncate univer-text-sm univer-font-semibold univer-leading-5`,children:o.t(`docs-ui.statistics.title`)}),(0,l.jsx)(`div`,{className:`univer-truncate univer-text-xs univer-leading-4 univer-text-gray-500 dark:!univer-text-gray-400`,children:o.t(n?`docs-ui.statistics.selection`:`docs-ui.statistics.document`)})]}),a&&(0,l.jsx)(cf,{"aria-hidden":`true`,className:`univer-size-4 univer-shrink-0 univer-animate-spin univer-text-primary-600`})]}),(0,l.jsx)(s.Separator,{}),(0,l.jsx)(`dl`,{className:`univer-m-0 univer-p-2`,children:f.map((t,n)=>(0,l.jsxs)(`div`,{children:[n>0&&(0,l.jsx)(s.Separator,{className:`univer-my-1`}),t.map(({key:t,label:n})=>(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-justify-between univer-gap-4 univer-rounded-md univer-px-2 univer-py-1`,children:[(0,l.jsx)(`dt`,{className:`univer-min-w-0 univer-flex-1 univer-text-sm univer-leading-5 univer-text-gray-600 rtl:univer-text-right dark:!univer-text-gray-300`,children:o.t(n)}),(0,l.jsx)(`dd`,{className:`univer-m-0 univer-min-w-12 univer-shrink-0 univer-text-right univer-text-sm univer-font-semibold univer-tabular-nums univer-leading-5 univer-text-gray-900 rtl:univer-text-left dark:!univer-text-gray-0`,children:p?`—`:e[t].toLocaleString(d)})]},t))]},t[0].key))})]})}function Zf(){let e=(0,i.useDependency)(t.LocaleService),n=(0,i.useDependency)(t.RegionService),[r,a]=(0,c.useState)(!1),{document:o,selection:u,loading:d,showPages:f}=Jf(r),p=t.LOCALE_META[(0,i.useObservable)(n.currentRegion$,n.getCurrentRegion())].tag,m=u??o,h=e.t(`docs-ui.statistics.open`),g=e.t(`docs-ui.statistics.title`),_=u?e.t(`docs-ui.statistics.selectedWords`,u.words.toLocaleString(p),o.words.toLocaleString(p)):e.t(`docs-ui.statistics.wordCount`,o.words.toLocaleString(p));return(0,l.jsx)(s.Dropdown,{align:`start`,className:`univer-w-80 univer-shadow-xl`,side:`top`,open:r,"aria-busy":d,"aria-label":g,onOpenChange:a,overlay:(0,l.jsx)(Xf,{statistics:m,selection:u!=null,showPages:f,loading:d}),children:(0,l.jsx)(`span`,{title:r?void 0:h,children:(0,l.jsx)(i.ToolbarButton,{noIcon:!0,active:r,className:`!univer-h-7 univer-px-2 univer-text-xs !univer-text-gray-600 focus-visible:univer-ring-2 focus-visible:univer-ring-primary-500 dark:!univer-text-gray-300`,"aria-expanded":r,"aria-haspopup":`dialog`,"aria-label":h,children:(0,l.jsxs)(`span`,{className:`univer-flex univer-items-center univer-gap-1.5`,children:[(0,l.jsx)(Gd,{className:`univer-size-4`}),(0,l.jsx)(`span`,{children:_}),d&&(0,l.jsx)(cf,{className:`univer-size-3.5 univer-animate-spin`})]})})})})}function Qf(){let e=(0,i.useConfigValue)(ho);return((e==null?void 0:e.footer)??!0)&&(0,l.jsxs)(`div`,{className:`univer-box-border univer-flex univer-items-center univer-justify-between univer-px-5 univer-py-1.5`,children:[(e==null?void 0:e.wordCount)!==!1&&(0,l.jsx)(Zf,{}),(0,l.jsx)(Nu,{})]})}function $f(){return(0,i.useObservable)((0,i.useDependency)(i.IWorkbenchService).rootUnitType$,null,!0)===t.UniverInstanceType.UNIVER_DOC?(0,l.jsx)(Qf,{}):null}function ep(e,t){let n=tp(e.left,e.top,t),r=tp(e.right,e.bottom,t);return{left:n.x,top:n.y,right:r.x,bottom:r.y}}function tp(e,t,n){let{scaleX:r,scaleY:i}=n.getAncestorScale(),a=n.getViewport(`viewMain`);if(!a)return{x:e,y:t};let{viewportScrollX:o,viewportScrollY:s}=a;return{x:(e-o)*r,y:(t-s)*i}}function np(e,t,n){let{scaleX:r,scaleY:i}=n.getAncestorScale(),a=n.getViewport(`viewMain`);if(!a)return{x:e,y:t};let{viewportScrollX:o,viewportScrollY:s}=a;return{x:e/r+o,y:t/i+s}}let rp=(e,t)=>{let{scene:i,mainComponent:a,engine:o}=t,s=t.with(n.DocSkeletonManagerService).getSkeleton(),c=s.findNodePositionByCharIndex(e.startOffset,!0,e.segmentId,e.segmentPage),l=e.collapsed?e.startOffset:e.endOffset-1,u=s.findNodePositionByCharIndex(l,!0,e.segmentId,e.segmentPage),d=a;if(!u||!c)return;let f=d.getOffsetConfig(),{docsLeft:p,docsTop:m}=f,h=o.getCanvasElement();if(h==null)return;let g=h.getBoundingClientRect(),_=(0,r.pxToNum)(h.style.width),{top:v,left:y,width:b}=g,x=b/_,{scaleX:S,scaleY:C}=i.getAncestorScale(),{borderBoxPointGroup:w}=new Mr(f,s).getRangePointData(c,u);return ai(w).map(e=>ep(e,i)).map(e=>({left:(e.left+p*S)*x+y,right:(e.right+p*S)*x+y,top:(e.top+m*C)*x+v,bottom:(e.bottom+m*C)*x+v}))},ip=class extends t.Disposable{constructor(e,t,n,r){super(),this._globalPopupManagerService=e,this._renderManagerService=t,this._univerInstanceService=n,this._commandService=r}_shouldUpdateForCommand(e,t){if(e.id!==Oa.id&&e.id!==n.RichTextEditingMutation.id)return!1;let r=e.params;return(r==null?void 0:r.unitId)==null||r.unitId===t}_createRectPositionObserver(e,n){let i=()=>{let{scene:t,engine:i}=n,a=typeof e==`function`?e():e,o=i.getCanvasElement();if(o==null)return;let s=o.getBoundingClientRect(),c=(0,r.pxToNum)(o.style.width),l=ep(a,t),{top:u,left:d,width:f}=s,p=f/c;return{left:l.left*p+d,right:l.right*p+d,top:l.top*p+u,bottom:l.bottom*p+u}},o=i();if(o==null)throw Error(`Current render canvas not found, unitId: ${n.unitId}`);let s=new a.BehaviorSubject(o),c=new t.DisposableCollection,l=()=>{try{let e=i();e&&s.next(e)}catch{}};c.add(this._commandService.onCommandExecuted(e=>{this._shouldUpdateForCommand(e,n.unitId)&&l()}));let u=n.scene.getViewport(`viewMain`);return u&&c.add(u.onScrollAfter$.subscribeEvent(()=>{l()})),c.add(n.scene.onTransformChange$.subscribeEvent(()=>{l()})),{position:o,position$:s,disposable:c}}_createObjectPositionObserver(e,t){return this._createRectPositionObserver(()=>{let{left:t,top:n,width:r,height:i}=e;return{left:t,right:t+r,top:n,bottom:n+i}},t)}_createRangePositionObserver(e,r){let i=rp(e,r)??[],o=new a.BehaviorSubject(i),s=new t.DisposableCollection;s.add(this._commandService.onCommandExecuted(t=>{if((t.id===Oa.id||t.id===n.RichTextEditingMutation.id)&&t.params.unitId===r.unitId){let t=rp(e,r);t&&o.next(t)}}));let c=r.scene.getViewport(`viewMain`);return c&&s.add(c.onScrollAfter$.subscribeEvent(()=>{let t=rp(e,r);t&&o.next(t)})),s.add(r.scene.onTransformChange$.subscribeEvent(()=>{let t=rp(e,r);t&&o.next(t)})),{positions:i,positions$:o,disposable:s}}attachPopupToRect(e,t,n){let r=this._renderManagerService.getRenderUnitById(n);if(!r)throw Error(`Current render not found, unitId: ${n}`);let i=this._resolveEmbeddedPopupInjector(n,r),a=this._resolvePopupManagerService(i),{position:o,position$:s,disposable:c}=this._createRectPositionObserver(e,r),l=a.addPopup({...t,unitId:n,subUnitId:`default`,connectorInjector:i,anchorRect:o,anchorRect$:s,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{a.removePopup(l),s.complete(),c.dispose()},canDispose:()=>a.activePopupId!==l}}attachPopupToObject(e,t,n){let r=this._renderManagerService.getRenderUnitById(n);if(!r)throw Error(`Current render not found, unitId: ${n}`);let i=this._resolveEmbeddedPopupInjector(n,r),a=this._resolvePopupManagerService(i),{position:o,position$:s,disposable:c}=this._createObjectPositionObserver(e,r),l=a.addPopup({...t,unitId:n,subUnitId:`default`,connectorInjector:i,anchorRect:o,anchorRect$:s,canvasElement:r.engine.getCanvasElement()});return{dispose:()=>{a.removePopup(l),s.complete(),c.dispose()},canDispose:()=>a.activePopupId!==l}}attachPopupToRange(e,t,n){if(!this._univerInstanceService.getUnit(n))throw Error(`Document not found, unitId: ${n}`);let{direction:r=`top`,multipleDirection:i}=t,o=this._renderManagerService.getRenderUnitById(n);if(!o)throw Error(`Current render not found, unitId: ${n}`);let s=this._resolveEmbeddedPopupInjector(n,o),c=this._resolvePopupManagerService(s),{positions:l,positions$:u,disposable:d}=this._createRangePositionObserver(e,o),f=u.pipe((0,a.map)(e=>r.includes(`top`)?e[0]:e[e.length-1])),p=c.addPopup({...t,unitId:n,subUnitId:`default`,connectorInjector:s,anchorRect:r.includes(`top`)?l[0]:l[l.length-1],anchorRect$:f,excludeRects:l,excludeRects$:u,direction:[`top`,`bottom`,`horizontal`].some(e=>r.includes(e))&&l.length>1?i??r:r,canvasElement:o.engine.getCanvasElement()});return{dispose:()=>{c.removePopup(p),u.complete(),d.dispose()},canDispose:()=>c.activePopupId!==p}}_resolveEmbeddedPopupInjector(e,t){var n,r;return t.isMainScene===!1||((n=this._univerInstanceService.getUnitCreateOptions(e))==null?void 0:n.embeddedRender)===!0?(r=t.getInjector)==null?void 0:r.call(t):void 0}_resolvePopupManagerService(e){return e!=null&&e.has(i.ICanvasPopupService)?e.get(i.ICanvasPopupService):this._globalPopupManagerService}};ip=A([k(0,(0,t.Inject)(i.ICanvasPopupService)),k(1,r.IRenderManagerService),k(2,t.IUniverInstanceService),k(3,t.ICommandService)],ip);let ap=(e,t,n,r)=>{let i=n.findNodePositionByCharIndex(e.startOffset,!0,e.segmentId,r),a=n.getSkeletonData(),o=e.collapsed?e.startOffset:e.endOffset-1;if(e.segmentId){var s,c;let t=Array.from((a==null||(s=a.skeFooters.get(e.segmentId))==null?void 0:s.values())??[])[0]??Array.from((a==null||(c=a.skeHeaders.get(e.segmentId))==null?void 0:c.values())??[])[0];t&&(o=Math.min(t.ed,o))}let l=n.findNodePositionByCharIndex(o,!0,e.segmentId,r);if(!l||!i)return;let u=t.getOffsetConfig(),{borderBoxPointGroup:d}=new Mr(u,n).getRangePointData(i,l);return ai(d).map(e=>({top:e.top+u.docsTop-4,bottom:e.bottom+u.docsTop+4,left:e.left+u.docsLeft,right:e.right+u.docsLeft}))},op=(e,t,n,r)=>{let i=[];for(let a of e){let e=a.top;for(let o of a.columns){let s=o.left,c=a.colCount===1?r:o.width,l=null;for(let r of o.lines){let a=r.paragraphIndex;if(r.paragraphStart){l&&=(i.push(l),null);let o={top:t+e+r.top,left:n+s,right:n+s+c,bottom:t+e+r.top+r.lineHeight};l={paragraphStart:r.st,paragraphEnd:a,startIndex:a,rect:o,fisrtLine:{top:t+e+r.top+r.marginTop+r.paddingTop,left:n+s,right:n+s+c,bottom:t+e+r.top+r.marginTop+r.paddingTop+r.contentHeight}}}else l&&l.startIndex===a&&(l.rect.bottom=t+e+r.top+r.lineHeight)}l&&i.push(l)}}return i},sp=(e,t,n)=>{let r=[],i=new Map;for(let a of e){let{column:e,line:o,lineWidth:s,pageLeft:c,sectionTop:l}=a,u=o.paragraphIndex,d=c+e.left+t,f=l+o.top+n,p=cp(a,f),m=`${a.source}:${a.pageIndex}:${c}:${e.left}:${u}`;if(o.paragraphStart){let e=i.get(m);e&&r.push(e),i.set(m,{paragraphStart:o.st,paragraphEnd:u,startIndex:u,rect:{top:f,left:d,right:d+s,bottom:p},fisrtLine:{top:f+o.marginTop+o.paddingTop,left:d,right:d+s,bottom:f+o.marginTop+o.paddingTop+o.contentHeight}})}else{let e=i.get(m);e&&(e.rect.bottom=p)}}return r.push(...i.values()),r};function cp(e,t){let n=t+e.line.lineHeight;if(e.source!==`column`||e.line!==e.column.lines[e.column.lines.length-1]||!Number.isFinite(e.page.pageHeight))return n;let r=t-e.line.top-e.section.top;return Math.max(n,r+e.page.pageHeight)}let lp=(e,t,n,r=-1)=>{let i=n.findPositionByGlyph(e,r);if(!i)return;let a=t.getOffsetConfig(),o={...i,isBack:!0},{borderBoxPointGroup:s}=new Mr(a,n).getRangePointData(o,o),c=ai(s)[0];if(c)return{top:c.top+a.docsTop,bottom:c.bottom+a.docsTop,left:c.left+a.docsLeft,right:c.left+a.docsLeft+e.width}};function up(e,t,n){let r=pp(e,t);return!r||!mp(n.x,n.y,r.rect)?null:r}function dp(e,t,n){return up(e,t,n)}function fp(e){return e===t.PresetListType.CHECK_LIST||e===t.PresetListType.CHECK_LIST_CHECKED}function pp(e,t){return t!=null&&t.bullet?{paragraph:t,rect:{bottom:e.firstLine.bottom,left:e.rect.left,right:Math.min(e.rect.right,e.rect.left+36),top:e.firstLine.top},segmentId:e.segmentId,segmentPageIndex:e.pageIndex}:null}function mp(e,t,n){let{left:r,right:i,top:a,bottom:o}=n;return e>=r&&e<=i&&t>=a&&t<=o}function hp(e){return Math.max(0,e.right-e.left)*Math.max(0,e.bottom-e.top)}function gp(e,t){return e.left<=t.left&&e.right>=t.right&&e.top<=t.top&&e.bottom>=t.bottom}function _p(e){return Math.max(0,e.paragraphEnd-e.paragraphStart)}function vp(e){return e.sort((e,t)=>hp(e.rect)-hp(t.rect)||_p(e)-_p(t))[0]}function yp(e){return e.filter(t=>!e.some(e=>e!==t&&hp(e.rect)<hp(t.rect)&&gp(t.rect,e.rect)))}function bp(e){return{bottom:e.bottom,left:e.left-72,right:e.right,top:e.top-42}}function xp(e,t,n){let r=Sp(n),i=r?e-(n.leadingInsetLeft??0):e;return{scrollLeft:r?n.scrollLeft:0,visibleLeft:i,visibleRight:i+(r?n.viewportWidth:t)}}function Sp(e){return e!=null&&(e.leadingInsetLeft??0)+e.contentWidth+(e.trailingInsetRight??0)>e.viewportWidth}let Cp=class extends t.Disposable{get hoverParagraph(){return this._hoverParagraph$.value}get hoverParagraphLeft(){return this._hoverParagraphLeft$.value}get _skeleton(){return this._docSkeletonManagerService.getSkeleton()}get _documents(){return this._context.mainComponent}constructor(e,t){super(),this._context=e,this._docSkeletonManagerService=t,O(this,`_hoverCustomRanges$`,new a.BehaviorSubject([])),O(this,`hoverCustomRanges$`,this._hoverCustomRanges$.pipe((0,a.distinctUntilChanged)((e,t)=>e.length===t.length&&e.every((e,n)=>t[n].range.rangeId===e.range.rangeId&&t[n].segmentId===e.segmentId&&t[n].segmentPageIndex===e.segmentPageIndex&&t[n].range.startIndex===e.range.startIndex)))),O(this,`_clickCustomRanges$`,new a.Subject),O(this,`clickCustomRanges$`,this._clickCustomRanges$.asObservable()),O(this,`_pointerDownCustomRanges$`,new a.Subject),O(this,`pointerDownCustomRanges$`,this._pointerDownCustomRanges$.asObservable()),O(this,`_hoverBullet$`,new a.Subject),O(this,`hoverBullet$`,this._hoverBullet$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.paragraph.startIndex)===(t==null?void 0:t.paragraph.startIndex)&&(e==null?void 0:e.segmentId)===(t==null?void 0:t.segmentId)&&(e==null?void 0:e.segmentPageIndex)===(t==null?void 0:t.segmentPageIndex)))),O(this,`_clickBullet$`,new a.Subject),O(this,`clickBullets$`,this._clickBullet$.asObservable()),O(this,`_contextMenuBullet$`,new a.Subject),O(this,`contextMenuBullets$`,this._contextMenuBullet$.asObservable()),O(this,`_hoverParagraph$`,new a.BehaviorSubject(null)),O(this,`hoverParagraph$`,this._hoverParagraph$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.startIndex)===(t==null?void 0:t.startIndex)&&(e==null?void 0:e.segmentId)===(t==null?void 0:t.segmentId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverParagraphRealTime$`,this._hoverParagraph$.asObservable()),O(this,`_hoverParagraphLeft$`,new a.BehaviorSubject(null)),O(this,`hoverParagraphLeft$`,this._hoverParagraphLeft$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.startIndex)===(t==null?void 0:t.startIndex)&&(e==null?void 0:e.segmentId)===(t==null?void 0:t.segmentId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverParagraphLeftRealTime$`,this._hoverParagraphLeft$.asObservable()),O(this,`_hoverTableCell$`,new a.Subject),O(this,`hoverTableCell$`,this._hoverTableCell$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.rowIndex)===(t==null?void 0:t.rowIndex)&&(e==null?void 0:e.colIndex)===(t==null?void 0:t.colIndex)&&(e==null?void 0:e.tableId)===(t==null?void 0:t.tableId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverTableCellRealTime$`,this._hoverTableCell$.asObservable()),O(this,`_hoverTable$`,new a.Subject),O(this,`hoverTable$`,this._hoverTable$.pipe((0,a.distinctUntilChanged)((e,t)=>(e==null?void 0:e.tableId)===(t==null?void 0:t.tableId)&&(e==null?void 0:e.pageIndex)===(t==null?void 0:t.pageIndex)))),O(this,`hoverTableRealTime$`,this._hoverTable$.asObservable()),O(this,`_customRangeDirty`,!0),O(this,`_bulletDirty`,!0),O(this,`_paragraphDirty`,!0),O(this,`_customRangeBounds`,[]),O(this,`_bulletBounds`,[]),O(this,`_paragraphBounds`,new Map),O(this,`_paragraphLeftBounds`,[]),O(this,`_tableParagraphBounds`,new Map),O(this,`_segmentParagraphBounds`,new Map),O(this,`_tableViewportSignature`,``),O(this,`_tableCellBounds`,new Map),O(this,`_tableBounds`,new Map),this._initResetDirty(),this._initEvents(),this._initPointer()}dispose(){this._hoverCustomRanges$.complete(),this._clickCustomRanges$.complete(),this._pointerDownCustomRanges$.complete(),super.dispose()}_initPointer(){let e=r.CURSOR_TYPE.TEXT;this.disposeWithMe(this.hoverCustomRanges$.subscribe(t=>{t.length?(e=this._context.scene.getCursor(),this._context.scene.setCursor(r.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((0,t.fromEventSubject)(this._context.engine.onTransformChange$).pipe((0,a.filter)(e=>e.type===r.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize)).subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0})),this.disposeWithMe((0,t.fromEventSubject)(this._context.scene.onTransformChange$).pipe((0,a.filter)(e=>e.type===r.TRANSFORM_CHANGE_OBSERVABLE_TYPE.scale)).subscribe(()=>{this._customRangeDirty=!0,this._bulletDirty=!0,this._paragraphDirty=!0}))}_initEvents(){this.disposeWithMe((0,t.fromEventSubject)(this._context.scene.onPointerMove$).pipe((0,a.throttleTime)(30,void 0,{leading:!0,trailing:!0})).subscribe(e=>{if(e.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}let{x:t,y:n}=np(e.offsetX,e.offsetY,this._context.scene);this._hoverCustomRanges$.next(this._calcActiveRanges({x:t,y:n})),this._hoverParagraph$.next(this._calcActiveParagraph({x:t,y:n})),this._hoverParagraphLeft$.next(this._calcActiveParagraphLeft({x:t,y:n})),this._hoverBullet$.next(this._calcActiveBullet({x:t,y:n}))})),this.disposeWithMe(this._context.scene.onPointerEnter$.subscribeEvent(()=>{this._hoverBullet$.next(null),this._hoverCustomRanges$.next([])}));let e=(0,t.fromEventSubject)(this._context.mainComponent.onPointerDown$),n=(0,t.fromEventSubject)(this._context.scene.onPointerUp$);this.disposeWithMe(e.pipe((0,a.tap)(e=>{if(e.button!==0)return;let t=np(e.offsetX,e.offsetY,this._context.scene);this._pointerDownCustomRanges$.next(this._calcActiveRanges(t))}),(0,a.switchMap)(e=>n.pipe((0,a.take)(1),(0,a.map)(t=>({down:e,up:t})))),(0,a.filter)(({down:e,up:t})=>e.target===t.target&&(e.button===2||t.timeStamp-e.timeStamp<300))).subscribe(({down:e})=>{let t=np(e.offsetX,e.offsetY,this._context.scene);if(e.button===2){let n=this._calcActiveBullet(t)??this._calcActiveListParagraph(t);n&&this._contextMenuBullet$.next({...n,x:e.offsetX,y:e.offsetY});return}let n=this._calcActiveRanges(t);n.length&&this._clickCustomRanges$.next({...n.pop(),ctrlKey:!!e.ctrlKey,metaKey:!!e.metaKey});let r=this._calcActiveBullet(t);r&&this._clickBullet$.next(r)}))}isPointerOnBullet(e,t){return!!this._calcActiveBullet(np(e,t,this._context.scene))}isPointerOnNonChecklistBullet(e,t){var n;let r=this._calcActiveBullet(np(e,t,this._context.scene));return!!(r&&!fp((n=r.paragraph.bullet)==null?void 0:n.listType))}getBulletBounds(){return this._buildBulletBounds(),[...this._bulletBounds]}getListContextMenuBulletByOffset(e,t){let n=np(e,t,this._context.scene);return this._calcActiveBullet(n)??this._calcActiveListParagraph(n)}_buildCustomRangeBoundsBySegment(e,t=-1){var n;let r=((n=this._context.unit.getSelfOrHeaderFooterModel(e))==null||(n=n.getBody())==null?void 0:n.customRanges)??[],i=[];return r.forEach(n=>{let r={startOffset:n.startIndex,endOffset:n.endIndex+1,collapsed:!1,segmentId:e},a=ap(r,this._documents,this._skeleton,t);if(!a)return null;i.push({customRange:n,rects:a,segmentId:e,segmentPageIndex:t})}),i}_buildCustomRangeBounds(){var e;if(!this._customRangeDirty)return;this._customRangeDirty=!1;let t=[];t.push(...this._buildCustomRangeBoundsBySegment()),(e=this._skeleton.getSkeletonData())==null||e.pages.forEach((e,n)=>{e.headerId&&t.push(...this._buildCustomRangeBoundsBySegment(e.headerId,n)),e.footerId&&t.push(...this._buildCustomRangeBoundsBySegment(e.footerId,n))}),this._customRangeBounds=t}_calcActiveRanges(e){this._buildCustomRangeBounds();let{x:t,y:n}=e;return this._customRangeBounds.filter(e=>e.rects.some(e=>mp(t,n,e))).map(e=>({segmentId:e.segmentId,range:e.customRange,segmentPageIndex:e.segmentPageIndex,rects:e.rects}))}_buildBulletBoundsBySegment(e,t=-1){var n;let r=(n=this._context.unit.getSelfOrHeaderFooterModel(e))==null?void 0:n.getBody(),i=((r==null?void 0:r.paragraphs)??[]).filter(e=>e.bullet),a=[],o=this._skeleton.getSkeletonData();if(!o)return a;let s=n=>{for(let o of n){let n=[...o.sections];if(o.skeTables){let e=Array.from(o.skeTables.values());n.push(...e.map(e=>e.rows.map(e=>e.cells.map(e=>e.sections))).flat(4))}for(let o of n)for(let n of o.columns)for(let o of n.lines)if(o.paragraphStart){let n=i.find(e=>e.startIndex===o.paragraphIndex);if(n){var r;let i=o,s=i==null||(r=i.divides)==null||(r=r[0])==null||(r=r.glyphGroup)==null?void 0:r[0];if(!s)continue;let c=lp(s,this._documents,this._skeleton,t);if(!c)continue;a.push({rect:c,segmentId:e,segmentPageIndex:t,paragraph:n})}}}return a};if(e){var c,l;let t=((c=o.skeFooters.get(e))==null?void 0:c.values())??((l=o.skeHeaders.get(e))==null?void 0:l.values());return t?s(Array.from(t)):a}return s(o.pages)}_buildBulletBounds(){var e;this._bulletDirty&&(this._bulletDirty=!1,this._bulletBounds=[],this._bulletBounds.push(...this._buildBulletBoundsBySegment()),(e=this._skeleton.getSkeletonData())==null||e.pages.forEach((e,t)=>{e.headerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(e.headerId,t)),e.footerId&&this._bulletBounds.push(...this._buildBulletBoundsBySegment(e.footerId,t))}))}_calcActiveBullet(e){this._buildBulletBounds();let{x:t,y:n}=e,r=this._bulletBounds.find(e=>mp(t,n,e.rect));if(r)return r;let i=this._calcActiveParagraph(e);return i?up(i,this._getParagraphByStartIndex(i.startIndex,i.segmentId),e):null}_calcActiveListParagraph(e){let t=this._calcActiveParagraph(e);return t?dp(t,this._getParagraphByStartIndex(t.startIndex,t.segmentId),e):null}_getParagraphByStartIndex(e,t){var n;return(n=this._context.unit.getSelfOrHeaderFooterModel(t))==null||(n=n.getBody())==null||(n=n.paragraphs)==null?void 0:n.find(t=>t.startIndex===e)}_buildParagraphBoundsBySegment(e){let t=this._skeleton.getSkeletonData(),n=this._documents.getOffsetConfig();if(!t)return null;let i=t=>{let i=new Map,a=(e,t,n,r)=>{t.forEach(t=>{if(!e.has(t.startIndex))e.set(t.startIndex,{rect:t.rect,paragraphStart:t.paragraphStart,paragraphEnd:t.paragraphEnd,startIndex:t.startIndex,rects:[t.rect],pageIndex:n,segmentId:r,firstLine:t.fisrtLine});else{let n=e.get(t.startIndex);n&&(n.rect.bottom=t.rect.bottom,n.rects.push(t.rect))}})},o=new Map;(0,r.documentSkeletonLineIterator)(t,{docsLeft:n.docsLeft,pageMarginTop:n.pageMarginTop,unitId:this._context.unitId},e=>{if(e.source===`table-cell`)return;let t=o.get(e.pageIndex)??[];t.push(e),o.set(e.pageIndex,t)}),o.forEach((t,r)=>{a(i,sp(t,n.docsLeft,n.docsTop),r,e)});for(let i of(0,r.documentSkeletonTableIterator)(t,{docsLeft:n.docsLeft,docsTop:n.docsTop,pageMarginTop:n.pageMarginTop,unitId:this._context.unitId})){let t=i.tableId,n=(0,r.getTableIdAndSliceIndex)(t).tableId,a=xp(i.tableRect.left,i.table.width,(0,r.getDocsTableRenderViewport)(this._context.unitId,n));this._tableBounds.set(t,{rect:{...i.tableRect,right:a.visibleRight},pageIndex:i.pageIndex,tableId:t});for(let n of i.cells){let r=n.cell,a=(r.pageWidth??0)-(r.marginLeft??0)-(r.marginRight??0),o=op(r.sections,n.pageTop,n.pageLeft,a).map(e=>Ep(e,n.clipLeft,n.clipRight)).filter(e=>e!=null),s=this._tableParagraphBounds.get(t);s||(s=[],this._tableParagraphBounds.set(t,s)),s.push(...o.map(r=>({rect:r.rect,paragraphStart:r.paragraphStart,paragraphEnd:r.paragraphEnd,startIndex:r.startIndex,pageIndex:i.pageIndex,segmentId:e,rowIndex:n.rowIndex,colIndex:n.columnIndex,firstLine:r.fisrtLine,tableId:t})));let c=this._tableCellBounds.get(t);c||(c=[],this._tableCellBounds.set(t,c)),c.push({rect:n.cellRect,pageIndex:i.pageIndex,rowIndex:n.rowIndex,colIndex:n.columnIndex,tableId:t})}}return i};if(e){var a,o;let n=((a=t.skeFooters.get(e))==null?void 0:a.values())??((o=t.skeHeaders.get(e))==null?void 0:o.values());return n?i(Array.from(n)):null}return i(t.pages)}_buildParagraphBounds(){var e;let t=this._getTableViewportSignature();if(!this._paragraphDirty&&this._tableViewportSignature===t)return;this._paragraphDirty=!1,this._tableViewportSignature=t,this._tableParagraphBounds=new Map,this._tableCellBounds=new Map,this._tableBounds=new Map,this._paragraphBounds=this._buildParagraphBoundsBySegment()??new Map,this._paragraphLeftBounds=Array.from(this._paragraphBounds.values()).map(e=>({...e,rect:{left:e.rect.left-60,right:e.rect.left,top:e.rect.top,bottom:e.rect.bottom}}));let n=e=>{this._segmentParagraphBounds.set(e,this._buildParagraphBoundsBySegment(e)??new Map)};(e=this._skeleton.getSkeletonData())==null||e.pages.forEach(e=>{e.headerId&&n(e.headerId),e.footerId&&n(e.footerId)})}_calcActiveParagraph(e){this._buildParagraphBounds();let{x:t,y:n}=e,r=Array.from(this._tableBounds.values()).find(e=>mp(t,n,bp(e.rect)));if(this._hoverTable$.next(r),r){var i,a;let e=(i=this._tableCellBounds.get(r.tableId))==null?void 0:i.find(e=>mp(t,n,e.rect));if(this._hoverTableCell$.next(e),!e)return null;let o=(a=this._tableParagraphBounds.get(e.tableId))==null?void 0:a.filter(t=>t.colIndex===e.colIndex&&t.rowIndex===e.rowIndex),s=o==null?void 0:o.find(e=>mp(t,n,e.rect));return s&&{...s,rects:[s.rect]}}return vp([...this._paragraphBounds.values()].filter(e=>e.rects.some(e=>mp(t,n,e))))}_calcActiveParagraphLeft(e){this._buildParagraphBounds();let{x:t,y:n}=e;return vp(this._paragraphLeftBounds.filter(e=>mp(t,n,e.rect)))}get paragraphBounds(){return this._buildParagraphBounds(),this._paragraphBounds}get tableBounds(){return this._buildParagraphBounds(),this._tableBounds}findTableCellBound(e,t,n,r){var i;return this._buildParagraphBounds(),(i=this._tableCellBounds.get(e))==null?void 0:i.find(e=>e.rowIndex===t&&e.colIndex===n&&(r==null||e.pageIndex===r))}findParagraphBoundByIndex(e){this._buildParagraphBounds();let t=Array.from(this._tableParagraphBounds.values()).flat().find(t=>t.startIndex===e);if(t)return t;let n=this._paragraphBounds.get(e);if(n)return n}findParagraphBoundsInRange(e,t){return this._buildParagraphBounds(),wp([...this._paragraphBounds.values()],Array.from(this._tableParagraphBounds.values()).flat().map(e=>({rect:e.rect,paragraphStart:e.paragraphStart,paragraphEnd:e.paragraphEnd,startIndex:e.startIndex,rects:[e.rect],pageIndex:e.pageIndex,segmentId:e.segmentId,firstLine:e.firstLine})),e,t)}_getTableViewportSignature(){var e;let t=((e=this._skeleton.getSkeletonData())==null?void 0:e.pages)??[],n=[];for(let e of(0,r.documentSkeletonTableIterator)(t,{pageMarginTop:this._documents.getOffsetConfig().pageMarginTop,resolveViewport:!1,unitId:this._context.unitId})){let t=(0,r.getTableIdAndSliceIndex)(e.tableId).tableId,i=(0,r.getDocsTableRenderViewport)(this._context.unitId,t);if(!i){n.push(`${t}:none`);continue}n.push(`${t}:${i.contentWidth}:${i.viewportWidth}:${i.scrollLeft}`)}return n.join(`|`)}};Cp=A([k(1,(0,t.Inject)(n.DocSkeletonManagerService))],Cp);function wp(e,t,n,r){let i=t.filter(e=>Tp(e,n,r));return i.length?i:yp(e.filter(e=>Tp(e,n,r)))}function Tp(e,t,n){return Math.max(e.paragraphStart,t)<=Math.min(e.paragraphEnd,n)}function Ep(e,t,n){let r=Dp(e.rect,t,n);return r?{...e,rect:r,fisrtLine:Dp(e.fisrtLine,t,n)??r}:null}function Dp(e,t,n){let r=Math.max(e.left,t),i=Math.min(e.right,n);return i<=r?null:{...e,left:r,right:i}}let Op=(0,c.forwardRef)((e,t)=>{let{menus:n,onClick:r,className:i,style:a,mode:o,maxHeight:u,activeId:d,open:f,onOpenChange:p,maxWidth:m,wrapperClass:h,wrapperStyle:g,iconClass:_,iconStyle:v}=e,y=o===`side-bar`,b=(0,c.useRef)(null),x=(0,c.useRef)(n);x.current=n;let S=(0,c.useMemo)(()=>({scrollTo:e=>{var t;if(!x.current||x.current.findIndex(t=>t.id===e)===-1||!b.current)return;let n=document.getElementById(`univer-side-menu-${e}`);if(!n)return;let r=n.offsetTop,i=b.current.clientHeight,a=b.current.scrollHeight-i,o=Math.max(0,Math.min(r-i/2+n.clientHeight/2,a));(t=b.current)==null||t.scrollTo({behavior:`smooth`,top:o})}}),[]);return(0,c.useImperativeHandle)(t,()=>S),(0,c.useEffect)(()=>{d&&S.scrollTo(d)},[d,S]),(0,l.jsxs)(`div`,{className:(0,s.clsx)(`univer-relative`,h),style:g,children:[(0,l.jsx)(`div`,{onClick:()=>p==null?void 0:p(!f),className:(0,s.clsx)(`univer-absolute univer-left-5 univer-top-4 univer-z-[100] univer-flex univer-size-8 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded-full univer-bg-gray-0 univer-text-gray-800 univer-shadow-sm dark:!univer-bg-gray-600 dark:!univer-text-gray-200`,_),style:v,children:f?(0,l.jsx)(jd,{}):(0,l.jsx)(qu,{})}),(0,l.jsx)(`div`,{className:(0,s.clsx)(i,`univer-absolute univer-left-0 univer-top-0 univer-box-border univer-flex univer-min-w-[180px] univer-flex-col univer-px-4 univer-pb-4 univer-pt-14 univer-transition-all univer-duration-300`,{"univer-rounded-r-2xl univer-bg-gray-0 univer-shadow univer-backdrop-blur-[10px] dark:!univer-bg-gray-900":y}),style:{...a,transform:f?`translateX(0)`:`translateX(-100%)`,maxHeight:u,opacity:+!!f,maxWidth:m??(o===`side-bar`?320:180),paddingRight:o===`float`?void 0:0},children:(0,l.jsx)(`div`,{ref:b,className:(0,s.clsx)(`univer-flex-1 univer-overflow-y-auto univer-overflow-x-hidden`,s.scrollbarClassName),children:n==null?void 0:n.map(e=>(0,l.jsx)(`div`,{id:`univer-side-menu-${e.id}`,className:(0,s.clsx)(`univer-mb-2 univer-h-[24px] univer-cursor-pointer univer-truncate univer-pr-1 univer-font-[500] univer-leading-[24px]`,{"univer-text-base univer-font-semibold":e.isTitle,"univer-text-sm univer-font-semibold":e.level===1,"univer-text-sm":e.level>1,"univer-text-gray-500 dark:!univer-text-gray-400":e.id!==d,"univer-text-gray-800 dark:!univer-text-gray-200":e.id===d}),style:{paddingLeft:(e.level-1)*12},onClick:()=>{r==null||r(e)},children:e.text},e.id))})})]})}),kp=e=>{switch(e){case t.NamedStyleType.HEADING_1:return 1;case t.NamedStyleType.HEADING_2:return 2;case t.NamedStyleType.HEADING_3:return 3;case t.NamedStyleType.HEADING_4:return 4;case t.NamedStyleType.HEADING_5:return 5;case t.NamedStyleType.TITLE:return 1;default:return 1}};function Ap(e,t,n,r){if(!e)return;let i=Array.from(e.values()),a=i.findIndex(e=>e.paragraphStart!==e.paragraphEnd&&e.rect.top<r&&e.rect.bottom>n);if(a===-1)return;let o=i==null?void 0:i.findLastIndex(e=>e.paragraphStart!==e.paragraphEnd&&e.rect.top<r&&e.rect.bottom>n);for(let e=a;e<=o;e++){var s;let n=i[e],r=t.get(n.startIndex);if(r!=null&&(s=r.paragraphStyle)!=null&&s.headingId)return r.paragraphStyle.headingId}for(let e=a;e>=0;e--){var c;let n=i[e],r=t.get(n.startIndex);if(r!=null&&(c=r.paragraphStyle)!=null&&c.headingId)return r.paragraphStyle.headingId}}let jp=`__title`;function Mp(){let e=(0,i.useConfigValue)(ho);return(0,i.useObservable)((0,i.useDependency)(i.IWorkbenchService).rootUnitType$,null,!0)===t.UniverInstanceType.UNIVER_DOC&&e!=null&&e.toc?(0,l.jsx)(Np,{}):null}function Np(){var e,n;let o=(0,i.useDependency)(t.IUniverInstanceService),s=(0,i.useObservable)(()=>o.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC),void 0,!1,[o]),u=(0,i.useDependency)(r.IRenderManagerService),d=(0,i.useObservable)(s?()=>s.change$.pipe((0,a.debounceTime)(100),(0,a.map)(()=>s.getSnapshot())):null,s==null?void 0:s.getSnapshot(),!1,[s]),f=(d==null||(e=d.body)==null?void 0:e.dataStream)??``,[p,m]=(0,c.useState)(void 0),h=(s==null?void 0:s.getUnitId())??``,g=u.getRenderUnitById(h),_=d==null?void 0:d.title,v=g==null?void 0:g.with(Cp),y=v==null?void 0:v.paragraphBounds,b=()=>{var e;return{left:(g==null||(e=g.mainComponent)==null?void 0:e.left)??0,canvasHeight:(g==null?void 0:g.engine.height)??0,scaleY:(g==null?void 0:g.scene.scaleY)??1}},{left:x,canvasHeight:S,scaleY:C}=(0,i.useObservable)(g!=null&&g.engine.onTransformChange$?()=>(0,t.fromEventSubject)(g.engine.onTransformChange$).pipe((0,a.throttleTime)(33),(0,a.map)(b),(0,a.startWith)(b())):null,b(),!1,[g]),w=(0,c.useMemo)(()=>{var e;return(d==null||(e=d.body)==null?void 0:e.paragraphs)??[]},[d==null||(n=d.body)==null?void 0:n.paragraphs]),T=(0,c.useMemo)(()=>{let e=new Map;return w.forEach(t=>{e.set(t.startIndex,t)}),e},[w]),E=x<180?`float`:`side-bar`,D=w==null?void 0:w.filter(e=>{var n;return((n=e.paragraphStyle)==null?void 0:n.namedStyleType)!==void 0&&e.paragraphStyle.namedStyleType!==t.NamedStyleType.SUBTITLE&&e.paragraphStyle.namedStyleType!==t.NamedStyleType.NORMAL_TEXT}).map(e=>{var n;let r=kp(e.paragraphStyle.namedStyleType),i=y==null?void 0:y.get(e.startIndex);if(!i)return null;let{paragraphStart:a,paragraphEnd:o}=i;return{id:e.paragraphStyle.headingId,text:(0,t.getPlainText)(f.slice(a,o)),level:r,isTitle:((n=e.paragraphStyle)==null?void 0:n.namedStyleType)===t.NamedStyleType.TITLE}}).filter(e=>e==null?void 0:e.text),O=(0,i.useEvent)(e=>{let t=e.viewportScrollY,n=t+S/C,r=Ap(y,T,t,n);r&&m(r)}),k=D!=null&&D.find(e=>e.isTitle)?D:[..._?[{id:jp,text:_,level:1,isTitle:!0}]:[],...D??[]].filter(Boolean),[A,j]=(0,c.useState)(!0);(0,c.useEffect)(()=>{let e=g==null?void 0:g.scene.getViewport(`viewMain`);if(!e)return;let n=(0,t.fromEventSubject)(e.onScrollAfter$).pipe((0,a.throttleTime)(33)).subscribe(O);return()=>{n.unsubscribe()}},[O,g]);let M=(0,i.useEvent)(e=>{let t=g==null?void 0:g.scene.getViewport(`viewMain`);if(!t)return;if(e.id===jp){t.scrollToViewportPos({viewportScrollY:0});return}let n=w.find(t=>{var n;return((n=t.paragraphStyle)==null?void 0:n.headingId)===e.id});if(!n)return;let r=y==null?void 0:y.get(n.startIndex);r&&(t.scrollToViewportPos({viewportScrollY:r.rect.top}),m(e.id))});return!s||(0,t.isInternalEditorID)(h)||!(k!=null&&k.length)?null:(0,l.jsx)(`div`,{className:`univer-absolute univer-bottom-0 univer-left-0 univer-top-0 univer-z-[100] univer-w-[0px]`,children:(0,l.jsx)(Op,{menus:k,open:A,onOpenChange:j,mode:E,maxWidth:E===`float`?void 0:Math.floor(x)-10,wrapperClass:`univer-mt-12`,activeId:p,onClick:M,maxHeight:S-48})})}let Pp=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c,l){super(),this._injector=e,this._commandService=t,this._layoutService=n,this._menuManagerService=r,this._uiPartsService=i,this._univerInstanceService=a,this._shortcutService=o,this._configService=s,this._embedRuntimeFocusCoordinator=l,this._init()}_initUiParts(){this.disposeWithMe(this._uiPartsService.registerComponent(i.BuiltInUIPart.FOOTER,()=>(0,i.connectInjector)($f,this._injector))),this.disposeWithMe(this._uiPartsService.registerComponent(i.BuiltInUIPart.CONTENT,()=>(0,i.connectInjector)(Mp,this._injector)))}_initMenus(){this._menuManagerService.appendRootMenu(pu),this._menuManagerService.mergeMenu(mu)}_initShortCut(){[vu,yu,bu,xu,Su,Cu,Eu,Du,Tu,wu,Ou,ku,gu].forEach(e=>{this.disposeWithMe(this._shortcutService.registerShortcut(e))})}_init(){this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[qo,Jo,Go].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(t.UniverInstanceType.UNIVER_DOC,e=>{if(this._shouldPreserveEmbedFocus(e))return;let t=this._injector.get(r.IRenderManagerService).getRenderUnitById(e);t&&t.with(J).focus()}))}_shouldPreserveEmbedFocus(e){var t;return!!((t=this._embedRuntimeFocusCoordinator)!=null&&t.shouldSuppressHostInteraction(e))}};Pp=A([k(0,(0,t.Inject)(t.Injector)),k(1,t.ICommandService),k(2,i.ILayoutService),k(3,i.IMenuManagerService),k(4,i.IUIPartsService),k(5,t.IUniverInstanceService),k(6,i.IShortcutService),k(7,t.IConfigService),k(8,(0,t.Optional)(Cr)),k(9,(0,t.Optional)(wr))],Pp);function Fp(){if(typeof window>`u`)return{bleedLeft:0,bleedRight:0,bleedWidth:1,contentWidth:1,virtualWidth:1};let e=Math.max(1,window.innerWidth-20);return{bleedLeft:0,bleedRight:0,bleedWidth:e,contentWidth:1,virtualWidth:e}}function Ip(e,t,n){let r=e.getBoundingClientRect(),i=n==null?void 0:n.viewScale,a=typeof i==`number`&&Number.isFinite(i)&&i>0?i:1,o=Math.max(1,r.width/a),s=Math.max(1,t),c=n==null?void 0:n.bleedLeft,l=n==null?void 0:n.bleedWidth,u=Number.isFinite(l)&&(l??0)>0;if(s<=o&&(n!=null&&n.authoritativeContentWidth||!u))return{bleedLeft:0,bleedRight:0,bleedWidth:o,contentWidth:s,virtualWidth:o};if(u){let e=Math.max(0,c??0),t=Math.max(1,l);return{bleedLeft:e,bleedRight:Math.max(0,t-e-o),bleedWidth:t,contentWidth:s,virtualWidth:Math.max(t,e+s)}}let d=zp(e),f=d.left+10,p=Math.max(1,d.width-20),m=Math.max(0,(r.left-f)/a),h=Math.max(0,(f+p-r.right)/a),g=p/a;return{bleedLeft:m,bleedRight:h,bleedWidth:g,contentWidth:s,virtualWidth:Math.max(g,m+s)}}function Lp(e,t){return Number.isFinite(e)&&(e??0)>0?e:Math.max(1,t)}function Rp(e,t){return Number.isFinite(e)&&(e??0)>0?e:Math.max(1,t)}function zp(e){let t=Bp(e);if(t){let e=t.getBoundingClientRect();if(Number.isFinite(e.width)&&e.width>0)return{left:e.left,width:e.width}}return{left:0,width:typeof window>`u`?1:Math.max(1,window.innerWidth)}}function Bp(e){let t=e.parentElement;for(;t&&t!==document.body&&t!==document.documentElement;){if(Vp(t))return t;t=t.parentElement}return null}function Vp(e){let t=window.getComputedStyle(e);return Hp(t.overflow)||Hp(t.overflowX)||Hp(t.overflowY)}function Hp(e){return e===`hidden`||e===`auto`||e===`scroll`||e===`clip`}function Up(e,t){let r=new Set;return Object.values(e??{}).forEach(e=>{let i=Wp(e),a=i?(t==null?void 0:t(i))??(typeof i.childUnitId==`string`?i.childUnitId:void 0):void 0,o=typeof(i==null?void 0:i.childType)==`number`?i.childType:void 0;!a||!(0,n.isSheetLikeDocsCustomBlockChildType)(o)||r.add(a)}),r}function Wp(e){if(!e||typeof e!=`object`)return;let t=e.data;return t&&typeof t==`object`?t:void 0}function Gp(e){if(!e||typeof e!=`object`)return;let t=e;return typeof t.unitId==`string`?t.unitId:typeof t.unitID==`string`?t.unitID:void 0}function Kp(e){if(e.commandId&&Jp(e.commandId))return!1;let t=Gp(e.commandParams);return!!(t&&t!==e.hostUnitId&&e.childUnitIds.has(t))}let qp=new Set([`sheet.command.expand-selection`,`sheet.command.move-selection`,`sheet.operation.scroll-to-cell`,`sheet.operation.scroll-to-range`,`sheet.operation.set-activate-cell-edit`,`sheet.operation.set-cell-edit-visible`,`sheet.operation.set-cell-edit-visible-arrow`,`sheet.operation.set-cell-edit-visible-f2`,`sheet.operation.set-format-painter`,`sheet.operation.set-scroll`,`sheet.operation.set-selections`,`sheet.operation.set-zoom-ratio`]);function Jp(e){return qp.has(e)}function Yp(e){let t;return{dispose:()=>{t!=null&&(window.cancelAnimationFrame(t),t=void 0)},schedule:()=>{t??=window.requestAnimationFrame(()=>{t=void 0,e()})}}}function Xp(e,t,n={}){if(e.defaultPrevented||e.ctrlKey||e.metaKey)return!1;let r=e.deltaX||(e.shiftKey?e.deltaY:0),i=e.shiftKey?0:e.deltaY,a=t.scrollLeft,o=t.scrollTop,s=em(t,n.maxScrollLeft);return r&&Zp(t,r,s)&&(t.scrollLeft=$p(a+r,0,s)),i&&Qp(t,i)&&(t.scrollTop=$p(o+i,0,t.scrollHeight-t.clientHeight)),t.scrollLeft!==a||t.scrollTop!==o}function Zp(e,t,n){return e.scrollWidth>e.clientWidth&&(t<0?e.scrollLeft>0:e.scrollLeft<n)}function Qp(e,t){return e.scrollHeight>e.clientHeight&&(t<0?e.scrollTop>0:e.scrollTop+e.clientHeight<e.scrollHeight)}function $p(e,t,n){return Math.max(t,Math.min(n,e))}function em(e,t){let n=Math.max(0,e.scrollWidth-e.clientWidth);return Number.isFinite(t)?$p(t??n,0,n):n}function tm(e){let r=(0,n.resolveDocsCustomBlockSize)(e.childType),i=e.fallbackWidth??r.width,a=e.fallbackHeight??r.height,o=(0,n.isSheetLikeDocsCustomBlockChildType)(e.childType),s=Number.isFinite(e.contentHeight)&&(e.contentHeight??0)>0?e.contentHeight:a,c=Number.isFinite(e.visibleCanvasHeight)&&(e.visibleCanvasHeight??0)>0?e.visibleCanvasHeight:void 0,l=o?s:a,u=o&&c!=null?Math.min(s,c):l,d=e.scale&&e.scale>0?e.scale:1;if(!o)return{height:l,width:i};let f=e.pageWidth,p=e.pageMarginLeft??0,m=e.pageMarginRight??0,h=Number.isFinite(f)?Math.max(0,f-p-m):i,g=Number.isFinite(e.contentWidth)&&(e.contentWidth??0)>0?e.contentWidth:i;if(e.documentFlavor!==t.DocumentFlavor.MODERN||!Number.isFinite(f)){let e=Math.min(g,h||g);return{contentHeight:s,contentWidth:g,height:l,layoutWidth:e,offsetLeft:0,pageContentWidth:h,viewScale:d,visibleCanvasHeight:c,viewportHeight:u,width:e}}let _=10/d,v=e.docsLeft??0,y=v+_,b=Math.max(0,f-_*2),x=Number.isFinite(e.visibleCanvasLeft)&&Number.isFinite(e.visibleCanvasWidth)&&(e.visibleCanvasWidth??0)>0,S=x?e.visibleCanvasLeft+_:y,C=x?Math.max(0,e.visibleCanvasWidth-_*2):b,w=v+p,T=Math.max(0,w-S),E=Math.min(g,h||g);return{bleedLeft:T,bleedWidth:C,contentHeight:s,contentWidth:g,height:l,layoutWidth:E,offsetLeft:0,pageContentWidth:h,viewScale:d,visibleCanvasHeight:c,viewportHeight:u,width:E}}var nm=`@univerjs/docs-ui`,rm=`1.0.0-beta.2`;let im={id:`doc-paragraph-setting.command`,type:t.CommandType.COMMAND,handler:async(e,r)=>{let i=e.get(n.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),c=i.getDocRanges();if(!s||c.length===0||!r)return!1;let l=c[0].segmentId,u=s.getUnitId(),d=s.getSelfOrHeaderFooterModel(l),f=d==null?void 0:d.getBody(),p=(f==null?void 0:f.paragraphs)??[],m=(f==null?void 0:f.dataStream)??``,h=t.BuildTextUtils.range.getParagraphsInRanges(c,p,m)??[],g={id:n.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:c}};if(!r.paragraph||Object.keys(r.paragraph).length===0)return!1;let _=new t.MemoryCursor;_.reset();let v=new t.TextX,y=t.JSONX.getInstance();for(let e of h){let{startIndex:n}=e;v.push({t:t.TextXActionType.RETAIN,len:n-_.cursor}),v.push({t:t.TextXActionType.RETAIN,len:1,body:{dataStream:``,paragraphs:[{...e,paragraphStyle:{...e.paragraphStyle,...r.paragraph},startIndex:0}]},coverType:t.UpdateDocsAttributeType.REPLACE}),_.moveCursorTo(n+1)}let b=(0,t.getRichTextEditPath)(s,l);return g.params.actions=y.editOp(v.serialize(),b),!!o.syncExecuteCommand(g.id,g.params)}},am=`univer.doc.float-menu`,om=[fc,Ui.id,ji.id,Ni.id,Fi.id,Li.id,zi.id,Vi.id,qi.id,{id:$i.id,iconColor:`var(--univer-primary-600)`}];function sm(e,t){let n=e.getMenuByPositionKey(pc),r=[...e.getFlatMenuByPositionKey(pc),...e.getFlatMenuByPositionKey(i.MenuManagerPosition.RIBBON)],a=[],o=t.map(e=>typeof e==`string`?e:e.id);for(let e of t){let t=typeof e==`string`?e:e.id,n=r.find(e=>e.key===t);n&&a.push(typeof e==`string`?n:{...n,iconColor:e.iconColor})}return{menus:a,extraMenus:n.filter(e=>e.item&&!o.includes(e.key))}}function cm(e){let{avaliableMenus:t=om}=e,n=(0,i.useDependency)(i.IMenuManagerService),r=(0,c.useRef)(null),[a,o]=(0,c.useState)([]),[u,d]=(0,c.useState)([]);return(0,c.useEffect)(()=>{function e(){let{menus:e,extraMenus:r}=sm(n,t);o(e),d(r)}e();let r=n.menuChanged$.subscribe(e);return()=>{r.unsubscribe()}},[t,n]),(0,c.useEffect)(()=>{let e=r.current;if(e)return(0,i.preventBrowserZoomInContainers)([e])},[]),(0,l.jsxs)(`div`,{ref:r,className:(0,s.clsx)(`univer-box-border univer-flex univer-rounded univer-bg-gray-0 univer-py-1.5 univer-shadow-sm dark:!univer-border-gray-700 dark:!univer-bg-gray-900`,s.borderClassName),children:[a.map(e=>e.item&&(0,l.jsx)(`div`,{className:`univer-flex univer-flex-nowrap univer-gap-2 univer-px-2`,children:(0,l.jsx)(i.ToolbarItem,{...e.item,iconColor:e.iconColor},e.key)},e.key)),u.length>0&&(0,l.jsx)(`div`,{className:`univer-my-1 univer-w-px univer-bg-gray-200 dark:univer-bg-gray-700`}),u.map(e=>e.item&&(0,l.jsx)(`div`,{className:`univer-flex univer-flex-nowrap univer-gap-2 univer-px-2`,children:(0,l.jsx)(i.ToolbarItem,{...e.item},e.key)},e.key))]})}function lm(e,r){let i=e.body?(0,n.getTopLevelSectionBreaks)(e.body):[],a=(r==null?void 0:r.sectionId)==null?-1:i.findIndex(e=>e.sectionId===r.sectionId),o=a<0?void 0:i[a],s=o==null?{}:(0,t.resolveSectionHeaderFooterReferences)(e.documentStyle,i,a);return{sectionId:o==null?void 0:o.sectionId,sectionIndex:a,sections:i,section:o,config:{...e.documentStyle,...o,...s}}}function um(e,n,i,a){let{useFirstPageHeaderFooter:o,evenAndOddHeaders:s,defaultHeaderId:c,defaultFooterId:l,firstPageHeaderId:u,firstPageFooterId:d,evenPageHeaderId:f,evenPageFooterId:p}=e,m=a?a.pageNumber===a.pageNumberStart:i===0,h=a?a.pageNumber%2==0:i%2==1;return n===r.DocumentEditArea.HEADER?o===t.BooleanNumber.TRUE&&m?u:s===t.BooleanNumber.TRUE&&h?f:c:o===t.BooleanNumber.TRUE&&m?d:s===t.BooleanNumber.TRUE&&h?p:l}let dm=e=>{let t=(0,i.useDependency)(r.IRenderManagerService).getRenderUnitById(e.unitId).with(J),n=(0,i.useObservable)(t.segmentContext$,{segmentId:t.getSegment(),segmentPage:t.getSegmentPage()});return(0,l.jsx)(fm,{...e},`${(n==null?void 0:n.segmentId)??``}:${(n==null?void 0:n.segmentPage)??-1}`)};function fm(e){var a,o;let u=(0,i.useDependency)(t.LocaleService),d=(0,i.useDependency)(t.IUniverInstanceService),f=(0,i.useDependency)(r.IRenderManagerService),p=(0,i.useDependency)(t.ICommandService),m=(0,i.useDependency)(i.ILayoutService),{unitId:h}=e,g=f.getRenderUnitById(h).with(J),_=d.getUnit(h,t.UniverInstanceType.UNIVER_DOC),v=()=>{var e,t;let r=_==null?void 0:_.getSnapshot(),i=(e=f.getRenderUnitById(h))==null?void 0:e.with(n.DocSkeletonManagerService),a=i==null||(t=i.getSkeleton)==null||(t=t.call(i))==null||(t=t.getSkeletonData())==null?void 0:t.pages[g.getSegmentPage()];return r==null?void 0:{...lm(r,a),page:a}},[y,b]=(0,c.useState)(()=>{var e;let n=(e=v())==null?void 0:e.config;return{marginHeader:(n==null?void 0:n.marginHeader)??0,marginFooter:(n==null?void 0:n.marginFooter)??0,useFirstPageHeaderFooter:(n==null?void 0:n.useFirstPageHeaderFooter)??t.BooleanNumber.FALSE,evenAndOddHeaders:(n==null?void 0:n.evenAndOddHeaders)??t.BooleanNumber.FALSE}}),x=v(),S=(0,t.getSectionHeaderFooterReferenceKey)(((a=f.getRenderUnitById(h))==null||(a=a.with(n.DocSkeletonManagerService))==null||(a=a.getViewModel())==null?void 0:a.getEditArea())===r.DocumentEditArea.FOOTER?`footer`:`header`,pm((x==null?void 0:x.config)??{},g.getSegmentPage(),x==null?void 0:x.page)),C=((x==null?void 0:x.sectionIndex)??-1)>0,[w,T]=(0,c.useState)(C&&!(x!=null&&(o=x.section)!=null&&o[S])),E=(e,i)=>{var a;b(n=>({...n,[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE}));let o=v(),s=o==null?void 0:o.config,c=(a=f.getRenderUnitById(h))==null?void 0:a.with(n.DocSkeletonManagerService),l=c==null?void 0:c.getViewModel();if(s==null||l==null)return;let u=l.getEditArea(),d=!1,_=g.getSegmentPage(),y=o!=null&&o.page?o.page.pageNumber===o.page.pageNumberStart:_===0,x=o!=null&&o.page?o.page.pageNumber%2==0:_%2==1,S=!1;if(i===`useFirstPageHeaderFooter`&&e===!0&&((u===r.DocumentEditArea.HEADER&&!s.firstPageHeaderId||u===r.DocumentEditArea.FOOTER&&!s.firstPageFooterId)&&(d=!0),d&&y&&(S=!0)),i===`evenAndOddHeaders`&&e===!0&&((u===r.DocumentEditArea.HEADER&&!s.evenPageHeaderId||u===r.DocumentEditArea.FOOTER&&!s.evenPageFooterId)&&(d=!0),d&&x&&(S=!0)),d){let n=(0,t.generateRandomId)(6);S&&g.setSegment(n),p.executeCommand(Ko,{unitId:h,segmentId:n,headerFooterProps:{[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE},sectionId:o==null?void 0:o.sectionId})}else{let n=g.getSegmentPage(),r=g.getSegment(),a=um({...s,[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE},u,n,o==null?void 0:o.page);a&&a!==r&&g.setSegment(a),p.executeCommand(Ko,{unitId:h,headerFooterProps:{[i]:e?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE},sectionId:o==null?void 0:o.sectionId})}m.focus()},D=async(e,t)=>{var n;b(n=>({...n,[t]:e})),await p.executeCommand(Ko,{unitId:h,headerFooterProps:{[t]:e},sectionId:(n=v())==null?void 0:n.sectionId}),g.removeAllRanges(),g.blur()},O=()=>{p.executeCommand(Yo.id,{unitId:h})},k=async e=>{var i;let a=v();if(!(a!=null&&a.sectionId)||a.sectionIndex<=0||!_)return;let o=((i=f.getRenderUnitById(h))==null||(i=i.with(n.DocSkeletonManagerService))==null||(i=i.getViewModel())==null?void 0:i.getEditArea())===r.DocumentEditArea.FOOTER?`footer`:`header`,s=pm(a.config,g.getSegmentPage(),a.page),c=(0,t.getSectionHeaderFooterReferenceKey)(o,s),l=(0,t.generateRandomId)(6),u=(0,t.resolveSectionHeaderFooterReference)(_.getDocumentStyle(),a.sections,a.sectionIndex-1,c).segmentId;await p.executeCommand(n.SetSectionHeaderFooterLinkCommand.id,{unitId:h,sectionId:a.sectionId,kind:o,variant:s,linkedToPrevious:e,...e?{}:{segmentId:l}})&&(T(e),g.setSegment(e?u??``:l),m.focus())};return(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-4`,children:[C&&(0,l.jsx)(`div`,{children:(0,l.jsx)(s.Checkbox,{checked:w,onChange:e=>{k(e)},children:u.t(`docs-ui.headerFooter.linkToPrevious`)})}),(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-2`,children:[(0,l.jsx)(`div`,{children:(0,l.jsx)(s.Checkbox,{checked:y.useFirstPageHeaderFooter===t.BooleanNumber.TRUE,onChange:e=>{E(e,`useFirstPageHeaderFooter`)},children:u.t(`docs-ui.headerFooter.firstPageCheckBox`)})}),(0,l.jsx)(`div`,{children:(0,l.jsx)(s.Checkbox,{checked:y.evenAndOddHeaders===t.BooleanNumber.TRUE,onChange:e=>{E(e,`evenAndOddHeaders`)},children:u.t(`docs-ui.headerFooter.oddEvenCheckBox`)})})]}),(0,l.jsxs)(`div`,{className:`univer-mb-1 univer-flex`,children:[(0,l.jsxs)(`div`,{children:[(0,l.jsx)(`span`,{children:u.t(`docs-ui.headerFooter.headerTopMargin`)}),(0,l.jsx)(s.InputNumber,{className:`univer-mt-1.5 univer-w-4/5`,min:0,max:200,precision:1,value:y.marginHeader,onChange:e=>{D(e,`marginHeader`)}})]}),(0,l.jsxs)(`div`,{children:[(0,l.jsx)(`span`,{children:u.t(`docs-ui.headerFooter.footerBottomMargin`)}),(0,l.jsx)(s.InputNumber,{className:`univer-mt-1.5 univer-w-4/5`,min:0,max:200,precision:1,value:y.marginFooter,onChange:e=>{D(e,`marginFooter`)}})]})]}),(0,l.jsx)(`div`,{className:`univer-flex univer-justify-end`,children:(0,l.jsx)(s.Button,{onClick:O,children:u.t(`docs-ui.headerFooter.closeHeaderFooter`)})})]})}function pm(e,n,r){let i=r?r.pageNumber===r.pageNumberStart:n===0,a=r?r.pageNumber%2==0:n%2==1;return e.useFirstPageHeaderFooter===t.BooleanNumber.TRUE&&i?`first`:e.evenAndOddHeaders===t.BooleanNumber.TRUE&&a?`even`:`default`}let mm=()=>{var e;let o=(0,i.useDependency)(t.LocaleService),s=(0,i.useDependency)(r.IRenderManagerService),c=(0,i.useDependency)(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC).getUnitId(),u=((e=s.getRenderUnitById(c))==null?void 0:e.with(n.DocSkeletonManagerService)).getViewModel();return(0,l.jsx)(`div`,{className:`univer-text-sm`,children:(0,i.useObservable)(()=>u.editAreaChange$.pipe((0,a.filter)(e=>e!=null),(0,a.map)(e=>e!==r.DocumentEditArea.BODY)),u.getEditArea()!==r.DocumentEditArea.BODY,!1,[u])?(0,l.jsx)(dm,{unitId:c}):(0,l.jsx)(`div`,{className:`univer-text-gray-400`,children:o.t(`docs-ui.headerFooter.disableText`)})})};function hm({className:e,style:t,onClick:n}){return(0,l.jsxs)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,onClick:n,children:[(0,l.jsx)(`text`,{x:2,y:19,fontFamily:`Arial, sans-serif`,fontSize:19,fontWeight:500,children:`T`}),(0,l.jsx)(`text`,{x:15,y:19,fontFamily:`Arial, sans-serif`,fontSize:13,fontWeight:500,children:`t`})]})}function gm({className:e,style:t,onClick:n}){return(0,l.jsx)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,onClick:n,children:(0,l.jsx)(`text`,{x:5,y:19,fontFamily:`Arial, sans-serif`,fontSize:19,fontWeight:500,children:`S`})})}function _m({className:e,style:t,onClick:n,color:r}){return(0,l.jsxs)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,width:`1em`,height:`1em`,fill:`none`,"aria-hidden":`true`,onClick:n,children:[(0,l.jsx)(`rect`,{x:1,y:1,width:22,height:22,rx:2.5,fill:`none`,stroke:`currentColor`,strokeWidth:1,strokeOpacity:.12}),(0,l.jsx)(`text`,{x:12,y:17.25,direction:`ltr`,fontFamily:`Arial, sans-serif`,fontSize:15,fontWeight:400,fill:r,textAnchor:`middle`,children:`A`})]})}function vm({className:e,style:t,onClick:n,color:r}){return(0,l.jsx)(`svg`,{className:e,style:t,viewBox:`0 0 24 24`,width:`1em`,height:`1em`,fill:`none`,"aria-hidden":`true`,onClick:n,children:(0,l.jsx)(`rect`,{x:3,y:3,width:18,height:18,rx:3,fill:r,stroke:`currentColor`,strokeOpacity:.12})})}function ym({className:e,style:t,onClick:n,extend:r}){return(0,l.jsx)(_m,{className:e,style:t,onClick:n,color:(r==null?void 0:r.colorChannel1)??`currentColor`})}function bm({className:e,style:t,onClick:n}){return(0,l.jsx)(_m,{className:e,style:t,onClick:n,color:`#000000`})}function xm(e){return function(t){return(0,l.jsx)(_m,{...t,color:e})}}function Sm(e){return function(n){let r=(0,i.useDependency)(t.ThemeService),o=(0,i.useObservable)(()=>r.currentTheme$.pipe((0,a.map)(()=>nl(r,e))),nl(r,e),!1,[e,r]);return(0,l.jsx)(vm,{...n,color:o})}}let Cm=xm(`#FE4B4B`),wm=xm(`#FF8C51`),Tm=xm(`#A4DC16`),Em=xm(`#2DAEFF`),Dm=xm(`#3A60F7`),Om=xm(`#9E6DE3`),km=xm(`#F248A6`),Am=Sm(0),jm=Sm(1),Mm=Sm(2),Nm=Sm(3),Pm=Sm(4),Fm=Sm(5),Im=Sm(6),Lm=Sm(7),Rm=Sm(8),zm=Sm(9),Bm=Sm(10),Vm=Sm(11),Hm=Sm(12),Um=Sm(13),Wm=Sm(14),Gm=Sm(15),Km=`doc.paragraph.menu`,qm=`doc.table-block.menu`,Jm={min:1,max:5,step:.1},Ym={min:1,max:100};function Xm(e,t){let n=10**t;return Math.round(e*n)/n}function Zm(e,t,n){return Math.min(n,Math.max(t,e))}let Qm=[{label:`docs-ui.doc.paragraphSetting.multiSpace`,value:`${t.SpacingRule.AUTO}`},{label:`docs-ui.doc.paragraphSetting.atLeast`,value:`${t.SpacingRule.AT_LEAST}`},{label:`docs-ui.doc.paragraphSetting.exactly`,value:`${t.SpacingRule.EXACT}`}];function $m(e){return e===t.SpacingRule.AUTO?Jm:Ym}function eh(e,n){return n===t.SpacingRule.AUTO?e:Xm(e,2)}function th(e,n){return n===t.SpacingRule.AUTO?e:Xm(e,4)}function nh(e){if(!e)return null;let t=Math.max(0,...(e.divides??[]).flatMap(e=>(e.glyphGroup??[]).map(e=>{var t,n;return(((t=e.bBox)==null?void 0:t.ba)??0)+(((n=e.bBox)==null?void 0:n.bd)??0)})))||e.contentHeight||0;return t?{glyphLineHeight:t,renderedLineHeight:(e.paddingTop??0)+(e.contentHeight??t)+(e.paddingBottom??0)||t}:null}function rh(e,n,r,i){return n===r?e:r===t.SpacingRule.AUTO?i!=null&&i.glyphLineHeight&&i.renderedLineHeight?Xm(Zm(i.renderedLineHeight/i.glyphLineHeight,Jm.min,Jm.max),2):t.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING:i!=null&&i.renderedLineHeight?Xm(i.renderedLineHeight,4):Xm(t.DEFAULT_STYLES.fs*e,4)}let ih=new Set([t.DocumentBlockRangeType.CALLOUT,t.DocumentBlockRangeType.CODE,t.DocumentBlockRangeType.QUOTE]);function ah(e,n,r){return e.map(e=>{var i;let a=((i=n.blockRanges)==null?void 0:i.some(t=>ih.has(t.blockType)&&e.startIndex>t.startIndex&&e.startIndex<t.endIndex))??!1;return{...e,paragraphStyle:(0,t.resolveDocumentParagraphStyle)(r,e.paragraphStyle,{excludeDocumentOuterSpacing:a})}})}let oh=()=>{let e=(0,i.useDependency)(n.DocSelectionManagerService),t=(0,i.useDependency)(Xo),r=(0,c.useMemo)(()=>e.getDocRanges(),[]);return(0,c.useEffect)(()=>{r.length||t.closePanel()},[r]),r},sh=()=>{let e=(0,i.useDependency)(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),n=oh();if(!e||n.length===0)return[];let r=n[0].segmentId,a=e.getSelfOrHeaderFooterModel(r),o=a==null?void 0:a.getBody(),s=(o==null?void 0:o.paragraphs)??[],c=(o==null?void 0:o.dataStream)??``,l=t.BuildTextUtils.range.getParagraphsInRanges(n,s,c)??[];return o==null?l:ah(l,o,e.getDocumentStyle())},ch=(e,n)=>{let r=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let r=e[0];return r?String(((t=r.paragraphStyle)==null?void 0:t.horizontalAlign)??n):n});return[a,e=>(o(e),r.executeCommand(im.id,{paragraph:{horizontalAlign:Number(e)}}))]},lh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.indentStart,0):0});return[a,e=>(o(e),n.executeCommand(im.id,{paragraph:{indentStart:{v:e}}}))]},uh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.indentEnd,0):0});return[a,e=>(o(e),n.executeCommand(im.id,{paragraph:{indentEnd:{v:e}}}))]},dh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.indentFirstLine,0):0});return[a,e=>(o(e),n.executeCommand(im.id,{paragraph:{indentFirstLine:{v:e}}}))]},fh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var t;let n=e[0];return n?(0,r.getNumberUnitValue)((t=n.paragraphStyle)==null?void 0:t.hanging,0):0});return[a,e=>(o(e),n.executeCommand(im.id,{paragraph:{hanging:{v:e}}}))]},ph=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var n;let i=e[0];return i?(0,r.getNumberUnitValue)((n=i.paragraphStyle)==null?void 0:n.spaceAbove,t.DEFAULT_DOCUMENT_PARAGRAPH_SPACE_ABOVE):0});return[a,e=>(o(e),n.executeCommand(im.id,{paragraph:{spaceAbove:{v:e}}}))]},mh=e=>{let n=(0,i.useDependency)(t.ICommandService),[a,o]=(0,c.useState)(()=>{var n;let i=e[0];return i?(0,r.getNumberUnitValue)((n=i.paragraphStyle)==null?void 0:n.spaceBelow,t.DEFAULT_DOCUMENT_PARAGRAPH_SPACE_BELOW):0});return[a,e=>(o(e),n.executeCommand(im.id,{paragraph:{spaceBelow:{v:e}}}))]},hh=e=>{let s=(0,i.useDependency)(t.ICommandService),l=(0,i.useDependency)(r.IRenderManagerService),u=(0,i.useDependency)(t.IUniverInstanceService),d=(0,c.useMemo)(()=>{var e;let r=u.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(r)return(e=l.getRenderUnitById(r==null?void 0:r.getUnitId()))==null?void 0:e.with(n.DocSkeletonManagerService).getSkeleton()},[]),f=(0,c.useMemo)(()=>new a.BehaviorSubject({}),[]),[p,m]=(0,c.useState)(()=>{var n;let r=e[0];return r?((n=r.paragraphStyle)==null?void 0:n.spacingRule)??t.SpacingRule.AUTO:t.SpacingRule.AUTO}),[h,g]=(0,c.useState)(()=>{var n,r;let i=e[0];if(!i)return t.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING;let a=((n=i.paragraphStyle)==null?void 0:n.spacingRule)??t.SpacingRule.AUTO;return eh(((r=i.paragraphStyle)==null?void 0:r.lineSpacing)??t.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING,a)});return(0,c.useEffect)(()=>{let e=f.pipe((0,o.filter)(e=>!!Object.keys(e).length),(0,o.bufferTime)(16),(0,o.filter)(e=>!!e.length),(0,o.map)(e=>e.reduce((e,t)=>(Object.keys(t).forEach(n=>{e[n]=t[n]}),e),{}))).subscribe(e=>s.executeCommand(im.id,{paragraph:{...e}}));return()=>e.unsubscribe()},[]),{lineSpacing:[h,async e=>{g(e),f.next({lineSpacing:th(e,p),spacingRule:p})}],spacingRule:[p,async t=>{if(t!==p){let n=d==null?void 0:d.findNodeByCharIndex(e[0].startIndex),r=n==null?void 0:n.parent,i=nh(r==null?void 0:r.parent),a=rh(th(h,p),p,t,i),o=eh(a,t);g(o),m(t),f.next({spacingRule:t,lineSpacing:a})}}]}},gh=[{label:`docs-ui.toolbar.alignLeft`,value:String(t.HorizontalAlign.LEFT),icon:(0,l.jsx)(Cd,{})},{label:`docs-ui.toolbar.alignCenter`,value:String(t.HorizontalAlign.CENTER),icon:(0,l.jsx)(_d,{})},{label:`docs-ui.toolbar.alignRight`,value:String(t.HorizontalAlign.RIGHT),icon:(0,l.jsx)(zd,{})},{label:`docs-ui.toolbar.alignJustify`,value:String(t.HorizontalAlign.JUSTIFIED),icon:(0,l.jsx)(Uu,{})}],_h=e=>{let{title:t,children:n,first:r=!1}=e;return(0,l.jsxs)(`section`,{className:(0,s.clsx)(!r&&`univer-mt-5`),children:[(0,l.jsx)(`div`,{className:`univer-text-sm univer-font-medium univer-leading-5`,children:t}),(0,l.jsx)(`div`,{className:`univer-mt-3`,children:n})]})},vh=e=>{let{label:t,unit:n,children:r}=e;return(0,l.jsxs)(`div`,{className:`univer-grid univer-min-h-8 univer-items-center univer-gap-3`,style:{gridTemplateColumns:`minmax(0, 1fr) minmax(160px, 180px)`},children:[(0,l.jsxs)(`div`,{className:`univer-min-w-0 univer-text-xs univer-leading-5 univer-text-gray-900 dark:!univer-text-gray-100`,children:[t,n]}),(0,l.jsx)(`div`,{className:`univer-w-full univer-min-w-0`,children:r})]})},yh=e=>{let{value:t,onChange:n,className:r=``,min:i=0,max:a=100,step:o=.1,precision:u=1}=e,d=(0,c.useRef)(null);return(0,l.jsx)(s.InputNumber,{step:o,precision:u,ref:d,min:i,max:a,value:t,onChange:e=>{n(e??0).finally(()=>{setTimeout(()=>{var e;(e=d.current)==null||e.focus()},30)})},className:(0,s.clsx)(`univer-w-full`,r)})};function bh(){let e=(0,i.useDependency)(t.LocaleService),n=sh(),[r,a]=ch(n,gh[0].value),[o,u]=lh(n),[d,f]=uh(n),[p,m]=dh(n),[h,g]=fh(n),[_,v]=ph(n),[y,b]=mh(n),{lineSpacing:[x,S],spacingRule:[C,w]}=hh(n),T=(0,c.useMemo)(()=>$m(C),[C]),E=Qm.map(t=>({...t,label:e.t(t.label)}));return(0,l.jsxs)(`div`,{className:`univer-box-border univer-w-full`,children:[(0,l.jsx)(_h,{title:e.t(`docs-ui.doc.paragraphSetting.alignment`),first:!0,children:(0,l.jsx)(`div`,{className:(0,s.clsx)(`univer-flex univer-grid-cols-4 univer-items-center univer-justify-around univer-gap-2 univer-rounded-lg univer-bg-gray-0 univer-p-1 dark:!univer-bg-gray-900`,s.borderClassName),children:gh.map(t=>(0,l.jsx)(s.Tooltip,{title:e.t(t.label),placement:`bottom`,children:(0,l.jsx)(`span`,{className:`univer-flex univer-w-full univer-items-center univer-justify-center`,children:(0,l.jsx)(s.Button,{type:`button`,variant:`text`,className:(0,s.clsx)({"!univer-bg-gray-200 dark:!univer-bg-gray-700":r===t.value}),onClick:()=>a(t.value),children:(0,l.jsx)(`span`,{className:`univer-flex univer-size-5 univer-items-center univer-justify-center univer-text-lg`,children:t.icon})})})},t.value))})}),(0,l.jsx)(_h,{title:e.t(`docs-ui.doc.paragraphSetting.indentation`),children:(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-3`,children:[(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.left`),unit:`(px)`,children:(0,l.jsx)(yh,{value:o,onChange:e=>u(e??0)})}),(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.right`),unit:`(px)`,children:(0,l.jsx)(yh,{value:d,onChange:e=>f(e??0)})}),(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.firstLine`),unit:`(px)`,children:(0,l.jsx)(yh,{value:p,onChange:e=>m(e??0)})}),(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.hanging`),unit:`(px)`,children:(0,l.jsx)(yh,{value:h,onChange:e=>g(e??0)})})]})}),(0,l.jsx)(_h,{title:e.t(`docs-ui.doc.paragraphSetting.spacing`),children:(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-3`,children:[(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.before`),unit:`(px)`,children:(0,l.jsx)(yh,{value:_,onChange:e=>v(e??0)})}),(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.after`),unit:`(px)`,children:(0,l.jsx)(yh,{value:y,onChange:e=>b(e??0)})}),(0,l.jsx)(vh,{label:e.t(`docs-ui.doc.paragraphSetting.lineSpace`),children:(0,l.jsxs)(`div`,{className:`univer-flex univer-w-full univer-flex-col univer-gap-2`,children:[(0,l.jsx)(s.Select,{className:`univer-w-full`,value:`${C}`,options:E,onChange:e=>w(Number(e))}),(0,l.jsx)(yh,{...T,value:x,onChange:e=>S(e??0)})]})})]})})]})}let xh=(e,t)=>t.length===e.length&&e.some(e=>t.some(t=>t.startOffset===e.startOffset&&t.endOffset===e.endOffset));function Sh(){let e=(0,i.useDependency)(t.ICommandService),r=(0,i.useObservable)((0,i.useDependency)(t.LocaleService).currentLocale$),[a,o]=(0,c.useState)(``),s=(0,c.useMemo)(()=>(0,t.debounce)(()=>o((0,t.generateRandomId)(4)),300),[]),u=(0,c.useRef)([]);return(0,c.useEffect)(()=>{let r=e.onCommandExecuted(e=>{if(n.SetTextSelectionsOperation.id===e.id){let n=e.params.ranges;xh(n,u.current)||o((0,t.generateRandomId)(4)),u.current=n}n.RichTextEditingMutation.id===e.id&&e.params.trigger!==im.id&&s()});return()=>r.dispose()},[s]),(0,c.useEffect)(()=>{o((0,t.generateRandomId)(4))},[r]),(0,c.useEffect)(()=>()=>s.cancel(),[s]),(0,l.jsx)(bh,{},a)}function Ch(e,n){if(e==null||n==null)return!1;let{glyph:r,...i}=e,{glyph:a,...o}=n;return(0,t.deepCompare)(i,o)}let wh=[t.DataStreamTreeTokenType.CUSTOM_BLOCK,t.DataStreamTreeTokenType.PARAGRAPH],Th=class extends t.Disposable{constructor(e,n,r,i,a,o,s){super(),this._context=e,this._docSelectionManagerService=n,this._docCanvasPopManagerService=r,this._univerInstanceService=i,this._docSelectionRenderService=a,this._contextService=o,this._embedRuntimeFocusCoordinator=s,O(this,`_floatMenu`,null),O(this,`_suppressed`,!1),O(this,`_embedSuppressed`,!1),O(this,`_invalidatedSelection`,null),!(0,t.isInternalEditorID)(this._context.unitId)&&(this._initSelectionChange(),this._initEmbedRuntimeLifecycle(),this.disposeWithMe(()=>{this._hideFloatMenu()}))}get floatMenu(){return this._floatMenu}hideFloatMenu(){this._hideFloatMenu()}setSuppressed(e){this._suppressed!==e&&(this._suppressed=e,e&&this._hideFloatMenu())}_initSelectionChange(){this.disposeWithMe(this._docSelectionRenderService.onSelectionStart$.subscribe(()=>{this._invalidatedSelection=null,this._hideFloatMenu()})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(e=>{let{unitId:n,textRanges:r}=e;if(n!==this._context.unitId)return;if(this._suppressed||this._embedSuppressed||this._contextService.getContextValue(t.FOCUSING_COMMON_DRAWINGS)){this._hideFloatMenu();return}let i=r.length>0&&r.find(e=>!e.collapsed);if(i){var a,o;if(this._getSelectionKey(i)===this._invalidatedSelection){this._hideFloatMenu();return}if(this._invalidatedSelection=null,i.startOffset===((a=this._floatMenu)==null?void 0:a.start)&&i.endOffset===((o=this._floatMenu)==null?void 0:o.end))return;this._hideFloatMenu(),this._showFloatMenu(n,i);return}this._invalidatedSelection=null,this._hideFloatMenu()}))}_initEmbedRuntimeLifecycle(){if(!this._embedRuntimeFocusCoordinator)return;let e=()=>{var e,t;let n=((e=this._embedRuntimeFocusCoordinator)==null?void 0:e.shouldSuppressHostInteraction(this._context.unitId))===!0;if(this._embedSuppressed===n||(this._embedSuppressed=n,!n))return;let r=(t=this._docSelectionManagerService.getTextRanges({unitId:this._context.unitId,subUnitId:this._context.unitId}))==null?void 0:t.find(e=>!e.collapsed);this._invalidatedSelection=r?this._getSelectionKey(r):this._floatMenu&&`${this._floatMenu.start}:${this._floatMenu.end}`,this._hideFloatMenu()};this.disposeWithMe(this._embedRuntimeFocusCoordinator.runtimeSessionChanged$.subscribe(e)),e()}_getSelectionKey(e){return`${e.startOffset}:${e.endOffset}`}_hideFloatMenu(){var e;(e=this._floatMenu)==null||e.disposable.dispose(),this._floatMenu=null}_showFloatMenu(e,n){var r,i;let a=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(!a||a.getDisabled()||Eh(a,n))return;let o=(r=a.getBody())==null?void 0:r.dataStream[n.startOffset];if(n.endOffset-n.startOffset===1&&o&&wh.includes(o))return;let s=(i=a.getBody())==null||(i=i.customRanges)==null?void 0:i.filter(e=>e.wholeEntity);if(!(s!=null&&s.some(e=>e.startIndex===n.startOffset&&e.endIndex===n.endOffset-1)))return this._floatMenu={disposable:this._docCanvasPopManagerService.attachPopupToRange(n,{componentKey:am,direction:n.direction===`backward`||Ch(n.startNodePosition,n.endNodePosition)?`top-center`:`bottom-center`,offset:[0,10]},e),start:n.startOffset,end:n.endOffset},(0,t.toDisposable)(()=>this._hideFloatMenu())}};Th=A([k(1,(0,t.Inject)(n.DocSelectionManagerService)),k(2,(0,t.Inject)(ip)),k(3,(0,t.Inject)(t.IUniverInstanceService)),k(4,(0,t.Inject)(J)),k(5,t.IContextService),k(6,(0,t.Optional)(wr))],Th);function Eh(e,n){var r;return(((r=e.getBody())==null?void 0:r.blockRanges)??[]).some(e=>e.blockType===t.DocumentBlockRangeType.CODE&&Math.max(n.startOffset,e.startIndex)<=Math.min(n.endOffset,e.endIndex))}let Dh={code:`CodeBlockIcon`,quote:`QuoteIcon`,callout:`CalloutIcon`},Oh={[t.PresetListType.ORDER_LIST]:`OrderIcon`,[t.PresetListType.ORDER_LIST_1]:`OrderIcon`,[t.PresetListType.ORDER_LIST_2]:`OrderIcon`,[t.PresetListType.ORDER_LIST_3]:`OrderIcon`,[t.PresetListType.ORDER_LIST_4]:`OrderIcon`,[t.PresetListType.ORDER_LIST_5]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_2]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_3]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_4]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_5]:`OrderIcon`,[t.PresetListType.ORDER_LIST_QUICK_6]:`OrderIcon`,[t.PresetListType.BULLET_LIST]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_1]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_2]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_3]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_4]:`UnorderIcon`,[t.PresetListType.BULLET_LIST_5]:`UnorderIcon`,[t.PresetListType.CHECK_LIST]:`TodoListDoubleIcon`,[t.PresetListType.CHECK_LIST_CHECKED]:`TodoListDoubleIcon`},kh=class extends t.Disposable{get activeParagraph(){var e;return(e=this._paragraphMenu)==null?void 0:e.paragraph}get activeTarget(){var e;return((e=this._paragraphMenu)==null?void 0:e.target)??null}setBlockMenuDragging(e){this._isBlockMenuDragging=e}get isBlockMenuDragging(){return this._isBlockMenuDragging}constructor(e,n,r,i,o,s,c){super(),this._context=e,this._docSelectionManagerService=n,this._docEventManagerService=r,this._docPopupManagerService=i,this._docSkeletonManagerService=o,this._floatMenuService=s,this._docSelectionRenderService=c,O(this,`_paragraphMenu`,null),O(this,`_activeTarget$`,new a.BehaviorSubject(null)),O(this,`activeTarget$`,this._activeTarget$.asObservable()),O(this,`_slashMenuRequest$`,new a.BehaviorSubject(null)),O(this,`slashMenuRequest$`,this._slashMenuRequest$.asObservable()),O(this,`_isBlockMenuDragging`,!1),O(this,`_isSlashMenuActive`,!1),O(this,`_slashMenuRequestNonce`,0),!(0,t.isInternalEditorID)(this._context.unitId)&&this._init()}_isCursorInActiveParagraph(){if(!this._paragraphMenu)return!1;let e=this._docSelectionManagerService.getActiveTextRange();return!(!(e!=null&&e.collapsed)||!(e!=null&&e.collapsed)||e.startOffset<this._paragraphMenu.paragraph.paragraphStart||e.startOffset>this._paragraphMenu.paragraph.paragraphEnd)}_getExpandedSelectionState(e){return e.reduce((e,n)=>n.rangeType===t.DOC_RANGE_TYPE.RECT?(e.hasRectRange=!0,e):n.collapsed===!1?(e.hasExpandedTextRange=!0,e):(typeof n.startOffset==`number`&&typeof n.endOffset==`number`&&n.endOffset>n.startOffset&&n.collapsed!==!0&&(e.hasExpandedTextRange=!0),e),{hasExpandedTextRange:!1,hasRectRange:!1})}_hasExpandedSelectionRanges(e){let t=this._getExpandedSelectionState(e);return t.hasExpandedTextRange||t.hasRectRange}_hasExpandedTextSelection(){return this._getExpandedSelectionState(this._docSelectionManagerService.getDocRanges()).hasExpandedTextRange}_hasExpandedSelection(){return this._hasExpandedSelectionRanges(this._docSelectionManagerService.getDocRanges())}setParagraphMenuActive(e){this._paragraphMenu&&(this._paragraphMenu.active=e)}_init(){let e=(e,n)=>{if(this._isBlockMenuDragging)return;if(this._docSelectionRenderService.isOnPointerEvent){this.hideParagraphMenu(!0);return}let i=this._getExpandedSelectionState(this._docSelectionManagerService.getDocRanges());if(i.hasExpandedTextRange){this.hideParagraphMenu(!0);return}if(i.hasRectRange){var a;if(n){this.showTableMenu(n);return}if(((a=this._paragraphMenu)==null?void 0:a.target.kind)===t.DocumentBlockType.TABLE)return;this.hideParagraphMenu(!0);return}if(this._docSkeletonManagerService.getViewModel().getEditArea()===r.DocumentEditArea.BODY&&!this._floatMenuService.floatMenu&&!this._context.unit.getDisabled()){var o;if((o=this._paragraphMenu)!=null&&o.active)return;if(e){this.showParagraphMenu(e);return}if(n){this.showTableMenu(n);return}}this.hideParagraphMenu(!0)};this.disposeWithMe((0,a.combineLatest)([this._docEventManagerService.hoverParagraphRealTime$,this._docEventManagerService.hoverParagraphLeft$,this._docEventManagerService.hoverTableRealTime$??new a.BehaviorSubject(null)]).pipe((0,a.throttleTime)(16,void 0,{leading:!0,trailing:!0})).subscribe(([t,n,r])=>{e(t??n,r)})),this.disposeWithMe(this._docSelectionRenderService.onSelectionStart$.subscribe(()=>{this.hideParagraphMenu(!0)})),this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(({textRanges:e,rectRanges:n})=>{var r;let i=this._getExpandedSelectionState([...e,...n]);(i.hasExpandedTextRange||i.hasRectRange&&((r=this._paragraphMenu)==null?void 0:r.target.kind)!==t.DocumentBlockType.TABLE)&&this.hideParagraphMenu(!0)}));let n=0;this.disposeWithMe(this._context.scene.getViewport(`viewMain`).onScrollAfter$.subscribeEvent(e=>{var t;n!==e.scrollY&&(n=e.scrollY,!((t=this._paragraphMenu)!=null&&t.blockRange)&&(this._isBlockMenuDragging||this.hideParagraphMenu(!0)))})),this.disposeWithMe(this._docEventManagerService.clickCustomRanges$.subscribe(()=>{this._isBlockMenuDragging||this.hideParagraphMenu(!0)})),this.disposeWithMe(this._docSelectionRenderService.onKeydown$.subscribe(e=>{this._isBlockMenuDragging||this._handleSlashMenuKeydown(e)||this.hideParagraphMenu(!0)})),this.disposeWithMe(this._docSelectionRenderService.onInputBefore$.subscribe(e=>{!e||this._isBlockMenuDragging||this._handleSlashMenuInputBefore(e)}))}_handleSlashMenuKeydown(e){return this._shouldOpenSlashMenu(e)?this._openSlashMenu(e):!1}_handleSlashMenuInputBefore(e){return this._shouldOpenSlashMenuFromInput(e)?this._openSlashMenu(e):!1}_openSlashMenu(e){e.event.preventDefault(),e.event.stopPropagation();let t=this._getSlashMenuParagraph(e);if(!t)return!0;this.showParagraphMenu(t);let n=this.activeTarget;return n?(this._slashMenuRequest$.next({anchorRect:this._getSlashMenuAnchorRect(e,t),nonce:++this._slashMenuRequestNonce,target:n}),this._isSlashMenuActive=!0,!0):!0}_shouldOpenSlashMenu(e){let t=e.event;return t.key!==`/`||t.altKey||t.ctrlKey||t.metaKey?!1:this._getCollapsedTextRange(e)!=null}_shouldOpenSlashMenuFromInput(e){let t=e.event;return(e.content??t.data??``)===`/`&&this._getCollapsedTextRange(e)!=null}_getCollapsedTextRange(e){let t=e.activeRange??this._docSelectionManagerService.getActiveTextRange();return t&&(t.collapsed||t.startOffset===t.endOffset)?{...t,collapsed:!0}:null}_getSlashMenuParagraph(e){var t;let n=this._getCollapsedTextRange(e),r=n==null?void 0:n.startOffset,i=((t=this._paragraphMenu)==null?void 0:t.paragraph)??null;return i&&r!=null&&r>=i.paragraphStart&&r<=i.paragraphEnd||i&&r==null?i:r==null?null:[...this._docEventManagerService.paragraphBounds.values()].find(e=>r>=e.paragraphStart&&r<=e.paragraphEnd)??null}_getSlashMenuAnchorRect(e,t){let n=this._getCollapsedTextRange(e);if(!n)return t.firstLine;try{var r;return((r=rp({...n,collapsed:!0,endOffset:n.startOffset},this._context))==null?void 0:r[0])??t.firstLine}catch{return t.firstLine}}showParagraphMenu(e){var t;if(this._hasExpandedSelection()){this.hideParagraphMenu(!0);return}let n=this._buildParagraphMenuTarget(e);if(!n){this.hideParagraphMenu(!0);return}if(((t=this._paragraphMenu)==null?void 0:t.target.key)===n.key)return;this.hideParagraphMenu(!0);let r=n.paragraph??e,i=n.blockRange,o=this._docPopupManagerService.attachPopupToRect(()=>{let t=this._docEventManagerService.findParagraphBoundByIndex(r.startIndex)??r,a=i?Rh(this._docEventManagerService,i,e):t.firstLine??e.firstLine;return n.cellRange?Fh(this._docEventManagerService,t,a):a},{componentKey:Km,direction:`left-center`,onClickOutside:()=>{if(this._isSlashMenuActive){this.hideParagraphMenu(!0);return}this._docSelectionManagerService.textSelection$.pipe((0,a.first)()).subscribe(()=>{this._isCursorInActiveParagraph()||this.hideParagraphMenu(!0)})},zIndex:101},this._context.unitId);this._paragraphMenu={paragraph:r,target:n,blockRange:i,disposable:o,active:!1},this._activeTarget$.next(n)}showTableMenu(e){var n,r;if(this._hasExpandedTextSelection()){this.hideParagraphMenu(!0);return}let i=this._context.unit.getBody(),a=i==null||(n=i.tables)==null?void 0:n.find(t=>t.tableId===e.tableId);if(!a)return;let o={kind:t.DocumentBlockType.TABLE,key:`${t.DocumentBlockType.TABLE}:${a.tableId}`,table:a,icon:`GridIcon`,menuRange:{startOffset:a.startIndex,endOffset:a.endIndex,collapsed:!1},moveRange:{startOffset:a.startIndex,endOffset:a.endIndex},emptyMode:!1,draggable:!0};if(this._shouldKeepCurrentCellMenuForTable(a)||((r=this._paragraphMenu)==null?void 0:r.target.key)===o.key)return;let s=Ph(e),c={rect:e.rect,rects:[e.rect],paragraphStart:a.startIndex,paragraphEnd:a.endIndex,startIndex:a.startIndex,pageIndex:e.pageIndex,firstLine:s};this.hideParagraphMenu(!0);let l=this._docPopupManagerService.attachPopupToRect(()=>Ph(this._docEventManagerService.tableBounds.get(a.tableId)??e),{componentKey:qm,direction:`top-right`,onClickOutside:()=>{this.hideParagraphMenu(!0)},zIndex:101},this._context.unitId);this._paragraphMenu={paragraph:c,target:o,disposable:l,active:!1},this._activeTarget$.next(o)}_shouldKeepCurrentCellMenuForTable(e){var n;let r=(n=this._paragraphMenu)==null?void 0:n.target;return!r||r.kind===t.DocumentBlockType.TABLE||!r.cellRange?!1:r.cellRange.startOffset>=e.startIndex&&r.cellRange.startOffset<=e.endIndex}getDropTargetFromClientPoint(e,t,n){let r=this._context.engine.getCanvasElement().getBoundingClientRect(),i=np(e-r.left,t-r.top,this._context.scene),a=this._context.unit.getBody(),o=a!=null&&a.dataStream?Nh(a.dataStream,n.startOffset):null,s=(o?this._getCellBlockTargets(o):this._getBodyBlockTargets()).filter(e=>e.moveRange.startOffset!==n.startOffset||e.moveRange.endOffset!==n.endOffset).filter(e=>e.moveRange.endOffset<=n.startOffset||e.moveRange.startOffset>=n.endOffset).sort((e,t)=>e.rect.top-t.rect.top||e.rect.left-t.rect.left);if(!s.length)return null;let c=s[0],l=1/0;for(let e of s){let t=(e.rect.top+e.rect.bottom)/2,n=Math.abs(i.y-t);n<l&&(l=n,c=e)}let u=i.y<(c.rect.top+c.rect.bottom)/2,d=u?c.moveRange.startOffset:c.moveRange.endOffset,f=ep({left:c.rect.left,right:c.rect.right,top:u?c.rect.top:c.rect.bottom,bottom:u?c.rect.top:c.rect.bottom},this._context.scene);return{targetOffset:d,rect:{left:r.left+f.left,right:r.left+f.right,top:r.top+f.top,bottom:r.top+f.bottom}}}hideParagraphMenu(e=!1){this._isBlockMenuDragging||this._paragraphMenu&&(this._paragraphMenu.disposable.canDispose()||e)&&(this._paragraphMenu.disposable.dispose(),this._paragraphMenu=null,this._isSlashMenuActive=!1,this._slashMenuRequest$.next(null),this._activeTarget$.next(null))}_buildParagraphMenuTarget(e){var n,r,i,a;let o=this._context.unit.getBody(),s=(o==null?void 0:o.dataStream)??``,c=Nh(s,e.paragraphStart),l=c!=null||Ah(this._context.unit,e.paragraphStart),u=Lh(this._context.unit,e);if(u){let n={...e,paragraphStart:u.startIndex,paragraphEnd:u.endIndex+1,startIndex:u.startIndex,blockRange:u};return{kind:t.DocumentBlockType.BLOCK_RANGE,key:`${t.DocumentBlockType.BLOCK_RANGE}:${u.blockId}`,paragraph:n,blockRange:u,icon:Dh[u.blockType],cellRange:c??void 0,menuRange:{startOffset:u.startIndex,endOffset:u.endIndex+1,collapsed:!1},moveRange:{startOffset:u.startIndex,endOffset:u.endIndex+1},emptyMode:!1,draggable:c!=null||!l}}let d=s.slice(e.paragraphStart,e.paragraphEnd),f=o==null||(n=o.paragraphs)==null?void 0:n.find(t=>t.startIndex===e.startIndex),p=Mh(f==null||(r=f.bullet)==null?void 0:r.listType),m=d.replace(/[\r\n]/g,``)===``&&!!(f!=null&&(i=f.paragraphStyle)!=null&&i.borderBottom),h=o==null||(a=o.customBlocks)==null?void 0:a.find(t=>t.startIndex>=e.paragraphStart&&t.startIndex<=e.paragraphEnd),g=(h==null?void 0:h.blockType)===t.BlockType.CUSTOM&&d.replace(/[\b\r\n]/g,``)===``;return h&&h.blockType===t.BlockType.CUSTOM&&g?{kind:t.DocumentBlockType.CUSTOM_BLOCK,key:`${t.DocumentBlockType.CUSTOM_BLOCK}:${h.blockId}`,paragraph:e,customBlock:h,icon:`TextTypeIcon`,cellRange:c??void 0,menuRange:{startOffset:h.startIndex,endOffset:h.startIndex,collapsed:!0},moveRange:jh(this._context.unit,e,c),emptyMode:!1,draggable:c!=null||!l}:d===`\b`?null:{kind:t.DocumentBlockType.PARAGRAPH,key:`${t.DocumentBlockType.PARAGRAPH}:${e.startIndex}`,paragraph:e,icon:m?`ReduceIcon`:p,cellRange:c??void 0,menuRange:{startOffset:e.paragraphStart,endOffset:e.paragraphStart,collapsed:!0},moveRange:jh(this._context.unit,e,c),emptyMode:!m&&d.replace(/[\r\n]/g,``)===``,draggable:c!=null||!l}}_getBodyBlockTargets(){let e=this._context.unit.getBody();if(!e)return[];let n=e.tables??[],r=e.blockRanges??[],i=[...this._docEventManagerService.paragraphBounds.values()],a=[];for(let e of n){let n=this._docEventManagerService.tableBounds.get(e.tableId);n&&a.push({kind:t.DocumentBlockType.TABLE,key:`${t.DocumentBlockType.TABLE}:${e.tableId}`,table:e,icon:`GridIcon`,menuRange:{startOffset:e.startIndex,endOffset:e.endIndex,collapsed:!1},moveRange:{startOffset:e.startIndex,endOffset:e.endIndex},emptyMode:!1,draggable:!0,rect:n.rect})}for(let e of r){let n=Ih(i.filter(t=>Math.max(t.paragraphStart,e.startIndex)<=Math.min(t.paragraphEnd,e.endIndex)).map(e=>e.rect));n&&a.push({kind:t.DocumentBlockType.BLOCK_RANGE,key:`${t.DocumentBlockType.BLOCK_RANGE}:${e.blockId}`,blockRange:e,icon:Dh[e.blockType],menuRange:{startOffset:e.startIndex,endOffset:e.endIndex+1,collapsed:!1},moveRange:{startOffset:e.startIndex,endOffset:e.endIndex+1},emptyMode:!1,draggable:!0,rect:n})}for(let e of i){if(n.some(t=>e.paragraphStart>t.startIndex&&e.paragraphStart<t.endIndex)||r.some(t=>Math.max(e.paragraphStart,t.startIndex)<=Math.min(e.paragraphEnd,t.endIndex)))continue;let t=this._buildParagraphMenuTarget(e);t&&a.push({...t,rect:e.rect})}return a}_getCellBlockTargets(e){let n=this._context.unit.getBody();if(!n)return[];let r=n.blockRanges??[],i=[...this._docEventManagerService.paragraphBounds.values()].filter(t=>t.paragraphStart>e.startOffset&&t.paragraphStart<e.endOffset),a=[];for(let n of r){if(n.startIndex<=e.startOffset||n.endIndex>=e.endOffset)continue;let r=Ih(i.filter(e=>Math.max(e.paragraphStart,n.startIndex)<=Math.min(e.paragraphEnd,n.endIndex)).map(e=>e.rect));r&&a.push({kind:t.DocumentBlockType.BLOCK_RANGE,key:`${t.DocumentBlockType.BLOCK_RANGE}:${n.blockId}`,blockRange:n,icon:Dh[n.blockType],cellRange:e,menuRange:{startOffset:n.startIndex,endOffset:n.endIndex+1,collapsed:!1},moveRange:{startOffset:n.startIndex,endOffset:n.endIndex+1},emptyMode:!1,draggable:!0,rect:r})}for(let e of i){if(r.some(t=>Math.max(e.paragraphStart,t.startIndex)<=Math.min(e.paragraphEnd,t.endIndex)))continue;let t=this._buildParagraphMenuTarget(e);t&&a.push({...t,rect:e.rect})}return a}};kh=A([k(1,(0,t.Inject)(n.DocSelectionManagerService)),k(2,(0,t.Inject)(Cp)),k(3,(0,t.Inject)(ip)),k(4,(0,t.Inject)(n.DocSkeletonManagerService)),k(5,(0,t.Inject)(Th)),k(6,(0,t.Inject)(J))],kh);function Ah(e,t){var n;return(((n=e.getBody())==null?void 0:n.tables)??[]).some(e=>t>e.startIndex&&t<e.endIndex)}function jh(e,n,r){let i=e.getBody(),a=i?(0,t.getParagraphContentStartOffset)(i,n):0;return{startOffset:r?Math.max(a,r.startOffset+1):a,endOffset:n.startIndex+1}}function Mh(e){if(e)return Oh[e]}function Nh(e,n){let r=e.lastIndexOf(t.DataStreamTreeTokenType.TABLE_CELL_START,Math.max(0,n));if(r<0||e.lastIndexOf(t.DataStreamTreeTokenType.TABLE_CELL_END,Math.max(0,n))>r)return null;let i=e.indexOf(t.DataStreamTreeTokenType.TABLE_CELL_END,r+1);return i<0||n>i?null:{startOffset:r,endOffset:i}}function Ph(e){let t=e.rect.left-4,n=e.rect.top-4;return{left:t,right:t,top:n,bottom:n}}function Fh(e,t,n){let r=t;if(!r.tableId||r.rowIndex==null||r.colIndex==null)return n;let i=e.findTableCellBound(r.tableId,r.rowIndex,r.colIndex,r.pageIndex);if(!i)return n;let a=r.colIndex===0?20:10,o=i.rect.left-a;return{...n,left:o,right:o}}function Ih(e){return e.length?e.reduce((e,t)=>({left:Math.min(e.left,t.left),right:Math.max(e.right,t.right),top:Math.min(e.top,t.top),bottom:Math.max(e.bottom,t.bottom)})):null}function Lh(e,t){var n;return(((n=e.getBody())==null?void 0:n.blockRanges)??[]).find(e=>Math.max(t.paragraphStart,e.startIndex)<=Math.min(t.paragraphEnd,e.endIndex))}function Rh(e,t,n){var r;let i=e.findParagraphBoundsInRange(t.startIndex,t.endIndex).sort((e,t)=>e.firstLine.top-t.firstLine.top||e.firstLine.left-t.firstLine.left),a=((r=i[0])==null?void 0:r.firstLine)??n.firstLine,o=Math.min(...(i.length?i:[n]).map(e=>e.firstLine.left)),s=a.top;return{...a,left:o,right:o,top:s,bottom:s}}function zh(e,t=212,n=8,r={}){let{anchorRight:i=e,direction:a=`ltr`,viewportWidth:o=1/0}=r,s=e-t>=n,c=i+t+n<=o;return a===`rtl`?c||!s?`right`:`left`:s||!c?`left`:`right`}function Bh(e){return e===`TextTypeIcon`?`univer-size-3`:`univer-size-4`}function Vh(e,t){return e.canMoveBlock(t)}function Hh(e){switch(e){case t.NamedStyleType.HEADING_1:return`H1Icon`;case t.NamedStyleType.HEADING_2:return`H2Icon`;case t.NamedStyleType.HEADING_3:return`H3Icon`;case t.NamedStyleType.HEADING_4:return`H4Icon`;case t.NamedStyleType.HEADING_5:return`H5Icon`;case t.NamedStyleType.TITLE:return`TitleTypeIcon`;case t.NamedStyleType.SUBTITLE:return`SubtitleTypeIcon`;case t.NamedStyleType.NORMAL_TEXT:case t.NamedStyleType.NAMED_STYLE_TYPE_UNSPECIFIED:default:return`TextTypeIcon`}}function Uh(e,t=800){let n=null,r=()=>{n!=null&&(window.clearTimeout(n),n=null)};return{schedule(){r(),n=window.setTimeout(()=>{n=null,e()},t)},cancel:r,openNow(){r(),e()}}}function Wh(e,t){e==null||e.setParagraphMenuActive(t)}function Gh(e,t){return t?e.slice(t.paragraphStart,t.paragraphEnd).replace(/[\r\n]/g,``)===``:!1}function Kh(e){if(!e)return null;let t=e.blockRange;return t?{startOffset:t.startIndex,endOffset:t.endIndex+1,collapsed:!1,segmentId:e.segmentId}:{startOffset:e.paragraphStart,endOffset:e.paragraphStart,collapsed:!0,segmentId:e.segmentId}}function qh(e,t,n=12,r=8){if(e)return{left:t===`left`?e.left-n:e.right-n,top:e.top-r,width:n*2,height:e.bottom-e.top+r*2}}let Jh={[Pa.id]:t.NamedStyleType.HEADING_1,[Fa.id]:t.NamedStyleType.HEADING_2,[Ia.id]:t.NamedStyleType.HEADING_3,[La.id]:t.NamedStyleType.HEADING_4,[Ra.id]:t.NamedStyleType.HEADING_5,[za.id]:t.NamedStyleType.NORMAL_TEXT,[Ba.id]:t.NamedStyleType.TITLE,[Va.id]:t.NamedStyleType.SUBTITLE},Yh={[t.NamedStyleType.HEADING_1]:Pa.id,[t.NamedStyleType.HEADING_2]:Fa.id,[t.NamedStyleType.HEADING_3]:Ia.id,[t.NamedStyleType.HEADING_4]:La.id,[t.NamedStyleType.HEADING_5]:Ra.id,[t.NamedStyleType.NORMAL_TEXT]:za.id,[t.NamedStyleType.TITLE]:Ba.id,[t.NamedStyleType.SUBTITLE]:Va.id};function Xh(e){return Yh[e??t.NamedStyleType.NORMAL_TEXT]??za.id}function Zh(e){return e===t.NamedStyleType.TITLE?[La.id,Ra.id,Va.id]:e===t.NamedStyleType.SUBTITLE?[La.id,Ra.id,Ba.id]:e===t.NamedStyleType.HEADING_5?[La.id,Ba.id,Va.id]:[Ra.id,Ba.id,Va.id]}let Qh={OrderIcon:_a.id,UnorderIcon:ma.id,TodoListDoubleIcon:ha.id},$h=[t.DocumentBlockRangeType.CODE,t.DocumentBlockRangeType.QUOTE,t.DocumentBlockRangeType.CALLOUT];function eg(e){return e?`docs-${e}.command.insert`:void 0}let tg=new Set($h.map(e=>eg(e))),ng=new Set([Tn.id,ma.id,_a.id,ha.id,Wn.id,qi.id,Yi.id,$i.id,ta.id,...tg,Ca.id,wa.id,Ta.id,Ea.id]),rg=new Set([Sn.id,wn.id,Be.id]),ig=new Set([qi.id,Yi.id,$i.id,ta.id]);function ag(e){return!!e&&ig.has(e)}function og(e,t){let n=e.commandId??e.id??(typeof e.label==`string`?e.label:void 0);if(n&&t&&n in Jh)return{commandId:Aa.id,params:{value:Jh[n],textRanges:[t]}};if(n&&t&&(n===ma.id||n===_a.id||n===ha.id))return{commandId:n,params:{docRange:[t]}};if(n===Wn.id&&t)return{commandId:n,params:{insertRange:t}};let r=typeof e.params==`function`?e.params():e.params,i=e.value===void 0?r:{value:e.value};return{commandId:n,params:i&&typeof i==`object`?i:void 0}}function sg(e,t){let n=e.commandId??e.id??(typeof e.label==`string`?e.label:void 0);return n?og({...e,commandId:n,id:e.id??n},t):{}}function cg(e,t,n,r){return e!==Be.id||(n==null?void 0:n.kind)!==`blockRange`||!n.blockRange?t:{...t??{},unitId:r,blockRange:n.blockRange}}function lg(e,t){return(e==null?void 0:e.kind)===`table`?Fl:t?Il:(e==null?void 0:e.icon)===`ReduceIcon`?Rl:Ll}function ug(e,t){if((e==null?void 0:e.kind)===`blockRange`){var n;let t=eg((n=e.blockRange)==null?void 0:n.blockType);return t&&tg.has(t)?[t]:[]}let r=[Xh(t)],i=e!=null&&e.icon?Qh[e.icon]:void 0;return i&&r.push(i),r}function dg(e,n,r){var i;if(e===`doc.menu.paragraph-t.insert`)return[];let a=[...Zh(r)],o=(n==null?void 0:n.kind)===`blockRange`?(i=n.blockRange)==null?void 0:i.blockType:void 0;return(n==null?void 0:n.kind)!==`blockRange`&&a.push(Tn.id),o===t.DocumentBlockRangeType.CALLOUT?a.push(eg(t.DocumentBlockRangeType.CODE),eg(t.DocumentBlockRangeType.QUOTE)):(o===t.DocumentBlockRangeType.QUOTE||o===t.DocumentBlockRangeType.CODE)&&a.push(eg(t.DocumentBlockRangeType.CALLOUT)),a}function fg(e,n){return e.dataStream[n.endIndex]===t.DataStreamTreeTokenType.BLOCK_END?n.endIndex:e.dataStream[n.endIndex+1]===t.DataStreamTreeTokenType.BLOCK_END?n.endIndex+1:n.endIndex}function pg(e,t,n){let r=t+n;return e==null?void 0:e.map(e=>e.startIndex>=t&&e.startIndex<r?null:e.startIndex>=r?{...e,startIndex:e.startIndex-n}:e).filter(e=>e!=null)}function mg(e,t,n){let r=t+n;return e==null?void 0:e.map(e=>e.st>=t&&e.ed<r?null:e.st>=r?{...e,st:e.st-n,ed:e.ed-n}:e.ed>=t?{...e,st:e.st<t?e.st:t,ed:Math.max(t,e.ed-n)}:e).filter(e=>e!=null)}function hg(e,t,n){let r=t+n;return e==null?void 0:e.map(e=>e.startIndex>=t&&e.endIndex<r?null:e.startIndex>=r?{...e,startIndex:e.startIndex-n,endIndex:e.endIndex-n}:e.endIndex>=t?{...e,startIndex:e.startIndex<t?e.startIndex:t,endIndex:Math.max(t,e.endIndex-n)}:e).filter(e=>e!=null)}function gg(e,t,n){let r=n-t;e.dataStream=`${e.dataStream.slice(0,t)}${e.dataStream.slice(n)}`,e.paragraphs=pg(e.paragraphs,t,r),e.sectionBreaks=pg(e.sectionBreaks,t,r),e.customBlocks=pg(e.customBlocks,t,r),e.textRuns=mg(e.textRuns,t,r),e.tables=hg(e.tables,t,r),e.customRanges=hg(e.customRanges,t,r),e.customDecorations=hg(e.customDecorations,t,r),e.blockRanges=hg(e.blockRanges,t,r)}function _g(e,n){let r={...e};if(n===t.DocumentBlockRangeType.QUOTE)return delete r.indentStart,delete r.spaceAbove,delete r.spaceBelow,r;if(n===t.DocumentBlockRangeType.CODE){var i,a;return delete r.indentStart,delete r.indentEnd,delete r.spaceAbove,delete r.spaceBelow,((i=r.textStyle)==null?void 0:i.ff)===`monospace`&&((a=r.textStyle)==null?void 0:a.fs)===12&&delete r.textStyle,r}return n===t.DocumentBlockRangeType.CALLOUT?(delete r.indentStart,delete r.indentEnd,delete r.spaceAbove,delete r.spaceBelow,r):r}function vg(e,n){var r;let i=t.Tools.deepClone(e),a=fg(i,n);return(i.paragraphs??[]).filter(e=>e.startIndex>n.startIndex&&e.startIndex<a).forEach(e=>{e.paragraphStyle=_g(e.paragraphStyle,n.blockType)}),gg(i,a,a+1),gg(i,n.startIndex,n.startIndex+1),i.blockRanges=(r=i.blockRanges)==null?void 0:r.filter(e=>e.blockId!==n.blockId),{body:i,range:{startOffset:n.startIndex,endOffset:Math.max(n.startIndex,a-1),collapsed:!1}}}let yg=[`paragraphs`,`sectionBreaks`,`textRuns`,`customRanges`,`customDecorations`,`customBlocks`,`tables`,`columnGroups`,`blockRanges`];function bg(e,n,r){let i=fg(e,r),a=new t.TextX;a.retain(r.startIndex),a.delete(1),a.retain(Math.max(0,i-r.startIndex-1)),a.delete(1);let o=t.JSONX.getInstance().editOp(a.serialize(),[`body`]),s=t.Tools.deepClone(e);t.TextX.apply(s,a.serialize());let c=[o];return xg(s,n,c),c.reduce((e,n)=>t.JSONX.compose(e,n),null)}function xg(e,n,r){for(let i of yg)Sg(t.JSONX.getInstance(),[`body`,i],e[i],n[i],r)}function Sg(e,n,r,i,a){if(!(Tg(r,i)||t.Tools.diffValue(r,i))){if(r==null){a.push(e.insertOp(n,i));return}if(i==null){a.push(e.removeOp(n,r));return}if(Array.isArray(r)&&Array.isArray(i)){Cg(e,n,r,i,a);return}if(wg(r)&&wg(i)){new Set([...Object.keys(r),...Object.keys(i)]).forEach(t=>Sg(e,[...n,t],r[t],i[t],a));return}a.push(e.replaceOp(n,r,i))}}function Cg(e,n,r,i,a){if(r.length===i.length){r.forEach((t,r)=>Sg(e,[...n,r],t,i[r],a));return}let o=0;for(;o<r.length&&o<i.length&&t.Tools.diffValue(r[o],i[o]);)o++;let s=r.length-1,c=i.length-1;for(;s>=o&&c>=o&&t.Tools.diffValue(r[s],i[c]);)s--,c--;for(let t=s;t>=o;t--)a.push(e.removeOp([...n,t],r[t]));for(let t=o;t<=c;t++)a.push(e.insertOp([...n,t],i[t]))}function wg(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Tg(e,t){return e==null&&Array.isArray(t)&&t.length===0||t==null&&Array.isArray(e)&&e.length===0}function Eg(e,t){return e?{...e.menuRange,segmentId:t==null?void 0:t.segmentId}:Kh(t)}function Dg(e,t){return(e==null?void 0:e.kind)===`blockRange`?Ag(e,t):t?{startOffset:t.paragraphStart,endOffset:t.paragraphEnd,collapsed:!1,segmentId:t.segmentId}:Eg(e,t)}function Og(e,t,n){return e===Tn.id?t:e&&ng.has(e)?n??t:t??n}function kg(e,t,n){e==null||e.hideParagraphMenu(!0),n(),t.focus()}function Ag(e,t){if((e==null?void 0:e.kind)!==`blockRange`)return Eg(e,t);let n=e.blockRange;return n?{startOffset:n.startIndex,endOffset:n.endIndex+1,collapsed:!1,segmentId:t==null?void 0:t.segmentId}:Eg(e,t)}function jg(e,t,n){return(t==null?void 0:t.kind)===`blockRange`?e===Tn.id?{startOffset:t.moveRange.endOffset,endOffset:t.moveRange.endOffset,collapsed:!0,segmentId:n==null?void 0:n.segmentId}:e===Sn.id||e===wn.id?Ag(t,n??void 0):null:null}function Mg({popup:e,tableBlockOnly:o=!1}){var u,d;let[f,p]=(0,c.useState)(!1),[m,h]=(0,c.useState)(`pointer`),[g,_]=(0,c.useState)(null),[v,y]=(0,c.useState)(null),[b,x]=(0,c.useState)(`left`),S=(0,c.useRef)(null),C=(0,c.useRef)(null),w=(0,c.useRef)(null),T=(0,c.useRef)(!1),E=(0,c.useRef)(()=>void 0),D=(0,c.useRef)(Uh(()=>E.current())),O=(0,i.useDependency)(t.ICommandService),k=(0,i.useDependency)(t.LocaleService),A=(0,i.useDependency)(t.ThemeService),j=(0,i.useDependency)(n.DocSelectionManagerService),M=(0,i.useObservable)(k.direction$,`ltr`),N=(0,i.useDependency)(hn),P=(0,i.useDependency)(n.DocContentInsertService),F=(0,i.useDependency)(n.DocBlockMoveValidatorService),I=(0,i.useDependency)(i.ILayoutService),L=(0,i.useDependency)(i.IconManager),R=(0,c.useRef)(null),z=(0,c.useRef)(!1),B=(0,c.useRef)(null),V=(0,c.useRef)(0),ee=(0,i.useDependency)(r.IRenderManagerService),H=(0,i.useDependency)(t.IUniverInstanceService),U=ee.getRenderUnitById(e.unitId),W=H.getUnit(e.unitId,t.UniverInstanceType.UNIVER_DOC),G=U==null?void 0:U.with(kh),te=U==null?void 0:U.with(Cp),ne=(0,i.useObservable)(G==null?void 0:G.activeTarget$),re=(0,i.useObservable)(G==null?void 0:G.slashMenuRequest$),ie=(0,i.useObservable)(te==null?void 0:te.hoverParagraph$),ae=(0,i.useObservable)(te==null?void 0:te.hoverParagraphLeft$),oe=ne??(G==null?void 0:G.activeTarget),K=o?(oe==null?void 0:oe.kind)===`table`?oe:null:(oe==null?void 0:oe.kind)===`table`?null:oe,q=(K==null?void 0:K.paragraph)??(G==null?void 0:G.activeParagraph)??ie??ae,se=q==null?void 0:q.startIndex,ce=(W==null||(u=W.getBody())==null?void 0:u.dataStream)??``,le=(0,c.useMemo)(()=>{var e;return W==null||(e=W.getBody())==null||(e=e.paragraphs)==null?void 0:e.find(e=>e.startIndex===se)},[W,se]),ue=(K==null?void 0:K.emptyMode)??Gh(ce,q),de=le==null||(d=le.paragraphStyle)==null?void 0:d.namedStyleType,fe=(K==null?void 0:K.icon)??Hh(de),pe=L.get(fe),me=(0,c.useMemo)(()=>lg(K,ue),[K,ue]),he=(0,c.useMemo)(()=>ug(K,de),[K,de]),ge=(0,c.useMemo)(()=>(K==null?void 0:K.kind)===`table`?[]:dg(me,K,de),[K,de,me]),_e=(0,c.useMemo)(()=>new a.BehaviorSubject({left:0,right:0,top:0,bottom:0}),[]),ve=()=>{var e,t;let n=(e=R.current)==null?void 0:e.getBoundingClientRect(),r=((n==null?void 0:n.left)??0)-4,i=(n==null?void 0:n.right)??0,a=((t=R.current)==null||(t=t.ownerDocument.defaultView)==null?void 0:t.innerWidth)??window.innerWidth;x(zh(r,212,8,{anchorRight:i,direction:M,viewportWidth:a}));let o={left:r,right:i,top:(n==null?void 0:n.top)??0,bottom:(n==null?void 0:n.bottom)??0};_(o),_e.next(o)},ye=()=>{p(!1),h(`pointer`),S.current=null,Wh(G,!1)},be=()=>{B.current!=null&&(window.clearTimeout(B.current),B.current=null)},xe=()=>{be(),B.current=window.setTimeout(()=>{!z.current&&!T.current&&ye()},240)};E.current=(e=`pointer`)=>{be();let t=(G==null?void 0:G.activeTarget)??ne;Wh(G,!0);let n=t?{...t.menuRange,segmentId:q==null?void 0:q.segmentId}:Kh(q);S.current=n,ve(),h(e),p(!0)};let Se=e=>{var t;be(),S.current={...e.target.menuRange,segmentId:((t=e.target.paragraph)==null?void 0:t.segmentId)??(q==null?void 0:q.segmentId)},x(`vertical`),_(e.anchorRect),_e.next(e.anchorRect),h(`slash`),p(!0)},Ce=()=>{be(),D.current.schedule()},we=()=>{D.current.cancel()},Te=e=>{e&&j.replaceDocRanges([e],void 0,!1)},Ee=()=>(j.getTextRanges()??[]).map(e=>({...e})),De=e=>{e&&j.replaceDocRanges(e,void 0,!1)},Oe=(e,t)=>{let n=sg(e,t);return n.commandId?O.executeCommand(n.commandId,n.params):!1},ke=async()=>{let t=(G==null?void 0:G.activeTarget)??ne;if(!t||t.kind!==`blockRange`||!t.blockRange||!(W!=null&&W.getBody()))return null;let r=W.getBody(),{body:i,range:a}=vg(r,t.blockRange),o=bg(r,i,t.blockRange),s=(q==null?void 0:q.segmentId)??``;if(!await O.executeCommand(n.RichTextEditingMutation.id,{unitId:e.unitId,actions:o,textRanges:[{...a,segmentId:s}]}))return null;let c={...a,segmentId:s};return Te(c),S.current=c,c},Ae=async n=>{let r=(G==null?void 0:G.activeTarget)??ne,i=Eg(r,q??void 0),a=Ag(r,q??void 0),o=Dg(r,q??void 0),s=n.commandId??n.id??(typeof n.label==`string`?n.label:void 0),c=typeof n.params==`function`?n.params():n.params;if(!s)return;if(s===`doc.menu.paragraph-t.reset-colors`){o&&Te(o),await O.executeCommand(qi.id,{value:A.getColorFromTheme(`gray.900`)}),await O.executeCommand($i.id,{value:A.getColorFromTheme(`primary.600`)}),kg(G,I,ye);return}if(s===`doc.menu.paragraph-t.indent.increase`||s===`doc.menu.paragraph-t.indent.decrease`){var l;o&&Te(o);let e=(le==null||(l=le.paragraphStyle)==null||(l=l.indentFirstLine)==null?void 0:l.v)??0,t=s===`doc.menu.paragraph-t.indent.increase`?20:-20;await O.executeCommand(im.id,{paragraph:{indentFirstLine:{v:Math.max(0,e+t)}}}),kg(G,I,ye);return}if(s===`doc.menu.paragraph-t.insert-below.command`){if(!(r!=null&&r.moveRange))return;P.setInsertRange({unitId:e.unitId,startOffset:r.moveRange.endOffset,endOffset:r.moveRange.endOffset,segmentId:q==null?void 0:q.segmentId});let t=typeof(c==null?void 0:c.commandId)==`string`?c.commandId:void 0;t&&await O.executeCommand(t),kg(G,I,ye);return}if((r==null?void 0:r.kind)===`blockRange`){var u;let e=eg((u=r.blockRange)==null?void 0:u.blockType),i=jg(s,r,q);if(i){s===Sn.id?await N.copy(t.SliceBodyType.copy,[i]):s===wn.id?await N.cut([i]):(Te(i),await Oe(n,i)),kg(G,I,ye);return}if(s===e){await ke(),kg(G,I,ye);return}if(s===za.id||s in Jh||s===ma.id||s===_a.id||s===ha.id){let e=await ke();s!==za.id&&await Oe({...n,commandId:s,params:c},e),kg(G,I,ye);return}if(tg.has(s)){a&&Te(a),await Oe({...n,commandId:s,params:c},a),kg(G,I,ye);return}}if(s===Xh(de)&&s!==za.id){i&&Te(i),await Oe({id:za.id},i),kg(G,I,ye);return}let d=ag(s)?Ee():null;s&&Fg(s,n)&&r!=null&&r.moveRange?P.setInsertRange({unitId:e.unitId,startOffset:r.moveRange.endOffset,endOffset:r.moveRange.endOffset,segmentId:(i==null?void 0:i.segmentId)??(q==null?void 0:q.segmentId)??``}):ng.has(s)&&!rg.has(s)&&Te(Og(s,i,o));try{await Oe({...n,commandId:s,params:cg(s,c,r,e.unitId)},Og(s,i,o))}finally{De(d)}kg(G,I,ye)},je=f&&(b===`left`||b===`right`)?qh(g,b):void 0,Me=m===`slash`?Il:me;return(0,c.useEffect)(()=>()=>{B.current!=null&&(window.clearTimeout(B.current),B.current=null),D.current.cancel(),Wh(G,!1)},[]),(0,c.useEffect)(()=>{!re||V.current>=re.nonce||(V.current=re.nonce,D.current.cancel(),be(),z.current=!1,Se(re))},[re]),K?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{"data-u-comp":`paragraph-menu`,ref:R,className:(0,s.clsx)(`univer-mr-1 univer-inline-flex univer-h-7 univer-cursor-pointer univer-items-center univer-gap-1 univer-rounded-md univer-border univer-border-gray-200 univer-bg-gray-0 univer-px-2 univer-py-0 univer-shadow-sm univer-transition-colors hover:univer-bg-gray-50 hover:univer-shadow-md dark:!univer-border-gray-700 dark:!univer-bg-gray-900 dark:hover:!univer-bg-gray-800`,{"univer-bg-gray-100 univer-shadow-md dark:!univer-bg-gray-800":f}),onMouseEnter:t=>{var n;(n=e.onPointerEnter)==null||n.call(e,t),Wh(G,!0),z.current=!0,Ce()},onMouseLeave:()=>{z.current=!1,Wh(G,!1),we(),xe()},onClick:e=>{e.preventDefault(),e.stopPropagation(),z.current=!0,D.current.openNow()},children:[(0,l.jsx)(pe,{className:(0,s.clsx)(Bh(fe),`univer-shrink-0 univer-text-gray-700 dark:!univer-text-gray-0`)}),(K==null?void 0:K.draggable)&&(0,l.jsx)(`button`,{type:`button`,className:`univer-group univer-flex univer-h-4 univer-w-2.5 univer-cursor-grab univer-items-center univer-justify-center univer-border-none univer-bg-transparent univer-p-0 active:univer-cursor-grabbing`,"aria-label":k.t(`docs-ui.doc.blockMenu.dragBlock`),title:k.t(`docs-ui.doc.blockMenu.dragBlock`),onPointerDown:t=>{var n,r;let i=(G==null?void 0:G.activeTarget)??ne,a=i==null?void 0:i.moveRange;if(!a||!(i!=null&&i.draggable))return;t.preventDefault(),t.stopPropagation(),(n=(r=t.currentTarget).setPointerCapture)==null||n.call(r,t.pointerId),be(),z.current=!0,T.current=!0,G==null||G.setBlockMenuDragging(!0),w.current=a,C.current=null,y(null);let o=t.pointerId,s=e=>{if(e.pointerId!==o)return;e.preventDefault();let t=w.current;if(!t)return;let n=G==null?void 0:G.getDropTargetFromClientPoint(e.clientX,e.clientY,t);C.current=(n==null?void 0:n.targetOffset)??null,y((n==null?void 0:n.rect)??null)},c=t=>{window.removeEventListener(`pointermove`,s),window.removeEventListener(`pointerup`,l),window.removeEventListener(`pointercancel`,u),window.removeEventListener(`blur`,d);let n=w.current,r=C.current;w.current=null,C.current=null,T.current=!1,G==null||G.setBlockMenuDragging(!1),y(null),t&&n&&r!=null&&Vh(F,{unitId:e.unitId,sourceRange:n,targetOffset:r})&&O.executeCommand(Dn.id,{unitId:e.unitId,sourceRange:n,targetOffset:r})},l=e=>{e.pointerId===o&&(e.preventDefault(),c(!0))},u=e=>{e.pointerId===o&&c(!1)},d=()=>{c(!1)};window.addEventListener(`pointermove`,s),window.addEventListener(`pointerup`,l),window.addEventListener(`pointercancel`,u),window.addEventListener(`blur`,d,{once:!0})},children:(0,l.jsx)(Lg,{})})]}),f&&je&&(0,l.jsx)(`div`,{"aria-hidden":`true`,className:`univer-fixed univer-z-[1019] univer-bg-transparent`,style:je,onMouseEnter:t=>{var n;(n=e.onPointerEnter)==null||n.call(e,t),Wh(G,!0),z.current=!0,be()},onMouseLeave:()=>{z.current=!1,Wh(G,!1),xe()}}),f&&(0,l.jsx)(i.RectPopup,{portal:!0,anchorRect$:_e,direction:b,children:(0,l.jsx)(`section`,{onMouseEnter:t=>{var n;(n=e.onPointerEnter)==null||n.call(e,t),Wh(G,!0),z.current=!0,be()},onMouseLeave:()=>{z.current=!1,Wh(G,!1),xe()},children:(0,l.jsx)(i.ContextMenuPanel,{className:`univer-w-[212px]`,menuType:Me,flowQuickGroups:!0,activeItemIds:(K==null?void 0:K.kind)===`table`?void 0:he,hiddenItemIds:m===`slash`||(K==null?void 0:K.kind)===`table`?void 0:ge,autoFocus:m===`slash`,autoFocusTarget:m===`slash`?`container`:void 0,suppressHoverUntilPointerMove:m===`slash`,onMenuPointerEnter:()=>{Wh(G,!0),z.current=!0,be()},onMenuPointerLeave:()=>{z.current=!1,Wh(G,!1),xe()},onCancel:()=>{kg(G,I,ye)},onOptionSelect:async e=>{let n=S.current??Kh(q),{commandId:r,params:i}=og(e,n),a=(G==null?void 0:G.activeTarget)??ne;if((a==null?void 0:a.kind)===`table`&&r&&n){let o={...n,segmentId:n.segmentId??``,collapsed:!1},s={startOffset:a.moveRange.endOffset,endOffset:a.moveRange.endOffset,collapsed:!0,segmentId:n.segmentId??``};if(r===xn.id||r===xn.name){await N.copy(t.SliceBodyType.copy,[o]),kg(G,I,ye);return}if(r===Tn.id){j.replaceDocRanges([s],void 0,!1),await O.executeCommand(Tn.id),kg(G,I,ye);return}r===$a.id?j.replaceDocRanges([o],void 0,!1):(e.id===`doc.menu.insert-bellow`||r!==`doc.menu.insert-bellow`)&&j.replaceDocRanges([s],void 0,!1),O&&r&&O.executeCommand(r,r===$a.id?{...i,targetRange:o}:i),kg(G,I,ye);return}await Ae(e)}})})}),v&&(0,l.jsx)(`div`,{className:`univer-pointer-events-none univer-fixed univer-z-[10000] univer-h-0.5 univer-rounded-full univer-bg-primary-600`,style:{left:v.left,top:v.top,width:Math.max(60,v.right-v.left)}})]}):null}let Ng=({popup:e})=>(0,l.jsx)(Mg,{popup:e}),Pg=({popup:e})=>(0,l.jsx)(Mg,{popup:e,tableBlockOnly:!0});function Fg(e,t){if(t.id===`doc.menu.insert-bellow`||typeof t.id==`string`&&t.id.toLowerCase().includes(`below`))return!0;let n=e.toLowerCase();return n.includes(`insert`)&&(n.includes(`below`)||n.includes(`bellow`))||n.includes(`insert`)&&n.includes(`image`)||n.includes(`table`)&&n.includes(`create`)?!0:n===`doc.command.create-table`||n===`doc.operation.create-table`||n===`doc.menu.paragraph-t.insert-below.command`}let Ig=[`top-left`,`top-right`,`middle-left`,`middle-right`,`bottom-left`,`bottom-right`];function Lg(){return(0,l.jsx)(`span`,{className:`univer-grid univer-h-3.5 univer-w-2 univer-grid-cols-2 univer-place-items-center univer-gap-x-0.5 univer-gap-y-px`,"aria-hidden":`true`,children:Ig.map(e=>(0,l.jsx)(`span`,{className:`univer-size-0.5 univer-rounded-full univer-bg-gray-400 univer-transition-colors group-hover:univer-bg-gray-500 dark:!univer-bg-gray-500 dark:group-hover:!univer-bg-gray-300`},e))})}function Rg(e){let t=e[0];return e.every(e=>e===t)?t:void 0}function zg(e){var t;return((t=e.columnProperties)==null?void 0:t.length)||1}function Bg(e){var t;return((t=e.columnProperties)==null||(t=t[0])==null?void 0:t.paddingEnd)??18}function Vg(e,n){return{columnCount:Rg(e.map(zg)),columnGap:Rg(e.map(Bg)),separatorType:Rg(e.map(e=>e.columnSeparatorType??t.ColumnSeparatorType.NONE)),sectionType:Rg(e.map(e=>e.sectionType??t.SectionType.SECTION_TYPE_UNSPECIFIED)),pageWidth:Rg(e.map(e=>{var t,r;return((t=e.pageSize)==null?void 0:t.width)??((r=n.pageSize)==null?void 0:r.width)})),pageHeight:Rg(e.map(e=>{var t,r;return((t=e.pageSize)==null?void 0:t.height)??((r=n.pageSize)==null?void 0:r.height)})),pageOrient:Rg(e.map(e=>e.pageOrient??n.pageOrient)),marginTop:Rg(e.map(e=>e.marginTop??n.marginTop??0)),marginBottom:Rg(e.map(e=>e.marginBottom??n.marginBottom??0)),marginLeft:Rg(e.map(e=>e.marginLeft??n.marginLeft??0)),marginRight:Rg(e.map(e=>e.marginRight??n.marginRight??0)),pageNumberStart:Rg(e.map(e=>e.pageNumberStart??n.pageNumberStart??1))}}function Hg(e,t,r){return e.map(e=>{let i=`columnCount`in r?r.columnCount:zg(e),a=`columnGap`in r?r.columnGap:Bg(e);return{sectionId:e.sectionId,config:{columnProperties:(0,n.createSectionColumnProperties)(t,e,i,a)}}})}function Ug(e,n,r){return e.map(e=>{let i=e.pageOrient??n.pageOrient??t.PageOrientType.PORTRAIT,a=e.pageSize??n.pageSize;return{sectionId:e.sectionId,config:{pageOrient:r,...i!==r&&(a==null?void 0:a.width)!=null&&a.height!=null?{pageSize:{width:a.height,height:a.width}}:{}}}})}function Wg(e,t){let r=e.getBody();if(!r||t.length===0||t.some(e=>!!e.segmentId))return[];let i=(0,n.getTopLevelSectionBreaks)(r);return i.filter((e,n)=>{let r=n===0?0:i[n-1].startIndex+1;return t.some(t=>{let n=Math.min(t.startOffset,t.endOffset),i=Math.max(t.startOffset,t.endOffset);return n<=e.startIndex&&i>=r})})}function Gg(e,t,n,r){let i=n.findIndex(e=>e.sectionId===r);!t||i<0||e.navigateToSectionEnd(t.getUnitId(),i===0?0:n[i-1].startIndex+1,n[i].startIndex)}function Kg(){let e=(0,i.useDependency)(t.ICommandService),r=(0,i.useDependency)(t.IUniverInstanceService),o=(0,i.useDependency)(n.DocSelectionManagerService),s=(0,i.useDependency)($o),l=(0,i.useObservable)((0,c.useMemo)(()=>r.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC),[r])),u=()=>(l==null?void 0:l.getDocumentStyle().documentFlavor)===t.DocumentFlavor.TRADITIONAL?Wg(l,o.getDocRanges()):[],d=(0,i.useObservable)(l?()=>(0,a.combineLatest)([o.textSelection$.pipe((0,a.startWith)(void 0)),l.change$.pipe((0,a.startWith)(void 0))]).pipe((0,a.map)(u)):null,u(),!1,[l,o]),f=(l==null?void 0:l.getDocumentStyle())??{},p=Vg(d,f),m=l==null?void 0:l.getBody(),h=(l==null?void 0:l.getDocumentStyle().documentFlavor)===t.DocumentFlavor.TRADITIONAL&&m?(0,n.getTopLevelSectionBreaks)(m):[],g=t=>!l||t.length===0?Promise.resolve(!1):e.executeCommand(n.UpdateDocumentSectionCommand.id,{unitId:l.getUnitId(),updates:t}),_=e=>g(d.map(t=>({sectionId:t.sectionId,config:e})));return{valid:!!(l&&d.length>0),selectedCount:d.length,sectionOptions:h.map((e,t)=>({label:`#${t+1}`,value:e.sectionId})),selectedSectionId:d.length===1?d[0].sectionId:void 0,...p,selectSection(e){Gg(s,l??void 0,h,e)},setColumnCount(e){let t=Math.max(1,Math.round(e));return g(l?Hg(d,l.getDocumentStyle(),{columnCount:t}):[])},setColumnGap(e){let t=Math.max(0,e);return g(l?Hg(d,l.getDocumentStyle(),{columnGap:t}):[])},setSeparatorType(e){return _({columnSeparatorType:e})},setSectionType(e){return _({sectionType:e})},setPageWidth(e){return g(d.map(t=>({sectionId:t.sectionId,config:{pageSize:{...f.pageSize,...t.pageSize,width:Math.max(1,e)}}})))},setPageHeight(e){return g(d.map(t=>({sectionId:t.sectionId,config:{pageSize:{...f.pageSize,...t.pageSize,height:Math.max(1,e)}}})))},setPageOrient(e){return g(Ug(d,f,e))},setMarginTop(e){return _({marginTop:Math.max(0,e)})},setMarginBottom(e){return _({marginBottom:Math.max(0,e)})},setMarginLeft(e){return _({marginLeft:Math.max(0,e)})},setMarginRight(e){return _({marginRight:Math.max(0,e)})},setPageNumberStart(e){return _({pageNumberStart:Math.max(1,Math.round(e))})}}}function qg(e){return(0,l.jsxs)(`div`,{className:`univer-grid univer-min-h-8 univer-items-center univer-gap-3`,style:{gridTemplateColumns:`minmax(0, 1fr) minmax(140px, 160px)`},children:[(0,l.jsxs)(`div`,{className:`univer-min-w-0 univer-text-xs univer-leading-5 univer-text-gray-900 dark:!univer-text-gray-100`,children:[e.label,e.unit]}),(0,l.jsx)(`div`,{className:`univer-w-full univer-min-w-0`,children:e.children})]})}function Jg(){let e=(0,i.useDependency)(t.LocaleService),n=(0,i.useDependency)($o),r=Kg();return(0,i.useObservable)(e.currentLocale$),(0,c.useEffect)(()=>{r.valid||n.closePanel()},[n,r.valid]),r.valid?(0,l.jsxs)(`div`,{className:`univer-box-border univer-w-full`,children:[r.selectedCount>1&&(0,l.jsx)(`div`,{className:`univer-mb-4 univer-text-xs univer-text-gray-600 dark:!univer-text-gray-300`,children:e.t(`docs-ui.doc.sectionSetting.selectedSections`,`${r.selectedCount}`)}),(0,l.jsxs)(`div`,{className:`univer-grid univer-gap-3`,children:[(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.slider.sectionSetting`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.selectedSectionId??``,options:[...r.selectedSectionId==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],...r.sectionOptions],onChange:r.selectSection})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.columnCount`),children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.columnCount`),className:`univer-w-full`,min:1,max:12,step:1,precision:0,value:r.columnCount,onChange:e=>e!=null&&r.setColumnCount(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.columnGap`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.columnGap`),className:`univer-w-full`,min:0,max:1e3,step:1,precision:1,value:r.columnGap,onChange:e=>e!=null&&r.setColumnGap(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.columnSeparator`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.separatorType==null?``:`${r.separatorType}`,options:[...r.separatorType==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],{label:e.t(`docs-ui.doc.sectionSetting.none`),value:`${t.ColumnSeparatorType.NONE}`},{label:e.t(`docs-ui.doc.sectionSetting.betweenColumns`),value:`${t.ColumnSeparatorType.BETWEEN_EACH_COLUMN}`}],onChange:e=>r.setSeparatorType(Number(e))})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.sectionStart`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.sectionType==null?``:`${r.sectionType}`,options:[...r.sectionType==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],{label:e.t(`docs-ui.doc.sectionSetting.unspecified`),value:`${t.SectionType.SECTION_TYPE_UNSPECIFIED}`},{label:e.t(`docs-ui.doc.sectionSetting.continuous`),value:`${t.SectionType.CONTINUOUS}`},{label:e.t(`docs-ui.doc.sectionSetting.nextColumn`),value:`${t.SectionType.NEXT_COLUMN}`},{label:e.t(`docs-ui.doc.sectionSetting.nextPage`),value:`${t.SectionType.NEXT_PAGE}`},{label:e.t(`docs-ui.doc.sectionSetting.evenPage`),value:`${t.SectionType.EVEN_PAGE}`},{label:e.t(`docs-ui.doc.sectionSetting.oddPage`),value:`${t.SectionType.ODD_PAGE}`}],onChange:e=>r.setSectionType(Number(e))})}),(0,l.jsx)(`div`,{className:`univer-pt-2 univer-text-sm univer-font-medium`,children:e.t(`docs-ui.doc.sectionSetting.pageSetup`)}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.pageWidth`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.pageWidth`),className:`univer-w-full`,min:1,step:1,precision:1,value:r.pageWidth,onChange:e=>e!=null&&r.setPageWidth(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.pageHeight`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.pageHeight`),className:`univer-w-full`,min:1,step:1,precision:1,value:r.pageHeight,onChange:e=>e!=null&&r.setPageHeight(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.page-settings.orientation`),children:(0,l.jsx)(s.Select,{className:`univer-w-full`,value:r.pageOrient==null?``:`${r.pageOrient}`,options:[...r.pageOrient==null?[{label:e.t(`docs-ui.doc.sectionSetting.multipleValues`),value:``,disabled:!0}]:[],{label:e.t(`docs-ui.page-settings.portrait`),value:`${t.PageOrientType.PORTRAIT}`},{label:e.t(`docs-ui.page-settings.landscape`),value:`${t.PageOrientType.LANDSCAPE}`}],onChange:e=>r.setPageOrient(Number(e))})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.page-settings.top`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.top`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginTop,onChange:e=>e!=null&&r.setMarginTop(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.page-settings.bottom`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.bottom`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginBottom,onChange:e=>e!=null&&r.setMarginBottom(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.page-settings.left`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.left`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginLeft,onChange:e=>e!=null&&r.setMarginLeft(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.page-settings.right`),unit:` (px)`,children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.page-settings.right`),className:`univer-w-full`,min:0,step:1,precision:1,value:r.marginRight,onChange:e=>e!=null&&r.setMarginRight(e)})}),(0,l.jsx)(qg,{label:e.t(`docs-ui.doc.sectionSetting.pageNumberStart`),children:(0,l.jsx)(s.InputNumber,{"aria-label":e.t(`docs-ui.doc.sectionSetting.pageNumberStart`),className:`univer-w-full`,min:1,step:1,precision:0,value:r.pageNumberStart,onChange:e=>e!=null&&r.setPageNumberStart(e)})})]})]}):null}function Yg(){let e=(0,i.useDependency)(t.ICommandService),[r,a]=(0,c.useState)(()=>(0,t.generateRandomId)(4));return(0,c.useEffect)(()=>{let r=e.onCommandExecuted(e=>{e.id===n.SetTextSelectionsOperation.id?e.params.ranges.length>0&&a((0,t.generateRandomId)(4)):e.id===n.RichTextEditingMutation.id&&a((0,t.generateRandomId)(4))});return()=>r.dispose()},[e]),(0,l.jsx)(Jg,{},r)}let Xg=({handleRowColChange:e,tableCreateParams:n})=>{let r=(0,i.useDependency)(t.LocaleService),[a,o]=(0,c.useState)(3),[u,d]=(0,c.useState)(5);function f(t,n){o(t),d(n),e(t,n)}return(0,c.useEffect)(()=>{o(n.rowCount),d(n.colCount)},[n]),(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-justify-between univer-gap-2`,children:[(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-gap-2`,children:[(0,l.jsx)(`span`,{children:r.t(`docs-ui.toolbar.table.rowCount`)}),(0,l.jsx)(s.InputNumber,{className:`univer-w-28`,min:1,max:20,precision:0,value:a,onChange:e=>{f(e,u)}})]}),(0,l.jsxs)(`div`,{className:`univer-flex univer-items-center univer-gap-2`,children:[(0,l.jsx)(`span`,{children:r.t(`docs-ui.toolbar.table.colCount`)}),(0,l.jsx)(s.InputNumber,{className:`univer-w-28`,min:1,max:20,precision:0,value:u,onChange:e=>{f(a,e)}})]})]})},Zg=class extends t.Disposable{constructor(e,t){super(),this._componentManager=e,this._iconManager=t,this._registerComponents(),this._registerParts(),this._registerIcons()}_registerParts(){let e=this._componentManager;this.disposeWithMe(e.register(lo,Xg))}_registerIcons(){this.disposeWithMe(this._iconManager.register({AlignTextBothIcon:Uu,AddImageIcon:Vu,BoldIcon:Gu,CopyDoubleIcon:uf,ColumnIcon:Yu,CutIcon:Zu,DeleteColumnDoubleIcon:ff,DeleteIcon:$u,DeleteRowDoubleIcon:mf,DeleteTableDoubleIcon:gf,DocSettingIcon:td,FontColorDoubleIcon:vf,GridIcon:rd,H1Icon:ad,H2Icon:sd,H3Icon:ld,H4Icon:dd,H5Icon:pd,HeaderFooterIcon:hd,HorizontallyIcon:_d,InsertDoubleIcon:bf,InsertRowAboveDoubleIcon:Sf,InsertRowBelowDoubleIcon:wf,ItalicIcon:yd,KeyboardIcon:xd,LeftInsertColumnDoubleIcon:Ef,LeftJustifyingIcon:Cd,LineIndentDecreaseIcon:Td,LineIndentIncreaseIcon:Dd,MenuIcon:kd,TextTypeIcon:tf,NoColorDoubleIcon:Of,OrderIcon:Fd,PaintBucketDoubleIcon:Af,PasteSpecialDoubleIcon:Mf,ReduceDoubleIcon:Pf,ReduceIcon:Ld,RightInsertColumnDoubleIcon:If,RightJustifyingIcon:zd,ShapeIcon:Vd,SmileIcon:Ud,StrikethroughIcon:qd,SubscriptIcon:Yd,SuperscriptIcon:Zd,SymbolsIcon:$d,TitleTypeIcon:hm,SubtitleTypeIcon:gm,TodoListDoubleIcon:Rf,UnderlineIcon:rf,UnorderIcon:of,DefaultTextColorIcon:bm,HeaderTextColorIcon:ym,MoreRightIcon:Nd,MoreLeftIcon:jd,"DocParagraphTextColorSwatchIcon.0":Cm,"DocParagraphTextColorSwatchIcon.1":wm,"DocParagraphTextColorSwatchIcon.2":Tm,"DocParagraphTextColorSwatchIcon.3":Em,"DocParagraphTextColorSwatchIcon.4":Dm,"DocParagraphTextColorSwatchIcon.5":Om,"DocParagraphTextColorSwatchIcon.6":km,"DocParagraphBackgroundColorSwatchIcon.0":Am,"DocParagraphBackgroundColorSwatchIcon.1":jm,"DocParagraphBackgroundColorSwatchIcon.2":Mm,"DocParagraphBackgroundColorSwatchIcon.3":Nm,"DocParagraphBackgroundColorSwatchIcon.4":Pm,"DocParagraphBackgroundColorSwatchIcon.5":Fm,"DocParagraphBackgroundColorSwatchIcon.6":Im,"DocParagraphBackgroundColorSwatchIcon.7":Lm,"DocParagraphBackgroundColorSwatchIcon.8":Rm,"DocParagraphBackgroundColorSwatchIcon.9":zm,"DocParagraphBackgroundColorSwatchIcon.10":Bm,"DocParagraphBackgroundColorSwatchIcon.11":Vm,"DocParagraphBackgroundColorSwatchIcon.12":Hm,"DocParagraphBackgroundColorSwatchIcon.13":Um,"DocParagraphBackgroundColorSwatchIcon.14":Wm,"DocParagraphBackgroundColorSwatchIcon.15":Gm}))}_registerComponents(){this._componentManager.get(`COMPONENT_DOC_HEADER_FOOTER_PANEL`)||this.disposeWithMe(this._componentManager.register(Wo,mm)),this.disposeWithMe(this._componentManager.register(`doc_ui_paragraph-setting-panel`,Sh)),this.disposeWithMe(this._componentManager.register(Qo,Yg)),[[Ks,Ws],[Gs,Hs],[Km,Ng],[qm,Pg],[am,cm],[ls,cs]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}};Zg=A([k(0,(0,t.Inject)(i.ComponentManager)),k(1,(0,t.Inject)(i.IconManager))],Zg);function Qg(e){return Object.prototype.hasOwnProperty.call(t.QuickListTypeMap,e)}function $g(e){return Object.prototype.hasOwnProperty.call(Na,e)}let e_=class extends t.Disposable{constructor(e,t){super(),this._docAutoFormatService=e,this._renderManagerService=t,this._initListTabAutoFormat(),this._initSpaceAutoFormat(),this._initDefaultEnterFormat(),this._initExitListAutoFormat()}_initListTabAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:M.id,match:e=>{let{selection:t,paragraphs:n,unit:r}=e;if(n.length===1&&t.startOffset===n[0].paragraphStart&&n[0].bullet){var i;let e=(i=r.getBody())==null?void 0:i.paragraphs,t=e==null?void 0:e.filter(e=>{var t;return((t=e.bullet)==null?void 0:t.listId)===n[0].bullet.listId});return(t==null?void 0:t.findIndex(e=>e.startIndex===n[0].startIndex))!==0}else if(n.length>1&&n.some(e=>e.bullet))return!0;return!1},getMutations(e){let t=e.commandParams;return[{id:pa.id,params:{type:t!=null&&t.shift?-1:1}}]},priority:100})),this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:M.id,match:e=>{let{selection:t,unit:r}=e,{startNodePosition:i,endNodePosition:a}=t,o=this._renderManagerService.getRenderUnitById(r.getUnitId()),s=o==null?void 0:o.with(n.DocSkeletonManagerService).getSkeleton();return s!=null&&!!(i&&a&&Vr(s,i,a)||i&&!a&&i.path.indexOf(`cells`)>-1)},getMutations(e){let t=e.commandParams;return[{id:co.id,params:{shift:!!(t!=null&&t.shift)}}]},priority:99}))}_initSpaceAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:N.id,match:e=>{var t;let{selection:n,paragraphs:r,unit:i}=e;if(!n.collapsed||r.length!==1||!n.collapsed)return!1;let a=(t=i.getBody())==null?void 0:t.dataStream.slice(r[0].paragraphStart,n.startOffset-1);return!!(a&&(Qg(a)||$g(a)))},getMutations(e){var n;let{paragraphs:r,unit:i,selection:a}=e,o=(n=i.getBody())==null?void 0:n.dataStream.slice(r[0].paragraphStart,a.startOffset-1);if(o&&Qg(o)){let e=t.QuickListTypeMap[o];return[{id:va.id,params:{listType:e,paragraph:r[0]}}]}if(o&&$g(o)){let e=Na[o];return[{id:Ma.id,params:{value:e}}]}return[]}}))}_initExitListAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:P.id,match:e=>{let{paragraphs:t}=e;return!!(t.length===1&&t[0].bullet&&t[0].paragraphStart===t[0].paragraphEnd)},getMutations:e=>{let t=e.paragraphs[0].bullet;return t?t.nestingLevel>0?[{id:pa.id,params:{type:-1}}]:[{id:ua.id,params:{listType:e.paragraphs[0].bullet.listType}}]:[]}}))}_initDefaultEnterFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:P.id,match:()=>!0,getMutations(){return[{id:R.id}]},priority:-9999}))}};e_=A([k(0,(0,t.Inject)(j)),k(1,r.IRenderManagerService)],e_);function t_(e,t){let{radius:n,width:r,height:i}=t;n??=0,r??=30,i??=30;let a=0;a=Math.min(n,r/2,i/2),e.beginPath(),e.moveTo(0,0),e.lineTo(r,0),e.lineTo(r,i-a),e.arc(r-a,i-a,a,0,Math.PI/2,!1),e.lineTo(0,i),e.lineTo(0,0),e.closePath(),t.fill&&(e.save(),e.fillStyle=t.fill,t.fillRule===`evenodd`?e.fill(`evenodd`):e.fill(),e.restore())}var n_=class e extends r.Shape{constructor(e,t){super(e,t),O(this,`color`,void 0),O(this,`text`,void 0),this.color=t==null?void 0:t.color,this.text=t==null?void 0:t.text}static drawWith(e,t){let{text:n,color:r}=t;e.save(),e.font=`13px Source Han Sans CN`;let i=e.measureText(n).width;if(t_(e,{height:18,width:Math.min(i+12,200),radius:4,fill:r,evented:!1}),e.fillStyle=`rgba(58, 96, 247, 1)`,i>188){let t=``,r=0;for(let i of n){let n=e.measureText(i).width;if(r+n<=188-e.measureText(`...`).width)t+=i,r+=n;else{t+=`...`;break}}e.fillText(t,6,14)}else e.fillText(n,6,14);e.restore()}_draw(t){e.drawWith(t,this)}};function r_(e,i,a,o){let{sectionId:s,config:c}=lm(e.getDataModel().getSnapshot(),o),{defaultHeaderId:l,defaultFooterId:u,evenPageHeaderId:d,evenPageFooterId:f,firstPageHeaderId:p,firstPageFooterId:m,evenAndOddHeaders:h,useFirstPageHeaderFooter:g}=c,_=o?o.pageNumber===o.pageNumberStart:a===0,v=o?o.pageNumber%2==0:a%2==1;if(i===r.DocumentEditArea.BODY)return{createType:null,headerFooterId:null,sectionId:s};let y=i===r.DocumentEditArea.HEADER;if(!y&&i!==r.DocumentEditArea.FOOTER)throw Error(`Invalid editArea: ${i}`);let b=y?{first:[p,n.HeaderFooterType.FIRST_PAGE_HEADER],even:[d,n.HeaderFooterType.EVEN_PAGE_HEADER],default:[l,n.HeaderFooterType.DEFAULT_HEADER]}:{first:[m,n.HeaderFooterType.FIRST_PAGE_FOOTER],even:[f,n.HeaderFooterType.EVEN_PAGE_FOOTER],default:[u,n.HeaderFooterType.DEFAULT_FOOTER]},[x,S]=g===t.BooleanNumber.TRUE&&_?b.first:h===t.BooleanNumber.TRUE&&v?b.even:b.default;return{createType:x?null:S,headerFooterId:x??null,sectionId:s}}let i_=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c){super(),this._context=e,this._commandService=t,this._editorService=n,this._instanceSrv=r,this._renderManagerService=i,this._docSkeletonManagerService=a,this._docSelectionRenderService=o,this._localeService=s,this._themeService=c,O(this,`_loadedMap`,new WeakSet),O(this,`_headerFooterColors`,{primary:``,cover:``,label:``}),this._initialize()}_initialize(){this._initThemeColors(),this._init(),this._drawHeaderFooterLabel(),this._listenSwitchMode()}_initThemeColors(){this.disposeWithMe(this._themeService.currentTheme$.subscribe(()=>{let e=this._themeService.getColorFromTheme(`primary.600`);this._headerFooterColors={primary:e,cover:new t.ColorKit(this._themeService.getColorFromTheme(`gray.0`)).setAlpha(.5).toRgbString(),label:new t.ColorKit(e).setAlpha(.08).toRgbString()}}))}dispose(){super.dispose()}_listenSwitchMode(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(n.RichTextEditingMutation.id===e.id){let e=this._context.unit,n=this._docSkeletonManagerService.getViewModel().getEditArea(),i=e.getSnapshot().documentStyle.documentFlavor;n!==r.DocumentEditArea.BODY&&i===t.DocumentFlavor.MODERN&&this._commandService.executeCommand(Yo.id,{unitId:this._context.unitId})}}))}_init(){let{unitId:e}=this._context,t=f(this._context);t!=null&&t.document!=null&&(this._loadedMap.has(t.document)||(this._initialMain(e),this._loadedMap.add(t.document)))}_initialMain(e){let{document:n}=f(this._context);this.disposeWithMe(n.onDblclick$.subscribeEvent(async i=>{var a;if(this._isEditorReadOnly(e)||!this._isTraditionalMode())return;let{offsetX:o,offsetY:s}=i,{pageLayoutType:c=r.PageLayoutType.VERTICAL,pageMarginLeft:l,pageMarginTop:u}=n.getOffsetConfig(),d=this._getTransformCoordForDocumentOffset(o,s);if(d==null)return;let f=this._docSkeletonManagerService.getViewModel(),p=this._docSkeletonManagerService.getSkeleton(),m=f.getEditArea(),{editArea:h,pageNumber:g}=p.findEditAreaByCoord(d,c,l,u);if(m===h&&(h===r.DocumentEditArea.BODY||this._docSelectionRenderService.getSegmentPage()===g))return;f.setEditArea(h);let{createType:_,headerFooterId:v,sectionId:y}=r_(f,h,g,(a=p.getSkeletonData())==null?void 0:a.pages[g]);if(h===r.DocumentEditArea.BODY)this._docSelectionRenderService.setSegment(``),this._docSelectionRenderService.setSegmentPage(-1),this._docSelectionRenderService.setCursorManually(o,s);else if(_!=null){let n=(0,t.generateRandomId)(6);this._docSelectionRenderService.setSegment(n),this._docSelectionRenderService.setSegmentPage(g),await this._commandService.executeCommand(qo.id,{unitId:e,createType:_,segmentId:n,sectionId:y})}else v!=null&&(this._docSelectionRenderService.setSegment(v),this._docSelectionRenderService.setSegmentPage(g),this._docSelectionRenderService.setCursorManually(o,s))}))}_getTransformCoordForDocumentOffset(e,t){let{document:n,scene:i}=f(this._context),{documentTransform:a}=n.getOffsetConfig(),o=i.getViewports()[0];if(o==null)return;let s=o.transformVector2SceneCoord(r.Vector2.FromArray([e,t]));return a.clone().invert().applyPoint(s)}_drawHeaderFooterLabel(){this.disposeWithMe(this._instanceSrv.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).subscribe(e=>{if(e==null)return;let n=e.getUnitId(),r=this._renderManagerService.getRenderUnitById(n);if(this._editorService.isEditor(n)||this._instanceSrv.getUnit(n,t.UniverInstanceType.UNIVER_DOC)==null||r==null)return;let{mainComponent:i}=r,a=i;this.disposeWithMe((0,t.toDisposable)(a.pageRender$.subscribe(e=>this._drawHeaderFooterPage(e,n))))}))}_drawHeaderFooterPage(e,t){if(this._editorService.isEditor(t)||!this._isTraditionalMode())return;let n=this._docSkeletonManagerService.getViewModel().getEditArea()===r.DocumentEditArea.BODY,{pageLeft:i,pageTop:a,ctx:o}=e;o.save(),o.translate(i-.5,a-.5),this._drawHeaderFooterCover(e,n),n||this._drawHeaderFooterGuides(e),o.restore()}_drawHeaderFooterCover({page:e,ctx:t},n){let{pageWidth:i,pageHeight:a,marginTop:o,marginBottom:s}=e;if(n){r.Rect.drawWith(t,{left:0,top:0,width:i,height:o,fill:this._headerFooterColors.cover}),t.save(),t.translate(0,a-s),r.Rect.drawWith(t,{left:0,top:0,width:i,height:s,fill:this._headerFooterColors.cover}),t.restore();return}t.save(),t.translate(0,o),r.Rect.drawWith(t,{left:0,top:o,width:i,height:a-o-s,fill:this._headerFooterColors.cover}),t.restore()}_drawHeaderFooterGuides({page:e,ctx:t}){let{pageWidth:n,pageHeight:i,marginTop:a,marginBottom:o}=e,s={dataArray:[{command:`M`,points:[0,a]},{command:`L`,points:[n,a]}],strokeWidth:1,stroke:this._headerFooterColors.primary},c={dataArray:[{command:`M`,points:[0,i-o]},{command:`L`,points:[n,i-o]}],strokeWidth:1,stroke:this._headerFooterColors.primary};r.Path.drawWith(t,s),r.Path.drawWith(t,c),t.translate(0,a+1),n_.drawWith(t,{text:this._localeService.t(`docs-ui.headerFooter.header`),color:this._headerFooterColors.label}),t.translate(0,i-a-o),n_.drawWith(t,{text:this._localeService.t(`docs-ui.headerFooter.footer`),color:this._headerFooterColors.label})}_isEditorReadOnly(e){let t=this._editorService.getEditor(e);return t?t.isReadOnly():!1}_isTraditionalMode(){return this._context.unit.getSnapshot().documentStyle.documentFlavor===t.DocumentFlavor.TRADITIONAL}};i_=A([k(1,t.ICommandService),k(2,Oi),k(3,t.IUniverInstanceService),k(4,r.IRenderManagerService),k(5,(0,t.Inject)(n.DocSkeletonManagerService)),k(6,(0,t.Inject)(J)),k(7,(0,t.Inject)(t.LocaleService)),k(8,(0,t.Inject)(t.ThemeService))],i_);function a_(e,t){let{ed:n}=e,{skeTables:r}=t,i=null;for(let e of r.values())if(e.st===n+1){i=e;break}return i}function o_(e,t){let{st:n}=e,{skeTables:r}=t,i=null;for(let e of r.values())if(e.ed===n-1){i=e;break}return i}function s_(e){return e.sections[0].columns[0].lines[0]}function c_(e){let t=(0,r.getLastColumn)(e);return t.lines[t.lines.length-1]}let l_=class extends t.Disposable{constructor(e,t,n,r){super(),this._univerInstanceService=e,this._renderManagerService=t,this._textSelectionManagerService=n,this._commandService=r,O(this,`_onInputSubscription`,void 0),this._commandExecutedListener()}dispose(){var e;super.dispose(),(e=this._onInputSubscription)==null||e.unsubscribe()}_commandExecutedListener(){let e=[po.id,mo.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(!e.includes(t.id))return;let n=t.params;switch(t.id){case po.id:return this._handleMoveCursor(n.direction,n.granularity??`character`);case mo.id:return this._handleShiftMoveSelection(n.direction,n.granularity??`character`);default:throw Error(`Unknown command`)}}))}_handleShiftMoveSelection(e,r=`character`){var i;let a=this._textSelectionManagerService.getActiveTextRange(),o=this._textSelectionManagerService.getTextRanges(),s=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(s==null)return;let c=this._renderManagerService.getRenderUnitById(s.getUnitId()),l=c==null?void 0:c.with(n.DocSkeletonManagerService).getSkeleton(),u=c?f(c):null;if(a==null||l==null||u==null)return;let{startOffset:d,endOffset:p,style:m,collapsed:h,direction:g,segmentId:_,startNodePosition:v,endNodePosition:y,segmentPage:b}=a,x=_??``,S=b??-1;if(o.length>1){let n=1/0,r=-1/0;for(let e of o)n=Math.min(n,e.startOffset),r=Math.max(r,e.endOffset);this._textSelectionManagerService.replaceDocRanges([{startOffset:e===t.Direction.LEFT||e===t.Direction.UP?r:n,endOffset:e===t.Direction.LEFT||e===t.Direction.UP?n:r,style:m}],void 0,!1);return}let C=h||g===t.RANGE_DIRECTION.FORWARD?d:p,w=h||g===t.RANGE_DIRECTION.FORWARD?p:d,T=(i=s.getSelfOrHeaderFooterModel(x))==null?void 0:i.getBody();if(T==null)return;let E=T.dataStream.length??1/0,D=s.getCustomRanges()??[];if(r!==`character`){let t=this._getCursorOffsetByGranularity(l,w,e,r,x,S,E,T.dataStream);if(t==null||t===w)return;let n=this._normalizeRenderableCursorOffset(l,T.dataStream,D,t,e,x,S);if(n==null||n===w)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:n,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),n);return}if(e===t.Direction.LEFT||e===t.Direction.RIGHT){let n=l.findNodeByCharIndex(w-1,_,b),r=l.findNodeByCharIndex(w,_,b);w=e===t.Direction.RIGHT?w+r.count:w-((n==null?void 0:n.count)??0),w=Math.min(E-2,Math.max(0,w)),this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:w,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),w)}else{let n=l.findNodeByCharIndex(w,_,b),r=u.document.getOffsetConfig(),i=h?v:g===t.RANGE_DIRECTION.FORWARD?y:v,a=this._getTopOrBottomPosition(l,n,i,e===t.Direction.DOWN,!0);if(a==null){let n=this._normalizeRenderableCursorOffset(l,T.dataStream,D,e===t.Direction.UP?0:E-2,e,x,S);if(n==null||n===w)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:n,style:m}],void 0,!1);return}let o=new Mr(r,l).getRangePointData(a,a).cursorList[0],c=this._normalizeRenderableCursorOffset(l,T.dataStream,D,o.endOffset,e,x,S);if(c==null||c===w)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:C,endOffset:c,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),c)}}_handleMoveCursor(e,r=`character`){var i;let a=this._textSelectionManagerService.getActiveTextRange(),o=this._textSelectionManagerService.getTextRanges(),s=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(s==null)return!1;let c=this._renderManagerService.getRenderUnitById(s.getUnitId()),l=c==null?void 0:c.with(n.DocSkeletonManagerService).getSkeleton(),u=c?f(c):null;if(a==null||l==null||u==null||o==null)return;let{startOffset:d,endOffset:p,style:m,collapsed:h,segmentId:g,startNodePosition:_,endNodePosition:v,segmentPage:y}=a,b=g??``,x=y??-1,S=(i=s.getSelfOrHeaderFooterModel(b))==null?void 0:i.getBody();if(S==null)return;let C=S.dataStream.length??1/0,w=s.getCustomRanges()??[];if(r!==`character`){let n;if(!a.collapsed||o.length>1){let r=1/0,i=-1/0;for(let e of o)r=Math.min(r,e.startOffset),i=Math.max(i,e.endOffset);n=e===t.Direction.LEFT||e===t.Direction.UP?r:i}else n=e===t.Direction.LEFT||e===t.Direction.UP?d:p;let i=this._getCursorOffsetByGranularity(l,n,e,r,b,x,C,S.dataStream);if(i==null||(i=this._normalizeRenderableCursorOffset(l,S.dataStream,w,i,e,b,x),i==null))return;this._textSelectionManagerService.replaceDocRanges([{startOffset:i,endOffset:i,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),i);return}if(e===t.Direction.LEFT||e===t.Direction.RIGHT){let n;if(!a.collapsed||o.length>1){let r=1/0,i=-1/0;for(let e of o)r=Math.min(r,e.startOffset),i=Math.max(i,e.endOffset);n=e===t.Direction.LEFT?r:i}else{let r=l.findNodeByCharIndex(d-1,g,y),i=l.findNodeByCharIndex(d,g,y),a=l.findNodeByCharIndex(d+1,g,y);n=e===t.Direction.LEFT?Math.max(0,d-((r==null?void 0:r.count)??1)):Math.min(C-2,p+i.count+ +((a==null?void 0:a.streamType)===t.DataStreamTreeTokenType.SECTION_BREAK))}let r=[...this._getCursorSkipTokens()];if(e===t.Direction.LEFT)for(;r.includes(S.dataStream[n]);)n--;else for(;r.includes(S.dataStream[n]);)n++;n=this._normalizeCursorOffset(S.dataStream,w,n,e);let i=this._normalizeRenderableCursorOffset(l,S.dataStream,w,n,e,b,x);if(i==null)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:i,endOffset:i,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),i)}else{let n=l.findNodeByCharIndex(d,g,y),r=l.findNodeByCharIndex(p,g,y),i=u.document.getOffsetConfig(),a=this._getTopOrBottomPosition(l,e===t.Direction.UP||h?n:r,e===t.Direction.UP||h?_:v,e===t.Direction.DOWN);if(a==null){let n;if(n=h?this._normalizeRenderableCursorOffset(l,S.dataStream,w,e===t.Direction.UP?0:C-2,e,b,x):this._normalizeRenderableCursorOffset(l,S.dataStream,w,e===t.Direction.UP?d:p,e,b,x),n==null)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:n,endOffset:n,style:m}],void 0,!1);return}let o=new Mr(i,l).getRangePointData(a,a).cursorList[0],c=this._normalizeRenderableCursorOffset(l,S.dataStream,w,o.endOffset,e,b,x);if(c==null)return;this._textSelectionManagerService.replaceDocRanges([{startOffset:c,endOffset:c,style:m}],void 0,!1),this._scrollToFocusNodePosition(s.getUnitId(),c)}}_getCursorOffsetByGranularity(e,n,r,i,a,o,s,c=``){switch(i){case`document`:return r===t.Direction.LEFT||r===t.Direction.UP?0:s-2;case`paragraph`:return this._getParagraphBoundaryOffset(c,n,r);case`line`:return this._getLineBoundaryOffset(e,n,r,a,o,s);case`word`:return this._getWordBoundaryOffset(e,n,r,a,o,s);default:return null}}_getParagraphBoundaryOffset(e,n,r){if(r!==t.Direction.UP&&r!==t.Direction.DOWN)return;if(e.length===0)return 0;let i=Math.min(Math.max(0,n),e.length-1);if(r===t.Direction.UP){let t=this._getCurrentParagraphStartOffset(e,i);return i>t?t:this._getCurrentParagraphStartOffset(e,Math.max(0,t-1))}let a=e.indexOf(t.DataStreamTreeTokenType.PARAGRAPH,i);return a===-1?e.length-1:a+1}_getCurrentParagraphStartOffset(e,n){for(let r=Math.min(n-1,e.length-1);r>=0;r--){let n=e[r];if(n===t.DataStreamTreeTokenType.PARAGRAPH||n===t.DataStreamTreeTokenType.SECTION_BREAK)return r+1}return 0}_getWordBoundaryOffset(e,n,r,i,a,o){if(r!==t.Direction.LEFT&&r!==t.Direction.RIGHT)return;let s=e.findNodeByCharIndex(n,i,a)??e.findNodeByCharIndex(Math.max(0,n-1),i,a);if(s==null)return r===t.Direction.LEFT?0:o-2;let c=yi(s);if(c==null)return;let l=Math.min(Math.max(0,n-c.st),c.content.length),u=wi(c.content,l,c.st,r);if(u!=null)return Math.min(o-2,Math.max(0,u))}_getLineBoundaryOffset(e,n,r,i,a,o){var s;if(r!==t.Direction.LEFT&&r!==t.Direction.RIGHT)return;let c=e.findNodeByCharIndex(n,i,a)??e.findNodeByCharIndex(Math.max(0,n-1),i,a),l=c==null||(s=c.parent)==null?void 0:s.parent;if(l==null)return r===t.Direction.LEFT?0:o-2;let u=r===t.Direction.LEFT?this._getFirstCursorGlyphInLine(l):this._getLastCursorGlyphInLine(l),d=u==null?void 0:e.findPositionByGlyph(u,a);if(d==null)return r===t.Direction.LEFT?0:o-2;let f=e.findCharIndexByPosition({...d,isBack:r===t.Direction.LEFT});if(f!=null)return Math.min(o-2,Math.max(0,f))}_getFirstCursorGlyphInLine(e){for(let t of e.divides)for(let e of t.glyphGroup)if(this._isCursorAddressableGlyph(e))return e}_getLastCursorGlyphInLine(e){for(let t=e.divides.length-1;t>=0;t--){let n=e.divides[t];for(let e=n.glyphGroup.length-1;e>=0;e--){let t=n.glyphGroup[e];if(this._isCursorAddressableGlyph(t))return t}}}_isCursorAddressableGlyph(e){return e.count>0&&!this._getCursorSkipTokens(!0).includes(e.streamType)}_normalizeCursorOffset(e,n,r,i){r=Math.max(0,r);let a=this._getCursorSkipTokens();if(i===t.Direction.LEFT||i===t.Direction.UP)for(;r>0&&a.includes(e[r]);)r--;else for(;r<e.length-1&&a.includes(e[r]);)r++;return this._normalizeWholeEntityRanges(n,r,i)}_normalizeRenderableCursorOffset(e,n,r,i,a,o,s){let c=Math.min(Math.max(0,i),Math.max(0,n.length-1)),l=this._findNearestRenderableCursorOffset(e,n,r,c,a,o,s);if(l!=null)return l;let u=a===t.Direction.LEFT||a===t.Direction.UP?t.Direction.DOWN:t.Direction.UP;return this._findNearestRenderableCursorOffset(e,n,r,c,u,o,s)}_findNearestRenderableCursorOffset(e,n,r,i,a,o,s){let c=a===t.Direction.LEFT||a===t.Direction.UP?-1:1,l=Math.min(Math.max(0,i),Math.max(0,n.length-1)),u=new Set;for(;l>=0&&l<n.length&&!u.has(l);){u.add(l);let t=this._normalizeCursorOffset(n,r,l,a);if(t<0||t>=n.length)return;if(this._isRenderableCursorOffset(e,n,t,o,s))return t;l=t+c}}_isRenderableCursorOffset(e,t,n,r,i){return n<0||n>=t.length||this._getNonRenderableCursorTokens().includes(t[n])?!1:e.findNodePositionByCharIndex(n,!0,r,i)!=null}_normalizeWholeEntityRanges(e,n,r){return e.filter(e=>e.wholeEntity&&e.startIndex<n&&e.endIndex>=n).forEach(e=>{n=r===t.Direction.LEFT||r===t.Direction.UP?Math.min(e.startIndex,n):Math.max(e.endIndex+1,n)}),n}_getCursorSkipTokens(e=!1){let n=[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.SECTION_BREAK,t.DataStreamTreeTokenType.BLOCK_START,t.DataStreamTreeTokenType.BLOCK_END];return e&&n.push(t.DataStreamTreeTokenType.PARAGRAPH),n}_getNonRenderableCursorTokens(){return[...this._getCursorSkipTokens(),t.DataStreamTreeTokenType.COLUMN_GROUP_START,t.DataStreamTreeTokenType.COLUMN_GROUP_END,t.DataStreamTreeTokenType.COLUMN_START,t.DataStreamTreeTokenType.COLUMN_END]}_getTopOrBottomPosition(e,t,n,r,i=!1){if(t==null||n==null)return;let a=this._getGlyphLeftOffsetInLine(t),o=this._getNextOrPrevLineTarget(t,r,a,i);if(o==null)return;let s=this._matchPositionByLeftOffset(e,o.line,o.offsetLeft,n);if(s!=null)return{...s,isBack:!0}}_getGlyphLeftOffsetInLine(e){let t=e.parent;if(t==null)return-1/0;let n=t.left,{left:r}=e;return n+r}_matchPositionByLeftOffset(e,n,r,i){let a={distance:1/0},o={distance:1/0};for(let e of n.divides){let n=e.left;for(let i of e.glyphGroup){if(!this._isCursorAddressableGlyph(i)){if(i.streamType===t.DataStreamTreeTokenType.PARAGRAPH&&i.count>0){let{left:e}=i,t=n+e,a=Math.abs(r-t);a<o.distance&&(o.glyph=i,o.distance=a)}continue}let{left:e}=i,s=n+e,c=Math.abs(r-s);c<a.distance&&(a.glyph=i,a.distance=c)}}let s=a.glyph??o.glyph;if(s==null)return;let{segmentPage:c}=i;return e.findPositionByGlyph(s,c)}_getNextOrPrevLineTarget(e,t,n,r=!1){let i=e.parent,a=i==null?void 0:i.parent,o=a==null?void 0:a.parent,s=o==null?void 0:o.parent,c=s==null?void 0:s.parent;if(i==null||a==null||o==null||s==null||c==null)return;let l=o.lines.indexOf(a);if(l===-1)return;let u;if(this._isTableCellContentPage(c)&&r){let e=this._getAdjacentTableCellLineTarget(c,t,n);if(e!=null)return e}if(t===!0){u=o.lines[l+1];let e=this._getTableLineTargetFromPageLine(a,c,t,n);if(e!=null)return e}else{u=o.lines[l-1];let e=this._getTableLineTargetFromPageLine(a,c,t,n);if(e!=null)return e}let d=this._getColumnGroupLineTargetFromBlockLine(u,c,t,n);if(d!=null)return d;if(u!=null)return{line:u,offsetLeft:n};let f=s.columns.indexOf(o);if(f===-1)return;if(t===!0){var p;u=(p=s.columns[f+1])==null?void 0:p.lines[0]}else{var m;let e=(m=s.columns)==null||(m=m[f-1])==null?void 0:m.lines;u=e==null?void 0:e[e.length-1]}if(u!=null)return{line:u,offsetLeft:n};let h=c.sections.indexOf(s);if(h===-1)return;if(t===!0){var g;u=(g=c.sections[h-1])==null||(g=g.columns[0])==null?void 0:g.lines[0]}else{var _;let e=(_=c.sections)==null||(_=_[h-1])==null?void 0:_.columns,t=e==null?void 0:e[e.length-1],n=t==null?void 0:t.lines;u=n==null?void 0:n[n.length-1]}if(u!=null)return{line:u,offsetLeft:n};if(this._isColumnGroupContentPage(c))return this._getColumnGroupExitLineTarget(c,t,n);if(this._isTableCellContentPage(c))return this._getAdjacentTableCellLineTarget(c,t,n);let v=c.parent;if((v==null?void 0:v.pages)==null)return;let y=v.pages.indexOf(c);if(y!==-1){if(t===!0){var b;u=(b=v.pages[y+1])==null||(b=b.sections[0])==null||(b=b.columns[0])==null?void 0:b.lines[0]}else{var x,S;let e=(x=v.pages[y-1])==null?void 0:x.sections;if(e==null)return;let t=(S=e[e.length-1])==null?void 0:S.columns,n=t[t.length-1],r=n==null?void 0:n.lines;u=r[r.length-1]}if(u!=null)return{line:u,offsetLeft:n}}}_getTableLineTargetFromPageLine(e,t,n,r){let i=n?a_(e,t):o_(e,t);if(i!=null)return this._getTableBoundaryLineTarget(i,n,r)}_getTableBoundaryLineTarget(e,t,n){let r=t?e.rows:[...e.rows].reverse();for(let e of r){if(e.isRepeatRow)continue;let r=this._getNearestTableCellLineTarget(e.cells,t,n);if(r!=null)return r}}_getAdjacentTableCellLineTarget(e,t,n){let r=e.parent,i=r==null?void 0:r.parent;if(r==null||i==null)return;let a=this._getTableCellHostOffsetLeft(e)+n,o=this._findAdjacentTableRow(i,r,t);if(o!=null)return this._getNearestTableCellLineTarget(o.cells,t,a);let s=this._findLineAroundTable(i,t);if(s!=null)return{line:s,offsetLeft:a}}_findAdjacentTableRow(e,t,n){let r=e.rows.indexOf(t);if(r===-1)return;let i=n?1:-1,a=r+i;for(;a>=0&&a<e.rows.length;){let t=e.rows[a];if(!t.isRepeatRow)return t;a+=i}return this._findAdjacentTableSliceRow(e,n)}_findAdjacentTableSliceRow(e,t){if(!e.tableId.includes(`#-#`))return;let[n,r]=e.tableId.split(`#-#`),i=Number.parseInt(r),a=e.parent,o=a==null?void 0:a.parent;if(!Number.isFinite(i)||(o==null?void 0:o.pages)==null)return;let s=`${n}#-#${i+(t?1:-1)}`;for(let e of o.pages){var c;let n=(c=e.skeTables)==null?void 0:c.get(s),r=(n==null?[]:t?n.rows:[...n.rows].reverse()).find(e=>!e.isRepeatRow);if(r!=null)return r}}_getNearestTableCellLineTarget(e,t,n){let r=e.filter(e=>!e.isMergedCellCovered).map(e=>({cell:e,distance:this._getDistanceToTableCell(e,n)})).sort((e,t)=>e.distance-t.distance);for(let e of r){let r=t?s_(e.cell):c_(e.cell);if(r!=null)return{line:r,offsetLeft:n-this._getTableCellHostOffsetLeft(e.cell)}}}_findLineAroundTable(e,t){var n;let r=e.parent;if(r==null)return;let i=((n=r.parent)==null?void 0:n.pages)??[r],a=t?t=>t.st===e.ed+1:t=>t.ed===e.st-1;for(let e of i)for(let n of e.sections)for(let e of n.columns){let n=(t?e.lines:[...e.lines].reverse()).find(a);if(n!=null)return n}}_getDistanceToTableCell(e,t){let n=this._getTableCellHostOffsetLeft(e),r=n+this._getTableCellContentWidth(e);return t>=n&&t<=r?0:Math.min(Math.abs(t-n),Math.abs(t-r))}_getTableCellHostOffsetLeft(e){let t=e.parent,n=t==null?void 0:t.parent;return((n==null?void 0:n.left)??0)+(e.left??0)+(e.marginLeft??0)}_getTableCellContentWidth(e){return Math.max(0,(e.pageWidth??0)-(e.marginLeft??0)-(e.marginRight??0))}_isTableCellContentPage(e){var t;let n=e.parent,i=n==null?void 0:n.parent;return e.type===r.DocumentSkeletonPageType.CELL&&n!=null&&(i==null||(t=i.rows)==null?void 0:t.includes(n))===!0&&n.cells.includes(e)}_getColumnGroupLineTargetFromBlockLine(e,t,n,i){if(e==null||e.type!==r.LineType.BLOCK)return;let a=this._findColumnGroupByBlockLine(t,e);if(a!=null)return this._getColumnGroupContentLineTarget(a,n,i)}_getColumnGroupContentLineTarget(e,t,n){let r=e.columns.map(e=>({column:e,distance:this._getDistanceToColumnGroupColumn(e,n)})).sort((e,t)=>e.distance-t.distance);for(let e of r){let r=this._getColumnGroupColumnBoundaryLine(e.column,t);if(r!=null)return{line:r,offsetLeft:n-e.column.left}}}_getColumnGroupExitLineTarget(e,t,n){let r=e.parent,i=r==null?void 0:r.parent,a=i==null?void 0:i.parent;if(r==null||i==null||a==null)return;let o=this._findColumnGroupBlockLine(i),s=o==null?void 0:this._getAdjacentLineAroundBlockLine(o,t);if(s!=null)return{line:s,offsetLeft:r.left+n}}_findColumnGroupByBlockLine(e,t){var n;for(let r of((n=e.skeColumnGroups)==null?void 0:n.values())??[])if(t.paragraphIndex===r.ed||t.st<=r.ed&&t.ed>=r.st)return r}_findColumnGroupBlockLine(e){let t=e.parent;if(t!=null){for(let n of t.sections)for(let i of n.columns)for(let n of i.lines)if(n.type===r.LineType.BLOCK&&this._findColumnGroupByBlockLine(t,n)===e)return n}}_getAdjacentLineAroundBlockLine(e,t){var n;let r=e.parent,i=r==null?void 0:r.parent,a=i==null?void 0:i.parent;if(r==null||i==null||a==null)return;let o=r.lines.indexOf(e);if(o===-1)return;let s=r.lines[t?o+1:o-1];if(s!=null)return s;let c=i.columns.indexOf(r);if(c===-1)return;if(t){var l;return(l=i.columns[c+1])==null?void 0:l.lines[0]}let u=(n=i.columns[c-1])==null?void 0:n.lines;return u==null?void 0:u[u.length-1]}_getColumnGroupColumnBoundaryLine(e,t){let n=t?e.page.sections:[...e.page.sections].reverse();for(let e of n){let n=t?e.columns:[...e.columns].reverse();for(let e of n){let n=(t?e.lines:[...e.lines].reverse()).find(e=>e.type!==r.LineType.BLOCK);if(n!=null)return n}}}_getDistanceToColumnGroupColumn(e,t){return t>=e.left&&t<=e.left+e.width?0:Math.min(Math.abs(t-e.left),Math.abs(t-e.left-e.width))}_isColumnGroupContentPage(e){var t;let n=e.parent;return(n==null?void 0:n.page)===e&&((t=n.parent)==null||(t=t.columns)==null?void 0:t.includes(n))===!0}_scrollToFocusNodePosition(e,t){var n;let r=(n=this._renderManagerService.getRenderUnitById(e))==null?void 0:n.with(yo);r!=null&&r.scrollToRange({startOffset:t,endOffset:t,collapsed:!0})}};l_=A([k(0,t.IUniverInstanceService),k(1,r.IRenderManagerService),k(2,(0,t.Inject)(n.DocSelectionManagerService)),k(3,t.ICommandService)],l_);let u_=class extends t.Disposable{constructor(e){super(),this._commandService=e,this._initialize()}_initialize(){this._init(),this._registerCommands()}_registerCommands(){[fo].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}_init(){}};u_=A([k(0,t.ICommandService)],u_);let d_=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._context=e,this._docSkeletonManagerService=t,this._commandService=n,this._docEventManagerService=r,this._textSelectionManagerService=i,this._initPointerDownObserver(),this._initHoverCursor()}_initPointerDownObserver(){this._docEventManagerService.clickBullets$.subscribe(e=>{let t=this._textSelectionManagerService.getTextRanges();this._commandService.executeCommand(ga.id,{index:e.paragraph.startIndex,segmentId:e.segmentId,textRanges:t})})}_initHoverCursor(){this.disposeWithMe(this._docEventManagerService.hoverBullet$.subscribe(e=>{e?this._context.mainComponent.setCursor(r.CURSOR_TYPE.POINTER):this._context.mainComponent.setCursor(r.CURSOR_TYPE.TEXT)}))}_getTransformCoordForDocumentOffset(e,t,n,i){let{documentTransform:a}=e.getOffsetConfig(),o=t.transformVector2SceneCoord(r.Vector2.FromArray([n,i]));if(o)return a.clone().invert().applyPoint(o)}};d_=A([k(1,(0,t.Inject)(n.DocSkeletonManagerService)),k(2,t.ICommandService),k(3,(0,t.Inject)(Cp)),k(4,(0,t.Inject)(n.DocSelectionManagerService))],d_);let f_=class extends t.RxDisposable{constructor(e,t,n,r,i,a){super(),this._context=e,this._commandService=t,this._docClipboardService=n,this._docSelectionRenderService=r,this._contextService=i,this._editorService=a,this._init()}_init(){this._initLegacyPasteCommand()}_initLegacyPasteCommand(){var e;(e=this._docSelectionRenderService)==null||e.onPaste$.pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>{var t,n,r,a;if(!bn(this._contextService))return;e.event.preventDefault();let o=e.event,s=(t=o.clipboardData)==null?void 0:t.getData(i.HTML_CLIPBOARD_MIME_TYPE),c=(n=o.clipboardData)==null?void 0:n.getData(`application/x-doc-fragment+json`),l=(r=o.clipboardData)==null?void 0:r.getData(i.PLAIN_TEXT_CLIPBOARD_MIME_TYPE),u=[...((a=o.clipboardData)==null?void 0:a.items)||[]].filter(e=>i.imageMimeTypeSet.has(e.type)).map(e=>e.getAsFile()).filter(e=>!!e);this._editorService.getEditor(this._context.unitId)&&(s??``).indexOf(`</table>`)>-1&&(s=``),this._docClipboardService.legacyPaste({html:s,internalJson:c,text:l,files:u})})}};f_=A([k(1,t.ICommandService),k(2,hn),k(3,(0,t.Inject)(J)),k(4,t.IContextService),k(5,Oi)],f_);let p_=[t.DEFAULT_EMPTY_DOCUMENT_VALUE,t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY],m_=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._context=e,this._contextMenuService=t,this._commandService=n,this._docEventManagerService=r,this._docSelectionManagerService=i,this._univerInstanceService=a,p_.includes(this._context.unitId)||(this._initPointerDown(),this._initEditChange())}_initPointerDown(){var e;let t=((e=this._context)==null||(e=e.mainComponent)==null?void 0:e.onPointerDown$).subscribeEvent(e=>{if(e.button===2){if(this._docEventManagerService.isPointerOnNonChecklistBullet(e.offsetX,e.offsetY)||this._isSelectionInCodeBlock())return;this._contextMenuService.triggerContextMenu(e,i.ContextMenuPosition.MAIN_AREA)}});this.disposeWithMe(t)}_initEditChange(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{e.id===n.RichTextEditingMutation.id&&this._contextMenuService.visible&&this._contextMenuService.hideContextMenu()}))}_isSelectionInCodeBlock(){var e;let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),r=(n==null||(e=n.getBody())==null||(e=e.blockRanges)==null?void 0:e.filter(e=>e.blockType===t.DocumentBlockRangeType.CODE))??[],i=this._docSelectionManagerService.getTextRanges()??[];return!r.length||!i.length?!1:r.some(e=>i.some(t=>h_(t,e.startIndex,e.endIndex)))}};m_=A([k(1,i.IContextMenuService),k(2,t.ICommandService),k(3,(0,t.Inject)(Cp)),k(4,(0,t.Inject)(n.DocSelectionManagerService)),k(5,(0,t.Inject)(t.IUniverInstanceService))],m_);function h_(e,t,n){return Math.max(e.startOffset,t)<=Math.min(e.endOffset,n)}let g_=class extends t.Disposable{constructor(e,t,n,r,i,a,o){super(),this._context=e,this._univerInstanceService=t,this._editorService=n,this._commandService=r,this._docSelectionRenderService=i,this._docSkeletonManagerService=a,this._renderManagerService=o,O(this,`_initialEditors`,new Set),this._initialize()}_initialize(){this._editorService.getAllEditor().forEach(e=>{let t=e.getEditorId();t===this._context.unitId&&(this._initialEditors.has(t)||(this._initialEditors.add(t),this._resize(t)))}),this._commandExecutedListener(),this._initialBlur(),this._initialFocus()}_resize(e){if(e==null)return;let n=this._editorService.getEditor(e);if((n==null?void 0:n.cancelDefaultResizeListener)===!0)return;let r=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(!r)return;let i=this._docSkeletonManagerService.getSkeleton();if(n==null||n.render==null||i==null||r==null)return;i.calculate();let{marginTop:a=0,marginBottom:o=0,marginLeft:s=0,marginRight:c=0}=r.getSnapshot().documentStyle,{scene:l,mainComponent:u}=n.render,{actualHeight:d,actualWidth:f}=i.getActualSize();d+=a+o,f+=s+c;let{width:p,height:m}=n.getBoundingClientRect(),h=Math.max(f,p),g=Math.max(d,m);l.transformByState({width:h,height:g}),u==null||u.resize(h,g)}_initialBlur(){this.disposeWithMe(this._editorService.blur$.subscribe(()=>{this._docSelectionRenderService.blur()})),this.disposeWithMe(this._docSelectionRenderService.onBlur$.subscribe(()=>{let{unitId:e}=this._context,t=this._editorService.getEditor(e),n=this._editorService.getFocusEditor();t==null||t.isSheetEditor()||n&&n.getEditorId()===e||e.includes(`range_selector`)||e.includes(`embedding_formula_editor`)||this._editorService.blur()}))}_initialFocus(){let e=[`univer-formula-search`,`univer-formula-help`,`formula-help-decorator`,`univer-formula-help-param`];this.disposeWithMe((0,a.fromEvent)(window,`mousedown`).subscribe(n=>{(0,t.checkForSubstrings)(n.target.classList[0]||``,e)&&n.stopPropagation()}));let n=new t.DisposableCollection;this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{if(n.dispose(),!e)return;let t=e.getUnitId(),r=this._renderManagerService.getRenderUnitById(t),i=r==null?void 0:r.engine.getCanvas().getCanvasEle();if(i==null)return;let o=(0,a.fromEvent)(i,`mousedown`).subscribe(e=>{e.stopPropagation()});n.add(o)})),this.disposeWithMe(()=>n.dispose())}_commandExecutedListener(){let e=[n.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)){let{unitId:e}=t.params;if(this._editorService.isSheetEditor(e)||e!==this._context.unitId)return;let n=this._editorService.getEditorRenderConfig(e);n&&!n.scrollBar&&this._resize(e)}}))}};g_=A([k(1,t.IUniverInstanceService),k(2,Oi),k(3,t.ICommandService),k(4,(0,t.Inject)(J)),k(5,(0,t.Inject)(n.DocSkeletonManagerService)),k(6,r.IRenderManagerService)],g_);let __=class extends t.Disposable{constructor(e,t,n,r,i,a,o){super(),this._context=e,this._docSelectionRenderService=t,this._docImeInputManagerService=n,this._docSkeletonManagerService=r,this._docStateEmitService=i,this._docSelectionManagerService=a,this._commandService=o,O(this,`_previousIMEContent`,``),O(this,`_isCompositionStart`,!0),O(this,`_onStartSubscription`,void 0),O(this,`_onUpdateSubscription`,void 0),O(this,`_onEndSubscription`,void 0),this._initialize()}dispose(){var e,t,n;(e=this._onStartSubscription)==null||e.unsubscribe(),(t=this._onUpdateSubscription)==null||t.unsubscribe(),(n=this._onEndSubscription)==null||n.unsubscribe()}_initialize(){this._initialOnCompositionstart(),this._initialOnCompositionUpdate(),this._initialOnCompositionend()}_initialOnCompositionstart(){this._onStartSubscription=this._docSelectionRenderService.onCompositionstart$.subscribe(e=>{var n;if(e==null)return;this._resetIME();let{activeRange:r,rangeList:i=[]}=e;r!=null&&(this._docImeInputManagerService.setActiveRange(t.Tools.deepClone(r)),this._docImeInputManagerService.setPreviousDocRanges(t.Tools.deepClone([...i,...this._docSelectionRenderService.getAllRectRanges()])),this._docImeInputManagerService.setPreviousSelectionOptions(t.Tools.deepClone(((n=this._docSelectionManagerService.getSelectionInfo())==null?void 0:n.options)??null)))})}_initialOnCompositionUpdate(){this._onUpdateSubscription=this._docSelectionRenderService.onCompositionupdate$.subscribe(e=>{this._updateContent(e,!0)})}_initialOnCompositionend(){this._onEndSubscription=this._docSelectionRenderService.onCompositionend$.subscribe(e=>{this._updateContent(e,!1)})}async _updateContent(e,t){if(e==null)return;let n=this._context.unitId,r=this._docSkeletonManagerService.getSkeleton(),{event:i,activeRange:a}=e;if(r==null||a==null)return;let o=i.data;if(!(o===this._previousIMEContent&&t)){if(!t&&o===this._previousIMEContent){this._finalizeComposition(),this._resetIME();return}await this._commandService.executeCommand(sr.id,{unitId:n,newText:o,oldTextLen:this._previousIMEContent.length,isCompositionStart:this._isCompositionStart,isCompositionEnd:!t}),t?(this._isCompositionStart&&=!1,this._previousIMEContent=o):this._resetIME()}}_finalizeComposition(){let e=this._docImeInputManagerService.getActiveRange();e!=null&&this._docStateEmitService.emitStateChangeInfo({commandId:n.RichTextEditingMutation.id,unitId:this._context.unitId,segmentId:e.segmentId,trigger:sr.id,redoState:{actions:[],textRanges:this._docImeInputManagerService.getPreviousDocRanges().length?this._docImeInputManagerService.getPreviousDocRanges():[e]},undoState:{actions:[],textRanges:this._docImeInputManagerService.getPreviousDocRanges().length?this._docImeInputManagerService.getPreviousDocRanges():[e],options:this._docImeInputManagerService.getPreviousSelectionOptions()??void 0},isCompositionEnd:!0})}_resetIME(){this._previousIMEContent=``,this._isCompositionStart=!0,this._docImeInputManagerService.clearUndoRedoMutationParamsCache(),this._docImeInputManagerService.setActiveRange(null),this._docImeInputManagerService.setPreviousDocRanges([]),this._docImeInputManagerService.setPreviousSelectionOptions(null)}};__=A([k(1,(0,t.Inject)(J)),k(2,(0,t.Inject)(or)),k(3,(0,t.Inject)(n.DocSkeletonManagerService)),k(4,(0,t.Inject)(n.DocStateEmitService)),k(5,(0,t.Inject)(n.DocSelectionManagerService)),k(6,t.ICommandService)],__);let v_=class extends t.Disposable{constructor(e,t,n,r,i,a,o){super(),this._context=e,this._docSelectionRenderService=t,this._docSkeletonManagerService=n,this._commandService=r,this._docMenuStyleService=i,this._embedRuntimeFocusCoordinator=o,O(this,`_onInputSubscription`,void 0),this._init()}dispose(){var e;super.dispose(),(e=this._onInputSubscription)==null||e.unsubscribe()}_init(){this._initialNormalInput()}_initialNormalInput(){this._onInputSubscription=this._docSelectionRenderService.onInput$.subscribe(async e=>{var r,i,a,o,s;if(e==null)return;let{unitId:c}=this._context,{event:l,content:u=``,activeRange:d,rangeList:f=[]}=e,p=l;if(p.defaultPrevented||!t.SHEET_EDITOR_UNITS.includes(c)&&this._isEmbedChildInputActive(c,p))return;let m=this._docSkeletonManagerService.getSkeleton();if(p.data==null||m==null||d==null)return;let{segmentId:h}=d,g=(r=this._context.unit.getSelfOrHeaderFooterModel(h))==null?void 0:r.getBody();if(!g)return;let _=this._docMenuStyleService.getDefaultStyle(),v=this._docMenuStyleService.getStyleCache(),y=C((g==null?void 0:g.customRanges)??[],d.endOffset,t.SHEET_EDITOR_UNITS.includes(c)),b=S(g,d.endOffset,_,v,t.SHEET_EDITOR_UNITS.includes(c)),x=w((g==null?void 0:g.customDecorations)??[],d.endOffset),T={dataStream:u,textRuns:b?[{...b,st:0,ed:u.length}]:[],customRanges:y?[{...y,startIndex:0,endIndex:u.length-1}]:[],customDecorations:x.map(e=>({...e,startIndex:0,endIndex:u.length-1}))};!d.collapsed&&((i=g.blockRanges)!=null&&i.length||(a=g.columnGroups)!=null&&a.length||(o=g.customBlocks)!=null&&o.length||(s=g.tables)!=null&&s.length)||f.length>1||this._docSelectionRenderService.getAllRectRanges().length>0?await this._commandService.executeCommand(br.id,{unitId:c,body:T,segmentId:h}):await this._commandService.executeCommand(n.InsertTextCommand.id,{unitId:c,body:T,range:d,segmentId:h}),u===` `&&await this._commandService.executeCommand(N.id)})}_isEmbedChildInputActive(e,t){var n,r,i;return(n=this._embedRuntimeFocusCoordinator)!=null&&n.isChildUnitRuntimeEvent(e,t.target,t)||(r=this._embedRuntimeFocusCoordinator)!=null&&r.isChildUnitInActiveSession(e)?!1:!!((i=this._embedRuntimeFocusCoordinator)!=null&&i.shouldSuppressHostInteraction(e,t.target,t))}};v_=A([k(1,(0,t.Inject)(J)),k(2,(0,t.Inject)(n.DocSkeletonManagerService)),k(3,t.ICommandService),k(4,(0,t.Inject)(I)),k(5,(0,t.Optional)(Cr)),k(6,(0,t.Optional)(wr))],v_);let y_=class extends t.Disposable{constructor(e,n,r){super(),this._context=e,this._docPageLayoutService=n,this._textSelectionManagerService=r;let i=this._context.unitId;if((0,t.isInternalEditorID)(i))return this;this._initResize()}_initResize(){this.disposeWithMe((0,t.fromEventSubject)(this._context.engine.onTransformChange$).pipe((0,a.filter)(e=>e.type===r.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),(0,a.throttleTime)(0,a.animationFrameScheduler)).subscribe(()=>{this._disposed||(this._docPageLayoutService.calculatePagePosition(),this._textSelectionManagerService.refreshSelection())}))}};y_=A([k(1,(0,t.Inject)(Bo)),k(2,(0,t.Inject)(n.DocSelectionManagerService))],y_);let b_=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c){super(),this._context=e,this._commandService=t,this._editorService=n,this._instanceSrv=r,this._docSelectionRenderService=i,this._docSkeletonManagerService=a,this._docSelectionManagerService=o,this._embedRuntimeFocusCoordinator=c,O(this,`_loadedMap`,new WeakSet),this._initialize()}_initialize(){this._init(),this._skeletonListener(),this._commandExecutedListener(),this._refreshListener(),this._syncSelection()}_init(){let{unitId:e}=this._context,t=f(this._context);t!=null&&t.document!=null&&(this._loadedMap.has(t.document)||(this._initialMain(e),this._loadedMap.add(t.document)))}_refreshListener(){this.disposeWithMe(this._docSelectionManagerService.refreshSelection$.subscribe(e=>{if(e==null)return;let{unitId:t,docRanges:n,isEditing:r,options:i}=e;t===this._context.unitId&&(this._docSelectionRenderService.removeAllRanges(),this._docSelectionRenderService.addDocRanges(n,r,i))}))}_syncSelection(){this.disposeWithMe(this._docSelectionRenderService.textSelectionInner$.subscribe(e=>{e!=null&&(!(0,t.isInternalEditorID)(this._context.unitId)&&this._isEmbedChildInteractionActive(this._context.unitId)||this._docSelectionManagerService.__replaceTextRangesWithNoRefresh(e,{unitId:this._context.unitId,subUnitId:this._context.unitId}))}))}_initialMain(e){let{document:n,scene:i}=f(this._context);this.disposeWithMe(n.onPointerEnter$.subscribeEvent(()=>{this._isEditorReadOnly(e)||(n.cursor=r.CURSOR_TYPE.TEXT)})),this.disposeWithMe(n.onPointerLeave$.subscribeEvent(()=>{n.cursor=r.CURSOR_TYPE.DEFAULT,i.resetCursor()})),this.disposeWithMe(n.onPointerDown$.subscribeEvent((i,a)=>{var o;if(this._isEditorReadOnly(e)||this._isEmbedInteractionEvent(i,e))return;let s=this._instanceSrv.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);(s==null?void 0:s.getUnitId())!==e&&this._instanceSrv.setCurrentUnitForType(e),(o=this._editorService.getEditorRenderConfig(e))!=null&&o.preserveHostFocus||this._instanceSrv.focusUnit(e);let c=this._docSkeletonManagerService.getSkeleton(),{offsetX:l,offsetY:u}=i,d=this._getTransformCoordForDocumentOffset(l,u);if(d!=null){let{pageLayoutType:e=r.PageLayoutType.VERTICAL,pageMarginLeft:t,pageMarginTop:i}=n.getOffsetConfig(),{editArea:a}=c.findEditAreaByCoord(d,e,t,i),o=this._docSkeletonManagerService.getViewModel(),s=o.getEditArea();s!==r.DocumentEditArea.BODY&&a!==r.DocumentEditArea.BODY&&a!==s&&o.setEditArea(a)}if(this._docSelectionRenderService.__onPointDown(i),this._editorService.getEditor(e)){this._setEditorFocus(e);let{offsetX:t,offsetY:n}=i;setTimeout(()=>{e===this._editorService.getFocusId()||this._docSelectionRenderService.isOnPointerEvent||(this._setEditorFocus(e),this._docSelectionRenderService.setCursorManually(t,n))},0)}i.button!==2&&a.stopPropagation()})),this.disposeWithMe(n.onDblclick$.subscribeEvent(t=>{this._isEditorReadOnly(e)||this._isEmbedInteractionEvent(t,e)||this._docSelectionRenderService.__handleDblClick(t)})),this.disposeWithMe(n.onTripleClick$.subscribeEvent(t=>{this._isEditorReadOnly(e)||this._isEmbedInteractionEvent(t,e)||this._docSelectionRenderService.__handleTripleClick(t)}))}_getTransformCoordForDocumentOffset(e,t){let{document:n,scene:i}=f(this._context),{documentTransform:a}=n.getOffsetConfig(),o=i.getViewports()[0];if(o==null)return;let s=o.transformVector2SceneCoord(r.Vector2.FromArray([e,t]));return a.clone().invert().applyPoint(s)}_isEditorReadOnly(e){let t=this._editorService.getEditor(e);return t?t.isReadOnly():!1}_setEditorFocus(e){this._editorService.focus(e)}_isEmbedInteractionEvent(e,n){var r,i,a;if((0,t.isInternalEditorID)(n))return!1;let o=e.target;return(r=this._embedRuntimeFocusCoordinator)!=null&&r.isChildUnitRuntimeEvent(n,o,e)||(i=this._embedRuntimeFocusCoordinator)!=null&&i.isChildUnitInActiveSession(n)?!1:(a=this._embedRuntimeFocusCoordinator)!=null&&a.shouldSuppressHostInteraction(n,o,e)?!0:x_(e)}_isEmbedChildInteractionActive(e){var t;return((t=this._embedRuntimeFocusCoordinator)==null?void 0:t.shouldSuppressHostInteraction(e))===!0}_commandExecutedListener(){let e=[Oa.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)){var n;let{unitId:e}=t.params;if(e!==((n=this._docSelectionManagerService.__getCurrentSelection())==null?void 0:n.unitId)||this._isEmbedChildInteractionActive(e))return;this._docSelectionManagerService.refreshSelection()}}))}_skeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(e=>{if(!e)return;let{unitId:n}=this._context;if(!(0,t.isInternalEditorID)(n)){if(this._isEmbedChildInteractionActive(n))return;this._docSelectionRenderService.focus();let e=Uo(this._context.unit.getSnapshot());this._docSelectionManagerService.replaceDocRanges([{startOffset:e,endOffset:e}],{unitId:n,subUnitId:n},!1)}}))}};b_=A([k(1,t.ICommandService),k(2,Oi),k(3,t.IUniverInstanceService),k(4,(0,t.Inject)(J)),k(5,(0,t.Inject)(n.DocSkeletonManagerService)),k(6,(0,t.Inject)(n.DocSelectionManagerService)),k(7,(0,t.Optional)(Cr)),k(8,(0,t.Optional)(wr))],b_);function x_(e){var t;let n=e.target;if(typeof Element<`u`&&n instanceof Element&&n.closest(`[data-embed-interaction-boundary-owner]`)!=null)return!0;if(typeof document>`u`)return!1;let r=S_(e,n),i=r==null?void 0:r.clientX,a=r==null?void 0:r.clientY;return typeof i!=`number`||typeof a!=`number`||!Number.isFinite(i)||!Number.isFinite(a)||typeof document.elementFromPoint!=`function`?!1:((t=document.elementFromPoint(i,a))==null?void 0:t.closest(`[${Sr}]`))!=null}function S_(e,t){if(Number.isFinite(e.clientX)&&Number.isFinite(e.clientY))return{clientX:e.clientX,clientY:e.clientY};if(typeof Element<`u`&&t instanceof Element&&Number.isFinite(e.offsetX)&&Number.isFinite(e.offsetY)){let n=t.getBoundingClientRect();return{clientX:n.left+e.offsetX,clientY:n.top+e.offsetY}}if(Number.isFinite(e.x)&&Number.isFinite(e.y))return{clientX:e.x,clientY:e.y}}function C_(e,t,n){return t&&(e.ctrlKey||e.metaKey)}let w_=class extends t.Disposable{constructor(e,n,r,i,a,o,s,c,l,u,d){super(),this._context=e,this._contextService=n,this._docSkeletonManagerService=r,this._univerInstanceService=i,this._commandService=a,this._textSelectionManagerService=o,this._editorService=s,this._docPageLayoutService=c,this._renderManagerService=l,this._docViewScaleService=u,this._embedInteractionBoundaryService=d,O(this,`_isSheetEditor`,!1),O(this,`_initTimer`,void 0),O(this,`_updateTimer`,void 0),this._initSkeletonListener(),this._initCommandExecutedListener(),this._isSheetEditor=this._context.unitId===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY;let f=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),p=f&&this._renderManagerService.getRenderUnitById(f.getUnitId());this._initTimer=window.setTimeout(()=>{let e=p&&this._isSheetEditor?p.scene.scaleX:No(this._context.unit);this.updateViewZoom(e,!0)},20),(0,t.isInternalEditorID)(this._context.unitId)||this._initZoomEventListener()}dispose(){window.clearTimeout(this._initTimer),window.clearTimeout(this._updateTimer)}_initSkeletonListener(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(e=>{if(e==null)return;let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);n&&(this._updateTimer=window.setTimeout(()=>{let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),r=e&&this._renderManagerService.getRenderUnitById(e.getUnitId()),i=this._isSheetEditor?(r==null?void 0:r.scene.scaleX)||1:No(n);this.updateViewZoom(i,!1)}))}))}_initCommandExecutedListener(){let e=[Oa.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)&&t.params.unitId===this._context.unitId){let e=this._context.unit,t=No(e);this.updateViewZoom(t)}})),this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{var n;(e.id===Ha.id||e.id===ms.id&&((n=e.params)==null?void 0:n.documentFlavor)===t.DocumentFlavor.MODERN)&&this._commandService.executeCommand(ka.id,{zoomRatio:1,documentId:this._context.unitId})}))}updateViewZoom(e,n=!0){var r;let i=f(this._context),a=this._docViewScaleService.getViewScale(e);if(i.scene.scale(a,a),this._editorService.isEditor(this._context.unitId)||this._docPageLayoutService.calculatePagePosition(),n&&!this._editorService.isEditor(this._context.unitId)&&!((r=this._embedInteractionBoundaryService)!=null&&r.hasRecentInteraction())&&this._textSelectionManagerService.refreshSelection(),!(0,t.isInternalEditorID)(this._context.unitId)){var o;(o=i.scene.getTransformer())==null||o.clearSelectedObjects()}let s=this._univerInstanceService.getUnitCreateOptions(this._context.unitId);((s==null?void 0:s.embeddedRender)===!0||(s==null?void 0:s.skipAutoRender)===!0)&&(this._context.scene.makeDirty(),this._context.scene.render())}_initZoomEventListener(){let e=this._context.scene;this.disposeWithMe(e.onMouseWheel$.subscribeEvent(e=>{let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!n)return;let{documentFlavor:i}=n.getSnapshot().documentStyle;if(!C_(e,!!this._contextService.getContextValue(t.FOCUSING_DOC),i))return;let a=(0,r.getNextWheelZoomRatio)(No(n),e);this._commandService.executeCommand(ka.id,{zoomRatio:a,documentId:n.getUnitId()}),e.preventDefault()}))}};w_=A([k(1,t.IContextService),k(2,(0,t.Inject)(n.DocSkeletonManagerService)),k(3,t.IUniverInstanceService),k(4,t.ICommandService),k(5,(0,t.Inject)(n.DocSelectionManagerService)),k(6,Oi),k(7,(0,t.Inject)(Bo)),k(8,r.IRenderManagerService),k(9,(0,t.Inject)(zo)),k(10,(0,t.Optional)(Cr))],w_);let T_=class{constructor(e){this._renderManagerService=e}transformChangeStateInfo(e){var t;let{isCompositionEnd:n,isSync:r,syncer:i}=e;if(!n)return e;let a=(t=this._renderManagerService.getRenderUnitById(r?i:e.unitId))==null?void 0:t.with(or);if(a==null)return null;let o=a.fetchComposedUndoRedoMutationParams();if(o==null)throw Error(`historyParams is null in RichTextEditingMutation`);let{undoMutationParams:s,redoMutationParams:c,previousActiveRange:l,previousDocRanges:u,previousSelectionOptions:d}=o;return{...e,redoState:{...e.redoState,actions:c.actions,textRanges:c.textRanges,options:c.options,isEditing:c.isEditing},undoState:{...e.undoState,actions:s.actions,textRanges:u.length?u:[l],options:d??void 0}}}};T_=A([k(0,r.IRenderManagerService)],T_);let E_=(0,t.createInterceptorKey)(`PRINTING_COMPONENT_COLLECT`),D_=(0,t.createInterceptorKey)(`PRINTING_DOM_COLLECT`);var O_=class extends t.Disposable{constructor(){super(),O(this,`_printComponentMap`,new Map),O(this,`_printPreparationHandlers`,new Set),O(this,`interceptor`,new t.InterceptorManager({PRINTING_COMPONENT_COLLECT:E_,PRINTING_DOM_COLLECT:D_})),this.disposeWithMe(this.interceptor.intercept(this.interceptor.getInterceptPoints().PRINTING_COMPONENT_COLLECT,{priority:-1,handler:e=>e})),this.disposeWithMe(this.interceptor.intercept(this.interceptor.getInterceptPoints().PRINTING_DOM_COLLECT,{priority:-1,handler:e=>e}))}registerPrintComponent(e,t){this._printComponentMap.set(e,t)}getPrintComponent(e){return this._printComponentMap.get(e)}registerPrintPreparation(e){return this._printPreparationHandlers.add(e),()=>this._printPreparationHandlers.delete(e)}async preparePrint(e){await Promise.all([...this._printPreparationHandlers].map(t=>t(e)))}dispose(){this._printPreparationHandlers.clear(),super.dispose()}};let k_=`univer-doc-main-canvas`;function A_(e,t,n,r){return ur({documentFlavor:e,canvasColorService:t,editorBackgroundColor:n,isEditor:r}).canvasElementBackgroundColor}let j_=class extends t.RxDisposable{constructor(e,t){super(),this._instanceSrv=e,this._renderManagerService=t,this._init()}_init(){this._instanceSrv.getAllUnitsForType(t.UniverInstanceType.UNIVER_DOC).forEach(e=>this._createRenderer(e,this._instanceSrv.getUnitCreateOptions(e.getUnitId())??void 0)),this._instanceSrv.getTypeOfUnitAdded$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>this._createRenderer(e.unit,e.options)),this._instanceSrv.getTypeOfUnitDisposed$(t.UniverInstanceType.UNIVER_DOC).pipe((0,a.takeUntil)(this.dispose$)).subscribe(e=>this._disposeRenderer(e))}_createRenderer(e,t){if(t!=null&&t.skipAutoRender)return;let n=e.getUnitId();if(!this._renderManagerService.has(n)){this._createRenderWithId(n,e);return}let r=this._renderManagerService.getRenderUnitById(n);r&&this._syncRendererCanvas(r,e)}_createRenderWithId(e,t){let n=this._renderManagerService.createRender(e);t&&this._syncRendererCanvas(n,t)}_syncRendererCanvas(e,n){let r=n.getUnitId(),i=n.getSnapshot().documentStyle.documentFlavor,a=e.engine.getCanvas();a.setId(k_),a.getContext().setId(k_),a.getCanvasEle().style.backgroundColor=A_(i,e.engine.canvasColorService,void 0,(0,t.isInternalEditorID)(r))}_disposeRenderer(e){let t=e.getUnitId();this._renderManagerService.removeRender(t)}};j_=A([k(0,t.IUniverInstanceService),k(1,r.IRenderManagerService)],j_);let M_={id:P.id,preconditions:hu,binding:i.KeyCode.ENTER},N_={id:R.id,preconditions:hu,binding:i.KeyCode.ENTER|i.MetaKeys.SHIFT},P_={id:Ne.id,preconditions:Q,binding:i.KeyCode.BACKSPACE},F_={id:Pe.id,preconditions:Q,binding:i.KeyCode.DELETE},I_={id:Yo.id,preconditions:Q,binding:i.KeyCode.ESC};function L_(e,t,n,r=n,i=n,a=n){return{id:po.id,binding:n,mac:r,win:i,linux:a,preconditions:Q,staticParameters:{direction:e,granularity:t}}}function R_(e,t,n,r=n,i=n,a=n){return{id:mo.id,binding:n,mac:r,win:i,linux:a,preconditions:Q,staticParameters:{direction:e,granularity:t}}}let z_={id:po.id,binding:i.KeyCode.ARROW_UP,preconditions:Q,staticParameters:{direction:t.Direction.UP}},B_={id:po.id,binding:i.KeyCode.ARROW_DOWN,preconditions:Q,staticParameters:{direction:t.Direction.DOWN}},V_={id:po.id,binding:i.KeyCode.ARROW_LEFT,preconditions:Q,staticParameters:{direction:t.Direction.LEFT}},H_={id:po.id,binding:i.KeyCode.ARROW_RIGHT,preconditions:Q,staticParameters:{direction:t.Direction.RIGHT}},U_={id:mo.id,binding:i.KeyCode.ARROW_UP|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.UP}},W_={id:mo.id,binding:i.KeyCode.ARROW_DOWN|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.DOWN}},G_={id:mo.id,binding:i.KeyCode.ARROW_LEFT|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.LEFT}},K_={id:mo.id,binding:i.KeyCode.ARROW_RIGHT|i.MetaKeys.SHIFT,preconditions:Q,staticParameters:{direction:t.Direction.RIGHT}},q_=L_(t.Direction.LEFT,`line`,i.KeyCode.HOME,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND),J_=L_(t.Direction.RIGHT,`line`,i.KeyCode.END,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND),Y_=R_(t.Direction.LEFT,`line`,i.KeyCode.HOME|i.MetaKeys.SHIFT,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),X_=R_(t.Direction.RIGHT,`line`,i.KeyCode.END|i.MetaKeys.SHIFT,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),Z_=L_(t.Direction.UP,`document`,i.KeyCode.HOME|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND),Q_=L_(t.Direction.DOWN,`document`,i.KeyCode.END|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND),$_=R_(t.Direction.UP,`document`,i.KeyCode.HOME|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),ev=R_(t.Direction.DOWN,`document`,i.KeyCode.END|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT),tv=L_(t.Direction.LEFT,`word`,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_LEFT|i.MetaKeys.ALT),nv=L_(t.Direction.RIGHT,`word`,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_RIGHT|i.MetaKeys.ALT),rv=R_(t.Direction.LEFT,`word`,i.KeyCode.ARROW_LEFT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_LEFT|i.MetaKeys.ALT|i.MetaKeys.SHIFT),iv=R_(t.Direction.RIGHT,`word`,i.KeyCode.ARROW_RIGHT|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_RIGHT|i.MetaKeys.ALT|i.MetaKeys.SHIFT),av=L_(t.Direction.UP,`paragraph`,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_UP|i.MetaKeys.ALT),ov=L_(t.Direction.DOWN,`paragraph`,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND,i.KeyCode.ARROW_DOWN|i.MetaKeys.ALT),sv=R_(t.Direction.UP,`paragraph`,i.KeyCode.ARROW_UP|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_UP|i.MetaKeys.ALT|i.MetaKeys.SHIFT),cv=R_(t.Direction.DOWN,`paragraph`,i.KeyCode.ARROW_DOWN|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT,i.KeyCode.ARROW_DOWN|i.MetaKeys.ALT|i.MetaKeys.SHIFT),lv={id:Kn.id,binding:i.KeyCode.A|i.MetaKeys.CTRL_COMMAND,preconditions:e=>e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&(e.getContextValue(t.FOCUSING_DOC)||e.getContextValue(t.EDITOR_ACTIVATED))};function uv(e,t){let n=t|i.MetaKeys.CTRL_COMMAND|i.MetaKeys.ALT;return{id:e,binding:n,mac:n,win:n,linux:n,preconditions:Q}}let dv=uv(za.id,i.KeyCode.Digit0),fv=uv(Pa.id,i.KeyCode.Digit1),pv=uv(Fa.id,i.KeyCode.Digit2),mv=uv(Ia.id,i.KeyCode.Digit3),hv=uv(La.id,i.KeyCode.Digit4),gv=uv(Ra.id,i.KeyCode.Digit5),_v=class extends t.Plugin{constructor(e=_o,n,r,i,a){super(),this._config=e,this._injector=n,this._renderManagerSrv=r,this._commandService=i,this._configService=a;let{menu:o,...s}=(0,t.merge)({},_o,this._config);o&&this._configService.setConfig(`menu`,o,{merge:!0}),this._configService.setConfig(ho,s),this._initDependencies(n),this._initializeShortcut(),this._initCommand()}onReady(){this._initRenderBasics(),this._initAutoFocus(),(0,t.touchDependencies)(this._injector,[[j_]])}onRendered(){this._initRenderModules(),(0,t.touchDependencies)(this._injector,[[e_],[l_],[Xo],[$o],[u_],[Zg],[Pp]])}_initCommand(){[Ne,Pe,ji,Ni,Fi,Li,zi,Vi,Ui,Gi,qi,Yi,Zi,ta,$i,ra,L,R,Oe,Dn,ke,Ae,Oa,_a,ma,ua,Ca,wa,Ta,Y,Ea,Wn,Xa,oo,no,ro,so,io,ao,Za,Qa,$a,Yo,co,M,N,P,pa,da,ha,ga,va,sr,Ha,im,fe,Ee,pr,_r,ka,Kn,Zo,es,ns,rs,po,mo,xr,br,la,Rs,Aa,Ma,Sn,wn,Pa,Fa,Ia,La,Ra,za,Ba,Va,ba,xa,Sa,Gn,ms,hs].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))}),[xn,Cn,Tn,Be].forEach(e=>this.disposeWithMe(this._commandService.registerMultipleCommand(e)))}_initializeShortcut(){[z_,B_,H_,V_,U_,W_,G_,K_,q_,J_,Y_,X_,av,ov,sv,cv,Z_,Q_,$_,ev,tv,nv,rv,iv,lv,P_,F_,I_,M_,N_,_u,dv,fv,pv,mv,hv,gv].forEach(e=>{this._injector.get(i.IShortcutService).registerShortcut(e)})}_initDependencies(e){(0,t.mergeOverrideWithDependencies)([[O_],[f_],[g_],[Zg],[Pp],[e_],[u_],[l_],[Xo],[$o],[Oi,{useClass:Di}],[hn,{useClass:gn}],[B],[z,{useClass:B}],[fn],[ip],[j_],[n.IDocStateChangeInterceptorService,{useClass:T_}],[j],[I]],this._config.override).forEach(t=>e.add(t))}_initAutoFocus(){let e=this._injector.get(t.IUniverInstanceService),n=this._injector.get(Oi);this.disposeWithMe(e.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).subscribe(t=>{if(!t)return;let r=t.getUnitId();n.isEditor(r)||e.focusUnit(r)}))}_initRenderBasics(){[[n.DocSkeletonManagerService],[J],[n.DocInterceptorService],[zo],[Bo],[or],[Vo],[w_]].forEach(e=>{this._renderManagerSrv.registerRenderModule(t.UniverInstanceType.UNIVER_DOC,e)})}_initRenderModules(){[[Cp],[Th],[kh],[yo],[b_],[i_],[y_],[bo],[m_],[d_],[f_],[v_],[__],[g_]].forEach(e=>{this._renderManagerSrv.registerRenderModule(t.UniverInstanceType.UNIVER_DOC,e)})}};O(_v,`pluginName`,`DOC_UI_PLUGIN`),O(_v,`packageName`,nm),O(_v,`version`,rm),_v=A([(0,t.DependentOn)(n.UniverDocsPlugin,r.UniverRenderEnginePlugin),k(1,(0,t.Inject)(t.Injector)),k(2,r.IRenderManagerService),k(3,t.ICommandService),k(4,t.IConfigService)],_v);function vv(e,n){var r;if(e!==t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&e!==t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY)return!1;let i=n.getUnit(e,t.UniverInstanceType.UNIVER_DOC);return(i==null||(r=i.getBody())==null||(r=r.dataStream)==null?void 0:r.startsWith(`=`))??!1}function yv(e){var n;let{commandId:r,commandService:i,editorUnitId:a,univerInstanceService:o}=e,s=a===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY||a===t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY;if(vv(a,o))return;let c=((n=o.getFocusedUnit())==null?void 0:n.getUnitId())??null,l=!s&&c!==null&&c!==a;!s&&c!==a&&o.focusUnit(a),i.executeCommand(r).finally(()=>{l&&o.focusUnit(c)})}function bv(e){let{commandService:n,editorUnitId:r,handler:a,keyCodes:o=[],univerInstanceService:s}=e,c=i.MetaKeys.CTRL_COMMAND,l=i.MetaKeys.CTRL_COMMAND|i.MetaKeys.SHIFT;return{keyCodes:[{keyCode:i.KeyCode.Z,metaKey:c},{keyCode:i.KeyCode.Y,metaKey:c},{keyCode:i.KeyCode.Z,metaKey:l},...o],handler:(e,o)=>{switch(`${e}:${o??0}`){case`${i.KeyCode.Z}:${c}`:yv({commandId:t.UndoCommand.id,commandService:n,editorUnitId:r,univerInstanceService:s});return;case`${i.KeyCode.Y}:${c}`:case`${i.KeyCode.Z}:${l}`:yv({commandId:t.RedoCommand.id,commandService:n,editorUnitId:r,univerInstanceService:s});return}a==null||a(e,o)}}}function xv(e){let{editorId:n,initialValue:r,container:a,preserveHostFocus:o,autoFocus:s,isSingle:l,canvasStyle:u}=e,d=(0,c.useMemo)(()=>s??!1,[]),[f,p]=(0,c.useState)(),m=(0,i.useDependency)(Oi);return(0,c.useLayoutEffect)(()=>{if(a.current){let i=typeof r==`string`?t.RichTextBuilder.create().insertText(r).getData():t.Tools.deepClone(r),s={body:{dataStream:typeof r==`string`?`${r}\r\n`:`\r
39
+ `,textRuns:[],customBlocks:[],customDecorations:[],customRanges:[],paragraphs:[{startIndex:0,paragraphId:(0,t.createParagraphId)(new Set)}]},...i,documentStyle:{...i==null?void 0:i.documentStyle,pageSize:{width:l?1/0:a.current.clientWidth,height:1/0}},id:n},c=m.register({autofocus:!0,canvasStyle:u,editorUnitId:n,initialSnapshot:s,preserveHostFocus:o},a.current),f=m.getEditor(n);if(p(f),d){var e;m.focus(n);let t=(((e=s.body)==null?void 0:e.dataStream.length)??2)-2;f.setSelectionRanges([{startOffset:t,endOffset:t}])}return()=>{c==null||c.dispose()}}},[]),f}let Sv=(e,t,n)=>{let r=(0,i.useDependency)(Oi);(0,c.useEffect)(()=>{let i=i=>{var a;r.getFocusId()===e&&((a=i.target)==null||(a=a.dataset)==null?void 0:a.editorid)!==e&&t.current&&!t.current.contains(i.target)&&(n==null||n())},a=setTimeout(()=>{document.addEventListener(`click`,i)},100);return()=>{document.removeEventListener(`click`,i),clearTimeout(a)}},[e,r,n,t])};function Cv(e){let t=(0,i.useDependency)(r.IRenderManagerService).getRenderUnitById(e),n=t==null?void 0:t.with(J),a=(0,i.useObservable)(n==null?void 0:n.textSelectionInner$);return!!(((n==null?void 0:n.isFocusing)??!1)&&a!=null&&a.textRanges.some(e=>e.collapsed))}function wv(e,n,a){let o=(0,i.useDependency)(t.ICommandService),s=(0,i.useDependency)(i.IShortcutService),l=(0,c.useMemo)(()=>(0,t.generateRandomId)(4),[]);(0,c.useEffect)(()=>{if(!a||!e||!n)return;let i=a.getEditorId(),c=`sheet.operation.editor-${i}-keyboard-${l}`,u=new t.DisposableCollection;return u.add(o.registerCommand({id:c,type:t.CommandType.OPERATION,handler(e,t){let{keyCode:r,metaKey:i}=t;n.handler(r,i)}})),n.keyCodes.map(e=>({id:c,binding:e.metaKey?e.keyCode|e.metaKey:e.keyCode,eventPreconditions:e.nativeTextEditorBehavior==null?void 0:e=>e.target instanceof HTMLElement&&e.target.id===`__editor_${i}`,nativeTextEditorBehavior:e.nativeTextEditorBehavior,preconditions:()=>!0,priority:901,staticParameters:{eventType:r.DeviceInputEventType.Keyboard,keyCode:e.keyCode,metaKey:e.metaKey}})).forEach(e=>{u.add(s.registerShortcut(e))}),()=>{u.dispose()}},[o,n,a,e,l,s])}let Tv=(e,n,a,o)=>{let s=(0,i.useDependency)(t.ICommandService),l=(0,i.useDependency)(i.IShortcutService),u=`doc.rich-text-editor.arrow.${(0,c.useId)()}`,d=(0,c.useRef)(n);d.current=n;let f=(0,c.useRef)(o);f.current=o,(0,c.useEffect)(()=>{if(!a||!e)return;let n=new t.DisposableCollection,o=(e,n)=>{if(f.current){f.current(e,n);return}let r=t.Direction.LEFT;e===i.KeyCode.ARROW_DOWN?r=t.Direction.DOWN:e===i.KeyCode.ARROW_UP?r=t.Direction.UP:e===i.KeyCode.ARROW_RIGHT&&(r=t.Direction.RIGHT),n===i.MetaKeys.SHIFT?s.executeCommand(mo.id,{direction:r}):s.executeCommand(po.id,{direction:r})};return n.add(s.registerCommand({id:u,type:t.CommandType.OPERATION,handler(e,t){let{keyCode:n,metaKey:r}=t;o(n,r)}})),[{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}].map(({keyCode:e,metaKey:t})=>({id:u,binding:t?e|t:e,preconditions:()=>a.isFocus(),priority:900,staticParameters:{eventType:r.DeviceInputEventType.Keyboard,keyCode:e,metaKey:t}})).forEach(e=>{n.add(l.registerShortcut(e))}),()=>{n.dispose()}},[s,a,e,u,l])};function Ev(e,r){let a=(0,i.useDependency)(t.ICommandService);(0,c.useEffect)(()=>{if(!e)return;let i=a.onCommandExecuted(i=>{if(i.id===n.RichTextEditingMutation.id){var a;if(i.params.unitId!==e.getEditorId())return;let n=e.getDocumentData();r(n,(0,t.getPlainText)(((a=n.body)==null?void 0:a.dataStream)??``))}});return()=>{i.dispose()}},[e,r,a])}let Dv=(e,i=!0,a,o)=>{let s=(0,c.useCallback)(()=>{if(e){var t;let{scene:r,mainComponent:a}=e.render,o=e.render.with(n.DocSkeletonManagerService),{width:s,height:c}=e.getBoundingClientRect();o.getViewModel().getDataModel().updateDocumentDataPageSize(i?1/0:s,1/0),r.transformByState({width:s,height:c}),a==null||a.resize(s,c),a==null||a.translate(0,0),(t=e.render.components.get(`__Document_Render_Background__`))==null||t.translate(0,0);let l=e.getSelectionRanges();l.length>0&&e.setSelectionRanges(l,!1)}},[e,i]),l=(0,c.useMemo)(()=>(0,t.debounce)(()=>{if(!a||!e||!a||e.render.isDisposed())return;let t=e.render.with(n.DocSkeletonManagerService).getSkeleton(),{scene:s,mainComponent:c}=e.render,l=s.getViewport(`viewMain`),{actualWidth:u,actualHeight:d}=t.getActualSize(),{width:f,height:p}=e.getBoundingClientRect(),m=l==null?void 0:l.getScrollBar(),h=Math.max(u,f),g=Math.max(d,p);if(s.transformByState({width:h,height:g}),c==null||c.resize(h,g),!i)if(d>p)m==null?l&&(m=new r.ScrollBar(l,{enableHorizontal:!1,enableVertical:!0,barSize:8,minThumbSizeV:8})):l==null||l.resetCanvasSizeAndUpdateScroll(),o&&(l==null||l.scrollToBarPos({x:0,y:1/0}));else{var _;m=null,l==null||l.scrollToBarPos({x:0,y:0}),l==null||(_=l.getScrollBar())==null||_.dispose()}else if(u>f)m==null?l&&new r.ScrollBar(l,{barSize:8,enableVertical:!1,enableHorizontal:!0,minThumbSizeV:8}):l==null||l.resetCanvasSizeAndUpdateScroll(),o&&(l==null||l.scrollToBarPos({x:1/0,y:0}));else{var v;m=null,l==null||l.scrollToBarPos({x:0,y:0}),l==null||(v=l.getScrollBar())==null||v.dispose()}},30),[e,a,i,o]);return(0,c.useEffect)(()=>{if(a&&e){let e=setTimeout(()=>{s(),l()},500);return()=>{clearTimeout(e)}}},[e,a,s,l]),(0,c.useEffect)(()=>{if(a&&e){let t=e.input$.subscribe(()=>{l()});return()=>{t.unsubscribe()}}},[e,a,l]),{resize:s,checkScrollBar:l}};e.AfterSpaceCommand=N,e.AlignCenterCommand=wa,e.AlignJustifyCommand=Ea,e.AlignLeftCommand=Ca,e.AlignMenuItemFactory=Uc,e.AlignOperationCommand=Y,e.AlignRightCommand=Ta,e.BackgroundColorSelectorMenuItemFactory=Zc,e.BoldMenuItemFactory=rc,e.BreakLineCommand=R,e.BulletListCommand=ma,e.BulletListTypePicker=Ws,e.ChangeListNestingLevelCommand=pa,e.ChangeListNestingLevelType=fa,e.ChangeListTypeCommand=da,e.CheckListCommand=ha,e.CoverContentCommand=_r,e.CreateDocTableCommand=Xa,e.CutContentCommand=Ee,e.DEFAULT_DOC_FIT_TO_WIDTH_OPTIONS=go,e.DOCS_COMPONENT_BACKGROUND_LAYER_INDEX=0,e.DOCS_COMPONENT_DEFAULT_Z_INDEX=10,e.DOCS_COMPONENT_HEADER_LAYER_INDEX=4,e.DOCS_COMPONENT_MAIN_LAYER_INDEX=2,e.DOCS_UI_PLUGIN_CONFIG_KEY=ho,e.DOCS_VIEW_KEY=u,e.DOC_CONTENT_INSERT_MENU_ID=Pl,e.DOC_CUSTOM_RANGE_CHROME_BACKGROUND_ALPHA=_,e.DOC_CUSTOM_RANGE_CHROME_RADIUS=1,e.DOC_EMBED_INTERACTION_BOUNDARY_OWNER_ATTRIBUTE=Sr,e.DOC_PARAGRAPH_T_ALIGN_MENU_ID=zl,e.DOC_PARAGRAPH_T_COLORS_MENU_ID=Bl,e.DOC_PARAGRAPH_T_DIVIDER_MENU_ID=Rl,e.DOC_PARAGRAPH_T_EDIT_MENU_ID=Ll,e.DOC_PARAGRAPH_T_INSERT_BELOW_MENU_ID=Vl,e.DOC_PARAGRAPH_T_INSERT_MENU_ID=Il,e.DOC_TABLE_BLOCK_MENU_ID=Fl,e.DOC_VERTICAL_PADDING=4,e.DeleteCurrentParagraphCommand=Be,e.DeleteCustomBlockCommand=Oe,e.DeleteLeftCommand=Ne,e.DeleteRightCommand=Pe,Object.defineProperty(e,"DocAutoFormatService",{enumerable:!0,get:function(){return j}}),Object.defineProperty(e,"DocBackScrollRenderController",{enumerable:!0,get:function(){return yo}}),Object.defineProperty(e,"DocCanvasPopManagerService",{enumerable:!0,get:function(){return ip}}),e.DocClipboardPasteAdapterService=B,e.DocCopyCommand=xn,e.DocCreateTableOperation=fo,e.DocCutCommand=Cn,Object.defineProperty(e,"DocEventManagerService",{enumerable:!0,get:function(){return Cp}}),Object.defineProperty(e,"DocFloatMenuService",{enumerable:!0,get:function(){return Th}}),e.DocHtmlExportService=fn,e.DocIMEInputManagerService=or,Object.defineProperty(e,"DocPageLayoutService",{enumerable:!0,get:function(){return Bo}}),Object.defineProperty(e,"DocParagraphMenuService",{enumerable:!0,get:function(){return kh}}),Object.defineProperty(e,"DocParagraphPlaceholderRenderController",{enumerable:!0,get:function(){return bo}}),e.DocPasteCommand=Tn,e.DocPrintInterceptorService=O_,Object.defineProperty(e,"DocRenderController",{enumerable:!0,get:function(){return Vo}}),e.DocSelectAllCommand=Kn,Object.defineProperty(e,"DocSelectionRenderService",{enumerable:!0,get:function(){return J}}),e.DocTableDeleteColumnsCommand=Qa,e.DocTableDeleteRowsCommand=Za,e.DocTableDeleteTableCommand=$a,e.DocTableInsertColumnCommand=so,e.DocTableInsertColumnLeftCommand=io,e.DocTableInsertColumnRightCommand=ao,e.DocTableInsertRowAboveCommand=no,e.DocTableInsertRowBellowCommand=ro,e.DocTableInsertRowCommand=oo,e.DocTableTabCommand=co,Object.defineProperty(e,"DocUIController",{enumerable:!0,get:function(){return Pp}}),Object.defineProperty(e,"DocViewScaleService",{enumerable:!0,get:function(){return zo}}),Object.defineProperty(e,"DocsRenderService",{enumerable:!0,get:function(){return j_}}),e.DocsUIMenuSchema=mu,e.EMPTY_PARAGRAPH_MENU_ID=hl,e.Editor=Ti,Object.defineProperty(e,"EditorService",{enumerable:!0,get:function(){return Di}}),e.EnterCommand=P,e.FLOAT_TEXT_STYLE_MENU_ID=fc,e.FLOAT_TOOLBAR_MENU_POSITION=pc,e.FloatTextStyleMenuItemFactory=gc,e.FontFamilySelectorMenuItemFactory=lc,e.FontSizeSelectorMenuItemFactory=uc,e.HorizontalLineCommand=Wn,e.IDocClipboardPasteAdapterService=z,e.IDocClipboardService=hn,e.IDocEmbedInteractionBoundaryService=Cr,e.IDocEmbedRuntimeFocusCoordinator=wr,e.IEditorService=Oi,e.IMEInputCommand=sr,e.INSERT_BELLOW_MENU_ID=Nl,e.InnerPasteCommand=fe,e.InsertCustomRangeCommand=la,e.ItalicMenuItemFactory=ic,e.ListOperationCommand=ua,e.MergeTwoParagraphCommand=ke,e.MoveCursorOperation=po,e.MoveDocBlockCommand=Dn,e.MoveSelectionOperation=mo,e.NORMAL_TEXT_SELECTION_PLUGIN_NAME=`normalTextSelectionPluginName`,e.NodePositionConvertToCursor=Mr,e.NodePositionConvertToRectRange=Yr,e.OrderListCommand=_a,e.OrderListTypePicker=Hs,e.ParagraphMenuInsertBelowSubmenuItemFactory=eu,e.PastePluginLark=vt,e.PastePluginUniver=xt,e.PastePluginWord=St,e.QuickListCommand=va,e.RectRange=ci,e.ReplaceSelectionCommand=br,e.ReplaceSnapshotCommand=pr,e.ReplaceTextRunsCommand=xr,e.ResetInlineFormatTextBackgroundColorCommand=ta,e.ResetInlineFormatTextColorCommand=Yi,e.RichTextEditor=e=>{let{className:o,autoFocus:u,onFocusChange:d,initialValue:f,onClickOutside:p,preserveHostFocus:m,keyboardEventConfig:h,moveCursor:g=!0,style:_,isSingle:v,editorId:y,onHeightChange:b,onChange:x,defaultHeight:S=32,maxHeight:C=32,icon:w,editorRef:T,placeholder:E,noStyle:D}=e;(0,i.useDependency)(Oi);let O=(0,i.useDependency)(t.ICommandService),k=(0,i.useDependency)(t.IUniverInstanceService),A=(0,i.useEvent)(d),j=(0,i.useEvent)(p),[M,N]=(0,c.useState)(S),P=(0,c.useRef)(null),F=(0,c.useMemo)(()=>y??(0,t.createInternalEditorID)(`RICH_TEXT_EDITOR-${(0,t.generateRandomId)(4)}`),[y]),I=xv({editorId:F,initialValue:f,container:P,preserveHostFocus:m,autoFocus:u,isSingle:v}),L=(0,i.useDependency)(r.IRenderManagerService).getRenderUnitById(F),R=Cv(F),z=L==null?void 0:L.with(J),B=(0,i.useObservable)(I?()=>(0,a.merge)(I.focus$,I.blur$).pipe((0,a.map)(()=>(z==null?void 0:z.isFocusing)??!1),(0,a.startWith)((z==null?void 0:z.isFocusing)??!1)):null,(z==null?void 0:z.isFocusing)??!1,!1,[z,I]),V=R&&B,ee=(0,c.useRef)(null),H=()=>{var e;return!t.BuildTextUtils.transform.getPlainText((I==null||(e=I.getDocumentData().body)==null?void 0:e.dataStream)??``)},U=(0,i.useObservable)(I?()=>I.selectionChange$.pipe((0,a.map)(H),(0,a.startWith)(H())):null,H(),!1,[I]),{checkScrollBar:W}=Dv(I,v,!0,!0);(0,c.useLayoutEffect)(()=>{if(!(!T||!I)){if(typeof T==`function`){T(I);return}T.current=I}},[I]);let G=(0,i.useEvent)(e=>{var r;let i=L==null?void 0:L.with(n.DocSkeletonManagerService),a=i==null?void 0:i.getSkeleton().getActualSize();a&&(b==null||b(a.actualHeight),N(Math.max(S,Math.min(a.actualHeight+10,C)))),x==null||x(e,(0,t.getPlainText)(((r=e.body)==null?void 0:r.dataStream)??``)),W()});(0,c.useEffect)(()=>{var e;let n=I==null?void 0:I.getDocumentData();A==null||A(V,(0,t.getPlainText)((n==null||(e=n.body)==null?void 0:e.dataStream)??``))},[V,A]),Sv(F,ee,j);let te=(0,c.useMemo)(()=>bv({commandService:O,univerInstanceService:k,editorUnitId:F,keyCodes:h==null?void 0:h.keyCodes,handler:h==null?void 0:h.handler}),[O,F,h,k]);return Tv(V&&g,!1,I),wv(V,te,I),Ev(I,G),(0,l.jsx)(`div`,{className:o,style:_,children:(0,l.jsxs)(`div`,{className:(0,s.clsx)({"univer-border-primary-500":V&&!D,"univer-relative univer-box-border univer-flex univer-h-8 univer-w-full univer-items-center univer-justify-around univer-gap-2 univer-rounded-md univer-pb-0.5 univer-pl-1.5 univer-pr-2 univer-pt-1.5":!D,"univer-size-full":D,[s.borderClassName]:!D}),style:{height:M},ref:ee,children:[(0,l.jsx)(`div`,{ref:P,className:`univer-relative univer-size-full`,onMouseUp:()=>I==null?void 0:I.focus()}),w,U?(0,l.jsx)(`div`,{className:`univer-absolute univer-left-[5px] univer-top-[5px] univer-text-sm univer-text-gray-500`,children:E}):null]})})},e.SetDocInputStyleCommand=L,e.SetDocZoomRatioCommand=ka,e.SetDocZoomRatioOperation=Oa,e.SetInlineFormatBoldCommand=ji,e.SetInlineFormatCommand=ra,e.SetInlineFormatFontFamilyCommand=Gi,e.SetInlineFormatFontSizeCommand=Ui,e.SetInlineFormatItalicCommand=Ni,e.SetInlineFormatStrikethroughCommand=Li,e.SetInlineFormatSubscriptCommand=zi,e.SetInlineFormatSuperscriptCommand=Vi,e.SetInlineFormatTextBackgroundColorCommand=$i,e.SetInlineFormatTextColorCommand=qi,e.SetInlineFormatTextFillCommand=Zi,e.SetInlineFormatUnderlineCommand=Fi,e.SetParagraphNamedStyleCommand=Aa,e.StrikeThroughMenuItemFactory=oc,e.SwitchDocModeCommand=Ha,e.TEXT_RANGE_LAYER_INDEX=3,e.TabCommand=M,e.TextColorSelectorMenuItemFactory=_c,e.TextRange=oi,e.ToggleCheckListCommand=ga,e.UnderlineMenuItemFactory=ac,Object.defineProperty(e,"UniverDocsUIPlugin",{enumerable:!0,get:function(){return _v}}),e.VIEWPORT_KEY=d,e.addCustomDecorationBySelectionFactory=h,e.addCustomDecorationFactory=m,e.buildMoveDocBlockActions=On,e.calcDocFitToWidthScale=Io,e.calcDocRangePositions=rp,e.collectDocsTableLikeEmbedChildUnitIds=Up,e.convertBodyToHtml=Ht,e.convertPositionsToRectRanges=si,e.createDefaultDocsTableLikeCustomBlockBleedViewport=Fp,e.createDocsCustomBlockSizeRefreshScheduler=Yp,e.createEditorUndoRedoKeyboardConfig=bv,e.deleteCustomDecorationFactory=g,e.disableMenuWhenHeaderFooterEditing=Js,e.drawDocCustomRangeChrome=y,e.executeEditorUndoRedoCommand=yv,e.genTableSource=G,e.generateParagraphs=n.generateParagraphs,e.getAnchorBounding=ii,e.getCanvasOffsetByEngine=vi,e.getCommandSkeleton=V,e.getCursorWhenDelete=je,e.getCutActionsFromDocRanges=Ce,e.getDocBlockRangeMenuId=Gl,e.getDocObjectById=p,e.getEmptyTableCell=H,e.getEmptyTableRow=U,e.getLineBounding=ai,e.getListMarkerFallbackBound=pp,e.getListParagraphContextMenuHit=dp,e.getOneTextSelectionRange=kr,e.getStyleInTextRange=sa,e.getTableColumn=W,e.getTextRangeFromCharIndex=mi,e.hasParagraphInTable=x,e.hideMenuWhenSelectionInBlockRange=nc,e.isInSameTableCell=Br,e.isTextRangeInAnyBlockRange=tc,e.isValidRectRange=zr,e.neoGetDocObject=f,e.normalizeDocFitToWidthOptions=Po,e.resolveDocCustomRangeChromeTheme=v,e.resolveDocFitBaseWidth=Lo,e.resolveDocViewScale=Ro,e.resolveDocsCustomBlockRenderViewport=tm,e.resolveDocsTableLikeCustomBlockBleedViewport=Ip,e.resolveDocsTableLikeCustomBlockContentHeight=Rp,e.resolveDocsTableLikeCustomBlockContentWidth=Lp,e.scrollDocsTableLikeCustomBlockLive=Xp,e.shouldRefreshDocsCustomBlockSizeForCommand=Kp,e.useEditor=xv,e.useEditorClickOutside=Sv,e.useIsFocusing=Cv,e.useKeyboardEvent=wv,e.useLeftAndRightArrow=Tv,e.useOnChange=Ev,e.useResize=Dv,e.whenDocAndEditorFocused=Q});