@netless/window-manager 0.4.0-canary.8 → 0.4.1

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 (74) hide show
  1. package/.idea/inspectionProfiles/Project_Default.xml +7 -0
  2. package/.idea/modules.xml +8 -0
  3. package/.idea/vcs.xml +6 -0
  4. package/.idea/window-manager.iml +12 -0
  5. package/.vscode/settings.json +1 -0
  6. package/CHANGELOG.md +43 -2
  7. package/README.md +3 -0
  8. package/dist/App/MagixEvent/index.d.ts +29 -0
  9. package/dist/App/Storage/index.d.ts +19 -6
  10. package/dist/App/Storage/typings.d.ts +1 -0
  11. package/dist/AppContext.d.ts +39 -17
  12. package/dist/AppListener.d.ts +2 -0
  13. package/dist/AppManager.d.ts +23 -8
  14. package/dist/AppProxy.d.ts +5 -5
  15. package/dist/AttributesDelegate.d.ts +2 -2
  16. package/dist/BoxManager.d.ts +6 -4
  17. package/dist/BuiltinApps.d.ts +0 -1
  18. package/dist/Cursor/Cursor.d.ts +10 -12
  19. package/dist/Cursor/index.d.ts +6 -16
  20. package/dist/Helper.d.ts +1 -0
  21. package/dist/Register/index.d.ts +5 -0
  22. package/dist/Register/storage.d.ts +5 -1
  23. package/dist/Utils/AppCreateQueue.d.ts +11 -0
  24. package/dist/Utils/Common.d.ts +4 -1
  25. package/dist/Utils/RoomHacker.d.ts +3 -3
  26. package/dist/View/MainView.d.ts +4 -3
  27. package/dist/constants.d.ts +5 -2
  28. package/dist/index.d.ts +34 -6
  29. package/dist/index.es.js +41 -1
  30. package/dist/index.es.js.map +1 -1
  31. package/dist/index.umd.js +41 -1
  32. package/dist/index.umd.js.map +1 -1
  33. package/dist/style.css +1 -1
  34. package/dist/typings.d.ts +2 -2
  35. package/docs/advanced.md +53 -0
  36. package/docs/api.md +79 -6
  37. package/docs/concept.md +9 -0
  38. package/docs/replay.md +40 -0
  39. package/package.json +7 -8
  40. package/src/App/MagixEvent/index.ts +68 -0
  41. package/src/App/Storage/index.ts +89 -43
  42. package/src/App/Storage/typings.ts +4 -2
  43. package/src/AppContext.ts +61 -24
  44. package/src/AppListener.ts +28 -8
  45. package/src/AppManager.ts +244 -71
  46. package/src/AppProxy.ts +40 -29
  47. package/src/AttributesDelegate.ts +2 -2
  48. package/src/BoxManager.ts +33 -19
  49. package/src/BuiltinApps.ts +0 -1
  50. package/src/ContainerResizeObserver.ts +3 -3
  51. package/src/Cursor/Cursor.svelte +25 -21
  52. package/src/Cursor/Cursor.ts +25 -38
  53. package/src/Cursor/icons.ts +2 -0
  54. package/src/Cursor/index.ts +45 -139
  55. package/src/Helper.ts +12 -1
  56. package/src/Register/index.ts +32 -17
  57. package/src/Register/loader.ts +28 -13
  58. package/src/Register/storage.ts +6 -1
  59. package/src/Utils/AppCreateQueue.ts +54 -0
  60. package/src/Utils/Common.ts +35 -2
  61. package/src/Utils/RoomHacker.ts +44 -14
  62. package/src/View/MainView.ts +19 -12
  63. package/src/View/ViewManager.ts +1 -2
  64. package/src/constants.ts +6 -2
  65. package/src/image/laser-pointer-cursor.svg +17 -0
  66. package/src/index.ts +152 -33
  67. package/src/shim.d.ts +2 -1
  68. package/src/style.css +6 -1
  69. package/src/typings.ts +2 -2
  70. package/vite.config.js +5 -2
  71. package/dist/Base/Context.d.ts +0 -12
  72. package/dist/Base/index.d.ts +0 -7
  73. package/src/Base/Context.ts +0 -45
  74. package/src/Base/index.ts +0 -10
@@ -1,12 +1,12 @@
1
- import { Base } from "../Base";
2
1
  import type { Camera, Size, View } from "white-web-sdk";
3
2
  import type { AppManager } from "../AppManager";
4
- export declare class MainViewProxy extends Base {
3
+ export declare class MainViewProxy {
4
+ private manager;
5
5
  private scale?;
6
6
  private started;
7
7
  private mainViewIsAddListener;
8
8
  private mainView;
9
- private viewId;
9
+ private store;
10
10
  private sideEffectManager;
11
11
  constructor(manager: AppManager);
12
12
  private get mainViewCamera();
@@ -25,6 +25,7 @@ export declare class MainViewProxy extends Base {
25
25
  scale: number;
26
26
  };
27
27
  createMainView(): View;
28
+ onReconnect(): void;
28
29
  private onCameraUpdatedByDevice;
29
30
  addMainViewListener(): void;
30
31
  removeMainViewListener(): void;
@@ -10,7 +10,9 @@ export declare enum Events {
10
10
  SetMainViewScenePath = "SetMainViewScenePath",
11
11
  SetMainViewSceneIndex = "SetMainViewSceneIndex",
12
12
  SwitchViewsToFreedom = "SwitchViewsToFreedom",
13
- MoveCameraToContain = "MoveCameraToContain"
13
+ MoveCamera = "MoveCamera",
14
+ MoveCameraToContain = "MoveCameraToContain",
15
+ CursorMove = "CursorMove"
14
16
  }
15
17
  export declare const MagixEventName = "__WindowManger";
16
18
  export declare enum AppAttributes {
@@ -31,8 +33,9 @@ export declare enum CursorState {
31
33
  Leave = "leave",
32
34
  Normal = "normal"
33
35
  }
34
- export declare const REQUIRE_VERSION = "2.13.16";
36
+ export declare const REQUIRE_VERSION = "2.16.1";
35
37
  export declare const MIN_WIDTH: number;
36
38
  export declare const MIN_HEIGHT: number;
37
39
  export declare const SET_SCENEPATH_DELAY = 100;
38
40
  export declare const DEFAULT_CONTAINER_RATIO: number;
41
+ export declare const ROOT_DIR = "/";
package/dist/index.d.ts CHANGED
@@ -1,13 +1,14 @@
1
1
  import Emittery from "emittery";
2
2
  import { AppManager } from "./AppManager";
3
3
  import { CursorManager } from "./Cursor";
4
+ import { InvisiblePlugin, ViewMode } from "white-web-sdk";
4
5
  import { ReconnectRefresher } from "./ReconnectRefresher";
5
6
  import "./style.css";
6
7
  import "@netless/telebox-insider/dist/style.css";
8
+ import type { LoadAppEvent } from "./Register";
7
9
  import type { TELE_BOX_STATE } from "./BoxManager";
8
- import type { Apps } from "./AttributesDelegate";
9
- import { InvisiblePlugin, ViewMode } from "white-web-sdk";
10
- import type { Displayer, SceneDefinition, View, Room, InvisiblePluginContext, Camera, AnimationMode, CameraBound, Point, Rectangle, ViewVisionMode, CameraState } from "white-web-sdk";
10
+ import type { Apps, Position } from "./AttributesDelegate";
11
+ import type { Displayer, SceneDefinition, View, Room, InvisiblePluginContext, Camera, AnimationMode, CameraBound, Point, Rectangle, ViewVisionMode, CameraState, Player } from "white-web-sdk";
11
12
  import type { AppListeners } from "./AppListener";
12
13
  import type { NetlessApp, RegisterParams } from "./typings";
13
14
  import type { TeleBoxColorScheme, TeleBoxState } from "@netless/telebox-insider";
@@ -65,6 +66,11 @@ export declare type AppInitState = {
65
66
  boxState?: TeleBoxState;
66
67
  zIndex?: number;
67
68
  };
69
+ export declare type CursorMovePayload = {
70
+ uid: string;
71
+ state?: "leave";
72
+ position: Position;
73
+ };
68
74
  export declare type EmitterEvent = {
69
75
  onCreated: undefined;
70
76
  InitReplay: AppInitState;
@@ -93,6 +99,8 @@ export declare type EmitterEvent = {
93
99
  boxStateChange: string;
94
100
  playgroundSizeChange: DOMRect;
95
101
  onReconnected: void;
102
+ removeScenes: string;
103
+ cursorMove: CursorMovePayload;
96
104
  };
97
105
  export declare type EmitterType = Emittery<EmitterEvent>;
98
106
  export declare const emitter: EmitterType;
@@ -102,9 +110,16 @@ export declare type PublicEvent = {
102
110
  darkModeChange: boolean;
103
111
  prefersColorSchemeChange: TeleBoxColorScheme;
104
112
  cameraStateChange: CameraState;
113
+ mainViewScenePathChange: string;
114
+ mainViewSceneIndexChange: number;
115
+ focusedChange: string | undefined;
116
+ mainViewScenesLengthChange: number;
117
+ canRedoStepsChange: number;
118
+ canUndoStepsChange: number;
119
+ loadApp: LoadAppEvent;
105
120
  };
106
121
  export declare type MountParams = {
107
- room: Room;
122
+ room: Room | Player;
108
123
  container?: HTMLElement;
109
124
  /** 白板高宽比例, 默认为 9 / 16 */
110
125
  containerSizeRatio?: number;
@@ -131,6 +146,7 @@ export declare class WindowManager extends InvisiblePlugin<WindowMangerAttribute
131
146
  static containerSizeRatio: number;
132
147
  private static isCreated;
133
148
  version: string;
149
+ dependencies: Record<string, string>;
134
150
  appListeners?: AppListeners;
135
151
  readonly?: boolean;
136
152
  emitter: Emittery<PublicEvent>;
@@ -167,7 +183,7 @@ export declare class WindowManager extends InvisiblePlugin<WindowMangerAttribute
167
183
  /**
168
184
  * 返回 mainView 的 ScenePath
169
185
  */
170
- getMainViewScenePath(): string;
186
+ getMainViewScenePath(): string | undefined;
171
187
  /**
172
188
  * 返回 mainView 的 SceneIndex
173
189
  */
@@ -188,6 +204,9 @@ export declare class WindowManager extends InvisiblePlugin<WindowMangerAttribute
188
204
  * 设置 ViewMode
189
205
  */
190
206
  setViewMode(mode: ViewMode): void;
207
+ setBoxState(boxState: TeleBoxState): void;
208
+ setMaximized(maximized: boolean): void;
209
+ setMinimized(minimized: boolean): void;
191
210
  get mainView(): View;
192
211
  get camera(): Camera;
193
212
  get cameraState(): CameraState;
@@ -195,6 +214,13 @@ export declare class WindowManager extends InvisiblePlugin<WindowMangerAttribute
195
214
  get boxState(): TeleBoxState | undefined;
196
215
  get darkMode(): boolean;
197
216
  get prefersColorScheme(): TeleBoxColorScheme | undefined;
217
+ get focused(): string | undefined;
218
+ get mainViewSceneIndex(): number;
219
+ get mainViewSceneDir(): string;
220
+ get topApp(): string | undefined;
221
+ get mainViewScenesLength(): number;
222
+ get canRedoSteps(): number;
223
+ get canUndoSteps(): number;
198
224
  /**
199
225
  * 查询所有的 App
200
226
  */
@@ -224,8 +250,10 @@ export declare class WindowManager extends InvisiblePlugin<WindowMangerAttribute
224
250
  safeSetAttributes(attributes: any): void;
225
251
  safeUpdateAttributes(keys: string[], value: any): void;
226
252
  setPrefersColorScheme(scheme: TeleBoxColorScheme): void;
253
+ cleanCurrentScene(): void;
254
+ redo(): number;
255
+ undo(): number;
227
256
  private isDynamicPPT;
228
- private static checkVersion;
229
257
  private ensureAttributes;
230
258
  }
231
259
  export * from "./typings";