@univerjs/sheets-ui 0.13.0 → 0.14.0-insiders.20251227-b250a8d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/facade.js +1 -1
- package/lib/cjs/index.js +14 -14
- package/lib/cjs/locale/ca-ES.js +1 -1
- package/lib/cjs/locale/en-US.js +1 -1
- package/lib/cjs/locale/es-ES.js +1 -1
- package/lib/cjs/locale/fa-IR.js +1 -1
- package/lib/cjs/locale/fr-FR.js +1 -1
- package/lib/cjs/locale/ja-JP.js +1 -1
- package/lib/cjs/locale/ko-KR.js +1 -1
- package/lib/cjs/locale/ru-RU.js +1 -1
- package/lib/cjs/locale/vi-VN.js +1 -1
- package/lib/cjs/locale/zh-CN.js +1 -1
- package/lib/cjs/locale/zh-TW.js +1 -1
- package/lib/es/facade.js +83 -82
- package/lib/es/index.js +6829 -6872
- package/lib/es/locale/ca-ES.js +5 -2
- package/lib/es/locale/en-US.js +5 -2
- package/lib/es/locale/es-ES.js +5 -2
- package/lib/es/locale/fa-IR.js +5 -2
- package/lib/es/locale/fr-FR.js +5 -2
- package/lib/es/locale/ja-JP.js +5 -2
- package/lib/es/locale/ko-KR.js +5 -2
- package/lib/es/locale/ru-RU.js +5 -2
- package/lib/es/locale/vi-VN.js +5 -2
- package/lib/es/locale/zh-CN.js +5 -2
- package/lib/es/locale/zh-TW.js +5 -2
- package/lib/facade.js +83 -82
- package/lib/index.css +1 -1
- package/lib/index.js +6829 -6872
- package/lib/locale/ca-ES.js +5 -2
- package/lib/locale/en-US.js +5 -2
- package/lib/locale/es-ES.js +5 -2
- package/lib/locale/fa-IR.js +5 -2
- package/lib/locale/fr-FR.js +5 -2
- package/lib/locale/ja-JP.js +5 -2
- package/lib/locale/ko-KR.js +5 -2
- package/lib/locale/ru-RU.js +5 -2
- package/lib/locale/vi-VN.js +5 -2
- package/lib/locale/zh-CN.js +5 -2
- package/lib/locale/zh-TW.js +5 -2
- package/lib/types/commands/commands/set-frozen.command.d.ts +5 -1
- package/lib/types/common/utils.d.ts +2 -7
- package/lib/types/components/menu-item-frozen/MenuItemFrozen.d.ts +2 -0
- package/lib/types/components/menu-item-frozen/index.d.ts +17 -0
- package/lib/types/components/menu-item-frozen/interface.d.ts +5 -0
- package/lib/types/controllers/clipboard/utils.d.ts +1 -1
- package/lib/types/controllers/menu/frozen.menu.d.ts +14 -0
- package/lib/types/controllers/menu/menu.d.ts +0 -8
- package/lib/types/facade/f-enum.d.ts +18 -0
- package/lib/types/facade/f-worksheet.d.ts +19 -4
- package/lib/types/facade/index.d.ts +1 -0
- package/lib/types/index.d.ts +1 -1
- package/lib/types/locale/en-US.d.ts +3 -0
- package/lib/types/views/defined-name/DefinedNameOverlay.d.ts +4 -1
- package/lib/umd/facade.js +1 -1
- package/lib/umd/index.js +13 -13
- package/lib/umd/locale/ca-ES.js +1 -1
- package/lib/umd/locale/en-US.js +1 -1
- package/lib/umd/locale/es-ES.js +1 -1
- package/lib/umd/locale/fa-IR.js +1 -1
- package/lib/umd/locale/fr-FR.js +1 -1
- package/lib/umd/locale/ja-JP.js +1 -1
- package/lib/umd/locale/ko-KR.js +1 -1
- package/lib/umd/locale/ru-RU.js +1 -1
- package/lib/umd/locale/vi-VN.js +1 -1
- package/lib/umd/locale/zh-CN.js +1 -1
- package/lib/umd/locale/zh-TW.js +1 -1
- package/package.json +16 -16
- package/LICENSE +0 -176
- package/lib/types/commands/commands/add-worksheet-merge.command.d.ts +0 -12
- package/lib/types/controllers/active-worksheet/active-worksheet.controller.d.ts +0 -19
package/lib/locale/ca-ES.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "Generar nova matriu",
|
|
226
226
|
fitContent: "Ajustar a les dades",
|
|
227
227
|
freeze: "Immobilitzar",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "Immobilitzar fins a la cel·la activa ({0} fila {1} columna)",
|
|
229
|
+
freezeCol: "Immobilitzar fins columna {0}",
|
|
230
|
+
freezeRow: "Immobilitzar fins fila {0}",
|
|
231
|
+
freezeFirstCol: "Immobilitzar primera columna",
|
|
232
|
+
freezeFirstRow: "Immobilitzar primera fila",
|
|
230
233
|
cancelFreeze: "Mobilitzar panells",
|
|
231
234
|
deleteAllRowsAlert: "No podeu suprimir totes les files del full",
|
|
232
235
|
deleteAllColumnsAlert: "No podeu suprimir totes les columnes del full",
|
package/lib/locale/en-US.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "Generate new matrix",
|
|
226
226
|
fitContent: "Fit for data",
|
|
227
227
|
freeze: "Freeze",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "Freeze to active cell ({0} row {1} column)",
|
|
229
|
+
freezeCol: "Freeze to column {0}",
|
|
230
|
+
freezeRow: "Freeze to row {0}",
|
|
231
|
+
freezeFirstCol: "Freeze first column",
|
|
232
|
+
freezeFirstRow: "Freeze first row",
|
|
230
233
|
cancelFreeze: "Cancel freeze",
|
|
231
234
|
deleteAllRowsAlert: "You can't delete all the rows on the sheet",
|
|
232
235
|
deleteAllColumnsAlert: "You can't delete all the columns on the sheet",
|
package/lib/locale/es-ES.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "Generar nueva matriz",
|
|
226
226
|
fitContent: "Ajustar al contenido",
|
|
227
227
|
freeze: "Inmovilizar",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "Inmovilizar hasta la celda activa ({0} fila {1} columna)",
|
|
229
|
+
freezeCol: "Inmovilizar hasta columna {0}",
|
|
230
|
+
freezeRow: "Inmovilizar hasta fila {0}",
|
|
231
|
+
freezeFirstCol: "Inmovilizar primera columna",
|
|
232
|
+
freezeFirstRow: "Inmovilizar primera fila",
|
|
230
233
|
cancelFreeze: "Movilizar paneles",
|
|
231
234
|
deleteAllRowsAlert: "No puedes eliminar todas las filas de la hoja",
|
|
232
235
|
deleteAllColumnsAlert: "No puedes eliminar todas las columnas de la hoja",
|
package/lib/locale/fa-IR.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "ایجاد ماتریس جدید",
|
|
226
226
|
fitContent: "مناسب برای دادهها",
|
|
227
227
|
freeze: "انجماد",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "انجماد تا سلول فعال ({0} سطر {1} ستون)",
|
|
229
|
+
freezeCol: "انجماد تا ستون {0}",
|
|
230
|
+
freezeRow: "انجماد تا سطر {0}",
|
|
231
|
+
freezeFirstCol: "انجماد اولین ستون",
|
|
232
|
+
freezeFirstRow: "انجماد اولین سطر",
|
|
230
233
|
cancelFreeze: "لغو انجماد",
|
|
231
234
|
deleteAllRowsAlert: "شما نمیتوانید تمام سطرهای برگه را حذف کنید",
|
|
232
235
|
deleteAllColumnsAlert: "شما نمیتوانید تمام ستونهای برگه را حذف کنید",
|
package/lib/locale/fr-FR.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "Générer une nouvelle matrice",
|
|
226
226
|
fitContent: "Adapter au contenu",
|
|
227
227
|
freeze: "Figer",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "Figer jusqu'à la cellule active ({0} ligne {1} colonne)",
|
|
229
|
+
freezeCol: "Figer jusqu'à la colonne {0}",
|
|
230
|
+
freezeRow: "Figer jusqu'à la ligne {0}",
|
|
231
|
+
freezeFirstCol: "Figer la première colonne",
|
|
232
|
+
freezeFirstRow: "Figer la première ligne",
|
|
230
233
|
cancelFreeze: "Annuler le figement",
|
|
231
234
|
deleteAllRowsAlert: "Vous ne pouvez pas supprimer toutes les lignes de la feuille",
|
|
232
235
|
deleteAllColumnsAlert: "Vous ne pouvez pas supprimer toutes les colonnes de la feuille",
|
package/lib/locale/ja-JP.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "新しい行列を生成",
|
|
226
226
|
fitContent: "内容に合わせる",
|
|
227
227
|
freeze: "固定",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "アクティブセルまで固定({0}行 {1}列)",
|
|
229
|
+
freezeCol: "列{0}まで固定",
|
|
230
|
+
freezeRow: "行{0}まで固定",
|
|
231
|
+
freezeFirstCol: "最初の列を固定",
|
|
232
|
+
freezeFirstRow: "最初の行を固定",
|
|
230
233
|
cancelFreeze: "固定を解除",
|
|
231
234
|
deleteAllRowsAlert: "すべての行を削除できません",
|
|
232
235
|
deleteAllColumnsAlert: "すべての列を削除できません",
|
package/lib/locale/ko-KR.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "새 행렬 생성",
|
|
226
226
|
fitContent: "데이터에 맞게 조정",
|
|
227
227
|
freeze: "고정",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "활성 셀까지 고정 ({0}행 {1}열)",
|
|
229
|
+
freezeCol: "{0}열까지 고정",
|
|
230
|
+
freezeRow: "{0}행까지 고정",
|
|
231
|
+
freezeFirstCol: "첫 번째 열 고정",
|
|
232
|
+
freezeFirstRow: "첫 번째 행 고정",
|
|
230
233
|
cancelFreeze: "고정 해제",
|
|
231
234
|
deleteAllRowsAlert: "행을 모두 삭제할 수 없습니다",
|
|
232
235
|
deleteAllColumnsAlert: "열을 모두 삭제할 수 없습니다",
|
package/lib/locale/ru-RU.js
CHANGED
|
@@ -225,8 +225,11 @@ const e = {
|
|
|
225
225
|
generateNewMatrix: "Создать новую матрицу",
|
|
226
226
|
fitContent: "Подогнать под данные",
|
|
227
227
|
freeze: "Закрепить",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "Закрепить до активной ячейки ({0} строка {1} столбец)",
|
|
229
|
+
freezeCol: "Закрепить до {0} столбца",
|
|
230
|
+
freezeRow: "Закрепить до {0} строки",
|
|
231
|
+
freezeFirstCol: "Закрепить первый столбец",
|
|
232
|
+
freezeFirstRow: "Закрепить первую строку",
|
|
230
233
|
cancelFreeze: "Отменить закрепление",
|
|
231
234
|
deleteAllRowsAlert: "Нельзя удалить все строки на листе",
|
|
232
235
|
deleteAllColumnsAlert: "Нельзя удалить все столбцы на листе",
|
package/lib/locale/vi-VN.js
CHANGED
|
@@ -225,8 +225,11 @@ const n = {
|
|
|
225
225
|
generateNewMatrix: "Tạo ma trận mới",
|
|
226
226
|
fitContent: "Vừa dữ liệu",
|
|
227
227
|
freeze: "Đóng băng",
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
freezeCell: "Đóng băng đến ô hiện tại ({0} hàng {1} cột)",
|
|
229
|
+
freezeCol: "Đóng băng đến cột {0}",
|
|
230
|
+
freezeRow: "Đóng băng đến hàng {0}",
|
|
231
|
+
freezeFirstCol: "Đóng băng cột đầu tiên",
|
|
232
|
+
freezeFirstRow: "Đóng băng hàng đầu tiên",
|
|
230
233
|
cancelFreeze: "Hủy đóng băng",
|
|
231
234
|
deleteAllRowsAlert: "Bạn không thể xóa tất cả các hàng trong trang bảng",
|
|
232
235
|
deleteAllColumnsAlert: "Bạn không thể xóa tất cả các cột trong trang bảng",
|
package/lib/locale/zh-CN.js
CHANGED
|
@@ -226,8 +226,11 @@ const e = {
|
|
|
226
226
|
generateNewMatrix: "生成新矩阵",
|
|
227
227
|
fitContent: "适合数据",
|
|
228
228
|
freeze: "冻结",
|
|
229
|
-
|
|
230
|
-
|
|
229
|
+
freezeCell: "冻结至活动单元格({0}行{1}列)",
|
|
230
|
+
freezeCol: "冻结至第 {0} 列",
|
|
231
|
+
freezeRow: "冻结至第 {0} 行",
|
|
232
|
+
freezeFirstCol: "冻结首列",
|
|
233
|
+
freezeFirstRow: "冻结首行",
|
|
231
234
|
cancelFreeze: "取消冻结",
|
|
232
235
|
deleteAllRowsAlert: "您无法删除工作表上的所有行",
|
|
233
236
|
deleteAllColumnsAlert: "您无法删除工作表上的所有列",
|
package/lib/locale/zh-TW.js
CHANGED
|
@@ -226,8 +226,11 @@ const e = {
|
|
|
226
226
|
generateNewMatrix: "產生新矩陣",
|
|
227
227
|
fitContent: "適合數據",
|
|
228
228
|
freeze: "凍結窗格",
|
|
229
|
-
|
|
230
|
-
|
|
229
|
+
freezeCell: "凍結至目前儲存格(第 {0} 列 {1} 欄)",
|
|
230
|
+
freezeCol: "凍結至第 {0} 欄",
|
|
231
|
+
freezeRow: "凍結至第 {0} 列",
|
|
232
|
+
freezeFirstCol: "凍結第一欄",
|
|
233
|
+
freezeFirstRow: "凍結第一列",
|
|
231
234
|
cancelFreeze: "取消凍結",
|
|
232
235
|
deleteAllRowsAlert: "您無法刪除工作表上的所有列",
|
|
233
236
|
deleteAllColumnsAlert: "您無法刪除工作表上的所有欄",
|
|
@@ -2,7 +2,9 @@ import { ICommand } from '@univerjs/core';
|
|
|
2
2
|
export declare enum SetSelectionFrozenType {
|
|
3
3
|
RowColumn = 0,
|
|
4
4
|
Row = 1,
|
|
5
|
-
Column = 2
|
|
5
|
+
Column = 2,
|
|
6
|
+
FirstRow = 3,
|
|
7
|
+
FirstColumn = 4
|
|
6
8
|
}
|
|
7
9
|
export interface ISetSelectionFrozenCommandParams {
|
|
8
10
|
type?: SetSelectionFrozenType;
|
|
@@ -10,3 +12,5 @@ export interface ISetSelectionFrozenCommandParams {
|
|
|
10
12
|
export declare const SetSelectionFrozenCommand: ICommand<ISetSelectionFrozenCommandParams>;
|
|
11
13
|
export declare const SetRowFrozenCommand: ICommand;
|
|
12
14
|
export declare const SetColumnFrozenCommand: ICommand;
|
|
15
|
+
export declare const SetFirstRowFrozenCommand: ICommand;
|
|
16
|
+
export declare const SetFirstColumnFrozenCommand: ICommand;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IPosition, IRange, Workbook, Worksheet } from '@univerjs/core';
|
|
2
2
|
import { IBoundRectNoAngle, IRender, Scene, SpreadsheetSkeleton } from '@univerjs/engine-render';
|
|
3
3
|
import { ICollaborator } from '@univerjs/protocol';
|
|
4
4
|
import { ISheetLocation } from '@univerjs/sheets';
|
|
@@ -6,15 +6,10 @@ import { ISheetSkeletonManagerParam } from '../services/sheet-skeleton-manager.s
|
|
|
6
6
|
export declare function getUserListEqual(userList1: ICollaborator[], userList2: ICollaborator[]): boolean;
|
|
7
7
|
export declare function checkCellContentInRanges(worksheet: Worksheet, ranges: IRange[]): boolean;
|
|
8
8
|
export declare function checkCellContentInRange(worksheet: Worksheet, range: IRange): boolean;
|
|
9
|
-
export declare function getClearContentMutationParamsForRanges(accessor: IAccessor, unitId: string, worksheet: Worksheet, ranges: IRange[]): {
|
|
10
|
-
undos: IMutationInfo[];
|
|
11
|
-
redos: IMutationInfo[];
|
|
12
|
-
};
|
|
13
|
-
export declare function getClearContentMutationParamForRange(worksheet: Worksheet, range: IRange): ObjectMatrix<Nullable<ICellData>>;
|
|
14
9
|
export declare function getCellIndexByOffsetWithMerge(offsetX: number, offsetY: number, scene: Scene, skeleton: SpreadsheetSkeleton): {
|
|
15
10
|
actualRow: number;
|
|
16
11
|
actualCol: number;
|
|
17
|
-
mergeCell: Nullable<IRange>;
|
|
12
|
+
mergeCell: import('@univerjs/core').Nullable<IRange>;
|
|
18
13
|
row: number;
|
|
19
14
|
col: number;
|
|
20
15
|
} | undefined;
|
|
@@ -0,0 +1,17 @@
|
|
|
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
|
+
export { MENU_ITEM_FROZEN_COMPONENT } from './interface';
|
|
17
|
+
export { MenuItemFrozen } from './MenuItemFrozen';
|
|
@@ -86,8 +86,8 @@ export declare function getClearCellValueMutations(pasteTo: ISheetDiscreteRangeL
|
|
|
86
86
|
* @param accessor
|
|
87
87
|
*/
|
|
88
88
|
export declare function getClearAndSetMergeMutations(pasteTo: ISheetDiscreteRangeLocation, matrix: ObjectMatrix<ICellDataWithSpanInfo>, accessor: IAccessor): {
|
|
89
|
-
undos: IMutationInfo<object>[];
|
|
90
89
|
redos: IMutationInfo<object>[];
|
|
90
|
+
undos: IMutationInfo<object>[];
|
|
91
91
|
};
|
|
92
92
|
/**
|
|
93
93
|
*
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IAccessor } from '@univerjs/core';
|
|
2
|
+
import { IMenuButtonItem, IMenuSelectorItem } from '@univerjs/ui';
|
|
3
|
+
export declare const SHEET_FROZEN_MENU_ID = "sheet.menu.sheet-frozen";
|
|
4
|
+
export declare function SheetFrozenMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
5
|
+
export declare const SHEET_FROZEN_COLUMN_HEADER_MENU_ID = "sheet.column-header-menu.sheet-frozen";
|
|
6
|
+
export declare function SheetFrozenColumnHeaderMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
7
|
+
export declare const SHEET_FROZEN_ROW_HEADER_MENU_ID = "sheet.row-header-menu.sheet-frozen";
|
|
8
|
+
export declare function SheetFrozenRowHeaderMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
9
|
+
export declare function FrozenMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
10
|
+
export declare function FrozenRowMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
11
|
+
export declare function FrozenColMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
12
|
+
export declare function FrozenFirstRowMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
13
|
+
export declare function FrozenFirstColMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
14
|
+
export declare function CancelFrozenMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
@@ -57,14 +57,6 @@ export declare function PasteColWidthMenuItemFactory(accessor: IAccessor): IMenu
|
|
|
57
57
|
export declare function PasteBesidesBorderMenuItemFactory(accessor: IAccessor): IMenuButtonItem<string>;
|
|
58
58
|
export declare function FitContentMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
59
59
|
export declare function ColAutoWidthMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
60
|
-
export declare const SHEET_FROZEN_MENU_ID = "sheet.menu.sheet-frozen";
|
|
61
|
-
export declare function SheetFrozenMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
62
|
-
export declare const SHEET_FROZEN_HEADER_MENU_ID = "sheet.header-menu.sheet-frozen";
|
|
63
|
-
export declare function SheetFrozenHeaderMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
64
|
-
export declare function FrozenMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
65
|
-
export declare function FrozenRowMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
66
|
-
export declare function FrozenColMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
67
|
-
export declare function CancelFrozenMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
68
60
|
export declare function HideRowMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
69
61
|
export declare function HideColMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
70
62
|
export declare function ShowRowMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SHEET_VIEWPORT_KEY } from '@univerjs/engine-render';
|
|
2
|
+
/**
|
|
3
|
+
* @ignore
|
|
4
|
+
*/
|
|
5
|
+
export interface IFSheetsUIEnum {
|
|
6
|
+
/**
|
|
7
|
+
* Sheet value change command types. These commands affect the content or style of cells.
|
|
8
|
+
* Includes operations like setting cell values, moving ranges, merging cells, and applying styles.
|
|
9
|
+
*/
|
|
10
|
+
SHEET_VIEWPORT_KEY: typeof SHEET_VIEWPORT_KEY;
|
|
11
|
+
}
|
|
12
|
+
export declare class FSheetsUIEnum implements IFSheetsUIEnum {
|
|
13
|
+
get SHEET_VIEWPORT_KEY(): typeof SHEET_VIEWPORT_KEY;
|
|
14
|
+
}
|
|
15
|
+
declare module '@univerjs/core/facade' {
|
|
16
|
+
interface FEnum extends IFSheetsUIEnum {
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IDisposable, IRange, ISelectionCell, Nullable } from '@univerjs/core';
|
|
2
|
-
import { IColumnsHeaderCfgParam, IRowsHeaderCfgParam, SpreadsheetSkeleton } from '@univerjs/engine-render';
|
|
2
|
+
import { IColumnsHeaderCfgParam, IRowsHeaderCfgParam, SpreadsheetSkeleton, SHEET_VIEWPORT_KEY } from '@univerjs/engine-render';
|
|
3
3
|
import { ISelectionStyle } from '@univerjs/sheets';
|
|
4
4
|
import { IScrollState, IViewportScrollState } from '@univerjs/sheets-ui';
|
|
5
5
|
import { FRange, FWorksheet } from '@univerjs/sheets/facade';
|
|
@@ -65,7 +65,7 @@ export interface IFWorksheetSkeletonMixin {
|
|
|
65
65
|
*/
|
|
66
66
|
getZoom(): number;
|
|
67
67
|
/**
|
|
68
|
-
*
|
|
68
|
+
* Get visible range of main viewport.
|
|
69
69
|
* @returns {IRange} - visible range
|
|
70
70
|
* @example
|
|
71
71
|
* ```ts
|
|
@@ -76,7 +76,21 @@ export interface IFWorksheetSkeletonMixin {
|
|
|
76
76
|
* console.log(fWorksheet.getRange(visibleRange).getA1Notation());
|
|
77
77
|
* ```
|
|
78
78
|
*/
|
|
79
|
-
getVisibleRange(): IRange;
|
|
79
|
+
getVisibleRange(): IRange | null;
|
|
80
|
+
/**
|
|
81
|
+
* Get visible ranges of all viewports.
|
|
82
|
+
* @returns {Record<SHEET_VIEWPORT_KEY, IRange>} - visible ranges of all viewports
|
|
83
|
+
* @example
|
|
84
|
+
* ```ts
|
|
85
|
+
* const fWorkbook = univerAPI.getActiveWorkbook();
|
|
86
|
+
* const fWorksheet = fWorkbook.getActiveSheet();
|
|
87
|
+
* const visibleRanges = fWorksheet.getVisibleRangesOfAllViewports();
|
|
88
|
+
* console.log(visibleRanges);
|
|
89
|
+
* const mainLeftTopViewportRange = visibleRanges?.get(univerAPI.Enum.SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP);
|
|
90
|
+
* console.log(fWorksheet.getRange(mainLeftTopViewportRange).getA1Notation());
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
getVisibleRangesOfAllViewports(): Map<SHEET_VIEWPORT_KEY, IRange> | null;
|
|
80
94
|
/**
|
|
81
95
|
* Scroll spreadsheet(viewMain) to cell position. Make the cell at topleft of current viewport.
|
|
82
96
|
* Based on the limitations of viewport and the number of rows and columns, you can only scroll to the maximum scrollable range.
|
|
@@ -272,7 +286,8 @@ export declare class FWorksheetSkeletonMixin extends FWorksheet implements IFWor
|
|
|
272
286
|
highlightRanges(ranges: FRange[], style?: Nullable<Partial<ISelectionStyle>>, primary?: Nullable<ISelectionCell>): IDisposable;
|
|
273
287
|
zoom(zoomRatio: number): FWorksheet;
|
|
274
288
|
getZoom(): number;
|
|
275
|
-
getVisibleRange(): IRange;
|
|
289
|
+
getVisibleRange(): IRange | null;
|
|
290
|
+
getVisibleRangesOfAllViewports(): Map<SHEET_VIEWPORT_KEY, IRange> | null;
|
|
276
291
|
scrollToCell(row: number, column: number, duration?: number): FWorksheet;
|
|
277
292
|
getScrollState(): IScrollState;
|
|
278
293
|
onScroll(callback: (params: Nullable<IViewportScrollState>) => void): IDisposable;
|
|
@@ -19,6 +19,7 @@ import './f-worksheet';
|
|
|
19
19
|
import './f-permission';
|
|
20
20
|
import './f-sheet-hooks';
|
|
21
21
|
import './f-event';
|
|
22
|
+
export * from './f-enum';
|
|
22
23
|
export type * from './f-event';
|
|
23
24
|
export type * from './f-permission';
|
|
24
25
|
export { type IFComponentKey, transformComponentKey } from './f-range';
|
package/lib/types/index.d.ts
CHANGED
|
@@ -29,7 +29,7 @@ export { RefillCommand } from './commands/commands/refill.command';
|
|
|
29
29
|
export { RemoveColConfirmCommand, RemoveRowConfirmCommand } from './commands/commands/remove-row-col-confirm.command';
|
|
30
30
|
export { RemoveSheetConfirmCommand } from './commands/commands/remove-sheet-confirm.command';
|
|
31
31
|
export { ApplyFormatPainterCommand, SetInfiniteFormatPainterCommand, SetOnceFormatPainterCommand } from './commands/commands/set-format-painter.command';
|
|
32
|
-
export { SetColumnFrozenCommand, SetRowFrozenCommand, SetSelectionFrozenCommand } from './commands/commands/set-frozen.command';
|
|
32
|
+
export { SetColumnFrozenCommand, SetFirstColumnFrozenCommand, SetFirstRowFrozenCommand, SetRowFrozenCommand, SetSelectionFrozenCommand } from './commands/commands/set-frozen.command';
|
|
33
33
|
export { type IScrollCommandParams, type IScrollToCellCommandParams, type ISetScrollRelativeCommandParams, ResetScrollCommand, ScrollCommand, ScrollToCellCommand, SetScrollRelativeCommand, } from './commands/commands/set-scroll.command';
|
|
34
34
|
export { ExpandSelectionCommand, JumpOver, MoveSelectionCommand, MoveSelectionEnterAndTabCommand, SelectAllCommand } from './commands/commands/set-selection.command';
|
|
35
35
|
export { SetWorksheetColAutoWidthCommand } from './commands/commands/set-worksheet-auto-col-width.command';
|
|
@@ -240,8 +240,11 @@ declare const locale: {
|
|
|
240
240
|
generateNewMatrix: string;
|
|
241
241
|
fitContent: string;
|
|
242
242
|
freeze: string;
|
|
243
|
+
freezeCell: string;
|
|
243
244
|
freezeCol: string;
|
|
244
245
|
freezeRow: string;
|
|
246
|
+
freezeFirstCol: string;
|
|
247
|
+
freezeFirstRow: string;
|
|
245
248
|
cancelFreeze: string;
|
|
246
249
|
deleteAllRowsAlert: string;
|
|
247
250
|
deleteAllColumnsAlert: string;
|
|
@@ -13,4 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
export declare function DefinedNameOverlay(
|
|
16
|
+
export declare function DefinedNameOverlay({ search, isInputEvent }: {
|
|
17
|
+
search: string;
|
|
18
|
+
isInputEvent: boolean;
|
|
19
|
+
}): 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,P,H,u,I,a,b,C,m){"use strict";class y extends P.FUniver{_initSheetUIEvent(e){const r=e.get(h.ICommandService);this.registerEventHandler(this.Event.BeforeSheetEditStart,()=>r.beforeCommandExecuted(t=>{if(t.id!==a.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:s}=i,l=e.get(a.IEditorBridgeService),g=t.params,{visible:v,keycode:S,eventType:c}=g,n=l.getEditLocation();if(v){const d={row:n.row,column:n.column,eventType:c,keycode:S,workbook:o,worksheet:s,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!==a.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:s}=i,l=e.get(a.IEditorBridgeService),g=e.get(h.IUniverInstanceService),v=t.params,{visible:S,keycode:c,eventType:n}=v,d=l.getEditLocation();if(!S){const R={row:d.row,column:d.column,eventType:n,keycode:c,workbook:o,worksheet:s,isZenEditor:!1,value:h.RichTextValue.create(g.getUnit(h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isConfirm:c!==C.KeyCode.ESC};if(this.fireEvent(this.Event.BeforeSheetEditEnd,R),R.cancel)throw new h.CanceledError}})),this.registerEventHandler(this.Event.SheetEditStarted,()=>r.onCommandExecuted(t=>{if(t.id!==a.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:s}=i,l=e.get(a.IEditorBridgeService),g=t.params,{visible:v,keycode:S,eventType:c}=g,n=l.getEditLocation();if(v){const d={row:n.row,column:n.column,eventType:c,keycode:S,workbook:o,worksheet:s,isZenEditor:!1};this.fireEvent(this.Event.SheetEditStarted,d)}})),this.registerEventHandler(this.Event.SheetEditEnded,()=>r.onCommandExecuted(t=>{if(t.id!==a.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:s}=i,l=e.get(a.IEditorBridgeService),g=t.params,{visible:v,keycode:S,eventType:c}=g,n=l.getEditLocation();if(!v){const d={row:n.row,column:n.column,eventType:c,keycode:S,workbook:o,worksheet:s,isZenEditor:!1,isConfirm:S!==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:s}=i,l=e.get(a.IEditorBridgeService),g=e.get(h.IUniverInstanceService),v=t.params;if(!l.isVisible().visible)return;const{unitId:S}=v;if(S===h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY){const{row:c,column:n}=l.getEditLocation(),d={workbook:o,worksheet:s,row:c,column:n,value:h.RichTextValue.create(g.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!==a.SetZoomRatioCommand.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:s}=i,l={zoom:t.params.zoomRatio,workbook:o,worksheet:s};if(this.fireEvent(this.Event.BeforeSheetZoomChange,l),l.cancel)throw new h.CanceledError})),this.registerEventHandler(this.Event.SheetZoomChanged,()=>r.onCommandExecuted(t=>{if(t.id!==a.SetZoomRatioCommand.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:s}=i;this.fireEvent(this.Event.SheetZoomChanged,{zoom:s.getZoom(),workbook:o,worksheet:s})}))}_initObserverListener(e){const r=e.get(u.IRenderManagerService),t=e.get(h.LifecycleService),i=new h.DisposableCollection;this.disposeWithMe(t.lifecycle$.subscribe(g=>{if(g!==h.LifecycleStages.Rendered)return;i.dispose();const v=e.get(a.HoverManagerService),S=e.get(a.DragManagerService);v&&(this.registerEventHandler(this.Event.CellClicked,()=>{var c;return(c=v.currentClickedCell$)==null?void 0:c.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 c;return(c=v.currentRichText$)==null?void 0:c.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 c;return(c=v.currentPointerDownCell$)==null?void 0:c.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 c;return(c=v.currentPointerUpCell$)==null?void 0:c.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 c;return(c=v.currentCellPosWithEvent$)==null?void 0:c.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 c;return(c=S.currentCell$)==null?void 0:c.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 c;return(c=S.endCell$)==null?void 0:c.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 c;return(c=v.currentRowHeaderClick$)==null?void 0:c.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 c;return(c=v.currentRowHeaderPointerDown$)==null?void 0:c.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 c;return(c=v.currentRowHeaderPointerUp$)==null?void 0:c.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 c;return(c=v.currentHoveredRowHeader$)==null?void 0:c.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 c;return(c=v.currentColHeaderClick$)==null?void 0:c.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 c;return(c=v.currentColHeaderPointerDown$)==null?void 0:c.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 c;return(c=v.currentColHeaderPointerUp$)==null?void 0:c.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 c;return(c=v.currentHoveredColHeader$)==null?void 0:c.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 s;const l=m.combineLatest([r.created$,t.lifecycle$]);this.disposeWithMe(l.subscribe(([g,v])=>{var R;if(g.type===h.UniverInstanceType.UNIVER_SHEET&&(s=g),v<=h.LifecycleStages.Rendered||!s)return;const S=new h.DisposableCollection,c=this.getWorkbook(s.unitId);if(!c)return;o.get(s.unitId)&&((R=o.get(s.unitId))==null||R.dispose()),o.set(s.unitId,S);const n=s.with(a.SheetScrollManagerService),d=s.with(I.SheetsSelectionsService);S.add(this.registerEventHandler(this.Event.Scroll,()=>n.validViewportScrollInfo$.subscribe(E=>{E&&this.fireEvent(this.Event.Scroll,{workbook:c,worksheet:c.getActiveSheet(),...E})}))),S.add(this.registerEventHandler(this.Event.SelectionMoveStart,()=>d.selectionMoveStart$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionMoveStart,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),S.add(this.registerEventHandler(this.Event.SelectionMoving,()=>d.selectionMoving$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionMoving,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),S.add(this.registerEventHandler(this.Event.SelectionMoveEnd,()=>d.selectionMoveEnd$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionMoveEnd,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),S.add(this.registerEventHandler(this.Event.SelectionChanged,()=>d.selectionChanged$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionChanged,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),s=null,this.disposeWithMe(S)})),this.disposeWithMe(r.disposed$.subscribe(g=>{var v;(v=o.get(g))==null||v.dispose(),o.delete(g)})),this.disposeWithMe(()=>{o.forEach(g=>{g.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 a.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 a.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(s=>{var l,g;return(g=(l=this.getWorkbook(s.unitId))==null?void 0:l.getSheetBySheetId(s.subUnitId))==null?void 0:g.getRange(s.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(a.ISheetClipboardService).generateCopyContent(e.getId(),r.getSheetId(),t.getRange());if(!o)return;const{html:s,plain:l}=o;return{workbook:e,worksheet:r,text:l,html:s,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 s;if(o){const l=o.types,g=l.indexOf(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(S=>S&&S.text()):"",v=l.indexOf(C.HTML_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.HTML_CLIPBOARD_MIME_TYPE).then(S=>S&&S.text()):"";s={workbook:e,worksheet:r,text:g,html:v}}return s}_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 v,S;const r=this.getActiveWorkbook();if(!r){console.error("WorkBook not exist");return}const t=r==null?void 0:r.getId(),i=this._injector.get(u.IRenderManagerService),o=r.getActiveSheet(),s=o.getSheetId(),l=i.getRenderById(t);l&&((v=e.headerStyle)!=null&&v.size)&&(l.with(a.SheetSkeletonManagerService).setColumnHeaderSize(l,s,(S=e.headerStyle)==null?void 0:S.size),o==null||o.refreshCanvas()),this._getSheetRenderComponent(t,a.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,a.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}registerSheetRowHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,a.SHEET_VIEW_KEY.ROW),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetColumnHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,a.SHEET_VIEW_KEY.COLUMN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetMainExtension(e,...r){const t=this._getSheetRenderComponent(e,a.SHEET_VIEW_KEY.MAIN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}_getSheetRenderComponent(e,r){const i=this._injector.get(u.IRenderManagerService).getRenderById(e);if(!i)throw new Error(`Render Unit with unitId ${e} not found`);const{components:o}=i,s=o.get(r);if(!s)throw new Error("Render component not found");return s}getSheetHooks(){return this._injector.createInstance(b.FSheetHooks)}pasteIntoSheet(e,r,t){return this._commandService.executeCommand(a.SheetPasteShortKeyCommand.id,{htmlContent:e,textContent:r,files:t})}setProtectedRangeShadowStrategy(e){this._injector.get(a.SheetPermissionRenderManagerService).setProtectedRangeShadowStrategy(e)}getProtectedRangeShadowStrategy(){return this._injector.get(a.SheetPermissionRenderManagerService).getProtectedRangeShadowStrategy()}getProtectedRangeShadowStrategy$(){return this._injector.get(a.SheetPermissionRenderManagerService).getProtectedRangeShadowStrategy$()}setPermissionDialogVisible(e){this._injector.get(h.IPermissionService).setShowComponents(e)}}P.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}customizeColumnHeader(e){const r=this._workbook.getUnitId();this._getSheetRenderComponent(r,a.SHEET_VIEW_KEY.COLUMN).setCustomHeader(e)}customizeRowHeader(e){const r=this._workbook.getUnitId();this._getSheetRenderComponent(r,a.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}_getSheetRenderComponent(e,r){const i=this._injector.get(u.IRenderManagerService).getRenderById(e);if(!i)throw new Error(`Render Unit with unitId ${e} not found`);const{components:o}=i,s=o.get(r);if(!s)throw new Error("Render component not found");return s}_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(a.HoverManagerService);return h.toDisposable(r.currentClickedCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onCellHover(e){const r=this._injector.get(a.HoverManagerService);return h.toDisposable(r.currentRichText$.pipe(m.filter(t=>!!t)).subscribe(e))}onCellPointerDown(e){const r=this._injector.get(a.HoverManagerService);return h.toDisposable(r.currentPointerDownCell$.subscribe(e))}onCellPointerUp(e){const r=this._injector.get(a.HoverManagerService);return h.toDisposable(r.currentPointerUpCell$.subscribe(e))}onCellPointerMove(e){const r=this._injector.get(a.HoverManagerService);return h.toDisposable(r.currentCellPosWithEvent$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t,t.event)}))}onDragOver(e){const r=this._injector.get(a.DragManagerService);return h.toDisposable(r.currentCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onDrop(e){const r=this._injector.get(a.DragManagerService);return h.toDisposable(r.endCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}startEditing(){const e=this._injector.get(h.ICommandService);return this._injector.get(a.IEditorBridgeService).isVisible().visible?!0:e.syncExecuteCommand(a.SetCellEditVisibleOperation.id,{eventType:u.DeviceInputEventType.Dblclick,unitId:this._workbook.getUnitId(),visible:!0})}async endEditing(e){const r=this._injector.get(h.ICommandService);return this._injector.get(a.IEditorBridgeService).isVisible().visible&&r.syncExecuteCommand(a.SetCellEditVisibleOperation.id,{eventType:u.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)}isCellEditing(){return this._injector.get(a.IEditorBridgeService).isVisible().visible}getScrollStateBySheetId(e){const r=this._workbook.getUnitId(),i=this._injector.get(u.IRenderManagerService).getRenderById(r);return i?i.with(a.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:e}):null}disableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(a.ISheetSelectionRenderService).disableSelection(),this}enableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(a.ISheetSelectionRenderService).enableSelection(),this}transparentSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(a.ISheetSelectionRenderService).transparentSelection(),this}showSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(a.ISheetSelectionRenderService).showSelection(),this}}b.FWorkbook.extend(D);class T extends b.FWorksheet{refreshCanvas(){const e=this._injector.get(u.IRenderManagerService),r=this._fWorkbook.id,t=e.getRenderById(r);if(!t)throw new Error(`Render Unit with unitId ${r} not found`);t.with(a.SheetSkeletonManagerService).reCalculate();const i=t.mainComponent;if(!i)throw new Error("Main component not found");return i.makeDirty(),this}highlightRanges(e,r,t){const i=this._injector.get(a.IMarkSelectionService),o=[];for(const s of e){const l=s.getRange(),g=i.addShapeWithNoFresh({range:l,style:r,primary:t});g&&o.push(g)}if(i.refreshShapes(),o.length===0)throw new Error("Failed to highlight current range");return h.toDisposable(()=>{o.forEach(s=>{i.removeShape(s)})})}zoom(e){const r=this._injector.get(h.ICommandService),t=Math.min(Math.max(e,.1),4);return r.executeCommand(a.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(u.IRenderManagerService).getRenderById(e);let i={startColumn:0,startRow:0,endColumn:0,endRow:0};if(!t)return i;const s=t.with(a.SheetSkeletonManagerService).getCurrentSkeleton();if(!s)return i;const l=s==null?void 0:s.getVisibleRanges();if(!l)return i;i=s.getVisibleRangeByViewport(u.SHEET_VIEWPORT_KEY.VIEW_MAIN);for(const[g,v]of l)u.sheetContentViewportKeys.indexOf(g)!==-1&&(i.startColumn=Math.min(i.startColumn,v.startColumn),i.startRow=Math.min(i.startRow,v.startRow),i.endColumn=Math.max(i.endColumn,v.endColumn),i.endRow=Math.max(i.endRow,v.endRow));return i}scrollToCell(e,r,t){const i=this._workbook.getUnitId(),s=this._injector.get(u.IRenderManagerService).getRenderById(i);return s&&(s==null?void 0:s.with(a.SheetsScrollRenderController)).scrollToCell(e,r,t),this}getScrollState(){const e={offsetX:0,offsetY:0,sheetViewStartColumn:0,sheetViewStartRow:0},r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(u.IRenderManagerService).getRenderById(r);return o&&o.with(a.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:t})||e}onScroll(e){var o;const r=this._workbook.getUnitId(),i=(o=this._injector.get(u.IRenderManagerService).getRenderById(r))==null?void 0:o.with(a.SheetScrollManagerService);if(i){const s=i.validViewportScrollInfo$.subscribe(l=>{e(l)});return h.toDisposable(s)}return h.toDisposable(()=>{})}getSkeleton(){var r,t;const e=(r=this._injector.get(u.IRenderManagerService).getRenderById(this._workbook.getUnitId()))==null?void 0:r.with(a.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(a.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 l,g;const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(u.IRenderManagerService).getRenderById(r);o&&((l=e.headerStyle)!=null&&l.size)&&o.with(a.SheetSkeletonManagerService).setColumnHeaderSize(o,t,(g=e.headerStyle)==null?void 0:g.size),this._getSheetRenderComponent(r,a.SHEET_VIEW_KEY.COLUMN).setCustomHeader(e,t)}customizeRowHeader(e){var l,g;const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(u.IRenderManagerService).getRenderById(r);o&&((l=e.headerStyle)!=null&&l.size)&&o.with(a.SheetSkeletonManagerService).setRowHeaderSize(o,t,(g=e.headerStyle)==null?void 0:g.size),this._getSheetRenderComponent(r,a.SHEET_VIEW_KEY.ROW).setCustomHeader(e,t)}setColumnHeaderHeight(e){const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId();return this._commandService.executeCommand(a.SetColumnHeaderHeightCommand.id,{unitId:r,subUnitId:t,size:e}),this}setRowHeaderWidth(e){const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId();return this._commandService.executeCommand(a.SetRowHeaderWidthCommand.id,{unitId:r,subUnitId:t,size:e}),this}_getSheetRenderComponent(e,r){const i=this._injector.get(u.IRenderManagerService).getRenderById(e);if(!i)throw new Error(`Render Unit with unitId ${e} not found`);const{components:o}=i,s=o.get(r);if(!s)throw new Error("Render component not found");return s}}b.FWorksheet.extend(T);class B extends b.FPermission{setPermissionDialogVisible(e){this._permissionService.setShowComponents(e)}}b.FPermission.extend(B);class x extends b.FSheetHooks{onCellPointerMove(e){return h.toDisposable(this._injector.get(a.HoverManagerService).currentPosition$.subscribe(e))}onCellPointerOver(e){return h.toDisposable(this._injector.get(a.HoverManagerService).currentCell$.subscribe(e))}onCellDragOver(e){return h.toDisposable(this._injector.get(a.DragManagerService).currentCell$.subscribe(e))}onCellDrop(e){return h.toDisposable(this._injector.get(a.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,s)=>(i&&!i.customRender&&e&&(i.customRender=[...e]),s(i)),priority:t})}onBeforeCellEdit(e){return this._injector.get(h.ICommandService).beforeCommandExecuted(r=>{const t=r.params;r.id===a.SetCellEditVisibleOperation.id&&t.visible&&e(t)})}onAfterCellEdit(e){return this._injector.get(h.ICommandService).onCommandExecuted(r=>{const t=r.params;r.id===a.SetCellEditVisibleOperation.id&&!t.visible&&e(t)})}}b.FSheetHooks.extend(x);const k={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 k.CellClicked}get CellHover(){return k.CellHover}get CellPointerDown(){return k.CellPointerDown}get CellPointerUp(){return k.CellPointerUp}get CellPointerMove(){return k.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"}}P.FEventName.extend(A);class O extends b.FRange{getCell(){var l;const e=this._injector.get(u.IRenderManagerService),r=this._injector.get(h.ILogService),t=this._workbook.getUnitId(),i=this._worksheet.getSheetId(),o=e.getRenderById(t),s=(l=o==null?void 0:o.with(a.SheetSkeletonManagerService).getSkeletonParam(i))==null?void 0:l.skeleton;if(!s)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 s.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(a.ISheetClipboardService).generateCopyContent(this._workbook.getUnitId(),this._worksheet.getSheetId(),this._range);return(t=r==null?void 0:r.html)!=null?t:""}attachPopup(e){var s,l,g;e.direction=(s=e.direction)!=null?s:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(g=e.offset)!=null?g:[0,0];const{key:r,disposableCollection:t}=M(e,this._injector.get(C.ComponentManager)),o=this._injector.get(a.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(a.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 s,l,g;e.direction=(s=e.direction)!=null?s:"top-center",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(g=e.offset)!=null?g:[0,0];const{key:r,disposableCollection:t}=M(e,this._injector.get(C.ComponentManager)),o=this._injector.get(a.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(a.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(a.ISheetCellDropdownManagerService).showDropdown(e)}async autoFill(e,r){const t=this.getRange(),i=e.getRange();if(!h.Rectangle.contains(i,t))throw new Error("AutoFill target range must contain source range");const{startRow:o,startColumn:s,endRow:l,endColumn:g}=t,{startRow:v,startColumn:S,endRow:c,endColumn:n}=i;if(l-o!==c-v&&g-s!==n-S)throw new Error("AutoFill can only fill in one direction");if(l-o===c-v&&s!==S&&g!==n)throw new Error("AutoFill can only fill in one direction");if(g-s===n-S&&o!==v&&l!==c)throw new Error("AutoFill can only fill in one direction");return this._commandService.executeCommand(a.AutoFillCommand.id,{sourceRange:t,targetRange:i,unitId:this.getUnitId(),subUnitId:this.getSheetId(),applyType:r})}}b.FRange.extend(O);function M(f,e){const{componentKey:r,isVue3:t}=f;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=M,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,R,y,u,f,s,b,C,m){"use strict";class D extends R.FUniver{_initSheetUIEvent(e){const r=e.get(h.ICommandService);this.registerEventHandler(this.Event.BeforeSheetEditStart,()=>r.beforeCommandExecuted(t=>{if(t.id!==s.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(s.IEditorBridgeService),g=t.params,{visible:S,keycode:v,eventType:c}=g,n=l.getEditLocation();if(S){const d={row:n.row,column:n.column,eventType:c,keycode:v,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!==s.SetCellEditVisibleOperation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(s.IEditorBridgeService),g=e.get(h.IUniverInstanceService),S=t.params,{visible:v,keycode:c,eventType:n}=S,d=l.getEditLocation();if(!v){const P={row:d.row,column:d.column,eventType:n,keycode:c,workbook:o,worksheet:a,isZenEditor:!1,value:h.RichTextValue.create(g.getUnit(h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY).getSnapshot()),isConfirm:c!==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!==s.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(s.IEditorBridgeService),g=t.params,{visible:S,keycode:v,eventType:c}=g,n=l.getEditLocation();if(S){const d={row:n.row,column:n.column,eventType:c,keycode:v,workbook:o,worksheet:a,isZenEditor:!1};this.fireEvent(this.Event.SheetEditStarted,d)}})),this.registerEventHandler(this.Event.SheetEditEnded,()=>r.onCommandExecuted(t=>{if(t.id!==s.SetCellEditVisibleOperation.id)return;const i=this.getCommandSheetTarget(t);if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(s.IEditorBridgeService),g=t.params,{visible:S,keycode:v,eventType:c}=g,n=l.getEditLocation();if(!S){const d={row:n.row,column:n.column,eventType:c,keycode:v,workbook:o,worksheet:a,isZenEditor:!1,isConfirm:v!==C.KeyCode.ESC};this.fireEvent(this.Event.SheetEditEnded,d)}})),this.registerEventHandler(this.Event.SheetEditChanging,()=>r.onCommandExecuted(t=>{if(t.id!==y.RichTextEditingMutation.id)return;const i=this.getActiveSheet();if(!i)return;const{workbook:o,worksheet:a}=i,l=e.get(s.IEditorBridgeService),g=e.get(h.IUniverInstanceService),S=t.params;if(!l.isVisible().visible)return;const{unitId:v}=S;if(v===h.DOCS_NORMAL_EDITOR_UNIT_ID_KEY){const{row:c,column:n}=l.getEditLocation(),d={workbook:o,worksheet:a,row:c,column:n,value:h.RichTextValue.create(g.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!==s.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!==s.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(u.IRenderManagerService),t=e.get(h.LifecycleService),i=new h.DisposableCollection;this.disposeWithMe(t.lifecycle$.subscribe(g=>{if(g!==h.LifecycleStages.Rendered)return;i.dispose();const S=e.get(s.HoverManagerService),v=e.get(s.DragManagerService);S&&(this.registerEventHandler(this.Event.CellClicked,()=>{var c;return(c=S.currentClickedCell$)==null?void 0:c.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 c;return(c=S.currentRichText$)==null?void 0:c.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 c;return(c=S.currentPointerDownCell$)==null?void 0:c.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 c;return(c=S.currentPointerUpCell$)==null?void 0:c.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 c;return(c=S.currentCellPosWithEvent$)==null?void 0:c.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 c;return(c=v.currentCell$)==null?void 0:c.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 c;return(c=v.endCell$)==null?void 0:c.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 c;return(c=S.currentRowHeaderClick$)==null?void 0:c.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 c;return(c=S.currentRowHeaderPointerDown$)==null?void 0:c.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 c;return(c=S.currentRowHeaderPointerUp$)==null?void 0:c.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 c;return(c=S.currentHoveredRowHeader$)==null?void 0:c.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 c;return(c=S.currentColHeaderClick$)==null?void 0:c.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 c;return(c=S.currentColHeaderPointerDown$)==null?void 0:c.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 c;return(c=S.currentColHeaderPointerUp$)==null?void 0:c.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 c;return(c=S.currentHoveredColHeader$)==null?void 0:c.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(([g,S])=>{var P;if(g.type===h.UniverInstanceType.UNIVER_SHEET&&(a=g),S<=h.LifecycleStages.Rendered||!a)return;const v=new h.DisposableCollection,c=this.getWorkbook(a.unitId);if(!c)return;o.get(a.unitId)&&((P=o.get(a.unitId))==null||P.dispose()),o.set(a.unitId,v);const n=a.with(s.SheetScrollManagerService),d=a.with(f.SheetsSelectionsService);v.add(this.registerEventHandler(this.Event.Scroll,()=>n.validViewportScrollInfo$.subscribe(E=>{E&&this.fireEvent(this.Event.Scroll,{workbook:c,worksheet:c.getActiveSheet(),...E})}))),v.add(this.registerEventHandler(this.Event.SelectionMoveStart,()=>d.selectionMoveStart$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionMoveStart,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),v.add(this.registerEventHandler(this.Event.SelectionMoving,()=>d.selectionMoving$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionMoving,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),v.add(this.registerEventHandler(this.Event.SelectionMoveEnd,()=>d.selectionMoveEnd$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionMoveEnd,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),v.add(this.registerEventHandler(this.Event.SelectionChanged,()=>d.selectionChanged$.subscribe(E=>{var w;this.fireEvent(this.Event.SelectionChanged,{workbook:c,worksheet:c.getActiveSheet(),selections:(w=E==null?void 0:E.map(_=>_.range))!=null?w:[]})}))),a=null,this.disposeWithMe(v)})),this.disposeWithMe(r.disposed$.subscribe(g=>{var S;(S=o.get(g))==null||S.dispose(),o.delete(g)})),this.disposeWithMe(()=>{o.forEach(g=>{g.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 s.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 s.SheetPasteShortKeyCommand.id:this._clipboardPaste(t.params);break;case C.PasteCommand.id:this._clipboardPasteAsync();break}})),this.registerEventHandler(this.Event.SheetSkeletonChanged,()=>r.onCommandExecuted(t=>{if(f.COMMAND_LISTENER_SKELETON_CHANGE.indexOf(t.id)>-1){const i=this.getActiveSheet();if(!i)return;const o=f.getSkeletonChangedEffectedRange(t,i.worksheet.getMaxColumns()).map(a=>{var l,g;return(g=(l=this.getWorkbook(a.unitId))==null?void 0:l.getSheetBySheetId(a.subUnitId))==null?void 0:g.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(s.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,g=l.indexOf(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.PLAIN_TEXT_CLIPBOARD_MIME_TYPE).then(v=>v&&v.text()):"",S=l.indexOf(C.HTML_CLIPBOARD_MIME_TYPE)!==-1?await o.getType(C.HTML_CLIPBOARD_MIME_TYPE).then(v=>v&&v.text()):"";a={workbook:e,worksheet:r,text:g,html:S}}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 S,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(u.IRenderManagerService),o=r.getActiveSheet(),a=o.getSheetId(),l=i.getRenderById(t);l&&((S=e.headerStyle)!=null&&S.size)&&(l.with(s.SheetSkeletonManagerService).setColumnHeaderSize(l,a,(v=e.headerStyle)==null?void 0:v.size),o==null||o.refreshCanvas()),this._getSheetRenderComponent(t,s.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,s.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}registerSheetRowHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,s.SHEET_VIEW_KEY.ROW),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetColumnHeaderExtension(e,...r){const t=this._getSheetRenderComponent(e,s.SHEET_VIEW_KEY.COLUMN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}registerSheetMainExtension(e,...r){const t=this._getSheetRenderComponent(e,s.SHEET_VIEW_KEY.MAIN),i=t.register(...r);return h.toDisposable(()=>{i.dispose(),t.makeDirty(!0)})}_getSheetRenderComponent(e,r){const i=this._injector.get(u.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)}pasteIntoSheet(e,r,t){return this._commandService.executeCommand(s.SheetPasteShortKeyCommand.id,{htmlContent:e,textContent:r,files:t})}setProtectedRangeShadowStrategy(e){this._injector.get(s.SheetPermissionRenderManagerService).setProtectedRangeShadowStrategy(e)}getProtectedRangeShadowStrategy(){return this._injector.get(s.SheetPermissionRenderManagerService).getProtectedRangeShadowStrategy()}getProtectedRangeShadowStrategy$(){return this._injector.get(s.SheetPermissionRenderManagerService).getProtectedRangeShadowStrategy$()}setPermissionDialogVisible(e){this._injector.get(h.IPermissionService).setShowComponents(e)}}R.FUniver.extend(D);class T 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}customizeColumnHeader(e){const r=this._workbook.getUnitId();this._getSheetRenderComponent(r,s.SHEET_VIEW_KEY.COLUMN).setCustomHeader(e)}customizeRowHeader(e){const r=this._workbook.getUnitId();this._getSheetRenderComponent(r,s.SHEET_VIEW_KEY.ROW).setCustomHeader(e)}_getSheetRenderComponent(e,r){const i=this._injector.get(u.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}_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(s.HoverManagerService);return h.toDisposable(r.currentClickedCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onCellHover(e){const r=this._injector.get(s.HoverManagerService);return h.toDisposable(r.currentRichText$.pipe(m.filter(t=>!!t)).subscribe(e))}onCellPointerDown(e){const r=this._injector.get(s.HoverManagerService);return h.toDisposable(r.currentPointerDownCell$.subscribe(e))}onCellPointerUp(e){const r=this._injector.get(s.HoverManagerService);return h.toDisposable(r.currentPointerUpCell$.subscribe(e))}onCellPointerMove(e){const r=this._injector.get(s.HoverManagerService);return h.toDisposable(r.currentCellPosWithEvent$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t,t.event)}))}onDragOver(e){const r=this._injector.get(s.DragManagerService);return h.toDisposable(r.currentCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}onDrop(e){const r=this._injector.get(s.DragManagerService);return h.toDisposable(r.endCell$.pipe(m.filter(t=>!!t)).subscribe(t=>{e(t)}))}startEditing(){const e=this._injector.get(h.ICommandService);return this._injector.get(s.IEditorBridgeService).isVisible().visible?!0:e.syncExecuteCommand(s.SetCellEditVisibleOperation.id,{eventType:u.DeviceInputEventType.Dblclick,unitId:this._workbook.getUnitId(),visible:!0})}async endEditing(e){const r=this._injector.get(h.ICommandService);return this._injector.get(s.IEditorBridgeService).isVisible().visible&&r.syncExecuteCommand(s.SetCellEditVisibleOperation.id,{eventType:u.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)}isCellEditing(){return this._injector.get(s.IEditorBridgeService).isVisible().visible}getScrollStateBySheetId(e){const r=this._workbook.getUnitId(),i=this._injector.get(u.IRenderManagerService).getRenderById(r);return i?i.with(s.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:e}):null}disableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(s.ISheetSelectionRenderService).disableSelection(),this}enableSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(s.ISheetSelectionRenderService).enableSelection(),this}transparentSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(s.ISheetSelectionRenderService).transparentSelection(),this}showSelection(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);return t&&t.with(s.ISheetSelectionRenderService).showSelection(),this}}b.FWorkbook.extend(T);class B extends b.FWorksheet{refreshCanvas(){const e=this._injector.get(u.IRenderManagerService),r=this._fWorkbook.id,t=e.getRenderById(r);if(!t)throw new Error(`Render Unit with unitId ${r} not found`);t.with(s.SheetSkeletonManagerService).reCalculate();const i=t.mainComponent;if(!i)throw new Error("Main component not found");return i.makeDirty(),this}highlightRanges(e,r,t){const i=this._injector.get(s.IMarkSelectionService),o=[];for(const a of e){const l=a.getRange(),g=i.addShapeWithNoFresh({range:l,style:r,primary:t});g&&o.push(g)}if(i.refreshShapes(),o.length===0)throw new Error("Failed to highlight current range");return h.toDisposable(()=>{o.forEach(a=>{i.removeShape(a)})})}zoom(e){const r=this._injector.get(h.ICommandService),t=Math.min(Math.max(e,.1),4);return r.executeCommand(s.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(u.IRenderManagerService).getRenderById(e);if(!t)return null;const o=t.with(s.SheetSkeletonManagerService).getCurrentSkeleton();return o?o.getVisibleRangeByViewport(u.SHEET_VIEWPORT_KEY.VIEW_MAIN):null}getVisibleRangesOfAllViewports(){const e=this._workbook.getUnitId(),t=this._injector.get(u.IRenderManagerService).getRenderById(e);if(!t)return null;const o=t.with(s.SheetSkeletonManagerService).getCurrentSkeleton();return o?o.getVisibleRanges():null}scrollToCell(e,r,t){const i=this._workbook.getUnitId(),a=this._injector.get(u.IRenderManagerService).getRenderById(i);return a&&(a==null?void 0:a.with(s.SheetsScrollRenderController)).scrollToCell(e,r,t),this}getScrollState(){const e={offsetX:0,offsetY:0,sheetViewStartColumn:0,sheetViewStartRow:0},r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(u.IRenderManagerService).getRenderById(r);return o&&o.with(s.SheetScrollManagerService).getScrollStateByParam({unitId:r,sheetId:t})||e}onScroll(e){var o;const r=this._workbook.getUnitId(),i=(o=this._injector.get(u.IRenderManagerService).getRenderById(r))==null?void 0:o.with(s.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(u.IRenderManagerService).getRenderById(this._workbook.getUnitId()))==null?void 0:r.with(s.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(s.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(f.SetWorksheetRowIsAutoHeightCommand.id,{unitId:t,subUnitId:i,ranges:o}),this}customizeColumnHeader(e){var l,g;const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(u.IRenderManagerService).getRenderById(r);o&&((l=e.headerStyle)!=null&&l.size)&&o.with(s.SheetSkeletonManagerService).setColumnHeaderSize(o,t,(g=e.headerStyle)==null?void 0:g.size),this._getSheetRenderComponent(r,s.SHEET_VIEW_KEY.COLUMN).setCustomHeader(e,t)}customizeRowHeader(e){var l,g;const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId(),o=this._injector.get(u.IRenderManagerService).getRenderById(r);o&&((l=e.headerStyle)!=null&&l.size)&&o.with(s.SheetSkeletonManagerService).setRowHeaderSize(o,t,(g=e.headerStyle)==null?void 0:g.size),this._getSheetRenderComponent(r,s.SHEET_VIEW_KEY.ROW).setCustomHeader(e,t)}setColumnHeaderHeight(e){const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId();return this._commandService.executeCommand(s.SetColumnHeaderHeightCommand.id,{unitId:r,subUnitId:t,size:e}),this}setRowHeaderWidth(e){const r=this._workbook.getUnitId(),t=this._worksheet.getSheetId();return this._commandService.executeCommand(s.SetRowHeaderWidthCommand.id,{unitId:r,subUnitId:t,size:e}),this}_getSheetRenderComponent(e,r){const i=this._injector.get(u.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(B);class A extends b.FPermission{setPermissionDialogVisible(e){this._permissionService.setShowComponents(e)}}b.FPermission.extend(A);class x extends b.FSheetHooks{onCellPointerMove(e){return h.toDisposable(this._injector.get(s.HoverManagerService).currentPosition$.subscribe(e))}onCellPointerOver(e){return h.toDisposable(this._injector.get(s.HoverManagerService).currentCell$.subscribe(e))}onCellDragOver(e){return h.toDisposable(this._injector.get(s.DragManagerService).currentCell$.subscribe(e))}onCellDrop(e){return h.toDisposable(this._injector.get(s.DragManagerService).endCell$.subscribe(e))}onCellRender(e,r=h.InterceptorEffectEnum.Style,t=f.InterceptCellContentPriority.DATA_VALIDATION){return this._injector.get(f.SheetInterceptorService).intercept(f.INTERCEPTOR_POINT.CELL_CONTENT,{effect:r,handler:(i,o,a)=>(i&&!i.customRender&&e&&(i.customRender=[...e]),a(i)),priority:t})}onBeforeCellEdit(e){return this._injector.get(h.ICommandService).beforeCommandExecuted(r=>{const t=r.params;r.id===s.SetCellEditVisibleOperation.id&&t.visible&&e(t)})}onAfterCellEdit(e){return this._injector.get(h.ICommandService).onCommandExecuted(r=>{const t=r.params;r.id===s.SetCellEditVisibleOperation.id&&!t.visible&&e(t)})}}b.FSheetHooks.extend(x);const k={CellClicked:"CellClicked",CellPointerDown:"CellPointerDown",CellPointerUp:"CellPointerUp",CellPointerMove:"CellPointerMove",CellHover:"CellHover"};class O{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 k.CellClicked}get CellHover(){return k.CellHover}get CellPointerDown(){return k.CellPointerDown}get CellPointerUp(){return k.CellPointerUp}get CellPointerMove(){return k.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"}}R.FEventName.extend(O);class H{get SHEET_VIEWPORT_KEY(){return u.SHEET_VIEWPORT_KEY}}R.FEnum.extend(H);class j extends b.FRange{getCell(){var l;const e=this._injector.get(u.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(s.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(s.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,g;e.direction=(a=e.direction)!=null?a:"horizontal",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(g=e.offset)!=null?g:[0,0];const{key:r,disposableCollection:t}=M(e,this._injector.get(C.ComponentManager)),o=this._injector.get(s.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(s.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,g;e.direction=(a=e.direction)!=null?a:"top-center",e.extraProps=(l=e.extraProps)!=null?l:{},e.offset=(g=e.offset)!=null?g:[0,0];const{key:r,disposableCollection:t}=M(e,this._injector.get(C.ComponentManager)),o=this._injector.get(s.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(s.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(s.ISheetCellDropdownManagerService).showDropdown(e)}async autoFill(e,r){const t=this.getRange(),i=e.getRange();if(!h.Rectangle.contains(i,t))throw new Error("AutoFill target range must contain source range");const{startRow:o,startColumn:a,endRow:l,endColumn:g}=t,{startRow:S,startColumn:v,endRow:c,endColumn:n}=i;if(l-o!==c-S&&g-a!==n-v)throw new Error("AutoFill can only fill in one direction");if(l-o===c-S&&a!==v&&g!==n)throw new Error("AutoFill can only fill in one direction");if(g-a===n-v&&o!==S&&l!==c)throw new Error("AutoFill can only fill in one direction");return this._commandService.executeCommand(s.AutoFillCommand.id,{sourceRange:t,targetRange:i,unitId:this.getUnitId(),subUnitId:this.getSheetId(),applyType:r})}}b.FRange.extend(j);function M(I,e){const{componentKey:r,isVue3:t}=I;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.FSheetsUIEnum=H,p.transformComponentKey=M,Object.defineProperty(p,Symbol.toStringTag,{value:"Module"})}));
|