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,

63 lines (62 loc) 2.43 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const Vue = require("vue"); const TUIRoomEngine = require("@tencentcloud/tuiroom-engine-js"); const index = require("../../../../locales/index.js"); const uikitBaseComponentVue3 = require("@tencentcloud/uikit-base-component-vue3"); const message = require("../../../../constants/message.js"); require("../../../../services/main.js"); const roomService = require("../../../../services/roomService.js"); require("../../../../utils/environment.js"); require("mitt"); require("../../../../services/manager/roomActionManager.js"); require("@tencentcloud/tui-core"); require("../../../hooks/useAudioDeviceState/index.js"); require("../../../hooks/useVideoDeviceState/index.js"); const index$1 = require("../../../hooks/useUserState/index.js"); const index$2 = require("../../../hooks/useRoomState/index.js"); require("../../../hooks/useFreeBeautyState/index.js"); const Room = require("../../../type/Room.js"); function useIndex() { const { t } = index.useI18n(); const { localUser, userList } = index$1.default(); const isGeneralUser = Vue.computed( () => { var _a; return ((_a = localUser.value) == null ? void 0 : _a.userRole) === TUIRoomEngine.TUIRole.kGeneralUser; } ); const { useRoomActions } = index$2.default(); const [roomAudioAction, roomVideoAction, roomScreenAction] = useRoomActions({ actionList: [ Room.RoomAction.AudioAction, Room.RoomAction.VideoAction, Room.RoomAction.ScreenAction ] }); const moreControlList = Vue.computed(() => [roomScreenAction]); const showMoreControl = Vue.ref(false); function toggleClickMoreBtn() { showMoreControl.value = !showMoreControl.value; } const handleCallAllInvitee = () => { const userIdList = userList.value.filter((item) => !item.isInRoom).map((item) => item.userId); roomService.roomService.conferenceInvitationManager.inviteUsers({ userIdList }); uikitBaseComponentVue3.TUIToast({ type: uikitBaseComponentVue3.TOAST_TYPE.SUCCESS, message: t("Invitation sent, waiting for members to join."), duration: message.MESSAGE_DURATION.NORMAL }); }; return { t, toggleClickMoreBtn, isGeneralUser, showMoreControl, roomAudioAction, roomVideoAction, moreControlList, handleCallAllInvitee }; } exports.default = useIndex;