UNPKG

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,

86 lines (85 loc) 4.42 kB
import { defineComponent, resolveComponent, openBlock, createElementBlock, withDirectives, createVNode, unref, createBlock, createCommentVNode } from "vue"; import "../../common/base/IconButton.vue2.mjs"; /* empty css */ import "../../../utils/environment.mjs"; /* empty css */ import "../../../stores/room.mjs"; import "pinia"; /* empty css */ import "../../../hooks/useZIndex.mjs"; import "../../../services/main.mjs"; import "../../../services/roomService.mjs"; import "../../../locales/index.mjs"; import "@tencentcloud/tuiroom-engine-js"; import "mitt"; import "../../../services/manager/roomActionManager.mjs"; import "@tencentcloud/tui-core"; /* empty css */ import vTap from "../../../directives/vTap.mjs"; /* empty css */ /* empty css */ /* empty css */ /* empty css */ import "../../../core/hooks/useAudioDeviceState/index.mjs"; /* empty css */ /* empty css */ import "@tencentcloud/uikit-base-component-vue3"; import { MediaSettingDisplayMode } from "../../../core/type/MediaDeviceSetting.mjs"; /* empty css */ import "../../../stores/basic.mjs"; /* empty css */ /* empty css */ /* empty css */ import "../../../hooks/useRoomEngine.mjs"; import VideoSetting from "../../../core/components/VideoSetting/index.vue.mjs"; import "../../../core/hooks/useVideoDeviceState/index.mjs"; /* empty css */ import _sfc_main$1 from "../ManageMemberControl.vue.mjs"; import _sfc_main$2 from "../ChatControl.vue.mjs"; import _sfc_main$3 from "../ManageStageControl.vue.mjs"; import MemberApplyControl from "../ApplyControl/MemberApplyControl.vue2.mjs"; import bus from "../../../hooks/useMitt.mjs"; import useRoomFooter from "./useRoomFooterHooks.mjs"; const _hoisted_1 = { class: "footer-container" }; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "indexH5", emits: ["show-overlay", "click", "show-info"], setup(__props, { emit: __emit }) { const { roomStore, isMaster, isAdmin, isAudience } = useRoomFooter(); function handleControlClick(name) { bus.emit("experience-communication", name); } return (_ctx, _cache) => { const _component_audio_control = resolveComponent("audio-control"); return openBlock(), createElementBlock("div", _hoisted_1, [ withDirectives(createVNode(_sfc_main$1, null, null, 512), [ [unref(vTap), () => handleControlClick("manageMemberControl")] ]), !unref(isAudience) || unref(isAdmin) ? withDirectives((openBlock(), createBlock(_component_audio_control, { key: 0, "display-mode": unref(MediaSettingDisplayMode).Icon }, null, 8, ["display-mode"])), [ [unref(vTap), () => handleControlClick("audioControl")] ]) : createCommentVNode("", true), !unref(isAudience) || unref(isAdmin) ? withDirectives((openBlock(), createBlock(unref(VideoSetting), { key: 1, "display-mode": unref(MediaSettingDisplayMode).Icon }, null, 8, ["display-mode"])), [ [unref(vTap), () => handleControlClick("videoControl")] ]) : createCommentVNode("", true), withDirectives(createVNode(_sfc_main$2, null, null, 512), [ [unref(vTap), () => handleControlClick("chatControl")] ]), unref(roomStore).isSpeakAfterTakingSeatMode && (unref(isMaster) || unref(isAdmin)) ? withDirectives((openBlock(), createBlock(_sfc_main$3, { key: 2 }, null, 512)), [ [unref(vTap), () => handleControlClick("MasterApplyControl")] ]) : createCommentVNode("", true), unref(roomStore).isSpeakAfterTakingSeatMode && !unref(isMaster) ? withDirectives((openBlock(), createBlock(MemberApplyControl, { key: 3 }, null, 512)), [ [unref(vTap), () => handleControlClick("MemberApplyControl")] ]) : createCommentVNode("", true) ]); }; } }); export { _sfc_main as default };