@univerjs/sheets-ui 0.2.10 → 0.2.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +8 -8
- package/lib/es/index.js +6343 -5901
- package/lib/types/common/keys.d.ts +4 -1
- package/lib/types/controllers/auto-height.controller.d.ts +1 -0
- package/lib/types/controllers/config.schema.d.ts +10 -0
- package/lib/types/controllers/editor/editing.render-controller.d.ts +1 -0
- package/lib/types/controllers/editor/formula-editor.controller.d.ts +4 -1
- package/lib/types/controllers/menu/clear.menu.d.ts +1 -0
- package/lib/types/controllers/menu/delete.menu.d.ts +1 -0
- package/lib/types/controllers/menu/insert.menu.d.ts +3 -0
- package/lib/types/controllers/menu/menu-util.d.ts +15 -0
- package/lib/types/controllers/menu/permission.menu.d.ts +1 -1
- package/lib/types/controllers/menu.schema.d.ts +2 -0
- package/lib/types/controllers/mobile/menu.schema.d.ts +2 -0
- package/lib/types/controllers/mobile/mobile-sheet-ui.controller.d.ts +3 -8
- package/lib/types/controllers/permission/sheet-permission-init.controller.d.ts +5 -3
- package/lib/types/controllers/permission/sheet-permission-render.controller.d.ts +14 -3
- package/lib/types/controllers/render-controllers/header-move.render-controller.d.ts +1 -1
- package/lib/types/controllers/render-controllers/sheet.render-controller.d.ts +8 -1
- package/lib/types/controllers/sheet-ui.controller.d.ts +4 -11
- package/lib/types/controllers/utils/selections-tools.d.ts +23 -2
- package/lib/types/index.d.ts +5 -4
- package/lib/types/mobile-sheets-ui-plugin.d.ts +1 -1
- package/lib/types/services/auto-fill/auto-fill.service.d.ts +12 -5
- package/lib/types/services/clipboard/__tests__/clipboard-copy-filter.spec.d.ts +16 -0
- package/lib/types/services/clipboard/__tests__/sheet-paste.spec.d.ts +16 -0
- package/lib/types/services/clipboard/usm-to-html/convertor.d.ts +3 -2
- package/lib/types/services/selection/base-selection-render.service.d.ts +2 -1
- package/lib/types/services/selection/mobile-selection-shape.d.ts +2 -3
- package/lib/types/services/selection/selection-layer.d.ts +5 -0
- package/lib/types/services/selection/selection-shape.d.ts +8 -3
- package/lib/types/sheets-ui-plugin.d.ts +4 -3
- package/lib/types/views/permission/extensions/range-protection.render.d.ts +2 -2
- package/lib/types/views/permission/extensions/worksheet-permission.render.d.ts +2 -2
- package/lib/umd/index.js +8 -8
- package/package.json +19 -17
- package/lib/types/services/permission/worksheet-permission-render.service.d.ts +0 -9
|
@@ -13,12 +13,16 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
export declare const SHEET_ZOOM_RANGE: number[];
|
|
16
17
|
export declare enum SHEET_VIEW_KEY {
|
|
17
18
|
MAIN = "__SpreadsheetRender__",
|
|
18
19
|
ROW = "__SpreadsheetRowHeader__",
|
|
19
20
|
COLUMN = "__SpreadsheetColumnHeader__",
|
|
20
21
|
LEFT_TOP = "__SpreadsheetLeftTopPlaceholder__"
|
|
21
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated. use SHEET_VIEWPORT_KEY from engine-render instead.
|
|
25
|
+
*/
|
|
22
26
|
export declare enum SHEET_VIEWPORT_KEY {
|
|
23
27
|
VIEW_MAIN = "viewMain",
|
|
24
28
|
VIEW_MAIN_LEFT_TOP = "viewMainLeftTop",
|
|
@@ -33,6 +37,5 @@ export declare enum SHEET_VIEWPORT_KEY {
|
|
|
33
37
|
export declare const SHEET_COMPONENT_MAIN_LAYER_INDEX = 0;
|
|
34
38
|
export declare const SHEET_COMPONENT_SELECTION_LAYER_INDEX = 1;
|
|
35
39
|
export declare const SHEET_COMPONENT_HEADER_LAYER_INDEX = 10;
|
|
36
|
-
export declare const SHEET_ZOOM_RANGE: number[];
|
|
37
40
|
export declare const SHEET_COMPONENT_HEADER_SELECTION_LAYER_INDEX = 11;
|
|
38
41
|
export declare const SHEET_COMPONENT_UNHIDE_LAYER_INDEX = 12;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IRange, Disposable, Injector, IUniverInstanceService } from '@univerjs/core';
|
|
2
2
|
import { ISetWorksheetRowAutoHeightMutationParams, SheetInterceptorService, SheetsSelectionsService } from '@univerjs/sheets';
|
|
3
3
|
import { RenderManagerService } from '@univerjs/engine-render';
|
|
4
|
+
export declare const AFFECT_LAYOUT_STYLES: string[];
|
|
4
5
|
export declare class AutoHeightController extends Disposable {
|
|
5
6
|
private readonly _renderManagerService;
|
|
6
7
|
private readonly _injector;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DependencyOverride } from '@univerjs/core';
|
|
2
|
+
import { MenuConfig } from '@univerjs/ui';
|
|
3
|
+
export declare const PLUGIN_CONFIG_KEY = "sheets-ui.config";
|
|
4
|
+
export declare const configSymbol: unique symbol;
|
|
5
|
+
export interface IUniverSheetsUIConfig {
|
|
6
|
+
menu?: MenuConfig;
|
|
7
|
+
disableAutoFocus?: true;
|
|
8
|
+
override?: DependencyOverride;
|
|
9
|
+
}
|
|
10
|
+
export declare const defaultPluginConfig: IUniverSheetsUIConfig;
|
|
@@ -31,6 +31,7 @@ export declare class EditingRenderController extends Disposable implements IRend
|
|
|
31
31
|
private _isUnitEditing;
|
|
32
32
|
private _workbookSelections;
|
|
33
33
|
private _d;
|
|
34
|
+
_cursorTimeout: NodeJS.Timeout;
|
|
34
35
|
constructor(_context: IRenderContext<Workbook>, _layoutService: ILayoutService, selectionManagerService: SheetsSelectionsService, _undoRedoService: IUndoRedoService, _contextService: IContextService, _instanceSrv: IUniverInstanceService, _renderManagerService: IRenderManagerService, _editorBridgeService: IEditorBridgeService, _cellEditorManagerService: ICellEditorManagerService, _textSelectionRenderManager: ITextSelectionRenderManager, _lexerTreeBuilder: LexerTreeBuilder, _functionService: IFunctionService, _textSelectionManagerService: TextSelectionManagerService, _commandService: ICommandService, _localService: LocaleService, _editorService: IEditorService, _resourceLoaderService: IResourceLoaderService);
|
|
35
36
|
dispose(): void;
|
|
36
37
|
private _disposeCurrent;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ICommandService, IContextService, IUndoRedoService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
|
|
2
2
|
import { TextSelectionManagerService } from '@univerjs/docs';
|
|
3
3
|
import { IRenderManagerService } from '@univerjs/engine-render';
|
|
4
|
+
import { RangeProtectionRuleModel, WorksheetProtectionRuleModel } from '@univerjs/sheets';
|
|
4
5
|
import { IEditorBridgeService } from '../../services/editor-bridge.service';
|
|
5
6
|
import { IFormulaEditorManagerService } from '../../services/editor/formula-editor-manager.service';
|
|
6
7
|
export declare class FormulaEditorController extends RxDisposable {
|
|
@@ -12,8 +13,10 @@ export declare class FormulaEditorController extends RxDisposable {
|
|
|
12
13
|
private readonly _formulaEditorManagerService;
|
|
13
14
|
private readonly _undoRedoService;
|
|
14
15
|
private readonly _textSelectionManagerService;
|
|
16
|
+
private readonly _rangeProtectionRuleModel;
|
|
17
|
+
private readonly _worksheetProtectionRuleModel;
|
|
15
18
|
private _loadedMap;
|
|
16
|
-
constructor(_univerInstanceService: IUniverInstanceService, _renderManagerService: IRenderManagerService, _editorBridgeService: IEditorBridgeService, _commandService: ICommandService, _contextService: IContextService, _formulaEditorManagerService: IFormulaEditorManagerService, _undoRedoService: IUndoRedoService, _textSelectionManagerService: TextSelectionManagerService);
|
|
19
|
+
constructor(_univerInstanceService: IUniverInstanceService, _renderManagerService: IRenderManagerService, _editorBridgeService: IEditorBridgeService, _commandService: ICommandService, _contextService: IContextService, _formulaEditorManagerService: IFormulaEditorManagerService, _undoRedoService: IUndoRedoService, _textSelectionManagerService: TextSelectionManagerService, _rangeProtectionRuleModel: RangeProtectionRuleModel, _worksheetProtectionRuleModel: WorksheetProtectionRuleModel);
|
|
17
20
|
private _initialize;
|
|
18
21
|
private _create;
|
|
19
22
|
private _listenFxBtnClick;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { IMenuButtonItem, IMenuSelectorItem } from '@univerjs/ui';
|
|
2
2
|
import { IAccessor } from '@univerjs/core';
|
|
3
|
+
export declare const CLEAR_SELECTION_MENU_ID = "sheet.menu.clear-selection";
|
|
3
4
|
export declare function ClearSelectionMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
4
5
|
export declare function ClearSelectionContentMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
5
6
|
export declare function ClearSelectionFormatMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { IMenuButtonItem, IMenuSelectorItem } from '@univerjs/ui';
|
|
2
2
|
import { IAccessor } from '@univerjs/core';
|
|
3
|
+
export declare const DELETE_RANGE_MENU_ID = "sheet.menu.delete";
|
|
3
4
|
export declare function DeleteRangeMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
4
5
|
export declare function RemoveColMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
5
6
|
export declare function RemoveRowMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { IMenuButtonItem, IMenuSelectorItem } from '@univerjs/ui';
|
|
2
2
|
import { IAccessor } from '@univerjs/core';
|
|
3
|
+
export declare const COL_INSERT_MENU_ID = "sheet.menu.col-insert";
|
|
3
4
|
export declare function ColInsertMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
5
|
+
export declare const ROW_INSERT_MENU_ID = "sheet.menu.row-insert";
|
|
4
6
|
export declare function RowInsertMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
7
|
+
export declare const CELL_INSERT_MENU_ID = "sheet.menu.cell-insert";
|
|
5
8
|
export declare function CellInsertMenuItemFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
6
9
|
export declare function InsertRowBeforeMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
7
10
|
export declare function InsertRowAfterMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
|
|
@@ -5,6 +5,21 @@ interface IActive {
|
|
|
5
5
|
worksheet: Worksheet;
|
|
6
6
|
}
|
|
7
7
|
export declare function deriveStateFromActiveSheet$<T>(univerInstanceService: IUniverInstanceService, defaultValue: T, callback: (active: IActive) => Observable<T>): Observable<T>;
|
|
8
|
+
/**
|
|
9
|
+
* @description Get the current exclusive range disable status
|
|
10
|
+
* @param accessor The accessor
|
|
11
|
+
* @param {Set<string>} [disableGroupSet] The disable group set, if provided, check if the interestGroupIds contains any of the disableGroupSet, otherwise check if the interestGroupIds is not empty
|
|
12
|
+
* @returns {Observable<boolean>} The current exclusive range disable status
|
|
13
|
+
*/
|
|
14
|
+
export declare function getCurrentExclusiveRangeInterest$(accessor: IAccessor, disableGroupSet?: Set<string>): Observable<boolean>;
|
|
15
|
+
/**
|
|
16
|
+
* Get the observable combine with exclusive range
|
|
17
|
+
* @param accessor The accessor
|
|
18
|
+
* @param {Observable<boolean>} observable$
|
|
19
|
+
* @param {Set<string>} [disableGroupSet] The disable group set, if provided, check if the interestGroupIds contains any of the disableGroupSet, otherwise check if the interestGroupIds is not empty
|
|
20
|
+
* @returns {Observable<boolean>} The observable combine with exclusive range
|
|
21
|
+
*/
|
|
22
|
+
export declare function getObservableWithExclusiveRange$(accessor: IAccessor, observable$: Observable<boolean>, disableGroupSet?: Set<string>): Observable<boolean>;
|
|
8
23
|
export declare function getCurrentRangeDisable$(accessor: IAccessor, permissionTypes?: IPermissionTypes): Observable<boolean>;
|
|
9
24
|
export declare function getBaseRangeMenuHidden$(accessor: IAccessor): Observable<boolean>;
|
|
10
25
|
export declare function getInsertAfterMenuHidden$(accessor: IAccessor, type: 'row' | 'col'): Observable<boolean>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IMenuButtonItem, IMenuItem, IMenuSelectorItem } from '@univerjs/ui';
|
|
2
2
|
import { IAccessor } from '@univerjs/core';
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const SHEET_PERMISSION_CONTEXT_MENU_ID = "sheet.contextMenu.permission";
|
|
4
4
|
export declare function sheetPermissionToolbarMenuFactory(accessor: IAccessor): IMenuItem;
|
|
5
5
|
export declare function sheetPermissionContextMenuFactory(accessor: IAccessor): IMenuSelectorItem<string>;
|
|
6
6
|
export declare function sheetPermissionAddProtectContextMenuFactory(accessor: IAccessor): IMenuButtonItem;
|
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
import { Disposable, ICommandService, Injector } from '@univerjs/core';
|
|
2
|
-
import {
|
|
3
|
-
export interface IUniverSheetsUIConfig {
|
|
4
|
-
menu: MenuConfig;
|
|
5
|
-
}
|
|
6
|
-
export declare const DefaultSheetUiConfig: {};
|
|
2
|
+
import { ComponentManager, ILayoutService, IMenuManagerService, IShortcutService, IUIPartsService } from '@univerjs/ui';
|
|
7
3
|
export declare class SheetUIMobileController extends Disposable {
|
|
8
|
-
private readonly _config;
|
|
9
4
|
private readonly _injector;
|
|
10
5
|
private readonly _componentManager;
|
|
11
6
|
private readonly _layoutService;
|
|
12
7
|
private readonly _commandService;
|
|
13
8
|
private readonly _shortcutService;
|
|
14
|
-
|
|
9
|
+
protected readonly _menuManagerService: IMenuManagerService;
|
|
15
10
|
private readonly _uiPartsService;
|
|
16
|
-
constructor(
|
|
11
|
+
constructor(_injector: Injector, _componentManager: ComponentManager, _layoutService: ILayoutService, _commandService: ICommandService, _shortcutService: IShortcutService, _menuManagerService: IMenuManagerService, _uiPartsService: IUIPartsService);
|
|
17
12
|
private _init;
|
|
18
13
|
private _initCustomComponents;
|
|
19
14
|
private _initCommands;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Disposable, IAuthzIoService, IPermissionService, IUndoRedoService, IUniverInstanceService, UserManagerService } from '@univerjs/core';
|
|
1
|
+
import { Disposable, IAuthzIoService, ICommandService, IPermissionService, IUndoRedoService, IUniverInstanceService, UserManagerService } from '@univerjs/core';
|
|
2
2
|
import { RangeProtectionRenderModel, RangeProtectionRuleModel, SheetInterceptorService, WorksheetProtectionPointModel, WorksheetProtectionRuleModel } from '@univerjs/sheets';
|
|
3
3
|
import { IDialogService } from '@univerjs/ui';
|
|
4
4
|
export declare class SheetPermissionInitController extends Disposable {
|
|
@@ -13,10 +13,11 @@ export declare class SheetPermissionInitController extends Disposable {
|
|
|
13
13
|
private _sheetInterceptorService;
|
|
14
14
|
private _selectionProtectionRenderModel;
|
|
15
15
|
private _undoRedoService;
|
|
16
|
-
|
|
16
|
+
private _commandService;
|
|
17
|
+
constructor(_univerInstanceService: IUniverInstanceService, _dialogService: IDialogService, _permissionService: IPermissionService, _authzIoService: IAuthzIoService, _rangeProtectionRuleModel: RangeProtectionRuleModel, _worksheetProtectionRuleModel: WorksheetProtectionRuleModel, _userManagerService: UserManagerService, _worksheetProtectionPointRuleModel: WorksheetProtectionPointModel, _sheetInterceptorService: SheetInterceptorService, _selectionProtectionRenderModel: RangeProtectionRenderModel, _undoRedoService: IUndoRedoService, _commandService: ICommandService);
|
|
17
18
|
private _initRangePermissionFromSnapshot;
|
|
18
19
|
private _initRangePermissionChange;
|
|
19
|
-
initWorkbookPermissionChange(_unitId?: string): void
|
|
20
|
+
initWorkbookPermissionChange(_unitId?: string): Promise<void>;
|
|
20
21
|
private _initWorkbookPermissionFromSnapshot;
|
|
21
22
|
private _initWorksheetPermissionChange;
|
|
22
23
|
private _initWorksheetPermissionPointsChange;
|
|
@@ -25,4 +26,5 @@ export declare class SheetPermissionInitController extends Disposable {
|
|
|
25
26
|
private _initViewModelByRangeInterceptor;
|
|
26
27
|
private _initViewModelBySheetInterceptor;
|
|
27
28
|
refreshPermission(unitId: string, permissionId: string): void;
|
|
29
|
+
private _refreshPermissionByCollaCreate;
|
|
28
30
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Disposable, IPermissionService } from '@univerjs/core';
|
|
1
|
+
import { Disposable, IPermissionService, IUniverInstanceService } from '@univerjs/core';
|
|
2
2
|
import { MenuConfig, ComponentManager } from '@univerjs/ui';
|
|
3
|
-
import { RangeProtectionRuleModel } from '@univerjs/sheets';
|
|
4
|
-
import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
|
|
3
|
+
import { RangeProtectionRuleModel, WorksheetProtectionRuleModel } from '@univerjs/sheets';
|
|
4
|
+
import { IRenderContext, IRenderModule, IRenderManagerService } from '@univerjs/engine-render';
|
|
5
5
|
import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
|
|
6
6
|
export interface IUniverSheetsPermissionMenuConfig {
|
|
7
7
|
menu: MenuConfig;
|
|
@@ -23,3 +23,14 @@ export declare class SheetPermissionRenderController extends Disposable implemen
|
|
|
23
23
|
private _initRender;
|
|
24
24
|
private _initSkeleton;
|
|
25
25
|
}
|
|
26
|
+
export declare class WorksheetProtectionRenderController extends Disposable implements IRenderModule {
|
|
27
|
+
private readonly _context;
|
|
28
|
+
private _renderManagerService;
|
|
29
|
+
private _univerInstanceService;
|
|
30
|
+
private _sheetSkeletonManagerService;
|
|
31
|
+
private _worksheetProtectionRuleModel;
|
|
32
|
+
private _worksheetProtectionRenderExtension;
|
|
33
|
+
constructor(_context: IRenderContext, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _worksheetProtectionRuleModel: WorksheetProtectionRuleModel);
|
|
34
|
+
private _initRender;
|
|
35
|
+
private _initSkeleton;
|
|
36
|
+
}
|
|
@@ -14,7 +14,7 @@ export declare class HeaderMoveRenderController extends Disposable implements IR
|
|
|
14
14
|
private _headerPointerDownSubs;
|
|
15
15
|
private _headerPointerMoveSubs;
|
|
16
16
|
private _headerPointerLeaveSubs;
|
|
17
|
-
private
|
|
17
|
+
private _dragHeaderMoveSub;
|
|
18
18
|
private _scenePointerUpSub;
|
|
19
19
|
private _scrollTimer;
|
|
20
20
|
private _changeFromColumn;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Workbook, ICommandService, IContextService, RxDisposable } from '@univerjs/core';
|
|
2
2
|
import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
|
|
3
|
+
import { ITelemetryService } from '@univerjs/telemetry';
|
|
3
4
|
import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
|
|
4
5
|
import { SheetsRenderService } from '../../services/sheets-render.service';
|
|
5
6
|
export declare class SheetRenderController extends RxDisposable implements IRenderModule {
|
|
@@ -8,8 +9,14 @@ export declare class SheetRenderController extends RxDisposable implements IRend
|
|
|
8
9
|
private readonly _sheetSkeletonManagerService;
|
|
9
10
|
private readonly _sheetRenderService;
|
|
10
11
|
private readonly _commandService;
|
|
11
|
-
|
|
12
|
+
private readonly _telemetryService?;
|
|
13
|
+
constructor(_context: IRenderContext<Workbook>, _contextService: IContextService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _sheetRenderService: SheetsRenderService, _commandService: ICommandService, _telemetryService?: ITelemetryService | undefined);
|
|
12
14
|
private _addNewRender;
|
|
15
|
+
private _renderFrameTimeMetric;
|
|
16
|
+
private _renderFrameTags;
|
|
17
|
+
private _afterRenderMetric$;
|
|
18
|
+
private _initRenderMetricSubscriber;
|
|
19
|
+
private _renderMetricCapture;
|
|
13
20
|
private _addComponent;
|
|
14
21
|
private _initViewports;
|
|
15
22
|
/**
|
|
@@ -1,21 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export interface IUniverSheetsUIConfig {
|
|
4
|
-
menu: MenuConfig;
|
|
5
|
-
disableAutoFocus?: true;
|
|
6
|
-
override?: DependencyOverride;
|
|
7
|
-
}
|
|
8
|
-
export declare const DefaultSheetUiConfig: {};
|
|
1
|
+
import { Disposable, ICommandService, Injector } from '@univerjs/core';
|
|
2
|
+
import { ComponentManager, ILayoutService, IMenuManagerService, IShortcutService, IUIPartsService } from '@univerjs/ui';
|
|
9
3
|
export declare class SheetUIController extends Disposable {
|
|
10
|
-
protected readonly _config: Partial<IUniverSheetsUIConfig>;
|
|
11
4
|
protected readonly _injector: Injector;
|
|
12
5
|
protected readonly _componentManager: ComponentManager;
|
|
13
6
|
protected readonly _layoutService: ILayoutService;
|
|
14
7
|
protected readonly _commandService: ICommandService;
|
|
15
8
|
protected readonly _shortcutService: IShortcutService;
|
|
16
|
-
protected readonly
|
|
9
|
+
protected readonly _menuManagerService: IMenuManagerService;
|
|
17
10
|
protected readonly _uiPartsService: IUIPartsService;
|
|
18
|
-
constructor(
|
|
11
|
+
constructor(_injector: Injector, _componentManager: ComponentManager, _layoutService: ILayoutService, _commandService: ICommandService, _shortcutService: IShortcutService, _menuManagerService: IMenuManagerService, _uiPartsService: IUIPartsService);
|
|
19
12
|
private _init;
|
|
20
13
|
private _initCustomComponents;
|
|
21
14
|
private _initCommands;
|
|
@@ -1,4 +1,25 @@
|
|
|
1
|
-
import { IAccessor, RANGE_TYPE } from '@univerjs/core';
|
|
1
|
+
import { IAccessor, Nullable, RANGE_TYPE } from '@univerjs/core';
|
|
2
2
|
import { ISelectionWithStyle } from '@univerjs/sheets';
|
|
3
3
|
export declare function getSheetSelectionsDisabled$(accessor: IAccessor): import('rxjs').Observable<boolean>;
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Detect if this row is selected
|
|
6
|
+
* @param selections
|
|
7
|
+
* @param rowIndex
|
|
8
|
+
* @returns boolean
|
|
9
|
+
*/
|
|
10
|
+
export declare function isThisRowSelected(selections: Readonly<ISelectionWithStyle[]>, rowIndex: number): boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Detect if this col is selected
|
|
13
|
+
* @param selections
|
|
14
|
+
* @param colIndex
|
|
15
|
+
* @returns boolean
|
|
16
|
+
*/
|
|
17
|
+
export declare function isThisColSelected(selections: Readonly<ISelectionWithStyle[]>, colIndex: number): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Detect this row/col is in selections.
|
|
20
|
+
* @param selections
|
|
21
|
+
* @param indexOfRowCol
|
|
22
|
+
* @param rowOrCol
|
|
23
|
+
* @returns boolean
|
|
24
|
+
*/
|
|
25
|
+
export declare function matchedSelectionByRowColIndex(selections: Readonly<ISelectionWithStyle[]>, indexOfRowCol: number, rowOrCol: RANGE_TYPE.ROW | RANGE_TYPE.COLUMN): Nullable<ISelectionWithStyle>;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -17,16 +17,16 @@ export { SheetsUIPart } from './consts/ui-name';
|
|
|
17
17
|
export { SHEET_UI_PLUGIN_NAME } from './consts/plugin-name';
|
|
18
18
|
export { getEditorObject } from './basics/editor/get-editor-object';
|
|
19
19
|
export { SheetsScrollRenderController } from './controllers/render-controllers/scroll.render-controller';
|
|
20
|
-
export { deriveStateFromActiveSheet$, getCurrentRangeDisable$ } from './controllers/menu/menu-util';
|
|
20
|
+
export { deriveStateFromActiveSheet$, getCurrentRangeDisable$, getObservableWithExclusiveRange$, getCurrentExclusiveRangeInterest$ } from './controllers/menu/menu-util';
|
|
21
21
|
export { SheetsRenderService } from './services/sheets-render.service';
|
|
22
22
|
export { SHEET_VIEWPORT_KEY as VIEWPORT_KEY } from './common/keys';
|
|
23
23
|
export { AutoFillController } from './controllers/auto-fill.controller';
|
|
24
24
|
export { CellCustomRenderController } from './controllers/cell-custom-render.controller';
|
|
25
|
-
export { SheetUIController
|
|
25
|
+
export { SheetUIController } from './controllers/sheet-ui.controller';
|
|
26
26
|
export { PASTE_SPECIAL_MENU_ID } from './controllers/menu/menu';
|
|
27
27
|
export { whenFormulaEditorActivated } from './controllers/shortcuts/utils';
|
|
28
28
|
export { getCoordByCell, getCoordByOffset, getSheetObject, getTransformCoord, } from './controllers/utils/component-tools';
|
|
29
|
-
export { checkInHeaderRanges } from './controllers/utils/selections-tools';
|
|
29
|
+
export { matchedSelectionByRowColIndex as checkInHeaderRanges } from './controllers/utils/selections-tools';
|
|
30
30
|
export { useActiveWorkbook, useActiveWorksheet, useWorkbooks } from './components/hook';
|
|
31
31
|
export { whenSheetEditorFocused } from './controllers/shortcuts/utils';
|
|
32
32
|
export type { IEditorBridgeServiceParam } from './services/editor-bridge.service';
|
|
@@ -64,7 +64,7 @@ export type { IAutoFillLocation } from './services/auto-fill/type';
|
|
|
64
64
|
export type { IDiscreteRange } from './controllers/utils/range-tools';
|
|
65
65
|
export { virtualizeDiscreteRanges, rangeToDiscreteRange } from './controllers/utils/range-tools';
|
|
66
66
|
export { type IHoverCellPosition } from './services/hover-manager.service';
|
|
67
|
-
export { AutoHeightController } from './controllers/auto-height.controller';
|
|
67
|
+
export { AutoHeightController, AFFECT_LAYOUT_STYLES } from './controllers/auto-height.controller';
|
|
68
68
|
export { type IDragCellPosition } from './services/drag-manager.service';
|
|
69
69
|
export { SheetMenuPosition } from './controllers/menu/menu';
|
|
70
70
|
export { useHighlightRange } from './hooks/useHighlightRange';
|
|
@@ -83,6 +83,7 @@ export { MobileSheetBar } from './views/mobile/sheet-bar/MobileSheetBar';
|
|
|
83
83
|
export { SheetPermissionInitController } from './controllers/permission/sheet-permission-init.controller';
|
|
84
84
|
export { IFormatPainterService } from './services/format-painter/format-painter.service';
|
|
85
85
|
export type { IFormatPainterBeforeApplyHookParams, IFormatPainterHook } from './services/format-painter/format-painter.service';
|
|
86
|
+
export { menuSchema } from './controllers/menu.schema';
|
|
86
87
|
export { AddWorksheetMergeCommand, AddWorksheetMergeAllCommand, AddWorksheetMergeVerticalCommand, AddWorksheetMergeHorizontalCommand } from './commands/commands/add-worksheet-merge.command';
|
|
87
88
|
export { AutoFillCommand, AutoClearContentCommand } from './commands/commands/auto-fill.command';
|
|
88
89
|
export { SheetCopyCommand, SheetCutCommand, SheetPasteCommand, SheetPasteValueCommand, SheetPasteShortKeyCommand, SheetPasteColWidthCommand, SheetPasteFormatCommand, SheetPasteBesidesBorderCommand, type ISheetPasteParams, } from './commands/commands/clipboard.command';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injector, IUniverInstanceService, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
2
2
|
import { IRenderManagerService } from '@univerjs/engine-render';
|
|
3
|
-
import { IUniverSheetsUIConfig } from './controllers/
|
|
3
|
+
import { IUniverSheetsUIConfig } from './controllers/config.schema';
|
|
4
4
|
/**
|
|
5
5
|
* @ignore
|
|
6
6
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { IDisposable, Nullable, Direction, Disposable, ICommandService, IUndoRedoService, IUniverInstanceService } from '@univerjs/core';
|
|
1
|
+
import { IDisposable, Nullable, Direction, Disposable, ICommandService, Injector, IUndoRedoService, IUniverInstanceService } from '@univerjs/core';
|
|
2
2
|
import { SheetsSelectionsService } from '@univerjs/sheets';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
|
+
import { RenderManagerService } from '@univerjs/engine-render';
|
|
4
5
|
import { IAutoFillLocation, IAutoFillRule, ISheetAutoFillHook, APPLY_TYPE } from './type';
|
|
5
6
|
export interface IAutoFillService {
|
|
6
7
|
applyType$: Observable<APPLY_TYPE>;
|
|
@@ -21,6 +22,7 @@ export interface IAutoFillService {
|
|
|
21
22
|
getActiveHooks(): ISheetAutoFillHook[];
|
|
22
23
|
addHook(hook: ISheetAutoFillHook): IDisposable;
|
|
23
24
|
fillData(triggerUnitId: string, triggerSubUnitId: string): boolean;
|
|
25
|
+
initPrevUndo(): void;
|
|
24
26
|
}
|
|
25
27
|
export interface IApplyMenuItem {
|
|
26
28
|
label: string;
|
|
@@ -28,14 +30,17 @@ export interface IApplyMenuItem {
|
|
|
28
30
|
disable: boolean;
|
|
29
31
|
}
|
|
30
32
|
export declare class AutoFillService extends Disposable implements IAutoFillService {
|
|
31
|
-
private _univerInstanceService;
|
|
32
|
-
private _selectionManagerService;
|
|
33
33
|
private _commandService;
|
|
34
34
|
private _undoRedoService;
|
|
35
|
+
private readonly _renderManagerService;
|
|
36
|
+
private _univerInstanceService;
|
|
37
|
+
private _selectionManagerService;
|
|
38
|
+
private readonly _injector;
|
|
35
39
|
private _rules;
|
|
36
40
|
private _hooks;
|
|
37
41
|
private readonly _applyType$;
|
|
38
42
|
private _isFillingStyle;
|
|
43
|
+
private _prevUndos;
|
|
39
44
|
private readonly _autoFillLocation$;
|
|
40
45
|
readonly autoFillLocation$: Observable<Nullable<IAutoFillLocation>>;
|
|
41
46
|
private readonly _showMenu$;
|
|
@@ -44,9 +49,10 @@ export declare class AutoFillService extends Disposable implements IAutoFillServ
|
|
|
44
49
|
readonly applyType$: Observable<APPLY_TYPE>;
|
|
45
50
|
private readonly _menu$;
|
|
46
51
|
readonly menu$: Observable<IApplyMenuItem[]>;
|
|
47
|
-
constructor(_univerInstanceService: IUniverInstanceService, _selectionManagerService: SheetsSelectionsService,
|
|
52
|
+
constructor(_commandService: ICommandService, _undoRedoService: IUndoRedoService, _renderManagerService: RenderManagerService, _univerInstanceService: IUniverInstanceService, _selectionManagerService: SheetsSelectionsService, _injector: Injector);
|
|
48
53
|
private _init;
|
|
49
|
-
private
|
|
54
|
+
private _getOneByPriority;
|
|
55
|
+
initPrevUndo(): void;
|
|
50
56
|
addHook(hook: ISheetAutoFillHook): IDisposable;
|
|
51
57
|
registerRule(rule: IAutoFillRule): void;
|
|
52
58
|
getRules(): IAutoFillRule[];
|
|
@@ -64,5 +70,6 @@ export declare class AutoFillService extends Disposable implements IAutoFillServ
|
|
|
64
70
|
setDisableApplyType(type: APPLY_TYPE, disable: boolean): void;
|
|
65
71
|
setShowMenu(show: boolean): void;
|
|
66
72
|
fillData(triggerUnitId: string, triggerSubUnitId: string): boolean;
|
|
73
|
+
private _getAutoHeightUndoRedos;
|
|
67
74
|
}
|
|
68
75
|
export declare const IAutoFillService: import('@univerjs/core').IdentifierDecorator<AutoFillService>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2023-present DreamNum Inc.
|
|
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 {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2023-present DreamNum Inc.
|
|
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 {};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { ICellData,
|
|
1
|
+
import { ICellData, ObjectMatrix } from '@univerjs/core';
|
|
2
2
|
import { ISheetClipboardHook } from '../type';
|
|
3
|
+
import { IDiscreteRange } from '../../../controllers/utils/range-tools';
|
|
3
4
|
export declare class USMToHtmlService {
|
|
4
5
|
convert(matrix: ObjectMatrix<ICellData & {
|
|
5
6
|
rowSpan?: number | undefined;
|
|
6
7
|
colSpan?: number | undefined;
|
|
7
|
-
}>, range:
|
|
8
|
+
}>, range: IDiscreteRange, hooks: ISheetClipboardHook[]): string;
|
|
8
9
|
}
|
|
@@ -147,7 +147,8 @@ export declare class BaseSelectionRenderService extends Disposable implements IS
|
|
|
147
147
|
*/
|
|
148
148
|
protected _onPointerDown(evt: IPointerEvent | IMouseEvent, _zIndex: number | undefined, rangeType: RANGE_TYPE | undefined, viewport: Nullable<Viewport>, scrollTimerType?: ScrollTimerType): void;
|
|
149
149
|
/**
|
|
150
|
-
* Init pointer move listener
|
|
150
|
+
* Init pointer move listener in each pointer down, unbind in each pointer up.
|
|
151
|
+
* Both cell selections and row-column selections are supported by this method.
|
|
151
152
|
* @param viewportMain
|
|
152
153
|
* @param activeSelectionControl
|
|
153
154
|
* @param rangeType
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ThemeService, RANGE_TYPE } from '@univerjs/core';
|
|
2
2
|
import { IRectProps, Scene, Rect } from '@univerjs/engine-render';
|
|
3
3
|
import { ISelectionStyle } from '@univerjs/sheets';
|
|
4
4
|
import { SelectionControl } from './selection-shape';
|
|
@@ -33,8 +33,7 @@ export declare class MobileSelectionControl extends SelectionControl {
|
|
|
33
33
|
get rangeType(): RANGE_TYPE;
|
|
34
34
|
set rangeType(value: RANGE_TYPE);
|
|
35
35
|
dispose(): void;
|
|
36
|
-
|
|
37
|
-
protected _updateControlStyleAndLayout(style: Nullable<ISelectionStyle>): void;
|
|
36
|
+
protected _setSizeAndStyleForSelectionControl(style: ISelectionStyle): void;
|
|
38
37
|
getViewportMainScrollInfo(): {
|
|
39
38
|
viewportScrollX: number;
|
|
40
39
|
viewportScrollY: number;
|
|
@@ -133,13 +133,18 @@ export declare class SelectionControl extends Disposable {
|
|
|
133
133
|
setEvent(state: boolean): void;
|
|
134
134
|
refreshSelectionFilled(val: IRangeWithCoord): void;
|
|
135
135
|
/**
|
|
136
|
-
*
|
|
136
|
+
* Update Control Style And Position of SelectionControl
|
|
137
|
+
* @param selectionStyle
|
|
137
138
|
*/
|
|
138
|
-
protected
|
|
139
|
+
protected _setSizeAndStyleForSelectionControl(selectionStyle: ISelectionStyle): void;
|
|
140
|
+
/**
|
|
141
|
+
* update selection control position by curr selection model
|
|
142
|
+
*/
|
|
143
|
+
protected _refreshControlPosition(): void;
|
|
139
144
|
updateStyle(style: ISelectionStyle): void;
|
|
140
145
|
updateRange(range: IRangeWithCoord, primaryCell: Nullable<ISelectionCellWithMergeInfo>): void;
|
|
141
146
|
/**
|
|
142
|
-
*
|
|
147
|
+
* Update selection model with new range & primary cell(aka: highlight/current), also update row/col selection size & style.
|
|
143
148
|
*
|
|
144
149
|
* @param newSelectionRange
|
|
145
150
|
* @param rowHeaderWidth
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { Injector, IUniverInstanceService, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
1
|
+
import { IConfigService, Injector, IUniverInstanceService, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
2
2
|
import { IRenderManagerService } from '@univerjs/engine-render';
|
|
3
|
-
import { IUniverSheetsUIConfig } from './controllers/
|
|
3
|
+
import { IUniverSheetsUIConfig } from './controllers/config.schema';
|
|
4
4
|
export declare class UniverSheetsUIPlugin extends Plugin {
|
|
5
5
|
private readonly _config;
|
|
6
6
|
readonly _injector: Injector;
|
|
7
7
|
private readonly _renderManagerService;
|
|
8
|
+
private readonly _configService;
|
|
8
9
|
private readonly _univerInstanceService;
|
|
9
10
|
static pluginName: string;
|
|
10
11
|
static type: UniverInstanceType;
|
|
11
12
|
/** @ignore */
|
|
12
|
-
constructor(_config: Partial<IUniverSheetsUIConfig>, _injector: Injector, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService);
|
|
13
|
+
constructor(_config: Partial<IUniverSheetsUIConfig>, _injector: Injector, _renderManagerService: IRenderManagerService, _configService: IConfigService, _univerInstanceService: IUniverInstanceService);
|
|
13
14
|
onStarting(): void;
|
|
14
15
|
onReady(): void;
|
|
15
16
|
onRendered(): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ICellDataForSheetInterceptor,
|
|
1
|
+
import { ICellDataForSheetInterceptor, IScale } from '@univerjs/core';
|
|
2
2
|
import { SpreadsheetSkeleton, UniverRenderingContext, SheetExtension } from '@univerjs/engine-render';
|
|
3
3
|
import { ICellPermission } from '@univerjs/sheets';
|
|
4
4
|
export declare const RANGE_PROTECTION_CAN_VIEW_RENDER_EXTENSION_KEY = "RANGE_PROTECTION_CAN_VIEW_RENDER_EXTENSION_KEY";
|
|
@@ -15,7 +15,7 @@ export declare abstract class RangeProtectionRenderExtension extends SheetExtens
|
|
|
15
15
|
constructor();
|
|
16
16
|
clearCache(): void;
|
|
17
17
|
protected abstract shouldRender(config: ICellPermission): boolean;
|
|
18
|
-
draw(ctx: UniverRenderingContext, _parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton
|
|
18
|
+
draw(ctx: UniverRenderingContext, _parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton): void;
|
|
19
19
|
}
|
|
20
20
|
export declare class RangeProtectionCanViewRenderExtension extends RangeProtectionRenderExtension {
|
|
21
21
|
uKey: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IScale } from '@univerjs/core';
|
|
2
2
|
import { SpreadsheetSkeleton, UniverRenderingContext, SheetExtension } from '@univerjs/engine-render';
|
|
3
3
|
export declare const worksheetProtectionKey = "worksheet-protection";
|
|
4
4
|
export declare class WorksheetProtectionRenderExtension extends SheetExtension {
|
|
@@ -7,6 +7,6 @@ export declare class WorksheetProtectionRenderExtension extends SheetExtension {
|
|
|
7
7
|
private _pattern;
|
|
8
8
|
private _img;
|
|
9
9
|
constructor();
|
|
10
|
-
draw(ctx: UniverRenderingContext, _parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton
|
|
10
|
+
draw(ctx: UniverRenderingContext, _parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton): false | undefined;
|
|
11
11
|
setZIndex(zIndex: number): void;
|
|
12
12
|
}
|