@tencentcloud/roomkit-electron-vue3 2.3.3 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/Chat/ChatEditor/index.vue.mjs +1 -1
- package/es/components/Chat/ChatEditor/index.vue2.mjs +4 -4
- package/es/components/Chat/ChatEditor/useChatEditor.d.ts +1 -2
- package/es/components/Chat/ChatEditor/useChatEditor.mjs +4 -12
- package/es/components/ManageMember/MemberControl/index.vue.mjs +1 -1
- package/es/components/ManageMember/MemberControl/index.vue2.mjs +5 -4
- package/es/components/ManageMember/MemberControl/useMemberControlHooks.mjs +35 -12
- package/es/components/ManageMember/useIndexHooks.mjs +2 -1
- package/es/components/RoomFooter/ApplyControl/MemberApplyControl.vue.mjs +1 -1
- package/es/components/RoomFooter/ApplyControl/MemberApplyControl.vue2.mjs +2 -2
- package/es/components/RoomFooter/EndControl/useEndControlHooks.mjs +1 -1
- package/es/components/RoomFooter/VirtualBackground.vue.mjs +1 -1
- package/es/components/RoomFooter/VirtualBackground.vue2.mjs +87 -27
- package/es/components/RoomFooter/index/index.vue.mjs +1 -1
- package/es/components/RoomFooter/index/index.vue2.mjs +0 -2
- package/es/components/RoomHeader/RoomInfo/useRoomInfoHooks.mjs +2 -2
- package/es/components/RoomHeader/index/LayoutControl.vue.mjs +1 -1
- package/es/components/RoomHeader/index/LayoutControl.vue2.mjs +1 -3
- package/es/components/RoomHeader/index/NetworkInfo.vue.mjs +1 -1
- package/es/components/RoomHeader/index/NetworkInfo.vue2.mjs +0 -2
- package/es/components/common/base/MessageBox/index.mjs +3 -1
- package/es/conference.d.ts +1 -1
- package/es/conference.mjs +9 -0
- package/es/conference.vue.mjs +1 -1
- package/es/conference.vue2.mjs +1 -14
- package/es/constants/room.d.ts +3 -1
- package/es/extension/RoomMessageCard/RoomMessageCard.vue.mjs +1 -1
- package/es/extension/RoomMessageCard/RoomMessageCard.vue2.mjs +2 -2
- package/es/extension/chatExtension.mjs +4 -2
- package/es/hooks/useDeviceManager.d.ts +3 -1
- package/es/hooks/useMasterApplyControl.mjs +16 -10
- package/es/hooks/useRoomEngine.d.ts +3 -1
- package/es/index.d.ts +3 -2
- package/es/index.mjs +1519 -1456
- package/es/locales/en-US.d.ts +9 -9
- package/es/locales/en-US.mjs +10 -10
- package/es/locales/zh-CN.d.ts +11 -11
- package/es/locales/zh-CN.mjs +12 -12
- package/es/services/function/virtualBackground.d.ts +2 -0
- package/es/services/function/virtualBackground.mjs +19 -9
- package/es/services/function/waterMark.mjs +3 -0
- package/es/services/manager/componentManager.mjs +1 -1
- package/es/services/manager/roomActionManager.mjs +1 -1
- package/es/services/roomService.d.ts +3 -4
- package/es/services/roomService.mjs +2 -26
- package/es/stores/chat.mjs +3 -3
- package/es/stores/room.d.ts +1 -1
- package/es/stores/room.mjs +11 -10
- package/lib/components/Chat/ChatEditor/index.vue.js +1 -1
- package/lib/components/Chat/ChatEditor/index.vue2.js +4 -4
- package/lib/components/Chat/ChatEditor/useChatEditor.d.ts +1 -2
- package/lib/components/Chat/ChatEditor/useChatEditor.js +3 -11
- package/lib/components/ManageMember/MemberControl/index.vue.js +1 -1
- package/lib/components/ManageMember/MemberControl/index.vue2.js +4 -3
- package/lib/components/ManageMember/MemberControl/useMemberControlHooks.js +35 -12
- package/lib/components/ManageMember/useIndexHooks.js +2 -1
- package/lib/components/RoomFooter/ApplyControl/MemberApplyControl.vue.js +1 -1
- package/lib/components/RoomFooter/ApplyControl/MemberApplyControl.vue2.js +2 -2
- package/lib/components/RoomFooter/EndControl/useEndControlHooks.js +1 -1
- package/lib/components/RoomFooter/VirtualBackground.vue.js +1 -1
- package/lib/components/RoomFooter/VirtualBackground.vue2.js +86 -26
- package/lib/components/RoomFooter/index/index.vue.js +1 -1
- package/lib/components/RoomFooter/index/index.vue2.js +0 -2
- package/lib/components/RoomHeader/RoomInfo/useRoomInfoHooks.js +2 -2
- package/lib/components/RoomHeader/index/LayoutControl.vue.js +1 -1
- package/lib/components/RoomHeader/index/LayoutControl.vue2.js +1 -3
- package/lib/components/RoomHeader/index/NetworkInfo.vue.js +1 -1
- package/lib/components/RoomHeader/index/NetworkInfo.vue2.js +0 -2
- package/lib/components/common/base/MessageBox/index.js +3 -1
- package/lib/conference.d.ts +1 -1
- package/lib/conference.js +9 -0
- package/lib/conference.vue.js +1 -1
- package/lib/conference.vue2.js +10 -23
- package/lib/constants/room.d.ts +3 -1
- package/lib/extension/RoomMessageCard/RoomMessageCard.vue.js +1 -1
- package/lib/extension/RoomMessageCard/RoomMessageCard.vue2.js +2 -2
- package/lib/extension/chatExtension.js +4 -2
- package/lib/hooks/useDeviceManager.d.ts +3 -1
- package/lib/hooks/useMasterApplyControl.js +16 -10
- package/lib/hooks/useRoomEngine.d.ts +3 -1
- package/lib/index.d.ts +3 -2
- package/lib/index.js +1517 -1454
- package/lib/locales/en-US.d.ts +9 -9
- package/lib/locales/en-US.js +10 -10
- package/lib/locales/zh-CN.d.ts +11 -11
- package/lib/locales/zh-CN.js +12 -12
- package/lib/services/function/virtualBackground.d.ts +2 -0
- package/lib/services/function/virtualBackground.js +19 -9
- package/lib/services/function/waterMark.js +3 -0
- package/lib/services/manager/componentManager.js +1 -1
- package/lib/services/manager/roomActionManager.js +1 -1
- package/lib/services/roomService.d.ts +3 -4
- package/lib/services/roomService.js +2 -26
- package/lib/stores/chat.js +3 -3
- package/lib/stores/room.d.ts +1 -1
- package/lib/stores/room.js +11 -10
- package/package.json +2 -2
- package/src/TUIRoom/assets/style/global.scss +1 -1
- package/src/TUIRoom/components/Chat/ChatEditor/index.vue +4 -4
- package/src/TUIRoom/components/Chat/ChatEditor/useChatEditor.ts +4 -13
- package/src/TUIRoom/components/ManageMember/MemberControl/index.vue +5 -4
- package/src/TUIRoom/components/ManageMember/MemberControl/useMemberControlHooks.ts +36 -13
- package/src/TUIRoom/components/ManageMember/useIndexHooks.ts +3 -2
- package/src/TUIRoom/components/RoomFooter/ApplyControl/MemberApplyControl.vue +2 -2
- package/src/TUIRoom/components/RoomFooter/EndControl/useEndControlHooks.ts +1 -1
- package/src/TUIRoom/components/RoomFooter/VirtualBackground.vue +100 -16
- package/src/TUIRoom/components/RoomFooter/index/index.vue +0 -3
- package/src/TUIRoom/components/RoomHeader/RoomInfo/useRoomInfoHooks.ts +2 -2
- package/src/TUIRoom/components/RoomHeader/index/LayoutControl.vue +0 -2
- package/src/TUIRoom/components/RoomHeader/index/NetworkInfo.vue +0 -2
- package/src/TUIRoom/components/common/base/MessageBox/index.ts +2 -1
- package/src/TUIRoom/conference.vue +8 -13
- package/src/TUIRoom/extension/RoomMessageCard/RoomMessageCard.vue +1 -1
- package/src/TUIRoom/extension/RoomMessageCard/roomMessageCard.scss +3 -0
- package/src/TUIRoom/extension/chatExtension.ts +3 -1
- package/src/TUIRoom/hooks/useMasterApplyControl.ts +15 -10
- package/src/TUIRoom/index.ts +12 -3
- package/src/TUIRoom/locales/en-US.ts +9 -9
- package/src/TUIRoom/locales/zh-CN.ts +11 -11
- package/src/TUIRoom/services/function/virtualBackground.ts +21 -9
- package/src/TUIRoom/services/function/waterMark.ts +6 -0
- package/src/TUIRoom/services/manager/componentManager.ts +1 -1
- package/src/TUIRoom/services/manager/roomActionManager.ts +1 -1
- package/src/TUIRoom/services/roomService.ts +0 -29
- package/src/TUIRoom/stores/chat.ts +5 -6
- package/src/TUIRoom/stores/room.ts +13 -12
- package/es/utils/aegis/config.mjs +0 -12
- package/es/utils/aegis/index.mjs +0 -63
- package/lib/utils/aegis/config.js +0 -12
- package/lib/utils/aegis/index.js +0 -63
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./index.vue2.mjs";
|
|
2
2
|
import "./index.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const ChatEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const ChatEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-417e38fe"]]);
|
|
5
5
|
export {
|
|
6
6
|
ChatEditor as default
|
|
7
7
|
};
|
|
@@ -9,13 +9,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
9
9
|
t,
|
|
10
10
|
editorInputEle,
|
|
11
11
|
sendMsg,
|
|
12
|
-
|
|
12
|
+
isMessageDisabled,
|
|
13
13
|
sendMessage,
|
|
14
14
|
handleChooseEmoji
|
|
15
15
|
} = useChatEditor();
|
|
16
16
|
return (_ctx, _cache) => {
|
|
17
17
|
return openBlock(), createElementBlock("div", {
|
|
18
|
-
class: normalizeClass(["chat-editor", { "disable": unref(
|
|
18
|
+
class: normalizeClass(["chat-editor", { "disable": unref(isMessageDisabled) }])
|
|
19
19
|
}, [
|
|
20
20
|
createVNode(emoji, {
|
|
21
21
|
class: "chat-emoji",
|
|
@@ -25,9 +25,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
25
25
|
ref_key: "editorInputEle",
|
|
26
26
|
ref: editorInputEle,
|
|
27
27
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(sendMsg) ? sendMsg.value = $event : null),
|
|
28
|
-
disabled: unref(
|
|
28
|
+
disabled: unref(isMessageDisabled),
|
|
29
29
|
class: "content-bottom-input",
|
|
30
|
-
placeholder: unref(
|
|
30
|
+
placeholder: unref(isMessageDisabled) ? unref(t)("Muted by the moderator") : unref(t)("Type a message"),
|
|
31
31
|
onKeyup: _cache[1] || (_cache[1] = withKeys(
|
|
32
32
|
//@ts-ignore
|
|
33
33
|
(...args) => unref(sendMessage) && unref(sendMessage)(...args),
|
|
@@ -2,8 +2,7 @@ export default function useChatEditor(): {
|
|
|
2
2
|
t: any;
|
|
3
3
|
editorInputEle: import('vue').Ref<any>;
|
|
4
4
|
sendMsg: import('vue').Ref<string>;
|
|
5
|
-
|
|
6
|
-
cannotSendMessage: import('vue').ComputedRef<boolean>;
|
|
5
|
+
isMessageDisabled: any;
|
|
7
6
|
sendMessage: () => Promise<void>;
|
|
8
7
|
handleChooseEmoji: (emojiName: string) => void;
|
|
9
8
|
isEmojiToolbarVisible: import('vue').Ref<boolean>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ref, watch
|
|
1
|
+
import { ref, watch } from "vue";
|
|
2
2
|
import { storeToRefs } from "pinia";
|
|
3
3
|
import renderMsg from "../../common/base/Message/Message.mjs";
|
|
4
4
|
import { TencentCloudChat } from "@tencentcloud/tuiroom-engine-electron";
|
|
@@ -15,22 +15,15 @@ function useChatEditor() {
|
|
|
15
15
|
const chatStore = useChatStore();
|
|
16
16
|
const roomStore = useRoomStore();
|
|
17
17
|
const { roomId } = storeToRefs(basicStore);
|
|
18
|
-
const {
|
|
19
|
-
const { isMessageDisableForAllUser } = storeToRefs(roomStore);
|
|
18
|
+
const { isMessageDisabled } = storeToRefs(chatStore);
|
|
20
19
|
const editorInputEle = ref();
|
|
21
20
|
const sendMsg = ref("");
|
|
22
21
|
const isEmojiToolbarVisible = ref(false);
|
|
23
|
-
watch(
|
|
22
|
+
watch(isMessageDisabled, (value) => {
|
|
24
23
|
if (value) {
|
|
25
24
|
sendMsg.value = "";
|
|
26
25
|
}
|
|
27
26
|
});
|
|
28
|
-
watch(isMessageDisableForAllUser, (value) => {
|
|
29
|
-
if (value) {
|
|
30
|
-
sendMsg.value = "";
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
const cannotSendMessage = computed(() => Boolean(isMessageDisableByAdmin.value || isMessageDisableForAllUser.value));
|
|
34
27
|
const sendMessage = async () => {
|
|
35
28
|
var _a;
|
|
36
29
|
const result = decodeSendTextMsg(sendMsg.value);
|
|
@@ -78,8 +71,7 @@ function useChatEditor() {
|
|
|
78
71
|
t,
|
|
79
72
|
editorInputEle,
|
|
80
73
|
sendMsg,
|
|
81
|
-
|
|
82
|
-
cannotSendMessage,
|
|
74
|
+
isMessageDisabled,
|
|
83
75
|
sendMessage,
|
|
84
76
|
handleChooseEmoji,
|
|
85
77
|
isEmojiToolbarVisible,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./index.vue2.mjs";
|
|
2
2
|
import "./index.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const MemberControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const MemberControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4309b988"]]);
|
|
5
5
|
export {
|
|
6
6
|
MemberControl as default
|
|
7
7
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, computed, ref, watch, unref, openBlock, createElementBlock, createVNode, withCtx, createTextVNode, toDisplayString, createElementVNode, normalizeClass, withDirectives, Fragment, renderList, vShow, isRef, createCommentVNode } from "vue";
|
|
1
|
+
import { defineComponent, computed, ref, watch, unref, openBlock, createElementBlock, createVNode, withCtx, createTextVNode, toDisplayString, createElementVNode, normalizeClass, withDirectives, Fragment, renderList, vShow, isRef, createCommentVNode, nextTick } from "vue";
|
|
2
2
|
import { useI18n } from "../../../locales/index.mjs";
|
|
3
3
|
import TuiButton from "../../common/base/Button.vue.mjs";
|
|
4
4
|
import Dialog from "../../common/base/Dialog/index.vue.mjs";
|
|
@@ -39,15 +39,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
39
39
|
showMoreControl.value = false;
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
|
-
function toggleClickMoreBtn() {
|
|
42
|
+
async function toggleClickMoreBtn() {
|
|
43
43
|
if (showMoreControl.value) {
|
|
44
44
|
showMoreControl.value = false;
|
|
45
45
|
} else {
|
|
46
|
-
handleDropDownPosition();
|
|
46
|
+
await handleDropDownPosition();
|
|
47
47
|
showMoreControl.value = true;
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
-
function handleDropDownPosition() {
|
|
50
|
+
async function handleDropDownPosition() {
|
|
51
51
|
var _a, _b, _c;
|
|
52
52
|
const { top, bottom } = (_a = moreBtnRef.value) == null ? void 0 : _a.getBoundingClientRect();
|
|
53
53
|
const { top: containerTop, bottom: containerBottom } = (_b = document.getElementById("memberListContainer")) == null ? void 0 : _b.getBoundingClientRect();
|
|
@@ -59,6 +59,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
59
59
|
let dropDownContainerHeight = 0;
|
|
60
60
|
if (!showMoreControl.value) {
|
|
61
61
|
operateListRef.value.style = "display:block;position:absolute;z-index:-1000";
|
|
62
|
+
await nextTick();
|
|
62
63
|
dropDownContainerHeight = operateListRef.value.offsetHeight;
|
|
63
64
|
operateListRef.value.style = "";
|
|
64
65
|
} else {
|
|
@@ -33,7 +33,14 @@ function useMemberControl(props) {
|
|
|
33
33
|
});
|
|
34
34
|
const kickOffDialogContent = computed(() => t("whether to kick sb off the room", { name: props.userInfo.userName || props.userInfo.userId }));
|
|
35
35
|
const transferOwnerTitle = computed(() => t("Transfer the roomOwner to sb", { name: props.userInfo.userName || props.userInfo.userId }));
|
|
36
|
-
const {
|
|
36
|
+
const {
|
|
37
|
+
isFreeSpeakMode,
|
|
38
|
+
isSpeakAfterTakingSeatMode,
|
|
39
|
+
localUser,
|
|
40
|
+
isGeneralUser,
|
|
41
|
+
anchorUserList,
|
|
42
|
+
maxSeatCount
|
|
43
|
+
} = storeToRefs(roomStore);
|
|
37
44
|
const {
|
|
38
45
|
agreeUserOnStage,
|
|
39
46
|
denyUserOnStage,
|
|
@@ -103,19 +110,19 @@ function useMemberControl(props) {
|
|
|
103
110
|
const chatControl = computed(() => ({
|
|
104
111
|
key: "chatControl",
|
|
105
112
|
icon: ChatForbiddenIcon,
|
|
106
|
-
title: props.userInfo.
|
|
113
|
+
title: props.userInfo.isMessageDisabled ? t("Enable chat") : t("Disable chat"),
|
|
107
114
|
func: disableUserChat
|
|
108
115
|
}));
|
|
109
116
|
const transferOwner = computed(() => ({
|
|
110
117
|
key: "transferOwner",
|
|
111
118
|
icon: TransferOwnerIcon,
|
|
112
|
-
title: t("
|
|
119
|
+
title: t("Make host"),
|
|
113
120
|
func: () => handleOpenDialog("transferOwner")
|
|
114
121
|
}));
|
|
115
122
|
const setOrRevokeAdmin = computed(() => ({
|
|
116
123
|
key: "setOrRevokeAdmin",
|
|
117
124
|
icon: props.userInfo.userRole === TUIRole.kAdministrator ? RevokeAdminIcon : SetAdminIcon,
|
|
118
|
-
title: props.userInfo.userRole === TUIRole.kAdministrator ? t("
|
|
125
|
+
title: props.userInfo.userRole === TUIRole.kAdministrator ? t("Remove administrator") : t("Set as administrator"),
|
|
119
126
|
func: handleSetOrRevokeAdmin
|
|
120
127
|
}));
|
|
121
128
|
const kickUser = computed(() => ({
|
|
@@ -143,6 +150,14 @@ function useMemberControl(props) {
|
|
|
143
150
|
if (isInvitingUserToAnchor) {
|
|
144
151
|
cancelInviteUserOnStage(userInfo);
|
|
145
152
|
} else {
|
|
153
|
+
if (anchorUserList.value.length === maxSeatCount.value) {
|
|
154
|
+
renderMsg({
|
|
155
|
+
type: "warning",
|
|
156
|
+
message: `${t("The stage is full")}`,
|
|
157
|
+
duration: MESSAGE_DURATION.NORMAL
|
|
158
|
+
});
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
146
161
|
inviteUserOnStage(userInfo);
|
|
147
162
|
}
|
|
148
163
|
}
|
|
@@ -238,14 +253,22 @@ function useMemberControl(props) {
|
|
|
238
253
|
}
|
|
239
254
|
}
|
|
240
255
|
}
|
|
241
|
-
function disableUserChat(userInfo) {
|
|
256
|
+
async function disableUserChat(userInfo) {
|
|
242
257
|
var _a;
|
|
243
|
-
const
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
258
|
+
const { isMessageDisabled } = userInfo;
|
|
259
|
+
try {
|
|
260
|
+
await ((_a = roomEngine.instance) == null ? void 0 : _a.disableSendingMessageByAdmin({
|
|
261
|
+
userId: userInfo.userId,
|
|
262
|
+
isDisable: !isMessageDisabled
|
|
263
|
+
}));
|
|
264
|
+
roomStore.setMuteUserChat(userInfo.userId, !isMessageDisabled);
|
|
265
|
+
} catch (error) {
|
|
266
|
+
renderMsg({
|
|
267
|
+
type: "error",
|
|
268
|
+
message: t("Failed to disable chat"),
|
|
269
|
+
duration: MESSAGE_DURATION.NORMAL
|
|
270
|
+
});
|
|
271
|
+
}
|
|
249
272
|
}
|
|
250
273
|
async function kickOffUser(userInfo) {
|
|
251
274
|
var _a;
|
|
@@ -271,7 +294,7 @@ function useMemberControl(props) {
|
|
|
271
294
|
} catch (error) {
|
|
272
295
|
renderMsg({
|
|
273
296
|
type: "error",
|
|
274
|
-
message: t("
|
|
297
|
+
message: t("Make host failed, please try again."),
|
|
275
298
|
duration: MESSAGE_DURATION.NORMAL
|
|
276
299
|
});
|
|
277
300
|
}
|
|
@@ -137,7 +137,8 @@ function useIndex() {
|
|
|
137
137
|
}
|
|
138
138
|
const applyToAnchorUserContent = computed(() => {
|
|
139
139
|
var _a, _b;
|
|
140
|
-
const
|
|
140
|
+
const lastIndex = applyToAnchorList.value.length - 1;
|
|
141
|
+
const userName = ((_a = applyToAnchorList.value[lastIndex]) == null ? void 0 : _a.userName) || ((_b = applyToAnchorList.value[lastIndex]) == null ? void 0 : _b.userId);
|
|
141
142
|
if (applyToAnchorList.value.length === 1) {
|
|
142
143
|
return `${userName} ${t("Applying for the stage")}`;
|
|
143
144
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./MemberApplyControl.vue2.mjs";
|
|
2
2
|
import "./MemberApplyControl.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const MemberApplyControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const MemberApplyControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-915fbd92"]]);
|
|
5
5
|
export {
|
|
6
6
|
MemberApplyControl as default
|
|
7
7
|
};
|
|
@@ -107,7 +107,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
107
107
|
renderMsg({ type: "warning", message: t("Application to go on stage was rejected") });
|
|
108
108
|
break;
|
|
109
109
|
case TUIRequestCallbackType.kRequestTimeout:
|
|
110
|
-
renderMsg({ type: "warning", message: t("
|
|
110
|
+
renderMsg({ type: "warning", message: t("The request to go on stage has timed out") });
|
|
111
111
|
break;
|
|
112
112
|
}
|
|
113
113
|
}
|
|
@@ -177,7 +177,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
177
177
|
}));
|
|
178
178
|
} catch (error) {
|
|
179
179
|
if (error.code === TUIErrorCode.ERR_ALL_SEAT_OCCUPIED) {
|
|
180
|
-
renderMsg({ type: "warning", message: t("The
|
|
180
|
+
renderMsg({ type: "warning", message: t("The stage is full, please contact the host") });
|
|
181
181
|
} else {
|
|
182
182
|
logger.error("Failure of a user to accept/reject a roomOwner invitation", error);
|
|
183
183
|
}
|
|
@@ -145,7 +145,7 @@ function useEndControl() {
|
|
|
145
145
|
}
|
|
146
146
|
handleUpdateSeatApplicationList();
|
|
147
147
|
}
|
|
148
|
-
if (chatStore.
|
|
148
|
+
if (chatStore.isMessageDisabled) {
|
|
149
149
|
(_b = roomEngine.instance) == null ? void 0 : _b.disableSendingMessageByAdmin({
|
|
150
150
|
userId,
|
|
151
151
|
isDisable: false
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./VirtualBackground.vue2.mjs";
|
|
2
2
|
import "./VirtualBackground.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const VirtualBackground = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const VirtualBackground = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-46cc60bc"]]);
|
|
5
5
|
export {
|
|
6
6
|
VirtualBackground as default
|
|
7
7
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, ref, unref, openBlock, createElementBlock, createVNode, withCtx, createElementVNode, normalizeClass, toDisplayString,
|
|
1
|
+
import { defineComponent, computed, ref, unref, openBlock, createElementBlock, createVNode, withCtx, createElementVNode, createCommentVNode, normalizeClass, toDisplayString, createTextVNode, nextTick } from "vue";
|
|
2
2
|
import IconButton from "../common/base/IconButton.vue.mjs";
|
|
3
3
|
import VirtualBackgroundIcon from "../common/icons/VirtualBackgroundIcon.vue.mjs";
|
|
4
4
|
import { useI18n } from "../../locales/index.mjs";
|
|
@@ -10,46 +10,75 @@ import "../../services/manager/roomActionManager.mjs";
|
|
|
10
10
|
import Dialog from "../common/base/Dialog/index.vue.mjs";
|
|
11
11
|
import CloseVirtualBackground from "../../assets/imgs/close-virtual-background.png.mjs";
|
|
12
12
|
import BlurredBackground from "../../assets/imgs/blurred-background.png.mjs";
|
|
13
|
-
|
|
13
|
+
import TuiButton from "../common/base/Button.vue.mjs";
|
|
14
14
|
const _hoisted_1 = {
|
|
15
15
|
key: 0,
|
|
16
16
|
class: "virtualBackground-control-container"
|
|
17
17
|
};
|
|
18
|
-
const _hoisted_2 =
|
|
18
|
+
const _hoisted_2 = {
|
|
19
19
|
id: "stream-preview",
|
|
20
20
|
class: "stream-preview"
|
|
21
|
-
}
|
|
22
|
-
const _hoisted_3 = {
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
};
|
|
22
|
+
const _hoisted_3 = {
|
|
23
|
+
key: 0,
|
|
24
|
+
class: "mask"
|
|
25
|
+
};
|
|
26
|
+
const _hoisted_4 = {
|
|
27
|
+
key: 1,
|
|
28
|
+
class: "spinner"
|
|
29
|
+
};
|
|
30
|
+
const _hoisted_5 = { class: "setting" };
|
|
25
31
|
const _hoisted_6 = { class: "setting-item-icon" };
|
|
26
32
|
const _hoisted_7 = ["src"];
|
|
33
|
+
const _hoisted_8 = { class: "setting-item-icon" };
|
|
34
|
+
const _hoisted_9 = ["src"];
|
|
35
|
+
const _hoisted_10 = { class: "footer" };
|
|
27
36
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
28
37
|
__name: "VirtualBackground",
|
|
29
38
|
setup(__props) {
|
|
30
39
|
const { t } = useI18n();
|
|
31
40
|
const componentConfig = roomService.componentManager.getComponentConfig("VirtualBackground");
|
|
32
|
-
const
|
|
41
|
+
const isAllowed = computed(() => roomService.roomStore.localStream.hasVideoStream);
|
|
42
|
+
const appliedBackground = ref("close");
|
|
43
|
+
const selectedBackground = ref("close");
|
|
33
44
|
const isDialogVisible = ref(false);
|
|
45
|
+
const isLoading = ref(false);
|
|
34
46
|
const openSettingPanel = async () => {
|
|
35
47
|
var _a;
|
|
36
48
|
roomService.virtualBackground.initVirtualBackground();
|
|
37
49
|
isDialogVisible.value = true;
|
|
50
|
+
isLoading.value = true;
|
|
38
51
|
await nextTick();
|
|
39
|
-
(_a = roomService.roomEngine.instance) == null ? void 0 : _a.startCameraDeviceTest({ view: "stream-preview" });
|
|
52
|
+
await ((_a = roomService.roomEngine.instance) == null ? void 0 : _a.startCameraDeviceTest({ view: "stream-preview" }));
|
|
53
|
+
await applyVirtualBackground(appliedBackground.value);
|
|
54
|
+
isLoading.value = false;
|
|
40
55
|
};
|
|
41
|
-
const closeSettingPanel = () => {
|
|
56
|
+
const closeSettingPanel = async () => {
|
|
42
57
|
var _a;
|
|
43
58
|
isDialogVisible.value = false;
|
|
44
59
|
(_a = roomService.roomEngine.instance) == null ? void 0 : _a.stopCameraDeviceTest();
|
|
60
|
+
selectedBackground.value = appliedBackground.value;
|
|
45
61
|
};
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
-
|
|
62
|
+
const confirmVirtualBackground = async () => {
|
|
63
|
+
if (!isAllowed.value)
|
|
64
|
+
return;
|
|
65
|
+
appliedBackground.value = selectedBackground.value;
|
|
66
|
+
closeSettingPanel();
|
|
67
|
+
if (selectedBackground.value === "blur") {
|
|
68
|
+
await roomService.virtualBackground.toggleVirtualBackground(true);
|
|
69
|
+
}
|
|
70
|
+
if (selectedBackground.value === "close") {
|
|
71
|
+
await roomService.virtualBackground.toggleVirtualBackground(false);
|
|
72
|
+
}
|
|
49
73
|
};
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
74
|
+
const applyVirtualBackground = async (type) => {
|
|
75
|
+
isLoading.value = true;
|
|
76
|
+
try {
|
|
77
|
+
selectedBackground.value = type;
|
|
78
|
+
await roomService.virtualBackground.toggleTestVirtualBackground(type === "blur");
|
|
79
|
+
} finally {
|
|
80
|
+
isLoading.value = false;
|
|
81
|
+
}
|
|
53
82
|
};
|
|
54
83
|
return (_ctx, _cache) => {
|
|
55
84
|
return unref(componentConfig).visible ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
@@ -64,7 +93,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
64
93
|
}, 8, ["title"]),
|
|
65
94
|
createVNode(Dialog, {
|
|
66
95
|
modelValue: isDialogVisible.value,
|
|
67
|
-
"onUpdate:modelValue": _cache[
|
|
96
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => isDialogVisible.value = $event),
|
|
68
97
|
title: unref(t)("VirtualBackground"),
|
|
69
98
|
width: "600px",
|
|
70
99
|
modal: true,
|
|
@@ -72,33 +101,64 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
72
101
|
onClose: closeSettingPanel
|
|
73
102
|
}, {
|
|
74
103
|
default: withCtx(() => [
|
|
75
|
-
_hoisted_2,
|
|
76
|
-
|
|
104
|
+
createElementVNode("div", _hoisted_2, [
|
|
105
|
+
isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_3)) : createCommentVNode("", true),
|
|
106
|
+
isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_4)) : createCommentVNode("", true)
|
|
107
|
+
]),
|
|
108
|
+
createElementVNode("div", _hoisted_5, [
|
|
77
109
|
createElementVNode("div", {
|
|
78
|
-
class: normalizeClass([
|
|
79
|
-
|
|
110
|
+
class: normalizeClass([
|
|
111
|
+
"setting-item",
|
|
112
|
+
selectedBackground.value === "close" ? "active" : ""
|
|
113
|
+
]),
|
|
114
|
+
onClick: _cache[0] || (_cache[0] = ($event) => applyVirtualBackground("close"))
|
|
80
115
|
}, [
|
|
81
|
-
createElementVNode("i",
|
|
116
|
+
createElementVNode("i", _hoisted_6, [
|
|
82
117
|
createElementVNode("img", {
|
|
83
118
|
src: unref(CloseVirtualBackground),
|
|
84
119
|
alt: "close",
|
|
85
120
|
style: { "width": "32px" }
|
|
86
|
-
}, null, 8,
|
|
121
|
+
}, null, 8, _hoisted_7)
|
|
87
122
|
]),
|
|
88
123
|
createElementVNode("span", null, toDisplayString(unref(t)("Close")), 1)
|
|
89
124
|
], 2),
|
|
90
125
|
createElementVNode("div", {
|
|
91
|
-
class: normalizeClass([
|
|
92
|
-
|
|
126
|
+
class: normalizeClass([
|
|
127
|
+
"setting-item",
|
|
128
|
+
selectedBackground.value === "blur" ? "active" : ""
|
|
129
|
+
]),
|
|
130
|
+
onClick: _cache[1] || (_cache[1] = ($event) => applyVirtualBackground("blur"))
|
|
93
131
|
}, [
|
|
94
|
-
createElementVNode("i",
|
|
132
|
+
createElementVNode("i", _hoisted_8, [
|
|
95
133
|
createElementVNode("img", {
|
|
96
134
|
src: unref(BlurredBackground),
|
|
97
135
|
alt: "blurred"
|
|
98
|
-
}, null, 8,
|
|
136
|
+
}, null, 8, _hoisted_9)
|
|
99
137
|
]),
|
|
100
138
|
createElementVNode("span", null, toDisplayString(unref(t)("BlurredBackground")), 1)
|
|
101
139
|
], 2)
|
|
140
|
+
]),
|
|
141
|
+
createElementVNode("div", _hoisted_10, [
|
|
142
|
+
createVNode(TuiButton, {
|
|
143
|
+
class: "button",
|
|
144
|
+
disabled: !isAllowed.value,
|
|
145
|
+
onClick: confirmVirtualBackground
|
|
146
|
+
}, {
|
|
147
|
+
default: withCtx(() => [
|
|
148
|
+
createTextVNode(toDisplayString(unref(t)("Save")), 1)
|
|
149
|
+
]),
|
|
150
|
+
_: 1
|
|
151
|
+
}, 8, ["disabled"]),
|
|
152
|
+
createVNode(TuiButton, {
|
|
153
|
+
class: "button",
|
|
154
|
+
type: "primary",
|
|
155
|
+
onClick: closeSettingPanel
|
|
156
|
+
}, {
|
|
157
|
+
default: withCtx(() => [
|
|
158
|
+
createTextVNode(toDisplayString(unref(t)("Cancel")), 1)
|
|
159
|
+
]),
|
|
160
|
+
_: 1
|
|
161
|
+
})
|
|
102
162
|
])
|
|
103
163
|
]),
|
|
104
164
|
_: 1
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./index.vue2.mjs";
|
|
2
2
|
import "./index.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const RoomFooter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const RoomFooter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-cc1a7a3e"]]);
|
|
5
5
|
export {
|
|
6
6
|
RoomFooter as default
|
|
7
7
|
};
|
|
@@ -13,7 +13,6 @@ import EndControl from "../EndControl/index.vue.mjs";
|
|
|
13
13
|
import _sfc_main$6 from "../SettingControl.vue.mjs";
|
|
14
14
|
import VirtualBackground from "../VirtualBackground.vue.mjs";
|
|
15
15
|
import bus from "../../../hooks/useMitt.mjs";
|
|
16
|
-
import roomAegis from "../../../utils/aegis/index.mjs";
|
|
17
16
|
import useRoomFooter from "./useRoomFooterHooks.mjs";
|
|
18
17
|
const _hoisted_1 = { class: "footer-container" };
|
|
19
18
|
const _hoisted_2 = { class: "left-container" };
|
|
@@ -29,7 +28,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
29
28
|
isAudience
|
|
30
29
|
} = useRoomFooter();
|
|
31
30
|
function handleControlClick(name) {
|
|
32
|
-
roomAegis.reportEvent({ name, ext1: name });
|
|
33
31
|
bus.emit("experience-communication", name);
|
|
34
32
|
}
|
|
35
33
|
return (_ctx, _cache) => {
|
|
@@ -17,7 +17,7 @@ function useRoomInfo() {
|
|
|
17
17
|
const basicStore = useBasicStore();
|
|
18
18
|
const roomStore = useRoomStore();
|
|
19
19
|
const { roomId, isRoomLinkVisible } = storeToRefs(basicStore);
|
|
20
|
-
const { masterUserId } = storeToRefs(roomStore);
|
|
20
|
+
const { masterUserId, roomName } = storeToRefs(roomStore);
|
|
21
21
|
const { t } = useI18n();
|
|
22
22
|
const isShowRoomInfo = ref(false);
|
|
23
23
|
const roomType = computed(() => roomStore.isFreeSpeakMode ? t("Free Speech Room") : t("On-stage Speaking Room"));
|
|
@@ -25,7 +25,7 @@ function useRoomInfo() {
|
|
|
25
25
|
const roomLinkConfig = roomService.getComponentConfig("RoomLink");
|
|
26
26
|
const masterUserName = computed(() => roomStore.getUserName(masterUserId.value) || masterUserId.value);
|
|
27
27
|
const isShowRoomInfoTitle = computed(() => masterUserName.value);
|
|
28
|
-
const conferenceTitle = computed(() => `${
|
|
28
|
+
const conferenceTitle = computed(() => `${roomName.value}`);
|
|
29
29
|
const roomInfoTabList = computed(() => [
|
|
30
30
|
{ id: 1, title: "Host", content: masterUserName.value, copyLink: "", isShowCopyIcon: false, visible: true },
|
|
31
31
|
{ id: 2, title: "Room Type", content: roomType.value, copyLink: "", isShowCopyIcon: false, visible: true },
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./LayoutControl.vue2.mjs";
|
|
2
2
|
import "./LayoutControl.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const LayoutControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const LayoutControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-7afa85d3"]]);
|
|
5
5
|
export {
|
|
6
6
|
LayoutControl as default
|
|
7
7
|
};
|
|
@@ -3,7 +3,6 @@ import { LAYOUT } from "../../../constants/render.mjs";
|
|
|
3
3
|
import { useBasicStore } from "../../../stores/basic.mjs";
|
|
4
4
|
import { useRoomStore } from "../../../stores/room.mjs";
|
|
5
5
|
import { storeToRefs } from "pinia";
|
|
6
|
-
import roomAegis from "../../../utils/aegis/index.mjs";
|
|
7
6
|
import { useI18n } from "../../../locales/index.mjs";
|
|
8
7
|
import { IconButtonLayout } from "../../../constants/room.mjs";
|
|
9
8
|
import IconButton from "../../common/base/IconButton.vue.mjs";
|
|
@@ -14,7 +13,7 @@ import { roomService } from "../../../services/roomService.mjs";
|
|
|
14
13
|
import "@tencentcloud/tuiroom-engine-electron";
|
|
15
14
|
import "mitt";
|
|
16
15
|
import "../../../services/manager/roomActionManager.mjs";
|
|
17
|
-
const _withScopeId = (n) => (pushScopeId("data-v-
|
|
16
|
+
const _withScopeId = (n) => (pushScopeId("data-v-7afa85d3"), n = n(), popScopeId(), n);
|
|
18
17
|
const _hoisted_1 = {
|
|
19
18
|
key: 0,
|
|
20
19
|
class: "layout-container"
|
|
@@ -46,7 +45,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
46
45
|
const layoutControlConfig = roomService.getComponentConfig("LayoutControl");
|
|
47
46
|
function handleClick(layout2) {
|
|
48
47
|
basicStore.setLayout(layout2);
|
|
49
|
-
roomAegis.reportEvent({ name: "layout", ext1: layout2 });
|
|
50
48
|
}
|
|
51
49
|
function handleClickLayoutIcon() {
|
|
52
50
|
if (isStreamNumberLessThanTwo.value) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./NetworkInfo.vue2.mjs";
|
|
2
2
|
import "./NetworkInfo.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const NetworkInfo = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const NetworkInfo = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4b8a18b9"]]);
|
|
5
5
|
export {
|
|
6
6
|
NetworkInfo as default
|
|
7
7
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { defineComponent, ref, reactive, shallowRef, watchEffect, onUnmounted, withDirectives, openBlock, createElementBlock, createVNode, unref, withCtx, createElementVNode, normalizeClass, toDisplayString, createCommentVNode } from "vue";
|
|
2
2
|
import { useBasicStore } from "../../../stores/basic.mjs";
|
|
3
3
|
import { storeToRefs } from "pinia";
|
|
4
|
-
import roomAegis from "../../../utils/aegis/index.mjs";
|
|
5
4
|
import { useI18n } from "../../../locales/index.mjs";
|
|
6
5
|
import TUIRoomEngine, { TUINetworkQuality, TUIRoomEvents } from "@tencentcloud/tuiroom-engine-electron";
|
|
7
6
|
import useGetRoomEngine from "../../../hooks/useRoomEngine.mjs";
|
|
@@ -65,7 +64,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
65
64
|
});
|
|
66
65
|
function handleClickNetworkIcon() {
|
|
67
66
|
showNetworkInfo.value = !showNetworkInfo.value;
|
|
68
|
-
roomAegis.reportEvent({ name: "networkInfo", ext1: "networkInfo" });
|
|
69
67
|
}
|
|
70
68
|
function handleClickOutSide() {
|
|
71
69
|
if (showNetworkInfo.value) {
|
|
@@ -2,7 +2,9 @@ import { createVNode, render } from "vue";
|
|
|
2
2
|
import TUIMessageBox from "./index.vue.mjs";
|
|
3
3
|
const MessageBox = ({ title, message, callback, confirmButtonText }) => {
|
|
4
4
|
const container = document.createElement("div");
|
|
5
|
-
const fullscreenElement = document.fullscreenElement || document.getElementById("roomContainer") || document.
|
|
5
|
+
const fullscreenElement = document.fullscreenElement || document.getElementById("roomContainer") || document.getElementById("pre-conference-container");
|
|
6
|
+
if (!fullscreenElement)
|
|
7
|
+
return;
|
|
6
8
|
fullscreenElement.appendChild(container);
|
|
7
9
|
const onRemove = () => {
|
|
8
10
|
render(null, container);
|
package/es/conference.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ declare class Conference implements IConference {
|
|
|
55
55
|
tim?: ChatSDK;
|
|
56
56
|
}): Promise<void>;
|
|
57
57
|
logout(): Promise<void>;
|
|
58
|
-
getRoomEngine():
|
|
58
|
+
getRoomEngine(): TUIRoomEngine | null;
|
|
59
59
|
on(eventType: RoomEvent, callback: () => any): void;
|
|
60
60
|
off(eventType: RoomEvent, callback: () => void): void;
|
|
61
61
|
start(roomId: string, params?: StartParams): Promise<void>;
|
package/es/conference.mjs
CHANGED
|
@@ -17,6 +17,14 @@ var RoomEvent = /* @__PURE__ */ ((RoomEvent2) => {
|
|
|
17
17
|
RoomEvent2["USER_LOGOUT"] = "UserLogout";
|
|
18
18
|
return RoomEvent2;
|
|
19
19
|
})(RoomEvent || {});
|
|
20
|
+
var FeatureButton = /* @__PURE__ */ ((FeatureButton2) => {
|
|
21
|
+
FeatureButton2["SwitchTheme"] = "SwitchTheme";
|
|
22
|
+
FeatureButton2["SwitchLayout"] = "LayoutControl";
|
|
23
|
+
FeatureButton2["SwitchLanguage"] = "Language";
|
|
24
|
+
FeatureButton2["FullScreen"] = "FullScreen";
|
|
25
|
+
FeatureButton2["Invitation"] = "InviteControl";
|
|
26
|
+
return FeatureButton2;
|
|
27
|
+
})(FeatureButton || {});
|
|
20
28
|
class Conference {
|
|
21
29
|
login(params) {
|
|
22
30
|
return roomService.initRoomKit(params);
|
|
@@ -76,6 +84,7 @@ class Conference {
|
|
|
76
84
|
}
|
|
77
85
|
const conference = new Conference();
|
|
78
86
|
export {
|
|
87
|
+
FeatureButton,
|
|
79
88
|
RoomEvent,
|
|
80
89
|
conference
|
|
81
90
|
};
|
package/es/conference.vue.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import _sfc_main from "./conference.vue2.mjs";
|
|
|
2
2
|
import "./conference.vue3.mjs";
|
|
3
3
|
import "./conference.vue4.mjs";
|
|
4
4
|
import _export_sfc from "./_virtual/_plugin-vue_export-helper.mjs";
|
|
5
|
-
const ConferenceMainView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
5
|
+
const ConferenceMainView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c315cc3d"]]);
|
|
6
6
|
export {
|
|
7
7
|
ConferenceMainView as default
|
|
8
8
|
};
|