UNPKG

@tencentcloud/roomkit-web-vue3

Version:

<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,

95 lines (94 loc) 3.65 kB
var __defProp = Object.defineProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); import useRoomEngine from "../../hooks/useRoomEngine.mjs"; import { TUIRole, TUIRoomEvents } from "@tencentcloud/tuiroom-engine-js"; const roomEngine = useRoomEngine(); class RoomEventManager { constructor(options) { __publicField(this, "store"); this.store = options.store; this.onRoomNameChanged = this.onRoomNameChanged.bind(this); this.onRoomSeatModeChanged = this.onRoomSeatModeChanged.bind(this); this.onRoomUserCountChanged = this.onRoomUserCountChanged.bind(this); this.onAllUserCameraDisableChanged = this.onAllUserCameraDisableChanged.bind(this); this.onScreenShareForAllUserDisableChanged = this.onScreenShareForAllUserDisableChanged.bind(this); this.onAllUserMicrophoneDisableChanged = this.onAllUserMicrophoneDisableChanged.bind(this); this.onSendMessageForAllUserDisableChanged = this.onSendMessageForAllUserDisableChanged.bind(this); this.onUserInfoChanged = this.onUserInfoChanged.bind(this); this.bindRoomEngineEvents(); } onRoomNameChanged({ roomName }) { this.store.setRoomInfo({ roomName }); } onRoomSeatModeChanged({ seatMode }) { this.store.setRoomInfo({ seatMode }); } onRoomUserCountChanged({ userCount }) { this.store.setRoomInfo({ roomMemberCount: userCount }); } onAllUserCameraDisableChanged({ isDisable }) { this.store.setRoomInfo({ isCameraDisableForAllUser: isDisable }); } onScreenShareForAllUserDisableChanged({ isDisable }) { this.store.setRoomInfo({ isScreenShareDisableForAllUser: isDisable }); } onAllUserMicrophoneDisableChanged({ isDisable }) { this.store.setRoomInfo({ isMicrophoneDisableForAllUser: isDisable }); } onSendMessageForAllUserDisableChanged({ isDisable }) { this.store.setRoomInfo({ isMessageDisableForAllUser: isDisable }); } onUserInfoChanged({ userInfo }) { if (userInfo.userRole === TUIRole.kRoomOwner) { this.store.setRoomInfo({ roomOwner: userInfo.userId, ownerId: userInfo.userId }); } } bindRoomEngineEvents() { var _a, _b, _c, _d, _e, _f, _g, _h; (_a = roomEngine.instance) == null ? void 0 : _a.on( TUIRoomEvents.onRoomNameChanged, this.onRoomNameChanged ); (_b = roomEngine.instance) == null ? void 0 : _b.on( TUIRoomEvents.onRoomSeatModeChanged, this.onRoomSeatModeChanged ); (_c = roomEngine.instance) == null ? void 0 : _c.on( TUIRoomEvents.onRoomUserCountChanged, this.onRoomUserCountChanged ); (_d = roomEngine.instance) == null ? void 0 : _d.on( TUIRoomEvents.onAllUserCameraDisableChanged, this.onAllUserCameraDisableChanged ); (_e = roomEngine.instance) == null ? void 0 : _e.on( TUIRoomEvents.onScreenShareForAllUserDisableChanged, this.onScreenShareForAllUserDisableChanged ); (_f = roomEngine.instance) == null ? void 0 : _f.on( TUIRoomEvents.onAllUserMicrophoneDisableChanged, this.onAllUserMicrophoneDisableChanged ); (_g = roomEngine.instance) == null ? void 0 : _g.on( TUIRoomEvents.onSendMessageForAllUserDisableChanged, this.onSendMessageForAllUserDisableChanged ); (_h = roomEngine.instance) == null ? void 0 : _h.on( TUIRoomEvents.onUserInfoChanged, this.onUserInfoChanged ); } } export { RoomEventManager as default };