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.59 kB
JavaScript
"use strict";
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
const Vue = require("vue");
const useRoomInfoHooks = require("./useRoomInfoHooks.js");
const SvgIcon = require("../../common/base/SvgIcon.vue.js");
const CopyIcon = require("../../common/icons/CopyIcon.vue.js");
const RoomTime = require("../../common/RoomTime.vue2.js");
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__ */ Vue.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
} = useRoomInfoHooks.default();
__expose({
toggleShowRoomInfoStatus
});
const emit = __emit;
Vue.watch(isShowRoomInfo, () => {
emit("show-room-info", isShowRoomInfo.value);
});
const handleCopy = () => {
emit("copy-room-link");
};
return (_ctx, _cache) => {
return Vue.unref(isShowRoomInfoTitle) ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
Vue.createElementVNode("div", {
class: "title-container",
onClick: _cache[0] || (_cache[0] = //@ts-ignore
(...args) => Vue.unref(toggleShowRoomInfoStatus) && Vue.unref(toggleShowRoomInfoStatus)(...args))
}, [
Vue.createElementVNode("div", _hoisted_2, [
Vue.createElementVNode("span", _hoisted_3, Vue.toDisplayString(Vue.unref(conferenceTitle)), 1)
]),
Vue.createVNode(RoomTime.default, { class: "text" })
]),
Vue.unref(isShowRoomInfo) ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_4, [
Vue.createElementVNode("div", _hoisted_5, [
Vue.createElementVNode("div", _hoisted_6, [
Vue.createElementVNode("span", _hoisted_7, Vue.toDisplayString(Vue.unref(conferenceTitle)), 1),
Vue.createElementVNode("span", {
class: "cancel",
onClick: _cache[1] || (_cache[1] = //@ts-ignore
(...args) => Vue.unref(handleCloseRoomInfo) && Vue.unref(handleCloseRoomInfo)(...args))
}, Vue.toDisplayString(Vue.unref(t)("Cancel")), 1)
]),
(Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, null, Vue.renderList(Vue.unref(roomInfoTabList), (item) => {
return Vue.openBlock(), Vue.createElementBlock("div", {
key: item.id
}, [
item.visible ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_8, [
Vue.createElementVNode("span", _hoisted_9, Vue.toDisplayString(Vue.unref(t)(item.title)), 1),
Vue.createElementVNode("span", _hoisted_10, Vue.toDisplayString(item.content), 1),
item.isShowCopyIcon && item.visible ? (Vue.openBlock(), Vue.createElementBlock("div", {
key: 0,
class: "copy-container",
onClick: handleCopy
}, [
Vue.createVNode(SvgIcon.default, {
class: "copy",
icon: CopyIcon.default
})
])) : Vue.createCommentVNode("", true)
])) : Vue.createCommentVNode("", true)
]);
}), 128)),
!Vue.unref(isWeChat) ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_11, [
Vue.createElementVNode("span", null, Vue.toDisplayString(Vue.unref(t)(
"You can share the room number or link to invite more people to join the room."
)), 1)
])) : Vue.createCommentVNode("", true)
])
])) : Vue.createCommentVNode("", true)
])) : Vue.createCommentVNode("", true);
};
}
});
exports.default = _sfc_main;