@tencentcloud/roomkit-electron-vue3 2.4.1 → 2.5.0
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/useChatEditor.mjs +1 -1
- package/es/components/Chat/MessageList/index.vue.mjs +1 -1
- package/es/components/Chat/MessageList/index.vue2.mjs +5 -1
- package/es/components/Chat/MessageList/useMessageListHook.mjs +4 -3
- package/es/components/ManageMember/MemberControl/index.vue.mjs +1 -1
- package/es/components/ManageMember/MemberControl/index.vue2.mjs +36 -19
- package/es/components/ManageMember/MemberControl/useMemberControlHooks.d.ts +6 -1
- package/es/components/ManageMember/MemberControl/useMemberControlHooks.mjs +113 -17
- package/es/components/ManageMember/MemberItem/useMemberItemHooks.d.ts +1 -0
- package/es/components/ManageMember/MemberItem/useMemberItemHooks.mjs +8 -6
- package/es/components/ManageMember/MemberItemCommon/MemberInfo.vue.mjs +1 -1
- package/es/components/ManageMember/MemberItemCommon/MemberInfo.vue2.mjs +7 -3
- package/es/components/ManageMember/index.vue.mjs +1 -1
- package/es/components/ManageMember/index.vue2.mjs +58 -7
- package/es/components/ManageMember/useIndexHooks.mjs +63 -14
- package/es/components/RoomContent/StreamContainer/index.vue.mjs +1 -1
- package/es/components/RoomContent/StreamContainer/index.vue2.mjs +10 -9
- package/es/components/RoomContent/StreamContainer/useStreamContainerHooks.d.ts +8 -0
- package/es/components/RoomContent/StreamContainer/useStreamContainerHooks.mjs +73 -29
- package/es/components/RoomContent/StreamRegion/index.vue.d.ts +5 -1
- package/es/components/RoomContent/StreamRegion/index.vue.mjs +1 -1
- package/es/components/RoomContent/StreamRegion/index.vue2.mjs +29 -5
- package/es/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue.mjs +1 -1
- package/es/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue2.mjs +10 -4
- package/es/components/RoomFooter/ApplyControl/MemberApplyControl.vue2.mjs +2 -2
- package/es/components/RoomFooter/AudioControl.vue2.mjs +2 -2
- package/es/components/RoomFooter/EndControl/index.vue.mjs +1 -1
- package/es/components/RoomFooter/EndControl/index.vue2.mjs +1 -1
- package/es/components/RoomFooter/EndControl/useEndControlHooks.mjs +16 -4
- package/es/components/RoomFooter/ScreenShareControl/Index.vue.mjs +1 -1
- package/es/components/RoomFooter/ScreenShareControl/Index.vue2.mjs +11 -3
- package/es/components/RoomFooter/VideoControl.vue.mjs +1 -1
- package/es/components/RoomFooter/VideoControl.vue2.mjs +8 -14
- package/es/components/RoomHeader/RoomInfo/index.vue2.mjs +2 -2
- package/es/components/RoomHeader/UserInfo/index.vue.d.ts +3 -11
- package/es/components/RoomHeader/UserInfo/index.vue.mjs +1 -1
- package/es/components/RoomHeader/UserInfo/index.vue2.mjs +9 -92
- package/es/components/RoomHeader/UserInfo/useUserInfoHooks.d.ts +2 -8
- package/es/components/RoomHeader/UserInfo/useUserInfoHooks.mjs +1 -18
- package/es/components/RoomHeader/index/NetworkInfo.vue2.mjs +2 -2
- package/es/components/RoomHome/RoomControl/index.vue.d.ts +10 -0
- package/es/components/RoomHome/RoomControl/index.vue.mjs +1 -1
- package/es/components/RoomHome/RoomControl/index.vue2.mjs +153 -120
- package/es/components/RoomInvite/index.vue2.mjs +2 -2
- package/es/components/RoomMore/index.vue2.mjs +2 -2
- package/es/components/RoomSidebar/useSideBarHooks.mjs +3 -2
- package/es/components/ScheduleConference/Contacts.vue.d.ts +22 -0
- package/es/components/ScheduleConference/Contacts.vue.mjs +7 -0
- package/es/components/ScheduleConference/Contacts.vue2.mjs +212 -0
- package/es/components/ScheduleConference/DurationTimePicker.vue.d.ts +18 -0
- package/es/components/ScheduleConference/DurationTimePicker.vue.mjs +67 -0
- package/es/components/ScheduleConference/DurationTimePicker.vue2.mjs +4 -0
- package/es/components/ScheduleConference/ScheduleConferencePanel.vue.d.ts +22 -0
- package/es/components/ScheduleConference/ScheduleConferencePanel.vue.mjs +7 -0
- package/es/components/ScheduleConference/ScheduleConferencePanel.vue2.mjs +613 -0
- package/es/components/ScheduleConference/ScheduleConferencePanel.vue3.mjs +1 -0
- package/es/components/ScheduleConference/ScheduleRoomControl.vue.d.ts +29 -0
- package/es/components/ScheduleConference/ScheduleRoomControl.vue.mjs +7 -0
- package/es/components/ScheduleConference/ScheduleRoomControl.vue2.mjs +464 -0
- package/es/components/ScheduleConference/ScheduleRoomControl.vue3.mjs +1 -0
- package/es/components/{common/base/Input.vue.d.ts → ScheduleConference/ScheduleRoomList.vue.d.ts} +11 -22
- package/es/components/ScheduleConference/ScheduleRoomList.vue.mjs +7 -0
- package/es/components/ScheduleConference/ScheduleRoomList.vue2.mjs +219 -0
- package/es/components/ScheduleConference/ScheduleRoomList.vue3.mjs +1 -0
- package/es/components/ScheduleConference/ShareLink.vue.d.ts +24 -0
- package/es/components/ScheduleConference/ShareLink.vue.mjs +7 -0
- package/es/components/ScheduleConference/ShareLink.vue2.mjs +113 -0
- package/es/components/ScheduleConference/ShareLink.vue3.mjs +1 -0
- package/es/components/ScheduleConference/TimezonePicker.vue.d.ts +18 -0
- package/es/components/ScheduleConference/TimezonePicker.vue.mjs +84 -0
- package/es/components/ScheduleConference/TimezonePicker.vue2.mjs +4 -0
- package/es/components/common/Avatar.vue.mjs +2 -2
- package/es/components/common/DeviceSelect.vue.mjs +1 -1
- package/es/components/common/DeviceSelect.vue2.mjs +58 -19
- package/es/components/common/Logo.vue.mjs +1 -1
- package/es/components/common/Logo.vue2.mjs +3 -3
- package/es/components/common/VideoProfile.vue2.mjs +2 -2
- package/es/components/common/base/Badge.vue.d.ts +1 -1
- package/es/components/common/base/Button.vue.d.ts +2 -2
- package/es/components/common/base/Checkbox.vue.d.ts +4 -2
- package/es/components/common/base/Checkbox.vue.mjs +2 -2
- package/es/components/common/base/Checkbox.vue2.mjs +12 -5
- package/es/components/common/base/Datepicker/Datepicker.vue.d.ts +18 -0
- package/es/components/common/base/Datepicker/Datepicker.vue.mjs +7 -0
- package/es/components/common/base/Datepicker/Datepicker.vue2.mjs +167 -0
- package/es/components/common/base/Datepicker/Datepicker.vue3.mjs +1 -0
- package/es/components/common/base/Datepicker/Timepicker.vue.d.ts +18 -0
- package/es/components/common/base/Datepicker/Timepicker.vue.mjs +66 -0
- package/es/components/common/base/Datepicker/Timepicker.vue2.mjs +4 -0
- package/es/components/common/base/Dialog/index.vue.d.ts +8 -4
- package/es/components/common/base/Dialog/index.vue.mjs +1 -1
- package/es/components/common/base/Dialog/index.vue2.mjs +17 -9
- package/es/components/common/base/Drawer.vue.d.ts +1 -1
- package/es/components/common/base/IconButton.vue.d.ts +2 -2
- package/es/components/common/base/Input/index.vue.d.ts +77 -0
- package/es/components/common/base/Input/index.vue.mjs +7 -0
- package/es/components/common/base/Input/index.vue2.mjs +140 -0
- package/es/components/common/base/Input/index.vue3.mjs +1 -0
- package/es/components/common/base/Message/Instance.mjs +1 -1
- package/es/components/common/base/Message/Message.vue.d.ts +4 -4
- package/es/components/common/base/MessageBox/index.d.ts +3 -2
- package/es/components/common/base/MessageBox/index.mjs +2 -1
- package/es/components/common/base/MessageBox/index.vue.d.ts +6 -1
- package/es/components/common/base/MessageBox/index.vue.mjs +1 -1
- package/es/components/common/base/MessageBox/index.vue2.mjs +60 -10
- package/es/components/common/base/Notification/index.vue.d.ts +2 -2
- package/es/components/common/base/Option.vue.d.ts +11 -1
- package/es/components/common/base/Option.vue.mjs +1 -1
- package/es/components/common/base/Option.vue2.mjs +16 -6
- package/es/components/common/base/Select.vue.d.ts +5 -1
- package/es/components/common/base/Select.vue.mjs +1 -1
- package/es/components/common/base/Select.vue2.mjs +12 -11
- package/es/components/common/base/index.d.ts +1 -1
- package/es/components/common/icons/AllMembersShareScreenIcon.vue.d.ts +2 -0
- package/es/components/common/icons/AllMembersShareScreenIcon.vue.mjs +22 -0
- package/es/components/common/icons/CalendarIcon.vue.d.ts +2 -0
- package/es/components/common/icons/CalendarIcon.vue.mjs +24 -0
- package/es/components/common/icons/CopyIcon.vue.mjs +2 -2
- package/es/components/common/icons/EditNameCardIcon.vue.d.ts +2 -0
- package/es/components/common/icons/EditNameCardIcon.vue.mjs +21 -0
- package/es/components/common/icons/EllipsisIcon.vue.d.ts +2 -0
- package/es/components/common/icons/EllipsisIcon.vue.mjs +34 -0
- package/es/components/common/icons/HostShareScreenIcon.vue.d.ts +2 -0
- package/es/components/common/icons/HostShareScreenIcon.vue.mjs +22 -0
- package/es/components/common/icons/LinkIcon.vue.d.ts +2 -0
- package/es/components/common/icons/LinkIcon.vue.mjs +36 -0
- package/es/components/common/icons/LoadingScheduleIcon.vue.d.ts +2 -0
- package/es/components/common/icons/LoadingScheduleIcon.vue.mjs +24 -0
- package/es/components/common/icons/ScheduleAttendees.vue.d.ts +6 -0
- package/es/components/common/icons/ScheduleAttendees.vue.mjs +25 -0
- package/es/components/common/icons/ScheduleAttendees.vue2.mjs +4 -0
- package/es/components/common/icons/ScheduleRoomIcon.vue.d.ts +2 -0
- package/es/components/common/icons/ScheduleRoomIcon.vue.mjs +24 -0
- package/es/components/common/icons/SuccessIcon.vue.d.ts +2 -0
- package/es/components/common/icons/SuccessIcon.vue.mjs +32 -0
- package/es/components/common/icons/WarningIcon.vue.d.ts +2 -0
- package/es/components/common/icons/WarningIcon.vue.mjs +29 -0
- package/es/conference.d.ts +2 -0
- package/es/conference.mjs +3 -0
- package/es/conference.vue.mjs +1 -1
- package/es/conference.vue2.mjs +9 -4
- package/es/directives/vDblTouch.d.ts +10 -0
- package/es/directives/vTap.d.ts +1 -0
- package/es/directives/vTap.mjs +30 -3
- package/es/extension/chatExtension.mjs +3 -3
- package/es/hooks/useDeviceManager.mjs +3 -3
- package/es/hooks/useMasterApplyControl.mjs +5 -5
- package/es/hooks/useRoomEngine.mjs +4 -4
- package/es/index.d.ts +1 -0
- package/es/index.mjs +2581 -1743
- package/es/locales/en-US.d.ts +75 -0
- package/es/locales/en-US.mjs +78 -1
- package/es/locales/zh-CN.d.ts +79 -0
- package/es/locales/zh-CN.mjs +83 -2
- package/es/preConference.vue.d.ts +10 -0
- package/es/preConference.vue.mjs +1 -1
- package/es/preConference.vue2.mjs +89 -13
- package/es/services/function/errorHandler.d.ts +10 -0
- package/es/services/function/errorHandler.mjs +158 -0
- package/es/services/function/virtualBackground.mjs +4 -3
- package/es/services/index.d.ts +1 -0
- package/es/services/manager/roomActionManager.d.ts +1 -0
- package/es/services/manager/roomActionManager.mjs +10 -18
- package/es/services/manager/scheduleConferenceManager.d.ts +113 -0
- package/es/services/manager/scheduleConferenceManager.mjs +141 -0
- package/es/services/manager/userManager.d.ts +2 -0
- package/es/services/manager/userManager.mjs +7 -3
- package/es/services/roomService.d.ts +8 -0
- package/es/services/roomService.mjs +42 -16
- package/es/services/types.d.ts +8 -0
- package/es/services/types.mjs +2 -0
- package/es/stores/basic.mjs +9 -3
- package/es/stores/room.d.ts +2 -0
- package/es/stores/room.mjs +55 -24
- package/es/utils/adapter.mjs +39 -3
- package/es/utils/utils.d.ts +3 -0
- package/es/utils/utils.mjs +64 -0
- package/lib/components/Chat/ChatEditor/useChatEditor.js +1 -1
- package/lib/components/Chat/MessageList/index.vue.js +1 -1
- package/lib/components/Chat/MessageList/index.vue2.js +5 -1
- package/lib/components/Chat/MessageList/useMessageListHook.js +2 -1
- package/lib/components/ManageMember/MemberControl/index.vue.js +1 -1
- package/lib/components/ManageMember/MemberControl/index.vue2.js +35 -18
- package/lib/components/ManageMember/MemberControl/useMemberControlHooks.d.ts +6 -1
- package/lib/components/ManageMember/MemberControl/useMemberControlHooks.js +113 -17
- package/lib/components/ManageMember/MemberItem/useMemberItemHooks.d.ts +1 -0
- package/lib/components/ManageMember/MemberItem/useMemberItemHooks.js +8 -6
- package/lib/components/ManageMember/MemberItemCommon/MemberInfo.vue.js +1 -1
- package/lib/components/ManageMember/MemberItemCommon/MemberInfo.vue2.js +5 -1
- package/lib/components/ManageMember/index.vue.js +1 -1
- package/lib/components/ManageMember/index.vue2.js +57 -6
- package/lib/components/ManageMember/useIndexHooks.js +63 -14
- package/lib/components/RoomContent/StreamContainer/index.vue.js +1 -1
- package/lib/components/RoomContent/StreamContainer/index.vue2.js +10 -9
- package/lib/components/RoomContent/StreamContainer/useStreamContainerHooks.d.ts +8 -0
- package/lib/components/RoomContent/StreamContainer/useStreamContainerHooks.js +72 -28
- package/lib/components/RoomContent/StreamRegion/index.vue.d.ts +5 -1
- package/lib/components/RoomContent/StreamRegion/index.vue.js +1 -1
- package/lib/components/RoomContent/StreamRegion/index.vue2.js +27 -3
- package/lib/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue.js +1 -1
- package/lib/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue2.js +8 -2
- package/lib/components/RoomFooter/EndControl/index.vue.js +1 -1
- package/lib/components/RoomFooter/EndControl/index.vue2.js +1 -1
- package/lib/components/RoomFooter/EndControl/useEndControlHooks.js +14 -2
- package/lib/components/RoomFooter/ScreenShareControl/Index.vue.js +1 -1
- package/lib/components/RoomFooter/ScreenShareControl/Index.vue2.js +9 -1
- package/lib/components/RoomFooter/VideoControl.vue.js +1 -1
- package/lib/components/RoomFooter/VideoControl.vue2.js +6 -12
- package/lib/components/RoomHeader/UserInfo/index.vue.d.ts +3 -11
- package/lib/components/RoomHeader/UserInfo/index.vue.js +1 -1
- package/lib/components/RoomHeader/UserInfo/index.vue2.js +6 -89
- package/lib/components/RoomHeader/UserInfo/useUserInfoHooks.d.ts +2 -8
- package/lib/components/RoomHeader/UserInfo/useUserInfoHooks.js +1 -18
- package/lib/components/RoomHome/RoomControl/index.vue.d.ts +10 -0
- package/lib/components/RoomHome/RoomControl/index.vue.js +1 -1
- package/lib/components/RoomHome/RoomControl/index.vue2.js +150 -117
- package/lib/components/RoomSidebar/useSideBarHooks.js +3 -2
- package/lib/components/ScheduleConference/Contacts.vue.d.ts +22 -0
- package/lib/components/ScheduleConference/Contacts.vue.js +7 -0
- package/lib/components/ScheduleConference/Contacts.vue2.js +212 -0
- package/lib/components/ScheduleConference/DurationTimePicker.vue.d.ts +18 -0
- package/lib/components/ScheduleConference/DurationTimePicker.vue.js +67 -0
- package/lib/components/ScheduleConference/DurationTimePicker.vue2.js +4 -0
- package/lib/components/ScheduleConference/ScheduleConferencePanel.vue.d.ts +22 -0
- package/lib/components/ScheduleConference/ScheduleConferencePanel.vue.js +7 -0
- package/lib/components/ScheduleConference/ScheduleConferencePanel.vue2.js +613 -0
- package/lib/components/ScheduleConference/ScheduleConferencePanel.vue3.js +1 -0
- package/lib/components/ScheduleConference/ScheduleRoomControl.vue.d.ts +29 -0
- package/lib/components/ScheduleConference/ScheduleRoomControl.vue.js +7 -0
- package/lib/components/ScheduleConference/ScheduleRoomControl.vue2.js +464 -0
- package/lib/components/ScheduleConference/ScheduleRoomControl.vue3.js +1 -0
- package/lib/components/{common/base/Input.vue.d.ts → ScheduleConference/ScheduleRoomList.vue.d.ts} +11 -22
- package/lib/components/ScheduleConference/ScheduleRoomList.vue.js +7 -0
- package/lib/components/ScheduleConference/ScheduleRoomList.vue2.js +219 -0
- package/lib/components/ScheduleConference/ScheduleRoomList.vue3.js +1 -0
- package/lib/components/ScheduleConference/ShareLink.vue.d.ts +24 -0
- package/lib/components/ScheduleConference/ShareLink.vue.js +7 -0
- package/lib/components/ScheduleConference/ShareLink.vue2.js +113 -0
- package/lib/components/ScheduleConference/ShareLink.vue3.js +1 -0
- package/lib/components/ScheduleConference/TimezonePicker.vue.d.ts +18 -0
- package/lib/components/ScheduleConference/TimezonePicker.vue.js +84 -0
- package/lib/components/ScheduleConference/TimezonePicker.vue2.js +4 -0
- package/lib/components/common/Avatar.vue.js +2 -2
- package/lib/components/common/DeviceSelect.vue.js +1 -1
- package/lib/components/common/DeviceSelect.vue2.js +57 -18
- package/lib/components/common/Logo.vue.js +1 -1
- package/lib/components/common/Logo.vue2.js +2 -2
- package/lib/components/common/base/Badge.vue.d.ts +1 -1
- package/lib/components/common/base/Button.vue.d.ts +2 -2
- package/lib/components/common/base/Checkbox.vue.d.ts +4 -2
- package/lib/components/common/base/Checkbox.vue.js +2 -2
- package/lib/components/common/base/Checkbox.vue2.js +11 -4
- package/lib/components/common/base/Datepicker/Datepicker.vue.d.ts +18 -0
- package/lib/components/common/base/Datepicker/Datepicker.vue.js +7 -0
- package/lib/components/common/base/Datepicker/Datepicker.vue2.js +167 -0
- package/lib/components/common/base/Datepicker/Datepicker.vue3.js +1 -0
- package/lib/components/common/base/Datepicker/Timepicker.vue.d.ts +18 -0
- package/lib/components/common/base/Datepicker/Timepicker.vue.js +66 -0
- package/lib/components/common/base/Datepicker/Timepicker.vue2.js +4 -0
- package/lib/components/common/base/Dialog/index.vue.d.ts +8 -4
- package/lib/components/common/base/Dialog/index.vue.js +1 -1
- package/lib/components/common/base/Dialog/index.vue2.js +16 -8
- package/lib/components/common/base/Drawer.vue.d.ts +1 -1
- package/lib/components/common/base/IconButton.vue.d.ts +2 -2
- package/lib/components/common/base/Input/index.vue.d.ts +77 -0
- package/lib/components/common/base/Input/index.vue.js +7 -0
- package/lib/components/common/base/Input/index.vue2.js +140 -0
- package/lib/components/common/base/Input/index.vue3.js +1 -0
- package/lib/components/common/base/Message/Instance.js +1 -1
- package/lib/components/common/base/Message/Message.vue.d.ts +4 -4
- package/lib/components/common/base/MessageBox/index.d.ts +3 -2
- package/lib/components/common/base/MessageBox/index.js +2 -1
- package/lib/components/common/base/MessageBox/index.vue.d.ts +6 -1
- package/lib/components/common/base/MessageBox/index.vue.js +1 -1
- package/lib/components/common/base/MessageBox/index.vue2.js +59 -9
- package/lib/components/common/base/Notification/index.vue.d.ts +2 -2
- package/lib/components/common/base/Option.vue.d.ts +11 -1
- package/lib/components/common/base/Option.vue.js +1 -1
- package/lib/components/common/base/Option.vue2.js +15 -5
- package/lib/components/common/base/Select.vue.d.ts +5 -1
- package/lib/components/common/base/Select.vue.js +1 -1
- package/lib/components/common/base/Select.vue2.js +11 -10
- package/lib/components/common/base/index.d.ts +1 -1
- package/lib/components/common/icons/AllMembersShareScreenIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/AllMembersShareScreenIcon.vue.js +22 -0
- package/lib/components/common/icons/CalendarIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/CalendarIcon.vue.js +24 -0
- package/lib/components/common/icons/CopyIcon.vue.js +2 -2
- package/lib/components/common/icons/EditNameCardIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/EditNameCardIcon.vue.js +21 -0
- package/lib/components/common/icons/EllipsisIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/EllipsisIcon.vue.js +34 -0
- package/lib/components/common/icons/HostShareScreenIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/HostShareScreenIcon.vue.js +22 -0
- package/lib/components/common/icons/LinkIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/LinkIcon.vue.js +36 -0
- package/lib/components/common/icons/LoadingScheduleIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/LoadingScheduleIcon.vue.js +24 -0
- package/lib/components/common/icons/ScheduleAttendees.vue.d.ts +6 -0
- package/lib/components/common/icons/ScheduleAttendees.vue.js +25 -0
- package/lib/components/common/icons/ScheduleAttendees.vue2.js +4 -0
- package/lib/components/common/icons/ScheduleRoomIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/ScheduleRoomIcon.vue.js +24 -0
- package/lib/components/common/icons/SuccessIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/SuccessIcon.vue.js +32 -0
- package/lib/components/common/icons/WarningIcon.vue.d.ts +2 -0
- package/lib/components/common/icons/WarningIcon.vue.js +29 -0
- package/lib/conference.d.ts +2 -0
- package/lib/conference.js +3 -0
- package/lib/conference.vue.js +1 -1
- package/lib/conference.vue2.js +9 -4
- package/lib/directives/vDblTouch.d.ts +10 -0
- package/lib/directives/vTap.d.ts +1 -0
- package/lib/directives/vTap.js +30 -3
- package/lib/extension/chatExtension.js +1 -1
- package/lib/hooks/useMasterApplyControl.js +3 -3
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2588 -1744
- package/lib/locales/en-US.d.ts +75 -0
- package/lib/locales/en-US.js +78 -1
- package/lib/locales/zh-CN.d.ts +79 -0
- package/lib/locales/zh-CN.js +83 -2
- package/lib/preConference.vue.d.ts +10 -0
- package/lib/preConference.vue.js +1 -1
- package/lib/preConference.vue2.js +88 -12
- package/lib/services/function/errorHandler.d.ts +10 -0
- package/lib/services/function/errorHandler.js +158 -0
- package/lib/services/function/virtualBackground.js +3 -2
- package/lib/services/index.d.ts +1 -0
- package/lib/services/manager/roomActionManager.d.ts +1 -0
- package/lib/services/manager/roomActionManager.js +10 -18
- package/lib/services/manager/scheduleConferenceManager.d.ts +113 -0
- package/lib/services/manager/scheduleConferenceManager.js +147 -0
- package/lib/services/manager/userManager.d.ts +2 -0
- package/lib/services/manager/userManager.js +4 -0
- package/lib/services/roomService.d.ts +8 -0
- package/lib/services/roomService.js +38 -12
- package/lib/services/types.d.ts +8 -0
- package/lib/services/types.js +2 -0
- package/lib/stores/basic.js +8 -2
- package/lib/stores/room.d.ts +2 -0
- package/lib/stores/room.js +55 -24
- package/lib/utils/adapter.js +39 -3
- package/lib/utils/utils.d.ts +3 -0
- package/lib/utils/utils.js +64 -0
- package/package.json +2 -2
- package/src/TUIRoom/assets/style/black-theme.scss +3 -1
- package/src/TUIRoom/assets/style/white-theme.scss +3 -1
- package/src/TUIRoom/components/Chat/ChatEditor/useChatEditor.ts +1 -1
- package/src/TUIRoom/components/Chat/MessageList/index.vue +5 -1
- package/src/TUIRoom/components/Chat/MessageList/useMessageListHook.ts +2 -1
- package/src/TUIRoom/components/ManageMember/MemberControl/index.vue +23 -7
- package/src/TUIRoom/components/ManageMember/MemberControl/useMemberControlHooks.ts +110 -14
- package/src/TUIRoom/components/ManageMember/MemberItem/useMemberItemHooks.ts +9 -4
- package/src/TUIRoom/components/ManageMember/MemberItemCommon/MemberInfo.vue +2 -1
- package/src/TUIRoom/components/ManageMember/index.vue +85 -5
- package/src/TUIRoom/components/ManageMember/useIndexHooks.ts +58 -9
- package/src/TUIRoom/components/RoomContent/StreamContainer/index.vue +7 -6
- package/src/TUIRoom/components/RoomContent/StreamContainer/useStreamContainerHooks.ts +90 -26
- package/src/TUIRoom/components/RoomContent/StreamRegion/index.vue +27 -3
- package/src/TUIRoom/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue +2 -1
- package/src/TUIRoom/components/RoomFooter/EndControl/index.vue +1 -1
- package/src/TUIRoom/components/RoomFooter/EndControl/useEndControlHooks.ts +10 -3
- package/src/TUIRoom/components/RoomFooter/ScreenShareControl/Index.vue +11 -1
- package/src/TUIRoom/components/RoomFooter/VideoControl.vue +0 -7
- package/src/TUIRoom/components/RoomHeader/UserInfo/index.vue +19 -50
- package/src/TUIRoom/components/RoomHeader/UserInfo/useUserInfoHooks.ts +1 -28
- package/src/TUIRoom/components/RoomHome/RoomControl/index.vue +91 -73
- package/src/TUIRoom/components/RoomSidebar/useSideBarHooks.ts +3 -2
- package/src/TUIRoom/components/ScheduleConference/Contacts.vue +265 -0
- package/src/TUIRoom/components/ScheduleConference/DurationTimePicker.vue +54 -0
- package/src/TUIRoom/components/ScheduleConference/ScheduleConferencePanel.vue +731 -0
- package/src/TUIRoom/components/ScheduleConference/ScheduleRoomControl.vue +577 -0
- package/src/TUIRoom/components/ScheduleConference/ScheduleRoomList.vue +295 -0
- package/src/TUIRoom/components/ScheduleConference/ShareLink.vue +122 -0
- package/src/TUIRoom/components/ScheduleConference/TimezonePicker.vue +70 -0
- package/src/TUIRoom/components/common/DeviceSelect.vue +62 -20
- package/src/TUIRoom/components/common/Logo.vue +3 -3
- package/src/TUIRoom/components/common/base/Checkbox.vue +19 -11
- package/src/TUIRoom/components/common/base/Datepicker/Datepicker.vue +252 -0
- package/src/TUIRoom/components/common/base/Datepicker/Timepicker.vue +54 -0
- package/src/TUIRoom/components/common/base/Dialog/index.vue +17 -7
- package/src/TUIRoom/components/common/base/Input/index.vue +187 -0
- package/src/TUIRoom/components/common/base/Message/Instance.ts +2 -1
- package/src/TUIRoom/components/common/base/MessageBox/index.ts +4 -2
- package/src/TUIRoom/components/common/base/MessageBox/index.vue +57 -26
- package/src/TUIRoom/components/common/base/Option.vue +14 -4
- package/src/TUIRoom/components/common/base/Select.vue +18 -13
- package/src/TUIRoom/components/common/base/index.ts +1 -1
- package/src/TUIRoom/components/common/icons/AllMembersShareScreenIcon.vue +15 -0
- package/src/TUIRoom/components/common/icons/ArrowStrokeRightIcon.vue +8 -0
- package/src/TUIRoom/components/common/icons/CalendarIcon.vue +6 -0
- package/src/TUIRoom/components/common/icons/EditNameCardIcon.vue +13 -0
- package/src/TUIRoom/components/common/icons/EllipsisIcon.vue +8 -0
- package/src/TUIRoom/components/common/icons/HostShareScreenIcon.vue +13 -0
- package/src/TUIRoom/components/common/icons/LinkIcon.vue +10 -0
- package/src/TUIRoom/components/common/icons/LoadingScheduleIcon.vue +6 -0
- package/src/TUIRoom/components/common/icons/ScheduleAttendees.vue +13 -0
- package/src/TUIRoom/components/common/icons/ScheduleRoomIcon.vue +6 -0
- package/src/TUIRoom/components/common/icons/SuccessIcon.vue +8 -0
- package/src/TUIRoom/components/common/icons/WarningIcon.vue +13 -0
- package/src/TUIRoom/conference.ts +6 -0
- package/src/TUIRoom/conference.vue +16 -5
- package/src/TUIRoom/directives/vDblTouch.ts +41 -0
- package/src/TUIRoom/directives/vTap.ts +32 -3
- package/src/TUIRoom/extension/chatExtension.ts +1 -1
- package/src/TUIRoom/hooks/useMasterApplyControl.ts +2 -2
- package/src/TUIRoom/index.ts +1 -0
- package/src/TUIRoom/locales/en-US.ts +77 -0
- package/src/TUIRoom/locales/zh-CN.ts +82 -1
- package/src/TUIRoom/preConference.vue +97 -2
- package/src/TUIRoom/services/function/errorHandler.ts +169 -0
- package/src/TUIRoom/services/function/virtualBackground.ts +3 -3
- package/src/TUIRoom/services/index.ts +1 -0
- package/src/TUIRoom/services/manager/roomActionManager.ts +10 -18
- package/src/TUIRoom/services/manager/scheduleConferenceManager.ts +263 -0
- package/src/TUIRoom/services/manager/userManager.ts +6 -0
- package/src/TUIRoom/services/roomService.ts +41 -13
- package/src/TUIRoom/services/types.ts +8 -1
- package/src/TUIRoom/stores/basic.ts +9 -2
- package/src/TUIRoom/stores/room.ts +60 -19
- package/src/TUIRoom/utils/adapter.ts +44 -4
- package/src/TUIRoom/utils/utils.ts +42 -0
- package/es/components/common/base/Input.vue.mjs +0 -7
- package/es/components/common/base/Input.vue2.mjs +0 -34
- package/lib/components/common/base/Input.vue.js +0 -7
- package/lib/components/common/base/Input.vue2.js +0 -34
- package/src/TUIRoom/components/common/base/Input.vue +0 -61
- /package/es/components/{common/base/Input.vue3.mjs → ScheduleConference/Contacts.vue3.mjs} +0 -0
- /package/lib/components/{common/base/Input.vue3.js → ScheduleConference/Contacts.vue3.js} +0 -0
|
@@ -51,7 +51,7 @@ function useChatEditor() {
|
|
|
51
51
|
payload: {
|
|
52
52
|
text: result
|
|
53
53
|
},
|
|
54
|
-
nick: roomStore.localUser.userName || roomStore.localUser.userId,
|
|
54
|
+
nick: roomStore.localUser.nameCard || roomStore.localUser.userName || roomStore.localUser.userId,
|
|
55
55
|
from: roomStore.localUser.userId,
|
|
56
56
|
flow: "out",
|
|
57
57
|
sequence: Math.random()
|
|
@@ -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 MessageList = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const MessageList = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1b057af9"]]);
|
|
5
5
|
export {
|
|
6
6
|
MessageList as default
|
|
7
7
|
};
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import { defineComponent, ref, watch, nextTick, onMounted, onUnmounted, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, Fragment, renderList, toDisplayString, createCommentVNode, createVNode } from "vue";
|
|
2
|
+
import { storeToRefs } from "pinia";
|
|
2
3
|
import MessageText from "../MessageTypes/MessageText.vue.mjs";
|
|
3
4
|
import { isMobile } from "../../../utils/environment.mjs";
|
|
4
5
|
import useMessageList from "./useMessageListHook.mjs";
|
|
5
6
|
import { getScrollInfo } from "../../../utils/domOperation.mjs";
|
|
6
7
|
import { throttle } from "../../../utils/utils.mjs";
|
|
8
|
+
import { useRoomStore } from "../../../stores/room.mjs";
|
|
7
9
|
const _hoisted_1 = ["title"];
|
|
8
10
|
const _hoisted_2 = { class: "message-body" };
|
|
9
11
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
12
|
__name: "index",
|
|
11
13
|
setup(__props) {
|
|
12
14
|
const messageListRef = ref();
|
|
15
|
+
const roomStore = useRoomStore();
|
|
16
|
+
const { getDisplayName } = storeToRefs(roomStore);
|
|
13
17
|
const {
|
|
14
18
|
messageList,
|
|
15
19
|
setMessageListInfo,
|
|
@@ -80,7 +84,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
80
84
|
key: 0,
|
|
81
85
|
class: "message-header",
|
|
82
86
|
title: item.nick || item.from
|
|
83
|
-
}, toDisplayString(item.
|
|
87
|
+
}, toDisplayString(unref(getDisplayName)(item.from)), 9, _hoisted_1)) : createCommentVNode("", true),
|
|
84
88
|
createElementVNode("div", _hoisted_2, [
|
|
85
89
|
createVNode(MessageText, {
|
|
86
90
|
data: item.payload.text
|
|
@@ -3,7 +3,7 @@ import { storeToRefs } from "pinia";
|
|
|
3
3
|
import { useChatStore } from "../../../stores/chat.mjs";
|
|
4
4
|
import { useBasicStore } from "../../../stores/basic.mjs";
|
|
5
5
|
import { useI18n } from "../../../locales/index.mjs";
|
|
6
|
-
import
|
|
6
|
+
import TUIRoomEngine__default, { TencentCloudChat } from "@tencentcloud/tuiroom-engine-electron";
|
|
7
7
|
import useGetRoomEngine from "../../../hooks/useRoomEngine.mjs";
|
|
8
8
|
function useMessageList() {
|
|
9
9
|
var _a;
|
|
@@ -64,8 +64,9 @@ function useMessageList() {
|
|
|
64
64
|
if (!options || !options.data) {
|
|
65
65
|
return;
|
|
66
66
|
}
|
|
67
|
+
const currentConversationId = `GROUP${roomId.value}`;
|
|
67
68
|
options.data.forEach((message) => {
|
|
68
|
-
if (message.type !== TencentCloudChat.TYPES.MSG_TEXT) {
|
|
69
|
+
if (message.conversationID !== currentConversationId || message.type !== TencentCloudChat.TYPES.MSG_TEXT) {
|
|
69
70
|
return;
|
|
70
71
|
}
|
|
71
72
|
const { ID, payload: { text }, nick: userName, from: userId } = message;
|
|
@@ -96,7 +97,7 @@ function useMessageList() {
|
|
|
96
97
|
if (!tim) {
|
|
97
98
|
tim = TencentCloudChat.create({ SDKAppID: basicStore.sdkAppId });
|
|
98
99
|
}
|
|
99
|
-
|
|
100
|
+
TUIRoomEngine__default.once("ready", () => {
|
|
100
101
|
tim == null ? void 0 : tim.on(TencentCloudChat.EVENT.MESSAGE_RECEIVED, onReceiveMessage);
|
|
101
102
|
});
|
|
102
103
|
onUnmounted(() => {
|
|
@@ -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-978d269a"]]);
|
|
5
5
|
export {
|
|
6
6
|
MemberControl as default
|
|
7
7
|
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { defineComponent, computed, ref, watch,
|
|
1
|
+
import { defineComponent, computed, ref, watch, openBlock, createElementBlock, unref, createBlock, withCtx, createTextVNode, toDisplayString, createCommentVNode, createElementVNode, createVNode, normalizeClass, withDirectives, Fragment, renderList, vShow, isRef, 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";
|
|
5
|
+
import TuiInput from "../../common/base/Input/index.vue.mjs";
|
|
5
6
|
import SvgIcon from "../../common/base/SvgIcon.vue.mjs";
|
|
6
7
|
import ArrowUpIcon from "../../common/icons/ArrowUpIcon.vue.mjs";
|
|
7
8
|
import useMemberControl from "./useMemberControlHooks.mjs";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
class: "member-control-container"
|
|
11
|
-
};
|
|
9
|
+
import useMemberItem from "../MemberItem/useMemberItemHooks.mjs";
|
|
10
|
+
const _hoisted_1 = { class: "member-control-container" };
|
|
12
11
|
const _hoisted_2 = ["onClick"];
|
|
13
12
|
const _hoisted_3 = { class: "operate-text" };
|
|
13
|
+
const _hoisted_4 = { class: "dialog-content" };
|
|
14
14
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
15
15
|
__name: "index",
|
|
16
16
|
props: {
|
|
@@ -22,14 +22,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
22
22
|
const { t } = useI18n();
|
|
23
23
|
const {
|
|
24
24
|
controlList,
|
|
25
|
-
isGeneralUser,
|
|
26
25
|
handleCancelDialog,
|
|
27
26
|
handleAction,
|
|
28
27
|
isDialogVisible,
|
|
29
|
-
dialogData
|
|
28
|
+
dialogData,
|
|
29
|
+
tempUserName
|
|
30
30
|
} = useMemberControl(props);
|
|
31
|
+
const { isCanOperateMySelf } = useMemberItem(props.userInfo);
|
|
31
32
|
const singleControl = computed(() => controlList.value[0]);
|
|
32
|
-
const moreControlList = computed(() =>
|
|
33
|
+
const moreControlList = computed(() => {
|
|
34
|
+
return isCanOperateMySelf ? controlList.value : controlList.value.slice(1);
|
|
35
|
+
});
|
|
33
36
|
const dropdownClass = ref("down");
|
|
34
37
|
const moreBtnRef = ref();
|
|
35
38
|
const operateListRef = ref();
|
|
@@ -73,17 +76,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
73
76
|
}
|
|
74
77
|
}
|
|
75
78
|
return (_ctx, _cache) => {
|
|
76
|
-
return
|
|
77
|
-
|
|
79
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
80
|
+
!unref(isCanOperateMySelf) ? (openBlock(), createBlock(TuiButton, {
|
|
81
|
+
key: 0,
|
|
78
82
|
class: "button",
|
|
79
83
|
size: "default",
|
|
80
84
|
onClick: _cache[0] || (_cache[0] = ($event) => singleControl.value.func(props.userInfo))
|
|
81
85
|
}, {
|
|
82
|
-
default: withCtx(() =>
|
|
83
|
-
|
|
84
|
-
|
|
86
|
+
default: withCtx(() => {
|
|
87
|
+
var _a;
|
|
88
|
+
return [
|
|
89
|
+
createTextVNode(toDisplayString((_a = singleControl.value) == null ? void 0 : _a.title), 1)
|
|
90
|
+
];
|
|
91
|
+
}),
|
|
85
92
|
_: 1
|
|
86
|
-
}),
|
|
93
|
+
})) : createCommentVNode("", true),
|
|
87
94
|
createElementVNode("div", {
|
|
88
95
|
ref_key: "moreBtnRef",
|
|
89
96
|
ref: moreBtnRef,
|
|
@@ -128,7 +135,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
128
135
|
], 512),
|
|
129
136
|
createVNode(Dialog, {
|
|
130
137
|
modelValue: unref(isDialogVisible),
|
|
131
|
-
"onUpdate:modelValue": _cache[
|
|
138
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => isRef(isDialogVisible) ? isDialogVisible.value = $event : null),
|
|
132
139
|
title: unref(dialogData).title,
|
|
133
140
|
modal: true,
|
|
134
141
|
width: "480px",
|
|
@@ -139,13 +146,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
139
146
|
footer: withCtx(() => [
|
|
140
147
|
createVNode(TuiButton, {
|
|
141
148
|
size: "default",
|
|
142
|
-
onClick: _cache[
|
|
149
|
+
onClick: _cache[2] || (_cache[2] = ($event) => unref(handleAction)(props.userInfo)),
|
|
150
|
+
disabled: unref(tempUserName).length === 0
|
|
143
151
|
}, {
|
|
144
152
|
default: withCtx(() => [
|
|
145
153
|
createTextVNode(toDisplayString(unref(dialogData).confirmText), 1)
|
|
146
154
|
]),
|
|
147
155
|
_: 1
|
|
148
|
-
}),
|
|
156
|
+
}, 8, ["disabled"]),
|
|
149
157
|
createVNode(TuiButton, {
|
|
150
158
|
class: "cancel",
|
|
151
159
|
size: "default",
|
|
@@ -159,11 +167,20 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
159
167
|
}, 8, ["onClick"])
|
|
160
168
|
]),
|
|
161
169
|
default: withCtx(() => [
|
|
162
|
-
createElementVNode("
|
|
170
|
+
createElementVNode("div", _hoisted_4, [
|
|
171
|
+
createElementVNode("span", null, toDisplayString(unref(dialogData).content), 1),
|
|
172
|
+
unref(dialogData).showInput ? (openBlock(), createBlock(TuiInput, {
|
|
173
|
+
key: 0,
|
|
174
|
+
modelValue: unref(tempUserName),
|
|
175
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isRef(tempUserName) ? tempUserName.value = $event : null),
|
|
176
|
+
class: "dialog-input",
|
|
177
|
+
placeholder: unref(t)("Please input user name")
|
|
178
|
+
}, null, 8, ["modelValue", "placeholder"])) : createCommentVNode("", true)
|
|
179
|
+
])
|
|
163
180
|
]),
|
|
164
181
|
_: 1
|
|
165
182
|
}, 8, ["modelValue", "title", "before-close"])
|
|
166
|
-
])
|
|
183
|
+
]);
|
|
167
184
|
};
|
|
168
185
|
}
|
|
169
186
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { UserInfo } from '../../../stores/room';
|
|
2
2
|
import { Ref } from 'vue';
|
|
3
3
|
|
|
4
|
-
type ActionType = 'transferOwner' | 'kickUser' | '';
|
|
4
|
+
type ActionType = 'transferOwner' | 'kickUser' | 'changeUserNameCard' | '';
|
|
5
5
|
export default function useMemberControl(props?: any): {
|
|
6
6
|
props: any;
|
|
7
7
|
isMe: import('vue').ComputedRef<boolean>;
|
|
@@ -16,6 +16,11 @@ export default function useMemberControl(props?: any): {
|
|
|
16
16
|
content: string;
|
|
17
17
|
confirmText: string;
|
|
18
18
|
actionType: ActionType;
|
|
19
|
+
showInput: boolean;
|
|
19
20
|
}>;
|
|
21
|
+
tempUserName: Ref<any>;
|
|
22
|
+
isShowInput: Ref<boolean>;
|
|
23
|
+
editorInputEle: Ref<any>;
|
|
24
|
+
editorInputEleContainer: Ref<any>;
|
|
20
25
|
};
|
|
21
26
|
export {};
|
|
@@ -16,23 +16,37 @@ import OffStageIcon from "../../common/icons/OffStageIcon.vue.mjs";
|
|
|
16
16
|
import TransferOwnerIcon from "../../common/icons/TransferOwnerIcon.vue.mjs";
|
|
17
17
|
import SetAdminIcon from "../../common/icons/SetAdminIcon.vue.mjs";
|
|
18
18
|
import RevokeAdminIcon from "../../common/icons/RevokeAdminIcon.vue.mjs";
|
|
19
|
+
import EditNameCardIcon from "../../common/icons/EditNameCardIcon.vue.mjs";
|
|
19
20
|
import { storeToRefs } from "pinia";
|
|
20
21
|
import renderMsg from "../../common/base/Message/Message.mjs";
|
|
21
22
|
import { MESSAGE_DURATION } from "../../../constants/message.mjs";
|
|
23
|
+
import bus from "../../../hooks/useMitt.mjs";
|
|
24
|
+
import useMemberItem from "../MemberItem/useMemberItemHooks.mjs";
|
|
25
|
+
import "../../../services/main.mjs";
|
|
26
|
+
import { roomService } from "../../../services/roomService.mjs";
|
|
27
|
+
import "mitt";
|
|
28
|
+
import "../../../services/manager/roomActionManager.mjs";
|
|
29
|
+
import { isMobile } from "../../../utils/environment.mjs";
|
|
30
|
+
import { calculateByteLength } from "../../../utils/utils.mjs";
|
|
22
31
|
function useMemberControl(props) {
|
|
23
32
|
const roomEngine = useGetRoomEngine();
|
|
24
33
|
const { t } = useI18n();
|
|
25
34
|
const basicStore = useBasicStore();
|
|
26
35
|
const roomStore = useRoomStore();
|
|
27
36
|
const isDialogVisible = ref(false);
|
|
37
|
+
const isShowInput = ref(false);
|
|
38
|
+
const editorInputEle = ref();
|
|
39
|
+
const editorInputEleContainer = ref();
|
|
40
|
+
const tempUserName = ref(props.userInfo.nameCard || props.userInfo.userName);
|
|
28
41
|
const dialogData = ref({
|
|
29
42
|
title: "",
|
|
30
43
|
content: "",
|
|
31
44
|
confirmText: "",
|
|
32
|
-
actionType: ""
|
|
45
|
+
actionType: "",
|
|
46
|
+
showInput: false
|
|
33
47
|
});
|
|
34
|
-
const kickOffDialogContent = computed(() => t("whether to kick sb off the room", { name:
|
|
35
|
-
const transferOwnerTitle = computed(() => t("Transfer the roomOwner to sb", { name:
|
|
48
|
+
const kickOffDialogContent = computed(() => t("whether to kick sb off the room", { name: roomService.getDisplayName(props.userInfo) }));
|
|
49
|
+
const transferOwnerTitle = computed(() => t("Transfer the roomOwner to sb", { name: roomService.getDisplayName(props.userInfo) }));
|
|
36
50
|
const {
|
|
37
51
|
isFreeSpeakMode,
|
|
38
52
|
isSpeakAfterTakingSeatMode,
|
|
@@ -48,10 +62,14 @@ function useMemberControl(props) {
|
|
|
48
62
|
cancelInviteUserOnStage,
|
|
49
63
|
kickUserOffStage
|
|
50
64
|
} = useMasterApplyControl();
|
|
65
|
+
const { isCanOperateMySelf } = useMemberItem(props.userInfo);
|
|
51
66
|
const isMe = computed(() => basicStore.userId === props.userInfo.userId);
|
|
52
67
|
const isTargetUserAnchor = computed(() => props.userInfo.onSeat === true);
|
|
53
68
|
const isTargetUserAudience = computed(() => props.userInfo.onSeat !== true);
|
|
54
69
|
const controlList = computed(() => {
|
|
70
|
+
if (isCanOperateMySelf.value) {
|
|
71
|
+
return [changeUserNameCard.value];
|
|
72
|
+
}
|
|
55
73
|
const agreeOrDenyStageList = props.userInfo.isUserApplyingToAnchor ? [agreeOnStage.value, denyOnStage.value] : [];
|
|
56
74
|
const inviteStageList = isTargetUserAudience.value && !props.userInfo.isUserApplyingToAnchor ? [inviteOnStage.value] : [];
|
|
57
75
|
const onStageControlList = isTargetUserAnchor.value ? [audioControl.value, videoControl.value, makeOffStage.value] : [];
|
|
@@ -63,12 +81,14 @@ function useMemberControl(props) {
|
|
|
63
81
|
chatControl.value,
|
|
64
82
|
setOrRevokeAdmin.value,
|
|
65
83
|
transferOwner.value,
|
|
66
|
-
kickUser.value
|
|
84
|
+
kickUser.value,
|
|
85
|
+
changeUserNameCard.value
|
|
67
86
|
],
|
|
68
87
|
[TUIRole.kAdministrator]: [
|
|
69
88
|
audioControl.value,
|
|
70
89
|
videoControl.value,
|
|
71
|
-
chatControl.value
|
|
90
|
+
chatControl.value,
|
|
91
|
+
changeUserNameCard.value
|
|
72
92
|
]
|
|
73
93
|
},
|
|
74
94
|
speakAfterTakeSeat: {
|
|
@@ -79,13 +99,15 @@ function useMemberControl(props) {
|
|
|
79
99
|
setOrRevokeAdmin.value,
|
|
80
100
|
transferOwner.value,
|
|
81
101
|
chatControl.value,
|
|
82
|
-
kickUser.value
|
|
102
|
+
kickUser.value,
|
|
103
|
+
changeUserNameCard.value
|
|
83
104
|
],
|
|
84
105
|
[TUIRole.kAdministrator]: [
|
|
85
106
|
...inviteStageList,
|
|
86
107
|
...onStageControlList,
|
|
87
108
|
...agreeOrDenyStageList,
|
|
88
|
-
chatControl.value
|
|
109
|
+
chatControl.value,
|
|
110
|
+
changeUserNameCard.value
|
|
89
111
|
]
|
|
90
112
|
}
|
|
91
113
|
};
|
|
@@ -145,6 +167,12 @@ function useMemberControl(props) {
|
|
|
145
167
|
}));
|
|
146
168
|
const denyOnStage = computed(() => ({ key: "denyOnStage", icon: DenyOnStageIcon, title: t("Refuse stage"), func: denyUserOnStage }));
|
|
147
169
|
const makeOffStage = computed(() => ({ key: "makeOffStage", icon: OffStageIcon, title: t("Step down"), func: kickUserOffStage }));
|
|
170
|
+
const changeUserNameCard = computed(() => ({
|
|
171
|
+
key: "changeUserNameCard",
|
|
172
|
+
icon: EditNameCardIcon,
|
|
173
|
+
title: t("change name"),
|
|
174
|
+
func: () => handleOpenDialog("changeUserNameCard")
|
|
175
|
+
}));
|
|
148
176
|
async function toggleInviteUserOnStage(userInfo) {
|
|
149
177
|
const { isInvitingUserToAnchor } = userInfo;
|
|
150
178
|
if (isInvitingUserToAnchor) {
|
|
@@ -172,7 +200,7 @@ function useMemberControl(props) {
|
|
|
172
200
|
if (userInfo.isRequestingUserOpenMic) {
|
|
173
201
|
renderMsg({
|
|
174
202
|
type: "info",
|
|
175
|
-
message: `${t("An invitation to open the microphone has been sent to sb.", { name:
|
|
203
|
+
message: `${t("An invitation to open the microphone has been sent to sb.", { name: roomService.getDisplayName(userInfo) })}`,
|
|
176
204
|
duration: MESSAGE_DURATION.NORMAL
|
|
177
205
|
});
|
|
178
206
|
return;
|
|
@@ -199,7 +227,7 @@ function useMemberControl(props) {
|
|
|
199
227
|
}));
|
|
200
228
|
renderMsg({
|
|
201
229
|
type: "info",
|
|
202
|
-
message: `${t("An invitation to open the microphone has been sent to sb.", { name:
|
|
230
|
+
message: `${t("An invitation to open the microphone has been sent to sb.", { name: roomService.getDisplayName(userInfo) })}`,
|
|
203
231
|
duration: MESSAGE_DURATION.NORMAL
|
|
204
232
|
});
|
|
205
233
|
if (request && request.requestId) {
|
|
@@ -218,7 +246,7 @@ function useMemberControl(props) {
|
|
|
218
246
|
if (userInfo.isRequestingUserOpenCamera) {
|
|
219
247
|
renderMsg({
|
|
220
248
|
type: "info",
|
|
221
|
-
message: `${t("An invitation to open the camera has been sent to sb.", { name:
|
|
249
|
+
message: `${t("An invitation to open the camera has been sent to sb.", { name: roomService.getDisplayName(userInfo) })}`,
|
|
222
250
|
duration: MESSAGE_DURATION.NORMAL
|
|
223
251
|
});
|
|
224
252
|
return;
|
|
@@ -245,7 +273,7 @@ function useMemberControl(props) {
|
|
|
245
273
|
}));
|
|
246
274
|
renderMsg({
|
|
247
275
|
type: "info",
|
|
248
|
-
message: `${t("An invitation to open the camera has been sent to sb.", { name:
|
|
276
|
+
message: `${t("An invitation to open the camera has been sent to sb.", { name: roomService.getDisplayName(userInfo) })}`,
|
|
249
277
|
duration: MESSAGE_DURATION.NORMAL
|
|
250
278
|
});
|
|
251
279
|
if (request && request.requestId) {
|
|
@@ -275,12 +303,16 @@ function useMemberControl(props) {
|
|
|
275
303
|
await ((_a = roomEngine.instance) == null ? void 0 : _a.kickRemoteUserOutOfRoom({
|
|
276
304
|
userId: userInfo.userId
|
|
277
305
|
}));
|
|
306
|
+
roomStore.removeRemoteUser(userInfo.userId);
|
|
278
307
|
}
|
|
279
308
|
async function handleTransferOwner(userInfo) {
|
|
280
309
|
var _a, _b;
|
|
281
310
|
const roomInfo = await ((_a = roomEngine.instance) == null ? void 0 : _a.fetchRoomInfo());
|
|
282
311
|
if ((roomInfo == null ? void 0 : roomInfo.roomOwner) === roomStore.localUser.userId) {
|
|
283
312
|
try {
|
|
313
|
+
if (roomStore.localUser.hasScreenStream) {
|
|
314
|
+
bus.emit("ScreenShare:stopScreenShare");
|
|
315
|
+
}
|
|
284
316
|
await ((_b = roomEngine.instance) == null ? void 0 : _b.changeUserRole({
|
|
285
317
|
userId: userInfo.userId,
|
|
286
318
|
userRole: TUIRole.kRoomOwner
|
|
@@ -288,7 +320,7 @@ function useMemberControl(props) {
|
|
|
288
320
|
roomStore.setMasterUserId(userInfo.userId);
|
|
289
321
|
renderMsg({
|
|
290
322
|
type: "success",
|
|
291
|
-
message: t("The room owner has been transferred to sb", { name:
|
|
323
|
+
message: t("The room owner has been transferred to sb", { name: roomService.getDisplayName(userInfo) }),
|
|
292
324
|
duration: MESSAGE_DURATION.NORMAL
|
|
293
325
|
});
|
|
294
326
|
} catch (error) {
|
|
@@ -301,7 +333,7 @@ function useMemberControl(props) {
|
|
|
301
333
|
}
|
|
302
334
|
}
|
|
303
335
|
async function handleSetOrRevokeAdmin(userInfo) {
|
|
304
|
-
var _a;
|
|
336
|
+
var _a, _b;
|
|
305
337
|
const newRole = userInfo.userRole === TUIRole.kGeneralUser ? TUIRole.kAdministrator : TUIRole.kGeneralUser;
|
|
306
338
|
await ((_a = roomEngine.instance) == null ? void 0 : _a.changeUserRole({
|
|
307
339
|
userId: userInfo.userId,
|
|
@@ -311,28 +343,84 @@ function useMemberControl(props) {
|
|
|
311
343
|
const tipMessage = newRole === TUIRole.kAdministrator ? `${t("sb has been set as administrator", { name: updatedUserName })}` : `${t("The administrator status of sb has been withdrawn", { name: updatedUserName })}`;
|
|
312
344
|
renderMsg({ type: "success", message: tipMessage });
|
|
313
345
|
roomStore.setRemoteUserRole(userInfo.userId, newRole);
|
|
346
|
+
if (newRole === TUIRole.kGeneralUser && userInfo.hasScreenStream) {
|
|
347
|
+
await ((_b = roomEngine.instance) == null ? void 0 : _b.closeRemoteDeviceByAdmin({
|
|
348
|
+
userId: userInfo.userId,
|
|
349
|
+
device: TUIMediaDevice.kScreen
|
|
350
|
+
}));
|
|
351
|
+
}
|
|
314
352
|
}
|
|
315
353
|
function handleOpenDialog(action) {
|
|
316
|
-
|
|
354
|
+
var _a;
|
|
317
355
|
switch (action) {
|
|
318
356
|
case "kickUser":
|
|
357
|
+
isDialogVisible.value = true;
|
|
319
358
|
dialogData.value = {
|
|
320
359
|
title: t("Note"),
|
|
321
360
|
content: kickOffDialogContent.value,
|
|
322
361
|
confirmText: t("Confirm"),
|
|
323
|
-
actionType: action
|
|
362
|
+
actionType: action,
|
|
363
|
+
showInput: false
|
|
324
364
|
};
|
|
325
365
|
break;
|
|
326
366
|
case "transferOwner":
|
|
367
|
+
isDialogVisible.value = true;
|
|
327
368
|
dialogData.value = {
|
|
328
369
|
title: transferOwnerTitle.value,
|
|
329
370
|
content: t("After transfer the room owner, you will become a general user"),
|
|
330
371
|
confirmText: t("Confirm transfer"),
|
|
331
|
-
actionType: action
|
|
372
|
+
actionType: action,
|
|
373
|
+
showInput: false
|
|
374
|
+
};
|
|
375
|
+
break;
|
|
376
|
+
case "changeUserNameCard":
|
|
377
|
+
if (isMobile) {
|
|
378
|
+
isShowInput.value = true;
|
|
379
|
+
(_a = document == null ? void 0 : document.body) == null ? void 0 : _a.appendChild(editorInputEleContainer.value);
|
|
380
|
+
} else {
|
|
381
|
+
isDialogVisible.value = true;
|
|
382
|
+
}
|
|
383
|
+
dialogData.value = {
|
|
384
|
+
title: t("change name"),
|
|
385
|
+
content: "",
|
|
386
|
+
confirmText: t("Confirm"),
|
|
387
|
+
actionType: action,
|
|
388
|
+
showInput: true
|
|
332
389
|
};
|
|
333
390
|
break;
|
|
334
391
|
}
|
|
335
392
|
}
|
|
393
|
+
const nameCardCheck = () => {
|
|
394
|
+
const result = calculateByteLength(tempUserName.value) <= 32;
|
|
395
|
+
!result && renderMsg({
|
|
396
|
+
type: "warning",
|
|
397
|
+
message: t("The user name cannot exceed 32 characters"),
|
|
398
|
+
duration: MESSAGE_DURATION.NORMAL
|
|
399
|
+
});
|
|
400
|
+
return result;
|
|
401
|
+
};
|
|
402
|
+
async function handleChangeUserNameCard(userInfo) {
|
|
403
|
+
var _a;
|
|
404
|
+
if (!nameCardCheck())
|
|
405
|
+
return;
|
|
406
|
+
try {
|
|
407
|
+
await ((_a = roomEngine.instance) == null ? void 0 : _a.changeUserNameCard({
|
|
408
|
+
userId: userInfo.userId,
|
|
409
|
+
nameCard: tempUserName.value
|
|
410
|
+
}));
|
|
411
|
+
renderMsg({
|
|
412
|
+
type: "success",
|
|
413
|
+
message: t("Name changed successfully"),
|
|
414
|
+
duration: MESSAGE_DURATION.NORMAL
|
|
415
|
+
});
|
|
416
|
+
} catch (error) {
|
|
417
|
+
renderMsg({
|
|
418
|
+
type: "error",
|
|
419
|
+
message: t("change name failed, please try again."),
|
|
420
|
+
duration: MESSAGE_DURATION.NORMAL
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
}
|
|
336
424
|
function handleAction(userInfo) {
|
|
337
425
|
switch (dialogData.value.actionType) {
|
|
338
426
|
case "kickUser":
|
|
@@ -341,10 +429,14 @@ function useMemberControl(props) {
|
|
|
341
429
|
case "transferOwner":
|
|
342
430
|
handleTransferOwner(userInfo);
|
|
343
431
|
break;
|
|
432
|
+
case "changeUserNameCard":
|
|
433
|
+
handleChangeUserNameCard(userInfo);
|
|
434
|
+
isShowInput.value = false;
|
|
344
435
|
}
|
|
345
436
|
isDialogVisible.value = false;
|
|
346
437
|
}
|
|
347
438
|
function handleCancelDialog() {
|
|
439
|
+
tempUserName.value = props.userInfo.nameCard || props.userInfo.userName;
|
|
348
440
|
isDialogVisible.value = false;
|
|
349
441
|
}
|
|
350
442
|
return {
|
|
@@ -356,7 +448,11 @@ function useMemberControl(props) {
|
|
|
356
448
|
handleCancelDialog,
|
|
357
449
|
handleAction,
|
|
358
450
|
isDialogVisible,
|
|
359
|
-
dialogData
|
|
451
|
+
dialogData,
|
|
452
|
+
tempUserName,
|
|
453
|
+
isShowInput,
|
|
454
|
+
editorInputEle,
|
|
455
|
+
editorInputEleContainer
|
|
360
456
|
};
|
|
361
457
|
}
|
|
362
458
|
export {
|
|
@@ -9,12 +9,13 @@ function useMemberItem(userInfo) {
|
|
|
9
9
|
const isCanOperateCurrentMember = computed(() => {
|
|
10
10
|
const isTargetUserRoomOwner = userInfo.userRole === TUIRole.kRoomOwner;
|
|
11
11
|
const isTargetUserGeneral = userInfo.userRole === TUIRole.kGeneralUser;
|
|
12
|
-
|
|
12
|
+
const isTargetUserMySelf = userInfo.userId === roomStore.localUser.userId;
|
|
13
|
+
return isMaster.value && !isTargetUserRoomOwner || isAdmin.value && isTargetUserGeneral || isTargetUserMySelf;
|
|
13
14
|
});
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
));
|
|
15
|
+
const isCanOperateMySelf = computed(() => {
|
|
16
|
+
return userInfo.userId === roomStore.localUser.userId;
|
|
17
|
+
});
|
|
18
|
+
const isMemberControlAccessible = computed(() => userInfo.userId === showUserId.value && (isCanOperateMySelf.value || isCanOperateCurrentMember.value));
|
|
18
19
|
function openMemberControl() {
|
|
19
20
|
showUserId.value = userInfo.userId;
|
|
20
21
|
}
|
|
@@ -24,7 +25,8 @@ function useMemberItem(userInfo) {
|
|
|
24
25
|
return {
|
|
25
26
|
isMemberControlAccessible,
|
|
26
27
|
openMemberControl,
|
|
27
|
-
closeMemberControl
|
|
28
|
+
closeMemberControl,
|
|
29
|
+
isCanOperateMySelf
|
|
28
30
|
};
|
|
29
31
|
}
|
|
30
32
|
export {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./MemberInfo.vue2.mjs";
|
|
2
2
|
import "./MemberInfo.vue3.mjs";
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const MemberInfo = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const MemberInfo = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-7b3ca6c8"]]);
|
|
5
5
|
export {
|
|
6
6
|
MemberInfo as default
|
|
7
7
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createVNode, toDisplayString, createBlock, createCommentVNode, Fragment, renderList } from "vue";
|
|
2
|
-
import
|
|
2
|
+
import TuiAvatar from "../../common/Avatar.vue.mjs";
|
|
3
3
|
import { useBasicStore } from "../../../stores/basic.mjs";
|
|
4
4
|
import { useRoomStore } from "../../../stores/room.mjs";
|
|
5
5
|
import { storeToRefs } from "pinia";
|
|
@@ -14,6 +14,10 @@ import { useI18n } from "../../../locales/index.mjs";
|
|
|
14
14
|
import { isMobile } from "../../../utils/environment.mjs";
|
|
15
15
|
import UserIcon from "../../common/icons/UserIcon.vue.mjs";
|
|
16
16
|
import { TUIRole } from "@tencentcloud/tuiroom-engine-electron";
|
|
17
|
+
import "../../../services/main.mjs";
|
|
18
|
+
import { roomService } from "../../../services/roomService.mjs";
|
|
19
|
+
import "mitt";
|
|
20
|
+
import "../../../services/manager/roomActionManager.mjs";
|
|
17
21
|
const _hoisted_1 = { class: "user-name" };
|
|
18
22
|
const _hoisted_2 = { class: "role-info" };
|
|
19
23
|
const _hoisted_3 = {
|
|
@@ -79,11 +83,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
79
83
|
createElementVNode("div", {
|
|
80
84
|
class: normalizeClass(!_ctx.showStateIcon && isTargetUserAdmin.value ? "member-basic-info-admin" : "member-basic-info")
|
|
81
85
|
}, [
|
|
82
|
-
createVNode(
|
|
86
|
+
createVNode(TuiAvatar, {
|
|
83
87
|
class: "avatar-url",
|
|
84
88
|
"img-src": _ctx.userInfo.avatarUrl
|
|
85
89
|
}, null, 8, ["img-src"]),
|
|
86
|
-
createElementVNode("div", _hoisted_1, toDisplayString(
|
|
90
|
+
createElementVNode("div", _hoisted_1, toDisplayString(unref(roomService).getDisplayName(_ctx.userInfo)), 1),
|
|
87
91
|
createElementVNode("div", _hoisted_2, [
|
|
88
92
|
isTargetUserRoomOwner.value || isTargetUserAdmin.value ? (openBlock(), createBlock(SvgIcon, {
|
|
89
93
|
key: 0,
|
|
@@ -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 ManageMember = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const ManageMember = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-efce71bc"]]);
|
|
5
5
|
export {
|
|
6
6
|
ManageMember as default
|
|
7
7
|
};
|