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,

111 lines (110 loc) 4.34 kB
import { defineComponent, watch, unref, openBlock, createElementBlock, createElementVNode, toDisplayString, createVNode, Fragment, renderList, createCommentVNode } from "vue"; import useRoomInfo from "./useRoomInfoHooks.mjs"; import SvgIcon from "../../common/base/SvgIcon.vue.mjs"; import copyIcon from "../../common/icons/CopyIcon.vue.mjs"; import RoomTime from "../../common/RoomTime.vue2.mjs"; const _hoisted_1 = { key: 0, class: "conference-container" }; const _hoisted_2 = { class: "title-text" }; const _hoisted_3 = { class: "text" }; const _hoisted_4 = { key: 0, class: "room-info-container" }; const _hoisted_5 = { class: "room-info-container-main" }; const _hoisted_6 = { class: "room-info-conference-title" }; const _hoisted_7 = { class: "master-header" }; const _hoisted_8 = { key: 0, class: "room-info-content" }; const _hoisted_9 = { class: "room-info-title" }; const _hoisted_10 = { class: "room-info-item" }; const _hoisted_11 = { key: 0, class: "room-info-bottom" }; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "RoomInfoH5", emits: ["show-room-info", "copy-room-link"], setup(__props, { expose: __expose, emit: __emit }) { const { t, isWeChat, arrowDirection, handleCloseRoomInfo, isShowRoomInfo, isShowRoomInfoTitle, conferenceTitle, roomInfoTabList, toggleShowRoomInfoStatus, onCopy } = useRoomInfo(); __expose({ toggleShowRoomInfoStatus }); const emit = __emit; watch(isShowRoomInfo, () => { emit("show-room-info", isShowRoomInfo.value); }); const handleCopy = () => { emit("copy-room-link"); }; return (_ctx, _cache) => { return unref(isShowRoomInfoTitle) ? (openBlock(), createElementBlock("div", _hoisted_1, [ createElementVNode("div", { class: "title-container", onClick: _cache[0] || (_cache[0] = //@ts-ignore (...args) => unref(toggleShowRoomInfoStatus) && unref(toggleShowRoomInfoStatus)(...args)) }, [ createElementVNode("div", _hoisted_2, [ createElementVNode("span", _hoisted_3, toDisplayString(unref(conferenceTitle)), 1) ]), createVNode(RoomTime, { class: "text" }) ]), unref(isShowRoomInfo) ? (openBlock(), createElementBlock("div", _hoisted_4, [ createElementVNode("div", _hoisted_5, [ createElementVNode("div", _hoisted_6, [ createElementVNode("span", _hoisted_7, toDisplayString(unref(conferenceTitle)), 1), createElementVNode("span", { class: "cancel", onClick: _cache[1] || (_cache[1] = //@ts-ignore (...args) => unref(handleCloseRoomInfo) && unref(handleCloseRoomInfo)(...args)) }, toDisplayString(unref(t)("Cancel")), 1) ]), (openBlock(true), createElementBlock(Fragment, null, renderList(unref(roomInfoTabList), (item) => { return openBlock(), createElementBlock("div", { key: item.id }, [ item.visible ? (openBlock(), createElementBlock("div", _hoisted_8, [ createElementVNode("span", _hoisted_9, toDisplayString(unref(t)(item.title)), 1), createElementVNode("span", _hoisted_10, toDisplayString(item.content), 1), item.isShowCopyIcon && item.visible ? (openBlock(), createElementBlock("div", { key: 0, class: "copy-container", onClick: handleCopy }, [ createVNode(SvgIcon, { class: "copy", icon: copyIcon }) ])) : createCommentVNode("", true) ])) : createCommentVNode("", true) ]); }), 128)), !unref(isWeChat) ? (openBlock(), createElementBlock("div", _hoisted_11, [ createElementVNode("span", null, toDisplayString(unref(t)( "You can share the room number or link to invite more people to join the room." )), 1) ])) : createCommentVNode("", true) ]) ])) : createCommentVNode("", true) ])) : createCommentVNode("", true); }; } }); export { _sfc_main as default };