0.4.75 • Published 9 months ago

@netless/window-manager v0.4.75

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

WindowManager

MainView

MainView 也就是主白板, 是垫在所有窗口下面的主白板

因为多窗口的原因,所以抽象出来一个主白板, 并且把以前部分对 room 的操作, 迁移到对 mainView 操作

快速开始

import { WhiteWebSdk } from "white-web-sdk";
import { WindowManager, BuiltinApps } from "@netless/window-manager";
import "@netless/window-manager/dist/style.css";

const sdk = new WhiteWebSdk({
    appIdentifier: "appIdentifier",
    useMobXState: true // 请确保打开这个选项
});

sdk.joinRoom({
    uuid: "room uuid",
    roomToken: "room token",
    invisiblePlugins: [WindowManager],
    useMultiViews: true, // 多窗口必须用开启 useMultiViews
    disableMagixEventDispatchLimit: true, // 请确保打开这个选项
}).then(async room => {
    const manager = await WindowManager.mount(
        room,
        container
        // 完整配置见下方
    );
});

mount 完整参数

containerSizeRatio 为了保证窗口在不同分辨率下显示效果, 白板在相同的比例区域才能进行同步

chessboard 当挂载的区域不完全符合比例时, 白板会在挂载的 dom 中划分一个符合比例的区域出来, 此时多出来的部分会默认显示为棋盘透明背景

collector

collector 就是窗口最小化时的图标, 默认大小 width: 40px; height: 40px;

光标同步

原本的 SDK 中的 cursorAdapter 在多窗口中不可用, 如需要光标同步功能需要在 manager 中开启 cursor 选项

sdk.joinRoom({
    // cursorAdapter: cursorAdapter, 原本开启 sdk 中的 cursorAdapter 需要关闭
    userPayload: {
        nickName: "光标名称",
        avatar: "用户头像链接",
    },
});

WindowManager.mount({
    cursor: true, // 开启光标同步
});

APP

静态和动态 PPT 是作为 App 插入到白板, 并持久化到白板中

App 或会在页面刷新时自动创建出来, 不需要重复插入

如果 App 需要 scenePath 时,那么一个 scenePath 只能同时打开一个,要求为 App 实例唯一

添加静态/动态 PPT 到白板上

const appId = await manager.addApp({
    kind: BuiltinApps.DocsViewer,
    options: {
        scenePath: "/docs-viewer",
        title: "docs1", // 可选
        scenes: [], // SceneDefinition[] 静态/动态 Scene 数据
    },
});

添加音视频到白板

const appId = await manager.addApp({
    kind: BuiltinApps.MediaPlayer,
    options: {
        title: "test.mp3", // 可选
    },
    attributes: {
        src: "xxxx", // 音视频 url
    },
});

设置跟随模式

只有广播端也就是老师需要设置跟随模式, 其他端的主白板都会跟随广播端的视角

注意 managersetViewMode 不能和 room.setViewMode 同时使用

manager.setViewMode("broadcaster"); // 开启跟随模式
manager.setViewMode("freedom"); // 关闭跟随模式

获取当前的 broadcaster ID

manager.broadcaster

设置所有 appreadonly

manager.setReadonly(true); // 所有窗口变成 readonly 状态
manager.setReadonly(false); // 解锁设置的 readonly, 注意如果当前白板的 isWritable 为 false 以白板的状态为最高优先级

切换 mainView 为可写状态

manager.switchMainViewToWriter();

切换 mainView scenePath

切换主白板的 ScenePath 并把主白板设置为可写状态

manager.setMainViewScenePath(scenePath);

切换 mainView sceneIndex

切换主白板的 SceneIndex 并把主白板设置为可写状态

manager.setMainViewSceneIndex(sceneIndex);

获取 mainView scenePath

manager.getMainViewScenePath();

获取 mainView sceneIndex

manager.getMainViewSceneIndex();

监听 mainViewmode

manager.emitter.on("mainViewModeChange", mode => {
    // mode 类型为 ViewVisionMode
});

监听窗口最大化最小化

manager.emitter.on("boxStateChange", state => {
    if (state === "maximized") {
        // 最大化
    }
    if (state === "minimized") {
        // 最小化
    }
    if (state === "normal") {
        // 恢复正常
    }
});

监听 broadcaster 变化

manager.emitter.on("broadcastChange", id => {
    // broadcast id 进行了改变
})

关闭 App

manager.closeApp(appId);

手动销毁 WindowManager

manager.destroy();

开发流程

pnpm install

pnpm build

cd example

pnpm install

pnpm dev
0.4.76-canary.2

9 months ago

0.4.76-canary.0

9 months ago

0.4.76-canary.1

9 months ago

0.4.75

9 months ago

0.4.75-canary.1

9 months ago

0.4.75-canary.0

9 months ago

0.4.74

9 months ago

0.4.73-beta.1

1 year ago

0.4.73

12 months ago

0.4.73-beta.0

1 year ago

0.4.71

1 year ago

0.4.72

1 year ago

0.4.72-beta.0

1 year ago

0.4.71-beta.0

1 year ago

0.4.70

1 year ago

0.4.69

1 year ago

0.4.68

1 year ago

0.4.67

1 year ago

0.4.67-beta.1

1 year ago

0.4.67-beta.0

1 year ago

0.4.66-beta.0

2 years ago

0.4.66

2 years ago

0.4.65-beta.0

2 years ago

0.4.65

2 years ago

0.4.64

2 years ago

1.0.0-canary.79

2 years ago

0.4.62

2 years ago

0.4.63

2 years ago

0.4.60

2 years ago

0.4.61

2 years ago

0.4.61-beta.0

2 years ago

0.4.59

2 years ago

1.0.0-canary.77

2 years ago

1.0.0-canary.78

2 years ago

0.4.57

2 years ago

0.4.58

2 years ago

0.4.56

2 years ago

1.0.0-canary.76

2 years ago

1.0.0-canary.75

2 years ago

1.0.0-canary.74

2 years ago

1.0.0-canary.72

3 years ago

1.0.0-canary.73

2 years ago

0.4.55

3 years ago

1.0.0-canary.70

3 years ago

1.0.0-canary.71

3 years ago

0.4.53

3 years ago

0.4.54

3 years ago

0.4.51

3 years ago

0.4.52

3 years ago

0.4.50

3 years ago

0.4.48

3 years ago

0.4.49

3 years ago

0.4.46

3 years ago

0.4.47

3 years ago

0.4.45

3 years ago

1.0.0-canary.64

3 years ago

1.0.0-canary.65

3 years ago

1.0.0-canary.66

3 years ago

1.0.0-canary.67

3 years ago

1.0.0-canary.60

3 years ago

1.0.0-canary.61

3 years ago

1.0.0-canary.62

3 years ago

1.0.0-canary.63

3 years ago

1.0.0-canary.68

3 years ago

1.0.0-canary.69

3 years ago

0.4.43

3 years ago

0.4.44

3 years ago

1.0.0-canary.57

3 years ago

1.0.0-canary.58

3 years ago

1.0.0-canary.59

3 years ago

1.0.0-canary.53

3 years ago

1.0.0-canary.54

3 years ago

1.0.0-canary.55

3 years ago

1.0.0-canary.56

3 years ago

1.0.0-canary.50

3 years ago

1.0.0-canary.51

3 years ago

1.0.0-canary.52

3 years ago

0.4.42

3 years ago

0.4.40

3 years ago

0.4.41

3 years ago

0.4.39

3 years ago

0.4.37

3 years ago

0.4.38

3 years ago

0.4.35

3 years ago

0.4.36

3 years ago

0.4.33

3 years ago

0.4.34

3 years ago

1.0.0-canary.8

3 years ago

1.0.0-canary.9

3 years ago

1.0.0-canary.6

3 years ago

1.0.0-canary.7

3 years ago

1.0.0-canary.0

3 years ago

1.0.0-canary.1

3 years ago

1.0.0-canary.4

3 years ago

1.0.0-canary.5

3 years ago

1.0.0-canary.2

3 years ago

1.0.0-canary.3

3 years ago

1.0.0-canary.17

3 years ago

1.0.0-canary.18

3 years ago

1.0.0-canary.19

3 years ago

1.0.0-canary.13

3 years ago

1.0.0-canary.14

3 years ago

1.0.0-canary.15

3 years ago

1.0.0-canary.16

3 years ago

1.0.0-canary.20

3 years ago

1.0.0-canary.21

3 years ago

1.0.0-canary.22

3 years ago

1.0.0-canary.23

3 years ago

1.0.0-canary.10

3 years ago

1.0.0-canary.11

3 years ago

1.0.0-canary.12

3 years ago

1.0.0-canary.39

3 years ago

1.0.0-canary.35

3 years ago

1.0.0-canary.36

3 years ago

1.0.0-canary.37

3 years ago

1.0.0-canary.38

3 years ago

1.0.0-canary.42

3 years ago

1.0.0-canary.43

3 years ago

1.0.0-canary.44

3 years ago

1.0.0-canary.45

3 years ago

1.0.0-canary.40

3 years ago

1.0.0-canary.41

3 years ago

1.0.0-canary.28

3 years ago

1.0.0-canary.29

3 years ago

1.0.0-canary.24

3 years ago

1.0.0-canary.25

3 years ago

1.0.0-canary.26

3 years ago

1.0.0-canary.27

3 years ago

1.0.0-canary.31

3 years ago

1.0.0-canary.32

3 years ago

1.0.0-canary.33

3 years ago

1.0.0-canary.34

3 years ago

1.0.0-canary.30

3 years ago

1.0.0-canary.46

3 years ago

1.0.0-canary.47

3 years ago

1.0.0-canary.48

3 years ago

1.0.0-canary.49

3 years ago

0.4.31

3 years ago

0.4.32

3 years ago

0.4.30

3 years ago

0.4.28

3 years ago

0.4.29

3 years ago

0.4.26

3 years ago

0.4.27

3 years ago

0.4.24

3 years ago

0.4.25

3 years ago

0.4.30-canary.0

3 years ago

0.4.30-canary.1

3 years ago

0.4.27-canary.0

3 years ago

0.4.20

3 years ago

0.4.21

3 years ago

0.4.22

3 years ago

0.4.23

3 years ago

0.4.19

3 years ago

0.4.17

3 years ago

0.4.18

3 years ago

0.4.15

3 years ago

0.4.16

3 years ago

0.4.14

3 years ago

0.4.10

3 years ago

0.4.13

3 years ago

0.4.11

3 years ago

0.4.12

3 years ago

0.4.9-canary.2

3 years ago

0.4.9-canary.1

3 years ago

0.4.9-canary.0

3 years ago

0.4.9

3 years ago

0.4.8

3 years ago

0.4.11-canary.0

3 years ago

0.4.11-canary.1

3 years ago

0.4.11-canary.2

3 years ago

0.3.27

3 years ago

0.3.26

3 years ago

0.3.21-canary.0

3 years ago

0.3.21-canary.1

3 years ago

0.4.8-canary.0

3 years ago

0.4.1-canary.0

3 years ago

0.4.0-canary.33

3 years ago

0.4.0-canary.32

3 years ago

0.4.0-canary.31

3 years ago

0.4.0-canary.30

3 years ago

0.4.0-canary.24

3 years ago

0.4.0-canary.23

3 years ago

0.4.0-canary.22

3 years ago

0.4.0-canary.21

3 years ago

0.4.0-canary.28

3 years ago

0.4.0-canary.27

3 years ago

0.4.0-canary.26

3 years ago

0.4.0-canary.25

3 years ago

0.3.23-canary.0

3 years ago

0.4.0-canary.29

3 years ago

0.4.0-canary.3

3 years ago

0.4.0-canary.4

3 years ago

0.4.0-canary.1

3 years ago

0.4.0-canary.2

3 years ago

0.4.0-canary.7

3 years ago

0.4.0-canary.8

3 years ago

0.4.0-canary.5

3 years ago

0.4.0-canary.6

3 years ago

0.4.0-canary.9

3 years ago

0.4.0-canary.20

3 years ago

0.4.0-canary.13

3 years ago

0.4.0-canary.12

3 years ago

0.4.0-canary.11

3 years ago

0.4.0-canary.10

3 years ago

0.4.0-canary.17

3 years ago

0.4.0-canary.16

3 years ago

0.4.0-canary.15

3 years ago

0.4.0-canary.14

3 years ago

0.4.0-canary.19

3 years ago

0.4.0-canary.18

3 years ago

0.4.0-canary.0

3 years ago

0.4.5

3 years ago

0.4.4

3 years ago

0.4.7

3 years ago

0.4.6

3 years ago

0.4.1

3 years ago

0.4.0

3 years ago

0.3.17-canary.1

3 years ago

0.4.3

3 years ago

0.3.17-canary.2

3 years ago

0.4.2

3 years ago

0.3.20

3 years ago

0.3.25

3 years ago

0.3.24

3 years ago

0.3.23

3 years ago

0.3.22

3 years ago

0.3.21

3 years ago

0.3.19

3 years ago

0.3.18

3 years ago

0.3.17

3 years ago

0.3.12-canary.1

3 years ago

0.3.12-canary.0

3 years ago

0.3.6-canary.1

4 years ago

0.3.6-canary.0

4 years ago

0.2.19

4 years ago

0.2.18

4 years ago

0.3.5-canary.1

4 years ago

0.3.10-canary.0

4 years ago

0.3.5-canary.0

4 years ago

0.3.0

4 years ago

0.3.6

4 years ago

0.3.5

4 years ago

0.3.8

4 years ago

0.3.7

4 years ago

0.3.2

4 years ago

0.3.1

4 years ago

0.3.4

4 years ago

0.3.3

4 years ago

0.3.8-canary.0

4 years ago

0.3.8-canary.1

4 years ago

0.3.8-canary.2

4 years ago

0.3.8-canary.3

4 years ago

0.3.2-canary.0

4 years ago

0.3.9-canary.0

4 years ago

0.3.17-canary.0

3 years ago

0.3.16-canary.3

3 years ago

0.3.16-canary.0

3 years ago

0.3.16-canary.2

3 years ago

0.3.16-canary.1

3 years ago

0.2.19-canary.0

4 years ago

0.2.19-canary.1

4 years ago

0.2.19-canary.2

4 years ago

0.2.19-canary.3

4 years ago

0.3.9

4 years ago

0.3.16

3 years ago

0.3.15

3 years ago

0.3.14

3 years ago

0.3.12

3 years ago

0.3.11

3 years ago

0.3.10

3 years ago

0.3.0-canary.3

4 years ago

0.3.0-canary.2

4 years ago

0.3.0-canary.1

4 years ago

0.3.0-canary.0

4 years ago

0.2.17

4 years ago

0.2.16

4 years ago

0.2.15

4 years ago

0.2.14

4 years ago

0.2.13

4 years ago

0.2.12

4 years ago

0.2.11

4 years ago

0.2.10

4 years ago

0.2.12-canary.2

4 years ago

0.2.12-canary.0

4 years ago

0.2.12-canary.1

4 years ago

0.2.9

4 years ago

0.2.3-canary.0

4 years ago

0.1.69-canary.0

4 years ago

0.1.69-canary.1

4 years ago

0.1.69-canary.2

4 years ago

0.1.68-canary.0

4 years ago

0.1.67

4 years ago

0.1.68

4 years ago

0.2.1

4 years ago

0.2.0

4 years ago

0.2.7

4 years ago

0.2.6

4 years ago

0.2.8

4 years ago

0.2.3

4 years ago

0.2.2

4 years ago

0.2.5

4 years ago

0.2.4

4 years ago

0.1.66

4 years ago

0.1.66-canary.1

4 years ago

0.1.66-canary.2

4 years ago

0.1.66-canary.3

4 years ago

0.1.66-canary.0

4 years ago

0.1.64

4 years ago

0.1.65

4 years ago

0.1.64-canary.3

4 years ago

0.1.64-canary.2

4 years ago

0.1.64-canary.1

4 years ago

0.1.64-canary.0

4 years ago

0.1.63

4 years ago

0.1.63-canary.2

4 years ago

0.1.63-canary.3

4 years ago

0.1.63-canary.4

4 years ago

0.1.63-canary.0

4 years ago

0.1.63-canary.1

4 years ago

0.1.56

4 years ago

0.1.57

4 years ago

0.1.59

4 years ago

0.1.60

4 years ago

0.1.61

4 years ago

0.1.62

4 years ago

0.1.52

4 years ago

0.1.53

4 years ago

0.1.54

4 years ago

0.1.55

4 years ago

0.1.55-canary.4

4 years ago

0.1.55-canary.2

4 years ago

0.1.55-canary.3

4 years ago

0.1.55-canary.0

4 years ago

0.1.55-canary.1

4 years ago

0.1.50

4 years ago

0.1.51

4 years ago

0.1.49

4 years ago

0.1.41

4 years ago

0.1.42

4 years ago

0.1.43

4 years ago

0.1.44

4 years ago

0.1.45

4 years ago

0.1.46

4 years ago

0.1.47

4 years ago

0.1.48

4 years ago

0.1.38

4 years ago

0.1.39

4 years ago

0.1.47-canary.0

4 years ago

0.1.37

4 years ago

0.1.30

4 years ago

0.1.31

4 years ago

0.1.32

4 years ago

0.1.33

4 years ago

0.1.34

4 years ago

0.1.35

4 years ago

0.1.36

4 years ago

0.1.27

4 years ago

0.1.28

4 years ago

0.1.29

4 years ago

0.1.20

4 years ago

0.1.21

4 years ago

0.1.22

4 years ago

0.1.23

4 years ago

0.1.24

4 years ago

0.1.25

4 years ago

0.1.26

4 years ago

0.1.19

4 years ago

0.1.10

4 years ago

0.1.11

4 years ago

0.1.12

4 years ago

0.1.13

4 years ago

0.1.14

4 years ago

0.1.15

4 years ago

0.1.9

4 years ago

0.1.16

4 years ago

0.1.17

4 years ago

0.1.18

4 years ago

0.1.8

4 years ago

0.1.7

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.6-canary.1

4 years ago

0.0.0-beta.43

4 years ago

0.1.0

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.0.0-beta.40

4 years ago

0.0.0-beta.42

4 years ago

0.0.0-beta.41

4 years ago

0.0.0-beta.39

4 years ago

0.0.0-beta.38

4 years ago

0.0.0-beta.37

4 years ago

0.0.0-beta.36

4 years ago

0.0.0-beta.33

4 years ago

0.0.0-beta.35

4 years ago

0.0.0-beta.34

4 years ago

0.0.0-beta.32

4 years ago

0.0.0-beta.26

4 years ago

0.0.0-beta.25

4 years ago

0.0.0-beta.28

4 years ago

0.0.0-beta.27

4 years ago

0.0.0-beta.29

4 years ago

0.0.0-beta.24

4 years ago

0.0.0-beta.23

4 years ago

0.0.0-beta.31

4 years ago

0.0.0-beta.30

4 years ago

0.0.0-beta.15

4 years ago

0.0.0-beta.14

4 years ago

0.0.0-beta.17

4 years ago

0.0.0-beta.16

4 years ago

0.0.0-beta.19

4 years ago

0.0.0-beta.18

4 years ago

0.0.0-beta.20

4 years ago

0.0.0-beta.22

4 years ago

0.0.0-beta.21

4 years ago

0.0.0-beta.13

4 years ago

0.0.0-beta.12

4 years ago

0.0.0-beta10

4 years ago

0.0.0-beta11

4 years ago

0.0.0-beta9

4 years ago

0.0.0-beta8

4 years ago

0.0.0-beta7

4 years ago

0.0.0-beta6

4 years ago

0.0.0-beta5

4 years ago

0.0.0-beta4

4 years ago

0.0.0-beta3

4 years ago

0.0.0-beta2

4 years ago

0.0.0-beta1

4 years ago