@ndscnj/roomkit-web-vue3 25.12.2415 → 25.12.2418
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/RoomFooter/{voteControl.vue.d.ts → VoteControl/MoreControlH5.vue.d.ts} +2 -2
- package/es/components/RoomFooter/VoteControl/MoreControlH5.vue.mjs +7 -0
- package/es/components/RoomFooter/VoteControl/MoreControlH5.vue2.mjs +105 -0
- package/es/components/RoomFooter/VoteControl/MoreControlPC.vue.d.ts +2 -0
- package/es/components/RoomFooter/VoteControl/MoreControlPC.vue.mjs +49 -0
- package/es/components/RoomFooter/VoteControl/MoreControlPC.vue2.mjs +4 -0
- package/es/components/RoomFooter/VoteControl/index.d.ts +6 -0
- package/es/components/RoomFooter/VoteControl/index.mjs +7 -0
- package/es/components/RoomFooter/VoteControl/useMoreControlHooks.mjs +22 -0
- package/es/components/RoomFooter/index/indexPC.vue.mjs +1 -1
- package/es/components/RoomFooter/index/indexPC.vue2.mjs +4 -4
- package/es/components/RoomSidebar/indexPC.vue.d.ts +10 -1
- package/es/components/RoomSidebar/indexPC.vue.mjs +8 -3
- package/es/components/RoomVote/indexPC.vue.mjs +9 -2
- package/es/conference.vue.mjs +1 -1
- package/es/conference.vue2.mjs +6 -1
- package/es/index.mjs +60 -32
- package/lib/components/Chat/index/indexPC.vue.js +1 -1
- package/lib/components/ManageMember/MemberItem/indexPC.vue.js +1 -1
- package/lib/components/ManageMember/indexPC.vue.js +1 -1
- package/lib/components/RoomFooter/{voteControl.vue.d.ts → VoteControl/MoreControlH5.vue.d.ts} +2 -2
- package/lib/components/RoomFooter/VoteControl/MoreControlH5.vue.js +7 -0
- package/lib/components/RoomFooter/VoteControl/MoreControlH5.vue2.js +105 -0
- package/lib/components/RoomFooter/VoteControl/MoreControlPC.vue.d.ts +2 -0
- package/lib/components/RoomFooter/VoteControl/MoreControlPC.vue.js +49 -0
- package/lib/components/RoomFooter/VoteControl/MoreControlPC.vue2.js +4 -0
- package/lib/components/RoomFooter/VoteControl/index.d.ts +6 -0
- package/lib/components/RoomFooter/VoteControl/index.js +7 -0
- package/lib/components/RoomFooter/VoteControl/useMoreControlHooks.js +22 -0
- package/lib/components/RoomFooter/index/indexPC.vue.js +2 -2
- package/lib/components/RoomFooter/index/indexPC.vue2.js +6 -6
- package/lib/components/RoomInvite/indexPC.vue.js +1 -1
- package/lib/components/RoomMore/indexPC.vue.js +1 -1
- package/lib/components/RoomSidebar/indexPC.vue.d.ts +10 -1
- package/lib/components/RoomSidebar/indexPC.vue.js +7 -2
- package/lib/components/RoomVote/indexPC.vue.js +9 -2
- package/lib/conference.vue.js +1 -1
- package/lib/conference.vue2.js +6 -1
- package/lib/index.js +60 -32
- package/package.json +1 -1
- package/src/TUIRoom/assets/imgs/vote-icon.png +0 -0
- package/src/TUIRoom/components/RoomFooter/VoteControl/MoreControlH5.vue +122 -0
- package/src/TUIRoom/components/RoomFooter/VoteControl/MoreControlPC.vue +31 -0
- package/src/TUIRoom/components/RoomFooter/VoteControl/index.ts +8 -0
- package/src/TUIRoom/components/RoomFooter/VoteControl/useMoreControlHooks.ts +23 -0
- package/src/TUIRoom/components/RoomFooter/index/indexPC.vue +1 -1
- package/src/TUIRoom/components/RoomFooter/voteControl.vue +6 -0
- package/src/TUIRoom/components/RoomSidebar/indexPC.vue +5 -1
- package/src/TUIRoom/components/RoomVote/indexPC.vue +1 -26
- package/src/TUIRoom/conference.vue +5 -1
- package/es/components/RoomFooter/voteControl.vue.mjs +0 -7
- package/es/components/RoomFooter/voteControl.vue2.mjs +0 -48
- package/es/components/RoomVote/indexPC.vue2.mjs +0 -52
- package/lib/components/RoomFooter/voteControl.vue.js +0 -7
- package/lib/components/RoomFooter/voteControl.vue2.js +0 -48
- package/lib/components/RoomVote/indexPC.vue2.js +0 -52
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<div v-if="moreControlConfig.visible" class="more-control-container">
|
|
4
|
+
<icon-button
|
|
5
|
+
v-tap="showMore"
|
|
6
|
+
:is-active="sidebarName === 'more'"
|
|
7
|
+
:title="t('More')"
|
|
8
|
+
>
|
|
9
|
+
<IconExtension size="24" />
|
|
10
|
+
</icon-button>
|
|
11
|
+
</div>
|
|
12
|
+
<div v-if="showMoreContent" ref="moreContentRef" class="show-more-content">
|
|
13
|
+
<div class="control-compent">
|
|
14
|
+
<chat-control
|
|
15
|
+
v-if="roomStore.isSpeakAfterTakingSeatMode"
|
|
16
|
+
@click="handleControlClick('chatControl')"
|
|
17
|
+
/>
|
|
18
|
+
<contact-control @click="handleControlClick('contactControl')" />
|
|
19
|
+
<invite-control
|
|
20
|
+
@show-overlay="handleShowOverlay"
|
|
21
|
+
@click="handleControlClick('inviteControl')"
|
|
22
|
+
/>
|
|
23
|
+
</div>
|
|
24
|
+
<div v-tap="handleCancelControl" class="close">{{ t('Cancel') }}</div>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
</template>
|
|
28
|
+
<script setup lang="ts">
|
|
29
|
+
import { ref, onMounted, onUnmounted, defineEmits } from 'vue';
|
|
30
|
+
import { IconExtension } from '@tencentcloud/uikit-base-component-vue3';
|
|
31
|
+
import IconButton from '../../common/base/IconButton.vue';
|
|
32
|
+
import userMoreControl from './useMoreControlHooks';
|
|
33
|
+
import ChatControl from '../ChatControl.vue';
|
|
34
|
+
import InviteControl from '../InviteControl.vue';
|
|
35
|
+
import ContactControl from '../ContactControl.vue';
|
|
36
|
+
import { useRoomStore } from '../../../stores/room';
|
|
37
|
+
import bus from '../../../hooks/useMitt';
|
|
38
|
+
import vTap from '../../../directives/vTap';
|
|
39
|
+
import { roomService } from '../../../services';
|
|
40
|
+
|
|
41
|
+
const moreControlConfig = roomService.getComponentConfig('MoreControl');
|
|
42
|
+
const showMoreContent = ref(false);
|
|
43
|
+
const moreContentRef = ref();
|
|
44
|
+
|
|
45
|
+
const { t, sidebarName } = userMoreControl();
|
|
46
|
+
const roomStore = useRoomStore();
|
|
47
|
+
const emit = defineEmits(['show-overlay']);
|
|
48
|
+
function showMore() {
|
|
49
|
+
showMoreContent.value = true;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function handleCancelControl() {
|
|
53
|
+
showMoreContent.value = false;
|
|
54
|
+
}
|
|
55
|
+
function handleControlClick(name: string) {
|
|
56
|
+
bus.emit('experience-communication', name);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function handleShowOverlay(data: { name: string; visible: boolean }) {
|
|
60
|
+
showMoreContent.value = false;
|
|
61
|
+
emit('show-overlay', data);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
function handleDocumentClick(event: MouseEvent) {
|
|
65
|
+
if (showMoreContent.value && !moreContentRef.value.contains(event.target)) {
|
|
66
|
+
showMoreContent.value = false;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
onMounted(() => {
|
|
71
|
+
document?.addEventListener('click', handleDocumentClick, true);
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
onUnmounted(() => {
|
|
75
|
+
document?.removeEventListener('click', handleDocumentClick, true);
|
|
76
|
+
});
|
|
77
|
+
</script>
|
|
78
|
+
<style lang="scss" scoped>
|
|
79
|
+
.show-more-content {
|
|
80
|
+
position: absolute;
|
|
81
|
+
bottom: 15px;
|
|
82
|
+
left: 5%;
|
|
83
|
+
width: 90%;
|
|
84
|
+
height: 17vh;
|
|
85
|
+
padding: 10px;
|
|
86
|
+
border-radius: 13px;
|
|
87
|
+
animation-name: popup;
|
|
88
|
+
animation-duration: 200ms;
|
|
89
|
+
background-color: var(--bg-color-operate);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
@keyframes popup {
|
|
93
|
+
from {
|
|
94
|
+
bottom: 0;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
to {
|
|
98
|
+
bottom: 15px;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.control-compent {
|
|
103
|
+
display: flex;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.close {
|
|
107
|
+
position: relative;
|
|
108
|
+
top: 10%;
|
|
109
|
+
display: flex;
|
|
110
|
+
align-items: center;
|
|
111
|
+
justify-content: center;
|
|
112
|
+
width: 100%;
|
|
113
|
+
padding: 10px;
|
|
114
|
+
font-style: normal;
|
|
115
|
+
font-weight: 400;
|
|
116
|
+
line-height: 24px;
|
|
117
|
+
text-align: center;
|
|
118
|
+
border-radius: 8px;
|
|
119
|
+
color: var(--text-color-primary);
|
|
120
|
+
background-color: var(--button-color-secondary-default);
|
|
121
|
+
}
|
|
122
|
+
</style>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div v-if="moreControlConfig.visible" class="more-control-container">
|
|
3
|
+
<icon-button
|
|
4
|
+
:is-active="sidebarName === 'vote'"
|
|
5
|
+
:title="t('Vote')"
|
|
6
|
+
@click-icon="toggleMoreSidebar"
|
|
7
|
+
>
|
|
8
|
+
<IconMore size="24" />
|
|
9
|
+
</icon-button>
|
|
10
|
+
</div>
|
|
11
|
+
</template>
|
|
12
|
+
<script setup lang="ts">
|
|
13
|
+
import { IconMore } from '@tencentcloud/uikit-base-component-vue3';
|
|
14
|
+
import IconButton from '../../common/base/IconButton.vue';
|
|
15
|
+
import userMoreControl from './useMoreControlHooks';
|
|
16
|
+
import { roomService } from '../../../services';
|
|
17
|
+
|
|
18
|
+
const moreControlConfig = roomService.getComponentConfig('MoreControl');
|
|
19
|
+
const { t, basicStore, sidebarName } = userMoreControl();
|
|
20
|
+
|
|
21
|
+
function toggleMoreSidebar() {
|
|
22
|
+
if (basicStore.setSidebarOpenStatus && basicStore.sidebarName === 'vote') {
|
|
23
|
+
basicStore.setSidebarOpenStatus(false);
|
|
24
|
+
basicStore.setSidebarName('');
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
basicStore.setSidebarOpenStatus(true);
|
|
28
|
+
basicStore.setSidebarName('vote');
|
|
29
|
+
}
|
|
30
|
+
</script>
|
|
31
|
+
<style lang="scss" scoped></style>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { computed } from 'vue';
|
|
2
|
+
import { useBasicStore } from '../../../stores/basic';
|
|
3
|
+
import { storeToRefs } from 'pinia';
|
|
4
|
+
import { useI18n } from '../../../locales';
|
|
5
|
+
import { ICON_NAME } from '../../../constants/icon';
|
|
6
|
+
|
|
7
|
+
export default function useControl() {
|
|
8
|
+
const { t } = useI18n();
|
|
9
|
+
|
|
10
|
+
const basicStore = useBasicStore();
|
|
11
|
+
const { sidebarName } = storeToRefs(basicStore);
|
|
12
|
+
|
|
13
|
+
const iconName = computed(() =>
|
|
14
|
+
sidebarName.value === 'vote' ? ICON_NAME.MoreActive : ICON_NAME.More
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
return {
|
|
18
|
+
t,
|
|
19
|
+
basicStore,
|
|
20
|
+
iconName,
|
|
21
|
+
sidebarName,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
@@ -103,7 +103,7 @@ import VirtualBackground from '../VirtualBackground.vue';
|
|
|
103
103
|
import AIControl from '../AIControl.vue';
|
|
104
104
|
import BasicBeauty from '../BasicBeauty.vue';
|
|
105
105
|
import bus from '../../../hooks/useMitt';
|
|
106
|
-
import voteControl from '../
|
|
106
|
+
import voteControl from '../VoteControl';
|
|
107
107
|
import useRoomFooter from './useRoomFooterHooks';
|
|
108
108
|
import { isElectron } from '../../../utils/environment';
|
|
109
109
|
const { roomStore, isMaster, isAdmin, isAudience } = useRoomFooter();
|
|
@@ -7,6 +7,9 @@
|
|
|
7
7
|
>
|
|
8
8
|
<IconAIIcon size="24" />
|
|
9
9
|
</icon-button>
|
|
10
|
+
<div class="contact-container" v-if="showToolBox">
|
|
11
|
+
<slot name="content"></slot>
|
|
12
|
+
</div>
|
|
10
13
|
</div>
|
|
11
14
|
</template>
|
|
12
15
|
|
|
@@ -32,6 +35,9 @@ function toggleToolBox() {
|
|
|
32
35
|
visible: showToolBox.value,
|
|
33
36
|
});
|
|
34
37
|
}
|
|
38
|
+
function handleOnCloseContact() {
|
|
39
|
+
showToolBox.value = false;
|
|
40
|
+
}
|
|
35
41
|
</script>
|
|
36
42
|
|
|
37
43
|
<style lang="scss" scoped>
|
|
@@ -8,7 +8,11 @@
|
|
|
8
8
|
:size="400"
|
|
9
9
|
>
|
|
10
10
|
<chat v-if="sidebarName == 'chat'" />
|
|
11
|
-
<room-vote v-if="sidebarName == 'vote'"
|
|
11
|
+
<room-vote v-if="sidebarName == 'vote'" >
|
|
12
|
+
<template #content>
|
|
13
|
+
<slot name="content"></slot>
|
|
14
|
+
</template>
|
|
15
|
+
</room-vote>
|
|
12
16
|
<room-more v-if="sidebarName == 'more'" />
|
|
13
17
|
<manage-member v-if="sidebarName == 'manage-member'" />
|
|
14
18
|
<AITranscription v-if="sidebarName == 'aiTranscription'" />
|
|
@@ -1,35 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="more-container">
|
|
3
|
-
<
|
|
4
|
-
<IconEmail class="email-icon" />
|
|
5
|
-
<div class="more-notice">
|
|
6
|
-
{{ t('Vote') }}
|
|
7
|
-
</div>
|
|
8
|
-
</div>
|
|
9
|
-
<div v-if="isZH" class="more-item">
|
|
10
|
-
<div class="item-title">{{ t('Join our product discussion group') }}</div>
|
|
11
|
-
<TUIButton @click="handleClick">{{ t('Join now') }}</TUIButton>
|
|
12
|
-
</div>
|
|
13
|
-
<div class="more-item">
|
|
14
|
-
<div class="item-title">{{ t('Our email address') }}</div>
|
|
15
|
-
<div class="more-content">{{ email }}</div>
|
|
16
|
-
<IconCopy class="copy-icon" @click="onCopy(email)" />
|
|
17
|
-
</div>
|
|
18
|
-
<div class="more-item">
|
|
19
|
-
<slot name="content"></slot>
|
|
20
|
-
</div>
|
|
3
|
+
<slot name="content"></slot>
|
|
21
4
|
</div>
|
|
22
5
|
</template>
|
|
23
6
|
|
|
24
7
|
<script setup lang="ts">
|
|
25
|
-
import {
|
|
26
|
-
TUIButton,
|
|
27
|
-
IconCopy,
|
|
28
|
-
IconEmail,
|
|
29
|
-
} from '@tencentcloud/uikit-base-component-vue3';
|
|
30
|
-
import useRoomMoreControl from './useRoomMoreHooks';
|
|
31
|
-
|
|
32
|
-
const { t, onCopy, handleClick, email, isZH } = useRoomMoreControl();
|
|
33
8
|
</script>
|
|
34
9
|
|
|
35
10
|
<style lang="scss" scoped>
|
|
@@ -22,7 +22,11 @@
|
|
|
22
22
|
<slot name="content"></slot>
|
|
23
23
|
</template>
|
|
24
24
|
</room-footer>
|
|
25
|
-
<room-sidebar
|
|
25
|
+
<room-sidebar>
|
|
26
|
+
<template #content>
|
|
27
|
+
<slot name="content"></slot>
|
|
28
|
+
</template>
|
|
29
|
+
</room-sidebar>
|
|
26
30
|
<room-setting />
|
|
27
31
|
<room-overlay />
|
|
28
32
|
<RoomInviteOverlay v-if="overlayMap.RoomInviteOverlay.visible" />
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import _sfc_main from "./voteControl.vue2.mjs";
|
|
2
|
-
/* empty css */
|
|
3
|
-
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const voteControl = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-18efb8e7"]]);
|
|
5
|
-
export {
|
|
6
|
-
voteControl as default
|
|
7
|
-
};
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { defineComponent, computed, ref, createElementBlock, openBlock, createVNode, unref, withCtx } from "vue";
|
|
2
|
-
import "../../services/main.mjs";
|
|
3
|
-
import { roomService } from "../../services/roomService.mjs";
|
|
4
|
-
import { useI18n } from "../../locales/index.mjs";
|
|
5
|
-
import "@tencentcloud/tuiroom-engine-js";
|
|
6
|
-
import "../../utils/environment.mjs";
|
|
7
|
-
import "mitt";
|
|
8
|
-
import "../../services/manager/roomActionManager.mjs";
|
|
9
|
-
import "@tencentcloud/tui-core";
|
|
10
|
-
import IconButton from "../common/base/IconButton.vue.mjs";
|
|
11
|
-
import { IconAIIcon } from "@tencentcloud/uikit-base-component-vue3";
|
|
12
|
-
const _hoisted_1 = { class: "vote-control-container" };
|
|
13
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
14
|
-
__name: "voteControl",
|
|
15
|
-
emits: ["on-vote"],
|
|
16
|
-
setup(__props, { emit: __emit }) {
|
|
17
|
-
const { basicStore } = roomService;
|
|
18
|
-
const sidebarName = computed(() => basicStore.sidebarName);
|
|
19
|
-
const { t } = useI18n();
|
|
20
|
-
const showToolBox = ref(false);
|
|
21
|
-
const emit = __emit;
|
|
22
|
-
function toggleToolBox() {
|
|
23
|
-
console.log(showToolBox.value, "0000");
|
|
24
|
-
showToolBox.value = !showToolBox.value;
|
|
25
|
-
emit("on-vote", {
|
|
26
|
-
name: "onVote",
|
|
27
|
-
visible: showToolBox.value
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
return (_ctx, _cache) => {
|
|
31
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
32
|
-
createVNode(IconButton, {
|
|
33
|
-
"is-active": sidebarName.value === "vote",
|
|
34
|
-
title: unref(t)("Vote"),
|
|
35
|
-
onClickIcon: toggleToolBox
|
|
36
|
-
}, {
|
|
37
|
-
default: withCtx(() => [
|
|
38
|
-
createVNode(unref(IconAIIcon), { size: "24" })
|
|
39
|
-
]),
|
|
40
|
-
_: 1
|
|
41
|
-
}, 8, ["is-active", "title"])
|
|
42
|
-
]);
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
export {
|
|
47
|
-
_sfc_main as default
|
|
48
|
-
};
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { defineComponent, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, unref, toDisplayString, withCtx, createTextVNode, renderSlot } from "vue";
|
|
2
|
-
import { IconEmail, TUIButton, IconCopy } from "@tencentcloud/uikit-base-component-vue3";
|
|
3
|
-
import useRoomMoreHooks from "./useRoomMoreHooks.mjs";
|
|
4
|
-
const _hoisted_1 = { class: "more-container" };
|
|
5
|
-
const _hoisted_2 = { class: "more-title" };
|
|
6
|
-
const _hoisted_3 = { class: "more-notice" };
|
|
7
|
-
const _hoisted_4 = {
|
|
8
|
-
key: 0,
|
|
9
|
-
class: "more-item"
|
|
10
|
-
};
|
|
11
|
-
const _hoisted_5 = { class: "item-title" };
|
|
12
|
-
const _hoisted_6 = { class: "more-item" };
|
|
13
|
-
const _hoisted_7 = { class: "item-title" };
|
|
14
|
-
const _hoisted_8 = { class: "more-content" };
|
|
15
|
-
const _hoisted_9 = { class: "more-item" };
|
|
16
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
17
|
-
__name: "indexPC",
|
|
18
|
-
setup(__props) {
|
|
19
|
-
const { t, onCopy, handleClick, email, isZH } = useRoomMoreHooks();
|
|
20
|
-
return (_ctx, _cache) => {
|
|
21
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
22
|
-
createElementVNode("div", _hoisted_2, [
|
|
23
|
-
createVNode(unref(IconEmail), { class: "email-icon" }),
|
|
24
|
-
createElementVNode("div", _hoisted_3, toDisplayString(unref(t)("Vote")), 1)
|
|
25
|
-
]),
|
|
26
|
-
unref(isZH) ? (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
27
|
-
createElementVNode("div", _hoisted_5, toDisplayString(unref(t)("Join our product discussion group")), 1),
|
|
28
|
-
createVNode(unref(TUIButton), { onClick: unref(handleClick) }, {
|
|
29
|
-
default: withCtx(() => [
|
|
30
|
-
createTextVNode(toDisplayString(unref(t)("Join now")), 1)
|
|
31
|
-
]),
|
|
32
|
-
_: 1
|
|
33
|
-
}, 8, ["onClick"])
|
|
34
|
-
])) : createCommentVNode("", true),
|
|
35
|
-
createElementVNode("div", _hoisted_6, [
|
|
36
|
-
createElementVNode("div", _hoisted_7, toDisplayString(unref(t)("Our email address")), 1),
|
|
37
|
-
createElementVNode("div", _hoisted_8, toDisplayString(unref(email)), 1),
|
|
38
|
-
createVNode(unref(IconCopy), {
|
|
39
|
-
class: "copy-icon",
|
|
40
|
-
onClick: _cache[0] || (_cache[0] = ($event) => unref(onCopy)(unref(email)))
|
|
41
|
-
})
|
|
42
|
-
]),
|
|
43
|
-
createElementVNode("div", _hoisted_9, [
|
|
44
|
-
renderSlot(_ctx.$slots, "content", {}, void 0, true)
|
|
45
|
-
])
|
|
46
|
-
]);
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
export {
|
|
51
|
-
_sfc_main as default
|
|
52
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
-
const voteControl_vue_vue_type_script_setup_true_lang = require("./voteControl.vue2.js");
|
|
4
|
-
;/* empty css */
|
|
5
|
-
const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.js");
|
|
6
|
-
const voteControl = /* @__PURE__ */ _pluginVue_exportHelper.default(voteControl_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-18efb8e7"]]);
|
|
7
|
-
exports.default = voteControl;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
-
const Vue = require("vue");
|
|
4
|
-
require("../../services/main.js");
|
|
5
|
-
const roomService = require("../../services/roomService.js");
|
|
6
|
-
const index = require("../../locales/index.js");
|
|
7
|
-
require("@tencentcloud/tuiroom-engine-js");
|
|
8
|
-
require("../../utils/environment.js");
|
|
9
|
-
require("mitt");
|
|
10
|
-
require("../../services/manager/roomActionManager.js");
|
|
11
|
-
require("@tencentcloud/tui-core");
|
|
12
|
-
const IconButton = require("../common/base/IconButton.vue.js");
|
|
13
|
-
const uikitBaseComponentVue3 = require("@tencentcloud/uikit-base-component-vue3");
|
|
14
|
-
const _hoisted_1 = { class: "vote-control-container" };
|
|
15
|
-
const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
16
|
-
__name: "voteControl",
|
|
17
|
-
emits: ["on-vote"],
|
|
18
|
-
setup(__props, { emit: __emit }) {
|
|
19
|
-
const { basicStore } = roomService.roomService;
|
|
20
|
-
const sidebarName = Vue.computed(() => basicStore.sidebarName);
|
|
21
|
-
const { t } = index.useI18n();
|
|
22
|
-
const showToolBox = Vue.ref(false);
|
|
23
|
-
const emit = __emit;
|
|
24
|
-
function toggleToolBox() {
|
|
25
|
-
console.log(showToolBox.value, "0000");
|
|
26
|
-
showToolBox.value = !showToolBox.value;
|
|
27
|
-
emit("on-vote", {
|
|
28
|
-
name: "onVote",
|
|
29
|
-
visible: showToolBox.value
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
return (_ctx, _cache) => {
|
|
33
|
-
return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
|
|
34
|
-
Vue.createVNode(IconButton.default, {
|
|
35
|
-
"is-active": sidebarName.value === "vote",
|
|
36
|
-
title: Vue.unref(t)("Vote"),
|
|
37
|
-
onClickIcon: toggleToolBox
|
|
38
|
-
}, {
|
|
39
|
-
default: Vue.withCtx(() => [
|
|
40
|
-
Vue.createVNode(Vue.unref(uikitBaseComponentVue3.IconAIIcon), { size: "24" })
|
|
41
|
-
]),
|
|
42
|
-
_: 1
|
|
43
|
-
}, 8, ["is-active", "title"])
|
|
44
|
-
]);
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
exports.default = _sfc_main;
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
-
const Vue = require("vue");
|
|
4
|
-
const uikitBaseComponentVue3 = require("@tencentcloud/uikit-base-component-vue3");
|
|
5
|
-
const useRoomMoreHooks = require("./useRoomMoreHooks.js");
|
|
6
|
-
const _hoisted_1 = { class: "more-container" };
|
|
7
|
-
const _hoisted_2 = { class: "more-title" };
|
|
8
|
-
const _hoisted_3 = { class: "more-notice" };
|
|
9
|
-
const _hoisted_4 = {
|
|
10
|
-
key: 0,
|
|
11
|
-
class: "more-item"
|
|
12
|
-
};
|
|
13
|
-
const _hoisted_5 = { class: "item-title" };
|
|
14
|
-
const _hoisted_6 = { class: "more-item" };
|
|
15
|
-
const _hoisted_7 = { class: "item-title" };
|
|
16
|
-
const _hoisted_8 = { class: "more-content" };
|
|
17
|
-
const _hoisted_9 = { class: "more-item" };
|
|
18
|
-
const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
19
|
-
__name: "indexPC",
|
|
20
|
-
setup(__props) {
|
|
21
|
-
const { t, onCopy, handleClick, email, isZH } = useRoomMoreHooks.default();
|
|
22
|
-
return (_ctx, _cache) => {
|
|
23
|
-
return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
|
|
24
|
-
Vue.createElementVNode("div", _hoisted_2, [
|
|
25
|
-
Vue.createVNode(Vue.unref(uikitBaseComponentVue3.IconEmail), { class: "email-icon" }),
|
|
26
|
-
Vue.createElementVNode("div", _hoisted_3, Vue.toDisplayString(Vue.unref(t)("Vote")), 1)
|
|
27
|
-
]),
|
|
28
|
-
Vue.unref(isZH) ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_4, [
|
|
29
|
-
Vue.createElementVNode("div", _hoisted_5, Vue.toDisplayString(Vue.unref(t)("Join our product discussion group")), 1),
|
|
30
|
-
Vue.createVNode(Vue.unref(uikitBaseComponentVue3.TUIButton), { onClick: Vue.unref(handleClick) }, {
|
|
31
|
-
default: Vue.withCtx(() => [
|
|
32
|
-
Vue.createTextVNode(Vue.toDisplayString(Vue.unref(t)("Join now")), 1)
|
|
33
|
-
]),
|
|
34
|
-
_: 1
|
|
35
|
-
}, 8, ["onClick"])
|
|
36
|
-
])) : Vue.createCommentVNode("", true),
|
|
37
|
-
Vue.createElementVNode("div", _hoisted_6, [
|
|
38
|
-
Vue.createElementVNode("div", _hoisted_7, Vue.toDisplayString(Vue.unref(t)("Our email address")), 1),
|
|
39
|
-
Vue.createElementVNode("div", _hoisted_8, Vue.toDisplayString(Vue.unref(email)), 1),
|
|
40
|
-
Vue.createVNode(Vue.unref(uikitBaseComponentVue3.IconCopy), {
|
|
41
|
-
class: "copy-icon",
|
|
42
|
-
onClick: _cache[0] || (_cache[0] = ($event) => Vue.unref(onCopy)(Vue.unref(email)))
|
|
43
|
-
})
|
|
44
|
-
]),
|
|
45
|
-
Vue.createElementVNode("div", _hoisted_9, [
|
|
46
|
-
Vue.renderSlot(_ctx.$slots, "content", {}, void 0, true)
|
|
47
|
-
])
|
|
48
|
-
]);
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
exports.default = _sfc_main;
|