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,

79 lines (78 loc) 3.33 kB
import { defineComponent, createElementBlock, openBlock, createCommentVNode, withDirectives, unref, createElementVNode, withModifiers, createVNode, toDisplayString, normalizeClass, Fragment, renderList, vShow } from "vue"; import { IconArrowUp, IconCopy } from "@tencentcloud/uikit-base-component-vue3"; import useRoomInfo from "./useRoomInfoHooks.mjs"; import vClickOutside from "../../../directives/vClickOutside.mjs"; import RoomTime from "../../common/RoomTime.vue.mjs"; const _hoisted_1 = { class: "conference-container" }; const _hoisted_2 = { key: 0 }; const _hoisted_3 = { class: "text" }; const _hoisted_4 = { key: 1, class: "roomInfo-container" }; const _hoisted_5 = { class: "roomInfo-title" }; const _hoisted_6 = { class: "roomInfo-item" }; const _hoisted_7 = ["onClick"]; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "RoomInfoPC", setup(__props) { const { t, arrowDirection, isShowRoomInfoTitle, conferenceTitle, isShowRoomInfo, roomInfoTabList, toggleShowRoomInfoStatus, handleClickOutsideRoomInfoContainer, onCopy } = useRoomInfo(); return (_ctx, _cache) => { return openBlock(), createElementBlock("div", _hoisted_1, [ unref(isShowRoomInfoTitle) ? (openBlock(), createElementBlock("div", _hoisted_2, [ createElementVNode("div", { class: "title-container", onClick: _cache[0] || (_cache[0] = withModifiers( //@ts-ignore (...args) => unref(toggleShowRoomInfoStatus) && unref(toggleShowRoomInfoStatus)(...args), ["stop"] )) }, [ createElementVNode("span", _hoisted_3, toDisplayString(unref(conferenceTitle)), 1), createVNode(unref(IconArrowUp), { size: "12", class: normalizeClass(["arrow-icon", { "arrow-down-icon": unref(arrowDirection) }]) }, null, 8, ["class"]), createVNode(RoomTime, { class: "room-timing" }) ]) ])) : createCommentVNode("", true), unref(isShowRoomInfo) ? withDirectives((openBlock(), createElementBlock("div", _hoisted_4, [ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(roomInfoTabList), (item) => { return withDirectives((openBlock(), createElementBlock("div", { key: item.id, class: "roomInfo-content" }, [ createElementVNode("span", _hoisted_5, toDisplayString(unref(t)(item.title)), 1), createElementVNode("span", _hoisted_6, toDisplayString(item.content), 1), item.isShowCopyIcon ? (openBlock(), createElementBlock("div", { key: 0, class: "copy-container", onClick: ($event) => unref(onCopy)(item.copyLink) }, [ createVNode(unref(IconCopy)), createElementVNode("span", null, toDisplayString(unref(t)("Copy")), 1) ], 8, _hoisted_7)) : createCommentVNode("", true) ])), [ [vShow, item.visible] ]); }), 128)) ])), [ [unref(vClickOutside), unref(handleClickOutsideRoomInfoContainer)] ]) : createCommentVNode("", true) ]); }; } }); export { _sfc_main as default };