@tencentcloud/roomkit-electron-vue3 2.7.1 → 2.8.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/ChatKit/components/TUIChat/emoji-config/locales/zh_tw.d.ts +2 -0
- package/es/components/Chat/ChatKit/components/TUIChat/emoji-config/locales/zh_tw.mjs +67 -0
- package/es/components/Chat/ChatKit/components/TUIChat/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/index.vue2.mjs +23 -10
- package/es/components/Chat/ChatKit/components/TUIChat/message-input/message-input-editor.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-input/message-input-editor.vue2.mjs +14 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/emoji-picker/emoji-picker-dialog.vue.d.ts +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/index.vue2.mjs +13 -13
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/index.vue2.mjs +2 -2
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/index.vue2.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/message-revoked.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/read-receipt-panel/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/message-list/read-receipt-panel/index.vue2.mjs +2 -1
- package/es/components/Chat/ChatKit/components/TUIChat/server.d.ts +1 -1
- package/es/components/Chat/ChatKit/components/TUIChat/server.mjs +12 -3
- package/es/components/Chat/ChatKit/components/TUIChat/utils/sendMessage.mjs +2 -1
- package/es/components/Chat/ChatKit/components/common/BottomPopup/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/common/BottomPopup/index.vue2.mjs +2 -2
- package/es/components/Chat/ChatKit/components/common/ImagePreviewer/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/common/Overlay/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/common/Toast/index.vue.d.ts +1 -1
- package/es/components/Chat/ChatKit/components/common/Transfer/index.vue.mjs +1 -1
- package/es/components/Chat/ChatKit/components/common/Transfer/index.vue2.mjs +3 -3
- package/es/components/Chat/ChatKit/locales/en/TUIChat.d.ts +3 -0
- package/es/components/Chat/ChatKit/locales/en/TUIChat.mjs +5 -2
- package/es/components/Chat/ChatKit/locales/en/index.d.ts +3 -0
- package/es/components/Chat/ChatKit/locales/en/message.mjs +2 -2
- package/es/components/Chat/ChatKit/locales/index.d.ts +4 -1083
- package/es/components/Chat/ChatKit/locales/index.mjs +3 -1
- package/es/components/Chat/ChatKit/locales/zh_cn/TUIChat.d.ts +3 -0
- package/es/components/Chat/ChatKit/locales/zh_cn/TUIChat.mjs +4 -1
- package/es/components/Chat/ChatKit/locales/zh_cn/index.d.ts +3 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIChat.d.ts +153 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIChat.mjs +155 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIContact.d.ts +65 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIContact.mjs +67 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIConversation.d.ts +23 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIConversation.mjs +25 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIGroup.d.ts +86 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUIGroup.mjs +88 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUISearch.d.ts +40 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/TUISearch.mjs +42 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/component.d.ts +20 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/component.mjs +22 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/emoji.d.ts +3 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/emoji.mjs +4 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/evaluate.d.ts +10 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/evaluate.mjs +12 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/index.d.ts +513 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/index.mjs +39 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/message.d.ts +61 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/message.mjs +63 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/time.d.ts +36 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/time.mjs +38 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/translate.d.ts +163 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/words.d.ts +13 -0
- package/es/components/Chat/ChatKit/locales/zh_tw/words.mjs +15 -0
- package/es/components/Chat/ChatKit/utils/riseInput.d.ts +1 -0
- package/es/components/Chat/ChatKit/utils/riseInput.mjs +45 -0
- package/es/components/Chat/index/index.vue.mjs +1 -1
- package/es/components/Chat/index/index.vue2.mjs +4 -19
- package/es/components/ManageMember/MemberControl/useMemberControlHooks.d.ts +2 -2
- package/es/components/ManageMember/MemberControl/useMemberControlHooks.mjs +3 -3
- package/es/components/ManageMember/MemberInvite/MemberInvite.vue2.mjs +1 -1
- package/es/components/PreRoom/PasswordDialog.vue.mjs +1 -1
- package/es/components/PreRoom/PasswordDialog.vue2.mjs +21 -12
- package/es/components/RoomContent/StreamContainer/index.vue.d.ts +1 -14
- package/es/components/RoomContent/StreamContainer/index.vue.mjs +1 -1
- package/es/components/RoomContent/StreamContainer/index.vue2.mjs +111 -262
- package/es/components/RoomContent/StreamContainer/useStreamContainerHooks.d.ts +2 -9
- package/es/components/RoomContent/StreamContainer/useStreamContainerHooks.mjs +11 -0
- package/es/components/RoomContent/index.vue.d.ts +1 -14
- package/es/components/RoomContent/index.vue.mjs +1 -1
- package/es/components/RoomContent/index.vue2.mjs +1 -4
- package/es/components/RoomFooter/AIControl.vue.d.ts +1 -5
- package/es/components/RoomFooter/AIControl.vue.mjs +1 -1
- package/es/components/RoomFooter/AIControl.vue2.mjs +5 -8
- package/es/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue2.mjs +1 -1
- package/es/components/RoomFooter/BasicBeauty.vue.mjs +1 -1
- package/es/components/RoomFooter/BasicBeauty.vue2.mjs +6 -3
- package/es/components/RoomFooter/ChatControl.vue.mjs +2 -1
- package/es/components/RoomFooter/EndControl/index.vue.mjs +1 -1
- package/es/components/RoomFooter/EndControl/index.vue2.mjs +4 -6
- package/es/components/RoomFooter/EndControl/useEndControlHooks.mjs +8 -12
- package/es/components/RoomFooter/FullScreenControl.vue.mjs +1 -1
- package/es/components/RoomFooter/InviteControl.vue.mjs +1 -1
- package/es/components/RoomFooter/InviteControl.vue2.mjs +2 -1
- package/es/components/RoomFooter/ManageMemberControl.vue.mjs +1 -1
- package/es/components/RoomFooter/MoreControl/index.vue.mjs +1 -1
- package/es/components/RoomFooter/ScreenShareControl/Index.vue.mjs +1 -1
- package/es/components/RoomFooter/ScreenShareControl/Index.vue2.mjs +3 -3
- package/es/components/RoomFooter/VirtualBackground.vue.mjs +1 -1
- package/es/components/RoomFooter/VirtualBackground.vue2.mjs +5 -2
- package/es/components/RoomFooter/WhiteboardControl.vue.mjs +13 -3
- package/es/components/RoomFooter/index/index.vue.d.ts +1 -5
- package/es/components/RoomFooter/index/index.vue.mjs +1 -1
- package/es/components/RoomFooter/index/index.vue2.mjs +2 -8
- package/es/components/RoomHeader/UserInfo/index.vue.mjs +1 -1
- package/es/components/RoomHeader/UserInfo/index.vue2.mjs +3 -2
- package/es/components/RoomHeader/index/LayoutControl.vue2.mjs +1 -1
- package/es/components/RoomHeader/index/index.vue.d.ts +1 -5
- package/es/components/RoomHeader/index/index.vue.mjs +1 -1
- package/es/components/RoomHeader/index/index.vue2.mjs +0 -15
- package/es/components/RoomHome/RoomControl/index.vue.d.ts +0 -5
- package/es/components/RoomHome/RoomControl/index.vue.mjs +1 -1
- package/es/components/RoomHome/RoomControl/index.vue2.mjs +1 -2
- package/es/components/RoomInvite/InvitationNotification.vue2.mjs +1 -1
- package/es/components/RoomInvite/useRoomInviteHooks.mjs +2 -2
- package/es/components/RoomOverlay/RoomOverlay.vue.mjs +16 -0
- package/es/components/RoomOverlay/RoomOverlay.vue2.mjs +4 -0
- package/es/components/RoomOverlay/useRoomOverlayHooks.d.ts +15 -0
- package/es/components/RoomOverlay/useRoomOverlayHooks.mjs +30 -0
- package/es/components/RoomSidebar/index.vue.mjs +1 -1
- package/es/components/ScheduleConference/InvitePanel.vue.mjs +1 -1
- package/es/components/ScheduleConference/ScheduleConferencePanel/index.vue.mjs +1 -1
- package/es/components/ScheduleConference/ScheduleConferencePanel/index.vue2.mjs +11 -7
- package/es/components/ScheduleConference/ScheduleRoomControl.vue.mjs +1 -1
- package/es/components/ScheduleConference/ScheduleRoomControl.vue2.mjs +3 -3
- package/es/components/ScheduleConference/ScheduleRoomList.vue2.mjs +2 -2
- package/es/components/ScheduleConference/ShareLink.vue2.mjs +1 -1
- package/es/components/ScheduleConference/TimezonePicker.vue.mjs +1 -1
- package/es/components/Stream/MultiStreamView/index.vue.d.ts +33 -0
- package/es/components/{Chat/MessageList → Stream/MultiStreamView}/index.vue.mjs +2 -2
- package/es/components/Stream/MultiStreamView/index.vue2.mjs +99 -0
- package/es/components/Stream/MultiStreamView/useMultiStreamViewHook.d.ts +17 -0
- package/es/components/Stream/MultiStreamView/useMultiStreamViewHook.mjs +95 -0
- package/es/components/Stream/SingleStreamView/index.vue.d.ts +25 -0
- package/es/components/Stream/SingleStreamView/index.vue.mjs +30 -0
- package/es/components/Stream/SingleStreamView/index.vue2.mjs +4 -0
- package/es/components/{RoomContent/StreamRegion → Stream/common}/LocalScreenView/index.vue.mjs +1 -1
- package/es/components/{RoomContent/StreamRegion → Stream/common}/LocalScreenView/index.vue2.mjs +23 -58
- package/es/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue.mjs +1 -1
- package/es/components/Stream/common/StreamList/index.vue.d.ts +27 -0
- package/es/components/{RoomContent → Stream/common}/StreamList/index.vue.mjs +2 -2
- package/es/components/{RoomContent → Stream/common}/StreamList/index.vue2.mjs +59 -95
- package/{lib/components/RoomContent/StreamRegion → es/components/Stream/common}/StreamPlay/index.vue.d.ts +9 -6
- package/es/components/{RoomContent/StreamRegion → Stream/common}/StreamPlay/index.vue.mjs +1 -1
- package/es/components/{RoomContent/StreamRegion → Stream/common}/StreamPlay/index.vue2.mjs +17 -12
- package/es/components/Stream/common/StreamRegion/index.vue.d.ts +25 -0
- package/es/components/{RoomContent → Stream/common}/StreamRegion/index.vue.mjs +2 -2
- package/es/components/{RoomContent → Stream/common}/StreamRegion/index.vue2.mjs +24 -27
- package/es/components/common/Language.vue.mjs +1 -1
- package/es/components/common/SwitchTheme.vue.mjs +1 -1
- package/es/components/common/base/Button.vue.d.ts +1 -1
- package/es/components/common/base/Checkbox/index.vue.d.ts +1 -1
- package/es/components/common/base/Dialog/index.vue.d.ts +4 -4
- package/es/components/common/base/IconButton.vue.d.ts +3 -3
- package/es/components/common/base/Input/index.vue.d.ts +4 -4
- package/es/components/common/base/Message/Message.vue.d.ts +4 -4
- package/es/components/common/base/MessageBox/index.vue.d.ts +1 -1
- package/es/components/common/base/Notification/index.vue.d.ts +1 -1
- package/es/components/common/base/Select/index.vue.d.ts +1 -1
- package/es/components/common/base/Select/index.vue2.mjs +1 -1
- package/es/components/common/base/Slider.vue.d.ts +1 -1
- package/es/components/{AITools → common/widgets/AITools}/AISubtitles.vue.mjs +2 -2
- package/es/components/{AITools → common/widgets/AITools}/AISubtitles.vue2.mjs +8 -7
- package/es/components/{AITools → common/widgets/AITools}/AITranscription.vue.mjs +2 -2
- package/es/components/{AITools → common/widgets/AITools}/AITranscription.vue2.mjs +9 -8
- package/es/conference.d.ts +6 -0
- package/es/conference.mjs +7 -1
- package/es/conference.vue.mjs +1 -1
- package/es/conference.vue2.mjs +14 -24
- package/es/extension/chatExtension.mjs +1 -1
- package/es/extension/utils/interact.mjs +1 -1
- package/es/extension/utils/setLanguage.mjs +1 -1
- package/es/hooks/useMasterApplyControl.mjs +2 -1
- package/es/index.d.ts +1 -0
- package/es/index.mjs +969 -1197
- package/es/locales/en-US.d.ts +2 -1
- package/es/locales/en-US.mjs +3 -2
- package/es/locales/zh-CN.d.ts +2 -1
- package/es/locales/zh-CN.mjs +2 -1
- package/es/preConference.vue.d.ts +5 -0
- package/es/preConference.vue.mjs +1 -1
- package/es/preConference.vue2.mjs +7 -4
- package/es/services/index.d.ts +1 -0
- package/es/services/manager/chatManager.d.ts +0 -2
- package/es/services/manager/chatManager.mjs +6 -12
- package/{lib/services/manager/MediaManager.d.ts → es/services/manager/mediaManager.d.ts} +16 -13
- package/es/services/manager/{MediaManager.mjs → mediaManager.mjs} +110 -113
- package/es/services/manager/roomActionManager.d.ts +3 -0
- package/es/services/manager/roomActionManager.mjs +7 -0
- package/es/services/manager/scheduleConferenceManager.d.ts +1 -0
- package/es/services/manager/scheduleConferenceManager.mjs +24 -1
- package/es/services/manager/trackingManager.d.ts +11 -0
- package/es/services/manager/trackingManager.mjs +20 -0
- package/es/services/manager/userManager.d.ts +11 -1
- package/es/services/manager/userManager.mjs +159 -9
- package/es/services/roomService.d.ts +3 -2
- package/es/services/roomService.mjs +23 -41
- package/es/stores/basic.mjs +6 -1
- package/es/stores/room.d.ts +29 -1
- package/es/stores/room.mjs +49 -59
- package/es/utils/domOperation.d.ts +4 -0
- package/es/utils/domOperation.mjs +17 -23
- package/es/utils/utils.d.ts +11 -0
- package/es/utils/utils.mjs +43 -0
- package/lib/components/Chat/ChatKit/components/TUIChat/emoji-config/locales/zh_tw.d.ts +2 -0
- package/lib/components/Chat/ChatKit/components/TUIChat/emoji-config/locales/zh_tw.js +67 -0
- package/lib/components/Chat/ChatKit/components/TUIChat/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/index.vue2.js +22 -9
- package/lib/components/Chat/ChatKit/components/TUIChat/message-input/message-input-editor.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-input/message-input-editor.vue2.js +13 -0
- package/lib/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/emoji-picker/emoji-picker-dialog.vue.d.ts +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/index.vue2.js +13 -13
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/index.vue2.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/index.vue2.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/message-revoked.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/read-receipt-panel/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/message-list/read-receipt-panel/index.vue2.js +1 -0
- package/lib/components/Chat/ChatKit/components/TUIChat/server.d.ts +1 -1
- package/lib/components/Chat/ChatKit/components/TUIChat/server.js +12 -3
- package/lib/components/Chat/ChatKit/components/TUIChat/utils/sendMessage.js +2 -1
- package/lib/components/Chat/ChatKit/components/common/BottomPopup/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/common/BottomPopup/index.vue2.js +2 -2
- package/lib/components/Chat/ChatKit/components/common/ImagePreviewer/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/common/Overlay/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/common/Toast/index.vue.d.ts +1 -1
- package/lib/components/Chat/ChatKit/components/common/Transfer/index.vue.js +1 -1
- package/lib/components/Chat/ChatKit/components/common/Transfer/index.vue2.js +2 -2
- package/lib/components/Chat/ChatKit/locales/en/TUIChat.d.ts +3 -0
- package/lib/components/Chat/ChatKit/locales/en/TUIChat.js +5 -2
- package/lib/components/Chat/ChatKit/locales/en/index.d.ts +3 -0
- package/lib/components/Chat/ChatKit/locales/en/message.js +2 -2
- package/lib/components/Chat/ChatKit/locales/index.d.ts +4 -1083
- package/lib/components/Chat/ChatKit/locales/index.js +3 -1
- package/lib/components/Chat/ChatKit/locales/zh_cn/TUIChat.d.ts +3 -0
- package/lib/components/Chat/ChatKit/locales/zh_cn/TUIChat.js +4 -1
- package/lib/components/Chat/ChatKit/locales/zh_cn/index.d.ts +3 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIChat.d.ts +153 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIChat.js +155 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIContact.d.ts +65 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIContact.js +67 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIConversation.d.ts +23 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIConversation.js +25 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIGroup.d.ts +86 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUIGroup.js +88 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUISearch.d.ts +40 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/TUISearch.js +42 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/component.d.ts +20 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/component.js +22 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/emoji.d.ts +3 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/emoji.js +4 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/evaluate.d.ts +10 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/evaluate.js +12 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/index.d.ts +513 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/index.js +39 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/message.d.ts +61 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/message.js +63 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/time.d.ts +36 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/time.js +38 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/translate.d.ts +163 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/words.d.ts +13 -0
- package/lib/components/Chat/ChatKit/locales/zh_tw/words.js +15 -0
- package/lib/components/Chat/ChatKit/utils/riseInput.d.ts +1 -0
- package/lib/components/Chat/ChatKit/utils/riseInput.js +45 -0
- package/lib/components/Chat/index/index.vue.js +1 -1
- package/lib/components/Chat/index/index.vue2.js +2 -17
- package/lib/components/ManageMember/MemberControl/useMemberControlHooks.d.ts +2 -2
- package/lib/components/ManageMember/MemberControl/useMemberControlHooks.js +3 -3
- package/lib/components/ManageMember/MemberInvite/MemberInvite.vue2.js +1 -1
- package/lib/components/PreRoom/PasswordDialog.vue.js +1 -1
- package/lib/components/PreRoom/PasswordDialog.vue2.js +20 -11
- package/lib/components/RoomContent/StreamContainer/index.vue.d.ts +1 -14
- package/lib/components/RoomContent/StreamContainer/index.vue.js +1 -1
- package/lib/components/RoomContent/StreamContainer/index.vue2.js +109 -260
- package/lib/components/RoomContent/StreamContainer/useStreamContainerHooks.d.ts +2 -9
- package/lib/components/RoomContent/StreamContainer/useStreamContainerHooks.js +11 -0
- package/lib/components/RoomContent/index.vue.d.ts +1 -14
- package/lib/components/RoomContent/index.vue.js +1 -1
- package/lib/components/RoomContent/index.vue2.js +1 -4
- package/lib/components/RoomFooter/AIControl.vue.d.ts +1 -5
- package/lib/components/RoomFooter/AIControl.vue.js +1 -1
- package/lib/components/RoomFooter/AIControl.vue2.js +5 -8
- package/lib/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue2.js +1 -1
- package/lib/components/RoomFooter/BasicBeauty.vue.js +1 -1
- package/lib/components/RoomFooter/BasicBeauty.vue2.js +6 -3
- package/lib/components/RoomFooter/ChatControl.vue.js +2 -1
- package/lib/components/RoomFooter/EndControl/index.vue.js +1 -1
- package/lib/components/RoomFooter/EndControl/index.vue2.js +4 -6
- package/lib/components/RoomFooter/EndControl/useEndControlHooks.js +8 -12
- package/lib/components/RoomFooter/FullScreenControl.vue.js +1 -1
- package/lib/components/RoomFooter/InviteControl.vue.js +1 -1
- package/lib/components/RoomFooter/InviteControl.vue2.js +2 -1
- package/lib/components/RoomFooter/ManageMemberControl.vue.js +1 -1
- package/lib/components/RoomFooter/MoreControl/index.vue.js +1 -1
- package/lib/components/RoomFooter/ScreenShareControl/Index.vue.js +1 -1
- package/lib/components/RoomFooter/ScreenShareControl/Index.vue2.js +3 -3
- package/lib/components/RoomFooter/VirtualBackground.vue.js +1 -1
- package/lib/components/RoomFooter/VirtualBackground.vue2.js +5 -2
- package/lib/components/RoomFooter/WhiteboardControl.vue.js +13 -3
- package/lib/components/RoomFooter/index/index.vue.d.ts +1 -5
- package/lib/components/RoomFooter/index/index.vue.js +1 -1
- package/lib/components/RoomFooter/index/index.vue2.js +2 -8
- package/lib/components/RoomHeader/UserInfo/index.vue.js +1 -1
- package/lib/components/RoomHeader/UserInfo/index.vue2.js +3 -2
- package/lib/components/RoomHeader/index/LayoutControl.vue2.js +1 -1
- package/lib/components/RoomHeader/index/index.vue.d.ts +1 -5
- package/lib/components/RoomHeader/index/index.vue.js +1 -1
- package/lib/components/RoomHeader/index/index.vue2.js +0 -15
- package/lib/components/RoomHome/RoomControl/index.vue.d.ts +0 -5
- package/lib/components/RoomHome/RoomControl/index.vue.js +1 -1
- package/lib/components/RoomHome/RoomControl/index.vue2.js +1 -2
- package/lib/components/RoomInvite/InvitationNotification.vue2.js +1 -1
- package/lib/components/RoomInvite/useRoomInviteHooks.js +2 -2
- package/lib/components/RoomOverlay/RoomOverlay.vue.js +16 -0
- package/lib/components/RoomOverlay/RoomOverlay.vue2.js +4 -0
- package/lib/components/RoomOverlay/useRoomOverlayHooks.d.ts +15 -0
- package/lib/components/RoomOverlay/useRoomOverlayHooks.js +30 -0
- package/lib/components/RoomSidebar/index.vue.js +1 -1
- package/lib/components/ScheduleConference/InvitePanel.vue.js +1 -1
- package/lib/components/ScheduleConference/ScheduleConferencePanel/index.vue.js +1 -1
- package/lib/components/ScheduleConference/ScheduleConferencePanel/index.vue2.js +11 -7
- package/lib/components/ScheduleConference/ScheduleRoomControl.vue.js +1 -1
- package/lib/components/ScheduleConference/ScheduleRoomControl.vue2.js +3 -3
- package/lib/components/ScheduleConference/ScheduleRoomList.vue2.js +2 -2
- package/lib/components/ScheduleConference/ShareLink.vue2.js +1 -1
- package/lib/components/ScheduleConference/TimezonePicker.vue.js +1 -1
- package/lib/components/Stream/MultiStreamView/index.vue.d.ts +33 -0
- package/lib/components/{Chat/MessageList → Stream/MultiStreamView}/index.vue.js +2 -2
- package/lib/components/Stream/MultiStreamView/index.vue2.js +99 -0
- package/lib/components/Stream/MultiStreamView/useMultiStreamViewHook.d.ts +17 -0
- package/lib/components/Stream/MultiStreamView/useMultiStreamViewHook.js +95 -0
- package/lib/components/Stream/SingleStreamView/index.vue.d.ts +25 -0
- package/lib/components/Stream/SingleStreamView/index.vue.js +30 -0
- package/lib/components/Stream/SingleStreamView/index.vue2.js +4 -0
- package/lib/components/{RoomContent/StreamRegion → Stream/common}/LocalScreenView/index.vue.js +1 -1
- package/lib/components/{RoomContent/StreamRegion → Stream/common}/LocalScreenView/index.vue2.js +22 -57
- package/lib/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue.js +1 -1
- package/lib/components/Stream/common/StreamList/index.vue.d.ts +27 -0
- package/lib/components/{RoomContent → Stream/common}/StreamList/index.vue.js +2 -2
- package/lib/components/{RoomContent → Stream/common}/StreamList/index.vue2.js +60 -96
- package/{es/components/RoomContent/StreamRegion → lib/components/Stream/common}/StreamPlay/index.vue.d.ts +9 -6
- package/lib/components/{RoomContent/StreamRegion → Stream/common}/StreamPlay/index.vue.js +1 -1
- package/lib/components/{RoomContent/StreamRegion → Stream/common}/StreamPlay/index.vue2.js +21 -16
- package/lib/components/Stream/common/StreamRegion/index.vue.d.ts +25 -0
- package/lib/components/{RoomContent → Stream/common}/StreamRegion/index.vue.js +2 -2
- package/lib/components/{RoomContent → Stream/common}/StreamRegion/index.vue2.js +24 -27
- package/lib/components/common/Language.vue.js +1 -1
- package/lib/components/common/SwitchTheme.vue.js +1 -1
- package/lib/components/common/base/Button.vue.d.ts +1 -1
- package/lib/components/common/base/Checkbox/index.vue.d.ts +1 -1
- package/lib/components/common/base/Dialog/index.vue.d.ts +4 -4
- package/lib/components/common/base/IconButton.vue.d.ts +3 -3
- package/lib/components/common/base/Input/index.vue.d.ts +4 -4
- package/lib/components/common/base/Message/Message.vue.d.ts +4 -4
- package/lib/components/common/base/MessageBox/index.vue.d.ts +1 -1
- package/lib/components/common/base/Notification/index.vue.d.ts +1 -1
- package/lib/components/common/base/Select/index.vue.d.ts +1 -1
- package/lib/components/common/base/Select/index.vue2.js +1 -1
- package/lib/components/common/base/Slider.vue.d.ts +1 -1
- package/lib/components/{AITools → common/widgets/AITools}/AISubtitles.vue.js +2 -2
- package/lib/components/{AITools → common/widgets/AITools}/AISubtitles.vue2.js +8 -7
- package/lib/components/{AITools → common/widgets/AITools}/AITranscription.vue.js +2 -2
- package/lib/components/{AITools → common/widgets/AITools}/AITranscription.vue2.js +9 -8
- package/lib/conference.d.ts +6 -0
- package/lib/conference.js +7 -1
- package/lib/conference.vue.js +1 -1
- package/lib/conference.vue2.js +14 -24
- package/lib/extension/chatExtension.js +1 -1
- package/lib/extension/utils/interact.js +1 -1
- package/lib/extension/utils/setLanguage.js +1 -1
- package/lib/hooks/useMasterApplyControl.js +2 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +969 -1197
- package/lib/locales/en-US.d.ts +2 -1
- package/lib/locales/en-US.js +3 -2
- package/lib/locales/zh-CN.d.ts +2 -1
- package/lib/locales/zh-CN.js +2 -1
- package/lib/preConference.vue.d.ts +5 -0
- package/lib/preConference.vue.js +1 -1
- package/lib/preConference.vue2.js +6 -3
- package/lib/services/index.d.ts +1 -0
- package/lib/services/manager/chatManager.d.ts +0 -2
- package/lib/services/manager/chatManager.js +6 -12
- package/{es/services/manager/MediaManager.d.ts → lib/services/manager/mediaManager.d.ts} +16 -13
- package/lib/services/manager/{MediaManager.js → mediaManager.js} +109 -112
- package/lib/services/manager/roomActionManager.d.ts +3 -0
- package/lib/services/manager/roomActionManager.js +7 -0
- package/lib/services/manager/scheduleConferenceManager.d.ts +1 -0
- package/lib/services/manager/scheduleConferenceManager.js +23 -0
- package/lib/services/manager/trackingManager.d.ts +11 -0
- package/lib/services/manager/trackingManager.js +20 -0
- package/lib/services/manager/userManager.d.ts +11 -1
- package/lib/services/manager/userManager.js +158 -8
- package/lib/services/roomService.d.ts +3 -2
- package/lib/services/roomService.js +24 -42
- package/lib/stores/basic.js +6 -1
- package/lib/stores/room.d.ts +29 -1
- package/lib/stores/room.js +49 -59
- package/lib/utils/domOperation.d.ts +4 -0
- package/lib/utils/domOperation.js +17 -23
- package/lib/utils/utils.d.ts +11 -0
- package/lib/utils/utils.js +43 -0
- package/package.json +4 -4
- package/src/TUIRoom/components/Chat/ChatKit/CHANGELOG.md +35 -0
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/emoji-config/locales/zh_tw.ts +66 -0
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/index.vue +24 -8
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/message-input/message-input-editor.vue +15 -1
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/message-input-toolbar/index.vue +13 -13
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/message-list/index.vue +1 -1
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/index.vue +2 -1
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/message-list/message-tool/message-revoked.vue +4 -6
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/message-list/read-receipt-panel/index.vue +9 -3
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/server.ts +12 -3
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIChat/utils/sendMessage.ts +1 -0
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIContact/contact-list/index.vue +3 -1
- package/src/TUIRoom/components/Chat/ChatKit/components/TUIGroup/manage-group/index.vue +2 -2
- package/src/TUIRoom/components/Chat/ChatKit/components/common/BottomPopup/index.vue +1 -1
- package/src/TUIRoom/components/Chat/ChatKit/components/common/BottomPopup/style/h5.scss +4 -3
- package/src/TUIRoom/components/Chat/ChatKit/components/common/BottomPopup/style/modal.scss +0 -2
- package/src/TUIRoom/components/Chat/ChatKit/components/common/ImagePreviewer/index.vue +2 -2
- package/src/TUIRoom/components/Chat/ChatKit/components/common/Overlay/index.vue +5 -0
- package/src/TUIRoom/components/Chat/ChatKit/components/common/Transfer/index.vue +2 -2
- package/src/TUIRoom/components/Chat/ChatKit/locales/en/TUIChat.ts +4 -1
- package/src/TUIRoom/components/Chat/ChatKit/locales/en/message.ts +2 -2
- package/src/TUIRoom/components/Chat/ChatKit/locales/index.ts +9 -3
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_cn/TUIChat.ts +3 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/TUIChat.ts +154 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/TUIContact.ts +66 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/TUIConversation.ts +24 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/TUIGroup.ts +87 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/TUISearch.ts +41 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/component.ts +21 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/emoji.ts +2 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/evaluate.ts +11 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/index.ts +41 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/message.ts +62 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/time.ts +37 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/translate.ts +164 -0
- package/src/TUIRoom/components/Chat/ChatKit/locales/zh_tw/words.ts +14 -0
- package/src/TUIRoom/components/Chat/ChatKit/utils/riseInput.ts +53 -0
- package/src/TUIRoom/components/Chat/index/index.vue +2 -20
- package/src/TUIRoom/components/ManageMember/MemberControl/useMemberControlHooks.ts +7 -4
- package/src/TUIRoom/components/PreRoom/PasswordDialog.vue +21 -11
- package/src/TUIRoom/components/RoomContent/StreamContainer/index.vue +107 -384
- package/src/TUIRoom/components/RoomContent/StreamContainer/useStreamContainerHooks.ts +5 -112
- package/src/TUIRoom/components/RoomContent/index.vue +1 -5
- package/src/TUIRoom/components/RoomFooter/AIControl.vue +7 -6
- package/src/TUIRoom/components/RoomFooter/BasicBeauty.vue +1 -1
- package/src/TUIRoom/components/RoomFooter/ChatControl.vue +1 -0
- package/src/TUIRoom/components/RoomFooter/EndControl/index.vue +4 -3
- package/src/TUIRoom/components/RoomFooter/EndControl/useEndControlHooks.ts +4 -10
- package/src/TUIRoom/components/RoomFooter/InviteControl.vue +1 -0
- package/src/TUIRoom/components/RoomFooter/ScreenShareControl/Index.vue +3 -3
- package/src/TUIRoom/components/RoomFooter/VirtualBackground.vue +1 -1
- package/src/TUIRoom/components/RoomFooter/WhiteboardControl.vue +13 -2
- package/src/TUIRoom/components/RoomFooter/index/index.vue +0 -6
- package/src/TUIRoom/components/RoomHeader/UserInfo/index.vue +2 -5
- package/src/TUIRoom/components/RoomHeader/index/index.vue +0 -17
- package/src/TUIRoom/components/RoomHome/RoomControl/index.vue +0 -2
- package/src/TUIRoom/components/RoomInvite/useRoomInviteHooks.ts +2 -2
- package/src/TUIRoom/components/RoomOverlay/RoomOverlay.vue +13 -0
- package/src/TUIRoom/components/RoomOverlay/useRoomOverlayHooks.ts +21 -0
- package/src/TUIRoom/components/RoomSidebar/index.vue +1 -1
- package/src/TUIRoom/components/ScheduleConference/InvitePanel.vue +1 -0
- package/src/TUIRoom/components/ScheduleConference/ScheduleConferencePanel/index.vue +10 -4
- package/src/TUIRoom/components/ScheduleConference/ScheduleRoomControl.vue +1 -0
- package/src/TUIRoom/components/Stream/MultiStreamView/index.vue +161 -0
- package/src/TUIRoom/components/Stream/MultiStreamView/useMultiStreamViewHook.ts +107 -0
- package/src/TUIRoom/components/Stream/SingleStreamView/index.vue +32 -0
- package/src/TUIRoom/components/Stream/common/LocalScreenView/index.vue +150 -0
- package/src/TUIRoom/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue +1 -6
- package/src/TUIRoom/components/{RoomContent → Stream/common}/StreamList/index.vue +74 -124
- package/src/TUIRoom/components/{RoomContent/StreamRegion → Stream/common}/StreamPlay/index.vue +28 -13
- package/src/TUIRoom/components/{RoomContent → Stream/common}/StreamRegion/index.vue +27 -32
- package/src/TUIRoom/components/common/base/Swiper.vue +20 -6
- package/src/TUIRoom/components/{AITools → common/widgets/AITools}/AISubtitles.vue +2 -2
- package/src/TUIRoom/components/{AITools → common/widgets/AITools}/AITranscription.vue +3 -3
- package/src/TUIRoom/conference.ts +14 -0
- package/src/TUIRoom/conference.vue +10 -23
- package/src/TUIRoom/hooks/useMasterApplyControl.ts +2 -1
- package/src/TUIRoom/index.ts +3 -1
- package/src/TUIRoom/locales/en-US.ts +4 -3
- package/src/TUIRoom/locales/zh-CN.ts +3 -1
- package/src/TUIRoom/preConference.vue +3 -1
- package/src/TUIRoom/services/index.ts +1 -0
- package/src/TUIRoom/services/manager/chatManager.ts +7 -16
- package/src/TUIRoom/services/manager/{MediaManager.ts → mediaManager.ts} +125 -136
- package/src/TUIRoom/services/manager/roomActionManager.ts +5 -0
- package/src/TUIRoom/services/manager/scheduleConferenceManager.ts +24 -1
- package/src/TUIRoom/services/manager/trackingManager.ts +22 -0
- package/src/TUIRoom/services/manager/userManager.ts +201 -7
- package/src/TUIRoom/services/roomService.ts +5 -24
- package/src/TUIRoom/stores/basic.ts +6 -0
- package/src/TUIRoom/stores/room.ts +60 -71
- package/src/TUIRoom/utils/domOperation.ts +27 -0
- package/src/TUIRoom/utils/utils.ts +61 -0
- package/es/components/Chat/ChatEditor/index.vue.mjs +0 -7
- package/es/components/Chat/ChatEditor/index.vue2.mjs +0 -45
- package/es/components/Chat/ChatEditor/useChatEditor.mjs +0 -83
- package/es/components/Chat/EditorTools/index.vue.d.ts +0 -6
- package/es/components/Chat/EditorTools/index.vue.mjs +0 -7
- package/es/components/Chat/EditorTools/index.vue2.mjs +0 -59
- package/es/components/Chat/MessageList/index.vue2.mjs +0 -101
- package/es/components/Chat/MessageList/useMessageListHook.mjs +0 -142
- package/es/components/Chat/MessageTypes/MessageText.vue.d.ts +0 -8
- package/es/components/Chat/MessageTypes/MessageText.vue.mjs +0 -7
- package/es/components/Chat/MessageTypes/MessageText.vue2.mjs +0 -31
- package/es/components/Chat/util.mjs +0 -432
- package/es/components/RoomContent/StreamList/index.vue.d.ts +0 -39
- package/es/components/RoomContent/StreamRegion/LocalScreenView/index.vue.d.ts +0 -14
- package/es/components/RoomContent/StreamRegion/index.vue.d.ts +0 -42
- package/es/components/common/icons/EmojiIcon.vue.mjs +0 -21
- package/lib/components/Chat/ChatEditor/index.vue.js +0 -7
- package/lib/components/Chat/ChatEditor/index.vue2.js +0 -45
- package/lib/components/Chat/ChatEditor/useChatEditor.js +0 -83
- package/lib/components/Chat/EditorTools/index.vue.d.ts +0 -6
- package/lib/components/Chat/EditorTools/index.vue.js +0 -7
- package/lib/components/Chat/EditorTools/index.vue2.js +0 -59
- package/lib/components/Chat/MessageList/index.vue.d.ts +0 -2
- package/lib/components/Chat/MessageList/index.vue2.js +0 -101
- package/lib/components/Chat/MessageList/useMessageListHook.js +0 -142
- package/lib/components/Chat/MessageTypes/MessageText.vue.d.ts +0 -8
- package/lib/components/Chat/MessageTypes/MessageText.vue.js +0 -7
- package/lib/components/Chat/MessageTypes/MessageText.vue2.js +0 -31
- package/lib/components/Chat/util.js +0 -432
- package/lib/components/RoomContent/StreamList/index.vue.d.ts +0 -39
- package/lib/components/RoomContent/StreamRegion/LocalScreenView/index.vue.d.ts +0 -14
- package/lib/components/RoomContent/StreamRegion/index.vue.d.ts +0 -42
- package/lib/components/common/icons/EmojiIcon.vue.d.ts +0 -2
- package/lib/components/common/icons/EmojiIcon.vue.js +0 -21
- /package/es/components/{AITools/AISubtitles.vue.d.ts → RoomOverlay/RoomOverlay.vue.d.ts} +0 -0
- /package/es/components/{Chat/ChatEditor → Stream/common/LocalScreenView}/index.vue.d.ts +0 -0
- /package/es/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue.d.ts +0 -0
- /package/es/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue2.mjs +0 -0
- /package/{lib/components → es/components/common/widgets}/AITools/AISubtitles.vue.d.ts +0 -0
- /package/es/components/{AITools → common/widgets/AITools}/AITranscription.vue.d.ts +0 -0
- /package/{es/components/Chat/MessageList/index.vue.d.ts → lib/components/RoomOverlay/RoomOverlay.vue.d.ts} +0 -0
- /package/lib/components/{Chat/ChatEditor → Stream/common/LocalScreenView}/index.vue.d.ts +0 -0
- /package/lib/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue.d.ts +0 -0
- /package/lib/components/{RoomContent/StreamRegion → Stream/common}/StreamCover/index.vue2.js +0 -0
- /package/{es/components/common/icons/EmojiIcon.vue.d.ts → lib/components/common/widgets/AITools/AISubtitles.vue.d.ts} +0 -0
- /package/lib/components/{AITools → common/widgets/AITools}/AITranscription.vue.d.ts +0 -0
|
@@ -14,15 +14,14 @@
|
|
|
14
14
|
@wheel="handleWheel"
|
|
15
15
|
>
|
|
16
16
|
<StreamRegion
|
|
17
|
-
v-for="streamInfo in
|
|
17
|
+
v-for="streamInfo in validStreamInfoList"
|
|
18
18
|
class="stream-list-item"
|
|
19
19
|
:key="`${streamInfo.userId}_${streamInfo.streamType}`"
|
|
20
|
-
@room-dblclick="$emit('room-dblclick', streamInfo)"
|
|
21
20
|
:streamInfo="streamInfo"
|
|
22
21
|
:style="streamStyle"
|
|
23
|
-
:
|
|
24
|
-
:
|
|
25
|
-
|
|
22
|
+
:streamPlayMode="streamPlayMode"
|
|
23
|
+
:streamPlayQuality="streamPlayQuality"
|
|
24
|
+
@stream-view-dblclick="handleStreamDblClick"
|
|
26
25
|
/>
|
|
27
26
|
</div>
|
|
28
27
|
</div>
|
|
@@ -30,7 +29,6 @@
|
|
|
30
29
|
|
|
31
30
|
<script setup lang="ts">
|
|
32
31
|
import {
|
|
33
|
-
withDefaults,
|
|
34
32
|
defineProps,
|
|
35
33
|
ref,
|
|
36
34
|
watch,
|
|
@@ -38,56 +36,73 @@ import {
|
|
|
38
36
|
onMounted,
|
|
39
37
|
onBeforeUnmount,
|
|
40
38
|
defineEmits,
|
|
39
|
+
nextTick,
|
|
41
40
|
} from 'vue';
|
|
42
41
|
import type { Ref, ComputedRef } from 'vue';
|
|
43
42
|
import StreamRegion from '../StreamRegion/index.vue';
|
|
44
|
-
import { StreamInfo } from '
|
|
45
|
-
import { isPC } from '
|
|
43
|
+
import { StreamInfo } from '../../../../stores/room';
|
|
44
|
+
import { isPC } from '../../../../utils/environment';
|
|
45
|
+
import {
|
|
46
|
+
StreamPlayMode,
|
|
47
|
+
StreamPlayQuality,
|
|
48
|
+
} from '../../../../services/manager/mediaManager';
|
|
49
|
+
import { getContentSize } from '../../../../utils/domOperation';
|
|
50
|
+
import { isUndefined } from '../../../../utils/utils';
|
|
46
51
|
|
|
47
|
-
defineEmits(['
|
|
52
|
+
const emits = defineEmits(['stream-view-dblclick']);
|
|
53
|
+
const singleStreamMargin = isPC ? 8 : 4;
|
|
48
54
|
|
|
49
55
|
interface Props {
|
|
50
|
-
streamInfoList
|
|
56
|
+
streamInfoList?: StreamInfo[];
|
|
57
|
+
column: number;
|
|
58
|
+
row: number;
|
|
59
|
+
fillMode?: 'fill' | 'contain';
|
|
51
60
|
aspectRatio?: string;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
isNeedPlayStream?: boolean;
|
|
55
|
-
observerViewInVisible?: boolean;
|
|
61
|
+
streamPlayQuality?: StreamPlayQuality;
|
|
62
|
+
streamPlayMode?: StreamPlayMode;
|
|
56
63
|
}
|
|
57
|
-
const props = withDefaults(defineProps<Props>(), {
|
|
58
|
-
isNeedPlayStream: true,
|
|
59
|
-
});
|
|
60
64
|
|
|
65
|
+
const props = defineProps<Props>();
|
|
61
66
|
const streamListContainerRef = ref();
|
|
62
67
|
const streamListRef = ref();
|
|
63
68
|
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
() => props.horizontalCount * props.verticalCount
|
|
67
|
-
);
|
|
68
|
-
const isGridLayout = computed(
|
|
69
|
-
() => props.horizontalCount !== Infinity && props.verticalCount !== Infinity
|
|
69
|
+
const isEqualPointsLayout = computed(
|
|
70
|
+
() => props.column !== Infinity && props.row !== Infinity
|
|
70
71
|
);
|
|
72
|
+
const isHorizontalInfinityLayout = computed(() => props.column === Infinity);
|
|
73
|
+
const isVerticalInfinityLayout = computed(() => props.row === Infinity);
|
|
71
74
|
|
|
72
75
|
watch(
|
|
73
|
-
() => props.
|
|
74
|
-
(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
isGridLayout.value &&
|
|
80
|
-
currentPageIndex.value > Math.ceil(val / maxCountEveryPage.value) - 1
|
|
81
|
-
) {
|
|
82
|
-
currentPageIndex.value = Math.ceil(val / maxCountEveryPage.value) - 1;
|
|
83
|
-
handleEqualPointsLayout();
|
|
84
|
-
}
|
|
85
|
-
}
|
|
76
|
+
() => [props.column, props.row],
|
|
77
|
+
async () => {
|
|
78
|
+
await nextTick();
|
|
79
|
+
handleLayout();
|
|
80
|
+
},
|
|
81
|
+
{ immediate: true }
|
|
86
82
|
);
|
|
87
83
|
|
|
88
|
-
|
|
89
|
-
|
|
84
|
+
const validStreamInfoList = computed(() => {
|
|
85
|
+
return props.streamInfoList?.filter(
|
|
86
|
+
item => item && item.userId && !isUndefined(item.streamType)
|
|
87
|
+
);
|
|
88
|
+
});
|
|
90
89
|
|
|
90
|
+
function handleLayout() {
|
|
91
|
+
if (isHorizontalInfinityLayout.value) {
|
|
92
|
+
handleHorizontalInfinityLayout();
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
if (isVerticalInfinityLayout.value) {
|
|
96
|
+
handleVerticalInfinityLayout();
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
if (isEqualPointsLayout.value) {
|
|
100
|
+
handleEqualPointsLayout();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// Single video stream window margin size
|
|
91
106
|
const streamListStyle: Ref<Record<string, any>> = ref({
|
|
92
107
|
width: '0',
|
|
93
108
|
height: '0',
|
|
@@ -110,35 +125,24 @@ const heightRatio: ComputedRef<number> = computed(() => {
|
|
|
110
125
|
}
|
|
111
126
|
return Number(props.aspectRatio.split(':')[1]);
|
|
112
127
|
});
|
|
113
|
-
|
|
114
128
|
/**
|
|
115
129
|
* Handle nine-pattern layout
|
|
116
130
|
**/
|
|
117
131
|
async function handleEqualPointsLayout() {
|
|
118
|
-
|
|
119
|
-
const number =
|
|
120
|
-
currentPageIndex.value > 0
|
|
121
|
-
? maxCountEveryPage.value
|
|
122
|
-
: props.streamInfoList.slice(0, maxCountEveryPage.value).length;
|
|
123
|
-
if (number <= 0 || !streamListContainerRef.value) {
|
|
132
|
+
if (!props.streamInfoList || !streamListContainerRef.value) {
|
|
124
133
|
return;
|
|
125
134
|
}
|
|
126
135
|
const containerRect = streamListContainerRef.value.getBoundingClientRect();
|
|
127
136
|
const containerWidth = Math.floor(containerRect.width);
|
|
128
137
|
const containerHeight = Math.floor(containerRect.height);
|
|
129
|
-
// The actual width and height of the container is offsetWidth/offsetHeight minus the size of padding
|
|
130
|
-
const horizontalStreamNumber = props.horizontalCount;
|
|
131
|
-
const verticalStreamNumber = props.verticalCount;
|
|
132
138
|
// Subtract the margin size of a single video stream to ensure that the ratio of width and height is 16:9
|
|
133
139
|
const contentWidth =
|
|
134
|
-
(containerWidth -
|
|
135
|
-
horizontalStreamNumber;
|
|
140
|
+
(containerWidth - props.column * singleStreamMargin) / props.column;
|
|
136
141
|
const contentHeight =
|
|
137
|
-
(containerHeight -
|
|
138
|
-
verticalStreamNumber;
|
|
142
|
+
(containerHeight - props.row * singleStreamMargin) / props.row;
|
|
139
143
|
|
|
140
|
-
let width =
|
|
141
|
-
let height =
|
|
144
|
+
let width = contentWidth;
|
|
145
|
+
let height = contentHeight;
|
|
142
146
|
if (widthRatio.value && heightRatio.value) {
|
|
143
147
|
const scaleWidth = contentWidth / widthRatio.value;
|
|
144
148
|
const scaleHeight = contentHeight / heightRatio.value;
|
|
@@ -154,35 +158,8 @@ async function handleEqualPointsLayout() {
|
|
|
154
158
|
streamStyle.value.width = `${width}px`;
|
|
155
159
|
streamStyle.value.height = `${height}px`;
|
|
156
160
|
|
|
157
|
-
streamListStyle.value.width = `${
|
|
158
|
-
streamListStyle.value.height = `${
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
function getContentSize(element: HTMLElement) {
|
|
162
|
-
const computedStyle = getComputedStyle(element);
|
|
163
|
-
|
|
164
|
-
const paddingTop = Number(computedStyle.paddingTop.replace('px', ''));
|
|
165
|
-
const paddingBottom = Number(computedStyle.paddingBottom.replace('px', ''));
|
|
166
|
-
const borderTop = Number(computedStyle.borderTopWidth.replace('px', ''));
|
|
167
|
-
const borderBottom = Number(
|
|
168
|
-
computedStyle.borderBottomWidth.replace('px', '')
|
|
169
|
-
);
|
|
170
|
-
|
|
171
|
-
const paddingLeft = Number(computedStyle.paddingLeft.replace('px', ''));
|
|
172
|
-
const paddingRight = Number(computedStyle.paddingRight.replace('px', ''));
|
|
173
|
-
const borderLeft = Number(computedStyle.borderLeftWidth.replace('px', ''));
|
|
174
|
-
const borderRight = Number(computedStyle.borderRightWidth.replace('px', ''));
|
|
175
|
-
|
|
176
|
-
const contentWidth =
|
|
177
|
-
element.offsetWidth - paddingLeft - paddingRight - borderLeft - borderRight;
|
|
178
|
-
const contentHeight =
|
|
179
|
-
element.offsetHeight -
|
|
180
|
-
paddingTop -
|
|
181
|
-
paddingBottom -
|
|
182
|
-
borderTop -
|
|
183
|
-
borderBottom;
|
|
184
|
-
|
|
185
|
-
return { width: contentWidth, height: contentHeight };
|
|
161
|
+
streamListStyle.value.width = `${props.column * (width + singleStreamMargin)}px`;
|
|
162
|
+
streamListStyle.value.height = `${props.row * (height + singleStreamMargin)}px`;
|
|
186
163
|
}
|
|
187
164
|
|
|
188
165
|
// Handles an unlimited number of streams horizontally
|
|
@@ -190,7 +167,7 @@ function handleHorizontalInfinityLayout() {
|
|
|
190
167
|
streamListStyle.value = {};
|
|
191
168
|
|
|
192
169
|
const contentHeight = getContentSize(streamListContainerRef.value).height;
|
|
193
|
-
const contentWidth = (contentHeight *
|
|
170
|
+
const contentWidth = (contentHeight * widthRatio.value) / heightRatio.value;
|
|
194
171
|
streamStyle.value.width = `${contentWidth}px`;
|
|
195
172
|
streamStyle.value.height = `${contentHeight}px`;
|
|
196
173
|
}
|
|
@@ -200,52 +177,15 @@ function handleVerticalInfinityLayout() {
|
|
|
200
177
|
streamListStyle.value = {};
|
|
201
178
|
|
|
202
179
|
const contentWidth = getContentSize(streamListContainerRef.value).width;
|
|
203
|
-
const contentHeight = (contentWidth *
|
|
180
|
+
const contentHeight = (contentWidth * heightRatio.value) / widthRatio.value;
|
|
204
181
|
streamStyle.value.width = `${contentWidth}px`;
|
|
205
182
|
streamStyle.value.height = `${contentHeight}px`;
|
|
206
183
|
}
|
|
207
184
|
|
|
208
|
-
|
|
209
|
-
()
|
|
210
|
-
);
|
|
211
|
-
const isVerticalInfinityLayout = computed(
|
|
212
|
-
() => props.verticalCount === Infinity
|
|
213
|
-
);
|
|
214
|
-
const isEqualPointsLayout = computed(
|
|
215
|
-
() => props.horizontalCount !== Infinity && props.verticalCount !== Infinity
|
|
216
|
-
);
|
|
217
|
-
|
|
218
|
-
function handleLayout() {
|
|
219
|
-
if (isHorizontalInfinityLayout.value) {
|
|
220
|
-
handleHorizontalInfinityLayout();
|
|
221
|
-
return;
|
|
222
|
-
}
|
|
223
|
-
if (isVerticalInfinityLayout.value) {
|
|
224
|
-
handleVerticalInfinityLayout();
|
|
225
|
-
return;
|
|
226
|
-
}
|
|
227
|
-
if (isEqualPointsLayout.value) {
|
|
228
|
-
handleEqualPointsLayout();
|
|
229
|
-
return;
|
|
230
|
-
}
|
|
185
|
+
function handleStreamDblClick(streamInfo: StreamInfo) {
|
|
186
|
+
emits('stream-view-dblclick', streamInfo);
|
|
231
187
|
}
|
|
232
188
|
|
|
233
|
-
onMounted(() => {
|
|
234
|
-
handleLayout();
|
|
235
|
-
});
|
|
236
|
-
|
|
237
|
-
watch(
|
|
238
|
-
() => [
|
|
239
|
-
props.horizontalCount,
|
|
240
|
-
props.verticalCount,
|
|
241
|
-
props.streamInfoList.length,
|
|
242
|
-
],
|
|
243
|
-
() => {
|
|
244
|
-
handleLayout();
|
|
245
|
-
},
|
|
246
|
-
{ immediate: true }
|
|
247
|
-
);
|
|
248
|
-
|
|
249
189
|
const resizeObserver = new ResizeObserver(() => {
|
|
250
190
|
handleLayout();
|
|
251
191
|
});
|
|
@@ -284,6 +224,11 @@ function handleWheel(event: WheelEvent) {
|
|
|
284
224
|
}
|
|
285
225
|
|
|
286
226
|
.horizontal-infinity-layout {
|
|
227
|
+
display: flex;
|
|
228
|
+
justify-content: center;
|
|
229
|
+
width: 100%;
|
|
230
|
+
height: 100%;
|
|
231
|
+
|
|
287
232
|
.stream-list {
|
|
288
233
|
display: flex;
|
|
289
234
|
max-width: 100%;
|
|
@@ -305,6 +250,11 @@ function handleWheel(event: WheelEvent) {
|
|
|
305
250
|
}
|
|
306
251
|
|
|
307
252
|
.vertical-infinity-layout {
|
|
253
|
+
display: flex;
|
|
254
|
+
align-items: center;
|
|
255
|
+
width: 100%;
|
|
256
|
+
height: 100%;
|
|
257
|
+
|
|
308
258
|
.stream-list {
|
|
309
259
|
max-width: 100%;
|
|
310
260
|
max-height: 100%;
|
package/src/TUIRoom/components/{RoomContent/StreamRegion → Stream/common}/StreamPlay/index.vue
RENAMED
|
@@ -20,6 +20,10 @@ import {
|
|
|
20
20
|
import { TUIVideoStreamType } from '@tencentcloud/tuiroom-engine-electron';
|
|
21
21
|
import { StreamInfo, useRoomStore } from '../../../../stores/room';
|
|
22
22
|
import { roomService } from '../../../../services/roomService';
|
|
23
|
+
import {
|
|
24
|
+
StreamPlayMode,
|
|
25
|
+
StreamPlayQuality,
|
|
26
|
+
} from '../../../../services/manager/mediaManager';
|
|
23
27
|
import { useBasicStore } from '../../../../stores/basic';
|
|
24
28
|
import { storeToRefs } from 'pinia';
|
|
25
29
|
import { getNanoId } from '../../../../utils/utils';
|
|
@@ -32,12 +36,12 @@ const { defaultStreamType, streamInfoObj } = storeToRefs(roomStore);
|
|
|
32
36
|
|
|
33
37
|
interface Props {
|
|
34
38
|
streamInfo: StreamInfo;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
observerViewInVisible?: boolean;
|
|
39
|
+
streamPlayQuality?: StreamPlayQuality;
|
|
40
|
+
streamPlayMode?: StreamPlayMode;
|
|
38
41
|
}
|
|
39
42
|
const props = withDefaults(defineProps<Props>(), {
|
|
40
|
-
|
|
43
|
+
streamPlayQuality: StreamPlayQuality.Default,
|
|
44
|
+
streamPlayMode: StreamPlayMode.PLAY,
|
|
41
45
|
});
|
|
42
46
|
|
|
43
47
|
const playRegionDomRef = ref();
|
|
@@ -45,6 +49,11 @@ const nanoId = getNanoId(5);
|
|
|
45
49
|
const playRegionDomId = computed(
|
|
46
50
|
() => `${props.streamInfo.userId}_${props.streamInfo.streamType}_${nanoId}`
|
|
47
51
|
);
|
|
52
|
+
const isNeedPlayStream = computed(
|
|
53
|
+
() =>
|
|
54
|
+
props.streamPlayMode !== StreamPlayMode.STOP &&
|
|
55
|
+
props.streamInfo.hasVideoStream
|
|
56
|
+
);
|
|
48
57
|
|
|
49
58
|
// The stream type to be pulled from the remote user
|
|
50
59
|
const streamTypeToFetch = computed(() => {
|
|
@@ -53,9 +62,15 @@ const streamTypeToFetch = computed(() => {
|
|
|
53
62
|
if (streamType === TUIVideoStreamType.kScreenStream) {
|
|
54
63
|
return TUIVideoStreamType.kScreenStream;
|
|
55
64
|
}
|
|
56
|
-
if (
|
|
65
|
+
if (
|
|
66
|
+
props.streamPlayQuality === StreamPlayQuality.HIGH ||
|
|
67
|
+
userId === localUserId
|
|
68
|
+
) {
|
|
57
69
|
return TUIVideoStreamType.kCameraStream;
|
|
58
70
|
}
|
|
71
|
+
if (props.streamPlayQuality === StreamPlayQuality.LOW) {
|
|
72
|
+
return TUIVideoStreamType.kCameraStreamLow;
|
|
73
|
+
}
|
|
59
74
|
return defaultStreamType.value;
|
|
60
75
|
});
|
|
61
76
|
|
|
@@ -69,12 +84,13 @@ async function startPlayVideo() {
|
|
|
69
84
|
return;
|
|
70
85
|
}
|
|
71
86
|
await nextTick();
|
|
72
|
-
if (
|
|
87
|
+
if (isNeedPlayStream.value) {
|
|
73
88
|
await mediaManager.startPlayVideo({
|
|
74
89
|
userId: props.streamInfo.userId,
|
|
75
90
|
streamType: streamTypeToFetch.value,
|
|
76
91
|
view: playRegionDomRef.value,
|
|
77
|
-
observerViewInVisible:
|
|
92
|
+
observerViewInVisible:
|
|
93
|
+
props.streamPlayMode === StreamPlayMode.PLAY_IN_VISIBLE,
|
|
78
94
|
});
|
|
79
95
|
}
|
|
80
96
|
}
|
|
@@ -91,8 +107,7 @@ watch(
|
|
|
91
107
|
() => [
|
|
92
108
|
props.streamInfo.userId,
|
|
93
109
|
props.streamInfo.streamType,
|
|
94
|
-
|
|
95
|
-
props.isNeedPlayStream,
|
|
110
|
+
isNeedPlayStream.value,
|
|
96
111
|
],
|
|
97
112
|
async (val, oldVal) => {
|
|
98
113
|
const [oldUserId, oldStreamType] = oldVal;
|
|
@@ -107,7 +122,7 @@ watch(
|
|
|
107
122
|
view: playRegionDomRef.value,
|
|
108
123
|
});
|
|
109
124
|
}
|
|
110
|
-
if (
|
|
125
|
+
if (isNeedPlayStream.value) {
|
|
111
126
|
await startPlayVideo();
|
|
112
127
|
} else {
|
|
113
128
|
await stopPlayVideo();
|
|
@@ -118,20 +133,20 @@ watch(
|
|
|
118
133
|
watch(
|
|
119
134
|
() => streamTypeToFetch,
|
|
120
135
|
async () => {
|
|
121
|
-
if (
|
|
136
|
+
if (isNeedPlayStream.value) {
|
|
122
137
|
await startPlayVideo();
|
|
123
138
|
}
|
|
124
139
|
}
|
|
125
140
|
);
|
|
126
141
|
|
|
127
142
|
onMounted(async () => {
|
|
128
|
-
if (
|
|
143
|
+
if (isNeedPlayStream.value) {
|
|
129
144
|
await startPlayVideo();
|
|
130
145
|
}
|
|
131
146
|
});
|
|
132
147
|
|
|
133
148
|
onBeforeUnmount(async () => {
|
|
134
|
-
if (
|
|
149
|
+
if (isNeedPlayStream.value) {
|
|
135
150
|
await stopPlayVideo();
|
|
136
151
|
}
|
|
137
152
|
});
|
|
@@ -2,26 +2,17 @@
|
|
|
2
2
|
<div class="stream-region-container" ref="streamRegionContainerRef">
|
|
3
3
|
<div
|
|
4
4
|
class="stream-region"
|
|
5
|
-
@dblclick="
|
|
6
|
-
v-dbl-touch="
|
|
7
|
-
() => {
|
|
8
|
-
$emit('room-dblclick');
|
|
9
|
-
}
|
|
10
|
-
"
|
|
5
|
+
@stream-view-dblclick="handleStreamDblClick"
|
|
6
|
+
v-dbl-touch="handleStreamDblClick"
|
|
11
7
|
:style="streamStyle"
|
|
12
8
|
>
|
|
13
|
-
<LocalScreenView
|
|
14
|
-
v-if="isLocalScreen"
|
|
15
|
-
:streamInfo="streamInfo"
|
|
16
|
-
:isMiniRegion="!isEnlarge"
|
|
17
|
-
/>
|
|
9
|
+
<LocalScreenView v-if="isLocalScreen" :streamInfo="streamInfo" />
|
|
18
10
|
<template v-else>
|
|
19
11
|
<StreamPlay
|
|
20
12
|
v-touch-scale="props.supportTouchScale"
|
|
21
13
|
:streamInfo="streamInfo"
|
|
22
|
-
:
|
|
23
|
-
:
|
|
24
|
-
:observerViewInVisible="observerViewInVisible"
|
|
14
|
+
:stream-play-mode="streamPlayMode"
|
|
15
|
+
:stream-play-quality="streamPlayQuality"
|
|
25
16
|
/>
|
|
26
17
|
<StreamCover :streamInfo="streamInfo" />
|
|
27
18
|
</template>
|
|
@@ -35,34 +26,34 @@ import {
|
|
|
35
26
|
defineProps,
|
|
36
27
|
computed,
|
|
37
28
|
defineEmits,
|
|
38
|
-
withDefaults,
|
|
39
29
|
onMounted,
|
|
40
30
|
onBeforeUnmount,
|
|
41
31
|
} from 'vue';
|
|
42
32
|
import type { ComputedRef } from 'vue';
|
|
43
33
|
import { TUIVideoStreamType } from '@tencentcloud/tuiroom-engine-electron';
|
|
44
|
-
import StreamPlay from '
|
|
45
|
-
import StreamCover from '
|
|
46
|
-
import LocalScreenView from '
|
|
47
|
-
import { StreamInfo } from '
|
|
48
|
-
import { useBasicStore } from '
|
|
49
|
-
import vDblTouch from '
|
|
50
|
-
import vTouchScale from '
|
|
34
|
+
import StreamPlay from '../StreamPlay/index.vue';
|
|
35
|
+
import StreamCover from '../StreamCover/index.vue';
|
|
36
|
+
import LocalScreenView from '../LocalScreenView/index.vue';
|
|
37
|
+
import { StreamInfo } from '../../../../stores/room';
|
|
38
|
+
import { useBasicStore } from '../../../../stores/basic';
|
|
39
|
+
import vDblTouch from '../../../../directives/vDblTouch';
|
|
40
|
+
import vTouchScale from '../../../../directives/vTouchScale';
|
|
41
|
+
import {
|
|
42
|
+
StreamPlayMode,
|
|
43
|
+
StreamPlayQuality,
|
|
44
|
+
} from '../../../../services/manager/mediaManager';
|
|
45
|
+
import { getContentSize } from '../../../../utils/domOperation';
|
|
51
46
|
|
|
52
47
|
interface Props {
|
|
53
48
|
streamInfo: StreamInfo;
|
|
54
|
-
|
|
49
|
+
streamPlayQuality?: StreamPlayQuality;
|
|
50
|
+
streamPlayMode?: StreamPlayMode;
|
|
55
51
|
aspectRatio?: string;
|
|
56
|
-
isNeedPlayStream?: boolean;
|
|
57
|
-
observerViewInVisible?: boolean;
|
|
58
52
|
supportTouchScale?: boolean;
|
|
59
53
|
}
|
|
60
54
|
|
|
61
|
-
const props =
|
|
62
|
-
|
|
63
|
-
isNeedPlayStream: true,
|
|
64
|
-
});
|
|
65
|
-
defineEmits(['room-dblclick']);
|
|
55
|
+
const props = defineProps<Props>();
|
|
56
|
+
const emits = defineEmits(['stream-view-dblclick']);
|
|
66
57
|
|
|
67
58
|
const basicStore = useBasicStore();
|
|
68
59
|
|
|
@@ -93,8 +84,8 @@ function handleStreamRegionSize() {
|
|
|
93
84
|
if (!streamRegionContainerRef.value) {
|
|
94
85
|
return;
|
|
95
86
|
}
|
|
96
|
-
const containerWidth = streamRegionContainerRef.value.
|
|
97
|
-
const containerHeight = streamRegionContainerRef.value.
|
|
87
|
+
const containerWidth = getContentSize(streamRegionContainerRef.value).width;
|
|
88
|
+
const containerHeight = getContentSize(streamRegionContainerRef.value).height;
|
|
98
89
|
let width = containerWidth;
|
|
99
90
|
let height = containerHeight;
|
|
100
91
|
if (widthRatio.value && heightRatio.value) {
|
|
@@ -113,6 +104,10 @@ function handleStreamRegionSize() {
|
|
|
113
104
|
streamStyle.value.height = `${height}px`;
|
|
114
105
|
}
|
|
115
106
|
|
|
107
|
+
function handleStreamDblClick() {
|
|
108
|
+
emits('stream-view-dblclick', props.streamInfo);
|
|
109
|
+
}
|
|
110
|
+
|
|
116
111
|
const ro = new ResizeObserver(() => {
|
|
117
112
|
handleStreamRegionSize();
|
|
118
113
|
});
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
@touchmove="handleTouchMoveThrottle"
|
|
8
8
|
@touchend="handleTouchEnd"
|
|
9
9
|
>
|
|
10
|
-
<slot></slot>
|
|
10
|
+
<slot v-if="swiperMounted"></slot>
|
|
11
11
|
</div>
|
|
12
12
|
<div v-if="swiperItemNumber > 1" class="swiper-dot-container">
|
|
13
13
|
<div
|
|
@@ -21,7 +21,16 @@
|
|
|
21
21
|
</template>
|
|
22
22
|
|
|
23
23
|
<script setup lang="ts">
|
|
24
|
-
import {
|
|
24
|
+
import {
|
|
25
|
+
ref,
|
|
26
|
+
provide,
|
|
27
|
+
computed,
|
|
28
|
+
defineProps,
|
|
29
|
+
defineEmits,
|
|
30
|
+
watch,
|
|
31
|
+
onMounted,
|
|
32
|
+
onUnmounted,
|
|
33
|
+
} from 'vue';
|
|
25
34
|
import { throttle } from '../../../utils/utils';
|
|
26
35
|
|
|
27
36
|
const props = defineProps<{
|
|
@@ -48,6 +57,14 @@ watch(activeSwiperIndex, () => {
|
|
|
48
57
|
emits('change', activeSwiperIndex.value);
|
|
49
58
|
});
|
|
50
59
|
|
|
60
|
+
const swiperMounted = ref(false);
|
|
61
|
+
onMounted(() => {
|
|
62
|
+
swiperMounted.value = true;
|
|
63
|
+
});
|
|
64
|
+
onUnmounted(() => {
|
|
65
|
+
swiperMounted.value = false;
|
|
66
|
+
});
|
|
67
|
+
|
|
51
68
|
provide('swiper', {
|
|
52
69
|
activeSwiperIndex,
|
|
53
70
|
swiperRef,
|
|
@@ -106,10 +123,7 @@ function handleTouchEnd(event: TouchEvent) {
|
|
|
106
123
|
}
|
|
107
124
|
isInOnceTouch = false;
|
|
108
125
|
const offsetX = event.changedTouches[0].pageX - touchData.x;
|
|
109
|
-
if (
|
|
110
|
-
Math.abs(event.changedTouches[0].pageX - touchData.x) >
|
|
111
|
-
swiperRef.value.offsetWidth / 5
|
|
112
|
-
) {
|
|
126
|
+
if (Math.abs(offsetX) > swiperRef.value.offsetWidth / 5) {
|
|
113
127
|
if (offsetX < 0 && activeSwiperIndex.value < swiperItemNumber.value - 1) {
|
|
114
128
|
activeSwiperIndex.value = activeSwiperIndex.value + 1;
|
|
115
129
|
}
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
MetricsKey,
|
|
17
17
|
roomService,
|
|
18
18
|
SubtitleMessage,
|
|
19
|
-
} from '
|
|
19
|
+
} from '../../../../services/index.ts';
|
|
20
20
|
|
|
21
21
|
const subtitleMessages = ref<Record<string, SubtitleMessage>>({});
|
|
22
22
|
const subtitleLines = computed(() => {
|
|
@@ -32,7 +32,7 @@ const handleAISubtitles = (data?: AITaskEvent[AI_TASK.TRANSCRIPTION_TASK]) => {
|
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
onMounted(() => {
|
|
35
|
-
roomService.dataReportManager.reportCount(MetricsKey.
|
|
35
|
+
roomService.dataReportManager.reportCount(MetricsKey.aiTask);
|
|
36
36
|
roomService.aiTask.on(AI_TASK.TRANSCRIPTION_TASK, handleAISubtitles);
|
|
37
37
|
});
|
|
38
38
|
|
|
@@ -35,8 +35,8 @@ import {
|
|
|
35
35
|
AI_TASK,
|
|
36
36
|
SubtitleMessage,
|
|
37
37
|
MetricsKey,
|
|
38
|
-
} from '
|
|
39
|
-
import { formatTimestampToTime } from '
|
|
38
|
+
} from '../../../../services/index.ts';
|
|
39
|
+
import { formatTimestampToTime } from '../../../../utils/utils.ts';
|
|
40
40
|
|
|
41
41
|
const conversationContainerRef = ref<HTMLElement>();
|
|
42
42
|
const isUserScrolling = ref(false);
|
|
@@ -116,7 +116,7 @@ const handleAITranscriptionTask = async (data?: {
|
|
|
116
116
|
rawTranscribedMessageList.value = [...data.transcribedMessageList];
|
|
117
117
|
};
|
|
118
118
|
onMounted(() => {
|
|
119
|
-
roomService.dataReportManager.reportCount(MetricsKey.
|
|
119
|
+
roomService.dataReportManager.reportCount(MetricsKey.aiTask);
|
|
120
120
|
roomService.aiTask.on(AI_TASK.TRANSCRIPTION_TASK, handleAITranscriptionTask);
|
|
121
121
|
});
|
|
122
122
|
onUnmounted(() => {
|
|
@@ -11,6 +11,8 @@ import {
|
|
|
11
11
|
import { TUIRoomEngine } from './index';
|
|
12
12
|
import logger from './utils/common/logger';
|
|
13
13
|
import { toTargetTheme } from './utils/common';
|
|
14
|
+
import { StreamInfo, UserInfo } from './stores/room';
|
|
15
|
+
import { Comparator } from './utils/utils';
|
|
14
16
|
|
|
15
17
|
export enum RoomEvent {
|
|
16
18
|
ROOM_START = 'RoomStart',
|
|
@@ -85,6 +87,10 @@ interface IConference {
|
|
|
85
87
|
hideFeatureButton: (name: FeatureButton) => void;
|
|
86
88
|
|
|
87
89
|
replaceFriendList: (userList: Array<any>) => void;
|
|
90
|
+
|
|
91
|
+
setUserListSortComparator: (comparator: Comparator<UserInfo>) => void;
|
|
92
|
+
|
|
93
|
+
setStreamListSortComparator: (comparator: Comparator<StreamInfo>) => void;
|
|
88
94
|
}
|
|
89
95
|
class Conference implements IConference {
|
|
90
96
|
public login(params: {
|
|
@@ -182,6 +188,14 @@ class Conference implements IConference {
|
|
|
182
188
|
public replaceFriendList(userList: Array<any>) {
|
|
183
189
|
return roomService.scheduleConferenceManager.replaceFriendList(userList);
|
|
184
190
|
}
|
|
191
|
+
|
|
192
|
+
public setUserListSortComparator(comparator: Comparator<UserInfo>) {
|
|
193
|
+
roomService.userManager.setUserListSortComparator(comparator);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
public setStreamListSortComparator(comparator: Comparator<StreamInfo>) {
|
|
197
|
+
roomService.userManager.setStreamListSortComparator(comparator);
|
|
198
|
+
}
|
|
185
199
|
}
|
|
186
200
|
|
|
187
201
|
export const conference = new Conference();
|