@univerjs/sheets-ui 0.1.13 → 0.1.14

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.
Files changed (51) hide show
  1. package/lib/cjs/index.js +11 -11
  2. package/lib/es/index.js +5568 -5522
  3. package/lib/locale/en-US.json +2 -2
  4. package/lib/types/controllers/auto-height.controller.d.ts +7 -7
  5. package/lib/types/controllers/cell-alert.controller.d.ts +2 -2
  6. package/lib/types/controllers/cell-custom-render.controller.d.ts +2 -5
  7. package/lib/types/controllers/clipboard/clipboard.controller.d.ts +3 -4
  8. package/lib/types/controllers/drag-render.controller.d.ts +3 -3
  9. package/lib/types/controllers/editor/formula-editor.controller.d.ts +3 -11
  10. package/lib/types/controllers/force-string-alert-render.controller.d.ts +4 -5
  11. package/lib/types/controllers/force-string-render.controller.d.ts +2 -5
  12. package/lib/types/controllers/hover-render.controller.d.ts +3 -4
  13. package/lib/types/controllers/mark-selection.controller.d.ts +2 -2
  14. package/lib/types/controllers/menu/menu-util.d.ts +2 -2
  15. package/lib/types/controllers/menu/permission-menu-util.d.ts +0 -3
  16. package/lib/types/controllers/permission/sheet-permission-interceptor-canvas-render.controller.d.ts +2 -2
  17. package/lib/types/controllers/permission/sheet-permission-interceptor-formula-render.controller.d.ts +2 -3
  18. package/lib/types/controllers/permission/sheet-permission-render.controller.d.ts +16 -2
  19. package/lib/types/controllers/render-controllers/contextmenu.render-controller.d.ts +4 -7
  20. package/lib/types/controllers/render-controllers/editor-bridge.render-controller.d.ts +2 -2
  21. package/lib/types/controllers/render-controllers/format-painter.render-controller.d.ts +2 -2
  22. package/lib/types/controllers/render-controllers/freeze.render-controller.d.ts +2 -2
  23. package/lib/types/controllers/render-controllers/header-menu.render-controller.d.ts +2 -2
  24. package/lib/types/controllers/render-controllers/header-move.render-controller.d.ts +2 -2
  25. package/lib/types/controllers/render-controllers/header-resize.render-controller.d.ts +2 -2
  26. package/lib/types/controllers/render-controllers/scroll.render-controller.d.ts +4 -5
  27. package/lib/types/controllers/render-controllers/selection.render-controller.d.ts +2 -2
  28. package/lib/types/controllers/render-controllers/sheet-render.controller.d.ts +41 -0
  29. package/lib/types/controllers/render-controllers/zoom.render-controller.d.ts +2 -2
  30. package/lib/types/index.d.ts +4 -2
  31. package/lib/types/services/canvas-pop-manager.service.d.ts +1 -3
  32. package/lib/types/services/clipboard/clipboard.service.d.ts +3 -3
  33. package/lib/types/services/clipboard/html-to-usm/converter.d.ts +5 -5
  34. package/lib/types/services/drag-manager.service.d.ts +1 -3
  35. package/lib/types/services/editor-bridge.service.d.ts +4 -5
  36. package/lib/types/services/hover-manager.service.d.ts +1 -3
  37. package/lib/types/services/mark-selection/mark-selection.service.d.ts +1 -3
  38. package/lib/types/services/permission/worksheet-permission-render.service.d.ts +10 -0
  39. package/lib/types/services/print-interceptor.service.d.ts +17 -0
  40. package/lib/types/services/selection/selection-render.service.d.ts +5 -5
  41. package/lib/types/services/sheet-skeleton-manager.service.d.ts +9 -12
  42. package/lib/types/services/sheets-render.service.d.ts +27 -0
  43. package/lib/types/sheets-ui-plugin.d.ts +2 -0
  44. package/lib/types/views/permission/extensions/protect-background-img.d.ts +16 -0
  45. package/lib/types/views/permission/extensions/range-protection.render.d.ts +32 -0
  46. package/lib/types/views/permission/extensions/worksheet-permission.render.d.ts +13 -0
  47. package/lib/umd/index.js +11 -11
  48. package/package.json +39 -29
  49. package/lib/types/controllers/sheet-render.controller.d.ts +0 -38
  50. package/lib/types/services/permission/permission-render.service.d.ts +0 -17
  51. package/lib/types/views/sheet-canvas-view.d.ts +0 -30
@@ -543,8 +543,8 @@
543
543
  "canEdit": "Can edit",
544
544
  "canView": "Can view",
545
545
  "delete": "Delete",
546
- "currentSheet": "Current worksheet",
547
- "allSheet": "All worksheets",
546
+ "currentSheet": "Current sheet",
547
+ "allSheet": "All sheets",
548
548
  "edit": "Edit",
549
549
  "Print": "Print",
550
550
  "Comment": "Comment",
@@ -1,15 +1,15 @@
1
1
  import { IRange, Disposable, IUniverInstanceService } from '@univerjs/core';
2
2
  import { ISetWorksheetRowAutoHeightMutationParams, SelectionManagerService, SheetInterceptorService } from '@univerjs/sheets';
3
3
  import { Injector } from '@wendellhu/redi';
4
- import { SheetSkeletonManagerService } from '../services/sheet-skeleton-manager.service';
4
+ import { RenderManagerService } from '@univerjs/engine-render';
5
5
 
6
6
  export declare class AutoHeightController extends Disposable {
7
- private _injector;
8
- private _sheetInterceptorService;
9
- private _selectionManagerService;
10
- private _univerInstanceService;
11
- private _sheetSkeletonManagerService;
12
- constructor(_injector: Injector, _sheetInterceptorService: SheetInterceptorService, _selectionManagerService: SelectionManagerService, _univerInstanceService: IUniverInstanceService, _sheetSkeletonManagerService: SheetSkeletonManagerService);
7
+ private readonly _renderManagerService;
8
+ private readonly _injector;
9
+ private readonly _sheetInterceptorService;
10
+ private readonly _selectionManagerService;
11
+ private readonly _univerInstanceService;
12
+ constructor(_renderManagerService: RenderManagerService, _injector: Injector, _sheetInterceptorService: SheetInterceptorService, _selectionManagerService: SelectionManagerService, _univerInstanceService: IUniverInstanceService);
13
13
  getUndoRedoParamsOfAutoHeight(ranges: IRange[]): {
14
14
  undos: {
15
15
  id: string;
@@ -1,8 +1,8 @@
1
1
  import { Workbook, Disposable } from '@univerjs/core';
2
2
  import { ComponentManager } from '@univerjs/ui';
3
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
3
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
4
4
 
5
- export declare class CellAlertRenderController extends Disposable implements IRenderController {
5
+ export declare class CellAlertRenderController extends Disposable implements IRenderModule {
6
6
  private readonly _context;
7
7
  private _componentManager;
8
8
  constructor(_context: IRenderContext<Workbook>, _componentManager: ComponentManager);
@@ -1,11 +1,8 @@
1
1
  import { UniverInstanceService, Workbook, Disposable } from '@univerjs/core';
2
- import { IRenderContext, IRenderController, RenderManagerService } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule, RenderManagerService } from '@univerjs/engine-render';
3
3
  import { SheetSkeletonManagerService } from '../services/sheet-skeleton-manager.service';
4
4
 
5
- /**
6
- * @todo RenderUnit
7
- */
8
- export declare class CellCustomRenderController extends Disposable implements IRenderController {
5
+ export declare class CellCustomRenderController extends Disposable implements IRenderModule {
9
6
  private readonly _context;
10
7
  private readonly _sheetSkeletonManagerService;
11
8
  private readonly _renderManagerService;
@@ -1,9 +1,8 @@
1
1
  import { ICommandService, IConfigService, IContextService, IUniverInstanceService, LocaleService, RxDisposable } from '@univerjs/core';
2
2
  import { IMessageService } from '@univerjs/ui';
3
3
  import { Injector } from '@wendellhu/redi';
4
- import { ITextSelectionRenderManager } from '@univerjs/engine-render';
4
+ import { IRenderManagerService, ITextSelectionRenderManager } from '@univerjs/engine-render';
5
5
  import { ISheetClipboardService } from '../../services/clipboard/clipboard.service';
6
- import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
7
6
 
8
7
  /**
9
8
  * This controller add basic clipboard logic for basic features such as text color / BISU / row widths to the clipboard
@@ -12,15 +11,15 @@ import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manag
12
11
  export declare class SheetClipboardController extends RxDisposable {
13
12
  private readonly _injector;
14
13
  private readonly _currentUniverSheet;
14
+ private readonly _renderManagerService;
15
15
  private readonly _commandService;
16
16
  private readonly _contextService;
17
17
  private readonly _configService;
18
18
  private readonly _sheetClipboardService;
19
19
  private readonly _messageService;
20
- private readonly _sheetSkeletonManagerService;
21
20
  private readonly _localService;
22
21
  private readonly _textSelectionRenderManager?;
23
- constructor(_injector: Injector, _currentUniverSheet: IUniverInstanceService, _commandService: ICommandService, _contextService: IContextService, _configService: IConfigService, _sheetClipboardService: ISheetClipboardService, _messageService: IMessageService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _localService: LocaleService, _textSelectionRenderManager?: ITextSelectionRenderManager | undefined);
22
+ constructor(_injector: Injector, _currentUniverSheet: IUniverInstanceService, _renderManagerService: IRenderManagerService, _commandService: ICommandService, _contextService: IContextService, _configService: IConfigService, _sheetClipboardService: ISheetClipboardService, _messageService: IMessageService, _localService: LocaleService, _textSelectionRenderManager?: ITextSelectionRenderManager | undefined);
24
23
  private _init;
25
24
  private _initCopyingHooks;
26
25
  private _initPastingHook;
@@ -1,13 +1,13 @@
1
1
  import { Workbook, Disposable } from '@univerjs/core';
2
- import { IRenderContext, IRenderController, IRenderManagerService } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule, IRenderManagerService } from '@univerjs/engine-render';
3
3
  import { DragManagerService } from '../services/drag-manager.service';
4
4
  import { SheetSkeletonManagerService } from '../services/sheet-skeleton-manager.service';
5
5
 
6
- export declare class DragRenderController extends Disposable implements IRenderController {
6
+ export declare class DragRenderController extends Disposable implements IRenderModule, IRenderModule {
7
7
  private readonly _context;
8
8
  private _renderManagerService;
9
9
  private _dragManagerService;
10
- private _sheetSkeletonManagerService;
10
+ private readonly _sheetSkeletonManagerService;
11
11
  constructor(_context: IRenderContext<Workbook>, _renderManagerService: IRenderManagerService, _dragManagerService: DragManagerService, _sheetSkeletonManagerService: SheetSkeletonManagerService);
12
12
  private _initDragEvent;
13
13
  }
@@ -1,13 +1,9 @@
1
- import { ICommandService, IContextService, InterceptorManager, IUndoRedoService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
1
+ import { ICommandService, IContextService, IUndoRedoService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
2
2
  import { DocSkeletonManagerService, DocViewModelManagerService, TextSelectionManagerService } from '@univerjs/docs';
3
3
  import { IRenderManagerService } from '@univerjs/engine-render';
4
4
  import { IFormulaEditorManagerService } from '../../services/editor/formula-editor-manager.service';
5
5
  import { IEditorBridgeService } from '../../services/editor-bridge.service';
6
6
 
7
- export declare const FORMULA_EDIT_PERMISSION_CHECK: import('@univerjs/core').IInterceptor<boolean, {
8
- row: number;
9
- col: number;
10
- }>;
11
7
  export declare class FormulaEditorController extends RxDisposable {
12
8
  private readonly _univerInstanceService;
13
9
  private readonly _renderManagerService;
@@ -20,12 +16,6 @@ export declare class FormulaEditorController extends RxDisposable {
20
16
  private readonly _docViewModelManagerService;
21
17
  private readonly _textSelectionManagerService;
22
18
  private _loadedMap;
23
- interceptor: InterceptorManager<{
24
- FORMULA_EDIT_PERMISSION_CHECK: import('@univerjs/core').IInterceptor<boolean, {
25
- row: number;
26
- col: number;
27
- }>;
28
- }>;
29
19
  constructor(_univerInstanceService: IUniverInstanceService, _renderManagerService: IRenderManagerService, _editorBridgeService: IEditorBridgeService, _commandService: ICommandService, _contextService: IContextService, _formulaEditorManagerService: IFormulaEditorManagerService, _undoRedoService: IUndoRedoService, _docSkeletonManagerService: DocSkeletonManagerService, _docViewModelManagerService: DocViewModelManagerService, _textSelectionManagerService: TextSelectionManagerService);
30
20
  private _initialize;
31
21
  private _create;
@@ -38,7 +28,9 @@ export declare class FormulaEditorController extends RxDisposable {
38
28
  private _syncFormulaEditorContent;
39
29
  private _editorSyncHandler;
40
30
  private _commandExecutedListener;
31
+ private _syncActionsAndRender;
41
32
  private _syncContentAndRender;
33
+ private _checkAndSetRenderStyleConfig;
42
34
  private _clearParagraph;
43
35
  private _autoScroll;
44
36
  }
@@ -1,15 +1,14 @@
1
- import { Workbook, Disposable, IUniverInstanceService, LocaleService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
1
+ import { Workbook, Disposable, LocaleService } from '@univerjs/core';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { HoverManagerService } from '../services/hover-manager.service';
4
4
  import { CellAlertManagerService } from '../services/cell-alert-manager.service';
5
5
 
6
- export declare class ForceStringAlertRenderController extends Disposable implements IRenderController {
6
+ export declare class ForceStringAlertRenderController extends Disposable implements IRenderModule {
7
7
  private readonly _context;
8
8
  private readonly _hoverManagerService;
9
9
  private readonly _cellAlertManagerService;
10
- private readonly _univerInstanceService;
11
10
  private readonly _localeService;
12
- constructor(_context: IRenderContext<Workbook>, _hoverManagerService: HoverManagerService, _cellAlertManagerService: CellAlertManagerService, _univerInstanceService: IUniverInstanceService, _localeService: LocaleService);
11
+ constructor(_context: IRenderContext<Workbook>, _hoverManagerService: HoverManagerService, _cellAlertManagerService: CellAlertManagerService, _localeService: LocaleService);
13
12
  private _init;
14
13
  private _initCellAlertPopup;
15
14
  }
@@ -1,12 +1,9 @@
1
1
  import { RxDisposable, Workbook } from '@univerjs/core';
2
2
  import { SheetInterceptorService } from '@univerjs/sheets';
3
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
3
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
4
4
  import { SheetSkeletonManagerService } from '../services/sheet-skeleton-manager.service';
5
5
 
6
- /**
7
- * @todo RenderUnit
8
- */
9
- export declare class ForceStringRenderController extends RxDisposable implements IRenderController {
6
+ export declare class ForceStringRenderController extends RxDisposable implements IRenderModule {
10
7
  private readonly _context;
11
8
  private readonly _sheetSkeletonManagerService;
12
9
  private readonly _sheetInterceptorService;
@@ -1,16 +1,15 @@
1
1
  import { Workbook, Disposable } from '@univerjs/core';
2
- import { IRenderContext, IRenderController, IRenderManagerService } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { HoverManagerService } from '../services/hover-manager.service';
4
4
  import { SheetSkeletonManagerService } from '../services/sheet-skeleton-manager.service';
5
5
  import { ScrollManagerService } from '../services/scroll-manager.service';
6
6
 
7
- export declare class HoverRenderController extends Disposable implements IRenderController {
7
+ export declare class HoverRenderController extends Disposable implements IRenderModule {
8
8
  private readonly _context;
9
- private _renderManagerService;
10
9
  private _hoverManagerService;
11
10
  private _sheetSkeletonManagerService;
12
11
  private _scrollManagerService;
13
- constructor(_context: IRenderContext<Workbook>, _renderManagerService: IRenderManagerService, _hoverManagerService: HoverManagerService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _scrollManagerService: ScrollManagerService);
12
+ constructor(_context: IRenderContext<Workbook>, _hoverManagerService: HoverManagerService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _scrollManagerService: ScrollManagerService);
14
13
  private _initPointerEvent;
15
14
  private _initScrollEvent;
16
15
  }
@@ -1,9 +1,9 @@
1
1
  import { Workbook, Disposable, ICommandService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { IMarkSelectionService } from '../services/mark-selection/mark-selection.service';
4
4
  import { SheetSkeletonManagerService } from '../services/sheet-skeleton-manager.service';
5
5
 
6
- export declare class MarkSelectionRenderController extends Disposable implements IRenderController {
6
+ export declare class MarkSelectionRenderController extends Disposable implements IRenderModule {
7
7
  private readonly _context;
8
8
  private _markSelectionService;
9
9
  private _commandService;
@@ -1,4 +1,4 @@
1
- import { IPermissionTypes, Workbook, Worksheet, IUniverInstanceService } from '@univerjs/core';
1
+ import { IPermissionTypes, Workbook, WorkbookPermissionPointConstructor, Worksheet, IUniverInstanceService } from '@univerjs/core';
2
2
  import { IAccessor } from '@wendellhu/redi';
3
3
  import { Observable } from 'rxjs';
4
4
 
@@ -14,5 +14,5 @@ export declare function getInsertAfterMenuHidden$(accessor: IAccessor, type: 'ro
14
14
  export declare function getInsertBeforeMenuHidden$(accessor: IAccessor, type: 'row' | 'col'): Observable<boolean>;
15
15
  export declare function getDeleteMenuHidden$(accessor: IAccessor, type: 'row' | 'col'): Observable<boolean>;
16
16
  export declare function getCellMenuHidden$(accessor: IAccessor, type: 'row' | 'col'): Observable<boolean>;
17
- export declare function getWorkbookPermissionDisable$(accessor: IAccessor): Observable<boolean>;
17
+ export declare function getWorkbookPermissionDisable$(accessor: IAccessor, workbookPermissionTypes: WorkbookPermissionPointConstructor[]): Observable<boolean>;
18
18
  export {};
@@ -1,5 +1,3 @@
1
- import { ICellData } from '@univerjs/core';
2
- import { ISheetRenderExtension } from '@univerjs/engine-render';
3
1
  import { IAccessor } from '@wendellhu/redi';
4
2
 
5
3
  export declare function getAddPermissionHidden$(accessor: IAccessor): import('rxjs').Observable<boolean>;
@@ -11,4 +9,3 @@ export declare function getRemovePermissionFromSheetBarDisable$(accessor: IAcces
11
9
  export declare function getSetPermissionFromSheetBarDisable$(accessor: IAccessor): import('rxjs').Observable<boolean>;
12
10
  export declare function getRemovePermissionDisable$(accessor: IAccessor): import('rxjs').Observable<boolean>;
13
11
  export declare function getViewPermissionDisable$(accessor: IAccessor): import('rxjs').Observable<boolean>;
14
- export declare const changeRenderExtensionSkip: (cellData: ICellData & ISheetRenderExtension, key: keyof ISheetRenderExtension, value: boolean) => void;
@@ -1,14 +1,14 @@
1
1
  import { Workbook, DisposableCollection, IPermissionService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
2
2
  import { RangeProtectionRuleModel, SelectionManagerService } from '@univerjs/sheets';
3
3
  import { IDialogService } from '@univerjs/ui';
4
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
4
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
5
5
  import { HeaderMoveRenderController } from '../render-controllers/header-move.render-controller';
6
6
  import { HeaderResizeRenderController } from '../render-controllers/header-resize.render-controller';
7
7
  import { ISelectionRenderService } from '../../services/selection/selection-render.service';
8
8
  import { HeaderFreezeRenderController } from '../render-controllers/freeze.render-controller';
9
9
 
10
10
  export declare const SHEET_PERMISSION_PASTE_PLUGIN = "SHEET_PERMISSION_PASTE_PLUGIN";
11
- export declare class SheetPermissionInterceptorCanvasRenderController extends RxDisposable implements IRenderController {
11
+ export declare class SheetPermissionInterceptorCanvasRenderController extends RxDisposable implements IRenderModule {
12
12
  private readonly _context;
13
13
  private readonly _univerInstanceService;
14
14
  private readonly _permissionService;
@@ -1,11 +1,11 @@
1
1
  import { Workbook, DisposableCollection, IPermissionService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
2
2
  import { RangeProtectionRuleModel } from '@univerjs/sheets';
3
3
  import { Injector } from '@wendellhu/redi';
4
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
4
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
5
5
  import { StatusBarController } from '../status-bar.controller';
6
6
 
7
7
  export declare const SHEET_PERMISSION_PASTE_PLUGIN = "SHEET_PERMISSION_PASTE_PLUGIN";
8
- export declare class SheetPermissionInterceptorFormulaRenderController extends RxDisposable implements IRenderController {
8
+ export declare class SheetPermissionInterceptorFormulaRenderController extends RxDisposable implements IRenderModule {
9
9
  private readonly _context;
10
10
  private readonly _injector;
11
11
  private readonly _univerInstanceService;
@@ -15,5 +15,4 @@ export declare class SheetPermissionInterceptorFormulaRenderController extends R
15
15
  disposableCollection: DisposableCollection;
16
16
  constructor(_context: IRenderContext<Workbook>, _injector: Injector, _univerInstanceService: IUniverInstanceService, _permissionService: IPermissionService, _rangeProtectionRuleModel: RangeProtectionRuleModel, _statusBarController: StatusBarController);
17
17
  private _initStatusBarPermissionInterceptor;
18
- private _initFormulaEditorPermissionInterceptor;
19
18
  }
@@ -1,12 +1,15 @@
1
- import { Disposable } from '@univerjs/core';
1
+ import { Disposable, IPermissionService } from '@univerjs/core';
2
2
  import { MenuConfig, ComponentManager, IMenuService } from '@univerjs/ui';
3
3
  import { Injector } from '@wendellhu/redi';
4
+ import { RangeProtectionRuleModel } from '@univerjs/sheets';
5
+ import { IRenderContext } from '@univerjs/engine-render';
6
+ import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
4
7
 
5
8
  export interface IUniverSheetsPermissionMenuConfig {
6
9
  menu: MenuConfig;
7
10
  }
8
11
  export declare const DefaultSheetPermissionMenuConfig: {};
9
- export declare class SheetPermissionRenderController extends Disposable {
12
+ export declare class SheetPermissionRenderManagerController extends Disposable {
10
13
  private readonly _config;
11
14
  private _menuService;
12
15
  private _componentManager;
@@ -17,3 +20,14 @@ export declare class SheetPermissionRenderController extends Disposable {
17
20
  private _initContextMenu;
18
21
  private _initComponents;
19
22
  }
23
+ export declare class SheetPermissionRenderController extends Disposable {
24
+ private readonly _context;
25
+ private _rangeProtectionRuleModel;
26
+ private _sheetSkeletonManagerService;
27
+ private _permissionService;
28
+ private _rangeProtectionCanViewRenderExtension;
29
+ private _rangeProtectionCanNotViewRenderExtension;
30
+ constructor(_context: IRenderContext, _rangeProtectionRuleModel: RangeProtectionRuleModel, _sheetSkeletonManagerService: SheetSkeletonManagerService, _permissionService: IPermissionService);
31
+ private _initRender;
32
+ private _initSkeleton;
33
+ }
@@ -1,17 +1,14 @@
1
1
  import { Workbook, Disposable } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService } from '@univerjs/sheets';
4
4
  import { IContextMenuService } from '@univerjs/ui';
5
5
  import { ISelectionRenderService } from '../../services/selection/selection-render.service';
6
6
 
7
7
  /**
8
- * This controller subscribe to context menu events in
9
- * sheet rendering views and invoke context menu at a correct position
10
- * and with correct menu type.
11
- *
12
- * @todo RenderUnit
8
+ * This controller subscribe to context menu events in sheet rendering views and invoke context menu at a correct
9
+ * position and with correct menu type.
13
10
  */
14
- export declare class SheetContextMenuRenderController extends Disposable implements IRenderController {
11
+ export declare class SheetContextMenuRenderController extends Disposable implements IRenderModule {
15
12
  private readonly _context;
16
13
  private readonly _contextMenuService;
17
14
  private readonly _selectionManagerService;
@@ -1,11 +1,11 @@
1
1
  import { Workbook, ICommandService, IContextService, RxDisposable } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService } from '@univerjs/sheets';
4
4
  import { Injector } from '@wendellhu/redi';
5
5
  import { IEditorService, ILayoutService, IRangeSelectorService } from '@univerjs/ui';
6
6
  import { IEditorBridgeService } from '../../services/editor-bridge.service';
7
7
 
8
- export declare class EditorBridgeRenderController extends RxDisposable implements IRenderController {
8
+ export declare class EditorBridgeRenderController extends RxDisposable implements IRenderModule {
9
9
  private readonly _context;
10
10
  private readonly _injector;
11
11
  private readonly _commandService;
@@ -1,8 +1,8 @@
1
1
  import { Workbook, Disposable } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { IFormatPainterService } from '../../services/format-painter/format-painter.service';
4
4
 
5
- export declare class FormatPainterRenderController extends Disposable implements IRenderController {
5
+ export declare class FormatPainterRenderController extends Disposable implements IRenderModule {
6
6
  private readonly _context;
7
7
  private readonly _formatPainterService;
8
8
  constructor(_context: IRenderContext<Workbook>, _formatPainterService: IFormatPainterService);
@@ -1,12 +1,12 @@
1
1
  import { Workbook, Disposable, ICommandService, InterceptorManager, ThemeService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService, SheetInterceptorService } from '@univerjs/sheets';
4
4
  import { Injector } from '@wendellhu/redi';
5
5
  import { ScrollManagerService } from '../../services/scroll-manager.service';
6
6
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
7
7
 
8
8
  export declare const FREEZE_PERMISSION_CHECK: import('@univerjs/core').IInterceptor<boolean, null>;
9
- export declare class HeaderFreezeRenderController extends Disposable implements IRenderController {
9
+ export declare class HeaderFreezeRenderController extends Disposable implements IRenderModule {
10
10
  private readonly _context;
11
11
  private readonly _sheetSkeletonManagerService;
12
12
  private readonly _commandService;
@@ -1,5 +1,5 @@
1
1
  import { Workbook, Disposable, ICommandService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService } from '@univerjs/sheets';
4
4
  import { IContextMenuService } from '@univerjs/ui';
5
5
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
@@ -8,7 +8,7 @@ import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manag
8
8
  * header highlight
9
9
  * column menu: show, hover and mousedown event
10
10
  */
11
- export declare class HeaderMenuRenderController extends Disposable implements IRenderController {
11
+ export declare class HeaderMenuRenderController extends Disposable implements IRenderModule {
12
12
  private readonly _context;
13
13
  private readonly _sheetSkeletonManagerService;
14
14
  private readonly _contextMenuService;
@@ -1,11 +1,11 @@
1
1
  import { IRange, Workbook, Disposable, ICommandService, InterceptorManager } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService } from '@univerjs/sheets';
4
4
  import { ISelectionRenderService } from '../../services/selection/selection-render.service';
5
5
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
6
6
 
7
7
  export declare const HEADER_MOVE_PERMISSION_CHECK: import('@univerjs/core').IInterceptor<boolean, IRange>;
8
- export declare class HeaderMoveRenderController extends Disposable implements IRenderController {
8
+ export declare class HeaderMoveRenderController extends Disposable implements IRenderModule {
9
9
  private readonly _context;
10
10
  private readonly _sheetSkeletonManagerService;
11
11
  private readonly _commandService;
@@ -1,5 +1,5 @@
1
1
  import { Workbook, Disposable, ICommandService, InterceptorManager } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { IEditorBridgeService } from '../../services/editor-bridge.service';
4
4
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
5
5
 
@@ -7,7 +7,7 @@ export declare const HEADER_RESIZE_PERMISSION_CHECK: import('@univerjs/core').II
7
7
  row?: number | undefined;
8
8
  col?: number | undefined;
9
9
  }>;
10
- export declare class HeaderResizeRenderController extends Disposable implements IRenderController {
10
+ export declare class HeaderResizeRenderController extends Disposable implements IRenderModule {
11
11
  private readonly _context;
12
12
  private readonly _sheetSkeletonManagerService;
13
13
  private readonly _commandService;
@@ -1,5 +1,5 @@
1
- import { IRange, Workbook, Disposable, ICommandService, IUniverInstanceService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController, IRenderManagerService } from '@univerjs/engine-render';
1
+ import { IRange, Workbook, Disposable, ICommandService } from '@univerjs/core';
2
+ import { IRenderContext, IRenderModule, IRenderManagerService } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService } from '@univerjs/sheets';
4
4
  import { ScrollManagerService } from '../../services/scroll-manager.service';
5
5
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
@@ -7,15 +7,14 @@ import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manag
7
7
  /**
8
8
  * This controller handles scroll logic in sheet interaction.
9
9
  */
10
- export declare class SheetsScrollRenderController extends Disposable implements IRenderController {
10
+ export declare class SheetsScrollRenderController extends Disposable implements IRenderModule {
11
11
  private readonly _context;
12
12
  private readonly _sheetSkeletonManagerService;
13
- private readonly _univerInstanceService;
14
13
  private readonly _commandService;
15
14
  private readonly _renderManagerService;
16
15
  private readonly _selectionManagerService;
17
16
  private readonly _scrollManagerService;
18
- constructor(_context: IRenderContext<Workbook>, _sheetSkeletonManagerService: SheetSkeletonManagerService, _univerInstanceService: IUniverInstanceService, _commandService: ICommandService, _renderManagerService: IRenderManagerService, _selectionManagerService: SelectionManagerService, _scrollManagerService: ScrollManagerService);
17
+ constructor(_context: IRenderContext<Workbook>, _sheetSkeletonManagerService: SheetSkeletonManagerService, _commandService: ICommandService, _renderManagerService: IRenderManagerService, _selectionManagerService: SelectionManagerService, _scrollManagerService: ScrollManagerService);
19
18
  scrollToRange(range: IRange): boolean;
20
19
  private _init;
21
20
  private _initCommandListener;
@@ -1,11 +1,11 @@
1
1
  import { Workbook, Disposable, ICommandService, ThemeService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SelectionManagerService } from '@univerjs/sheets';
4
4
  import { IDefinedNamesService } from '@univerjs/engine-formula';
5
5
  import { ISelectionRenderService } from '../../services/selection/selection-render.service';
6
6
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
7
7
 
8
- export declare class SelectionRenderController extends Disposable implements IRenderController {
8
+ export declare class SelectionRenderController extends Disposable implements IRenderModule {
9
9
  private readonly _context;
10
10
  private readonly _sheetSkeletonManagerService;
11
11
  private readonly _commandService;
@@ -0,0 +1,41 @@
1
+ import { Workbook, ICommandService, RxDisposable } from '@univerjs/core';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
+ import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
4
+ import { SheetsRenderService } from '../../services/sheets-render.service';
5
+
6
+ export declare class SheetRenderController extends RxDisposable implements IRenderModule {
7
+ private readonly _context;
8
+ private readonly _sheetSkeletonManagerService;
9
+ private readonly _sheetRenderService;
10
+ private readonly _commandService;
11
+ constructor(_context: IRenderContext<Workbook>, _sheetSkeletonManagerService: SheetSkeletonManagerService, _sheetRenderService: SheetsRenderService, _commandService: ICommandService);
12
+ private _addNewRender;
13
+ private _addComponent;
14
+ private _initViewports;
15
+ /**
16
+ *
17
+ * initViewport & wheel event
18
+ * +-----------------+--------------------+-------------------+
19
+ * | VIEW_LEFT_TOP | VIEW_COLUMN_LEFT | VIEW_COLUMN_RIGHT |
20
+ * +-----------------+--------------------+-------------------+
21
+ * | VIEW_ROW_TOP | VIEW_MAIN_LEFT_TOP | VIEW_MAIN_TOP |
22
+ * +-----------------+--------------------+-------------------+
23
+ * | VIEW_ROW_BOTTOM | VIEW_MAIN_LEFT | VIEW_MAIN |
24
+ * +-----------------+--------------------+-------------------+
25
+ */
26
+ private _addViewport;
27
+ private _initRerenderScheduler;
28
+ private _initCommandListener;
29
+ private _markUnitDirty;
30
+ /**
31
+ * cellValue data structure:
32
+ * {[row]: { [col]: value}}
33
+ * @param cellValue
34
+ * @returns
35
+ */
36
+ private _cellValueToRange;
37
+ private _rangeToBounds;
38
+ private _markViewportDirty;
39
+ private _spreadsheetViewports;
40
+ private _initMouseWheel;
41
+ }
@@ -1,8 +1,8 @@
1
1
  import { Workbook, Disposable, ICommandService } from '@univerjs/core';
2
- import { IRenderContext, IRenderController } from '@univerjs/engine-render';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
3
3
  import { SheetSkeletonManagerService } from '../../services/sheet-skeleton-manager.service';
4
4
 
5
- export declare class SheetsZoomRenderController extends Disposable implements IRenderController {
5
+ export declare class SheetsZoomRenderController extends Disposable implements IRenderModule {
6
6
  private readonly _context;
7
7
  private readonly _sheetSkeletonManagerService;
8
8
  private readonly _commandService;
@@ -23,7 +23,7 @@ export { SetCellEditVisibleArrowOperation, SetCellEditVisibleOperation } from '.
23
23
  export { SetScrollOperation } from './commands/operations/scroll.operation';
24
24
  export { SheetsScrollRenderController } from './controllers/render-controllers/scroll.render-controller';
25
25
  export { deriveStateFromActiveSheet$, getCurrentRangeDisable$, getCommentDisable$ } from './controllers/menu/menu-util';
26
- export { SheetRenderController } from './controllers/sheet-render.controller';
26
+ export { SheetsRenderService } from './services/sheets-render.service';
27
27
  export { SetZoomRatioOperation } from './commands/operations/set-zoom-ratio.operation';
28
28
  export { ResetScrollCommand, ScrollCommand, ScrollToCellCommand, SetScrollRelativeCommand, type IScrollCommandParams, type IScrollToCellCommandParams, type ISetScrollRelativeCommandParams, } from './commands/commands/set-scroll.command';
29
29
  export { VIEWPORT_KEY } from './common/keys';
@@ -55,7 +55,7 @@ export { SelectionShape } from './services/selection/selection-shape';
55
55
  export type { ISheetSkeletonManagerParam } from './services/sheet-skeleton-manager.service';
56
56
  export { SheetSkeletonManagerService } from './services/sheet-skeleton-manager.service';
57
57
  export { UniverSheetsUIPlugin } from './sheets-ui-plugin';
58
- export { SheetCanvasView } from './views/sheet-canvas-view';
58
+ export { SheetRenderController } from './controllers/render-controllers/sheet-render.controller';
59
59
  export { HoverManagerService } from './services/hover-manager.service';
60
60
  export { DragManagerService } from './services/drag-manager.service';
61
61
  export { CellAlertManagerService, CellAlertType, type ICellAlert } from './services/cell-alert-manager.service';
@@ -82,3 +82,5 @@ export { HeaderFreezeRenderController } from './controllers/render-controllers/f
82
82
  export { FormulaEditorController } from './controllers/editor/formula-editor.controller';
83
83
  export { StatusBarController } from './controllers/status-bar.controller';
84
84
  export { SheetPermissionInterceptorBaseController } from './controllers/permission/sheet-permission-interceptor-base.controller';
85
+ export type { IRangeProtectionRenderCellData } from './views/permission/extensions/range-protection.render';
86
+ export { SheetPrintInterceptorService } from './services/print-interceptor.service';
@@ -3,7 +3,6 @@ import { IRenderManagerService, BaseObject, Viewport } from '@univerjs/engine-re
3
3
  import { IPopup, ICanvasPopupService } from '@univerjs/ui';
4
4
  import { IDisposable } from '@wendellhu/redi';
5
5
  import { RefRangeService } from '@univerjs/sheets';
6
- import { SheetSkeletonManagerService } from './sheet-skeleton-manager.service';
7
6
 
8
7
  export interface ICanvasPopup extends Pick<IPopup, 'direction' | 'excludeOutside' | 'closeOnSelfTarget' | 'componentKey' | 'offset' | 'onClickOutside'> {
9
8
  mask?: boolean;
@@ -13,10 +12,9 @@ export declare class SheetCanvasPopManagerService extends Disposable {
13
12
  private readonly _globalPopupManagerService;
14
13
  private readonly _renderManagerService;
15
14
  private readonly _univerInstanceService;
16
- private readonly _sheetSkeletonManagerService;
17
15
  private readonly _refRangeService;
18
16
  private readonly _commandService;
19
- constructor(_globalPopupManagerService: ICanvasPopupService, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _refRangeService: RefRangeService, _commandService: ICommandService);
17
+ constructor(_globalPopupManagerService: ICanvasPopupService, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _refRangeService: RefRangeService, _commandService: ICommandService);
20
18
  private _createObjectPositionObserver;
21
19
  /**
22
20
  * attach a popup to canvas object
@@ -2,8 +2,8 @@ import { IRange, Nullable, Disposable, ErrorService, ICommandService, ILogServic
2
2
  import { SelectionManagerService } from '@univerjs/sheets';
3
3
  import { IClipboardInterfaceService, INotificationService, IPlatformService } from '@univerjs/ui';
4
4
  import { IDisposable, Injector } from '@wendellhu/redi';
5
+ import { IRenderManagerService } from '@univerjs/engine-render';
5
6
  import { IMarkSelectionService } from '../mark-selection/mark-selection.service';
6
- import { SheetSkeletonManagerService } from '../sheet-skeleton-manager.service';
7
7
  import { IDiscreteRange } from '../../controllers/utils/range-tools';
8
8
  import { CopyContentCache } from './copy-content-cache';
9
9
  import { ICellDataWithSpanInfo, ISheetClipboardHook, COPY_TYPE } from './type';
@@ -42,9 +42,9 @@ export declare class SheetClipboardService extends Disposable implements ISheetC
42
42
  private readonly _undoRedoService;
43
43
  private readonly _commandService;
44
44
  private readonly _markSelectionService;
45
- private readonly _sheetSkeletonManagerService;
46
45
  private readonly _notificationService;
47
46
  private readonly _platformService;
47
+ private readonly _renderManagerService;
48
48
  private readonly _localeService;
49
49
  private readonly _errorService;
50
50
  private readonly _injector;
@@ -55,7 +55,7 @@ export declare class SheetClipboardService extends Disposable implements ISheetC
55
55
  private _usmToHtml;
56
56
  private _copyContentCache;
57
57
  private _copyMarkId;
58
- constructor(_logService: ILogService, _univerInstanceService: IUniverInstanceService, _selectionManagerService: SelectionManagerService, _clipboardInterfaceService: IClipboardInterfaceService, _undoRedoService: IUndoRedoService, _commandService: ICommandService, _markSelectionService: IMarkSelectionService, _sheetSkeletonManagerService: SheetSkeletonManagerService, _notificationService: INotificationService, _platformService: IPlatformService, _localeService: LocaleService, _errorService: ErrorService, _injector: Injector);
58
+ constructor(_logService: ILogService, _univerInstanceService: IUniverInstanceService, _selectionManagerService: SelectionManagerService, _clipboardInterfaceService: IClipboardInterfaceService, _undoRedoService: IUndoRedoService, _commandService: ICommandService, _markSelectionService: IMarkSelectionService, _notificationService: INotificationService, _platformService: IPlatformService, _renderManagerService: IRenderManagerService, _localeService: LocaleService, _errorService: ErrorService, _injector: Injector);
59
59
  copyContentCache(): CopyContentCache;
60
60
  generateCopyContent(workbookId: string, worksheetId: string, range: IRange): Nullable<ICopyContent>;
61
61
  copy(copyType?: COPY_TYPE): Promise<boolean>;