@netless/window-manager 0.4.0-canary.12 → 0.4.0-canary.13
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/dist/App/MagixEvent/index.d.ts +2 -1
- package/dist/index.es.js +1 -1
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/App/MagixEvent/index.ts +3 -1
- package/src/AppContext.ts +5 -2
- package/src/AppProxy.ts +1 -1
- package/src/Utils/RoomHacker.ts +1 -0
package/package.json
CHANGED
@@ -50,13 +50,15 @@ export type MagixEventHandler<
|
|
50
50
|
TEvent extends MagixEventTypes<TPayloads> = MagixEventTypes<TPayloads>
|
51
51
|
> = (message: MagixEventMessage<TPayloads, TEvent>) => void;
|
52
52
|
|
53
|
+
export type MagixEventListenerDisposer = () => void
|
54
|
+
|
53
55
|
export type MagixEventAddListener<TPayloads = any> = <
|
54
56
|
TEvent extends MagixEventTypes<TPayloads> = MagixEventTypes<TPayloads>
|
55
57
|
>(
|
56
58
|
event: TEvent,
|
57
59
|
handler: MagixEventHandler<TPayloads, TEvent>,
|
58
60
|
options?: MagixEventListenerOptions | undefined
|
59
|
-
) =>
|
61
|
+
) => MagixEventListenerDisposer;
|
60
62
|
|
61
63
|
export type MagixEventRemoveListener<TPayloads = any> = <
|
62
64
|
TEvent extends MagixEventTypes<TPayloads> = MagixEventTypes<TPayloads>
|
package/src/AppContext.ts
CHANGED
@@ -8,7 +8,7 @@ import {
|
|
8
8
|
toJS
|
9
9
|
} from 'white-web-sdk';
|
10
10
|
import { BoxNotCreatedError } from './Utils/error';
|
11
|
-
import type { Room, SceneDefinition, View } from "white-web-sdk";
|
11
|
+
import type { Room, SceneDefinition, View, EventListener as WhiteEventListener } from "white-web-sdk";
|
12
12
|
import type { ReadonlyTeleBox } from "@netless/telebox-insider";
|
13
13
|
import type Emittery from "emittery";
|
14
14
|
import type { BoxManager } from "./BoxManager";
|
@@ -158,7 +158,10 @@ export class AppContext<TAttributes = any, TMagixEventPayloads = any, TAppOption
|
|
158
158
|
public dispatchMagixEvent: MagixEventDispatcher<TMagixEventPayloads> = (this.manager.displayer as Room).dispatchMagixEvent.bind(this.manager.displayer)
|
159
159
|
|
160
160
|
/** Listen to events from others clients (and self messages). */
|
161
|
-
public addMagixEventListener: MagixEventAddListener<TMagixEventPayloads> =
|
161
|
+
public addMagixEventListener: MagixEventAddListener<TMagixEventPayloads> = (event, handler, options) => {
|
162
|
+
this.manager.displayer.addMagixEventListener(event, handler as WhiteEventListener, options);
|
163
|
+
return () => this.manager.displayer.removeMagixEventListener(event, handler as WhiteEventListener);
|
164
|
+
}
|
162
165
|
|
163
166
|
/** Remove a Magix event listener. */
|
164
167
|
public removeMagixEventListener = this.manager.displayer.removeMagixEventListener.bind(this.manager.displayer) as MagixEventRemoveListener<TMagixEventPayloads>
|
package/src/AppProxy.ts
CHANGED
@@ -327,7 +327,7 @@ export class AppProxy extends Base {
|
|
327
327
|
});
|
328
328
|
this.manager.refresher?.add(`${appId}-fullPath`, () => {
|
329
329
|
return autorun(() => {
|
330
|
-
const fullPath = this.appAttributes
|
330
|
+
const fullPath = this.appAttributes?.fullPath;
|
331
331
|
this.setFocusScenePathHandler(fullPath);
|
332
332
|
});
|
333
333
|
});
|
package/src/Utils/RoomHacker.ts
CHANGED
@@ -51,6 +51,7 @@ export const replaceRoomFunction = (room: Room, manager: WindowManager) => {
|
|
51
51
|
room.setMemberState = (...args) => manager.mainView.setMemberState(...args);
|
52
52
|
room.redo = () => manager.mainView.redo();
|
53
53
|
room.undo = () => manager.mainView.undo();
|
54
|
+
room.cleanCurrentScene = () => manager.mainView.cleanCurrentScene();
|
54
55
|
}
|
55
56
|
|
56
57
|
};
|