@univerjs/sheets-ui 0.5.5-nightly.202501211606 → 0.5.5

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.
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const e = {
2
2
  spreadsheetLabel: "Spreadsheet",
3
3
  spreadsheetRightLabel: "more Sheets",
4
4
  toolbar: {
@@ -600,5 +600,5 @@ const locale = {
600
600
  }
601
601
  };
602
602
  export {
603
- locale as default
603
+ e as default
604
604
  };
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const e = {
2
2
  spreadsheetLabel: "برگه گسترده",
3
3
  spreadsheetRightLabel: "برگه‌های بیشتر",
4
4
  toolbar: {
@@ -600,5 +600,5 @@ const locale = {
600
600
  }
601
601
  };
602
602
  export {
603
- locale as default
603
+ e as default
604
604
  };
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const e = {
2
2
  spreadsheetLabel: "Feuille de calcul",
3
3
  spreadsheetRightLabel: "Plus de feuilles",
4
4
  toolbar: {
@@ -600,5 +600,5 @@ const locale = {
600
600
  }
601
601
  };
602
602
  export {
603
- locale as default
603
+ e as default
604
604
  };
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const e = {
2
2
  spreadsheetLabel: "Электронная таблица",
3
3
  spreadsheetRightLabel: "больше листов",
4
4
  toolbar: {
@@ -598,5 +598,5 @@ const locale = {
598
598
  }
599
599
  };
600
600
  export {
601
- locale as default
601
+ e as default
602
602
  };
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const n = {
2
2
  spreadsheetLabel: "Phụ lục",
3
3
  spreadsheetRightLabel: "Thêm Sheets",
4
4
  toolbar: {
@@ -598,5 +598,5 @@ const locale = {
598
598
  }
599
599
  };
600
600
  export {
601
- locale as default
601
+ n as default
602
602
  };
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const e = {
2
2
  spreadsheetLabel: "插件",
3
3
  spreadsheetRightLabel: "更多 Sheets",
4
4
  // toolbar.undo
@@ -599,5 +599,5 @@ const locale = {
599
599
  }
600
600
  };
601
601
  export {
602
- locale as default
602
+ e as default
603
603
  };
@@ -1,4 +1,4 @@
1
- const locale = {
1
+ const e = {
2
2
  spreadsheetLabel: "插件",
3
3
  spreadsheetRightLabel: "更多 Sheets",
4
4
  // toolbar.undo
@@ -599,5 +599,5 @@ const locale = {
599
599
  }
600
600
  };
601
601
  export {
602
- locale as default
602
+ e as default
603
603
  };
@@ -7,7 +7,6 @@ export interface ISheetPasteParams {
7
7
  export interface ISheetPasteByShortKeyParams {
8
8
  htmlContent?: string;
9
9
  textContent?: string;
10
- files?: File[];
11
10
  }
12
11
  export declare const SheetPasteCommand: IMultiCommand;
13
12
  export declare const SheetPasteShortKeyCommand: ICommand;
@@ -15,7 +15,6 @@ export declare class SheetClipboardController extends RxDisposable {
15
15
  protected readonly _uiPartsService: IUIPartsService;
16
16
  constructor(_injector: Injector, _currentUniverSheet: IUniverInstanceService, _renderManagerService: IRenderManagerService, _commandService: ICommandService, _contextService: IContextService, _configService: IConfigService, _sheetClipboardService: ISheetClipboardService, _messageService: IMessageService, _localService: LocaleService, _uiPartsService: IUIPartsService);
17
17
  private _pasteWithDoc;
18
- private _resolveClipboardFiles;
19
18
  private _init;
20
19
  private _initCopyingHooks;
21
20
  private _initPastingHook;
@@ -236,10 +236,9 @@ export interface IFSheetsUIEventNameMixin {
236
236
  readonly SheetEditEnded: 'SheetEditEnded';
237
237
  /**
238
238
  * Event fired when a cell is clicked
239
- * @see {@link ICellEventParam}
240
239
  * @example
241
240
  * ```ts
242
- * univerAPI.addEvent(univerAPI.Event.CellClicked, (params)=> {
241
+ * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.CellClicked, (params)=> {
243
242
  * const { worksheet, workbook, row, column, value, isZenEditor } = params;
244
243
  * });
245
244
  * ```
@@ -247,10 +246,9 @@ export interface IFSheetsUIEventNameMixin {
247
246
  readonly CellClicked: 'CellClicked';
248
247
  /**
249
248
  * Event fired when a cell is pointer down
250
- * @see {@link ICellEventParam}
251
249
  * @example
252
250
  * ```ts
253
- * univerAPI.addEvent(univerAPI.Event.CellPointerDown, (params)=> {
251
+ * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.CellPointerDown, (params)=> {
254
252
  * const { worksheet, workbook, row, column } = params;
255
253
  * });
256
254
  * ```
@@ -258,10 +256,9 @@ export interface IFSheetsUIEventNameMixin {
258
256
  readonly CellPointerDown: 'CellPointerDown';
259
257
  /**
260
258
  * Event fired when a cell is pointer up
261
- * @see {@link ICellEventParam}
262
259
  * @example
263
260
  * ```ts
264
- * univerAPI.addEvent(univerAPI.Event.CellPointerUp, (params)=> {
261
+ * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.CellPointerUp, (params)=> {
265
262
  * const { worksheet, workbook, row, column } = params;
266
263
  * });
267
264
  * ```
@@ -269,10 +266,9 @@ export interface IFSheetsUIEventNameMixin {
269
266
  readonly CellPointerUp: 'CellPointerUp';
270
267
  /**
271
268
  * Event fired when a cell is hovered
272
- * @see {@link ICellEventParam}
273
269
  * @example
274
270
  * ```ts
275
- * univerAPI.addEvent(univerAPI.Event.CellHover, (params)=> {
271
+ * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.CellHover, (params)=> {
276
272
  * const { worksheet, workbook, row, column } = params;
277
273
  * });
278
274
  * ```
@@ -280,10 +276,9 @@ export interface IFSheetsUIEventNameMixin {
280
276
  readonly CellHover: 'CellHover';
281
277
  /**
282
278
  * Event fired when move on spreadsheet cells
283
- * @see {@link ICellEventParam}
284
279
  * @example
285
280
  * ```ts
286
- * univerAPI.addEvent(univerAPI.Event.CellPointerMove, (params)=> {
281
+ * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.CellPointerMove, (params)=> {
287
282
  * const { worksheet, workbook, row, column } = params;
288
283
  * });
289
284
  * ```
@@ -379,7 +374,6 @@ export interface IFSheetsUIEventNameMixin {
379
374
  readonly ColumnHeaderHover: 'ColumnHeaderHover';
380
375
  /**
381
376
  * Event fired when drag over spreadsheet cells
382
- * @see {@link ICellEventParam}
383
377
  * @example
384
378
  * ```ts
385
379
  * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.DragOver, (params)=> {
@@ -390,7 +384,6 @@ export interface IFSheetsUIEventNameMixin {
390
384
  readonly DragOver: 'DragOver';
391
385
  /**
392
386
  * Event fired when drop on spreadsheet cells
393
- * @see {@link ICellEventParam}
394
387
  * @example
395
388
  * ```ts
396
389
  * univerAPI.getActiveWorkbook().addEvent(univerAPI.Event.Drop, (params)=> {
@@ -401,7 +394,6 @@ export interface IFSheetsUIEventNameMixin {
401
394
  readonly Drop: 'Drop';
402
395
  /**
403
396
  * Event fired when scroll spreadsheet.
404
- * @see {@link IScrollEventParam}
405
397
  * @example
406
398
  * ```ts
407
399
  * univerAPI.addEvent(univerAPI.Event.Scroll, (params)=> {
@@ -412,7 +404,6 @@ export interface IFSheetsUIEventNameMixin {
412
404
  readonly Scroll: 'Scroll';
413
405
  /**
414
406
  * Event fired when selection changed.
415
- * @see {@link ISelectionEventParam}
416
407
  * @example
417
408
  * ```ts
418
409
  * univerAPI.addEvent(univerAPI.Event.SelectionChanged, (p)=> {
@@ -423,7 +414,6 @@ export interface IFSheetsUIEventNameMixin {
423
414
  readonly SelectionChanged: 'SelectionChanged';
424
415
  /**
425
416
  * Event fired when selection move start
426
- * @see {@link ISelectionEventParam}
427
417
  * @example
428
418
  * ```ts
429
419
  * univerAPI.addEvent(univerAPI.Event.SelectionMoveStart, (p)=> {
@@ -434,7 +424,6 @@ export interface IFSheetsUIEventNameMixin {
434
424
  readonly SelectionMoveStart: 'SelectionMoveStart';
435
425
  /**
436
426
  * Event fired when selection move end
437
- * @see {@link ISelectionEventParam}
438
427
  * @example
439
428
  * ```ts
440
429
  * univerAPI.addEvent(univerAPI.Event.SelectionMoving, (p)=> {
@@ -445,7 +434,6 @@ export interface IFSheetsUIEventNameMixin {
445
434
  readonly SelectionMoving: 'SelectionMoving';
446
435
  /**
447
436
  * Event fired when selection move end
448
- * @see {@link ISelectionEventParam}
449
437
  * @example
450
438
  * ```ts
451
439
  * univerAPI.addEvent(univerAPI.Event.SelectionMoveEnd, (p)=> {
@@ -456,7 +444,6 @@ export interface IFSheetsUIEventNameMixin {
456
444
  readonly SelectionMoveEnd: 'SelectionMoveEnd';
457
445
  /**
458
446
  * Event fired when zoom changed
459
- * @see {@link ISheetZoomEvent}
460
447
  * @example
461
448
  * ```ts
462
449
  * univerAPI.addEvent(univerAPI.Event.SheetZoomChanged, (p)=> {
@@ -467,7 +454,6 @@ export interface IFSheetsUIEventNameMixin {
467
454
  readonly SheetZoomChanged: 'SheetZoomChanged';
468
455
  /**
469
456
  * Event fired before zoom changed
470
- * @see {@link ISheetZoomEvent}
471
457
  * @example
472
458
  * ```ts
473
459
  * univerAPI.addEvent(univerAPI.Event.BeforeSheetZoomChange, (p)=> {
@@ -478,7 +464,6 @@ export interface IFSheetsUIEventNameMixin {
478
464
  readonly BeforeSheetZoomChange: 'BeforeSheetZoomChange';
479
465
  /**
480
466
  * Event fired when sheet skeleton changed
481
- * @see {@link ISheetSkeletonChangedEvent}
482
467
  * @example
483
468
  * ```ts
484
469
  * univerAPI.addEvent(univerAPI.Event.SheetSkeletonChanged, (p)=> {
@@ -7,7 +7,7 @@ export interface IFUniverSheetsUIMixin {
7
7
  * @param {IColumnsHeaderCfgParam} cfg The configuration of the column header.
8
8
  * @example
9
9
  * ```typescript
10
- * univerAPI.customizeColumnHeader({ headerStyle: { fontColor: '#fff', size: 40, backgroundColor: '#4e69ee', fontSize: 9 }, columnsCfg: ['MokaII', undefined, null, { text: 'Size', textAlign: 'left' }] });
10
+ * univerAPI.customizeColumnHeader({ headerStyle: { backgroundColor: 'pink', fontSize: 9 }, columnsCfg: ['MokaII', undefined, null, { text: 'Size', textAlign: 'left' }] });
11
11
  * ```
12
12
  */
13
13
  customizeColumnHeader(cfg: IColumnsHeaderCfgParam): void;
@@ -49,9 +49,6 @@ export interface IFUniverSheetsUIMixin {
49
49
  export declare class FUniverSheetsUIMixin extends FUniver implements IFUniverSheetsUIMixin {
50
50
  private _initSheetUIEvent;
51
51
  _initObserverListener(injector: Injector): void;
52
- /**
53
- * @ignore
54
- */
55
52
  _initialize(injector: Injector): void;
56
53
  private _generateClipboardCopyParam;
57
54
  private _beforeClipboardChange;
@@ -31,7 +31,7 @@ export interface ISheetClipboardService {
31
31
  copy(): Promise<boolean>;
32
32
  cut(): Promise<boolean>;
33
33
  paste(item: ClipboardItem, pasteType?: string): Promise<boolean>;
34
- legacyPaste(html?: string, text?: string, files?: File[]): Promise<boolean>;
34
+ legacyPaste(html?: string, text?: string): Promise<boolean>;
35
35
  rePasteWithPasteType(type: IPasteHookKeyType): boolean;
36
36
  disposePasteOptionsCache(): void;
37
37
  generateCopyContent(workbookId: string, worksheetId: string, range: IRange): Nullable<ICopyContent>;
@@ -74,17 +74,14 @@ export declare class SheetClipboardService extends Disposable implements ISheetC
74
74
  copy(copyType?: COPY_TYPE): Promise<boolean>;
75
75
  cut(): Promise<boolean>;
76
76
  paste(item: ClipboardItem, pasteType?: "default-paste"): Promise<boolean>;
77
- legacyPaste(html?: string, text?: string, files?: File[]): Promise<boolean>;
77
+ legacyPaste(html?: string, text?: string): Promise<boolean>;
78
78
  rePasteWithPasteType(type: IPasteHookKeyType): boolean;
79
79
  updatePasteOptionsCache(cache: IPasteOptionCache | null): void;
80
80
  addClipboardHook(hook: ISheetClipboardHook): IDisposable;
81
81
  getClipboardHooks(): ISheetClipboardHook[];
82
82
  private _generateCopyContent;
83
83
  private _notifyClipboardHook;
84
- private _executePaste;
85
- private _pasteFiles;
86
84
  private _pastePlainText;
87
- private _pasteUnrecognized;
88
85
  private _pasteHTML;
89
86
  private _pasteExternal;
90
87
  private _pasteInternal;
@@ -83,7 +83,7 @@ export interface ISheetClipboardHook {
83
83
  * @param subUnitId
84
84
  * @param range
85
85
  */
86
- onBeforeCopy?(unitId: string, subUnitId: string, range: IRange, copyType: COPY_TYPE): void;
86
+ onBeforeCopy?(unitId: string, subUnitId: string, range: IRange): void;
87
87
  /**
88
88
  * Properties that would be appended to the td element.
89
89
  *
@@ -177,14 +177,6 @@ export interface ISheetClipboardHook {
177
177
  undos: IMutationInfo[];
178
178
  redos: IMutationInfo[];
179
179
  };
180
- onPasteFiles?(pasteTo: ISheetDiscreteRangeLocation, files: File[], payload: ICopyPastePayload): {
181
- undos: IMutationInfo[];
182
- redos: IMutationInfo[];
183
- };
184
- onPasteUnrecognized?(pasteTo: ISheetDiscreteRangeLocation): {
185
- undos: IMutationInfo[];
186
- redos: IMutationInfo[];
187
- };
188
180
  /**
189
181
  * Would be called after paste content has been written into Univer.
190
182
  * Features could do some cleaning up jobs here.
@@ -39,7 +39,6 @@ export interface ISheetSelectionRenderService {
39
39
  getCellWithCoordByOffset(x: number, y: number, skeleton?: SpreadsheetSkeleton): Nullable<ICellWithCoord>;
40
40
  setSingleSelectionEnabled(enabled: boolean): void;
41
41
  refreshSelectionMoveEnd(): void;
42
- resetSelectionsByModelData(selectionsWithStyleList: readonly ISelectionWithStyle[]): void;
43
42
  }
44
43
  export declare const ISheetSelectionRenderService: import('@wendellhu/redi').IdentifierDecorator<ISheetSelectionRenderService>;
45
44
  /**
@@ -1,5 +1,5 @@
1
1
  import { ICellWithCoord, IRangeWithCoord, Nullable, ThemeService, Disposable, RANGE_TYPE } from '@univerjs/core';
2
- import { Scene, SpreadsheetSkeleton, Group, Rect } from '@univerjs/engine-render';
2
+ import { Scene, Group, Rect } from '@univerjs/engine-render';
3
3
  import { ISelectionStyle, ISelectionWidgetConfig, ISelectionWithCoord } from '@univerjs/sheets';
4
4
  import { ISelectionShapeExtensionOption, SelectionShapeExtension } from './selection-shape-extension';
5
5
  import { Subject } from 'rxjs';
@@ -175,7 +175,7 @@ export declare class SelectionControl extends Disposable {
175
175
  * Update range and primary range and style.
176
176
  * @param selectionWthCoord
177
177
  */
178
- updateRangeBySelectionWithCoord(selectionWthCoord: ISelectionWithCoord, sk?: SpreadsheetSkeleton): void;
178
+ updateRangeBySelectionWithCoord(selectionWthCoord: ISelectionWithCoord): void;
179
179
  /**
180
180
  * Update selection model with new range & primary cell(aka: highlight/current), also update row/col selection size & style.
181
181
  *
@@ -1,5 +1,5 @@
1
1
  import { IRange, IRangeWithCoord, Nullable, Workbook, Disposable, Injector } from '@univerjs/core';
2
- import { IRender, IRenderContext, IRenderModule, SpreadsheetSkeleton } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule, SpreadsheetSkeleton } from '@univerjs/engine-render';
3
3
  export interface ISheetSkeletonManagerParam {
4
4
  unitId: string;
5
5
  sheetId: string;
@@ -58,5 +58,4 @@ export declare class SheetSkeletonManagerService extends Disposable implements I
58
58
  attachRangeWithCoord(range: IRange): Nullable<IRangeWithCoord>;
59
59
  private _getSkeleton;
60
60
  private _buildSkeleton;
61
- setColumnHeaderSize(sheetId: string, render: IRender, size: number): void;
62
61
  }
package/lib/umd/facade.js CHANGED
@@ -1 +1 @@
1
- (function(f,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/engine-render"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("@univerjs/sheets/facade"),require("@univerjs/ui"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/docs","@univerjs/engine-render","@univerjs/sheets","@univerjs/sheets-ui","@univerjs/sheets/facade","@univerjs/ui","rxjs"],s):(f=typeof globalThis<"u"?globalThis:f||self,s(f.UniverSheetsUiFacade={},f.UniverCore,f.UniverDocs,f.UniverEngineRender,f.UniverSheets,f.UniverSheetsUi,f.UniverSheetsFacade,f.UniverUi,f.rxjs))})(this,function(f,s,F,b,R,c,I,S,C){"use strict";class N extends s.FUniver{_initSheetUIEvent(e){const r=e.get(s.ICommandService);this.disposeWithMe(r.beforeCommandExecuted(t=>{if(t.id===c.SetCellEditVisibleOperation.id){if(!this._eventListend(this.Event.BeforeSheetEditStart)&&!this._eventListend(this.Event.BeforeSheetEditEnd))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),u=e.get(s.IUniverInstanceService),m=t.params,{visible:v,keycode:g,eventType:E}=m,h=l.getEditLocation();if(v){const _={row:h.row,column:h.column,eventType:E,keycode:g,workbook:o,worksheet:a,isZenEditor:!1};if(this.fireEvent(this.Event.BeforeSheetEditStart,_),_.cancel)throw new s.CanceledError}else{const _={row:h.row,column:h.column,eventType:E,keycode:g,workbook:o,worksheet:a,isZenEditor:!1,value:s.RichTextValue.create(u.getUnit(s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isConfirm:g!==S.KeyCode.ESC};if(this.fireEvent(this.Event.BeforeSheetEditEnd,_),_.cancel)throw new s.CanceledError}}if(t.id===c.SetZoomRatioCommand.id){if(!this._eventListend(this.Event.BeforeSheetZoomChange))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i;this.fireEvent(this.Event.BeforeSheetZoomChange,{zoom:t.params.zoomRatio,workbook:o,worksheet:a})}})),this.disposeWithMe(r.onCommandExecuted(t=>{if(t.id===c.SetCellEditVisibleOperation.id){if(!this._eventListend(this.Event.SheetEditStarted)&&!this._eventListend(this.Event.SheetEditEnded))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),u=t.params,{visible:m,keycode:v,eventType:g}=u,E=l.getEditLocation();if(m){const h={row:E.row,column:E.column,eventType:g,keycode:v,workbook:o,worksheet:a,isZenEditor:!1};this.fireEvent(this.Event.SheetEditStarted,h)}else{const h={row:E.row,column:E.column,eventType:g,keycode:v,workbook:o,worksheet:a,isZenEditor:!1,isConfirm:v!==S.KeyCode.ESC};this.fireEvent(this.Event.SheetEditEnded,h)}}if(t.id===F.RichTextEditingMutation.id){if(!this._eventListend(this.Event.SheetEditChanging))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),u=e.get(s.IUniverInstanceService),m=t.params;if(!l.isVisible().visible)return;const{unitId:v}=m;if(v===s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY){const{row:g,column:E}=l.getEditLocation(),h={workbook:o,worksheet:a,row:g,column:E,value:s.RichTextValue.create(u.getUnit(s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isZenEditor:!1};this.fireEvent(this.Event.SheetEditChanging,h)}}if(t.id===c.SetZoomRatioCommand.id){if(!this._eventListend(this.Event.SheetZoomChanged))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i;this.fireEvent(this.Event.SheetZoomChanged,{zoom:a.getZoom(),workbook:o,worksheet:a})}})),this._initObserverListener(e)}_initObserverListener(e){const t=e.get(s.IUniverInstanceService).getFocusedUnit(),i=t==null?void 0:t.getUnitId(),o=e.get(b.IRenderManagerService);if(i){const v=e.get(s.LifecycleService),g=new s.DisposableCollection;this.disposeWithMe(v.lifecycle$.subscribe(E=>{var M,D,p,w,k,T,B,L,x,A,O,U,W,$,j;if(E<s.LifecycleStages.Rendered)return;g.dispose();const h=e.get(c.HoverManagerService),_=e.get(c.DragManagerService);h&&(g.add((M=h.currentClickedCell$)==null?void 0:M.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellClicked))return;const d=this.getSheetTarget(n.location.unitId,n.location.subUnitId);d&&this.fireEvent(this.Event.CellClicked,{...d,...n,row:n.location.row,column:n.location.col})})),g.add((D=h.currentRichText$)==null?void 0:D.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellHover))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellHover,{...d,...n,row:n.row,column:n.col})})),g.add((p=h.currentPointerDownCell$)==null?void 0:p.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellPointerDown))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerDown,{...d,...n,row:n.row,column:n.col})})),g.add((w=h.currentPointerUpCell$)==null?void 0:w.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellPointerUp))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerUp,{...d,...n,row:n.row,column:n.col})})),g.add((k=h.currentCellPosWithEvent$)==null?void 0:k.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellPointerMove))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerMove,{...d,...n,row:n.row,column:n.col})})),g.add((T=_.currentCell$)==null?void 0:T.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.DragOver))return;const d=this.getSheetTarget(n.location.unitId,n.location.subUnitId);d&&this.fireEvent(this.Event.DragOver,{...d,...n,row:n.location.row,column:n.location.col})})),g.add((B=_.endCell$)==null?void 0:B.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.Drop))return;const d=this.getSheetTarget(n.location.unitId,n.location.subUnitId);d&&this.fireEvent(this.Event.Drop,{...d,...n,row:n.location.row,column:n.location.col})})),g.add((L=h.currentRowHeaderClick$)==null?void 0:L.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderClick))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderClick,{...d,row:n.index})})),g.add((x=h.currentRowHeaderPointerDown$)==null?void 0:x.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderPointerDown))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderPointerDown,{...d,row:n.index})})),g.add((A=h.currentRowHeaderPointerUp$)==null?void 0:A.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderPointerUp))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderPointerUp,{...d,row:n.index})})),g.add((O=h.currentHoveredRowHeader$)==null?void 0:O.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderHover))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderHover,{...d,row:n.index})})),g.add((U=h.currentColHeaderClick$)==null?void 0:U.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderClick))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderClick,{...d,column:n.index})})),g.add((W=h.currentColHeaderPointerDown$)==null?void 0:W.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderPointerDown))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderPointerDown,{...d,column:n.index})})),g.add(($=h.currentColHeaderPointerUp$)==null?void 0:$.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderPointerUp))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderPointerUp,{...d,column:n.index})})),g.add((j=h.currentHoveredColHeader$)==null?void 0:j.pipe(C.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderHover))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderHover,{...d,column:n.index})})))})),this.disposeWithMe(g)}const a=new Map;let l;const u=e.get(s.LifecycleService),m=C.combineLatest([o.created$,u.lifecycle$]);this.disposeWithMe(m.subscribe(([v,g])=>{var D;if(v.type===s.UniverInstanceType.UNIVER_SHEET&&(l=v),g<=s.LifecycleStages.Rendered)return;const E=new s.DisposableCollection;if(!l)return;const h=this.getWorkbook(l.unitId);if(!h)return;a.get(l.unitId)&&((D=a.get(l.unitId))==null||D.dispose()),a.set(l.unitId,E);const _=l.with(c.SheetScrollManagerService);E.add(_.validViewportScrollInfo$.subscribe(p=>{p&&this._eventListend(this.Event.Scroll)&&this.fireEvent(this.Event.Scroll,{workbook:h,worksheet:h.getActiveSheet(),...p})}));const M=l.with(R.SheetsSelectionsService);E.add(M.selectionMoveStart$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionMoveStart)&&this.fireEvent(this.Event.SelectionMoveStart,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),E.add(M.selectionMoving$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionMoving)&&this.fireEvent(this.Event.SelectionMoving,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),E.add(M.selectionMoveEnd$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionMoveEnd)&&this.fireEvent(this.Event.SelectionMoveEnd,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),E.add(M.selectionChanged$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionChanged)&&this.fireEvent(this.Event.SelectionChanged,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),l=null,this.disposeWithMe(E)})),this.disposeWithMe(o.disposed$.subscribe(v=>{var g;(g=a.get(v))==null||g.dispose(),a.delete(v)})),this.disposeWithMe(()=>{a.forEach(v=>{v.dispose()})})}_initialize(e){this._initSheetUIEvent(e);const r=e.get(s.ICommandService);this.disposeWithMe(r.beforeCommandExecuted(t=>{switch(t.id){case S.CopyCommand.id:case S.CutCommand.id:this._beforeClipboardChange();break;case c.SheetPasteShortKeyCommand.id:this._beforeClipboardPaste(t.params);break}})),this.disposeWithMe(r.onCommandExecuted(t=>{if(R.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(t.id)>-1){if(!this._eventListend(this.Event.SheetSkeletonChanged))return;const i=this.getActiveSheet();if(!i)return;const o=R.getSkeletonChangedEffectedRange(t).map(a=>{var l,u;return(u=(l=this.getWorkbook(a.unitId))==null?void 0:l.getSheetBySheetId(a.subUnitId))==null?void 0:u.getRange(a.range)}).filter(Boolean);if(!o.length)return;this.fireEvent(this.Event.SheetSkeletonChanged,{workbook:i.workbook,worksheet:i.worksheet,payload:t,skeleton:i.worksheet.getSkeleton(),effectedRanges:o});return}switch(t.id){case S.CopyCommand.id:case S.CutCommand.id:this._clipboardChanged();break;case c.SheetPasteShortKeyCommand.id:this._clipboardPaste();break;case S.PasteCommand.id:this._clipboardPasteAsync();break}})),this.disposeWithMe(r.beforeCommandExecuted(async t=>{switch(t.id){case S.PasteCommand.id:await this._beforeClipboardPasteAsync();break}}))}_generateClipboardCopyParam(){const e=this.getActiveWorkbook(),r=e==null?void 0:e.getActiveSheet(),t=e==null?void 0:e.getActiveRange();if(!e||!r||!t)return;const o=this._injector.get(c.ISheetClipboardService).generateCopyContent(e.getId(),r.getSheetId(),t.getRange());if(!o)return;const{html:a,plain:l}=o;return{workbook:e,worksheet:r,text:l,html:a,fromSheet:r,fromRange:t}}_beforeClipboardChange(){if(!this.hasEventCallback(this.Event.BeforeClipboardChange))return;const e=this._generateClipboardCopyParam();if(e&&(this.fireEvent(this.Event.BeforeClipboardChange,e),e.cancel))throw new Error("Before clipboard change is canceled")}_clipboardChanged(){if(!this.hasEventCallback(this.Event.ClipboardChanged))return;const e=this._generateClipboardCopyParam();if(e&&(this.fireEvent(this.Event.ClipboardChanged,e),e.cancel))throw new Error("Clipboard changed is canceled")}_generateClipboardPasteParam(e){if(!e)return;const{htmlContent:r,textContent:t}=e,i=this.getActiveWorkbook(),o=i==null?void 0:i.getActiveSheet();return!i||!o?void 0:{workbook:i,worksheet:o,text:t,html:r}}async _generateClipboardPasteParamAsync(){const e=this.getActiveWorkbook(),r=e==null?void 0:e.getActiveSheet();if(!e||!r)return;const o=(await this._injector.get(S.IClipboardInterfaceService).read())[0];let a;if(o){const l=o.types,u=l.indexOf(S.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(S.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(v=>v&&v.text()):"",m=l.indexOf(S.HTML_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(S.HTML_CLIPBOARD_MIME_TYPE).then(v=>v&&v.text()):"";a={workbook:e,worksheet:r,text:u,html:m}}return a}_beforeClipboardPaste(e){if(!this.hasEventCallback(this.Event.BeforeClipboardPaste))return;const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.BeforeClipboardPaste,r),r.cancel))throw new Error("Before clipboard paste is canceled")}_clipboardPaste(e){if(!this.hasEventCallback(this.Event.BeforeClipboardPaste))return;const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.BeforeClipboardPaste,r),r.cancel))throw new Error("Clipboard pasted is canceled")}async _beforeClipboardPasteAsync(){if(!this.hasEventCallback(this.Event.BeforeClipboardPaste))return;if(!S.supportClipboardAPI()){this._injector.get(s.ILogService).warn("[Facade]: The navigator object only supports the browser environment");return}const e=await this._generateClipboardPasteParamAsync();if(e&&(this.fireEvent(this.Event.BeforeClipboardPaste,e),e.cancel))throw new Error("Before clipboard paste is canceled")}async _clipboardPasteAsync(){if(!this.hasEventCallback(this.Event.ClipboardPasted))return;if(!S.supportClipboardAPI()){this._injector.get(s.ILogService).warn("[Facade]: The navigator object only supports the browser environment");return}const e=await this._generateClipboardPasteParamAsync();if(e&&(this.fireEvent(this.Event.ClipboardPasted,e),e.cancel))throw new Error("Clipboard pasted is canceled")}customizeColumnHeader(e){var m,v;const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId(),i=this._injector.get(b.IRenderManagerService),o=r.getActiveSheet(),a=o.getSheetId(),l=i.getRenderById(t);l&&((m=e.headerStyle)!=null&&m.size)&&(l.with(c.SheetSkeletonManagerService).setColumnHeaderSize(a,l,(v=e.headerStyle)==null?void 0:v.size),o==null||o.refreshCanvas()),this._getSheetRenderComponent(t,c.SHEET_VIEW_KEY.COLUMN).setCustomHeader(e),o==null||o.refreshCanvas()}customizeRowHeader(e){const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId();this._getSheetRenderComponent(t,c.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}registerSheetRowHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.ROW),i=t.register(...r);return s.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetColumnHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.COLUMN),i=t.register(...r);return s.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetMainExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.MAIN),i=t.register(...r);return s.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}_getSheetRenderComponent(e,r){const i=this._injector.get(b.IRenderManagerService).getRenderById(e);if(!i)throw new Error(`Render Unit with unitId ${e} not found`);const{components:o}=i,a=o.get(r);if(!a)throw new Error("Render component not found");return a}getSheetHooks(){return this._injector.createInstance(I.FSheetHooks)}}s.FUniver.extend(N);class V extends I.FWorkbook{openSiderbar(e){return this._logDeprecation("openSiderbar"),this._injector.get(S.ISidebarService).open(e)}openDialog(e){this._logDeprecation("openDialog");const t=this._injector.get(S.IDialogService).open({...e,onClose:()=>{t.dispose()}});return t}_logDeprecation(e){this._injector.get(s.ILogService).warn("[FWorkbook]",`${e} is deprecated. Please use the function of the same name on "FUniver".`)}generateCellParams(e){const r=this.getActiveSheet();return{row:e.row,column:e.col,workbook:this,worksheet:r}}onCellClick(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentClickedCell$.pipe(C.filter(t=>!!t)).subscribe(t=>{e(t)}))}onCellHover(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentRichText$.pipe(C.filter(t=>!!t)).subscribe(e))}onCellPointerDown(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentPointerDownCell$.subscribe(e))}onCellPointerUp(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentPointerUpCell$.subscribe(e))}onCellPointerMove(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentCellPosWithEvent$.pipe(C.filter(t=>!!t)).subscribe(t=>{e(t,t.event)}))}onDragOver(e){const r=this._injector.get(c.DragManagerService);return s.toDisposable(r.currentCell$.pipe(C.filter(t=>!!t)).subscribe(t=>{e(t)}))}onDrop(e){const r=this._injector.get(c.DragManagerService);return s.toDisposable(r.endCell$.pipe(C.filter(t=>!!t)).subscribe(t=>{e(t)}))}startEditing(){return this._injector.get(s.ICommandService).syncExecuteCommand(c.SetCellEditVisibleOperation.id,{eventType:b.DeviceInputEventType.Dblclick,unitId:this._workbook.getUnitId(),visible:!0})}async endEditing(e){return this._injector.get(s.ICommandService).syncExecuteCommand(c.SetCellEditVisibleOperation.id,{eventType:b.DeviceInputEventType.Keyboard,keycode:e?S.KeyCode.ENTER:S.KeyCode.ESC,visible:!1,unitId:this._workbook.getUnitId()}),await s.awaitTime(0),!0}endEditingAsync(e=!0){return this.endEditing(e)}getScrollStateBySheetId(e){const r=this._workbook.getUnitId(),i=this._injector.get(b.IRenderManagerService).getRenderById(r);return i?i.with(c.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:e}):null}disableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(b.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).disableSelection(),this}enableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(b.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).enableSelection(),this}transparentSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(b.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).transparentSelection(),this}showSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(b.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).showSelection(),this}}I.FWorkbook.extend(V);class K extends I.FWorksheet{refreshCanvas(){const e=this._injector.get(b.IRenderManagerService),r=this._fWorkbook.id,t=e.getRenderById(r);if(!t)throw new Error(`Render Unit with unitId ${r} not found`);t.with(c.SheetSkeletonManagerService).reCalculate();const i=t.mainComponent;if(!i)throw new Error("Main component not found");return i.makeDirty(),this}zoom(e){return this._injector.get(s.ICommandService).syncExecuteCommand(c.ChangeZoomRatioCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),zoomRatio:e}),this}getZoom(){return this._worksheet.getZoomRatio()}getVisibleRange(){const e=this._workbook.getUnitId(),t=this._injector.get(b.IRenderManagerService).getRenderById(e);let i={startColumn:0,startRow:0,endColumn:0,endRow:0};if(!t)return i;const a=t.with(c.SheetSkeletonManagerService).getCurrentSkeleton();if(!a)return i;const l=a==null?void 0:a.getVisibleRanges();if(!l)return i;i=a.getVisibleRangeByViewport(b.SHEET_VIEWPORT_KEY.VIEW_MAIN);for(const[u,m]of l)b.sheetContentViewportKeys.indexOf(u)!==-1&&(i.startColumn=Math.min(i.startColumn,m.startColumn),i.startRow=Math.min(i.startRow,m.startRow),i.endColumn=Math.max(i.endColumn,m.endColumn),i.endRow=Math.max(i.endRow,m.endRow));return i}scrollToCell(e,r){const t=this._workbook.getUnitId(),o=this._injector.get(b.IRenderManagerService).getRenderById(t);return o&&(o==null?void 0:o.with(c.SheetsScrollRenderController)).scrollToCell(e,r),this}getScrollState(){const e={offsetX:0,offsetY:0,sheetViewStartColumn:0,sheetViewStartRow:0},r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(b.IRenderManagerService).getRenderById(r);return o&&o.with(c.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:t})||e}onScroll(e){var o;const r=this._workbook.getUnitId(),i=(o=this._injector.get(b.IRenderManagerService).getRenderById(r))==null?void 0:o.with(c.SheetScrollManagerService);if(i){const a=i.validViewportScrollInfo$.subscribe(l=>{e(l)});return s.toDisposable(a)}return s.toDisposable(()=>{})}getSkeleton(){var r,t;const e=(r=this._injector.get(b.IRenderManagerService).getRenderById(this._workbook.getUnitId()))==null?void 0:r.with(c.SheetSkeletonManagerService);return(t=e==null?void 0:e.getWorksheetSkeleton(this._worksheet.getSheetId()))==null?void 0:t.skeleton}setColumnAutoWidth(e,r){const t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=[{startColumn:e,endColumn:e+r-1,startRow:0,endRow:this._worksheet.getRowCount()-1}];return this._commandService.syncExecuteCommand(c.SetWorksheetColAutoWidthCommand.id,{unitId:t,subUnitId:i,ranges:o}),this}}I.FWorksheet.extend(K);class Y extends I.FPermission{setPermissionDialogVisible(e){this._permissionService.setShowComponents(e)}}I.FPermission.extend(Y);class Z extends I.FSheetHooks{onCellPointerMove(e){return s.toDisposable(this._injector.get(c.HoverManagerService).currentPosition$.subscribe(e))}onCellPointerOver(e){return s.toDisposable(this._injector.get(c.HoverManagerService).currentCell$.subscribe(e))}onCellDragOver(e){return s.toDisposable(this._injector.get(c.DragManagerService).currentCell$.subscribe(e))}onCellDrop(e){return s.toDisposable(this._injector.get(c.DragManagerService).endCell$.subscribe(e))}onCellRender(e,r=s.InterceptorEffectEnum.Style,t=R.InterceptCellContentPriority.DATA_VALIDATION){return this._injector.get(R.SheetInterceptorService).intercept(R.INTERCEPTOR_POINT.CELL_CONTENT,{effect:r,handler:(i,o,a)=>a({...i,customRender:[...(i==null?void 0:i.customRender)||[],...e||[]]}),priority:t})}onBeforeCellEdit(e){return this._injector.get(s.ICommandService).beforeCommandExecuted(r=>{const t=r.params;r.id===c.SetCellEditVisibleOperation.id&&t.visible&&e(t)})}onAfterCellEdit(e){return this._injector.get(s.ICommandService).onCommandExecuted(r=>{const t=r.params;r.id===c.SetCellEditVisibleOperation.id&&!t.visible&&e(t)})}}I.FSheetHooks.extend(Z);const y={CellClicked:"CellClicked",CellPointerDown:"CellPointerDown",CellPointerUp:"CellPointerUp",CellPointerMove:"CellPointerMove",CellHover:"CellHover",DragOver:"DragOver",Drop:"Drop",Scroll:"Scroll",SelectionMoveStart:"SelectionMoveStart",SelectionMoving:"SelectionMoving",SelectionMoveEnd:"SelectionMoveEnd",SelectionChanged:"SelectionChanged"};class z extends s.FEventName{get BeforeClipboardChange(){return"BeforeClipboardChange"}get ClipboardChanged(){return"ClipboardChanged"}get BeforeClipboardPaste(){return"BeforeClipboardPaste"}get ClipboardPasted(){return"ClipboardPasted"}get BeforeSheetEditStart(){return"BeforeSheetEditStart"}get SheetEditStarted(){return"SheetEditStarted"}get SheetEditChanging(){return"SheetEditChanging"}get BeforeSheetEditEnd(){return"BeforeSheetEditEnd"}get SheetEditEnded(){return"SheetEditEnded"}get CellClicked(){return y.CellClicked}get CellHover(){return y.CellHover}get CellPointerDown(){return y.CellPointerDown}get CellPointerUp(){return y.CellPointerUp}get CellPointerMove(){return y.CellPointerMove}get DragOver(){return"DragOver"}get Drop(){return"Drop"}get Scroll(){return"Scroll"}get SelectionMoveStart(){return"SelectionMoveStart"}get SelectionChanged(){return"SelectionChanged"}get SelectionMoving(){return"SelectionMoving"}get SelectionMoveEnd(){return"SelectionMoveEnd"}get RowHeaderClick(){return"RowHeaderClick"}get RowHeaderPointerDown(){return"RowHeaderPointerDown"}get RowHeaderPointerUp(){return"RowHeaderPointerUp"}get RowHeaderHover(){return"RowHeaderHover"}get ColumnHeaderClick(){return"ColumnHeaderClick"}get ColumnHeaderPointerDown(){return"ColumnHeaderPointerDown"}get ColumnHeaderPointerUp(){return"ColumnHeaderPointerUp"}get ColumnHeaderHover(){return"ColumnHeaderHover"}get SheetSkeletonChanged(){return"SheetSkeletonChanged"}}s.FEventName.extend(z);class q extends I.FRange{getCell(){var l;const e=this._injector.get(b.IRenderManagerService),r=this._injector.get(s.ILogService),t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=e.getRenderById(t),a=(l=o==null?void 0:o.with(c.SheetSkeletonManagerService).getWorksheetSkeleton(i))==null?void 0:l.skeleton;if(!a)throw r.error("[Facade]: `FRange.getCell` can only be called in current worksheet"),new Error("`FRange.getCell` can only be called in current worksheet");return a.getCellWithCoordByIndex(this._range.startRow,this._range.startColumn)}getCellRect(){const{startX:e,startY:r,endX:t,endY:i}=this.getCell(),o={x:e,y:r,width:t-e,height:i-r,top:r,left:e,bottom:i,right:t};return{...o,toJSON:()=>JSON.stringify(o)}}generateHTML(){var r;const e=this._injector.get(c.ISheetClipboardService).generateCopyContent(this._workbook.getUnitId(),this._worksheet.getSheetId(),this._range);return(r=e==null?void 0:e.html)!=null?r:""}attachPopup(e){var a,l,u;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(u=e.offset)!=null?u:[0,0];const{key:r,disposableCollection:t}=H(e,this._injector.get(S.ComponentManager)),o=this._injector.get(c.SheetCanvasPopManagerService).attachPopupToCell(this._range.startRow,this._range.startColumn,{...e,componentKey:r},this.getUnitId(),this._worksheet.getSheetId());return o?(t.add(o),t):(t.dispose(),null)}attachAlertPopup(e){const r=this._injector.get(c.CellAlertManagerService),t={workbook:this._workbook,worksheet:this._worksheet,row:this._range.startRow,col:this._range.startColumn,unitId:this.getUnitId(),subUnitId:this._worksheet.getSheetId()};return r.showAlert({...e,location:t}),{dispose:()=>{r.removeAlert(e.key)}}}attachRangePopup(e){var a,l,u;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(u=e.offset)!=null?u:[0,0];const{key:r,disposableCollection:t}=H(e,this._injector.get(S.ComponentManager)),o=this._injector.get(c.SheetCanvasPopManagerService).attachRangePopup(this._range,{...e,componentKey:r},this.getUnitId(),this._worksheet.getSheetId());return o?(t.add(o),t):(t.dispose(),null)}highlight(e,r){const t=this._injector.get(c.IMarkSelectionService),i=t.addShape({range:this._range,style:e,primary:r});if(!i)throw new Error("Failed to highlight current range");return s.toDisposable(()=>{t.removeShape(i)})}}I.FRange.extend(q);function H(P,e){const{componentKey:r,isVue3:t}=P;let i;const o=new s.DisposableCollection;return typeof r=="string"?i=r:(i=`External_${s.generateRandomId(6)}`,o.add(e.register(i,r,{framework:t?"vue3":"react"}))),{key:i,disposableCollection:o}}f.transformComponentKey=H,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})});
1
+ (function(f,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/engine-render"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("@univerjs/sheets/facade"),require("@univerjs/ui"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/docs","@univerjs/engine-render","@univerjs/sheets","@univerjs/sheets-ui","@univerjs/sheets/facade","@univerjs/ui","rxjs"],s):(f=typeof globalThis<"u"?globalThis:f||self,s(f.UniverSheetsUiFacade={},f.UniverCore,f.UniverDocs,f.UniverEngineRender,f.UniverSheets,f.UniverSheetsUi,f.UniverSheetsFacade,f.UniverUi,f.rxjs))})(this,function(f,s,F,E,R,c,I,u,S){"use strict";class N extends s.FUniver{_initSheetUIEvent(e){const r=e.get(s.ICommandService);this.disposeWithMe(r.beforeCommandExecuted(t=>{if(t.id===c.SetCellEditVisibleOperation.id){if(!this._eventListend(this.Event.BeforeSheetEditStart)&&!this._eventListend(this.Event.BeforeSheetEditEnd))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),C=e.get(s.IUniverInstanceService),m=t.params,{visible:v,keycode:g,eventType:b}=m,h=l.getEditLocation();if(v){const _={row:h.row,column:h.column,eventType:b,keycode:g,workbook:o,worksheet:a,isZenEditor:!1};if(this.fireEvent(this.Event.BeforeSheetEditStart,_),_.cancel)throw new s.CanceledError}else{const _={row:h.row,column:h.column,eventType:b,keycode:g,workbook:o,worksheet:a,isZenEditor:!1,value:s.RichTextValue.create(C.getUnit(s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isConfirm:g!==u.KeyCode.ESC};if(this.fireEvent(this.Event.BeforeSheetEditEnd,_),_.cancel)throw new s.CanceledError}}if(t.id===c.SetZoomRatioCommand.id){if(!this._eventListend(this.Event.BeforeSheetZoomChange))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i;this.fireEvent(this.Event.BeforeSheetZoomChange,{zoom:t.params.zoomRatio,workbook:o,worksheet:a})}})),this.disposeWithMe(r.onCommandExecuted(t=>{if(t.id===c.SetCellEditVisibleOperation.id){if(!this._eventListend(this.Event.SheetEditStarted)&&!this._eventListend(this.Event.SheetEditEnded))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),C=t.params,{visible:m,keycode:v,eventType:g}=C,b=l.getEditLocation();if(m){const h={row:b.row,column:b.column,eventType:g,keycode:v,workbook:o,worksheet:a,isZenEditor:!1};this.fireEvent(this.Event.SheetEditStarted,h)}else{const h={row:b.row,column:b.column,eventType:g,keycode:v,workbook:o,worksheet:a,isZenEditor:!1,isConfirm:v!==u.KeyCode.ESC};this.fireEvent(this.Event.SheetEditEnded,h)}}if(t.id===F.RichTextEditingMutation.id){if(!this._eventListend(this.Event.SheetEditChanging))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),C=e.get(s.IUniverInstanceService),m=t.params;if(!l.isVisible().visible)return;const{unitId:v}=m;if(v===s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY){const{row:g,column:b}=l.getEditLocation(),h={workbook:o,worksheet:a,row:g,column:b,value:s.RichTextValue.create(C.getUnit(s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isZenEditor:!1};this.fireEvent(this.Event.SheetEditChanging,h)}}if(t.id===c.SetZoomRatioCommand.id){if(!this._eventListend(this.Event.SheetZoomChanged))return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i;this.fireEvent(this.Event.SheetZoomChanged,{zoom:a.getZoom(),workbook:o,worksheet:a})}})),this._initObserverListener(e)}_initObserverListener(e){const t=e.get(s.IUniverInstanceService).getFocusedUnit(),i=t==null?void 0:t.getUnitId(),o=e.get(E.IRenderManagerService);if(i){const v=e.get(s.LifecycleService),g=new s.DisposableCollection;this.disposeWithMe(v.lifecycle$.subscribe(b=>{var M,D,p,w,k,T,L,B,x,A,O,U,W,$,j;if(b<s.LifecycleStages.Rendered)return;g.dispose();const h=e.get(c.HoverManagerService),_=e.get(c.DragManagerService);h&&(g.add((M=h.currentClickedCell$)==null?void 0:M.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellClicked))return;const d=this.getSheetTarget(n.location.unitId,n.location.subUnitId);d&&this.fireEvent(this.Event.CellClicked,{...d,...n,row:n.location.row,column:n.location.col})})),g.add((D=h.currentRichText$)==null?void 0:D.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellHover))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellHover,{...d,...n,row:n.row,column:n.col})})),g.add((p=h.currentPointerDownCell$)==null?void 0:p.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellPointerDown))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerDown,{...d,...n,row:n.row,column:n.col})})),g.add((w=h.currentPointerUpCell$)==null?void 0:w.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellPointerUp))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerUp,{...d,...n,row:n.row,column:n.col})})),g.add((k=h.currentCellPosWithEvent$)==null?void 0:k.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.CellPointerMove))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerMove,{...d,...n,row:n.row,column:n.col})})),g.add((T=_.currentCell$)==null?void 0:T.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.DragOver))return;const d=this.getSheetTarget(n.location.unitId,n.location.subUnitId);d&&this.fireEvent(this.Event.DragOver,{...d,...n,row:n.location.row,column:n.location.col})})),g.add((L=_.endCell$)==null?void 0:L.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.Drop))return;const d=this.getSheetTarget(n.location.unitId,n.location.subUnitId);d&&this.fireEvent(this.Event.Drop,{...d,...n,row:n.location.row,column:n.location.col})})),g.add((B=h.currentRowHeaderClick$)==null?void 0:B.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderClick))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderClick,{...d,row:n.index})})),g.add((x=h.currentRowHeaderPointerDown$)==null?void 0:x.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderPointerDown))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderPointerDown,{...d,row:n.index})})),g.add((A=h.currentRowHeaderPointerUp$)==null?void 0:A.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderPointerUp))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderPointerUp,{...d,row:n.index})})),g.add((O=h.currentHoveredRowHeader$)==null?void 0:O.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.RowHeaderHover))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderHover,{...d,row:n.index})})),g.add((U=h.currentColHeaderClick$)==null?void 0:U.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderClick))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderClick,{...d,column:n.index})})),g.add((W=h.currentColHeaderPointerDown$)==null?void 0:W.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderPointerDown))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderPointerDown,{...d,column:n.index})})),g.add(($=h.currentColHeaderPointerUp$)==null?void 0:$.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderPointerUp))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderPointerUp,{...d,column:n.index})})),g.add((j=h.currentHoveredColHeader$)==null?void 0:j.pipe(S.filter(n=>!!n)).subscribe(n=>{if(!this._eventListend(this.Event.ColumnHeaderHover))return;const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderHover,{...d,column:n.index})})))})),this.disposeWithMe(g)}const a=new Map;let l;const C=e.get(s.LifecycleService),m=S.combineLatest([o.created$,C.lifecycle$]);this.disposeWithMe(m.subscribe(([v,g])=>{var D;if(v.type===s.UniverInstanceType.UNIVER_SHEET&&(l=v),g<=s.LifecycleStages.Rendered)return;const b=new s.DisposableCollection;if(!l)return;const h=this.getWorkbook(l.unitId);if(!h)return;a.get(l.unitId)&&((D=a.get(l.unitId))==null||D.dispose()),a.set(l.unitId,b);const _=l.with(c.SheetScrollManagerService);b.add(_.validViewportScrollInfo$.subscribe(p=>{p&&this._eventListend(this.Event.Scroll)&&this.fireEvent(this.Event.Scroll,{workbook:h,worksheet:h.getActiveSheet(),...p})}));const M=l.with(R.SheetsSelectionsService);b.add(M.selectionMoveStart$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionMoveStart)&&this.fireEvent(this.Event.SelectionMoveStart,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),b.add(M.selectionMoving$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionMoving)&&this.fireEvent(this.Event.SelectionMoving,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),b.add(M.selectionMoveEnd$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionMoveEnd)&&this.fireEvent(this.Event.SelectionMoveEnd,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),b.add(M.selectionChanged$.subscribe(p=>{var w;this._eventListend(this.Event.SelectionChanged)&&this.fireEvent(this.Event.SelectionChanged,{workbook:h,worksheet:h.getActiveSheet(),selections:(w=p==null?void 0:p.map(k=>k.range))!=null?w:[]})})),l=null,this.disposeWithMe(b)})),this.disposeWithMe(o.disposed$.subscribe(v=>{var g;(g=a.get(v))==null||g.dispose(),a.delete(v)})),this.disposeWithMe(()=>{a.forEach(v=>{v.dispose()})})}_initialize(e){this._initSheetUIEvent(e);const r=e.get(s.ICommandService);this.disposeWithMe(r.beforeCommandExecuted(t=>{switch(t.id){case u.CopyCommand.id:case u.CutCommand.id:this._beforeClipboardChange();break;case c.SheetPasteShortKeyCommand.id:this._beforeClipboardPaste(t.params);break}})),this.disposeWithMe(r.onCommandExecuted(t=>{if(R.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(t.id)>-1){if(!this._eventListend(this.Event.SheetSkeletonChanged))return;const i=this.getActiveSheet();if(!i)return;const o=R.getSkeletonChangedEffectedRange(t).map(a=>{var l,C;return(C=(l=this.getWorkbook(a.unitId))==null?void 0:l.getSheetBySheetId(a.subUnitId))==null?void 0:C.getRange(a.range)}).filter(Boolean);if(!o.length)return;this.fireEvent(this.Event.SheetSkeletonChanged,{workbook:i.workbook,worksheet:i.worksheet,payload:t,skeleton:i.worksheet.getSkeleton(),effectedRanges:o});return}switch(t.id){case u.CopyCommand.id:case u.CutCommand.id:this._clipboardChanged();break;case c.SheetPasteShortKeyCommand.id:this._clipboardPaste();break;case u.PasteCommand.id:this._clipboardPasteAsync();break}})),this.disposeWithMe(r.beforeCommandExecuted(async t=>{switch(t.id){case u.PasteCommand.id:await this._beforeClipboardPasteAsync();break}}))}_generateClipboardCopyParam(){const e=this.getActiveWorkbook(),r=e==null?void 0:e.getActiveSheet(),t=e==null?void 0:e.getActiveRange();if(!e||!r||!t)return;const o=this._injector.get(c.ISheetClipboardService).generateCopyContent(e.getId(),r.getSheetId(),t.getRange());if(!o)return;const{html:a,plain:l}=o;return{workbook:e,worksheet:r,text:l,html:a,fromSheet:r,fromRange:t}}_beforeClipboardChange(){if(!this.hasEventCallback(this.Event.BeforeClipboardChange))return;const e=this._generateClipboardCopyParam();if(e&&(this.fireEvent(this.Event.BeforeClipboardChange,e),e.cancel))throw new Error("Before clipboard change is canceled")}_clipboardChanged(){if(!this.hasEventCallback(this.Event.ClipboardChanged))return;const e=this._generateClipboardCopyParam();if(e&&(this.fireEvent(this.Event.ClipboardChanged,e),e.cancel))throw new Error("Clipboard changed is canceled")}_generateClipboardPasteParam(e){if(!e)return;const{htmlContent:r,textContent:t}=e,i=this.getActiveWorkbook(),o=i==null?void 0:i.getActiveSheet();return!i||!o?void 0:{workbook:i,worksheet:o,text:t,html:r}}async _generateClipboardPasteParamAsync(){const e=this.getActiveWorkbook(),r=e==null?void 0:e.getActiveSheet();if(!e||!r)return;const o=(await this._injector.get(u.IClipboardInterfaceService).read())[0];let a;if(o){const l=o.types,C=l.indexOf(u.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(u.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(v=>v&&v.text()):"",m=l.indexOf(u.HTML_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(u.HTML_CLIPBOARD_MIME_TYPE).then(v=>v&&v.text()):"";a={workbook:e,worksheet:r,text:C,html:m}}return a}_beforeClipboardPaste(e){if(!this.hasEventCallback(this.Event.BeforeClipboardPaste))return;const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.BeforeClipboardPaste,r),r.cancel))throw new Error("Before clipboard paste is canceled")}_clipboardPaste(e){if(!this.hasEventCallback(this.Event.BeforeClipboardPaste))return;const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.BeforeClipboardPaste,r),r.cancel))throw new Error("Clipboard pasted is canceled")}async _beforeClipboardPasteAsync(){if(!this.hasEventCallback(this.Event.BeforeClipboardPaste))return;if(!u.supportClipboardAPI()){this._injector.get(s.ILogService).warn("[Facade]: The navigator object only supports the browser environment");return}const e=await this._generateClipboardPasteParamAsync();if(e&&(this.fireEvent(this.Event.BeforeClipboardPaste,e),e.cancel))throw new Error("Before clipboard paste is canceled")}async _clipboardPasteAsync(){if(!this.hasEventCallback(this.Event.ClipboardPasted))return;if(!u.supportClipboardAPI()){this._injector.get(s.ILogService).warn("[Facade]: The navigator object only supports the browser environment");return}const e=await this._generateClipboardPasteParamAsync();if(e&&(this.fireEvent(this.Event.ClipboardPasted,e),e.cancel))throw new Error("Clipboard pasted is canceled")}customizeColumnHeader(e){const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId();this._getSheetRenderComponent(t,c.SHEET_VIEW_KEY.COLUMN).setCustomHeader(e)}customizeRowHeader(e){const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId();this._getSheetRenderComponent(t,c.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}registerSheetRowHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.ROW),i=t.register(...r);return s.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetColumnHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.COLUMN),i=t.register(...r);return s.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetMainExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.MAIN),i=t.register(...r);return s.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}_getSheetRenderComponent(e,r){const i=this._injector.get(E.IRenderManagerService).getRenderById(e);if(!i)throw new Error(`Render Unit with unitId ${e} not found`);const{components:o}=i,a=o.get(r);if(!a)throw new Error("Render component not found");return a}getSheetHooks(){return this._injector.createInstance(I.FSheetHooks)}}s.FUniver.extend(N);class V extends I.FWorkbook{openSiderbar(e){return this._logDeprecation("openSiderbar"),this._injector.get(u.ISidebarService).open(e)}openDialog(e){this._logDeprecation("openDialog");const t=this._injector.get(u.IDialogService).open({...e,onClose:()=>{t.dispose()}});return t}_logDeprecation(e){this._injector.get(s.ILogService).warn("[FWorkbook]",`${e} is deprecated. Please use the function of the same name on "FUniver".`)}generateCellParams(e){const r=this.getActiveSheet();return{row:e.row,column:e.col,workbook:this,worksheet:r}}onCellClick(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentClickedCell$.pipe(S.filter(t=>!!t)).subscribe(t=>{e(t)}))}onCellHover(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentRichText$.pipe(S.filter(t=>!!t)).subscribe(e))}onCellPointerDown(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentPointerDownCell$.subscribe(e))}onCellPointerUp(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentPointerUpCell$.subscribe(e))}onCellPointerMove(e){const r=this._injector.get(c.HoverManagerService);return s.toDisposable(r.currentCellPosWithEvent$.pipe(S.filter(t=>!!t)).subscribe(t=>{e(t,t.event)}))}onDragOver(e){const r=this._injector.get(c.DragManagerService);return s.toDisposable(r.currentCell$.pipe(S.filter(t=>!!t)).subscribe(t=>{e(t)}))}onDrop(e){const r=this._injector.get(c.DragManagerService);return s.toDisposable(r.endCell$.pipe(S.filter(t=>!!t)).subscribe(t=>{e(t)}))}startEditing(){return this._injector.get(s.ICommandService).syncExecuteCommand(c.SetCellEditVisibleOperation.id,{eventType:E.DeviceInputEventType.Dblclick,unitId:this._workbook.getUnitId(),visible:!0})}async endEditing(e){return this._injector.get(s.ICommandService).syncExecuteCommand(c.SetCellEditVisibleOperation.id,{eventType:E.DeviceInputEventType.Keyboard,keycode:e?u.KeyCode.ENTER:u.KeyCode.ESC,visible:!1,unitId:this._workbook.getUnitId()}),await s.awaitTime(0),!0}endEditingAsync(e=!0){return this.endEditing(e)}getScrollStateBySheetId(e){const r=this._workbook.getUnitId(),i=this._injector.get(E.IRenderManagerService).getRenderById(r);return i?i.with(c.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:e}):null}disableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(E.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).disableSelection(),this}enableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(E.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).enableSelection(),this}transparentSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(E.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).transparentSelection(),this}showSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(E.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).showSelection(),this}}I.FWorkbook.extend(V);class K extends I.FWorksheet{refreshCanvas(){const e=this._injector.get(E.IRenderManagerService),r=this._fWorkbook.id,t=e.getRenderById(r);if(!t)throw new Error(`Render Unit with unitId ${r} not found`);t.with(c.SheetSkeletonManagerService).reCalculate();const i=t.mainComponent;if(!i)throw new Error("Main component not found");return i.makeDirty(),this}zoom(e){return this._injector.get(s.ICommandService).syncExecuteCommand(c.ChangeZoomRatioCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),zoomRatio:e}),this}getZoom(){return this._worksheet.getZoomRatio()}getVisibleRange(){const e=this._workbook.getUnitId(),t=this._injector.get(E.IRenderManagerService).getRenderById(e);let i={startColumn:0,startRow:0,endColumn:0,endRow:0};if(!t)return i;const a=t.with(c.SheetSkeletonManagerService).getCurrentSkeleton();if(!a)return i;const l=a==null?void 0:a.getVisibleRanges();if(!l)return i;i=a.getVisibleRangeByViewport(E.SHEET_VIEWPORT_KEY.VIEW_MAIN);for(const[C,m]of l)E.sheetContentViewportKeys.indexOf(C)!==-1&&(i.startColumn=Math.min(i.startColumn,m.startColumn),i.startRow=Math.min(i.startRow,m.startRow),i.endColumn=Math.max(i.endColumn,m.endColumn),i.endRow=Math.max(i.endRow,m.endRow));return i}scrollToCell(e,r){const t=this._workbook.getUnitId(),o=this._injector.get(E.IRenderManagerService).getRenderById(t);return o&&(o==null?void 0:o.with(c.SheetsScrollRenderController)).scrollToCell(e,r),this}getScrollState(){const e={offsetX:0,offsetY:0,sheetViewStartColumn:0,sheetViewStartRow:0},r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(E.IRenderManagerService).getRenderById(r);return o&&o.with(c.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:t})||e}onScroll(e){var o;const r=this._workbook.getUnitId(),i=(o=this._injector.get(E.IRenderManagerService).getRenderById(r))==null?void 0:o.with(c.SheetScrollManagerService);if(i){const a=i.validViewportScrollInfo$.subscribe(l=>{e(l)});return s.toDisposable(a)}return s.toDisposable(()=>{})}getSkeleton(){var r,t;const e=(r=this._injector.get(E.IRenderManagerService).getRenderById(this._workbook.getUnitId()))==null?void 0:r.with(c.SheetSkeletonManagerService);return(t=e==null?void 0:e.getWorksheetSkeleton(this._worksheet.getSheetId()))==null?void 0:t.skeleton}setColumnAutoWidth(e,r){const t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=[{startColumn:e,endColumn:e+r-1,startRow:0,endRow:this._worksheet.getRowCount()-1}];return this._commandService.syncExecuteCommand(c.SetWorksheetColAutoWidthCommand.id,{unitId:t,subUnitId:i,ranges:o}),this}}I.FWorksheet.extend(K);class Y extends I.FPermission{setPermissionDialogVisible(e){this._permissionService.setShowComponents(e)}}I.FPermission.extend(Y);class Z extends I.FSheetHooks{onCellPointerMove(e){return s.toDisposable(this._injector.get(c.HoverManagerService).currentPosition$.subscribe(e))}onCellPointerOver(e){return s.toDisposable(this._injector.get(c.HoverManagerService).currentCell$.subscribe(e))}onCellDragOver(e){return s.toDisposable(this._injector.get(c.DragManagerService).currentCell$.subscribe(e))}onCellDrop(e){return s.toDisposable(this._injector.get(c.DragManagerService).endCell$.subscribe(e))}onCellRender(e,r=s.InterceptorEffectEnum.Style,t=R.InterceptCellContentPriority.DATA_VALIDATION){return this._injector.get(R.SheetInterceptorService).intercept(R.INTERCEPTOR_POINT.CELL_CONTENT,{effect:r,handler:(i,o,a)=>a({...i,customRender:[...(i==null?void 0:i.customRender)||[],...e||[]]}),priority:t})}onBeforeCellEdit(e){return this._injector.get(s.ICommandService).beforeCommandExecuted(r=>{const t=r.params;r.id===c.SetCellEditVisibleOperation.id&&t.visible&&e(t)})}onAfterCellEdit(e){return this._injector.get(s.ICommandService).onCommandExecuted(r=>{const t=r.params;r.id===c.SetCellEditVisibleOperation.id&&!t.visible&&e(t)})}}I.FSheetHooks.extend(Z);const y={CellClicked:"CellClicked",CellPointerDown:"CellPointerDown",CellPointerUp:"CellPointerUp",CellPointerMove:"CellPointerMove",CellHover:"CellHover",DragOver:"DragOver",Drop:"Drop",Scroll:"Scroll",SelectionMoveStart:"SelectionMoveStart",SelectionMoving:"SelectionMoving",SelectionMoveEnd:"SelectionMoveEnd",SelectionChanged:"SelectionChanged"};class z extends s.FEventName{get BeforeClipboardChange(){return"BeforeClipboardChange"}get ClipboardChanged(){return"ClipboardChanged"}get BeforeClipboardPaste(){return"BeforeClipboardPaste"}get ClipboardPasted(){return"ClipboardPasted"}get BeforeSheetEditStart(){return"BeforeSheetEditStart"}get SheetEditStarted(){return"SheetEditStarted"}get SheetEditChanging(){return"SheetEditChanging"}get BeforeSheetEditEnd(){return"BeforeSheetEditEnd"}get SheetEditEnded(){return"SheetEditEnded"}get CellClicked(){return y.CellClicked}get CellHover(){return y.CellHover}get CellPointerDown(){return y.CellPointerDown}get CellPointerUp(){return y.CellPointerUp}get CellPointerMove(){return y.CellPointerMove}get DragOver(){return"DragOver"}get Drop(){return"Drop"}get Scroll(){return"Scroll"}get SelectionMoveStart(){return"SelectionMoveStart"}get SelectionChanged(){return"SelectionChanged"}get SelectionMoving(){return"SelectionMoving"}get SelectionMoveEnd(){return"SelectionMoveEnd"}get RowHeaderClick(){return"RowHeaderClick"}get RowHeaderPointerDown(){return"RowHeaderPointerDown"}get RowHeaderPointerUp(){return"RowHeaderPointerUp"}get RowHeaderHover(){return"RowHeaderHover"}get ColumnHeaderClick(){return"ColumnHeaderClick"}get ColumnHeaderPointerDown(){return"ColumnHeaderPointerDown"}get ColumnHeaderPointerUp(){return"ColumnHeaderPointerUp"}get ColumnHeaderHover(){return"ColumnHeaderHover"}get SheetSkeletonChanged(){return"SheetSkeletonChanged"}}s.FEventName.extend(z);class q extends I.FRange{getCell(){var l;const e=this._injector.get(E.IRenderManagerService),r=this._injector.get(s.ILogService),t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=e.getRenderById(t),a=(l=o==null?void 0:o.with(c.SheetSkeletonManagerService).getWorksheetSkeleton(i))==null?void 0:l.skeleton;if(!a)throw r.error("[Facade]: `FRange.getCell` can only be called in current worksheet"),new Error("`FRange.getCell` can only be called in current worksheet");return a.getCellWithCoordByIndex(this._range.startRow,this._range.startColumn)}getCellRect(){const{startX:e,startY:r,endX:t,endY:i}=this.getCell(),o={x:e,y:r,width:t-e,height:i-r,top:r,left:e,bottom:i,right:t};return{...o,toJSON:()=>JSON.stringify(o)}}generateHTML(){var r;const e=this._injector.get(c.ISheetClipboardService).generateCopyContent(this._workbook.getUnitId(),this._worksheet.getSheetId(),this._range);return(r=e==null?void 0:e.html)!=null?r:""}attachPopup(e){var a,l,C;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(C=e.offset)!=null?C:[0,0];const{key:r,disposableCollection:t}=H(e,this._injector.get(u.ComponentManager)),o=this._injector.get(c.SheetCanvasPopManagerService).attachPopupToCell(this._range.startRow,this._range.startColumn,{...e,componentKey:r},this.getUnitId(),this._worksheet.getSheetId());return o?(t.add(o),t):(t.dispose(),null)}attachAlertPopup(e){const r=this._injector.get(c.CellAlertManagerService),t={workbook:this._workbook,worksheet:this._worksheet,row:this._range.startRow,col:this._range.startColumn,unitId:this.getUnitId(),subUnitId:this._worksheet.getSheetId()};return r.showAlert({...e,location:t}),{dispose:()=>{r.removeAlert(e.key)}}}attachRangePopup(e){var a,l,C;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(C=e.offset)!=null?C:[0,0];const{key:r,disposableCollection:t}=H(e,this._injector.get(u.ComponentManager)),o=this._injector.get(c.SheetCanvasPopManagerService).attachRangePopup(this._range,{...e,componentKey:r},this.getUnitId(),this._worksheet.getSheetId());return o?(t.add(o),t):(t.dispose(),null)}highlight(e,r){const t=this._injector.get(c.IMarkSelectionService),i=t.addShape({range:this._range,style:e,primary:r});if(!i)throw new Error("Failed to highlight current range");return s.toDisposable(()=>{t.removeShape(i)})}}I.FRange.extend(q);function H(P,e){const{componentKey:r,isVue3:t}=P;let i;const o=new s.DisposableCollection;return typeof r=="string"?i=r:(i=`External_${s.generateRandomId(6)}`,o.add(e.register(i,r,{framework:t?"vue3":"react"}))),{key:i,disposableCollection:o}}f.transformComponentKey=H,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})});