@netless/window-manager 1.0.0-canary.46 → 1.0.0-canary.47
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/README.md +30 -6
- package/dist/index.cjs.js +6 -5
- package/dist/index.es.js +6 -5
- package/dist/index.umd.js +6 -5
- package/dist/src/App/AppContext.d.ts +1 -1
- package/dist/src/Page/PageController.d.ts +1 -1
- package/package.json +1 -1
- package/src/App/AppContext.ts +3 -2
- package/src/Page/PageController.ts +1 -1
- package/src/index.ts +4 -3
package/README.md
CHANGED
@@ -1,6 +1,18 @@
|
|
1
1
|
# WindowManager
|
2
2
|
|
3
|
-
-
|
3
|
+
`WindowManager` 是一个基于 `white-web-sdk` `InvisiblePlugin` 实现的窗口管理系统.
|
4
|
+
|
5
|
+
本应用提供了以下内容:
|
6
|
+
|
7
|
+
1. 提供 `NetlessApp` 插件 `API` 系统
|
8
|
+
2. 支持 `APP` 以窗口的形式打开
|
9
|
+
3. 支持应用在各个端的同步
|
10
|
+
4. 光标同步
|
11
|
+
5. 视角跟随
|
12
|
+
|
13
|
+
## 内容列表
|
14
|
+
- [安装](#安装)
|
15
|
+
- [快速开始](#快速开始)
|
4
16
|
- [概念](docs/concept.md)
|
5
17
|
- [references](docs/api.md)
|
6
18
|
- [从白板迁移](docs/migrate.md)
|
@@ -8,11 +20,17 @@
|
|
8
20
|
- [进阶使用](docs/advanced.md)
|
9
21
|
- [视角跟随](docs/advanced.md#view-mode)
|
10
22
|
- [开发自定义 APP](docs/develop-app.md)
|
11
|
-
## MainView
|
12
23
|
|
13
|
-
|
24
|
+
## 安装
|
14
25
|
|
15
|
-
|
26
|
+
pnpm
|
27
|
+
```sh
|
28
|
+
$ pnpm install @netless/window-manager
|
29
|
+
```
|
30
|
+
yarn
|
31
|
+
```sh
|
32
|
+
$ yarn install @netless/window-manager
|
33
|
+
```
|
16
34
|
|
17
35
|
### 快速开始
|
18
36
|
|
@@ -43,10 +61,16 @@ sdk.joinRoom({
|
|
43
61
|
|
44
62
|
[mount 完整参数](docs/api.md#mount)
|
45
63
|
|
46
|
-
|
47
64
|
> `containerSizeRatio` 为了保证窗口在不同分辨率下显示效果, 白板在相同的比例区域才能进行同步
|
48
65
|
|
49
|
-
|
66
|
+
|
67
|
+
## MainView
|
68
|
+
|
69
|
+
`MainView` 也就是主白板, 是垫在所有窗口下面的主白板
|
70
|
+
|
71
|
+
因为多窗口的原因,所以抽象出来一个主白板, 并且把以前部分对 `room` 的操作, 迁移到对 `mainView` 操作
|
72
|
+
|
73
|
+
|
50
74
|
|
51
75
|
### `collector`
|
52
76
|
|
package/dist/index.cjs.js
CHANGED
@@ -1284,7 +1284,7 @@ class AppContext {
|
|
1284
1284
|
get currentMember() {
|
1285
1285
|
const self = findMemberByUid(this.room, this.manager.uid);
|
1286
1286
|
if (!self) {
|
1287
|
-
|
1287
|
+
return void 0;
|
1288
1288
|
}
|
1289
1289
|
return __spreadValues({
|
1290
1290
|
uid: this.manager.uid
|
@@ -12121,7 +12121,7 @@ const reconnectRefresher = new ReconnectRefresher({ emitter });
|
|
12121
12121
|
const _WindowManager = class extends whiteWebSdk.InvisiblePlugin {
|
12122
12122
|
constructor(context) {
|
12123
12123
|
super(context);
|
12124
|
-
this.version = "1.0.0-canary.
|
12124
|
+
this.version = "1.0.0-canary.47";
|
12125
12125
|
this.dependencies = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "1.0.0-alpha.36", "emittery": "^0.11.0", "lodash": "^4.17.21", "p-retry": "^4.6.2", "side-effect-manager": "^1.1.1", "uuid": "^7.0.3", "value-enhancer": "^1.3.2" }, "peerDependencies": { "white-web-sdk": "^2.16.0" }, "devDependencies": { "@netless/app-docs-viewer": "^0.3.2", "@netless/app-plyr": "0.2.0", "@playwright/test": "^1.23.2", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.49", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.6", "@types/node": "^18.0.3", "@types/uuid": "^8.3.4", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.2", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "less": "^4.1.3", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.5.3", "vite-plugin-dts": "^1.2.1", "vitest": "^0.18.0", "white-web-sdk": "2.16.26" } };
|
12126
12126
|
this.emitter = callbacks;
|
12127
12127
|
this.viewMode = whiteWebSdk.ViewMode.Broadcaster;
|
@@ -12477,12 +12477,13 @@ const _WindowManager = class extends whiteWebSdk.InvisiblePlugin {
|
|
12477
12477
|
async addPage(params) {
|
12478
12478
|
if (this.appManager) {
|
12479
12479
|
const after = params == null ? void 0 : params.after;
|
12480
|
-
const scene = params == null ? void 0 : params.scene;
|
12480
|
+
const scene = (params == null ? void 0 : params.scene) || {};
|
12481
|
+
const scenes = Array.isArray(scene) ? scene : [scene];
|
12481
12482
|
if (after) {
|
12482
12483
|
const nextIndex = this.mainViewSceneIndex + 1;
|
12483
|
-
this.room.putScenes(ROOT_DIR,
|
12484
|
+
this.room.putScenes(ROOT_DIR, scenes, nextIndex);
|
12484
12485
|
} else {
|
12485
|
-
this.room.putScenes(ROOT_DIR,
|
12486
|
+
this.room.putScenes(ROOT_DIR, scenes);
|
12486
12487
|
}
|
12487
12488
|
}
|
12488
12489
|
}
|
package/dist/index.es.js
CHANGED
@@ -1277,7 +1277,7 @@ class AppContext {
|
|
1277
1277
|
get currentMember() {
|
1278
1278
|
const self = findMemberByUid(this.room, this.manager.uid);
|
1279
1279
|
if (!self) {
|
1280
|
-
|
1280
|
+
return void 0;
|
1281
1281
|
}
|
1282
1282
|
return __spreadValues({
|
1283
1283
|
uid: this.manager.uid
|
@@ -12114,7 +12114,7 @@ const reconnectRefresher = new ReconnectRefresher({ emitter });
|
|
12114
12114
|
const _WindowManager = class extends InvisiblePlugin {
|
12115
12115
|
constructor(context) {
|
12116
12116
|
super(context);
|
12117
|
-
this.version = "1.0.0-canary.
|
12117
|
+
this.version = "1.0.0-canary.47";
|
12118
12118
|
this.dependencies = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "1.0.0-alpha.36", "emittery": "^0.11.0", "lodash": "^4.17.21", "p-retry": "^4.6.2", "side-effect-manager": "^1.1.1", "uuid": "^7.0.3", "value-enhancer": "^1.3.2" }, "peerDependencies": { "white-web-sdk": "^2.16.0" }, "devDependencies": { "@netless/app-docs-viewer": "^0.3.2", "@netless/app-plyr": "0.2.0", "@playwright/test": "^1.23.2", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.49", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.6", "@types/node": "^18.0.3", "@types/uuid": "^8.3.4", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.2", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "less": "^4.1.3", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.5.3", "vite-plugin-dts": "^1.2.1", "vitest": "^0.18.0", "white-web-sdk": "2.16.26" } };
|
12119
12119
|
this.emitter = callbacks;
|
12120
12120
|
this.viewMode = ViewMode.Broadcaster;
|
@@ -12470,12 +12470,13 @@ const _WindowManager = class extends InvisiblePlugin {
|
|
12470
12470
|
async addPage(params) {
|
12471
12471
|
if (this.appManager) {
|
12472
12472
|
const after = params == null ? void 0 : params.after;
|
12473
|
-
const scene = params == null ? void 0 : params.scene;
|
12473
|
+
const scene = (params == null ? void 0 : params.scene) || {};
|
12474
|
+
const scenes = Array.isArray(scene) ? scene : [scene];
|
12474
12475
|
if (after) {
|
12475
12476
|
const nextIndex = this.mainViewSceneIndex + 1;
|
12476
|
-
this.room.putScenes(ROOT_DIR,
|
12477
|
+
this.room.putScenes(ROOT_DIR, scenes, nextIndex);
|
12477
12478
|
} else {
|
12478
|
-
this.room.putScenes(ROOT_DIR,
|
12479
|
+
this.room.putScenes(ROOT_DIR, scenes);
|
12479
12480
|
}
|
12480
12481
|
}
|
12481
12482
|
}
|
package/dist/index.umd.js
CHANGED
@@ -1278,7 +1278,7 @@ var __objRest = (source, exclude) => {
|
|
1278
1278
|
get currentMember() {
|
1279
1279
|
const self2 = findMemberByUid(this.room, this.manager.uid);
|
1280
1280
|
if (!self2) {
|
1281
|
-
|
1281
|
+
return void 0;
|
1282
1282
|
}
|
1283
1283
|
return __spreadValues({
|
1284
1284
|
uid: this.manager.uid
|
@@ -12115,7 +12115,7 @@ var __objRest = (source, exclude) => {
|
|
12115
12115
|
const _WindowManager = class extends whiteWebSdk.InvisiblePlugin {
|
12116
12116
|
constructor(context) {
|
12117
12117
|
super(context);
|
12118
|
-
this.version = "1.0.0-canary.
|
12118
|
+
this.version = "1.0.0-canary.47";
|
12119
12119
|
this.dependencies = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "1.0.0-alpha.36", "emittery": "^0.11.0", "lodash": "^4.17.21", "p-retry": "^4.6.2", "side-effect-manager": "^1.1.1", "uuid": "^7.0.3", "value-enhancer": "^1.3.2" }, "peerDependencies": { "white-web-sdk": "^2.16.0" }, "devDependencies": { "@netless/app-docs-viewer": "^0.3.2", "@netless/app-plyr": "0.2.0", "@playwright/test": "^1.23.2", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.49", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.6", "@types/node": "^18.0.3", "@types/uuid": "^8.3.4", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.2", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "less": "^4.1.3", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.5.3", "vite-plugin-dts": "^1.2.1", "vitest": "^0.18.0", "white-web-sdk": "2.16.26" } };
|
12120
12120
|
this.emitter = callbacks;
|
12121
12121
|
this.viewMode = whiteWebSdk.ViewMode.Broadcaster;
|
@@ -12471,12 +12471,13 @@ var __objRest = (source, exclude) => {
|
|
12471
12471
|
async addPage(params) {
|
12472
12472
|
if (this.appManager) {
|
12473
12473
|
const after = params == null ? void 0 : params.after;
|
12474
|
-
const scene = params == null ? void 0 : params.scene;
|
12474
|
+
const scene = (params == null ? void 0 : params.scene) || {};
|
12475
|
+
const scenes = Array.isArray(scene) ? scene : [scene];
|
12475
12476
|
if (after) {
|
12476
12477
|
const nextIndex = this.mainViewSceneIndex + 1;
|
12477
|
-
this.room.putScenes(ROOT_DIR,
|
12478
|
+
this.room.putScenes(ROOT_DIR, scenes, nextIndex);
|
12478
12479
|
} else {
|
12479
|
-
this.room.putScenes(ROOT_DIR,
|
12480
|
+
this.room.putScenes(ROOT_DIR, scenes);
|
12480
12481
|
}
|
12481
12482
|
}
|
12482
12483
|
}
|
@@ -51,7 +51,7 @@ export declare class AppContext<TAttributes = any, TMagixEventPayloads = any, TA
|
|
51
51
|
get box(): ReadonlyTeleBox;
|
52
52
|
get room(): Room | undefined;
|
53
53
|
get members(): Member[];
|
54
|
-
get currentMember(): Member;
|
54
|
+
get currentMember(): Member | undefined;
|
55
55
|
/** @deprecated Use context.storage.setState instead. */
|
56
56
|
setAttributes: (attributes: TAttributes) => void;
|
57
57
|
/** @deprecated Use context.storage.setState instead. */
|
package/package.json
CHANGED
package/src/App/AppContext.ts
CHANGED
@@ -180,10 +180,11 @@ export class AppContext<TAttributes = any, TMagixEventPayloads = any, TAppOption
|
|
180
180
|
return this.manager.members$.value;
|
181
181
|
}
|
182
182
|
|
183
|
-
|
183
|
+
//** currentMember is undefined in read-only and replay mode. */
|
184
|
+
public get currentMember(): Member | undefined {
|
184
185
|
const self = findMemberByUid(this.room, this.manager.uid);
|
185
186
|
if (!self) {
|
186
|
-
|
187
|
+
return undefined;
|
187
188
|
}
|
188
189
|
return {
|
189
190
|
uid: this.manager.uid,
|
package/src/index.ts
CHANGED
@@ -539,12 +539,13 @@ export class WindowManager extends InvisiblePlugin<WindowMangerAttributes> imple
|
|
539
539
|
public async addPage(params?: AddPageParams): Promise<void> {
|
540
540
|
if (this.appManager) {
|
541
541
|
const after = params?.after;
|
542
|
-
const scene = params?.scene;
|
542
|
+
const scene = params?.scene || {};
|
543
|
+
const scenes = Array.isArray(scene) ? scene : [scene];
|
543
544
|
if (after) {
|
544
545
|
const nextIndex = this.mainViewSceneIndex + 1;
|
545
|
-
this.room.putScenes(ROOT_DIR,
|
546
|
+
this.room.putScenes(ROOT_DIR, scenes, nextIndex);
|
546
547
|
} else {
|
547
|
-
this.room.putScenes(ROOT_DIR,
|
548
|
+
this.room.putScenes(ROOT_DIR, scenes);
|
548
549
|
}
|
549
550
|
}
|
550
551
|
}
|