@univerjs/sheets-ui 0.7.0 → 0.8.0-beta.0

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,465 +1,3 @@
1
- /**
2
- * Copyright 2023-present DreamNum Co., Ltd.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- declare const locale: {
17
- spreadsheetLabel: string;
18
- spreadsheetRightLabel: string;
19
- toolbar: {
20
- undo: string;
21
- redo: string;
22
- formatPainter: string;
23
- font: string;
24
- fontSize: string;
25
- bold: string;
26
- italic: string;
27
- strikethrough: string;
28
- subscript: string;
29
- superscript: string;
30
- underline: string;
31
- textColor: {
32
- main: string;
33
- right: string;
34
- };
35
- resetColor: string;
36
- fillColor: {
37
- main: string;
38
- right: string;
39
- };
40
- border: {
41
- main: string;
42
- right: string;
43
- };
44
- mergeCell: {
45
- main: string;
46
- right: string;
47
- };
48
- horizontalAlignMode: {
49
- main: string;
50
- right: string;
51
- };
52
- verticalAlignMode: {
53
- main: string;
54
- right: string;
55
- };
56
- textWrapMode: {
57
- main: string;
58
- right: string;
59
- };
60
- textRotateMode: {
61
- main: string;
62
- right: string;
63
- };
64
- more: string;
65
- toggleGridlines: string;
66
- };
67
- align: {
68
- left: string;
69
- center: string;
70
- right: string;
71
- top: string;
72
- middle: string;
73
- bottom: string;
74
- };
75
- button: {
76
- confirm: string;
77
- cancel: string;
78
- close: string;
79
- update: string;
80
- delete: string;
81
- insert: string;
82
- prevPage: string;
83
- nextPage: string;
84
- total: string;
85
- };
86
- punctuation: {
87
- tab: string;
88
- semicolon: string;
89
- comma: string;
90
- space: string;
91
- };
92
- colorPicker: {
93
- collapse: string;
94
- customColor: string;
95
- change: string;
96
- confirmColor: string;
97
- cancelColor: string;
98
- };
99
- borderLine: {
100
- borderTop: string;
101
- borderBottom: string;
102
- borderLeft: string;
103
- borderRight: string;
104
- borderNone: string;
105
- borderAll: string;
106
- borderOutside: string;
107
- borderInside: string;
108
- borderHorizontal: string;
109
- borderVertical: string;
110
- borderColor: string;
111
- borderSize: string;
112
- borderType: string;
113
- };
114
- merge: {
115
- all: string;
116
- vertical: string;
117
- horizontal: string;
118
- cancel: string;
119
- overlappingError: string;
120
- partiallyError: string;
121
- confirm: {
122
- title: string;
123
- cancel: string;
124
- confirm: string;
125
- waring: string;
126
- dismantleMergeCellWaring: string;
127
- };
128
- };
129
- filter: {
130
- confirm: {
131
- error: string;
132
- notAllowedToInsertRange: string;
133
- };
134
- };
135
- textWrap: {
136
- overflow: string;
137
- wrap: string;
138
- clip: string;
139
- };
140
- textRotate: {
141
- none: string;
142
- angleUp: string;
143
- angleDown: string;
144
- vertical: string;
145
- rotationUp: string;
146
- rotationDown: string;
147
- };
148
- sheetConfig: {
149
- delete: string;
150
- copy: string;
151
- rename: string;
152
- changeColor: string;
153
- hide: string;
154
- unhide: string;
155
- moveLeft: string;
156
- moveRight: string;
157
- resetColor: string;
158
- cancelText: string;
159
- chooseText: string;
160
- tipNameRepeat: string;
161
- noMoreSheet: string;
162
- confirmDelete: string;
163
- redoDelete: string;
164
- noHide: string;
165
- chartEditNoOpt: string;
166
- sheetNameErrorTitle: string;
167
- sheetNameSpecCharError: string;
168
- sheetNameCannotIsEmptyError: string;
169
- sheetNameAlreadyExistsError: string;
170
- deleteSheet: string;
171
- deleteSheetContent: string;
172
- addProtectSheet: string;
173
- removeProtectSheet: string;
174
- changeSheetPermission: string;
175
- viewAllProtectArea: string;
176
- };
177
- rightClick: {
178
- copy: string;
179
- cut: string;
180
- paste: string;
181
- pasteSpecial: string;
182
- pasteValue: string;
183
- pasteFormat: string;
184
- pasteColWidth: string;
185
- pasteBesidesBorder: string;
186
- insert: string;
187
- delete: string;
188
- insertRow: string;
189
- insertRowBefore: string;
190
- insertRowsAbove: string;
191
- insertRowsAfter: string;
192
- insertRowsAfterSuffix: string;
193
- insertRowsAboveSuffix: string;
194
- insertColumn: string;
195
- insertColumnBefore: string;
196
- insertColsLeft: string;
197
- insertColsRight: string;
198
- insertColsLeftSuffix: string;
199
- insertColsRightSuffix: string;
200
- deleteCell: string;
201
- insertCell: string;
202
- deleteSelected: string;
203
- hide: string;
204
- hideSelected: string;
205
- showHide: string;
206
- toTopAdd: string;
207
- toBottomAdd: string;
208
- toLeftAdd: string;
209
- toRightAdd: string;
210
- deleteSelectedRow: string;
211
- deleteSelectedColumn: string;
212
- hideSelectedRow: string;
213
- showHideRow: string;
214
- rowHeight: string;
215
- hideSelectedColumn: string;
216
- showHideColumn: string;
217
- columnWidth: string;
218
- moveLeft: string;
219
- moveUp: string;
220
- moveRight: string;
221
- moveDown: string;
222
- add: string;
223
- row: string;
224
- column: string;
225
- confirm: string;
226
- clearSelection: string;
227
- clearContent: string;
228
- clearFormat: string;
229
- clearAll: string;
230
- root: string;
231
- log: string;
232
- delete0: string;
233
- removeDuplicate: string;
234
- byRow: string;
235
- byCol: string;
236
- generateNewMatrix: string;
237
- fitContent: string;
238
- freeze: string;
239
- freezeCol: string;
240
- freezeRow: string;
241
- cancelFreeze: string;
242
- deleteAllRowsAlert: string;
243
- deleteAllColumnsAlert: string;
244
- hideAllRowsAlert: string;
245
- hideAllColumnsAlert: string;
246
- protectRange: string;
247
- editProtectRange: string;
248
- removeProtectRange: string;
249
- turnOnProtectRange: string;
250
- viewAllProtectArea: string;
251
- };
252
- info: {
253
- tooltip: string;
254
- error: string;
255
- notChangeMerge: string;
256
- detailUpdate: string;
257
- detailSave: string;
258
- row: string;
259
- column: string;
260
- loading: string;
261
- copy: string;
262
- return: string;
263
- rename: string;
264
- tips: string;
265
- noName: string;
266
- wait: string;
267
- add: string;
268
- addLast: string;
269
- backTop: string;
270
- pageInfo: string;
271
- nextPage: string;
272
- tipInputNumber: string;
273
- tipInputNumberLimit: string;
274
- tipRowHeightLimit: string;
275
- tipColumnWidthLimit: string;
276
- pageInfoFull: string;
277
- problem: string;
278
- forceStringInfo: string;
279
- };
280
- clipboard: {
281
- paste: {
282
- exceedMaxCells: string;
283
- overlappingMergedCells: string;
284
- };
285
- shortCutNotify: {
286
- title: string;
287
- useShortCutInstead: string;
288
- };
289
- };
290
- statusbar: {
291
- sum: string;
292
- average: string;
293
- min: string;
294
- max: string;
295
- count: string;
296
- countA: string;
297
- clickToCopy: string;
298
- copied: string;
299
- };
300
- autoFill: {
301
- copy: string;
302
- series: string;
303
- formatOnly: string;
304
- noFormat: string;
305
- };
306
- rangeSelector: {
307
- placeholder: string;
308
- tooltip: string;
309
- };
310
- shortcut: {
311
- sheet: {
312
- 'zoom-in': string;
313
- 'zoom-out': string;
314
- 'reset-zoom': string;
315
- 'select-below-cell': string;
316
- 'select-up-cell': string;
317
- 'select-left-cell': string;
318
- 'select-right-cell': string;
319
- 'select-next-cell': string;
320
- 'select-previous-cell': string;
321
- 'select-up-value-cell': string;
322
- 'select-below-value-cell': string;
323
- 'select-left-value-cell': string;
324
- 'select-right-value-cell': string;
325
- 'expand-selection-down': string;
326
- 'expand-selection-up': string;
327
- 'expand-selection-left': string;
328
- 'expand-selection-right': string;
329
- 'expand-selection-to-left-gap': string;
330
- 'expand-selection-to-below-gap': string;
331
- 'expand-selection-to-right-gap': string;
332
- 'expand-selection-to-up-gap': string;
333
- 'select-all': string;
334
- 'toggle-editing': string;
335
- 'delete-and-start-editing': string;
336
- 'abort-editing': string;
337
- 'break-line': string;
338
- 'set-bold': string;
339
- 'set-italic': string;
340
- 'set-underline': string;
341
- 'set-strike-through': string;
342
- 'start-editing': string;
343
- };
344
- };
345
- 'sheet-view': string;
346
- 'sheet-edit': string;
347
- definedName: {
348
- managerTitle: string;
349
- managerDescription: string;
350
- addButton: string;
351
- featureTitle: string;
352
- ratioRange: string;
353
- ratioFormula: string;
354
- confirm: string;
355
- cancel: string;
356
- scopeWorkbook: string;
357
- inputNamePlaceholder: string;
358
- inputCommentPlaceholder: string;
359
- inputRangePlaceholder: string;
360
- inputFormulaPlaceholder: string;
361
- nameEmpty: string;
362
- nameDuplicate: string;
363
- formulaOrRefStringEmpty: string;
364
- formulaOrRefStringInvalid: string;
365
- defaultName: string;
366
- updateButton: string;
367
- deleteButton: string;
368
- deleteConfirmText: string;
369
- nameConflict: string;
370
- nameInvalid: string;
371
- nameSheetConflict: string;
372
- };
373
- uploadLoading: {
374
- loading: string;
375
- error: string;
376
- };
377
- permission: {
378
- toolbarMenu: string;
379
- panel: {
380
- title: string;
381
- name: string;
382
- protectedRange: string;
383
- permissionDirection: string;
384
- permissionDirectionPlaceholder: string;
385
- editPermission: string;
386
- onlyICanEdit: string;
387
- designedUserCanEdit: string;
388
- viewPermission: string;
389
- othersCanView: string;
390
- noOneElseCanView: string;
391
- designedPerson: string;
392
- addPerson: string;
393
- canEdit: string;
394
- canView: string;
395
- delete: string;
396
- currentSheet: string;
397
- allSheet: string;
398
- edit: string;
399
- Print: string;
400
- Comment: string;
401
- Copy: string;
402
- SetCellStyle: string;
403
- SetCellValue: string;
404
- SetHyperLink: string;
405
- Sort: string;
406
- Filter: string;
407
- PivotTable: string;
408
- FloatImage: string;
409
- RowHeightColWidth: string;
410
- RowHeightColWidthReadonly: string;
411
- FilterReadonly: string;
412
- nameError: string;
413
- created: string;
414
- iCanEdit: string;
415
- iCanNotEdit: string;
416
- iCanView: string;
417
- iCanNotView: string;
418
- emptyRangeError: string;
419
- rangeOverlapError: string;
420
- rangeOverlapOverPermissionError: string;
421
- InsertHyperlink: string;
422
- SetRowStyle: string;
423
- SetColumnStyle: string;
424
- InsertColumn: string;
425
- InsertRow: string;
426
- DeleteRow: string;
427
- DeleteColumn: string;
428
- EditExtraObject: string;
429
- };
430
- dialog: {
431
- allowUserToEdit: string;
432
- allowedPermissionType: string;
433
- setCellValue: string;
434
- setCellStyle: string;
435
- copy: string;
436
- alert: string;
437
- search: string;
438
- alertContent: string;
439
- userEmpty: string;
440
- listEmpty: string;
441
- commonErr: string;
442
- editErr: string;
443
- pasteErr: string;
444
- setStyleErr: string;
445
- copyErr: string;
446
- workbookCopyErr: string;
447
- setRowColStyleErr: string;
448
- moveRowColErr: string;
449
- moveRangeErr: string;
450
- autoFillErr: string;
451
- filterErr: string;
452
- operatorSheetErr: string;
453
- insertOrDeleteMoveRangeErr: string;
454
- printErr: string;
455
- formulaErr: string;
456
- hyperLinkErr: string;
457
- };
458
- button: {
459
- confirm: string;
460
- cancel: string;
461
- addNewPermission: string;
462
- };
463
- };
464
- };
1
+ import { default as enUS } from './en-US';
2
+ declare const locale: typeof enUS;
465
3
  export default locale;
@@ -1,3 +1,3 @@
1
- import { default as zhCN } from './zh-CN';
2
- declare const locale: typeof zhCN;
1
+ import { default as enUS } from './en-US';
2
+ declare const locale: typeof enUS;
3
3
  export default locale;
@@ -1,13 +1,14 @@
1
1
  import { BooleanNumber } from '@univerjs/core';
2
- import { default as React } from 'react';
2
+ import { CSSProperties, ReactNode } from 'react';
3
3
  export interface IBaseSheetBarProps {
4
- label?: React.ReactNode;
4
+ label?: ReactNode;
5
5
  children?: any[];
6
6
  index?: number;
7
7
  color?: string;
8
8
  sheetId?: string;
9
- style?: React.CSSProperties;
9
+ style?: CSSProperties;
10
10
  hidden?: BooleanNumber;
11
11
  selected?: boolean;
12
+ menuOverlay?: ReactNode;
12
13
  }
13
14
  export declare function SheetBarItem(props: IBaseSheetBarProps): import("react/jsx-runtime").JSX.Element;
package/lib/umd/facade.js CHANGED
@@ -1 +1 @@
1
- (function(p,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("@univerjs/core"),require("@univerjs/core/facade"),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/core/facade","@univerjs/docs","@univerjs/engine-render","@univerjs/sheets","@univerjs/sheets-ui","@univerjs/sheets/facade","@univerjs/ui","rxjs"],h):(p=typeof globalThis<"u"?globalThis:p||self,h(p.UniverSheetsUiFacade={},p.UniverCore,p.UniverCoreFacade,p.UniverDocs,p.UniverEngineRender,p.UniverSheets,p.UniverSheetsUi,p.UniverSheetsFacade,p.UniverUi,p.rxjs))})(this,function(p,h,M,H,S,I,c,b,C,m){"use strict";class y extends M.FUniver{_initSheetUIEvent(e){const r=e.get(h.ICommandService);this.registerEventHandler(this.Event.BeforeSheetEditStart,()=>r.beforeCommandExecuted(t=>{if(t.id!==c.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),v=t.params,{visible:g,keycode:u,eventType:s}=v,n=l.getEditLocation();if(g){const d={row:n.row,column:n.column,eventType:s,keycode:u,workbook:o,worksheet:a,isZenEditor:!1};if(this.fireEvent(this.Event.BeforeSheetEditStart,d),d.cancel)throw new h.CanceledError}})),this.registerEventHandler(this.Event.BeforeSheetEditEnd,()=>r.beforeCommandExecuted(t=>{if(t.id!==c.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),v=e.get(h.IUniverInstanceService),g=t.params,{visible:u,keycode:s,eventType:n}=g,d=l.getEditLocation();if(!u){const P={row:d.row,column:d.column,eventType:n,keycode:s,workbook:o,worksheet:a,isZenEditor:!1,value:h.RichTextValue.create(v.getUnit(h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isConfirm:s!==C.KeyCode.ESC};if(this.fireEvent(this.Event.BeforeSheetEditEnd,P),P.cancel)throw new h.CanceledError}})),this.registerEventHandler(this.Event.SheetEditStarted,()=>r.onCommandExecuted(t=>{if(t.id!==c.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),v=t.params,{visible:g,keycode:u,eventType:s}=v,n=l.getEditLocation();if(g){const d={row:n.row,column:n.column,eventType:s,keycode:u,workbook:o,worksheet:a,isZenEditor:!1};this.fireEvent(this.Event.SheetEditStarted,d)}})),this.registerEventHandler(this.Event.SheetEditEnded,()=>r.onCommandExecuted(t=>{if(t.id!==c.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),v=t.params,{visible:g,keycode:u,eventType:s}=v,n=l.getEditLocation();if(!g){const d={row:n.row,column:n.column,eventType:s,keycode:u,workbook:o,worksheet:a,isZenEditor:!1,isConfirm:u!==C.KeyCode.ESC};this.fireEvent(this.Event.SheetEditEnded,d)}})),this.registerEventHandler(this.Event.SheetEditChanging,()=>r.onCommandExecuted(t=>{if(t.id!==H.RichTextEditingMutation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(c.IEditorBridgeService),v=e.get(h.IUniverInstanceService),g=t.params;if(!l.isVisible().visible)return;const{unitId:u}=g;if(u===h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY){const{row:s,column:n}=l.getEditLocation(),d={workbook:o,worksheet:a,row:s,column:n,value:h.RichTextValue.create(v.getUnit(h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isZenEditor:!1};this.fireEvent(this.Event.SheetEditChanging,d)}})),this.registerEventHandler(this.Event.BeforeSheetZoomChange,()=>r.beforeCommandExecuted(t=>{if(t.id!==c.SetZoomRatioCommand.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l={zoom:t.params.zoomRatio,workbook:o,worksheet:a};if(this.fireEvent(this.Event.BeforeSheetZoomChange,l),l.cancel)throw new h.CanceledError})),this.registerEventHandler(this.Event.SheetZoomChanged,()=>r.onCommandExecuted(t=>{if(t.id!==c.SetZoomRatioCommand.id)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})}))}_initObserverListener(e){const r=e.get(S.IRenderManagerService),t=e.get(h.LifecycleService),i=new h.DisposableCollection;this.disposeWithMe(t.lifecycle$.subscribe(v=>{if(v!==h.LifecycleStages.Rendered)return;i.dispose();const g=e.get(c.HoverManagerService),u=e.get(c.DragManagerService);g&&(this.registerEventHandler(this.Event.CellClicked,()=>{var s;return(s=g.currentClickedCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{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})})}),this.registerEventHandler(this.Event.CellHover,()=>{var s;return(s=g.currentRichText$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellHover,{...d,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.CellPointerDown,()=>{var s;return(s=g.currentPointerDownCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerDown,{...d,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.CellPointerUp,()=>{var s;return(s=g.currentPointerUpCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerUp,{...d,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.CellPointerMove,()=>{var s;return(s=g.currentCellPosWithEvent$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.CellPointerMove,{...d,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.DragOver,()=>{var s;return(s=u.currentCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{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})})}),this.registerEventHandler(this.Event.Drop,()=>{var s;return(s=u.endCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{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})})}),this.registerEventHandler(this.Event.RowHeaderClick,()=>{var s;return(s=g.currentRowHeaderClick$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderClick,{...d,row:n.index})})}),this.registerEventHandler(this.Event.RowHeaderPointerDown,()=>{var s;return(s=g.currentRowHeaderPointerDown$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderPointerDown,{...d,row:n.index})})}),this.registerEventHandler(this.Event.RowHeaderPointerUp,()=>{var s;return(s=g.currentRowHeaderPointerUp$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderPointerUp,{...d,row:n.index})})}),this.registerEventHandler(this.Event.RowHeaderHover,()=>{var s;return(s=g.currentHoveredRowHeader$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.RowHeaderHover,{...d,row:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderClick,()=>{var s;return(s=g.currentColHeaderClick$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderClick,{...d,column:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderPointerDown,()=>{var s;return(s=g.currentColHeaderPointerDown$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderPointerDown,{...d,column:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderPointerUp,()=>{var s;return(s=g.currentColHeaderPointerUp$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderPointerUp,{...d,column:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderHover,()=>{var s;return(s=g.currentHoveredColHeader$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const d=this.getSheetTarget(n.unitId,n.subUnitId);d&&this.fireEvent(this.Event.ColumnHeaderHover,{...d,column:n.index})})}))})),this.disposeWithMe(i);const o=new Map;let a;const l=m.combineLatest([r.created$,t.lifecycle$]);this.disposeWithMe(l.subscribe(([v,g])=>{var P;if(v.type===h.UniverInstanceType.UNIVER_SHEET&&(a=v),g<=h.LifecycleStages.Rendered||!a)return;const u=new h.DisposableCollection,s=this.getWorkbook(a.unitId);if(!s)return;o.get(a.unitId)&&((P=o.get(a.unitId))==null||P.dispose()),o.set(a.unitId,u);const n=a.with(c.SheetScrollManagerService),d=a.with(I.SheetsSelectionsService);u.add(this.registerEventHandler(this.Event.Scroll,()=>n.validViewportScrollInfo$.subscribe(E=>{E&&this.fireEvent(this.Event.Scroll,{workbook:s,worksheet:s.getActiveSheet(),...E})}))),u.add(this.registerEventHandler(this.Event.SelectionMoveStart,()=>d.selectionMoveStart$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionMoveStart,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),u.add(this.registerEventHandler(this.Event.SelectionMoving,()=>d.selectionMoving$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionMoving,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),u.add(this.registerEventHandler(this.Event.SelectionMoveEnd,()=>d.selectionMoveEnd$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionMoveEnd,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),u.add(this.registerEventHandler(this.Event.SelectionChanged,()=>d.selectionChanged$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionChanged,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),a=null,this.disposeWithMe(u)})),this.disposeWithMe(r.disposed$.subscribe(v=>{var g;(g=o.get(v))==null||g.dispose(),o.delete(v)})),this.disposeWithMe(()=>{o.forEach(v=>{v.dispose()})})}_initialize(e){this._initSheetUIEvent(e),this._initObserverListener(e);const r=e.get(h.ICommandService);this.registerEventHandler(this.Event.BeforeClipboardChange,()=>r.beforeCommandExecuted(t=>{switch(t.id){case C.CopyCommand.id:case C.CutCommand.id:this._beforeClipboardChange();break}})),this.registerEventHandler(this.Event.ClipboardChanged,()=>r.onCommandExecuted(t=>{switch(t.id){case C.CopyCommand.id:case C.CutCommand.id:this._clipboardChanged();break}})),this.registerEventHandler(this.Event.BeforeClipboardPaste,()=>r.beforeCommandExecuted(t=>{switch(t.id){case c.SheetPasteShortKeyCommand.id:this._beforeClipboardPaste(t.params);break;case C.PasteCommand.id:this._beforeClipboardPasteAsync();break}})),this.registerEventHandler(this.Event.ClipboardPasted,()=>r.onCommandExecuted(t=>{switch(t.id){case c.SheetPasteShortKeyCommand.id:this._clipboardPaste(t.params);break;case C.PasteCommand.id:this._clipboardPasteAsync();break}})),this.registerEventHandler(this.Event.SheetSkeletonChanged,()=>r.onCommandExecuted(t=>{if(I.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(t.id)>-1){const i=this.getActiveSheet();if(!i)return;const o=I.getSkeletonChangedEffectedRange(t,i.worksheet.getMaxColumns()).map(a=>{var l,v;return(v=(l=this.getWorkbook(a.unitId))==null?void 0:l.getSheetBySheetId(a.subUnitId))==null?void 0:v.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})}}))}_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(){const e=this._generateClipboardCopyParam();if(e&&(this.fireEvent(this.Event.BeforeClipboardChange,e),e.cancel))throw new h.CanceledError}_clipboardChanged(){const e=this._generateClipboardCopyParam();e&&this.fireEvent(this.Event.ClipboardChanged,e)}_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(C.IClipboardInterfaceService).read())[0];let a;if(o){const l=o.types,v=l.indexOf(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(u=>u&&u.text()):"",g=l.indexOf(C.HTML_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.HTML_CLIPBOARD_MIME_TYPE).then(u=>u&&u.text()):"";a={workbook:e,worksheet:r,text:v,html:g}}return a}_beforeClipboardPaste(e){const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.BeforeClipboardPaste,r),r.cancel))throw new h.CanceledError}_clipboardPaste(e){const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.ClipboardPasted,r),r.cancel))throw new h.CanceledError}async _beforeClipboardPasteAsync(){if(!C.supportClipboardAPI()){this._injector.get(h.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 h.CanceledError}async _clipboardPasteAsync(){if(!C.supportClipboardAPI()){this._injector.get(h.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 h.CanceledError}customizeColumnHeader(e){var g,u;const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId(),i=this._injector.get(S.IRenderManagerService),o=r.getActiveSheet(),a=o.getSheetId(),l=i.getRenderById(t);l&&((g=e.headerStyle)!=null&&g.size)&&(l.with(c.SheetSkeletonManagerService).setColumnHeaderSize(l,a,(u=e.headerStyle)==null?void 0:u.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 h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetColumnHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.COLUMN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetMainExtension(e,...r){const t=this._getSheetRenderComponent(e,c.SHEET_VIEW_KEY.MAIN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}_getSheetRenderComponent(e,r){const i=this._injector.get(S.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(b.FSheetHooks)}}M.FUniver.extend(y);class D extends b.FWorkbook{openSiderbar(e){return this._logDeprecation("openSiderbar"),this._injector.get(C.ISidebarService).open(e)}openDialog(e){this._logDeprecation("openDialog");const t=this._injector.get(C.IDialogService).open({...e,onClose:()=>{t.dispose()}});return t}_logDeprecation(e){this._injector.get(h.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 h.toDisposable(r.currentClickedCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onCellHover(e){const r=this._injector.get(c.HoverManagerService);return h.toDisposable(r.currentRichText$.pipe(m.filter(t=>!!t)).subscribe(e))}onCellPointerDown(e){const r=this._injector.get(c.HoverManagerService);return h.toDisposable(r.currentPointerDownCell$.subscribe(e))}onCellPointerUp(e){const r=this._injector.get(c.HoverManagerService);return h.toDisposable(r.currentPointerUpCell$.subscribe(e))}onCellPointerMove(e){const r=this._injector.get(c.HoverManagerService);return h.toDisposable(r.currentCellPosWithEvent$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t,t.event)}))}onDragOver(e){const r=this._injector.get(c.DragManagerService);return h.toDisposable(r.currentCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onDrop(e){const r=this._injector.get(c.DragManagerService);return h.toDisposable(r.endCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}startEditing(){return this._injector.get(h.ICommandService).syncExecuteCommand(c.SetCellEditVisibleOperation.id,{eventType:S.DeviceInputEventType.Dblclick,unitId:this._workbook.getUnitId(),visible:!0})}async endEditing(e){return this._injector.get(h.ICommandService).syncExecuteCommand(c.SetCellEditVisibleOperation.id,{eventType:S.DeviceInputEventType.Keyboard,keycode:e?C.KeyCode.ENTER:C.KeyCode.ESC,visible:!1,unitId:this._workbook.getUnitId()}),await h.awaitTime(0),!0}endEditingAsync(e=!0){return this.endEditing(e)}getScrollStateBySheetId(e){const r=this._workbook.getUnitId(),i=this._injector.get(S.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(S.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).disableSelection(),this}enableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).enableSelection(),this}transparentSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).transparentSelection(),this}showSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(c.ISheetSelectionRenderService).showSelection(),this}}b.FWorkbook.extend(D);class T extends b.FWorksheet{refreshCanvas(){const e=this._injector.get(S.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){const r=this._injector.get(h.ICommandService),t=Math.min(Math.max(e,.1),4);return r.executeCommand(c.SetZoomRatioCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),zoomRatio:t}),this}getZoom(){return this._worksheet.getZoomRatio()}getVisibleRange(){const e=this._workbook.getUnitId(),t=this._injector.get(S.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(S.SHEET_VIEWPORT_KEY.VIEW_MAIN);for(const[v,g]of l)S.sheetContentViewportKeys.indexOf(v)!==-1&&(i.startColumn=Math.min(i.startColumn,g.startColumn),i.startRow=Math.min(i.startRow,g.startRow),i.endColumn=Math.max(i.endColumn,g.endColumn),i.endRow=Math.max(i.endRow,g.endRow));return i}scrollToCell(e,r){const t=this._workbook.getUnitId(),o=this._injector.get(S.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(S.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(S.IRenderManagerService).getRenderById(r))==null?void 0:o.with(c.SheetScrollManagerService);if(i){const a=i.validViewportScrollInfo$.subscribe(l=>{e(l)});return h.toDisposable(a)}return h.toDisposable(()=>{})}getSkeleton(){var r,t;const e=(r=this._injector.get(S.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}autoResizeColumn(e){return this.autoResizeColumns(e,1)}autoResizeColumns(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}setColumnAutoWidth(e,r){return this.autoResizeColumns(e,r)}autoResizeRows(e,r){const t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=[{startRow:e,endRow:e+r-1,startColumn:0,endColumn:this._worksheet.getColumnCount()-1}];return this._commandService.syncExecuteCommand(I.SetWorksheetRowIsAutoHeightCommand.id,{unitId:t,subUnitId:i,ranges:o}),this}customizeColumnHeader(e){var v,g;const r=this,t=this._fWorkbook.getId(),i=this._injector.get(S.IRenderManagerService),o=r.getSheetId(),a=i.getRenderById(t);a&&((v=e.headerStyle)!=null&&v.size)&&(a.with(c.SheetSkeletonManagerService).setColumnHeaderSize(a,o,(g=e.headerStyle)==null?void 0:g.size),r==null||r.refreshCanvas());const l=this._getSheetRenderComponent(t,c.SHEET_VIEW_KEY.COLUMN);l&&(l.setCustomHeader(e),r==null||r.refreshCanvas())}customizeRowHeader(e){const r=this._fWorkbook.getId();this._getSheetRenderComponent(r,c.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}setColumnHeaderHeight(e){const r=this,t=this._fWorkbook.getId(),i=r.getSheetId();return this._commandService.executeCommand(c.SetColumnHeaderHeightCommand.id,{unitId:t,subUnitId:i,size:e}),r==null||r.refreshCanvas(),this}setRowHeaderWidth(e){const r=this,t=this._fWorkbook.getId(),i=r.getSheetId();this._commandService.executeCommand(c.SetRowHeaderWidthCommand.id,{unitId:t,subUnitId:i,size:e});const o=this._getSheetRenderComponent(t,c.SHEET_VIEW_KEY.ROW);return o&&o.setCustomHeader({headerStyle:{size:e}}),r==null||r.refreshCanvas(),this}_getSheetRenderComponent(e,r){const i=this._injector.get(S.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}}b.FWorksheet.extend(T);class x extends b.FPermission{setPermissionDialogVisible(e){this._permissionService.setShowComponents(e)}}b.FPermission.extend(x);class B extends b.FSheetHooks{onCellPointerMove(e){return h.toDisposable(this._injector.get(c.HoverManagerService).currentPosition$.subscribe(e))}onCellPointerOver(e){return h.toDisposable(this._injector.get(c.HoverManagerService).currentCell$.subscribe(e))}onCellDragOver(e){return h.toDisposable(this._injector.get(c.DragManagerService).currentCell$.subscribe(e))}onCellDrop(e){return h.toDisposable(this._injector.get(c.DragManagerService).endCell$.subscribe(e))}onCellRender(e,r=h.InterceptorEffectEnum.Style,t=I.InterceptCellContentPriority.DATA_VALIDATION){return this._injector.get(I.SheetInterceptorService).intercept(I.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(h.ICommandService).beforeCommandExecuted(r=>{const t=r.params;r.id===c.SetCellEditVisibleOperation.id&&t.visible&&e(t)})}onAfterCellEdit(e){return this._injector.get(h.ICommandService).onCommandExecuted(r=>{const t=r.params;r.id===c.SetCellEditVisibleOperation.id&&!t.visible&&e(t)})}}b.FSheetHooks.extend(B);const _={CellClicked:"CellClicked",CellPointerDown:"CellPointerDown",CellPointerUp:"CellPointerUp",CellPointerMove:"CellPointerMove",CellHover:"CellHover"};class A{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 _.CellClicked}get CellHover(){return _.CellHover}get CellPointerDown(){return _.CellPointerDown}get CellPointerUp(){return _.CellPointerUp}get CellPointerMove(){return _.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"}get BeforeSheetZoomChange(){return"BeforeSheetZoomChange"}get SheetZoomChanged(){return"SheetZoomChanged"}}M.FEventName.extend(A);class O extends b.FRange{getCell(){var l;const e=this._injector.get(S.IRenderManagerService),r=this._injector.get(h.ILogService),t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=e.getRenderById(t),a=(l=o==null?void 0:o.with(c.SheetSkeletonManagerService).getSkeletonParam(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 t;const r=this._injector.get(c.ISheetClipboardService).generateCopyContent(this._workbook.getUnitId(),this._worksheet.getSheetId(),this._range);return(t=r==null?void 0:r.html)!=null?t:""}attachPopup(e){var a,l,v;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(v=e.offset)!=null?v:[0,0];const{key:r,disposableCollection:t}=R(e,this._injector.get(C.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,v;e.direction=(a=e.direction)!=null?a:"top-center",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(v=e.offset)!=null?v:[0,0];const{key:r,disposableCollection:t}=R(e,this._injector.get(C.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 h.toDisposable(()=>{t.removeShape(i)})}showDropdown(e){return this._injector.get(c.ISheetCellDropdownManagerService).showDropdown(e)}}b.FRange.extend(O);function R(w,e){const{componentKey:r,isVue3:t}=w;let i;const o=new h.DisposableCollection;return typeof r=="string"?i=r:(i=`External_${h.generateRandomId(6)}`,o.add(e.register(i,r,{framework:t?"vue3":"react"}))),{key:i,disposableCollection:o}}p.transformComponentKey=R,Object.defineProperty(p,Symbol.toStringTag,{value:"Module"})});
1
+ (function(p,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("@univerjs/core"),require("@univerjs/core/facade"),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/core/facade","@univerjs/docs","@univerjs/engine-render","@univerjs/sheets","@univerjs/sheets-ui","@univerjs/sheets/facade","@univerjs/ui","rxjs"],h):(p=typeof globalThis<"u"?globalThis:p||self,h(p.UniverSheetsUiFacade={},p.UniverCore,p.UniverCoreFacade,p.UniverDocs,p.UniverEngineRender,p.UniverSheets,p.UniverSheetsUi,p.UniverSheetsFacade,p.UniverUi,p.rxjs))})(this,function(p,h,M,H,S,I,d,b,C,m){"use strict";class y extends M.FUniver{_initSheetUIEvent(e){const r=e.get(h.ICommandService);this.registerEventHandler(this.Event.BeforeSheetEditStart,()=>r.beforeCommandExecuted(t=>{if(t.id!==d.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(d.IEditorBridgeService),v=t.params,{visible:g,keycode:u,eventType:s}=v,n=l.getEditLocation();if(g){const c={row:n.row,column:n.column,eventType:s,keycode:u,workbook:o,worksheet:a,isZenEditor:!1};if(this.fireEvent(this.Event.BeforeSheetEditStart,c),c.cancel)throw new h.CanceledError}})),this.registerEventHandler(this.Event.BeforeSheetEditEnd,()=>r.beforeCommandExecuted(t=>{if(t.id!==d.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(d.IEditorBridgeService),v=e.get(h.IUniverInstanceService),g=t.params,{visible:u,keycode:s,eventType:n}=g,c=l.getEditLocation();if(!u){const P={row:c.row,column:c.column,eventType:n,keycode:s,workbook:o,worksheet:a,isZenEditor:!1,value:h.RichTextValue.create(v.getUnit(h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isConfirm:s!==C.KeyCode.ESC};if(this.fireEvent(this.Event.BeforeSheetEditEnd,P),P.cancel)throw new h.CanceledError}})),this.registerEventHandler(this.Event.SheetEditStarted,()=>r.onCommandExecuted(t=>{if(t.id!==d.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(d.IEditorBridgeService),v=t.params,{visible:g,keycode:u,eventType:s}=v,n=l.getEditLocation();if(g){const c={row:n.row,column:n.column,eventType:s,keycode:u,workbook:o,worksheet:a,isZenEditor:!1};this.fireEvent(this.Event.SheetEditStarted,c)}})),this.registerEventHandler(this.Event.SheetEditEnded,()=>r.onCommandExecuted(t=>{if(t.id!==d.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(d.IEditorBridgeService),v=t.params,{visible:g,keycode:u,eventType:s}=v,n=l.getEditLocation();if(!g){const c={row:n.row,column:n.column,eventType:s,keycode:u,workbook:o,worksheet:a,isZenEditor:!1,isConfirm:u!==C.KeyCode.ESC};this.fireEvent(this.Event.SheetEditEnded,c)}})),this.registerEventHandler(this.Event.SheetEditChanging,()=>r.onCommandExecuted(t=>{if(t.id!==H.RichTextEditingMutation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(d.IEditorBridgeService),v=e.get(h.IUniverInstanceService),g=t.params;if(!l.isVisible().visible)return;const{unitId:u}=g;if(u===h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY){const{row:s,column:n}=l.getEditLocation(),c={workbook:o,worksheet:a,row:s,column:n,value:h.RichTextValue.create(v.getUnit(h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isZenEditor:!1};this.fireEvent(this.Event.SheetEditChanging,c)}})),this.registerEventHandler(this.Event.BeforeSheetZoomChange,()=>r.beforeCommandExecuted(t=>{if(t.id!==d.SetZoomRatioCommand.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l={zoom:t.params.zoomRatio,workbook:o,worksheet:a};if(this.fireEvent(this.Event.BeforeSheetZoomChange,l),l.cancel)throw new h.CanceledError})),this.registerEventHandler(this.Event.SheetZoomChanged,()=>r.onCommandExecuted(t=>{if(t.id!==d.SetZoomRatioCommand.id)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})}))}_initObserverListener(e){const r=e.get(S.IRenderManagerService),t=e.get(h.LifecycleService),i=new h.DisposableCollection;this.disposeWithMe(t.lifecycle$.subscribe(v=>{if(v!==h.LifecycleStages.Rendered)return;i.dispose();const g=e.get(d.HoverManagerService),u=e.get(d.DragManagerService);g&&(this.registerEventHandler(this.Event.CellClicked,()=>{var s;return(s=g.currentClickedCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.location.unitId,n.location.subUnitId);c&&this.fireEvent(this.Event.CellClicked,{...c,...n,row:n.location.row,column:n.location.col})})}),this.registerEventHandler(this.Event.CellHover,()=>{var s;return(s=g.currentRichText$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.CellHover,{...c,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.CellPointerDown,()=>{var s;return(s=g.currentPointerDownCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.CellPointerDown,{...c,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.CellPointerUp,()=>{var s;return(s=g.currentPointerUpCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.CellPointerUp,{...c,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.CellPointerMove,()=>{var s;return(s=g.currentCellPosWithEvent$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.CellPointerMove,{...c,...n,row:n.row,column:n.col})})}),this.registerEventHandler(this.Event.DragOver,()=>{var s;return(s=u.currentCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.location.unitId,n.location.subUnitId);c&&this.fireEvent(this.Event.DragOver,{...c,...n,row:n.location.row,column:n.location.col})})}),this.registerEventHandler(this.Event.Drop,()=>{var s;return(s=u.endCell$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.location.unitId,n.location.subUnitId);c&&this.fireEvent(this.Event.Drop,{...c,...n,row:n.location.row,column:n.location.col})})}),this.registerEventHandler(this.Event.RowHeaderClick,()=>{var s;return(s=g.currentRowHeaderClick$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.RowHeaderClick,{...c,row:n.index})})}),this.registerEventHandler(this.Event.RowHeaderPointerDown,()=>{var s;return(s=g.currentRowHeaderPointerDown$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.RowHeaderPointerDown,{...c,row:n.index})})}),this.registerEventHandler(this.Event.RowHeaderPointerUp,()=>{var s;return(s=g.currentRowHeaderPointerUp$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.RowHeaderPointerUp,{...c,row:n.index})})}),this.registerEventHandler(this.Event.RowHeaderHover,()=>{var s;return(s=g.currentHoveredRowHeader$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.RowHeaderHover,{...c,row:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderClick,()=>{var s;return(s=g.currentColHeaderClick$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.ColumnHeaderClick,{...c,column:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderPointerDown,()=>{var s;return(s=g.currentColHeaderPointerDown$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.ColumnHeaderPointerDown,{...c,column:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderPointerUp,()=>{var s;return(s=g.currentColHeaderPointerUp$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.ColumnHeaderPointerUp,{...c,column:n.index})})}),this.registerEventHandler(this.Event.ColumnHeaderHover,()=>{var s;return(s=g.currentHoveredColHeader$)==null?void 0:s.pipe(m.filter(n=>!!n)).subscribe(n=>{const c=this.getSheetTarget(n.unitId,n.subUnitId);c&&this.fireEvent(this.Event.ColumnHeaderHover,{...c,column:n.index})})}))})),this.disposeWithMe(i);const o=new Map;let a;const l=m.combineLatest([r.created$,t.lifecycle$]);this.disposeWithMe(l.subscribe(([v,g])=>{var P;if(v.type===h.UniverInstanceType.UNIVER_SHEET&&(a=v),g<=h.LifecycleStages.Rendered||!a)return;const u=new h.DisposableCollection,s=this.getWorkbook(a.unitId);if(!s)return;o.get(a.unitId)&&((P=o.get(a.unitId))==null||P.dispose()),o.set(a.unitId,u);const n=a.with(d.SheetScrollManagerService),c=a.with(I.SheetsSelectionsService);u.add(this.registerEventHandler(this.Event.Scroll,()=>n.validViewportScrollInfo$.subscribe(E=>{E&&this.fireEvent(this.Event.Scroll,{workbook:s,worksheet:s.getActiveSheet(),...E})}))),u.add(this.registerEventHandler(this.Event.SelectionMoveStart,()=>c.selectionMoveStart$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionMoveStart,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),u.add(this.registerEventHandler(this.Event.SelectionMoving,()=>c.selectionMoving$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionMoving,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),u.add(this.registerEventHandler(this.Event.SelectionMoveEnd,()=>c.selectionMoveEnd$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionMoveEnd,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),u.add(this.registerEventHandler(this.Event.SelectionChanged,()=>c.selectionChanged$.subscribe(E=>{var f;this.fireEvent(this.Event.SelectionChanged,{workbook:s,worksheet:s.getActiveSheet(),selections:(f=E==null?void 0:E.map(k=>k.range))!=null?f:[]})}))),a=null,this.disposeWithMe(u)})),this.disposeWithMe(r.disposed$.subscribe(v=>{var g;(g=o.get(v))==null||g.dispose(),o.delete(v)})),this.disposeWithMe(()=>{o.forEach(v=>{v.dispose()})})}_initialize(e){this._initSheetUIEvent(e),this._initObserverListener(e);const r=e.get(h.ICommandService);this.registerEventHandler(this.Event.BeforeClipboardChange,()=>r.beforeCommandExecuted(t=>{switch(t.id){case C.CopyCommand.id:case C.CutCommand.id:this._beforeClipboardChange();break}})),this.registerEventHandler(this.Event.ClipboardChanged,()=>r.onCommandExecuted(t=>{switch(t.id){case C.CopyCommand.id:case C.CutCommand.id:this._clipboardChanged();break}})),this.registerEventHandler(this.Event.BeforeClipboardPaste,()=>r.beforeCommandExecuted(t=>{switch(t.id){case d.SheetPasteShortKeyCommand.id:this._beforeClipboardPaste(t.params);break;case C.PasteCommand.id:this._beforeClipboardPasteAsync();break}})),this.registerEventHandler(this.Event.ClipboardPasted,()=>r.onCommandExecuted(t=>{switch(t.id){case d.SheetPasteShortKeyCommand.id:this._clipboardPaste(t.params);break;case C.PasteCommand.id:this._clipboardPasteAsync();break}})),this.registerEventHandler(this.Event.SheetSkeletonChanged,()=>r.onCommandExecuted(t=>{if(I.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(t.id)>-1){const i=this.getActiveSheet();if(!i)return;const o=I.getSkeletonChangedEffectedRange(t,i.worksheet.getMaxColumns()).map(a=>{var l,v;return(v=(l=this.getWorkbook(a.unitId))==null?void 0:l.getSheetBySheetId(a.subUnitId))==null?void 0:v.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})}}))}_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(d.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(){const e=this._generateClipboardCopyParam();if(e&&(this.fireEvent(this.Event.BeforeClipboardChange,e),e.cancel))throw new h.CanceledError}_clipboardChanged(){const e=this._generateClipboardCopyParam();e&&this.fireEvent(this.Event.ClipboardChanged,e)}_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(C.IClipboardInterfaceService).read())[0];let a;if(o){const l=o.types,v=l.indexOf(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(u=>u&&u.text()):"",g=l.indexOf(C.HTML_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.HTML_CLIPBOARD_MIME_TYPE).then(u=>u&&u.text()):"";a={workbook:e,worksheet:r,text:v,html:g}}return a}_beforeClipboardPaste(e){const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.BeforeClipboardPaste,r),r.cancel))throw new h.CanceledError}_clipboardPaste(e){const r=this._generateClipboardPasteParam(e);if(r&&(this.fireEvent(this.Event.ClipboardPasted,r),r.cancel))throw new h.CanceledError}async _beforeClipboardPasteAsync(){if(!C.supportClipboardAPI()){this._injector.get(h.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 h.CanceledError}async _clipboardPasteAsync(){if(!C.supportClipboardAPI()){this._injector.get(h.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 h.CanceledError}customizeColumnHeader(e){var g,u;const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId(),i=this._injector.get(S.IRenderManagerService),o=r.getActiveSheet(),a=o.getSheetId(),l=i.getRenderById(t);l&&((g=e.headerStyle)!=null&&g.size)&&(l.with(d.SheetSkeletonManagerService).setColumnHeaderSize(l,a,(u=e.headerStyle)==null?void 0:u.size),o==null||o.refreshCanvas()),this._getSheetRenderComponent(t,d.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,d.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}registerSheetRowHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,d.SHEET_VIEW_KEY.ROW),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetColumnHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,d.SHEET_VIEW_KEY.COLUMN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetMainExtension(e,...r){const t=this._getSheetRenderComponent(e,d.SHEET_VIEW_KEY.MAIN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}_getSheetRenderComponent(e,r){const i=this._injector.get(S.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(b.FSheetHooks)}}M.FUniver.extend(y);class D extends b.FWorkbook{openSiderbar(e){return this._logDeprecation("openSiderbar"),this._injector.get(C.ISidebarService).open(e)}openDialog(e){this._logDeprecation("openDialog");const t=this._injector.get(C.IDialogService).open({...e,onClose:()=>{t.dispose()}});return t}_logDeprecation(e){this._injector.get(h.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(d.HoverManagerService);return h.toDisposable(r.currentClickedCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onCellHover(e){const r=this._injector.get(d.HoverManagerService);return h.toDisposable(r.currentRichText$.pipe(m.filter(t=>!!t)).subscribe(e))}onCellPointerDown(e){const r=this._injector.get(d.HoverManagerService);return h.toDisposable(r.currentPointerDownCell$.subscribe(e))}onCellPointerUp(e){const r=this._injector.get(d.HoverManagerService);return h.toDisposable(r.currentPointerUpCell$.subscribe(e))}onCellPointerMove(e){const r=this._injector.get(d.HoverManagerService);return h.toDisposable(r.currentCellPosWithEvent$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t,t.event)}))}onDragOver(e){const r=this._injector.get(d.DragManagerService);return h.toDisposable(r.currentCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onDrop(e){const r=this._injector.get(d.DragManagerService);return h.toDisposable(r.endCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}startEditing(){return this._injector.get(h.ICommandService).syncExecuteCommand(d.SetCellEditVisibleOperation.id,{eventType:S.DeviceInputEventType.Dblclick,unitId:this._workbook.getUnitId(),visible:!0})}async endEditing(e){return this._injector.get(h.ICommandService).syncExecuteCommand(d.SetCellEditVisibleOperation.id,{eventType:S.DeviceInputEventType.Keyboard,keycode:e?C.KeyCode.ENTER:C.KeyCode.ESC,visible:!1,unitId:this._workbook.getUnitId()}),await h.awaitTime(0),!0}endEditingAsync(e=!0){return this.endEditing(e)}abortEditingAsync(){return this.endEditingAsync(!1)}getScrollStateBySheetId(e){const r=this._workbook.getUnitId(),i=this._injector.get(S.IRenderManagerService).getRenderById(r);return i?i.with(d.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:e}):null}disableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(d.ISheetSelectionRenderService).disableSelection(),this}enableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(d.ISheetSelectionRenderService).enableSelection(),this}transparentSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(d.ISheetSelectionRenderService).transparentSelection(),this}showSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);return t&&t.with(d.ISheetSelectionRenderService).showSelection(),this}}b.FWorkbook.extend(D);class T extends b.FWorksheet{refreshCanvas(){const e=this._injector.get(S.IRenderManagerService),r=this._fWorkbook.id,t=e.getRenderById(r);if(!t)throw new Error(`Render Unit with unitId ${r} not found`);t.with(d.SheetSkeletonManagerService).reCalculate();const i=t.mainComponent;if(!i)throw new Error("Main component not found");return i.makeDirty(),this}zoom(e){const r=this._injector.get(h.ICommandService),t=Math.min(Math.max(e,.1),4);return r.executeCommand(d.SetZoomRatioCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),zoomRatio:t}),this}getZoom(){return this._worksheet.getZoomRatio()}getVisibleRange(){const e=this._workbook.getUnitId(),t=this._injector.get(S.IRenderManagerService).getRenderById(e);let i={startColumn:0,startRow:0,endColumn:0,endRow:0};if(!t)return i;const a=t.with(d.SheetSkeletonManagerService).getCurrentSkeleton();if(!a)return i;const l=a==null?void 0:a.getVisibleRanges();if(!l)return i;i=a.getVisibleRangeByViewport(S.SHEET_VIEWPORT_KEY.VIEW_MAIN);for(const[v,g]of l)S.sheetContentViewportKeys.indexOf(v)!==-1&&(i.startColumn=Math.min(i.startColumn,g.startColumn),i.startRow=Math.min(i.startRow,g.startRow),i.endColumn=Math.max(i.endColumn,g.endColumn),i.endRow=Math.max(i.endRow,g.endRow));return i}scrollToCell(e,r){const t=this._workbook.getUnitId(),o=this._injector.get(S.IRenderManagerService).getRenderById(t);return o&&(o==null?void 0:o.with(d.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(S.IRenderManagerService).getRenderById(r);return o&&o.with(d.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:t})||e}onScroll(e){var o;const r=this._workbook.getUnitId(),i=(o=this._injector.get(S.IRenderManagerService).getRenderById(r))==null?void 0:o.with(d.SheetScrollManagerService);if(i){const a=i.validViewportScrollInfo$.subscribe(l=>{e(l)});return h.toDisposable(a)}return h.toDisposable(()=>{})}getSkeleton(){var r,t;const e=(r=this._injector.get(S.IRenderManagerService).getRenderById(this._workbook.getUnitId()))==null?void 0:r.with(d.SheetSkeletonManagerService);return(t=e==null?void 0:e.getWorksheetSkeleton(this._worksheet.getSheetId()))==null?void 0:t.skeleton}autoResizeColumn(e){return this.autoResizeColumns(e,1)}autoResizeColumns(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(d.SetWorksheetColAutoWidthCommand.id,{unitId:t,subUnitId:i,ranges:o}),this}setColumnAutoWidth(e,r){return this.autoResizeColumns(e,r)}autoResizeRows(e,r){const t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=[{startRow:e,endRow:e+r-1,startColumn:0,endColumn:this._worksheet.getColumnCount()-1}];return this._commandService.syncExecuteCommand(I.SetWorksheetRowIsAutoHeightCommand.id,{unitId:t,subUnitId:i,ranges:o}),this}customizeColumnHeader(e){var v,g;const r=this,t=this._fWorkbook.getId(),i=this._injector.get(S.IRenderManagerService),o=r.getSheetId(),a=i.getRenderById(t);a&&((v=e.headerStyle)!=null&&v.size)&&(a.with(d.SheetSkeletonManagerService).setColumnHeaderSize(a,o,(g=e.headerStyle)==null?void 0:g.size),r==null||r.refreshCanvas());const l=this._getSheetRenderComponent(t,d.SHEET_VIEW_KEY.COLUMN);l&&(l.setCustomHeader(e),r==null||r.refreshCanvas())}customizeRowHeader(e){const r=this._fWorkbook.getId();this._getSheetRenderComponent(r,d.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}setColumnHeaderHeight(e){const r=this,t=this._fWorkbook.getId(),i=r.getSheetId();return this._commandService.executeCommand(d.SetColumnHeaderHeightCommand.id,{unitId:t,subUnitId:i,size:e}),r==null||r.refreshCanvas(),this}setRowHeaderWidth(e){const r=this,t=this._fWorkbook.getId(),i=r.getSheetId();this._commandService.executeCommand(d.SetRowHeaderWidthCommand.id,{unitId:t,subUnitId:i,size:e});const o=this._getSheetRenderComponent(t,d.SHEET_VIEW_KEY.ROW);return o&&o.setCustomHeader({headerStyle:{size:e}}),r==null||r.refreshCanvas(),this}_getSheetRenderComponent(e,r){const i=this._injector.get(S.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}}b.FWorksheet.extend(T);class x extends b.FPermission{setPermissionDialogVisible(e){this._permissionService.setShowComponents(e)}}b.FPermission.extend(x);class B extends b.FSheetHooks{onCellPointerMove(e){return h.toDisposable(this._injector.get(d.HoverManagerService).currentPosition$.subscribe(e))}onCellPointerOver(e){return h.toDisposable(this._injector.get(d.HoverManagerService).currentCell$.subscribe(e))}onCellDragOver(e){return h.toDisposable(this._injector.get(d.DragManagerService).currentCell$.subscribe(e))}onCellDrop(e){return h.toDisposable(this._injector.get(d.DragManagerService).endCell$.subscribe(e))}onCellRender(e,r=h.InterceptorEffectEnum.Style,t=I.InterceptCellContentPriority.DATA_VALIDATION){return this._injector.get(I.SheetInterceptorService).intercept(I.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(h.ICommandService).beforeCommandExecuted(r=>{const t=r.params;r.id===d.SetCellEditVisibleOperation.id&&t.visible&&e(t)})}onAfterCellEdit(e){return this._injector.get(h.ICommandService).onCommandExecuted(r=>{const t=r.params;r.id===d.SetCellEditVisibleOperation.id&&!t.visible&&e(t)})}}b.FSheetHooks.extend(B);const _={CellClicked:"CellClicked",CellPointerDown:"CellPointerDown",CellPointerUp:"CellPointerUp",CellPointerMove:"CellPointerMove",CellHover:"CellHover"};class A{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 _.CellClicked}get CellHover(){return _.CellHover}get CellPointerDown(){return _.CellPointerDown}get CellPointerUp(){return _.CellPointerUp}get CellPointerMove(){return _.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"}get BeforeSheetZoomChange(){return"BeforeSheetZoomChange"}get SheetZoomChanged(){return"SheetZoomChanged"}}M.FEventName.extend(A);class O extends b.FRange{getCell(){var l;const e=this._injector.get(S.IRenderManagerService),r=this._injector.get(h.ILogService),t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=e.getRenderById(t),a=(l=o==null?void 0:o.with(d.SheetSkeletonManagerService).getSkeletonParam(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 t;const r=this._injector.get(d.ISheetClipboardService).generateCopyContent(this._workbook.getUnitId(),this._worksheet.getSheetId(),this._range);return(t=r==null?void 0:r.html)!=null?t:""}attachPopup(e){var a,l,v;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(v=e.offset)!=null?v:[0,0];const{key:r,disposableCollection:t}=R(e,this._injector.get(C.ComponentManager)),o=this._injector.get(d.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(d.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,v;e.direction=(a=e.direction)!=null?a:"top-center",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(v=e.offset)!=null?v:[0,0];const{key:r,disposableCollection:t}=R(e,this._injector.get(C.ComponentManager)),o=this._injector.get(d.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(d.IMarkSelectionService),i=t.addShape({range:this._range,style:e,primary:r});if(!i)throw new Error("Failed to highlight current range");return h.toDisposable(()=>{t.removeShape(i)})}showDropdown(e){return this._injector.get(d.ISheetCellDropdownManagerService).showDropdown(e)}}b.FRange.extend(O);function R(w,e){const{componentKey:r,isVue3:t}=w;let i;const o=new h.DisposableCollection;return typeof r=="string"?i=r:(i=`External_${h.generateRandomId(6)}`,o.add(e.register(i,r,{framework:t?"vue3":"react"}))),{key:i,disposableCollection:o}}p.transformComponentKey=R,Object.defineProperty(p,Symbol.toStringTag,{value:"Module"})});