@univerjs/docs-ui 0.6.7-experimental.20250331-1a09136 → 0.6.7-experimental.20250331-45dde91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -45,7 +45,7 @@ ${i.DataStreamTreeTokenType.TABLE_CELL_END}`;break}}}_processBeforeLink(t,e){ret
45
45
  univer-flex univer-cursor-pointer univer-items-center univer-justify-center
46
46
  univer-rounded univer-bg-none univer-px-3 univer-py-1
47
47
  hover:univer-bg-black/60
48
- `,{"univer-bg-blend-color-dodge/90":n===C.value}),onClick:()=>r(C.value),children:C.icon})},C.value))}),w.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.indentation")}),w.jsxs("div",{children:[w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.left"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:s,onChange:C=>a(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.right"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:c,onChange:C=>l(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.firstLine"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:A,onChange:C=>d(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.hanging"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:u,onChange:C=>h(C!=null?C:0)})]})]}),w.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.spacing")}),w.jsxs("div",{children:[w.jsxs("div",{className:"univer-flex univer-justify-betweenuniver-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.before"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:g,onChange:C=>m(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.after"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:f,onChange:C=>p(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between item-center",children:[w.jsx("div",{className:"univer-mt-3 univer-text-xs",children:o.t("doc.paragraphSetting.lineSpace")}),w.jsxs("div",{className:"univer-mt-4 univer-flex univer-flex-col univer-gap-1.5",style:{width:162},children:[w.jsx(te.Select,{value:`${E}`,options:[{label:o.t("doc.paragraphSetting.multiSpace"),value:`${i.SpacingRule.AUTO}`},{label:o.t("doc.paragraphSetting.fixedValue"),value:`${i.SpacingRule.AT_LEAST}`}],onChange:C=>T(Number(C))}),w.jsx(we,{...R,value:S,onChange:C=>v(C!=null?C:0)})]})]})]})]})}const sc=(o,t)=>t.length===o.length&&o.some(e=>t.some(n=>n.startOffset===e.startOffset&&n.endOffset===e.endOffset));function ac(){const o=I.useDependency(i.ICommandService),t=I.useDependency(i.LocaleService),e=I.useObservable(t.currentLocale$),[n,r]=F.useState(""),s=F.useMemo(()=>i.debounce(()=>r(i.generateRandomId(4)),300),[]),a=F.useRef([]);return F.useEffect(()=>{const c=o.onCommandExecuted(l=>{if(M.SetTextSelectionsOperation.id===l.id){const A=l.params.ranges;sc(A,a.current)||r(i.generateRandomId(4)),a.current=A}M.RichTextEditingMutation.id===l.id&&l.params.trigger!==me.id&&s()});return()=>c.dispose()},[s]),F.useEffect(()=>{r(i.generateRandomId(4))},[e]),F.useEffect(()=>()=>s.cancel(),[s]),w.jsx(ic,{},n)}var cc=Object.getOwnPropertyDescriptor,lc=(o,t,e,n)=>{for(var r=n>1?void 0:n?cc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},_n=(o,t)=>(e,n)=>t(e,n,o);const gr="doc_ui_paragraph-setting-panel";let Je=class extends i.Disposable{constructor(t,e,n){super();D(this,"_id");this._commandService=t,this._componentManager=e,this._sidebarService=n,this._init()}_init(){this.disposeWithMe(this._componentManager.register(gr,ac))}openPanel(){const t={header:{title:"doc.slider.paragraphSetting"},id:this._id,children:{label:gr},width:300};this._sidebarService.open(t)}closePanel(){this._sidebarService.close(this._id)}};Je=lc([_n(0,i.ICommandService),_n(1,i.Inject(I.ComponentManager)),_n(2,i.Inject(I.ISidebarService))],Je);const Do={id:"sidebar.operation.doc-paragraph-setting-panel",type:i.CommandType.OPERATION,handler:o=>(o.get(Je).openPanel(),!0)},Bo=o=>{const t=o.get(M.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(()=>{t.getDocRanges().some(a=>a.collapsed===!1||a.rangeType===i.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function Ac(o){if(o.length<2)return!0;const t=o.map(e=>e.tableId);return t.every(e=>e===t[0])}function hr(o,t,e){var s;const n=t.getRectRanges(),r=t.getActiveTextRange();if(n&&n.length&&Ac(n)&&r==null){o.next(!1);return}if(r&&(n==null||n.length===0)){const{segmentId:a,startOffset:c,endOffset:l}=r,A=e.getCurrentUniverDocInstance(),d=(s=A==null?void 0:A.getSelfOrHeaderFooterModel(a).getBody())==null?void 0:s.tables;if(d&&d.length&&d.some(u=>{const{startIndex:h,endIndex:g}=u;return c>h&&c<g||l>h&&l<g})){o.next(!1);return}}o.next(!0)}const ye=o=>{const t=o.get(M.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new U.Observable(n=>{const r=t.textSelection$.subscribe(()=>{hr(n,t,e)});return hr(n,t,e),()=>r.unsubscribe()})},dc=o=>({id:ht.name,commandId:ht.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy",disabled$:Bo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),uc=o=>({id:Do.id,type:I.MenuItemType.BUTTON,icon:"MenuSingle24",title:"doc.menu.paragraphSetting",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),gc=o=>({id:ln.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.cut",disabled$:Bo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),hc=o=>({id:An.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.paste",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),mc=o=>({id:bt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.delete",disabled$:Bo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),vi="doc.menu.table-insert";function fc(o){return{id:vi,type:I.MenuItemType.SUBITEMS,title:"table.insert",icon:"Insert",hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),ye(o),(t,e)=>t||e)}}function pc(o){return{id:pn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowAbove",icon:"InsertRowAbove",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Sc(o){return{id:Sn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowBelow",icon:"InsertRowBelow",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ic(o){return{id:In.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnLeft",icon:"LeftInsertColumn",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function vc(o){return{id:vn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnRight",icon:"RightInsertColumn",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}const Ei="doc.menu.table-delete";function Ec(o){return{id:Ei,type:I.MenuItemType.SUBITEMS,title:"table.delete",icon:"Reduce",hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),ye(o),(t,e)=>t||e)}}function Cc(o){return{id:mn.id,type:I.MenuItemType.BUTTON,title:"table.deleteRows",icon:"DeleteRow",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Tc(o){return{id:fn.id,type:I.MenuItemType.BUTTON,title:"table.deleteColumns",icon:"DeleteColumn",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function yc(o){return{id:ot.id,type:I.MenuItemType.BUTTON,title:"table.deleteTable",icon:"GridSingle",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Rc(o){const t=o.get(i.IUniverInstanceService),e=o.get(x.IRenderManagerService);return new U.Observable(n=>{const r=t.focused$.subscribe(s=>{if(s==null||t.getUnitType(s)!==i.UniverInstanceType.UNIVER_DOC)return n.next(!0);const c=e.getRenderById(s);if(c==null)return n.next(!0);c.with(M.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(A=>{n.next(A===x.DocumentEditArea.HEADER||A===x.DocumentEditArea.FOOTER)})});return()=>r.unsubscribe()})}function bc(o){const t=o.get(i.IUniverInstanceService),e=o.get(i.ICommandService);return new U.Observable(n=>{const r=e.onCommandExecuted(l=>{if(l.id===M.RichTextEditingMutation.id){const{unitId:A}=l.params,d=t.getUnit(A);if(d==null){n.next(!0);return}const{documentStyle:u}=d.getSnapshot();n.next((u==null?void 0:u.documentFlavor)!==i.DocumentFlavor.TRADITIONAL)}}),s=t.focused$.subscribe(l=>{if(l==null)return n.next(!0);const A=t.getUniverDocInstance(l),d=A==null?void 0:A.getSnapshot().documentStyle.documentFlavor;n.next(d!==i.DocumentFlavor.TRADITIONAL)}),a=t.getCurrentUniverDocInstance();if(a==null)return n.next(!0);const c=a==null?void 0:a.getSnapshot().documentStyle.documentFlavor;return n.next(c!==i.DocumentFlavor.TRADITIONAL),()=>{r.dispose(),s.unsubscribe()}})}function xc(o){const t=o.get(M.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new U.Observable(n=>{const r=t.textSelection$.subscribe(s=>{if(s==null){n.next(!0);return}const{textRanges:a}=s;if(a.length!==1){n.next(!0);return}const c=a[0],{collapsed:l,startNodePosition:A,startOffset:d}=c;if(!l||d==null){n.next(!0);return}const u=e.getCurrentUniverDocInstance();if(u==null){n.next(!0);return}const h=ae(o,u.getUnitId());if(h==null){n.next(!0);return}if(h.getViewModel().getCustomRangeRaw(d)){n.next(!0);return}if(A!=null){const{path:f}=A;if(f.indexOf("cells")!==-1){n.next(!0);return}}n.next(!1)});return()=>r.unsubscribe()})}function $(o){const t=o.get(M.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(r=>{if(r==null){e.next(!0);return}const{textRanges:s,rectRanges:a}=r;if(s.length===0&&a.length===0){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}function Oc(o){const t=o.get(i.ICommandService);return{id:De.id,type:I.MenuItemType.BUTTON,icon:"BoldSingle",title:"Set bold",tooltip:"toolbar.bold",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.bl;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Mc(o){const t=o.get(i.ICommandService);return{id:Be.id,type:I.MenuItemType.BUTTON,icon:"ItalicSingle",title:"Set italic",tooltip:"toolbar.italic",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.it;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Dc(o){const t=o.get(i.ICommandService);return{id:_e.id,type:I.MenuItemType.BUTTON,icon:"UnderlineSingle",title:"Set underline",tooltip:"toolbar.underline",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.ul;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Bc(o){const t=o.get(i.ICommandService);return{id:Ne.id,type:I.MenuItemType.BUTTON,icon:"StrikethroughSingle",title:"Set strike through",tooltip:"toolbar.strikethrough",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.st;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function _c(o){const t=o.get(i.ICommandService);return{id:Ce.id,type:I.MenuItemType.BUTTON,icon:"SubscriptSingle",tooltip:"toolbar.subscript",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUBSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Nc(o){const t=o.get(i.ICommandService);return{id:Pe.id,type:I.MenuItemType.BUTTON,icon:"SuperscriptSingle",tooltip:"toolbar.superscript",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUPERSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Pc(o){const t=o.get(i.ICommandService);return{id:xe.id,tooltip:"toolbar.font",type:I.MenuItemType.SELECTOR,label:Jr,selections:I.FONT_FAMILY_LIST.map(e=>({label:{name:Zr},value:e.value})),value$:new U.Observable(e=>{const n=i.DEFAULT_STYLES.ff,r=()=>{var l;const a=Ue(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.ff;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===M.SetTextSelectionsOperation.id||c===xe.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Uc(o){const t=o.get(i.ICommandService);return{id:Ee.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:$r,props:{min:1,max:400}},selections:I.FONT_SIZE_LIST,value$:new U.Observable(e=>{const n=i.DEFAULT_STYLES.fs,r=()=>{var l;const a=Ue(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.fs;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===M.SetTextSelectionsOperation.id||c===Ee.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function wc(o){const t=o.get(i.ICommandService);return{id:gn.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.heading.tooltip",label:{name:I.COMMON_LABEL_COMPONENT,props:{selections:I.HEADING_LIST}},selections:I.HEADING_LIST.map(e=>({label:{name:I.HEADING_ITEM_COMPONENT,props:{value:e.value,text:e.label}},value:e.value})),value$:new U.Observable(e=>{const n=i.NamedStyleType.NORMAL_TEXT,r=()=>{var l,A;const a=rt(o);if(a==null){e.next(n);return}const c=(A=(l=a.paragraphStyle)==null?void 0:l.namedStyleType)!=null?A:n;e.next(c)},s=t.onCommandExecuted(a=>{const c=a.id;(c===M.SetTextSelectionsOperation.id||c===Ee.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Qc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:Oe.id,icon:"FontColor",tooltip:"toolbar.textColor.main",type:I.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:go,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const r=e.getCurrentTheme().textColor,s=t.onCommandExecuted(a=>{if(a.id===Oe.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Lc(o){return{id:Ao.id,type:I.MenuItemType.BUTTON,icon:"HeaderFooterSingle",tooltip:"toolbar.headerFooter",hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),bc(o),(t,e)=>t||e)}}const Fc="GridSingle",Ci="doc.menu.table";function kc(o){return{id:Ci,type:I.MenuItemType.SUBITEMS,icon:Fc,tooltip:"toolbar.table.main",disabled$:xc(o),hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),Rc(o),(t,e)=>t||e)}}function Hc(o){return{id:En.id,title:"toolbar.table.insert",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Vc(o){const t=o.get(i.ICommandService);return{id:Et.id,type:I.MenuItemType.BUTTON,icon:"LeftJustifyingSingle",tooltip:"toolbar.alignLeft",disabled$:$(o),activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.LEFT)}});return e.next(!1),n.dispose}),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function jc(o){const t=o.get(i.ICommandService);return{id:Ct.id,type:I.MenuItemType.BUTTON,icon:"HorizontallySingle",tooltip:"toolbar.alignCenter",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.CENTER)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Wc(o){const t=o.get(i.ICommandService);return{id:Tt.id,type:I.MenuItemType.BUTTON,icon:"RightJustifyingSingle",tooltip:"toolbar.alignRight",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.RIGHT)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function zc(o){const t=o.get(i.ICommandService);return{id:yt.id,type:I.MenuItemType.BUTTON,icon:"AlignTextBothSingle",tooltip:"toolbar.alignJustify",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.JUSTIFIED)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Kc(o){return{id:un.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",tooltip:"toolbar.horizontalLine",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const mt=o=>new U.Observable(t=>{const e=o.get(i.IUniverInstanceService),n=o.get(M.DocSelectionManagerService);let r;const s=e.focused$.subscribe(a=>{if(r==null||r.unsubscribe(),a==null)return;const c=e.getUniverDocInstance(a);c!=null&&(r=n.textSelection$.subscribe(()=>{var d,u,h;const l=n.getDocRanges(),A=(d=l.find(g=>g.isActive))!=null?d:l[0];if(A){const g=c.getSelfOrHeaderFooterModel(A==null?void 0:A.segmentId),m=i.BuildTextUtils.range.getParagraphsInRange(A,(h=(u=g.getBody())==null?void 0:u.paragraphs)!=null?h:[]);let f;if(m.every(p=>{var S;return f||(f=(S=p.bullet)==null?void 0:S.listType),p.bullet&&p.bullet.listType===f})){t.next(f);return}}t.next(void 0)}))});return()=>{s.unsubscribe(),r==null||r.unsubscribe()}});function Xc(o){return{id:vt.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:ti,hoverable:!1,selectable:!1},value$:mt(o)}],icon:"OrderSingle",tooltip:"toolbar.order",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),disabled$:$(o),activated$:mt(o).pipe(U.map(t=>t&&t.indexOf("ORDER_LIST")===0))}}function Gc(o){return{id:It.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:ni,hoverable:!1,selectable:!1},value$:mt(o)}],icon:"UnorderSingle",tooltip:"toolbar.unorder",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:mt(o).pipe(U.map(t=>t&&t.indexOf("BULLET_LIST")===0))}}function Yc(o){return{id:$t.id,type:I.MenuItemType.BUTTON,icon:"TodoList",tooltip:"toolbar.checklist",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:mt(o).pipe(U.map(t=>t&&t.indexOf("CHECK_LIST")===0))}}function qc(o){const t=o.get(i.ICommandService),e=o.get(i.IUniverInstanceService);return{id:hn.id,type:I.MenuItemType.BUTTON,icon:"KeyboardSingle",tooltip:"toolbar.documentFlavor",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),activated$:new U.Observable(n=>{var a;const r=t.onCommandExecuted(c=>{var l;if(c.id===M.RichTextEditingMutation.id){const A=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);n.next(((l=A==null?void 0:A.getSnapshot())==null?void 0:l.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN)}}),s=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);return n.next(((a=s==null?void 0:s.getSnapshot())==null?void 0:a.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN),()=>r.dispose()})}}function Jc(o){return{id:et.id,type:I.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColor"}}function Zc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:Me.id,tooltip:"toolbar.fillColor.main",type:I.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucket",selections:[{label:{name:go,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const r=e.getCurrentTheme().primaryColor,s=t.onCommandExecuted(a=>{if(a.id===Me.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ue(o){var m,f,p,S;const t=o.get(i.IUniverInstanceService),e=o.get(M.DocSelectionManagerService),n=o.get(ve),r=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),s=e.getDocRanges(),a=(m=s.find(v=>v.isActive))!=null?m:s[0],c=n.getDefaultStyle(),l=(f=n.getStyleCache())!=null?f:{},A=rt(o),d=(p=A==null?void 0:A.paragraphStyle)!=null&&p.namedStyleType?i.NAMED_STYLE_MAP[(S=A==null?void 0:A.paragraphStyle)==null?void 0:S.namedStyleType]:null;if(r==null||a==null)return{ts:{...c,...d,...l}};const{segmentId:u}=a,h=r.getSelfOrHeaderFooterModel(u).getBody();return h==null?{ts:{...c,...d,...l}}:{ts:{...ri(h,a,c),...d,...l}}}function rt(o){var d,u;const t=o.get(i.IUniverInstanceService),e=o.get(M.DocSelectionManagerService),n=t.getCurrentUniverDocInstance(),r=e.getDocRanges(),s=(d=r.find(h=>h.isActive))!=null?d:r[0];if(n==null||s==null)return;const{startOffset:a,segmentId:c}=s,l=(u=n.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:u.paragraphs;if(l==null)return;let A=-1;for(const h of l){const{startIndex:g}=h;if(a>A&&a<=g)return h;A=g}return null}const Ti={[I.RibbonStartGroup.FORMAT]:{[De.id]:{order:0,menuItemFactory:Oc},[Be.id]:{order:1,menuItemFactory:Mc},[_e.id]:{order:2,menuItemFactory:Dc},[Ne.id]:{order:3,menuItemFactory:Bc},[Ce.id]:{order:4,menuItemFactory:_c},[Pe.id]:{order:5,menuItemFactory:Nc},[gn.id]:{order:5.5,menuItemFactory:wc},[Ee.id]:{order:6,menuItemFactory:Uc},[xe.id]:{order:7,menuItemFactory:Pc},[Oe.id]:{order:8,menuItemFactory:Qc},[Me.id]:{order:9,menuItemFactory:Zc,[et.id]:{order:0,menuItemFactory:Jc}}},[I.RibbonStartGroup.LAYOUT]:{[Ci]:{order:1,menuItemFactory:kc,[En.id]:{order:0,menuItemFactory:Hc}},[Et.id]:{order:2,menuItemFactory:Vc},[Ct.id]:{order:3,menuItemFactory:jc},[Tt.id]:{order:4,menuItemFactory:Wc},[yt.id]:{order:5,menuItemFactory:zc},[un.id]:{order:6,menuItemFactory:Kc},[vt.id]:{order:7,menuItemFactory:Xc},[It.id]:{order:8,menuItemFactory:Gc},[$t.id]:{order:9,menuItemFactory:Yc},[Ao.id]:{order:10,menuItemFactory:Lc},[hn.id]:{order:11,menuItemFactory:qc}},[I.ContextMenuPosition.MAIN_AREA]:{[I.ContextMenuGroup.FORMAT]:{[ht.name]:{order:0,menuItemFactory:dc},[ln.id]:{order:1,menuItemFactory:gc},[An.id]:{order:2,menuItemFactory:hc},[bt.id]:{order:3,menuItemFactory:mc}},[I.ContextMenuGroup.LAYOUT]:{[Do.id]:{order:0,menuItemFactory:uc},[vi]:{order:1,menuItemFactory:fc,[pn.id]:{order:1,menuItemFactory:pc},[Sn.id]:{order:2,menuItemFactory:Sc},[In.id]:{order:3,menuItemFactory:Ic},[vn.id]:{order:4,menuItemFactory:vc}},[Ei]:{order:2,menuItemFactory:Ec,[mn.id]:{order:1,menuItemFactory:Cc},[fn.id]:{order:2,menuItemFactory:Tc},[ot.id]:{order:3,menuItemFactory:yc}}}}};var $c=Object.getOwnPropertyDescriptor,el=(o,t,e,n)=>{for(var r=n>1?void 0:n?$c(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},fe=(o,t)=>(e,n)=>t(e,n,o);exports.DocUIController=class extends i.Disposable{constructor(t,e,n,r,s,a,c,l,A){super(),this._injector=t,this._componentManager=e,this._commandService=n,this._layoutService=r,this._menuManagerService=s,this._uiPartsService=a,this._univerInstanceService=c,this._shortcutService=l,this._configService=A,this._init()}_initCustomComponents(){const t=this._componentManager;this.disposeWithMe(t.register(go,te.ColorPicker)),this.disposeWithMe(t.register(Jr,I.FontFamily)),this.disposeWithMe(t.register(Zr,I.FontFamilyItem)),this.disposeWithMe(t.register($r,I.FontSize)),this.disposeWithMe(t.register(ni,Bs)),this.disposeWithMe(t.register(ti,Ms)),this.disposeWithMe(t.register("TodoList",Gr))}_initUiParts(){var e,n,r,s,a;const t=this._configService.getConfig(fo);(n=(e=t==null?void 0:t.layout)==null?void 0:e.docContainerConfig)!=null&&n.footer&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.FOOTER,()=>I.connectInjector(aa,this._injector))),((a=(s=(r=t==null?void 0:t.layout)==null?void 0:r.docContainerConfig)==null?void 0:s.sideMenu)==null||a)&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.CONTENT,()=>I.connectInjector(Sa,this._injector)))}_initMenus(){this._menuManagerService.mergeMenu(Ti)}_initShortCut(){[Ws,zs,Ks,Xs,Gs,Ys,Zs,$s,Js,qs,ea,ta,Us].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}_init(){this._initCustomComponents(),this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[qr,Ao,lo].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(i.UniverInstanceType.UNIVER_DOC,t=>{this._injector.get(x.IRenderManagerService).getRenderById(t).with(exports.DocSelectionRenderService).focus()}))}};exports.DocUIController=el([fe(0,i.Inject(i.Injector)),fe(1,i.Inject(I.ComponentManager)),fe(2,i.ICommandService),fe(3,I.ILayoutService),fe(4,I.IMenuManagerService),fe(5,I.IUIPartsService),fe(6,i.IUniverInstanceService),fe(7,I.IShortcutService),fe(8,i.IConfigService)],exports.DocUIController);var tl=Object.getOwnPropertyDescriptor,nl=(o,t,e,n)=>{for(var r=n>1?void 0:n?tl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Nn=(o,t)=>(e,n)=>t(e,n,o);const mr=1.5;exports.DocBackScrollRenderController=class extends i.RxDisposable{constructor(t,e,n,r){super(),this._context=t,this._textSelectionManagerService=e,this._editorService=n,this._docSkeletonManagerService=r,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{if(t==null)return;const{isEditing:e,unitId:n}=t;n!==this._context.unitId||!e||this._context.unitId!==i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(t){const e=this._docSkeletonManagerService.getSkeleton();if(!e)return;const{startOffset:n}=t,r=e.findNodePositionByCharIndex(n);r&&this.scrollToNode(r)}scrollToNode(t){var P;const{unitId:e,scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton();if(r==null||s==null)return;const a=r.getOffsetConfig(),{docsLeft:c,docsTop:l}=a,A=new ge(a,s),{contentBoxPointGroup:d}=A.getRangePointData(t,t),{left:u,top:h,height:g}=At(d),m=u+c,f=h+l,p=n.getViewport(ie.VIEW_MAIN),S=this._editorService.getEditor(e);if(p==null)return;const{left:v,top:E,right:T,bottom:R}=p.getBounding().viewBound;let C=0,y=0;const B=S?(P=S.params.backScrollOffset)!=null?P:0:100;f<E?C=f-E-B:f>R-g&&(C=f-R+g+B),m<v?y=m-v:m>T-mr&&(y=m-T+mr);const b=p.transViewportScroll2ScrollValue(y,C);p.scrollByBarDeltaValue(b)}_scrollToSelection(){const t=this._textSelectionManagerService.getActiveTextRange();if(t==null)return;const{collapsed:e,startNodePosition:n}=t;e&&this.scrollToNode(n)}};exports.DocBackScrollRenderController=nl([Nn(1,i.Inject(M.DocSelectionManagerService)),Nn(2,se),Nn(3,i.Inject(M.DocSkeletonManagerService))],exports.DocBackScrollRenderController);var ol=Object.getOwnPropertyDescriptor,rl=(o,t,e,n)=>{for(var r=n>1?void 0:n?ol(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},je=(o,t)=>(e,n)=>t(e,n,o);exports.DocRenderController=class extends i.RxDisposable{constructor(t,e,n,r,s,a,c){super(),this._context=t,this._commandService=e,this._docSelectionRenderService=n,this._docSkeletonManagerService=r,this._editorService=s,this._renderManagerService=a,this._univerInstanceService=c,this._addNewRender(),this._initRenderRefresh(),this._initCommandListener()}reRender(t){var a,c;const e=(a=this._renderManagerService.getRenderById(t))==null?void 0:a.with(M.DocSkeletonManagerService),n=e==null?void 0:e.getSkeleton();if(!n||!!n.getViewModel().getDataModel().getSnapshot().disabled)return;n.calculate();const s=this._editorService.getEditor(t);if(this._editorService.isEditor(t)&&!(s!=null&&s.params.scrollBar)){(c=this._context.mainComponent)==null||c.makeDirty();return}this._recalculateSizeBySkeleton(n)}_addNewRender(){const{scene:t,engine:e}=this._context,n=new x.Viewport(ie.VIEW_MAIN,t,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});t.attachControl(),t.onMouseWheel$.subscribeEvent((s,a)=>{const c=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if((c==null?void 0:c.getUnitId())!==this._context.unitId)return;const l=s;if(l.ctrlKey){const A=Math.abs(l.deltaX);let d=A<40?.2:A<80?.4:.2;d*=l.deltaY>0?-1:1,t.scaleX<1&&(d/=2),t.scaleX+d>4?t.scale(4,4):t.scaleX+d<.1?t.scale(.1,.1):l.preventDefault()}else n.onMouseWheel(l,a)}),new x.ScrollBar(n),t.addLayer(new x.Layer(t,[],wt),new x.Layer(t,[],Dr)),this._addComponent();const r=()=>t.render();this.disposeWithMe(this._context.activated$.subscribe(s=>{s?e.runRenderLoop(r):e.stopRenderLoop(r)})),this._docSelectionRenderService.__attachScrollEvent()}_addComponent(){const{scene:t,unit:e,components:n}=this._context,a={pageMarginLeft:20,pageMarginTop:20},c=new x.Documents(ce.MAIN,void 0,a);c.zIndex=Un;const l=new x.DocBackground(ce.BACKGROUND,void 0,a);l.zIndex=Un,this._context.mainComponent=c,n.set(ce.MAIN,c),n.set(ce.BACKGROUND,l),t.addObjects([c],wt),t.addObjects([l],Mr),this._editorService.getEditor(e.getUnitId())==null&&t.enableLayerCache(wt)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{this._create(t)})}_create(t){var l;if(!t)return;const{mainComponent:e,components:n}=this._context,r=e,s=n.get(ce.BACKGROUND);r.changeSkeleton(t),s.changeSkeleton(t);const{unitId:a}=this._context,c=this._editorService.getEditor(a);if(this._editorService.isEditor(a)&&!(c!=null&&c.params.scrollBar)){(l=this._context.mainComponent)==null||l.makeDirty();return}this._recalculateSizeBySkeleton(t)}_initCommandListener(){const t=[M.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:r}=n;this.reRender(r)}}))}_recalculateSizeBySkeleton(t){var m;const{mainComponent:e,scene:n,unitId:r,components:s}=this._context,a=e,c=s.get(ce.BACKGROUND),l=(m=t.getSkeletonData())==null?void 0:m.pages;if(l==null)return;let A=0,d=0;const h=this._context.unit.getSnapshot().documentStyle.documentFlavor;for(let f=0,p=l.length;f<p;f++){const S=l[f];let{pageWidth:v,pageHeight:E}=S;if(h===i.DocumentFlavor.MODERN){const T=il(S);v=T.pageWidth,E=T.pageHeight}a.pageLayoutType===x.PageLayoutType.VERTICAL?(d+=E,d+=a.pageMarginTop,f===p-1&&(d+=a.pageMarginTop),A=Math.max(A,v)):a.pageLayoutType===x.PageLayoutType.HORIZONTAL&&(A+=v,f!==p-1&&(A+=a.pageMarginLeft),d=Math.max(d,E))}a.resize(A,d),c.resize(A,d);const g=this._editorService.getEditor(r);(!this._editorService.isEditor(r)||g!=null&&g.params.scrollBar)&&n.resize(A,d)}};exports.DocRenderController=rl([je(1,i.ICommandService),je(2,i.Inject(exports.DocSelectionRenderService)),je(3,i.Inject(M.DocSkeletonManagerService)),je(4,se),je(5,x.IRenderManagerService),je(6,i.IUniverInstanceService)],exports.DocRenderController);function il(o){let{pageWidth:t,pageHeight:e}=o;const{marginLeft:n,marginRight:r,marginTop:s,marginBottom:a,skeDrawings:c,skeTables:l}=o;t===Number.POSITIVE_INFINITY&&(t=o.width+n+r),e===Number.POSITIVE_INFINITY&&(e=o.height+s+a);for(const A of c.values())t=Math.max(t,A.aLeft+A.width+n+r),e=Math.max(e,A.aTop+A.height+s+a);for(const A of l.values())t=Math.max(t,A.left+A.width+n+r),e=Math.max(e,A.top+A.height+s+a);return{pageWidth:t,pageHeight:e}}const _o={id:"doc.command.select-all",type:i.CommandType.COMMAND,handler:async o=>{var g;const t=o.get(i.IUniverInstanceService),e=o.get(M.DocSelectionManagerService),n=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),r=e.getDocRanges(),s=(g=r.find(m=>m.isActive))!=null?g:r[0];if(n==null||s==null)return!1;const{segmentId:a}=s,c=n.getUnitId(),l=n.getSelfOrHeaderFooterModel(a).getSnapshot().body;if(l==null)return!1;const{tables:A=[],dataStream:d}=l;if(d===`\r
48
+ `,{"univer-bg-blend-color-dodge/90":n===C.value}),onClick:()=>r(C.value),children:C.icon})},C.value))}),w.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.indentation")}),w.jsxs("div",{children:[w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.left"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:s,onChange:C=>a(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.right"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:c,onChange:C=>l(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.firstLine"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:A,onChange:C=>d(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.hanging"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:u,onChange:C=>h(C!=null?C:0)})]})]}),w.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:o.t("doc.paragraphSetting.spacing")}),w.jsxs("div",{children:[w.jsxs("div",{className:"univer-flex univer-justify-betweenuniver-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.before"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:g,onChange:C=>m(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[w.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[o.t("doc.paragraphSetting.after"),"(px)"]}),w.jsx(we,{className:"univer-mt-4",value:f,onChange:C=>p(C!=null?C:0)})]}),w.jsxs("div",{className:"univer-flex univer-justify-between item-center",children:[w.jsx("div",{className:"univer-mt-3 univer-text-xs",children:o.t("doc.paragraphSetting.lineSpace")}),w.jsxs("div",{className:"univer-mt-4 univer-flex univer-flex-col univer-gap-1.5",style:{width:162},children:[w.jsx(te.Select,{value:`${E}`,options:[{label:o.t("doc.paragraphSetting.multiSpace"),value:`${i.SpacingRule.AUTO}`},{label:o.t("doc.paragraphSetting.fixedValue"),value:`${i.SpacingRule.AT_LEAST}`}],onChange:C=>T(Number(C))}),w.jsx(we,{...R,value:S,onChange:C=>v(C!=null?C:0)})]})]})]})]})}const sc=(o,t)=>t.length===o.length&&o.some(e=>t.some(n=>n.startOffset===e.startOffset&&n.endOffset===e.endOffset));function ac(){const o=I.useDependency(i.ICommandService),t=I.useDependency(i.LocaleService),e=I.useObservable(t.currentLocale$),[n,r]=F.useState(""),s=F.useMemo(()=>i.debounce(()=>r(i.generateRandomId(4)),300),[]),a=F.useRef([]);return F.useEffect(()=>{const c=o.onCommandExecuted(l=>{if(M.SetTextSelectionsOperation.id===l.id){const A=l.params.ranges;sc(A,a.current)||r(i.generateRandomId(4)),a.current=A}M.RichTextEditingMutation.id===l.id&&l.params.trigger!==me.id&&s()});return()=>c.dispose()},[s]),F.useEffect(()=>{r(i.generateRandomId(4))},[e]),F.useEffect(()=>()=>s.cancel(),[s]),w.jsx(ic,{},n)}var cc=Object.getOwnPropertyDescriptor,lc=(o,t,e,n)=>{for(var r=n>1?void 0:n?cc(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},_n=(o,t)=>(e,n)=>t(e,n,o);const gr="doc_ui_paragraph-setting-panel";let Je=class extends i.Disposable{constructor(t,e,n){super();D(this,"_id");this._commandService=t,this._componentManager=e,this._sidebarService=n,this._init()}_init(){this.disposeWithMe(this._componentManager.register(gr,ac))}openPanel(){const t={header:{title:"doc.slider.paragraphSetting"},id:this._id,children:{label:gr},width:300};this._sidebarService.open(t)}closePanel(){this._sidebarService.close(this._id)}};Je=lc([_n(0,i.ICommandService),_n(1,i.Inject(I.ComponentManager)),_n(2,i.Inject(I.ISidebarService))],Je);const Do={id:"sidebar.operation.doc-paragraph-setting-panel",type:i.CommandType.OPERATION,handler:o=>(o.get(Je).openPanel(),!0)},Bo=o=>{const t=o.get(M.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(()=>{t.getDocRanges().some(a=>a.collapsed===!1||a.rangeType===i.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function Ac(o){if(o.length<2)return!0;const t=o.map(e=>e.tableId);return t.every(e=>e===t[0])}function hr(o,t,e){var s;const n=t.getRectRanges(),r=t.getActiveTextRange();if(n&&n.length&&Ac(n)&&r==null){o.next(!1);return}if(r&&(n==null||n.length===0)){const{segmentId:a,startOffset:c,endOffset:l}=r,A=e.getCurrentUniverDocInstance(),d=(s=A==null?void 0:A.getSelfOrHeaderFooterModel(a).getBody())==null?void 0:s.tables;if(d&&d.length&&d.some(u=>{const{startIndex:h,endIndex:g}=u;return c>h&&c<g||l>h&&l<g})){o.next(!1);return}}o.next(!0)}const ye=o=>{const t=o.get(M.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new U.Observable(n=>{const r=t.textSelection$.subscribe(()=>{hr(n,t,e)});return hr(n,t,e),()=>r.unsubscribe()})},dc=o=>({id:ht.name,commandId:ht.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy",disabled$:Bo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),uc=o=>({id:Do.id,type:I.MenuItemType.BUTTON,icon:"MenuSingle24",title:"doc.menu.paragraphSetting",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),gc=o=>({id:ln.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.cut",disabled$:Bo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),hc=o=>({id:An.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.paste",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),mc=o=>({id:bt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.delete",disabled$:Bo(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}),vi="doc.menu.table-insert";function fc(o){return{id:vi,type:I.MenuItemType.SUBITEMS,title:"table.insert",icon:"Insert",hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),ye(o),(t,e)=>t||e)}}function pc(o){return{id:pn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowAbove",icon:"InsertRowAbove",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Sc(o){return{id:Sn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowBelow",icon:"InsertRowBelow",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ic(o){return{id:In.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnLeft",icon:"LeftInsertColumn",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function vc(o){return{id:vn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnRight",icon:"RightInsertColumn",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}const Ei="doc.menu.table-delete";function Ec(o){return{id:Ei,type:I.MenuItemType.SUBITEMS,title:"table.delete",icon:"Reduce",hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),ye(o),(t,e)=>t||e)}}function Cc(o){return{id:mn.id,type:I.MenuItemType.BUTTON,title:"table.deleteRows",icon:"DeleteRow",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Tc(o){return{id:fn.id,type:I.MenuItemType.BUTTON,title:"table.deleteColumns",icon:"DeleteColumn",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function yc(o){return{id:ot.id,type:I.MenuItemType.BUTTON,title:"table.deleteTable",icon:"GridSingle",disabled$:ye(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Rc(o){const t=o.get(i.IUniverInstanceService),e=o.get(x.IRenderManagerService);return new U.Observable(n=>{const r=t.focused$.subscribe(s=>{if(s==null||t.getUnitType(s)!==i.UniverInstanceType.UNIVER_DOC)return n.next(!0);const c=e.getRenderById(s);if(c==null)return n.next(!0);c.with(M.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(A=>{n.next(A===x.DocumentEditArea.HEADER||A===x.DocumentEditArea.FOOTER)})});return()=>r.unsubscribe()})}function bc(o){const t=o.get(i.IUniverInstanceService),e=o.get(i.ICommandService);return new U.Observable(n=>{const r=e.onCommandExecuted(l=>{if(l.id===M.RichTextEditingMutation.id){const{unitId:A}=l.params,d=t.getUnit(A);if(d==null){n.next(!0);return}const{documentStyle:u}=d.getSnapshot();n.next((u==null?void 0:u.documentFlavor)!==i.DocumentFlavor.TRADITIONAL)}}),s=t.focused$.subscribe(l=>{if(l==null)return n.next(!0);const A=t.getUniverDocInstance(l),d=A==null?void 0:A.getSnapshot().documentStyle.documentFlavor;n.next(d!==i.DocumentFlavor.TRADITIONAL)}),a=t.getCurrentUniverDocInstance();if(a==null)return n.next(!0);const c=a==null?void 0:a.getSnapshot().documentStyle.documentFlavor;return n.next(c!==i.DocumentFlavor.TRADITIONAL),()=>{r.dispose(),s.unsubscribe()}})}function xc(o){const t=o.get(M.DocSelectionManagerService),e=o.get(i.IUniverInstanceService);return new U.Observable(n=>{const r=t.textSelection$.subscribe(s=>{if(s==null){n.next(!0);return}const{textRanges:a}=s;if(a.length!==1){n.next(!0);return}const c=a[0],{collapsed:l,startNodePosition:A,startOffset:d}=c;if(!l||d==null){n.next(!0);return}const u=e.getCurrentUniverDocInstance();if(u==null){n.next(!0);return}const h=ae(o,u.getUnitId());if(h==null){n.next(!0);return}if(h.getViewModel().getCustomRangeRaw(d)){n.next(!0);return}if(A!=null){const{path:f}=A;if(f.indexOf("cells")!==-1){n.next(!0);return}}n.next(!1)});return()=>r.unsubscribe()})}function $(o){const t=o.get(M.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(r=>{if(r==null){e.next(!0);return}const{textRanges:s,rectRanges:a}=r;if(s.length===0&&a.length===0){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}function Oc(o){const t=o.get(i.ICommandService);return{id:De.id,type:I.MenuItemType.BUTTON,icon:"BoldSingle",title:"Set bold",tooltip:"toolbar.bold",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.bl;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Mc(o){const t=o.get(i.ICommandService);return{id:Be.id,type:I.MenuItemType.BUTTON,icon:"ItalicSingle",title:"Set italic",tooltip:"toolbar.italic",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.it;e.next(a===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Dc(o){const t=o.get(i.ICommandService);return{id:_e.id,type:I.MenuItemType.BUTTON,icon:"UnderlineSingle",title:"Set underline",tooltip:"toolbar.underline",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.ul;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Bc(o){const t=o.get(i.ICommandService);return{id:Ne.id,type:I.MenuItemType.BUTTON,icon:"StrikethroughSingle",title:"Set strike through",tooltip:"toolbar.strikethrough",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.st;e.next((a==null?void 0:a.s)===i.BooleanNumber.TRUE)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function _c(o){const t=o.get(i.ICommandService);return{id:Ce.id,type:I.MenuItemType.BUTTON,icon:"SubscriptSingle",tooltip:"toolbar.subscript",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUBSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Nc(o){const t=o.get(i.ICommandService);return{id:Pe.id,type:I.MenuItemType.BUTTON,icon:"SuperscriptSingle",tooltip:"toolbar.superscript",activated$:new U.Observable(e=>{const n=()=>{var c;const s=Ue(o);if(s==null){e.next(!1);return}const a=(c=s.ts)==null?void 0:c.va;e.next(a===i.BaselineOffset.SUPERSCRIPT)},r=t.onCommandExecuted(s=>{const a=s.id;(a===M.SetTextSelectionsOperation.id||a===Te.id)&&n()});return n(),r.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Pc(o){const t=o.get(i.ICommandService);return{id:xe.id,tooltip:"toolbar.font",type:I.MenuItemType.SELECTOR,label:Jr,selections:I.FONT_FAMILY_LIST.map(e=>({label:{name:Zr},value:e.value})),value$:new U.Observable(e=>{const n=i.DEFAULT_STYLES.ff,r=()=>{var l;const a=Ue(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.ff;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===M.SetTextSelectionsOperation.id||c===xe.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Uc(o){const t=o.get(i.ICommandService);return{id:Ee.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:$r,props:{min:1,max:400}},selections:I.FONT_SIZE_LIST,value$:new U.Observable(e=>{const n=i.DEFAULT_STYLES.fs,r=()=>{var l;const a=Ue(o);if(a==null){e.next(n);return}const c=(l=a.ts)==null?void 0:l.fs;e.next(c!=null?c:n)},s=t.onCommandExecuted(a=>{const c=a.id;(c===M.SetTextSelectionsOperation.id||c===Ee.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function wc(o){const t=o.get(i.ICommandService);return{id:gn.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.heading.tooltip",label:{name:I.COMMON_LABEL_COMPONENT,props:{selections:I.HEADING_LIST}},selections:I.HEADING_LIST.map(e=>({label:{name:I.HEADING_ITEM_COMPONENT,props:{value:e.value,text:e.label}},value:e.value})),value$:new U.Observable(e=>{const n=i.NamedStyleType.NORMAL_TEXT,r=()=>{var l,A;const a=rt(o);if(a==null){e.next(n);return}const c=(A=(l=a.paragraphStyle)==null?void 0:l.namedStyleType)!=null?A:n;e.next(c)},s=t.onCommandExecuted(a=>{const c=a.id;(c===M.SetTextSelectionsOperation.id||c===Ee.id)&&r()});return r(),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Qc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:Oe.id,icon:"FontColor",tooltip:"toolbar.textColor.main",type:I.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:go,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const r=e.getCurrentTheme().textColor,s=t.onCommandExecuted(a=>{if(a.id===Oe.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Lc(o){return{id:Ao.id,type:I.MenuItemType.BUTTON,icon:"HeaderFooterSingle",tooltip:"toolbar.headerFooter",hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),bc(o),(t,e)=>t||e)}}const Fc="GridSingle",Ci="doc.menu.table";function kc(o){return{id:Ci,type:I.MenuItemType.SUBITEMS,icon:Fc,tooltip:"toolbar.table.main",disabled$:xc(o),hidden$:U.combineLatest(I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),Rc(o),(t,e)=>t||e)}}function Hc(o){return{id:En.id,title:"toolbar.table.insert",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Vc(o){const t=o.get(i.ICommandService);return{id:Et.id,type:I.MenuItemType.BUTTON,icon:"LeftJustifyingSingle",tooltip:"toolbar.alignLeft",disabled$:$(o),activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.LEFT)}});return e.next(!1),n.dispose}),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function jc(o){const t=o.get(i.ICommandService);return{id:Ct.id,type:I.MenuItemType.BUTTON,icon:"HorizontallySingle",tooltip:"toolbar.alignCenter",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.CENTER)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Wc(o){const t=o.get(i.ICommandService);return{id:Tt.id,type:I.MenuItemType.BUTTON,icon:"RightJustifyingSingle",tooltip:"toolbar.alignRight",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.RIGHT)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function zc(o){const t=o.get(i.ICommandService);return{id:yt.id,type:I.MenuItemType.BUTTON,icon:"AlignTextBothSingle",tooltip:"toolbar.alignJustify",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(r=>{var a;const s=r.id;if(s===M.SetTextSelectionsOperation.id||s===he.id){const c=rt(o);if(c==null)return;const l=(a=c.paragraphStyle)==null?void 0:a.horizontalAlign;e.next(l===i.HorizontalAlign.JUSTIFIED)}});return e.next(!1),n.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Kc(o){return{id:un.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",tooltip:"toolbar.horizontalLine",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const mt=o=>new U.Observable(t=>{const e=o.get(i.IUniverInstanceService),n=o.get(M.DocSelectionManagerService);let r;const s=e.focused$.subscribe(a=>{if(r==null||r.unsubscribe(),a==null)return;const c=e.getUniverDocInstance(a);c!=null&&(r=n.textSelection$.subscribe(()=>{var d,u,h;const l=n.getDocRanges(),A=(d=l.find(g=>g.isActive))!=null?d:l[0];if(A){const g=c.getSelfOrHeaderFooterModel(A==null?void 0:A.segmentId),m=i.BuildTextUtils.range.getParagraphsInRange(A,(h=(u=g.getBody())==null?void 0:u.paragraphs)!=null?h:[]);let f;if(m.every(p=>{var S;return f||(f=(S=p.bullet)==null?void 0:S.listType),p.bullet&&p.bullet.listType===f})){t.next(f);return}}t.next(void 0)}))});return()=>{s.unsubscribe(),r==null||r.unsubscribe()}});function Xc(o){return{id:vt.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:ti,hoverable:!1,selectable:!1},value$:mt(o)}],icon:"OrderSingle",tooltip:"toolbar.order",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),disabled$:$(o),activated$:mt(o).pipe(U.map(t=>t&&t.indexOf("ORDER_LIST")===0))}}function Gc(o){return{id:It.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:ni,hoverable:!1,selectable:!1},value$:mt(o)}],icon:"UnorderSingle",tooltip:"toolbar.unorder",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:mt(o).pipe(U.map(t=>t&&t.indexOf("BULLET_LIST")===0))}}function Yc(o){return{id:$t.id,type:I.MenuItemType.BUTTON,icon:"TodoList",tooltip:"toolbar.checklist",disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC),activated$:mt(o).pipe(U.map(t=>t&&t.indexOf("CHECK_LIST")===0))}}function qc(o){const t=o.get(i.ICommandService),e=o.get(i.IUniverInstanceService);return{id:hn.id,type:I.MenuItemType.BUTTON,icon:"KeyboardSingle",tooltip:"toolbar.documentFlavor",hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY),activated$:new U.Observable(n=>{var a;const r=t.onCommandExecuted(c=>{var l;if(c.id===M.RichTextEditingMutation.id){const A=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);n.next(((l=A==null?void 0:A.getSnapshot())==null?void 0:l.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN)}}),s=e.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);return n.next(((a=s==null?void 0:s.getSnapshot())==null?void 0:a.documentStyle.documentFlavor)===i.DocumentFlavor.MODERN),()=>r.dispose()})}}function Jc(o){return{id:et.id,type:I.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColor"}}function Zc(o){const t=o.get(i.ICommandService),e=o.get(i.ThemeService);return{id:Me.id,tooltip:"toolbar.fillColor.main",type:I.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucket",selections:[{label:{name:go,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const r=e.getCurrentTheme().primaryColor,s=t.onCommandExecuted(a=>{if(a.id===Me.id){const c=a.params.value;n.next(c!=null?c:r)}});return n.next(r),s.dispose}),disabled$:$(o),hidden$:I.getMenuHiddenObservable(o,i.UniverInstanceType.UNIVER_DOC)}}function Ue(o){var m,f,p,S;const t=o.get(i.IUniverInstanceService),e=o.get(M.DocSelectionManagerService),n=o.get(ve),r=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),s=e.getDocRanges(),a=(m=s.find(v=>v.isActive))!=null?m:s[0],c=n.getDefaultStyle(),l=(f=n.getStyleCache())!=null?f:{},A=rt(o),d=(p=A==null?void 0:A.paragraphStyle)!=null&&p.namedStyleType?i.NAMED_STYLE_MAP[(S=A==null?void 0:A.paragraphStyle)==null?void 0:S.namedStyleType]:null;if(r==null||a==null)return{ts:{...c,...d,...l}};const{segmentId:u}=a,h=r.getSelfOrHeaderFooterModel(u).getBody();if(h==null)return{ts:{...c,...d,...l}};const g=ri(h,a,c);return{ts:{...d,...g,...l}}}function rt(o){var d,u;const t=o.get(i.IUniverInstanceService),e=o.get(M.DocSelectionManagerService),n=t.getCurrentUniverDocInstance(),r=e.getDocRanges(),s=(d=r.find(h=>h.isActive))!=null?d:r[0];if(n==null||s==null)return;const{startOffset:a,segmentId:c}=s,l=(u=n.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:u.paragraphs;if(l==null)return;let A=-1;for(const h of l){const{startIndex:g}=h;if(a>A&&a<=g)return h;A=g}return null}const Ti={[I.RibbonStartGroup.FORMAT]:{[De.id]:{order:0,menuItemFactory:Oc},[Be.id]:{order:1,menuItemFactory:Mc},[_e.id]:{order:2,menuItemFactory:Dc},[Ne.id]:{order:3,menuItemFactory:Bc},[Ce.id]:{order:4,menuItemFactory:_c},[Pe.id]:{order:5,menuItemFactory:Nc},[gn.id]:{order:5.5,menuItemFactory:wc},[Ee.id]:{order:6,menuItemFactory:Uc},[xe.id]:{order:7,menuItemFactory:Pc},[Oe.id]:{order:8,menuItemFactory:Qc},[Me.id]:{order:9,menuItemFactory:Zc,[et.id]:{order:0,menuItemFactory:Jc}}},[I.RibbonStartGroup.LAYOUT]:{[Ci]:{order:1,menuItemFactory:kc,[En.id]:{order:0,menuItemFactory:Hc}},[Et.id]:{order:2,menuItemFactory:Vc},[Ct.id]:{order:3,menuItemFactory:jc},[Tt.id]:{order:4,menuItemFactory:Wc},[yt.id]:{order:5,menuItemFactory:zc},[un.id]:{order:6,menuItemFactory:Kc},[vt.id]:{order:7,menuItemFactory:Xc},[It.id]:{order:8,menuItemFactory:Gc},[$t.id]:{order:9,menuItemFactory:Yc},[Ao.id]:{order:10,menuItemFactory:Lc},[hn.id]:{order:11,menuItemFactory:qc}},[I.ContextMenuPosition.MAIN_AREA]:{[I.ContextMenuGroup.FORMAT]:{[ht.name]:{order:0,menuItemFactory:dc},[ln.id]:{order:1,menuItemFactory:gc},[An.id]:{order:2,menuItemFactory:hc},[bt.id]:{order:3,menuItemFactory:mc}},[I.ContextMenuGroup.LAYOUT]:{[Do.id]:{order:0,menuItemFactory:uc},[vi]:{order:1,menuItemFactory:fc,[pn.id]:{order:1,menuItemFactory:pc},[Sn.id]:{order:2,menuItemFactory:Sc},[In.id]:{order:3,menuItemFactory:Ic},[vn.id]:{order:4,menuItemFactory:vc}},[Ei]:{order:2,menuItemFactory:Ec,[mn.id]:{order:1,menuItemFactory:Cc},[fn.id]:{order:2,menuItemFactory:Tc},[ot.id]:{order:3,menuItemFactory:yc}}}}};var $c=Object.getOwnPropertyDescriptor,el=(o,t,e,n)=>{for(var r=n>1?void 0:n?$c(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},fe=(o,t)=>(e,n)=>t(e,n,o);exports.DocUIController=class extends i.Disposable{constructor(t,e,n,r,s,a,c,l,A){super(),this._injector=t,this._componentManager=e,this._commandService=n,this._layoutService=r,this._menuManagerService=s,this._uiPartsService=a,this._univerInstanceService=c,this._shortcutService=l,this._configService=A,this._init()}_initCustomComponents(){const t=this._componentManager;this.disposeWithMe(t.register(go,te.ColorPicker)),this.disposeWithMe(t.register(Jr,I.FontFamily)),this.disposeWithMe(t.register(Zr,I.FontFamilyItem)),this.disposeWithMe(t.register($r,I.FontSize)),this.disposeWithMe(t.register(ni,Bs)),this.disposeWithMe(t.register(ti,Ms)),this.disposeWithMe(t.register("TodoList",Gr))}_initUiParts(){var e,n,r,s,a;const t=this._configService.getConfig(fo);(n=(e=t==null?void 0:t.layout)==null?void 0:e.docContainerConfig)!=null&&n.footer&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.FOOTER,()=>I.connectInjector(aa,this._injector))),((a=(s=(r=t==null?void 0:t.layout)==null?void 0:r.docContainerConfig)==null?void 0:s.sideMenu)==null||a)&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.CONTENT,()=>I.connectInjector(Sa,this._injector)))}_initMenus(){this._menuManagerService.mergeMenu(Ti)}_initShortCut(){[Ws,zs,Ks,Xs,Gs,Ys,Zs,$s,Js,qs,ea,ta,Us].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}_init(){this._initCustomComponents(),this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[qr,Ao,lo].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(i.UniverInstanceType.UNIVER_DOC,t=>{this._injector.get(x.IRenderManagerService).getRenderById(t).with(exports.DocSelectionRenderService).focus()}))}};exports.DocUIController=el([fe(0,i.Inject(i.Injector)),fe(1,i.Inject(I.ComponentManager)),fe(2,i.ICommandService),fe(3,I.ILayoutService),fe(4,I.IMenuManagerService),fe(5,I.IUIPartsService),fe(6,i.IUniverInstanceService),fe(7,I.IShortcutService),fe(8,i.IConfigService)],exports.DocUIController);var tl=Object.getOwnPropertyDescriptor,nl=(o,t,e,n)=>{for(var r=n>1?void 0:n?tl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Nn=(o,t)=>(e,n)=>t(e,n,o);const mr=1.5;exports.DocBackScrollRenderController=class extends i.RxDisposable{constructor(t,e,n,r){super(),this._context=t,this._textSelectionManagerService=e,this._editorService=n,this._docSkeletonManagerService=r,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{if(t==null)return;const{isEditing:e,unitId:n}=t;n!==this._context.unitId||!e||this._context.unitId!==i.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(t){const e=this._docSkeletonManagerService.getSkeleton();if(!e)return;const{startOffset:n}=t,r=e.findNodePositionByCharIndex(n);r&&this.scrollToNode(r)}scrollToNode(t){var P;const{unitId:e,scene:n,mainComponent:r}=this._context,s=this._docSkeletonManagerService.getSkeleton();if(r==null||s==null)return;const a=r.getOffsetConfig(),{docsLeft:c,docsTop:l}=a,A=new ge(a,s),{contentBoxPointGroup:d}=A.getRangePointData(t,t),{left:u,top:h,height:g}=At(d),m=u+c,f=h+l,p=n.getViewport(ie.VIEW_MAIN),S=this._editorService.getEditor(e);if(p==null)return;const{left:v,top:E,right:T,bottom:R}=p.getBounding().viewBound;let C=0,y=0;const B=S?(P=S.params.backScrollOffset)!=null?P:0:100;f<E?C=f-E-B:f>R-g&&(C=f-R+g+B),m<v?y=m-v:m>T-mr&&(y=m-T+mr);const b=p.transViewportScroll2ScrollValue(y,C);p.scrollByBarDeltaValue(b)}_scrollToSelection(){const t=this._textSelectionManagerService.getActiveTextRange();if(t==null)return;const{collapsed:e,startNodePosition:n}=t;e&&this.scrollToNode(n)}};exports.DocBackScrollRenderController=nl([Nn(1,i.Inject(M.DocSelectionManagerService)),Nn(2,se),Nn(3,i.Inject(M.DocSkeletonManagerService))],exports.DocBackScrollRenderController);var ol=Object.getOwnPropertyDescriptor,rl=(o,t,e,n)=>{for(var r=n>1?void 0:n?ol(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},je=(o,t)=>(e,n)=>t(e,n,o);exports.DocRenderController=class extends i.RxDisposable{constructor(t,e,n,r,s,a,c){super(),this._context=t,this._commandService=e,this._docSelectionRenderService=n,this._docSkeletonManagerService=r,this._editorService=s,this._renderManagerService=a,this._univerInstanceService=c,this._addNewRender(),this._initRenderRefresh(),this._initCommandListener()}reRender(t){var a,c;const e=(a=this._renderManagerService.getRenderById(t))==null?void 0:a.with(M.DocSkeletonManagerService),n=e==null?void 0:e.getSkeleton();if(!n||!!n.getViewModel().getDataModel().getSnapshot().disabled)return;n.calculate();const s=this._editorService.getEditor(t);if(this._editorService.isEditor(t)&&!(s!=null&&s.params.scrollBar)){(c=this._context.mainComponent)==null||c.makeDirty();return}this._recalculateSizeBySkeleton(n)}_addNewRender(){const{scene:t,engine:e}=this._context,n=new x.Viewport(ie.VIEW_MAIN,t,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});t.attachControl(),t.onMouseWheel$.subscribeEvent((s,a)=>{const c=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC);if((c==null?void 0:c.getUnitId())!==this._context.unitId)return;const l=s;if(l.ctrlKey){const A=Math.abs(l.deltaX);let d=A<40?.2:A<80?.4:.2;d*=l.deltaY>0?-1:1,t.scaleX<1&&(d/=2),t.scaleX+d>4?t.scale(4,4):t.scaleX+d<.1?t.scale(.1,.1):l.preventDefault()}else n.onMouseWheel(l,a)}),new x.ScrollBar(n),t.addLayer(new x.Layer(t,[],wt),new x.Layer(t,[],Dr)),this._addComponent();const r=()=>t.render();this.disposeWithMe(this._context.activated$.subscribe(s=>{s?e.runRenderLoop(r):e.stopRenderLoop(r)})),this._docSelectionRenderService.__attachScrollEvent()}_addComponent(){const{scene:t,unit:e,components:n}=this._context,a={pageMarginLeft:20,pageMarginTop:20},c=new x.Documents(ce.MAIN,void 0,a);c.zIndex=Un;const l=new x.DocBackground(ce.BACKGROUND,void 0,a);l.zIndex=Un,this._context.mainComponent=c,n.set(ce.MAIN,c),n.set(ce.BACKGROUND,l),t.addObjects([c],wt),t.addObjects([l],Mr),this._editorService.getEditor(e.getUnitId())==null&&t.enableLayerCache(wt)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{this._create(t)})}_create(t){var l;if(!t)return;const{mainComponent:e,components:n}=this._context,r=e,s=n.get(ce.BACKGROUND);r.changeSkeleton(t),s.changeSkeleton(t);const{unitId:a}=this._context,c=this._editorService.getEditor(a);if(this._editorService.isEditor(a)&&!(c!=null&&c.params.scrollBar)){(l=this._context.mainComponent)==null||l.makeDirty();return}this._recalculateSizeBySkeleton(t)}_initCommandListener(){const t=[M.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:r}=n;this.reRender(r)}}))}_recalculateSizeBySkeleton(t){var m;const{mainComponent:e,scene:n,unitId:r,components:s}=this._context,a=e,c=s.get(ce.BACKGROUND),l=(m=t.getSkeletonData())==null?void 0:m.pages;if(l==null)return;let A=0,d=0;const h=this._context.unit.getSnapshot().documentStyle.documentFlavor;for(let f=0,p=l.length;f<p;f++){const S=l[f];let{pageWidth:v,pageHeight:E}=S;if(h===i.DocumentFlavor.MODERN){const T=il(S);v=T.pageWidth,E=T.pageHeight}a.pageLayoutType===x.PageLayoutType.VERTICAL?(d+=E,d+=a.pageMarginTop,f===p-1&&(d+=a.pageMarginTop),A=Math.max(A,v)):a.pageLayoutType===x.PageLayoutType.HORIZONTAL&&(A+=v,f!==p-1&&(A+=a.pageMarginLeft),d=Math.max(d,E))}a.resize(A,d),c.resize(A,d);const g=this._editorService.getEditor(r);(!this._editorService.isEditor(r)||g!=null&&g.params.scrollBar)&&n.resize(A,d)}};exports.DocRenderController=rl([je(1,i.ICommandService),je(2,i.Inject(exports.DocSelectionRenderService)),je(3,i.Inject(M.DocSkeletonManagerService)),je(4,se),je(5,x.IRenderManagerService),je(6,i.IUniverInstanceService)],exports.DocRenderController);function il(o){let{pageWidth:t,pageHeight:e}=o;const{marginLeft:n,marginRight:r,marginTop:s,marginBottom:a,skeDrawings:c,skeTables:l}=o;t===Number.POSITIVE_INFINITY&&(t=o.width+n+r),e===Number.POSITIVE_INFINITY&&(e=o.height+s+a);for(const A of c.values())t=Math.max(t,A.aLeft+A.width+n+r),e=Math.max(e,A.aTop+A.height+s+a);for(const A of l.values())t=Math.max(t,A.left+A.width+n+r),e=Math.max(e,A.top+A.height+s+a);return{pageWidth:t,pageHeight:e}}const _o={id:"doc.command.select-all",type:i.CommandType.COMMAND,handler:async o=>{var g;const t=o.get(i.IUniverInstanceService),e=o.get(M.DocSelectionManagerService),n=t.getCurrentUnitForType(i.UniverInstanceType.UNIVER_DOC),r=e.getDocRanges(),s=(g=r.find(m=>m.isActive))!=null?g:r[0];if(n==null||s==null)return!1;const{segmentId:a}=s,c=n.getUnitId(),l=n.getSelfOrHeaderFooterModel(a).getSnapshot().body;if(l==null)return!1;const{tables:A=[],dataStream:d}=l;if(d===`\r
49
49
  `)return!0;const u=[];let h=0;for(const m of A){const{startIndex:f,endIndex:p}=m;h!==f&&u.push({startOffset:h,endOffset:f-1,rangeType:i.DOC_RANGE_TYPE.TEXT}),u.push({startOffset:f+3,endOffset:p-5,rangeType:i.DOC_RANGE_TYPE.RECT}),h=p}return h!==l.dataStream.length-2&&u.push({startOffset:h,endOffset:l.dataStream.length-2,rangeType:i.DOC_RANGE_TYPE.TEXT}),e.replaceDocRanges(u,{unitId:c,subUnitId:c},!1),!0}};class xt extends i.RxDisposable{constructor(e){super();D(this,"_previousActiveRange",null);D(this,"_undoMutationParamsCache",[]);D(this,"_redoMutationParamsCache",[]);this._context=e}clearUndoRedoMutationParamsCache(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[]}getUndoRedoMutationParamsCache(){return{undoCache:this._undoMutationParamsCache,redoCache:this._redoMutationParamsCache}}setUndoRedoMutationParamsCache({undoCache:e=[],redoCache:n=[]}){this._undoMutationParamsCache=e,this._redoMutationParamsCache=n}getActiveRange(){return this._previousActiveRange}setActiveRange(e){this._previousActiveRange=e}pushUndoRedoMutationParams(e,n){this._undoMutationParamsCache.push(e),this._redoMutationParamsCache.push(n)}fetchComposedUndoRedoMutationParams(){if(this._undoMutationParamsCache.length===0||this._previousActiveRange==null||this._redoMutationParamsCache.length===0)return null;const{unitId:e}=this._undoMutationParamsCache[0],n={unitId:e,actions:this._undoMutationParamsCache.reverse().reduce((s,a)=>i.JSONX.compose(s,a.actions),null),textRanges:[]};return{redoMutationParams:{unitId:e,actions:this._redoMutationParamsCache.reduce((s,a)=>i.JSONX.compose(s,a.actions),null),textRanges:[]},undoMutationParams:n,previousActiveRange:this._previousActiveRange}}dispose(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[],this._previousActiveRange=null}}const No={id:"doc.command.ime-input",type:i.CommandType.COMMAND,handler:async(o,t)=>{var N,H,V;const{unitId:e,newText:n,oldTextLen:r,isCompositionEnd:s,isCompositionStart:a}=t,c=o.get(i.ICommandService),l=o.get(x.IRenderManagerService),A=o.get(i.IUniverInstanceService),d=o.get(ve),u=(N=l.getRenderById(e))==null?void 0:N.with(xt),h=A.getUnit(e,i.UniverInstanceType.UNIVER_DOC);if(h==null||u==null)return!1;const g=u.getActiveRange();if(g==null)return!1;const{style:m,segmentId:f}=g,p=h.getSelfOrHeaderFooterModel(f).getBody();if(p==null)return!1;Object.assign(g,g);const{startOffset:v,endOffset:E}=g,T=n.length,R=[{startOffset:v+T,endOffset:v+T,collapsed:!0,style:m}],C={id:M.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:R}},y=d.getDefaultStyle(),B=d.getStyleCache(),b=to((H=p.customRanges)!=null?H:[],v+r,i.SHEET_EDITOR_UNITS.includes(e)),P=Zt(p,a?E:v+r,y,B,i.SHEET_EDITOR_UNITS.includes(e)),O=no((V=p.customDecorations)!=null?V:[],v+r),_=new i.TextX,L=i.JSONX.getInstance();if(!g.collapsed&&a){const j=i.BuildTextUtils.selection.delete([g],p,0,null,!1);_.push(...j),C.params.textRanges=[{startOffset:v+T,endOffset:v+T,collapsed:!0}]}else _.push({t:i.TextXActionType.RETAIN,len:v});r>0&&_.push({t:i.TextXActionType.DELETE,len:r}),_.push({t:i.TextXActionType.INSERT,body:{dataStream:n,textRuns:P?[{...P,st:0,ed:n.length}]:[],customRanges:b?[{...b,startIndex:0,endIndex:n.length-1}]:[],customDecorations:O.map(j=>({...j,startIndex:0,endIndex:n.length-1}))},len:n.length});const k=J(h,f);C.params.actions=L.editOp(_.serialize(),k),C.params.noHistory=!s,C.params.isCompositionEnd=s;const Q=c.syncExecuteCommand(C.id,C.params);return u.pushUndoRedoMutationParams(Q,C.params),!!Q}},yi={id:"doc.command.insert-custom-range",type:i.CommandType.COMMAND,handler:(o,t)=>{if(!t)return!1;const e=o.get(i.ICommandService),{unitId:n,rangeId:r=i.generateRandomId(),textRanges:s,properties:a,text:c,wholeEntity:l}=t,A={unitId:n,textRanges:s,body:{dataStream:c,customRanges:[{startIndex:0,endIndex:c.length-1,rangeId:r,rangeType:i.CustomRangeType.CUSTOM,properties:a,wholeEntity:l}]}};return e.syncExecuteCommand(ro.id,A)}},ut={type:i.CommandType.COMMAND,id:"doc.command.set-zoom-ratio",handler:async(o,t)=>{var u,h,g;const e=o.get(i.ICommandService),n=o.get(i.IUndoRedoService),r=o.get(i.IUniverInstanceService);let s=(u=r.getCurrentUniverDocInstance())==null?void 0:u.getUnitId();if(!s)return!1;let a=1;if(t&&(s=(h=t.documentId)!=null?h:s,a=(g=t.zoomRatio)!=null?g:a),!r.getUniverDocInstance(s))return!1;const l={zoomRatio:a,unitId:s},A=na(o,l);return e.syncExecuteCommand(le.id,l)?(n.pushUndoRedo({unitID:s,undoMutations:[{id:le.id,params:A}],redoMutations:[{id:le.id,params:l}]}),!0):!1}},Po={id:"doc.table.tab-in-table",type:i.CommandType.COMMAND,handler:async(o,t)=>{var m;const{shift:e}=t,n=o.get(M.DocSelectionManagerService),r=n.getDocRanges(),s=o.get(i.ICommandService),c=o.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(!c)return!1;const l=(m=r.find(f=>f.isActive))!=null?m:r[0],A=c.getUnitId(),d=ae(o,A),u=d==null?void 0:d.getSkeleton(),h=u==null?void 0:u.getViewModel().getSelfOrHeaderFooterViewModel(l==null?void 0:l.segmentId);if(h==null||l==null)return!1;let g=null;if(e?g=cr(h,l,Wn.PREV):g=cr(h,l,Wn.NEXT),g){const{startOffset:f,endOffset:p}=g,S=[{startOffset:f,endOffset:p}];return n.replaceDocRanges(S),!0}return e===!1?await s.executeCommand(Oo.id,{position:en.BELLOW}):!0}};var sl=Object.getOwnPropertyDescriptor,al=(o,t,e,n)=>{for(var r=n>1?void 0:n?sl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Pn=(o,t)=>(e,n)=>t(e,n,o);let Kn=class{constructor(o,t,e){D(this,"_docContainer");D(this,"getComponent",o=>{if(this._docContainer=o,!o.getContentRef().current)throw new Error("container is not ready")});D(this,"changeLocale",o=>{this._localeService.setLocale(o)});this._localeService=o,this._injector=t,this._configService=e}getUIConfig(){return{injector:this._injector,config:this._configService.getConfig(fo),changeLocale:this.changeLocale,getComponent:this.getComponent}}getContentRef(){return this._docContainer.getContentRef()}UIDidMount(o){if(this._docContainer)return o(this._docContainer)}getDocContainer(){return this._docContainer}};Kn=al([Pn(0,i.Inject(i.LocaleService)),Pn(1,i.Inject(i.Injector)),Pn(2,i.IConfigService)],Kn);var cl=Object.getOwnPropertyDescriptor,ll=(o,t,e,n)=>{for(var r=n>1?void 0:n?cl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Al=(o,t)=>(e,n)=>t(e,n,o);let Wt=class extends i.RxDisposable{constructor(t){super();D(this,"_docContainerController");this._injector=t,this._docContainerController=this._injector.createInstance(Kn)}};Wt=ll([Al(0,i.Inject(i.Injector))],Wt);var dl=Object.getOwnPropertyDescriptor,ul=(o,t,e,n)=>{for(var r=n>1?void 0:n?dl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},fr=(o,t)=>(e,n)=>t(e,n,o);let zt=class extends i.Disposable{constructor(o,t){super(),this._docAutoFormatService=o,this._renderManagerService=t,this._initListTabAutoFormat(),this._initSpaceAutoFormat(),this._initDefaultEnterFormat(),this._initExitListAutoFormat()}_initListTabAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Fe.id,match:o=>{var r;const{selection:t,paragraphs:e,unit:n}=o;if(e.length===1&&t.startOffset===e[0].paragraphStart&&e[0].bullet){const s=(r=n.getBody())==null?void 0:r.paragraphs,a=s==null?void 0:s.filter(c=>{var l;return((l=c.bullet)==null?void 0:l.listId)===e[0].bullet.listId});return(a==null?void 0:a.findIndex(c=>c.startIndex===e[0].startIndex))!==0}else if(e.length>1&&e.some(s=>s.bullet))return!0;return!1},getMutations(o){const t=o.commandParams;return[{id:jt.id,params:{type:t!=null&&t.shift?dt.decrease:dt.increase}}]},priority:100})),this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Fe.id,match:o=>{const{selection:t,unit:e}=o,{startNodePosition:n,endNodePosition:r}=t,s=this._renderManagerService.getRenderById(e.getUnitId()),a=s==null?void 0:s.with(M.DocSkeletonManagerService).getSkeleton();return a==null?!1:!!(n&&r&&kr(a,n,r)||n&&!r&&n.path.indexOf("cells")>-1)},getMutations(o){const t=o.commandParams;return[{id:Po.id,params:{shift:!!(t!=null&&t.shift)}}]},priority:99}))}_initSpaceAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:pt.id,match:o=>{var s;const{selection:t,paragraphs:e,unit:n}=o;if(!t.collapsed||e.length!==1||!t.collapsed)return!1;const r=(s=n.getBody())==null?void 0:s.dataStream.slice(e[0].paragraphStart,t.startOffset-1);return!!(r&&(Object.keys(i.QuickListTypeMap).includes(r)||Object.keys(Dn).includes(r)))},getMutations(o){var s;const{paragraphs:t,unit:e,selection:n}=o,r=(s=e.getBody())==null?void 0:s.dataStream.slice(t[0].paragraphStart,n.startOffset-1);if(r&&Object.keys(i.QuickListTypeMap).includes(r)){const a=i.QuickListTypeMap[r];return[{id:mo.id,params:{listType:a,paragraph:t[0]}}]}if(r&&Object.keys(Dn).includes(r)){const a=Dn[r];return[{id:pi.id,params:{value:a}}]}return[]}}))}_initExitListAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Ge.id,match:o=>{const{paragraphs:t}=o;return!!(t.length===1&&t[0].bullet&&t[0].paragraphStart===t[0].paragraphEnd)},getMutations:o=>{const t=o.paragraphs[0].bullet;return t?t.nestingLevel>0?[{id:jt.id,params:{type:dt.decrease}}]:[{id:tt.id,params:{listType:o.paragraphs[0].bullet.listType}}]:[]}}))}_initDefaultEnterFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Ge.id,match:()=>!0,getMutations(){return[{id:dn.id}]},priority:-9999}))}};zt=ul([fr(0,i.Inject(exports.DocAutoFormatService)),fr(1,x.IRenderManagerService)],zt);function gl(o){return o.rows[0].cells[0].sections[0].columns[0].lines[0]}function hl(o){const t=o.rows[o.rows.length-1],e=t.cells[t.cells.length-1];return x.getLastLine(e)}function ml(o,t){const{ed:e}=o,{skeTables:n}=t;let r=null;for(const s of n.values())if(s.st===e+1){r=s;break}return r}function pr(o){const t=o==null?void 0:o.parent;let e=null,n=null;if(o==null||t==null)return{lineBeforeTable:e,lineAfterTable:n};const{st:r,ed:s}=o,a=t.type===x.DocumentSkeletonPageType.CELL?[t]:t.parent.pages;return x.lineIterator(a,c=>{c.st===s+1?n=c:c.ed===r-1&&(e=c)}),{lineBeforeTable:e,lineAfterTable:n}}function Ri(o){return o.sections[0].columns[0].lines.length===0}function bi(o){var a,c;const t=o.parent,e=t==null?void 0:t.parent,n=e==null?void 0:e.tableId;if(t==null||e==null)return;const r=t.cells.indexOf(o);let s=e.rows[e.rows.indexOf(t)+1];if(s==null&&n.indexOf("#-#")){const[l,A]=n.split("#-#"),d=(c=(a=e.parent)==null?void 0:a.parent)==null?void 0:c.pages,u=`${l}#-#${Number.parseInt(A)+1}`;if(d)for(const h of d){const{skeTables:g}=h;if(g.has(u)){const m=g.get(u);if(m!=null&&m.rows.length){s=m.rows.find(f=>!f.isRepeatRow);break}}}}if(s!=null){const l=s.cells[r];return Ri(l)?bi(l):l}}function xi(o){var s,a;const t=o.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;let n=e.rows[e.rows.indexOf(t)-1];const r=t.cells.indexOf(o);if((n==null||n.isRepeatRow)&&e.tableId.indexOf("#-#")){const[c,l]=e.tableId.split("#-#"),A=(a=(s=e.parent)==null?void 0:s.parent)==null?void 0:a.pages,d=`${c}#-#${Number.parseInt(l)-1}`;if(A)for(const u of A){const{skeTables:h}=u;if(h.has(d)){const g=h.get(d);if(g!=null&&g.rows.length){n=g.rows[g.rows.length-1];break}}}}if(n!=null){const c=n.cells[r];return Ri(c)?xi(c):c}}function fl(o,t){const{st:e}=o,{skeTables:n}=t;let r=null;for(const s of n.values())if(s.ed===e-1){r=s;break}return r}function pl(o){return o.sections[0].columns[0].lines[0]}function Sl(o){const t=x.getLastColumn(o);return t.lines[t.lines.length-1]}var Il=Object.getOwnPropertyDescriptor,vl=(o,t,e,n)=>{for(var r=n>1?void 0:n?Il(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Bt=(o,t)=>(e,n)=>t(e,n,o);let Kt=class extends i.Disposable{constructor(t,e,n,r){super();D(this,"_onInputSubscription");this._univerInstanceService=t,this._renderManagerService=e,this._textSelectionManagerService=n,this._commandService=r,this._commandExecutedListener()}dispose(){var t;super.dispose(),(t=this._onInputSubscription)==null||t.unsubscribe()}_commandExecutedListener(){const t=[Se.id,Ie.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(!t.includes(e.id))return;const n=e.params;switch(e.id){case Se.id:return this._handleMoveCursor(n.direction);case Ie.id:return this._handleShiftMoveSelection(n.direction);default:throw new Error("Unknown command")}}))}_handleShiftMoveSelection(t){var E,T,R;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),r=this._univerInstanceService.getCurrentUniverDocInstance();if(r==null)return;const s=(E=this._renderManagerService.getRenderById(r.getUnitId()))==null?void 0:E.with(M.DocSkeletonManagerService).getSkeleton(),a=this._getDocObject();if(e==null||s==null||a==null)return;const{startOffset:c,endOffset:l,style:A,collapsed:d,direction:u,segmentId:h,startNodePosition:g,endNodePosition:m,segmentPage:f}=e;if(n.length>1){let C=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY;for(const B of n)C=Math.min(C,B.startOffset),y=Math.max(y,B.endOffset);this._textSelectionManagerService.replaceTextRanges([{startOffset:t===i.Direction.LEFT||t===i.Direction.UP?y:C,endOffset:t===i.Direction.LEFT||t===i.Direction.UP?C:y,style:A}],!1);return}const p=d||u===i.RANGE_DIRECTION.FORWARD?c:l;let S=d||u===i.RANGE_DIRECTION.FORWARD?l:c;const v=(T=r.getSelfOrHeaderFooterModel(h).getBody().dataStream.length)!=null?T:Number.POSITIVE_INFINITY;if(t===i.Direction.LEFT||t===i.Direction.RIGHT){const C=s.findNodeByCharIndex(S-1,h,f),y=s.findNodeByCharIndex(S,h,f);S=t===i.Direction.RIGHT?S+y.count:S-((R=C==null?void 0:C.count)!=null?R:0),S=Math.min(v-2,Math.max(0,S)),this._textSelectionManagerService.replaceTextRanges([{startOffset:p,endOffset:S,style:A}],!1),this._scrollToFocusNodePosition(r.getUnitId(),S)}else{const C=s.findNodeByCharIndex(S,h,f),y=a.document.getOffsetConfig(),B=d?g:u===i.RANGE_DIRECTION.FORWARD?m:g,b=this._getTopOrBottomPosition(s,C,B,t===i.Direction.DOWN,!0);if(b==null){const O=t===i.Direction.UP?0:v-2;if(O===S)return;this._textSelectionManagerService.replaceTextRanges([{startOffset:p,endOffset:O,style:A}],!1);return}const P=new ge(y,s).getRangePointData(b,b).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{startOffset:p,endOffset:P.endOffset,style:A}],!1),this._scrollToFocusNodePosition(r.getUnitId(),P.endOffset)}}_handleMoveCursor(t){var v,E,T,R;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),r=this._univerInstanceService.getCurrentUniverDocInstance();if(r==null)return!1;const s=(v=this._renderManagerService.getRenderById(r.getUnitId()))==null?void 0:v.with(M.DocSkeletonManagerService).getSkeleton(),a=this._getDocObject();if(e==null||s==null||a==null||n==null)return;const{startOffset:c,endOffset:l,style:A,collapsed:d,segmentId:u,startNodePosition:h,endNodePosition:g,segmentPage:m}=e,f=r.getSelfOrHeaderFooterModel(u).getBody();if(f==null)return;const p=(E=f.dataStream.length)!=null?E:Number.POSITIVE_INFINITY,S=(T=r.getCustomRanges())!=null?T:[];if(t===i.Direction.LEFT||t===i.Direction.RIGHT){let C;if(!e.collapsed||n.length>1){let b=Number.POSITIVE_INFINITY,P=Number.NEGATIVE_INFINITY;for(const O of n)b=Math.min(b,O.startOffset),P=Math.max(P,O.endOffset);C=t===i.Direction.LEFT?b:P}else{const b=s.findNodeByCharIndex(c-1,u,m),P=s.findNodeByCharIndex(c,u,m),O=s.findNodeByCharIndex(c+1,u,m);t===i.Direction.LEFT?C=Math.max(0,c-((R=b==null?void 0:b.count)!=null?R:1)):C=Math.min(p-2,l+P.count+((O==null?void 0:O.streamType)===i.DataStreamTreeTokenType.SECTION_BREAK?1:0))}const y=[i.DataStreamTreeTokenType.TABLE_START,i.DataStreamTreeTokenType.TABLE_END,i.DataStreamTreeTokenType.TABLE_ROW_START,i.DataStreamTreeTokenType.TABLE_ROW_END,i.DataStreamTreeTokenType.TABLE_CELL_START,i.DataStreamTreeTokenType.TABLE_CELL_END,i.DataStreamTreeTokenType.SECTION_BREAK];if(t===i.Direction.LEFT)for(;y.includes(f.dataStream[C]);)C--;else for(;y.includes(f.dataStream[C]);)C++;S.filter(b=>b.wholeEntity&&b.startIndex<C&&b.endIndex>=C).forEach(b=>{t===i.Direction.LEFT?C=Math.min(b.startIndex,C):C=Math.max(b.endIndex+1,C)}),this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,C),endOffset:Math.max(0,C),style:A}],!1),this._scrollToFocusNodePosition(r.getUnitId(),C)}else{const C=s.findNodeByCharIndex(c,u,m),y=s.findNodeByCharIndex(l,u,m),B=a.document.getOffsetConfig(),b=this._getTopOrBottomPosition(s,t===i.Direction.UP||d?C:y,t===i.Direction.UP||d?h:g,t===i.Direction.DOWN);if(b==null){let O;d?O=t===i.Direction.UP?0:p-2:O=t===i.Direction.UP?c:l,this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,O),endOffset:Math.max(0,O),style:A}],!1);return}const P=new ge(B,s).getRangePointData(b,b).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{...P,style:A}],!1),this._scrollToFocusNodePosition(r.getUnitId(),P.endOffset)}}_getTopOrBottomPosition(t,e,n,r,s=!1){if(e==null||n==null)return;const a=this._getGlyphLeftOffsetInLine(e),c=this._getNextOrPrevLine(e,r,s);if(c==null)return;const l=this._matchPositionByLeftOffset(t,c,a,n);if(l!=null)return{...l,isBack:!0}}_getGlyphLeftOffsetInLine(t){const e=t.parent;if(e==null)return Number.NEGATIVE_INFINITY;const n=e.left,{left:r}=t;return n+r}_matchPositionByLeftOffset(t,e,n,r){const s={distance:Number.POSITIVE_INFINITY};for(const c of e.divides){const l=c.left;for(const A of c.glyphGroup){if(A.streamType===i.DataStreamTreeTokenType.SECTION_BREAK)continue;const{left:d}=A,u=l+d,h=Math.abs(n-u);h<s.distance&&(s.glyph=A,s.distance=h)}}if(s.glyph==null)return;const{segmentPage:a}=r;return t.findPositionByGlyph(s.glyph,a)}_getNextOrPrevLine(t,e,n=!1){var f,p,S,v,E,T,R,C,y,B,b,P;const r=t.parent,s=r==null?void 0:r.parent,a=s==null?void 0:s.parent,c=a==null?void 0:a.parent,l=c==null?void 0:c.parent;if(r==null||s==null||a==null||c==null||l==null)return;const A=a.lines.indexOf(s);if(A===-1)return;let d;if(l.type===x.DocumentSkeletonPageType.CELL&&n){const O=Sr(l,e);if(O)return O}if(e===!0){d=a.lines[A+1];const O=ml(s,l);if(O){const _=gl(O);_&&(d=_)}}else{d=a.lines[A-1];const O=fl(s,l);if(O){const _=hl(O);_&&(d=_)}}if(d!=null)return d;const u=c.columns.indexOf(a);if(u===-1)return;if(e===!0)d=(f=c.columns[u+1])==null?void 0:f.lines[0];else{const O=(S=(p=c.columns)==null?void 0:p[u-1])==null?void 0:S.lines;d=O==null?void 0:O[O.length-1]}if(d!=null)return d;const h=l.sections.indexOf(c);if(h===-1)return;if(e===!0)d=(E=(v=l.sections[h-1])==null?void 0:v.columns[0])==null?void 0:E.lines[0];else{const O=(R=(T=l.sections)==null?void 0:T[h-1])==null?void 0:R.columns,_=O==null?void 0:O[O.length-1],L=_==null?void 0:_.lines;d=L==null?void 0:L[L.length-1]}if(d!=null)return d;if(l.type===x.DocumentSkeletonPageType.CELL)return Sr(l,e);const g=l.parent;if(g==null)return;const m=g.pages.indexOf(l);if(m!==-1){if(e===!0)d=(B=(y=(C=g.pages[m+1])==null?void 0:C.sections[0])==null?void 0:y.columns[0])==null?void 0:B.lines[0];else{const O=(b=g.pages[m-1])==null?void 0:b.sections;if(O==null)return;const _=(P=O[O.length-1])==null?void 0:P.columns,L=_[_.length-1],k=L==null?void 0:L.lines;d=k[k.length-1]}if(d!=null)return d}}_scrollToFocusNodePosition(t,e){var r;const n=(r=this._renderManagerService.getRenderById(t))==null?void 0:r.with(exports.DocBackScrollRenderController);n!=null&&n.scrollToRange({startOffset:e,endOffset:e,collapsed:!0})}_getDocObject(){return Br(this._univerInstanceService,this._renderManagerService)}};Kt=vl([Bt(0,i.IUniverInstanceService),Bt(1,x.IRenderManagerService),Bt(2,i.Inject(M.DocSelectionManagerService)),Bt(3,i.ICommandService)],Kt);function Sr(o,t){var n,r;let e=null;if(t===!0){const s=bi(o);if(s)e=pl(s);else{const a=(n=o.parent)==null?void 0:n.parent,{lineAfterTable:c}=pr(a);c&&(e=c)}}else{const s=xi(o);if(s)e=Sl(s);else{const a=(r=o.parent)==null?void 0:r.parent,{lineBeforeTable:c}=pr(a);c&&(e=c)}}return e}const El=({handleRowColChange:o,tableCreateParams:t})=>{const e=I.useDependency(i.LocaleService),[n,r]=F.useState(3),[s,a]=F.useState(5);function c(l,A){r(l),a(A),o(l,A)}return F.useEffect(()=>{r(t.rowCount),a(t.colCount)},[t]),w.jsxs("div",{className:"univer-flex univer-items-center univer-justify-between",children:[w.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[w.jsx("span",{children:e.t("toolbar.table.rowCount")}),w.jsx(te.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:n,onChange:l=>{c(l,s)}})]}),w.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[w.jsx("span",{children:e.t("toolbar.table.colCount")}),w.jsx(te.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:s,onChange:l=>{c(n,l)}})]})]})};var Cl=Object.getOwnPropertyDescriptor,Tl=(o,t,e,n)=>{for(var r=n>1?void 0:n?Cl(t,e):t,s=o.length-1,a;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r},Ir=(o,t)=>(e,n)=>t(e,n,o);let Xt=class extends i.Disposable{constructor(o,t){super(),this._commandService=o,this._componentManager=t,this._initialize()}_initialize(){this._init(),this._registerCommands(),this._initCustomComponents()}_registerCommands(){[En].forEach(o=>this.disposeWithMe(this._commandService.registerCommand(o)))}_initCustomComponents(){const o=this._componentManager;this.disposeWithMe(o.register(Ii,El))}_init(){}};Xt=Tl([Ir(0,i.ICommandService),Ir(1,i.Inject(I.ComponentManager))],Xt);const yl=[xe.id,Ee.id,De.id,Be.id,_e.id,Ne.id,Ce.id,Pe.id,Oe.id,Me.id];function Rl(o){const{avaliableMenus:t=yl}=o,e=I.useDependency(I.IMenuManagerService),[n,r]=F.useState([]);return F.useEffect(()=>{function s(){const c=e.getFlatMenuByPositionKey(I.MenuManagerPosition.RIBBON),l=[];for(const A of t){const d=c.find(u=>u.key===A);d&&l.push(d)}r(l)}s();const a=e.menuChanged$.subscribe(s);return()=>{a.unsubscribe()}},[e]),w.jsx("div",{className:`
50
50
  univer-box-border univer-flex univer-rounded univer-border univer-border-solid univer-border-gray-200
51
51
  univer-bg-white univer-py-1.5
package/lib/es/index.js CHANGED
@@ -9024,16 +9024,19 @@ function pt(n) {
9024
9024
  }
9025
9025
  };
9026
9026
  const { segmentId: d } = i, h = s.getSelfOrHeaderFooterModel(d).getBody();
9027
- return h == null ? {
9028
- ts: {
9029
- ...a,
9030
- ...l,
9031
- ...c
9032
- }
9033
- } : {
9027
+ if (h == null)
9028
+ return {
9029
+ ts: {
9030
+ ...a,
9031
+ ...l,
9032
+ ...c
9033
+ }
9034
+ };
9035
+ const u = Aa(h, i, a);
9036
+ return {
9034
9037
  ts: {
9035
- ...Aa(h, i, a),
9036
9038
  ...l,
9039
+ ...u,
9037
9040
  ...c
9038
9041
  }
9039
9042
  };
package/lib/index.js CHANGED
@@ -9024,16 +9024,19 @@ function pt(n) {
9024
9024
  }
9025
9025
  };
9026
9026
  const { segmentId: d } = i, h = s.getSelfOrHeaderFooterModel(d).getBody();
9027
- return h == null ? {
9028
- ts: {
9029
- ...a,
9030
- ...l,
9031
- ...c
9032
- }
9033
- } : {
9027
+ if (h == null)
9028
+ return {
9029
+ ts: {
9030
+ ...a,
9031
+ ...l,
9032
+ ...c
9033
+ }
9034
+ };
9035
+ const u = Aa(h, i, a);
9036
+ return {
9034
9037
  ts: {
9035
- ...Aa(h, i, a),
9036
9038
  ...l,
9039
+ ...u,
9037
9040
  ...c
9038
9041
  }
9039
9042
  };
package/lib/umd/index.js CHANGED
@@ -45,7 +45,7 @@ ${s.DataStreamTreeTokenType.TABLE_CELL_END}`;break}}}_processBeforeLink(t,e){ret
45
45
  univer-flex univer-cursor-pointer univer-items-center univer-justify-center
46
46
  univer-rounded univer-bg-none univer-px-3 univer-py-1
47
47
  hover:univer-bg-black/60
48
- `,{"univer-bg-blend-color-dodge/90":n===C.value}),onClick:()=>o(C.value),children:C.icon})},C.value))}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:i.t("doc.paragraphSetting.indentation")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.left"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:a,onChange:C=>r(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.right"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:c,onChange:C=>l(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.firstLine"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:A,onChange:C=>d(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.hanging"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:u,onChange:C=>g(C!=null?C:0)})]})]}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:i.t("doc.paragraphSetting.spacing")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-betweenuniver-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.before"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:h,onChange:C=>m(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.after"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:f,onChange:C=>p(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between item-center",children:[Q.jsx("div",{className:"univer-mt-3 univer-text-xs",children:i.t("doc.paragraphSetting.lineSpace")}),Q.jsxs("div",{className:"univer-mt-4 univer-flex univer-flex-col univer-gap-1.5",style:{width:162},children:[Q.jsx(ne.Select,{value:`${E}`,options:[{label:i.t("doc.paragraphSetting.multiSpace"),value:`${s.SpacingRule.AUTO}`},{label:i.t("doc.paragraphSetting.fixedValue"),value:`${s.SpacingRule.AT_LEAST}`}],onChange:C=>y(Number(C))}),Q.jsx(ke,{...O,value:S,onChange:C=>v(C!=null?C:0)})]})]})]})]})}const $r=(i,t)=>t.length===i.length&&i.some(e=>t.some(n=>n.startOffset===e.startOffset&&n.endOffset===e.endOffset));function ec(){const i=I.useDependency(s.ICommandService),t=I.useDependency(s.LocaleService),e=I.useObservable(t.currentLocale$),[n,o]=k.useState(""),a=k.useMemo(()=>s.debounce(()=>o(s.generateRandomId(4)),300),[]),r=k.useRef([]);return k.useEffect(()=>{const c=i.onCommandExecuted(l=>{if(D.SetTextSelectionsOperation.id===l.id){const A=l.params.ranges;$r(A,r.current)||o(s.generateRandomId(4)),r.current=A}D.RichTextEditingMutation.id===l.id&&l.params.trigger!==ge.id&&a()});return()=>c.dispose()},[a]),k.useEffect(()=>{o(s.generateRandomId(4))},[e]),k.useEffect(()=>()=>a.cancel(),[a]),Q.jsx(Zr,{},n)}var tc=Object.getOwnPropertyDescriptor,nc=(i,t,e,n)=>{for(var o=n>1?void 0:n?tc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},Si=(i,t)=>(e,n)=>t(e,n,i);const as="doc_ui_paragraph-setting-panel";let tt=class extends s.Disposable{constructor(t,e,n){super();x(this,"_id");this._commandService=t,this._componentManager=e,this._sidebarService=n,this._init()}_init(){this.disposeWithMe(this._componentManager.register(as,ec))}openPanel(){const t={header:{title:"doc.slider.paragraphSetting"},id:this._id,children:{label:as},width:300};this._sidebarService.open(t)}closePanel(){this._sidebarService.close(this._id)}};tt=nc([Si(0,s.ICommandService),Si(1,s.Inject(I.ComponentManager)),Si(2,s.Inject(I.ISidebarService))],tt);const Ii={id:"sidebar.operation.doc-paragraph-setting-panel",type:s.CommandType.OPERATION,handler:i=>(i.get(tt).openPanel(),!0)},vi=i=>{const t=i.get(D.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(()=>{t.getDocRanges().some(r=>r.collapsed===!1||r.rangeType===s.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function ic(i){if(i.length<2)return!0;const t=i.map(e=>e.tableId);return t.every(e=>e===t[0])}function rs(i,t,e){var a;const n=t.getRectRanges(),o=t.getActiveTextRange();if(n&&n.length&&ic(n)&&o==null){i.next(!1);return}if(o&&(n==null||n.length===0)){const{segmentId:r,startOffset:c,endOffset:l}=o,A=e.getCurrentUniverDocInstance(),d=(a=A==null?void 0:A.getSelfOrHeaderFooterModel(r).getBody())==null?void 0:a.tables;if(d&&d.length&&d.some(u=>{const{startIndex:g,endIndex:h}=u;return c>g&&c<h||l>g&&l<h})){i.next(!1);return}}i.next(!0)}const ye=i=>{const t=i.get(D.DocSelectionManagerService),e=i.get(s.IUniverInstanceService);return new U.Observable(n=>{const o=t.textSelection$.subscribe(()=>{rs(n,t,e)});return rs(n,t,e),()=>o.unsubscribe()})},oc=i=>({id:Ct.name,commandId:Ct.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy",disabled$:vi(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),sc=i=>({id:Ii.id,type:I.MenuItemType.BUTTON,icon:"MenuSingle24",title:"doc.menu.paragraphSetting",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),ac=i=>({id:qt.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.cut",disabled$:vi(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),rc=i=>({id:Jt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.paste",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),cc=i=>({id:vt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.delete",disabled$:vi(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),cs="doc.menu.table-insert";function lc(i){return{id:cs,type:I.MenuItemType.SUBITEMS,title:"table.insert",icon:"Insert",hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),ye(i),(t,e)=>t||e)}}function Ac(i){return{id:sn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowAbove",icon:"InsertRowAbove",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function dc(i){return{id:an.id,type:I.MenuItemType.BUTTON,title:"table.insertRowBelow",icon:"InsertRowBelow",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function uc(i){return{id:rn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnLeft",icon:"LeftInsertColumn",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function hc(i){return{id:cn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnRight",icon:"RightInsertColumn",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}const ls="doc.menu.table-delete";function gc(i){return{id:ls,type:I.MenuItemType.SUBITEMS,title:"table.delete",icon:"Reduce",hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),ye(i),(t,e)=>t||e)}}function mc(i){return{id:nn.id,type:I.MenuItemType.BUTTON,title:"table.deleteRows",icon:"DeleteRow",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function fc(i){return{id:on.id,type:I.MenuItemType.BUTTON,title:"table.deleteColumns",icon:"DeleteColumn",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function pc(i){return{id:et.id,type:I.MenuItemType.BUTTON,title:"table.deleteTable",icon:"GridSingle",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Sc(i){const t=i.get(s.IUniverInstanceService),e=i.get(M.IRenderManagerService);return new U.Observable(n=>{const o=t.focused$.subscribe(a=>{if(a==null||t.getUnitType(a)!==s.UniverInstanceType.UNIVER_DOC)return n.next(!0);const c=e.getRenderById(a);if(c==null)return n.next(!0);c.with(D.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(A=>{n.next(A===M.DocumentEditArea.HEADER||A===M.DocumentEditArea.FOOTER)})});return()=>o.unsubscribe()})}function Ic(i){const t=i.get(s.IUniverInstanceService),e=i.get(s.ICommandService);return new U.Observable(n=>{const o=e.onCommandExecuted(l=>{if(l.id===D.RichTextEditingMutation.id){const{unitId:A}=l.params,d=t.getUnit(A);if(d==null){n.next(!0);return}const{documentStyle:u}=d.getSnapshot();n.next((u==null?void 0:u.documentFlavor)!==s.DocumentFlavor.TRADITIONAL)}}),a=t.focused$.subscribe(l=>{if(l==null)return n.next(!0);const A=t.getUniverDocInstance(l),d=A==null?void 0:A.getSnapshot().documentStyle.documentFlavor;n.next(d!==s.DocumentFlavor.TRADITIONAL)}),r=t.getCurrentUniverDocInstance();if(r==null)return n.next(!0);const c=r==null?void 0:r.getSnapshot().documentStyle.documentFlavor;return n.next(c!==s.DocumentFlavor.TRADITIONAL),()=>{o.dispose(),a.unsubscribe()}})}function vc(i){const t=i.get(D.DocSelectionManagerService),e=i.get(s.IUniverInstanceService);return new U.Observable(n=>{const o=t.textSelection$.subscribe(a=>{if(a==null){n.next(!0);return}const{textRanges:r}=a;if(r.length!==1){n.next(!0);return}const c=r[0],{collapsed:l,startNodePosition:A,startOffset:d}=c;if(!l||d==null){n.next(!0);return}const u=e.getCurrentUniverDocInstance();if(u==null){n.next(!0);return}const g=ae(i,u.getUnitId());if(g==null){n.next(!0);return}if(g.getViewModel().getCustomRangeRaw(d)){n.next(!0);return}if(A!=null){const{path:f}=A;if(f.indexOf("cells")!==-1){n.next(!0);return}}n.next(!1)});return()=>o.unsubscribe()})}function ee(i){const t=i.get(D.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(o=>{if(o==null){e.next(!0);return}const{textRanges:a,rectRanges:r}=o;if(a.length===0&&r.length===0){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}function Ec(i){const t=i.get(s.ICommandService);return{id:Re.id,type:I.MenuItemType.BUTTON,icon:"BoldSingle",title:"Set bold",tooltip:"toolbar.bold",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.bl;e.next(r===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Cc(i){const t=i.get(s.ICommandService);return{id:Me.id,type:I.MenuItemType.BUTTON,icon:"ItalicSingle",title:"Set italic",tooltip:"toolbar.italic",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.it;e.next(r===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Tc(i){const t=i.get(s.ICommandService);return{id:De.id,type:I.MenuItemType.BUTTON,icon:"UnderlineSingle",title:"Set underline",tooltip:"toolbar.underline",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.ul;e.next((r==null?void 0:r.s)===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function yc(i){const t=i.get(s.ICommandService);return{id:Be.id,type:I.MenuItemType.BUTTON,icon:"StrikethroughSingle",title:"Set strike through",tooltip:"toolbar.strikethrough",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.st;e.next((r==null?void 0:r.s)===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function bc(i){const t=i.get(s.ICommandService);return{id:Ee.id,type:I.MenuItemType.BUTTON,icon:"SubscriptSingle",tooltip:"toolbar.subscript",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.va;e.next(r===s.BaselineOffset.SUBSCRIPT)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Oc(i){const t=i.get(s.ICommandService);return{id:xe.id,type:I.MenuItemType.BUTTON,icon:"SuperscriptSingle",tooltip:"toolbar.superscript",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.va;e.next(r===s.BaselineOffset.SUPERSCRIPT)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Rc(i){const t=i.get(s.ICommandService);return{id:_e.id,tooltip:"toolbar.font",type:I.MenuItemType.SELECTOR,label:po,selections:I.FONT_FAMILY_LIST.map(e=>({label:{name:So},value:e.value})),value$:new U.Observable(e=>{const n=s.DEFAULT_STYLES.ff,o=()=>{var l;const r=Ue(i);if(r==null){e.next(n);return}const c=(l=r.ts)==null?void 0:l.ff;e.next(c!=null?c:n)},a=t.onCommandExecuted(r=>{const c=r.id;(c===D.SetTextSelectionsOperation.id||c===_e.id)&&o()});return o(),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Mc(i){const t=i.get(s.ICommandService);return{id:Ce.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:Io,props:{min:1,max:400}},selections:I.FONT_SIZE_LIST,value$:new U.Observable(e=>{const n=s.DEFAULT_STYLES.fs,o=()=>{var l;const r=Ue(i);if(r==null){e.next(n);return}const c=(l=r.ts)==null?void 0:l.fs;e.next(c!=null?c:n)},a=t.onCommandExecuted(r=>{const c=r.id;(c===D.SetTextSelectionsOperation.id||c===Ce.id)&&o()});return o(),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Dc(i){const t=i.get(s.ICommandService);return{id:en.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.heading.tooltip",label:{name:I.COMMON_LABEL_COMPONENT,props:{selections:I.HEADING_LIST}},selections:I.HEADING_LIST.map(e=>({label:{name:I.HEADING_ITEM_COMPONENT,props:{value:e.value,text:e.label}},value:e.value})),value$:new U.Observable(e=>{const n=s.NamedStyleType.NORMAL_TEXT,o=()=>{var l,A;const r=nt(i);if(r==null){e.next(n);return}const c=(A=(l=r.paragraphStyle)==null?void 0:l.namedStyleType)!=null?A:n;e.next(c)},a=t.onCommandExecuted(r=>{const c=r.id;(c===D.SetTextSelectionsOperation.id||c===Ce.id)&&o()});return o(),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Bc(i){const t=i.get(s.ICommandService),e=i.get(s.ThemeService);return{id:Ne.id,icon:"FontColor",tooltip:"toolbar.textColor.main",type:I.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:Xn,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const o=e.getCurrentTheme().textColor,a=t.onCommandExecuted(r=>{if(r.id===Ne.id){const c=r.params.value;n.next(c!=null?c:o)}});return n.next(o),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function xc(i){return{id:Kn.id,type:I.MenuItemType.BUTTON,icon:"HeaderFooterSingle",tooltip:"toolbar.headerFooter",hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY),Ic(i),(t,e)=>t||e)}}const _c="GridSingle",As="doc.menu.table";function Nc(i){return{id:As,type:I.MenuItemType.SUBITEMS,icon:_c,tooltip:"toolbar.table.main",disabled$:vc(i),hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY),Sc(i),(t,e)=>t||e)}}function Pc(i){return{id:ln.id,title:"toolbar.table.insert",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Uc(i){const t=i.get(s.ICommandService);return{id:gt.id,type:I.MenuItemType.BUTTON,icon:"LeftJustifyingSingle",tooltip:"toolbar.alignLeft",disabled$:ee(i),activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.LEFT)}});return e.next(!1),n.dispose}),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function wc(i){const t=i.get(s.ICommandService);return{id:mt.id,type:I.MenuItemType.BUTTON,icon:"HorizontallySingle",tooltip:"toolbar.alignCenter",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.CENTER)}});return e.next(!1),n.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Qc(i){const t=i.get(s.ICommandService);return{id:ft.id,type:I.MenuItemType.BUTTON,icon:"RightJustifyingSingle",tooltip:"toolbar.alignRight",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.RIGHT)}});return e.next(!1),n.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Lc(i){const t=i.get(s.ICommandService);return{id:pt.id,type:I.MenuItemType.BUTTON,icon:"AlignTextBothSingle",tooltip:"toolbar.alignJustify",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.JUSTIFIED)}});return e.next(!1),n.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Fc(i){return{id:$t.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",tooltip:"toolbar.horizontalLine",disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const Tt=i=>new U.Observable(t=>{const e=i.get(s.IUniverInstanceService),n=i.get(D.DocSelectionManagerService);let o;const a=e.focused$.subscribe(r=>{if(o==null||o.unsubscribe(),r==null)return;const c=e.getUniverDocInstance(r);c!=null&&(o=n.textSelection$.subscribe(()=>{var d,u,g;const l=n.getDocRanges(),A=(d=l.find(h=>h.isActive))!=null?d:l[0];if(A){const h=c.getSelfOrHeaderFooterModel(A==null?void 0:A.segmentId),m=s.BuildTextUtils.range.getParagraphsInRange(A,(g=(u=h.getBody())==null?void 0:u.paragraphs)!=null?g:[]);let f;if(m.every(p=>{var S;return f||(f=(S=p.bullet)==null?void 0:S.listType),p.bullet&&p.bullet.listType===f})){t.next(f);return}}t.next(void 0)}))});return()=>{a.unsubscribe(),o==null||o.unsubscribe()}});function kc(i){return{id:ht.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Eo,hoverable:!1,selectable:!1},value$:Tt(i)}],icon:"OrderSingle",tooltip:"toolbar.order",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),disabled$:ee(i),activated$:Tt(i).pipe(U.map(t=>t&&t.indexOf("ORDER_LIST")===0))}}function Hc(i){return{id:ut.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Co,hoverable:!1,selectable:!1},value$:Tt(i)}],icon:"UnorderSingle",tooltip:"toolbar.unorder",disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),activated$:Tt(i).pipe(U.map(t=>t&&t.indexOf("BULLET_LIST")===0))}}function Vc(i){return{id:Ft.id,type:I.MenuItemType.BUTTON,icon:"TodoList",tooltip:"toolbar.checklist",disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),activated$:Tt(i).pipe(U.map(t=>t&&t.indexOf("CHECK_LIST")===0))}}function Wc(i){const t=i.get(s.ICommandService),e=i.get(s.IUniverInstanceService);return{id:tn.id,type:I.MenuItemType.BUTTON,icon:"KeyboardSingle",tooltip:"toolbar.documentFlavor",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY),activated$:new U.Observable(n=>{var r;const o=t.onCommandExecuted(c=>{var l;if(c.id===D.RichTextEditingMutation.id){const A=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC);n.next(((l=A==null?void 0:A.getSnapshot())==null?void 0:l.documentStyle.documentFlavor)===s.DocumentFlavor.MODERN)}}),a=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC);return n.next(((r=a==null?void 0:a.getSnapshot())==null?void 0:r.documentStyle.documentFlavor)===s.DocumentFlavor.MODERN),()=>o.dispose()})}}function zc(i){return{id:Ge.id,type:I.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColor"}}function Kc(i){const t=i.get(s.ICommandService),e=i.get(s.ThemeService);return{id:Pe.id,tooltip:"toolbar.fillColor.main",type:I.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucket",selections:[{label:{name:Xn,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const o=e.getCurrentTheme().primaryColor,a=t.onCommandExecuted(r=>{if(r.id===Pe.id){const c=r.params.value;n.next(c!=null?c:o)}});return n.next(o),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Ue(i){var m,f,p,S;const t=i.get(s.IUniverInstanceService),e=i.get(D.DocSelectionManagerService),n=i.get(ve),o=t.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC),a=e.getDocRanges(),r=(m=a.find(v=>v.isActive))!=null?m:a[0],c=n.getDefaultStyle(),l=(f=n.getStyleCache())!=null?f:{},A=nt(i),d=(p=A==null?void 0:A.paragraphStyle)!=null&&p.namedStyleType?s.NAMED_STYLE_MAP[(S=A==null?void 0:A.paragraphStyle)==null?void 0:S.namedStyleType]:null;if(o==null||r==null)return{ts:{...c,...d,...l}};const{segmentId:u}=r,g=o.getSelfOrHeaderFooterModel(u).getBody();return g==null?{ts:{...c,...d,...l}}:{ts:{...Uo(g,r,c),...d,...l}}}function nt(i){var d,u;const t=i.get(s.IUniverInstanceService),e=i.get(D.DocSelectionManagerService),n=t.getCurrentUniverDocInstance(),o=e.getDocRanges(),a=(d=o.find(g=>g.isActive))!=null?d:o[0];if(n==null||a==null)return;const{startOffset:r,segmentId:c}=a,l=(u=n.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:u.paragraphs;if(l==null)return;let A=-1;for(const g of l){const{startIndex:h}=g;if(r>A&&r<=h)return g;A=h}return null}const ds={[I.RibbonStartGroup.FORMAT]:{[Re.id]:{order:0,menuItemFactory:Ec},[Me.id]:{order:1,menuItemFactory:Cc},[De.id]:{order:2,menuItemFactory:Tc},[Be.id]:{order:3,menuItemFactory:yc},[Ee.id]:{order:4,menuItemFactory:bc},[xe.id]:{order:5,menuItemFactory:Oc},[en.id]:{order:5.5,menuItemFactory:Dc},[Ce.id]:{order:6,menuItemFactory:Mc},[_e.id]:{order:7,menuItemFactory:Rc},[Ne.id]:{order:8,menuItemFactory:Bc},[Pe.id]:{order:9,menuItemFactory:Kc,[Ge.id]:{order:0,menuItemFactory:zc}}},[I.RibbonStartGroup.LAYOUT]:{[As]:{order:1,menuItemFactory:Nc,[ln.id]:{order:0,menuItemFactory:Pc}},[gt.id]:{order:2,menuItemFactory:Uc},[mt.id]:{order:3,menuItemFactory:wc},[ft.id]:{order:4,menuItemFactory:Qc},[pt.id]:{order:5,menuItemFactory:Lc},[$t.id]:{order:6,menuItemFactory:Fc},[ht.id]:{order:7,menuItemFactory:kc},[ut.id]:{order:8,menuItemFactory:Hc},[Ft.id]:{order:9,menuItemFactory:Vc},[Kn.id]:{order:10,menuItemFactory:xc},[tn.id]:{order:11,menuItemFactory:Wc}},[I.ContextMenuPosition.MAIN_AREA]:{[I.ContextMenuGroup.FORMAT]:{[Ct.name]:{order:0,menuItemFactory:oc},[qt.id]:{order:1,menuItemFactory:ac},[Jt.id]:{order:2,menuItemFactory:rc},[vt.id]:{order:3,menuItemFactory:cc}},[I.ContextMenuGroup.LAYOUT]:{[Ii.id]:{order:0,menuItemFactory:sc},[cs]:{order:1,menuItemFactory:lc,[sn.id]:{order:1,menuItemFactory:Ac},[an.id]:{order:2,menuItemFactory:dc},[rn.id]:{order:3,menuItemFactory:uc},[cn.id]:{order:4,menuItemFactory:hc}},[ls]:{order:2,menuItemFactory:gc,[nn.id]:{order:1,menuItemFactory:mc},[on.id]:{order:2,menuItemFactory:fc},[et.id]:{order:3,menuItemFactory:pc}}}}};var jc=Object.getOwnPropertyDescriptor,Xc=(i,t,e,n)=>{for(var o=n>1?void 0:n?jc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},be=(i,t)=>(e,n)=>t(e,n,i);T.DocUIController=class extends s.Disposable{constructor(t,e,n,o,a,r,c,l,A){super(),this._injector=t,this._componentManager=e,this._commandService=n,this._layoutService=o,this._menuManagerService=a,this._uiPartsService=r,this._univerInstanceService=c,this._shortcutService=l,this._configService=A,this._init()}_initCustomComponents(){const t=this._componentManager;this.disposeWithMe(t.register(Xn,ne.ColorPicker)),this.disposeWithMe(t.register(po,I.FontFamily)),this.disposeWithMe(t.register(So,I.FontFamilyItem)),this.disposeWithMe(t.register(Io,I.FontSize)),this.disposeWithMe(t.register(Co,Ra)),this.disposeWithMe(t.register(Eo,ba)),this.disposeWithMe(t.register("TodoList",co))}_initUiParts(){var e,n,o,a,r;const t=this._configService.getConfig(Zn);(n=(e=t==null?void 0:t.layout)==null?void 0:e.docContainerConfig)!=null&&n.footer&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.FOOTER,()=>I.connectInjector(tr,this._injector))),((r=(a=(o=t==null?void 0:t.layout)==null?void 0:o.docContainerConfig)==null?void 0:a.sideMenu)==null||r)&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.CONTENT,()=>I.connectInjector(ur,this._injector)))}_initMenus(){this._menuManagerService.mergeMenu(ds)}_initShortCut(){[La,Fa,ka,Ha,Va,Wa,ja,Xa,Ka,za,Ga,Ya,Da].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}_init(){this._initCustomComponents(),this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[fo,Kn,Wn].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(s.UniverInstanceType.UNIVER_DOC,t=>{this._injector.get(M.IRenderManagerService).getRenderById(t).with(T.DocSelectionRenderService).focus()}))}},T.DocUIController=Xc([be(0,s.Inject(s.Injector)),be(1,s.Inject(I.ComponentManager)),be(2,s.ICommandService),be(3,I.ILayoutService),be(4,I.IMenuManagerService),be(5,I.IUIPartsService),be(6,s.IUniverInstanceService),be(7,I.IShortcutService),be(8,s.IConfigService)],T.DocUIController);var Gc=Object.getOwnPropertyDescriptor,Yc=(i,t,e,n)=>{for(var o=n>1?void 0:n?Gc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},Ei=(i,t)=>(e,n)=>t(e,n,i);const us=1.5;T.DocBackScrollRenderController=class extends s.RxDisposable{constructor(t,e,n,o){super(),this._context=t,this._textSelectionManagerService=e,this._editorService=n,this._docSkeletonManagerService=o,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{if(t==null)return;const{isEditing:e,unitId:n}=t;n!==this._context.unitId||!e||this._context.unitId!==s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(t){const e=this._docSkeletonManagerService.getSkeleton();if(!e)return;const{startOffset:n}=t,o=e.findNodePositionByCharIndex(n);o&&this.scrollToNode(o)}scrollToNode(t){var w;const{unitId:e,scene:n,mainComponent:o}=this._context,a=this._docSkeletonManagerService.getSkeleton();if(o==null||a==null)return;const r=o.getOffsetConfig(),{docsLeft:c,docsTop:l}=r,A=new ue(r,a),{contentBoxPointGroup:d}=A.getRangePointData(t,t),{left:u,top:g,height:h}=rt(d),m=u+c,f=g+l,p=n.getViewport(se.VIEW_MAIN),S=this._editorService.getEditor(e);if(p==null)return;const{left:v,top:E,right:y,bottom:O}=p.getBounding().viewBound;let C=0,b=0;const _=S?(w=S.params.backScrollOffset)!=null?w:0:100;f<E?C=f-E-_:f>O-h&&(C=f-O+h+_),m<v?b=m-v:m>y-us&&(b=m-y+us);const R=p.transViewportScroll2ScrollValue(b,C);p.scrollByBarDeltaValue(R)}_scrollToSelection(){const t=this._textSelectionManagerService.getActiveTextRange();if(t==null)return;const{collapsed:e,startNodePosition:n}=t;e&&this.scrollToNode(n)}},T.DocBackScrollRenderController=Yc([Ei(1,s.Inject(D.DocSelectionManagerService)),Ei(2,re),Ei(3,s.Inject(D.DocSkeletonManagerService))],T.DocBackScrollRenderController);var qc=Object.getOwnPropertyDescriptor,Jc=(i,t,e,n)=>{for(var o=n>1?void 0:n?qc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},it=(i,t)=>(e,n)=>t(e,n,i);T.DocRenderController=class extends s.RxDisposable{constructor(t,e,n,o,a,r,c){super(),this._context=t,this._commandService=e,this._docSelectionRenderService=n,this._docSkeletonManagerService=o,this._editorService=a,this._renderManagerService=r,this._univerInstanceService=c,this._addNewRender(),this._initRenderRefresh(),this._initCommandListener()}reRender(t){var r,c;const e=(r=this._renderManagerService.getRenderById(t))==null?void 0:r.with(D.DocSkeletonManagerService),n=e==null?void 0:e.getSkeleton();if(!n||!!n.getViewModel().getDataModel().getSnapshot().disabled)return;n.calculate();const a=this._editorService.getEditor(t);if(this._editorService.isEditor(t)&&!(a!=null&&a.params.scrollBar)){(c=this._context.mainComponent)==null||c.makeDirty();return}this._recalculateSizeBySkeleton(n)}_addNewRender(){const{scene:t,engine:e}=this._context,n=new M.Viewport(se.VIEW_MAIN,t,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});t.attachControl(),t.onMouseWheel$.subscribeEvent((a,r)=>{const c=this._univerInstanceService.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC);if((c==null?void 0:c.getUnitId())!==this._context.unitId)return;const l=a;if(l.ctrlKey){const A=Math.abs(l.deltaX);let d=A<40?.2:A<80?.4:.2;d*=l.deltaY>0?-1:1,t.scaleX<1&&(d/=2),t.scaleX+d>4?t.scale(4,4):t.scaleX+d<.1?t.scale(.1,.1):l.preventDefault()}else n.onMouseWheel(l,r)}),new M.ScrollBar(n),t.addLayer(new M.Layer(t,[],Dt),new M.Layer(t,[],Hi)),this._addComponent();const o=()=>t.render();this.disposeWithMe(this._context.activated$.subscribe(a=>{a?e.runRenderLoop(o):e.stopRenderLoop(o)})),this._docSelectionRenderService.__attachScrollEvent()}_addComponent(){const{scene:t,unit:e,components:n}=this._context,r={pageMarginLeft:20,pageMarginTop:20},c=new M.Documents(le.MAIN,void 0,r);c.zIndex=yn;const l=new M.DocBackground(le.BACKGROUND,void 0,r);l.zIndex=yn,this._context.mainComponent=c,n.set(le.MAIN,c),n.set(le.BACKGROUND,l),t.addObjects([c],Dt),t.addObjects([l],ki),this._editorService.getEditor(e.getUnitId())==null&&t.enableLayerCache(Dt)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{this._create(t)})}_create(t){var l;if(!t)return;const{mainComponent:e,components:n}=this._context,o=e,a=n.get(le.BACKGROUND);o.changeSkeleton(t),a.changeSkeleton(t);const{unitId:r}=this._context,c=this._editorService.getEditor(r);if(this._editorService.isEditor(r)&&!(c!=null&&c.params.scrollBar)){(l=this._context.mainComponent)==null||l.makeDirty();return}this._recalculateSizeBySkeleton(t)}_initCommandListener(){const t=[D.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:o}=n;this.reRender(o)}}))}_recalculateSizeBySkeleton(t){var m;const{mainComponent:e,scene:n,unitId:o,components:a}=this._context,r=e,c=a.get(le.BACKGROUND),l=(m=t.getSkeletonData())==null?void 0:m.pages;if(l==null)return;let A=0,d=0;const g=this._context.unit.getSnapshot().documentStyle.documentFlavor;for(let f=0,p=l.length;f<p;f++){const S=l[f];let{pageWidth:v,pageHeight:E}=S;if(g===s.DocumentFlavor.MODERN){const y=Zc(S);v=y.pageWidth,E=y.pageHeight}r.pageLayoutType===M.PageLayoutType.VERTICAL?(d+=E,d+=r.pageMarginTop,f===p-1&&(d+=r.pageMarginTop),A=Math.max(A,v)):r.pageLayoutType===M.PageLayoutType.HORIZONTAL&&(A+=v,f!==p-1&&(A+=r.pageMarginLeft),d=Math.max(d,E))}r.resize(A,d),c.resize(A,d);const h=this._editorService.getEditor(o);(!this._editorService.isEditor(o)||h!=null&&h.params.scrollBar)&&n.resize(A,d)}},T.DocRenderController=Jc([it(1,s.ICommandService),it(2,s.Inject(T.DocSelectionRenderService)),it(3,s.Inject(D.DocSkeletonManagerService)),it(4,re),it(5,M.IRenderManagerService),it(6,s.IUniverInstanceService)],T.DocRenderController);function Zc(i){let{pageWidth:t,pageHeight:e}=i;const{marginLeft:n,marginRight:o,marginTop:a,marginBottom:r,skeDrawings:c,skeTables:l}=i;t===Number.POSITIVE_INFINITY&&(t=i.width+n+o),e===Number.POSITIVE_INFINITY&&(e=i.height+a+r);for(const A of c.values())t=Math.max(t,A.aLeft+A.width+n+o),e=Math.max(e,A.aTop+A.height+a+r);for(const A of l.values())t=Math.max(t,A.left+A.width+n+o),e=Math.max(e,A.top+A.height+a+r);return{pageWidth:t,pageHeight:e}}const Ci={id:"doc.command.select-all",type:s.CommandType.COMMAND,handler:async i=>{var h;const t=i.get(s.IUniverInstanceService),e=i.get(D.DocSelectionManagerService),n=t.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC),o=e.getDocRanges(),a=(h=o.find(m=>m.isActive))!=null?h:o[0];if(n==null||a==null)return!1;const{segmentId:r}=a,c=n.getUnitId(),l=n.getSelfOrHeaderFooterModel(r).getSnapshot().body;if(l==null)return!1;const{tables:A=[],dataStream:d}=l;if(d===`\r
48
+ `,{"univer-bg-blend-color-dodge/90":n===C.value}),onClick:()=>o(C.value),children:C.icon})},C.value))}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:i.t("doc.paragraphSetting.indentation")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.left"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:a,onChange:C=>r(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.right"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:c,onChange:C=>l(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.firstLine"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:A,onChange:C=>d(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.hanging"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:u,onChange:C=>g(C!=null?C:0)})]})]}),Q.jsx("div",{className:"univer-t-4 univer-text-[13px] univer-font-medium",children:i.t("doc.paragraphSetting.spacing")}),Q.jsxs("div",{children:[Q.jsxs("div",{className:"univer-flex univer-justify-betweenuniver-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.before"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:h,onChange:C=>m(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between univer-item-center",children:[Q.jsxs("div",{className:"univer-mt-3 univer-text-xs",children:[i.t("doc.paragraphSetting.after"),"(px)"]}),Q.jsx(ke,{className:"univer-mt-4",value:f,onChange:C=>p(C!=null?C:0)})]}),Q.jsxs("div",{className:"univer-flex univer-justify-between item-center",children:[Q.jsx("div",{className:"univer-mt-3 univer-text-xs",children:i.t("doc.paragraphSetting.lineSpace")}),Q.jsxs("div",{className:"univer-mt-4 univer-flex univer-flex-col univer-gap-1.5",style:{width:162},children:[Q.jsx(ne.Select,{value:`${E}`,options:[{label:i.t("doc.paragraphSetting.multiSpace"),value:`${s.SpacingRule.AUTO}`},{label:i.t("doc.paragraphSetting.fixedValue"),value:`${s.SpacingRule.AT_LEAST}`}],onChange:C=>y(Number(C))}),Q.jsx(ke,{...O,value:S,onChange:C=>v(C!=null?C:0)})]})]})]})]})}const $r=(i,t)=>t.length===i.length&&i.some(e=>t.some(n=>n.startOffset===e.startOffset&&n.endOffset===e.endOffset));function ec(){const i=I.useDependency(s.ICommandService),t=I.useDependency(s.LocaleService),e=I.useObservable(t.currentLocale$),[n,o]=k.useState(""),a=k.useMemo(()=>s.debounce(()=>o(s.generateRandomId(4)),300),[]),r=k.useRef([]);return k.useEffect(()=>{const c=i.onCommandExecuted(l=>{if(D.SetTextSelectionsOperation.id===l.id){const A=l.params.ranges;$r(A,r.current)||o(s.generateRandomId(4)),r.current=A}D.RichTextEditingMutation.id===l.id&&l.params.trigger!==ge.id&&a()});return()=>c.dispose()},[a]),k.useEffect(()=>{o(s.generateRandomId(4))},[e]),k.useEffect(()=>()=>a.cancel(),[a]),Q.jsx(Zr,{},n)}var tc=Object.getOwnPropertyDescriptor,nc=(i,t,e,n)=>{for(var o=n>1?void 0:n?tc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},Si=(i,t)=>(e,n)=>t(e,n,i);const as="doc_ui_paragraph-setting-panel";let tt=class extends s.Disposable{constructor(t,e,n){super();x(this,"_id");this._commandService=t,this._componentManager=e,this._sidebarService=n,this._init()}_init(){this.disposeWithMe(this._componentManager.register(as,ec))}openPanel(){const t={header:{title:"doc.slider.paragraphSetting"},id:this._id,children:{label:as},width:300};this._sidebarService.open(t)}closePanel(){this._sidebarService.close(this._id)}};tt=nc([Si(0,s.ICommandService),Si(1,s.Inject(I.ComponentManager)),Si(2,s.Inject(I.ISidebarService))],tt);const Ii={id:"sidebar.operation.doc-paragraph-setting-panel",type:s.CommandType.OPERATION,handler:i=>(i.get(tt).openPanel(),!0)},vi=i=>{const t=i.get(D.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(()=>{t.getDocRanges().some(r=>r.collapsed===!1||r.rangeType===s.DOC_RANGE_TYPE.RECT)?e.next(!1):e.next(!0)});return()=>n.unsubscribe()})};function ic(i){if(i.length<2)return!0;const t=i.map(e=>e.tableId);return t.every(e=>e===t[0])}function rs(i,t,e){var a;const n=t.getRectRanges(),o=t.getActiveTextRange();if(n&&n.length&&ic(n)&&o==null){i.next(!1);return}if(o&&(n==null||n.length===0)){const{segmentId:r,startOffset:c,endOffset:l}=o,A=e.getCurrentUniverDocInstance(),d=(a=A==null?void 0:A.getSelfOrHeaderFooterModel(r).getBody())==null?void 0:a.tables;if(d&&d.length&&d.some(u=>{const{startIndex:g,endIndex:h}=u;return c>g&&c<h||l>g&&l<h})){i.next(!1);return}}i.next(!0)}const ye=i=>{const t=i.get(D.DocSelectionManagerService),e=i.get(s.IUniverInstanceService);return new U.Observable(n=>{const o=t.textSelection$.subscribe(()=>{rs(n,t,e)});return rs(n,t,e),()=>o.unsubscribe()})},oc=i=>({id:Ct.name,commandId:Ct.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.copy",disabled$:vi(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),sc=i=>({id:Ii.id,type:I.MenuItemType.BUTTON,icon:"MenuSingle24",title:"doc.menu.paragraphSetting",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),ac=i=>({id:qt.id,type:I.MenuItemType.BUTTON,icon:"Copy",title:"rightClick.cut",disabled$:vi(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),rc=i=>({id:Jt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.paste",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),cc=i=>({id:vt.id,type:I.MenuItemType.BUTTON,icon:"PasteSpecial",title:"rightClick.delete",disabled$:vi(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}),cs="doc.menu.table-insert";function lc(i){return{id:cs,type:I.MenuItemType.SUBITEMS,title:"table.insert",icon:"Insert",hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),ye(i),(t,e)=>t||e)}}function Ac(i){return{id:sn.id,type:I.MenuItemType.BUTTON,title:"table.insertRowAbove",icon:"InsertRowAbove",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function dc(i){return{id:an.id,type:I.MenuItemType.BUTTON,title:"table.insertRowBelow",icon:"InsertRowBelow",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function uc(i){return{id:rn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnLeft",icon:"LeftInsertColumn",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function hc(i){return{id:cn.id,type:I.MenuItemType.BUTTON,title:"table.insertColumnRight",icon:"RightInsertColumn",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}const ls="doc.menu.table-delete";function gc(i){return{id:ls,type:I.MenuItemType.SUBITEMS,title:"table.delete",icon:"Reduce",hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),ye(i),(t,e)=>t||e)}}function mc(i){return{id:nn.id,type:I.MenuItemType.BUTTON,title:"table.deleteRows",icon:"DeleteRow",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function fc(i){return{id:on.id,type:I.MenuItemType.BUTTON,title:"table.deleteColumns",icon:"DeleteColumn",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function pc(i){return{id:et.id,type:I.MenuItemType.BUTTON,title:"table.deleteTable",icon:"GridSingle",disabled$:ye(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Sc(i){const t=i.get(s.IUniverInstanceService),e=i.get(M.IRenderManagerService);return new U.Observable(n=>{const o=t.focused$.subscribe(a=>{if(a==null||t.getUnitType(a)!==s.UniverInstanceType.UNIVER_DOC)return n.next(!0);const c=e.getRenderById(a);if(c==null)return n.next(!0);c.with(D.DocSkeletonManagerService).getViewModel().editAreaChange$.subscribe(A=>{n.next(A===M.DocumentEditArea.HEADER||A===M.DocumentEditArea.FOOTER)})});return()=>o.unsubscribe()})}function Ic(i){const t=i.get(s.IUniverInstanceService),e=i.get(s.ICommandService);return new U.Observable(n=>{const o=e.onCommandExecuted(l=>{if(l.id===D.RichTextEditingMutation.id){const{unitId:A}=l.params,d=t.getUnit(A);if(d==null){n.next(!0);return}const{documentStyle:u}=d.getSnapshot();n.next((u==null?void 0:u.documentFlavor)!==s.DocumentFlavor.TRADITIONAL)}}),a=t.focused$.subscribe(l=>{if(l==null)return n.next(!0);const A=t.getUniverDocInstance(l),d=A==null?void 0:A.getSnapshot().documentStyle.documentFlavor;n.next(d!==s.DocumentFlavor.TRADITIONAL)}),r=t.getCurrentUniverDocInstance();if(r==null)return n.next(!0);const c=r==null?void 0:r.getSnapshot().documentStyle.documentFlavor;return n.next(c!==s.DocumentFlavor.TRADITIONAL),()=>{o.dispose(),a.unsubscribe()}})}function vc(i){const t=i.get(D.DocSelectionManagerService),e=i.get(s.IUniverInstanceService);return new U.Observable(n=>{const o=t.textSelection$.subscribe(a=>{if(a==null){n.next(!0);return}const{textRanges:r}=a;if(r.length!==1){n.next(!0);return}const c=r[0],{collapsed:l,startNodePosition:A,startOffset:d}=c;if(!l||d==null){n.next(!0);return}const u=e.getCurrentUniverDocInstance();if(u==null){n.next(!0);return}const g=ae(i,u.getUnitId());if(g==null){n.next(!0);return}if(g.getViewModel().getCustomRangeRaw(d)){n.next(!0);return}if(A!=null){const{path:f}=A;if(f.indexOf("cells")!==-1){n.next(!0);return}}n.next(!1)});return()=>o.unsubscribe()})}function ee(i){const t=i.get(D.DocSelectionManagerService);return new U.Observable(e=>{const n=t.textSelection$.subscribe(o=>{if(o==null){e.next(!0);return}const{textRanges:a,rectRanges:r}=o;if(a.length===0&&r.length===0){e.next(!0);return}e.next(!1)});return()=>n.unsubscribe()})}function Ec(i){const t=i.get(s.ICommandService);return{id:Re.id,type:I.MenuItemType.BUTTON,icon:"BoldSingle",title:"Set bold",tooltip:"toolbar.bold",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.bl;e.next(r===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Cc(i){const t=i.get(s.ICommandService);return{id:Me.id,type:I.MenuItemType.BUTTON,icon:"ItalicSingle",title:"Set italic",tooltip:"toolbar.italic",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.it;e.next(r===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Tc(i){const t=i.get(s.ICommandService);return{id:De.id,type:I.MenuItemType.BUTTON,icon:"UnderlineSingle",title:"Set underline",tooltip:"toolbar.underline",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.ul;e.next((r==null?void 0:r.s)===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function yc(i){const t=i.get(s.ICommandService);return{id:Be.id,type:I.MenuItemType.BUTTON,icon:"StrikethroughSingle",title:"Set strike through",tooltip:"toolbar.strikethrough",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.st;e.next((r==null?void 0:r.s)===s.BooleanNumber.TRUE)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function bc(i){const t=i.get(s.ICommandService);return{id:Ee.id,type:I.MenuItemType.BUTTON,icon:"SubscriptSingle",tooltip:"toolbar.subscript",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.va;e.next(r===s.BaselineOffset.SUBSCRIPT)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Oc(i){const t=i.get(s.ICommandService);return{id:xe.id,type:I.MenuItemType.BUTTON,icon:"SuperscriptSingle",tooltip:"toolbar.superscript",activated$:new U.Observable(e=>{const n=()=>{var c;const a=Ue(i);if(a==null){e.next(!1);return}const r=(c=a.ts)==null?void 0:c.va;e.next(r===s.BaselineOffset.SUPERSCRIPT)},o=t.onCommandExecuted(a=>{const r=a.id;(r===D.SetTextSelectionsOperation.id||r===Te.id)&&n()});return n(),o.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Rc(i){const t=i.get(s.ICommandService);return{id:_e.id,tooltip:"toolbar.font",type:I.MenuItemType.SELECTOR,label:po,selections:I.FONT_FAMILY_LIST.map(e=>({label:{name:So},value:e.value})),value$:new U.Observable(e=>{const n=s.DEFAULT_STYLES.ff,o=()=>{var l;const r=Ue(i);if(r==null){e.next(n);return}const c=(l=r.ts)==null?void 0:l.ff;e.next(c!=null?c:n)},a=t.onCommandExecuted(r=>{const c=r.id;(c===D.SetTextSelectionsOperation.id||c===_e.id)&&o()});return o(),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Mc(i){const t=i.get(s.ICommandService);return{id:Ce.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:Io,props:{min:1,max:400}},selections:I.FONT_SIZE_LIST,value$:new U.Observable(e=>{const n=s.DEFAULT_STYLES.fs,o=()=>{var l;const r=Ue(i);if(r==null){e.next(n);return}const c=(l=r.ts)==null?void 0:l.fs;e.next(c!=null?c:n)},a=t.onCommandExecuted(r=>{const c=r.id;(c===D.SetTextSelectionsOperation.id||c===Ce.id)&&o()});return o(),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Dc(i){const t=i.get(s.ICommandService);return{id:en.id,type:I.MenuItemType.SELECTOR,tooltip:"toolbar.heading.tooltip",label:{name:I.COMMON_LABEL_COMPONENT,props:{selections:I.HEADING_LIST}},selections:I.HEADING_LIST.map(e=>({label:{name:I.HEADING_ITEM_COMPONENT,props:{value:e.value,text:e.label}},value:e.value})),value$:new U.Observable(e=>{const n=s.NamedStyleType.NORMAL_TEXT,o=()=>{var l,A;const r=nt(i);if(r==null){e.next(n);return}const c=(A=(l=r.paragraphStyle)==null?void 0:l.namedStyleType)!=null?A:n;e.next(c)},a=t.onCommandExecuted(r=>{const c=r.id;(c===D.SetTextSelectionsOperation.id||c===Ce.id)&&o()});return o(),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Bc(i){const t=i.get(s.ICommandService),e=i.get(s.ThemeService);return{id:Ne.id,icon:"FontColor",tooltip:"toolbar.textColor.main",type:I.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:Xn,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const o=e.getCurrentTheme().textColor,a=t.onCommandExecuted(r=>{if(r.id===Ne.id){const c=r.params.value;n.next(c!=null?c:o)}});return n.next(o),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function xc(i){return{id:Kn.id,type:I.MenuItemType.BUTTON,icon:"HeaderFooterSingle",tooltip:"toolbar.headerFooter",hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY),Ic(i),(t,e)=>t||e)}}const _c="GridSingle",As="doc.menu.table";function Nc(i){return{id:As,type:I.MenuItemType.SUBITEMS,icon:_c,tooltip:"toolbar.table.main",disabled$:vc(i),hidden$:U.combineLatest(I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY),Sc(i),(t,e)=>t||e)}}function Pc(i){return{id:ln.id,title:"toolbar.table.insert",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Uc(i){const t=i.get(s.ICommandService);return{id:gt.id,type:I.MenuItemType.BUTTON,icon:"LeftJustifyingSingle",tooltip:"toolbar.alignLeft",disabled$:ee(i),activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.LEFT)}});return e.next(!1),n.dispose}),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function wc(i){const t=i.get(s.ICommandService);return{id:mt.id,type:I.MenuItemType.BUTTON,icon:"HorizontallySingle",tooltip:"toolbar.alignCenter",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.CENTER)}});return e.next(!1),n.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Qc(i){const t=i.get(s.ICommandService);return{id:ft.id,type:I.MenuItemType.BUTTON,icon:"RightJustifyingSingle",tooltip:"toolbar.alignRight",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.RIGHT)}});return e.next(!1),n.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Lc(i){const t=i.get(s.ICommandService);return{id:pt.id,type:I.MenuItemType.BUTTON,icon:"AlignTextBothSingle",tooltip:"toolbar.alignJustify",activated$:new U.Observable(e=>{const n=t.onCommandExecuted(o=>{var r;const a=o.id;if(a===D.SetTextSelectionsOperation.id||a===he.id){const c=nt(i);if(c==null)return;const l=(r=c.paragraphStyle)==null?void 0:r.horizontalAlign;e.next(l===s.HorizontalAlign.JUSTIFIED)}});return e.next(!1),n.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Fc(i){return{id:$t.id,type:I.MenuItemType.BUTTON,icon:"ReduceSingle",tooltip:"toolbar.horizontalLine",disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const Tt=i=>new U.Observable(t=>{const e=i.get(s.IUniverInstanceService),n=i.get(D.DocSelectionManagerService);let o;const a=e.focused$.subscribe(r=>{if(o==null||o.unsubscribe(),r==null)return;const c=e.getUniverDocInstance(r);c!=null&&(o=n.textSelection$.subscribe(()=>{var d,u,g;const l=n.getDocRanges(),A=(d=l.find(h=>h.isActive))!=null?d:l[0];if(A){const h=c.getSelfOrHeaderFooterModel(A==null?void 0:A.segmentId),m=s.BuildTextUtils.range.getParagraphsInRange(A,(g=(u=h.getBody())==null?void 0:u.paragraphs)!=null?g:[]);let f;if(m.every(p=>{var S;return f||(f=(S=p.bullet)==null?void 0:S.listType),p.bullet&&p.bullet.listType===f})){t.next(f);return}}t.next(void 0)}))});return()=>{a.unsubscribe(),o==null||o.unsubscribe()}});function kc(i){return{id:ht.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Eo,hoverable:!1,selectable:!1},value$:Tt(i)}],icon:"OrderSingle",tooltip:"toolbar.order",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),disabled$:ee(i),activated$:Tt(i).pipe(U.map(t=>t&&t.indexOf("ORDER_LIST")===0))}}function Hc(i){return{id:ut.id,type:I.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:Co,hoverable:!1,selectable:!1},value$:Tt(i)}],icon:"UnorderSingle",tooltip:"toolbar.unorder",disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),activated$:Tt(i).pipe(U.map(t=>t&&t.indexOf("BULLET_LIST")===0))}}function Vc(i){return{id:Ft.id,type:I.MenuItemType.BUTTON,icon:"TodoList",tooltip:"toolbar.checklist",disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC),activated$:Tt(i).pipe(U.map(t=>t&&t.indexOf("CHECK_LIST")===0))}}function Wc(i){const t=i.get(s.ICommandService),e=i.get(s.IUniverInstanceService);return{id:tn.id,type:I.MenuItemType.BUTTON,icon:"KeyboardSingle",tooltip:"toolbar.documentFlavor",hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC,void 0,s.DOCS_ZEN_EDITOR_UNIT_ID_KEY),activated$:new U.Observable(n=>{var r;const o=t.onCommandExecuted(c=>{var l;if(c.id===D.RichTextEditingMutation.id){const A=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC);n.next(((l=A==null?void 0:A.getSnapshot())==null?void 0:l.documentStyle.documentFlavor)===s.DocumentFlavor.MODERN)}}),a=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC);return n.next(((r=a==null?void 0:a.getSnapshot())==null?void 0:r.documentStyle.documentFlavor)===s.DocumentFlavor.MODERN),()=>o.dispose()})}}function zc(i){return{id:Ge.id,type:I.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColor"}}function Kc(i){const t=i.get(s.ICommandService),e=i.get(s.ThemeService);return{id:Pe.id,tooltip:"toolbar.fillColor.main",type:I.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucket",selections:[{label:{name:Xn,hoverable:!1,selectable:!1}}],value$:new U.Observable(n=>{const o=e.getCurrentTheme().primaryColor,a=t.onCommandExecuted(r=>{if(r.id===Pe.id){const c=r.params.value;n.next(c!=null?c:o)}});return n.next(o),a.dispose}),disabled$:ee(i),hidden$:I.getMenuHiddenObservable(i,s.UniverInstanceType.UNIVER_DOC)}}function Ue(i){var m,f,p,S;const t=i.get(s.IUniverInstanceService),e=i.get(D.DocSelectionManagerService),n=i.get(ve),o=t.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC),a=e.getDocRanges(),r=(m=a.find(v=>v.isActive))!=null?m:a[0],c=n.getDefaultStyle(),l=(f=n.getStyleCache())!=null?f:{},A=nt(i),d=(p=A==null?void 0:A.paragraphStyle)!=null&&p.namedStyleType?s.NAMED_STYLE_MAP[(S=A==null?void 0:A.paragraphStyle)==null?void 0:S.namedStyleType]:null;if(o==null||r==null)return{ts:{...c,...d,...l}};const{segmentId:u}=r,g=o.getSelfOrHeaderFooterModel(u).getBody();if(g==null)return{ts:{...c,...d,...l}};const h=Uo(g,r,c);return{ts:{...d,...h,...l}}}function nt(i){var d,u;const t=i.get(s.IUniverInstanceService),e=i.get(D.DocSelectionManagerService),n=t.getCurrentUniverDocInstance(),o=e.getDocRanges(),a=(d=o.find(g=>g.isActive))!=null?d:o[0];if(n==null||a==null)return;const{startOffset:r,segmentId:c}=a,l=(u=n.getSelfOrHeaderFooterModel(c).getBody())==null?void 0:u.paragraphs;if(l==null)return;let A=-1;for(const g of l){const{startIndex:h}=g;if(r>A&&r<=h)return g;A=h}return null}const ds={[I.RibbonStartGroup.FORMAT]:{[Re.id]:{order:0,menuItemFactory:Ec},[Me.id]:{order:1,menuItemFactory:Cc},[De.id]:{order:2,menuItemFactory:Tc},[Be.id]:{order:3,menuItemFactory:yc},[Ee.id]:{order:4,menuItemFactory:bc},[xe.id]:{order:5,menuItemFactory:Oc},[en.id]:{order:5.5,menuItemFactory:Dc},[Ce.id]:{order:6,menuItemFactory:Mc},[_e.id]:{order:7,menuItemFactory:Rc},[Ne.id]:{order:8,menuItemFactory:Bc},[Pe.id]:{order:9,menuItemFactory:Kc,[Ge.id]:{order:0,menuItemFactory:zc}}},[I.RibbonStartGroup.LAYOUT]:{[As]:{order:1,menuItemFactory:Nc,[ln.id]:{order:0,menuItemFactory:Pc}},[gt.id]:{order:2,menuItemFactory:Uc},[mt.id]:{order:3,menuItemFactory:wc},[ft.id]:{order:4,menuItemFactory:Qc},[pt.id]:{order:5,menuItemFactory:Lc},[$t.id]:{order:6,menuItemFactory:Fc},[ht.id]:{order:7,menuItemFactory:kc},[ut.id]:{order:8,menuItemFactory:Hc},[Ft.id]:{order:9,menuItemFactory:Vc},[Kn.id]:{order:10,menuItemFactory:xc},[tn.id]:{order:11,menuItemFactory:Wc}},[I.ContextMenuPosition.MAIN_AREA]:{[I.ContextMenuGroup.FORMAT]:{[Ct.name]:{order:0,menuItemFactory:oc},[qt.id]:{order:1,menuItemFactory:ac},[Jt.id]:{order:2,menuItemFactory:rc},[vt.id]:{order:3,menuItemFactory:cc}},[I.ContextMenuGroup.LAYOUT]:{[Ii.id]:{order:0,menuItemFactory:sc},[cs]:{order:1,menuItemFactory:lc,[sn.id]:{order:1,menuItemFactory:Ac},[an.id]:{order:2,menuItemFactory:dc},[rn.id]:{order:3,menuItemFactory:uc},[cn.id]:{order:4,menuItemFactory:hc}},[ls]:{order:2,menuItemFactory:gc,[nn.id]:{order:1,menuItemFactory:mc},[on.id]:{order:2,menuItemFactory:fc},[et.id]:{order:3,menuItemFactory:pc}}}}};var jc=Object.getOwnPropertyDescriptor,Xc=(i,t,e,n)=>{for(var o=n>1?void 0:n?jc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},be=(i,t)=>(e,n)=>t(e,n,i);T.DocUIController=class extends s.Disposable{constructor(t,e,n,o,a,r,c,l,A){super(),this._injector=t,this._componentManager=e,this._commandService=n,this._layoutService=o,this._menuManagerService=a,this._uiPartsService=r,this._univerInstanceService=c,this._shortcutService=l,this._configService=A,this._init()}_initCustomComponents(){const t=this._componentManager;this.disposeWithMe(t.register(Xn,ne.ColorPicker)),this.disposeWithMe(t.register(po,I.FontFamily)),this.disposeWithMe(t.register(So,I.FontFamilyItem)),this.disposeWithMe(t.register(Io,I.FontSize)),this.disposeWithMe(t.register(Co,Ra)),this.disposeWithMe(t.register(Eo,ba)),this.disposeWithMe(t.register("TodoList",co))}_initUiParts(){var e,n,o,a,r;const t=this._configService.getConfig(Zn);(n=(e=t==null?void 0:t.layout)==null?void 0:e.docContainerConfig)!=null&&n.footer&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.FOOTER,()=>I.connectInjector(tr,this._injector))),((r=(a=(o=t==null?void 0:t.layout)==null?void 0:o.docContainerConfig)==null?void 0:a.sideMenu)==null||r)&&this.disposeWithMe(this._uiPartsService.registerComponent(I.BuiltInUIPart.CONTENT,()=>I.connectInjector(ur,this._injector)))}_initMenus(){this._menuManagerService.mergeMenu(ds)}_initShortCut(){[La,Fa,ka,Ha,Va,Wa,ja,Xa,Ka,za,Ga,Ya,Da].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}_init(){this._initCustomComponents(),this._initMenus(),this._initFocusHandler(),this._initCommands(),this._initUiParts(),this._initShortCut()}_initCommands(){[fo,Kn,Wn].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(s.UniverInstanceType.UNIVER_DOC,t=>{this._injector.get(M.IRenderManagerService).getRenderById(t).with(T.DocSelectionRenderService).focus()}))}},T.DocUIController=Xc([be(0,s.Inject(s.Injector)),be(1,s.Inject(I.ComponentManager)),be(2,s.ICommandService),be(3,I.ILayoutService),be(4,I.IMenuManagerService),be(5,I.IUIPartsService),be(6,s.IUniverInstanceService),be(7,I.IShortcutService),be(8,s.IConfigService)],T.DocUIController);var Gc=Object.getOwnPropertyDescriptor,Yc=(i,t,e,n)=>{for(var o=n>1?void 0:n?Gc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},Ei=(i,t)=>(e,n)=>t(e,n,i);const us=1.5;T.DocBackScrollRenderController=class extends s.RxDisposable{constructor(t,e,n,o){super(),this._context=t,this._textSelectionManagerService=e,this._editorService=n,this._docSkeletonManagerService=o,this._init()}_init(){this._textSelectionManagerService.textSelection$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{if(t==null)return;const{isEditing:e,unitId:n}=t;n!==this._context.unitId||!e||this._context.unitId!==s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._scrollToSelection()})}scrollToRange(t){const e=this._docSkeletonManagerService.getSkeleton();if(!e)return;const{startOffset:n}=t,o=e.findNodePositionByCharIndex(n);o&&this.scrollToNode(o)}scrollToNode(t){var w;const{unitId:e,scene:n,mainComponent:o}=this._context,a=this._docSkeletonManagerService.getSkeleton();if(o==null||a==null)return;const r=o.getOffsetConfig(),{docsLeft:c,docsTop:l}=r,A=new ue(r,a),{contentBoxPointGroup:d}=A.getRangePointData(t,t),{left:u,top:g,height:h}=rt(d),m=u+c,f=g+l,p=n.getViewport(se.VIEW_MAIN),S=this._editorService.getEditor(e);if(p==null)return;const{left:v,top:E,right:y,bottom:O}=p.getBounding().viewBound;let C=0,b=0;const _=S?(w=S.params.backScrollOffset)!=null?w:0:100;f<E?C=f-E-_:f>O-h&&(C=f-O+h+_),m<v?b=m-v:m>y-us&&(b=m-y+us);const R=p.transViewportScroll2ScrollValue(b,C);p.scrollByBarDeltaValue(R)}_scrollToSelection(){const t=this._textSelectionManagerService.getActiveTextRange();if(t==null)return;const{collapsed:e,startNodePosition:n}=t;e&&this.scrollToNode(n)}},T.DocBackScrollRenderController=Yc([Ei(1,s.Inject(D.DocSelectionManagerService)),Ei(2,re),Ei(3,s.Inject(D.DocSkeletonManagerService))],T.DocBackScrollRenderController);var qc=Object.getOwnPropertyDescriptor,Jc=(i,t,e,n)=>{for(var o=n>1?void 0:n?qc(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},it=(i,t)=>(e,n)=>t(e,n,i);T.DocRenderController=class extends s.RxDisposable{constructor(t,e,n,o,a,r,c){super(),this._context=t,this._commandService=e,this._docSelectionRenderService=n,this._docSkeletonManagerService=o,this._editorService=a,this._renderManagerService=r,this._univerInstanceService=c,this._addNewRender(),this._initRenderRefresh(),this._initCommandListener()}reRender(t){var r,c;const e=(r=this._renderManagerService.getRenderById(t))==null?void 0:r.with(D.DocSkeletonManagerService),n=e==null?void 0:e.getSkeleton();if(!n||!!n.getViewModel().getDataModel().getSnapshot().disabled)return;n.calculate();const a=this._editorService.getEditor(t);if(this._editorService.isEditor(t)&&!(a!=null&&a.params.scrollBar)){(c=this._context.mainComponent)==null||c.makeDirty();return}this._recalculateSizeBySkeleton(n)}_addNewRender(){const{scene:t,engine:e}=this._context,n=new M.Viewport(se.VIEW_MAIN,t,{left:0,top:0,bottom:0,right:0,isWheelPreventDefaultX:!0});t.attachControl(),t.onMouseWheel$.subscribeEvent((a,r)=>{const c=this._univerInstanceService.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC);if((c==null?void 0:c.getUnitId())!==this._context.unitId)return;const l=a;if(l.ctrlKey){const A=Math.abs(l.deltaX);let d=A<40?.2:A<80?.4:.2;d*=l.deltaY>0?-1:1,t.scaleX<1&&(d/=2),t.scaleX+d>4?t.scale(4,4):t.scaleX+d<.1?t.scale(.1,.1):l.preventDefault()}else n.onMouseWheel(l,r)}),new M.ScrollBar(n),t.addLayer(new M.Layer(t,[],Dt),new M.Layer(t,[],Hi)),this._addComponent();const o=()=>t.render();this.disposeWithMe(this._context.activated$.subscribe(a=>{a?e.runRenderLoop(o):e.stopRenderLoop(o)})),this._docSelectionRenderService.__attachScrollEvent()}_addComponent(){const{scene:t,unit:e,components:n}=this._context,r={pageMarginLeft:20,pageMarginTop:20},c=new M.Documents(le.MAIN,void 0,r);c.zIndex=yn;const l=new M.DocBackground(le.BACKGROUND,void 0,r);l.zIndex=yn,this._context.mainComponent=c,n.set(le.MAIN,c),n.set(le.BACKGROUND,l),t.addObjects([c],Dt),t.addObjects([l],ki),this._editorService.getEditor(e.getUnitId())==null&&t.enableLayerCache(Dt)}_initRenderRefresh(){this._docSkeletonManagerService.currentSkeletonBefore$.pipe(U.takeUntil(this.dispose$)).subscribe(t=>{this._create(t)})}_create(t){var l;if(!t)return;const{mainComponent:e,components:n}=this._context,o=e,a=n.get(le.BACKGROUND);o.changeSkeleton(t),a.changeSkeleton(t);const{unitId:r}=this._context,c=this._editorService.getEditor(r);if(this._editorService.isEditor(r)&&!(c!=null&&c.params.scrollBar)){(l=this._context.mainComponent)==null||l.makeDirty();return}this._recalculateSizeBySkeleton(t)}_initCommandListener(){const t=[D.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(t.includes(e.id)){const n=e.params,{unitId:o}=n;this.reRender(o)}}))}_recalculateSizeBySkeleton(t){var m;const{mainComponent:e,scene:n,unitId:o,components:a}=this._context,r=e,c=a.get(le.BACKGROUND),l=(m=t.getSkeletonData())==null?void 0:m.pages;if(l==null)return;let A=0,d=0;const g=this._context.unit.getSnapshot().documentStyle.documentFlavor;for(let f=0,p=l.length;f<p;f++){const S=l[f];let{pageWidth:v,pageHeight:E}=S;if(g===s.DocumentFlavor.MODERN){const y=Zc(S);v=y.pageWidth,E=y.pageHeight}r.pageLayoutType===M.PageLayoutType.VERTICAL?(d+=E,d+=r.pageMarginTop,f===p-1&&(d+=r.pageMarginTop),A=Math.max(A,v)):r.pageLayoutType===M.PageLayoutType.HORIZONTAL&&(A+=v,f!==p-1&&(A+=r.pageMarginLeft),d=Math.max(d,E))}r.resize(A,d),c.resize(A,d);const h=this._editorService.getEditor(o);(!this._editorService.isEditor(o)||h!=null&&h.params.scrollBar)&&n.resize(A,d)}},T.DocRenderController=Jc([it(1,s.ICommandService),it(2,s.Inject(T.DocSelectionRenderService)),it(3,s.Inject(D.DocSkeletonManagerService)),it(4,re),it(5,M.IRenderManagerService),it(6,s.IUniverInstanceService)],T.DocRenderController);function Zc(i){let{pageWidth:t,pageHeight:e}=i;const{marginLeft:n,marginRight:o,marginTop:a,marginBottom:r,skeDrawings:c,skeTables:l}=i;t===Number.POSITIVE_INFINITY&&(t=i.width+n+o),e===Number.POSITIVE_INFINITY&&(e=i.height+a+r);for(const A of c.values())t=Math.max(t,A.aLeft+A.width+n+o),e=Math.max(e,A.aTop+A.height+a+r);for(const A of l.values())t=Math.max(t,A.left+A.width+n+o),e=Math.max(e,A.top+A.height+a+r);return{pageWidth:t,pageHeight:e}}const Ci={id:"doc.command.select-all",type:s.CommandType.COMMAND,handler:async i=>{var h;const t=i.get(s.IUniverInstanceService),e=i.get(D.DocSelectionManagerService),n=t.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC),o=e.getDocRanges(),a=(h=o.find(m=>m.isActive))!=null?h:o[0];if(n==null||a==null)return!1;const{segmentId:r}=a,c=n.getUnitId(),l=n.getSelfOrHeaderFooterModel(r).getSnapshot().body;if(l==null)return!1;const{tables:A=[],dataStream:d}=l;if(d===`\r
49
49
  `)return!0;const u=[];let g=0;for(const m of A){const{startIndex:f,endIndex:p}=m;g!==f&&u.push({startOffset:g,endOffset:f-1,rangeType:s.DOC_RANGE_TYPE.TEXT}),u.push({startOffset:f+3,endOffset:p-5,rangeType:s.DOC_RANGE_TYPE.RECT}),g=p}return g!==l.dataStream.length-2&&u.push({startOffset:g,endOffset:l.dataStream.length-2,rangeType:s.DOC_RANGE_TYPE.TEXT}),e.replaceDocRanges(u,{unitId:c,subUnitId:c},!1),!0}};class yt extends s.RxDisposable{constructor(e){super();x(this,"_previousActiveRange",null);x(this,"_undoMutationParamsCache",[]);x(this,"_redoMutationParamsCache",[]);this._context=e}clearUndoRedoMutationParamsCache(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[]}getUndoRedoMutationParamsCache(){return{undoCache:this._undoMutationParamsCache,redoCache:this._redoMutationParamsCache}}setUndoRedoMutationParamsCache({undoCache:e=[],redoCache:n=[]}){this._undoMutationParamsCache=e,this._redoMutationParamsCache=n}getActiveRange(){return this._previousActiveRange}setActiveRange(e){this._previousActiveRange=e}pushUndoRedoMutationParams(e,n){this._undoMutationParamsCache.push(e),this._redoMutationParamsCache.push(n)}fetchComposedUndoRedoMutationParams(){if(this._undoMutationParamsCache.length===0||this._previousActiveRange==null||this._redoMutationParamsCache.length===0)return null;const{unitId:e}=this._undoMutationParamsCache[0],n={unitId:e,actions:this._undoMutationParamsCache.reverse().reduce((a,r)=>s.JSONX.compose(a,r.actions),null),textRanges:[]};return{redoMutationParams:{unitId:e,actions:this._redoMutationParamsCache.reduce((a,r)=>s.JSONX.compose(a,r.actions),null),textRanges:[]},undoMutationParams:n,previousActiveRange:this._previousActiveRange}}dispose(){this._undoMutationParamsCache=[],this._redoMutationParamsCache=[],this._previousActiveRange=null}}const Ti={id:"doc.command.ime-input",type:s.CommandType.COMMAND,handler:async(i,t)=>{var P,V,W;const{unitId:e,newText:n,oldTextLen:o,isCompositionEnd:a,isCompositionStart:r}=t,c=i.get(s.ICommandService),l=i.get(M.IRenderManagerService),A=i.get(s.IUniverInstanceService),d=i.get(ve),u=(P=l.getRenderById(e))==null?void 0:P.with(yt),g=A.getUnit(e,s.UniverInstanceType.UNIVER_DOC);if(g==null||u==null)return!1;const h=u.getActiveRange();if(h==null)return!1;const{style:m,segmentId:f}=h,p=g.getSelfOrHeaderFooterModel(f).getBody();if(p==null)return!1;Object.assign(h,h);const{startOffset:v,endOffset:E}=h,y=n.length,O=[{startOffset:v+y,endOffset:v+y,collapsed:!0,style:m}],C={id:D.RichTextEditingMutation.id,params:{unitId:e,actions:[],textRanges:O}},b=d.getDefaultStyle(),_=d.getStyleCache(),R=bn((V=p.customRanges)!=null?V:[],v+o,s.SHEET_EDITOR_UNITS.includes(e)),w=Bt(p,r?E:v+o,b,_,s.SHEET_EDITOR_UNITS.includes(e)),B=On((W=p.customDecorations)!=null?W:[],v+o),N=new s.TextX,F=s.JSONX.getInstance();if(!h.collapsed&&r){const z=s.BuildTextUtils.selection.delete([h],p,0,null,!1);N.push(...z),C.params.textRanges=[{startOffset:v+y,endOffset:v+y,collapsed:!0}]}else N.push({t:s.TextXActionType.RETAIN,len:v});o>0&&N.push({t:s.TextXActionType.DELETE,len:o}),N.push({t:s.TextXActionType.INSERT,body:{dataStream:n,textRuns:w?[{...w,st:0,ed:n.length}]:[],customRanges:R?[{...R,startIndex:0,endIndex:n.length-1}]:[],customDecorations:B.map(z=>({...z,startIndex:0,endIndex:n.length-1}))},len:n.length});const H=Z(g,f);C.params.actions=F.editOp(N.serialize(),H),C.params.noHistory=!a,C.params.isCompositionEnd=a;const L=c.syncExecuteCommand(C.id,C.params);return u.pushUndoRedoMutationParams(L,C.params),!!L}},hs={id:"doc.command.insert-custom-range",type:s.CommandType.COMMAND,handler:(i,t)=>{if(!t)return!1;const e=i.get(s.ICommandService),{unitId:n,rangeId:o=s.generateRandomId(),textRanges:a,properties:r,text:c,wholeEntity:l}=t,A={unitId:n,textRanges:a,body:{dataStream:c,customRanges:[{startIndex:0,endIndex:c.length-1,rangeId:o,rangeType:s.CustomRangeType.CUSTOM,properties:r,wholeEntity:l}]}};return e.syncExecuteCommand(Mn.id,A)}},bt={type:s.CommandType.COMMAND,id:"doc.command.set-zoom-ratio",handler:async(i,t)=>{var u,g,h;const e=i.get(s.ICommandService),n=i.get(s.IUndoRedoService),o=i.get(s.IUniverInstanceService);let a=(u=o.getCurrentUniverDocInstance())==null?void 0:u.getUnitId();if(!a)return!1;let r=1;if(t&&(a=(g=t.documentId)!=null?g:a,r=(h=t.zoomRatio)!=null?h:r),!o.getUniverDocInstance(a))return!1;const l={zoomRatio:r,unitId:a},A=qa(i,l);return e.syncExecuteCommand(de.id,l)?(n.pushUndoRedo({unitID:a,undoMutations:[{id:de.id,params:A}],redoMutations:[{id:de.id,params:l}]}),!0):!1}},yi={id:"doc.table.tab-in-table",type:s.CommandType.COMMAND,handler:async(i,t)=>{var m;const{shift:e}=t,n=i.get(D.DocSelectionManagerService),o=n.getDocRanges(),a=i.get(s.ICommandService),c=i.get(s.IUniverInstanceService).getCurrentUniverDocInstance();if(!c)return!1;const l=(m=o.find(f=>f.isActive))!=null?m:o[0],A=c.getUnitId(),d=ae(i,A),u=d==null?void 0:d.getSkeleton(),g=u==null?void 0:u.getViewModel().getSelfOrHeaderFooterViewModel(l==null?void 0:l.segmentId);if(g==null||l==null)return!1;let h=null;if(e?h=Wo(g,l,ti.PREV):h=Wo(g,l,ti.NEXT),h){const{startOffset:f,endOffset:p}=h,S=[{startOffset:f,endOffset:p}];return n.replaceDocRanges(S),!0}return e===!1?await a.executeCommand(mi.id,{position:Vt.BELLOW}):!0}};var $c=Object.getOwnPropertyDescriptor,el=(i,t,e,n)=>{for(var o=n>1?void 0:n?$c(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},bi=(i,t)=>(e,n)=>t(e,n,i);let Oi=class{constructor(i,t,e){x(this,"_docContainer");x(this,"getComponent",i=>{if(this._docContainer=i,!i.getContentRef().current)throw new Error("container is not ready")});x(this,"changeLocale",i=>{this._localeService.setLocale(i)});this._localeService=i,this._injector=t,this._configService=e}getUIConfig(){return{injector:this._injector,config:this._configService.getConfig(Zn),changeLocale:this.changeLocale,getComponent:this.getComponent}}getContentRef(){return this._docContainer.getContentRef()}UIDidMount(i){if(this._docContainer)return i(this._docContainer)}getDocContainer(){return this._docContainer}};Oi=el([bi(0,s.Inject(s.LocaleService)),bi(1,s.Inject(s.Injector)),bi(2,s.IConfigService)],Oi);var tl=Object.getOwnPropertyDescriptor,nl=(i,t,e,n)=>{for(var o=n>1?void 0:n?tl(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},il=(i,t)=>(e,n)=>t(e,n,i);let An=class extends s.RxDisposable{constructor(t){super();x(this,"_docContainerController");this._injector=t,this._docContainerController=this._injector.createInstance(Oi)}};An=nl([il(0,s.Inject(s.Injector))],An);var ol=Object.getOwnPropertyDescriptor,sl=(i,t,e,n)=>{for(var o=n>1?void 0:n?ol(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},gs=(i,t)=>(e,n)=>t(e,n,i);let dn=class extends s.Disposable{constructor(i,t){super(),this._docAutoFormatService=i,this._renderManagerService=t,this._initListTabAutoFormat(),this._initSpaceAutoFormat(),this._initDefaultEnterFormat(),this._initExitListAutoFormat()}_initListTabAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Le.id,match:i=>{var o;const{selection:t,paragraphs:e,unit:n}=i;if(e.length===1&&t.startOffset===e[0].paragraphStart&&e[0].bullet){const a=(o=n.getBody())==null?void 0:o.paragraphs,r=a==null?void 0:a.filter(c=>{var l;return((l=c.bullet)==null?void 0:l.listId)===e[0].bullet.listId});return(r==null?void 0:r.findIndex(c=>c.startIndex===e[0].startIndex))!==0}else if(e.length>1&&e.some(a=>a.bullet))return!0;return!1},getMutations(i){const t=i.commandParams;return[{id:Lt.id,params:{type:t!=null&&t.shift?dt.decrease:dt.increase}}]},priority:100})),this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Le.id,match:i=>{const{selection:t,unit:e}=i,{startNodePosition:n,endNodePosition:o}=t,a=this._renderManagerService.getRenderById(e.getUnitId()),r=a==null?void 0:a.with(D.DocSkeletonManagerService).getSkeleton();return r==null?!1:!!(n&&o&&Ji(r,n,o)||n&&!o&&n.path.indexOf("cells")>-1)},getMutations(i){const t=i.commandParams;return[{id:yi.id,params:{shift:!!(t!=null&&t.shift)}}]},priority:99}))}_initSpaceAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:lt.id,match:i=>{var a;const{selection:t,paragraphs:e,unit:n}=i;if(!t.collapsed||e.length!==1||!t.collapsed)return!1;const o=(a=n.getBody())==null?void 0:a.dataStream.slice(e[0].paragraphStart,t.startOffset-1);return!!(o&&(Object.keys(s.QuickListTypeMap).includes(o)||Object.keys(ui).includes(o)))},getMutations(i){var a;const{paragraphs:t,unit:e,selection:n}=i,o=(a=e.getBody())==null?void 0:a.dataStream.slice(t[0].paragraphStart,n.startOffset-1);if(o&&Object.keys(s.QuickListTypeMap).includes(o)){const r=s.QuickListTypeMap[o];return[{id:Jn.id,params:{listType:r,paragraph:t[0]}}]}if(o&&Object.keys(ui).includes(o)){const r=ui[o];return[{id:is.id,params:{value:r}}]}return[]}}))}_initExitListAutoFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Xe.id,match:i=>{const{paragraphs:t}=i;return!!(t.length===1&&t[0].bullet&&t[0].paragraphStart===t[0].paragraphEnd)},getMutations:i=>{const t=i.paragraphs[0].bullet;return t?t.nestingLevel>0?[{id:Lt.id,params:{type:dt.decrease}}]:[{id:Ye.id,params:{listType:i.paragraphs[0].bullet.listType}}]:[]}}))}_initDefaultEnterFormat(){this.disposeWithMe(this._docAutoFormatService.registerAutoFormat({id:Xe.id,match:()=>!0,getMutations(){return[{id:Zt.id}]},priority:-9999}))}};dn=sl([gs(0,s.Inject(T.DocAutoFormatService)),gs(1,M.IRenderManagerService)],dn);function al(i){return i.rows[0].cells[0].sections[0].columns[0].lines[0]}function rl(i){const t=i.rows[i.rows.length-1],e=t.cells[t.cells.length-1];return M.getLastLine(e)}function cl(i,t){const{ed:e}=i,{skeTables:n}=t;let o=null;for(const a of n.values())if(a.st===e+1){o=a;break}return o}function ms(i){const t=i==null?void 0:i.parent;let e=null,n=null;if(i==null||t==null)return{lineBeforeTable:e,lineAfterTable:n};const{st:o,ed:a}=i,r=t.type===M.DocumentSkeletonPageType.CELL?[t]:t.parent.pages;return M.lineIterator(r,c=>{c.st===a+1?n=c:c.ed===o-1&&(e=c)}),{lineBeforeTable:e,lineAfterTable:n}}function fs(i){return i.sections[0].columns[0].lines.length===0}function ps(i){var r,c;const t=i.parent,e=t==null?void 0:t.parent,n=e==null?void 0:e.tableId;if(t==null||e==null)return;const o=t.cells.indexOf(i);let a=e.rows[e.rows.indexOf(t)+1];if(a==null&&n.indexOf("#-#")){const[l,A]=n.split("#-#"),d=(c=(r=e.parent)==null?void 0:r.parent)==null?void 0:c.pages,u=`${l}#-#${Number.parseInt(A)+1}`;if(d)for(const g of d){const{skeTables:h}=g;if(h.has(u)){const m=h.get(u);if(m!=null&&m.rows.length){a=m.rows.find(f=>!f.isRepeatRow);break}}}}if(a!=null){const l=a.cells[o];return fs(l)?ps(l):l}}function Ss(i){var a,r;const t=i.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;let n=e.rows[e.rows.indexOf(t)-1];const o=t.cells.indexOf(i);if((n==null||n.isRepeatRow)&&e.tableId.indexOf("#-#")){const[c,l]=e.tableId.split("#-#"),A=(r=(a=e.parent)==null?void 0:a.parent)==null?void 0:r.pages,d=`${c}#-#${Number.parseInt(l)-1}`;if(A)for(const u of A){const{skeTables:g}=u;if(g.has(d)){const h=g.get(d);if(h!=null&&h.rows.length){n=h.rows[h.rows.length-1];break}}}}if(n!=null){const c=n.cells[o];return fs(c)?Ss(c):c}}function ll(i,t){const{st:e}=i,{skeTables:n}=t;let o=null;for(const a of n.values())if(a.ed===e-1){o=a;break}return o}function Al(i){return i.sections[0].columns[0].lines[0]}function dl(i){const t=M.getLastColumn(i);return t.lines[t.lines.length-1]}var ul=Object.getOwnPropertyDescriptor,hl=(i,t,e,n)=>{for(var o=n>1?void 0:n?ul(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},un=(i,t)=>(e,n)=>t(e,n,i);let hn=class extends s.Disposable{constructor(t,e,n,o){super();x(this,"_onInputSubscription");this._univerInstanceService=t,this._renderManagerService=e,this._textSelectionManagerService=n,this._commandService=o,this._commandExecutedListener()}dispose(){var t;super.dispose(),(t=this._onInputSubscription)==null||t.unsubscribe()}_commandExecutedListener(){const t=[Se.id,Ie.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(!t.includes(e.id))return;const n=e.params;switch(e.id){case Se.id:return this._handleMoveCursor(n.direction);case Ie.id:return this._handleShiftMoveSelection(n.direction);default:throw new Error("Unknown command")}}))}_handleShiftMoveSelection(t){var E,y,O;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),o=this._univerInstanceService.getCurrentUniverDocInstance();if(o==null)return;const a=(E=this._renderManagerService.getRenderById(o.getUnitId()))==null?void 0:E.with(D.DocSkeletonManagerService).getSkeleton(),r=this._getDocObject();if(e==null||a==null||r==null)return;const{startOffset:c,endOffset:l,style:A,collapsed:d,direction:u,segmentId:g,startNodePosition:h,endNodePosition:m,segmentPage:f}=e;if(n.length>1){let C=Number.POSITIVE_INFINITY,b=Number.NEGATIVE_INFINITY;for(const _ of n)C=Math.min(C,_.startOffset),b=Math.max(b,_.endOffset);this._textSelectionManagerService.replaceTextRanges([{startOffset:t===s.Direction.LEFT||t===s.Direction.UP?b:C,endOffset:t===s.Direction.LEFT||t===s.Direction.UP?C:b,style:A}],!1);return}const p=d||u===s.RANGE_DIRECTION.FORWARD?c:l;let S=d||u===s.RANGE_DIRECTION.FORWARD?l:c;const v=(y=o.getSelfOrHeaderFooterModel(g).getBody().dataStream.length)!=null?y:Number.POSITIVE_INFINITY;if(t===s.Direction.LEFT||t===s.Direction.RIGHT){const C=a.findNodeByCharIndex(S-1,g,f),b=a.findNodeByCharIndex(S,g,f);S=t===s.Direction.RIGHT?S+b.count:S-((O=C==null?void 0:C.count)!=null?O:0),S=Math.min(v-2,Math.max(0,S)),this._textSelectionManagerService.replaceTextRanges([{startOffset:p,endOffset:S,style:A}],!1),this._scrollToFocusNodePosition(o.getUnitId(),S)}else{const C=a.findNodeByCharIndex(S,g,f),b=r.document.getOffsetConfig(),_=d?h:u===s.RANGE_DIRECTION.FORWARD?m:h,R=this._getTopOrBottomPosition(a,C,_,t===s.Direction.DOWN,!0);if(R==null){const B=t===s.Direction.UP?0:v-2;if(B===S)return;this._textSelectionManagerService.replaceTextRanges([{startOffset:p,endOffset:B,style:A}],!1);return}const w=new ue(b,a).getRangePointData(R,R).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{startOffset:p,endOffset:w.endOffset,style:A}],!1),this._scrollToFocusNodePosition(o.getUnitId(),w.endOffset)}}_handleMoveCursor(t){var v,E,y,O;const e=this._textSelectionManagerService.getActiveTextRange(),n=this._textSelectionManagerService.getTextRanges(),o=this._univerInstanceService.getCurrentUniverDocInstance();if(o==null)return!1;const a=(v=this._renderManagerService.getRenderById(o.getUnitId()))==null?void 0:v.with(D.DocSkeletonManagerService).getSkeleton(),r=this._getDocObject();if(e==null||a==null||r==null||n==null)return;const{startOffset:c,endOffset:l,style:A,collapsed:d,segmentId:u,startNodePosition:g,endNodePosition:h,segmentPage:m}=e,f=o.getSelfOrHeaderFooterModel(u).getBody();if(f==null)return;const p=(E=f.dataStream.length)!=null?E:Number.POSITIVE_INFINITY,S=(y=o.getCustomRanges())!=null?y:[];if(t===s.Direction.LEFT||t===s.Direction.RIGHT){let C;if(!e.collapsed||n.length>1){let R=Number.POSITIVE_INFINITY,w=Number.NEGATIVE_INFINITY;for(const B of n)R=Math.min(R,B.startOffset),w=Math.max(w,B.endOffset);C=t===s.Direction.LEFT?R:w}else{const R=a.findNodeByCharIndex(c-1,u,m),w=a.findNodeByCharIndex(c,u,m),B=a.findNodeByCharIndex(c+1,u,m);t===s.Direction.LEFT?C=Math.max(0,c-((O=R==null?void 0:R.count)!=null?O:1)):C=Math.min(p-2,l+w.count+((B==null?void 0:B.streamType)===s.DataStreamTreeTokenType.SECTION_BREAK?1:0))}const b=[s.DataStreamTreeTokenType.TABLE_START,s.DataStreamTreeTokenType.TABLE_END,s.DataStreamTreeTokenType.TABLE_ROW_START,s.DataStreamTreeTokenType.TABLE_ROW_END,s.DataStreamTreeTokenType.TABLE_CELL_START,s.DataStreamTreeTokenType.TABLE_CELL_END,s.DataStreamTreeTokenType.SECTION_BREAK];if(t===s.Direction.LEFT)for(;b.includes(f.dataStream[C]);)C--;else for(;b.includes(f.dataStream[C]);)C++;S.filter(R=>R.wholeEntity&&R.startIndex<C&&R.endIndex>=C).forEach(R=>{t===s.Direction.LEFT?C=Math.min(R.startIndex,C):C=Math.max(R.endIndex+1,C)}),this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,C),endOffset:Math.max(0,C),style:A}],!1),this._scrollToFocusNodePosition(o.getUnitId(),C)}else{const C=a.findNodeByCharIndex(c,u,m),b=a.findNodeByCharIndex(l,u,m),_=r.document.getOffsetConfig(),R=this._getTopOrBottomPosition(a,t===s.Direction.UP||d?C:b,t===s.Direction.UP||d?g:h,t===s.Direction.DOWN);if(R==null){let B;d?B=t===s.Direction.UP?0:p-2:B=t===s.Direction.UP?c:l,this._textSelectionManagerService.replaceTextRanges([{startOffset:Math.max(0,B),endOffset:Math.max(0,B),style:A}],!1);return}const w=new ue(_,a).getRangePointData(R,R).cursorList[0];this._textSelectionManagerService.replaceTextRanges([{...w,style:A}],!1),this._scrollToFocusNodePosition(o.getUnitId(),w.endOffset)}}_getTopOrBottomPosition(t,e,n,o,a=!1){if(e==null||n==null)return;const r=this._getGlyphLeftOffsetInLine(e),c=this._getNextOrPrevLine(e,o,a);if(c==null)return;const l=this._matchPositionByLeftOffset(t,c,r,n);if(l!=null)return{...l,isBack:!0}}_getGlyphLeftOffsetInLine(t){const e=t.parent;if(e==null)return Number.NEGATIVE_INFINITY;const n=e.left,{left:o}=t;return n+o}_matchPositionByLeftOffset(t,e,n,o){const a={distance:Number.POSITIVE_INFINITY};for(const c of e.divides){const l=c.left;for(const A of c.glyphGroup){if(A.streamType===s.DataStreamTreeTokenType.SECTION_BREAK)continue;const{left:d}=A,u=l+d,g=Math.abs(n-u);g<a.distance&&(a.glyph=A,a.distance=g)}}if(a.glyph==null)return;const{segmentPage:r}=o;return t.findPositionByGlyph(a.glyph,r)}_getNextOrPrevLine(t,e,n=!1){var f,p,S,v,E,y,O,C,b,_,R,w;const o=t.parent,a=o==null?void 0:o.parent,r=a==null?void 0:a.parent,c=r==null?void 0:r.parent,l=c==null?void 0:c.parent;if(o==null||a==null||r==null||c==null||l==null)return;const A=r.lines.indexOf(a);if(A===-1)return;let d;if(l.type===M.DocumentSkeletonPageType.CELL&&n){const B=Is(l,e);if(B)return B}if(e===!0){d=r.lines[A+1];const B=cl(a,l);if(B){const N=al(B);N&&(d=N)}}else{d=r.lines[A-1];const B=ll(a,l);if(B){const N=rl(B);N&&(d=N)}}if(d!=null)return d;const u=c.columns.indexOf(r);if(u===-1)return;if(e===!0)d=(f=c.columns[u+1])==null?void 0:f.lines[0];else{const B=(S=(p=c.columns)==null?void 0:p[u-1])==null?void 0:S.lines;d=B==null?void 0:B[B.length-1]}if(d!=null)return d;const g=l.sections.indexOf(c);if(g===-1)return;if(e===!0)d=(E=(v=l.sections[g-1])==null?void 0:v.columns[0])==null?void 0:E.lines[0];else{const B=(O=(y=l.sections)==null?void 0:y[g-1])==null?void 0:O.columns,N=B==null?void 0:B[B.length-1],F=N==null?void 0:N.lines;d=F==null?void 0:F[F.length-1]}if(d!=null)return d;if(l.type===M.DocumentSkeletonPageType.CELL)return Is(l,e);const h=l.parent;if(h==null)return;const m=h.pages.indexOf(l);if(m!==-1){if(e===!0)d=(_=(b=(C=h.pages[m+1])==null?void 0:C.sections[0])==null?void 0:b.columns[0])==null?void 0:_.lines[0];else{const B=(R=h.pages[m-1])==null?void 0:R.sections;if(B==null)return;const N=(w=B[B.length-1])==null?void 0:w.columns,F=N[N.length-1],H=F==null?void 0:F.lines;d=H[H.length-1]}if(d!=null)return d}}_scrollToFocusNodePosition(t,e){var o;const n=(o=this._renderManagerService.getRenderById(t))==null?void 0:o.with(T.DocBackScrollRenderController);n!=null&&n.scrollToRange({startOffset:e,endOffset:e,collapsed:!0})}_getDocObject(){return Vi(this._univerInstanceService,this._renderManagerService)}};hn=hl([un(0,s.IUniverInstanceService),un(1,M.IRenderManagerService),un(2,s.Inject(D.DocSelectionManagerService)),un(3,s.ICommandService)],hn);function Is(i,t){var n,o;let e=null;if(t===!0){const a=ps(i);if(a)e=Al(a);else{const r=(n=i.parent)==null?void 0:n.parent,{lineAfterTable:c}=ms(r);c&&(e=c)}}else{const a=Ss(i);if(a)e=dl(a);else{const r=(o=i.parent)==null?void 0:o.parent,{lineBeforeTable:c}=ms(r);c&&(e=c)}}return e}const gl=({handleRowColChange:i,tableCreateParams:t})=>{const e=I.useDependency(s.LocaleService),[n,o]=k.useState(3),[a,r]=k.useState(5);function c(l,A){o(l),r(A),i(l,A)}return k.useEffect(()=>{o(t.rowCount),r(t.colCount)},[t]),Q.jsxs("div",{className:"univer-flex univer-items-center univer-justify-between",children:[Q.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[Q.jsx("span",{children:e.t("toolbar.table.rowCount")}),Q.jsx(ne.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:n,onChange:l=>{c(l,a)}})]}),Q.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[Q.jsx("span",{children:e.t("toolbar.table.colCount")}),Q.jsx(ne.InputNumber,{className:"univer-w-28",min:1,max:20,precision:0,value:a,onChange:l=>{c(n,l)}})]})]})};var ml=Object.getOwnPropertyDescriptor,fl=(i,t,e,n)=>{for(var o=n>1?void 0:n?ml(t,e):t,a=i.length-1,r;a>=0;a--)(r=i[a])&&(o=r(o)||o);return o},vs=(i,t)=>(e,n)=>t(e,n,i);let gn=class extends s.Disposable{constructor(i,t){super(),this._commandService=i,this._componentManager=t,this._initialize()}_initialize(){this._init(),this._registerCommands(),this._initCustomComponents()}_registerCommands(){[ln].forEach(i=>this.disposeWithMe(this._commandService.registerCommand(i)))}_initCustomComponents(){const i=this._componentManager;this.disposeWithMe(i.register(ss,gl))}_init(){}};gn=fl([vs(0,s.ICommandService),vs(1,s.Inject(I.ComponentManager))],gn);const pl=[_e.id,Ce.id,Re.id,Me.id,De.id,Be.id,Ee.id,xe.id,Ne.id,Pe.id];function Sl(i){const{avaliableMenus:t=pl}=i,e=I.useDependency(I.IMenuManagerService),[n,o]=k.useState([]);return k.useEffect(()=>{function a(){const c=e.getFlatMenuByPositionKey(I.MenuManagerPosition.RIBBON),l=[];for(const A of t){const d=c.find(u=>u.key===A);d&&l.push(d)}o(l)}a();const r=e.menuChanged$.subscribe(a);return()=>{r.unsubscribe()}},[e]),Q.jsx("div",{className:`
50
50
  univer-box-border univer-flex univer-rounded univer-border univer-border-solid univer-border-gray-200
51
51
  univer-bg-white univer-py-1.5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/docs-ui",
3
- "version": "0.6.7-experimental.20250331-1a09136",
3
+ "version": "0.6.7-experimental.20250331-45dde91",
4
4
  "private": false,
5
5
  "description": "Univer normal ui-plugin-docs",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -60,12 +60,12 @@
60
60
  },
61
61
  "dependencies": {
62
62
  "@univerjs/icons": "^0.2.31",
63
- "@univerjs/docs": "0.6.7-experimental.20250331-1a09136",
64
- "@univerjs/core": "0.6.7-experimental.20250331-1a09136",
65
- "@univerjs/engine-render": "0.6.7-experimental.20250331-1a09136",
66
- "@univerjs/drawing": "0.6.7-experimental.20250331-1a09136",
67
- "@univerjs/ui": "0.6.7-experimental.20250331-1a09136",
68
- "@univerjs/design": "0.6.7-experimental.20250331-1a09136"
63
+ "@univerjs/design": "0.6.7-experimental.20250331-45dde91",
64
+ "@univerjs/core": "0.6.7-experimental.20250331-45dde91",
65
+ "@univerjs/docs": "0.6.7-experimental.20250331-45dde91",
66
+ "@univerjs/engine-render": "0.6.7-experimental.20250331-45dde91",
67
+ "@univerjs/drawing": "0.6.7-experimental.20250331-45dde91",
68
+ "@univerjs/ui": "0.6.7-experimental.20250331-45dde91"
69
69
  },
70
70
  "devDependencies": {
71
71
  "jest-canvas-mock": "^2.5.2",
@@ -77,7 +77,7 @@
77
77
  "typescript": "^5.8.2",
78
78
  "vite": "^6.2.3",
79
79
  "vitest": "^3.0.9",
80
- "@univerjs/docs-drawing": "0.6.7-experimental.20250331-1a09136",
80
+ "@univerjs/docs-drawing": "0.6.7-experimental.20250331-45dde91",
81
81
  "@univerjs-infra/shared": "0.6.7"
82
82
  },
83
83
  "scripts": {