UNPKG

@tencentcloud/roomkit-electron-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,

64 lines (63 loc) 2.29 kB
"use strict"; 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); Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const environment = require("../../utils/environment.js"); class VirtualBackground { constructor(service) { __publicField(this, "service"); __publicField(this, "virtualBackgroundPluginReady", false); __publicField(this, "handleUnmount", async () => { await this.toggleVirtualBackground(false); await this.toggleTestVirtualBackground(false); }); this.service = service; if (environment.isElectron || environment.isWeChat) return; this.bindEvent(); } get trtcCloud() { var _a, _b; return (_b = (_a = this.service.roomEngine) == null ? void 0 : _a.instance) == null ? void 0 : _b.getTRTCCloud(); } bindEvent() { this.service.lifeCycleManager.on("unmount", this.handleUnmount); } dispose() { this.service.lifeCycleManager.off("unmount", this.handleUnmount); } async initVirtualBackground() { var _a; if (!this.virtualBackgroundPluginReady && ((_a = this.trtcCloud) == null ? void 0 : _a.useVirtualBackground)) { await this.trtcCloud.useVirtualBackground(); this.virtualBackgroundPluginReady = true; } } async toggleVirtualBackground(enabled) { await this.initVirtualBackground(); const { sdkAppId, userId, userSig } = this.service.basicStore; const params = { sdkAppId, userId, userSig, enable: enabled }; await this.trtcCloud.callExperimentalAPI( JSON.stringify({ api: "enableVirtualBackground", params }) ); } async toggleTestVirtualBackground(enabled) { await this.initVirtualBackground(); const { sdkAppId, userId, userSig } = this.service.basicStore; const params = { sdkAppId, userId, userSig, enable: enabled }; await this.trtcCloud.callExperimentalAPI( JSON.stringify({ api: "enableTestVirtualBackground", params }) ); } } exports.VirtualBackground = VirtualBackground;