@univerjs-pro/collaboration-client-ui 1.0.0-beta.0 → 1.0.0-beta.2

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 (104) hide show
  1. package/lib/cjs/facade.js +1 -1
  2. package/lib/cjs/index.js +1 -1
  3. package/lib/cjs/locale/ar-SA.js +1 -1
  4. package/lib/cjs/locale/ca-ES.js +1 -1
  5. package/lib/cjs/locale/de-DE.js +1 -1
  6. package/lib/cjs/locale/en-US.js +1 -1
  7. package/lib/cjs/locale/es-ES.js +1 -1
  8. package/lib/cjs/locale/fa-IR.js +1 -1
  9. package/lib/cjs/locale/fr-FR.js +1 -1
  10. package/lib/cjs/locale/id-ID.js +1 -1
  11. package/lib/cjs/locale/it-IT.js +1 -1
  12. package/lib/cjs/locale/ja-JP.js +1 -1
  13. package/lib/cjs/locale/ko-KR.js +1 -1
  14. package/lib/cjs/locale/pl-PL.js +1 -1
  15. package/lib/cjs/locale/pt-BR.js +1 -1
  16. package/lib/cjs/locale/ru-RU.js +1 -1
  17. package/lib/cjs/locale/sk-SK.js +1 -1
  18. package/lib/cjs/locale/vi-VN.js +1 -1
  19. package/lib/cjs/locale/zh-CN.js +1 -1
  20. package/lib/cjs/locale/zh-HK.js +1 -1
  21. package/lib/cjs/locale/zh-TW.js +1 -1
  22. package/lib/es/facade.js +1 -1
  23. package/lib/es/index.js +1 -1
  24. package/lib/es/locale/ar-SA.js +1 -1
  25. package/lib/es/locale/ca-ES.js +1 -1
  26. package/lib/es/locale/de-DE.js +1 -1
  27. package/lib/es/locale/en-US.js +1 -1
  28. package/lib/es/locale/es-ES.js +1 -1
  29. package/lib/es/locale/fa-IR.js +1 -1
  30. package/lib/es/locale/fr-FR.js +1 -1
  31. package/lib/es/locale/id-ID.js +1 -1
  32. package/lib/es/locale/it-IT.js +1 -1
  33. package/lib/es/locale/ja-JP.js +1 -1
  34. package/lib/es/locale/ko-KR.js +1 -1
  35. package/lib/es/locale/pl-PL.js +1 -1
  36. package/lib/es/locale/pt-BR.js +1 -1
  37. package/lib/es/locale/ru-RU.js +1 -1
  38. package/lib/es/locale/sk-SK.js +1 -1
  39. package/lib/es/locale/vi-VN.js +1 -1
  40. package/lib/es/locale/zh-CN.js +1 -1
  41. package/lib/es/locale/zh-HK.js +1 -1
  42. package/lib/es/locale/zh-TW.js +1 -1
  43. package/lib/facade.js +1 -1
  44. package/lib/index.css +10 -22
  45. package/lib/index.js +1 -1
  46. package/lib/locale/ar-SA.js +1 -1
  47. package/lib/locale/ca-ES.js +1 -1
  48. package/lib/locale/de-DE.js +1 -1
  49. package/lib/locale/en-US.js +1 -1
  50. package/lib/locale/es-ES.js +1 -1
  51. package/lib/locale/fa-IR.js +1 -1
  52. package/lib/locale/fr-FR.js +1 -1
  53. package/lib/locale/id-ID.js +1 -1
  54. package/lib/locale/it-IT.js +1 -1
  55. package/lib/locale/ja-JP.js +1 -1
  56. package/lib/locale/ko-KR.js +1 -1
  57. package/lib/locale/pl-PL.js +1 -1
  58. package/lib/locale/pt-BR.js +1 -1
  59. package/lib/locale/ru-RU.js +1 -1
  60. package/lib/locale/sk-SK.js +1 -1
  61. package/lib/locale/vi-VN.js +1 -1
  62. package/lib/locale/zh-CN.js +1 -1
  63. package/lib/locale/zh-HK.js +1 -1
  64. package/lib/locale/zh-TW.js +1 -1
  65. package/lib/types/commands/operations/update-remote-unit-presence.operation.d.ts +25 -0
  66. package/lib/types/controllers/collab-cursor/collab-cursor.controller.d.ts +2 -4
  67. package/lib/types/controllers/collab-cursor/unit-presence-collab-cursor-entity.d.ts +38 -0
  68. package/lib/types/controllers/collab-cursor/unit-presence-collab-cursor.controller.d.ts +21 -0
  69. package/lib/types/controllers/collab-status/collab-status.controller.d.ts +8 -13
  70. package/lib/types/controllers/data-loader/data-loader.controller.d.ts +1 -2
  71. package/lib/types/controllers/snapshot-loading/snapshot-loading.controller.d.ts +3 -15
  72. package/lib/types/locale/en-US.d.ts +0 -1
  73. package/lib/types/models/cursor.d.ts +0 -25
  74. package/lib/types/plugin.d.ts +3 -2
  75. package/lib/types/services/text-selection/doc-transform-selections.service.d.ts +3 -3
  76. package/lib/types/views/components/SnapshotLoadingTimeout.d.ts +0 -4
  77. package/lib/types/views/shapes/doc-collab-cursor.d.ts +6 -1
  78. package/lib/umd/facade.js +1 -1
  79. package/lib/umd/index.js +1 -1
  80. package/lib/umd/locale/ar-SA.js +1 -1
  81. package/lib/umd/locale/ca-ES.js +1 -1
  82. package/lib/umd/locale/de-DE.js +1 -1
  83. package/lib/umd/locale/en-US.js +1 -1
  84. package/lib/umd/locale/es-ES.js +1 -1
  85. package/lib/umd/locale/fa-IR.js +1 -1
  86. package/lib/umd/locale/fr-FR.js +1 -1
  87. package/lib/umd/locale/id-ID.js +1 -1
  88. package/lib/umd/locale/it-IT.js +1 -1
  89. package/lib/umd/locale/ja-JP.js +1 -1
  90. package/lib/umd/locale/ko-KR.js +1 -1
  91. package/lib/umd/locale/pl-PL.js +1 -1
  92. package/lib/umd/locale/pt-BR.js +1 -1
  93. package/lib/umd/locale/ru-RU.js +1 -1
  94. package/lib/umd/locale/sk-SK.js +1 -1
  95. package/lib/umd/locale/vi-VN.js +1 -1
  96. package/lib/umd/locale/zh-CN.js +1 -1
  97. package/lib/umd/locale/zh-HK.js +1 -1
  98. package/lib/umd/locale/zh-TW.js +1 -1
  99. package/package.json +19 -23
  100. package/lib/types/controllers/collab-cursor/board-collab-cursor-entity.d.ts +0 -31
  101. package/lib/types/controllers/collab-cursor/board-collab-cursor-render.controller.d.ts +0 -21
  102. package/lib/types/controllers/collab-cursor/slide-collab-cursor-entity.d.ts +0 -34
  103. package/lib/types/controllers/collab-cursor/slide-collab-cursor-render.controller.d.ts +0 -21
  104. package/lib/types/views/shapes/slide-collab-cursor.shape.d.ts +0 -15
@@ -1 +1 @@
1
- function _0x357b(){const _0x4fc6c6=['6eoHMlA','目前無法執行公式計算,請稍後重試。','正在載入工作表','您的操作與伺服器權限存在衝突。請將您的本機編輯儲存至其他地方,重新整理頁面後將會被捨棄。','公式計算佇列已滿,正在等待可用資源...','已離線,編輯將儲存在本機','編輯衝突','已同步','2946520ymrPVN','同步中...','1050944hUWvfy','9040068XuLRVj','您的登入已過期,點擊「確定」重新登入,點擊「取消」儲存您的本機編輯。','4813067STndTM','伺服器未回應協作請求,您的編輯將儲存在本機。','您有未儲存至伺服器的離線編輯,請檢查網路後重試。','4573128zwrnUz','協作衝突','點擊重新連線','3480895CQJcwj','協作房間已滿,您的編輯將暫存於本機。','重新整理頁面','1jXRpIq','認證錯誤','資料載入停留在\x20{0}/{1},請重新整理頁面後再試。','557106IPZLgK','本機檔案'];_0x357b=function(){return _0x4fc6c6;};return _0x357b();}function _0x3541(_0x3ceb89,_0x406687){_0x3ceb89=_0x3ceb89-0x12a;const _0x357be4=_0x357b();let _0x354178=_0x357be4[_0x3ceb89];return _0x354178;}const _0x239df0=_0x3541;(function(_0x40e4b9,_0x764ea6){const _0x7c24fa=_0x3541,_0x1f2b62=_0x40e4b9();while(!![]){try{const _0x3011a1=-parseInt(_0x7c24fa(0x12d))/0x1*(parseInt(_0x7c24fa(0x13c))/0x2)+parseInt(_0x7c24fa(0x130))/0x3+parseInt(_0x7c24fa(0x13a))/0x4+-parseInt(_0x7c24fa(0x12a))/0x5+parseInt(_0x7c24fa(0x132))/0x6*(-parseInt(_0x7c24fa(0x13f))/0x7)+parseInt(_0x7c24fa(0x142))/0x8+parseInt(_0x7c24fa(0x13d))/0x9;if(_0x3011a1===_0x764ea6)break;else _0x1f2b62['push'](_0x1f2b62['shift']());}catch(_0x286e13){_0x1f2b62['push'](_0x1f2b62['shift']());}}}(_0x357b,0x8fd89));const e={'collaboration-client-ui':{'collabClient':{'tooltip':{'reconnect':_0x239df0(0x144)}},'collabStatus':{'fetchMiss':'正在擷取伺服器資料...','conflict':_0x239df0(0x138),'notCollab':_0x239df0(0x131),'synced':_0x239df0(0x139),'syncing':_0x239df0(0x13b),'offline':_0x239df0(0x137)},'snapshotLoading':{'loadingSheet':_0x239df0(0x134),'timeout':_0x239df0(0x12f),'refresh':_0x239df0(0x12c)},'session':{'connection-failed':'連線失敗,請檢查您的網路。','will-retry':'連線失敗,將在稍後重試連線。','room-full':_0x239df0(0x12b),'collaboration-timeout':_0x239df0(0x140)},'conflict':{'title':_0x239df0(0x143),'content':'您的本機文件與伺服器文件存在衝突。請將您的本機編輯儲存至其他地方,因為重新整理頁面後將會遺失。'},'permission':{'title':_0x239df0(0x12e),'content':_0x239df0(0x135)},'collaboration':{'offline-data-not-saved':_0x239df0(0x141),'single-unit':{'warning':'您在另一個分頁開啟了同一個檔案。為避免資料遺失,此分頁將無法進行編輯。'},'closeRoom':'由於協作房間已關閉,編輯權限已被收回。'},'auth':{'needGotoLoginAlert':_0x239df0(0x13e)},'formula':{'calculation':{'started':'公式計算已開始。','waiting':_0x239df0(0x136),'unable':_0x239df0(0x133)}}}};export{e as default};
1
+ function _0x31f4(){const _0x18f8ab=['258sisbFK','193556BqzexX','您的登入已過期,點擊「確定」重新登入,點擊「取消」儲存您的本機編輯。','正在擷取伺服器資料...','協作衝突','目前無法執行公式計算,請稍後重試。','連線失敗,將在稍後重試連線。','同步中...','2163576KvqfFi','您有未儲存至伺服器的離線編輯,請檢查網路後重試。','公式計算佇列已滿,正在等待可用資源...','160748LkXaBx','協作房間已滿,您的編輯將暫存於本機。','860dKHgdS','已離線,編輯將儲存在本機','187916FNUvky','公式計算已開始。','12634XFydvc','已同步','2433186igLdzF','伺服器未回應協作請求,您的編輯將儲存在本機。','31bvjwga','本機檔案','您的操作與伺服器權限存在衝突。請將您的本機編輯儲存至其他地方,重新整理頁面後將會被捨棄。','重新整理頁面','3254480VUHUpK','您的本機文件與伺服器文件存在衝突。請將您的本機編輯儲存至其他地方,因為重新整理頁面後將會遺失。','54mktNvo','連線失敗,請檢查您的網路。'];_0x31f4=function(){return _0x18f8ab;};return _0x31f4();}const _0x15fb2c=_0x1fa7;(function(_0x239b78,_0x2063de){const _0x49bfe8=_0x1fa7,_0x24b04d=_0x239b78();while(!![]){try{const _0x5a89df=parseInt(_0x49bfe8(0x15c))/0x1*(parseInt(_0x49bfe8(0x158))/0x2)+parseInt(_0x49bfe8(0x145))/0x3*(-parseInt(_0x49bfe8(0x156))/0x4)+parseInt(_0x49bfe8(0x143))/0x5+-parseInt(_0x49bfe8(0x147))/0x6*(parseInt(_0x49bfe8(0x152))/0x7)+-parseInt(_0x49bfe8(0x14f))/0x8+parseInt(_0x49bfe8(0x15a))/0x9+parseInt(_0x49bfe8(0x154))/0xa*(parseInt(_0x49bfe8(0x148))/0xb);if(_0x5a89df===_0x2063de)break;else _0x24b04d['push'](_0x24b04d['shift']());}catch(_0x43867f){_0x24b04d['push'](_0x24b04d['shift']());}}}(_0x31f4,0x809dc));const e={'collaboration-client-ui':{'collabClient':{'tooltip':{'reconnect':'點擊重新連線'}},'collabStatus':{'fetchMiss':_0x15fb2c(0x14a),'conflict':'編輯衝突','notCollab':_0x15fb2c(0x15d),'synced':_0x15fb2c(0x159),'syncing':_0x15fb2c(0x14e),'offline':_0x15fb2c(0x155)},'snapshotLoading':{'timeout':'資料載入停留在\x20{0}/{1},請重新整理頁面後再試。','refresh':_0x15fb2c(0x142)},'session':{'connection-failed':_0x15fb2c(0x146),'will-retry':_0x15fb2c(0x14d),'room-full':_0x15fb2c(0x153),'collaboration-timeout':_0x15fb2c(0x15b)},'conflict':{'title':_0x15fb2c(0x14b),'content':_0x15fb2c(0x144)},'permission':{'title':'認證錯誤','content':_0x15fb2c(0x15e)},'collaboration':{'offline-data-not-saved':_0x15fb2c(0x150),'single-unit':{'warning':'您在另一個分頁開啟了同一個檔案。為避免資料遺失,此分頁將無法進行編輯。'},'closeRoom':'由於協作房間已關閉,編輯權限已被收回。'},'auth':{'needGotoLoginAlert':_0x15fb2c(0x149)},'formula':{'calculation':{'started':_0x15fb2c(0x157),'waiting':_0x15fb2c(0x151),'unable':_0x15fb2c(0x14c)}}}};function _0x1fa7(_0x4e09d9,_0x45c273){_0x4e09d9=_0x4e09d9-0x142;const _0x31f468=_0x31f4();let _0x1fa705=_0x31f468[_0x4e09d9];return _0x1fa705;}export{e as default};
@@ -0,0 +1,25 @@
1
+ import type { IOperation, UniverInstanceType } from '@univerjs/core';
2
+ import type { IRemoteUnitPresenceState } from '@univerjs/ui';
3
+ export declare enum UnitPresenceUpdateType {
4
+ SET = "set",
5
+ REMOVE = "remove",
6
+ CLEAR = "clear"
7
+ }
8
+ export interface ISetRemoteUnitPresenceUpdate {
9
+ type: UnitPresenceUpdateType.SET;
10
+ state: IRemoteUnitPresenceState;
11
+ }
12
+ export interface IRemoveRemoteUnitPresenceUpdate {
13
+ type: UnitPresenceUpdateType.REMOVE;
14
+ unitId: string;
15
+ memberId: string;
16
+ }
17
+ export interface IClearRemoteUnitPresenceUpdate {
18
+ type: UnitPresenceUpdateType.CLEAR;
19
+ unitId: string;
20
+ }
21
+ export interface IUpdateRemoteUnitPresenceOperationParams {
22
+ unitType: UniverInstanceType;
23
+ update: ISetRemoteUnitPresenceUpdate | IRemoveRemoteUnitPresenceUpdate | IClearRemoteUnitPresenceUpdate;
24
+ }
25
+ export declare const UpdateRemoteUnitPresenceOperation: IOperation<IUpdateRemoteUnitPresenceOperationParams>;
@@ -1,5 +1,5 @@
1
1
  import type { Observable } from 'rxjs';
2
- import type { IDocCollabCursor, IElementCollabCursor, ISheetCollabCursor } from '../../models/cursor';
2
+ import type { IDocCollabCursor, ISheetCollabCursor } from '../../models/cursor';
3
3
  import { CollaborationSessionService } from '@univerjs-pro/collaboration-client';
4
4
  import { Injector, IUniverInstanceService, RxDisposable } from '@univerjs/core';
5
5
  /**
@@ -15,10 +15,8 @@ export declare class CollabCursorController extends RxDisposable {
15
15
  private readonly _entityInit$;
16
16
  constructor(_univerInstanceService: IUniverInstanceService, _injector: Injector, _collabSessionService: CollaborationSessionService);
17
17
  dispose(): void;
18
- getCollabCursors$(unitID: string): Observable<Map<string, ISheetCollabCursor> | Map<string, IDocCollabCursor> | Map<string, IElementCollabCursor> | Map<string, IElementCollabCursor>>;
18
+ getCollabCursors$(unitID: string): Observable<Map<string, ISheetCollabCursor> | Map<string, IDocCollabCursor>>;
19
19
  private _init;
20
20
  private _startSheetCollabCursor;
21
21
  private _startDocCollabCursor;
22
- private _startSlideCollabCursor;
23
- private _startBoardCollabCursor;
24
22
  }
@@ -0,0 +1,38 @@
1
+ import type { CollaborationSession } from '@univerjs-pro/collaboration-client';
2
+ import type { UniverInstanceType } from '@univerjs/core';
3
+ import type { IUnitPresenceUIAdapter } from '@univerjs/ui';
4
+ import { MemberService } from '@univerjs-pro/collaboration-client';
5
+ import { ICommandService, RxDisposable } from '@univerjs/core';
6
+ import { ColorAssignService } from '../../services/color-assign/color-assign.service';
7
+ interface IUnitPresencePayload {
8
+ kind: string;
9
+ unitType: UniverInstanceType;
10
+ unitId: string;
11
+ subUnitId: string;
12
+ selectedIds: string[];
13
+ focusedId: string | null;
14
+ pointer: {
15
+ x: number;
16
+ y: number;
17
+ } | null;
18
+ }
19
+ export declare function parseUnitPresencePayload(selection: string, fallbackUnitType?: UniverInstanceType): IUnitPresencePayload | null;
20
+ export declare class UnitPresenceCollabCursorEntity extends RxDisposable {
21
+ readonly unitId: string;
22
+ private readonly _session;
23
+ private readonly _adapter;
24
+ private readonly _colorAssignService;
25
+ private readonly _memberService;
26
+ private readonly _commandService;
27
+ private _online;
28
+ private _initialized;
29
+ constructor(unitId: string, _session: CollaborationSession, _adapter: IUnitPresenceUIAdapter, _colorAssignService: ColorAssignService, _memberService: MemberService, _commandService: ICommandService);
30
+ get unitType(): UniverInstanceType;
31
+ dispose(): void;
32
+ init(): void;
33
+ private _sendLocalPresence;
34
+ private _handleCursorUpdate;
35
+ private _removeRemotePresence;
36
+ private _clearRemotePresences;
37
+ }
38
+ export {};
@@ -0,0 +1,21 @@
1
+ import { CollaborationSessionService } from '@univerjs-pro/collaboration-client';
2
+ import { Injector, IUniverInstanceService, RxDisposable } from '@univerjs/core';
3
+ import { IUnitPresenceUIAdapterRegistry } from '@univerjs/ui';
4
+ export declare class UnitPresenceCollabCursorController extends RxDisposable {
5
+ private readonly _univerInstanceService;
6
+ private readonly _injector;
7
+ private readonly _collabSessionService;
8
+ private readonly _adapterRegistry;
9
+ private _isDisposed;
10
+ private readonly _entities;
11
+ private readonly _pendingEntities;
12
+ private readonly _adapterDisposables;
13
+ constructor(_univerInstanceService: IUniverInstanceService, _injector: Injector, _collabSessionService: CollaborationSessionService, _adapterRegistry: IUnitPresenceUIAdapterRegistry);
14
+ dispose(): void;
15
+ private _init;
16
+ private _syncAdapters;
17
+ private _bindAdapter;
18
+ private _startEntity;
19
+ private _disposeEntity;
20
+ private _disposeEntitiesForType;
21
+ }
@@ -1,6 +1,6 @@
1
1
  import { CollaborationController, CollaborationStatus } from '@univerjs-pro/collaboration-client';
2
2
  import { Disposable, Injector, IUniverInstanceService } from '@univerjs/core';
3
- import { IUIPartsService } from '@univerjs/ui';
3
+ import { IUIPartsService, IUnitPresenceUIAdapterRegistry } from '@univerjs/ui';
4
4
  import { BehaviorSubject } from 'rxjs';
5
5
  /**
6
6
  * This controller is responsible for monitoring the collaboration status of the currently focused unit.
@@ -10,20 +10,15 @@ export declare class DesktopCollaborationStatusDisplayController extends Disposa
10
10
  private readonly _injector;
11
11
  private readonly _collaborationController;
12
12
  private readonly _uiPartsService;
13
+ private readonly _presenceAdapterRegistry;
13
14
  protected readonly _status$: BehaviorSubject<CollaborationStatus>;
14
- constructor(_univerInstanceService: IUniverInstanceService, _injector: Injector, _collaborationController: CollaborationController, _uiPartsService: IUIPartsService);
15
- private _initStatusListener;
16
- protected _initStatusComponent(): void;
17
- }
18
- export declare class BoardCollaborationStatusDisplayController extends Disposable {
19
- private readonly _univerInstanceService;
20
- private readonly _injector;
21
- private readonly _collaborationController;
22
- private readonly _uiPartsService;
23
- protected readonly _status$: BehaviorSubject<CollaborationStatus>;
24
- constructor(_univerInstanceService: IUniverInstanceService, _injector: Injector, _collaborationController: CollaborationController, _uiPartsService: IUIPartsService);
15
+ private readonly _presenceStatusRegistrations;
16
+ constructor(_univerInstanceService: IUniverInstanceService, _injector: Injector, _collaborationController: CollaborationController, _uiPartsService: IUIPartsService, _presenceAdapterRegistry: IUnitPresenceUIAdapterRegistry);
17
+ dispose(): void;
25
18
  private _initStatusListener;
26
19
  protected _initStatusComponent(): void;
20
+ private _initPresenceStatusComponents;
21
+ private _syncPresenceStatusComponents;
22
+ private _registerPresenceStatusComponent;
27
23
  }
28
24
  export declare function getCollaborationStatusUnitId(univerInstanceService: IUniverInstanceService): string | null;
29
- export declare function getBoardCollaborationStatusUnitId(univerInstanceService: IUniverInstanceService): string | null;
@@ -1,6 +1,5 @@
1
1
  import { DataLoaderService } from '@univerjs-pro/collaboration-client';
2
2
  import { ICommandService, ILogService, RxDisposable } from '@univerjs/core';
3
- import { IRemoteInstanceService } from '@univerjs/rpc';
4
3
  import { IURLService } from '../../services/url/url.service';
5
4
  /**
6
5
  * This controller loads data when URL changes.
@@ -10,7 +9,7 @@ export declare class CollaborationDataLoaderController extends RxDisposable {
10
9
  private readonly _logService;
11
10
  private readonly _commandService;
12
11
  private readonly _dataLoaderService;
13
- constructor(_urlService: IURLService, _logService: ILogService, _commandService: ICommandService, _dataLoaderService: DataLoaderService, remoteInstanceService?: IRemoteInstanceService);
12
+ constructor(_urlService: IURLService, _logService: ILogService, _commandService: ICommandService, _dataLoaderService: DataLoaderService);
14
13
  private _init;
15
14
  private _setupSubUnitSync;
16
15
  private _updateURLWithCurrentState;
@@ -1,36 +1,24 @@
1
1
  import type { ISnapshotLoadingTimeoutState } from '../../views/components/SnapshotLoadingTimeout';
2
2
  import { SnapshotLoadingService } from '@univerjs-pro/collaboration';
3
- import { Disposable, Injector, LocaleService, PluginService } from '@univerjs/core';
4
- import { IMessageService, IShortcutService, IUIPartsService } from '@univerjs/ui';
3
+ import { Disposable, Injector, LocaleService } from '@univerjs/core';
4
+ import { IMessageService, IUIPartsService } from '@univerjs/ui';
5
5
  import { IURLService } from '../../services/url/url.service';
6
6
  export declare class SnapshotLoadingController extends Disposable {
7
7
  private readonly _snapshotLoadingService;
8
8
  private readonly _messageService;
9
9
  private readonly _localeService;
10
10
  private readonly _injector;
11
- private readonly _pluginService;
12
- private readonly _shortcutService;
13
11
  private readonly _urlService;
14
12
  private readonly _timeoutState$;
15
- private readonly _interactionBlocked$;
16
13
  private readonly _messageIds;
17
14
  private readonly _blockProgressWatches;
18
- private readonly _handoffUnitIds;
19
15
  private _latestStates;
20
- private _previewUnitId?;
21
- private _shortcutBlock?;
22
- private _sheetLoadingRenderService?;
23
16
  readonly timeoutState$: import("rxjs").Observable<ISnapshotLoadingTimeoutState | null>;
24
- constructor(_snapshotLoadingService: SnapshotLoadingService, _messageService: IMessageService, _localeService: LocaleService, _injector: Injector, _pluginService: PluginService, uiPartsService: IUIPartsService, _shortcutService: IShortcutService, _urlService: IURLService);
17
+ constructor(_snapshotLoadingService: SnapshotLoadingService, _messageService: IMessageService, _localeService: LocaleService, _injector: Injector, uiPartsService: IUIPartsService, _urlService: IURLService);
25
18
  dispose(): void;
26
19
  private _updateMessage;
27
20
  private _watchBlockProgress;
28
21
  private _clearBlockProgressWatch;
29
22
  private _clearTimeoutState;
30
- private _updateSheetPreview;
31
- private _handoffPreview;
32
- private _hidePreview;
33
- private _setInteractionBlocked;
34
23
  private _isVisibleUnit;
35
- private _getSheetLoadingRenderService;
36
24
  }
@@ -14,7 +14,6 @@ declare const locale: {
14
14
  offline: string;
15
15
  };
16
16
  snapshotLoading: {
17
- loadingSheet: string;
18
17
  timeout: string;
19
18
  refresh: string;
20
19
  };
@@ -34,28 +34,3 @@ export interface IDocCollabCursor {
34
34
  /** The deserialized ranges of collab cursor. */
35
35
  ranges: ITextRangeWithStyle[];
36
36
  }
37
- export interface IElementCollabSelectionPayload<TKind extends string = string> {
38
- kind: TKind;
39
- unitId: string;
40
- subUnitId: string;
41
- selectedIds: string[];
42
- focusedId: string | null;
43
- }
44
- export interface IElementCollabCursor {
45
- /** Stroke color of this collab cursor */
46
- color: string;
47
- /** Displayed user name of this cursor */
48
- name: string;
49
- /** Host unit ID */
50
- unitId: string;
51
- /** Host page ID */
52
- subUnitId: string;
53
- /** Remote selected element IDs */
54
- selectedIds: string[];
55
- /** Remote focused element ID */
56
- focusedId: string | null;
57
- /** Serialized selection payload */
58
- selection: string;
59
- }
60
- export type ISlideCollabSelectionPayload = IElementCollabSelectionPayload<'slide-element-selection'>;
61
- export type IBoardCollabSelectionPayload = IElementCollabSelectionPayload<'board-element-selection'>;
@@ -1,15 +1,16 @@
1
1
  import type { IUniverCollaborationClientUIConfig } from './config/config';
2
- import { IConfigService, Injector, Plugin } from '@univerjs/core';
2
+ import { ICommandService, IConfigService, Injector, Plugin } from '@univerjs/core';
3
3
  import { IRenderManagerService } from '@univerjs/engine-render';
4
4
  export declare class UniverCollaborationClientUIPlugin extends Plugin {
5
5
  private readonly _config;
6
6
  private readonly _renderManagerService;
7
7
  protected _injector: Injector;
8
8
  private readonly _configService;
9
+ private readonly _commandService;
9
10
  static pluginName: string;
10
11
  static packageName: string;
11
12
  static version: string;
12
- constructor(_config: Partial<IUniverCollaborationClientUIConfig> | undefined, _renderManagerService: IRenderManagerService, _injector: Injector, _configService: IConfigService);
13
+ constructor(_config: Partial<IUniverCollaborationClientUIConfig> | undefined, _renderManagerService: IRenderManagerService, _injector: Injector, _configService: IConfigService, _commandService: ICommandService);
13
14
  onStarting(): void;
14
15
  onRendered(): void;
15
16
  private _registerDependencies;
@@ -1,9 +1,9 @@
1
1
  import type { IChangeset } from '@univerjs-pro/collaboration';
2
2
  import { ITransformService } from '@univerjs-pro/collaboration';
3
- import { Injector } from '@univerjs/core';
3
+ import { DocSelectionManagerService } from '@univerjs/docs';
4
4
  export declare class DocTransformSelectionsService {
5
- private readonly _injector;
5
+ private readonly _docSelectionManagerService;
6
6
  private readonly _transformService;
7
- constructor(_injector: Injector, _transformService: ITransformService);
7
+ constructor(_docSelectionManagerService: DocSelectionManagerService, _transformService: ITransformService);
8
8
  transformSelections(changeset: IChangeset): void;
9
9
  }
@@ -7,9 +7,5 @@ export interface ISnapshotLoadingTimeoutState {
7
7
  interface IProps {
8
8
  state$: Observable<ISnapshotLoadingTimeoutState | null>;
9
9
  }
10
- interface ISnapshotLoadingGlobalProps extends IProps {
11
- interactionBlocked$: Observable<boolean>;
12
- }
13
- export declare function SnapshotLoadingGlobal({ state$, interactionBlocked$ }: ISnapshotLoadingGlobalProps): import("react").JSX.Element;
14
10
  export declare function SnapshotLoadingTimeout({ state$ }: IProps): import("react").JSX.Element | null;
15
11
  export {};
@@ -1,4 +1,5 @@
1
- import type { Documents, DocumentSkeleton, Scene } from '@univerjs/engine-render';
1
+ import type { Nullable } from '@univerjs/core';
2
+ import type { Documents, DocumentSkeleton, INodePosition, Scene } from '@univerjs/engine-render';
2
3
  import type { IDocCollabCursor } from '../../models/cursor';
3
4
  /**
4
5
  * Render a single collaborated cursor on the canvas.
@@ -25,3 +26,7 @@ export declare class DocCollabCursor {
25
26
  private _getAnchorBounding;
26
27
  private _getScale;
27
28
  }
29
+ export declare function getDocCollabCursorTextRenderability(startPosition: Nullable<INodePosition>, endPosition: Nullable<INodePosition>): {
30
+ canRenderAnchor: boolean;
31
+ canRenderSelection: boolean;
32
+ };
package/lib/umd/facade.js CHANGED
@@ -1 +1 @@
1
- function _0x5273(_0x5fd3d0,_0x44b4de){_0x5fd3d0=_0x5fd3d0-0xf3;var _0x5a712e=_0x5a71();var _0x5273df=_0x5a712e[_0x5fd3d0];return _0x5273df;}(function(_0x4dbbdb,_0x5f2255){var _0x5c1db5=_0x5273,_0x442721=_0x4dbbdb();while(!![]){try{var _0x4e21f2=-parseInt(_0x5c1db5(0x102))/0x1*(-parseInt(_0x5c1db5(0xf8))/0x2)+parseInt(_0x5c1db5(0xf5))/0x3*(parseInt(_0x5c1db5(0xf3))/0x4)+-parseInt(_0x5c1db5(0x107))/0x5+parseInt(_0x5c1db5(0xfb))/0x6*(parseInt(_0x5c1db5(0xfa))/0x7)+-parseInt(_0x5c1db5(0x104))/0x8*(parseInt(_0x5c1db5(0xf4))/0x9)+-parseInt(_0x5c1db5(0xfd))/0xa+-parseInt(_0x5c1db5(0x105))/0xb;if(_0x4e21f2===_0x5f2255)break;else _0x442721['push'](_0x442721['shift']());}catch(_0x7474e9){_0x442721['push'](_0x442721['shift']());}}}(_0x5a71,0xaa7bd),function(_0x20211d,_0x4baa2d){var _0x3037f3=_0x5273;typeof exports==_0x3037f3(0x100)&&typeof module<'u'?_0x4baa2d(require('@univerjs-pro/collaboration-client-ui'),require('@univerjs/core/facade')):typeof define==_0x3037f3(0xf9)&&define['amd']?define(['@univerjs-pro/collaboration-client-ui',_0x3037f3(0xff)],_0x4baa2d):(_0x20211d=typeof globalThis<'u'?globalThis:_0x20211d||self,_0x4baa2d(_0x20211d[_0x3037f3(0x103)],_0x20211d[_0x3037f3(0xf6)]));}(this,function(_0x5d1c52,_0x6cb45a){var _0x59f6a5=_0x5273,_0x4e1e55=class extends _0x6cb45a[_0x59f6a5(0x106)]{[_0x59f6a5(0xfc)](_0x4c5c9f,_0x34028f,..._0x458682){var _0x5287f9=_0x59f6a5;return this[_0x5287f9(0x101)][_0x5287f9(0xfe)](_0x5d1c52['RemoteUniscriptService'])[_0x5287f9(0xfc)](_0x4c5c9f,_0x34028f,{},..._0x458682);}};_0x6cb45a['FUniver'][_0x59f6a5(0xf7)](_0x4e1e55);}));function _0x5a71(){var _0x24a86a=['35LkimtT','1327254OEpYoV','runOnServer','9505470QcZvsp','get','@univerjs/core/facade','object','_injector','11fhsnlF','UniverProCollaborationClientUi','5895784iJnqSI','5537752YRMYin','FUniver','3201545xStQqb','40JdUHVy','9QbPBCv','339315yvxVTY','UniverCoreFacade','extend','234994byqCfe','function'];_0x5a71=function(){return _0x24a86a;};return _0x5a71();}
1
+ function _0x439e(_0xc45edc,_0x2dcd2f){_0xc45edc=_0xc45edc-0x1c0;var _0x5a8474=_0x5a84();var _0x439eb7=_0x5a8474[_0xc45edc];return _0x439eb7;}function _0x5a84(){var _0x51c420=['amd','4064886YnCfqt','object','get','UniverCoreFacade','2223495EaPLeq','1226306tcIJSB','function','18NNwZyi','runOnServer','@univerjs-pro/collaboration-client-ui','4989440lGuPeX','RemoteUniscriptService','FUniver','UniverProCollaborationClientUi','extend','@univerjs/core/facade','4980408FydNEj','9788380yuAHXQ','623085JZzBtl'];_0x5a84=function(){return _0x51c420;};return _0x5a84();}(function(_0x38070a,_0x5e4f9e){var _0x2ca928=_0x439e,_0x5f3a2d=_0x38070a();while(!![]){try{var _0x19ae05=-parseInt(_0x2ca928(0x1c5))/0x1+parseInt(_0x2ca928(0x1cc))/0x2+parseInt(_0x2ca928(0x1c7))/0x3+-parseInt(_0x2ca928(0x1d1))/0x4+parseInt(_0x2ca928(0x1cb))/0x5*(-parseInt(_0x2ca928(0x1ce))/0x6)+parseInt(_0x2ca928(0x1c4))/0x7+parseInt(_0x2ca928(0x1c3))/0x8;if(_0x19ae05===_0x5e4f9e)break;else _0x5f3a2d['push'](_0x5f3a2d['shift']());}catch(_0x45ca2c){_0x5f3a2d['push'](_0x5f3a2d['shift']());}}}(_0x5a84,0xbf850),function(_0x10bbaf,_0x54da08){var _0x346afd=_0x439e;typeof exports==_0x346afd(0x1c8)&&typeof module<'u'?_0x54da08(require('@univerjs-pro/collaboration-client-ui'),require('@univerjs/core/facade')):typeof define==_0x346afd(0x1cd)&&define[_0x346afd(0x1c6)]?define([_0x346afd(0x1d0),_0x346afd(0x1c2)],_0x54da08):(_0x10bbaf=typeof globalThis<'u'?globalThis:_0x10bbaf||self,_0x54da08(_0x10bbaf[_0x346afd(0x1c0)],_0x10bbaf[_0x346afd(0x1ca)]));}(this,function(_0x475728,_0x538aa7){var _0x2cbdc3=_0x439e,_0x58a301=class extends _0x538aa7[_0x2cbdc3(0x1d3)]{[_0x2cbdc3(0x1cf)](_0x2d08a6,_0x5a3fb7,..._0x26ab55){var _0x44fe20=_0x2cbdc3;return this['_injector'][_0x44fe20(0x1c9)](_0x475728[_0x44fe20(0x1d2)])['runOnServer'](_0x2d08a6,_0x5a3fb7,{},..._0x26ab55);}};_0x538aa7[_0x2cbdc3(0x1d3)][_0x2cbdc3(0x1c1)](_0x58a301);}));