@univerjs/sheets-ui 0.8.0-nightly.202506051607 → 0.8.0-nightly.202506061607

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
@@ -16,7 +16,7 @@
16
16
  `,g={...u,body:{dataStream:h,textRuns:c.textRuns,paragraphs:Wo(h)}};d==null||d.reset(g),i=d==null?void 0:d.getSnapshot(),r=c.dataStream}else r=Bh(o.innerHTML.replace(/[\r\n]/g,""));return{cellText:r,cellRichStyle:i}}_generateDocumentDataModelSnapshot(o){var l;const e=this._getCurrentSkeleton();if(e==null)return null;const{skeleton:t}=e,r=(l=t.getBlankCellDocumentModel())==null?void 0:l.documentModel,s={...r==null?void 0:r.getSnapshot(),...o};return r==null||r.reset(s),r==null?void 0:r.getSnapshot()}process(o,e,t,r){var i,s,l;for(const c of e)if(c.nodeName.toLowerCase()==="table")r.push({index:((i=t==null?void 0:t.paragraphs)==null?void 0:i.length)||0});else if(c.nodeType===Node.TEXT_NODE){if(((s=c.nodeValue)==null?void 0:s.trim())==="")continue;const d=(l=c.nodeValue)==null?void 0:l.replace(/[\r\n]/g,"");let u;o&&this._styleCache.has(o)&&(u=this._styleCache.get(o));const h={dataStream:"",textRuns:[]};t.dataStream+=d,h.dataStream+=d,u&&Object.getOwnPropertyNames(u).length&&(t.textRuns.push({st:t.dataStream.length-d.length,ed:t.dataStream.length,ts:u}),h.textRuns.push({st:t.dataStream.length-d.length,ed:t.dataStream.length,ts:u}))}else{if(a.skipParseTagNames.includes(c.nodeName.toLowerCase()))continue;if(c.nodeName.toLowerCase()==="br")t.paragraphs||(t.paragraphs=[]),t.paragraphs.push({startIndex:t.dataStream.length}),t.dataStream+="\r";else if(c.nodeType===Node.ELEMENT_NODE){if(c.nodeName==="STYLE")continue;const d=c,u=this._processBeforeLink(d,{body:t}),h=o?this._styleCache.get(o):{},g=this._styleRules.find(({filter:v})=>Zs(c,v)),S=g?g.getStyle(c):Kr(c);this._styleCache.set(c,{...h,...S});const{childNodes:f}=c;this.process(c,f,t,r);const p=this._afterProcessRules.find(({filter:v})=>Zs(c,v));p&&p.handler(t,c),this._processAfterLink(d,{body:t},u)}}}_processBeforeLink(o,e){return e.body.dataStream.length}_processAfterLink(o,e,t){var s,l;const r=e.body,i=o;i.tagName.toUpperCase()==="A"&&(r.customRanges=(s=r.customRanges)!=null?s:[],r.customRanges.push({startIndex:t,endIndex:r.dataStream.length-1,rangeId:(l=i.dataset.rangeid)!=null?l:a.generateRandomId(),rangeType:a.CustomRangeType.HYPERLINK,properties:{url:i.href}}))}dispose(){this._dom=null,this._styleCache.clear(),this._styleMap.clear()}};E(Co,"_pluginList",[]);let Sn=Co;function Uh(n){const o=/<tr([\s\S]*?)>([\s\S]*?)<\/tr>/gi,e=n.matchAll(o);if(!e)return{rowProperties:[],rowCount:0};const r=Array.from(e).map(i=>vl(i[1])).map(i=>{if(!i.height){const s=i.style,l=s&&s.match(/height\s*:\s*(\d+(\.\d+)?)px/);i.height=`${l?Number.parseInt(l[1],10):a.DEFAULT_WORKSHEET_ROW_HEIGHT}`}return i});return{rowProperties:r,rowCount:r.length}}function Ks(n){const o={};return n.split(";").forEach(t=>{const[r,i]=t.split(":");o[r]=i}),o}function vl(n){if(!n)return{};const o={},e=/([\w-]+)\s*=\s*(?:(['"])([^'"]*)\2|(\S+))/g;let t;for(;(t=e.exec(n))!==null;){const[,r,,i,s]=t,l=i!==void 0?i:s;o[r]=l}return o}function Lh(n){const o=/<colgroup([\s\S]*?)>(.*?)<\/colgroup>/,e=n.match(o),t=/<col([\s\S]*?)>/g;let r;if(e!=null&&e[2]?r=e[2].matchAll(t):r=n.matchAll(t),!r)return null;const i=Array.from(r).map(l=>vl(l[1])),s=[];return i.forEach(l=>{const c=Number(l.span);if(c)for(let d=0;d<c;d++){const u={...l};delete u.span,s.push(u)}else s.push(l)}),s}function Bh(n){const o={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&#39;":"'","&nbsp;":" "};return n.replace(/&lt;|&gt;|&amp;|&quot;|&#39;|&nbsp;|<br>/g,e=>o[e])}function qs(n,o){if(!n||!o)return null;const e=new RegExp(`(${o}\\s*:\\s*[^;]+);`,"i"),t=n.match(e);return t?t[1]:null}function Fh(n,o,e,t){const{rowSpan:r,colSpan:i,rowIndex:s,colSetValueIndex:l}=t;for(let c=s;c<s+r;c++)for(let d=l;d<l+i;d++)c===s&&d===l?n.setValue(c,d,{...e,style:o}):n.setValue(c,d,{style:o})}const jh={name:"univer-doc-paste-plugin-lark",checkPasteType(n){return/lark-record-clipboard/i.test(n)},stylesRules:[{filter:["s"],getStyle(n){const o=Kr(n);return{st:{s:a.BooleanNumber.TRUE},...o}}}],afterProcessRules:[{filter(n){return n.tagName==="DIV"&&/ace-line/i.test(n.className)},handler(n){n.paragraphs==null&&(n.paragraphs=[]),n.paragraphs.push({startIndex:n.dataStream.length}),n.dataStream+="\r"}}]},zh={name:"univer-doc-paste-plugin-univer",checkPasteType(n){return/UniverNormal/i.test(n)},stylesRules:[],afterProcessRules:[{filter(n){return n.tagName==="P"&&/UniverNormal/i.test(n.className)},handler(n,o){n.paragraphs==null&&(n.paragraphs=[]);const e={startIndex:n.dataStream.length},t=pl(o);t&&(e.paragraphStyle=t),n.paragraphs.push(e),n.dataStream+="\r"}}]},Xh={name:"univer-doc-paste-plugin-word",checkPasteType(n){return/word|mso/i.test(n)},stylesRules:[{filter:["b"],getStyle(n){const o=Kr(n);return{bl:a.BooleanNumber.TRUE,...o}}}],afterProcessRules:[{filter(n){return n.tagName==="P"&&/mso/i.test(n.className)},handler(n,o){n.paragraphs==null&&(n.paragraphs=[]);const e={startIndex:n.dataStream.length},t=pl(o);t&&(e.paragraphStyle=t),n.paragraphs.push(e),n.dataStream+="\r"}}]};var tt=(n=>(n.COPY="COPY",n.CUT="CUT",n))(tt||{});function Yh(n,o,e,t,r){const i=e.map(d=>{var u;return(u=d.onCopyRow)==null?void 0:u.call(d,n)}).filter(d=>!!d),s=ds(i),l=us(s),c=o.map(d=>{if(!r.has(`${n}-${d}`)){const u=t.getValue(n,d);if(u!=null&&u.rowSpan&&(u!=null&&u.colSpan))for(let h=n;h<n+u.rowSpan;h++)for(let g=d;g<d+u.colSpan;g++)r.add(`${h}-${g}`);return Gh(n,d,e,t)}return null}).filter(d=>!!d).join("");return`<tr${l}>${c}</tr>`}function Gh(n,o,e,t){const r=t.getValue(n,o),i=e.map(d=>{var u;return(u=d.onCopyCellStyle)==null?void 0:u.call(d,n,o,r==null?void 0:r.rowSpan,r==null?void 0:r.colSpan)}).filter(d=>!!d),s=ds(i),l=us(s),c=e.reduce((d,u)=>{var h;return d||((h=u.onCopyCellContent)==null?void 0:h.call(u,n,o))||""},"");return`<td${l}>${c}</td>`}function Zh(n,o){return`<colgroup>${n.map(t=>{const r=o.map(l=>{var c;return(c=l.onCopyColumn)==null?void 0:c.call(l,t)}).filter(l=>!!l),i=ds(r);return`<col ${us(i)} />`}).join("")}</colgroup>`}function ds(n){return n.reduce((o,e)=>(Object.keys(e).forEach(r=>{o[r]?o[r]+=`;${e[r]}`:o[r]=e[r]}),o),{})}function us(n){return Object.keys(n).reduce((o,e)=>`${o} ${e}="${n[e]}"`,"")}class Kh{convert(o,e,t){const{cols:r,rows:i}=e;if(!r.length)return"";const s=Zh(r,t),l=[],c=new Set;return i.forEach(u=>{l.push(Yh(u,r,t,o,c))}),`<google-sheets-html-origin><table xmlns="http://www.w3.org/1999/xhtml" cellspacing="0" cellpadding="0" dir="ltr" style="table-layout:fixed;font-size:10pt;font-family:Arial;width:0px;border-collapse:collapse;border:none">${s}
17
17
  <tbody>${l.join("")}</tbody></table>`}}const qh=(n,o,e=!1)=>{const t=h=>h.endRow-h.startRow+1,r=h=>h.endColumn-h.startColumn+1,i=t(o)%t(n),s=r(o)%r(n),l={startRow:0,endRow:t(n)-1,startColumn:0,endColumn:r(n)-1},c=Math.floor(t(o)/t(n)),d=Math.floor(r(o)/r(n)),u=[];if(!i&&!s)for(let h=1;h<=c;h++)for(let g=1;g<=d;g++){const S=t(n)*(h-1),f=r(n)*(g-1),p={startRow:S+o.startRow,endRow:S+o.startRow,startColumn:f+o.startColumn,endColumn:f+o.startColumn};u.push({repeatRelativeRange:l,startRange:p})}else if(!i&&s&&!e)for(let h=1;h<=c;h++){const g=t(n)*(h-1),S=0,f={startRow:g+o.startRow,endRow:g+o.startRow,startColumn:S+o.startColumn,endColumn:S+o.startColumn};u.push({repeatRelativeRange:l,startRange:f})}else if(i&&!s&&!e)for(let h=1;h<=d;h++){const S=r(n)*(h-1),f={startRow:0+o.startRow,endRow:0+o.startRow,startColumn:S+o.startColumn,endColumn:S+o.startColumn};u.push({repeatRelativeRange:l,startRange:f})}else{const h={startRow:o.startRow,endRow:o.startRow,startColumn:o.startColumn,endColumn:o.startColumn};u.push({startRange:h,repeatRelativeRange:l})}return u};function Qs(n){return n?[/<td[^>]*class=".*?xl.*?"[^>]*>/i,/xmlns:x="urn:schemas-microsoft-com:office:excel"/i,/ProgId="Excel.Sheet"/i,/xmlns:o="urn:schemas-microsoft-com:office:office"/i,/@mso-|mso-excel/i,/<x:ExcelWorkbook>/i].some(e=>e.test(n)):!1}function Qh(n){if(!n)return!1;const o=/<img[^>]*src\s*=\s*["']data:image\/[^;]+;base64,[^"']*["'][^>]*>/i;return(n.match(o)||[]).length>0}function Jh(...n){if(n.length===1)return n[0];const o=new a.ObjectMatrix;return n.forEach(e=>{e&&new a.ObjectMatrix(e).forValue((r,i,s)=>{o.setValue(r,i,{...o.getValue(r,i),...s})})}),o.getMatrix()}function $h(n,o){return n.id===o.id&&n.params.unitId===o.params.unitId&&n.params.subUnitId===o.params.subUnitId}function Oi(n){const o=[];for(let e=0;e<n.length;){let t=1;if(n[e].id===m.SetRangeValuesMutation.id){const r=n[e],i=[r];for(;e+t<n.length&&$h(r,n[e+t]);)i.push(n[e+t]),t+=1;const s=Jh(...i.map(l=>l.params.cellValue||{}));o.push({...r,params:{...r.params,cellValue:s}})}else o.push(n[e]);e+=t}return o}function Uo(n,o){const{startRow:e,endRow:t,startColumn:r,endColumn:i}=n;for(let s=e;s<=t;s++)for(let l=r;l<=i;l++)if(o.rows.includes(s)&&o.cols.includes(l))return!0}function Js(n,o){const{startRow:e,endRow:t,startColumn:r,endColumn:i}=o;for(let s=e;s<=t;s++)if(!n.rows.includes(s))return!1;for(let s=r;s<=i;s++)if(!n.cols.includes(s))return!1;return!0}function em(n){const o=n.trim().split(`
18
18
  `);let e="<table>";return o.forEach(t=>{const r=t.split(" ");e+="<tr>",r.forEach(i=>{e+=`<td>${i}</td>`}),e+="</tr>"}),e+="</table>",e}var tm=Object.getOwnPropertyDescriptor,nm=(n,o,e,t)=>{for(var r=t>1?void 0:t?tm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Te=(n,o)=>(e,t)=>o(e,t,n);const ge={DEFAULT_COPY:"default-copy",DEFAULT_PASTE:"default-paste",SPECIAL_PASTE_VALUE:"special-paste-value",SPECIAL_PASTE_FORMAT:"special-paste-format",SPECIAL_PASTE_COL_WIDTH:"special-paste-col-width",SPECIAL_PASTE_BESIDES_BORDER:"special-paste-besides-border",SPECIAL_PASTE_FORMULA:"special-paste-formula"},rm={[_.FILE_PNG_CLIPBOARD_MIME_TYPE]:"png",[_.FILE__JPEG_CLIPBOARD_MIME_TYPE]:"jpg",[_.FILE__WEBP_CLIPBOARD_MIME_TYPE]:"webp",[_.FILE__BMP_CLIPBOARD_MIME_TYPE]:"bmp"};Sn.use(Xh);Sn.use(jh);Sn.use(zh);const Ve=a.createIdentifier("sheet.clipboard-service");exports.SheetClipboardService=class extends a.Disposable{constructor(e,t,r,i,s,l,c,d,u,h,g,S,f,p){super();E(this,"_clipboardHooks",[]);E(this,"_clipboardHooks$",new O.BehaviorSubject([]));E(this,"clipboardHooks$",this._clipboardHooks$.asObservable());E(this,"_htmlToUSM");E(this,"_usmToHtml");E(this,"_copyContentCache");E(this,"_copyMarkId",null);E(this,"_pasteOptionsCache$",new O.BehaviorSubject(null));E(this,"pasteOptionsCache$",this._pasteOptionsCache$.asObservable());E(this,"_showMenu$",new O.BehaviorSubject(!1));E(this,"showMenu$",this._showMenu$.asObservable());this._logService=e,this._univerInstanceService=t,this._selectionManagerService=r,this._clipboardInterfaceService=i,this._undoRedoService=s,this._commandService=l,this._markSelectionService=c,this._notificationService=d,this._platformService=u,this._renderManagerService=h,this._themeService=g,this._localeService=S,this._errorService=f,this._injector=p,this._htmlToUSM=new Sn({getCurrentSkeleton:()=>{var v;return(v=T.withCurrentTypeOfRenderer(a.UniverInstanceType.UNIVER_SHEET,exports.SheetSkeletonManagerService,this._univerInstanceService,this._renderManagerService))==null?void 0:v.getCurrentParam()}}),this._usmToHtml=new Kh,this._copyContentCache=new Hh,this.disposeWithMe(this._htmlToUSM),this._initUnitDisposed()}setShowMenu(e){this._showMenu$.next(e)}getPasteMenuVisible(){return this._showMenu$.getValue()}getPasteOptionsCache(){return this._pasteOptionsCache$.getValue()}copyContentCache(){return this._copyContentCache}generateCopyContent(e,t,r,i=tt.COPY){const s=this._clipboardHooks;s.forEach(c=>{var d;return(d=c.onBeforeCopy)==null?void 0:d.call(c,e,t,r,i)});const l=this._generateCopyContent(e,t,r,this._clipboardHooks);return s.forEach(c=>{var d;return(d=c.onAfterCopy)==null?void 0:d.call(c)}),l}async copy(e=tt.COPY){const t=this._selectionManagerService.getCurrentLastSelection();if(!t)return!1;const r=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),i=r.getActiveSheet();if(!i)return!1;const s=r.getUnitId(),l=i.getSheetId(),c=this.generateCopyContent(s,l,t.range);if(!c)return!1;const{html:d,plain:u,matrixFragment:h,copyId:g,discreteRange:S}=c;this._copyContentCache.set(g,{unitId:r.getUnitId(),subUnitId:i.getSheetId(),range:S,matrix:h,copyType:e}),await this._clipboardInterfaceService.write(u,d),this._markSelectionService.removeAllShapes();const f=fl(this._themeService);return this._copyMarkId=this._markSelectionService.addShape({...t,style:f}),!0}async cut(){return this.copy(tt.CUT)}async paste(e,t=ge.DEFAULT_PASTE){const r=e.types,i=r.indexOf(_.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await e.getType(_.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(d=>d&&d.text()):"",s=r.indexOf(_.HTML_CLIPBOARD_MIME_TYPE)!==-1?await e.getType(_.HTML_CLIPBOARD_MIME_TYPE).then(d=>d&&d.text()):"",l=r.findIndex(d=>_.imageMimeTypeSet.has(d)),c=l===-1||!Qh(s);if(s&&c)return this._platformService.isWindows&&Qs(s)&&this._notificationService.show({type:"warning",title:this._localeService.t("clipboard.shortCutNotify.title"),content:this._localeService.t("clipboard.shortCutNotify.useShortCutInstead")}),this._pasteHTML(s,t);if(l!==-1){const d=r[l],u=await e.getType(d);if(u){const h=rm[d],g=new File([u],`clipboard-image.${h}`,{type:d});return this._pasteFiles([g],t)}}return i?this._pastePlainText(i,t):(this._logService.error("[SheetClipboardService]","No valid data on clipboard"),!1)}async legacyPaste(e,t,r){const i=Qs(e!=null?e:"");return r&&!i?this._pasteFiles(r,ge.DEFAULT_PASTE):e?this._pasteHTML(e,ge.DEFAULT_PASTE):t?/[\n\t]/.test(t)?this._pasteHTML(em(t),ge.DEFAULT_PASTE):this._pastePlainText(t,ge.DEFAULT_PASTE):this._pasteUnrecognized()}rePasteWithPasteType(e){const t=this._pasteOptionsCache$.getValue();if(!t)return!1;const r=this._injector.get(a.IUndoRedoService),i=r.pitchTopUndoElement();i&&a.sequenceExecute(i.undoMutations,this._commandService)&&r.popUndoToRedo();const{cellMatrix:s,rowProperties:l=[],colProperties:c=[],source:d,target:u}=t;return this._pasteUSM({cellMatrix:s,colProperties:c,rowProperties:l},u,ge[e],d),!0}updatePasteOptionsCache(e){this._pasteOptionsCache$.next(e)}addClipboardHook(e){if(this._clipboardHooks.findIndex(r=>r.id===e.id)!==-1)return this._logService.error("[SheetClipboardService]","hook already exists",e.id),{dispose:()=>{}};const t=this._clipboardHooks.findIndex(r=>{const i=r.priority||0;return(e.priority||0)<i});return this._clipboardHooks.splice(t!==-1?t:this._clipboardHooks.length,0,e),this._notifyClipboardHook(),a.toDisposable(()=>{const r=this._clipboardHooks.indexOf(e);r>-1&&(this._clipboardHooks.splice(r,1),this._notifyClipboardHook())})}getClipboardHooks(){return this._clipboardHooks}_generateCopyContent(e,t,r,i){const s=this._univerInstanceService.getUniverSheetInstance(e),l=s==null?void 0:s.getSheetBySheetId(t);if(!s||!l)return null;const c=i.reduce((P,y)=>{var x;const M=(x=y.getFilteredOutRows)==null?void 0:x.call(y,r);return M==null||M.forEach(A=>P.add(A)),P},new Set),{startColumn:d,startRow:u,endColumn:h,endRow:g}=r,S=l.getMatrixWithMergedCells(u,d,g,h,a.CellModeEnum.Both),f=new a.ObjectMatrix;let p=u;const v=new a.ObjectMatrix,C={rows:[],cols:[]};for(let P=u;P<=g;P++)if(!c.has(P)){C.rows.push(P);for(let y=d;y<=h;y++){const M=S.getValue(P,y);if(M){const x=a.Tools.deepClone(M);v.setValue(p-u,y-d,{...Dn(),...x}),delete x.displayV,f.setValue(p-u,y-d,{...Dn(),...x})}else v.setValue(p-u,y-d,Dn()),f.setValue(p-u,y-d,Dn()),S.setValue(P,y,Dn())}p+=1}for(let P=d;P<=h;P++)C.cols.push(P);let b=this._usmToHtml.convert(S,C,i);const R=Cl(v),w=kh();return b=b.replace(/(<[a-z]+)/,(P,y)=>`${y} data-copy-id="${w}"`),{copyId:w,plain:R,html:b,matrixFragment:f,discreteRange:C}}_notifyClipboardHook(){this._clipboardHooks$.next(this._clipboardHooks)}async _executePaste(e){const t=this._getPastingTarget();if(!t.subUnitId||!t.selection)return!1;const r=this._injector.invoke(S=>m.rangeToDiscreteRange(t.selection.range,S,t.unitId,t.subUnitId));if(!r)return!1;const{unitId:i,subUnitId:s}=t,l=this._clipboardHooks,c=[];if(l.some(S=>{var f;return c.push(S)&&((f=S.onBeforePaste)==null?void 0:f.call(S,{unitId:i,subUnitId:s,range:r}))===!1}))return c.forEach(S=>{var f;return(f=S.onAfterPaste)==null?void 0:f.call(S,!1)}),!1;const u=[],h=[];c.forEach(S=>{const f=e(S,{unitId:i,subUnitId:s,range:r});f&&(u.push(...f.redos),h.push(...f.undos))});const g=u.every(S=>this._commandService.executeCommand(S.id,S.params));return g&&this._undoRedoService.pushUndoRedo({unitID:this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET).getUnitId(),undoMutations:h,redoMutations:u}),g}async _pasteFiles(e,t){return this._executePaste((r,i)=>{var s;return(s=r.onPasteFiles)==null?void 0:s.call(r,i,e,{pasteType:t})})}async _pastePlainText(e,t){return this._executePaste((r,i)=>{var s;return(s=r.onPastePlainText)==null?void 0:s.call(r,i,e,{pasteType:t})})}_pasteUnrecognized(){return this._executePaste((e,t)=>{var r;return(r=e.onPasteUnrecognized)==null?void 0:r.call(e,t)})}async _pasteHTML(e,t){const r=Nh(e);return r&&this._copyContentCache.get(r)?this._pasteInternal(r,t):this._pasteExternal(e,t)}async _pasteExternal(e,t){var h;const{rowProperties:r,colProperties:i,cellMatrix:s}=this._htmlToUSM.convert(e);if(!s)return!1;const l=this._getPastedRange(s);if(!l)return!1;const c=(h=this._univerInstanceService.getUniverSheetInstance(l.unitId))==null?void 0:h.getSheetBySheetId(l.subUnitId);if(!c)return!1;const d=c==null?void 0:c.getMergeData();return d.length&&d.some(S=>Uo(S,l.pastedRange)&&!Js(l.pastedRange,S))?(this._errorService.emit(this._localeService.t("clipboard.paste.overlappingMergedCells")),!1):this._pasteUSM({rowProperties:r,colProperties:i,cellMatrix:s},l,t)}async _pasteInternal(e,t){var P,y;const r=a.Tools.deepClone(this._copyContentCache.get(e)),{range:i,matrix:s,unitId:l,subUnitId:c}=r||{};if(!s||!r||!i||!l||!c||!s||!r)return!1;const{mapFunc:d}=St([i]),u=(P=this._univerInstanceService.getUniverSheetInstance(l))==null?void 0:P.getSheetBySheetId(c);s.forValue((M,x,A)=>{const{row:D,col:k}=d(M,x),V=u==null?void 0:u.getComposedCellStyle(D,k),W=a.Tools.deepClone(A);if(W.s=V,s.setValue(M,x,W),A.colSpan||A.rowSpan)for(let N=0;N<A.rowSpan;N++)for(let U=0;U<A.colSpan;U++){if(N===0&&U===0)continue;const L=M+N,z=x+U;s.setValue(L,z,{s:V})}});const h=this._getPastedRange(s);if(!h)return!1;const g=(y=this._univerInstanceService.getUniverSheetInstance(h.unitId))==null?void 0:y.getSheetBySheetId(h.subUnitId);if(!g)return!1;const S=g==null?void 0:g.getMergeData();if(S&&S.some(x=>Uo(x,h.pastedRange)&&!Js(h.pastedRange,x)))return this._errorService.emit(this._localeService.t("clipboard.paste.overlappingMergedCells")),!1;const f=this._univerInstanceService.getUnit(l);if(!f)return!1;const p=f.getSheetBySheetId(c);if(!p)return!1;const v=p.getColumnManager(),C=p.getRowManager(),b=[],R=[];if(i.cols.forEach(M=>{b.push({width:`${v.getColumnWidth(M)}`})}),i.rows.forEach(M=>{R.push({height:`${C.getRowHeight(M)}`})}),r.copyType===tt.CUT){const M=h.pastedRange.rows[0],x=i.rows[i.rows.length-1]-i.rows[0]+M;h.pastedRange.rows=Array.from(new Array(x+1).keys()).slice(M)}const w=this._pasteUSM({cellMatrix:s,colProperties:b,rowProperties:R},h,t,{range:i,unitId:r.unitId,subUnitId:r.subUnitId,copyType:r.copyType,copyId:e});return r.copyType===tt.CUT&&(this._copyContentCache.set(e,{...r,matrix:null}),this._copyMarkId&&this._markSelectionService.removeShape(this._copyMarkId),this._copyMarkId=null),w}_pasteUSM(e,t,r,i){const{rowProperties:s,colProperties:l,cellMatrix:c}=e,{unitId:d,subUnitId:u,pastedRange:h}=t,g=h.cols.length,S=this._clipboardHooks,f=[];if(S.some(M=>{var x;return f.push(M)&&((x=M.onBeforePaste)==null?void 0:x.call(M,{unitId:d,subUnitId:u,range:h}))===!1}))return f.forEach(M=>{var x;return(x=M.onAfterPaste)==null?void 0:x.call(M,!1)}),!1;if(!c)return!1;const v=i?{unitId:i.unitId,subUnitId:i.subUnitId,range:i.range}:null,C={copyType:(i==null?void 0:i.copyType)||tt.COPY,copyId:i==null?void 0:i.copyId,pasteType:r};let b=[],R=[];const w=f.filter(M=>!M.specialPasteInfo&&M.id!==ge.DEFAULT_PASTE||r===M.id);w.forEach(M=>{var D,k,V;if(s){const W=(D=M.onPasteRows)==null?void 0:D.call(M,{range:h,unitId:d,subUnitId:u},s,{pasteType:r});W&&(b.push(...W.redos),R.push(...W.undos))}const x=(k=M.onPasteColumns)==null?void 0:k.call(M,{range:h,unitId:d,subUnitId:u},l||new Array(g).map(()=>({})),{pasteType:r});x&&(b.push(...x.redos),R.push(...x.undos));const A=(V=M.onPasteCells)==null?void 0:V.call(M,v,{range:h,unitId:d,subUnitId:u},c,C);A&&(b.push(...A.redos),R.push(...A.undos))});const P=this._getSetSelectionOperation(d,u,h,c,r);P&&b.push(P),b=Oi(b),R=Oi(R),R.push({id:m.SetWorksheetActiveOperation.id,params:{unitId:t.unitId,subUnitId:t.subUnitId}}),this._logService.log("[SheetClipboardService]","pasting mutations",{undoMutationsInfo:R,redoMutationsInfo:b});const y=b.every(M=>this._commandService.syncExecuteCommand(M.id,M.params));return y&&(this._undoRedoService.pushUndoRedo({unitID:d,undoMutations:R,redoMutations:b}),this.updatePasteOptionsCache({target:{pastedRange:h,unitId:d,subUnitId:u},cellMatrix:c,rowProperties:s,colProperties:l,pasteType:r,source:i}),this.setShowMenu(!0)),w.forEach(M=>{var x;return(x=M.onAfterPaste)==null?void 0:x.call(M,y)}),y}_getSetSelectionOperation(e,t,r,i,s){var P;const l=(P=this._univerInstanceService.getUniverSheetInstance(e))==null?void 0:P.getSheetBySheetId(t);if(!l)return null;const{rows:c,cols:d}=r,u=c[0],h=d[0],g=c[c.length-1],S=d[d.length-1],f={startRow:u,endRow:u,startColumn:h,endColumn:h},p=m.getPrimaryForRange(f,l),v=i.getValue(0,0),C=(v==null?void 0:v.rowSpan)||1,b=(v==null?void 0:v.colSpan)||1;if((s===ge.DEFAULT_PASTE||s===ge.SPECIAL_PASTE_BESIDES_BORDER||s===ge.SPECIAL_PASTE_FORMAT)&&(C>1||b>1)){const y={startRow:u,endRow:u+C-1,startColumn:h,endColumn:h+b-1};p.startRow=y.startRow,p.endRow=y.endRow,p.startColumn=y.startColumn,p.endColumn=y.endColumn,p.isMerged=!0,p.isMergedMainCell=!0}const w={unitId:e,subUnitId:t,selections:[{range:{startRow:u,endRow:g,startColumn:h,endColumn:S},primary:p,style:null}]};return{id:m.SetSelectionsOperation.id,params:w}}_getPastingTarget(){const e=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),t=e.getActiveSheet(),r=this._selectionManagerService.getCurrentLastSelection();return{unitId:e.getUnitId(),subUnitId:t==null?void 0:t.getSheetId(),selection:r}}_transformPastedData(e,t,r){const i=this._getPastingTarget(),{selection:s,unitId:l,subUnitId:c}=i;if(!c||!s)return null;const d=this._injector.invoke(k=>m.rangeToDiscreteRange(s.range,k,l,c));if(!d)return null;const{ranges:[u],mapFunc:h}=St([d]),{startRow:g,startColumn:S,endRow:f,endColumn:p}=u,v=f-g+1,C=p-S+1,b=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),R=b==null?void 0:b.getActiveSheet();if(!R)return null;const P=R.getMergeData().filter(k=>d.rows.includes(k.startRow)&&d.cols.includes(k.startColumn)),y=P[0];let M=0,x=0,A=0,D=0;if(y&&(M=y.startRow,x=y.startColumn,A=y.endRow,D=y.endColumn),v%e===0&&C%t===0)if(P.length>0&&(v!==e||C!==t))if(M===d.rows[0]&&x===d.cols[0]&&A===d.rows[v-1]&&D===d.cols[C-1])if(am(r))for(let V=0;V<v;V++)for(let W=0;W<C;W++){const N=r.getValue(V%e,W%t);N&&r.setValue(V,W,N)}else r.forValue((V,W,N)=>{N.s=null,delete N.colSpan,delete N.rowSpan});else for(let k=0;k<v;k++)for(let V=0;V<C;V++){const W=r.getValue(k%e,V%t);W&&r.setValue(k,V,W)}else for(let k=0;k<v;k++)for(let V=0;V<C;V++){const W=r.getValue(k%e,V%t);W&&r.setValue(k,V,W)}else if(P.length>0){const{row:k,col:V}=h(g,S);if(this._topLeftCellsMatch(e,t,{topRow:k,leftCol:V})){const N=this._expandOrShrinkRowsCols(l,c,d,t,e);d.rows=N.rows,d.cols=N.cols}else{if(f>y.endRow||p>y.endColumn)return null;r.forValue((N,U,L)=>{L.s=null,delete L.colSpan,delete L.rowSpan})}}else{const k=this._expandOrShrinkRowsCols(l,c,d,t,e);d.rows=k.rows,d.cols=k.cols}return{pastedRange:d,unitId:l,subUnitId:c}}_getPastedRange(e){var R;const t=this._getPastingTarget(),{selection:r,unitId:i,subUnitId:s}=t;if(!s||!r)return null;const l=this._injector.invoke(w=>m.rangeToDiscreteRange(r.range,w,i,s));if(!l)return null;const{startColumn:c,endColumn:d,startRow:u,endRow:h}=e.getDataRange(),g=h-u+1,S=d-c+1;if(g<=0||S<=0)return null;const f=l.rows.length,p=l.cols.length,v=(R=this._univerInstanceService.getUniverSheetInstance(i))==null?void 0:R.getSheetBySheetId(s);if(!v)return null;const C=v==null?void 0:v.getMergeData();if(f%g===0&&p%S===0&&!(C==null?void 0:C.some(P=>Uo(P,l)))){for(let P=0;P<f;P++)for(let y=0;y<p;y++){const M=e.getValue(P%g,y%S);M&&e.setValue(P,y,M)}return{pastedRange:l,unitId:i,subUnitId:s}}const b=this._expandOrShrinkRowsCols(i,s,l,S,g);return l.rows=b.rows,l.cols=b.cols,{pastedRange:l,unitId:i,subUnitId:s}}_expandOrShrinkRowsCols(e,t,r,i,s){const{rows:l,cols:c}=r,d=this._univerInstanceService.getUniverSheetInstance(e),u=d==null?void 0:d.getSheetBySheetId(t);let h,g;if(l.length>=s)h=l.slice(0,s);else{h=l.slice(0);let S=l[l.length-1]+1;for(;h.length<s;)u.getRowFiltered(S)||h.push(S),S++}if(c.length>=i)g=c.slice(0,i);else{g=c.slice(0);let S=c[c.length-1]+1;for(;g.length<i;)g.push(S),S++}return{rows:h,cols:g}}_topLeftCellsMatch(e,t,r){const i=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),s=i==null?void 0:i.getActiveSheet();if(!s)return!1;const{topRow:l,leftCol:c}=r,d=im(l+e-1,c,c+t-1,s),u=sm(c+t-1,l,l+e-1,s);return!d&&!u}removeMarkSelection(){this._copyMarkId&&(this._markSelectionService.removeShape(this._copyMarkId),this._copyMarkId=null)}_initUnitDisposed(){this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(a.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{e&&this.copyContentCache().clearWithUnitId(e.getUnitId())}))}disposePasteOptionsCache(){this.setShowMenu(!1),this.updatePasteOptionsCache(null)}};exports.SheetClipboardService=nm([Te(0,a.ILogService),Te(1,a.IUniverInstanceService),Te(2,a.Inject(m.SheetsSelectionsService)),Te(3,_.IClipboardInterfaceService),Te(4,a.IUndoRedoService),Te(5,a.ICommandService),Te(6,Lt),Te(7,_.INotificationService),Te(8,_.IPlatformService),Te(9,T.IRenderManagerService),Te(10,a.Inject(a.ThemeService)),Te(11,a.Inject(a.LocaleService)),Te(12,a.Inject(a.ErrorService)),Te(13,a.Inject(a.Injector))],exports.SheetClipboardService);function Cl(n){let o="";const e=n.getLength();return n.forRow((t,r)=>{const i=[];r.forEach(s=>{const l=n.getValue(t,s);if(l){const c=om(l);i.push(c)}}),o+=i.join(" "),t!==e-1&&(o+=`
19
- `)}),o}function om(n){return a.isNotNullOrUndefined(n.displayV)?n.displayV:a.extractPureTextFromCell(n)}function im(n,o,e,t){return t.getMergeData().some(r=>r.startRow<=n&&n<r.endRow&&o<=r.startColumn&&r.startColumn<=e)}function sm(n,o,e,t){return t.getMergeData().some(r=>r.startColumn<=n&&n<r.endColumn&&o<=r.startRow&&r.startRow<=e)}function am(n){let o=0;return n.forValue((e,t,r)=>{if(r&&o++,o>1)return!1}),o>1}function Dn(){return{p:null,v:null,s:null,f:null,si:null,t:null}}const hs=998,Le={id:_.CopyCommand.id,name:"sheet.command.copy",type:a.CommandType.COMMAND,multi:!0,priority:hs,preconditions:ls,handler:async n=>n.get(Ve).copy()},Oo={id:_.CutCommand.id,name:"sheet.command.cut",type:a.CommandType.COMMAND,multi:!0,priority:hs,preconditions:ls,handler:async n=>n.get(Ve).cut()},Be={id:_.PasteCommand.id,type:a.CommandType.COMMAND,multi:!0,name:"sheet.command.paste",priority:hs,preconditions:ls,handler:async(n,o)=>{const t=await n.get(_.IClipboardInterfaceService).read(),r=n.get(Ve);return t.length!==0?r.paste(t[0],o==null?void 0:o.value):!1}},qr={id:_.SheetPasteShortKeyCommandName,type:a.CommandType.COMMAND,handler:async(n,o)=>{const e=n.get(Ve),{htmlContent:t,textContent:r,files:i}=o;return e.legacyPaste(t,r,i),!0}},nn={id:"sheet.command.paste-value",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_VALUE})},rn={id:"sheet.command.paste-format",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_FORMAT})},Pt={id:"sheet.command.paste-col-width",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_COL_WIDTH})},on={id:"sheet.command.paste-besides-border",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_BESIDES_BORDER})},_l={id:"sheet.command.optional-paste",type:a.CommandType.COMMAND,handler:async(n,{type:o})=>n.get(Ve).rePasteWithPasteType(o)},dr={id:"sheet.command.hide-row-confirm",type:a.CommandType.COMMAND,handler:async n=>{var c;const e=(c=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:c.map(d=>d.range);if(!(e!=null&&e.length))return!1;const t=n.get(a.ICommandService),r=n.get(a.IUniverInstanceService),i=m.getSheetCommandTarget(r);if(!i)return!1;const{worksheet:s}=i,l=s.getVisibleRows();if(Da(l,e)){const d=n.get(_.IConfirmService),u=n.get(a.LocaleService);return await d.confirm({id:"sheet.confirm.hide-row",title:{title:u.t("info.problem")},children:{title:u.t("rightClick.hideAllRowsAlert")},cancelText:u.t("button.cancel"),confirmText:u.t("button.confirm")}),!1}return await t.executeCommand(m.SetRowHiddenCommand.id),!0}},ur={id:"sheet.command.hide-col-confirm",type:a.CommandType.COMMAND,handler:async n=>{var c;const e=(c=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:c.map(d=>d.range);if(!(e!=null&&e.length))return!1;const t=n.get(a.ICommandService),r=n.get(a.IUniverInstanceService),i=m.getSheetCommandTarget(r);if(!i)return!1;const{worksheet:s}=i,l=s.getVisibleCols();if(ka(l,e)){const d=n.get(_.IConfirmService),u=n.get(a.LocaleService);return await d.confirm({id:"sheet.confirm.hide-col",title:{title:u.t("info.problem")},children:{title:u.t("rightClick.hideAllColumnsAlert")},cancelText:u.t("button.cancel"),confirmText:u.t("button.confirm")}),!1}return await t.executeCommand(m.SetColHiddenCommand.id),!0}},Bt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-bold",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatBoldCommand.id):o.executeCommand(m.SetBoldCommand.id)}},Ft={type:a.CommandType.COMMAND,id:"sheet.command.set-range-italic",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatItalicCommand.id):o.executeCommand(m.SetItalicCommand.id)}},jt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-underline",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatUnderlineCommand.id):o.executeCommand(m.SetUnderlineCommand.id)}},zt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-stroke",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatStrikethroughCommand.id):o.executeCommand(m.SetStrikeThroughCommand.id)}},ms={type:a.CommandType.COMMAND,id:"sheet.command.set-range-subscript",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatSubscriptCommand.id):!1}},gs={type:a.CommandType.COMMAND,id:"sheet.command.set-range-superscript",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatSuperscriptCommand.id):!1}},hr={type:a.CommandType.COMMAND,id:"sheet.command.set-range-fontsize",handler:async(n,o)=>{const e=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?e.executeCommand(J.SetInlineFormatFontSizeCommand.id,o):e.executeCommand(m.SetFontSizeCommand.id,o)}},mr={type:a.CommandType.COMMAND,id:"sheet.command.set-range-font-family",handler:async(n,o)=>{const e=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?e.executeCommand(J.SetInlineFormatFontFamilyCommand.id,o):e.executeCommand(m.SetFontFamilyCommand.id,o)}},fn={type:a.CommandType.COMMAND,id:"sheet.command.set-range-text-color",handler:async(n,o)=>{const e=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?e.executeCommand(J.SetInlineFormatTextColorCommand.id,o):e.executeCommand(m.SetTextColorCommand.id,o)}},Ss={type:a.CommandType.COMMAND,id:"sheet.command.reset-range-text-color",handler:async n=>{const o=n.get(a.ICommandService),t=n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED),r=n.get(a.ThemeService);return t?o.executeCommand(J.SetInlineFormatTextColorCommand.id,{value:null}):o.executeCommand(m.SetTextColorCommand.id,{value:r.getColorFromTheme("gray.900")})}};var lm=Object.getOwnPropertyDescriptor,cm=(n,o,e,t)=>{for(var r=t>1?void 0:t?lm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Qt=(n,o)=>(e,t)=>o(e,t,n),Pe=(n=>(n[n.OFF=0]="OFF",n[n.ONCE=1]="ONCE",n[n.INFINITE=2]="INFINITE",n))(Pe||{});const Ze=a.createIdentifier("univer.format-painter-service");let Qr=class extends a.Disposable{constructor(o,e,t,r,i,s){super();E(this,"status$");E(this,"_selectionFormat");E(this,"_markId",null);E(this,"_status$");E(this,"_defaultHook",null);E(this,"_extendHooks",[]);this._selectionManagerService=o,this._themeService=e,this._markSelectionService=t,this._logService=r,this._commandService=i,this._undoRedoService=s,this._status$=new O.BehaviorSubject(0),this.status$=this._status$.asObservable(),this._selectionFormat={styles:new a.ObjectMatrix,merges:[]}}addHook(o){var e,t,r;o.isDefaultHook&&((e=o.priority)!=null?e:0)>((r=(t=this._defaultHook)==null?void 0:t.priority)!=null?r:-1)?this._defaultHook=o:(this._extendHooks.push(o),this._extendHooks.sort((i,s)=>(i.priority||0)-(s.priority||0)))}getHooks(){return this._defaultHook?[this._defaultHook,...this._extendHooks]:this._extendHooks}setStatus(o){this._updateRangeMark(o),this._status$.next(o),this.getHooks().forEach(t=>{t.onStatusChange!==void 0&&t.onStatusChange(o)})}getStatus(){return this._status$.getValue()}setSelectionFormat(o){this._selectionFormat=o}getSelectionFormat(){return this._selectionFormat}applyFormatPainter(o,e,t){const r=this.getHooks(),i=[],s=[];r.forEach(c=>{if(c.onApply!==void 0){const d=c.onApply(o,e,t,this._selectionFormat);d&&(i.push(...d.redos),s.push(...d.undos))}});for(const c of r)if(c.onBeforeApply!==void 0&&!c.onBeforeApply({unitId:o,subUnitId:e,range:t,redoMutationsInfo:i,format:this._selectionFormat,undoMutationsInfo:s}))return!1;this._logService.log("[FormatPainterService]","apply mutations",{undoMutationsInfo:s,redoMutationsInfo:i});const l=i.every(c=>this._commandService.executeCommand(c.id,c.params));return l&&this._undoRedoService.pushUndoRedo({unitID:o,undoMutations:s,redoMutations:i}),l}_updateRangeMark(o){if(this._markSelectionService.removeAllShapes(),o!==0){const e=this._selectionManagerService.getCurrentLastSelection();if(e){const t=fl(this._themeService);o===2?this._markId=this._markSelectionService.addShape({...e,style:t}):this._markId=this._markSelectionService.addShape({...e,style:t},[m.SetRangeValuesMutation.id])}}}};Qr=cm([Qt(0,a.Inject(m.SheetsSelectionsService)),Qt(1,a.Inject(a.ThemeService)),Qt(2,Lt),Qt(3,a.ILogService),Qt(4,a.ICommandService),Qt(5,a.IUndoRedoService)],Qr);const gr={id:"sheet.operation.set-format-painter",type:a.CommandType.OPERATION,handler:(n,o)=>o?(n.get(Ze).setStatus(o.status),!0):!1},Ao={type:a.CommandType.COMMAND,id:"sheet.command.set-infinite-format-painter",handler:async n=>{const e=n.get(Ze).getStatus();let t;return e!==Pe.OFF?t=Pe.OFF:t=Pe.INFINITE,n.get(a.ICommandService).executeCommand(gr.id,{status:t})}},En={type:a.CommandType.COMMAND,id:"sheet.command.set-once-format-painter",handler:async n=>{const e=n.get(Ze).getStatus();let t;return e!==Pe.OFF?t=Pe.OFF:t=Pe.ONCE,n.get(a.ICommandService).executeCommand(gr.id,{status:t})}},Sr={type:a.CommandType.COMMAND,id:"sheet.command.apply-format-painter",handler:async(n,o)=>n.get(Ze).applyFormatPainter(o.unitId,o.subUnitId,o.range)},ot={type:a.CommandType.COMMAND,id:"sheet.command.set-selection-frozen",handler:async(n,o)=>{const{type:e}=o||{},t=n.get(a.IUniverInstanceService),r=n.get(a.IUndoRedoService),i=m.getSheetCommandTarget(t);if(!i)return!1;const{unitId:s,subUnitId:l}=i,c=n.get(a.ICommandService),u=n.get(m.SheetsSelectionsService).getCurrentSelections();if(!u)return!1;const h=u[(u==null?void 0:u.length)-1],{range:g}=h,f=n.get(T.IRenderManagerService).getRenderById(s).with(exports.SheetScrollManagerService),{sheetViewStartRow:p=0,sheetViewStartColumn:v=0}=f.getCurrentScrollState()||{};let C,b,R,w;const{startRow:P,startColumn:y,rangeType:M}=g;if(M===a.RANGE_TYPE.ROW||e===1)C=P,R=P-p,b=-1,w=0;else if(M===a.RANGE_TYPE.COLUMN||e===2)C=-1,R=0,b=y,w=y-v;else if(M===a.RANGE_TYPE.NORMAL)C=P,R=P-p,b=y,w=y-v;else return!1;const x={unitId:s,subUnitId:l,startRow:C,startColumn:b,xSplit:b>0?Math.max(1,w):w,ySplit:C>0?Math.max(1,R):R},A=m.SetFrozenMutationFactory(n,x);return c.syncExecuteCommand(m.SetFrozenMutation.id,x)&&r.pushUndoRedo({unitID:s,undoMutations:[{id:m.SetFrozenMutation.id,params:A}],redoMutations:[{id:m.SetFrozenMutation.id,params:x}]}),!0}},fr={type:a.CommandType.COMMAND,id:"sheet.command.set-row-frozen",handler:async n=>(n.get(a.ICommandService).executeCommand(ot.id,{type:1}),!0)},pr={type:a.CommandType.COMMAND,id:"sheet.command.set-col-frozen",handler:async n=>(n.get(a.ICommandService).executeCommand(ot.id,{type:2}),!0)};var dm=Object.getOwnPropertyDescriptor,um=(n,o,e,t)=>{for(var r=t>1?void 0:t?dm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},$s=(n,o)=>(e,t)=>o(e,t,n);const hm=(n,o)=>{const{unitId:e,subUnitId:t,ranges:r}=n,i={},s=o.getColumnManager();for(let l=0;l<r.length;l++){const c=r[l];for(let d=c.startColumn;d<c.endColumn+1;d++)i[d]=s.getColumnWidth(d)}return{unitId:e,subUnitId:t,ranges:r,colWidth:i}};exports.AutoWidthController=class extends a.Disposable{constructor(o,e){super(),this._renderManagerService=o,this._univerInstanceService=e}getUndoRedoParamsOfColWidth(o){const e={redos:[],undos:[]},{_univerInstanceService:t}=this,r=m.getSheetCommandTarget(t);if(!r)return e;const{unitId:i,subUnitId:s,worksheet:l}=r,c=this._renderManagerService.getRenderById(i).with(exports.SheetSkeletonManagerService);if(!c.getCurrentParam())return e;const{skeleton:d}=c.getCurrentParam(),u=d.calculateAutoWidthInRange(o.ranges),h={};for(const{col:f,width:p}of u)h[f]=p;const g={subUnitId:s,unitId:i,ranges:o.ranges,colWidth:h},S=hm(g,l);return{undos:[{id:m.SetWorksheetColWidthMutation.id,params:S}],redos:[{id:m.SetWorksheetColWidthMutation.id,params:g}]}}};exports.AutoWidthController=um([$s(0,T.IRenderManagerService),$s(1,a.Inject(a.IUniverInstanceService))],exports.AutoWidthController);const vr={type:a.CommandType.COMMAND,id:"sheet.command.set-col-auto-width",handler:(n,o)=>{const e=n.get(a.ICommandService),t=n.get(a.IUndoRedoService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=m.getSheetCommandTarget(i,o);if(!s)return!1;const{unitId:l,subUnitId:c}=s;let d=[];if(o!=null&&o.ranges)d=[...o.ranges];else{const f=r.getCurrentSelections();for(let p=0;p<f.length;p++)d.push(f[p].range)}if(!(d!=null&&d.length))return!1;const u={unitId:l,subUnitId:c,ranges:d},{redos:h,undos:g}=n.get(exports.AutoWidthController).getUndoRedoParamsOfColWidth(u);return a.sequenceExecute([...h],e).result?(t.pushUndoRedo({unitID:l,undoMutations:[...g],redoMutations:[...h]}),!0):!1}},Il="UI_PLUGIN_SHEETS",Ke=`${Il}_MENU_ITEM_INPUT_COMPONENT`,bl=n=>{const{prefix:o,suffix:e,value:t,onChange:r,min:i=Number.MIN_SAFE_INTEGER,max:s=Number.MAX_SAFE_INTEGER}=n,l=_.useDependency(a.LocaleService),c=_.useDependency(_.IContextMenuService),[d,u]=H.useState(),h=S=>{if(!S){u(i.toString());return}const f=S.toString();u(f),r(f)};H.useEffect(()=>{c.visible||u(t)},[c.visible]),H.useEffect(()=>{+t<i?u(i.toString()):+t>s?u(s.toString()):u(t)},[t]);function g(){d&&r(d)}return I.jsxs("div",{className:"univer-inline-flex univer-items-center univer-gap-1",children:[l.t(o),I.jsx("div",{className:"univer-w-16",onClick:S=>S.stopPropagation(),children:I.jsx(j.InputNumber,{value:Number(d),size:"mini",precision:0,min:i,max:s,onPressEnter:g,onChange:h})}),l.t(e)]})};function mm(n){return n.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).pipe(de.switchMap(o=>o?o.activeSheet$.pipe(de.map(e=>e?{workbook:o,worksheet:e}:null)):O.of(null)))}function Ie(n,o,e){return mm(n).pipe(de.switchMap(t=>t?e(t):O.of(o)))}function Rl(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.IExclusiveRangeService),r=n.get(m.SheetsSelectionsService);return e.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).pipe(de.switchMap(s=>s?O.combineLatest([r.selectionMoveEnd$,s.activeSheet$]).pipe(de.switchMap(([l,c])=>{if(!c||l.length===0)return O.of(!1);const d=t.getInterestGroupId(l);if(o){const u=d.filter(h=>o.has(h));return O.of(u.length>0)}else return O.of(d.length>0)})):O.of(!1)))}function Xt(n,o,e){return O.combineLatest([o,Rl(n,e)]).pipe(de.map(([t,r])=>t||r))}function ee(n,o={},e=!1){var g;const r=n.get(a.IUniverInstanceService).getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),i=n.get(a.UserManagerService),s=n.has(he)?n.get(he):null,l=n.get(a.IContextService),d=((g=s==null?void 0:s.visible$)!=null?g:O.of(null)).pipe(de.startWith(null),de.shareReplay(1)),u=l.subscribeContextValue$(a.FOCUSING_FX_BAR_EDITOR).pipe(de.startWith(!1),de.shareReplay(1));return O.combineLatest([i.currentUser$,r,d,u]).pipe(de.switchMap(([S,f,p,v])=>!f||p!=null&&p.visible&&p.unitId===f.getUnitId()&&!e||v&&!e?O.of(!0):f.activeSheet$.pipe(de.switchMap(C=>{if(!C)return O.of(!0);const b=n.get(m.SheetsSelectionsService),R=n.get(m.RangeProtectionRuleModel),w=n.get(m.WorksheetProtectionRuleModel),y=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_COMMON_DRAWINGS).pipe(de.startWith(!1));return O.combineLatest([b.selectionMoveEnd$,y]).pipe(de.switchMap(([M,x])=>{if(x)return O.of(!0);const A=f.getUnitId(),D=C.getSheetId(),k=n.get(a.IPermissionService),{workbookTypes:V=[m.WorkbookEditablePermission],worksheetTypes:W,rangeTypes:N}=o,U=[];if(V==null||V.forEach(F=>{U.push(new F(A).id)}),W==null||W.forEach(F=>{U.push(new F(A,D).id)}),w.getRule(A,D))return k.composePermission$(U).pipe(de.map(F=>F.some(X=>X.value===!1)));const z=M==null?void 0:M.map(F=>F.range),B=R.getSubunitRuleList(A,D).filter(F=>z==null?void 0:z.some(X=>F.ranges.some(K=>a.Rectangle.intersects(X,K))));return N==null||N.forEach(F=>{B.forEach(X=>{U.push(new F(A,D,X.permissionId).id)})}),k.composePermission$(U).pipe(de.map(F=>F.some(X=>X.value===!1)))}))}))))}function Tn(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(m.RangeProtectionRuleModel),r=n.get(a.IPermissionService);return O.merge(e.selectionMoveEnd$,r.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var h;const i=(h=e.getCurrentLastSelection())==null?void 0:h.range;if(!i)return!0;const s=o.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),l=s==null?void 0:s.getActiveSheet();if(!s||!l)return!0;const c=s.getUnitId(),d=l.getSheetId(),u=[new m.WorkbookEditablePermission(c).id,new m.WorksheetEditPermission(c,d).id];return t.getSubunitRuleList(c,d).filter(g=>g.ranges.some(S=>a.Rectangle.intersects(i,S))).forEach(g=>{u.push(new m.RangeProtectionPermissionEditPoint(c,d,g.permissionId).id)}),r.composePermission(u).some(g=>g.value===!1)}))}function wl(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.RangeProtectionRuleModel),i=n.get(a.IPermissionService);return O.merge(t.selectionMoveEnd$,i.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var g;const s=(g=t.getCurrentLastSelection())==null?void 0:g.range;if(!s)return!0;const l=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),c=l==null?void 0:l.getActiveSheet();if(!l||!c)return!0;const d=l.getUnitId(),u=c.getSheetId(),h=[new m.WorkbookEditablePermission(d).id,new m.WorksheetEditPermission(d,u).id];return r.getSubunitRuleList(d,u).filter(S=>o==="row"?S.ranges.some(f=>s.startRow>f.startRow&&s.startRow<=f.endRow):S.ranges.some(f=>s.startColumn>f.startColumn&&s.startColumn<=f.endColumn)).forEach(S=>{h.push(new m.RangeProtectionPermissionEditPoint(d,u,S.permissionId).id)}),i.composePermission(h).some(S=>S.value===!1)}))}function El(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.RangeProtectionRuleModel),i=n.get(a.IPermissionService);return O.merge(t.selectionMoveEnd$,i.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var S;const s=(S=t.getCurrentLastSelection())==null?void 0:S.range;if(!s)return!0;const l=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),c=l==null?void 0:l.getActiveSheet();if(!l||!c)return!0;const d=l.getUnitId(),u=c.getSheetId(),h=[new m.WorkbookEditablePermission(d).id,new m.WorksheetEditPermission(d,u).id],g=a.Tools.deepClone(s);return o==="row"?(g.startColumn=0,g.endColumn=c.getColumnCount()-1):(g.startRow=0,g.endRow=c.getRowCount()-1),r.getSubunitRuleList(d,u).filter(f=>f.ranges.some(p=>a.Rectangle.intersects(g,p))).forEach(f=>{h.push(new m.RangeProtectionPermissionEditPoint(d,u,f.permissionId).id)}),i.composePermission(h).some(f=>f.value===!1)}))}function Do(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.RangeProtectionRuleModel),i=n.get(a.IPermissionService);return O.merge(t.selectionMoveEnd$,i.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var S;const s=(S=t.getCurrentLastSelection())==null?void 0:S.range;if(!s)return!0;const l=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),c=l==null?void 0:l.getActiveSheet();if(!l||!c)return!0;const d=l.getUnitId(),u=c.getSheetId(),h=[new m.WorkbookEditablePermission(d).id,new m.WorksheetEditPermission(d,u).id],g=a.Tools.deepClone(s);return o==="row"?g.endRow=c.getRowCount()-1:g.endColumn=c.getColumnCount()-1,r.getSubunitRuleList(d,u).filter(f=>f.ranges.some(p=>a.Rectangle.intersects(g,p))).forEach(f=>{h.push(new m.RangeProtectionPermissionEditPoint(d,u,f.permissionId).id)}),i.composePermission(h).some(f=>f.value===!1)}))}function yn(n,o){const t=n.get(a.IUniverInstanceService).getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(m.WorksheetProtectionRuleModel),i=n.get(m.RangeProtectionRuleModel),s=n.get(a.IPermissionService),l=n.get(a.UserManagerService);return O.combineLatest([l.currentUser$,t]).pipe(de.switchMap(([c,d])=>d?d.activeSheet$.pipe(de.switchMap(u=>{if(!u)return O.of(!0);const h=d.getUnitId(),g=[];return o.forEach(f=>g.push(new f(h).id)),s.composePermission$(g).pipe(de.map(f=>f.every(p=>p.value===!0))).pipe(de.map(f=>{if(!f)return!0;const p=u.getSheetId(),v=r.getRule(h,p),C=i.getSubunitRuleList(h,p);return!!(v||C.length)}))})):O.of(!0)))}var Tl=(n=>(n.ROW_HEADER_CONTEXT_MENU="ROW_HEADER_CONTEXT_MENU",n.COL_HEADER_CONTEXT_MENU="COL_HEADER_CONTEXT_MENU",n.SHEET_BAR="SHEET_BAR",n.SHEET_FOOTER="SHEET_FOOTER",n))(Tl||{});function gm(n){const o=n.get(Ze);return{id:En.id,subId:Ao.id,type:_.MenuItemType.BUTTON,icon:"BrushIcon",title:"Format Painter",tooltip:"toolbar.formatPainter",activated$:new O.Observable(e=>{let t=!1;const r=o.status$.subscribe(i=>{t=i!==Pe.OFF,e.next(t)});return e.next(t),()=>{r.unsubscribe()}}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetCopyPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0)}}function Sm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(a.IContextService),r=n.get(m.SheetsSelectionsService);return{id:Bt.id,type:_.MenuItemType.BUTTON,icon:"BoldIcon",title:"Set bold",tooltip:"toolbar.bold",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=r.getCurrentLastSelection())==null?void 0:S.primary;let v=a.FontWeight.NORMAL;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getFontWeight()}s.next(v===a.FontWeight.BOLD)}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&t.getContextValue(a.EDITOR_ACTIVATED)&&t.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.bl;s.next(v===a.BooleanNumber.TRUE)}}),c=(u=r.getCurrentLastSelection())==null?void 0:u.primary;if(!i){s.next(!1);return}let d=a.FontWeight.NORMAL;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getFontWeight()}return s.next(d===a.FontWeight.BOLD),l.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function fm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService);return{id:Ft.id,type:_.MenuItemType.BUTTON,icon:"ItalicIcon",title:"Set italic",tooltip:"toolbar.italic",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=t.getCurrentLastSelection())==null?void 0:S.primary;let v=a.FontItalic.NORMAL;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getFontStyle()}s.next(v===a.FontItalic.ITALIC)}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.it;s.next(v===a.BooleanNumber.TRUE)}}),c=(u=t.getCurrentLastSelection())==null?void 0:u.primary;let d=a.FontItalic.NORMAL;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getFontStyle()}return s.next(d===a.FontItalic.ITALIC),l.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function pm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService);return{id:jt.id,type:_.MenuItemType.BUTTON,icon:"UnderlineIcon",title:"Set underline",tooltip:"toolbar.underline",activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=t.getCurrentLastSelection())==null?void 0:S.primary;let v;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getUnderline()}s.next(!!(v&&v.s))}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.ul;s.next((v==null?void 0:v.s)===a.BooleanNumber.TRUE)}}),c=(u=t.getCurrentLastSelection())==null?void 0:u.primary;let d;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getUnderline()}return s.next(!!(d&&d.s)),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function vm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService);return{id:zt.id,type:_.MenuItemType.BUTTON,icon:"StrikethroughIcon",title:"Set strike through",tooltip:"toolbar.strikethrough",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=t.getCurrentLastSelection())==null?void 0:S.primary;let v;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getStrikeThrough()}s.next(!!(v&&v.s))}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.st;s.next((v==null?void 0:v.s)===a.BooleanNumber.TRUE)}}),c=(u=t.getCurrentLastSelection())==null?void 0:u.primary;let d;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getStrikeThrough()}return s.next(!!(d&&d.s)),l.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Cm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=a.DEFAULT_STYLES.ff;return{id:mr.id,tooltip:"toolbar.font",type:_.MenuItemType.SELECTOR,label:_.FONT_FAMILY_COMPONENT,selections:_.FONT_FAMILY_LIST.map(i=>({label:{name:_.FONT_FAMILY_ITEM_COMPONENT},value:i.value})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),value$:Ie(e,r,({worksheet:i})=>new O.Observable(s=>{const l=()=>{var h;let d=r;const u=(h=t.getCurrentLastSelection())==null?void 0:h.primary;if(u!=null){const g=i.getCellStyle(u.startRow,u.startColumn),S=i.getDefaultCellStyleInternal(),f=i.getRowStyle(u.startRow),p=i.getColumnStyle(u.startColumn),v=a.composeStyles(S,f,p,g);v.ff&&(d=v.ff)}s.next(d)},c=o.onCommandExecuted(d=>{const u=d.id;(u===m.SetRangeValuesMutation.id||u===m.SetSelectionsOperation.id||u===m.SetWorksheetActiveOperation.id)&&l()});return l(),c.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function _m(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService),i=a.DEFAULT_STYLES.fs,s=ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0);return{id:hr.id,type:_.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:_.FONT_SIZE_COMPONENT,props:{min:1,max:400,disabled$:s}},selections:_.FONT_SIZE_LIST,disabled$:s,value$:Ie(e,i,({worksheet:l})=>new O.Observable(c=>{const d=()=>{var f;let g=i;const S=(f=t.getCurrentLastSelection())==null?void 0:f.primary;if(S!=null){const p=l.getComposedCellStyle(S.startRow,S.startColumn);p.fs&&(g=p.fs)}c.next(g)},u=()=>{var S,f;const g=_r(n);if(g!=null){const p=(f=(S=g.ts)==null?void 0:S.fs)!=null?f:i;c.next(p)}},h=o.onCommandExecuted(g=>{const S=g.id;(S===m.SetRangeValuesMutation.id||S===m.SetSelectionsOperation.id||S===m.SetWorksheetActiveOperation.id)&&d(),(S===Ce.SetTextSelectionsOperation.id||S===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)&&u()});return d(),h.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Im(n){return{id:Ss.id,type:_.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColorDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function bm(n){const o=n.get(a.ICommandService),e=n.get(a.ThemeService);return{id:fn.id,icon:"FontColorDoubleIcon",tooltip:"toolbar.textColor.main",type:_.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:_.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1}}],value$:new O.Observable(t=>{const r=e.getColorFromTheme("gray.900"),i=o.onCommandExecuted(s=>{if(s.id===fn.id){const l=s.params.value;t.next(l!=null?l:r)}});return t.next(r),i.dispose}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0)}}function Rm(n){return{id:m.ResetBackgroundColorCommand.id,type:_.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColorDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function wm(n){const o=n.get(a.ICommandService),e=n.get(a.ThemeService);return{id:m.SetBackgroundColorCommand.id,tooltip:"toolbar.fillColor.main",type:_.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucketDoubleIcon",selections:[{label:{name:_.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1}}],value$:new O.Observable(t=>{const r=e.getColorFromTheme("primary.600"),i=o.onCommandExecuted(s=>{if(s.id===m.SetBackgroundColorCommand.id){const l=s.params.value;t.next(l!=null?l:r)}});return t.next(r),i.dispose}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const ea=[{label:"align.left",icon:"LeftJustifyingIcon",value:a.HorizontalAlign.LEFT},{label:"align.center",icon:"HorizontallyIcon",value:a.HorizontalAlign.CENTER},{label:"align.right",icon:"RightJustifyingIcon",value:a.HorizontalAlign.RIGHT}];function Em(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=a.HorizontalAlign.LEFT;return{id:m.SetHorizontalTextAlignCommand.id,icon:ea[0].icon,tooltip:"toolbar.horizontalAlignMode.main",type:_.MenuItemType.SELECTOR,selections:ea,value$:Ie(o,t,({worksheet:r})=>new O.Observable(i=>{var d;const s=n.get(a.ICommandService).onCommandExecuted(u=>{var f;const h=u.id;if(h!==m.SetHorizontalTextAlignCommand.id&&h!==m.SetSelectionsOperation.id&&h!==m.SetWorksheetActiveOperation.id)return;const g=(f=e.getCurrentLastSelection())==null?void 0:f.primary;let S;if(g!=null){const p=r.getRange(g.startRow,g.startColumn);S=p==null?void 0:p.getHorizontalAlignment()}i.next(S!=null?S:t)}),l=(d=e.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const u=r.getRange(l.startRow,l.startColumn);c=u==null?void 0:u.getHorizontalAlignment()}return i.next(c!=null?c:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const ta=[{label:"align.top",icon:"AlignTopIcon",value:a.VerticalAlign.TOP},{label:"align.middle",icon:"VerticalCenterIcon",value:a.VerticalAlign.MIDDLE},{label:"align.bottom",icon:"AlignBottomIcon",value:a.VerticalAlign.BOTTOM}];function Tm(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=a.VerticalAlign.BOTTOM;return{id:m.SetVerticalTextAlignCommand.id,icon:ta[2].icon,tooltip:"toolbar.verticalAlignMode.main",type:_.MenuItemType.SELECTOR,selections:ta,value$:Ie(o,t,({worksheet:r})=>new O.Observable(i=>{var d;const s=n.get(a.ICommandService).onCommandExecuted(u=>{var f;const h=u.id;if(h!==m.SetVerticalTextAlignCommand.id&&h!==m.SetSelectionsOperation.id&&h!==m.SetWorksheetActiveOperation.id)return;const g=(f=e.getCurrentLastSelection())==null?void 0:f.primary;let S;if(g!=null){const p=r.getRange(g.startRow,g.startColumn);S=p==null?void 0:p.getVerticalAlignment()}i.next(S!=null?S:t)}),l=(d=e.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const u=r.getRange(l.startRow,l.startColumn);c=u==null?void 0:u.getVerticalAlignment()}return i.next(c!=null?c:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const na=[{label:"textWrap.overflow",icon:"OverflowIcon",value:a.WrapStrategy.OVERFLOW},{label:"textWrap.wrap",icon:"AutowrapIcon",value:a.WrapStrategy.WRAP},{label:"textWrap.clip",icon:"TruncationIcon",value:a.WrapStrategy.CLIP}];function ym(n){const o=n.get(m.SheetsSelectionsService),e=n.get(a.IUniverInstanceService),t=a.WrapStrategy.OVERFLOW;return{id:m.SetTextWrapCommand.id,tooltip:"toolbar.textWrapMode.main",icon:na[0].icon,type:_.MenuItemType.SELECTOR,selections:na,value$:Ie(e,t,({worksheet:r})=>new O.Observable(i=>{var d;const s=n.get(a.ICommandService).onCommandExecuted(u=>{var f;const h=u.id;if(h!==m.SetTextWrapCommand.id&&h!==m.SetSelectionsOperation.id&&h!==m.SetWorksheetActiveOperation.id)return;const g=(f=o.getCurrentLastSelection())==null?void 0:f.primary;let S;if(g!=null){const p=r.getRange(g.startRow,g.startColumn);S=p==null?void 0:p.getWrapStrategy()}i.next(S!=null?S:t)}),l=(d=o.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const u=r.getRange(l.startRow,l.startColumn);c=u==null?void 0:u.getWrapStrategy()}return i.next(c!=null?c:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const ra=[{label:"textRotate.none",icon:"NoRotationIcon",value:0},{label:"textRotate.angleUp",icon:"LeftRotationFortyFiveDegreesIcon",value:-45},{label:"textRotate.angleDown",icon:"RightRotationFortyFiveDegreesIcon",value:45},{label:"textRotate.vertical",icon:"VerticalTextIcon",value:"v"},{label:"textRotate.rotationUp",icon:"LeftRotationNinetyDegreesIcon",value:-90},{label:"textRotate.rotationDown",icon:"RightRotationNinetyDegreesIcon",value:90}];function Mm(n){const o=n.get(m.SheetsSelectionsService),e=n.get(a.IUniverInstanceService),t=0;return{id:m.SetTextRotationCommand.id,tooltip:"toolbar.textRotateMode.main",icon:ra[0].icon,type:_.MenuItemType.SELECTOR,selections:ra,value$:Ie(e,t,({worksheet:r})=>new O.Observable(i=>{var d,u;const s=n.get(a.ICommandService).onCommandExecuted(h=>{var p,v;const g=h.id;if(g!==m.SetTextRotationCommand.id&&g!==m.SetSelectionsOperation.id&&g!==m.SetWorksheetActiveOperation.id)return;const S=(p=o.getCurrentLastSelection())==null?void 0:p.primary;let f;if(S!=null){const C=r.getRange(S.startRow,S.startColumn);f=C==null?void 0:C.getTextRotation()}(f==null?void 0:f.v)===a.BooleanNumber.TRUE?i.next("v"):i.next((v=f&&f.a)!=null?v:t)}),l=(d=o.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const h=r.getRange(l.startRow,l.startColumn);c=h==null?void 0:h.getTextRotation()}return(c==null?void 0:c.v)===a.BooleanNumber.TRUE?i.next("v"):i.next((u=c&&c.a)!=null?u:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Cr(n){return new O.Observable(e=>e.next(!n.get(_.IClipboardInterfaceService).supportClipboard))}function sn(n){return{id:Le.name,commandId:Le.id,type:_.MenuItemType.BUTTON,title:"rightClick.copy",icon:"CopyDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookCopyPermission],worksheetTypes:[m.WorksheetCopyPermission],rangeTypes:[m.RangeProtectionPermissionViewPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Lo(n){return{id:Be.name,commandId:Be.id,type:_.MenuItemType.BUTTON,title:"rightClick.paste",icon:"PasteSpecialDoubleIcon",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission,m.WorksheetSetCellValuePermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const Yn="sheet.menu.paste-special";function Bo(n){return{id:Yn,type:_.MenuItemType.SUBITEMS,icon:"PasteSpecialDoubleIcon",title:"rightClick.pasteSpecial",hidden$:Xt(n,_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET))}}function Fo(n){return{id:nn.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteValue",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetSetCellValuePermission,m.WorksheetEditPermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function jo(n){return{id:rn.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteFormat",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetSetCellStylePermission,m.WorksheetEditPermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function zo(n){return{id:Pt.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteColWidth",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetSetColumnStylePermission,m.WorksheetEditPermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e))}}function Xo(n){return{id:on.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteBesidesBorder",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission,m.WorksheetSetCellValuePermission,m.WorksheetSetRowStylePermission,m.WorksheetSetColumnStylePermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Pm(n){return{id:m.SetWorksheetRowIsAutoHeightCommand.id,type:_.MenuItemType.BUTTON,icon:"AutoHeightDoubleIcon",title:"rightClick.fitContent",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetRowStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function xm(n){return{id:vr.id,type:_.MenuItemType.BUTTON,icon:"AutoWidthDoubleIcon",title:"rightClick.fitContent",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetRowStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const yl="sheet.menu.sheet-frozen";function Om(n){return{id:yl,type:_.MenuItemType.SUBITEMS,title:"rightClick.freeze",icon:"FreezeToSelectedIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const Ai="sheet.header-menu.sheet-frozen";function oa(n){return{id:Ai,type:_.MenuItemType.SUBITEMS,title:"rightClick.freeze",icon:"FreezeToSelectedIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Yo(n){return{id:ot.id,type:_.MenuItemType.BUTTON,title:"rightClick.freeze",icon:"FreezeToSelectedIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Am(n){return{id:fr.id,type:_.MenuItemType.BUTTON,title:"rightClick.freezeRow",icon:"FreezeRowIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Dm(n){return{id:pr.id,type:_.MenuItemType.BUTTON,title:"rightClick.freezeCol",icon:"FreezeColumnIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Go(n){return{id:m.CancelFrozenCommand.id,type:_.MenuItemType.BUTTON,title:"rightClick.cancelFreeze",icon:"CancelFreezeIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function km(n){return{id:dr.id,type:_.MenuItemType.BUTTON,icon:"HideDoubleIcon",title:"rightClick.hideSelectedRow",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetRowStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Nm(n){return{id:ur.id,type:_.MenuItemType.BUTTON,icon:"HideDoubleIcon",title:"rightClick.hideSelectedColumn",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetColumnStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Hm(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=[m.SetSelectionsOperation,m.SetRowHiddenMutation,m.SetRowVisibleMutation].map(i=>i.id);return{id:m.SetSelectedRowsVisibleCommand.id,type:_.MenuItemType.BUTTON,icon:"EyeOutlineIcon",title:"rightClick.showHideRow",hidden$:Ie(o,!0,({worksheet:i})=>new O.Observable(s=>{function l(){var u;const d=(u=e.getCurrentSelections())==null?void 0:u.map(h=>h.range).filter(h=>h.rangeType===a.RANGE_TYPE.ROW);return!!(d!=null&&d.some(h=>{for(let g=h.startRow;g<=h.endRow;g++)if(!i.getRowRawVisible(g))return!0;return!1}))}const c=t.onCommandExecuted(d=>{r.findIndex(u=>u===d.id)!==-1&&s.next(!l())});return s.next(!l()),()=>c.dispose()})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetRowStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Vm(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=[m.SetSelectionsOperation,m.SetColHiddenMutation,m.SetColVisibleMutation].map(i=>i.id);return{id:m.SetSelectedColsVisibleCommand.id,type:_.MenuItemType.BUTTON,icon:"EyeOutlineIcon",title:"rightClick.showHideColumn",hidden$:Ie(o,!0,({worksheet:i})=>new O.Observable(s=>{function l(){var u;const d=(u=e.getCurrentSelections())==null?void 0:u.map(h=>h.range).filter(h=>h.rangeType===a.RANGE_TYPE.COLUMN);return!d||d.length===0?!1:!!d.some(h=>{for(let g=h.startColumn;g<=h.endColumn;g++)if(!i.getColVisible(g))return!0;return!1})}const c=t.onCommandExecuted(d=>{r.findIndex(u=>u===d.id)!==-1&&s.next(!l())});return s.next(!l()),()=>c.dispose()})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetColumnStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Wm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=2;return{id:m.SetRowHeightCommand.id,type:_.MenuItemType.BUTTON,icon:"AdjustHeightDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.rowHeight",suffix:"px",min:r,max:1e3}},value$:Ie(e,r,({worksheet:i})=>new O.Observable(s=>{function l(){var h;const d=(h=t.getCurrentLastSelection())==null?void 0:h.primary,u=d?i.getRowHeight(d.startRow):i.getConfig().defaultRowHeight;s.next(u)}const c=o.onCommandExecuted(d=>{const u=d.id;if(u===m.SetRangeValuesMutation.id||u===m.SetSelectionsOperation.id||u===m.SetWorksheetRowIsAutoHeightMutation.id)return l()});return l(),c.dispose})),hidden$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetRowStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Um(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=2;return{id:m.SetColWidthCommand.id,type:_.MenuItemType.BUTTON,icon:"AdjustWidthDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.columnWidth",suffix:"px",min:r,max:1e3}},value$:Ie(e,r,({worksheet:i})=>new O.Observable(s=>{function l(){var h;const d=(h=t.getCurrentLastSelection())==null?void 0:h.primary,u=d?i.getColumnWidth(d.startColumn):i.getConfig().defaultColumnWidth;s.next(u)}const c=o.onCommandExecuted(d=>{const u=d.id;if(u===m.SetRangeValuesMutation.id||u===m.SetSelectionsOperation.id||u===m.SetWorksheetColWidthMutation.id)return l()});return l(),c.dispose})),hidden$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetColumnStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function _r(n){var c;const o=n.get(a.IUniverInstanceService),e=n.get(Ce.DocSelectionManagerService),t=o.getUniverDocInstance(a.DOCS_NORMAL_EDITOR_UNIT_ID_KEY),r=e.getActiveTextRange();if(t==null||r==null)return null;const i=(c=t.getBody())==null?void 0:c.textRuns;if(i==null)return;const{startOffset:s}=r;return i.find(({st:d,ed:u})=>s>=d&&s<=u)}var Lm=Object.getOwnPropertyDescriptor,Bm=(n,o,e,t)=>{for(var r=t>1?void 0:t?Lm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Rt=(n,o)=>(e,t)=>o(e,t,n);const Fm="__SpreadsheetFreezeRowMainName__",jm="__SpreadsheetFreezeRowHeaderName__",zm="__SpreadsheetFreezeColumnMainName__",Xm="__SpreadsheetFreezeColumnHeaderName__",Zo=2,Ym=.01,kn=a.createInterceptorKey("freezePermissionCheck");exports.HeaderFreezeRenderController=class extends a.Disposable{constructor(e,t,r,i,s,l,c,d){super();E(this,"_rowFreezeHeaderRect");E(this,"_rowFreezeMainRect");E(this,"_columnFreezeHeaderRect");E(this,"_columnFreezeMainRect");E(this,"_freezeDownSubs");E(this,"_freezePointerEnterSubs");E(this,"_freezePointerLeaveSubs");E(this,"_scenePointerMoveSub");E(this,"_scenePointerUpSub");E(this,"_changeToRow",-1);E(this,"_changeToColumn",-1);E(this,"_changeToOffsetX",0);E(this,"_changeToOffsetY",0);E(this,"_activeViewport",null);E(this,"_freezeNormalHeaderColor","");E(this,"_freezeNormalMainColor","");E(this,"_freezeActiveColor","");E(this,"_freezeHoverColor","");E(this,"_lastFreeze");E(this,"interceptor",new a.InterceptorManager({FREEZE_PERMISSION_CHECK:kn}));this._context=e,this._sheetSkeletonManagerService=t,this._commandService=r,this._selectionManagerService=i,this._scrollManagerService=s,this._themeService=l,this._sheetInterceptorService=c,this._injector=d,this._initialize()}dispose(){super.dispose()}_initialize(){this._skeletonListener(),this._commandExecutedListener(),this._themeChangeListener(),this._interceptorCommands(),this._bindViewportScroll(),this._zoomRefresh()}_createFreeze(e=0,t){var x;const r=t!=null?t:this._getFreeze();if(r==null)return null;const i=(x=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:x.skeleton,{startRow:s,startColumn:l}=r,c=this._getPositionByIndex(s,l);if(c==null||i==null)return null;const d=this._getSheetObject(),u=d.engine,h=(u==null?void 0:u.width)||0,g=(u==null?void 0:u.height)||0,S=d.scene,{startX:f,startY:p}=c,{rowTotalHeight:v,columnTotalWidth:C,rowHeaderWidthAndMarginLeft:b,columnHeaderHeightAndMarginTop:R}=i,w=h>C+b?h:C+R,P=g>v+R?g:v+R;this._changeToRow=s,this._changeToColumn=l,this._changeToOffsetX=f,this._changeToOffsetY=p;const y=Math.max(S.scaleX,S.scaleY);let M=Zo/Math.max(1,y);if(e===0){(s===-1||s===0)&&(M=M*2);const A=M;this._rowFreezeHeaderRect=new T.Rect(jm,{fill:this._freezeNormalHeaderColor,width:b,height:M,left:0,top:p-A,zIndex:3});let D=this._freezeNormalHeaderColor;(s===-1||s===0)&&(D=this._freezeNormalMainColor),this._rowFreezeMainRect=new T.Rect(Fm,{fill:D,width:w*2/y,height:M,left:b,top:p-A,zIndex:3}),S.addObjects([this._rowFreezeHeaderRect,this._rowFreezeMainRect],ht)}else{(l===-1||l===0)&&(M=M*2);const A=M;this._columnFreezeHeaderRect=new T.Rect(Xm,{fill:this._freezeNormalHeaderColor,width:M,height:R,left:f-A,top:0,zIndex:3});let D=this._freezeNormalHeaderColor;(l===-1||l===0)&&(D=this._freezeNormalMainColor),this._columnFreezeMainRect=new T.Rect(zm,{fill:D,width:M,height:P*2/y,left:f-A,top:R,zIndex:3}),S.addObjects([this._columnFreezeHeaderRect,this._columnFreezeMainRect],ht)}this._eventBinding(e)}_eventBinding(e=0){let t=this._rowFreezeHeaderRect,r=this._rowFreezeMainRect;e===1&&(t=this._columnFreezeHeaderRect,r=this._columnFreezeMainRect);const i=this._getSheetObject();if(i==null)return;const{scene:s}=i;if(this._freezePointerEnterSubs=new O.Subscription,this._freezePointerLeaveSubs=new O.Subscription,this._freezeDownSubs=new O.Subscription,r){const d=r.onPointerEnter$.subscribeEvent(()=>{if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;t==null||t.setProps({fill:this._freezeHoverColor,zIndex:4}),s.setCursor(T.CURSOR_TYPE.GRAB)});this._freezePointerEnterSubs.add(d);const u=r.onPointerLeave$.subscribeEvent(()=>{t==null||t.setProps({fill:this._freezeNormalHeaderColor,zIndex:3}),s.resetCursor()});this._freezePointerLeaveSubs.add(u)}if(t){const d=t.onPointerEnter$.subscribeEvent(()=>{if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;t==null||t.setProps({fill:this._freezeHoverColor,zIndex:4}),s.setCursor(T.CURSOR_TYPE.GRAB)});this._freezePointerEnterSubs.add(d);const u=t.onPointerLeave$.subscribeEvent(()=>{t==null||t.setProps({fill:this._freezeNormalHeaderColor,zIndex:3}),s.resetCursor()});this._freezePointerLeaveSubs.add(u)}const l=t==null?void 0:t.onPointerDown$.subscribeEvent(d=>{this._freezeDown(d,t,r,e)});l&&this._freezeDownSubs.add(l);const c=r==null?void 0:r.onPointerDown$.subscribeEvent(d=>{this._freezeDown(d,t,r,e)});c&&this._freezeDownSubs.add(c)}_getCurrentLastVisible(){var C,b,R,w,P,y,M;const e=this._getSheetObject();if(e==null)return;const t=(C=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:C.skeleton;if(t==null)return;const r=e.scene,i=Math.max(r.scaleX,r.scaleY),s=this._scrollManagerService.getCurrentScrollState(),l=(e.engine.height-t.columnHeaderHeight)/i,c=(e.engine.width-t.rowHeaderWidth)/i,d=(b=s==null?void 0:s.sheetViewStartRow)!=null?b:0,u=d===0?-((R=s==null?void 0:s.offsetY)!=null?R:0):t.rowHeightAccumulation[d-1]-((w=s==null?void 0:s.offsetY)!=null?w:0);let h=0,g=!1;for(let x=d,A=t.rowHeightAccumulation.length;x<A;x++)if(t.rowHeightAccumulation[x]-u>l){h=x,g=!0;break}g||(h=t.rowHeightAccumulation.length-1);const S=(P=s==null?void 0:s.sheetViewStartColumn)!=null?P:0,f=S===0?-((y=s==null?void 0:s.offsetX)!=null?y:0):t.columnWidthAccumulation[S-1]-((M=s==null?void 0:s.offsetX)!=null?M:0);let p=0,v=!1;for(let x=S,A=t.columnWidthAccumulation.length;x<A;x++)if(t.columnWidthAccumulation[x]-f>c){p=x,v=!0;break}return v||(p=t.columnWidthAccumulation.length-1),{lastRow:h,lastColumn:p}}_getActiveViewport(e){var r;const t=(r=this._getSheetObject())==null?void 0:r.scene.getViewports();return t&&t.find(i=>i.isHit(new T.Vector2(e.offsetX,e.offsetY)))||null}_freezeDown(e,t,r,i=0){var f;const s=(f=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:f.skeleton;if(s==null)return;const l=this._getSheetObject();if(l==null)return;if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;const{scene:d}=l;d.setCursor(T.CURSOR_TYPE.GRABBING),d.disableObjectsEvent();const u=this._getCurrentLastVisible(),h=u===void 0?Number.POSITIVE_INFINITY:s.rowHeightAccumulation[u.lastRow],g=u===void 0?Number.POSITIVE_INFINITY:s.columnWidthAccumulation[u.lastColumn-1]+s.rowHeaderWidth;this._activeViewport=null;const S=this._getFreeze();S&&(this._changeToColumn=S.startColumn,this._changeToRow=S.startRow),this._scenePointerMoveSub=d.onPointerMove$.subscribeEvent(p=>{var M,x,A,D;const v=this._getActiveViewport(p),{startX:C,startY:b,row:R,column:w}=ze(p.offsetX,p.offsetY,d,s,v||void 0,!0);if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;d.setCursor(T.CURSOR_TYPE.GRABBING);const y=Zo/Math.max(d.scaleX,d.scaleY);i===0?((M=t.transformByState({top:Math.min(b,h)-y/2}))==null||M.setProps({fill:this._freezeActiveColor}),(x=r.transformByState({top:Math.min(b,h)-y/2}))==null||x.setProps({fill:this._freezeNormalHeaderColor}),this._changeToRow=u===void 0?R:Math.min(R,u.lastRow),this._changeToOffsetY=Math.min(b,h),this._activeViewport=v):((A=t.transformByState({left:Math.min(C,g)-y/2}))==null||A.setProps({fill:this._freezeActiveColor}),(D=r.transformByState({left:Math.min(C,g)-y/2}))==null||D.setProps({fill:this._freezeNormalHeaderColor}),this._changeToColumn=u===void 0?w:Math.min(w,u.lastColumn),this._changeToOffsetX=C,this._activeViewport=v)}),this._scenePointerUpSub=d.onPointerUp$.subscribeEvent(()=>{var k,V;d.resetCursor(),d.enableObjectsEvent(),this._clearObserverEvent();const{rowHeaderWidthAndMarginLeft:p,columnHeaderHeightAndMarginTop:v}=s;i===0&&(this._changeToRow===0||this._changeToRow===-1)||i===1&&(this._changeToColumn===0||this._changeToColumn===-1)?(t.setProps({fill:this._freezeNormalHeaderColor}),r.setProps({fill:this._freezeNormalMainColor})):(t==null||t.setProps({fill:this._freezeNormalHeaderColor}),r==null||r.setProps({fill:this._freezeNormalHeaderColor}));const C=Zo/Math.max(d.scaleX,d.scaleY);i===0?(this._changeToRow===0||this._changeToRow===-1)&&(t.transformByState({top:v-C}),r.transformByState({top:v-C})):(this._changeToColumn===0||this._changeToColumn===-1)&&(t.transformByState({left:p-C}),r.transformByState({left:p-C}));const b=this._scrollManagerService.getCurrentScrollState()||{sheetViewStartRow:0,sheetViewStartColumn:0},{sheetViewStartRow:R,sheetViewStartColumn:w}=b;if(w==null||R==null)return;const P=this._context.unit,y=P.getActiveSheet();if(!y)return;const M=(k=y.getConfig())==null?void 0:k.freeze;let x=(M==null?void 0:M.xSplit)||0,A=(M==null?void 0:M.ySplit)||0;const D=(V=this._activeViewport)==null?void 0:V.viewportKey;i===0&&(!D||D===T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_ROW_TOP?A=this._changeToRow-(M.startRow-M.ySplit):A=this._changeToRow-R,A=A<0?0:A),i===1&&(!D||D===T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT||D===T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT?x=this._changeToColumn-(M.startColumn-M.xSplit):x=this._changeToColumn-w,x=x<0?0:x),this._commandService.executeCommand(m.SetFrozenCommand.id,{startRow:A===0?-1:this._changeToRow,startColumn:x===0?-1:this._changeToColumn,ySplit:A,xSplit:x,unitId:P.getUnitId(),subUnitId:y.getSheetId()})})}_getViewports(){const e=this._getSheetObject();if(e==null)return;const{scene:t}=e,r=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT),i=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_RIGHT),s=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_TOP),l=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_BOTTOM),c=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP),d=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN),u=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP),h=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT),g=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP);if(!(r==null||i==null||s==null||l==null||c==null||d==null||u==null||h==null||g==null))return{viewMain:d,viewMainLeftTop:u,viewMainLeft:h,viewMainTop:g,viewColumnLeft:r,viewColumnRight:i,viewRowTop:s,viewRowBottom:l,viewLeftTop:c}}_bindViewportScroll(){const e=this._getViewports();if(!e)return;const{viewRowBottom:t,viewColumnRight:r,viewMainLeft:i,viewMainTop:s}=e;this.disposeWithMe(this._scrollManagerService.validViewportScrollInfo$.subscribe(l=>{if(!l)return;const{scrollX:c,scrollY:d,viewportScrollX:u,viewportScrollY:h}=l;t.isActive&&t.updateScrollVal({scrollY:d,viewportScrollY:h}),r.isActive&&r.updateScrollVal({scrollX:c,viewportScrollX:u}),i.isActive&&i.updateScrollVal({scrollY:d,viewportScrollY:h}),s.isActive&&s.updateScrollVal({scrollX:c,viewportScrollX:u})}))}_updateViewport(e=-1,t=-1,r=0,i=0,s=3){var x;const l=(x=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:x.skeleton;if(l==null)return;const{rowHeaderWidthAndMarginLeft:c,columnHeaderHeightAndMarginTop:d}=l,u=this._getViewports();if(!u)return;const{viewMain:h,viewMainLeftTop:g,viewMainLeft:S,viewMainTop:f,viewColumnLeft:p,viewColumnRight:v,viewRowTop:C,viewRowBottom:b,viewLeftTop:R}=u;v.resizeWhenFreezeChange({left:c,top:0,height:d+1,right:0}),b.resizeWhenFreezeChange({left:0,top:d,bottom:0,width:c+1}),R.resizeWhenFreezeChange({left:0,top:0,width:c+1,height:d});let w=!0,P=!0;g.enable(),(e===-1||e===0)&&(w=!1),(t===-1||t===0)&&(P=!1);const y=l.getNoMergeCellWithCoordByIndex(e-r,t-i,!1),M=l.getNoMergeCellWithCoordByIndex(e,t,!1);if(g.disable(),f.disable(),S.disable(),C.disable(),p.disable(),g.resetPadding(),f.resetPadding(),S.resetPadding(),C.resetPadding(),p.resetPadding(),w===!1&&P===!1)h.resizeWhenFreezeChange({left:c,top:d,bottom:0,right:0}),h.resetPadding(),S.resizeWhenFreezeChange({left:c,top:d,bottom:0,width:0}),f.resizeWhenFreezeChange({left:c,top:d,height:0,right:0}),g.resizeWhenFreezeChange({left:c,top:d,width:0,height:0}),C.resizeWhenFreezeChange({left:0,top:d,width:c+1,height:0}),p.resizeWhenFreezeChange({left:0,top:0,height:d+1,width:0});else if(w===!0&&P===!1){const A=M.startY-y.startY;h.resizeWhenFreezeChange({left:c,top:d+A,bottom:0,right:0}),h.setPadding({startY:y.startY,endY:M.startY,startX:0,endX:0}),s&2&&this._commandService.executeCommand(Ue.id,{sheetViewStartRow:0,offsetY:0}),f.resizeWhenFreezeChange({left:c,top:d,height:A,right:0}),f.updateScrollVal({viewportScrollY:y.startY,rawScrollX:h.scrollX,viewportScrollX:h.viewportScrollX}),C.resizeWhenFreezeChange({left:0,top:d,width:c+1,height:A}),C.updateScrollVal({viewportScrollY:y.startY}),b.resizeWhenFreezeChange({left:0,top:d+A,bottom:0,width:c+1}),f.enable(),C.enable()}else if(w===!1&&P===!0){const A=M.startX-y.startX;h.resizeWhenFreezeChange({left:c+A,top:d,bottom:0,right:0}),h.setPadding({startX:y.startX,endX:M.startX,startY:0,endY:0}),s&1&&this._commandService.executeCommand(Ue.id,{sheetViewStartColumn:0,offsetX:0}),S.resizeWhenFreezeChange({left:c,top:d,width:A,bottom:0,right:0}),S.updateScrollVal({viewportScrollX:y.startX,rawScrollY:h.scrollY,viewportScrollY:h.viewportScrollY}),p.resizeWhenFreezeChange({left:c,top:0,width:A,height:d+1}),p.updateScrollVal({viewportScrollX:y.startX}),v.resizeWhenFreezeChange({left:c+A,top:0,height:d+1,right:0}),S.enable(),p.enable()}else{const A=M.startX-y.startX,D=M.startY-y.startY;h.resizeWhenFreezeChange({left:c+A,top:d+D,bottom:0,right:0}),h.setPadding({startY:y.startY,endY:M.startY,startX:y.startX,endX:M.startX}),s&&this._commandService.executeCommand(Ue.id,{...s&1?{sheetViewStartColumn:0,offsetX:0}:null,...s&2?{sheetViewStartRow:0,offsetY:0}:null}),S.resizeWhenFreezeChange({left:c,top:d+D,width:A,bottom:0}),S.updateScrollVal({viewportScrollX:y.startX,rawScrollY:h.scrollY,viewportScrollY:h.viewportScrollY}),f.resizeWhenFreezeChange({left:c+A,top:d,height:D,right:0}),f.updateScrollVal({viewportScrollY:y.startY,rawScrollX:h.scrollX,viewportScrollX:h.viewportScrollX}),g.resizeWhenFreezeChange({left:c,top:d,width:A,height:D}),g.updateScrollVal({viewportScrollX:y.startX,viewportScrollY:y.startY}),C.resizeWhenFreezeChange({left:0,top:d,width:c+1,height:D}),C.updateScrollVal({viewportScrollY:y.startY}),b.resizeWhenFreezeChange({left:0,top:d+D,bottom:0,width:c+1}),p.resizeWhenFreezeChange({left:c,top:0,width:A,height:d+1}),p.updateScrollVal({viewportScrollX:y.startX}),v.resizeWhenFreezeChange({left:c+A,top:0,height:d+1,right:0}),g.enable(),f.enable(),S.enable(),C.enable(),p.enable()}}_skeletonListener(){this.disposeWithMe(a.toDisposable(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(e=>{[m.SetWorksheetActiveOperation.id,m.InsertRangeMoveDownCommand.id,m.InsertRangeMoveRightCommand.id].includes((e==null?void 0:e.commandId)||"")&&this._refreshCurrent()})))}_refreshCurrent(){const t=this._context.unit.getActiveSheet();if(!t)return;const r=t.getConfig().freeze,{startRow:i=-1,startColumn:s=-1,ySplit:l=0,xSplit:c=0}=r;this._refreshFreeze(i,s,l,c,0)}_themeChangeListener(){this._themeChange(this._themeService.getCurrentTheme()),this.disposeWithMe(this._themeService.currentTheme$.subscribe(e=>{this._clearFreeze(),this._themeChange(e),this._refreshCurrent()}))}_themeChange(e){this._freezeNormalHeaderColor=a.get(e,"gray.300"),this._freezeNormalMainColor=new a.ColorKit(this._freezeNormalHeaderColor).setAlpha(Ym).toRgbString(),this._freezeActiveColor=a.get(e,"primary.600"),this._freezeHoverColor=a.get(e,"gray.500")}_interceptorCommands(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{const t={redos:[],undos:[]},r=this._getFreeze();if(!r)return t;const i=s=>{const l=this._context.unit,c=l.getUnitId(),d=l.getActiveSheet();if(!d)return t;const u=d.getSheetId();this._refreshFreeze(s.startRow,s.startColumn,s.ySplit,s.xSplit,0);const h={...s,unitId:c,subUnitId:u,resetScroll:!1},g=m.SetFrozenMutationFactory(this._injector,h);return{undos:[{id:m.SetFrozenMutation.id,params:g}],redos:[{id:m.SetFrozenMutation.id,params:h}]}};if(e.id===m.InsertRowCommand.id){const s=e.params,{range:l,direction:c}=s,d=l.endRow-l.startRow+1;if(l.startRow+1<r.startRow||l.startRow+1===r.startRow&&c===a.Direction.UP){const u={...r,startRow:Math.max(1,r.startRow+d),ySplit:Math.max(1,r.ySplit+d)};return i(u)}}if(e.id===m.InsertColCommand.id){const s=e.params,{range:l,direction:c}=s,d=l.endColumn-l.startColumn+1;if(l.startColumn+1<r.startColumn||l.startColumn+1===r.startColumn&&c===a.Direction.LEFT){const u={...r,startColumn:Math.max(1,r.startColumn+d),xSplit:Math.max(1,r.xSplit+d)};return i(u)}}if(e.id===m.MoveColsCommand.id){const s=this._selectionManagerService.getCurrentSelections(),{fromRange:{startColumn:l},toRange:{startColumn:c}}=e.params,d=s==null?void 0:s.filter(C=>C.range.rangeType===a.RANGE_TYPE.COLUMN&&C.range.startColumn<=l&&l<=C.range.endColumn);if(!(d!=null&&d.length))return t;const u=d[0].range,h={...u,startColumn:c,endColumn:c+u.endColumn-u.startColumn};if(!r||r.startColumn<=0||u.startColumn>=r.startColumn&&h.startColumn>=r.startColumn||u.startColumn===h.startColumn||u.endColumn<r.startColumn&&h.startColumn<r.startColumn)return t;const g=u.endColumn-u.startColumn+1,S=Math.max(Math.min(r.startColumn,u.endColumn+1)-u.startColumn,0);let f,p;h.startColumn>=r.startColumn?(f=Math.max(r.startColumn-S,1),p=Math.max(r.xSplit-S,1)):(f=r.startColumn+g-S,p=r.xSplit+g-S);const v={...r,startColumn:f,xSplit:p};return i(v)}if(e.id===m.MoveRowsCommand.id){const s=this._selectionManagerService.getCurrentSelections(),{fromRange:{startRow:l},toRange:{startRow:c}}=e.params,d=s==null?void 0:s.filter(C=>C.range.rangeType===a.RANGE_TYPE.ROW&&C.range.startRow<=l&&l<=C.range.endRow);if(!(d!=null&&d.length))return t;const u=d[0].range,h={...u,startRow:c,endRow:c+u.endRow-u.startRow};if(!r||r.startRow<=0||u.startRow>=r.startRow&&h.startRow>=r.startRow||u.startRow===h.startRow||u.endRow<r.startRow&&h.startRow<r.startRow)return t;const g=u.endRow-u.startRow+1,S=Math.max(Math.min(r.startRow,u.endRow+1)-u.startRow,0);let f,p;h.startRow>=r.startRow?(f=Math.max(r.startRow-S,1),p=Math.max(r.ySplit-S,1)):(f=r.startRow+g-S,p=r.ySplit+g-S);const v={...r,startRow:f,ySplit:p};return i(v)}if(e.id===m.RemoveColCommand.id||e.id===m.RemoveRowCommand.id){const s=e.params,l=s.range;if(l.rangeType===a.RANGE_TYPE.COLUMN&&l.startColumn<r.startColumn){const c=Math.min(r.startColumn,l.endColumn+1)-l.startColumn,d={...r,startColumn:Math.max(1,r.startColumn-c),xSplit:Math.max(1,r.xSplit-c)};return i(d)}if(s.range.rangeType===a.RANGE_TYPE.ROW&&l.startRow<r.startRow){const c=Math.min(r.startRow,l.endRow+1)-l.startRow,d={...r,startRow:Math.max(1,r.startRow-c),ySplit:Math.max(1,r.ySplit-c)};return i(d)}}return t}}))}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{switch(e.id){case m.SetFrozenMutation.id:case ke.id:{const t=this._lastFreeze,r=this._context.unit,i=r.getActiveSheet(),s=e.params,{unitId:l,subUnitId:c}=s;if(!(l===r.getUnitId()&&c===(i==null?void 0:i.getSheetId())))return;const d=i.getConfig().freeze;if(this._lastFreeze=d,d==null)return;let u=0;const{startRow:h=-1,startColumn:g=-1,ySplit:S=0,xSplit:f=0}=d;(!t||t.startRow!==h||t.ySplit!==S)&&(u|=2),(!t||t.startColumn!==g||t.xSplit!==f)&&(u|=1),s.resetScroll===!1&&(u=0),this._refreshFreeze(h,g,S,f,u)}break;case m.SetWorksheetRowHeightMutation.id:{const t=this._getFreeze(),r=t&&e.params.ranges.some(i=>i.startRow<t.startRow);e.params&&r&&this._refreshCurrent()}break;case m.SetWorksheetColWidthMutation.id:{const t=this._getFreeze();e.params&&t&&e.params.ranges.some(r=>r.startColumn<t.startColumn)&&this._refreshCurrent()}break;case m.SetWorksheetRowAutoHeightMutation.id:{const t=e.params,r=this._getFreeze();if(r&&r.startRow>-1&&t.rowsAutoHeightInfo.some(i=>i.row<r.startRow)){const i=this._sheetSkeletonManagerService.currentSkeleton$.subscribe(()=>{this._refreshCurrent(),setTimeout(()=>{i.unsubscribe()})})}}break;case m.SetColHiddenMutation.id:case m.SetColVisibleMutation.id:{const t=e.params,r=this._getFreeze(),i=t.ranges;r&&r.startColumn>-1&&i.some(s=>s.startColumn<r.startColumn)&&this._refreshCurrent()}break;case m.SetRowHiddenMutation.id:case m.SetRowVisibleMutation.id:{const t=e.params,r=this._getFreeze(),i=t.ranges;r&&r.startRow>-1&&i.some(s=>s.startRow<r.startRow)&&this._refreshCurrent()}break;case Ro.id:case wo.id:this._refreshCurrent()}}))}_zoomRefresh(){const e=this._getSheetObject();if(e==null)return;const{scene:t}=e;this.disposeWithMe(t.onTransformChange$.subscribeEvent(r=>{[T.TRANSFORM_CHANGE_OBSERVABLE_TYPE.scale,T.TRANSFORM_CHANGE_OBSERVABLE_TYPE.all].includes(r.type)&&this._refreshCurrent()}))}_clearObserverEvent(){var t,r;this._getSheetObject()!=null&&((t=this._scenePointerMoveSub)==null||t.unsubscribe(),(r=this._scenePointerUpSub)==null||r.unsubscribe(),this._scenePointerMoveSub=null,this._scenePointerUpSub=null)}_clearFreeze(){var t,r,i,s,l,c;(t=this._rowFreezeHeaderRect)==null||t.dispose(),(r=this._rowFreezeMainRect)==null||r.dispose(),(i=this._columnFreezeHeaderRect)==null||i.dispose(),(s=this._columnFreezeMainRect)==null||s.dispose(),this._getSheetObject()!=null&&([this._freezeDownSubs,this._freezePointerEnterSubs,this._freezePointerLeaveSubs].forEach(d=>{d==null||d.unsubscribe()}),this._freezeDownSubs=null,this._freezePointerEnterSubs=null,this._freezePointerLeaveSubs=null,(l=this._scenePointerMoveSub)==null||l.unsubscribe(),(c=this._scenePointerUpSub)==null||c.unsubscribe(),this._scenePointerMoveSub=null,this._scenePointerUpSub=null)}_getPositionByIndex(e,t){var d;if(this._getSheetObject()==null)return;const i=(d=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:d.skeleton,s=i==null?void 0:i.getNoMergeCellWithCoordByIndex(e,t);if(i==null)return;if(s!=null&&(!isNaN(s.endX)||!isNaN(s.endY)))return s;const{rowHeaderWidthAndMarginLeft:l,columnHeaderHeightAndMarginTop:c}=i;return{startX:l,endX:l,startY:c,endY:c}}_getFreeze(){var t;const e=(t=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:t.skeleton.getWorksheetConfig();if(e!=null)return e.freeze}_getSheetObject(){return Ne(this._context.unit,this._context)}_refreshFreeze(e,t,r,i,s){var c;const l={startRow:e,startColumn:t,ySplit:r,xSplit:i};this._clearFreeze(),this._createFreeze(0,l),this._createFreeze(1,l),this._updateViewport(e,t,r,i,s),(c=this._getSheetObject())==null||c.spreadsheet.makeForceDirty()}};exports.HeaderFreezeRenderController=Bm([Rt(1,a.Inject(exports.SheetSkeletonManagerService)),Rt(2,a.ICommandService),Rt(3,a.Inject(m.SheetsSelectionsService)),Rt(4,a.Inject(exports.SheetScrollManagerService)),Rt(5,a.Inject(a.ThemeService)),Rt(6,a.Inject(m.SheetInterceptorService)),Rt(7,a.Inject(a.Injector))],exports.HeaderFreezeRenderController);function Gm(n){const o=n.get(m.SheetsSelectionsService),e=n.get(m.RangeProtectionRuleModel),t=n.get(a.IUniverInstanceService),r=n.get(m.MergeCellController),i=t.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET);return O.combineLatest([o.selectionMoveEnd$,i.pipe(O.map(s=>{var l;return(l=s==null?void 0:s.getUnitId())!=null?l:""})),i.pipe(O.switchMap(s=>{var l;return(l=s==null?void 0:s.activeSheet$)!=null?l:O.of(null)}))]).pipe(O.map(([s,l,c])=>{if(!c||!s||s.length===0)return!1;const d=c.getSheetId(),u=s.map(S=>S.range);if(r.interceptor.fetchThroughInterceptors(m.MERGE_CELL_INTERCEPTOR_CHECK)(!1,u))return!0;const g=e.getSubunitRuleList(l,d).map(S=>S.ranges).flat();if(s.length<2){const S=s[0].range;return g.some(p=>a.Rectangle.intersects(p,S)&&!a.Rectangle.contains(p,S))}for(let S=0;S<s.length;S++)for(let f=S+1;f<s.length;f++)if(a.Rectangle.intersects(s[S].range,s[f].range))return!0;return!1}))}function Ml(n,o){return!!Qn(n,o,a.RANGE_TYPE.ROW)}function Pl(n,o){return!!Qn(n,o,a.RANGE_TYPE.COLUMN)}function Qn(n,o,e){return n.find(r=>{const i=r.range,{startRow:s,endRow:l,startColumn:c,endColumn:d,rangeType:u}=i;return u===a.RANGE_TYPE.ALL||u===a.RANGE_TYPE.NORMAL?!1:u===e&&(e===a.RANGE_TYPE.COLUMN&&c<=o&&o<=d||e===a.RANGE_TYPE.ROW&&s<=o&&o<=l)})}var Zm=Object.getOwnPropertyDescriptor,Km=(n,o,e,t)=>{for(var r=t>1?void 0:t?Zm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Ko=(n,o)=>(e,t)=>o(e,t,n);const qm="__SpreadsheetHeaderMoveControllerBackground__",Qm="__SpreadsheetHeaderMoveControllerShapeLine__",Jm="rgba(0, 0, 0, 0.1)",$m="rgb(119, 119, 119)",eg=4,qo=a.createInterceptorKey("headerMovePermissionCheck");exports.HeaderMoveRenderController=class extends a.Disposable{constructor(e,t,r,i){super();E(this,"_startOffsetX",Number.NEGATIVE_INFINITY);E(this,"_startOffsetY",Number.NEGATIVE_INFINITY);E(this,"_moveHelperBackgroundShape");E(this,"_moveHelperLineShape");E(this,"_headerPointerDownSubs");E(this,"_headerPointerMoveSubs");E(this,"_headerPointerLeaveSubs");E(this,"_dragHeaderMoveSub");E(this,"_scenePointerUpSub");E(this,"_scrollTimer");E(this,"_changeFromColumn",-1);E(this,"_changeFromRow",-1);E(this,"_changeToColumn",-1);E(this,"_changeToRow",-1);E(this,"interceptor",new a.InterceptorManager({HEADER_MOVE_PERMISSION_CHECK:qo}));E(this,"_workbookSelections");this._context=e,this._sheetSkeletonManagerService=r,this._commandService=i,this._workbookSelections=t.getWorkbookSelections(this._context.unitId),this._init()}dispose(){var e,t,r,i,s,l,c,d;(e=this._moveHelperBackgroundShape)==null||e.dispose(),(t=this._moveHelperLineShape)==null||t.dispose(),(r=this._headerPointerMoveSubs)==null||r.unsubscribe(),(i=this._headerPointerLeaveSubs)==null||i.unsubscribe(),(s=this._headerPointerDownSubs)==null||s.unsubscribe(),this._headerPointerMoveSubs=null,this._headerPointerLeaveSubs=null,this._headerPointerDownSubs=null,(l=this._dragHeaderMoveSub)==null||l.unsubscribe(),(c=this._scenePointerUpSub)==null||c.unsubscribe(),this._dragHeaderMoveSub=null,this._scenePointerUpSub=null,(d=this._scrollTimer)==null||d.dispose()}_init(){this._initialRowOrColumn(a.RANGE_TYPE.ROW),this._initialRowOrColumn(a.RANGE_TYPE.COLUMN)}_initialRowOrColumn(e=a.RANGE_TYPE.ROW){const t=this._context.components.get(ue.COLUMN),r=this._context.components.get(ue.ROW),i=this._context.scene,s=e===a.RANGE_TYPE.ROW?r:t,l=u=>{var b,R;const h=(b=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:b.skeleton;if(h==null)return;const g=(R=this._workbookSelections.getCurrentLastSelection())==null?void 0:R.range;if(!g||!this.interceptor.fetchThroughInterceptors(qo)(!1,g))return;const f=this._workbookSelections.getCurrentSelections(),{row:p,column:v}=ze(u.offsetX,u.offsetY,i,h);if(!Qn(f,e===a.RANGE_TYPE.ROW?p:v,e)){i.resetCursor();return}i.setCursor(T.CURSOR_TYPE.GRAB)},c=()=>{var u,h;(u=this._moveHelperBackgroundShape)==null||u.hide(),(h=this._moveHelperLineShape)==null||h.hide(),i.resetCursor()},d=(u,h)=>{var W,N;if(h.isStopPropagation)return;const g=(W=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:W.skeleton;if(g==null)return;const S=(N=this._workbookSelections.getCurrentLastSelection())==null?void 0:N.range;if(!S||!this.interceptor.fetchThroughInterceptors(qo)(!1,S))return;const{offsetX:p,offsetY:v}=u,C=i.getCoordRelativeToViewport(T.Vector2.FromArray([p,v])),{x:b,y:R}=C;this._startOffsetX=b,this._startOffsetY=R;const{row:w,column:P}=ze(u.offsetX,u.offsetY,i,g);let y;e===a.RANGE_TYPE.ROW?(this._changeFromRow=w,y=T.ScrollTimerType.Y):(this._changeFromColumn=P,y=T.ScrollTimerType.X);const M=this._workbookSelections.getCurrentSelections(),x=Qn(M,e===a.RANGE_TYPE.ROW?w:P,e);if(!x)return;const A=i.getScrollXYInfoByViewport(T.Vector2.FromArray([this._startOffsetX,this._startOffsetY]));this._newBackgroundAndLine(),i.setCursor(T.CURSOR_TYPE.GRABBING),i.disableObjectsEvent();let D=!1,k;const V=()=>{if(D)return;k=T.ScrollTimer.create(i,y),this._scrollTimer=k;const U=i.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN);k.startScroll(b,R,U),D=!0};this._dragHeaderMoveSub=i.onPointerMove$.subscribeEvent(U=>{V();const{offsetX:L,offsetY:z}=U,{x:B,y:F}=i.getCoordRelativeToViewport(T.Vector2.FromArray([L,z]));this._rowColumnMoving(B,F,x,A,e),k.scrolling(B,F,()=>{this._rowColumnMoving(B,F,x,A,e)})}),this._scenePointerUpSub=i.onPointerUp$.subscribeEvent(()=>{var L,z,B;this._disposeBackgroundAndLine(),i.resetCursor(),i.enableObjectsEvent(),this._clearObserverEvent(),(L=this._scrollTimer)==null||L.dispose();const U=this._workbookSelections.getCurrentSelections();if(e===a.RANGE_TYPE.ROW){if(this._changeFromRow!==this._changeToRow&&this._changeToRow!==-1){const X=(z=((U==null?void 0:U.filter(K=>K.range.rangeType===a.RANGE_TYPE.ROW&&K.range.startRow<=this._changeFromRow&&this._changeFromRow<=K.range.endRow))||[])[0])==null?void 0:z.range;X&&this._commandService.executeCommand(m.MoveRowsCommand.id,{fromRange:X,toRange:{...X,startRow:this._changeToRow,endRow:this._changeToRow+X.endRow-X.startRow}})}this._changeToRow=this._changeFromRow=-1}else{if(this._changeFromColumn!==this._changeToColumn&&this._changeToColumn!==-1){const X=(B=((U==null?void 0:U.filter(K=>K.range.rangeType===a.RANGE_TYPE.COLUMN&&K.range.startColumn<=this._changeFromColumn&&this._changeFromColumn<=K.range.endColumn))||[])[0])==null?void 0:B.range;X&&this._commandService.executeCommand(m.MoveColsCommand.id,{fromRange:X,toRange:{...X,startColumn:this._changeToColumn,endColumn:this._changeToColumn+X.endColumn-X.startColumn}})}this._changeToColumn=this._changeFromColumn=-1}})};this._headerPointerMoveSubs=new O.Subscription,this._headerPointerMoveSubs.add(s.onPointerMove$.subscribeEvent(l)),this._headerPointerLeaveSubs=new O.Subscription,this._headerPointerLeaveSubs.add(s==null?void 0:s.onPointerLeave$.subscribeEvent(c)),this._headerPointerDownSubs=new O.Subscription,this._headerPointerDownSubs.add(s==null?void 0:s.onPointerDown$.subscribeEvent(d))}_rowColumnMoving(e,t,r,i,s){var F,X,K,te,Q,ie,G;const l=this._context.scene,c=(F=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:F.skeleton;if(c==null)return;const{rowHeaderWidth:d,columnHeaderHeight:u,rowTotalHeight:h,columnTotalWidth:g}=c,S=l.getViewportScrollXY(l.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN)),{scaleX:f,scaleY:p}=l.getAncestorScale(),v=c.getCellIndexByOffset(e,t,f,p,S),{row:C,column:b}=v,R=c.getNoMergeCellWithCoordByIndex(C,b),{startX:w,startY:P,endX:y,endY:M}=R,x=this._sheetSkeletonManagerService.attachRangeWithCoord(r.range);if(x==null)return;const A=Math.max(f,f),{startX:D,endX:k,startY:V,endY:W,startRow:N,startColumn:U,endRow:L,endColumn:z}=x;s===a.RANGE_TYPE.ROW?(X=this._moveHelperBackgroundShape)==null||X.transformByState({height:W-V,width:g+d,left:0,top:V+(t-this._startOffsetY)/A+S.y-i.y}):(K=this._moveHelperBackgroundShape)==null||K.transformByState({height:h+u,width:k-D,left:D+(e-this._startOffsetX)/A+S.x-i.x,top:0}),(te=this._moveHelperBackgroundShape)==null||te.show();const B=eg/A;if(s===a.RANGE_TYPE.ROW){let Y=0;if(C<=N)Y=P-B/2,this._changeToRow=C;else if(C>L)Y=M-B/2,this._changeToRow=C+1;else return;(Q=this._moveHelperLineShape)==null||Q.transformByState({height:B,width:g,left:d,top:Y})}else{let Y=0;if(b<=U)Y=w-B/2,this._changeToColumn=b;else if(b>z)Y=y-B/2,this._changeToColumn=b+1;else return;(ie=this._moveHelperLineShape)==null||ie.transformByState({height:h,width:B,left:Y,top:u})}(G=this._moveHelperLineShape)==null||G.show()}_clearObserverEvent(){var e,t;(e=this._dragHeaderMoveSub)==null||e.unsubscribe(),(t=this._scenePointerUpSub)==null||t.unsubscribe(),this._dragHeaderMoveSub=null,this._scenePointerUpSub=null}_newBackgroundAndLine(){const e=this._context.scene;this._moveHelperBackgroundShape=new T.Rect(qm,{fill:Jm,evented:!1,zIndex:100}),this._moveHelperLineShape=new T.Rect(Qm,{fill:$m,evented:!1,zIndex:100}),e.addObjects([this._moveHelperBackgroundShape,this._moveHelperLineShape],ht)}_disposeBackgroundAndLine(){var e,t;(e=this._moveHelperBackgroundShape)==null||e.dispose(),(t=this._moveHelperLineShape)==null||t.dispose()}};exports.HeaderMoveRenderController=Km([Ko(1,a.Inject(m.SheetsSelectionsService)),Ko(2,a.Inject(exports.SheetSkeletonManagerService)),Ko(3,a.ICommandService)],exports.HeaderMoveRenderController);var Di=(n=>(n[n.VERTICAL=0]="VERTICAL",n[n.HORIZONTAL=1]="HORIZONTAL",n))(Di||{});const tg="rgba(120, 120, 120, 0.01)",Qo="rgb(68, 71, 70)",Fn=12,ng=44,ki=4;class ia extends T.Shape{constructor(e,t){super(e,t);E(this,"_size",Fn);E(this,"_color",Qo);E(this,"_mode",0);this.setShapeProps(t)}get size(){return this._size}get mode(){return this._mode}get color(){return this._color}_draw(e){const t=this.getScene();if(!t)return;const{scaleX:r,scaleY:i}=t.getAncestorScale(),s=Math.max(r,i),l=Fn/s,c=ki/s;let{width:d,height:u}=this,h=0,g=0;this.mode===0?(d=c,h=l-c):(u=c,g=l-c),T.Rect.drawWith(e,{width:this.width,height:this.height,left:0,top:0,fill:tg}),T.Rect.drawWith(e,{width:d,height:u,fill:Qo,radius:c}),e.save(),e.transform(1,0,0,1,h,g),T.Rect.drawWith(e,{width:d,height:u,fill:Qo,radius:c}),e.restore()}setShapeProps(e){return e!=null&&e.size&&(this._size=e.size),e!=null&&e.mode&&(this._mode=e.mode),e!=null&&e.color&&(this._color=e.color),this.mode===0?this.transformByState({width:Fn,height:this.size}):this.transformByState({width:this.size,height:Fn}),this}}var rg=Object.getOwnPropertyDescriptor,og=(n,o,e,t)=>{for(var r=t>1?void 0:t?rg(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Jo=(n,o)=>(e,t)=>o(e,t,n);const ig="__SpreadsheetHeaderResizeControllerShapeRow__",sg="__SpreadsheetHeaderResizeControllerShapeColumn__",sa="__SpreadsheetHeaderResizeControllerShapeHelper__",aa="rgb(199, 199, 199)",ag=2,$o=a.createInterceptorKey("headerResizePermissionCheck");exports.HeaderResizeRenderController=class extends a.Disposable{constructor(e,t,r,i){super();E(this,"_currentRow",0);E(this,"_currentColumn",0);E(this,"_rowResizeRect");E(this,"_columnResizeRect");E(this,"_headerPointerSubs");E(this,"_scenePointerMoveSub");E(this,"_scenePointerUpSub");E(this,"_resizeHelperShape");E(this,"_startOffsetX",Number.POSITIVE_INFINITY);E(this,"_startOffsetY",Number.POSITIVE_INFINITY);E(this,"interceptor",new a.InterceptorManager({HEADER_RESIZE_PERMISSION_CHECK:$o}));this._context=e,this._sheetSkeletonManagerService=t,this._selectionManagerService=r,this._commandService=i,this._init()}dispose(){var e,t,r;(e=this._rowResizeRect)==null||e.dispose(),this._rowResizeRect=null,(t=this._columnResizeRect)==null||t.dispose(),this._columnResizeRect=null,(r=this._headerPointerSubs)==null||r.unsubscribe(),this._headerPointerSubs=null}_init(){const e=this._context.scene;this._rowResizeRect=new ia(ig,{visible:!1,mode:Di.HORIZONTAL,zIndex:100}),this._columnResizeRect=new ia(sg,{visible:!1,mode:Di.VERTICAL,zIndex:100}),e.addObjects([this._rowResizeRect,this._columnResizeRect],ht),this._initialHover(0),this._initialHover(1),this._initialHoverResize(0),this._initialHoverResize(1)}_initialHover(e=0){const t=this._context.components.get(ue.COLUMN),r=this._context.components.get(ue.ROW),i=this._context.scene,s=e===0?r:t,l=(d,u)=>{var h,g;(h=this._rowResizeRect)==null||h.hide(),(g=this._columnResizeRect)==null||g.hide()},c=(d,u)=>{var A;const h=(A=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:A.skeleton;if(h==null||this._rowResizeRect==null||this._columnResizeRect==null)return;const{rowHeaderWidth:g,columnHeaderHeight:S}=h,{startX:f,startY:p,endX:v,endY:C,row:b,column:R}=ze(d.offsetX,d.offsetY,i,h),w=Xn(d.offsetX,d.offsetY,i),{scaleX:P,scaleY:y}=i.getAncestorScale(),M=Math.max(P,y),x=Fn/M;if(e===0){let D=p-x/2;if(w.y<=p+x/2&&w.y>=p)this._currentRow=b-1;else if(w.y>=C-x/2&&w.y<=C)this._currentRow=b,D=C-x/2;else{this._rowResizeRect.hide();return}if(this._currentRow===-1)return;if(!this.interceptor.fetchThroughInterceptors($o)(null,{row:this._currentRow}))return!1;const V=Math.min(ng,g/3);this._rowResizeRect.transformByState({left:g/2-V/2,top:D}),this._rowResizeRect.setShapeProps({size:V}),this._rowResizeRect.show()}else{let D=f-x/2;if(w.x<=f+x/2&&w.x>=f)this._currentColumn=R-1;else if(w.x>=v-x/2&&w.x<=v)this._currentColumn=R,D=v-x/2;else{this._columnResizeRect.hide();return}if(this._currentColumn===-1)return;if(!this.interceptor.fetchThroughInterceptors($o)(null,{col:this._currentColumn}))return!1;const V=S*.7;this._columnResizeRect.transformByState({left:D,top:S/2-V/2}),this._columnResizeRect.setShapeProps({size:V}),this._columnResizeRect.show()}};this._headerPointerSubs=new O.Subscription,this._headerPointerSubs.add(s==null?void 0:s.onPointerMove$.subscribeEvent(c)),this._headerPointerSubs.add(s==null?void 0:s.onPointerLeave$.subscribeEvent(l))}_initialHoverResize(e=0){const t=this._context.scene,r=e===0?this._rowResizeRect:this._columnResizeRect;r!=null&&(this.disposeWithMe(r.onPointerEnter$.subscribeEvent(()=>{r!=null&&(r.show(),t.setCursor(e===0?T.CURSOR_TYPE.ROW_RESIZE:T.CURSOR_TYPE.COLUMN_RESIZE))})),this.disposeWithMe(r.onPointerLeave$.subscribeEvent(()=>{r!=null&&(r.hide(),t.resetCursor())})),this.disposeWithMe(r.onPointerDown$.subscribeEvent(i=>{var z,B,F,X,K,te,Q;const s=(z=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:z.skeleton;if(s==null)return;const l=this._context.scene,c=l.getEngine(),d=(c==null?void 0:c.height)||0,u=(c==null?void 0:c.width)||0,h=l.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN),g=(((F=(B=h==null?void 0:h.getScrollBar())==null?void 0:B.horizonScrollTrack)==null?void 0:F.height)||0)+10,S=(((K=(X=h==null?void 0:h.getScrollBar())==null?void 0:X.verticalScrollTrack)==null?void 0:K.width)||0)+10,f=Xn(i.offsetX,i.offsetY,l),{scaleX:p,scaleY:v}=l.getAncestorScale();this._startOffsetX=f.x,this._startOffsetY=f.y;const C=s.getOffsetByColumn(this._currentColumn),b=s.getOffsetByRow(this._currentRow),R=s.getNoMergeCellWithCoordByIndex(this._currentRow,this._currentColumn);let w=!1,P=0,y=0;const{columnTotalWidth:M,rowHeaderWidth:x,rowTotalHeight:A,columnHeaderHeight:D}=s,k=u>M+x?u:M+x,V=d>A+D?d:A+D,W=Math.max(p,v),N=ki/W;e===0?this._resizeHelperShape=new T.Rect(sa,{width:k,height:N,fill:aa,left:0,top:b-N/2}):this._resizeHelperShape=new T.Rect(sa,{width:N,height:V,fill:aa,left:C-N/2,top:0});const U=((te=this._columnResizeRect)==null?void 0:te.left)||0,L=((Q=this._rowResizeRect)==null?void 0:Q.top)||0;l.addObject(this._resizeHelperShape,ht),l.disableObjectsEvent(),this._scenePointerMoveSub=l.onPointerMove$.subscribeEvent(ie=>{var fe,be,Re,it,st,_t;const G=l.getCoordRelativeToViewport(T.Vector2.FromArray([this._startOffsetX,this._startOffsetY])),Y=l.getScrollXYInfoByViewport(G,h),q=Xn(ie.offsetX,ie.offsetY,l),{x:ne,y:ce}=q,{scaleX:oe,scaleY:se}=l.getAncestorScale(),$=Math.max(oe,se),me=ki/$;P=ne-this._startOffsetX-me/2,y=ce-this._startOffsetY-me/2,Math.abs(e===0?y:P)>=ag&&(w=!0),e===0?(y>d-g+Y.y-R.startY&&(y=d-g+Y.y-R.startY),y<-(R.endY-R.startY)+2&&(y=-(R.endY-R.startY)+2),w&&((fe=this._resizeHelperShape)==null||fe.transformByState({top:b+y}),(be=this._rowResizeRect)==null||be.transformByState({top:L+y+me/2}),(Re=this._rowResizeRect)==null||Re.show(),l.setCursor(T.CURSOR_TYPE.ROW_RESIZE))):(P>u-S+Y.x-R.startX&&(P=u-S+Y.x-R.startX),P<-(R.endX-R.startX)+2&&(P=-(R.endX-R.startX)+2),w&&((it=this._resizeHelperShape)==null||it.transformByState({left:C+P}),(st=this._columnResizeRect)==null||st.transformByState({left:U+P+me/2}),(_t=this._columnResizeRect)==null||_t.show(),l.setCursor(T.CURSOR_TYPE.COLUMN_RESIZE)))}),this._scenePointerUpSub=l.onPointerUp$.subscribeEvent(ie=>{var Y,q,ne;const G=this._context.scene;this._clearObserverEvent(),(Y=this._resizeHelperShape)==null||Y.dispose(),this._resizeHelperShape=null,G.enableObjectsEvent(),w&&(G.resetCursor(),(q=this._rowResizeRect)==null||q.hide(),(ne=this._columnResizeRect)==null||ne.hide(),e===0?this._commandService.executeCommand(m.DeltaRowHeightCommand.id,{deltaY:y,anchorRow:this._currentRow}):this._commandService.executeCommand(m.DeltaColumnWidthCommand.id,{deltaX:P,anchorCol:this._currentColumn}))})})),this.disposeWithMe(r.onDblclick$.subscribeEvent(()=>{var h,g,S;this._context.scene.resetCursor();const s=(h=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:h.skeleton;if(!s)return;const l=0,c=0,d=s.worksheet.getRowCount()-1||0,u=s.worksheet.getColumnCount()-1||0;switch(e){case 1:{const f=this._selectionManagerService.getCurrentSelections(),p=[];for(let v=0;v<f.length;v++){const C=f[v];C.range.rangeType===a.RANGE_TYPE.COLUMN&&this._currentColumn<=C.range.endColumn&&this._currentColumn>=C.range.startColumn&&p.push({startColumn:C.range.startColumn,endColumn:C.range.endColumn,startRow:l,endRow:d})}p.length===0&&p.push({startColumn:this._currentColumn,endColumn:this._currentColumn,startRow:l,endRow:d}),this._commandService.executeCommand(vr.id,{ranges:p}),(g=this._columnResizeRect)==null||g.hide();break}case 0:this._commandService.executeCommand(m.SetWorksheetRowIsAutoHeightCommand.id,{ranges:[{startRow:this._currentRow,endRow:this._currentRow,startColumn:c,endColumn:u}]}),(S=this._rowResizeRect)==null||S.hide();break}})))}_clearObserverEvent(){var e,t;(e=this._scenePointerMoveSub)==null||e.unsubscribe(),(t=this._scenePointerUpSub)==null||t.unsubscribe(),this._scenePointerMoveSub=null,this._scenePointerUpSub=null}};exports.HeaderResizeRenderController=og([Jo(1,a.Inject(exports.SheetSkeletonManagerService)),Jo(2,a.Inject(m.SheetsSelectionsService)),Jo(3,a.ICommandService)],exports.HeaderResizeRenderController);var lg=Object.getOwnPropertyDescriptor,cg=(n,o,e,t)=>{for(var r=t>1?void 0:t?lg(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Nn=(n,o)=>(e,t)=>o(e,t,n);const dg=60;exports.SheetRenderController=class extends a.RxDisposable{constructor(e,t,r,i,s,l){super();E(this,"_renderMetric$",new O.Subject);E(this,"renderMetric$",this._renderMetric$.asObservable());E(this,"_renderFrameTimeMetric",null);E(this,"_renderFrameTags",{});E(this,"_afterRenderMetric$",new O.Subject);this._context=e,this._configService=t,this._sheetSkeletonManagerService=r,this._sheetRenderService=i,this._commandService=s,this._telemetryService=l,this._addNewRender(),this._initRenderMetricSubscriber()}_addNewRender(){const{scene:e,engine:t,unit:r}=this._context;this._addComponent(r),this._initRerenderScheduler(),this._initCommandListener();const i=this._context.unit.getActiveSheet();if(!i)throw new Error("No active sheet found");const s=i.getSheetId();this._sheetSkeletonManagerService.setCurrent({sheetId:s});const l=()=>e.render();this.disposeWithMe(this._context.activated$.subscribe(c=>{c?t.runRenderLoop(l):t.stopRenderLoop(l)}))}_initRenderMetricSubscriber(){const{engine:e}=this._context;e.beginFrame$.subscribe(()=>{this._renderFrameTimeMetric=null,this._renderFrameTags={}}),e.endFrame$.subscribe(()=>{this._renderFrameTimeMetric&&Object.keys(this._renderFrameTimeMetric).filter(i=>i.startsWith(T.SHEET_EXTENSION_PREFIX)).length>0&&this._afterRenderMetric$.next({frameTimeMetric:this._renderFrameTimeMetric,tags:this._renderFrameTags})}),e.renderFrameTimeMetric$.subscribe(([r,i])=>{this._renderFrameTimeMetric||(this._renderFrameTimeMetric={}),this._renderFrameTimeMetric[r]||(this._renderFrameTimeMetric[r]=[]),this._renderFrameTimeMetric[r].push(Math.round(i*100)/100)}),e.renderFrameTags$.subscribe(([r,i])=>{this._renderFrameTags[r]=i});const t=[];this._afterRenderMetric$.pipe(O.withLatestFrom(e.endFrame$)).subscribe(([r,i])=>{t.push({FPS:i.FPS,elapsedTime:i.elapsedTime,frameTime:Math.round(i.frameTime*100)/100,...r.frameTimeMetric,...r.tags}),t.length>dg&&(this._captureRenderMetric(t),t.length=0)})}_captureRenderMetric(e){var g;const t=e;if(t.length===0)return;const r=S=>{let f=0;const v=Object.entries(S).filter(([b,R])=>Array.isArray(R)).map(([b])=>b).reduce((b,R)=>{const w=S[R].reduce((P,y)=>P+y,0);return b[R]=w,b},{});return Object.keys(S).filter(b=>b.startsWith(T.SHEET_EXTENSION_PREFIX)).forEach(b=>{f+=v[b]}),{...v,extensionTotal:f}},i=e.map(S=>({...S,...r(S)})),l=(S=>Object.entries(S[0]).filter(([v,C])=>!["elapsedTime"].includes(v)).filter(([v,C])=>typeof C=="number").map(([v])=>v).reduce((v,C)=>{const b=S.map(y=>y[C]),R=Math.max(...b),w=Math.min(...b),P=b.reduce((y,M)=>y+M,0)/b.length;return v[C]={max:Math.round(R*100)/100,min:Math.round(w*100)/100,avg:Math.round(P*100)/100},v},{}))(i),c=t[t.length-1].elapsedTime,d=this._context.unit.getActiveSheet().getSheetId(),u=this._context.unit.getUnitId(),h={sheetId:d,unitId:u,elapsedTimeToStart:c,...l};this._renderMetric$.next(h),(g=this._telemetryService)==null||g.capture("sheet_render_cost",h)}_addComponent(e){const{scene:t,components:r}=this._context,i=e.getActiveSheet(),s=new T.Spreadsheet(ue.MAIN);this._addViewport(i);const l=new T.SpreadsheetRowHeader(ue.ROW),c=new T.SpreadsheetColumnHeader(ue.COLUMN),d=new T.Rect(ue.LEFT_TOP,{zIndex:2,left:-1,top:-1,fill:"rgb(248, 249, 250)",stroke:"rgb(217, 217, 217)",strokeWidth:1});this._context.mainComponent=s,r.set(ue.MAIN,s),r.set(ue.ROW,l),r.set(ue.COLUMN,c),r.set(ue.LEFT_TOP,d),t.addObjects([s],Es),t.addObjects([l,c,d],ht),t.enableLayerCache(Es,ht)}_initViewports(e,t,r){const l=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN,e,{left:t.width,top:r.height,bottom:0,right:0,isWheelPreventDefaultX:!0,allowCache:!0,bufferEdgeX:100,bufferEdgeY:100}),c=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP,e,{isWheelPreventDefaultX:!0,active:!1,allowCache:!0,bufferEdgeX:0,bufferEdgeY:0}),d=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT,e,{isWheelPreventDefaultX:!0,active:!1,allowCache:!0,bufferEdgeX:0,bufferEdgeY:100}),u=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP,e,{isWheelPreventDefaultX:!0,active:!1,allowCache:!0,bufferEdgeX:100,bufferEdgeY:0}),h=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_TOP,e,{active:!1,isWheelPreventDefaultX:!0}),g=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_BOTTOM,e,{left:0,top:r.height,bottom:0,width:t.width+1,isWheelPreventDefaultX:!0}),S=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT,e,{active:!1,isWheelPreventDefaultX:!0}),f=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_RIGHT,e,{left:t.width,top:0,height:r.height+1,right:0,isWheelPreventDefaultX:!0}),p=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP,e,{left:0,top:0,width:t.width,height:r.height,isWheelPreventDefaultX:!0});return{viewMain:l,viewLeftTop:p,viewMainLeftTop:c,viewMainLeft:d,viewMainTop:u,viewColumnLeft:S,viewRowTop:h,viewRowBottom:g,viewColumnRight:f}}_addViewport(e){const t=this._context.scene,{rowHeader:r,columnHeader:i}=e.getConfig(),{viewMain:s}=this._initViewports(t,r,i),l=this._configService.getConfig(He),c=l==null?void 0:l.scrollConfig;return new T.ScrollBar(s,c),t.attachControl(),s}_initRerenderScheduler(){this.disposeWithMe(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(e=>{if(!e)return null;const{skeleton:t,sheetId:r}=e,i=this._context.unit,s=i==null?void 0:i.getSheetBySheetId(r);if(i==null||s==null)return;const{mainComponent:l,components:c}=this._context,d=l,u=c.get(ue.ROW),h=c.get(ue.COLUMN),g=c.get(ue.LEFT_TOP),{rowHeaderWidth:S,columnHeaderHeight:f}=t;d==null||d.updateSkeleton(t),u==null||u.updateSkeleton(t),h==null||h.updateSkeleton(t),g==null||g.transformByState({width:S,height:f})}))}_initCommandListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{const{unit:t}=this._context,{id:r}=e;if(m.COMMAND_LISTENER_SKELETON_CHANGE.includes(r)||this._sheetRenderService.checkMutationShouldTriggerRerender(r)){const i=e.params,{unitId:s,subUnitId:l}=i,c=t.getActiveSheet();if(!c)return;const d=this._context.unitId,u=c.getSheetId();if(s!==d||l!==u)return;this._sheetSkeletonManagerService.makeDirty({sheetId:u,commandId:r},!0),this._sheetSkeletonManagerService.setCurrent({sheetId:u,commandId:r})}else m.COMMAND_LISTENER_VALUE_CHANGE.includes(r)&&this._sheetSkeletonManagerService.reCalculate();e.type===a.CommandType.MUTATION&&this._markUnitDirty(e)}))}_markUnitDirty(e){const{mainComponent:t,scene:r}=this._context;if(e.id===Z.SetFormulaCalculationNotificationMutation.id&&e.params.stageInfo!=null||(t&&t.makeDirty(),r.makeDirty(),!e.params))return;const i=e.params,s=this._spreadsheetViewports(r);if(e.id===m.SetRangeValuesMutation.id&&i.cellValue){const l=this._cellValueToRange(i.cellValue),c=this._rangeToBounds([l]);this._markViewportDirty(s,c),t.setDirtyArea(c)}if(e.id===m.MoveRangeMutation.id&&i.from&&i.to){const l=i.fromRange||this._cellValueToRange(i.from.value),c=i.toRange||this._cellValueToRange(i.to.value),d=this._rangeToBounds([l,c]);this._markViewportDirty(s,d),t.setDirtyArea(d)}}_cellValueToRange(e){let t=0,r=0,i=0,s=0;for(const[h,g]of Object.entries(e)){for(const S in g)t>Number(S)&&(t=Number(S)),r<Number(S)&&(r=Number(S));i>Number(h)&&(i=Number(h)),s<Number(h)&&(s=Number(h))}return{startRow:i,endRow:s,startColumn:t,endColumn:r}}_rangeToBounds(e){const t=this._sheetSkeletonManagerService.getCurrentParam().skeleton,{rowHeightAccumulation:r,columnWidthAccumulation:i,rowHeaderWidth:s,columnHeaderHeight:l}=t,c=[];for(const d of e){const{startRow:u,endRow:h,startColumn:g,endColumn:S}=d,f=u===0?0:r[u-1]+l,p=r[h]+l,v=g===0?0:i[g-1]+s,C=i[S]+s;c.push({top:f,left:v,bottom:p,right:C,width:C-v,height:p-f})}return c}_markViewportDirty(e,t){const r=e.filter(i=>i.isActive&&i.cacheBound);for(const i of r)for(const s of t)a.Rectangle.hasIntersectionBetweenTwoRect(i.cacheBound,s)&&i.markDirty(!0)}_spreadsheetViewports(e){return e.getViewports().filter(t=>["viewMain","viewMainLeftTop","viewMainTop","viewMainLeft"].includes(t.viewportKey))}};exports.SheetRenderController=cg([Nn(1,a.Inject(a.IConfigService)),Nn(2,a.Inject(exports.SheetSkeletonManagerService)),Nn(3,a.Inject(exports.SheetsRenderService)),Nn(4,a.ICommandService),Nn(5,a.Optional(od.ITelemetryService))],exports.SheetRenderController);function ug(n,o){if(n.length!==o.length)return!1;const e=n.sort((r,i)=>r.id.localeCompare(i.id)),t=o.sort((r,i)=>r.id.localeCompare(i.id));return e.every((r,i)=>{var s,l;return((s=r.subject)==null?void 0:s.userID)===((l=t[i].subject)==null?void 0:l.userID)&&r.role===t[i].role})}function xl(n,o){return o.some(e=>hg(n,e))}function hg(n,o){const{startRow:e,startColumn:t,endColumn:r,endRow:i}=o,s=n.getMatrixWithMergedCells(e,t,i,r);let l=!1;return s.forValue((c,d,u)=>{if(u&&(c!==e||d!==t)&&n.cellHasValue(u))return l=!0,!1}),l}function Ol(n,o,e,t){const r=[],i=[],s=e.getSheetId();return t.forEach(l=>{const c=mg(e,l),d={unitId:o,subUnitId:s,cellValue:c.getData()},u=m.SetRangeValuesUndoMutationFactory(n,d);r.push({id:m.SetRangeValuesMutation.id,params:u}),i.push({id:m.SetRangeValuesMutation.id,params:d})}),{undos:r,redos:i}}function mg(n,o){const{startRow:e,startColumn:t,endColumn:r,endRow:i}=o,s=n.getMatrixWithMergedCells(e,t,i,r,a.CellModeEnum.Raw),l=new a.ObjectMatrix;let c=null;return s.forValue((d,u,h)=>{var g,S,f,p;h&&d>=e&&u>=t&&(!c&&n.cellHasValue(h)&&(h.v!==""||((p=(f=(S=(g=h.p)==null?void 0:g.body)==null?void 0:S.dataStream)==null?void 0:f.length)!=null?p:0)>2)&&(c=h),l.setValue(d,u,null))}),l.setValue(e,t,c),l}function gg(n,o,e,t){const r=e.getActiveViewportByCoord(T.Vector2.FromArray([n,o]));if(!r)return;const{scaleX:i,scaleY:s}=e.getAncestorScale(),l={x:r.viewportScrollX,y:r.viewportScrollY},c=t.getCellIndexByOffset(n,o,i,s,l),d=t.worksheet.getMergedCell(c.row,c.column);return{actualRow:d?d.startRow:c.row,actualCol:d?d.startColumn:c.column,mergeCell:d,row:c.row,col:c.column}}function la(n,o,e,t){const r=t.getFreeze();if(!r||r.startRow<=0&&r.startColumn<=0||n>=r.startRow&&o>=r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN);if(n<r.startRow&&o<r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP);if(n<r.startRow&&o>=r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP);if(n>=r.startRow&&o<r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT)}function Sg(n,o,e,t){const r=ca(n.left,n.top,o,e,t),i=ca(n.right,n.bottom,o,e,t);return{left:r.x,top:r.y,right:i.x,bottom:i.y}}function ca(n,o,e,t,r){const{scaleX:i,scaleY:s}=e.getAncestorScale(),l=e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN);if(!l)return{x:n,y:o};const c=r.getFreeze(),{startColumn:d,startRow:u,xSplit:h,ySplit:g}=c,S=t.getNoMergeCellWithCoordByIndex(u-g,d-h,!1),f=t.getNoMergeCellWithCoordByIndex(u,d,!1),{rowHeaderWidth:p,columnHeaderHeight:v}=t,C=f.startX-S.startX,b=f.startY-S.startY,{top:R,left:w,viewportScrollX:P,viewportScrollY:y}=l;let M;n>w?M=(n-P)*i:M=(C+p-(w-n))*i;let x;return o>R?x=(o-y)*s:x=(b+v-(R-o))*i,{x:M,y:x}}function Al(n,o,e,t,r){let i=t,s=r;e.overflowCache.forValue((d,u,h)=>{h.startRow<=i&&h.endRow>=i&&h.startColumn<=s&&h.endColumn>=s&&(s=u,i=d)});const l=e.getCellWithCoordByIndex(i,s);return{unitId:n.getUnitId(),subUnitId:o.getSheetId(),workbook:n,worksheet:o,row:l.actualRow,col:l.actualColumn}}function Dl(n,o,e,t,r,i){const{scene:s}=n,l=o.getUnitId(),{skeleton:c,sheetId:d}=t,u=gg(r,i,s,c);if(!u)return null;let{actualCol:h,actualRow:g}=u;const S={unitId:l,subUnitId:d,workbook:o,worksheet:e,row:g,col:h};c.overflowCache.forValue((y,M,x)=>{x.startRow<=g&&x.endRow>=g&&x.startColumn<=h&&x.endColumn>=h&&(h=M,g=y)});const f=c.getCellWithCoordByIndex(g,h),p=Al(o,e,c,g,h);let v;f.mergeInfo?v=f.mergeInfo:v={startRow:p.row,endRow:p.row,startColumn:p.col,endColumn:p.col};const C=s.getActiveViewportByCoord(T.Vector2.FromArray([r,i]));if(!C)return;const{scaleX:b,scaleY:R}=s.getAncestorScale(),w={x:C.viewportScrollX,y:C.viewportScrollY};return{position:{startX:(c.getOffsetByColumn(v.startColumn-1)-w.x)*b,endX:(c.getOffsetByColumn(v.endColumn)-w.x)*b,startY:(c.getOffsetByRow(v.startRow-1)-w.y)*R,endY:(c.getOffsetByRow(v.endRow)-w.y)*R},location:S,overflowLocation:p}}const vt={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge",handler:async(n,o)=>{const e=n.get(a.ICommandService),t=n.get(a.IUndoRedoService),r=n.get(a.IUniverInstanceService),i=n.get(_.IConfirmService),s=n.get(a.LocaleService),l=o.unitId,c=o.subUnitId,d=o.selections,u=m.getAddMergeMutationRangeByType(d,o.value),h=r.getUniverSheetInstance(l).getSheetBySheetId(c),g=[],S=[],f=xl(h,u);if(f&&!o.defaultMerge&&!await i.confirm({id:"merge.confirm.add-worksheet-merge",title:{title:"merge.confirm.title"},cancelText:s.t("merge.confirm.cancel"),confirmText:s.t("merge.confirm.confirm")}))return!1;const p={unitId:l,subUnitId:c,ranges:a.Tools.deepClone(u)},v={unitId:l,subUnitId:c,ranges:a.Tools.deepClone(u)},C=m.RemoveMergeUndoMutationFactory(n,p),b=m.AddMergeUndoMutationFactory(n,v);if(C.ranges.length>0&&g.push({id:m.RemoveWorksheetMergeMutation.id,params:C}),g.push({id:m.AddWorksheetMergeMutation.id,params:v}),S.push({id:m.RemoveWorksheetMergeMutation.id,params:b}),C.ranges.length>0&&S.push({id:m.AddWorksheetMergeMutation.id,params:C}),f){const x=Ol(n,l,h,u);g.unshift(...x.redos),S.push(...x.undos)}const R=m.AddMergeRedoSelectionsOperationFactory(n,o,u);R&&g.push(R);const w=m.AddMergeUndoSelectionsOperationFactory(n,o);w&&S.push(w);const y=n.get(m.SheetInterceptorService).onCommandExecute({id:vt.id,params:{unitId:l,subUnitId:c,ranges:u}});return g.push(...y.redos),S.push(...y.undos),a.sequenceExecute(g,e).result?(t.pushUndoRedo({unitID:l,undoMutations:S,redoMutations:g}),!0):!1}},fs={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge-all",handler:async n=>{var u;const o=n.get(a.ICommandService),t=(u=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:u.map(h=>h.range),r=$i(To.MergeAll,t);if(!(r!=null&&r.length))return!1;const s=n.get(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);if(!s)return!1;const l=s.getActiveSheet();if(!l)return!1;const c=s.getUnitId(),d=l.getSheetId();return o.executeCommand(vt.id,{selections:r,unitId:c,subUnitId:d})}},ps={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge-vertical",handler:async n=>{var u;const o=n.get(a.ICommandService),t=(u=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:u.map(h=>h.range),r=$i(To.MergeVertical,t);if(!(r!=null&&r.length))return!1;const s=n.get(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);if(!s)return!1;const l=s.getActiveSheet();if(!l)return!1;const c=s.getUnitId(),d=l.getSheetId();return o.executeCommand(vt.id,{value:a.Dimension.COLUMNS,selections:r,unitId:c,subUnitId:d})}},vs={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge-horizontal",handler:async n=>{var u;const o=n.get(a.ICommandService),t=(u=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:u.map(h=>h.range),r=$i(To.MergeHorizontal,t);if(!(r!=null&&r.length))return!1;const s=n.get(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);if(!s)return!1;const l=s.getActiveSheet();if(!l)return!1;const c=s.getUnitId(),d=l.getSheetId();return o.executeCommand(vt.id,{value:a.Dimension.ROWS,selections:r,unitId:c,subUnitId:d})}},Mn={type:a.CommandType.COMMAND,id:"sheet.command.delete-range-move-left-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endColumn:c.getColumnCount()-1};const u=S=>S.endRow-S.startRow;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Mn.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.DeleteRangeMoveLeftCommand.id):!0}},Vt={type:a.CommandType.COMMAND,id:"sheet.command.delete-range-move-up-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endRow:c.getRowCount()-1};for(let S=d.startRow;S<=d.endRow;S++)if(c.getRowFiltered(S)&&await o.confirm({id:Vt.id,title:{title:t.t("filter.confirm.error")},children:{title:t.t("filter.confirm.notAllowedToInsertRange")},confirmText:t.t("button.confirm")}))return!1;const u=S=>S.endColumn-S.startColumn;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Vt.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.DeleteRangeMoveUpCommand.id):!0}},Wt={type:a.CommandType.COMMAND,id:"sheet.command.insert-range-move-down-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endRow:c.getRowCount()-1};for(let S=d.startRow;S<=d.endRow;S++)if(c.getRowFiltered(S)&&await o.confirm({id:Wt.id,title:{title:t.t("filter.confirm.error")},children:{title:t.t("filter.confirm.notAllowedToInsertRange")},confirmText:t.t("button.confirm")}))return!1;const u=S=>S.endColumn-S.startColumn;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Wt.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.InsertRangeMoveDownCommand.id):!0}},Pn={type:a.CommandType.COMMAND,id:"sheet.command.insert-range-move-right-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endColumn:c.getColumnCount()-1};const u=S=>S.endRow-S.startRow;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Pn.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.InsertRangeMoveRightCommand.id):!0}};var kl=(n=>(n[n.UNIVER_UNKNOWN=0]="UNIVER_UNKNOWN",n[n.UNIVER_DOC=1]="UNIVER_DOC",n[n.UNIVER_SHEET=2]="UNIVER_SHEET",n[n.UNIVER_SLIDE=3]="UNIVER_SLIDE",n[n.UNIVER_PROJECT=4]="UNIVER_PROJECT",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(kl||{}),re=(n=>(n[n.View=0]="View",n[n.Edit=1]="Edit",n[n.ManageCollaborator=2]="ManageCollaborator",n[n.Print=3]="Print",n[n.Duplicate=4]="Duplicate",n[n.Comment=5]="Comment",n[n.Copy=6]="Copy",n[n.Share=7]="Share",n[n.Export=8]="Export",n[n.MoveWorksheet=9]="MoveWorksheet",n[n.DeleteWorksheet=10]="DeleteWorksheet",n[n.HideWorksheet=11]="HideWorksheet",n[n.RenameWorksheet=12]="RenameWorksheet",n[n.CreateWorksheet=13]="CreateWorksheet",n[n.SetWorksheetStyle=14]="SetWorksheetStyle",n[n.EditWorksheetCell=15]="EditWorksheetCell",n[n.InsertHyperlink=16]="InsertHyperlink",n[n.Sort=17]="Sort",n[n.Filter=18]="Filter",n[n.PivotTable=19]="PivotTable",n[n.FloatImg=20]="FloatImg",n[n.History=21]="History",n[n.RwHgtClWdt=22]="RwHgtClWdt",n[n.ViemRwHgtClWdt=23]="ViemRwHgtClWdt",n[n.ViewFilter=24]="ViewFilter",n[n.MoveSheet=25]="MoveSheet",n[n.DeleteSheet=26]="DeleteSheet",n[n.HideSheet=27]="HideSheet",n[n.CopySheet=28]="CopySheet",n[n.RenameSheet=29]="RenameSheet",n[n.CreateSheet=30]="CreateSheet",n[n.SelectProtectedCells=31]="SelectProtectedCells",n[n.SelectUnProtectedCells=32]="SelectUnProtectedCells",n[n.SetCellStyle=33]="SetCellStyle",n[n.SetCellValue=34]="SetCellValue",n[n.SetRowStyle=35]="SetRowStyle",n[n.SetColumnStyle=36]="SetColumnStyle",n[n.InsertRow=37]="InsertRow",n[n.InsertColumn=38]="InsertColumn",n[n.DeleteRow=39]="DeleteRow",n[n.DeleteColumn=40]="DeleteColumn",n[n.EditExtraObject=41]="EditExtraObject",n[n.Delete=42]="Delete",n[n.RecoverHistory=43]="RecoverHistory",n[n.ViewHistory=44]="ViewHistory",n[n.CreatePermissionObject=45]="CreatePermissionObject",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(re||{}),Me=(n=>(n[n.Reader=0]="Reader",n[n.Editor=1]="Editor",n[n.Owner=2]="Owner",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(Me||{}),nt=(n=>(n[n.Unkonwn=0]="Unkonwn",n[n.Workbook=1]="Workbook",n[n.Worksheet=2]="Worksheet",n[n.SelectRange=3]="SelectRange",n[n.Document=4]="Document",n[n.Slide=5]="Slide",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(nt||{}),je=(n=>(n[n.SomeCollaborator=0]="SomeCollaborator",n[n.AllCollaborator=1]="AllCollaborator",n[n.OneSelf=2]="OneSelf",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(je||{});const Jn="UNIVER_SHEET_PERMISSION_PANEL",pn="UNIVER_SHEET_PERMISSION_USER_PART",ko="UNIVER_SHEET_PERMISSION_BACKGROUND",Nl="UNIVER_SHEET_PERMISSION_USER_DIALOG",Hl="UNIVER_SHEET_PERMISSION_DIALOG",Jr="UNIVER_SHEET_PERMISSION_USER_DIALOG_ID",$r="UNIVER_SHEET_PERMISSION_DIALOG_ID",Dr={[re.Copy]:"Copy",[re.SetCellStyle]:"SetCellStyle",[re.SetCellValue]:"SetCellValue",[re.SetRowStyle]:"SetRowStyle",[re.SetColumnStyle]:"SetColumnStyle",[re.InsertRow]:"InsertRow",[re.InsertColumn]:"InsertColumn",[re.InsertHyperlink]:"InsertHyperlink",[re.DeleteRow]:"DeleteRow",[re.DeleteColumn]:"DeleteColumn",[re.Sort]:"Sort",[re.Filter]:"Filter",[re.PivotTable]:"PivotTable",[re.EditExtraObject]:"EditExtraObject"},fg=[re.Copy,re.SetCellStyle,re.SetCellValue,re.SetRowStyle,re.SetColumnStyle,re.InsertRow,re.InsertColumn,re.InsertHyperlink,re.DeleteRow,re.DeleteColumn,re.Sort,re.Filter,re.PivotTable,re.EditExtraObject,re.View],Vl="sheet-permission-menu-icon",pg="sheet-permission-delete-icon",vg="sheet-permission-edit-icon",Cg="sheet-permission-check-icon",Wl="sheet-permission-lock-icon",_g={unitId:"",subUnitId:"",permissionId:"",unitType:m.UnitObject.SelectRange,id:"",ranges:[],viewState:m.ViewStateEnum.OthersCanView,editState:m.EditStateEnum.OnlyMe};class vn{constructor(){E(this,"_rule",_g);E(this,"_visible",!1)}setVisible(o){this._visible=o}getVisible(){return this._visible}reset(){this.setVisible(!1)}}class Ct{constructor(){E(this,"_userList",[]);E(this,"_userList$",new O.BehaviorSubject(this._userList));E(this,"userList$",this._userList$.asObservable());E(this,"_oldCollaboratorList",[]);E(this,"_selectUserList",[]);E(this,"_selectUserList$",new O.BehaviorSubject(this._selectUserList));E(this,"selectUserList$",this._selectUserList$.asObservable())}get userList(){return this._userList}setCanEditUserList(o){this._userList=o,this._userList$.next(o)}reset(){this._userList=[],this._oldCollaboratorList=[],this._selectUserList=[],this._selectUserList$.next([])}get oldCollaboratorList(){return this._oldCollaboratorList}setOldCollaboratorList(o){this._oldCollaboratorList=o}get selectUserList(){return this._selectUserList}setSelectUserList(o){this._selectUserList=o,this._selectUserList$.next(o)}}const Xe={type:a.CommandType.OPERATION,id:"sheet-permission.operation.openPanel",async handler(n,o={}){const e=n.get(_.ISidebarService),t=n.get(vn),r=n.get(Ct),{showDetail:i=!0,fromSheetBar:s=!1,rule:l,oldRule:c}=o,d={header:{title:"permission.panel.title"},children:{label:Jn,showDetail:i,fromSheetBar:s,rule:l,oldRule:c},width:330,onClose:()=>{t.reset(),r.reset()}};return t.setVisible(!0),e.open(d),!0}},Ir={type:a.CommandType.COMMAND,id:"sheet.command.add-range-protection-from-toolbar",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!0}),!0}},xt={type:a.CommandType.COMMAND,id:"sheet.command.add-range-protection-from-context-menu",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!0}),!0}},Ot={type:a.CommandType.COMMAND,id:"sheet.command.view-sheet-permission-from-context-menu",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!1}),!0}},br={type:a.CommandType.COMMAND,id:"sheet.command.add-range-protection-from-sheet-bar",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{fromSheetBar:!0,showDetail:!0}),!0}},Rr={type:a.CommandType.COMMAND,id:"sheet.command.view-sheet-permission-from-sheet-bar",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!1}),!0}},At={type:a.CommandType.COMMAND,id:"sheet.command.delete-range-protection-from-context-menu",async handler(n){var h;const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(a.IUndoRedoService),r=n.get(m.SheetsSelectionsService),i=n.get(m.WorksheetProtectionRuleModel),s=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),l=s.getActiveSheet(),c=s.getUnitId(),d=l.getSheetId(),u=i.getRule(c,d);if(u!=null&&u.permissionId)return o.executeCommand(m.DeleteWorksheetProtectionCommand.id,{unitId:c,subUnitId:d,rule:u});{const g=(h=r.getCurrentLastSelection())==null?void 0:h.range;if(!g)return!1;const p=n.get(m.RangeProtectionRuleModel).getSubunitRuleList(c,d).find(v=>v.ranges.some(C=>a.Rectangle.intersects(C,g)));if(p){const v={unitId:c,subUnitId:d,ruleIds:[p.id]};return await o.executeCommand(m.DeleteRangeProtectionMutation.id,v)&&t.pushUndoRedo({unitID:c,redoMutations:[{id:m.DeleteRangeProtectionMutation.id,params:v}],undoMutations:[{id:m.AddRangeProtectionMutation.id,params:{unitId:c,subUnitId:d,rules:[p]}}]}),!0}else return!1}}},Dt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-protection-from-context-menu",async handler(n){var u;const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.WorksheetProtectionRuleModel),i=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),s=i.getActiveSheet(),l=i.getUnitId(),c=s.getSheetId(),d=r.getRule(l,c);if(d!=null&&d.permissionId){const h={...d,unitId:l,subUnitId:c,ranges:[]};return await o.executeCommand(Xe.id,{showDetail:!0,rule:a.Tools.deepClone(h),oldRule:a.Tools.deepClone(h)}),!0}else{const h=(u=t.getCurrentLastSelection())==null?void 0:u.range;if(!h)return!1;const f=n.get(m.RangeProtectionRuleModel).getSubunitRuleList(l,c).find(p=>{var v;return(v=p==null?void 0:p.ranges)==null?void 0:v.some(C=>a.Rectangle.intersects(C,h))});if(f){const p={...f,unitId:l,subUnitId:c};return await o.executeCommand(Xe.id,{showDetail:!0,rule:a.Tools.deepClone(p),oldRule:a.Tools.deepClone(p)}),!0}else return!1}}},Cn={id:"sheet.command.remove-row-confirm",type:a.CommandType.COMMAND,handler:async(n,o)=>{var d;const e=n.get(m.SheetsSelectionsService);let t=o==null?void 0:o.range;if(t||(t=(d=e.getCurrentLastSelection())==null?void 0:d.range),!t)return!1;const r=n.get(a.ICommandService),i=n.get(a.IUniverInstanceService),s=m.getSheetCommandTarget(i);if(!s)return!1;const{worksheet:l}=s,c=l.getVisibleRows();if(Da(c,[t])){const u=n.get(_.IConfirmService),h=n.get(a.LocaleService);return await u.confirm({id:"sheet.confirm.remove-row",title:{title:h.t("info.problem")},children:{title:h.t("rightClick.deleteAllRowsAlert")},cancelText:h.t("button.cancel"),confirmText:h.t("button.confirm")}),!1}return await r.executeCommand(m.RemoveRowCommand.id,{range:t}),!0}},_n={id:"sheet.command.remove-col-confirm",type:a.CommandType.COMMAND,handler:async(n,o)=>{var d;const e=n.get(m.SheetsSelectionsService);let t=o==null?void 0:o.range;if(t||(t=(d=e.getCurrentLastSelection())==null?void 0:d.range),!t)return!1;const r=n.get(a.ICommandService),i=n.get(a.IUniverInstanceService),s=m.getSheetCommandTarget(i);if(!s)return!1;const{worksheet:l}=s,c=l.getVisibleCols();if(ka(c,[t])){const u=n.get(_.IConfirmService),h=n.get(a.LocaleService);return await u.confirm({id:"sheet.confirm.remove-col",title:{title:h.t("info.problem")},children:{title:h.t("rightClick.deleteAllColumnsAlert")},cancelText:h.t("button.cancel"),confirmText:h.t("button.confirm")}),!1}return await r.executeCommand(m.RemoveColCommand.id,{range:t}),!0}},wr={id:"sheet.command.remove-sheet-confirm",type:a.CommandType.COMMAND,handler:async(n,o)=>{const{subUnitId:e}=o,t=n.get(_.IConfirmService),r=n.get(a.ICommandService),i=n.get(a.LocaleService);return await t.confirm({id:"sheet.confirm.remove-sheet",title:{title:i.t("sheetConfig.deleteSheet")},children:{title:i.t("sheetConfig.deleteSheetContent")},cancelText:i.t("button.cancel"),confirmText:i.t("button.confirm")})?(await r.executeCommand(m.RemoveSheetCommand.id,{subUnitId:e}),!0):!1}},Er={id:"ui-sheet.command.show-menu-list",type:a.CommandType.OPERATION,handler:async n=>(n.get(Ut).triggerSheetBarMenu(),!0)},Tr={type:a.CommandType.COMMAND,id:"sheet.command.delete-worksheet-protection-from-sheet-bar",async handler(n,o){if(!o)return!1;const e=n.get(a.ICommandService),t=n.get(a.IUndoRedoService),r=n.get(m.WorksheetProtectionRuleModel),s=n.get(a.IUniverInstanceService).getCurrentUnitForType(kl.UNIVER_SHEET),l=s==null?void 0:s.getActiveSheet(),c=s.getUnitId();if(!l)return!1;const d=l.getSheetId(),u=r.getRule(c,d);if(await e.executeCommand(m.DeleteWorksheetProtectionCommand.id,{unitId:c,subUnitId:d})){const g=[{id:m.DeleteWorksheetProtectionCommand.id,params:{unitId:c,subUnitId:d}}],S=[{id:m.AddWorksheetProtectionCommand.id,params:{unitId:c,rule:u}}];t.pushUndoRedo({unitID:c,redoMutations:g,undoMutations:S})}return!0}},yr={type:a.CommandType.COMMAND,id:"sheet.command.change-sheet-protection-from-sheet-bar",async handler(n){return await n.get(a.ICommandService).executeCommand("sheet-permission.operation.openDialog"),!0}},Mr={id:"sheet.operation.rename-sheet",type:a.CommandType.OPERATION,handler:async(n,o)=>{const e=n.get(Ut);return o&&e.setRenameId(o.subUnitId),!0}},Cs={type:a.CommandType.OPERATION,id:"sheet-permission.operation.openDialog",async handler(n,o){const e=n.get(_.IDialogService);return e.close("DESKTOP_FIND_REPLACE_DIALOG"),e.open({id:$r,title:{title:"permission.dialog.allowedPermissionType"},children:{label:Hl},width:393,destroyOnClose:!0,onClose:()=>e.close($r)}),!0}},Ig=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M0.98999 1.08218H-0.0100098V0.0821838H0.98999V1.08218Z"}),I.jsx("path",{d:"M5.78992 1.08218H2.78992V0.0821838H5.78992V1.08218Z"}),I.jsx("path",{d:"M7.58984 1.08218H8.58984V0.0821838H7.58984V1.08218Z"}),I.jsx("path",{d:"M14.9152 1.08218H13.9152V0.0821838H14.9152V1.08218Z"}),I.jsx("path",{d:"M16.7151 1.08218H19.7151V0.0821838H16.7151V1.08218Z"}),I.jsx("path",{d:"M22.515 1.08218H21.515V0.0821838H22.515V1.08218Z"}),I.jsx("path",{d:"M27.8405 1.08218H28.8405V0.0821838H27.8405V1.08218Z"}),I.jsx("path",{d:"M33.6404 1.08218H30.6404V0.0821838H33.6404V1.08218Z"}),I.jsx("path",{d:"M35.4403 1.08218H36.4403V0.0821838H35.4403V1.08218Z"}),I.jsx("path",{d:"M42.7657 1.08218H41.7657V0.0821838H42.7657V1.08218Z"}),I.jsx("path",{d:"M44.5657 1.08218H47.5657V0.0821838H44.5657V1.08218Z"}),I.jsx("path",{d:"M50.3656 1.08218H49.3656V0.0821838H50.3656V1.08218Z"}),I.jsx("path",{d:"M55.691 1.08218H56.691V0.0821838H55.691V1.08218Z"}),I.jsx("path",{d:"M61.491 1.08218H58.491V0.0821838H61.491V1.08218Z"}),I.jsx("path",{d:"M63.2909 1.08218H64.2909V0.0821838H63.2909V1.08218Z"}),I.jsx("path",{d:"M70.6163 1.08218H69.6163V0.0821838H70.6163V1.08218Z"}),I.jsx("path",{d:"M72.4163 1.08218H75.4163V0.0821838H72.4163V1.08218Z"}),I.jsx("path",{d:"M78.2162 1.08218H77.2162V0.0821838H78.2162V1.08218Z"}),I.jsx("path",{d:"M83.5416 1.08218H84.5416V0.0821838H83.5416V1.08218Z"}),I.jsx("path",{d:"M89.3416 1.08218H86.3416V0.0821838H89.3416V1.08218Z"}),I.jsx("path",{d:"M91.1415 1.08218H92.1415V0.0821838H91.1415V1.08218Z"}),I.jsx("path",{d:"M98.4669 1.08218H97.4669V0.0821838H98.4669V1.08218Z"}),I.jsx("path",{d:"M100.267 1.08218H103.267V0.0821838H100.267V1.08218Z"}),I.jsx("path",{d:"M106.067 1.08218H105.067V0.0821838H106.067V1.08218Z"}),I.jsx("path",{d:"M111.392 1.08218H112.392V0.0821838H111.392V1.08218Z"}),I.jsx("path",{d:"M117.192 1.08218H114.192V0.0821838H117.192V1.08218Z"}),I.jsx("path",{d:"M118.992 1.08218H119.992V0.0821838H118.992V1.08218Z"})]}),bg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.0100098 1.15771H0.98999V0.157715H-0.0100098V1.15771Z"}),I.jsx("path",{d:"M2.78992 1.15771H5.78992V0.157715H2.78992V1.15771Z"}),I.jsx("path",{d:"M8.58984 1.15771H7.58984V0.157715H8.58984V1.15771Z"}),I.jsx("path",{d:"M10.3899 1.15771H11.3899V0.157715H10.3899V1.15771Z"}),I.jsx("path",{d:"M19.0903 1.15771H18.0903V0.157715H19.0903V1.15771Z"}),I.jsx("path",{d:"M20.8903 1.15771H23.8903V0.157715H20.8903V1.15771Z"}),I.jsx("path",{d:"M26.6902 1.15771H25.6902V0.157715H26.6902V1.15771Z"}),I.jsx("path",{d:"M28.4902 1.15771H29.4902V0.157715H28.4902V1.15771Z"}),I.jsx("path",{d:"M37.1907 1.15771H36.1907V0.157715H37.1907V1.15771Z"}),I.jsx("path",{d:"M38.9906 1.15771H41.9906V0.157715H38.9906V1.15771Z"}),I.jsx("path",{d:"M44.7905 1.15771H43.7905V0.157715H44.7905V1.15771Z"}),I.jsx("path",{d:"M46.5906 1.15771H47.5906V0.157715H46.5906V1.15771Z"}),I.jsx("path",{d:"M55.291 1.15771H54.291V0.157715H55.291V1.15771Z"}),I.jsx("path",{d:"M57.0909 1.15771H60.0909V0.157715H57.0909V1.15771Z"}),I.jsx("path",{d:"M62.8909 1.15771H61.8909V0.157715H62.8909V1.15771Z"}),I.jsx("path",{d:"M64.6909 1.15771H65.6909V0.157715H64.6909V1.15771Z"}),I.jsx("path",{d:"M73.3914 1.15771H72.3914V0.157715H73.3914V1.15771Z"}),I.jsx("path",{d:"M75.1913 1.15771H78.1913V0.157715H75.1913V1.15771Z"}),I.jsx("path",{d:"M80.9912 1.15771H79.9912V0.157715H80.9912V1.15771Z"}),I.jsx("path",{d:"M82.7913 1.15771H83.7913V0.157715H82.7913V1.15771Z"}),I.jsx("path",{d:"M91.4917 1.15771H90.4917V0.157715H91.4917V1.15771Z"}),I.jsx("path",{d:"M93.2916 1.15771H96.2916V0.157715H93.2916V1.15771Z"}),I.jsx("path",{d:"M99.0916 1.15771H98.0916V0.157715H99.0916V1.15771Z"}),I.jsx("path",{d:"M100.892 1.15771H101.892V0.157715H100.892V1.15771Z"}),I.jsx("path",{d:"M109.592 1.15771H108.592V0.157715H109.592V1.15771Z"}),I.jsx("path",{d:"M111.392 1.15771H114.392V0.157715H111.392V1.15771Z"}),I.jsx("path",{d:"M117.192 1.15771H116.192V0.157715H117.192V1.15771Z"}),I.jsx("path",{d:"M118.992 1.15771H119.992V0.157715H118.992V1.15771Z"})]}),Rg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.00842285 1.22449H2.99158V0.224487H-0.00842285V1.22449Z"}),I.jsx("path",{d:"M6.14941 1.22449H9.14941V0.224487H6.14941V1.22449Z"}),I.jsx("path",{d:"M15.3073 1.22449H12.3073V0.224487H15.3073V1.22449Z"}),I.jsx("path",{d:"M18.4651 1.22449H21.4651V0.224487H18.4651V1.22449Z"}),I.jsx("path",{d:"M27.6229 1.22449H24.6229V0.224487H27.6229V1.22449Z"}),I.jsx("path",{d:"M30.7808 1.22449H33.7808V0.224487H30.7808V1.22449Z"}),I.jsx("path",{d:"M39.9386 1.22449H36.9386V0.224487H39.9386V1.22449Z"}),I.jsx("path",{d:"M43.0964 1.22449H46.0964V0.224487H43.0964V1.22449Z"}),I.jsx("path",{d:"M52.2543 1.22449H49.2543V0.224487H52.2543V1.22449Z"}),I.jsx("path",{d:"M55.4121 1.22449H58.4121V0.224487H55.4121V1.22449Z"}),I.jsx("path",{d:"M64.5699 1.22449H61.5699V0.224487H64.5699V1.22449Z"}),I.jsx("path",{d:"M67.7278 1.22449H70.7278V0.224487H67.7278V1.22449Z"}),I.jsx("path",{d:"M76.8856 1.22449H73.8856V0.224487H76.8856V1.22449Z"}),I.jsx("path",{d:"M80.0435 1.22449H83.0435V0.224487H80.0435V1.22449Z"}),I.jsx("path",{d:"M89.2013 1.22449H86.2013V0.224487H89.2013V1.22449Z"}),I.jsx("path",{d:"M92.3591 1.22449H95.3591V0.224487H92.3591V1.22449Z"}),I.jsx("path",{d:"M101.517 1.22449H98.517V0.224487H101.517V1.22449Z"}),I.jsx("path",{d:"M104.675 1.22449H107.675V0.224487H104.675V1.22449Z"}),I.jsx("path",{d:"M113.833 1.22449H110.833V0.224487H113.833V1.22449Z"}),I.jsx("path",{d:"M116.99 1.22449H119.99V0.224487H116.99V1.22449Z"})]}),wg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.00976562 1.65707H0.990234V0.657074H-0.00976562V1.65707Z"}),I.jsx("path",{d:"M2.32361 1.65707H3.32361V0.657074H2.32361V1.65707Z"}),I.jsx("path",{d:"M5.65698 1.65707H4.65698V0.657074H5.65698V1.65707Z"}),I.jsx("path",{d:"M6.99036 1.65707H7.99036V0.657074H6.99036V1.65707Z"}),I.jsx("path",{d:"M10.3237 1.65707H9.32373V0.657074H10.3237V1.65707Z"}),I.jsx("path",{d:"M11.6571 1.65707H12.6571V0.657074H11.6571V1.65707Z"}),I.jsx("path",{d:"M14.9905 1.65707H13.9905V0.657074H14.9905V1.65707Z"}),I.jsx("path",{d:"M16.3239 1.65707H17.3239V0.657074H16.3239V1.65707Z"}),I.jsx("path",{d:"M19.6572 1.65707H18.6572V0.657074H19.6572V1.65707Z"}),I.jsx("path",{d:"M20.9906 1.65707H21.9906V0.657074H20.9906V1.65707Z"}),I.jsx("path",{d:"M24.324 1.65707H23.324V0.657074H24.324V1.65707Z"}),I.jsx("path",{d:"M25.6573 1.65707H26.6573V0.657074H25.6573V1.65707Z"}),I.jsx("path",{d:"M28.9907 1.65707H27.9907V0.657074H28.9907V1.65707Z"}),I.jsx("path",{d:"M30.3241 1.65707H31.3241V0.657074H30.3241V1.65707Z"}),I.jsx("path",{d:"M33.6575 1.65707H32.6575V0.657074H33.6575V1.65707Z"}),I.jsx("path",{d:"M34.9908 1.65707H35.9908V0.657074H34.9908V1.65707Z"}),I.jsx("path",{d:"M38.3242 1.65707H37.3242V0.657074H38.3242V1.65707Z"}),I.jsx("path",{d:"M39.6576 1.65707H40.6576V0.657074H39.6576V1.65707Z"}),I.jsx("path",{d:"M42.991 1.65707H41.991V0.657074H42.991V1.65707Z"}),I.jsx("path",{d:"M44.3243 1.65707H45.3243V0.657074H44.3243V1.65707Z"}),I.jsx("path",{d:"M47.6577 1.65707H46.6577V0.657074H47.6577V1.65707Z"}),I.jsx("path",{d:"M48.9911 1.65707H49.9911V0.657074H48.9911V1.65707Z"}),I.jsx("path",{d:"M52.3245 1.65707H51.3245V0.657074H52.3245V1.65707Z"}),I.jsx("path",{d:"M53.6578 1.65707H54.6578V0.657074H53.6578V1.65707Z"}),I.jsx("path",{d:"M56.9912 1.65707H55.9912V0.657074H56.9912V1.65707Z"}),I.jsx("path",{d:"M58.3246 1.65707H59.3246V0.657074H58.3246V1.65707Z"}),I.jsx("path",{d:"M61.658 1.65707H60.658V0.657074H61.658V1.65707Z"}),I.jsx("path",{d:"M62.9913 1.65707H63.9913V0.657074H62.9913V1.65707Z"}),I.jsx("path",{d:"M66.3247 1.65707H65.3247V0.657074H66.3247V1.65707Z"}),I.jsx("path",{d:"M67.6581 1.65707H68.6581V0.657074H67.6581V1.65707Z"}),I.jsx("path",{d:"M70.9915 1.65707H69.9915V0.657074H70.9915V1.65707Z"}),I.jsx("path",{d:"M72.3248 1.65707H73.3248V0.657074H72.3248V1.65707Z"}),I.jsx("path",{d:"M75.6582 1.65707H74.6582V0.657074H75.6582V1.65707Z"}),I.jsx("path",{d:"M76.9916 1.65707H77.9916V0.657074H76.9916V1.65707Z"}),I.jsx("path",{d:"M80.325 1.65707H79.325V0.657074H80.325V1.65707Z"}),I.jsx("path",{d:"M81.6583 1.65707H82.6583V0.657074H81.6583V1.65707Z"}),I.jsx("path",{d:"M84.9917 1.65707H83.9917V0.657074H84.9917V1.65707Z"}),I.jsx("path",{d:"M86.3251 1.65707H87.3251V0.657074H86.3251V1.65707Z"}),I.jsx("path",{d:"M89.6584 1.65707H88.6584V0.657074H89.6584V1.65707Z"}),I.jsx("path",{d:"M90.9918 1.65707H91.9918V0.657074H90.9918V1.65707Z"}),I.jsx("path",{d:"M94.3252 1.65707H93.3252V0.657074H94.3252V1.65707Z"}),I.jsx("path",{d:"M95.6586 1.65707H96.6586V0.657074H95.6586V1.65707Z"}),I.jsx("path",{d:"M98.9919 1.65707H97.9919V0.657074H98.9919V1.65707Z"}),I.jsx("path",{d:"M100.325 1.65707H101.325V0.657074H100.325V1.65707Z"}),I.jsx("path",{d:"M103.659 1.65707H102.659V0.657074H103.659V1.65707Z"}),I.jsx("path",{d:"M104.992 1.65707H105.992V0.657074H104.992V1.65707Z"}),I.jsx("path",{d:"M108.325 1.65707H107.325V0.657074H108.325V1.65707Z"}),I.jsx("path",{d:"M109.659 1.65707H110.659V0.657074H109.659V1.65707Z"}),I.jsx("path",{d:"M112.992 1.65707H111.992V0.657074H112.992V1.65707Z"}),I.jsx("path",{d:"M114.325 1.65707H115.325V0.657074H114.325V1.65707Z"}),I.jsx("path",{d:"M117.659 1.65707H116.659V0.657074H117.659V1.65707Z"}),I.jsx("path",{d:"M118.992 1.65707H119.992V0.657074H118.992V1.65707Z"})]}),Eg=({className:n})=>I.jsx("svg",{className:n,width:"120",height:"3",viewBox:"0 0 120 3",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:I.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M119.991 2.42035H-0.0090332V0.420349H119.991V2.42035Z"})}),Tg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"3",viewBox:"0 0 120 3",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.0100098 2.47614H1.98999V0.476135H-0.0100098V2.47614Z"}),I.jsx("path",{d:"M3.99014 2.47614H9.99014V0.476135H3.99014V2.47614Z"}),I.jsx("path",{d:"M13.9901 2.47614H11.9901V0.476135H13.9901V2.47614Z"}),I.jsx("path",{d:"M21.1904 2.47614H23.1904V0.476135H21.1904V2.47614Z"}),I.jsx("path",{d:"M31.1906 2.47614H25.1906V0.476135H31.1906V2.47614Z"}),I.jsx("path",{d:"M33.1906 2.47614H35.1906V0.476135H33.1906V2.47614Z"}),I.jsx("path",{d:"M44.3909 2.47614H42.3909V0.476135H44.3909V2.47614Z"}),I.jsx("path",{d:"M46.391 2.47614H52.391V0.476135H46.391V2.47614Z"}),I.jsx("path",{d:"M56.391 2.47614H54.391V0.476135H56.391V2.47614Z"}),I.jsx("path",{d:"M63.5913 2.47614H65.5913V0.476135H63.5913V2.47614Z"}),I.jsx("path",{d:"M73.5915 2.47614H67.5915V0.476135H73.5915V2.47614Z"}),I.jsx("path",{d:"M75.5915 2.47614H77.5915V0.476135H75.5915V2.47614Z"}),I.jsx("path",{d:"M86.7917 2.47614H84.7917V0.476135H86.7917V2.47614Z"}),I.jsx("path",{d:"M88.7919 2.47614H94.7919V0.476135H88.7919V2.47614Z"}),I.jsx("path",{d:"M98.7919 2.47614H96.7919V0.476135H98.7919V2.47614Z"}),I.jsx("path",{d:"M105.992 2.47614H107.992V0.476135H105.992V2.47614Z"}),I.jsx("path",{d:"M115.992 2.47614H109.992V0.476135H115.992V2.47614Z"}),I.jsx("path",{d:"M117.992 2.47614H119.992V0.476135H117.992V2.47614Z"})]}),yg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.0100098 2.00415H1.98999V0.00415039H-0.0100098V2.00415Z"}),I.jsx("path",{d:"M3.99014 2.00415H9.99014V0.00415039H3.99014V2.00415Z"}),I.jsx("path",{d:"M13.9901 2.00415H11.9901V0.00415039H13.9901V2.00415Z"}),I.jsx("path",{d:"M15.9901 2.00415H17.9901V0.00415039H15.9901V2.00415Z"}),I.jsx("path",{d:"M27.4905 2.00415H25.4905V0.00415039H27.4905V2.00415Z"}),I.jsx("path",{d:"M29.4906 2.00415H35.4906V0.00415039H29.4906V2.00415Z"}),I.jsx("path",{d:"M39.4906 2.00415H37.4906V0.00415039H39.4906V2.00415Z"}),I.jsx("path",{d:"M41.4906 2.00415H43.4906V0.00415039H41.4906V2.00415Z"}),I.jsx("path",{d:"M52.991 2.00415H50.991V0.00415039H52.991V2.00415Z"}),I.jsx("path",{d:"M54.9911 2.00415H60.9911V0.00415039H54.9911V2.00415Z"}),I.jsx("path",{d:"M64.9911 2.00415H62.9911V0.00415039H64.9911V2.00415Z"}),I.jsx("path",{d:"M66.9911 2.00415H68.9911V0.00415039H66.9911V2.00415Z"}),I.jsx("path",{d:"M78.4915 2.00415H76.4915V0.00415039H78.4915V2.00415Z"}),I.jsx("path",{d:"M80.4916 2.00415H86.4916V0.00415039H80.4916V2.00415Z"}),I.jsx("path",{d:"M90.4916 2.00415H88.4916V0.00415039H90.4916V2.00415Z"}),I.jsx("path",{d:"M92.4916 2.00415H94.4916V0.00415039H92.4916V2.00415Z"}),I.jsx("path",{d:"M103.992 2.00415H101.992V0.00415039H103.992V2.00415Z"}),I.jsx("path",{d:"M105.992 2.00415H111.992V0.00415039H105.992V2.00415Z"}),I.jsx("path",{d:"M115.992 2.00415H113.992V0.00415039H115.992V2.00415Z"}),I.jsx("path",{d:"M117.992 2.00415H119.992V0.00415039H117.992V2.00415Z"})]}),Mg=({className:n})=>I.jsxs("svg",{className:n,width:"118",height:"3",viewBox:"0 0 118 3",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.00854492 2.94815H1.99146V0.948151H-0.00854492V2.94815Z"}),I.jsx("path",{d:"M6.09668 2.94815H8.09668V0.948151H6.09668V2.94815Z"}),I.jsx("path",{d:"M14.2019 2.94815H12.2019V0.948151H14.2019V2.94815Z"}),I.jsx("path",{d:"M18.3071 2.94815H20.3071V0.948151H18.3071V2.94815Z"}),I.jsx("path",{d:"M26.4124 2.94815H24.4124V0.948151H26.4124V2.94815Z"}),I.jsx("path",{d:"M30.5176 2.94815H32.5176V0.948151H30.5176V2.94815Z"}),I.jsx("path",{d:"M38.6228 2.94815H36.6228V0.948151H38.6228V2.94815Z"}),I.jsx("path",{d:"M42.728 2.94815H44.728V0.948151H42.728V2.94815Z"}),I.jsx("path",{d:"M50.8333 2.94815H48.8333V0.948151H50.8333V2.94815Z"}),I.jsx("path",{d:"M54.9385 2.94815H56.9385V0.948151H54.9385V2.94815Z"}),I.jsx("path",{d:"M63.0437 2.94815H61.0437V0.948151H63.0437V2.94815Z"}),I.jsx("path",{d:"M67.1489 2.94815H69.1489V0.948151H67.1489V2.94815Z"}),I.jsx("path",{d:"M75.2542 2.94815H73.2542V0.948151H75.2542V2.94815Z"}),I.jsx("path",{d:"M79.3594 2.94815H81.3594V0.948151H79.3594V2.94815Z"}),I.jsx("path",{d:"M87.4645 2.94815H85.4645V0.948151H87.4645V2.94815Z"}),I.jsx("path",{d:"M91.5697 2.94815H93.5697V0.948151H91.5697V2.94815Z"}),I.jsx("path",{d:"M99.6749 2.94815H97.6749V0.948151H99.6749V2.94815Z"}),I.jsx("path",{d:"M103.78 2.94815H105.78V0.948151H103.78V2.94815Z"}),I.jsx("path",{d:"M111.885 2.94815H109.885V0.948151H111.885V2.94815Z"}),I.jsx("path",{d:"M115.991 2.94815H117.991V0.948151H115.991V2.94815Z"})]}),Pg=({className:n})=>I.jsx("svg",{className:n,width:"120",height:"4",viewBox:"0 0 120 4",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:I.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M119.991 3.86215H-0.0090332V0.862152H119.991V3.86215Z"})}),xg=({className:n})=>I.jsx("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:I.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M119.991 1.15668H-0.0090332V0.156677H119.991V1.15668Z"})});function da(n){const{type:o=a.BorderStyleTypes.THIN,className:e}=n;switch(o){case a.BorderStyleTypes.DASH_DOT:return I.jsx(Ig,{className:e});case a.BorderStyleTypes.DASH_DOT_DOT:return I.jsx(bg,{className:e});case a.BorderStyleTypes.DASHED:return I.jsx(Rg,{className:e});case a.BorderStyleTypes.HAIR:return I.jsx(wg,{className:e});case a.BorderStyleTypes.MEDIUM:return I.jsx(Eg,{className:e});case a.BorderStyleTypes.MEDIUM_DASH_DOT:return I.jsx(Tg,{className:e});case a.BorderStyleTypes.MEDIUM_DASH_DOT_DOT:return I.jsx(yg,{className:e});case a.BorderStyleTypes.MEDIUM_DASHED:return I.jsx(Mg,{className:e});case a.BorderStyleTypes.THICK:return I.jsx(Pg,{className:e});case a.BorderStyleTypes.THIN:default:return I.jsx(xg,{className:e})}}const _s=`${Il}_BORDER_PANEL_COMPONENT`,Ul=[{label:"borderLine.borderTop",icon:"UpBorderDoubleIcon",value:"top"},{label:"borderLine.borderBottom",icon:"DownBorderDoubleIcon",value:"bottom"},{label:"borderLine.borderLeft",icon:"LeftBorderDoubleIcon",value:"left"},{label:"borderLine.borderRight",icon:"RightBorderDoubleIcon",value:"right"},{label:"borderLine.borderNone",icon:"NoBorderIcon",value:"none"},{label:"borderLine.borderAll",icon:"AllBorderIcon",value:"all"},{label:"borderLine.borderOutside",icon:"OuterBorderDoubleIcon",value:"outside"},{label:"borderLine.borderInside",icon:"InnerBorderDoubleIcon",value:"inside"},{label:"borderLine.borderHorizontal",icon:"HorizontalBorderDoubleIcon",value:"horizontal"},{label:"borderLine.borderVertical",icon:"VerticalBorderDoubleIcon",value:"vertical"},{label:"borderLine.borderTlbr",icon:"BackSlashIcon",value:"tlbr"},{label:"borderLine.borderTlbcTlmr",icon:"LeftDoubleDiagonalIcon",value:"tlbc_tlmr"},{label:"borderLine.borderTlbrTlbcTlmr",icon:"LeftTridiagonalIcon",value:"tlbr_tlbc_tlmr"},{label:"borderLine.borderBlTr",icon:"SlashIcon",value:"bltr"},{label:"borderLine.borderMltrBctr",icon:"RightDoubleDiagonalIcon",value:"mltr_bctr"}],Og=[{label:a.BorderStyleTypes.THIN,value:a.BorderStyleTypes.THIN},{label:a.BorderStyleTypes.HAIR,value:a.BorderStyleTypes.HAIR},{label:a.BorderStyleTypes.DOTTED,value:a.BorderStyleTypes.DOTTED},{label:a.BorderStyleTypes.DASHED,value:a.BorderStyleTypes.DASHED},{label:a.BorderStyleTypes.DASH_DOT,value:a.BorderStyleTypes.DASH_DOT},{label:a.BorderStyleTypes.DASH_DOT_DOT,value:a.BorderStyleTypes.DASH_DOT_DOT},{label:a.BorderStyleTypes.MEDIUM,value:a.BorderStyleTypes.MEDIUM},{label:a.BorderStyleTypes.MEDIUM_DASHED,value:a.BorderStyleTypes.MEDIUM_DASHED},{label:a.BorderStyleTypes.MEDIUM_DASH_DOT,value:a.BorderStyleTypes.MEDIUM_DASH_DOT},{label:a.BorderStyleTypes.MEDIUM_DASH_DOT_DOT,value:a.BorderStyleTypes.MEDIUM_DASH_DOT_DOT},{label:a.BorderStyleTypes.THICK,value:a.BorderStyleTypes.THICK}];function Ll(n){var l;const o=_.useDependency(_.ComponentManager),e=_.useDependency(m.BorderStyleManagerService),{onChange:t,value:r}=n;function i(c,d){t==null||t({...r,[d]:c})}function s(c){const d=o.get(c);return d&&I.jsx(d,{className:"univer-fill-primary-600"})}return I.jsxs("section",{className:"univer-box-border univer-grid univer-gap-2 univer-p-1.5",children:[I.jsx("div",{className:"univer-box-border univer-grid univer-grid-cols-5 univer-gap-2 univer-text-gray-600 dark:!univer-text-gray-200",children:Ul.map(c=>I.jsx("a",{className:j.clsx("univer-flex univer-size-6 univer-cursor-pointer univer-items-center univer-justify-center univer-justify-self-center univer-rounded dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",{"univer-bg-gray-200 dark:!univer-bg-gray-600":e.getBorderInfo().type===c.value}),onClick:d=>{d.stopPropagation(),i(c.value,"type")},children:s(c.icon)},c.value))}),I.jsx(j.Separator,{}),I.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[I.jsx("div",{children:I.jsx(j.Dropdown,{overlay:I.jsx("div",{className:"univer-rounded-lg univer-p-4",children:I.jsx(j.ColorPicker,{onChange:c=>i(c,"color")})}),children:I.jsxs("button",{className:"univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded univer-border-none univer-bg-transparent univer-p-1 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",type:"button",children:[I.jsx(Xa,{className:"univer-fill-primary-600 dark:!univer-text-white",extend:{colorChannel1:(l=r==null?void 0:r.color)!=null?l:""}}),I.jsx(mn,{className:"dark:!univer-text-white"})]})})}),I.jsx("div",{children:I.jsx(j.Dropdown,{overlay:I.jsx("section",{className:"univer-rounded-lg univer-p-1.5",children:I.jsx("ul",{className:"univer-m-0 univer-grid univer-list-none univer-gap-1 univer-p-0",children:Og.map(c=>I.jsx("li",{className:"univer-flex univer-cursor-pointer univer-items-center univer-justify-center univer-rounded univer-px-1 univer-py-2 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",onClick:()=>i(c.value,"style"),children:I.jsx(da,{className:"univer-fill-gray-900 dark:!univer-fill-white",type:c.value})},c.value))})}),children:I.jsxs("button",{className:"univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded univer-border-none univer-bg-transparent univer-p-1 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",type:"button",children:[I.jsx(da,{className:"univer-fill-gray-900 dark:!univer-fill-white",type:a.BorderStyleTypes.THIN}),I.jsx(mn,{className:"dark:!univer-text-white"})]})})})]})]})}const Bl="sheets.component.cell-popup";var Ag=Object.getOwnPropertyDescriptor,Dg=(n,o,e,t)=>{for(var r=t>1?void 0:t?Ag(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},wt=(n,o)=>(e,t)=>o(e,t,n);exports.SheetCanvasPopManagerService=class extends a.Disposable{constructor(e,t,r,i,s,l,c){super();E(this,"_popupMenuFeatureMap",new Map);E(this,"_isSelectionMoving",!1);this._globalPopupManagerService=e,this._renderManagerService=t,this._univerInstanceService=r,this._refRangeService=i,this._commandService=s,this._refSelectionsService=l,this._selectionManagerService=c,this._initMoving()}_initMoving(){this.disposeWithMe(this._refSelectionsService.selectionMoving$.subscribe(()=>{this._isSelectionMoving=!0})),this.disposeWithMe(this._refSelectionsService.selectionMoveEnd$.subscribe(()=>{this._isSelectionMoving=!1})),this.disposeWithMe(this._selectionManagerService.selectionMoving$.subscribe(()=>{this._isSelectionMoving=!0})),this.disposeWithMe(this._selectionManagerService.selectionMoveEnd$.subscribe(()=>{this._isSelectionMoving=!1}))}registerFeatureMenu(e,t){this._popupMenuFeatureMap.set(e,t)}getFeatureMenu(e,t,r,i){const s=this._popupMenuFeatureMap.get(i);if(s)return s(e,t,r,i)}dispose(){super.dispose(),this._popupMenuFeatureMap.clear()}_createHiddenRectObserver(e){const{row:t,column:r,worksheet:i,skeleton:s,currentRender:l}=e,c=()=>{var F,X;const g=i.getFreeze(),{startRow:S,startColumn:f,xSplit:p,ySplit:v}=g,C=S-v,b=f-p,{rowHeightAccumulation:R,columnWidthAccumulation:w,rowHeaderWidth:P,columnHeaderHeight:y}=s,M=P+(b===-1?0:w[b+p-1]-((F=w[b-1])!=null?F:0)),x=y+(C===-1?0:R[C+v-1]-((X=R[C])!=null?X:0)),A=l.engine.getCanvasElement(),D=A.getBoundingClientRect(),k=ei(A.style.width),V=D.width/k,W=l.scene.getAncestorScale().scaleX,N=M*V*W,U=x*V*W,L={left:-1/0,top:-1/0,right:D.left+N,bottom:D.top+U},z={left:D.left+N,top:-1/0,right:1/0,bottom:D.top+U},B={left:-1/0,top:D.top+U,right:D.left+N,bottom:1/0};return t<S&&r<f?[]:t<S?[L]:r<f?[L]:[L,z,B]},d=c(),u=new O.BehaviorSubject(d),h=new a.DisposableCollection;return h.add(this._commandService.onCommandExecuted(g=>{g.id===m.SetFrozenMutation.id&&u.next(c())})),h.add(a.fromEventSubject(l.engine.onTransformChange$).pipe(O.throttleTime(16)).subscribe(()=>{u.next(c())})),{rects$:u,disposable:h}}_createPositionObserver(e,t,r,i){const s=()=>{const{scene:u}=t,h=Sg(e,u,r,i),g=t.engine.getCanvasElement(),S=g.getBoundingClientRect(),f=ei(g.style.width),p=S.width/f;return{left:h.left*p+S.left,right:h.right*p+S.left,top:h.top*p+S.top,bottom:h.bottom*p+S.top}},l=s(),c=new O.BehaviorSubject(l),d=new a.DisposableCollection;return d.add(this._commandService.onCommandExecuted(u=>{(u.id===We.id||u.id===ke.id)&&c.next(s())})),{position:l,position$:c,disposable:d}}attachPopupToObject(e,t){var R;const r=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),i=r.getActiveSheet();if(!i||this._isSelectionMoving&&!t.showOnSelectionMoving)return{dispose:()=>{},canDispose:()=>!0};const s=r.getUnitId(),l=i.getSheetId(),c=(R=this._renderManagerService.getRenderById(s))==null?void 0:R.with(exports.SheetSkeletonManagerService).ensureSkeleton(l),d=this._renderManagerService.getRenderById(s);if(!d||!c)return{dispose:()=>{},canDispose:()=>!0};const{left:u,top:h,width:g,height:S}=e,f={left:u,right:u+g,top:h,bottom:h+S},{position:p,position$:v,disposable:C}=this._createPositionObserver(f,d,c,i),b=this._globalPopupManagerService.addPopup({...t,unitId:s,subUnitId:l,anchorRect:p,anchorRect$:v,canvasElement:d.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(b),v.complete(),C.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==b}}attachPopupByPosition(e,t,r){var C;const i=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),s=i.getActiveSheet();if(!s)return null;const l=i.getUnitId(),c=s.getSheetId();if(l!==r.unitId||r.subUnitId!==c)return null;if(this._isSelectionMoving&&!t.showOnSelectionMoving)return;const d=(C=this._renderManagerService.getRenderById(l))==null?void 0:C.with(exports.SheetSkeletonManagerService).getOrCreateSkeleton({sheetId:c}),u=this._renderManagerService.getRenderById(l);if(!u||!d)return null;const{position:h,position$:g,disposable:S}=this._createPositionObserver(e,u,d,s),{rects$:f,disposable:p}=this._createHiddenRectObserver({row:r.row,column:r.col,worksheet:s,skeleton:d,currentRender:u}),v=this._globalPopupManagerService.addPopup({...t,unitId:l,subUnitId:c,anchorRect:h,anchorRect$:g,hiddenRects$:f,canvasElement:u.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(v),g.complete(),S.dispose(),p.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==v}}attachPopupToAbsolutePosition(e,t,r,i){var f;const s=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),l=s.getActiveSheet();if(!l)return null;const c=s.getUnitId(),d=l.getSheetId();if(r&&c!==r||i&&i!==d)return null;const u=(f=this._renderManagerService.getRenderById(c))==null?void 0:f.with(exports.SheetSkeletonManagerService).ensureSkeleton(d),h=this._renderManagerService.getRenderById(c);if(!h||!u)return null;if(this._isSelectionMoving&&!t.showOnSelectionMoving)return;const g=new O.BehaviorSubject(e),S=this._globalPopupManagerService.addPopup({...t,unitId:c,subUnitId:d,anchorRect:e,anchorRect$:g.asObservable(),canvasElement:h.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(S),g.complete()},canDispose:()=>this._globalPopupManagerService.activePopupId!==S}}attachPopupToCell(e,t,r,i,s,l){const c=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),d=c.getActiveSheet();if(!d)return null;const u=c.getUnitId(),h=d.getSheetId();if(i&&u!==i||s&&h!==s)return null;const g=this._renderManagerService.getRenderById(u),S=g==null?void 0:g.with(exports.SheetSkeletonManagerService).ensureSkeleton(h),f=g==null?void 0:g.with(pe);if(!g||!S||!f)return null;if(this._isSelectionMoving&&!r.showOnSelectionMoving)return;const p=l!=null?l:la(e,t,g.scene,d);if(!p)return null;const{position:v,position$:C,disposable:b,updateRowCol:R}=this._createCellPositionObserver(e,t,g,S,p),{rects$:w,disposable:P}=this._createHiddenRectObserver({row:e,column:t,worksheet:d,skeleton:S,currentRender:g}),y=this._globalPopupManagerService.addPopup({...r,unitId:u,subUnitId:h,anchorRect:v,anchorRect$:C,canvasElement:g.engine.getCanvasElement(),hiddenRects$:w}),M=new a.DisposableCollection;M.add(b),M.add(a.toDisposable(()=>{this._globalPopupManagerService.removePopup(y),C.complete()})),M.add(P);const x={startRow:e,endRow:e,startColumn:t,endColumn:t};return M.add(this._refRangeService.watchRange(u,h,x,(A,D)=>{D?R(D.startRow,D.startColumn):M.dispose()})),{dispose(){M.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==y}}attachRangePopup(e,t,r,i,s,l=!1){const c=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),d=c.getActiveSheet();if(!d)return null;const u=c.getUnitId(),h=d.getSheetId();if(r&&u!==r||i&&h!==i)return null;const g=this._renderManagerService.getRenderById(u),S=g==null?void 0:g.with(exports.SheetSkeletonManagerService).getOrCreateSkeleton({sheetId:h}),f=g==null?void 0:g.with(pe);if(!g||!S||!f)return null;if(f.selectionMoving&&!l)return;const p=s!=null?s:la(e.startRow,e.startColumn,g.scene,d);if(!p)return null;const{position:v,position$:C,disposable:b,updateRowCol:R,topLeftPos$:w,rightBottomPos$:P}=this._createRangePositionObserver(e,g,S,p),{rects$:y,disposable:M}=this._createHiddenRectObserver({row:e.startRow,column:e.startColumn,worksheet:d,skeleton:S,currentRender:g}),x=this._globalPopupManagerService.addPopup({...t,unitId:u,subUnitId:h,anchorRect:v,anchorRect$:C,canvasElement:g.engine.getCanvasElement(),hiddenRects$:y}),A=new a.DisposableCollection;A.add(b),A.add(a.toDisposable(()=>{this._globalPopupManagerService.removePopup(x),w.complete(),P.complete()})),A.add(M);const D={...e};return A.add(this._refRangeService.watchRange(u,h,D,(k,V)=>{V?R(V.startRow,V.startColumn):A.dispose()})),{dispose(){A.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==x}}_createCellPositionObserver(e,t,r,i,s){let l=e,c=t;const d=this._calcCellPositionByCell(l,c,r,i,s),u=new O.BehaviorSubject(d),h=()=>u.next(this._calcCellPositionByCell(l,c,r,i,s)),g=new a.DisposableCollection;return g.add(r.engine.clientRect$.subscribe(()=>h())),g.add(a.fromEventSubject(r.engine.onTransformChange$).pipe(O.throttleTime(16)).subscribe(()=>h())),g.add(this._commandService.onCommandExecuted(f=>{if(f.id===m.SetWorksheetRowAutoHeightMutation.id&&f.params.rowsAutoHeightInfo.findIndex(v=>v.row===l)>-1){h();return}(m.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(f.id)>-1||f.id===We.id||f.id===ke.id)&&h()})),{position$:u,disposable:g,position:d,updateRowCol:(f,p)=>{l=f,c=p,h()}}}_calcCellPositionByCell(e,t,r,i,s){const{scene:l,engine:c}=r,d=i.getCellWithCoordByIndex(e,t),u=d.isMergedMainCell?d.mergeInfo:d,{scaleX:h,scaleY:g}=l.getAncestorScale(),S={x:s.viewportScrollX,y:s.viewportScrollY},f=c.getCanvasElement(),p=f.getBoundingClientRect(),v=ei(f.style.width),{top:C,left:b,width:R}=p,w=R/v;return{left:(u.startX-S.x)*w*h+b,right:(u.endX-S.x)*w*h+b,top:(u.startY-S.y)*w*g+C,bottom:(u.endY-S.y)*w*g+C}}_createRangePositionObserver(e,t,r,i){let{startRow:s,startColumn:l}=e;const c=this._calcCellPositionByCell(s,l,t,r,i),d=new O.BehaviorSubject(c),u=this._calcCellPositionByCell(e.endRow,e.endColumn,t,r,i),h=new O.BehaviorSubject(u),g=()=>{const C=this._calcCellPositionByCell(s,l,t,r,i),b=this._calcCellPositionByCell(e.endRow,e.endColumn,t,r,i);d.next(C),h.next(b)},S=new a.DisposableCollection;S.add(t.engine.clientRect$.subscribe(()=>g())),S.add(this._commandService.onCommandExecuted(C=>{if(C.id===m.SetWorksheetRowAutoHeightMutation.id&&C.params.rowsAutoHeightInfo.findIndex(R=>R.row===s)>-1){g();return}(m.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(C.id)>-1||C.id===We.id||C.id===ke.id)&&g()}));const f=(C,b)=>{s=C,l=b,g()},p=d.pipe(O.map(C=>{const b=this._calcCellPositionByCell(e.endRow,e.endColumn,t,r,i);return{top:C.top,left:C.left,right:b.right,bottom:b.bottom}})),v={top:c.top,left:c.left,right:u.right,bottom:u.bottom};return{position$:p,position:v,updateRowCol:f,topLeftPos$:d,rightBottomPos$:h,disposable:S}}};exports.SheetCanvasPopManagerService=Dg([wt(0,a.Inject(_.ICanvasPopupService)),wt(1,T.IRenderManagerService),wt(2,a.IUniverInstanceService),wt(3,a.Inject(m.RefRangeService)),wt(4,a.ICommandService),wt(5,m.IRefSelectionsService),wt(6,a.Inject(m.SheetsSelectionsService))],exports.SheetCanvasPopManagerService);function ei(n){return Number.parseInt(n.replace("px",""))}var kg=Object.getOwnPropertyDescriptor,Ng=(n,o,e,t)=>{for(var r=t>1?void 0:t?kg(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Hg=(n,o)=>(e,t)=>o(e,t,n);exports.CellPopupManagerService=class extends a.Disposable{constructor(e){super();E(this,"_cellPopupMap",new Map);E(this,"_change$",new O.Subject);E(this,"change$",this._change$.asObservable());this._sheetCanvasPopManagerService=e}_ensureCellPopupMap(e,t){let r=this._cellPopupMap.get(e);r||(r=new Map,this._cellPopupMap.set(e,r));let i=r.get(t);return i||(i=new a.ObjectMatrix,r.set(t,i)),i}showPopup(e,t){var g,S;const{direction:r="horizontal"}=t,{unitId:i,subUnitId:s,row:l,col:c}=e,d=this._ensureCellPopupMap(i,s),u=(g=d.getValue(l,c))==null?void 0:g[r];t.id=(S=t.id)!=null?S:a.generateRandomId();const h=()=>{const f=d.getValue(l,c);if(!f)return;const p=f[r];if(!p)return;const v=p==null?void 0:p.popups.findIndex(C=>C.id===t.id&&C.componentKey===t.componentKey);p==null||p.popups.splice(v,1),p.popups.length===0&&(p.disposable.dispose(),f[r]=void 0),this._change$.next({...e,direction:r})};if(u)u.popups.push(t),u.popups.sort((f,p)=>f.priority-p.priority);else{const f=this._sheetCanvasPopManagerService.attachPopupToCell(l,c,{...t,direction:r,componentKey:Bl,extraProps:{...e,direction:r},noPushMinimumGap:!0,autoRelayout:!1,zIndex:90},i,s);d.setValue(l,c,{...d.getValue(l,c),[r]:{disposable:f,popups:[t]}})}return this._change$.next({...e,direction:r}),a.toDisposable(h)}getPopups(e,t,r,i,s){var c,d;return((d=(c=this._ensureCellPopupMap(e,t).getValue(r,i))==null?void 0:c[s])==null?void 0:d.popups)||[]}};exports.CellPopupManagerService=Ng([Hg(0,a.Inject(exports.SheetCanvasPopManagerService))],exports.CellPopupManagerService);const Vg=n=>{const{popup:o}=n,e=o.extraProps,{row:t,col:r,direction:i,unitId:s,subUnitId:l}=e,c=_.useDependency(exports.CellPopupManagerService);_.useObservable(H.useMemo(()=>c.change$.pipe(O.filter(h=>h.row===t&&h.col===r&&h.direction===i)),[c,t,r,i]));const d=c.getPopups(s,l,t,r,i),u=_.useDependency(_.ComponentManager);return I.jsx("div",{"data-u-comp":"cell-popup",className:"univer-ml-px univer-flex univer-flex-col",children:d.map(h=>{var S;const g=u.get(h.componentKey);return g?I.jsx(g,{popup:h},(S=h.id)!=null?S:h.componentKey):null})})},ua=n=>{const{inputId:o,state:e=!1,type:t="range",confirm:r,cancel:i,name:s,formulaOrRefString:l,comment:c="",localSheetId:d=m.SCOPE_WORKBOOK_VALUE_DEFINED_NAME,hidden:u=!1,id:h}=n,S=_.useDependency(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),f=_.useDependency(a.LocaleService),p=_.useDependency(Z.IDefinedNamesService),v=_.useDependency(Z.IFunctionService),C=_.useDependency(Z.LexerTreeBuilder),b=_.useDependency(_.ComponentManager),R=H.useMemo(()=>b.get(Yi),[]),w=H.useMemo(()=>b.get(bo),[]);if(S==null)return;const P=H.useMemo(()=>S.getUnitId(),[]),y=H.useMemo(()=>S.getActiveSheet().getSheetId(),[]),[M,x]=H.useState(s),[A,D]=H.useState(l),[k,V]=H.useState(c),[W,N]=H.useState(d),[U,L]=H.useState(""),[z,B]=H.useState(t),[F,X]=H.useState(!0),K=[{label:f.t("definedName.scopeWorkbook"),value:m.SCOPE_WORKBOOK_VALUE_DEFINED_NAME}],te=oe=>!Z.isReferenceStrings(oe);H.useEffect(()=>{X(!0),x(s),V(c),N(d);let oe=l;l.substring(0,1)===Z.operatorToken.EQUALS?B("formula"):te(l)?(B("formula"),oe=Z.operatorToken.EQUALS+l):B("range"),D(oe),L("")},[e]),S.getSheetOrders().forEach(oe=>{const se=S.getSheetBySheetId(oe);K.push({label:(se==null?void 0:se.getName())||"",value:oe})});const Q=oe=>{D(oe)},ie=oe=>{D(oe||"")},G=()=>{if(M.length===0){L(f.t("definedName.nameEmpty"));return}if(p.getValueByName(P,M)!=null&&(h==null||h.length===0)){L(f.t("definedName.nameDuplicate"));return}if(!a.Tools.isValidParameter(M)||Z.isReferenceStringWithEffectiveColumn(M)||!a.Tools.isStartValidPosition(M)&&!T.hasCJKText(M.substring(0,1))){L(f.t("definedName.nameInvalid"));return}if(S.getSheetOrders().map($=>{var me;return((me=S.getSheetBySheetId($))==null?void 0:me.getName())||""}).includes(M)){L(f.t("definedName.nameSheetConflict"));return}if(A.length===0){L(f.t("definedName.formulaOrRefStringEmpty"));return}if(!F){L(f.t("definedName.formulaOrRefStringInvalid"));return}if(v.hasExecutor(M.toUpperCase())){L(f.t("definedName.nameConflict"));return}const se=S.getActiveSheet().getName();r&&r({id:h||"",name:M,formulaOrRefString:C.convertRefersToAbsolute(A,a.AbsoluteRefType.ALL,a.AbsoluteRefType.ALL,se),comment:k,localSheetId:W})},Y=oe=>{const se=oe;se==="formula"?l[0]===Z.operatorToken.EQUALS?D(l):D(`${Z.operatorToken.EQUALS}`):l[0]===Z.operatorToken.EQUALS?D(""):D(l),B(se)},q=H.useRef(null),[ne,ce]=H.useState(!1);return _.useSidebarClick(oe=>{var $;(($=q.current)==null?void 0:$.isClickOutSide(oe))&&ce(!1)}),I.jsxs("div",{className:j.clsx("univer-grid univer-space-y-2 univer-pb-1",j.borderBottomClassName,{"univer-hidden":!e}),children:[I.jsx("div",{children:I.jsx(j.Input,{className:"univer-w-full",placeholder:f.t("definedName.inputNamePlaceholder"),value:M,allowClear:!0,onChange:x})}),I.jsx("div",{children:I.jsxs(j.RadioGroup,{value:z,onChange:Y,children:[I.jsx(j.Radio,{value:"range",children:f.t("definedName.ratioRange")}),I.jsx(j.Radio,{value:"formula",children:f.t("definedName.ratioFormula")})]})}),z==="range"?R&&I.jsx(R,{unitId:P,subUnitId:y,initialValue:A,onChange:(oe,se)=>Q(se),supportAcrossSheet:!0}):w&&I.jsx("div",{className:"univer-relative univer-mt-4 univer-h-full",children:I.jsx("div",{className:"univer-relative univer-h-8 univer-select-none",children:I.jsx(w,{ref:q,className:j.clsx("univer-box-border univer-h-8 univer-w-full univer-cursor-pointer univer-items-center univer-rounded-lg univer-bg-white univer-pt-2 univer-transition-colors [&>div:first-child]:univer-px-2.5 [&>div]:univer-h-5 [&>div]:univer-ring-transparent dark:!univer-bg-gray-700 dark:!univer-text-white hover:univer-border-primary-600",j.borderClassName),initValue:A,unitId:P,subUnitId:y,isFocus:ne,isSupportAcrossSheet:!0,onChange:(oe="")=>{ie(oe||"")},onVerify:oe=>{X(oe)},onFocus:()=>ce(!0)})})}),I.jsx("div",{children:I.jsx(j.Select,{className:"univer-w-full",value:W,options:K,onChange:N})}),I.jsx("div",{children:I.jsx(j.Input,{className:"univer-w-full",placeholder:f.t("definedName.inputCommentPlaceholder"),value:k,onChange:V})}),I.jsxs("div",{className:j.clsx("univer-items-center univer-gap-1 univer-text-sm univer-text-red-500",{"univer-hidden":U.length===0,"univer-flex":U.length!==0}),children:[I.jsx("span",{children:U}),I.jsx(ns,{})]}),I.jsxs("div",{className:"univer-flex univer-gap-2",children:[I.jsx(j.Button,{onClick:()=>{i==null||i()},children:f.t("definedName.cancel")}),I.jsx(j.Button,{variant:"primary",onClick:G,children:f.t("definedName.confirm")})]})]})},Fl=()=>{const n=_.useDependency(a.ICommandService),e=_.useDependency(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),t=_.useDependency(a.LocaleService),r=_.useDependency(Z.IDefinedNamesService),i=_.useDependency(m.SheetsSelectionsService);if(e==null)return;const s=e.getUnitId(),l=()=>{const k=r.getDefinedNameMap(s);return k?Array.from(Object.values(k)):[]},[c,d]=H.useState(!1),[u,h]=H.useState(l()),[g,S]=H.useState(null),[f,p]=H.useState();H.useEffect(()=>{const k=r.update$.subscribe(()=>{h(l())});return()=>{k.unsubscribe()}},[]);const v=k=>{const{name:V,formulaOrRefString:W,comment:N,localSheetId:U,hidden:L}=k;let z=k.id;if(z==null||z.length===0)z=a.Tools.generateRandomId(10),n.executeCommand(m.InsertDefinedNameCommand.id,{id:z,unitId:s,name:V,formulaOrRefString:W,comment:N,localSheetId:U,hidden:L});else{const B={id:z,unitId:s,name:V,formulaOrRefString:W,comment:N,localSheetId:U,hidden:L};n.executeCommand(m.SetDefinedNameCommand.id,B)}d(!1),S(null)},C=k=>{p(k)};function b(){p(null)}function R(k){const V=r.getValueById(s,k);n.executeCommand(m.RemoveDefinedNameCommand.id,{...V,unitId:s}),p(null)}const w=async k=>{const{formulaOrRefString:V,id:W}=k,N=r.getWorksheetByRef(s,V);if(!N)return;N.isSheetHidden()&&await n.executeCommand(m.SetWorksheetShowCommand.id,{unitId:s,subUnitId:N.getSheetId()}),r.focusRange(s,W)},P=()=>{const k=u.length+1,V=t.t("definedName.defaultName")+k;if(r.getValueByName(s,V)==null)return V;let W=k+1;for(;;){const N=t.t("definedName.defaultName")+W;if(r.getValueByName(s,N)==null)return N;W++}},y=()=>{var N;const k=(N=e.getActiveSheet())==null?void 0:N.getName();if(!k)return"";const V=i.getCurrentSelections();return V==null?"":V.map(U=>Z.serializeRangeWithSheet(k,U.range)).join(",")},M=()=>{d(!1),S(null)},x=()=>{d(!0),S(null)},A=k=>{d(!1),S(k)},D=k=>{const V=e.getSheetBySheetId(k);return V==null?"":V.getName()};return I.jsx("div",{"data-u-comp":"defined-name-container",className:"univer-relative univer-box-border univer-w-full",children:I.jsxs("div",{className:j.clsx("univer-w-full univer-overflow-hidden univer-overflow-y-auto",j.scrollbarClassName),children:[I.jsxs("div",{className:"univer-mb-4",children:[I.jsxs(j.Button,{className:j.clsx("univer-w-full",{"univer-hidden":c}),onClick:x,children:[I.jsx(rs,{}),I.jsx("span",{className:"univer-ml-1",children:t.t("definedName.addButton")})]}),c&&I.jsx(ua,{confirm:v,cancel:M,state:c,inputId:"insertDefinedName",name:P(),formulaOrRefString:y()})]},"insertDefinedName"),u.map((k,V)=>I.jsxs("div",{className:"univer-divide-x-0 univer-divide-y univer-divide-solid univer-divide-gray-200 dark:!univer-divide-gray-600",children:[I.jsxs("div",{className:j.clsx("univer-group univer-relative univer-flex univer-cursor-default univer-select-none univer-items-center univer-justify-between univer-rounded-md univer-p-2 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-50",{"univer-hidden":k.id===g}),onClick:()=>{w(k)},children:[I.jsxs("div",{title:k.comment,children:[I.jsxs("div",{className:"univer-my-1 univer-max-h-[100px] univer-max-w-[190px] univer-overflow-hidden univer-text-sm univer-font-medium univer-text-gray-900 dark:!univer-text-white",children:[k.name,I.jsx("span",{className:"univer-text-xxs univer-ml-1 univer-text-gray-400",children:k.localSheetId===m.SCOPE_WORKBOOK_VALUE_DEFINED_NAME||k.localSheetId==null?"":D(k.localSheetId)})]}),I.jsx("div",{className:"univer-my-1 univer-max-h-[100px] univer-overflow-hidden univer-text-ellipsis univer-text-xs univer-text-gray-500",children:k.formulaOrRefString})]}),I.jsx(j.Tooltip,{title:t.t("definedName.updateButton"),placement:"top",children:I.jsx("a",{className:"univer-absolute univer-right-[60px] univer-top-1/2 univer-hidden -univer-translate-y-1/2 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded univer-p-1 univer-text-xs univer-text-primary-600 dark:hover:!univer-bg-gray-600 group-hover:univer-flex hover:univer-bg-gray-100",onClick:W=>{W.stopPropagation(),A(k.id)},children:I.jsx(Ga,{})})}),I.jsx(j.Tooltip,{title:t.t("definedName.deleteButton"),placement:"top",children:I.jsx("a",{className:"univer-absolute univer-text-xs univer-text-error univer-right-5 univer-top-1/2 univer-hidden -univer-translate-y-1/2 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded univer-p-1 univer-text-red-600 dark:hover:!univer-bg-gray-600 group-hover:univer-flex hover:univer-bg-gray-100",onClick:W=>{W.stopPropagation(),C(k.id)},children:I.jsx(yo,{})})})]}),I.jsx(j.Confirm,{visible:f===k.id,onClose:b,onConfirm:()=>{R(k.id)},children:t.t("definedName.deleteConfirmText")}),k.id===g&&I.jsx(ua,{confirm:v,cancel:M,state:k.id===g,id:k.id,inputId:k.id+V,name:k.name,formulaOrRefString:k.formulaOrRefString,comment:k.comment,localSheetId:k.localSheetId})]},V))]})})};function Wg(n){const o=n.get(m.BorderStyleManagerService),e=ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]});return{id:m.SetBorderBasicCommand.id,icon:new O.Observable(t=>{const r="AllBorderIcon",i=n.get(m.BorderStyleManagerService),s=n.get(a.ICommandService).onCommandExecuted(l=>{var g;if(l.id!==m.SetBorderBasicCommand.id)return;const{type:d}=i.getBorderInfo(),u=Ul.find(S=>S.value===d),h=(g=u==null?void 0:u.icon)!=null?g:r;t.next(h)});return t.next(r),s.dispose}),tooltip:"toolbar.border.main",type:_.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:_s,hoverable:!1,selectable:!1},value$:o.borderInfo$}],value$:o.borderInfo$,hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:e}}const Fr="sheet.menu.clear-selection";function ti(n){return{id:Fr,type:_.MenuItemType.SUBITEMS,icon:"ClearFormatDoubleIcon",title:"rightClick.clearSelection",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function ni(n){return{id:m.ClearSelectionContentCommand.id,type:_.MenuItemType.BUTTON,icon:"ClearFormatDoubleIcon",title:"rightClick.clearContent",disabled$:Xt(n,ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellValuePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function ri(n){return{id:m.ClearSelectionFormatCommand.id,type:_.MenuItemType.BUTTON,icon:"ClearFormatDoubleIcon",title:"rightClick.clearFormat",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function kr(n){return{id:m.ClearSelectionAllCommand.id,type:_.MenuItemType.BUTTON,icon:"ClearFormatDoubleIcon",title:"rightClick.clearAll",tooltip:"rightClick.clearAll",disabled$:Xt(n,ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellValuePermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const jl="sheet.menu.delete";function Ug(n){return{id:jl,type:_.MenuItemType.SUBITEMS,title:"rightClick.delete",icon:"ReduceDoubleIcon",hidden$:Xt(n,Tn(n)),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission]})}}function ha(n){return{id:_n.id,type:_.MenuItemType.BUTTON,icon:"DeleteColumnDoubleIcon",title:"rightClick.deleteSelectedColumn",hidden$:El(n,"col"),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetDeleteColumnPermission]})}}function ma(n){return{id:Cn.id,type:_.MenuItemType.BUTTON,icon:"DeleteRowDoubleIcon",title:"rightClick.deleteSelectedRow",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetDeleteRowPermission]}),hidden$:El(n,"row")}}function Lg(n){return{id:Mn.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveLeft",icon:"DeleteCellShiftLeftDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"col")}}function Bg(n){return{id:Vt.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveUp",icon:"DeleteCellShiftUpDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"row")}}function Fg(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService);return{id:m.ToggleGridlinesCommand.id,type:_.MenuItemType.BUTTON,tooltip:"toolbar.toggleGridlines",icon:"HideGridlinesDoubleIcon",activated$:new O.Observable(t=>{const r=()=>{const s=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);return s?s.getActiveSheet().getConfig().showGridlines===a.BooleanNumber.TRUE:!1},i=new a.DisposableCollection;return i.add(o.onCommandExecuted(s=>{(s.id===m.ToggleGridlinesMutation.id||s.id===m.SetWorksheetActiveOperation.id)&&t.next(r())})),i.add(e.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).subscribe(()=>{t.next(r())})),t.next(r()),()=>i.dispose()}),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission]})}}const zl="sheet.menu.cell-insert";function jg(n){return{id:zl,type:_.MenuItemType.SUBITEMS,title:"rightClick.insert",icon:"InsertDoubleIcon",hidden$:Xt(n,Tn(n)),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertColumnPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function zg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertRowBeforeCommand.id,type:_.MenuItemType.BUTTON,icon:"InsertRowAboveDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertRowsAbove",min:1,max:1e3,suffix:"rightClick.insertRowsAboveSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endRow)-(c==null?void 0:c.startRow)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:wl(n,"row")}}function Xg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertColBeforeCommand.id,type:_.MenuItemType.BUTTON,icon:"LeftInsertColumnDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertColsLeft",min:1,max:1e3,suffix:"rightClick.insertColsLeftSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endColumn)-(c==null?void 0:c.startColumn)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertColumnPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:wl(n,"col")}}function Yg(n){return{id:Pn.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveRight",icon:"InsertCellShiftRightDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"col")}}function Gg(n){return{id:Wt.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveDown",icon:"InsertCellDownDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"row")}}function Zg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiRowsAfterCommand.id,type:_.MenuItemType.BUTTON,icon:"InsertRowBelowDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertRowsAfter",min:1,max:1e3,suffix:"rightClick.insertRowsAfterSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endRow)-(c==null?void 0:c.startRow)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function Kg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiRowsAboveCommand.id,type:_.MenuItemType.BUTTON,icon:"InsertRowAboveDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertRowsAbove",min:1,max:1e3,suffix:"rightClick.insertRowsAboveSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endRow)-(c==null?void 0:c.startRow)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function qg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiColsLeftCommand.id,type:_.MenuItemType.BUTTON,icon:"LeftInsertColumnDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertColsLeft",min:1,max:1e3,suffix:"rightClick.insertColsLeftSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endColumn)-(c==null?void 0:c.startColumn)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function Qg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiColsRightCommand.id,type:_.MenuItemType.BUTTON,icon:"RightInsertColumnDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertColsRight",min:1,max:1e3,suffix:"rightClick.insertColsRightSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endColumn)-(c==null?void 0:c.startColumn)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function Jg(n){const o=Xt(n,ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellValuePermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})),e=Gm(n);return{id:vt.id,icon:"MergeAllIcon",tooltip:"toolbar.mergeCell.main",type:_.MenuItemType.SUBITEMS,hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:o.pipe(O.combineLatestWith(e),O.map(([t,r])=>t||r))}}function $g(n){return{id:fs.id,type:_.MenuItemType.BUTTON,title:"merge.all",icon:"MergeAllIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function eS(n){return{id:ps.id,type:_.MenuItemType.BUTTON,title:"merge.vertical",icon:"VerticalIntegrationIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function tS(n){return{id:vs.id,type:_.MenuItemType.BUTTON,title:"merge.horizontal",icon:"HorizontalMergeIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function nS(n){return{id:m.RemoveWorksheetMergeCommand.id,type:_.MenuItemType.BUTTON,title:"merge.cancel",icon:"CancelMergeIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function rS(n){const e=n.get(a.IUniverInstanceService).getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),t=n.get(a.UserManagerService);return O.combineLatest([e,t.currentUser$]).pipe(O.switchMap(([r,i])=>r?r.activeSheet$.pipe(O.switchMap(s=>{if(!s)return O.of(!0);const l=n.get(m.RangeProtectionRuleModel),c=n.get(m.WorksheetProtectionRuleModel),d=n.get(m.SheetsSelectionsService);return O.merge(d.selectionMoveEnd$,l.ruleChange$,c.ruleChange$).pipe(O.map(()=>{const u=r.getUnitId(),h=s.getSheetId(),g=l.getSubunitRuleList(u,h),S=d.getCurrentSelections(),f=S==null?void 0:S.map(C=>C.range),p=g.map(C=>C.ranges).flat();if(!f)return!1;const v=c.getRule(u,h);return v!=null&&v.permissionId?!0:f==null?void 0:f.some(C=>p.some(b=>a.Rectangle.intersects(C,b)))}))})):O.of(!0)))}function oS(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.RangeProtectionRuleModel),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{if(!l)return O.of(!0);const c=n.get(m.RangeProtectionRuleModel),d=n.get(m.WorksheetProtectionRuleModel),u=n.get(a.IPermissionService),h=n.get(m.SheetsSelectionsService);return O.merge(h.selectionMoveEnd$,c.ruleChange$,d.ruleChange$).pipe(O.map(()=>{var x,A;const g=i.getUnitId(),S=l.getSheetId(),f=e.getSubunitRuleList(g,S),p=(x=h.getCurrentSelections())==null?void 0:x.map(D=>D.range);if(f.map(D=>D.ranges).flat(),!(p!=null&&p.length)||p.length>1)return!0;const v=p[0];if((v==null?void 0:v.rangeType)===a.RANGE_TYPE.ALL||(v==null?void 0:v.rangeType)===a.RANGE_TYPE.COLUMN||(v==null?void 0:v.rangeType)===a.RANGE_TYPE.ROW)return!0;const C=d.getRule(g,S);if(C!=null&&C.permissionId)return((A=u.getPermissionPoint(new m.WorksheetManageCollaboratorPermission(g,S).id))==null?void 0:A.value)===!1;if(f.filter(D=>D.ranges.some(k=>a.Rectangle.intersects(k,v))).length!==1)return!0;const{startRow:R,endRow:w,startColumn:P,endColumn:y}=v,M=n.get(m.RangeProtectionCache);for(let D=R;D<=w;D++)for(let k=P;k<=y;k++){const V=M.getCellInfo(g,S,D,k);if(V)return V[m.UnitAction.ManageCollaborator]===!1}return!1}))})):O.of(!0)))}function iS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{var f;if(!l)return O.of(!0);const c=i.getUnitId(),d=n.get(m.SheetsSelectionsService),u=n.get(m.RangeProtectionRuleModel),h=n.get(m.WorksheetProtectionRuleModel),g=(f=e.composePermission$([new m.WorkbookEditablePermission(c).id]).pipe(O.map(p=>p.every(v=>v.value))))!=null?f:O.of(!1),S=O.merge(u.ruleChange$,h.ruleChange$).pipe(O.startWith(null));return O.combineLatest([g,S,d.selectionMoveEnd$]).pipe(O.map(([p,v,C])=>{if(!p)return!0;const b=d.getCurrentSelections(),R=b==null?void 0:b.map(w=>w.range);return R!=null&&R.length?R.length>1:!1}))})):O.of(!0)))}function Xl(n){var d;const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService),i=n.has(he)?n.get(he):null,l=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_FX_BAR_EDITOR).pipe(O.startWith(!1),O.shareReplay(1)),c=(d=i==null?void 0:i.visible$.pipe(O.startWith(null),O.shareReplay(1)))!=null?d:O.of(null);return O.combineLatest([t,r.currentUser$,c,l]).pipe(O.switchMap(([u,h,g,S])=>!u||g!=null&&g.visible&&g.unitId===u.getUnitId()||S?O.of(!0):u.activeSheet$.pipe(O.switchMap(f=>{var x;if(!f)return O.of(!0);const v=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_COMMON_DRAWINGS).pipe(O.startWith(!1)),C=u.getUnitId(),b=f.getSheetId(),R=n.get(m.RangeProtectionRuleModel),w=n.get(m.WorksheetProtectionRuleModel),P=n.get(m.SheetsSelectionsService),y=(x=e.composePermission$([new m.WorkbookCreateProtectPermission(C).id]).pipe(O.map(A=>A.every(D=>D.value))))!=null?x:O.of(!1),M=O.merge(R.ruleChange$,w.ruleChange$).pipe(O.startWith(null));return O.combineLatest([y,M,P.selectionMoveEnd$,v]).pipe(O.map(([A,D,k,V])=>{if(!A||V)return!0;const W=P.getCurrentSelections(),N=W==null?void 0:W.map(B=>B.range);if(!(N!=null&&N.length))return!0;const U=w.getRule(C,b);if(U!=null&&U.permissionId)return!0;const L=R.getSubunitRuleList(C,b);return N==null?void 0:N.some(B=>L.some(F=>F.ranges.some(X=>a.Rectangle.intersects(B,X))))}))}))))}function sS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{var f;if(!l)return O.of(!0);const c=i.getUnitId(),d=l.getSheetId(),u=n.get(m.RangeProtectionRuleModel),h=n.get(m.WorksheetProtectionRuleModel),g=(f=e.composePermission$([new m.WorkbookCreateProtectPermission(c).id]).pipe(O.map(p=>p.every(v=>v.value))))!=null?f:O.of(!1),S=O.merge(u.ruleChange$,h.ruleChange$).pipe(O.startWith(null));return O.combineLatest([g,S]).pipe(O.map(([p,v])=>{var R;if(!p)return!0;const C=h.getRule(c,d);return C!=null&&C.permissionId?!0:((R=u.getSubunitRuleList(c,d))==null?void 0:R.filter(w=>w==null?void 0:w.permissionId)).length>0}))})):O.of(!0)))}function aS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{if(!l)return O.of(!0);const c=i.getUnitId(),d=l.getSheetId(),u=n.get(m.WorksheetProtectionRuleModel);return u.ruleChange$.pipe(O.startWith(null)).pipe(O.map(()=>{var g;return u.getRule(c,d)?((g=e.getPermissionPoint(new m.WorksheetDeleteProtectionPermission(c,d).id))==null?void 0:g.value)===!1:!0}))})):O.of(!0)))}function lS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{var f;if(!l)return O.of(!0);const c=i.getUnitId(),d=n.get(m.RangeProtectionRuleModel),u=n.get(m.WorksheetProtectionRuleModel),h=(f=e.composePermission$([new m.WorkbookCreateProtectPermission(c).id,new m.WorkbookManageCollaboratorPermission(c).id]).pipe(O.map(p=>p.every(v=>v.value))))!=null?f:O.of(!1),g=u.ruleChange$.pipe(O.startWith(null)),S=d.ruleChange$.pipe(O.startWith(null));return O.combineLatest([h,g,S]).pipe(O.map(([p,v,C])=>{if(!p)return!0;const b=l.getSheetId(),R=u.getRule(c,b),w=d.getSubunitRuleList(c,b);return!(R||w.length)}))})):O.of(!0)))}function cS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{if(!l)return O.of(!0);const c=i.getUnitId(),d=l.getSheetId(),u=n.get(m.SheetsSelectionsService),h=n.get(m.RangeProtectionRuleModel),g=n.get(m.WorksheetProtectionRuleModel),S=O.merge(h.ruleChange$,g.ruleChange$,u.selectionMoveEnd$).pipe(O.startWith(null));return O.combineLatest([S]).pipe(O.map(([f])=>{var A;const p=n.get(m.SheetsSelectionsService).getCurrentSelections(),v=p==null?void 0:p.map(D=>D.range);if(!(v!=null&&v.length)||v.length>1)return!0;const C=v[0];if((C==null?void 0:C.rangeType)===a.RANGE_TYPE.ALL||(C==null?void 0:C.rangeType)===a.RANGE_TYPE.COLUMN||(C==null?void 0:C.rangeType)===a.RANGE_TYPE.ROW)return!0;const b=g.getRule(c,d);if(b!=null&&b.permissionId)return((A=e.getPermissionPoint(new m.WorksheetDeleteProtectionPermission(c,d).id))==null?void 0:A.value)===!1;if(h.getSubunitRuleList(c,d).filter(D=>D.ranges.some(k=>a.Rectangle.intersects(k,C))).length!==1)return!0;const{startRow:w,endRow:P,startColumn:y,endColumn:M}=C,x=n.get(m.RangeProtectionCache);for(let D=w;D<=P;D++)for(let k=y;k<=M;k++){const V=x.getCellInfo(c,d,D,k);if(V)return V[m.UnitAction.Delete]===!1}return!1}))})):O.of(!0)))}function Yl(n){var d;const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService),i=n.has(he)?n.get(he):null,l=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_FX_BAR_EDITOR),c=(d=i==null?void 0:i.visible$)!=null?d:O.of(null);return O.combineLatest([t,r.currentUser$,c,l]).pipe(O.switchMap(([u,h,g,S])=>!u||g!=null&&g.visible&&g.unitId===u.getUnitId()||S?O.of(!0):u.activeSheet$.pipe(O.switchMap(f=>{var C,b;if(!f)return O.of(!0);const p=u.getUnitId();return((b=(C=e.getPermissionPoint$(new m.WorkbookEditablePermission(p).id))==null?void 0:C.pipe(O.map(R=>!!R.value)))!=null?b:O.of(!1)).pipe(O.map(R=>!R))}))))}const jr="sheet.contextMenu.permission";function dS(n){return{id:Ir.id,type:_.MenuItemType.BUTTON,icon:Vl,tooltip:"permission.toolbarMenu",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:Xl(n)}}function oi(n){return{id:jr,type:_.MenuItemType.SUBITEMS,title:"rightClick.protectRange",icon:Wl,hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function ii(n){return{id:xt.id,type:_.MenuItemType.BUTTON,title:"rightClick.turnOnProtectRange",hidden$:rS(n),disabled$:Xl(n)}}function si(n){return{id:Dt.id,type:_.MenuItemType.BUTTON,title:"rightClick.editProtectRange",disabled$:iS(n),hidden$:oS(n)}}function ai(n){return{id:At.id,type:_.MenuItemType.BUTTON,title:"rightClick.removeProtectRange",disabled$:cS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function li(n){return{id:Ot.id,type:_.MenuItemType.BUTTON,title:"rightClick.viewAllProtectArea",disabled$:Yl(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function uS(n){return{id:br.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.addProtectSheet",disabled$:sS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function hS(n){return{id:Tr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.removeProtectSheet",disabled$:aS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function mS(n){return{id:yr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.changeSheetPermission",disabled$:lS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function gS(n){return{id:Rr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.viewAllProtectArea",disabled$:Yl(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function SS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.ICommandService),t=new O.Observable(i=>{const s=e.onCommandExecuted(l=>{const c=l.id;(c===m.RemoveSheetMutation.id||c===m.InsertSheetMutation.id||c===m.SetWorksheetHideMutation.id)&&eo(o,i)});return eo(o,i),s.dispose}),r=yn(n,[m.WorkbookEditablePermission,m.WorkbookDeleteSheetPermission]);return{id:wr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.delete",disabled$:O.combineLatest([t,r]).pipe(O.map(([i,s])=>i||s)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function fS(n){return{id:m.CopySheetCommand.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.copy",disabled$:yn(n,[m.WorkbookEditablePermission,m.WorkbookCreateSheetPermission]),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function pS(n){return{id:Mr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.rename",disabled$:yn(n,[m.WorkbookEditablePermission,m.WorkbookRenameSheetPermission]),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function vS(n){return{id:m.SetTabColorCommand.id,title:"sheetConfig.changeColor",type:_.MenuItemType.SELECTOR,selections:[{label:{name:_.COLOR_PICKER_COMPONENT,hoverable:!1}}],hidden$:yn(n,[m.WorkbookEditablePermission])}}function CS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.ICommandService);return{id:m.SetWorksheetHideCommand.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.hide",disabled$:new O.Observable(t=>{const r=e.onCommandExecuted(i=>{const s=i.id;(s===m.RemoveSheetMutation.id||s===m.InsertSheetMutation.id||s===m.SetWorksheetHideMutation.id)&&eo(o,t)});return eo(o,t),r.dispose}).pipe(O.combineLatestWith(yn(n,[m.WorkbookEditablePermission,m.WorkbookHideSheetPermission])),O.map(([t,r])=>t||r)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function _S(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.ICommandService);return{id:Er.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.unhide",disabled$:new O.Observable(t=>{function r(){const s=o.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET).getWorksheets(),l=Array.from(s.values());t.next(l.length===1)}const i=e.onCommandExecuted(s=>{const l=s.id;(l===m.RemoveSheetMutation.id||l===m.InsertSheetMutation.id||l===m.SetWorksheetHideMutation.id)&&r()});return r(),i.dispose}).pipe(O.combineLatestWith(yn(n,[m.WorkbookEditablePermission,m.WorkbookHideSheetPermission])),O.map(([t,r])=>t||r)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function eo(n,o){const e=n.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET).getWorksheets(),t=Array.from(e.values()).filter(r=>r.getConfig().hidden===a.BooleanNumber.FALSE);o.next(t.length===1)}const Gl={[_.RibbonPosition.START]:{[_.RibbonStartGroup.HISTORY]:{[En.id]:{order:2,menuItemFactory:gm},[m.ClearSelectionAllCommand.id]:{order:3,menuItemFactory:kr}},[_.RibbonStartGroup.FORMAT]:{[mr.id]:{order:1,menuItemFactory:Cm},[hr.id]:{order:2,menuItemFactory:_m},[Bt.id]:{order:5,menuItemFactory:Sm},[Ft.id]:{order:6,menuItemFactory:fm},[jt.id]:{order:7,menuItemFactory:pm},[zt.id]:{order:8,menuItemFactory:vm},[fn.id]:{order:9,menuItemFactory:bm,[m.ResetTextColorCommand.id]:{order:0,menuItemFactory:Im}},[m.SetBackgroundColorCommand.id]:{order:10,menuItemFactory:wm,[m.ResetBackgroundColorCommand.id]:{order:0,menuItemFactory:Rm}},[m.SetBorderBasicCommand.id]:{order:11,menuItemFactory:Wg}},[_.RibbonStartGroup.LAYOUT]:{[m.SetHorizontalTextAlignCommand.id]:{order:0,menuItemFactory:Em},[m.SetVerticalTextAlignCommand.id]:{order:3,menuItemFactory:Tm},[m.SetTextWrapCommand.id]:{order:6,menuItemFactory:ym},[m.SetTextRotationCommand.id]:{order:7,menuItemFactory:Mm},[m.AddWorksheetMergeCommand.id]:{order:8,menuItemFactory:Jg,[m.AddWorksheetMergeAllCommand.id]:{order:0,menuItemFactory:$g},[m.AddWorksheetMergeVerticalCommand.id]:{order:1,menuItemFactory:eS},[m.AddWorksheetMergeHorizontalCommand.id]:{order:2,menuItemFactory:tS},[m.RemoveWorksheetMergeCommand.id]:{order:3,menuItemFactory:nS}}},[_.RibbonStartGroup.OTHERS]:{[Ir.id]:{order:0,menuItemFactory:dS}}},[_.ContextMenuPosition.MAIN_AREA]:{[_.ContextMenuGroup.FORMAT]:{[Le.name]:{order:0,menuItemFactory:sn},[Be.name]:{order:2,menuItemFactory:Lo},[Yn]:{order:3,menuItemFactory:Bo,[nn.id]:{order:0,menuItemFactory:Fo},[rn.id]:{order:1,menuItemFactory:jo},[Pt.id]:{order:2,menuItemFactory:zo},[on.id]:{order:3,menuItemFactory:Xo}},[Fr]:{order:4,menuItemFactory:ti,[m.ClearSelectionContentCommand.id]:{order:0,menuItemFactory:ni},[m.ClearSelectionFormatCommand.id]:{order:1,menuItemFactory:ri},[m.ClearSelectionAllCommand.id]:{order:2,menuItemFactory:kr}}},[_.ContextMenuGroup.LAYOUT]:{order:1,[zl]:{order:0,menuItemFactory:jg,[m.InsertRowBeforeCommand.id]:{order:0,menuItemFactory:zg},[m.InsertColBeforeCommand.id]:{order:1,menuItemFactory:Xg},[Pn.id]:{order:2,menuItemFactory:Yg},[Wt.id]:{order:3,menuItemFactory:Gg}},[jl]:{order:0,menuItemFactory:Ug,[_n.id]:{order:0,menuItemFactory:ha},[Cn.id]:{order:1,menuItemFactory:ma},[Mn.id]:{order:2,menuItemFactory:Lg},[Vt.id]:{order:3,menuItemFactory:Bg}},[yl]:{order:2,menuItemFactory:Om,[ot.id]:{order:0,menuItemFactory:Yo},[fr.id]:{order:1,menuItemFactory:Am},[pr.id]:{order:2,menuItemFactory:Dm},[m.CancelFrozenCommand.id]:{order:3,menuItemFactory:Go}},[jr]:{order:3,menuItemFactory:oi,[xt.id]:{order:0,menuItemFactory:ii},[Dt.id]:{order:1,menuItemFactory:si},[At.id]:{order:2,menuItemFactory:ai},[Ot.id]:{order:3,menuItemFactory:li}}},[_.ContextMenuGroup.DATA]:{order:2},[_.ContextMenuGroup.OTHERS]:{order:3}},[_.ContextMenuPosition.COL_HEADER]:{[_.ContextMenuGroup.FORMAT]:{[Le.name]:{order:0,menuItemFactory:sn},[Be.name]:{order:2,menuItemFactory:Lo},[Yn]:{order:3,menuItemFactory:Bo,[nn.id]:{order:0,menuItemFactory:Fo},[rn.id]:{order:1,menuItemFactory:jo},[Pt.id]:{order:2,menuItemFactory:zo},[on.id]:{order:3,menuItemFactory:Xo}},[Fr]:{order:4,menuItemFactory:ti,[m.ClearSelectionContentCommand.id]:{order:0,menuItemFactory:ni},[m.ClearSelectionFormatCommand.id]:{order:1,menuItemFactory:ri},[m.ClearSelectionAllCommand.id]:{order:2,menuItemFactory:kr}}},[_.ContextMenuGroup.LAYOUT]:{order:1,[m.InsertMultiColsLeftCommand.id]:{order:0,menuItemFactory:qg},[m.InsertMultiColsRightCommand.id]:{order:0,menuItemFactory:Qg},[ur.id]:{order:1,menuItemFactory:Nm},[m.SetSelectedColsVisibleCommand.id]:{order:2,menuItemFactory:Vm},[_n.id]:{order:2,menuItemFactory:ha},[m.SetColWidthCommand.id]:{order:3,menuItemFactory:Um},[vr.id]:{order:4,menuItemFactory:xm},[Ai]:{order:5,menuItemFactory:oa,[ot.id]:{order:0,menuItemFactory:Yo},[m.CancelFrozenCommand.id]:{order:3,menuItemFactory:Go}},[jr]:{order:6,menuItemFactory:oi,[xt.id]:{order:0,menuItemFactory:ii},[Dt.id]:{order:1,menuItemFactory:si},[At.id]:{order:2,menuItemFactory:ai},[Ot.id]:{order:3,menuItemFactory:li}}},[_.ContextMenuGroup.DATA]:{order:2},[_.ContextMenuGroup.OTHERS]:{order:3}},[_.ContextMenuPosition.ROW_HEADER]:{[_.ContextMenuGroup.FORMAT]:{[Le.name]:{order:0,menuItemFactory:sn},[Be.name]:{order:2,menuItemFactory:Lo},[Yn]:{order:3,menuItemFactory:Bo,[nn.id]:{order:0,menuItemFactory:Fo},[rn.id]:{order:1,menuItemFactory:jo},[Pt.id]:{order:2,menuItemFactory:zo},[on.id]:{order:3,menuItemFactory:Xo}},[Fr]:{order:4,menuItemFactory:ti,[m.ClearSelectionContentCommand.id]:{order:0,menuItemFactory:ni},[m.ClearSelectionFormatCommand.id]:{order:1,menuItemFactory:ri},[m.ClearSelectionAllCommand.id]:{order:2,menuItemFactory:kr}}},[_.ContextMenuGroup.LAYOUT]:{order:1,[m.InsertMultiRowsAboveCommand.id]:{order:0,menuItemFactory:Kg},[m.InsertMultiRowsAfterCommand.id]:{order:1,menuItemFactory:Zg},[Cn.id]:{order:1,menuItemFactory:ma},[dr.id]:{order:2,menuItemFactory:km},[m.SetSelectedRowsVisibleCommand.id]:{order:2,menuItemFactory:Hm},[m.SetRowHeightCommand.id]:{order:3,menuItemFactory:Wm},[m.SetWorksheetRowIsAutoHeightCommand.id]:{order:4,menuItemFactory:Pm},[Ai]:{order:5,menuItemFactory:oa,[ot.id]:{order:0,menuItemFactory:Yo},[m.CancelFrozenCommand.id]:{order:3,menuItemFactory:Go}},[jr]:{order:6,menuItemFactory:oi,[xt.id]:{order:0,menuItemFactory:ii},[Dt.id]:{order:1,menuItemFactory:si},[At.id]:{order:2,menuItemFactory:ai},[Ot.id]:{order:3,menuItemFactory:li}}},[_.ContextMenuGroup.DATA]:{order:2},[_.ContextMenuGroup.OTHERS]:{order:3}},[_.ContextMenuPosition.FOOTER_TABS]:{[_.ContextMenuGroup.OTHERS]:{order:0,[wr.id]:{order:0,menuItemFactory:SS},[m.CopySheetCommand.id]:{order:1,menuItemFactory:fS},[Mr.id]:{order:2,menuItemFactory:pS},[m.SetTabColorCommand.id]:{order:3,menuItemFactory:vS},[m.SetWorksheetHideCommand.id]:{order:4,menuItemFactory:CS},[Er.id]:{order:6,menuItemFactory:_S},[br.id]:{order:7,menuItemFactory:uS},[Tr.id]:{order:8,menuItemFactory:hS},[yr.id]:{order:9,menuItemFactory:mS},[Rr.id]:{order:10,menuItemFactory:gS}}},[_.ContextMenuPosition.FOOTER_MENU]:{[_.ContextMenuGroup.OTHERS]:{[m.ToggleGridlinesCommand.id]:{order:1,menuItemFactory:Fg}}}},Zl={id:m.SetRowHiddenCommand.id,preconditions:n=>ae(n),binding:_.KeyCode.Digit9|_.MetaKeys.CTRL_COMMAND},Kl={id:m.SetColHiddenCommand.id,preconditions:n=>ae(n),binding:_.KeyCode.Digit0|_.MetaKeys.CTRL_COMMAND|_.MetaKeys.SHIFT},ql={id:ye.id,description:"shortcut.sheet.select-below-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.DOWN}},Ql={id:ye.id,description:"shortcut.sheet.select-up-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.UP}},Jl={id:ye.id,description:"shortcut.sheet.select-left-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT,priority:100,preconditions:ol,staticParameters:{direction:a.Direction.LEFT}},$l={id:ye.id,description:"shortcut.sheet.select-right-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT,priority:100,preconditions:ol,staticParameters:{direction:a.Direction.RIGHT}},ec={id:Ge.id,description:"shortcut.sheet.select-next-cell",group:"3_sheet-view",binding:_.KeyCode.TAB,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT,keycode:_.KeyCode.TAB}},tc={id:Ge.id,description:"shortcut.sheet.select-previous-cell",group:"3_sheet-view",binding:_.KeyCode.TAB|_.MetaKeys.SHIFT,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.LEFT,keycode:_.KeyCode.TAB}},nc={id:Ge.id,description:"shortcut.sheet.select-below-cell",group:"3_sheet-view",binding:_.KeyCode.ENTER,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.DOWN,keycode:_.KeyCode.ENTER}},rc={id:Ge.id,description:"shortcut.sheet.select-up-cell",group:"3_sheet-view",binding:_.KeyCode.ENTER|_.MetaKeys.SHIFT,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.UP,keycode:_.KeyCode.ENTER}},oc={id:ye.id,description:"shortcut.sheet.select-below-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.DOWN,jumpOver:Ye.moveGap}},ic={id:ye.id,description:"shortcut.sheet.select-up-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.UP,jumpOver:Ye.moveGap}},sc={id:ye.id,description:"shortcut.sheet.select-left-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.LEFT,jumpOver:Ye.moveGap}},ac={id:ye.id,description:"shortcut.sheet.select-right-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT,jumpOver:Ye.moveGap}},lc={id:xe.id,description:"shortcut.sheet.expand-selection-down",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.DOWN}},cc={id:xe.id,description:"shortcut.sheet.expand-selection-up",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.UP}},dc={id:xe.id,description:"shortcut.sheet.expand-selection-left",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.LEFT}},uc={id:xe.id,description:"shortcut.sheet.expand-selection-right",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT}},hc={id:xe.id,description:"shortcut.sheet.expand-selection-to-below-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.DOWN,jumpOver:Ye.moveGap}},mc={id:xe.id,description:"shortcut.sheet.expand-selection-to-up-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.UP,jumpOver:Ye.moveGap}},gc={id:xe.id,description:"shortcut.sheet.expand-selection-to-left-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.LEFT,jumpOver:Ye.moveGap}},Sc={id:xe.id,description:"shortcut.sheet.expand-selection-to-right-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT,jumpOver:Ye.moveGap}},fc={id:sr.id,description:"shortcut.sheet.select-all",group:"3_sheet-view",binding:_.KeyCode.A|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{expandToGapFirst:!0,loop:!0}},pc={id:Bt.id,description:"shortcut.sheet.set-bold",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.B|_.MetaKeys.CTRL_COMMAND},vc={id:Ft.id,description:"shortcut.sheet.set-italic",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.I|_.MetaKeys.CTRL_COMMAND},Cc={id:jt.id,description:"shortcut.sheet.set-underline",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.U|_.MetaKeys.CTRL_COMMAND},_c={id:zt.id,description:"shortcut.sheet.set-strike-through",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.X|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND},Ic={id:m.ClearSelectionContentCommand.id,preconditions:n=>ae(n),binding:_.KeyCode.DELETE,mac:_.KeyCode.BACKSPACE},IS={id:m.ClearSelectionContentCommand.id,preconditions:n=>ae(n),mac:_.KeyCode.DELETE},bS={id:m.ClearSelectionContentCommand.id,preconditions:n=>ae(n),binding:_.MetaKeys.SHIFT+_.KeyCode.BACKSPACE},RS={id:Oo.id,preconditions:n=>ae(n),binding:_.MetaKeys.SHIFT+_.KeyCode.DELETE},bc={id:bn.id,description:"shortcut.sheet.zoom-in",binding:_.KeyCode.EQUAL|_.MetaKeys.CTRL_COMMAND,group:"3_sheet-view",preconditions:ae,priority:1,staticParameters:{delta:.2}},Rc={id:a.NilCommand.id,binding:_.KeyCode.EQUAL|_.MetaKeys.CTRL_COMMAND},wc={id:bn.id,description:"shortcut.sheet.zoom-out",binding:_.KeyCode.MINUS|_.MetaKeys.CTRL_COMMAND,group:"3_sheet-view",preconditions:ae,priority:1,staticParameters:{delta:-.2}},Ec={id:a.NilCommand.id,binding:_.KeyCode.MINUS|_.MetaKeys.CTRL_COMMAND},Tc={id:bn.id,description:"shortcut.sheet.reset-zoom",binding:_.KeyCode.Digit0|_.MetaKeys.CTRL_COMMAND,preconditions:ae,group:"3_sheet-view",priority:1,staticParameters:{reset:!0}},yc={id:a.NilCommand.id,binding:_.KeyCode.Digit0|_.MetaKeys.CTRL_COMMAND};var wS=Object.getOwnPropertyDescriptor,ES=(n,o,e,t)=>{for(var r=t>1?void 0:t?wS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},at=(n,o)=>(e,t)=>o(e,t,n);exports.SheetUIController=class extends a.Disposable{constructor(o,e,t,r,i,s,l,c){super(),this._injector=o,this._componentManager=e,this._layoutService=t,this._commandService=r,this._shortcutService=i,this._menuManagerService=s,this._uiPartsService=l,this._configService=c,this._init()}_init(){this._initComponents(),this._initCommands(),this._initMenus(),this._initShortcuts(),this._initWorkbenchParts(),this._initFocusHandler()}_initComponents(){const o=this._componentManager;this.disposeWithMe(o.register(Ke,bl)),this.disposeWithMe(o.register(_s,Ll)),this.disposeWithMe(o.register(qn,Fl)),this.disposeWithMe(o.register(Bl,Vg)),this.disposeWithMe(o.register("HideGridlinesDoubleIcon",ja))}_initCommands(){[fs,vt,vs,ps,bn,xe,ye,Ge,Mr,wr,Cn,_n,dr,ur,Ue,es,sr,Po,m.SetBoldCommand,Ht,Se,ir,Bt,Ft,jt,zt,ms,gs,hr,mr,fn,Ss,m.SetItalicCommand,m.SetStrikeThroughCommand,m.SetFontFamilyCommand,m.SetFontSizeCommand,gr,Ao,En,Sr,We,hn,ot,fr,pr,ts,m.SetUnderlineCommand,Rn,ke,Er,or,Wt,Vt,Pn,Mn,Mo,dt,dn,Xe,Cs,Ir,xt,Ot,br,Rr,yr,At,Dt,Tr,vr,Ro,wo].forEach(o=>{this.disposeWithMe(this._commandService.registerCommand(o))})}_initMenus(){this._menuManagerService.mergeMenu(Gl)}_initShortcuts(){[ql,Ql,Jl,$l,ec,tc,nc,rc,oc,ic,sc,ac,lc,cc,dc,uc,hc,mc,gc,Sc,fc,bc,wc,Tc,yc,Rc,Ec,pc,vc,Cc,_c,Ic,IS,bS,RS,...sl(),ll,al,cl,ul,hl,mh,ml,dl,hh,gh,Zl,Kl].forEach(o=>{this.disposeWithMe(this._shortcutService.registerShortcut(o))})}_initWorkbenchParts(){const o=this._uiPartsService,e=this._injector;this.disposeWithMe(o.registerComponent(_.BuiltInUIPart.HEADER,()=>_.connectInjector(tl,e))),this.disposeWithMe(o.registerComponent(_.BuiltInUIPart.FOOTER,()=>_.connectInjector(el,e))),this.disposeWithMe(o.registerComponent(_.BuiltInUIPart.CONTENT,()=>_.connectInjector(nl,e)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(a.UniverInstanceType.UNIVER_SHEET,o=>{const e=this._injector.get(T.IRenderManagerService),t=this._injector.get(a.IUniverInstanceService),r=T.getCurrentTypeOfRenderer(a.UniverInstanceType.UNIVER_DOC,t,e),i=r==null?void 0:r.with(J.DocSelectionRenderService);i==null||i.focus()}))}};exports.SheetUIController=ES([at(0,a.Inject(a.Injector)),at(1,a.Inject(_.ComponentManager)),at(2,_.ILayoutService),at(3,a.ICommandService),at(4,_.IShortcutService),at(5,_.IMenuManagerService),at(6,_.IUIPartsService),at(7,a.IConfigService)],exports.SheetUIController);const Mc=(n=[])=>{const o=_.useDependency(Lt);H.useEffect(()=>{const e=n.map(t=>o.addShape({range:t,style:{fill:"rgba(73, 184, 17, 0.05)",strokeWidth:1,stroke:"#49B811",widgets:{}},primary:{startColumn:t.startColumn,endColumn:t.endColumn,startRow:t.startRow,endRow:t.endRow,actualRow:t.startRow,actualColumn:t.startColumn,isMerged:!1,isMergedMainCell:!1}}));return()=>{e.forEach(t=>{t&&o.removeShape(t)})}},[n])};var TS=Object.getOwnPropertyDescriptor,yS=(n,o,e,t)=>{for(var r=t>1?void 0:t?TS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},ga=(n,o)=>(e,t)=>o(e,t,n);let $n=class extends a.Disposable{constructor(o,e){super();E(this,"_previousSheetIndex",-1);this._commandService=o,this._univerInstanceService=e,this.disposeWithMe(this._commandService.beforeCommandExecuted(t=>{if(t.id===m.RemoveSheetMutation.id)return this._beforeAdjustActiveSheetOnRemoveSheet(t)})),this.disposeWithMe(this._commandService.onCommandExecuted((t,r)=>{if(t.id===m.RemoveSheetMutation.id)return this._adjustActiveSheetOnRemoveSheet(t);if(t.id===m.SetWorksheetHideMutation.id&&t.params.hidden)return this._adjustActiveSheetOnHideSheet(t);if(r!=null&&r.fromCollab)return!1;if(t.id===m.InsertSheetMutation.id)return this._adjustActiveSheetOnInsertSheet(t);if(t.id===m.SetWorksheetHideMutation.id&&!t.params.hidden)return this._adjustActiveSheetOnShowSheet(t);if(t.id===m.SetSelectionsOperation.id)return this._adjustActiveSheetOnSelection(t)}))}_adjustActiveSheetOnHideSheet(o){var c;const{unitId:e,subUnitId:t}=o.params,r=this._univerInstanceService.getUniverSheetInstance(e);if(!r||((c=r.getActiveSheet())==null?void 0:c.getSheetId())!==t)return;const s=r.getActiveSheetIndex(),l=Sa(r,s);this._switchToNextSheet(e,l)}_beforeAdjustActiveSheetOnRemoveSheet(o){const{unitId:e,subUnitId:t}=o.params,r=this._univerInstanceService.getUniverSheetInstance(e);if(!r)return;const i=r.getSheetBySheetId(t);i&&(this._previousSheetIndex=r.getSheetIndex(i))}_adjustActiveSheetOnRemoveSheet(o){if(this._previousSheetIndex===-1)return;const{unitId:e}=o.params,t=this._univerInstanceService.getUniverSheetInstance(e);if(!t)return;if(t.getActiveSheet().getSheetId()===o.params.subUnitId){const i=this._previousSheetIndex,s=i>=1?i-1:0,l=Sa(t,s);this._switchToNextSheet(e,l)}}_adjustActiveSheetOnInsertSheet(o){const{unitId:e,sheet:t}=o.params;this._switchToNextSheet(e,t.id)}_adjustActiveSheetOnShowSheet(o){const{unitId:e,subUnitId:t}=o.params;this._switchToNextSheet(e,t)}_adjustActiveSheetOnSelection(o){var r;const{unitId:e,subUnitId:t}=o.params;t!==((r=this._univerInstanceService.getUnit(e))==null?void 0:r.getActiveSheet().getSheetId())&&this._switchToNextSheet(e,t)}_switchToNextSheet(o,e){this._commandService.executeCommand(m.SetWorksheetActiveOperation.id,{unitId:o,subUnitId:e})}};$n=yS([ga(0,a.ICommandService),ga(1,a.IUniverInstanceService)],$n);function Sa(n,o){const e=n.getSheetSize();for(let t=o;t>-1;t--){const r=n.getSheetByIndex(t);if(!r.getConfig().hidden)return r.getSheetId()}for(let t=o;t<e;t++){const r=n.getSheetByIndex(t);if(!r.getConfig().hidden)return r.getSheetId()}throw new Error("[ActiveWorksheetController]: could not find the next unhidden sheet! Collaboration error perhaps.")}var MS=Object.getOwnPropertyDescriptor,PS=(n,o,e,t)=>{for(var r=t>1?void 0:t?MS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},fa=(n,o)=>(e,t)=>o(e,t,n),an=(n=>(n[n.INFO=0]="INFO",n[n.WARNING=1]="WARNING",n[n.ERROR=2]="ERROR",n))(an||{});exports.CellAlertManagerService=class extends a.Disposable{constructor(e,t){super();E(this,"_currentAlert$",new O.Subject);E(this,"_currentAlert",new Map);E(this,"currentAlert$",this._currentAlert$.asObservable());this._renderManagerService=e,this._cellPopupManagerService=t,this.disposeWithMe(()=>{this._currentAlert$.complete()})}get currentAlert(){return this._currentAlert}showAlert(e){let t=this._currentAlert.get(e.key);t&&t.dispose.dispose(),t?t.dispose.dispose():(t={alert:e,dispose:{dispose(){}}},this._currentAlert.set(e.key,t));const{location:r}=e,{row:i,col:s,unitId:l,subUnitId:c}=r;if(!this._renderManagerService.getRenderById(l))return;const u=this._cellPopupManagerService.showPopup({unitId:l,subUnitId:c,row:i,col:s},{componentKey:Pc,direction:"horizontal",extraProps:{alert:e},priority:1});u&&(t.dispose=u),this._currentAlert$.next(Array.from(this._currentAlert.entries()))}removeAlert(e){const t=this._currentAlert.get(e);t&&(this._currentAlert.delete(e),t==null||t.dispose.dispose(),this._currentAlert$.next(Array.from(this._currentAlert.entries())))}clearAlert(){this._currentAlert.forEach(e=>{e.dispose.dispose()}),this._currentAlert.clear(),this._currentAlert$.next(Array.from(this._currentAlert.entries()))}};exports.CellAlertManagerService=PS([fa(0,T.IRenderManagerService),fa(1,a.Inject(exports.CellPopupManagerService))],exports.CellAlertManagerService);function xS({popup:n}){var s;const o=(s=n.extraProps)==null?void 0:s.alert;if(!o)return null;const{type:e,title:t,message:r}=o,i={[an.ERROR]:I.jsx(ns,{className:"univer-mr-1.5 univer-text-red-500"}),[an.INFO]:I.jsx(za,{className:"univer-mr-1.5 univer-text-blue-500"}),[an.WARNING]:I.jsx(Ka,{className:"univer-mr-1.5 univer-text-yellow-500"})};return I.jsxs("div",{className:"univer-z-[100] univer-box-border univer-w-[156px] univer-rounded-lg univer-bg-white univer-px-2 univer-py-1 univer-text-gray-900 univer-shadow dark:!univer-bg-black dark:!univer-text-white",children:[I.jsxs("div",{className:"univer-mb-1.5 univer-flex univer-h-5 univer-flex-row univer-items-center univer-text-sm univer-font-medium",children:[e?i[e]:null,t]}),I.jsx("div",{className:"univer-text-sm",children:r})]})}const Pc="univer.sheet.cell-alert";var OS=Object.getOwnPropertyDescriptor,AS=(n,o,e,t)=>{for(var r=t>1?void 0:t?OS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},DS=(n,o)=>(e,t)=>o(e,t,n);let to=class extends a.Disposable{constructor(n,o){super(),this._context=n,this._componentManager=o,this._initComponent()}_initComponent(){this.disposeWithMe(this._componentManager.register(Pc,xS))}};to=AS([DS(1,a.Inject(_.ComponentManager))],to);const pa=2,kS=[{value:"DEFAULT_PASTE",label:"rightClick.paste"},{value:"SPECIAL_PASTE_VALUE",label:"rightClick.pasteValue"},{value:"SPECIAL_PASTE_FORMAT",label:"rightClick.pasteFormat"},{value:"SPECIAL_PASTE_COL_WIDTH",label:"rightClick.pasteColWidth"},{value:"SPECIAL_PASTE_BESIDES_BORDER",label:"rightClick.pasteBesidesBorder"},{value:"SPECIAL_PASTE_FORMULA",label:"formula.operation.pasteFormula"}],NS=n=>{var k,V,W,N,U;const o=_.useDependency(a.IUniverInstanceService),e=_.useDependency(T.IRenderManagerService),t=ft();if(!n||!t)return null;const r={startRow:n.rows[0],startCol:n.cols[0],endRow:n.rows[n.rows.length-1],endCol:n.cols[n.cols.length-1]};if(r.endRow<0||r.endCol<0)return null;const i=e.getRenderById(t.getUnitId()),s=i==null?void 0:i.with(exports.SheetSkeletonManagerService),l=i==null?void 0:i.with(pe),c=Ne(o,e);if(!c||!l)return null;const{scene:d}=c,u=s==null?void 0:s.getCurrentSkeleton(),h=l.getViewPort(),g=d==null?void 0:d.scaleX,S=d==null?void 0:d.scaleY,f=d==null?void 0:d.getViewportScrollXY(h),p=(k=d.getEngine())==null?void 0:k.getCanvas();if(!g||!d||!g||!S||!f)return null;const v=u==null?void 0:u.getNoMergeCellPositionByIndex(r.endRow,r.endCol),C=(V=v==null?void 0:v.endX)!=null?V:0,b=(W=v==null?void 0:v.endY)!=null?W:0,R=(N=T.convertTransformToOffsetX(C,g,f))!=null?N:-9999,w=(U=T.convertTransformToOffsetY(b,S,f))!=null?U:-9999,P=p==null?void 0:p.getWidth(),y=p==null?void 0:p.getHeight();if(!P||!y)return null;const M=R+50<=P,x=w+50<=y;let A=R,D=w;return M||(A=P-100),x||(D=y-100),{positionX:A,positionY:D}},HS=()=>{const n=_.useDependency(Ve),o=_.useObservable(n.showMenu$,!1),e=_.useObservable(n.pasteOptionsCache$,null),t=_.useDependency(a.LocaleService),r=_.useDependency(a.ICommandService),[i,s]=H.useState(!1),[l,c]=H.useState(!1),d=e==null?void 0:e.target.pastedRange,u=NS(d);if(!u||!o||u.positionX<50||u.positionY<30)return null;const h=i||l,g=S=>{c(!1),r.executeCommand(_l.id,{type:S})};return I.jsx("div",{className:"univer-absolute univer-inset-0 univer-z-10 univer-size-0",children:I.jsx("div",{className:"univer-absolute",style:{left:u.positionX+pa,top:u.positionY+pa},onMouseEnter:()=>s(!0),onMouseLeave:()=>s(!1),children:I.jsx(j.DropdownMenu,{align:"start",items:kS.map(S=>({type:"checkbox",value:S.value,label:t.t(S.label),checked:(e==null?void 0:e.pasteType)===ge[S.value],onSelect:()=>g(S.value)})),open:l,onOpenChange:c,children:I.jsxs("div",{className:j.clsx("univer-flex univer-items-center univer-gap-2 univer-rounded univer-p-1 dark:hover:!univer-bg-gray-800 hover:univer-bg-gray-100",j.borderClassName,{"univer-bg-gray-100 dark:!univer-bg-gray-800":l,"univer-bg-white dark:!univer-bg-gray-900":!l}),children:[I.jsx(Ya,{className:"univer-fill-primary-600 univer-text-gray-900 dark:!univer-text-white"}),h&&I.jsx(mn,{className:"dark:!univer-text-white"})]})})})})},VS=[Se.id,m.SetRangeValuesCommand.id,ke.id,m.MoveRangeMutation.id,m.RemoveRowMutation.id,m.RemoveColMutation.id,m.InsertRowMutation.id,m.InsertColMutation.id,m.MoveRowsMutation.id,m.MoveColsMutation.id,m.SetWorksheetColWidthMutation.id,m.SetWorksheetRowHeightMutation.id,m.SetSelectionsOperation.id,a.UndoCommandId];function WS(n,o,e,t,r){const i=[],s=[];if(t.copyType===tt.CUT){const{undos:l,redos:c}=US(n,o,r);i.push(...c),s.push(...l)}else{const{undos:l,redos:c}=Ac(o,e,r);i.push(...c),s.push(...l);const{undos:d,redos:u}=LS(o,e,r);i.push(...u),s.push(...d);const{undos:h,redos:g}=xc(o,n,e,r);i.push(...g),s.push(...h);const{undos:S,redos:f}=Oc(o,n,e,r,!0);i.push(...f),s.push(...S);const{undos:p,redos:v}=Ni(o,e,r);i.push(...v),s.push(...p)}return{undos:s,redos:i}}function US(n,o,e){let t=[],r=[];const{range:i,subUnitId:s,unitId:l}=n,{range:c,subUnitId:d}=o,u=c?gt(c):null,h=i?gt(i):null;if(h&&u){const g=e.get(a.IUniverInstanceService),S=e.get(m.SheetInterceptorService),f=g.getUniverSheetInstance(l),p=f==null?void 0:f.getSheetBySheetId(s),v=f==null?void 0:f.getSheetBySheetId(d);if(p&&v){const C=new a.ObjectMatrix,b=new a.ObjectMatrix,R=p.getCellMatrix(),w=v.getCellMatrix();a.Range.foreach(h,(B,F)=>{C.setValue(B,F,a.Tools.deepClone(R.getValue(B,F))),b.setValue(B,F,null)});const P=new a.ObjectMatrix;a.Range.foreach(u,(B,F)=>{P.setValue(B,F,a.Tools.deepClone(w.getValue(B,F)))});const y=new a.ObjectMatrix;a.Range.foreach(h,(B,F)=>{const X=a.cellToRange(B,F),K=a.Rectangle.getRelativeRange(X,h),te=a.Rectangle.getPositionRange(K,u);y.setValue(te.startRow,te.startColumn,R.getValue(B,F))});const M={fromRange:h,toRange:u,from:{value:b.getMatrix(),subUnitId:s},to:{value:y.getMatrix(),subUnitId:d},unitId:l},x={fromRange:u,toRange:h,from:{value:C.getMatrix(),subUnitId:s},to:{value:P.getMatrix(),subUnitId:d},unitId:l},A=S.onCommandExecute({id:m.MoveRangeCommand.id,params:{toRange:u,fromRange:h}}),D=p.getMergeData(),k=v.getMergeData(),V=D.filter(B=>a.Rectangle.intersects(B,h)),W=k.filter(B=>a.Rectangle.intersects(B,u)),N=V.map(B=>a.Rectangle.getRelativeRange(B,h)).map(B=>a.Rectangle.getPositionRange(B,u)),U=m.getAddMergeMutationRangeByType(N),L=[{id:m.RemoveWorksheetMergeMutation.id,params:{unitId:l,subUnitId:s,ranges:V}},{id:m.RemoveWorksheetMergeMutation.id,params:{unitId:l,subUnitId:s,ranges:W}},{id:m.AddWorksheetMergeMutation.id,params:{unitId:l,subUnitId:d,ranges:U}}],z=[{id:m.RemoveWorksheetMergeMutation.id,params:{unitId:l,subUnitId:d,ranges:U}},{id:m.AddWorksheetMergeMutation.id,params:{unitId:l,subUnitId:d,ranges:W}},{id:m.AddWorksheetMergeMutation.id,params:{unitId:l,subUnitId:s,ranges:V}}];t=[{id:m.MoveRangeMutation.id,params:M},...A.redos,...L,{id:m.SetSelectionsOperation.id,params:{unitId:l,subUnitId:d,selections:[{range:u}],type:m.SelectionMoveType.MOVE_END}}],r=[{id:m.MoveRangeMutation.id,params:x},...A.undos,...z,{id:m.SetSelectionsOperation.id,params:{unitId:l,subUnitId:s,type:m.SelectionMoveType.MOVE_END,selections:[{range:h}]}}]}}return{undos:r,redos:t}}function xc(n,o,e,t){var f;const{unitId:r,subUnitId:i,range:s}=n,l=(f=t.get(a.IUniverInstanceService).getUniverSheetInstance(r))==null?void 0:f.getSheetBySheetId(i),c=[],d=[],{mapFunc:u}=St([s]),h=new a.ObjectMatrix;e.forValue((p,v,C)=>{var P,y;const{row:b,col:R}=u(p,v),w={v:C.v,t:C.t};if(!C.p&&C.v&&!o){const M=l==null?void 0:l.getCellStyle(b,R);if(_o.isTextFormat((P=M==null?void 0:M.n)==null?void 0:P.pattern))w.t=a.CellValueType.STRING;else{const x=String(C.v),A=a.numfmt.parseValue(x);(A==null?void 0:A.v)!==void 0&&typeof A.v=="number"&&(!A.z&&a.willLoseNumericPrecision(x)?w.t=a.CellValueType.FORCE_STRING:w.v=A.v)}}if((y=C.p)!=null&&y.body&&xi(C.p.body)){const M=a.Tools.deepClone({p:C.p,v:C.v});h.setValue(b,R,M)}else h.setValue(b,R,a.Tools.deepClone(w))});const g={unitId:r,subUnitId:i,cellValue:a.Tools.deepClone(h.getMatrix())};c.push({id:m.SetRangeValuesMutation.id,params:g});const S=m.SetRangeValuesUndoMutationFactory(t,g);return d.push({id:m.SetRangeValuesMutation.id,params:S}),{undos:d,redos:c}}function Oc(n,o,e,t,r=!1){var p;const i=[],s=[],{unitId:l,subUnitId:c,range:d}=n,u=(p=t.get(a.IUniverInstanceService).getUniverSheetInstance(l))==null?void 0:p.getSheetBySheetId(c),h=new a.ObjectMatrix,{mapFunc:g}=St([d]);e.forValue((v,C,b)=>{var x,A;const R={s:Object.assign({},{...a.DEFAULT_STYLES,pd:T.DEFAULT_PADDING_DATA,bg:null,cl:null},b.s)},w=R.s.bd;w&&(Object.keys(w).length>0||(R.s.bd={b:null,l:null,r:null,t:null}));const{row:P,col:y}=g(v,C),M=u==null?void 0:u.getCellStyle(P,y);if(b.v&&!o&&_o.isTextFormat((x=M==null?void 0:M.n)==null?void 0:x.pattern))R.s||(R.s={}),R.s.n=M==null?void 0:M.n;else{const D=String(b.v),k=a.numfmt.parseValue(D);k!=null&&k.z&&(R.s||(R.s={}),typeof R.s=="object"&&((A=R.s)!=null&&A.n?R.s.n.pattern=k.z:R.s.n={pattern:k.z}))}h.setValue(P,y,R)});const S={unitId:l,subUnitId:c,cellValue:a.Tools.deepClone(h.getMatrix())};i.push({id:m.SetRangeValuesMutation.id,params:S});const f=m.SetRangeValuesUndoMutationFactory(t,S);return s.push({id:m.SetRangeValuesMutation.id,params:f}),{undos:s,redos:i}}function Ac(n,o,e){const t=[],r=[],i=new a.ObjectMatrix,{unitId:s,subUnitId:l,range:c}=n,{mapFunc:d}=St([c]);if(o.forEach((u,h)=>{Object.keys(h).forEach(g=>{const S=Number(g),{row:f,col:p}=d(u,S);i.setValue(f,p,{s:null})})}),i.getLength()>0){const u={subUnitId:l,unitId:s,cellValue:a.Tools.deepClone(i.getMatrix())};t.push({id:m.SetRangeValuesMutation.id,params:u});const h=m.SetRangeValuesUndoMutationFactory(e,u);r.push({id:m.SetRangeValuesMutation.id,params:h})}return{undos:r,redos:t}}function LS(n,o,e){const t=[],r=[],i=new a.ObjectMatrix,{unitId:s,subUnitId:l,range:c}=n,{mapFunc:d}=St([c]);if(o.forValue((u,h,g)=>{const{row:S,col:f}=d(u,h);i.setValue(S,f,{v:null,p:null})}),i.getLength()>0){const u={subUnitId:l,unitId:s,cellValue:a.Tools.deepClone(i.getMatrix())};t.push({id:m.SetRangeValuesMutation.id,params:u});const h=m.SetRangeValuesUndoMutationFactory(e,u);r.push({id:m.SetRangeValuesMutation.id,params:h})}return{undos:r,redos:t}}function Ni(n,o,e){const t=[],r=[],{unitId:i,subUnitId:s,range:l}=n,{startColumn:c,startRow:d,endColumn:u,endRow:h}=gt(l),g=[];o.forValue((b,R,w)=>{if(w.rowSpan&&w.rowSpan>1){const P=w.colSpan||1,y={startRow:d+b,endRow:d+b+w.rowSpan-1,startColumn:c+R,endColumn:c+R+P-1};g.push(y)}else if(w.colSpan&&w.colSpan>1){const P=w.rowSpan||1,y={startRow:d+b,endRow:d+b+P-1,startColumn:c+R,endColumn:c+R+w.colSpan-1};g.push(y)}});const f=e.get(a.IUniverInstanceService).getUniverSheetInstance(i),p=f==null?void 0:f.getSheetBySheetId(s);if(f&&p){const R=p.getMergeData().filter(y=>a.Rectangle.intersects({startRow:d,startColumn:c,endRow:h,endColumn:u},y)),w={unitId:i,subUnitId:s,ranges:R};t.push({id:m.RemoveWorksheetMergeMutation.id,params:w});const P=m.RemoveMergeUndoMutationFactory(e,w);r.push({id:m.AddWorksheetMergeMutation.id,params:P})}const v={unitId:i,subUnitId:s,ranges:g};g.length>0&&t.push({id:m.AddWorksheetMergeMutation.id,params:v});const C=m.AddMergeUndoMutationFactory(e,v);return g.length>0&&r.push({id:m.RemoveWorksheetMergeMutation.id,params:C}),{undos:r,redos:t}}function BS(n){if(!n.includes("\r")&&a.Tools.isLegalUrl(n)){const t=a.generateRandomId(),r=`${n}`,i={startIndex:0,endIndex:r.length-1,rangeId:t,rangeType:a.CustomRangeType.HYPERLINK,properties:{url:n}};return{dataStream:`${r}\r
19
+ `)}),o}function om(n){return a.isNotNullOrUndefined(n.displayV)?n.displayV:a.extractPureTextFromCell(n)}function im(n,o,e,t){return t.getMergeData().some(r=>r.startRow<=n&&n<r.endRow&&o<=r.startColumn&&r.startColumn<=e)}function sm(n,o,e,t){return t.getMergeData().some(r=>r.startColumn<=n&&n<r.endColumn&&o<=r.startRow&&r.startRow<=e)}function am(n){let o=0;return n.forValue((e,t,r)=>{if(r&&o++,o>1)return!1}),o>1}function Dn(){return{p:null,v:null,s:null,f:null,si:null,t:null}}const hs=998,Le={id:_.CopyCommand.id,name:"sheet.command.copy",type:a.CommandType.COMMAND,multi:!0,priority:hs,preconditions:ls,handler:async n=>n.get(Ve).copy()},Oo={id:_.CutCommand.id,name:"sheet.command.cut",type:a.CommandType.COMMAND,multi:!0,priority:hs,preconditions:ls,handler:async n=>n.get(Ve).cut()},Be={id:_.PasteCommand.id,type:a.CommandType.COMMAND,multi:!0,name:"sheet.command.paste",priority:hs,preconditions:ls,handler:async(n,o)=>{const t=await n.get(_.IClipboardInterfaceService).read(),r=n.get(Ve);return t.length!==0?r.paste(t[0],o==null?void 0:o.value):!1}},qr={id:_.SheetPasteShortKeyCommandName,type:a.CommandType.COMMAND,handler:async(n,o)=>{const e=n.get(Ve),{htmlContent:t,textContent:r,files:i}=o;return e.legacyPaste(t,r,i),!0}},nn={id:"sheet.command.paste-value",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_VALUE})},rn={id:"sheet.command.paste-format",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_FORMAT})},Pt={id:"sheet.command.paste-col-width",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_COL_WIDTH})},on={id:"sheet.command.paste-besides-border",type:a.CommandType.COMMAND,handler:async n=>n.get(a.ICommandService).executeCommand(Be.id,{value:ge.SPECIAL_PASTE_BESIDES_BORDER})},_l={id:"sheet.command.optional-paste",type:a.CommandType.COMMAND,handler:async(n,{type:o})=>n.get(Ve).rePasteWithPasteType(o)},dr={id:"sheet.command.hide-row-confirm",type:a.CommandType.COMMAND,handler:async n=>{var c;const e=(c=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:c.map(d=>d.range);if(!(e!=null&&e.length))return!1;const t=n.get(a.ICommandService),r=n.get(a.IUniverInstanceService),i=m.getSheetCommandTarget(r);if(!i)return!1;const{worksheet:s}=i,l=s.getVisibleRows();if(Da(l,e)){const d=n.get(_.IConfirmService),u=n.get(a.LocaleService);return await d.confirm({id:"sheet.confirm.hide-row",title:{title:u.t("info.problem")},children:{title:u.t("rightClick.hideAllRowsAlert")},cancelText:u.t("button.cancel"),confirmText:u.t("button.confirm")}),!1}return await t.executeCommand(m.SetRowHiddenCommand.id),!0}},ur={id:"sheet.command.hide-col-confirm",type:a.CommandType.COMMAND,handler:async n=>{var c;const e=(c=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:c.map(d=>d.range);if(!(e!=null&&e.length))return!1;const t=n.get(a.ICommandService),r=n.get(a.IUniverInstanceService),i=m.getSheetCommandTarget(r);if(!i)return!1;const{worksheet:s}=i,l=s.getVisibleCols();if(ka(l,e)){const d=n.get(_.IConfirmService),u=n.get(a.LocaleService);return await d.confirm({id:"sheet.confirm.hide-col",title:{title:u.t("info.problem")},children:{title:u.t("rightClick.hideAllColumnsAlert")},cancelText:u.t("button.cancel"),confirmText:u.t("button.confirm")}),!1}return await t.executeCommand(m.SetColHiddenCommand.id),!0}},Bt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-bold",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatBoldCommand.id):o.executeCommand(m.SetBoldCommand.id)}},Ft={type:a.CommandType.COMMAND,id:"sheet.command.set-range-italic",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatItalicCommand.id):o.executeCommand(m.SetItalicCommand.id)}},jt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-underline",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatUnderlineCommand.id):o.executeCommand(m.SetUnderlineCommand.id)}},zt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-stroke",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatStrikethroughCommand.id):o.executeCommand(m.SetStrikeThroughCommand.id)}},ms={type:a.CommandType.COMMAND,id:"sheet.command.set-range-subscript",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatSubscriptCommand.id):!1}},gs={type:a.CommandType.COMMAND,id:"sheet.command.set-range-superscript",handler:async n=>{const o=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?o.executeCommand(J.SetInlineFormatSuperscriptCommand.id):!1}},hr={type:a.CommandType.COMMAND,id:"sheet.command.set-range-fontsize",handler:async(n,o)=>{const e=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?e.executeCommand(J.SetInlineFormatFontSizeCommand.id,o):e.executeCommand(m.SetFontSizeCommand.id,o)}},mr={type:a.CommandType.COMMAND,id:"sheet.command.set-range-font-family",handler:async(n,o)=>{const e=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?e.executeCommand(J.SetInlineFormatFontFamilyCommand.id,o):e.executeCommand(m.SetFontFamilyCommand.id,o)}},fn={type:a.CommandType.COMMAND,id:"sheet.command.set-range-text-color",handler:async(n,o)=>{const e=n.get(a.ICommandService);return n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED)?e.executeCommand(J.SetInlineFormatTextColorCommand.id,o):e.executeCommand(m.SetTextColorCommand.id,o)}},Ss={type:a.CommandType.COMMAND,id:"sheet.command.reset-range-text-color",handler:async n=>{const o=n.get(a.ICommandService),t=n.get(a.IContextService).getContextValue(a.EDITOR_ACTIVATED),r=n.get(a.ThemeService);return t?o.executeCommand(J.SetInlineFormatTextColorCommand.id,{value:null}):o.executeCommand(m.SetTextColorCommand.id,{value:r.getColorFromTheme("gray.900")})}};var lm=Object.getOwnPropertyDescriptor,cm=(n,o,e,t)=>{for(var r=t>1?void 0:t?lm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Qt=(n,o)=>(e,t)=>o(e,t,n),Pe=(n=>(n[n.OFF=0]="OFF",n[n.ONCE=1]="ONCE",n[n.INFINITE=2]="INFINITE",n))(Pe||{});const Ze=a.createIdentifier("univer.format-painter-service");let Qr=class extends a.Disposable{constructor(o,e,t,r,i,s){super();E(this,"status$");E(this,"_selectionFormat");E(this,"_markId",null);E(this,"_status$");E(this,"_defaultHook",null);E(this,"_extendHooks",[]);this._selectionManagerService=o,this._themeService=e,this._markSelectionService=t,this._logService=r,this._commandService=i,this._undoRedoService=s,this._status$=new O.BehaviorSubject(0),this.status$=this._status$.asObservable(),this._selectionFormat={styles:new a.ObjectMatrix,merges:[]}}addHook(o){var e,t,r;o.isDefaultHook&&((e=o.priority)!=null?e:0)>((r=(t=this._defaultHook)==null?void 0:t.priority)!=null?r:-1)?this._defaultHook=o:(this._extendHooks.push(o),this._extendHooks.sort((i,s)=>(i.priority||0)-(s.priority||0)))}getHooks(){return this._defaultHook?[this._defaultHook,...this._extendHooks]:this._extendHooks}setStatus(o){this._updateRangeMark(o),this._status$.next(o),this.getHooks().forEach(t=>{t.onStatusChange!==void 0&&t.onStatusChange(o)})}getStatus(){return this._status$.getValue()}setSelectionFormat(o){this._selectionFormat=o}getSelectionFormat(){return this._selectionFormat}applyFormatPainter(o,e,t){const r=this.getHooks(),i=[],s=[];r.forEach(c=>{if(c.onApply!==void 0){const d=c.onApply(o,e,t,this._selectionFormat);d&&(i.push(...d.redos),s.push(...d.undos))}});for(const c of r)if(c.onBeforeApply!==void 0&&!c.onBeforeApply({unitId:o,subUnitId:e,range:t,redoMutationsInfo:i,format:this._selectionFormat,undoMutationsInfo:s}))return!1;this._logService.log("[FormatPainterService]","apply mutations",{undoMutationsInfo:s,redoMutationsInfo:i});const l=i.every(c=>this._commandService.executeCommand(c.id,c.params));return l&&this._undoRedoService.pushUndoRedo({unitID:o,undoMutations:s,redoMutations:i}),l}_updateRangeMark(o){if(this._markSelectionService.removeAllShapes(),o!==0){const e=this._selectionManagerService.getCurrentLastSelection();if(e){const t=fl(this._themeService);o===2?this._markId=this._markSelectionService.addShape({...e,style:t}):this._markId=this._markSelectionService.addShape({...e,style:t},[m.SetRangeValuesMutation.id])}}}};Qr=cm([Qt(0,a.Inject(m.SheetsSelectionsService)),Qt(1,a.Inject(a.ThemeService)),Qt(2,Lt),Qt(3,a.ILogService),Qt(4,a.ICommandService),Qt(5,a.IUndoRedoService)],Qr);const gr={id:"sheet.operation.set-format-painter",type:a.CommandType.OPERATION,handler:(n,o)=>o?(n.get(Ze).setStatus(o.status),!0):!1},Ao={type:a.CommandType.COMMAND,id:"sheet.command.set-infinite-format-painter",handler:async n=>{const e=n.get(Ze).getStatus();let t;return e!==Pe.OFF?t=Pe.OFF:t=Pe.INFINITE,n.get(a.ICommandService).executeCommand(gr.id,{status:t})}},En={type:a.CommandType.COMMAND,id:"sheet.command.set-once-format-painter",handler:async n=>{const e=n.get(Ze).getStatus();let t;return e!==Pe.OFF?t=Pe.OFF:t=Pe.ONCE,n.get(a.ICommandService).executeCommand(gr.id,{status:t})}},Sr={type:a.CommandType.COMMAND,id:"sheet.command.apply-format-painter",handler:async(n,o)=>n.get(Ze).applyFormatPainter(o.unitId,o.subUnitId,o.range)},ot={type:a.CommandType.COMMAND,id:"sheet.command.set-selection-frozen",handler:async(n,o)=>{const{type:e}=o||{},t=n.get(a.IUniverInstanceService),r=n.get(a.IUndoRedoService),i=m.getSheetCommandTarget(t);if(!i)return!1;const{unitId:s,subUnitId:l}=i,c=n.get(a.ICommandService),u=n.get(m.SheetsSelectionsService).getCurrentSelections();if(!u)return!1;const h=u[(u==null?void 0:u.length)-1],{range:g}=h,f=n.get(T.IRenderManagerService).getRenderById(s).with(exports.SheetScrollManagerService),{sheetViewStartRow:p=0,sheetViewStartColumn:v=0}=f.getCurrentScrollState()||{};let C,b,R,w;const{startRow:P,startColumn:y,rangeType:M}=g;if(M===a.RANGE_TYPE.ROW||e===1)C=P,R=P-p,b=-1,w=0;else if(M===a.RANGE_TYPE.COLUMN||e===2)C=-1,R=0,b=y,w=y-v;else if(M===a.RANGE_TYPE.NORMAL)C=P,R=P-p,b=y,w=y-v;else return!1;const x={unitId:s,subUnitId:l,startRow:C,startColumn:b,xSplit:b>0?Math.max(1,w):w,ySplit:C>0?Math.max(1,R):R},A=m.SetFrozenMutationFactory(n,x);return c.syncExecuteCommand(m.SetFrozenMutation.id,x)&&r.pushUndoRedo({unitID:s,undoMutations:[{id:m.SetFrozenMutation.id,params:A}],redoMutations:[{id:m.SetFrozenMutation.id,params:x}]}),!0}},fr={type:a.CommandType.COMMAND,id:"sheet.command.set-row-frozen",handler:async n=>(n.get(a.ICommandService).executeCommand(ot.id,{type:1}),!0)},pr={type:a.CommandType.COMMAND,id:"sheet.command.set-col-frozen",handler:async n=>(n.get(a.ICommandService).executeCommand(ot.id,{type:2}),!0)};var dm=Object.getOwnPropertyDescriptor,um=(n,o,e,t)=>{for(var r=t>1?void 0:t?dm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},$s=(n,o)=>(e,t)=>o(e,t,n);const hm=(n,o)=>{const{unitId:e,subUnitId:t,ranges:r}=n,i={},s=o.getColumnManager();for(let l=0;l<r.length;l++){const c=r[l];for(let d=c.startColumn;d<c.endColumn+1;d++)i[d]=s.getColumnWidth(d)}return{unitId:e,subUnitId:t,ranges:r,colWidth:i}};exports.AutoWidthController=class extends a.Disposable{constructor(o,e){super(),this._renderManagerService=o,this._univerInstanceService=e}getUndoRedoParamsOfColWidth(o){const e={redos:[],undos:[]},{_univerInstanceService:t}=this,r=m.getSheetCommandTarget(t);if(!r)return e;const{unitId:i,subUnitId:s,worksheet:l}=r,c=this._renderManagerService.getRenderById(i).with(exports.SheetSkeletonManagerService);if(!c.getCurrentParam())return e;const{skeleton:d}=c.getCurrentParam(),u=d.calculateAutoWidthInRange(o.ranges),h={};for(const{col:f,width:p}of u)h[f]=p;const g={subUnitId:s,unitId:i,ranges:o.ranges,colWidth:h},S=hm(g,l);return{undos:[{id:m.SetWorksheetColWidthMutation.id,params:S}],redos:[{id:m.SetWorksheetColWidthMutation.id,params:g}]}}};exports.AutoWidthController=um([$s(0,T.IRenderManagerService),$s(1,a.Inject(a.IUniverInstanceService))],exports.AutoWidthController);const vr={type:a.CommandType.COMMAND,id:"sheet.command.set-col-auto-width",handler:(n,o)=>{const e=n.get(a.ICommandService),t=n.get(a.IUndoRedoService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=m.getSheetCommandTarget(i,o);if(!s)return!1;const{unitId:l,subUnitId:c}=s;let d=[];if(o!=null&&o.ranges)d=[...o.ranges];else{const f=r.getCurrentSelections();for(let p=0;p<f.length;p++)d.push(f[p].range)}if(!(d!=null&&d.length))return!1;const u={unitId:l,subUnitId:c,ranges:d},{redos:h,undos:g}=n.get(exports.AutoWidthController).getUndoRedoParamsOfColWidth(u);return a.sequenceExecute([...h],e).result?(t.pushUndoRedo({unitID:l,undoMutations:[...g],redoMutations:[...h]}),!0):!1}},Il="UI_PLUGIN_SHEETS",Ke=`${Il}_MENU_ITEM_INPUT_COMPONENT`,bl=n=>{const{prefix:o,suffix:e,value:t,onChange:r,min:i=Number.MIN_SAFE_INTEGER,max:s=Number.MAX_SAFE_INTEGER}=n,l=_.useDependency(a.LocaleService),c=_.useDependency(_.IContextMenuService),[d,u]=H.useState(),h=S=>{if(!S){u(i.toString());return}const f=S.toString();u(f),r(f)};H.useEffect(()=>{c.visible||u(t)},[c.visible]),H.useEffect(()=>{+t<i?u(i.toString()):+t>s?u(s.toString()):u(t)},[t]);function g(){d&&r(d)}return I.jsxs("div",{className:"univer-inline-flex univer-items-center univer-gap-1",children:[l.t(o),I.jsx("div",{className:"univer-w-16",onClick:S=>S.stopPropagation(),children:I.jsx(j.InputNumber,{value:Number(d),size:"mini",precision:0,min:i,max:s,onPressEnter:g,onChange:h})}),l.t(e)]})};function mm(n){return n.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).pipe(de.switchMap(o=>o?o.activeSheet$.pipe(de.map(e=>e?{workbook:o,worksheet:e}:null)):O.of(null)))}function Ie(n,o,e){return mm(n).pipe(de.switchMap(t=>t?e(t):O.of(o)))}function Rl(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.IExclusiveRangeService),r=n.get(m.SheetsSelectionsService);return e.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).pipe(de.switchMap(s=>s?O.combineLatest([r.selectionMoveEnd$,s.activeSheet$]).pipe(de.switchMap(([l,c])=>{if(!c||l.length===0)return O.of(!1);const d=t.getInterestGroupId(l);if(o){const u=d.filter(h=>o.has(h));return O.of(u.length>0)}else return O.of(d.length>0)})):O.of(!1)))}function Xt(n,o,e){return O.combineLatest([o,Rl(n,e)]).pipe(de.map(([t,r])=>t||r))}function ee(n,o={},e=!1){var g;const r=n.get(a.IUniverInstanceService).getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),i=n.get(a.UserManagerService),s=n.has(he)?n.get(he):null,l=n.get(a.IContextService),d=((g=s==null?void 0:s.visible$)!=null?g:O.of(null)).pipe(de.startWith(null),de.shareReplay(1)),u=l.subscribeContextValue$(a.FOCUSING_FX_BAR_EDITOR).pipe(de.startWith(!1),de.shareReplay(1));return O.combineLatest([i.currentUser$,r,d,u]).pipe(de.switchMap(([S,f,p,v])=>!f||p!=null&&p.visible&&p.unitId===f.getUnitId()&&!e||v&&!e?O.of(!0):f.activeSheet$.pipe(de.switchMap(C=>{if(!C)return O.of(!0);const b=n.get(m.SheetsSelectionsService),R=n.get(m.RangeProtectionRuleModel),w=n.get(m.WorksheetProtectionRuleModel),y=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_COMMON_DRAWINGS).pipe(de.startWith(!1));return O.combineLatest([b.selectionMoveEnd$,y]).pipe(de.switchMap(([M,x])=>{if(x)return O.of(!0);const A=f.getUnitId(),D=C.getSheetId(),k=n.get(a.IPermissionService),{workbookTypes:V=[m.WorkbookEditablePermission],worksheetTypes:W,rangeTypes:N}=o,U=[];if(V==null||V.forEach(F=>{U.push(new F(A).id)}),W==null||W.forEach(F=>{U.push(new F(A,D).id)}),w.getRule(A,D))return k.composePermission$(U).pipe(de.map(F=>F.some(X=>X.value===!1)));const z=M==null?void 0:M.map(F=>F.range),B=R.getSubunitRuleList(A,D).filter(F=>z==null?void 0:z.some(X=>F.ranges.some(K=>a.Rectangle.intersects(X,K))));return N==null||N.forEach(F=>{B.forEach(X=>{U.push(new F(A,D,X.permissionId).id)})}),k.composePermission$(U).pipe(de.map(F=>F.some(X=>X.value===!1)))}))}))))}function Tn(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(m.RangeProtectionRuleModel),r=n.get(a.IPermissionService);return O.merge(e.selectionMoveEnd$,r.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var h;const i=(h=e.getCurrentLastSelection())==null?void 0:h.range;if(!i)return!0;const s=o.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),l=s==null?void 0:s.getActiveSheet();if(!s||!l)return!0;const c=s.getUnitId(),d=l.getSheetId(),u=[new m.WorkbookEditablePermission(c).id,new m.WorksheetEditPermission(c,d).id];return t.getSubunitRuleList(c,d).filter(g=>g.ranges.some(S=>a.Rectangle.intersects(i,S))).forEach(g=>{u.push(new m.RangeProtectionPermissionEditPoint(c,d,g.permissionId).id)}),r.composePermission(u).some(g=>g.value===!1)}))}function wl(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.RangeProtectionRuleModel),i=n.get(a.IPermissionService);return O.merge(t.selectionMoveEnd$,i.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var g;const s=(g=t.getCurrentLastSelection())==null?void 0:g.range;if(!s)return!0;const l=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),c=l==null?void 0:l.getActiveSheet();if(!l||!c)return!0;const d=l.getUnitId(),u=c.getSheetId(),h=[new m.WorkbookEditablePermission(d).id,new m.WorksheetEditPermission(d,u).id];return r.getSubunitRuleList(d,u).filter(S=>o==="row"?S.ranges.some(f=>s.startRow>f.startRow&&s.startRow<=f.endRow):S.ranges.some(f=>s.startColumn>f.startColumn&&s.startColumn<=f.endColumn)).forEach(S=>{h.push(new m.RangeProtectionPermissionEditPoint(d,u,S.permissionId).id)}),i.composePermission(h).some(S=>S.value===!1)}))}function El(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.RangeProtectionRuleModel),i=n.get(a.IPermissionService);return O.merge(t.selectionMoveEnd$,i.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var S;const s=(S=t.getCurrentLastSelection())==null?void 0:S.range;if(!s)return!0;const l=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),c=l==null?void 0:l.getActiveSheet();if(!l||!c)return!0;const d=l.getUnitId(),u=c.getSheetId(),h=[new m.WorkbookEditablePermission(d).id,new m.WorksheetEditPermission(d,u).id],g=a.Tools.deepClone(s);return o==="row"?(g.startColumn=0,g.endColumn=c.getColumnCount()-1):(g.startRow=0,g.endRow=c.getRowCount()-1),r.getSubunitRuleList(d,u).filter(f=>f.ranges.some(p=>a.Rectangle.intersects(g,p))).forEach(f=>{h.push(new m.RangeProtectionPermissionEditPoint(d,u,f.permissionId).id)}),i.composePermission(h).some(f=>f.value===!1)}))}function Do(n,o){const e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.RangeProtectionRuleModel),i=n.get(a.IPermissionService);return O.merge(t.selectionMoveEnd$,i.permissionPointUpdate$.pipe(de.debounceTime(100))).pipe(de.map(()=>{var S;const s=(S=t.getCurrentLastSelection())==null?void 0:S.range;if(!s)return!0;const l=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),c=l==null?void 0:l.getActiveSheet();if(!l||!c)return!0;const d=l.getUnitId(),u=c.getSheetId(),h=[new m.WorkbookEditablePermission(d).id,new m.WorksheetEditPermission(d,u).id],g=a.Tools.deepClone(s);return o==="row"?g.endRow=c.getRowCount()-1:g.endColumn=c.getColumnCount()-1,r.getSubunitRuleList(d,u).filter(f=>f.ranges.some(p=>a.Rectangle.intersects(g,p))).forEach(f=>{h.push(new m.RangeProtectionPermissionEditPoint(d,u,f.permissionId).id)}),i.composePermission(h).some(f=>f.value===!1)}))}function yn(n,o){const t=n.get(a.IUniverInstanceService).getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(m.WorksheetProtectionRuleModel),i=n.get(m.RangeProtectionRuleModel),s=n.get(a.IPermissionService),l=n.get(a.UserManagerService);return O.combineLatest([l.currentUser$,t]).pipe(de.switchMap(([c,d])=>d?d.activeSheet$.pipe(de.switchMap(u=>{if(!u)return O.of(!0);const h=d.getUnitId(),g=[];return o.forEach(f=>g.push(new f(h).id)),s.composePermission$(g).pipe(de.map(f=>f.every(p=>p.value===!0))).pipe(de.map(f=>{if(!f)return!0;const p=u.getSheetId(),v=r.getRule(h,p),C=i.getSubunitRuleList(h,p);return!!(v||C.length)}))})):O.of(!0)))}var Tl=(n=>(n.ROW_HEADER_CONTEXT_MENU="ROW_HEADER_CONTEXT_MENU",n.COL_HEADER_CONTEXT_MENU="COL_HEADER_CONTEXT_MENU",n.SHEET_BAR="SHEET_BAR",n.SHEET_FOOTER="SHEET_FOOTER",n))(Tl||{});function gm(n){const o=n.get(Ze);return{id:En.id,subId:Ao.id,type:_.MenuItemType.BUTTON,icon:"BrushIcon",title:"Format Painter",tooltip:"toolbar.formatPainter",activated$:new O.Observable(e=>{let t=!1;const r=o.status$.subscribe(i=>{t=i!==Pe.OFF,e.next(t)});return e.next(t),()=>{r.unsubscribe()}}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetCopyPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0)}}function Sm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(a.IContextService),r=n.get(m.SheetsSelectionsService);return{id:Bt.id,type:_.MenuItemType.BUTTON,icon:"BoldIcon",title:"Set bold",tooltip:"toolbar.bold",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=r.getCurrentLastSelection())==null?void 0:S.primary;let v=a.FontWeight.NORMAL;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getFontWeight()}s.next(v===a.FontWeight.BOLD)}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&t.getContextValue(a.EDITOR_ACTIVATED)&&t.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.bl;s.next(v===a.BooleanNumber.TRUE)}}),c=(u=r.getCurrentLastSelection())==null?void 0:u.primary;if(!i){s.next(!1);return}let d=a.FontWeight.NORMAL;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getFontWeight()}return s.next(d===a.FontWeight.BOLD),l.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function fm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService);return{id:Ft.id,type:_.MenuItemType.BUTTON,icon:"ItalicIcon",title:"Set italic",tooltip:"toolbar.italic",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=t.getCurrentLastSelection())==null?void 0:S.primary;let v=a.FontItalic.NORMAL;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getFontStyle()}s.next(v===a.FontItalic.ITALIC)}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.it;s.next(v===a.BooleanNumber.TRUE)}}),c=(u=t.getCurrentLastSelection())==null?void 0:u.primary;let d=a.FontItalic.NORMAL;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getFontStyle()}return s.next(d===a.FontItalic.ITALIC),l.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function pm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService);return{id:jt.id,type:_.MenuItemType.BUTTON,icon:"UnderlineIcon",title:"Set underline",tooltip:"toolbar.underline",activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=t.getCurrentLastSelection())==null?void 0:S.primary;let v;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getUnderline()}s.next(!!(v&&v.s))}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.ul;s.next((v==null?void 0:v.s)===a.BooleanNumber.TRUE)}}),c=(u=t.getCurrentLastSelection())==null?void 0:u.primary;let d;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getUnderline()}return s.next(!!(d&&d.s)),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function vm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService);return{id:zt.id,type:_.MenuItemType.BUTTON,icon:"StrikethroughIcon",title:"Set strike through",tooltip:"toolbar.strikethrough",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),activated$:Ie(e,!1,({worksheet:i})=>new O.Observable(s=>{var u;const l=o.onCommandExecuted(h=>{var S,f;const g=h.id;if(g===m.SetRangeValuesMutation.id||g===m.SetSelectionsOperation.id||g===m.SetWorksheetActiveOperation.id){const p=(S=t.getCurrentLastSelection())==null?void 0:S.primary;let v;if(p!=null){const C=i.getRange(p.startRow,p.startColumn);v=C==null?void 0:C.getStrikeThrough()}s.next(!!(v&&v.s))}if((g===Ce.SetTextSelectionsOperation.id||g===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)){const p=_r(n);if(p==null)return;const v=(f=p.ts)==null?void 0:f.st;s.next((v==null?void 0:v.s)===a.BooleanNumber.TRUE)}}),c=(u=t.getCurrentLastSelection())==null?void 0:u.primary;let d;if(c!=null){const h=i.getRange(c.startRow,c.startColumn);d=h==null?void 0:h.getStrikeThrough()}return s.next(!!(d&&d.s)),l.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Cm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=a.DEFAULT_STYLES.ff;return{id:mr.id,tooltip:"toolbar.font",type:_.MenuItemType.SELECTOR,label:_.FONT_FAMILY_COMPONENT,selections:_.FONT_FAMILY_LIST.map(i=>({label:{name:_.FONT_FAMILY_ITEM_COMPONENT},value:i.value})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),value$:Ie(e,r,({worksheet:i})=>new O.Observable(s=>{const l=()=>{var h;let d=r;const u=(h=t.getCurrentLastSelection())==null?void 0:h.primary;if(u!=null){const g=i.getCellStyle(u.startRow,u.startColumn),S=i.getDefaultCellStyleInternal(),f=i.getRowStyle(u.startRow),p=i.getColumnStyle(u.startColumn),v=a.composeStyles(S,f,p,g);v.ff&&(d=v.ff)}s.next(d)},c=o.onCommandExecuted(d=>{const u=d.id;(u===m.SetRangeValuesMutation.id||u===m.SetSelectionsOperation.id||u===m.SetWorksheetActiveOperation.id)&&l()});return l(),c.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function _m(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(a.IContextService),i=a.DEFAULT_STYLES.fs,s=ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0);return{id:hr.id,type:_.MenuItemType.SELECTOR,tooltip:"toolbar.fontSize",label:{name:_.FONT_SIZE_COMPONENT,props:{min:1,max:400,disabled$:s}},selections:_.FONT_SIZE_LIST,disabled$:s,value$:Ie(e,i,({worksheet:l})=>new O.Observable(c=>{const d=()=>{var f;let g=i;const S=(f=t.getCurrentLastSelection())==null?void 0:f.primary;if(S!=null){const p=l.getComposedCellStyle(S.startRow,S.startColumn);p.fs&&(g=p.fs)}c.next(g)},u=()=>{var S,f;const g=_r(n);if(g!=null){const p=(f=(S=g.ts)==null?void 0:S.fs)!=null?f:i;c.next(p)}},h=o.onCommandExecuted(g=>{const S=g.id;(S===m.SetRangeValuesMutation.id||S===m.SetSelectionsOperation.id||S===m.SetWorksheetActiveOperation.id)&&d(),(S===Ce.SetTextSelectionsOperation.id||S===J.SetInlineFormatCommand.id)&&r.getContextValue(a.EDITOR_ACTIVATED)&&r.getContextValue(a.FOCUSING_SHEET)&&u()});return d(),h.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Im(n){return{id:Ss.id,type:_.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColorDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function bm(n){const o=n.get(a.ICommandService),e=n.get(a.ThemeService);return{id:fn.id,icon:"FontColorDoubleIcon",tooltip:"toolbar.textColor.main",type:_.MenuItemType.BUTTON_SELECTOR,selections:[{label:{name:_.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1}}],value$:new O.Observable(t=>{const r=e.getColorFromTheme("gray.900"),i=o.onCommandExecuted(s=>{if(s.id===fn.id){const l=s.params.value;t.next(l!=null?l:r)}});return t.next(r),i.dispose}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]},!0)}}function Rm(n){return{id:m.ResetBackgroundColorCommand.id,type:_.MenuItemType.BUTTON,title:"toolbar.resetColor",icon:"NoColorDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function wm(n){const o=n.get(a.ICommandService),e=n.get(a.ThemeService);return{id:m.SetBackgroundColorCommand.id,tooltip:"toolbar.fillColor.main",type:_.MenuItemType.BUTTON_SELECTOR,icon:"PaintBucketDoubleIcon",selections:[{label:{name:_.COLOR_PICKER_COMPONENT,hoverable:!1,selectable:!1}}],value$:new O.Observable(t=>{const r=e.getColorFromTheme("primary.600"),i=o.onCommandExecuted(s=>{if(s.id===m.SetBackgroundColorCommand.id){const l=s.params.value;t.next(l!=null?l:r)}});return t.next(r),i.dispose}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const ea=[{label:"align.left",icon:"LeftJustifyingIcon",value:a.HorizontalAlign.LEFT},{label:"align.center",icon:"HorizontallyIcon",value:a.HorizontalAlign.CENTER},{label:"align.right",icon:"RightJustifyingIcon",value:a.HorizontalAlign.RIGHT}];function Em(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=a.HorizontalAlign.LEFT;return{id:m.SetHorizontalTextAlignCommand.id,icon:ea[0].icon,tooltip:"toolbar.horizontalAlignMode.main",type:_.MenuItemType.SELECTOR,selections:ea,value$:Ie(o,t,({worksheet:r})=>new O.Observable(i=>{var d;const s=n.get(a.ICommandService).onCommandExecuted(u=>{var f;const h=u.id;if(h!==m.SetHorizontalTextAlignCommand.id&&h!==m.SetSelectionsOperation.id&&h!==m.SetWorksheetActiveOperation.id)return;const g=(f=e.getCurrentLastSelection())==null?void 0:f.primary;let S;if(g!=null){const p=r.getRange(g.startRow,g.startColumn);S=p==null?void 0:p.getHorizontalAlignment()}i.next(S!=null?S:t)}),l=(d=e.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const u=r.getRange(l.startRow,l.startColumn);c=u==null?void 0:u.getHorizontalAlignment()}return i.next(c!=null?c:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const ta=[{label:"align.top",icon:"AlignTopIcon",value:a.VerticalAlign.TOP},{label:"align.middle",icon:"VerticalCenterIcon",value:a.VerticalAlign.MIDDLE},{label:"align.bottom",icon:"AlignBottomIcon",value:a.VerticalAlign.BOTTOM}];function Tm(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=a.VerticalAlign.BOTTOM;return{id:m.SetVerticalTextAlignCommand.id,icon:ta[2].icon,tooltip:"toolbar.verticalAlignMode.main",type:_.MenuItemType.SELECTOR,selections:ta,value$:Ie(o,t,({worksheet:r})=>new O.Observable(i=>{var d;const s=n.get(a.ICommandService).onCommandExecuted(u=>{var f;const h=u.id;if(h!==m.SetVerticalTextAlignCommand.id&&h!==m.SetSelectionsOperation.id&&h!==m.SetWorksheetActiveOperation.id)return;const g=(f=e.getCurrentLastSelection())==null?void 0:f.primary;let S;if(g!=null){const p=r.getRange(g.startRow,g.startColumn);S=p==null?void 0:p.getVerticalAlignment()}i.next(S!=null?S:t)}),l=(d=e.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const u=r.getRange(l.startRow,l.startColumn);c=u==null?void 0:u.getVerticalAlignment()}return i.next(c!=null?c:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const na=[{label:"textWrap.overflow",icon:"OverflowIcon",value:a.WrapStrategy.OVERFLOW},{label:"textWrap.wrap",icon:"AutowrapIcon",value:a.WrapStrategy.WRAP},{label:"textWrap.clip",icon:"TruncationIcon",value:a.WrapStrategy.CLIP}];function ym(n){const o=n.get(m.SheetsSelectionsService),e=n.get(a.IUniverInstanceService),t=a.WrapStrategy.OVERFLOW;return{id:m.SetTextWrapCommand.id,tooltip:"toolbar.textWrapMode.main",icon:na[0].icon,type:_.MenuItemType.SELECTOR,selections:na,value$:Ie(e,t,({worksheet:r})=>new O.Observable(i=>{var d;const s=n.get(a.ICommandService).onCommandExecuted(u=>{var f;const h=u.id;if(h!==m.SetTextWrapCommand.id&&h!==m.SetSelectionsOperation.id&&h!==m.SetWorksheetActiveOperation.id)return;const g=(f=o.getCurrentLastSelection())==null?void 0:f.primary;let S;if(g!=null){const p=r.getRange(g.startRow,g.startColumn);S=p==null?void 0:p.getWrapStrategy()}i.next(S!=null?S:t)}),l=(d=o.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const u=r.getRange(l.startRow,l.startColumn);c=u==null?void 0:u.getWrapStrategy()}return i.next(c!=null?c:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}const ra=[{label:"textRotate.none",icon:"NoRotationIcon",value:0},{label:"textRotate.angleUp",icon:"LeftRotationFortyFiveDegreesIcon",value:-45},{label:"textRotate.angleDown",icon:"RightRotationFortyFiveDegreesIcon",value:45},{label:"textRotate.vertical",icon:"VerticalTextIcon",value:"v"},{label:"textRotate.rotationUp",icon:"LeftRotationNinetyDegreesIcon",value:-90},{label:"textRotate.rotationDown",icon:"RightRotationNinetyDegreesIcon",value:90}];function Mm(n){const o=n.get(m.SheetsSelectionsService),e=n.get(a.IUniverInstanceService),t=0;return{id:m.SetTextRotationCommand.id,tooltip:"toolbar.textRotateMode.main",icon:ra[0].icon,type:_.MenuItemType.SELECTOR,selections:ra,value$:Ie(e,t,({worksheet:r})=>new O.Observable(i=>{var d,u;const s=n.get(a.ICommandService).onCommandExecuted(h=>{var p,v;const g=h.id;if(g!==m.SetTextRotationCommand.id&&g!==m.SetSelectionsOperation.id&&g!==m.SetWorksheetActiveOperation.id)return;const S=(p=o.getCurrentLastSelection())==null?void 0:p.primary;let f;if(S!=null){const C=r.getRange(S.startRow,S.startColumn);f=C==null?void 0:C.getTextRotation()}(f==null?void 0:f.v)===a.BooleanNumber.TRUE?i.next("v"):i.next((v=f&&f.a)!=null?v:t)}),l=(d=o.getCurrentLastSelection())==null?void 0:d.primary;let c;if(l!=null){const h=r.getRange(l.startRow,l.startColumn);c=h==null?void 0:h.getTextRotation()}return(c==null?void 0:c.v)===a.BooleanNumber.TRUE?i.next("v"):i.next((u=c&&c.a)!=null?u:t),s.dispose})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Cr(n){return new O.Observable(e=>e.next(!n.get(_.IClipboardInterfaceService).supportClipboard))}function sn(n){return{id:Le.name,commandId:Le.id,type:_.MenuItemType.BUTTON,title:"rightClick.copy",icon:"CopyDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookCopyPermission],worksheetTypes:[m.WorksheetCopyPermission],rangeTypes:[m.RangeProtectionPermissionViewPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Lo(n){return{id:Be.name,commandId:Be.id,type:_.MenuItemType.BUTTON,title:"rightClick.paste",icon:"PasteSpecialDoubleIcon",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission,m.WorksheetSetCellValuePermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const Yn="sheet.menu.paste-special";function Bo(n){return{id:Yn,type:_.MenuItemType.SUBITEMS,icon:"PasteSpecialDoubleIcon",title:"rightClick.pasteSpecial",hidden$:Xt(n,_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET))}}function Fo(n){return{id:nn.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteValue",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetSetCellValuePermission,m.WorksheetEditPermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function jo(n){return{id:rn.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteFormat",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetSetCellStylePermission,m.WorksheetEditPermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function zo(n){return{id:Pt.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteColWidth",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetSetColumnStylePermission,m.WorksheetEditPermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e))}}function Xo(n){return{id:on.id,type:_.MenuItemType.BUTTON,title:"rightClick.pasteBesidesBorder",disabled$:Cr(n).pipe(O.combineLatestWith(ee(n,{rangeTypes:[m.RangeProtectionPermissionEditPoint],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission,m.WorksheetSetCellValuePermission,m.WorksheetSetRowStylePermission,m.WorksheetSetColumnStylePermission],workbookTypes:[m.WorkbookEditablePermission]})),O.map(([o,e])=>o||e)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Pm(n){return{id:m.SetWorksheetRowIsAutoHeightCommand.id,type:_.MenuItemType.BUTTON,icon:"AutoHeightDoubleIcon",title:"rightClick.fitContent",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetRowStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function xm(n){return{id:vr.id,type:_.MenuItemType.BUTTON,icon:"AutoWidthDoubleIcon",title:"rightClick.fitContent",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetRowStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const yl="sheet.menu.sheet-frozen";function Om(n){return{id:yl,type:_.MenuItemType.SUBITEMS,title:"rightClick.freeze",icon:"FreezeToSelectedIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const Ai="sheet.header-menu.sheet-frozen";function oa(n){return{id:Ai,type:_.MenuItemType.SUBITEMS,title:"rightClick.freeze",icon:"FreezeToSelectedIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Yo(n){return{id:ot.id,type:_.MenuItemType.BUTTON,title:"rightClick.freeze",icon:"FreezeToSelectedIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Am(n){return{id:fr.id,type:_.MenuItemType.BUTTON,title:"rightClick.freezeRow",icon:"FreezeRowIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Dm(n){return{id:pr.id,type:_.MenuItemType.BUTTON,title:"rightClick.freezeCol",icon:"FreezeColumnIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Go(n){return{id:m.CancelFrozenCommand.id,type:_.MenuItemType.BUTTON,title:"rightClick.cancelFreeze",icon:"CancelFreezeIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function km(n){return{id:dr.id,type:_.MenuItemType.BUTTON,icon:"HideDoubleIcon",title:"rightClick.hideSelectedRow",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetRowStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Nm(n){return{id:ur.id,type:_.MenuItemType.BUTTON,icon:"HideDoubleIcon",title:"rightClick.hideSelectedColumn",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetColumnStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function Hm(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=[m.SetSelectionsOperation,m.SetRowHiddenMutation,m.SetRowVisibleMutation].map(i=>i.id);return{id:m.SetSelectedRowsVisibleCommand.id,type:_.MenuItemType.BUTTON,icon:"EyeOutlineIcon",title:"rightClick.showHideRow",hidden$:Ie(o,!0,({worksheet:i})=>new O.Observable(s=>{function l(){var u;const d=(u=e.getCurrentSelections())==null?void 0:u.map(h=>h.range).filter(h=>h.rangeType===a.RANGE_TYPE.ROW);return!!(d!=null&&d.some(h=>{for(let g=h.startRow;g<=h.endRow;g++)if(!i.getRowRawVisible(g))return!0;return!1}))}const c=t.onCommandExecuted(d=>{r.findIndex(u=>u===d.id)!==-1&&s.next(!l())});return s.next(!l()),()=>c.dispose()})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetRowStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Vm(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=[m.SetSelectionsOperation,m.SetColHiddenMutation,m.SetColVisibleMutation].map(i=>i.id);return{id:m.SetSelectedColsVisibleCommand.id,type:_.MenuItemType.BUTTON,icon:"EyeOutlineIcon",title:"rightClick.showHideColumn",hidden$:Ie(o,!0,({worksheet:i})=>new O.Observable(s=>{function l(){var u;const d=(u=e.getCurrentSelections())==null?void 0:u.map(h=>h.range).filter(h=>h.rangeType===a.RANGE_TYPE.COLUMN);return!d||d.length===0?!1:!!d.some(h=>{for(let g=h.startColumn;g<=h.endColumn;g++)if(!i.getColVisible(g))return!0;return!1})}const c=t.onCommandExecuted(d=>{r.findIndex(u=>u===d.id)!==-1&&s.next(!l())});return s.next(!l()),()=>c.dispose()})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetColumnStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Wm(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=2;return{id:m.SetRowHeightCommand.id,type:_.MenuItemType.BUTTON,icon:"AdjustHeightDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.rowHeight",suffix:"px",min:r,max:1e3}},value$:Ie(e,r,({worksheet:i})=>new O.Observable(s=>{function l(){var h;const d=(h=t.getCurrentLastSelection())==null?void 0:h.primary,u=d?i.getRowHeight(d.startRow):i.getConfig().defaultRowHeight;s.next(u)}const c=o.onCommandExecuted(d=>{const u=d.id;if(u===m.SetRangeValuesMutation.id||u===m.SetSelectionsOperation.id||u===m.SetWorksheetRowIsAutoHeightMutation.id)return l()});return l(),c.dispose})),hidden$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetRowStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function Um(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=2;return{id:m.SetColWidthCommand.id,type:_.MenuItemType.BUTTON,icon:"AdjustWidthDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.columnWidth",suffix:"px",min:r,max:1e3}},value$:Ie(e,r,({worksheet:i})=>new O.Observable(s=>{function l(){var h;const d=(h=t.getCurrentLastSelection())==null?void 0:h.primary,u=d?i.getColumnWidth(d.startColumn):i.getConfig().defaultColumnWidth;s.next(u)}const c=o.onCommandExecuted(d=>{const u=d.id;if(u===m.SetRangeValuesMutation.id||u===m.SetSelectionsOperation.id||u===m.SetWorksheetColWidthMutation.id)return l()});return l(),c.dispose})),hidden$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetColumnStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function _r(n){var c;const o=n.get(a.IUniverInstanceService),e=n.get(Ce.DocSelectionManagerService),t=o.getUniverDocInstance(a.DOCS_NORMAL_EDITOR_UNIT_ID_KEY),r=e.getActiveTextRange();if(t==null||r==null)return null;const i=(c=t.getBody())==null?void 0:c.textRuns;if(i==null)return;const{startOffset:s}=r;return i.find(({st:d,ed:u})=>s>=d&&s<=u)}var Lm=Object.getOwnPropertyDescriptor,Bm=(n,o,e,t)=>{for(var r=t>1?void 0:t?Lm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Rt=(n,o)=>(e,t)=>o(e,t,n);const Fm="__SpreadsheetFreezeRowMainName__",jm="__SpreadsheetFreezeRowHeaderName__",zm="__SpreadsheetFreezeColumnMainName__",Xm="__SpreadsheetFreezeColumnHeaderName__",Zo=2,Ym=.01,kn=a.createInterceptorKey("freezePermissionCheck");exports.HeaderFreezeRenderController=class extends a.Disposable{constructor(e,t,r,i,s,l,c,d){super();E(this,"_rowFreezeHeaderRect");E(this,"_rowFreezeMainRect");E(this,"_columnFreezeHeaderRect");E(this,"_columnFreezeMainRect");E(this,"_freezeDownSubs");E(this,"_freezePointerEnterSubs");E(this,"_freezePointerLeaveSubs");E(this,"_scenePointerMoveSub");E(this,"_scenePointerUpSub");E(this,"_changeToRow",-1);E(this,"_changeToColumn",-1);E(this,"_changeToOffsetX",0);E(this,"_changeToOffsetY",0);E(this,"_activeViewport",null);E(this,"_freezeNormalHeaderColor","");E(this,"_freezeNormalMainColor","");E(this,"_freezeActiveColor","");E(this,"_freezeHoverColor","");E(this,"_lastFreeze");E(this,"interceptor",new a.InterceptorManager({FREEZE_PERMISSION_CHECK:kn}));this._context=e,this._sheetSkeletonManagerService=t,this._commandService=r,this._selectionManagerService=i,this._scrollManagerService=s,this._themeService=l,this._sheetInterceptorService=c,this._injector=d,this._initialize()}dispose(){super.dispose()}_initialize(){this._skeletonListener(),this._commandExecutedListener(),this._themeChangeListener(),this._interceptorCommands(),this._bindViewportScroll(),this._zoomRefresh()}_createFreeze(e=0,t){var x;const r=t!=null?t:this._getFreeze();if(r==null)return null;const i=(x=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:x.skeleton,{startRow:s,startColumn:l}=r,c=this._getPositionByIndex(s,l);if(c==null||i==null)return null;const d=this._getSheetObject(),u=d.engine,h=(u==null?void 0:u.width)||0,g=(u==null?void 0:u.height)||0,S=d.scene,{startX:f,startY:p}=c,{rowTotalHeight:v,columnTotalWidth:C,rowHeaderWidthAndMarginLeft:b,columnHeaderHeightAndMarginTop:R}=i,w=h>C+b?h:C+R,P=g>v+R?g:v+R;this._changeToRow=s,this._changeToColumn=l,this._changeToOffsetX=f,this._changeToOffsetY=p;const y=Math.max(S.scaleX,S.scaleY);let M=Zo/Math.max(1,y);if(e===0){(s===-1||s===0)&&(M=M*2);const A=M;this._rowFreezeHeaderRect=new T.Rect(jm,{fill:this._freezeNormalHeaderColor,width:b,height:M,left:0,top:p-A,zIndex:3});let D=this._freezeNormalHeaderColor;(s===-1||s===0)&&(D=this._freezeNormalMainColor),this._rowFreezeMainRect=new T.Rect(Fm,{fill:D,width:w*2/y,height:M,left:b,top:p-A,zIndex:3}),S.addObjects([this._rowFreezeHeaderRect,this._rowFreezeMainRect],ht)}else{(l===-1||l===0)&&(M=M*2);const A=M;this._columnFreezeHeaderRect=new T.Rect(Xm,{fill:this._freezeNormalHeaderColor,width:M,height:R,left:f-A,top:0,zIndex:3});let D=this._freezeNormalHeaderColor;(l===-1||l===0)&&(D=this._freezeNormalMainColor),this._columnFreezeMainRect=new T.Rect(zm,{fill:D,width:M,height:P*2/y,left:f-A,top:R,zIndex:3}),S.addObjects([this._columnFreezeHeaderRect,this._columnFreezeMainRect],ht)}this._eventBinding(e)}_eventBinding(e=0){let t=this._rowFreezeHeaderRect,r=this._rowFreezeMainRect;e===1&&(t=this._columnFreezeHeaderRect,r=this._columnFreezeMainRect);const i=this._getSheetObject();if(i==null)return;const{scene:s}=i;if(this._freezePointerEnterSubs=new O.Subscription,this._freezePointerLeaveSubs=new O.Subscription,this._freezeDownSubs=new O.Subscription,r){const d=r.onPointerEnter$.subscribeEvent(()=>{if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;t==null||t.setProps({fill:this._freezeHoverColor,zIndex:4}),s.setCursor(T.CURSOR_TYPE.GRAB)});this._freezePointerEnterSubs.add(d);const u=r.onPointerLeave$.subscribeEvent(()=>{t==null||t.setProps({fill:this._freezeNormalHeaderColor,zIndex:3}),s.resetCursor()});this._freezePointerLeaveSubs.add(u)}if(t){const d=t.onPointerEnter$.subscribeEvent(()=>{if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;t==null||t.setProps({fill:this._freezeHoverColor,zIndex:4}),s.setCursor(T.CURSOR_TYPE.GRAB)});this._freezePointerEnterSubs.add(d);const u=t.onPointerLeave$.subscribeEvent(()=>{t==null||t.setProps({fill:this._freezeNormalHeaderColor,zIndex:3}),s.resetCursor()});this._freezePointerLeaveSubs.add(u)}const l=t==null?void 0:t.onPointerDown$.subscribeEvent(d=>{this._freezeDown(d,t,r,e)});l&&this._freezeDownSubs.add(l);const c=r==null?void 0:r.onPointerDown$.subscribeEvent(d=>{this._freezeDown(d,t,r,e)});c&&this._freezeDownSubs.add(c)}_getCurrentLastVisible(){var C,b,R,w,P,y,M;const e=this._getSheetObject();if(e==null)return;const t=(C=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:C.skeleton;if(t==null)return;const r=e.scene,i=Math.max(r.scaleX,r.scaleY),s=this._scrollManagerService.getCurrentScrollState(),l=(e.engine.height-t.columnHeaderHeight)/i,c=(e.engine.width-t.rowHeaderWidth)/i,d=(b=s==null?void 0:s.sheetViewStartRow)!=null?b:0,u=d===0?-((R=s==null?void 0:s.offsetY)!=null?R:0):t.rowHeightAccumulation[d-1]-((w=s==null?void 0:s.offsetY)!=null?w:0);let h=0,g=!1;for(let x=d,A=t.rowHeightAccumulation.length;x<A;x++)if(t.rowHeightAccumulation[x]-u>l){h=x,g=!0;break}g||(h=t.rowHeightAccumulation.length-1);const S=(P=s==null?void 0:s.sheetViewStartColumn)!=null?P:0,f=S===0?-((y=s==null?void 0:s.offsetX)!=null?y:0):t.columnWidthAccumulation[S-1]-((M=s==null?void 0:s.offsetX)!=null?M:0);let p=0,v=!1;for(let x=S,A=t.columnWidthAccumulation.length;x<A;x++)if(t.columnWidthAccumulation[x]-f>c){p=x,v=!0;break}return v||(p=t.columnWidthAccumulation.length-1),{lastRow:h,lastColumn:p}}_getActiveViewport(e){var r;const t=(r=this._getSheetObject())==null?void 0:r.scene.getViewports();return t&&t.find(i=>i.isHit(new T.Vector2(e.offsetX,e.offsetY)))||null}_freezeDown(e,t,r,i=0){var f;const s=(f=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:f.skeleton;if(s==null)return;const l=this._getSheetObject();if(l==null)return;if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;const{scene:d}=l;d.setCursor(T.CURSOR_TYPE.GRABBING),d.disableObjectsEvent();const u=this._getCurrentLastVisible(),h=u===void 0?Number.POSITIVE_INFINITY:s.rowHeightAccumulation[u.lastRow],g=u===void 0?Number.POSITIVE_INFINITY:s.columnWidthAccumulation[u.lastColumn-1]+s.rowHeaderWidth;this._activeViewport=null;const S=this._getFreeze();S&&(this._changeToColumn=S.startColumn,this._changeToRow=S.startRow),this._scenePointerMoveSub=d.onPointerMove$.subscribeEvent(p=>{var M,x,A,D;const v=this._getActiveViewport(p),{startX:C,startY:b,row:R,column:w}=ze(p.offsetX,p.offsetY,d,s,v||void 0,!0);if(!this.interceptor.fetchThroughInterceptors(kn)(!0,null))return!1;d.setCursor(T.CURSOR_TYPE.GRABBING);const y=Zo/Math.max(d.scaleX,d.scaleY);i===0?((M=t.transformByState({top:Math.min(b,h)-y/2}))==null||M.setProps({fill:this._freezeActiveColor}),(x=r.transformByState({top:Math.min(b,h)-y/2}))==null||x.setProps({fill:this._freezeNormalHeaderColor}),this._changeToRow=u===void 0?R:Math.min(R,u.lastRow),this._changeToOffsetY=Math.min(b,h),this._activeViewport=v):((A=t.transformByState({left:Math.min(C,g)-y/2}))==null||A.setProps({fill:this._freezeActiveColor}),(D=r.transformByState({left:Math.min(C,g)-y/2}))==null||D.setProps({fill:this._freezeNormalHeaderColor}),this._changeToColumn=u===void 0?w:Math.min(w,u.lastColumn),this._changeToOffsetX=C,this._activeViewport=v)}),this._scenePointerUpSub=d.onPointerUp$.subscribeEvent(()=>{var k,V;d.resetCursor(),d.enableObjectsEvent(),this._clearObserverEvent();const{rowHeaderWidthAndMarginLeft:p,columnHeaderHeightAndMarginTop:v}=s;i===0&&(this._changeToRow===0||this._changeToRow===-1)||i===1&&(this._changeToColumn===0||this._changeToColumn===-1)?(t.setProps({fill:this._freezeNormalHeaderColor}),r.setProps({fill:this._freezeNormalMainColor})):(t==null||t.setProps({fill:this._freezeNormalHeaderColor}),r==null||r.setProps({fill:this._freezeNormalHeaderColor}));const C=Zo/Math.max(d.scaleX,d.scaleY);i===0?(this._changeToRow===0||this._changeToRow===-1)&&(t.transformByState({top:v-C}),r.transformByState({top:v-C})):(this._changeToColumn===0||this._changeToColumn===-1)&&(t.transformByState({left:p-C}),r.transformByState({left:p-C}));const b=this._scrollManagerService.getCurrentScrollState()||{sheetViewStartRow:0,sheetViewStartColumn:0},{sheetViewStartRow:R,sheetViewStartColumn:w}=b;if(w==null||R==null)return;const P=this._context.unit,y=P.getActiveSheet();if(!y)return;const M=(k=y.getConfig())==null?void 0:k.freeze;let x=(M==null?void 0:M.xSplit)||0,A=(M==null?void 0:M.ySplit)||0;const D=(V=this._activeViewport)==null?void 0:V.viewportKey;i===0&&(!D||D===T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_ROW_TOP?A=this._changeToRow-(M.startRow-M.ySplit):A=this._changeToRow-R,A=A<0?0:A),i===1&&(!D||D===T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP||D===T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT||D===T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT?x=this._changeToColumn-(M.startColumn-M.xSplit):x=this._changeToColumn-w,x=x<0?0:x),this._commandService.executeCommand(m.SetFrozenCommand.id,{startRow:A===0?-1:this._changeToRow,startColumn:x===0?-1:this._changeToColumn,ySplit:A,xSplit:x,unitId:P.getUnitId(),subUnitId:y.getSheetId()})})}_getViewports(){const e=this._getSheetObject();if(e==null)return;const{scene:t}=e,r=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT),i=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_RIGHT),s=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_TOP),l=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_BOTTOM),c=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP),d=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN),u=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP),h=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT),g=t.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP);if(!(r==null||i==null||s==null||l==null||c==null||d==null||u==null||h==null||g==null))return{viewMain:d,viewMainLeftTop:u,viewMainLeft:h,viewMainTop:g,viewColumnLeft:r,viewColumnRight:i,viewRowTop:s,viewRowBottom:l,viewLeftTop:c}}_bindViewportScroll(){const e=this._getViewports();if(!e)return;const{viewRowBottom:t,viewColumnRight:r,viewMainLeft:i,viewMainTop:s}=e;this.disposeWithMe(this._scrollManagerService.validViewportScrollInfo$.subscribe(l=>{if(!l)return;const{scrollX:c,scrollY:d,viewportScrollX:u,viewportScrollY:h}=l;t.isActive&&t.updateScrollVal({scrollY:d,viewportScrollY:h}),r.isActive&&r.updateScrollVal({scrollX:c,viewportScrollX:u}),i.isActive&&i.updateScrollVal({scrollY:d,viewportScrollY:h}),s.isActive&&s.updateScrollVal({scrollX:c,viewportScrollX:u})}))}_updateViewport(e=-1,t=-1,r=0,i=0,s=3){var x;const l=(x=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:x.skeleton;if(l==null)return;const{rowHeaderWidthAndMarginLeft:c,columnHeaderHeightAndMarginTop:d}=l,u=this._getViewports();if(!u)return;const{viewMain:h,viewMainLeftTop:g,viewMainLeft:S,viewMainTop:f,viewColumnLeft:p,viewColumnRight:v,viewRowTop:C,viewRowBottom:b,viewLeftTop:R}=u;v.resizeWhenFreezeChange({left:c,top:0,height:d+1,right:0}),b.resizeWhenFreezeChange({left:0,top:d,bottom:0,width:c+1}),R.resizeWhenFreezeChange({left:0,top:0,width:c+1,height:d});let w=!0,P=!0;g.enable(),(e===-1||e===0)&&(w=!1),(t===-1||t===0)&&(P=!1);const y=l.getNoMergeCellWithCoordByIndex(e-r,t-i,!1),M=l.getNoMergeCellWithCoordByIndex(e,t,!1);if(g.disable(),f.disable(),S.disable(),C.disable(),p.disable(),g.resetPadding(),f.resetPadding(),S.resetPadding(),C.resetPadding(),p.resetPadding(),w===!1&&P===!1)h.resizeWhenFreezeChange({left:c,top:d,bottom:0,right:0}),h.resetPadding(),S.resizeWhenFreezeChange({left:c,top:d,bottom:0,width:0}),f.resizeWhenFreezeChange({left:c,top:d,height:0,right:0}),g.resizeWhenFreezeChange({left:c,top:d,width:0,height:0}),C.resizeWhenFreezeChange({left:0,top:d,width:c+1,height:0}),p.resizeWhenFreezeChange({left:0,top:0,height:d+1,width:0});else if(w===!0&&P===!1){const A=M.startY-y.startY;h.resizeWhenFreezeChange({left:c,top:d+A,bottom:0,right:0}),h.setPadding({startY:y.startY,endY:M.startY,startX:0,endX:0}),s&2&&this._commandService.executeCommand(Ue.id,{sheetViewStartRow:0,offsetY:0}),f.resizeWhenFreezeChange({left:c,top:d,height:A,right:0}),f.updateScrollVal({viewportScrollY:y.startY,rawScrollX:h.scrollX,viewportScrollX:h.viewportScrollX}),C.resizeWhenFreezeChange({left:0,top:d,width:c+1,height:A}),C.updateScrollVal({viewportScrollY:y.startY}),b.resizeWhenFreezeChange({left:0,top:d+A,bottom:0,width:c+1}),f.enable(),C.enable()}else if(w===!1&&P===!0){const A=M.startX-y.startX;h.resizeWhenFreezeChange({left:c+A,top:d,bottom:0,right:0}),h.setPadding({startX:y.startX,endX:M.startX,startY:0,endY:0}),s&1&&this._commandService.executeCommand(Ue.id,{sheetViewStartColumn:0,offsetX:0}),S.resizeWhenFreezeChange({left:c,top:d,width:A,bottom:0,right:0}),S.updateScrollVal({viewportScrollX:y.startX,rawScrollY:h.scrollY,viewportScrollY:h.viewportScrollY}),p.resizeWhenFreezeChange({left:c,top:0,width:A,height:d+1}),p.updateScrollVal({viewportScrollX:y.startX}),v.resizeWhenFreezeChange({left:c+A,top:0,height:d+1,right:0}),S.enable(),p.enable()}else{const A=M.startX-y.startX,D=M.startY-y.startY;h.resizeWhenFreezeChange({left:c+A,top:d+D,bottom:0,right:0}),h.setPadding({startY:y.startY,endY:M.startY,startX:y.startX,endX:M.startX}),s&&this._commandService.executeCommand(Ue.id,{...s&1?{sheetViewStartColumn:0,offsetX:0}:null,...s&2?{sheetViewStartRow:0,offsetY:0}:null}),S.resizeWhenFreezeChange({left:c,top:d+D,width:A,bottom:0}),S.updateScrollVal({viewportScrollX:y.startX,rawScrollY:h.scrollY,viewportScrollY:h.viewportScrollY}),f.resizeWhenFreezeChange({left:c+A,top:d,height:D,right:0}),f.updateScrollVal({viewportScrollY:y.startY,rawScrollX:h.scrollX,viewportScrollX:h.viewportScrollX}),g.resizeWhenFreezeChange({left:c,top:d,width:A,height:D}),g.updateScrollVal({viewportScrollX:y.startX,viewportScrollY:y.startY}),C.resizeWhenFreezeChange({left:0,top:d,width:c+1,height:D}),C.updateScrollVal({viewportScrollY:y.startY}),b.resizeWhenFreezeChange({left:0,top:d+D,bottom:0,width:c+1}),p.resizeWhenFreezeChange({left:c,top:0,width:A,height:d+1}),p.updateScrollVal({viewportScrollX:y.startX}),v.resizeWhenFreezeChange({left:c+A,top:0,height:d+1,right:0}),g.enable(),f.enable(),S.enable(),C.enable(),p.enable()}}_skeletonListener(){this.disposeWithMe(a.toDisposable(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(e=>{[m.SetWorksheetActiveOperation.id,m.InsertRangeMoveDownCommand.id,m.InsertRangeMoveRightCommand.id].includes((e==null?void 0:e.commandId)||"")&&this._refreshCurrent()})))}_refreshCurrent(){const t=this._context.unit.getActiveSheet();if(!t)return;const r=t.getConfig().freeze,{startRow:i=-1,startColumn:s=-1,ySplit:l=0,xSplit:c=0}=r;this._refreshFreeze(i,s,l,c,0)}_themeChangeListener(){this._themeChange(this._themeService.getCurrentTheme()),this.disposeWithMe(this._themeService.currentTheme$.subscribe(e=>{this._clearFreeze(),this._themeChange(e),this._refreshCurrent()}))}_themeChange(e){this._freezeNormalHeaderColor=a.get(e,"gray.300"),this._freezeNormalMainColor=new a.ColorKit(this._freezeNormalHeaderColor).setAlpha(Ym).toRgbString(),this._freezeActiveColor=a.get(e,"primary.600"),this._freezeHoverColor=a.get(e,"gray.500")}_interceptorCommands(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{const t={redos:[],undos:[]},r=this._getFreeze();if(!r)return t;const i=s=>{const l=this._context.unit,c=l.getUnitId(),d=l.getActiveSheet();if(!d)return t;const u=d.getSheetId();this._refreshFreeze(s.startRow,s.startColumn,s.ySplit,s.xSplit,0);const h={...s,unitId:c,subUnitId:u,resetScroll:!1},g=m.SetFrozenMutationFactory(this._injector,h);return{undos:[{id:m.SetFrozenMutation.id,params:g}],redos:[{id:m.SetFrozenMutation.id,params:h}]}};if(e.id===m.InsertRowCommand.id){const s=e.params,{range:l,direction:c}=s,d=l.endRow-l.startRow+1;if(l.startRow+1<r.startRow||l.startRow+1===r.startRow&&c===a.Direction.UP){const u={...r,startRow:Math.max(1,r.startRow+d),ySplit:Math.max(1,r.ySplit+d)};return i(u)}}if(e.id===m.InsertColCommand.id){const s=e.params,{range:l,direction:c}=s,d=l.endColumn-l.startColumn+1;if(l.startColumn+1<r.startColumn||l.startColumn+1===r.startColumn&&c===a.Direction.LEFT){const u={...r,startColumn:Math.max(1,r.startColumn+d),xSplit:Math.max(1,r.xSplit+d)};return i(u)}}if(e.id===m.MoveColsCommand.id){const s=this._selectionManagerService.getCurrentSelections(),{fromRange:{startColumn:l},toRange:{startColumn:c}}=e.params,d=s==null?void 0:s.filter(C=>C.range.rangeType===a.RANGE_TYPE.COLUMN&&C.range.startColumn<=l&&l<=C.range.endColumn);if(!(d!=null&&d.length))return t;const u=d[0].range,h={...u,startColumn:c,endColumn:c+u.endColumn-u.startColumn};if(!r||r.startColumn<=0||u.startColumn>=r.startColumn&&h.startColumn>=r.startColumn||u.startColumn===h.startColumn||u.endColumn<r.startColumn&&h.startColumn<r.startColumn)return t;const g=u.endColumn-u.startColumn+1,S=Math.max(Math.min(r.startColumn,u.endColumn+1)-u.startColumn,0);let f,p;h.startColumn>=r.startColumn?(f=Math.max(r.startColumn-S,1),p=Math.max(r.xSplit-S,1)):(f=r.startColumn+g-S,p=r.xSplit+g-S);const v={...r,startColumn:f,xSplit:p};return i(v)}if(e.id===m.MoveRowsCommand.id){const s=this._selectionManagerService.getCurrentSelections(),{fromRange:{startRow:l},toRange:{startRow:c}}=e.params,d=s==null?void 0:s.filter(C=>C.range.rangeType===a.RANGE_TYPE.ROW&&C.range.startRow<=l&&l<=C.range.endRow);if(!(d!=null&&d.length))return t;const u=d[0].range,h={...u,startRow:c,endRow:c+u.endRow-u.startRow};if(!r||r.startRow<=0||u.startRow>=r.startRow&&h.startRow>=r.startRow||u.startRow===h.startRow||u.endRow<r.startRow&&h.startRow<r.startRow)return t;const g=u.endRow-u.startRow+1,S=Math.max(Math.min(r.startRow,u.endRow+1)-u.startRow,0);let f,p;h.startRow>=r.startRow?(f=Math.max(r.startRow-S,1),p=Math.max(r.ySplit-S,1)):(f=r.startRow+g-S,p=r.ySplit+g-S);const v={...r,startRow:f,ySplit:p};return i(v)}if(e.id===m.RemoveColCommand.id||e.id===m.RemoveRowCommand.id){const s=e.params,l=s.range;if(l.rangeType===a.RANGE_TYPE.COLUMN&&l.startColumn<r.startColumn){const c=Math.min(r.startColumn,l.endColumn+1)-l.startColumn,d={...r,startColumn:Math.max(1,r.startColumn-c),xSplit:Math.max(1,r.xSplit-c)};return i(d)}if(s.range.rangeType===a.RANGE_TYPE.ROW&&l.startRow<r.startRow){const c=Math.min(r.startRow,l.endRow+1)-l.startRow,d={...r,startRow:Math.max(1,r.startRow-c),ySplit:Math.max(1,r.ySplit-c)};return i(d)}}return t}}))}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{switch(e.id){case m.SetFrozenMutation.id:case ke.id:{const t=this._lastFreeze,r=this._context.unit,i=r.getActiveSheet(),s=e.params,{unitId:l,subUnitId:c}=s;if(!(l===r.getUnitId()&&c===(i==null?void 0:i.getSheetId())))return;const d=i.getConfig().freeze;if(this._lastFreeze=d,d==null)return;let u=0;const{startRow:h=-1,startColumn:g=-1,ySplit:S=0,xSplit:f=0}=d;(!t||t.startRow!==h||t.ySplit!==S)&&(u|=2),(!t||t.startColumn!==g||t.xSplit!==f)&&(u|=1),s.resetScroll===!1&&(u=0),this._refreshFreeze(h,g,S,f,u)}break;case m.SetWorksheetRowHeightMutation.id:{const t=this._getFreeze(),r=t&&e.params.ranges.some(i=>i.startRow<t.startRow);e.params&&r&&this._refreshCurrent()}break;case m.SetWorksheetColWidthMutation.id:{const t=this._getFreeze();e.params&&t&&e.params.ranges.some(r=>r.startColumn<t.startColumn)&&this._refreshCurrent()}break;case m.SetWorksheetRowAutoHeightMutation.id:{const t=e.params,r=this._getFreeze();if(r&&r.startRow>-1&&t.rowsAutoHeightInfo.some(i=>i.row<r.startRow)){const i=this._sheetSkeletonManagerService.currentSkeleton$.subscribe(()=>{this._refreshCurrent(),setTimeout(()=>{i.unsubscribe()})})}}break;case m.SetColHiddenMutation.id:case m.SetColVisibleMutation.id:{const t=e.params,r=this._getFreeze(),i=t.ranges;r&&r.startColumn>-1&&i.some(s=>s.startColumn<r.startColumn)&&this._refreshCurrent()}break;case m.SetRowHiddenMutation.id:case m.SetRowVisibleMutation.id:{const t=e.params,r=this._getFreeze(),i=t.ranges;r&&r.startRow>-1&&i.some(s=>s.startRow<r.startRow)&&this._refreshCurrent()}break;case Ro.id:case wo.id:this._refreshCurrent()}}))}_zoomRefresh(){const e=this._getSheetObject();if(e==null)return;const{scene:t}=e;this.disposeWithMe(t.onTransformChange$.subscribeEvent(r=>{[T.TRANSFORM_CHANGE_OBSERVABLE_TYPE.scale,T.TRANSFORM_CHANGE_OBSERVABLE_TYPE.all].includes(r.type)&&this._refreshCurrent()}))}_clearObserverEvent(){var t,r;this._getSheetObject()!=null&&((t=this._scenePointerMoveSub)==null||t.unsubscribe(),(r=this._scenePointerUpSub)==null||r.unsubscribe(),this._scenePointerMoveSub=null,this._scenePointerUpSub=null)}_clearFreeze(){var t,r,i,s,l,c;(t=this._rowFreezeHeaderRect)==null||t.dispose(),(r=this._rowFreezeMainRect)==null||r.dispose(),(i=this._columnFreezeHeaderRect)==null||i.dispose(),(s=this._columnFreezeMainRect)==null||s.dispose(),this._getSheetObject()!=null&&([this._freezeDownSubs,this._freezePointerEnterSubs,this._freezePointerLeaveSubs].forEach(d=>{d==null||d.unsubscribe()}),this._freezeDownSubs=null,this._freezePointerEnterSubs=null,this._freezePointerLeaveSubs=null,(l=this._scenePointerMoveSub)==null||l.unsubscribe(),(c=this._scenePointerUpSub)==null||c.unsubscribe(),this._scenePointerMoveSub=null,this._scenePointerUpSub=null)}_getPositionByIndex(e,t){var d;if(this._getSheetObject()==null)return;const i=(d=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:d.skeleton,s=i==null?void 0:i.getNoMergeCellWithCoordByIndex(e,t);if(i==null)return;if(s!=null&&(!isNaN(s.endX)||!isNaN(s.endY)))return s;const{rowHeaderWidthAndMarginLeft:l,columnHeaderHeightAndMarginTop:c}=i;return{startX:l,endX:l,startY:c,endY:c}}_getFreeze(){var t;const e=(t=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:t.skeleton.getWorksheetConfig();if(e!=null)return e.freeze}_getSheetObject(){return Ne(this._context.unit,this._context)}_refreshFreeze(e,t,r,i,s){var c;const l={startRow:e,startColumn:t,ySplit:r,xSplit:i};this._clearFreeze(),this._createFreeze(0,l),this._createFreeze(1,l),this._updateViewport(e,t,r,i,s),(c=this._getSheetObject())==null||c.spreadsheet.makeForceDirty()}};exports.HeaderFreezeRenderController=Bm([Rt(1,a.Inject(exports.SheetSkeletonManagerService)),Rt(2,a.ICommandService),Rt(3,a.Inject(m.SheetsSelectionsService)),Rt(4,a.Inject(exports.SheetScrollManagerService)),Rt(5,a.Inject(a.ThemeService)),Rt(6,a.Inject(m.SheetInterceptorService)),Rt(7,a.Inject(a.Injector))],exports.HeaderFreezeRenderController);function Gm(n){const o=n.get(m.SheetsSelectionsService),e=n.get(m.RangeProtectionRuleModel),t=n.get(a.IUniverInstanceService),r=n.get(m.MergeCellController),i=t.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET);return O.combineLatest([o.selectionMoveEnd$,i.pipe(O.map(s=>{var l;return(l=s==null?void 0:s.getUnitId())!=null?l:""})),i.pipe(O.switchMap(s=>{var l;return(l=s==null?void 0:s.activeSheet$)!=null?l:O.of(null)}))]).pipe(O.map(([s,l,c])=>{if(!c||!s||s.length===0)return!1;const d=c.getSheetId(),u=s.map(S=>S.range);if(r.interceptor.fetchThroughInterceptors(m.MERGE_CELL_INTERCEPTOR_CHECK)(!1,u))return!0;const g=e.getSubunitRuleList(l,d).map(S=>S.ranges).flat();if(s.length<2){const S=s[0].range;return g.some(p=>a.Rectangle.intersects(p,S)&&!a.Rectangle.contains(p,S))}for(let S=0;S<s.length;S++)for(let f=S+1;f<s.length;f++)if(a.Rectangle.intersects(s[S].range,s[f].range))return!0;return!1}))}function Ml(n,o){return!!Qn(n,o,a.RANGE_TYPE.ROW)}function Pl(n,o){return!!Qn(n,o,a.RANGE_TYPE.COLUMN)}function Qn(n,o,e){return n.find(r=>{const i=r.range,{startRow:s,endRow:l,startColumn:c,endColumn:d,rangeType:u}=i;return u===a.RANGE_TYPE.ALL||u===a.RANGE_TYPE.NORMAL?!1:u===e&&(e===a.RANGE_TYPE.COLUMN&&c<=o&&o<=d||e===a.RANGE_TYPE.ROW&&s<=o&&o<=l)})}var Zm=Object.getOwnPropertyDescriptor,Km=(n,o,e,t)=>{for(var r=t>1?void 0:t?Zm(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Ko=(n,o)=>(e,t)=>o(e,t,n);const qm="__SpreadsheetHeaderMoveControllerBackground__",Qm="__SpreadsheetHeaderMoveControllerShapeLine__",Jm="rgba(0, 0, 0, 0.1)",$m="rgb(119, 119, 119)",eg=4,qo=a.createInterceptorKey("headerMovePermissionCheck");exports.HeaderMoveRenderController=class extends a.Disposable{constructor(e,t,r,i){super();E(this,"_startOffsetX",Number.NEGATIVE_INFINITY);E(this,"_startOffsetY",Number.NEGATIVE_INFINITY);E(this,"_moveHelperBackgroundShape");E(this,"_moveHelperLineShape");E(this,"_headerPointerDownSubs");E(this,"_headerPointerMoveSubs");E(this,"_headerPointerLeaveSubs");E(this,"_dragHeaderMoveSub");E(this,"_scenePointerUpSub");E(this,"_scrollTimer");E(this,"_changeFromColumn",-1);E(this,"_changeFromRow",-1);E(this,"_changeToColumn",-1);E(this,"_changeToRow",-1);E(this,"interceptor",new a.InterceptorManager({HEADER_MOVE_PERMISSION_CHECK:qo}));E(this,"_workbookSelections");this._context=e,this._sheetSkeletonManagerService=r,this._commandService=i,this._workbookSelections=t.getWorkbookSelections(this._context.unitId),this._init()}dispose(){var e,t,r,i,s,l,c,d;(e=this._moveHelperBackgroundShape)==null||e.dispose(),(t=this._moveHelperLineShape)==null||t.dispose(),(r=this._headerPointerMoveSubs)==null||r.unsubscribe(),(i=this._headerPointerLeaveSubs)==null||i.unsubscribe(),(s=this._headerPointerDownSubs)==null||s.unsubscribe(),this._headerPointerMoveSubs=null,this._headerPointerLeaveSubs=null,this._headerPointerDownSubs=null,(l=this._dragHeaderMoveSub)==null||l.unsubscribe(),(c=this._scenePointerUpSub)==null||c.unsubscribe(),this._dragHeaderMoveSub=null,this._scenePointerUpSub=null,(d=this._scrollTimer)==null||d.dispose()}_init(){this._initialRowOrColumn(a.RANGE_TYPE.ROW),this._initialRowOrColumn(a.RANGE_TYPE.COLUMN)}_initialRowOrColumn(e=a.RANGE_TYPE.ROW){const t=this._context.components.get(ue.COLUMN),r=this._context.components.get(ue.ROW),i=this._context.scene,s=e===a.RANGE_TYPE.ROW?r:t,l=u=>{var b,R;const h=(b=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:b.skeleton;if(h==null)return;const g=(R=this._workbookSelections.getCurrentLastSelection())==null?void 0:R.range;if(!g||!this.interceptor.fetchThroughInterceptors(qo)(!1,g))return;const f=this._workbookSelections.getCurrentSelections(),{row:p,column:v}=ze(u.offsetX,u.offsetY,i,h);if(!Qn(f,e===a.RANGE_TYPE.ROW?p:v,e)){i.resetCursor();return}i.setCursor(T.CURSOR_TYPE.GRAB)},c=()=>{var u,h;(u=this._moveHelperBackgroundShape)==null||u.hide(),(h=this._moveHelperLineShape)==null||h.hide(),i.resetCursor()},d=(u,h)=>{var W,N;if(h.isStopPropagation)return;const g=(W=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:W.skeleton;if(g==null)return;const S=(N=this._workbookSelections.getCurrentLastSelection())==null?void 0:N.range;if(!S||!this.interceptor.fetchThroughInterceptors(qo)(!1,S))return;const{offsetX:p,offsetY:v}=u,C=i.getCoordRelativeToViewport(T.Vector2.FromArray([p,v])),{x:b,y:R}=C;this._startOffsetX=b,this._startOffsetY=R;const{row:w,column:P}=ze(u.offsetX,u.offsetY,i,g);let y;e===a.RANGE_TYPE.ROW?(this._changeFromRow=w,y=T.ScrollTimerType.Y):(this._changeFromColumn=P,y=T.ScrollTimerType.X);const M=this._workbookSelections.getCurrentSelections(),x=Qn(M,e===a.RANGE_TYPE.ROW?w:P,e);if(!x)return;const A=i.getScrollXYInfoByViewport(T.Vector2.FromArray([this._startOffsetX,this._startOffsetY]));this._newBackgroundAndLine(),i.setCursor(T.CURSOR_TYPE.GRABBING),i.disableObjectsEvent();let D=!1,k;const V=()=>{if(D)return;k=T.ScrollTimer.create(i,y),this._scrollTimer=k;const U=i.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN);k.startScroll(b,R,U),D=!0};this._dragHeaderMoveSub=i.onPointerMove$.subscribeEvent(U=>{V();const{offsetX:L,offsetY:z}=U,{x:B,y:F}=i.getCoordRelativeToViewport(T.Vector2.FromArray([L,z]));this._rowColumnMoving(B,F,x,A,e),k.scrolling(B,F,()=>{this._rowColumnMoving(B,F,x,A,e)})}),this._scenePointerUpSub=i.onPointerUp$.subscribeEvent(()=>{var L,z,B;this._disposeBackgroundAndLine(),i.resetCursor(),i.enableObjectsEvent(),this._clearObserverEvent(),(L=this._scrollTimer)==null||L.dispose();const U=this._workbookSelections.getCurrentSelections();if(e===a.RANGE_TYPE.ROW){if(this._changeFromRow!==this._changeToRow&&this._changeToRow!==-1){const X=(z=((U==null?void 0:U.filter(K=>K.range.rangeType===a.RANGE_TYPE.ROW&&K.range.startRow<=this._changeFromRow&&this._changeFromRow<=K.range.endRow))||[])[0])==null?void 0:z.range;X&&this._commandService.executeCommand(m.MoveRowsCommand.id,{fromRange:X,toRange:{...X,startRow:this._changeToRow,endRow:this._changeToRow+X.endRow-X.startRow}})}this._changeToRow=this._changeFromRow=-1}else{if(this._changeFromColumn!==this._changeToColumn&&this._changeToColumn!==-1){const X=(B=((U==null?void 0:U.filter(K=>K.range.rangeType===a.RANGE_TYPE.COLUMN&&K.range.startColumn<=this._changeFromColumn&&this._changeFromColumn<=K.range.endColumn))||[])[0])==null?void 0:B.range;X&&this._commandService.executeCommand(m.MoveColsCommand.id,{fromRange:X,toRange:{...X,startColumn:this._changeToColumn,endColumn:this._changeToColumn+X.endColumn-X.startColumn}})}this._changeToColumn=this._changeFromColumn=-1}})};this._headerPointerMoveSubs=new O.Subscription,this._headerPointerMoveSubs.add(s.onPointerMove$.subscribeEvent(l)),this._headerPointerLeaveSubs=new O.Subscription,this._headerPointerLeaveSubs.add(s==null?void 0:s.onPointerLeave$.subscribeEvent(c)),this._headerPointerDownSubs=new O.Subscription,this._headerPointerDownSubs.add(s==null?void 0:s.onPointerDown$.subscribeEvent(d))}_rowColumnMoving(e,t,r,i,s){var F,X,K,te,Q,ie,G;const l=this._context.scene,c=(F=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:F.skeleton;if(c==null)return;const{rowHeaderWidth:d,columnHeaderHeight:u,rowTotalHeight:h,columnTotalWidth:g}=c,S=l.getViewportScrollXY(l.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN)),{scaleX:f,scaleY:p}=l.getAncestorScale(),v=c.getCellIndexByOffset(e,t,f,p,S),{row:C,column:b}=v,R=c.getNoMergeCellWithCoordByIndex(C,b),{startX:w,startY:P,endX:y,endY:M}=R,x=this._sheetSkeletonManagerService.attachRangeWithCoord(r.range);if(x==null)return;const A=Math.max(f,f),{startX:D,endX:k,startY:V,endY:W,startRow:N,startColumn:U,endRow:L,endColumn:z}=x;s===a.RANGE_TYPE.ROW?(X=this._moveHelperBackgroundShape)==null||X.transformByState({height:W-V,width:g+d,left:0,top:V+(t-this._startOffsetY)/A+S.y-i.y}):(K=this._moveHelperBackgroundShape)==null||K.transformByState({height:h+u,width:k-D,left:D+(e-this._startOffsetX)/A+S.x-i.x,top:0}),(te=this._moveHelperBackgroundShape)==null||te.show();const B=eg/A;if(s===a.RANGE_TYPE.ROW){let Y=0;if(C<=N)Y=P-B/2,this._changeToRow=C;else if(C>L)Y=M-B/2,this._changeToRow=C+1;else return;(Q=this._moveHelperLineShape)==null||Q.transformByState({height:B,width:g,left:d,top:Y})}else{let Y=0;if(b<=U)Y=w-B/2,this._changeToColumn=b;else if(b>z)Y=y-B/2,this._changeToColumn=b+1;else return;(ie=this._moveHelperLineShape)==null||ie.transformByState({height:h,width:B,left:Y,top:u})}(G=this._moveHelperLineShape)==null||G.show()}_clearObserverEvent(){var e,t;(e=this._dragHeaderMoveSub)==null||e.unsubscribe(),(t=this._scenePointerUpSub)==null||t.unsubscribe(),this._dragHeaderMoveSub=null,this._scenePointerUpSub=null}_newBackgroundAndLine(){const e=this._context.scene;this._moveHelperBackgroundShape=new T.Rect(qm,{fill:Jm,evented:!1,zIndex:100}),this._moveHelperLineShape=new T.Rect(Qm,{fill:$m,evented:!1,zIndex:100}),e.addObjects([this._moveHelperBackgroundShape,this._moveHelperLineShape],ht)}_disposeBackgroundAndLine(){var e,t;(e=this._moveHelperBackgroundShape)==null||e.dispose(),(t=this._moveHelperLineShape)==null||t.dispose()}};exports.HeaderMoveRenderController=Km([Ko(1,a.Inject(m.SheetsSelectionsService)),Ko(2,a.Inject(exports.SheetSkeletonManagerService)),Ko(3,a.ICommandService)],exports.HeaderMoveRenderController);var Di=(n=>(n[n.VERTICAL=0]="VERTICAL",n[n.HORIZONTAL=1]="HORIZONTAL",n))(Di||{});const tg="rgba(120, 120, 120, 0.01)",Qo="rgb(68, 71, 70)",Fn=12,ng=44,ki=4;class ia extends T.Shape{constructor(e,t){super(e,t);E(this,"_size",Fn);E(this,"_color",Qo);E(this,"_mode",0);this.setShapeProps(t)}get size(){return this._size}get mode(){return this._mode}get color(){return this._color}_draw(e){const t=this.getScene();if(!t)return;const{scaleX:r,scaleY:i}=t.getAncestorScale(),s=Math.max(r,i),l=Fn/s,c=ki/s;let{width:d,height:u}=this,h=0,g=0;this.mode===0?(d=c,h=l-c):(u=c,g=l-c),T.Rect.drawWith(e,{width:this.width,height:this.height,left:0,top:0,fill:tg}),T.Rect.drawWith(e,{width:d,height:u,fill:Qo,radius:c}),e.save(),e.transform(1,0,0,1,h,g),T.Rect.drawWith(e,{width:d,height:u,fill:Qo,radius:c}),e.restore()}setShapeProps(e){return e!=null&&e.size&&(this._size=e.size),e!=null&&e.mode&&(this._mode=e.mode),e!=null&&e.color&&(this._color=e.color),this.mode===0?this.transformByState({width:Fn,height:this.size}):this.transformByState({width:this.size,height:Fn}),this}}var rg=Object.getOwnPropertyDescriptor,og=(n,o,e,t)=>{for(var r=t>1?void 0:t?rg(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Jo=(n,o)=>(e,t)=>o(e,t,n);const ig="__SpreadsheetHeaderResizeControllerShapeRow__",sg="__SpreadsheetHeaderResizeControllerShapeColumn__",sa="__SpreadsheetHeaderResizeControllerShapeHelper__",aa="rgb(199, 199, 199)",ag=2,$o=a.createInterceptorKey("headerResizePermissionCheck");exports.HeaderResizeRenderController=class extends a.Disposable{constructor(e,t,r,i){super();E(this,"_currentRow",0);E(this,"_currentColumn",0);E(this,"_rowResizeRect");E(this,"_columnResizeRect");E(this,"_headerPointerSubs");E(this,"_scenePointerMoveSub");E(this,"_scenePointerUpSub");E(this,"_resizeHelperShape");E(this,"_startOffsetX",Number.POSITIVE_INFINITY);E(this,"_startOffsetY",Number.POSITIVE_INFINITY);E(this,"interceptor",new a.InterceptorManager({HEADER_RESIZE_PERMISSION_CHECK:$o}));this._context=e,this._sheetSkeletonManagerService=t,this._selectionManagerService=r,this._commandService=i,this._init()}dispose(){var e,t,r;(e=this._rowResizeRect)==null||e.dispose(),this._rowResizeRect=null,(t=this._columnResizeRect)==null||t.dispose(),this._columnResizeRect=null,(r=this._headerPointerSubs)==null||r.unsubscribe(),this._headerPointerSubs=null}_init(){const e=this._context.scene;this._rowResizeRect=new ia(ig,{visible:!1,mode:Di.HORIZONTAL,zIndex:100}),this._columnResizeRect=new ia(sg,{visible:!1,mode:Di.VERTICAL,zIndex:100}),e.addObjects([this._rowResizeRect,this._columnResizeRect],ht),this._initialHover(0),this._initialHover(1),this._initialHoverResize(0),this._initialHoverResize(1)}_initialHover(e=0){const t=this._context.components.get(ue.COLUMN),r=this._context.components.get(ue.ROW),i=this._context.scene,s=e===0?r:t,l=(d,u)=>{var h,g;(h=this._rowResizeRect)==null||h.hide(),(g=this._columnResizeRect)==null||g.hide()},c=(d,u)=>{var A;const h=(A=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:A.skeleton;if(h==null||this._rowResizeRect==null||this._columnResizeRect==null)return;const{rowHeaderWidth:g,columnHeaderHeight:S}=h,{startX:f,startY:p,endX:v,endY:C,row:b,column:R}=ze(d.offsetX,d.offsetY,i,h),w=Xn(d.offsetX,d.offsetY,i),{scaleX:P,scaleY:y}=i.getAncestorScale(),M=Math.max(P,y),x=Fn/M;if(e===0){let D=p-x/2;if(w.y<=p+x/2&&w.y>=p)this._currentRow=b-1;else if(w.y>=C-x/2&&w.y<=C)this._currentRow=b,D=C-x/2;else{this._rowResizeRect.hide();return}if(this._currentRow===-1)return;if(!this.interceptor.fetchThroughInterceptors($o)(null,{row:this._currentRow}))return!1;const V=Math.min(ng,g/3);this._rowResizeRect.transformByState({left:g/2-V/2,top:D}),this._rowResizeRect.setShapeProps({size:V}),this._rowResizeRect.show()}else{let D=f-x/2;if(w.x<=f+x/2&&w.x>=f)this._currentColumn=R-1;else if(w.x>=v-x/2&&w.x<=v)this._currentColumn=R,D=v-x/2;else{this._columnResizeRect.hide();return}if(this._currentColumn===-1)return;if(!this.interceptor.fetchThroughInterceptors($o)(null,{col:this._currentColumn}))return!1;const V=S*.7;this._columnResizeRect.transformByState({left:D,top:S/2-V/2}),this._columnResizeRect.setShapeProps({size:V}),this._columnResizeRect.show()}};this._headerPointerSubs=new O.Subscription,this._headerPointerSubs.add(s==null?void 0:s.onPointerMove$.subscribeEvent(c)),this._headerPointerSubs.add(s==null?void 0:s.onPointerLeave$.subscribeEvent(l))}_initialHoverResize(e=0){const t=this._context.scene,r=e===0?this._rowResizeRect:this._columnResizeRect;r!=null&&(this.disposeWithMe(r.onPointerEnter$.subscribeEvent(()=>{r!=null&&(r.show(),t.setCursor(e===0?T.CURSOR_TYPE.ROW_RESIZE:T.CURSOR_TYPE.COLUMN_RESIZE))})),this.disposeWithMe(r.onPointerLeave$.subscribeEvent(()=>{r!=null&&(r.hide(),t.resetCursor())})),this.disposeWithMe(r.onPointerDown$.subscribeEvent(i=>{var z,B,F,X,K,te,Q;const s=(z=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:z.skeleton;if(s==null)return;const l=this._context.scene,c=l.getEngine(),d=(c==null?void 0:c.height)||0,u=(c==null?void 0:c.width)||0,h=l.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN),g=(((F=(B=h==null?void 0:h.getScrollBar())==null?void 0:B.horizonScrollTrack)==null?void 0:F.height)||0)+10,S=(((K=(X=h==null?void 0:h.getScrollBar())==null?void 0:X.verticalScrollTrack)==null?void 0:K.width)||0)+10,f=Xn(i.offsetX,i.offsetY,l),{scaleX:p,scaleY:v}=l.getAncestorScale();this._startOffsetX=f.x,this._startOffsetY=f.y;const C=s.getOffsetByColumn(this._currentColumn),b=s.getOffsetByRow(this._currentRow),R=s.getNoMergeCellWithCoordByIndex(this._currentRow,this._currentColumn);let w=!1,P=0,y=0;const{columnTotalWidth:M,rowHeaderWidth:x,rowTotalHeight:A,columnHeaderHeight:D}=s,k=u>M+x?u:M+x,V=d>A+D?d:A+D,W=Math.max(p,v),N=ki/W;e===0?this._resizeHelperShape=new T.Rect(sa,{width:k,height:N,fill:aa,left:0,top:b-N/2}):this._resizeHelperShape=new T.Rect(sa,{width:N,height:V,fill:aa,left:C-N/2,top:0});const U=((te=this._columnResizeRect)==null?void 0:te.left)||0,L=((Q=this._rowResizeRect)==null?void 0:Q.top)||0;l.addObject(this._resizeHelperShape,ht),l.disableObjectsEvent(),this._scenePointerMoveSub=l.onPointerMove$.subscribeEvent(ie=>{var fe,be,Re,it,st,_t;const G=l.getCoordRelativeToViewport(T.Vector2.FromArray([this._startOffsetX,this._startOffsetY])),Y=l.getScrollXYInfoByViewport(G,h),q=Xn(ie.offsetX,ie.offsetY,l),{x:ne,y:ce}=q,{scaleX:oe,scaleY:se}=l.getAncestorScale(),$=Math.max(oe,se),me=ki/$;P=ne-this._startOffsetX-me/2,y=ce-this._startOffsetY-me/2,Math.abs(e===0?y:P)>=ag&&(w=!0),e===0?(y>d-g+Y.y-R.startY&&(y=d-g+Y.y-R.startY),y<-(R.endY-R.startY)+2&&(y=-(R.endY-R.startY)+2),w&&((fe=this._resizeHelperShape)==null||fe.transformByState({top:b+y}),(be=this._rowResizeRect)==null||be.transformByState({top:L+y+me/2}),(Re=this._rowResizeRect)==null||Re.show(),l.setCursor(T.CURSOR_TYPE.ROW_RESIZE))):(P>u-S+Y.x-R.startX&&(P=u-S+Y.x-R.startX),P<-(R.endX-R.startX)+2&&(P=-(R.endX-R.startX)+2),w&&((it=this._resizeHelperShape)==null||it.transformByState({left:C+P}),(st=this._columnResizeRect)==null||st.transformByState({left:U+P+me/2}),(_t=this._columnResizeRect)==null||_t.show(),l.setCursor(T.CURSOR_TYPE.COLUMN_RESIZE)))}),this._scenePointerUpSub=l.onPointerUp$.subscribeEvent(ie=>{var Y,q,ne;const G=this._context.scene;this._clearObserverEvent(),(Y=this._resizeHelperShape)==null||Y.dispose(),this._resizeHelperShape=null,G.enableObjectsEvent(),w&&(G.resetCursor(),(q=this._rowResizeRect)==null||q.hide(),(ne=this._columnResizeRect)==null||ne.hide(),e===0?this._commandService.executeCommand(m.DeltaRowHeightCommand.id,{deltaY:y,anchorRow:this._currentRow}):this._commandService.executeCommand(m.DeltaColumnWidthCommand.id,{deltaX:P,anchorCol:this._currentColumn}))})})),this.disposeWithMe(r.onDblclick$.subscribeEvent(()=>{var h,g,S;this._context.scene.resetCursor();const s=(h=this._sheetSkeletonManagerService.getCurrentParam())==null?void 0:h.skeleton;if(!s)return;const l=0,c=0,d=s.worksheet.getRowCount()-1||0,u=s.worksheet.getColumnCount()-1||0;switch(e){case 1:{const f=this._selectionManagerService.getCurrentSelections(),p=[];for(let v=0;v<f.length;v++){const C=f[v];C.range.rangeType===a.RANGE_TYPE.COLUMN&&this._currentColumn<=C.range.endColumn&&this._currentColumn>=C.range.startColumn&&p.push({startColumn:C.range.startColumn,endColumn:C.range.endColumn,startRow:l,endRow:d})}p.length===0&&p.push({startColumn:this._currentColumn,endColumn:this._currentColumn,startRow:l,endRow:d}),this._commandService.executeCommand(vr.id,{ranges:p}),(g=this._columnResizeRect)==null||g.hide();break}case 0:this._commandService.executeCommand(m.SetWorksheetRowIsAutoHeightCommand.id,{ranges:[{startRow:this._currentRow,endRow:this._currentRow,startColumn:c,endColumn:u}]}),(S=this._rowResizeRect)==null||S.hide();break}})))}_clearObserverEvent(){var e,t;(e=this._scenePointerMoveSub)==null||e.unsubscribe(),(t=this._scenePointerUpSub)==null||t.unsubscribe(),this._scenePointerMoveSub=null,this._scenePointerUpSub=null}};exports.HeaderResizeRenderController=og([Jo(1,a.Inject(exports.SheetSkeletonManagerService)),Jo(2,a.Inject(m.SheetsSelectionsService)),Jo(3,a.ICommandService)],exports.HeaderResizeRenderController);var lg=Object.getOwnPropertyDescriptor,cg=(n,o,e,t)=>{for(var r=t>1?void 0:t?lg(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Nn=(n,o)=>(e,t)=>o(e,t,n);const dg=60;exports.SheetRenderController=class extends a.RxDisposable{constructor(e,t,r,i,s,l){super();E(this,"_renderMetric$",new O.Subject);E(this,"renderMetric$",this._renderMetric$.asObservable());E(this,"_renderFrameTimeMetric",null);E(this,"_renderFrameTags",{});E(this,"_afterRenderMetric$",new O.Subject);this._context=e,this._configService=t,this._sheetSkeletonManagerService=r,this._sheetRenderService=i,this._commandService=s,this._telemetryService=l,this._addNewRender(),this._initRenderMetricSubscriber()}_addNewRender(){const{scene:e,engine:t,unit:r}=this._context;this._addComponent(r),this._initRerenderScheduler(),this._initCommandListener();const i=this._context.unit.getActiveSheet();if(!i)throw new Error("No active sheet found");const s=i.getSheetId();this._sheetSkeletonManagerService.setCurrent({sheetId:s});const l=()=>e.render();this.disposeWithMe(this._context.activated$.subscribe(c=>{c?t.runRenderLoop(l):t.stopRenderLoop(l)}))}_initRenderMetricSubscriber(){const{engine:e}=this._context;e.beginFrame$.subscribe(()=>{this._renderFrameTimeMetric=null,this._renderFrameTags={}}),e.endFrame$.subscribe(()=>{this._renderFrameTimeMetric&&Object.keys(this._renderFrameTimeMetric).filter(i=>i.startsWith(T.SHEET_EXTENSION_PREFIX)).length>0&&this._afterRenderMetric$.next({frameTimeMetric:this._renderFrameTimeMetric,tags:this._renderFrameTags})}),e.renderFrameTimeMetric$.subscribe(([r,i])=>{this._renderFrameTimeMetric||(this._renderFrameTimeMetric={}),this._renderFrameTimeMetric[r]||(this._renderFrameTimeMetric[r]=[]),this._renderFrameTimeMetric[r].push(Math.round(i*100)/100)}),e.renderFrameTags$.subscribe(([r,i])=>{this._renderFrameTags[r]=i});const t=[];this._afterRenderMetric$.pipe(O.withLatestFrom(e.endFrame$)).subscribe(([r,i])=>{t.push({FPS:i.FPS,elapsedTime:i.elapsedTime,frameTime:Math.round(i.frameTime*100)/100,...r.frameTimeMetric,...r.tags}),t.length>dg&&(this._captureRenderMetric(t),t.length=0)})}_captureRenderMetric(e){var g;const t=e;if(t.length===0)return;const r=S=>{let f=0;const v=Object.entries(S).filter(([b,R])=>Array.isArray(R)).map(([b])=>b).reduce((b,R)=>{const w=S[R].reduce((P,y)=>P+y,0);return b[R]=w,b},{});return Object.keys(S).filter(b=>b.startsWith(T.SHEET_EXTENSION_PREFIX)).forEach(b=>{f+=v[b]}),{...v,extensionTotal:f}},i=e.map(S=>({...S,...r(S)})),l=(S=>Object.entries(S[0]).filter(([v,C])=>!["elapsedTime"].includes(v)).filter(([v,C])=>typeof C=="number").map(([v])=>v).reduce((v,C)=>{const b=S.map(y=>y[C]),R=Math.max(...b),w=Math.min(...b),P=b.reduce((y,M)=>y+M,0)/b.length;return v[C]={max:Math.round(R*100)/100,min:Math.round(w*100)/100,avg:Math.round(P*100)/100},v},{}))(i),c=t[t.length-1].elapsedTime,d=this._context.unit.getActiveSheet().getSheetId(),u=this._context.unit.getUnitId(),h={sheetId:d,unitId:u,elapsedTimeToStart:c,...l};this._renderMetric$.next(h),(g=this._telemetryService)==null||g.capture("sheet_render_cost",h)}_addComponent(e){const{scene:t,components:r}=this._context,i=e.getActiveSheet(),s=new T.Spreadsheet(ue.MAIN);this._addViewport(i);const l=new T.SpreadsheetRowHeader(ue.ROW),c=new T.SpreadsheetColumnHeader(ue.COLUMN),d=new T.Rect(ue.LEFT_TOP,{zIndex:2,left:-1,top:-1,fill:"rgb(248, 249, 250)",stroke:"rgb(217, 217, 217)",strokeWidth:1});this._context.mainComponent=s,r.set(ue.MAIN,s),r.set(ue.ROW,l),r.set(ue.COLUMN,c),r.set(ue.LEFT_TOP,d),t.addObjects([s],Es),t.addObjects([l,c,d],ht),t.enableLayerCache(Es,ht)}_initViewports(e,t,r){const l=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN,e,{left:t.width,top:r.height,bottom:0,right:0,isWheelPreventDefaultX:!0,allowCache:!0,bufferEdgeX:100,bufferEdgeY:100}),c=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP,e,{isWheelPreventDefaultX:!0,active:!1,allowCache:!0,bufferEdgeX:0,bufferEdgeY:0}),d=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT,e,{isWheelPreventDefaultX:!0,active:!1,allowCache:!0,bufferEdgeX:0,bufferEdgeY:100}),u=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP,e,{isWheelPreventDefaultX:!0,active:!1,allowCache:!0,bufferEdgeX:100,bufferEdgeY:0}),h=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_TOP,e,{active:!1,isWheelPreventDefaultX:!0}),g=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_ROW_BOTTOM,e,{left:0,top:r.height,bottom:0,width:t.width+1,isWheelPreventDefaultX:!0}),S=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT,e,{active:!1,isWheelPreventDefaultX:!0}),f=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_COLUMN_RIGHT,e,{left:t.width,top:0,height:r.height+1,right:0,isWheelPreventDefaultX:!0}),p=new T.Viewport(T.SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP,e,{left:0,top:0,width:t.width,height:r.height,isWheelPreventDefaultX:!0});return{viewMain:l,viewLeftTop:p,viewMainLeftTop:c,viewMainLeft:d,viewMainTop:u,viewColumnLeft:S,viewRowTop:h,viewRowBottom:g,viewColumnRight:f}}_addViewport(e){const t=this._context.scene,{rowHeader:r,columnHeader:i}=e.getConfig(),{viewMain:s}=this._initViewports(t,r,i),l=this._configService.getConfig(He),c=l==null?void 0:l.scrollConfig;return new T.ScrollBar(s,c),t.attachControl(),s}_initRerenderScheduler(){this.disposeWithMe(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(e=>{if(!e)return null;const{skeleton:t,sheetId:r}=e,i=this._context.unit,s=i==null?void 0:i.getSheetBySheetId(r);if(i==null||s==null)return;const{mainComponent:l,components:c}=this._context,d=l,u=c.get(ue.ROW),h=c.get(ue.COLUMN),g=c.get(ue.LEFT_TOP),{rowHeaderWidth:S,columnHeaderHeight:f}=t;d==null||d.updateSkeleton(t),u==null||u.updateSkeleton(t),h==null||h.updateSkeleton(t),g==null||g.transformByState({width:S,height:f})}))}_initCommandListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{const{unit:t}=this._context,{id:r}=e;if(m.COMMAND_LISTENER_SKELETON_CHANGE.includes(r)||this._sheetRenderService.checkMutationShouldTriggerRerender(r)){const i=e.params,{unitId:s,subUnitId:l}=i,c=t.getActiveSheet();if(!c)return;const d=this._context.unitId,u=c.getSheetId();if(s!==d||l!==u)return;this._sheetSkeletonManagerService.makeDirty({sheetId:u,commandId:r},!0),this._sheetSkeletonManagerService.setCurrent({sheetId:u,commandId:r})}else m.COMMAND_LISTENER_VALUE_CHANGE.includes(r)&&this._sheetSkeletonManagerService.reCalculate();e.type===a.CommandType.MUTATION&&this._markUnitDirty(e)}))}_markUnitDirty(e){const{mainComponent:t,scene:r}=this._context;if(e.id===Z.SetFormulaCalculationNotificationMutation.id&&e.params.stageInfo!=null||(t&&t.makeDirty(),r.makeDirty(),!e.params))return;const i=e.params,s=this._spreadsheetViewports(r);if(e.id===m.SetRangeValuesMutation.id&&i.cellValue){const l=this._cellValueToRange(i.cellValue),c=this._rangeToBounds([l]);this._markViewportDirty(s,c),t.setDirtyArea(c)}if(e.id===m.MoveRangeMutation.id&&i.from&&i.to){const l=i.fromRange||this._cellValueToRange(i.from.value),c=i.toRange||this._cellValueToRange(i.to.value),d=this._rangeToBounds([l,c]);this._markViewportDirty(s,d),t.setDirtyArea(d)}}_cellValueToRange(e){let t=0,r=0,i=0,s=0;for(const[h,g]of Object.entries(e)){for(const S in g)t>Number(S)&&(t=Number(S)),r<Number(S)&&(r=Number(S));i>Number(h)&&(i=Number(h)),s<Number(h)&&(s=Number(h))}return{startRow:i,endRow:s,startColumn:t,endColumn:r}}_rangeToBounds(e){const t=this._sheetSkeletonManagerService.getCurrentParam().skeleton,{rowHeightAccumulation:r,columnWidthAccumulation:i,rowHeaderWidth:s,columnHeaderHeight:l}=t,c=[];for(const d of e){const{startRow:u,endRow:h,startColumn:g,endColumn:S}=d,f=u===0?0:r[u-1]+l,p=r[h]+l,v=g===0?0:i[g-1]+s,C=i[S]+s;c.push({top:f,left:v,bottom:p,right:C,width:C-v,height:p-f})}return c}_markViewportDirty(e,t){const r=e.filter(i=>i.isActive&&i.cacheBound);for(const i of r)for(const s of t)a.Rectangle.hasIntersectionBetweenTwoRect(i.cacheBound,s)&&i.markDirty(!0)}_spreadsheetViewports(e){return e.getViewports().filter(t=>["viewMain","viewMainLeftTop","viewMainTop","viewMainLeft"].includes(t.viewportKey))}};exports.SheetRenderController=cg([Nn(1,a.Inject(a.IConfigService)),Nn(2,a.Inject(exports.SheetSkeletonManagerService)),Nn(3,a.Inject(exports.SheetsRenderService)),Nn(4,a.ICommandService),Nn(5,a.Optional(od.ITelemetryService))],exports.SheetRenderController);function ug(n,o){if(n.length!==o.length)return!1;const e=n.sort((r,i)=>r.id.localeCompare(i.id)),t=o.sort((r,i)=>r.id.localeCompare(i.id));return e.every((r,i)=>{var s,l;return((s=r.subject)==null?void 0:s.userID)===((l=t[i].subject)==null?void 0:l.userID)&&r.role===t[i].role})}function xl(n,o){return o.some(e=>hg(n,e))}function hg(n,o){const{startRow:e,startColumn:t,endColumn:r,endRow:i}=o,s=n.getMatrixWithMergedCells(e,t,i,r);let l=!1;return s.forValue((c,d,u)=>{if(u&&(c!==e||d!==t)&&n.cellHasValue(u))return l=!0,!1}),l}function Ol(n,o,e,t){const r=[],i=[],s=e.getSheetId();return t.forEach(l=>{const c=mg(e,l),d={unitId:o,subUnitId:s,cellValue:c.getData()},u=m.SetRangeValuesUndoMutationFactory(n,d);r.push({id:m.SetRangeValuesMutation.id,params:u}),i.push({id:m.SetRangeValuesMutation.id,params:d})}),{undos:r,redos:i}}function mg(n,o){const{startRow:e,startColumn:t,endColumn:r,endRow:i}=o,s=n.getMatrixWithMergedCells(e,t,i,r,a.CellModeEnum.Raw),l=new a.ObjectMatrix;let c=null;return s.forValue((d,u,h)=>{var g,S,f,p;h&&d>=e&&u>=t&&(!c&&n.cellHasValue(h)&&(h.v!==""||((p=(f=(S=(g=h.p)==null?void 0:g.body)==null?void 0:S.dataStream)==null?void 0:f.length)!=null?p:0)>2)&&(c=h),l.setValue(d,u,null))}),l.setValue(e,t,c),l}function gg(n,o,e,t){const r=e.getActiveViewportByCoord(T.Vector2.FromArray([n,o]));if(!r)return;const{scaleX:i,scaleY:s}=e.getAncestorScale(),l={x:r.viewportScrollX,y:r.viewportScrollY},c=t.getCellIndexByOffset(n,o,i,s,l),d=t.worksheet.getMergedCell(c.row,c.column);return{actualRow:d?d.startRow:c.row,actualCol:d?d.startColumn:c.column,mergeCell:d,row:c.row,col:c.column}}function la(n,o,e,t){const r=t.getFreeze();if(!r||r.startRow<=0&&r.startColumn<=0||n>=r.startRow&&o>=r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN);if(n<r.startRow&&o<r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP);if(n<r.startRow&&o>=r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP);if(n>=r.startRow&&o<r.startColumn)return e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT)}function Sg(n,o,e,t){const r=ca(n.left,n.top,o,e,t),i=ca(n.right,n.bottom,o,e,t);return{left:r.x,top:r.y,right:i.x,bottom:i.y}}function ca(n,o,e,t,r){const{scaleX:i,scaleY:s}=e.getAncestorScale(),l=e.getViewport(T.SHEET_VIEWPORT_KEY.VIEW_MAIN);if(!l)return{x:n,y:o};const c=r.getFreeze(),{startColumn:d,startRow:u,xSplit:h,ySplit:g}=c,S=t.getNoMergeCellWithCoordByIndex(u-g,d-h,!1),f=t.getNoMergeCellWithCoordByIndex(u,d,!1),{rowHeaderWidth:p,columnHeaderHeight:v}=t,C=f.startX-S.startX,b=f.startY-S.startY,{top:R,left:w,viewportScrollX:P,viewportScrollY:y}=l;let M;n>w?M=(n-P)*i:M=(C+p-(w-n))*i;let x;return o>R?x=(o-y)*s:x=(b+v-(R-o))*i,{x:M,y:x}}function Al(n,o,e,t,r){let i=t,s=r;e.overflowCache.forValue((d,u,h)=>{h.startRow<=i&&h.endRow>=i&&h.startColumn<=s&&h.endColumn>=s&&(s=u,i=d)});const l=e.getCellWithCoordByIndex(i,s);return{unitId:n.getUnitId(),subUnitId:o.getSheetId(),workbook:n,worksheet:o,row:l.actualRow,col:l.actualColumn}}function Dl(n,o,e,t,r,i){const{scene:s}=n,l=o.getUnitId(),{skeleton:c,sheetId:d}=t,u=gg(r,i,s,c);if(!u)return null;let{actualCol:h,actualRow:g}=u;const S={unitId:l,subUnitId:d,workbook:o,worksheet:e,row:g,col:h};c.overflowCache.forValue((y,M,x)=>{x.startRow<=g&&x.endRow>=g&&x.startColumn<=h&&x.endColumn>=h&&(h=M,g=y)});const f=c.getCellWithCoordByIndex(g,h),p=Al(o,e,c,g,h);let v;f.mergeInfo?v=f.mergeInfo:v={startRow:p.row,endRow:p.row,startColumn:p.col,endColumn:p.col};const C=s.getActiveViewportByCoord(T.Vector2.FromArray([r,i]));if(!C)return;const{scaleX:b,scaleY:R}=s.getAncestorScale(),w={x:C.viewportScrollX,y:C.viewportScrollY};return{position:{startX:(c.getOffsetByColumn(v.startColumn-1)-w.x)*b,endX:(c.getOffsetByColumn(v.endColumn)-w.x)*b,startY:(c.getOffsetByRow(v.startRow-1)-w.y)*R,endY:(c.getOffsetByRow(v.endRow)-w.y)*R},location:S,overflowLocation:p}}const vt={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge",handler:async(n,o)=>{const e=n.get(a.ICommandService),t=n.get(a.IUndoRedoService),r=n.get(a.IUniverInstanceService),i=n.get(_.IConfirmService),s=n.get(a.LocaleService),l=o.unitId,c=o.subUnitId,d=o.selections,u=m.getAddMergeMutationRangeByType(d,o.value),h=r.getUniverSheetInstance(l).getSheetBySheetId(c),g=[],S=[],f=xl(h,u);if(f&&!o.defaultMerge&&!await i.confirm({id:"merge.confirm.add-worksheet-merge",title:{title:"merge.confirm.title"},cancelText:s.t("merge.confirm.cancel"),confirmText:s.t("merge.confirm.confirm")}))return!1;const p={unitId:l,subUnitId:c,ranges:a.Tools.deepClone(u)},v={unitId:l,subUnitId:c,ranges:a.Tools.deepClone(u)},C=m.RemoveMergeUndoMutationFactory(n,p),b=m.AddMergeUndoMutationFactory(n,v);if(C.ranges.length>0&&g.push({id:m.RemoveWorksheetMergeMutation.id,params:C}),g.push({id:m.AddWorksheetMergeMutation.id,params:v}),S.push({id:m.RemoveWorksheetMergeMutation.id,params:b}),C.ranges.length>0&&S.push({id:m.AddWorksheetMergeMutation.id,params:C}),f){const x=Ol(n,l,h,u);g.unshift(...x.redos),S.push(...x.undos)}const R=m.AddMergeRedoSelectionsOperationFactory(n,o,u);R&&g.push(R);const w=m.AddMergeUndoSelectionsOperationFactory(n,o);w&&S.push(w);const y=n.get(m.SheetInterceptorService).onCommandExecute({id:vt.id,params:{unitId:l,subUnitId:c,ranges:u}});return g.push(...y.redos),S.push(...y.undos),a.sequenceExecute(g,e).result?(t.pushUndoRedo({unitID:l,undoMutations:S,redoMutations:g}),!0):!1}},fs={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge-all",handler:async n=>{var u;const o=n.get(a.ICommandService),t=(u=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:u.map(h=>h.range),r=$i(To.MergeAll,t);if(!(r!=null&&r.length))return!1;const s=n.get(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);if(!s)return!1;const l=s.getActiveSheet();if(!l)return!1;const c=s.getUnitId(),d=l.getSheetId();return o.executeCommand(vt.id,{selections:r,unitId:c,subUnitId:d})}},ps={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge-vertical",handler:async n=>{var u;const o=n.get(a.ICommandService),t=(u=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:u.map(h=>h.range),r=$i(To.MergeVertical,t);if(!(r!=null&&r.length))return!1;const s=n.get(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);if(!s)return!1;const l=s.getActiveSheet();if(!l)return!1;const c=s.getUnitId(),d=l.getSheetId();return o.executeCommand(vt.id,{value:a.Dimension.COLUMNS,selections:r,unitId:c,subUnitId:d})}},vs={type:a.CommandType.COMMAND,id:"sheet.command.add-worksheet-merge-horizontal",handler:async n=>{var u;const o=n.get(a.ICommandService),t=(u=n.get(m.SheetsSelectionsService).getCurrentSelections())==null?void 0:u.map(h=>h.range),r=$i(To.MergeHorizontal,t);if(!(r!=null&&r.length))return!1;const s=n.get(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);if(!s)return!1;const l=s.getActiveSheet();if(!l)return!1;const c=s.getUnitId(),d=l.getSheetId();return o.executeCommand(vt.id,{value:a.Dimension.ROWS,selections:r,unitId:c,subUnitId:d})}},Mn={type:a.CommandType.COMMAND,id:"sheet.command.delete-range-move-left-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endColumn:c.getColumnCount()-1};const u=S=>S.endRow-S.startRow;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Mn.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.DeleteRangeMoveLeftCommand.id):!0}},Vt={type:a.CommandType.COMMAND,id:"sheet.command.delete-range-move-up-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endRow:c.getRowCount()-1};for(let S=d.startRow;S<=d.endRow;S++)if(c.getRowFiltered(S)&&await o.confirm({id:Vt.id,title:{title:t.t("filter.confirm.error")},children:{title:t.t("filter.confirm.notAllowedToInsertRange")},confirmText:t.t("button.confirm")}))return!1;const u=S=>S.endColumn-S.startColumn;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Vt.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.DeleteRangeMoveUpCommand.id):!0}},Wt={type:a.CommandType.COMMAND,id:"sheet.command.insert-range-move-down-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endRow:c.getRowCount()-1};for(let S=d.startRow;S<=d.endRow;S++)if(c.getRowFiltered(S)&&await o.confirm({id:Wt.id,title:{title:t.t("filter.confirm.error")},children:{title:t.t("filter.confirm.notAllowedToInsertRange")},confirmText:t.t("button.confirm")}))return!1;const u=S=>S.endColumn-S.startColumn;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Wt.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.InsertRangeMoveDownCommand.id):!0}},Pn={type:a.CommandType.COMMAND,id:"sheet.command.insert-range-move-right-confirm",handler:async n=>{const o=n.get(_.IConfirmService),e=n.get(a.ICommandService),t=n.get(a.LocaleService),r=n.get(m.SheetsSelectionsService),i=n.get(a.IUniverInstanceService),s=r.getCurrentSelections();if(!s)return!1;const l=m.getSheetCommandTarget(i);if(!l)return!1;const{worksheet:c}=l;let d=s[0].range;if(!d)return!1;d={...d,endColumn:c.getColumnCount()-1};const u=S=>S.endRow-S.startRow;return!c.getMergeData().find(S=>{const f=a.Rectangle.getIntersects(S,d);return f?u(S)>u(f):!1})||await o.confirm({id:Pn.id,title:{title:t.t("merge.confirm.waring")},children:{title:t.t("merge.confirm.dismantleMergeCellWaring")},cancelText:t.t("button.cancel"),confirmText:t.t("button.confirm")})?e.executeCommand(m.InsertRangeMoveRightCommand.id):!0}};var kl=(n=>(n[n.UNIVER_UNKNOWN=0]="UNIVER_UNKNOWN",n[n.UNIVER_DOC=1]="UNIVER_DOC",n[n.UNIVER_SHEET=2]="UNIVER_SHEET",n[n.UNIVER_SLIDE=3]="UNIVER_SLIDE",n[n.UNIVER_PROJECT=4]="UNIVER_PROJECT",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(kl||{}),re=(n=>(n[n.View=0]="View",n[n.Edit=1]="Edit",n[n.ManageCollaborator=2]="ManageCollaborator",n[n.Print=3]="Print",n[n.Duplicate=4]="Duplicate",n[n.Comment=5]="Comment",n[n.Copy=6]="Copy",n[n.Share=7]="Share",n[n.Export=8]="Export",n[n.MoveWorksheet=9]="MoveWorksheet",n[n.DeleteWorksheet=10]="DeleteWorksheet",n[n.HideWorksheet=11]="HideWorksheet",n[n.RenameWorksheet=12]="RenameWorksheet",n[n.CreateWorksheet=13]="CreateWorksheet",n[n.SetWorksheetStyle=14]="SetWorksheetStyle",n[n.EditWorksheetCell=15]="EditWorksheetCell",n[n.InsertHyperlink=16]="InsertHyperlink",n[n.Sort=17]="Sort",n[n.Filter=18]="Filter",n[n.PivotTable=19]="PivotTable",n[n.FloatImg=20]="FloatImg",n[n.History=21]="History",n[n.RwHgtClWdt=22]="RwHgtClWdt",n[n.ViemRwHgtClWdt=23]="ViemRwHgtClWdt",n[n.ViewFilter=24]="ViewFilter",n[n.MoveSheet=25]="MoveSheet",n[n.DeleteSheet=26]="DeleteSheet",n[n.HideSheet=27]="HideSheet",n[n.CopySheet=28]="CopySheet",n[n.RenameSheet=29]="RenameSheet",n[n.CreateSheet=30]="CreateSheet",n[n.SelectProtectedCells=31]="SelectProtectedCells",n[n.SelectUnProtectedCells=32]="SelectUnProtectedCells",n[n.SetCellStyle=33]="SetCellStyle",n[n.SetCellValue=34]="SetCellValue",n[n.SetRowStyle=35]="SetRowStyle",n[n.SetColumnStyle=36]="SetColumnStyle",n[n.InsertRow=37]="InsertRow",n[n.InsertColumn=38]="InsertColumn",n[n.DeleteRow=39]="DeleteRow",n[n.DeleteColumn=40]="DeleteColumn",n[n.EditExtraObject=41]="EditExtraObject",n[n.Delete=42]="Delete",n[n.RecoverHistory=43]="RecoverHistory",n[n.ViewHistory=44]="ViewHistory",n[n.CreatePermissionObject=45]="CreatePermissionObject",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(re||{}),Me=(n=>(n[n.Reader=0]="Reader",n[n.Editor=1]="Editor",n[n.Owner=2]="Owner",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(Me||{}),nt=(n=>(n[n.Unkonwn=0]="Unkonwn",n[n.Workbook=1]="Workbook",n[n.Worksheet=2]="Worksheet",n[n.SelectRange=3]="SelectRange",n[n.Document=4]="Document",n[n.Slide=5]="Slide",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(nt||{}),je=(n=>(n[n.SomeCollaborator=0]="SomeCollaborator",n[n.AllCollaborator=1]="AllCollaborator",n[n.OneSelf=2]="OneSelf",n[n.UNRECOGNIZED=-1]="UNRECOGNIZED",n))(je||{});const Jn="UNIVER_SHEET_PERMISSION_PANEL",pn="UNIVER_SHEET_PERMISSION_USER_PART",ko="UNIVER_SHEET_PERMISSION_BACKGROUND",Nl="UNIVER_SHEET_PERMISSION_USER_DIALOG",Hl="UNIVER_SHEET_PERMISSION_DIALOG",Jr="UNIVER_SHEET_PERMISSION_USER_DIALOG_ID",$r="UNIVER_SHEET_PERMISSION_DIALOG_ID",Dr={[re.Copy]:"Copy",[re.SetCellStyle]:"SetCellStyle",[re.SetCellValue]:"SetCellValue",[re.SetRowStyle]:"SetRowStyle",[re.SetColumnStyle]:"SetColumnStyle",[re.InsertRow]:"InsertRow",[re.InsertColumn]:"InsertColumn",[re.InsertHyperlink]:"InsertHyperlink",[re.DeleteRow]:"DeleteRow",[re.DeleteColumn]:"DeleteColumn",[re.Sort]:"Sort",[re.Filter]:"Filter",[re.PivotTable]:"PivotTable",[re.EditExtraObject]:"EditExtraObject"},fg=[re.Copy,re.SetCellStyle,re.SetCellValue,re.SetRowStyle,re.SetColumnStyle,re.InsertRow,re.InsertColumn,re.InsertHyperlink,re.DeleteRow,re.DeleteColumn,re.Sort,re.Filter,re.PivotTable,re.EditExtraObject,re.View],Vl="sheet-permission-menu-icon",pg="sheet-permission-delete-icon",vg="sheet-permission-edit-icon",Cg="sheet-permission-check-icon",Wl="sheet-permission-lock-icon",_g={unitId:"",subUnitId:"",permissionId:"",unitType:m.UnitObject.SelectRange,id:"",ranges:[],viewState:m.ViewStateEnum.OthersCanView,editState:m.EditStateEnum.OnlyMe};class vn{constructor(){E(this,"_rule",_g);E(this,"_visible",!1)}setVisible(o){this._visible=o}getVisible(){return this._visible}reset(){this.setVisible(!1)}}class Ct{constructor(){E(this,"_userList",[]);E(this,"_userList$",new O.BehaviorSubject(this._userList));E(this,"userList$",this._userList$.asObservable());E(this,"_oldCollaboratorList",[]);E(this,"_selectUserList",[]);E(this,"_selectUserList$",new O.BehaviorSubject(this._selectUserList));E(this,"selectUserList$",this._selectUserList$.asObservable())}get userList(){return this._userList}setCanEditUserList(o){this._userList=o,this._userList$.next(o)}reset(){this._userList=[],this._oldCollaboratorList=[],this._selectUserList=[],this._selectUserList$.next([])}get oldCollaboratorList(){return this._oldCollaboratorList}setOldCollaboratorList(o){this._oldCollaboratorList=o}get selectUserList(){return this._selectUserList}setSelectUserList(o){this._selectUserList=o,this._selectUserList$.next(o)}}const Xe={type:a.CommandType.OPERATION,id:"sheet-permission.operation.openPanel",async handler(n,o={}){const e=n.get(_.ISidebarService),t=n.get(vn),r=n.get(Ct),{showDetail:i=!0,fromSheetBar:s=!1,rule:l,oldRule:c}=o,d={header:{title:"permission.panel.title"},children:{label:Jn,showDetail:i,fromSheetBar:s,rule:l,oldRule:c},width:330,onClose:()=>{t.reset(),r.reset()}};return t.setVisible(!0),e.open(d),!0}},Ir={type:a.CommandType.COMMAND,id:"sheet.command.add-range-protection-from-toolbar",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!0}),!0}},xt={type:a.CommandType.COMMAND,id:"sheet.command.add-range-protection-from-context-menu",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!0}),!0}},Ot={type:a.CommandType.COMMAND,id:"sheet.command.view-sheet-permission-from-context-menu",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!1}),!0}},br={type:a.CommandType.COMMAND,id:"sheet.command.add-range-protection-from-sheet-bar",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{fromSheetBar:!0,showDetail:!0}),!0}},Rr={type:a.CommandType.COMMAND,id:"sheet.command.view-sheet-permission-from-sheet-bar",async handler(n){return await n.get(a.ICommandService).executeCommand(Xe.id,{showDetail:!1}),!0}},At={type:a.CommandType.COMMAND,id:"sheet.command.delete-range-protection-from-context-menu",async handler(n){var h;const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(a.IUndoRedoService),r=n.get(m.SheetsSelectionsService),i=n.get(m.WorksheetProtectionRuleModel),s=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),l=s.getActiveSheet(),c=s.getUnitId(),d=l.getSheetId(),u=i.getRule(c,d);if(u!=null&&u.permissionId)return o.executeCommand(m.DeleteWorksheetProtectionCommand.id,{unitId:c,subUnitId:d,rule:u});{const g=(h=r.getCurrentLastSelection())==null?void 0:h.range;if(!g)return!1;const p=n.get(m.RangeProtectionRuleModel).getSubunitRuleList(c,d).find(v=>v.ranges.some(C=>a.Rectangle.intersects(C,g)));if(p){const v={unitId:c,subUnitId:d,ruleIds:[p.id]};return await o.executeCommand(m.DeleteRangeProtectionMutation.id,v)&&t.pushUndoRedo({unitID:c,redoMutations:[{id:m.DeleteRangeProtectionMutation.id,params:v}],undoMutations:[{id:m.AddRangeProtectionMutation.id,params:{unitId:c,subUnitId:d,rules:[p]}}]}),!0}else return!1}}},Dt={type:a.CommandType.COMMAND,id:"sheet.command.set-range-protection-from-context-menu",async handler(n){var u;const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService),t=n.get(m.SheetsSelectionsService),r=n.get(m.WorksheetProtectionRuleModel),i=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),s=i.getActiveSheet(),l=i.getUnitId(),c=s.getSheetId(),d=r.getRule(l,c);if(d!=null&&d.permissionId){const h={...d,unitId:l,subUnitId:c,ranges:[]};return await o.executeCommand(Xe.id,{showDetail:!0,rule:a.Tools.deepClone(h),oldRule:a.Tools.deepClone(h)}),!0}else{const h=(u=t.getCurrentLastSelection())==null?void 0:u.range;if(!h)return!1;const f=n.get(m.RangeProtectionRuleModel).getSubunitRuleList(l,c).find(p=>{var v;return(v=p==null?void 0:p.ranges)==null?void 0:v.some(C=>a.Rectangle.intersects(C,h))});if(f){const p={...f,unitId:l,subUnitId:c};return await o.executeCommand(Xe.id,{showDetail:!0,rule:a.Tools.deepClone(p),oldRule:a.Tools.deepClone(p)}),!0}else return!1}}},Cn={id:"sheet.command.remove-row-confirm",type:a.CommandType.COMMAND,handler:async(n,o)=>{var d;const e=n.get(m.SheetsSelectionsService);let t=o==null?void 0:o.range;if(t||(t=(d=e.getCurrentLastSelection())==null?void 0:d.range),!t)return!1;const r=n.get(a.ICommandService),i=n.get(a.IUniverInstanceService),s=m.getSheetCommandTarget(i);if(!s)return!1;const{worksheet:l}=s,c=l.getVisibleRows();if(Da(c,[t])){const u=n.get(_.IConfirmService),h=n.get(a.LocaleService);return await u.confirm({id:"sheet.confirm.remove-row",title:{title:h.t("info.problem")},children:{title:h.t("rightClick.deleteAllRowsAlert")},cancelText:h.t("button.cancel"),confirmText:h.t("button.confirm")}),!1}return await r.executeCommand(m.RemoveRowCommand.id,{range:t}),!0}},_n={id:"sheet.command.remove-col-confirm",type:a.CommandType.COMMAND,handler:async(n,o)=>{var d;const e=n.get(m.SheetsSelectionsService);let t=o==null?void 0:o.range;if(t||(t=(d=e.getCurrentLastSelection())==null?void 0:d.range),!t)return!1;const r=n.get(a.ICommandService),i=n.get(a.IUniverInstanceService),s=m.getSheetCommandTarget(i);if(!s)return!1;const{worksheet:l}=s,c=l.getVisibleCols();if(ka(c,[t])){const u=n.get(_.IConfirmService),h=n.get(a.LocaleService);return await u.confirm({id:"sheet.confirm.remove-col",title:{title:h.t("info.problem")},children:{title:h.t("rightClick.deleteAllColumnsAlert")},cancelText:h.t("button.cancel"),confirmText:h.t("button.confirm")}),!1}return await r.executeCommand(m.RemoveColCommand.id,{range:t}),!0}},wr={id:"sheet.command.remove-sheet-confirm",type:a.CommandType.COMMAND,handler:async(n,o)=>{const{subUnitId:e}=o,t=n.get(_.IConfirmService),r=n.get(a.ICommandService),i=n.get(a.LocaleService);return await t.confirm({id:"sheet.confirm.remove-sheet",title:{title:i.t("sheetConfig.deleteSheet")},children:{title:i.t("sheetConfig.deleteSheetContent")},cancelText:i.t("button.cancel"),confirmText:i.t("button.confirm")})?(await r.executeCommand(m.RemoveSheetCommand.id,{subUnitId:e}),!0):!1}},Er={id:"ui-sheet.command.show-menu-list",type:a.CommandType.OPERATION,handler:async n=>(n.get(Ut).triggerSheetBarMenu(),!0)},Tr={type:a.CommandType.COMMAND,id:"sheet.command.delete-worksheet-protection-from-sheet-bar",async handler(n,o){if(!o)return!1;const e=n.get(a.ICommandService),t=n.get(a.IUndoRedoService),r=n.get(m.WorksheetProtectionRuleModel),s=n.get(a.IUniverInstanceService).getCurrentUnitForType(kl.UNIVER_SHEET),l=s==null?void 0:s.getActiveSheet(),c=s.getUnitId();if(!l)return!1;const d=l.getSheetId(),u=r.getRule(c,d);if(await e.executeCommand(m.DeleteWorksheetProtectionCommand.id,{unitId:c,subUnitId:d})){const g=[{id:m.DeleteWorksheetProtectionCommand.id,params:{unitId:c,subUnitId:d}}],S=[{id:m.AddWorksheetProtectionCommand.id,params:{unitId:c,rule:u}}];t.pushUndoRedo({unitID:c,redoMutations:g,undoMutations:S})}return!0}},yr={type:a.CommandType.COMMAND,id:"sheet.command.change-sheet-protection-from-sheet-bar",async handler(n){return await n.get(a.ICommandService).executeCommand("sheet-permission.operation.openDialog"),!0}},Mr={id:"sheet.operation.rename-sheet",type:a.CommandType.OPERATION,handler:async(n,o)=>{const e=n.get(Ut);return o&&e.setRenameId(o.subUnitId),!0}},Cs={type:a.CommandType.OPERATION,id:"sheet-permission.operation.openDialog",async handler(n,o){const e=n.get(_.IDialogService);return e.close("DESKTOP_FIND_REPLACE_DIALOG"),e.open({id:$r,title:{title:"permission.dialog.allowedPermissionType"},children:{label:Hl},width:393,destroyOnClose:!0,onClose:()=>e.close($r)}),!0}},Ig=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M0.98999 1.08218H-0.0100098V0.0821838H0.98999V1.08218Z"}),I.jsx("path",{d:"M5.78992 1.08218H2.78992V0.0821838H5.78992V1.08218Z"}),I.jsx("path",{d:"M7.58984 1.08218H8.58984V0.0821838H7.58984V1.08218Z"}),I.jsx("path",{d:"M14.9152 1.08218H13.9152V0.0821838H14.9152V1.08218Z"}),I.jsx("path",{d:"M16.7151 1.08218H19.7151V0.0821838H16.7151V1.08218Z"}),I.jsx("path",{d:"M22.515 1.08218H21.515V0.0821838H22.515V1.08218Z"}),I.jsx("path",{d:"M27.8405 1.08218H28.8405V0.0821838H27.8405V1.08218Z"}),I.jsx("path",{d:"M33.6404 1.08218H30.6404V0.0821838H33.6404V1.08218Z"}),I.jsx("path",{d:"M35.4403 1.08218H36.4403V0.0821838H35.4403V1.08218Z"}),I.jsx("path",{d:"M42.7657 1.08218H41.7657V0.0821838H42.7657V1.08218Z"}),I.jsx("path",{d:"M44.5657 1.08218H47.5657V0.0821838H44.5657V1.08218Z"}),I.jsx("path",{d:"M50.3656 1.08218H49.3656V0.0821838H50.3656V1.08218Z"}),I.jsx("path",{d:"M55.691 1.08218H56.691V0.0821838H55.691V1.08218Z"}),I.jsx("path",{d:"M61.491 1.08218H58.491V0.0821838H61.491V1.08218Z"}),I.jsx("path",{d:"M63.2909 1.08218H64.2909V0.0821838H63.2909V1.08218Z"}),I.jsx("path",{d:"M70.6163 1.08218H69.6163V0.0821838H70.6163V1.08218Z"}),I.jsx("path",{d:"M72.4163 1.08218H75.4163V0.0821838H72.4163V1.08218Z"}),I.jsx("path",{d:"M78.2162 1.08218H77.2162V0.0821838H78.2162V1.08218Z"}),I.jsx("path",{d:"M83.5416 1.08218H84.5416V0.0821838H83.5416V1.08218Z"}),I.jsx("path",{d:"M89.3416 1.08218H86.3416V0.0821838H89.3416V1.08218Z"}),I.jsx("path",{d:"M91.1415 1.08218H92.1415V0.0821838H91.1415V1.08218Z"}),I.jsx("path",{d:"M98.4669 1.08218H97.4669V0.0821838H98.4669V1.08218Z"}),I.jsx("path",{d:"M100.267 1.08218H103.267V0.0821838H100.267V1.08218Z"}),I.jsx("path",{d:"M106.067 1.08218H105.067V0.0821838H106.067V1.08218Z"}),I.jsx("path",{d:"M111.392 1.08218H112.392V0.0821838H111.392V1.08218Z"}),I.jsx("path",{d:"M117.192 1.08218H114.192V0.0821838H117.192V1.08218Z"}),I.jsx("path",{d:"M118.992 1.08218H119.992V0.0821838H118.992V1.08218Z"})]}),bg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.0100098 1.15771H0.98999V0.157715H-0.0100098V1.15771Z"}),I.jsx("path",{d:"M2.78992 1.15771H5.78992V0.157715H2.78992V1.15771Z"}),I.jsx("path",{d:"M8.58984 1.15771H7.58984V0.157715H8.58984V1.15771Z"}),I.jsx("path",{d:"M10.3899 1.15771H11.3899V0.157715H10.3899V1.15771Z"}),I.jsx("path",{d:"M19.0903 1.15771H18.0903V0.157715H19.0903V1.15771Z"}),I.jsx("path",{d:"M20.8903 1.15771H23.8903V0.157715H20.8903V1.15771Z"}),I.jsx("path",{d:"M26.6902 1.15771H25.6902V0.157715H26.6902V1.15771Z"}),I.jsx("path",{d:"M28.4902 1.15771H29.4902V0.157715H28.4902V1.15771Z"}),I.jsx("path",{d:"M37.1907 1.15771H36.1907V0.157715H37.1907V1.15771Z"}),I.jsx("path",{d:"M38.9906 1.15771H41.9906V0.157715H38.9906V1.15771Z"}),I.jsx("path",{d:"M44.7905 1.15771H43.7905V0.157715H44.7905V1.15771Z"}),I.jsx("path",{d:"M46.5906 1.15771H47.5906V0.157715H46.5906V1.15771Z"}),I.jsx("path",{d:"M55.291 1.15771H54.291V0.157715H55.291V1.15771Z"}),I.jsx("path",{d:"M57.0909 1.15771H60.0909V0.157715H57.0909V1.15771Z"}),I.jsx("path",{d:"M62.8909 1.15771H61.8909V0.157715H62.8909V1.15771Z"}),I.jsx("path",{d:"M64.6909 1.15771H65.6909V0.157715H64.6909V1.15771Z"}),I.jsx("path",{d:"M73.3914 1.15771H72.3914V0.157715H73.3914V1.15771Z"}),I.jsx("path",{d:"M75.1913 1.15771H78.1913V0.157715H75.1913V1.15771Z"}),I.jsx("path",{d:"M80.9912 1.15771H79.9912V0.157715H80.9912V1.15771Z"}),I.jsx("path",{d:"M82.7913 1.15771H83.7913V0.157715H82.7913V1.15771Z"}),I.jsx("path",{d:"M91.4917 1.15771H90.4917V0.157715H91.4917V1.15771Z"}),I.jsx("path",{d:"M93.2916 1.15771H96.2916V0.157715H93.2916V1.15771Z"}),I.jsx("path",{d:"M99.0916 1.15771H98.0916V0.157715H99.0916V1.15771Z"}),I.jsx("path",{d:"M100.892 1.15771H101.892V0.157715H100.892V1.15771Z"}),I.jsx("path",{d:"M109.592 1.15771H108.592V0.157715H109.592V1.15771Z"}),I.jsx("path",{d:"M111.392 1.15771H114.392V0.157715H111.392V1.15771Z"}),I.jsx("path",{d:"M117.192 1.15771H116.192V0.157715H117.192V1.15771Z"}),I.jsx("path",{d:"M118.992 1.15771H119.992V0.157715H118.992V1.15771Z"})]}),Rg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.00842285 1.22449H2.99158V0.224487H-0.00842285V1.22449Z"}),I.jsx("path",{d:"M6.14941 1.22449H9.14941V0.224487H6.14941V1.22449Z"}),I.jsx("path",{d:"M15.3073 1.22449H12.3073V0.224487H15.3073V1.22449Z"}),I.jsx("path",{d:"M18.4651 1.22449H21.4651V0.224487H18.4651V1.22449Z"}),I.jsx("path",{d:"M27.6229 1.22449H24.6229V0.224487H27.6229V1.22449Z"}),I.jsx("path",{d:"M30.7808 1.22449H33.7808V0.224487H30.7808V1.22449Z"}),I.jsx("path",{d:"M39.9386 1.22449H36.9386V0.224487H39.9386V1.22449Z"}),I.jsx("path",{d:"M43.0964 1.22449H46.0964V0.224487H43.0964V1.22449Z"}),I.jsx("path",{d:"M52.2543 1.22449H49.2543V0.224487H52.2543V1.22449Z"}),I.jsx("path",{d:"M55.4121 1.22449H58.4121V0.224487H55.4121V1.22449Z"}),I.jsx("path",{d:"M64.5699 1.22449H61.5699V0.224487H64.5699V1.22449Z"}),I.jsx("path",{d:"M67.7278 1.22449H70.7278V0.224487H67.7278V1.22449Z"}),I.jsx("path",{d:"M76.8856 1.22449H73.8856V0.224487H76.8856V1.22449Z"}),I.jsx("path",{d:"M80.0435 1.22449H83.0435V0.224487H80.0435V1.22449Z"}),I.jsx("path",{d:"M89.2013 1.22449H86.2013V0.224487H89.2013V1.22449Z"}),I.jsx("path",{d:"M92.3591 1.22449H95.3591V0.224487H92.3591V1.22449Z"}),I.jsx("path",{d:"M101.517 1.22449H98.517V0.224487H101.517V1.22449Z"}),I.jsx("path",{d:"M104.675 1.22449H107.675V0.224487H104.675V1.22449Z"}),I.jsx("path",{d:"M113.833 1.22449H110.833V0.224487H113.833V1.22449Z"}),I.jsx("path",{d:"M116.99 1.22449H119.99V0.224487H116.99V1.22449Z"})]}),wg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.00976562 1.65707H0.990234V0.657074H-0.00976562V1.65707Z"}),I.jsx("path",{d:"M2.32361 1.65707H3.32361V0.657074H2.32361V1.65707Z"}),I.jsx("path",{d:"M5.65698 1.65707H4.65698V0.657074H5.65698V1.65707Z"}),I.jsx("path",{d:"M6.99036 1.65707H7.99036V0.657074H6.99036V1.65707Z"}),I.jsx("path",{d:"M10.3237 1.65707H9.32373V0.657074H10.3237V1.65707Z"}),I.jsx("path",{d:"M11.6571 1.65707H12.6571V0.657074H11.6571V1.65707Z"}),I.jsx("path",{d:"M14.9905 1.65707H13.9905V0.657074H14.9905V1.65707Z"}),I.jsx("path",{d:"M16.3239 1.65707H17.3239V0.657074H16.3239V1.65707Z"}),I.jsx("path",{d:"M19.6572 1.65707H18.6572V0.657074H19.6572V1.65707Z"}),I.jsx("path",{d:"M20.9906 1.65707H21.9906V0.657074H20.9906V1.65707Z"}),I.jsx("path",{d:"M24.324 1.65707H23.324V0.657074H24.324V1.65707Z"}),I.jsx("path",{d:"M25.6573 1.65707H26.6573V0.657074H25.6573V1.65707Z"}),I.jsx("path",{d:"M28.9907 1.65707H27.9907V0.657074H28.9907V1.65707Z"}),I.jsx("path",{d:"M30.3241 1.65707H31.3241V0.657074H30.3241V1.65707Z"}),I.jsx("path",{d:"M33.6575 1.65707H32.6575V0.657074H33.6575V1.65707Z"}),I.jsx("path",{d:"M34.9908 1.65707H35.9908V0.657074H34.9908V1.65707Z"}),I.jsx("path",{d:"M38.3242 1.65707H37.3242V0.657074H38.3242V1.65707Z"}),I.jsx("path",{d:"M39.6576 1.65707H40.6576V0.657074H39.6576V1.65707Z"}),I.jsx("path",{d:"M42.991 1.65707H41.991V0.657074H42.991V1.65707Z"}),I.jsx("path",{d:"M44.3243 1.65707H45.3243V0.657074H44.3243V1.65707Z"}),I.jsx("path",{d:"M47.6577 1.65707H46.6577V0.657074H47.6577V1.65707Z"}),I.jsx("path",{d:"M48.9911 1.65707H49.9911V0.657074H48.9911V1.65707Z"}),I.jsx("path",{d:"M52.3245 1.65707H51.3245V0.657074H52.3245V1.65707Z"}),I.jsx("path",{d:"M53.6578 1.65707H54.6578V0.657074H53.6578V1.65707Z"}),I.jsx("path",{d:"M56.9912 1.65707H55.9912V0.657074H56.9912V1.65707Z"}),I.jsx("path",{d:"M58.3246 1.65707H59.3246V0.657074H58.3246V1.65707Z"}),I.jsx("path",{d:"M61.658 1.65707H60.658V0.657074H61.658V1.65707Z"}),I.jsx("path",{d:"M62.9913 1.65707H63.9913V0.657074H62.9913V1.65707Z"}),I.jsx("path",{d:"M66.3247 1.65707H65.3247V0.657074H66.3247V1.65707Z"}),I.jsx("path",{d:"M67.6581 1.65707H68.6581V0.657074H67.6581V1.65707Z"}),I.jsx("path",{d:"M70.9915 1.65707H69.9915V0.657074H70.9915V1.65707Z"}),I.jsx("path",{d:"M72.3248 1.65707H73.3248V0.657074H72.3248V1.65707Z"}),I.jsx("path",{d:"M75.6582 1.65707H74.6582V0.657074H75.6582V1.65707Z"}),I.jsx("path",{d:"M76.9916 1.65707H77.9916V0.657074H76.9916V1.65707Z"}),I.jsx("path",{d:"M80.325 1.65707H79.325V0.657074H80.325V1.65707Z"}),I.jsx("path",{d:"M81.6583 1.65707H82.6583V0.657074H81.6583V1.65707Z"}),I.jsx("path",{d:"M84.9917 1.65707H83.9917V0.657074H84.9917V1.65707Z"}),I.jsx("path",{d:"M86.3251 1.65707H87.3251V0.657074H86.3251V1.65707Z"}),I.jsx("path",{d:"M89.6584 1.65707H88.6584V0.657074H89.6584V1.65707Z"}),I.jsx("path",{d:"M90.9918 1.65707H91.9918V0.657074H90.9918V1.65707Z"}),I.jsx("path",{d:"M94.3252 1.65707H93.3252V0.657074H94.3252V1.65707Z"}),I.jsx("path",{d:"M95.6586 1.65707H96.6586V0.657074H95.6586V1.65707Z"}),I.jsx("path",{d:"M98.9919 1.65707H97.9919V0.657074H98.9919V1.65707Z"}),I.jsx("path",{d:"M100.325 1.65707H101.325V0.657074H100.325V1.65707Z"}),I.jsx("path",{d:"M103.659 1.65707H102.659V0.657074H103.659V1.65707Z"}),I.jsx("path",{d:"M104.992 1.65707H105.992V0.657074H104.992V1.65707Z"}),I.jsx("path",{d:"M108.325 1.65707H107.325V0.657074H108.325V1.65707Z"}),I.jsx("path",{d:"M109.659 1.65707H110.659V0.657074H109.659V1.65707Z"}),I.jsx("path",{d:"M112.992 1.65707H111.992V0.657074H112.992V1.65707Z"}),I.jsx("path",{d:"M114.325 1.65707H115.325V0.657074H114.325V1.65707Z"}),I.jsx("path",{d:"M117.659 1.65707H116.659V0.657074H117.659V1.65707Z"}),I.jsx("path",{d:"M118.992 1.65707H119.992V0.657074H118.992V1.65707Z"})]}),Eg=({className:n})=>I.jsx("svg",{className:n,width:"120",height:"3",viewBox:"0 0 120 3",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:I.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M119.991 2.42035H-0.0090332V0.420349H119.991V2.42035Z"})}),Tg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"3",viewBox:"0 0 120 3",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.0100098 2.47614H1.98999V0.476135H-0.0100098V2.47614Z"}),I.jsx("path",{d:"M3.99014 2.47614H9.99014V0.476135H3.99014V2.47614Z"}),I.jsx("path",{d:"M13.9901 2.47614H11.9901V0.476135H13.9901V2.47614Z"}),I.jsx("path",{d:"M21.1904 2.47614H23.1904V0.476135H21.1904V2.47614Z"}),I.jsx("path",{d:"M31.1906 2.47614H25.1906V0.476135H31.1906V2.47614Z"}),I.jsx("path",{d:"M33.1906 2.47614H35.1906V0.476135H33.1906V2.47614Z"}),I.jsx("path",{d:"M44.3909 2.47614H42.3909V0.476135H44.3909V2.47614Z"}),I.jsx("path",{d:"M46.391 2.47614H52.391V0.476135H46.391V2.47614Z"}),I.jsx("path",{d:"M56.391 2.47614H54.391V0.476135H56.391V2.47614Z"}),I.jsx("path",{d:"M63.5913 2.47614H65.5913V0.476135H63.5913V2.47614Z"}),I.jsx("path",{d:"M73.5915 2.47614H67.5915V0.476135H73.5915V2.47614Z"}),I.jsx("path",{d:"M75.5915 2.47614H77.5915V0.476135H75.5915V2.47614Z"}),I.jsx("path",{d:"M86.7917 2.47614H84.7917V0.476135H86.7917V2.47614Z"}),I.jsx("path",{d:"M88.7919 2.47614H94.7919V0.476135H88.7919V2.47614Z"}),I.jsx("path",{d:"M98.7919 2.47614H96.7919V0.476135H98.7919V2.47614Z"}),I.jsx("path",{d:"M105.992 2.47614H107.992V0.476135H105.992V2.47614Z"}),I.jsx("path",{d:"M115.992 2.47614H109.992V0.476135H115.992V2.47614Z"}),I.jsx("path",{d:"M117.992 2.47614H119.992V0.476135H117.992V2.47614Z"})]}),yg=({className:n})=>I.jsxs("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.0100098 2.00415H1.98999V0.00415039H-0.0100098V2.00415Z"}),I.jsx("path",{d:"M3.99014 2.00415H9.99014V0.00415039H3.99014V2.00415Z"}),I.jsx("path",{d:"M13.9901 2.00415H11.9901V0.00415039H13.9901V2.00415Z"}),I.jsx("path",{d:"M15.9901 2.00415H17.9901V0.00415039H15.9901V2.00415Z"}),I.jsx("path",{d:"M27.4905 2.00415H25.4905V0.00415039H27.4905V2.00415Z"}),I.jsx("path",{d:"M29.4906 2.00415H35.4906V0.00415039H29.4906V2.00415Z"}),I.jsx("path",{d:"M39.4906 2.00415H37.4906V0.00415039H39.4906V2.00415Z"}),I.jsx("path",{d:"M41.4906 2.00415H43.4906V0.00415039H41.4906V2.00415Z"}),I.jsx("path",{d:"M52.991 2.00415H50.991V0.00415039H52.991V2.00415Z"}),I.jsx("path",{d:"M54.9911 2.00415H60.9911V0.00415039H54.9911V2.00415Z"}),I.jsx("path",{d:"M64.9911 2.00415H62.9911V0.00415039H64.9911V2.00415Z"}),I.jsx("path",{d:"M66.9911 2.00415H68.9911V0.00415039H66.9911V2.00415Z"}),I.jsx("path",{d:"M78.4915 2.00415H76.4915V0.00415039H78.4915V2.00415Z"}),I.jsx("path",{d:"M80.4916 2.00415H86.4916V0.00415039H80.4916V2.00415Z"}),I.jsx("path",{d:"M90.4916 2.00415H88.4916V0.00415039H90.4916V2.00415Z"}),I.jsx("path",{d:"M92.4916 2.00415H94.4916V0.00415039H92.4916V2.00415Z"}),I.jsx("path",{d:"M103.992 2.00415H101.992V0.00415039H103.992V2.00415Z"}),I.jsx("path",{d:"M105.992 2.00415H111.992V0.00415039H105.992V2.00415Z"}),I.jsx("path",{d:"M115.992 2.00415H113.992V0.00415039H115.992V2.00415Z"}),I.jsx("path",{d:"M117.992 2.00415H119.992V0.00415039H117.992V2.00415Z"})]}),Mg=({className:n})=>I.jsxs("svg",{className:n,width:"118",height:"3",viewBox:"0 0 118 3",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[I.jsx("path",{d:"M-0.00854492 2.94815H1.99146V0.948151H-0.00854492V2.94815Z"}),I.jsx("path",{d:"M6.09668 2.94815H8.09668V0.948151H6.09668V2.94815Z"}),I.jsx("path",{d:"M14.2019 2.94815H12.2019V0.948151H14.2019V2.94815Z"}),I.jsx("path",{d:"M18.3071 2.94815H20.3071V0.948151H18.3071V2.94815Z"}),I.jsx("path",{d:"M26.4124 2.94815H24.4124V0.948151H26.4124V2.94815Z"}),I.jsx("path",{d:"M30.5176 2.94815H32.5176V0.948151H30.5176V2.94815Z"}),I.jsx("path",{d:"M38.6228 2.94815H36.6228V0.948151H38.6228V2.94815Z"}),I.jsx("path",{d:"M42.728 2.94815H44.728V0.948151H42.728V2.94815Z"}),I.jsx("path",{d:"M50.8333 2.94815H48.8333V0.948151H50.8333V2.94815Z"}),I.jsx("path",{d:"M54.9385 2.94815H56.9385V0.948151H54.9385V2.94815Z"}),I.jsx("path",{d:"M63.0437 2.94815H61.0437V0.948151H63.0437V2.94815Z"}),I.jsx("path",{d:"M67.1489 2.94815H69.1489V0.948151H67.1489V2.94815Z"}),I.jsx("path",{d:"M75.2542 2.94815H73.2542V0.948151H75.2542V2.94815Z"}),I.jsx("path",{d:"M79.3594 2.94815H81.3594V0.948151H79.3594V2.94815Z"}),I.jsx("path",{d:"M87.4645 2.94815H85.4645V0.948151H87.4645V2.94815Z"}),I.jsx("path",{d:"M91.5697 2.94815H93.5697V0.948151H91.5697V2.94815Z"}),I.jsx("path",{d:"M99.6749 2.94815H97.6749V0.948151H99.6749V2.94815Z"}),I.jsx("path",{d:"M103.78 2.94815H105.78V0.948151H103.78V2.94815Z"}),I.jsx("path",{d:"M111.885 2.94815H109.885V0.948151H111.885V2.94815Z"}),I.jsx("path",{d:"M115.991 2.94815H117.991V0.948151H115.991V2.94815Z"})]}),Pg=({className:n})=>I.jsx("svg",{className:n,width:"120",height:"4",viewBox:"0 0 120 4",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:I.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M119.991 3.86215H-0.0090332V0.862152H119.991V3.86215Z"})}),xg=({className:n})=>I.jsx("svg",{className:n,width:"120",height:"2",viewBox:"0 0 120 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:I.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M119.991 1.15668H-0.0090332V0.156677H119.991V1.15668Z"})});function da(n){const{type:o=a.BorderStyleTypes.THIN,className:e}=n;switch(o){case a.BorderStyleTypes.DASH_DOT:return I.jsx(Ig,{className:e});case a.BorderStyleTypes.DASH_DOT_DOT:return I.jsx(bg,{className:e});case a.BorderStyleTypes.DASHED:return I.jsx(Rg,{className:e});case a.BorderStyleTypes.HAIR:return I.jsx(wg,{className:e});case a.BorderStyleTypes.MEDIUM:return I.jsx(Eg,{className:e});case a.BorderStyleTypes.MEDIUM_DASH_DOT:return I.jsx(Tg,{className:e});case a.BorderStyleTypes.MEDIUM_DASH_DOT_DOT:return I.jsx(yg,{className:e});case a.BorderStyleTypes.MEDIUM_DASHED:return I.jsx(Mg,{className:e});case a.BorderStyleTypes.THICK:return I.jsx(Pg,{className:e});case a.BorderStyleTypes.THIN:default:return I.jsx(xg,{className:e})}}const _s=`${Il}_BORDER_PANEL_COMPONENT`,Ul=[{label:"borderLine.borderTop",icon:"UpBorderDoubleIcon",value:"top"},{label:"borderLine.borderBottom",icon:"DownBorderDoubleIcon",value:"bottom"},{label:"borderLine.borderLeft",icon:"LeftBorderDoubleIcon",value:"left"},{label:"borderLine.borderRight",icon:"RightBorderDoubleIcon",value:"right"},{label:"borderLine.borderNone",icon:"NoBorderIcon",value:"none"},{label:"borderLine.borderAll",icon:"AllBorderIcon",value:"all"},{label:"borderLine.borderOutside",icon:"OuterBorderDoubleIcon",value:"outside"},{label:"borderLine.borderInside",icon:"InnerBorderDoubleIcon",value:"inside"},{label:"borderLine.borderHorizontal",icon:"HorizontalBorderDoubleIcon",value:"horizontal"},{label:"borderLine.borderVertical",icon:"VerticalBorderDoubleIcon",value:"vertical"},{label:"borderLine.borderTlbr",icon:"BackSlashIcon",value:"tlbr"},{label:"borderLine.borderTlbcTlmr",icon:"LeftDoubleDiagonalIcon",value:"tlbc_tlmr"},{label:"borderLine.borderTlbrTlbcTlmr",icon:"LeftTridiagonalIcon",value:"tlbr_tlbc_tlmr"},{label:"borderLine.borderBlTr",icon:"SlashIcon",value:"bltr"},{label:"borderLine.borderMltrBctr",icon:"RightDoubleDiagonalIcon",value:"mltr_bctr"}],Og=[{label:a.BorderStyleTypes.THIN,value:a.BorderStyleTypes.THIN},{label:a.BorderStyleTypes.HAIR,value:a.BorderStyleTypes.HAIR},{label:a.BorderStyleTypes.DOTTED,value:a.BorderStyleTypes.DOTTED},{label:a.BorderStyleTypes.DASHED,value:a.BorderStyleTypes.DASHED},{label:a.BorderStyleTypes.DASH_DOT,value:a.BorderStyleTypes.DASH_DOT},{label:a.BorderStyleTypes.DASH_DOT_DOT,value:a.BorderStyleTypes.DASH_DOT_DOT},{label:a.BorderStyleTypes.MEDIUM,value:a.BorderStyleTypes.MEDIUM},{label:a.BorderStyleTypes.MEDIUM_DASHED,value:a.BorderStyleTypes.MEDIUM_DASHED},{label:a.BorderStyleTypes.MEDIUM_DASH_DOT,value:a.BorderStyleTypes.MEDIUM_DASH_DOT},{label:a.BorderStyleTypes.MEDIUM_DASH_DOT_DOT,value:a.BorderStyleTypes.MEDIUM_DASH_DOT_DOT},{label:a.BorderStyleTypes.THICK,value:a.BorderStyleTypes.THICK}];function Ll(n){var l;const o=_.useDependency(_.ComponentManager),e=_.useDependency(m.BorderStyleManagerService),{onChange:t,value:r}=n;function i(c,d){t==null||t({...r,[d]:c})}function s(c){const d=o.get(c);return d&&I.jsx(d,{className:"univer-fill-primary-600"})}return I.jsxs("section",{className:"univer-box-border univer-grid univer-gap-2 univer-p-1.5",children:[I.jsx("div",{className:"univer-box-border univer-grid univer-grid-cols-5 univer-gap-2 univer-text-gray-600 dark:!univer-text-gray-200",children:Ul.map(c=>I.jsx("a",{className:j.clsx("univer-flex univer-size-6 univer-cursor-pointer univer-items-center univer-justify-center univer-justify-self-center univer-rounded dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",{"univer-bg-gray-200 dark:!univer-bg-gray-600":e.getBorderInfo().type===c.value}),onClick:d=>{d.stopPropagation(),i(c.value,"type")},children:s(c.icon)},c.value))}),I.jsx(j.Separator,{}),I.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[I.jsx("div",{children:I.jsx(j.Dropdown,{overlay:I.jsx("div",{className:"univer-rounded-lg univer-p-4",children:I.jsx(j.ColorPicker,{onChange:c=>i(c,"color")})}),children:I.jsxs("button",{className:"univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded univer-border-none univer-bg-transparent univer-p-1 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",type:"button",children:[I.jsx(Xa,{className:"univer-fill-primary-600 dark:!univer-text-white",extend:{colorChannel1:(l=r==null?void 0:r.color)!=null?l:""}}),I.jsx(mn,{className:"dark:!univer-text-white"})]})})}),I.jsx("div",{children:I.jsx(j.Dropdown,{overlay:I.jsx("section",{className:"univer-rounded-lg univer-p-1.5",children:I.jsx("ul",{className:"univer-m-0 univer-grid univer-list-none univer-gap-1 univer-p-0",children:Og.map(c=>I.jsx("li",{className:"univer-flex univer-cursor-pointer univer-items-center univer-justify-center univer-rounded univer-px-1 univer-py-2 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",onClick:()=>i(c.value,"style"),children:I.jsx(da,{className:"univer-fill-gray-900 dark:!univer-fill-white",type:c.value})},c.value))})}),children:I.jsxs("button",{className:"univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded univer-border-none univer-bg-transparent univer-p-1 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-100",type:"button",children:[I.jsx(da,{className:"univer-fill-gray-900 dark:!univer-fill-white",type:a.BorderStyleTypes.THIN}),I.jsx(mn,{className:"dark:!univer-text-white"})]})})})]})]})}const Bl="sheets.component.cell-popup";var Ag=Object.getOwnPropertyDescriptor,Dg=(n,o,e,t)=>{for(var r=t>1?void 0:t?Ag(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},wt=(n,o)=>(e,t)=>o(e,t,n);exports.SheetCanvasPopManagerService=class extends a.Disposable{constructor(e,t,r,i,s,l,c){super();E(this,"_popupMenuFeatureMap",new Map);E(this,"_isSelectionMoving",!1);this._globalPopupManagerService=e,this._renderManagerService=t,this._univerInstanceService=r,this._refRangeService=i,this._commandService=s,this._refSelectionsService=l,this._selectionManagerService=c,this._initMoving()}_initMoving(){this.disposeWithMe(this._refSelectionsService.selectionMoving$.subscribe(()=>{this._isSelectionMoving=!0})),this.disposeWithMe(this._refSelectionsService.selectionMoveEnd$.subscribe(()=>{this._isSelectionMoving=!1})),this.disposeWithMe(this._selectionManagerService.selectionMoving$.subscribe(()=>{this._isSelectionMoving=!0})),this.disposeWithMe(this._selectionManagerService.selectionMoveEnd$.subscribe(()=>{this._isSelectionMoving=!1}))}registerFeatureMenu(e,t){this._popupMenuFeatureMap.set(e,t)}getFeatureMenu(e,t,r,i){const s=this._popupMenuFeatureMap.get(i);if(s)return s(e,t,r,i)}dispose(){super.dispose(),this._popupMenuFeatureMap.clear()}_createHiddenRectObserver(e){const{row:t,column:r,worksheet:i,skeleton:s,currentRender:l}=e,c=()=>{var F,X;const g=i.getFreeze(),{startRow:S,startColumn:f,xSplit:p,ySplit:v}=g,C=S-v,b=f-p,{rowHeightAccumulation:R,columnWidthAccumulation:w,rowHeaderWidth:P,columnHeaderHeight:y}=s,M=P+(b===-1?0:w[b+p-1]-((F=w[b-1])!=null?F:0)),x=y+(C===-1?0:R[C+v-1]-((X=R[C])!=null?X:0)),A=l.engine.getCanvasElement(),D=A.getBoundingClientRect(),k=ei(A.style.width),V=D.width/k,W=l.scene.getAncestorScale().scaleX,N=M*V*W,U=x*V*W,L={left:-1/0,top:-1/0,right:D.left+N,bottom:D.top+U},z={left:D.left+N,top:-1/0,right:1/0,bottom:D.top+U},B={left:-1/0,top:D.top+U,right:D.left+N,bottom:1/0};return t<S&&r<f?[]:t<S?[L]:r<f?[L]:[L,z,B]},d=c(),u=new O.BehaviorSubject(d),h=new a.DisposableCollection;return h.add(this._commandService.onCommandExecuted(g=>{g.id===m.SetFrozenMutation.id&&u.next(c())})),h.add(a.fromEventSubject(l.engine.onTransformChange$).pipe(O.throttleTime(16)).subscribe(()=>{u.next(c())})),{rects$:u,disposable:h}}_createPositionObserver(e,t,r,i){const s=()=>{const{scene:u}=t,h=Sg(e,u,r,i),g=t.engine.getCanvasElement(),S=g.getBoundingClientRect(),f=ei(g.style.width),p=S.width/f;return{left:h.left*p+S.left,right:h.right*p+S.left,top:h.top*p+S.top,bottom:h.bottom*p+S.top}},l=s(),c=new O.BehaviorSubject(l),d=new a.DisposableCollection;return d.add(this._commandService.onCommandExecuted(u=>{(u.id===We.id||u.id===ke.id)&&c.next(s())})),{position:l,position$:c,disposable:d}}attachPopupToObject(e,t){var R;const r=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),i=r.getActiveSheet();if(!i||this._isSelectionMoving&&!t.showOnSelectionMoving)return{dispose:()=>{},canDispose:()=>!0};const s=r.getUnitId(),l=i.getSheetId(),c=(R=this._renderManagerService.getRenderById(s))==null?void 0:R.with(exports.SheetSkeletonManagerService).ensureSkeleton(l),d=this._renderManagerService.getRenderById(s);if(!d||!c)return{dispose:()=>{},canDispose:()=>!0};const{left:u,top:h,width:g,height:S}=e,f={left:u,right:u+g,top:h,bottom:h+S},{position:p,position$:v,disposable:C}=this._createPositionObserver(f,d,c,i),b=this._globalPopupManagerService.addPopup({...t,unitId:s,subUnitId:l,anchorRect:p,anchorRect$:v,canvasElement:d.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(b),v.complete(),C.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==b}}attachPopupByPosition(e,t,r){var C;const i=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),s=i.getActiveSheet();if(!s)return null;const l=i.getUnitId(),c=s.getSheetId();if(l!==r.unitId||r.subUnitId!==c)return null;if(this._isSelectionMoving&&!t.showOnSelectionMoving)return;const d=(C=this._renderManagerService.getRenderById(l))==null?void 0:C.with(exports.SheetSkeletonManagerService).getOrCreateSkeleton({sheetId:c}),u=this._renderManagerService.getRenderById(l);if(!u||!d)return null;const{position:h,position$:g,disposable:S}=this._createPositionObserver(e,u,d,s),{rects$:f,disposable:p}=this._createHiddenRectObserver({row:r.row,column:r.col,worksheet:s,skeleton:d,currentRender:u}),v=this._globalPopupManagerService.addPopup({...t,unitId:l,subUnitId:c,anchorRect:h,anchorRect$:g,hiddenRects$:f,canvasElement:u.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(v),g.complete(),S.dispose(),p.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==v}}attachPopupToAbsolutePosition(e,t,r,i){var f;const s=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),l=s.getActiveSheet();if(!l)return null;const c=s.getUnitId(),d=l.getSheetId();if(r&&c!==r||i&&i!==d)return null;const u=(f=this._renderManagerService.getRenderById(c))==null?void 0:f.with(exports.SheetSkeletonManagerService).ensureSkeleton(d),h=this._renderManagerService.getRenderById(c);if(!h||!u)return null;if(this._isSelectionMoving&&!t.showOnSelectionMoving)return;const g=new O.BehaviorSubject(e),S=this._globalPopupManagerService.addPopup({...t,unitId:c,subUnitId:d,anchorRect:e,anchorRect$:g.asObservable(),canvasElement:h.engine.getCanvasElement()});return{dispose:()=>{this._globalPopupManagerService.removePopup(S),g.complete()},canDispose:()=>this._globalPopupManagerService.activePopupId!==S}}attachPopupToCell(e,t,r,i,s,l){const c=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),d=c.getActiveSheet();if(!d)return null;const u=c.getUnitId(),h=d.getSheetId();if(i&&u!==i||s&&h!==s)return null;const g=this._renderManagerService.getRenderById(u),S=g==null?void 0:g.with(exports.SheetSkeletonManagerService).ensureSkeleton(h),f=g==null?void 0:g.with(pe);if(!g||!S||!f)return null;if(this._isSelectionMoving&&!r.showOnSelectionMoving)return;const p=l!=null?l:la(e,t,g.scene,d);if(!p)return null;const{position:v,position$:C,disposable:b,updateRowCol:R}=this._createCellPositionObserver(e,t,g,S,p),{rects$:w,disposable:P}=this._createHiddenRectObserver({row:e,column:t,worksheet:d,skeleton:S,currentRender:g}),y=this._globalPopupManagerService.addPopup({...r,unitId:u,subUnitId:h,anchorRect:v,anchorRect$:C,canvasElement:g.engine.getCanvasElement(),hiddenRects$:w}),M=new a.DisposableCollection;M.add(b),M.add(a.toDisposable(()=>{this._globalPopupManagerService.removePopup(y),C.complete()})),M.add(P);const x={startRow:e,endRow:e,startColumn:t,endColumn:t};return M.add(this._refRangeService.watchRange(u,h,x,(A,D)=>{D?R(D.startRow,D.startColumn):M.dispose()})),{dispose(){M.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==y}}attachRangePopup(e,t,r,i,s,l=!1){const c=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),d=c.getActiveSheet();if(!d)return null;const u=c.getUnitId(),h=d.getSheetId();if(r&&u!==r||i&&h!==i)return null;const g=this._renderManagerService.getRenderById(u),S=g==null?void 0:g.with(exports.SheetSkeletonManagerService).getOrCreateSkeleton({sheetId:h}),f=g==null?void 0:g.with(pe);if(!g||!S||!f)return null;if(f.selectionMoving&&!l)return;const p=s!=null?s:la(e.startRow,e.startColumn,g.scene,d);if(!p)return null;const{position:v,position$:C,disposable:b,updateRowCol:R,topLeftPos$:w,rightBottomPos$:P}=this._createRangePositionObserver(e,g,S,p),{rects$:y,disposable:M}=this._createHiddenRectObserver({row:e.startRow,column:e.startColumn,worksheet:d,skeleton:S,currentRender:g}),x=this._globalPopupManagerService.addPopup({...t,unitId:u,subUnitId:h,anchorRect:v,anchorRect$:C,canvasElement:g.engine.getCanvasElement(),hiddenRects$:y}),A=new a.DisposableCollection;A.add(b),A.add(a.toDisposable(()=>{this._globalPopupManagerService.removePopup(x),w.complete(),P.complete()})),A.add(M);const D={...e};return A.add(this._refRangeService.watchRange(u,h,D,(k,V)=>{V?R(V.startRow,V.startColumn):A.dispose()})),{dispose(){A.dispose()},canDispose:()=>this._globalPopupManagerService.activePopupId!==x}}_createCellPositionObserver(e,t,r,i,s){let l=e,c=t;const d=this._calcCellPositionByCell(l,c,r,i,s),u=new O.BehaviorSubject(d),h=()=>u.next(this._calcCellPositionByCell(l,c,r,i,s)),g=new a.DisposableCollection;return g.add(r.engine.clientRect$.subscribe(()=>h())),g.add(a.fromEventSubject(r.engine.onTransformChange$).pipe(O.throttleTime(16)).subscribe(()=>h())),g.add(this._commandService.onCommandExecuted(f=>{if(f.id===m.SetWorksheetRowAutoHeightMutation.id&&f.params.rowsAutoHeightInfo.findIndex(v=>v.row===l)>-1){h();return}(m.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(f.id)>-1||f.id===We.id||f.id===ke.id)&&h()})),{position$:u,disposable:g,position:d,updateRowCol:(f,p)=>{l=f,c=p,h()}}}_calcCellPositionByCell(e,t,r,i,s){const{scene:l,engine:c}=r,d=i.getCellWithCoordByIndex(e,t),u=d.isMergedMainCell?d.mergeInfo:d,{scaleX:h,scaleY:g}=l.getAncestorScale(),S={x:s.viewportScrollX,y:s.viewportScrollY},f=c.getCanvasElement();if(!f)return{left:0,right:0,top:0,bottom:0};const p=f.getBoundingClientRect(),v=ei(f.style.width),{top:C,left:b,width:R}=p,w=R/v;return{left:(u.startX-S.x)*w*h+b,right:(u.endX-S.x)*w*h+b,top:(u.startY-S.y)*w*g+C,bottom:(u.endY-S.y)*w*g+C}}_createRangePositionObserver(e,t,r,i){let{startRow:s,startColumn:l}=e;const c=this._calcCellPositionByCell(s,l,t,r,i),d=new O.BehaviorSubject(c),u=this._calcCellPositionByCell(e.endRow,e.endColumn,t,r,i),h=new O.BehaviorSubject(u),g=()=>{const C=this._calcCellPositionByCell(s,l,t,r,i),b=this._calcCellPositionByCell(e.endRow,e.endColumn,t,r,i);d.next(C),h.next(b)},S=new a.DisposableCollection;S.add(t.engine.clientRect$.subscribe(()=>g())),S.add(this._commandService.onCommandExecuted(C=>{if(C.id===m.SetWorksheetRowAutoHeightMutation.id&&C.params.rowsAutoHeightInfo.findIndex(R=>R.row===s)>-1){g();return}(m.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(C.id)>-1||C.id===We.id||C.id===ke.id)&&g()}));const f=(C,b)=>{s=C,l=b,g()},p=d.pipe(O.map(C=>{const b=this._calcCellPositionByCell(e.endRow,e.endColumn,t,r,i);return{top:C.top,left:C.left,right:b.right,bottom:b.bottom}})),v={top:c.top,left:c.left,right:u.right,bottom:u.bottom};return{position$:p,position:v,updateRowCol:f,topLeftPos$:d,rightBottomPos$:h,disposable:S}}};exports.SheetCanvasPopManagerService=Dg([wt(0,a.Inject(_.ICanvasPopupService)),wt(1,T.IRenderManagerService),wt(2,a.IUniverInstanceService),wt(3,a.Inject(m.RefRangeService)),wt(4,a.ICommandService),wt(5,m.IRefSelectionsService),wt(6,a.Inject(m.SheetsSelectionsService))],exports.SheetCanvasPopManagerService);function ei(n){return Number.parseInt(n.replace("px",""))}var kg=Object.getOwnPropertyDescriptor,Ng=(n,o,e,t)=>{for(var r=t>1?void 0:t?kg(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},Hg=(n,o)=>(e,t)=>o(e,t,n);exports.CellPopupManagerService=class extends a.Disposable{constructor(e){super();E(this,"_cellPopupMap",new Map);E(this,"_change$",new O.Subject);E(this,"change$",this._change$.asObservable());this._sheetCanvasPopManagerService=e}_ensureCellPopupMap(e,t){let r=this._cellPopupMap.get(e);r||(r=new Map,this._cellPopupMap.set(e,r));let i=r.get(t);return i||(i=new a.ObjectMatrix,r.set(t,i)),i}showPopup(e,t){var g,S;const{direction:r="horizontal"}=t,{unitId:i,subUnitId:s,row:l,col:c}=e,d=this._ensureCellPopupMap(i,s),u=(g=d.getValue(l,c))==null?void 0:g[r];t.id=(S=t.id)!=null?S:a.generateRandomId();const h=()=>{const f=d.getValue(l,c);if(!f)return;const p=f[r];if(!p)return;const v=p==null?void 0:p.popups.findIndex(C=>C.id===t.id&&C.componentKey===t.componentKey);p==null||p.popups.splice(v,1),p.popups.length===0&&(p.disposable.dispose(),f[r]=void 0),this._change$.next({...e,direction:r})};if(u)u.popups.push(t),u.popups.sort((f,p)=>f.priority-p.priority);else{const f=this._sheetCanvasPopManagerService.attachPopupToCell(l,c,{...t,direction:r,componentKey:Bl,extraProps:{...e,direction:r},noPushMinimumGap:!0,autoRelayout:!1,zIndex:90},i,s);d.setValue(l,c,{...d.getValue(l,c),[r]:{disposable:f,popups:[t]}})}return this._change$.next({...e,direction:r}),a.toDisposable(h)}getPopups(e,t,r,i,s){var c,d;return((d=(c=this._ensureCellPopupMap(e,t).getValue(r,i))==null?void 0:c[s])==null?void 0:d.popups)||[]}};exports.CellPopupManagerService=Ng([Hg(0,a.Inject(exports.SheetCanvasPopManagerService))],exports.CellPopupManagerService);const Vg=n=>{const{popup:o}=n,e=o.extraProps,{row:t,col:r,direction:i,unitId:s,subUnitId:l}=e,c=_.useDependency(exports.CellPopupManagerService);_.useObservable(H.useMemo(()=>c.change$.pipe(O.filter(h=>h.row===t&&h.col===r&&h.direction===i)),[c,t,r,i]));const d=c.getPopups(s,l,t,r,i),u=_.useDependency(_.ComponentManager);return I.jsx("div",{"data-u-comp":"cell-popup",className:"univer-ml-px univer-flex univer-flex-col",children:d.map(h=>{var S;const g=u.get(h.componentKey);return g?I.jsx(g,{popup:h},(S=h.id)!=null?S:h.componentKey):null})})},ua=n=>{const{inputId:o,state:e=!1,type:t="range",confirm:r,cancel:i,name:s,formulaOrRefString:l,comment:c="",localSheetId:d=m.SCOPE_WORKBOOK_VALUE_DEFINED_NAME,hidden:u=!1,id:h}=n,S=_.useDependency(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),f=_.useDependency(a.LocaleService),p=_.useDependency(Z.IDefinedNamesService),v=_.useDependency(Z.IFunctionService),C=_.useDependency(Z.LexerTreeBuilder),b=_.useDependency(_.ComponentManager),R=H.useMemo(()=>b.get(Yi),[]),w=H.useMemo(()=>b.get(bo),[]);if(S==null)return;const P=H.useMemo(()=>S.getUnitId(),[]),y=H.useMemo(()=>S.getActiveSheet().getSheetId(),[]),[M,x]=H.useState(s),[A,D]=H.useState(l),[k,V]=H.useState(c),[W,N]=H.useState(d),[U,L]=H.useState(""),[z,B]=H.useState(t),[F,X]=H.useState(!0),K=[{label:f.t("definedName.scopeWorkbook"),value:m.SCOPE_WORKBOOK_VALUE_DEFINED_NAME}],te=oe=>!Z.isReferenceStrings(oe);H.useEffect(()=>{X(!0),x(s),V(c),N(d);let oe=l;l.substring(0,1)===Z.operatorToken.EQUALS?B("formula"):te(l)?(B("formula"),oe=Z.operatorToken.EQUALS+l):B("range"),D(oe),L("")},[e]),S.getSheetOrders().forEach(oe=>{const se=S.getSheetBySheetId(oe);K.push({label:(se==null?void 0:se.getName())||"",value:oe})});const Q=oe=>{D(oe)},ie=oe=>{D(oe||"")},G=()=>{if(M.length===0){L(f.t("definedName.nameEmpty"));return}if(p.getValueByName(P,M)!=null&&(h==null||h.length===0)){L(f.t("definedName.nameDuplicate"));return}if(!a.Tools.isValidParameter(M)||Z.isReferenceStringWithEffectiveColumn(M)||!a.Tools.isStartValidPosition(M)&&!T.hasCJKText(M.substring(0,1))){L(f.t("definedName.nameInvalid"));return}if(S.getSheetOrders().map($=>{var me;return((me=S.getSheetBySheetId($))==null?void 0:me.getName())||""}).includes(M)){L(f.t("definedName.nameSheetConflict"));return}if(A.length===0){L(f.t("definedName.formulaOrRefStringEmpty"));return}if(!F){L(f.t("definedName.formulaOrRefStringInvalid"));return}if(v.hasExecutor(M.toUpperCase())){L(f.t("definedName.nameConflict"));return}const se=S.getActiveSheet().getName();r&&r({id:h||"",name:M,formulaOrRefString:C.convertRefersToAbsolute(A,a.AbsoluteRefType.ALL,a.AbsoluteRefType.ALL,se),comment:k,localSheetId:W})},Y=oe=>{const se=oe;se==="formula"?l[0]===Z.operatorToken.EQUALS?D(l):D(`${Z.operatorToken.EQUALS}`):l[0]===Z.operatorToken.EQUALS?D(""):D(l),B(se)},q=H.useRef(null),[ne,ce]=H.useState(!1);return _.useSidebarClick(oe=>{var $;(($=q.current)==null?void 0:$.isClickOutSide(oe))&&ce(!1)}),I.jsxs("div",{className:j.clsx("univer-grid univer-space-y-2 univer-pb-1",j.borderBottomClassName,{"univer-hidden":!e}),children:[I.jsx("div",{children:I.jsx(j.Input,{className:"univer-w-full",placeholder:f.t("definedName.inputNamePlaceholder"),value:M,allowClear:!0,onChange:x})}),I.jsx("div",{children:I.jsxs(j.RadioGroup,{value:z,onChange:Y,children:[I.jsx(j.Radio,{value:"range",children:f.t("definedName.ratioRange")}),I.jsx(j.Radio,{value:"formula",children:f.t("definedName.ratioFormula")})]})}),z==="range"?R&&I.jsx(R,{unitId:P,subUnitId:y,initialValue:A,onChange:(oe,se)=>Q(se),supportAcrossSheet:!0}):w&&I.jsx("div",{className:"univer-relative univer-mt-4 univer-h-full",children:I.jsx("div",{className:"univer-relative univer-h-8 univer-select-none",children:I.jsx(w,{ref:q,className:j.clsx("univer-box-border univer-h-8 univer-w-full univer-cursor-pointer univer-items-center univer-rounded-lg univer-bg-white univer-pt-2 univer-transition-colors [&>div:first-child]:univer-px-2.5 [&>div]:univer-h-5 [&>div]:univer-ring-transparent dark:!univer-bg-gray-700 dark:!univer-text-white hover:univer-border-primary-600",j.borderClassName),initValue:A,unitId:P,subUnitId:y,isFocus:ne,isSupportAcrossSheet:!0,onChange:(oe="")=>{ie(oe||"")},onVerify:oe=>{X(oe)},onFocus:()=>ce(!0)})})}),I.jsx("div",{children:I.jsx(j.Select,{className:"univer-w-full",value:W,options:K,onChange:N})}),I.jsx("div",{children:I.jsx(j.Input,{className:"univer-w-full",placeholder:f.t("definedName.inputCommentPlaceholder"),value:k,onChange:V})}),I.jsxs("div",{className:j.clsx("univer-items-center univer-gap-1 univer-text-sm univer-text-red-500",{"univer-hidden":U.length===0,"univer-flex":U.length!==0}),children:[I.jsx("span",{children:U}),I.jsx(ns,{})]}),I.jsxs("div",{className:"univer-flex univer-gap-2",children:[I.jsx(j.Button,{onClick:()=>{i==null||i()},children:f.t("definedName.cancel")}),I.jsx(j.Button,{variant:"primary",onClick:G,children:f.t("definedName.confirm")})]})]})},Fl=()=>{const n=_.useDependency(a.ICommandService),e=_.useDependency(a.IUniverInstanceService).getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),t=_.useDependency(a.LocaleService),r=_.useDependency(Z.IDefinedNamesService),i=_.useDependency(m.SheetsSelectionsService);if(e==null)return;const s=e.getUnitId(),l=()=>{const k=r.getDefinedNameMap(s);return k?Array.from(Object.values(k)):[]},[c,d]=H.useState(!1),[u,h]=H.useState(l()),[g,S]=H.useState(null),[f,p]=H.useState();H.useEffect(()=>{const k=r.update$.subscribe(()=>{h(l())});return()=>{k.unsubscribe()}},[]);const v=k=>{const{name:V,formulaOrRefString:W,comment:N,localSheetId:U,hidden:L}=k;let z=k.id;if(z==null||z.length===0)z=a.Tools.generateRandomId(10),n.executeCommand(m.InsertDefinedNameCommand.id,{id:z,unitId:s,name:V,formulaOrRefString:W,comment:N,localSheetId:U,hidden:L});else{const B={id:z,unitId:s,name:V,formulaOrRefString:W,comment:N,localSheetId:U,hidden:L};n.executeCommand(m.SetDefinedNameCommand.id,B)}d(!1),S(null)},C=k=>{p(k)};function b(){p(null)}function R(k){const V=r.getValueById(s,k);n.executeCommand(m.RemoveDefinedNameCommand.id,{...V,unitId:s}),p(null)}const w=async k=>{const{formulaOrRefString:V,id:W}=k,N=r.getWorksheetByRef(s,V);if(!N)return;N.isSheetHidden()&&await n.executeCommand(m.SetWorksheetShowCommand.id,{unitId:s,subUnitId:N.getSheetId()}),r.focusRange(s,W)},P=()=>{const k=u.length+1,V=t.t("definedName.defaultName")+k;if(r.getValueByName(s,V)==null)return V;let W=k+1;for(;;){const N=t.t("definedName.defaultName")+W;if(r.getValueByName(s,N)==null)return N;W++}},y=()=>{var N;const k=(N=e.getActiveSheet())==null?void 0:N.getName();if(!k)return"";const V=i.getCurrentSelections();return V==null?"":V.map(U=>Z.serializeRangeWithSheet(k,U.range)).join(",")},M=()=>{d(!1),S(null)},x=()=>{d(!0),S(null)},A=k=>{d(!1),S(k)},D=k=>{const V=e.getSheetBySheetId(k);return V==null?"":V.getName()};return I.jsx("div",{"data-u-comp":"defined-name-container",className:"univer-relative univer-box-border univer-w-full",children:I.jsxs("div",{className:j.clsx("univer-w-full univer-overflow-hidden univer-overflow-y-auto",j.scrollbarClassName),children:[I.jsxs("div",{className:"univer-mb-4",children:[I.jsxs(j.Button,{className:j.clsx("univer-w-full",{"univer-hidden":c}),onClick:x,children:[I.jsx(rs,{}),I.jsx("span",{className:"univer-ml-1",children:t.t("definedName.addButton")})]}),c&&I.jsx(ua,{confirm:v,cancel:M,state:c,inputId:"insertDefinedName",name:P(),formulaOrRefString:y()})]},"insertDefinedName"),u.map((k,V)=>I.jsxs("div",{className:"univer-divide-x-0 univer-divide-y univer-divide-solid univer-divide-gray-200 dark:!univer-divide-gray-600",children:[I.jsxs("div",{className:j.clsx("univer-group univer-relative univer-flex univer-cursor-default univer-select-none univer-items-center univer-justify-between univer-rounded-md univer-p-2 dark:hover:!univer-bg-gray-700 hover:univer-bg-gray-50",{"univer-hidden":k.id===g}),onClick:()=>{w(k)},children:[I.jsxs("div",{title:k.comment,children:[I.jsxs("div",{className:"univer-my-1 univer-max-h-[100px] univer-max-w-[190px] univer-overflow-hidden univer-text-sm univer-font-medium univer-text-gray-900 dark:!univer-text-white",children:[k.name,I.jsx("span",{className:"univer-text-xxs univer-ml-1 univer-text-gray-400",children:k.localSheetId===m.SCOPE_WORKBOOK_VALUE_DEFINED_NAME||k.localSheetId==null?"":D(k.localSheetId)})]}),I.jsx("div",{className:"univer-my-1 univer-max-h-[100px] univer-overflow-hidden univer-text-ellipsis univer-text-xs univer-text-gray-500",children:k.formulaOrRefString})]}),I.jsx(j.Tooltip,{title:t.t("definedName.updateButton"),placement:"top",children:I.jsx("a",{className:"univer-absolute univer-right-[60px] univer-top-1/2 univer-hidden -univer-translate-y-1/2 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded univer-p-1 univer-text-xs univer-text-primary-600 dark:hover:!univer-bg-gray-600 group-hover:univer-flex hover:univer-bg-gray-100",onClick:W=>{W.stopPropagation(),A(k.id)},children:I.jsx(Ga,{})})}),I.jsx(j.Tooltip,{title:t.t("definedName.deleteButton"),placement:"top",children:I.jsx("a",{className:"univer-absolute univer-text-xs univer-text-error univer-right-5 univer-top-1/2 univer-hidden -univer-translate-y-1/2 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded univer-p-1 univer-text-red-600 dark:hover:!univer-bg-gray-600 group-hover:univer-flex hover:univer-bg-gray-100",onClick:W=>{W.stopPropagation(),C(k.id)},children:I.jsx(yo,{})})})]}),I.jsx(j.Confirm,{visible:f===k.id,onClose:b,onConfirm:()=>{R(k.id)},children:t.t("definedName.deleteConfirmText")}),k.id===g&&I.jsx(ua,{confirm:v,cancel:M,state:k.id===g,id:k.id,inputId:k.id+V,name:k.name,formulaOrRefString:k.formulaOrRefString,comment:k.comment,localSheetId:k.localSheetId})]},V))]})})};function Wg(n){const o=n.get(m.BorderStyleManagerService),e=ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]});return{id:m.SetBorderBasicCommand.id,icon:new O.Observable(t=>{const r="AllBorderIcon",i=n.get(m.BorderStyleManagerService),s=n.get(a.ICommandService).onCommandExecuted(l=>{var g;if(l.id!==m.SetBorderBasicCommand.id)return;const{type:d}=i.getBorderInfo(),u=Ul.find(S=>S.value===d),h=(g=u==null?void 0:u.icon)!=null?g:r;t.next(h)});return t.next(r),s.dispose}),tooltip:"toolbar.border.main",type:_.MenuItemType.BUTTON_SELECTOR,slot:!0,selections:[{label:{name:_s,hoverable:!1,selectable:!1},value$:o.borderInfo$}],value$:o.borderInfo$,hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:e}}const Fr="sheet.menu.clear-selection";function ti(n){return{id:Fr,type:_.MenuItemType.SUBITEMS,icon:"ClearFormatDoubleIcon",title:"rightClick.clearSelection",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function ni(n){return{id:m.ClearSelectionContentCommand.id,type:_.MenuItemType.BUTTON,icon:"ClearFormatDoubleIcon",title:"rightClick.clearContent",disabled$:Xt(n,ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellValuePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function ri(n){return{id:m.ClearSelectionFormatCommand.id,type:_.MenuItemType.BUTTON,icon:"ClearFormatDoubleIcon",title:"rightClick.clearFormat",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function kr(n){return{id:m.ClearSelectionAllCommand.id,type:_.MenuItemType.BUTTON,icon:"ClearFormatDoubleIcon",title:"rightClick.clearAll",tooltip:"rightClick.clearAll",disabled$:Xt(n,ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellValuePermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}const jl="sheet.menu.delete";function Ug(n){return{id:jl,type:_.MenuItemType.SUBITEMS,title:"rightClick.delete",icon:"ReduceDoubleIcon",hidden$:Xt(n,Tn(n)),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission]})}}function ha(n){return{id:_n.id,type:_.MenuItemType.BUTTON,icon:"DeleteColumnDoubleIcon",title:"rightClick.deleteSelectedColumn",hidden$:El(n,"col"),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetDeleteColumnPermission]})}}function ma(n){return{id:Cn.id,type:_.MenuItemType.BUTTON,icon:"DeleteRowDoubleIcon",title:"rightClick.deleteSelectedRow",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetDeleteRowPermission]}),hidden$:El(n,"row")}}function Lg(n){return{id:Mn.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveLeft",icon:"DeleteCellShiftLeftDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"col")}}function Bg(n){return{id:Vt.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveUp",icon:"DeleteCellShiftUpDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"row")}}function Fg(n){const o=n.get(a.ICommandService),e=n.get(a.IUniverInstanceService);return{id:m.ToggleGridlinesCommand.id,type:_.MenuItemType.BUTTON,tooltip:"toolbar.toggleGridlines",icon:"HideGridlinesDoubleIcon",activated$:new O.Observable(t=>{const r=()=>{const s=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);return s?s.getActiveSheet().getConfig().showGridlines===a.BooleanNumber.TRUE:!1},i=new a.DisposableCollection;return i.add(o.onCommandExecuted(s=>{(s.id===m.ToggleGridlinesMutation.id||s.id===m.SetWorksheetActiveOperation.id)&&t.next(r())})),i.add(e.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).subscribe(()=>{t.next(r())})),t.next(r()),()=>i.dispose()}),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission]})}}const zl="sheet.menu.cell-insert";function jg(n){return{id:zl,type:_.MenuItemType.SUBITEMS,title:"rightClick.insert",icon:"InsertDoubleIcon",hidden$:Xt(n,Tn(n)),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertColumnPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}}function zg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertRowBeforeCommand.id,type:_.MenuItemType.BUTTON,icon:"InsertRowAboveDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertRowsAbove",min:1,max:1e3,suffix:"rightClick.insertRowsAboveSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endRow)-(c==null?void 0:c.startRow)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:wl(n,"row")}}function Xg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertColBeforeCommand.id,type:_.MenuItemType.BUTTON,icon:"LeftInsertColumnDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertColsLeft",min:1,max:1e3,suffix:"rightClick.insertColsLeftSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endColumn)-(c==null?void 0:c.startColumn)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertColumnPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:wl(n,"col")}}function Yg(n){return{id:Pn.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveRight",icon:"InsertCellShiftRightDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"col")}}function Gg(n){return{id:Wt.id,type:_.MenuItemType.BUTTON,title:"rightClick.moveDown",icon:"InsertCellDownDoubleIcon",disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Do(n,"row")}}function Zg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiRowsAfterCommand.id,type:_.MenuItemType.BUTTON,icon:"InsertRowBelowDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertRowsAfter",min:1,max:1e3,suffix:"rightClick.insertRowsAfterSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endRow)-(c==null?void 0:c.startRow)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function Kg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiRowsAboveCommand.id,type:_.MenuItemType.BUTTON,icon:"InsertRowAboveDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertRowsAbove",min:1,max:1e3,suffix:"rightClick.insertRowsAboveSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endRow)-(c==null?void 0:c.startRow)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function qg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiColsLeftCommand.id,type:_.MenuItemType.BUTTON,icon:"LeftInsertColumnDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertColsLeft",min:1,max:1e3,suffix:"rightClick.insertColsLeftSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endColumn)-(c==null?void 0:c.startColumn)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function Qg(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.SheetsSelectionsService),t=n.get(a.ICommandService),r=1;return{id:m.InsertMultiColsRightCommand.id,type:_.MenuItemType.BUTTON,icon:"RightInsertColumnDoubleIcon",label:{name:Ke,props:{prefix:"rightClick.insertColsRight",min:1,max:1e3,suffix:"rightClick.insertColsRightSuffix"}},value$:Ie(o,r,()=>new O.Observable(i=>{function s(){var u;const c=(u=e.getCurrentLastSelection())==null?void 0:u.range;let d=r;c&&(d=(c==null?void 0:c.endColumn)-(c==null?void 0:c.startColumn)+1),i.next(d)}const l=t.onCommandExecuted(c=>{if(c.id===m.SetSelectionsOperation.id)return s()});return s(),l.dispose})),disabled$:ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetInsertRowPermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]}),hidden$:Tn(n)}}function Jg(n){const o=Xt(n,ee(n,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellValuePermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})),e=Gm(n);return{id:vt.id,icon:"MergeAllIcon",tooltip:"toolbar.mergeCell.main",type:_.MenuItemType.SUBITEMS,hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:o.pipe(O.combineLatestWith(e),O.map(([t,r])=>t||r))}}function $g(n){return{id:fs.id,type:_.MenuItemType.BUTTON,title:"merge.all",icon:"MergeAllIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function eS(n){return{id:ps.id,type:_.MenuItemType.BUTTON,title:"merge.vertical",icon:"VerticalIntegrationIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function tS(n){return{id:vs.id,type:_.MenuItemType.BUTTON,title:"merge.horizontal",icon:"HorizontalMergeIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function nS(n){return{id:m.RemoveWorksheetMergeCommand.id,type:_.MenuItemType.BUTTON,title:"merge.cancel",icon:"CancelMergeIcon",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function rS(n){const e=n.get(a.IUniverInstanceService).getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),t=n.get(a.UserManagerService);return O.combineLatest([e,t.currentUser$]).pipe(O.switchMap(([r,i])=>r?r.activeSheet$.pipe(O.switchMap(s=>{if(!s)return O.of(!0);const l=n.get(m.RangeProtectionRuleModel),c=n.get(m.WorksheetProtectionRuleModel),d=n.get(m.SheetsSelectionsService);return O.merge(d.selectionMoveEnd$,l.ruleChange$,c.ruleChange$).pipe(O.map(()=>{const u=r.getUnitId(),h=s.getSheetId(),g=l.getSubunitRuleList(u,h),S=d.getCurrentSelections(),f=S==null?void 0:S.map(C=>C.range),p=g.map(C=>C.ranges).flat();if(!f)return!1;const v=c.getRule(u,h);return v!=null&&v.permissionId?!0:f==null?void 0:f.some(C=>p.some(b=>a.Rectangle.intersects(C,b)))}))})):O.of(!0)))}function oS(n){const o=n.get(a.IUniverInstanceService),e=n.get(m.RangeProtectionRuleModel),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{if(!l)return O.of(!0);const c=n.get(m.RangeProtectionRuleModel),d=n.get(m.WorksheetProtectionRuleModel),u=n.get(a.IPermissionService),h=n.get(m.SheetsSelectionsService);return O.merge(h.selectionMoveEnd$,c.ruleChange$,d.ruleChange$).pipe(O.map(()=>{var x,A;const g=i.getUnitId(),S=l.getSheetId(),f=e.getSubunitRuleList(g,S),p=(x=h.getCurrentSelections())==null?void 0:x.map(D=>D.range);if(f.map(D=>D.ranges).flat(),!(p!=null&&p.length)||p.length>1)return!0;const v=p[0];if((v==null?void 0:v.rangeType)===a.RANGE_TYPE.ALL||(v==null?void 0:v.rangeType)===a.RANGE_TYPE.COLUMN||(v==null?void 0:v.rangeType)===a.RANGE_TYPE.ROW)return!0;const C=d.getRule(g,S);if(C!=null&&C.permissionId)return((A=u.getPermissionPoint(new m.WorksheetManageCollaboratorPermission(g,S).id))==null?void 0:A.value)===!1;if(f.filter(D=>D.ranges.some(k=>a.Rectangle.intersects(k,v))).length!==1)return!0;const{startRow:R,endRow:w,startColumn:P,endColumn:y}=v,M=n.get(m.RangeProtectionCache);for(let D=R;D<=w;D++)for(let k=P;k<=y;k++){const V=M.getCellInfo(g,S,D,k);if(V)return V[m.UnitAction.ManageCollaborator]===!1}return!1}))})):O.of(!0)))}function iS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{var f;if(!l)return O.of(!0);const c=i.getUnitId(),d=n.get(m.SheetsSelectionsService),u=n.get(m.RangeProtectionRuleModel),h=n.get(m.WorksheetProtectionRuleModel),g=(f=e.composePermission$([new m.WorkbookEditablePermission(c).id]).pipe(O.map(p=>p.every(v=>v.value))))!=null?f:O.of(!1),S=O.merge(u.ruleChange$,h.ruleChange$).pipe(O.startWith(null));return O.combineLatest([g,S,d.selectionMoveEnd$]).pipe(O.map(([p,v,C])=>{if(!p)return!0;const b=d.getCurrentSelections(),R=b==null?void 0:b.map(w=>w.range);return R!=null&&R.length?R.length>1:!1}))})):O.of(!0)))}function Xl(n){var d;const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService),i=n.has(he)?n.get(he):null,l=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_FX_BAR_EDITOR).pipe(O.startWith(!1),O.shareReplay(1)),c=(d=i==null?void 0:i.visible$.pipe(O.startWith(null),O.shareReplay(1)))!=null?d:O.of(null);return O.combineLatest([t,r.currentUser$,c,l]).pipe(O.switchMap(([u,h,g,S])=>!u||g!=null&&g.visible&&g.unitId===u.getUnitId()||S?O.of(!0):u.activeSheet$.pipe(O.switchMap(f=>{var x;if(!f)return O.of(!0);const v=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_COMMON_DRAWINGS).pipe(O.startWith(!1)),C=u.getUnitId(),b=f.getSheetId(),R=n.get(m.RangeProtectionRuleModel),w=n.get(m.WorksheetProtectionRuleModel),P=n.get(m.SheetsSelectionsService),y=(x=e.composePermission$([new m.WorkbookCreateProtectPermission(C).id]).pipe(O.map(A=>A.every(D=>D.value))))!=null?x:O.of(!1),M=O.merge(R.ruleChange$,w.ruleChange$).pipe(O.startWith(null));return O.combineLatest([y,M,P.selectionMoveEnd$,v]).pipe(O.map(([A,D,k,V])=>{if(!A||V)return!0;const W=P.getCurrentSelections(),N=W==null?void 0:W.map(B=>B.range);if(!(N!=null&&N.length))return!0;const U=w.getRule(C,b);if(U!=null&&U.permissionId)return!0;const L=R.getSubunitRuleList(C,b);return N==null?void 0:N.some(B=>L.some(F=>F.ranges.some(X=>a.Rectangle.intersects(B,X))))}))}))))}function sS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{var f;if(!l)return O.of(!0);const c=i.getUnitId(),d=l.getSheetId(),u=n.get(m.RangeProtectionRuleModel),h=n.get(m.WorksheetProtectionRuleModel),g=(f=e.composePermission$([new m.WorkbookCreateProtectPermission(c).id]).pipe(O.map(p=>p.every(v=>v.value))))!=null?f:O.of(!1),S=O.merge(u.ruleChange$,h.ruleChange$).pipe(O.startWith(null));return O.combineLatest([g,S]).pipe(O.map(([p,v])=>{var R;if(!p)return!0;const C=h.getRule(c,d);return C!=null&&C.permissionId?!0:((R=u.getSubunitRuleList(c,d))==null?void 0:R.filter(w=>w==null?void 0:w.permissionId)).length>0}))})):O.of(!0)))}function aS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{if(!l)return O.of(!0);const c=i.getUnitId(),d=l.getSheetId(),u=n.get(m.WorksheetProtectionRuleModel);return u.ruleChange$.pipe(O.startWith(null)).pipe(O.map(()=>{var g;return u.getRule(c,d)?((g=e.getPermissionPoint(new m.WorksheetDeleteProtectionPermission(c,d).id))==null?void 0:g.value)===!1:!0}))})):O.of(!0)))}function lS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{var f;if(!l)return O.of(!0);const c=i.getUnitId(),d=n.get(m.RangeProtectionRuleModel),u=n.get(m.WorksheetProtectionRuleModel),h=(f=e.composePermission$([new m.WorkbookCreateProtectPermission(c).id,new m.WorkbookManageCollaboratorPermission(c).id]).pipe(O.map(p=>p.every(v=>v.value))))!=null?f:O.of(!1),g=u.ruleChange$.pipe(O.startWith(null)),S=d.ruleChange$.pipe(O.startWith(null));return O.combineLatest([h,g,S]).pipe(O.map(([p,v,C])=>{if(!p)return!0;const b=l.getSheetId(),R=u.getRule(c,b),w=d.getSubunitRuleList(c,b);return!(R||w.length)}))})):O.of(!0)))}function cS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService);return O.combineLatest([t,r.currentUser$]).pipe(O.switchMap(([i,s])=>i?i.activeSheet$.pipe(O.switchMap(l=>{if(!l)return O.of(!0);const c=i.getUnitId(),d=l.getSheetId(),u=n.get(m.SheetsSelectionsService),h=n.get(m.RangeProtectionRuleModel),g=n.get(m.WorksheetProtectionRuleModel),S=O.merge(h.ruleChange$,g.ruleChange$,u.selectionMoveEnd$).pipe(O.startWith(null));return O.combineLatest([S]).pipe(O.map(([f])=>{var A;const p=n.get(m.SheetsSelectionsService).getCurrentSelections(),v=p==null?void 0:p.map(D=>D.range);if(!(v!=null&&v.length)||v.length>1)return!0;const C=v[0];if((C==null?void 0:C.rangeType)===a.RANGE_TYPE.ALL||(C==null?void 0:C.rangeType)===a.RANGE_TYPE.COLUMN||(C==null?void 0:C.rangeType)===a.RANGE_TYPE.ROW)return!0;const b=g.getRule(c,d);if(b!=null&&b.permissionId)return((A=e.getPermissionPoint(new m.WorksheetDeleteProtectionPermission(c,d).id))==null?void 0:A.value)===!1;if(h.getSubunitRuleList(c,d).filter(D=>D.ranges.some(k=>a.Rectangle.intersects(k,C))).length!==1)return!0;const{startRow:w,endRow:P,startColumn:y,endColumn:M}=C,x=n.get(m.RangeProtectionCache);for(let D=w;D<=P;D++)for(let k=y;k<=M;k++){const V=x.getCellInfo(c,d,D,k);if(V)return V[m.UnitAction.Delete]===!1}return!1}))})):O.of(!0)))}function Yl(n){var d;const o=n.get(a.IUniverInstanceService),e=n.get(a.IPermissionService),t=o.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET),r=n.get(a.UserManagerService),i=n.has(he)?n.get(he):null,l=n.get(a.IContextService).subscribeContextValue$(a.FOCUSING_FX_BAR_EDITOR),c=(d=i==null?void 0:i.visible$)!=null?d:O.of(null);return O.combineLatest([t,r.currentUser$,c,l]).pipe(O.switchMap(([u,h,g,S])=>!u||g!=null&&g.visible&&g.unitId===u.getUnitId()||S?O.of(!0):u.activeSheet$.pipe(O.switchMap(f=>{var C,b;if(!f)return O.of(!0);const p=u.getUnitId();return((b=(C=e.getPermissionPoint$(new m.WorkbookEditablePermission(p).id))==null?void 0:C.pipe(O.map(R=>!!R.value)))!=null?b:O.of(!1)).pipe(O.map(R=>!R))}))))}const jr="sheet.contextMenu.permission";function dS(n){return{id:Ir.id,type:_.MenuItemType.BUTTON,icon:Vl,tooltip:"permission.toolbarMenu",hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET),disabled$:Xl(n)}}function oi(n){return{id:jr,type:_.MenuItemType.SUBITEMS,title:"rightClick.protectRange",icon:Wl,hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function ii(n){return{id:xt.id,type:_.MenuItemType.BUTTON,title:"rightClick.turnOnProtectRange",hidden$:rS(n),disabled$:Xl(n)}}function si(n){return{id:Dt.id,type:_.MenuItemType.BUTTON,title:"rightClick.editProtectRange",disabled$:iS(n),hidden$:oS(n)}}function ai(n){return{id:At.id,type:_.MenuItemType.BUTTON,title:"rightClick.removeProtectRange",disabled$:cS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function li(n){return{id:Ot.id,type:_.MenuItemType.BUTTON,title:"rightClick.viewAllProtectArea",disabled$:Yl(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function uS(n){return{id:br.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.addProtectSheet",disabled$:sS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function hS(n){return{id:Tr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.removeProtectSheet",disabled$:aS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function mS(n){return{id:yr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.changeSheetPermission",disabled$:lS(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function gS(n){return{id:Rr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.viewAllProtectArea",disabled$:Yl(n),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function SS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.ICommandService),t=new O.Observable(i=>{const s=e.onCommandExecuted(l=>{const c=l.id;(c===m.RemoveSheetMutation.id||c===m.InsertSheetMutation.id||c===m.SetWorksheetHideMutation.id)&&eo(o,i)});return eo(o,i),s.dispose}),r=yn(n,[m.WorkbookEditablePermission,m.WorkbookDeleteSheetPermission]);return{id:wr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.delete",disabled$:O.combineLatest([t,r]).pipe(O.map(([i,s])=>i||s)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function fS(n){return{id:m.CopySheetCommand.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.copy",disabled$:yn(n,[m.WorkbookEditablePermission,m.WorkbookCreateSheetPermission]),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function pS(n){return{id:Mr.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.rename",disabled$:yn(n,[m.WorkbookEditablePermission,m.WorkbookRenameSheetPermission]),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function vS(n){return{id:m.SetTabColorCommand.id,title:"sheetConfig.changeColor",type:_.MenuItemType.SELECTOR,selections:[{label:{name:_.COLOR_PICKER_COMPONENT,hoverable:!1}}],hidden$:yn(n,[m.WorkbookEditablePermission])}}function CS(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.ICommandService);return{id:m.SetWorksheetHideCommand.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.hide",disabled$:new O.Observable(t=>{const r=e.onCommandExecuted(i=>{const s=i.id;(s===m.RemoveSheetMutation.id||s===m.InsertSheetMutation.id||s===m.SetWorksheetHideMutation.id)&&eo(o,t)});return eo(o,t),r.dispose}).pipe(O.combineLatestWith(yn(n,[m.WorkbookEditablePermission,m.WorkbookHideSheetPermission])),O.map(([t,r])=>t||r)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function _S(n){const o=n.get(a.IUniverInstanceService),e=n.get(a.ICommandService);return{id:Er.id,type:_.MenuItemType.BUTTON,title:"sheetConfig.unhide",disabled$:new O.Observable(t=>{function r(){const s=o.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET).getWorksheets(),l=Array.from(s.values());t.next(l.length===1)}const i=e.onCommandExecuted(s=>{const l=s.id;(l===m.RemoveSheetMutation.id||l===m.InsertSheetMutation.id||l===m.SetWorksheetHideMutation.id)&&r()});return r(),i.dispose}).pipe(O.combineLatestWith(yn(n,[m.WorkbookEditablePermission,m.WorkbookHideSheetPermission])),O.map(([t,r])=>t||r)),hidden$:_.getMenuHiddenObservable(n,a.UniverInstanceType.UNIVER_SHEET)}}function eo(n,o){const e=n.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET).getWorksheets(),t=Array.from(e.values()).filter(r=>r.getConfig().hidden===a.BooleanNumber.FALSE);o.next(t.length===1)}const Gl={[_.RibbonPosition.START]:{[_.RibbonStartGroup.HISTORY]:{[En.id]:{order:2,menuItemFactory:gm},[m.ClearSelectionAllCommand.id]:{order:3,menuItemFactory:kr}},[_.RibbonStartGroup.FORMAT]:{[mr.id]:{order:1,menuItemFactory:Cm},[hr.id]:{order:2,menuItemFactory:_m},[Bt.id]:{order:5,menuItemFactory:Sm},[Ft.id]:{order:6,menuItemFactory:fm},[jt.id]:{order:7,menuItemFactory:pm},[zt.id]:{order:8,menuItemFactory:vm},[fn.id]:{order:9,menuItemFactory:bm,[m.ResetTextColorCommand.id]:{order:0,menuItemFactory:Im}},[m.SetBackgroundColorCommand.id]:{order:10,menuItemFactory:wm,[m.ResetBackgroundColorCommand.id]:{order:0,menuItemFactory:Rm}},[m.SetBorderBasicCommand.id]:{order:11,menuItemFactory:Wg}},[_.RibbonStartGroup.LAYOUT]:{[m.SetHorizontalTextAlignCommand.id]:{order:0,menuItemFactory:Em},[m.SetVerticalTextAlignCommand.id]:{order:3,menuItemFactory:Tm},[m.SetTextWrapCommand.id]:{order:6,menuItemFactory:ym},[m.SetTextRotationCommand.id]:{order:7,menuItemFactory:Mm},[m.AddWorksheetMergeCommand.id]:{order:8,menuItemFactory:Jg,[m.AddWorksheetMergeAllCommand.id]:{order:0,menuItemFactory:$g},[m.AddWorksheetMergeVerticalCommand.id]:{order:1,menuItemFactory:eS},[m.AddWorksheetMergeHorizontalCommand.id]:{order:2,menuItemFactory:tS},[m.RemoveWorksheetMergeCommand.id]:{order:3,menuItemFactory:nS}}},[_.RibbonStartGroup.OTHERS]:{[Ir.id]:{order:0,menuItemFactory:dS}}},[_.ContextMenuPosition.MAIN_AREA]:{[_.ContextMenuGroup.FORMAT]:{[Le.name]:{order:0,menuItemFactory:sn},[Be.name]:{order:2,menuItemFactory:Lo},[Yn]:{order:3,menuItemFactory:Bo,[nn.id]:{order:0,menuItemFactory:Fo},[rn.id]:{order:1,menuItemFactory:jo},[Pt.id]:{order:2,menuItemFactory:zo},[on.id]:{order:3,menuItemFactory:Xo}},[Fr]:{order:4,menuItemFactory:ti,[m.ClearSelectionContentCommand.id]:{order:0,menuItemFactory:ni},[m.ClearSelectionFormatCommand.id]:{order:1,menuItemFactory:ri},[m.ClearSelectionAllCommand.id]:{order:2,menuItemFactory:kr}}},[_.ContextMenuGroup.LAYOUT]:{order:1,[zl]:{order:0,menuItemFactory:jg,[m.InsertRowBeforeCommand.id]:{order:0,menuItemFactory:zg},[m.InsertColBeforeCommand.id]:{order:1,menuItemFactory:Xg},[Pn.id]:{order:2,menuItemFactory:Yg},[Wt.id]:{order:3,menuItemFactory:Gg}},[jl]:{order:0,menuItemFactory:Ug,[_n.id]:{order:0,menuItemFactory:ha},[Cn.id]:{order:1,menuItemFactory:ma},[Mn.id]:{order:2,menuItemFactory:Lg},[Vt.id]:{order:3,menuItemFactory:Bg}},[yl]:{order:2,menuItemFactory:Om,[ot.id]:{order:0,menuItemFactory:Yo},[fr.id]:{order:1,menuItemFactory:Am},[pr.id]:{order:2,menuItemFactory:Dm},[m.CancelFrozenCommand.id]:{order:3,menuItemFactory:Go}},[jr]:{order:3,menuItemFactory:oi,[xt.id]:{order:0,menuItemFactory:ii},[Dt.id]:{order:1,menuItemFactory:si},[At.id]:{order:2,menuItemFactory:ai},[Ot.id]:{order:3,menuItemFactory:li}}},[_.ContextMenuGroup.DATA]:{order:2},[_.ContextMenuGroup.OTHERS]:{order:3}},[_.ContextMenuPosition.COL_HEADER]:{[_.ContextMenuGroup.FORMAT]:{[Le.name]:{order:0,menuItemFactory:sn},[Be.name]:{order:2,menuItemFactory:Lo},[Yn]:{order:3,menuItemFactory:Bo,[nn.id]:{order:0,menuItemFactory:Fo},[rn.id]:{order:1,menuItemFactory:jo},[Pt.id]:{order:2,menuItemFactory:zo},[on.id]:{order:3,menuItemFactory:Xo}},[Fr]:{order:4,menuItemFactory:ti,[m.ClearSelectionContentCommand.id]:{order:0,menuItemFactory:ni},[m.ClearSelectionFormatCommand.id]:{order:1,menuItemFactory:ri},[m.ClearSelectionAllCommand.id]:{order:2,menuItemFactory:kr}}},[_.ContextMenuGroup.LAYOUT]:{order:1,[m.InsertMultiColsLeftCommand.id]:{order:0,menuItemFactory:qg},[m.InsertMultiColsRightCommand.id]:{order:0,menuItemFactory:Qg},[ur.id]:{order:1,menuItemFactory:Nm},[m.SetSelectedColsVisibleCommand.id]:{order:2,menuItemFactory:Vm},[_n.id]:{order:2,menuItemFactory:ha},[m.SetColWidthCommand.id]:{order:3,menuItemFactory:Um},[vr.id]:{order:4,menuItemFactory:xm},[Ai]:{order:5,menuItemFactory:oa,[ot.id]:{order:0,menuItemFactory:Yo},[m.CancelFrozenCommand.id]:{order:3,menuItemFactory:Go}},[jr]:{order:6,menuItemFactory:oi,[xt.id]:{order:0,menuItemFactory:ii},[Dt.id]:{order:1,menuItemFactory:si},[At.id]:{order:2,menuItemFactory:ai},[Ot.id]:{order:3,menuItemFactory:li}}},[_.ContextMenuGroup.DATA]:{order:2},[_.ContextMenuGroup.OTHERS]:{order:3}},[_.ContextMenuPosition.ROW_HEADER]:{[_.ContextMenuGroup.FORMAT]:{[Le.name]:{order:0,menuItemFactory:sn},[Be.name]:{order:2,menuItemFactory:Lo},[Yn]:{order:3,menuItemFactory:Bo,[nn.id]:{order:0,menuItemFactory:Fo},[rn.id]:{order:1,menuItemFactory:jo},[Pt.id]:{order:2,menuItemFactory:zo},[on.id]:{order:3,menuItemFactory:Xo}},[Fr]:{order:4,menuItemFactory:ti,[m.ClearSelectionContentCommand.id]:{order:0,menuItemFactory:ni},[m.ClearSelectionFormatCommand.id]:{order:1,menuItemFactory:ri},[m.ClearSelectionAllCommand.id]:{order:2,menuItemFactory:kr}}},[_.ContextMenuGroup.LAYOUT]:{order:1,[m.InsertMultiRowsAboveCommand.id]:{order:0,menuItemFactory:Kg},[m.InsertMultiRowsAfterCommand.id]:{order:1,menuItemFactory:Zg},[Cn.id]:{order:1,menuItemFactory:ma},[dr.id]:{order:2,menuItemFactory:km},[m.SetSelectedRowsVisibleCommand.id]:{order:2,menuItemFactory:Hm},[m.SetRowHeightCommand.id]:{order:3,menuItemFactory:Wm},[m.SetWorksheetRowIsAutoHeightCommand.id]:{order:4,menuItemFactory:Pm},[Ai]:{order:5,menuItemFactory:oa,[ot.id]:{order:0,menuItemFactory:Yo},[m.CancelFrozenCommand.id]:{order:3,menuItemFactory:Go}},[jr]:{order:6,menuItemFactory:oi,[xt.id]:{order:0,menuItemFactory:ii},[Dt.id]:{order:1,menuItemFactory:si},[At.id]:{order:2,menuItemFactory:ai},[Ot.id]:{order:3,menuItemFactory:li}}},[_.ContextMenuGroup.DATA]:{order:2},[_.ContextMenuGroup.OTHERS]:{order:3}},[_.ContextMenuPosition.FOOTER_TABS]:{[_.ContextMenuGroup.OTHERS]:{order:0,[wr.id]:{order:0,menuItemFactory:SS},[m.CopySheetCommand.id]:{order:1,menuItemFactory:fS},[Mr.id]:{order:2,menuItemFactory:pS},[m.SetTabColorCommand.id]:{order:3,menuItemFactory:vS},[m.SetWorksheetHideCommand.id]:{order:4,menuItemFactory:CS},[Er.id]:{order:6,menuItemFactory:_S},[br.id]:{order:7,menuItemFactory:uS},[Tr.id]:{order:8,menuItemFactory:hS},[yr.id]:{order:9,menuItemFactory:mS},[Rr.id]:{order:10,menuItemFactory:gS}}},[_.ContextMenuPosition.FOOTER_MENU]:{[_.ContextMenuGroup.OTHERS]:{[m.ToggleGridlinesCommand.id]:{order:1,menuItemFactory:Fg}}}},Zl={id:m.SetRowHiddenCommand.id,preconditions:n=>ae(n),binding:_.KeyCode.Digit9|_.MetaKeys.CTRL_COMMAND},Kl={id:m.SetColHiddenCommand.id,preconditions:n=>ae(n),binding:_.KeyCode.Digit0|_.MetaKeys.CTRL_COMMAND|_.MetaKeys.SHIFT},ql={id:ye.id,description:"shortcut.sheet.select-below-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.DOWN}},Ql={id:ye.id,description:"shortcut.sheet.select-up-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.UP}},Jl={id:ye.id,description:"shortcut.sheet.select-left-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT,priority:100,preconditions:ol,staticParameters:{direction:a.Direction.LEFT}},$l={id:ye.id,description:"shortcut.sheet.select-right-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT,priority:100,preconditions:ol,staticParameters:{direction:a.Direction.RIGHT}},ec={id:Ge.id,description:"shortcut.sheet.select-next-cell",group:"3_sheet-view",binding:_.KeyCode.TAB,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT,keycode:_.KeyCode.TAB}},tc={id:Ge.id,description:"shortcut.sheet.select-previous-cell",group:"3_sheet-view",binding:_.KeyCode.TAB|_.MetaKeys.SHIFT,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.LEFT,keycode:_.KeyCode.TAB}},nc={id:Ge.id,description:"shortcut.sheet.select-below-cell",group:"3_sheet-view",binding:_.KeyCode.ENTER,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.DOWN,keycode:_.KeyCode.ENTER}},rc={id:Ge.id,description:"shortcut.sheet.select-up-cell",group:"3_sheet-view",binding:_.KeyCode.ENTER|_.MetaKeys.SHIFT,priority:100,preconditions:ae,staticParameters:{direction:a.Direction.UP,keycode:_.KeyCode.ENTER}},oc={id:ye.id,description:"shortcut.sheet.select-below-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.DOWN,jumpOver:Ye.moveGap}},ic={id:ye.id,description:"shortcut.sheet.select-up-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.UP,jumpOver:Ye.moveGap}},sc={id:ye.id,description:"shortcut.sheet.select-left-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.LEFT,jumpOver:Ye.moveGap}},ac={id:ye.id,description:"shortcut.sheet.select-right-value-cell",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT,jumpOver:Ye.moveGap}},lc={id:xe.id,description:"shortcut.sheet.expand-selection-down",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.DOWN}},cc={id:xe.id,description:"shortcut.sheet.expand-selection-up",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.UP}},dc={id:xe.id,description:"shortcut.sheet.expand-selection-left",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.LEFT}},uc={id:xe.id,description:"shortcut.sheet.expand-selection-right",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT|_.MetaKeys.SHIFT,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT}},hc={id:xe.id,description:"shortcut.sheet.expand-selection-to-below-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_DOWN|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.DOWN,jumpOver:Ye.moveGap}},mc={id:xe.id,description:"shortcut.sheet.expand-selection-to-up-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_UP|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.UP,jumpOver:Ye.moveGap}},gc={id:xe.id,description:"shortcut.sheet.expand-selection-to-left-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_LEFT|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.LEFT,jumpOver:Ye.moveGap}},Sc={id:xe.id,description:"shortcut.sheet.expand-selection-to-right-gap",group:"3_sheet-view",binding:_.KeyCode.ARROW_RIGHT|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{direction:a.Direction.RIGHT,jumpOver:Ye.moveGap}},fc={id:sr.id,description:"shortcut.sheet.select-all",group:"3_sheet-view",binding:_.KeyCode.A|_.MetaKeys.CTRL_COMMAND,preconditions:ae,staticParameters:{expandToGapFirst:!0,loop:!0}},pc={id:Bt.id,description:"shortcut.sheet.set-bold",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.B|_.MetaKeys.CTRL_COMMAND},vc={id:Ft.id,description:"shortcut.sheet.set-italic",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.I|_.MetaKeys.CTRL_COMMAND},Cc={id:jt.id,description:"shortcut.sheet.set-underline",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.U|_.MetaKeys.CTRL_COMMAND},_c={id:zt.id,description:"shortcut.sheet.set-strike-through",group:"4_sheet-edit",preconditions:n=>ae(n),binding:_.KeyCode.X|_.MetaKeys.SHIFT|_.MetaKeys.CTRL_COMMAND},Ic={id:m.ClearSelectionContentCommand.id,preconditions:n=>ae(n),binding:_.KeyCode.DELETE,mac:_.KeyCode.BACKSPACE},IS={id:m.ClearSelectionContentCommand.id,preconditions:n=>ae(n),mac:_.KeyCode.DELETE},bS={id:m.ClearSelectionContentCommand.id,preconditions:n=>ae(n),binding:_.MetaKeys.SHIFT+_.KeyCode.BACKSPACE},RS={id:Oo.id,preconditions:n=>ae(n),binding:_.MetaKeys.SHIFT+_.KeyCode.DELETE},bc={id:bn.id,description:"shortcut.sheet.zoom-in",binding:_.KeyCode.EQUAL|_.MetaKeys.CTRL_COMMAND,group:"3_sheet-view",preconditions:ae,priority:1,staticParameters:{delta:.2}},Rc={id:a.NilCommand.id,binding:_.KeyCode.EQUAL|_.MetaKeys.CTRL_COMMAND},wc={id:bn.id,description:"shortcut.sheet.zoom-out",binding:_.KeyCode.MINUS|_.MetaKeys.CTRL_COMMAND,group:"3_sheet-view",preconditions:ae,priority:1,staticParameters:{delta:-.2}},Ec={id:a.NilCommand.id,binding:_.KeyCode.MINUS|_.MetaKeys.CTRL_COMMAND},Tc={id:bn.id,description:"shortcut.sheet.reset-zoom",binding:_.KeyCode.Digit0|_.MetaKeys.CTRL_COMMAND,preconditions:ae,group:"3_sheet-view",priority:1,staticParameters:{reset:!0}},yc={id:a.NilCommand.id,binding:_.KeyCode.Digit0|_.MetaKeys.CTRL_COMMAND};var wS=Object.getOwnPropertyDescriptor,ES=(n,o,e,t)=>{for(var r=t>1?void 0:t?wS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},at=(n,o)=>(e,t)=>o(e,t,n);exports.SheetUIController=class extends a.Disposable{constructor(o,e,t,r,i,s,l,c){super(),this._injector=o,this._componentManager=e,this._layoutService=t,this._commandService=r,this._shortcutService=i,this._menuManagerService=s,this._uiPartsService=l,this._configService=c,this._init()}_init(){this._initComponents(),this._initCommands(),this._initMenus(),this._initShortcuts(),this._initWorkbenchParts(),this._initFocusHandler()}_initComponents(){const o=this._componentManager;this.disposeWithMe(o.register(Ke,bl)),this.disposeWithMe(o.register(_s,Ll)),this.disposeWithMe(o.register(qn,Fl)),this.disposeWithMe(o.register(Bl,Vg)),this.disposeWithMe(o.register("HideGridlinesDoubleIcon",ja))}_initCommands(){[fs,vt,vs,ps,bn,xe,ye,Ge,Mr,wr,Cn,_n,dr,ur,Ue,es,sr,Po,m.SetBoldCommand,Ht,Se,ir,Bt,Ft,jt,zt,ms,gs,hr,mr,fn,Ss,m.SetItalicCommand,m.SetStrikeThroughCommand,m.SetFontFamilyCommand,m.SetFontSizeCommand,gr,Ao,En,Sr,We,hn,ot,fr,pr,ts,m.SetUnderlineCommand,Rn,ke,Er,or,Wt,Vt,Pn,Mn,Mo,dt,dn,Xe,Cs,Ir,xt,Ot,br,Rr,yr,At,Dt,Tr,vr,Ro,wo].forEach(o=>{this.disposeWithMe(this._commandService.registerCommand(o))})}_initMenus(){this._menuManagerService.mergeMenu(Gl)}_initShortcuts(){[ql,Ql,Jl,$l,ec,tc,nc,rc,oc,ic,sc,ac,lc,cc,dc,uc,hc,mc,gc,Sc,fc,bc,wc,Tc,yc,Rc,Ec,pc,vc,Cc,_c,Ic,IS,bS,RS,...sl(),ll,al,cl,ul,hl,mh,ml,dl,hh,gh,Zl,Kl].forEach(o=>{this.disposeWithMe(this._shortcutService.registerShortcut(o))})}_initWorkbenchParts(){const o=this._uiPartsService,e=this._injector;this.disposeWithMe(o.registerComponent(_.BuiltInUIPart.HEADER,()=>_.connectInjector(tl,e))),this.disposeWithMe(o.registerComponent(_.BuiltInUIPart.FOOTER,()=>_.connectInjector(el,e))),this.disposeWithMe(o.registerComponent(_.BuiltInUIPart.CONTENT,()=>_.connectInjector(nl,e)))}_initFocusHandler(){this.disposeWithMe(this._layoutService.registerFocusHandler(a.UniverInstanceType.UNIVER_SHEET,o=>{const e=this._injector.get(T.IRenderManagerService),t=this._injector.get(a.IUniverInstanceService),r=T.getCurrentTypeOfRenderer(a.UniverInstanceType.UNIVER_DOC,t,e),i=r==null?void 0:r.with(J.DocSelectionRenderService);i==null||i.focus()}))}};exports.SheetUIController=ES([at(0,a.Inject(a.Injector)),at(1,a.Inject(_.ComponentManager)),at(2,_.ILayoutService),at(3,a.ICommandService),at(4,_.IShortcutService),at(5,_.IMenuManagerService),at(6,_.IUIPartsService),at(7,a.IConfigService)],exports.SheetUIController);const Mc=(n=[])=>{const o=_.useDependency(Lt);H.useEffect(()=>{const e=n.map(t=>o.addShape({range:t,style:{fill:"rgba(73, 184, 17, 0.05)",strokeWidth:1,stroke:"#49B811",widgets:{}},primary:{startColumn:t.startColumn,endColumn:t.endColumn,startRow:t.startRow,endRow:t.endRow,actualRow:t.startRow,actualColumn:t.startColumn,isMerged:!1,isMergedMainCell:!1}}));return()=>{e.forEach(t=>{t&&o.removeShape(t)})}},[n])};var TS=Object.getOwnPropertyDescriptor,yS=(n,o,e,t)=>{for(var r=t>1?void 0:t?TS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},ga=(n,o)=>(e,t)=>o(e,t,n);let $n=class extends a.Disposable{constructor(o,e){super();E(this,"_previousSheetIndex",-1);this._commandService=o,this._univerInstanceService=e,this.disposeWithMe(this._commandService.beforeCommandExecuted(t=>{if(t.id===m.RemoveSheetMutation.id)return this._beforeAdjustActiveSheetOnRemoveSheet(t)})),this.disposeWithMe(this._commandService.onCommandExecuted((t,r)=>{if(t.id===m.RemoveSheetMutation.id)return this._adjustActiveSheetOnRemoveSheet(t);if(t.id===m.SetWorksheetHideMutation.id&&t.params.hidden)return this._adjustActiveSheetOnHideSheet(t);if(r!=null&&r.fromCollab)return!1;if(t.id===m.InsertSheetMutation.id)return this._adjustActiveSheetOnInsertSheet(t);if(t.id===m.SetWorksheetHideMutation.id&&!t.params.hidden)return this._adjustActiveSheetOnShowSheet(t);if(t.id===m.SetSelectionsOperation.id)return this._adjustActiveSheetOnSelection(t)}))}_adjustActiveSheetOnHideSheet(o){var c;const{unitId:e,subUnitId:t}=o.params,r=this._univerInstanceService.getUniverSheetInstance(e);if(!r||((c=r.getActiveSheet())==null?void 0:c.getSheetId())!==t)return;const s=r.getActiveSheetIndex(),l=Sa(r,s);this._switchToNextSheet(e,l)}_beforeAdjustActiveSheetOnRemoveSheet(o){const{unitId:e,subUnitId:t}=o.params,r=this._univerInstanceService.getUniverSheetInstance(e);if(!r)return;const i=r.getSheetBySheetId(t);i&&(this._previousSheetIndex=r.getSheetIndex(i))}_adjustActiveSheetOnRemoveSheet(o){if(this._previousSheetIndex===-1)return;const{unitId:e}=o.params,t=this._univerInstanceService.getUniverSheetInstance(e);if(!t)return;if(t.getActiveSheet().getSheetId()===o.params.subUnitId){const i=this._previousSheetIndex,s=i>=1?i-1:0,l=Sa(t,s);this._switchToNextSheet(e,l)}}_adjustActiveSheetOnInsertSheet(o){const{unitId:e,sheet:t}=o.params;this._switchToNextSheet(e,t.id)}_adjustActiveSheetOnShowSheet(o){const{unitId:e,subUnitId:t}=o.params;this._switchToNextSheet(e,t)}_adjustActiveSheetOnSelection(o){var r;const{unitId:e,subUnitId:t}=o.params;t!==((r=this._univerInstanceService.getUnit(e))==null?void 0:r.getActiveSheet().getSheetId())&&this._switchToNextSheet(e,t)}_switchToNextSheet(o,e){this._commandService.executeCommand(m.SetWorksheetActiveOperation.id,{unitId:o,subUnitId:e})}};$n=yS([ga(0,a.ICommandService),ga(1,a.IUniverInstanceService)],$n);function Sa(n,o){const e=n.getSheetSize();for(let t=o;t>-1;t--){const r=n.getSheetByIndex(t);if(!r.getConfig().hidden)return r.getSheetId()}for(let t=o;t<e;t++){const r=n.getSheetByIndex(t);if(!r.getConfig().hidden)return r.getSheetId()}throw new Error("[ActiveWorksheetController]: could not find the next unhidden sheet! Collaboration error perhaps.")}var MS=Object.getOwnPropertyDescriptor,PS=(n,o,e,t)=>{for(var r=t>1?void 0:t?MS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},fa=(n,o)=>(e,t)=>o(e,t,n),an=(n=>(n[n.INFO=0]="INFO",n[n.WARNING=1]="WARNING",n[n.ERROR=2]="ERROR",n))(an||{});exports.CellAlertManagerService=class extends a.Disposable{constructor(e,t){super();E(this,"_currentAlert$",new O.Subject);E(this,"_currentAlert",new Map);E(this,"currentAlert$",this._currentAlert$.asObservable());this._renderManagerService=e,this._cellPopupManagerService=t,this.disposeWithMe(()=>{this._currentAlert$.complete()})}get currentAlert(){return this._currentAlert}showAlert(e){let t=this._currentAlert.get(e.key);t&&t.dispose.dispose(),t?t.dispose.dispose():(t={alert:e,dispose:{dispose(){}}},this._currentAlert.set(e.key,t));const{location:r}=e,{row:i,col:s,unitId:l,subUnitId:c}=r;if(!this._renderManagerService.getRenderById(l))return;const u=this._cellPopupManagerService.showPopup({unitId:l,subUnitId:c,row:i,col:s},{componentKey:Pc,direction:"horizontal",extraProps:{alert:e},priority:1});u&&(t.dispose=u),this._currentAlert$.next(Array.from(this._currentAlert.entries()))}removeAlert(e){const t=this._currentAlert.get(e);t&&(this._currentAlert.delete(e),t==null||t.dispose.dispose(),this._currentAlert$.next(Array.from(this._currentAlert.entries())))}clearAlert(){this._currentAlert.forEach(e=>{e.dispose.dispose()}),this._currentAlert.clear(),this._currentAlert$.next(Array.from(this._currentAlert.entries()))}};exports.CellAlertManagerService=PS([fa(0,T.IRenderManagerService),fa(1,a.Inject(exports.CellPopupManagerService))],exports.CellAlertManagerService);function xS({popup:n}){var s;const o=(s=n.extraProps)==null?void 0:s.alert;if(!o)return null;const{type:e,title:t,message:r}=o,i={[an.ERROR]:I.jsx(ns,{className:"univer-mr-1.5 univer-text-red-500"}),[an.INFO]:I.jsx(za,{className:"univer-mr-1.5 univer-text-blue-500"}),[an.WARNING]:I.jsx(Ka,{className:"univer-mr-1.5 univer-text-yellow-500"})};return I.jsxs("div",{className:"univer-z-[100] univer-box-border univer-w-[156px] univer-rounded-lg univer-bg-white univer-px-2 univer-py-1 univer-text-gray-900 univer-shadow dark:!univer-bg-black dark:!univer-text-white",children:[I.jsxs("div",{className:"univer-mb-1.5 univer-flex univer-h-5 univer-flex-row univer-items-center univer-text-sm univer-font-medium",children:[e?i[e]:null,t]}),I.jsx("div",{className:"univer-text-sm",children:r})]})}const Pc="univer.sheet.cell-alert";var OS=Object.getOwnPropertyDescriptor,AS=(n,o,e,t)=>{for(var r=t>1?void 0:t?OS(o,e):o,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=s(r)||r);return r},DS=(n,o)=>(e,t)=>o(e,t,n);let to=class extends a.Disposable{constructor(n,o){super(),this._context=n,this._componentManager=o,this._initComponent()}_initComponent(){this.disposeWithMe(this._componentManager.register(Pc,xS))}};to=AS([DS(1,a.Inject(_.ComponentManager))],to);const pa=2,kS=[{value:"DEFAULT_PASTE",label:"rightClick.paste"},{value:"SPECIAL_PASTE_VALUE",label:"rightClick.pasteValue"},{value:"SPECIAL_PASTE_FORMAT",label:"rightClick.pasteFormat"},{value:"SPECIAL_PASTE_COL_WIDTH",label:"rightClick.pasteColWidth"},{value:"SPECIAL_PASTE_BESIDES_BORDER",label:"rightClick.pasteBesidesBorder"},{value:"SPECIAL_PASTE_FORMULA",label:"formula.operation.pasteFormula"}],NS=n=>{var k,V,W,N,U;const o=_.useDependency(a.IUniverInstanceService),e=_.useDependency(T.IRenderManagerService),t=ft();if(!n||!t)return null;const r={startRow:n.rows[0],startCol:n.cols[0],endRow:n.rows[n.rows.length-1],endCol:n.cols[n.cols.length-1]};if(r.endRow<0||r.endCol<0)return null;const i=e.getRenderById(t.getUnitId()),s=i==null?void 0:i.with(exports.SheetSkeletonManagerService),l=i==null?void 0:i.with(pe),c=Ne(o,e);if(!c||!l)return null;const{scene:d}=c,u=s==null?void 0:s.getCurrentSkeleton(),h=l.getViewPort(),g=d==null?void 0:d.scaleX,S=d==null?void 0:d.scaleY,f=d==null?void 0:d.getViewportScrollXY(h),p=(k=d.getEngine())==null?void 0:k.getCanvas();if(!g||!d||!g||!S||!f)return null;const v=u==null?void 0:u.getNoMergeCellPositionByIndex(r.endRow,r.endCol),C=(V=v==null?void 0:v.endX)!=null?V:0,b=(W=v==null?void 0:v.endY)!=null?W:0,R=(N=T.convertTransformToOffsetX(C,g,f))!=null?N:-9999,w=(U=T.convertTransformToOffsetY(b,S,f))!=null?U:-9999,P=p==null?void 0:p.getWidth(),y=p==null?void 0:p.getHeight();if(!P||!y)return null;const M=R+50<=P,x=w+50<=y;let A=R,D=w;return M||(A=P-100),x||(D=y-100),{positionX:A,positionY:D}},HS=()=>{const n=_.useDependency(Ve),o=_.useObservable(n.showMenu$,!1),e=_.useObservable(n.pasteOptionsCache$,null),t=_.useDependency(a.LocaleService),r=_.useDependency(a.ICommandService),[i,s]=H.useState(!1),[l,c]=H.useState(!1),d=e==null?void 0:e.target.pastedRange,u=NS(d);if(!u||!o||u.positionX<50||u.positionY<30)return null;const h=i||l,g=S=>{c(!1),r.executeCommand(_l.id,{type:S})};return I.jsx("div",{className:"univer-absolute univer-inset-0 univer-z-10 univer-size-0",children:I.jsx("div",{className:"univer-absolute",style:{left:u.positionX+pa,top:u.positionY+pa},onMouseEnter:()=>s(!0),onMouseLeave:()=>s(!1),children:I.jsx(j.DropdownMenu,{align:"start",items:kS.map(S=>({type:"checkbox",value:S.value,label:t.t(S.label),checked:(e==null?void 0:e.pasteType)===ge[S.value],onSelect:()=>g(S.value)})),open:l,onOpenChange:c,children:I.jsxs("div",{className:j.clsx("univer-flex univer-items-center univer-gap-2 univer-rounded univer-p-1 dark:hover:!univer-bg-gray-800 hover:univer-bg-gray-100",j.borderClassName,{"univer-bg-gray-100 dark:!univer-bg-gray-800":l,"univer-bg-white dark:!univer-bg-gray-900":!l}),children:[I.jsx(Ya,{className:"univer-fill-primary-600 univer-text-gray-900 dark:!univer-text-white"}),h&&I.jsx(mn,{className:"dark:!univer-text-white"})]})})})})},VS=[Se.id,m.SetRangeValuesCommand.id,ke.id,m.MoveRangeMutation.id,m.RemoveRowMutation.id,m.RemoveColMutation.id,m.InsertRowMutation.id,m.InsertColMutation.id,m.MoveRowsMutation.id,m.MoveColsMutation.id,m.SetWorksheetColWidthMutation.id,m.SetWorksheetRowHeightMutation.id,m.SetSelectionsOperation.id,a.UndoCommandId];function WS(n,o,e,t,r){const i=[],s=[];if(t.copyType===tt.CUT){const{undos:l,redos:c}=US(n,o,r);i.push(...c),s.push(...l)}else{const{undos:l,redos:c}=Ac(o,e,r);i.push(...c),s.push(...l);const{undos:d,redos:u}=LS(o,e,r);i.push(...u),s.push(...d);const{undos:h,redos:g}=xc(o,n,e,r);i.push(...g),s.push(...h);const{undos:S,redos:f}=Oc(o,n,e,r,!0);i.push(...f),s.push(...S);const{undos:p,redos:v}=Ni(o,e,r);i.push(...v),s.push(...p)}return{undos:s,redos:i}}function US(n,o,e){let t=[],r=[];const{range:i,subUnitId:s,unitId:l}=n,{range:c,subUnitId:d}=o,u=c?gt(c):null,h=i?gt(i):null;if(h&&u){const g=e.get(a.IUniverInstanceService),S=e.get(m.SheetInterceptorService),f=g.getUniverSheetInstance(l),p=f==null?void 0:f.getSheetBySheetId(s),v=f==null?void 0:f.getSheetBySheetId(d);if(p&&v){const C=new a.ObjectMatrix,b=new a.ObjectMatrix,R=p.getCellMatrix(),w=v.getCellMatrix();a.Range.foreach(h,(B,F)=>{C.setValue(B,F,a.Tools.deepClone(R.getValue(B,F))),b.setValue(B,F,null)});const P=new a.ObjectMatrix;a.Range.foreach(u,(B,F)=>{P.setValue(B,F,a.Tools.deepClone(w.getValue(B,F)))});const y=new a.ObjectMatrix;a.Range.foreach(h,(B,F)=>{const X=a.cellToRange(B,F),K=a.Rectangle.getRelativeRange(X,h),te=a.Rectangle.getPositionRange(K,u);y.setValue(te.startRow,te.startColumn,R.getValue(B,F))});const M={fromRange:h,toRange:u,from:{value:b.getMatrix(),subUnitId:s},to:{value:y.getMatrix(),subUnitId:d},unitId:l},x={fromRange:u,toRange:h,from:{value:C.getMatrix(),subUnitId:s},to:{value:P.getMatrix(),subUnitId:d},unitId:l},A=S.onCommandExecute({id:m.MoveRangeCommand.id,params:{toRange:u,fromRange:h}}),D=p.getMergeData(),k=v.getMergeData(),V=D.filter(B=>a.Rectangle.intersects(B,h)),W=k.filter(B=>a.Rectangle.intersects(B,u)),N=V.map(B=>a.Rectangle.getRelativeRange(B,h)).map(B=>a.Rectangle.getPositionRange(B,u)),U=m.getAddMergeMutationRangeByType(N),L=[{id:m.RemoveWorksheetMergeMutation.id,params:{unitId:l,subUnitId:s,ranges:V}},{id:m.RemoveWorksheetMergeMutation.id,params:{unitId:l,subUnitId:s,ranges:W}},{id:m.AddWorksheetMergeMutation.id,params:{unitId:l,subUnitId:d,ranges:U}}],z=[{id:m.RemoveWorksheetMergeMutation.id,params:{unitId:l,subUnitId:d,ranges:U}},{id:m.AddWorksheetMergeMutation.id,params:{unitId:l,subUnitId:d,ranges:W}},{id:m.AddWorksheetMergeMutation.id,params:{unitId:l,subUnitId:s,ranges:V}}];t=[{id:m.MoveRangeMutation.id,params:M},...A.redos,...L,{id:m.SetSelectionsOperation.id,params:{unitId:l,subUnitId:d,selections:[{range:u}],type:m.SelectionMoveType.MOVE_END}}],r=[{id:m.MoveRangeMutation.id,params:x},...A.undos,...z,{id:m.SetSelectionsOperation.id,params:{unitId:l,subUnitId:s,type:m.SelectionMoveType.MOVE_END,selections:[{range:h}]}}]}}return{undos:r,redos:t}}function xc(n,o,e,t){var f;const{unitId:r,subUnitId:i,range:s}=n,l=(f=t.get(a.IUniverInstanceService).getUniverSheetInstance(r))==null?void 0:f.getSheetBySheetId(i),c=[],d=[],{mapFunc:u}=St([s]),h=new a.ObjectMatrix;e.forValue((p,v,C)=>{var P,y;const{row:b,col:R}=u(p,v),w={v:C.v,t:C.t};if(!C.p&&C.v&&!o){const M=l==null?void 0:l.getCellStyle(b,R);if(_o.isTextFormat((P=M==null?void 0:M.n)==null?void 0:P.pattern))w.t=a.CellValueType.STRING;else{const x=String(C.v),A=a.numfmt.parseValue(x);(A==null?void 0:A.v)!==void 0&&typeof A.v=="number"&&(!A.z&&a.willLoseNumericPrecision(x)?w.t=a.CellValueType.FORCE_STRING:w.v=A.v)}}if((y=C.p)!=null&&y.body&&xi(C.p.body)){const M=a.Tools.deepClone({p:C.p,v:C.v});h.setValue(b,R,M)}else h.setValue(b,R,a.Tools.deepClone(w))});const g={unitId:r,subUnitId:i,cellValue:a.Tools.deepClone(h.getMatrix())};c.push({id:m.SetRangeValuesMutation.id,params:g});const S=m.SetRangeValuesUndoMutationFactory(t,g);return d.push({id:m.SetRangeValuesMutation.id,params:S}),{undos:d,redos:c}}function Oc(n,o,e,t,r=!1){var p;const i=[],s=[],{unitId:l,subUnitId:c,range:d}=n,u=(p=t.get(a.IUniverInstanceService).getUniverSheetInstance(l))==null?void 0:p.getSheetBySheetId(c),h=new a.ObjectMatrix,{mapFunc:g}=St([d]);e.forValue((v,C,b)=>{var x,A;const R={s:Object.assign({},{...a.DEFAULT_STYLES,pd:T.DEFAULT_PADDING_DATA,bg:null,cl:null},b.s)},w=R.s.bd;w&&(Object.keys(w).length>0||(R.s.bd={b:null,l:null,r:null,t:null}));const{row:P,col:y}=g(v,C),M=u==null?void 0:u.getCellStyle(P,y);if(b.v&&!o&&_o.isTextFormat((x=M==null?void 0:M.n)==null?void 0:x.pattern))R.s||(R.s={}),R.s.n=M==null?void 0:M.n;else{const D=String(b.v),k=a.numfmt.parseValue(D);k!=null&&k.z&&(R.s||(R.s={}),typeof R.s=="object"&&((A=R.s)!=null&&A.n?R.s.n.pattern=k.z:R.s.n={pattern:k.z}))}h.setValue(P,y,R)});const S={unitId:l,subUnitId:c,cellValue:a.Tools.deepClone(h.getMatrix())};i.push({id:m.SetRangeValuesMutation.id,params:S});const f=m.SetRangeValuesUndoMutationFactory(t,S);return s.push({id:m.SetRangeValuesMutation.id,params:f}),{undos:s,redos:i}}function Ac(n,o,e){const t=[],r=[],i=new a.ObjectMatrix,{unitId:s,subUnitId:l,range:c}=n,{mapFunc:d}=St([c]);if(o.forEach((u,h)=>{Object.keys(h).forEach(g=>{const S=Number(g),{row:f,col:p}=d(u,S);i.setValue(f,p,{s:null})})}),i.getLength()>0){const u={subUnitId:l,unitId:s,cellValue:a.Tools.deepClone(i.getMatrix())};t.push({id:m.SetRangeValuesMutation.id,params:u});const h=m.SetRangeValuesUndoMutationFactory(e,u);r.push({id:m.SetRangeValuesMutation.id,params:h})}return{undos:r,redos:t}}function LS(n,o,e){const t=[],r=[],i=new a.ObjectMatrix,{unitId:s,subUnitId:l,range:c}=n,{mapFunc:d}=St([c]);if(o.forValue((u,h,g)=>{const{row:S,col:f}=d(u,h);i.setValue(S,f,{v:null,p:null})}),i.getLength()>0){const u={subUnitId:l,unitId:s,cellValue:a.Tools.deepClone(i.getMatrix())};t.push({id:m.SetRangeValuesMutation.id,params:u});const h=m.SetRangeValuesUndoMutationFactory(e,u);r.push({id:m.SetRangeValuesMutation.id,params:h})}return{undos:r,redos:t}}function Ni(n,o,e){const t=[],r=[],{unitId:i,subUnitId:s,range:l}=n,{startColumn:c,startRow:d,endColumn:u,endRow:h}=gt(l),g=[];o.forValue((b,R,w)=>{if(w.rowSpan&&w.rowSpan>1){const P=w.colSpan||1,y={startRow:d+b,endRow:d+b+w.rowSpan-1,startColumn:c+R,endColumn:c+R+P-1};g.push(y)}else if(w.colSpan&&w.colSpan>1){const P=w.rowSpan||1,y={startRow:d+b,endRow:d+b+P-1,startColumn:c+R,endColumn:c+R+w.colSpan-1};g.push(y)}});const f=e.get(a.IUniverInstanceService).getUniverSheetInstance(i),p=f==null?void 0:f.getSheetBySheetId(s);if(f&&p){const R=p.getMergeData().filter(y=>a.Rectangle.intersects({startRow:d,startColumn:c,endRow:h,endColumn:u},y)),w={unitId:i,subUnitId:s,ranges:R};t.push({id:m.RemoveWorksheetMergeMutation.id,params:w});const P=m.RemoveMergeUndoMutationFactory(e,w);r.push({id:m.AddWorksheetMergeMutation.id,params:P})}const v={unitId:i,subUnitId:s,ranges:g};g.length>0&&t.push({id:m.AddWorksheetMergeMutation.id,params:v});const C=m.AddMergeUndoMutationFactory(e,v);return g.length>0&&r.push({id:m.RemoveWorksheetMergeMutation.id,params:C}),{undos:r,redos:t}}function BS(n){if(!n.includes("\r")&&a.Tools.isLegalUrl(n)){const t=a.generateRandomId(),r=`${n}`,i={startIndex:0,endIndex:r.length-1,rangeId:t,rangeType:a.CustomRangeType.HYPERLINK,properties:{url:n}};return{dataStream:`${r}\r
20
20
  `,paragraphs:[{startIndex:r.length}],customRanges:[i]}}let o=n.replace(/(\r\n|\n)/g,"\r");o.endsWith(`\r
21
21
  `)||(o+=`\r
22
22
  `);const e=[];for(let t=0;t<o.length;t++)o[t]==="\r"&&e.push({startIndex:t});return{dataStream:o,paragraphs:e,sectionBreaks:[{startIndex:o.indexOf(`