@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.
Files changed (430) hide show
  1. package/es/components/Chat/ChatEditor/useChatEditor.mjs +1 -1
  2. package/es/components/Chat/MessageList/index.vue.mjs +1 -1
  3. package/es/components/Chat/MessageList/index.vue2.mjs +5 -1
  4. package/es/components/Chat/MessageList/useMessageListHook.mjs +4 -3
  5. package/es/components/ManageMember/MemberControl/index.vue.mjs +1 -1
  6. package/es/components/ManageMember/MemberControl/index.vue2.mjs +36 -19
  7. package/es/components/ManageMember/MemberControl/useMemberControlHooks.d.ts +6 -1
  8. package/es/components/ManageMember/MemberControl/useMemberControlHooks.mjs +113 -17
  9. package/es/components/ManageMember/MemberItem/useMemberItemHooks.d.ts +1 -0
  10. package/es/components/ManageMember/MemberItem/useMemberItemHooks.mjs +8 -6
  11. package/es/components/ManageMember/MemberItemCommon/MemberInfo.vue.mjs +1 -1
  12. package/es/components/ManageMember/MemberItemCommon/MemberInfo.vue2.mjs +7 -3
  13. package/es/components/ManageMember/index.vue.mjs +1 -1
  14. package/es/components/ManageMember/index.vue2.mjs +58 -7
  15. package/es/components/ManageMember/useIndexHooks.mjs +63 -14
  16. package/es/components/RoomContent/StreamContainer/index.vue.mjs +1 -1
  17. package/es/components/RoomContent/StreamContainer/index.vue2.mjs +10 -9
  18. package/es/components/RoomContent/StreamContainer/useStreamContainerHooks.d.ts +8 -0
  19. package/es/components/RoomContent/StreamContainer/useStreamContainerHooks.mjs +73 -29
  20. package/es/components/RoomContent/StreamRegion/index.vue.d.ts +5 -1
  21. package/es/components/RoomContent/StreamRegion/index.vue.mjs +1 -1
  22. package/es/components/RoomContent/StreamRegion/index.vue2.mjs +29 -5
  23. package/es/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue.mjs +1 -1
  24. package/es/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue2.mjs +10 -4
  25. package/es/components/RoomFooter/ApplyControl/MemberApplyControl.vue2.mjs +2 -2
  26. package/es/components/RoomFooter/AudioControl.vue2.mjs +2 -2
  27. package/es/components/RoomFooter/EndControl/index.vue.mjs +1 -1
  28. package/es/components/RoomFooter/EndControl/index.vue2.mjs +1 -1
  29. package/es/components/RoomFooter/EndControl/useEndControlHooks.mjs +16 -4
  30. package/es/components/RoomFooter/ScreenShareControl/Index.vue.mjs +1 -1
  31. package/es/components/RoomFooter/ScreenShareControl/Index.vue2.mjs +11 -3
  32. package/es/components/RoomFooter/VideoControl.vue.mjs +1 -1
  33. package/es/components/RoomFooter/VideoControl.vue2.mjs +8 -14
  34. package/es/components/RoomHeader/RoomInfo/index.vue2.mjs +2 -2
  35. package/es/components/RoomHeader/UserInfo/index.vue.d.ts +3 -11
  36. package/es/components/RoomHeader/UserInfo/index.vue.mjs +1 -1
  37. package/es/components/RoomHeader/UserInfo/index.vue2.mjs +9 -92
  38. package/es/components/RoomHeader/UserInfo/useUserInfoHooks.d.ts +2 -8
  39. package/es/components/RoomHeader/UserInfo/useUserInfoHooks.mjs +1 -18
  40. package/es/components/RoomHeader/index/NetworkInfo.vue2.mjs +2 -2
  41. package/es/components/RoomHome/RoomControl/index.vue.d.ts +10 -0
  42. package/es/components/RoomHome/RoomControl/index.vue.mjs +1 -1
  43. package/es/components/RoomHome/RoomControl/index.vue2.mjs +153 -120
  44. package/es/components/RoomInvite/index.vue2.mjs +2 -2
  45. package/es/components/RoomMore/index.vue2.mjs +2 -2
  46. package/es/components/RoomSidebar/useSideBarHooks.mjs +3 -2
  47. package/es/components/ScheduleConference/Contacts.vue.d.ts +22 -0
  48. package/es/components/ScheduleConference/Contacts.vue.mjs +7 -0
  49. package/es/components/ScheduleConference/Contacts.vue2.mjs +212 -0
  50. package/es/components/ScheduleConference/DurationTimePicker.vue.d.ts +18 -0
  51. package/es/components/ScheduleConference/DurationTimePicker.vue.mjs +67 -0
  52. package/es/components/ScheduleConference/DurationTimePicker.vue2.mjs +4 -0
  53. package/es/components/ScheduleConference/ScheduleConferencePanel.vue.d.ts +22 -0
  54. package/es/components/ScheduleConference/ScheduleConferencePanel.vue.mjs +7 -0
  55. package/es/components/ScheduleConference/ScheduleConferencePanel.vue2.mjs +613 -0
  56. package/es/components/ScheduleConference/ScheduleConferencePanel.vue3.mjs +1 -0
  57. package/es/components/ScheduleConference/ScheduleRoomControl.vue.d.ts +29 -0
  58. package/es/components/ScheduleConference/ScheduleRoomControl.vue.mjs +7 -0
  59. package/es/components/ScheduleConference/ScheduleRoomControl.vue2.mjs +464 -0
  60. package/es/components/ScheduleConference/ScheduleRoomControl.vue3.mjs +1 -0
  61. package/es/components/{common/base/Input.vue.d.ts → ScheduleConference/ScheduleRoomList.vue.d.ts} +11 -22
  62. package/es/components/ScheduleConference/ScheduleRoomList.vue.mjs +7 -0
  63. package/es/components/ScheduleConference/ScheduleRoomList.vue2.mjs +219 -0
  64. package/es/components/ScheduleConference/ScheduleRoomList.vue3.mjs +1 -0
  65. package/es/components/ScheduleConference/ShareLink.vue.d.ts +24 -0
  66. package/es/components/ScheduleConference/ShareLink.vue.mjs +7 -0
  67. package/es/components/ScheduleConference/ShareLink.vue2.mjs +113 -0
  68. package/es/components/ScheduleConference/ShareLink.vue3.mjs +1 -0
  69. package/es/components/ScheduleConference/TimezonePicker.vue.d.ts +18 -0
  70. package/es/components/ScheduleConference/TimezonePicker.vue.mjs +84 -0
  71. package/es/components/ScheduleConference/TimezonePicker.vue2.mjs +4 -0
  72. package/es/components/common/Avatar.vue.mjs +2 -2
  73. package/es/components/common/DeviceSelect.vue.mjs +1 -1
  74. package/es/components/common/DeviceSelect.vue2.mjs +58 -19
  75. package/es/components/common/Logo.vue.mjs +1 -1
  76. package/es/components/common/Logo.vue2.mjs +3 -3
  77. package/es/components/common/VideoProfile.vue2.mjs +2 -2
  78. package/es/components/common/base/Badge.vue.d.ts +1 -1
  79. package/es/components/common/base/Button.vue.d.ts +2 -2
  80. package/es/components/common/base/Checkbox.vue.d.ts +4 -2
  81. package/es/components/common/base/Checkbox.vue.mjs +2 -2
  82. package/es/components/common/base/Checkbox.vue2.mjs +12 -5
  83. package/es/components/common/base/Datepicker/Datepicker.vue.d.ts +18 -0
  84. package/es/components/common/base/Datepicker/Datepicker.vue.mjs +7 -0
  85. package/es/components/common/base/Datepicker/Datepicker.vue2.mjs +167 -0
  86. package/es/components/common/base/Datepicker/Datepicker.vue3.mjs +1 -0
  87. package/es/components/common/base/Datepicker/Timepicker.vue.d.ts +18 -0
  88. package/es/components/common/base/Datepicker/Timepicker.vue.mjs +66 -0
  89. package/es/components/common/base/Datepicker/Timepicker.vue2.mjs +4 -0
  90. package/es/components/common/base/Dialog/index.vue.d.ts +8 -4
  91. package/es/components/common/base/Dialog/index.vue.mjs +1 -1
  92. package/es/components/common/base/Dialog/index.vue2.mjs +17 -9
  93. package/es/components/common/base/Drawer.vue.d.ts +1 -1
  94. package/es/components/common/base/IconButton.vue.d.ts +2 -2
  95. package/es/components/common/base/Input/index.vue.d.ts +77 -0
  96. package/es/components/common/base/Input/index.vue.mjs +7 -0
  97. package/es/components/common/base/Input/index.vue2.mjs +140 -0
  98. package/es/components/common/base/Input/index.vue3.mjs +1 -0
  99. package/es/components/common/base/Message/Instance.mjs +1 -1
  100. package/es/components/common/base/Message/Message.vue.d.ts +4 -4
  101. package/es/components/common/base/MessageBox/index.d.ts +3 -2
  102. package/es/components/common/base/MessageBox/index.mjs +2 -1
  103. package/es/components/common/base/MessageBox/index.vue.d.ts +6 -1
  104. package/es/components/common/base/MessageBox/index.vue.mjs +1 -1
  105. package/es/components/common/base/MessageBox/index.vue2.mjs +60 -10
  106. package/es/components/common/base/Notification/index.vue.d.ts +2 -2
  107. package/es/components/common/base/Option.vue.d.ts +11 -1
  108. package/es/components/common/base/Option.vue.mjs +1 -1
  109. package/es/components/common/base/Option.vue2.mjs +16 -6
  110. package/es/components/common/base/Select.vue.d.ts +5 -1
  111. package/es/components/common/base/Select.vue.mjs +1 -1
  112. package/es/components/common/base/Select.vue2.mjs +12 -11
  113. package/es/components/common/base/index.d.ts +1 -1
  114. package/es/components/common/icons/AllMembersShareScreenIcon.vue.d.ts +2 -0
  115. package/es/components/common/icons/AllMembersShareScreenIcon.vue.mjs +22 -0
  116. package/es/components/common/icons/CalendarIcon.vue.d.ts +2 -0
  117. package/es/components/common/icons/CalendarIcon.vue.mjs +24 -0
  118. package/es/components/common/icons/CopyIcon.vue.mjs +2 -2
  119. package/es/components/common/icons/EditNameCardIcon.vue.d.ts +2 -0
  120. package/es/components/common/icons/EditNameCardIcon.vue.mjs +21 -0
  121. package/es/components/common/icons/EllipsisIcon.vue.d.ts +2 -0
  122. package/es/components/common/icons/EllipsisIcon.vue.mjs +34 -0
  123. package/es/components/common/icons/HostShareScreenIcon.vue.d.ts +2 -0
  124. package/es/components/common/icons/HostShareScreenIcon.vue.mjs +22 -0
  125. package/es/components/common/icons/LinkIcon.vue.d.ts +2 -0
  126. package/es/components/common/icons/LinkIcon.vue.mjs +36 -0
  127. package/es/components/common/icons/LoadingScheduleIcon.vue.d.ts +2 -0
  128. package/es/components/common/icons/LoadingScheduleIcon.vue.mjs +24 -0
  129. package/es/components/common/icons/ScheduleAttendees.vue.d.ts +6 -0
  130. package/es/components/common/icons/ScheduleAttendees.vue.mjs +25 -0
  131. package/es/components/common/icons/ScheduleAttendees.vue2.mjs +4 -0
  132. package/es/components/common/icons/ScheduleRoomIcon.vue.d.ts +2 -0
  133. package/es/components/common/icons/ScheduleRoomIcon.vue.mjs +24 -0
  134. package/es/components/common/icons/SuccessIcon.vue.d.ts +2 -0
  135. package/es/components/common/icons/SuccessIcon.vue.mjs +32 -0
  136. package/es/components/common/icons/WarningIcon.vue.d.ts +2 -0
  137. package/es/components/common/icons/WarningIcon.vue.mjs +29 -0
  138. package/es/conference.d.ts +2 -0
  139. package/es/conference.mjs +3 -0
  140. package/es/conference.vue.mjs +1 -1
  141. package/es/conference.vue2.mjs +9 -4
  142. package/es/directives/vDblTouch.d.ts +10 -0
  143. package/es/directives/vTap.d.ts +1 -0
  144. package/es/directives/vTap.mjs +30 -3
  145. package/es/extension/chatExtension.mjs +3 -3
  146. package/es/hooks/useDeviceManager.mjs +3 -3
  147. package/es/hooks/useMasterApplyControl.mjs +5 -5
  148. package/es/hooks/useRoomEngine.mjs +4 -4
  149. package/es/index.d.ts +1 -0
  150. package/es/index.mjs +2581 -1743
  151. package/es/locales/en-US.d.ts +75 -0
  152. package/es/locales/en-US.mjs +78 -1
  153. package/es/locales/zh-CN.d.ts +79 -0
  154. package/es/locales/zh-CN.mjs +83 -2
  155. package/es/preConference.vue.d.ts +10 -0
  156. package/es/preConference.vue.mjs +1 -1
  157. package/es/preConference.vue2.mjs +89 -13
  158. package/es/services/function/errorHandler.d.ts +10 -0
  159. package/es/services/function/errorHandler.mjs +158 -0
  160. package/es/services/function/virtualBackground.mjs +4 -3
  161. package/es/services/index.d.ts +1 -0
  162. package/es/services/manager/roomActionManager.d.ts +1 -0
  163. package/es/services/manager/roomActionManager.mjs +10 -18
  164. package/es/services/manager/scheduleConferenceManager.d.ts +113 -0
  165. package/es/services/manager/scheduleConferenceManager.mjs +141 -0
  166. package/es/services/manager/userManager.d.ts +2 -0
  167. package/es/services/manager/userManager.mjs +7 -3
  168. package/es/services/roomService.d.ts +8 -0
  169. package/es/services/roomService.mjs +42 -16
  170. package/es/services/types.d.ts +8 -0
  171. package/es/services/types.mjs +2 -0
  172. package/es/stores/basic.mjs +9 -3
  173. package/es/stores/room.d.ts +2 -0
  174. package/es/stores/room.mjs +55 -24
  175. package/es/utils/adapter.mjs +39 -3
  176. package/es/utils/utils.d.ts +3 -0
  177. package/es/utils/utils.mjs +64 -0
  178. package/lib/components/Chat/ChatEditor/useChatEditor.js +1 -1
  179. package/lib/components/Chat/MessageList/index.vue.js +1 -1
  180. package/lib/components/Chat/MessageList/index.vue2.js +5 -1
  181. package/lib/components/Chat/MessageList/useMessageListHook.js +2 -1
  182. package/lib/components/ManageMember/MemberControl/index.vue.js +1 -1
  183. package/lib/components/ManageMember/MemberControl/index.vue2.js +35 -18
  184. package/lib/components/ManageMember/MemberControl/useMemberControlHooks.d.ts +6 -1
  185. package/lib/components/ManageMember/MemberControl/useMemberControlHooks.js +113 -17
  186. package/lib/components/ManageMember/MemberItem/useMemberItemHooks.d.ts +1 -0
  187. package/lib/components/ManageMember/MemberItem/useMemberItemHooks.js +8 -6
  188. package/lib/components/ManageMember/MemberItemCommon/MemberInfo.vue.js +1 -1
  189. package/lib/components/ManageMember/MemberItemCommon/MemberInfo.vue2.js +5 -1
  190. package/lib/components/ManageMember/index.vue.js +1 -1
  191. package/lib/components/ManageMember/index.vue2.js +57 -6
  192. package/lib/components/ManageMember/useIndexHooks.js +63 -14
  193. package/lib/components/RoomContent/StreamContainer/index.vue.js +1 -1
  194. package/lib/components/RoomContent/StreamContainer/index.vue2.js +10 -9
  195. package/lib/components/RoomContent/StreamContainer/useStreamContainerHooks.d.ts +8 -0
  196. package/lib/components/RoomContent/StreamContainer/useStreamContainerHooks.js +72 -28
  197. package/lib/components/RoomContent/StreamRegion/index.vue.d.ts +5 -1
  198. package/lib/components/RoomContent/StreamRegion/index.vue.js +1 -1
  199. package/lib/components/RoomContent/StreamRegion/index.vue2.js +27 -3
  200. package/lib/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue.js +1 -1
  201. package/lib/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue2.js +8 -2
  202. package/lib/components/RoomFooter/EndControl/index.vue.js +1 -1
  203. package/lib/components/RoomFooter/EndControl/index.vue2.js +1 -1
  204. package/lib/components/RoomFooter/EndControl/useEndControlHooks.js +14 -2
  205. package/lib/components/RoomFooter/ScreenShareControl/Index.vue.js +1 -1
  206. package/lib/components/RoomFooter/ScreenShareControl/Index.vue2.js +9 -1
  207. package/lib/components/RoomFooter/VideoControl.vue.js +1 -1
  208. package/lib/components/RoomFooter/VideoControl.vue2.js +6 -12
  209. package/lib/components/RoomHeader/UserInfo/index.vue.d.ts +3 -11
  210. package/lib/components/RoomHeader/UserInfo/index.vue.js +1 -1
  211. package/lib/components/RoomHeader/UserInfo/index.vue2.js +6 -89
  212. package/lib/components/RoomHeader/UserInfo/useUserInfoHooks.d.ts +2 -8
  213. package/lib/components/RoomHeader/UserInfo/useUserInfoHooks.js +1 -18
  214. package/lib/components/RoomHome/RoomControl/index.vue.d.ts +10 -0
  215. package/lib/components/RoomHome/RoomControl/index.vue.js +1 -1
  216. package/lib/components/RoomHome/RoomControl/index.vue2.js +150 -117
  217. package/lib/components/RoomSidebar/useSideBarHooks.js +3 -2
  218. package/lib/components/ScheduleConference/Contacts.vue.d.ts +22 -0
  219. package/lib/components/ScheduleConference/Contacts.vue.js +7 -0
  220. package/lib/components/ScheduleConference/Contacts.vue2.js +212 -0
  221. package/lib/components/ScheduleConference/DurationTimePicker.vue.d.ts +18 -0
  222. package/lib/components/ScheduleConference/DurationTimePicker.vue.js +67 -0
  223. package/lib/components/ScheduleConference/DurationTimePicker.vue2.js +4 -0
  224. package/lib/components/ScheduleConference/ScheduleConferencePanel.vue.d.ts +22 -0
  225. package/lib/components/ScheduleConference/ScheduleConferencePanel.vue.js +7 -0
  226. package/lib/components/ScheduleConference/ScheduleConferencePanel.vue2.js +613 -0
  227. package/lib/components/ScheduleConference/ScheduleConferencePanel.vue3.js +1 -0
  228. package/lib/components/ScheduleConference/ScheduleRoomControl.vue.d.ts +29 -0
  229. package/lib/components/ScheduleConference/ScheduleRoomControl.vue.js +7 -0
  230. package/lib/components/ScheduleConference/ScheduleRoomControl.vue2.js +464 -0
  231. package/lib/components/ScheduleConference/ScheduleRoomControl.vue3.js +1 -0
  232. package/lib/components/{common/base/Input.vue.d.ts → ScheduleConference/ScheduleRoomList.vue.d.ts} +11 -22
  233. package/lib/components/ScheduleConference/ScheduleRoomList.vue.js +7 -0
  234. package/lib/components/ScheduleConference/ScheduleRoomList.vue2.js +219 -0
  235. package/lib/components/ScheduleConference/ScheduleRoomList.vue3.js +1 -0
  236. package/lib/components/ScheduleConference/ShareLink.vue.d.ts +24 -0
  237. package/lib/components/ScheduleConference/ShareLink.vue.js +7 -0
  238. package/lib/components/ScheduleConference/ShareLink.vue2.js +113 -0
  239. package/lib/components/ScheduleConference/ShareLink.vue3.js +1 -0
  240. package/lib/components/ScheduleConference/TimezonePicker.vue.d.ts +18 -0
  241. package/lib/components/ScheduleConference/TimezonePicker.vue.js +84 -0
  242. package/lib/components/ScheduleConference/TimezonePicker.vue2.js +4 -0
  243. package/lib/components/common/Avatar.vue.js +2 -2
  244. package/lib/components/common/DeviceSelect.vue.js +1 -1
  245. package/lib/components/common/DeviceSelect.vue2.js +57 -18
  246. package/lib/components/common/Logo.vue.js +1 -1
  247. package/lib/components/common/Logo.vue2.js +2 -2
  248. package/lib/components/common/base/Badge.vue.d.ts +1 -1
  249. package/lib/components/common/base/Button.vue.d.ts +2 -2
  250. package/lib/components/common/base/Checkbox.vue.d.ts +4 -2
  251. package/lib/components/common/base/Checkbox.vue.js +2 -2
  252. package/lib/components/common/base/Checkbox.vue2.js +11 -4
  253. package/lib/components/common/base/Datepicker/Datepicker.vue.d.ts +18 -0
  254. package/lib/components/common/base/Datepicker/Datepicker.vue.js +7 -0
  255. package/lib/components/common/base/Datepicker/Datepicker.vue2.js +167 -0
  256. package/lib/components/common/base/Datepicker/Datepicker.vue3.js +1 -0
  257. package/lib/components/common/base/Datepicker/Timepicker.vue.d.ts +18 -0
  258. package/lib/components/common/base/Datepicker/Timepicker.vue.js +66 -0
  259. package/lib/components/common/base/Datepicker/Timepicker.vue2.js +4 -0
  260. package/lib/components/common/base/Dialog/index.vue.d.ts +8 -4
  261. package/lib/components/common/base/Dialog/index.vue.js +1 -1
  262. package/lib/components/common/base/Dialog/index.vue2.js +16 -8
  263. package/lib/components/common/base/Drawer.vue.d.ts +1 -1
  264. package/lib/components/common/base/IconButton.vue.d.ts +2 -2
  265. package/lib/components/common/base/Input/index.vue.d.ts +77 -0
  266. package/lib/components/common/base/Input/index.vue.js +7 -0
  267. package/lib/components/common/base/Input/index.vue2.js +140 -0
  268. package/lib/components/common/base/Input/index.vue3.js +1 -0
  269. package/lib/components/common/base/Message/Instance.js +1 -1
  270. package/lib/components/common/base/Message/Message.vue.d.ts +4 -4
  271. package/lib/components/common/base/MessageBox/index.d.ts +3 -2
  272. package/lib/components/common/base/MessageBox/index.js +2 -1
  273. package/lib/components/common/base/MessageBox/index.vue.d.ts +6 -1
  274. package/lib/components/common/base/MessageBox/index.vue.js +1 -1
  275. package/lib/components/common/base/MessageBox/index.vue2.js +59 -9
  276. package/lib/components/common/base/Notification/index.vue.d.ts +2 -2
  277. package/lib/components/common/base/Option.vue.d.ts +11 -1
  278. package/lib/components/common/base/Option.vue.js +1 -1
  279. package/lib/components/common/base/Option.vue2.js +15 -5
  280. package/lib/components/common/base/Select.vue.d.ts +5 -1
  281. package/lib/components/common/base/Select.vue.js +1 -1
  282. package/lib/components/common/base/Select.vue2.js +11 -10
  283. package/lib/components/common/base/index.d.ts +1 -1
  284. package/lib/components/common/icons/AllMembersShareScreenIcon.vue.d.ts +2 -0
  285. package/lib/components/common/icons/AllMembersShareScreenIcon.vue.js +22 -0
  286. package/lib/components/common/icons/CalendarIcon.vue.d.ts +2 -0
  287. package/lib/components/common/icons/CalendarIcon.vue.js +24 -0
  288. package/lib/components/common/icons/CopyIcon.vue.js +2 -2
  289. package/lib/components/common/icons/EditNameCardIcon.vue.d.ts +2 -0
  290. package/lib/components/common/icons/EditNameCardIcon.vue.js +21 -0
  291. package/lib/components/common/icons/EllipsisIcon.vue.d.ts +2 -0
  292. package/lib/components/common/icons/EllipsisIcon.vue.js +34 -0
  293. package/lib/components/common/icons/HostShareScreenIcon.vue.d.ts +2 -0
  294. package/lib/components/common/icons/HostShareScreenIcon.vue.js +22 -0
  295. package/lib/components/common/icons/LinkIcon.vue.d.ts +2 -0
  296. package/lib/components/common/icons/LinkIcon.vue.js +36 -0
  297. package/lib/components/common/icons/LoadingScheduleIcon.vue.d.ts +2 -0
  298. package/lib/components/common/icons/LoadingScheduleIcon.vue.js +24 -0
  299. package/lib/components/common/icons/ScheduleAttendees.vue.d.ts +6 -0
  300. package/lib/components/common/icons/ScheduleAttendees.vue.js +25 -0
  301. package/lib/components/common/icons/ScheduleAttendees.vue2.js +4 -0
  302. package/lib/components/common/icons/ScheduleRoomIcon.vue.d.ts +2 -0
  303. package/lib/components/common/icons/ScheduleRoomIcon.vue.js +24 -0
  304. package/lib/components/common/icons/SuccessIcon.vue.d.ts +2 -0
  305. package/lib/components/common/icons/SuccessIcon.vue.js +32 -0
  306. package/lib/components/common/icons/WarningIcon.vue.d.ts +2 -0
  307. package/lib/components/common/icons/WarningIcon.vue.js +29 -0
  308. package/lib/conference.d.ts +2 -0
  309. package/lib/conference.js +3 -0
  310. package/lib/conference.vue.js +1 -1
  311. package/lib/conference.vue2.js +9 -4
  312. package/lib/directives/vDblTouch.d.ts +10 -0
  313. package/lib/directives/vTap.d.ts +1 -0
  314. package/lib/directives/vTap.js +30 -3
  315. package/lib/extension/chatExtension.js +1 -1
  316. package/lib/hooks/useMasterApplyControl.js +3 -3
  317. package/lib/index.d.ts +1 -0
  318. package/lib/index.js +2588 -1744
  319. package/lib/locales/en-US.d.ts +75 -0
  320. package/lib/locales/en-US.js +78 -1
  321. package/lib/locales/zh-CN.d.ts +79 -0
  322. package/lib/locales/zh-CN.js +83 -2
  323. package/lib/preConference.vue.d.ts +10 -0
  324. package/lib/preConference.vue.js +1 -1
  325. package/lib/preConference.vue2.js +88 -12
  326. package/lib/services/function/errorHandler.d.ts +10 -0
  327. package/lib/services/function/errorHandler.js +158 -0
  328. package/lib/services/function/virtualBackground.js +3 -2
  329. package/lib/services/index.d.ts +1 -0
  330. package/lib/services/manager/roomActionManager.d.ts +1 -0
  331. package/lib/services/manager/roomActionManager.js +10 -18
  332. package/lib/services/manager/scheduleConferenceManager.d.ts +113 -0
  333. package/lib/services/manager/scheduleConferenceManager.js +147 -0
  334. package/lib/services/manager/userManager.d.ts +2 -0
  335. package/lib/services/manager/userManager.js +4 -0
  336. package/lib/services/roomService.d.ts +8 -0
  337. package/lib/services/roomService.js +38 -12
  338. package/lib/services/types.d.ts +8 -0
  339. package/lib/services/types.js +2 -0
  340. package/lib/stores/basic.js +8 -2
  341. package/lib/stores/room.d.ts +2 -0
  342. package/lib/stores/room.js +55 -24
  343. package/lib/utils/adapter.js +39 -3
  344. package/lib/utils/utils.d.ts +3 -0
  345. package/lib/utils/utils.js +64 -0
  346. package/package.json +2 -2
  347. package/src/TUIRoom/assets/style/black-theme.scss +3 -1
  348. package/src/TUIRoom/assets/style/white-theme.scss +3 -1
  349. package/src/TUIRoom/components/Chat/ChatEditor/useChatEditor.ts +1 -1
  350. package/src/TUIRoom/components/Chat/MessageList/index.vue +5 -1
  351. package/src/TUIRoom/components/Chat/MessageList/useMessageListHook.ts +2 -1
  352. package/src/TUIRoom/components/ManageMember/MemberControl/index.vue +23 -7
  353. package/src/TUIRoom/components/ManageMember/MemberControl/useMemberControlHooks.ts +110 -14
  354. package/src/TUIRoom/components/ManageMember/MemberItem/useMemberItemHooks.ts +9 -4
  355. package/src/TUIRoom/components/ManageMember/MemberItemCommon/MemberInfo.vue +2 -1
  356. package/src/TUIRoom/components/ManageMember/index.vue +85 -5
  357. package/src/TUIRoom/components/ManageMember/useIndexHooks.ts +58 -9
  358. package/src/TUIRoom/components/RoomContent/StreamContainer/index.vue +7 -6
  359. package/src/TUIRoom/components/RoomContent/StreamContainer/useStreamContainerHooks.ts +90 -26
  360. package/src/TUIRoom/components/RoomContent/StreamRegion/index.vue +27 -3
  361. package/src/TUIRoom/components/RoomFooter/ApplyControl/MasterApplyControl/index.vue +2 -1
  362. package/src/TUIRoom/components/RoomFooter/EndControl/index.vue +1 -1
  363. package/src/TUIRoom/components/RoomFooter/EndControl/useEndControlHooks.ts +10 -3
  364. package/src/TUIRoom/components/RoomFooter/ScreenShareControl/Index.vue +11 -1
  365. package/src/TUIRoom/components/RoomFooter/VideoControl.vue +0 -7
  366. package/src/TUIRoom/components/RoomHeader/UserInfo/index.vue +19 -50
  367. package/src/TUIRoom/components/RoomHeader/UserInfo/useUserInfoHooks.ts +1 -28
  368. package/src/TUIRoom/components/RoomHome/RoomControl/index.vue +91 -73
  369. package/src/TUIRoom/components/RoomSidebar/useSideBarHooks.ts +3 -2
  370. package/src/TUIRoom/components/ScheduleConference/Contacts.vue +265 -0
  371. package/src/TUIRoom/components/ScheduleConference/DurationTimePicker.vue +54 -0
  372. package/src/TUIRoom/components/ScheduleConference/ScheduleConferencePanel.vue +731 -0
  373. package/src/TUIRoom/components/ScheduleConference/ScheduleRoomControl.vue +577 -0
  374. package/src/TUIRoom/components/ScheduleConference/ScheduleRoomList.vue +295 -0
  375. package/src/TUIRoom/components/ScheduleConference/ShareLink.vue +122 -0
  376. package/src/TUIRoom/components/ScheduleConference/TimezonePicker.vue +70 -0
  377. package/src/TUIRoom/components/common/DeviceSelect.vue +62 -20
  378. package/src/TUIRoom/components/common/Logo.vue +3 -3
  379. package/src/TUIRoom/components/common/base/Checkbox.vue +19 -11
  380. package/src/TUIRoom/components/common/base/Datepicker/Datepicker.vue +252 -0
  381. package/src/TUIRoom/components/common/base/Datepicker/Timepicker.vue +54 -0
  382. package/src/TUIRoom/components/common/base/Dialog/index.vue +17 -7
  383. package/src/TUIRoom/components/common/base/Input/index.vue +187 -0
  384. package/src/TUIRoom/components/common/base/Message/Instance.ts +2 -1
  385. package/src/TUIRoom/components/common/base/MessageBox/index.ts +4 -2
  386. package/src/TUIRoom/components/common/base/MessageBox/index.vue +57 -26
  387. package/src/TUIRoom/components/common/base/Option.vue +14 -4
  388. package/src/TUIRoom/components/common/base/Select.vue +18 -13
  389. package/src/TUIRoom/components/common/base/index.ts +1 -1
  390. package/src/TUIRoom/components/common/icons/AllMembersShareScreenIcon.vue +15 -0
  391. package/src/TUIRoom/components/common/icons/ArrowStrokeRightIcon.vue +8 -0
  392. package/src/TUIRoom/components/common/icons/CalendarIcon.vue +6 -0
  393. package/src/TUIRoom/components/common/icons/EditNameCardIcon.vue +13 -0
  394. package/src/TUIRoom/components/common/icons/EllipsisIcon.vue +8 -0
  395. package/src/TUIRoom/components/common/icons/HostShareScreenIcon.vue +13 -0
  396. package/src/TUIRoom/components/common/icons/LinkIcon.vue +10 -0
  397. package/src/TUIRoom/components/common/icons/LoadingScheduleIcon.vue +6 -0
  398. package/src/TUIRoom/components/common/icons/ScheduleAttendees.vue +13 -0
  399. package/src/TUIRoom/components/common/icons/ScheduleRoomIcon.vue +6 -0
  400. package/src/TUIRoom/components/common/icons/SuccessIcon.vue +8 -0
  401. package/src/TUIRoom/components/common/icons/WarningIcon.vue +13 -0
  402. package/src/TUIRoom/conference.ts +6 -0
  403. package/src/TUIRoom/conference.vue +16 -5
  404. package/src/TUIRoom/directives/vDblTouch.ts +41 -0
  405. package/src/TUIRoom/directives/vTap.ts +32 -3
  406. package/src/TUIRoom/extension/chatExtension.ts +1 -1
  407. package/src/TUIRoom/hooks/useMasterApplyControl.ts +2 -2
  408. package/src/TUIRoom/index.ts +1 -0
  409. package/src/TUIRoom/locales/en-US.ts +77 -0
  410. package/src/TUIRoom/locales/zh-CN.ts +82 -1
  411. package/src/TUIRoom/preConference.vue +97 -2
  412. package/src/TUIRoom/services/function/errorHandler.ts +169 -0
  413. package/src/TUIRoom/services/function/virtualBackground.ts +3 -3
  414. package/src/TUIRoom/services/index.ts +1 -0
  415. package/src/TUIRoom/services/manager/roomActionManager.ts +10 -18
  416. package/src/TUIRoom/services/manager/scheduleConferenceManager.ts +263 -0
  417. package/src/TUIRoom/services/manager/userManager.ts +6 -0
  418. package/src/TUIRoom/services/roomService.ts +41 -13
  419. package/src/TUIRoom/services/types.ts +8 -1
  420. package/src/TUIRoom/stores/basic.ts +9 -2
  421. package/src/TUIRoom/stores/room.ts +60 -19
  422. package/src/TUIRoom/utils/adapter.ts +44 -4
  423. package/src/TUIRoom/utils/utils.ts +42 -0
  424. package/es/components/common/base/Input.vue.mjs +0 -7
  425. package/es/components/common/base/Input.vue2.mjs +0 -34
  426. package/lib/components/common/base/Input.vue.js +0 -7
  427. package/lib/components/common/base/Input.vue2.js +0 -34
  428. package/src/TUIRoom/components/common/base/Input.vue +0 -61
  429. /package/es/components/{common/base/Input.vue3.mjs → ScheduleConference/Contacts.vue3.mjs} +0 -0
  430. /package/lib/components/{common/base/Input.vue3.js → ScheduleConference/Contacts.vue3.js} +0 -0
@@ -5,55 +5,64 @@ const SvgIcon = require("../../common/base/SvgIcon.vue.js");
5
5
  const LoadingIcon = require("../../common/icons/LoadingIcon.vue.js");
6
6
  const NextIcon = require("../../common/icons/NextIcon.vue.js");
7
7
  const Button = require("../../common/base/Button.vue.js");
8
- const Logo = require("../../common/Logo.vue.js");
9
8
  const useRoomControlHooks = require("./useRoomControlHooks.js");
10
9
  const CreateRoomIcon = require("../../common/icons/CreateRoomIcon.vue.js");
11
10
  const EnterRoomIcon = require("../../common/icons/EnterRoomIcon.vue.js");
11
+ const ScheduleRoomIcon = require("../../common/icons/ScheduleRoomIcon.vue.js");
12
12
  const useRoomEngine = require("../../../hooks/useRoomEngine.js");
13
13
  const basic = require("../../../stores/basic.js");
14
14
  const room = require("../../../stores/room.js");
15
15
  const AudioMediaControl = require("../../common/AudioMediaControl.vue.js");
16
16
  const VideoMediaControl = require("../../common/VideoMediaControl.vue.js");
17
+ const ScheduleConferencePanel = require("../../ScheduleConference/ScheduleConferencePanel.vue.js");
17
18
  const TUIRoomEngine = require("@tencentcloud/tuiroom-engine-electron");
18
19
  const vClickOutside = require("../../../directives/vClickOutside.js");
19
20
  const mediaAbility = require("../../../utils/mediaAbility.js");
20
21
  const useDeviceManager = require("../../../hooks/useDeviceManager.js");
21
- const _withScopeId = (n) => (Vue.pushScopeId("data-v-08aec5e4"), n = n(), Vue.popScopeId(), n);
22
+ const _withScopeId = (n) => (Vue.pushScopeId("data-v-d6c2f9cf"), n = n(), Vue.popScopeId(), n);
22
23
  const _hoisted_1 = { class: "room-control-container" };
23
- const _hoisted_2 = { class: "control-container" };
24
- const _hoisted_3 = { class: "stream-preview-container" };
25
- const _hoisted_4 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ Vue.createElementVNode("div", {
24
+ const _hoisted_2 = { class: "room-control-main" };
25
+ const _hoisted_3 = { class: "control-container" };
26
+ const _hoisted_4 = { class: "stream-preview-container" };
27
+ const _hoisted_5 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ Vue.createElementVNode("div", {
26
28
  id: "stream-preview",
27
29
  class: "stream-preview"
28
30
  }, null, -1));
29
- const _hoisted_5 = { class: "attention-info" };
30
- const _hoisted_6 = {
31
+ const _hoisted_6 = { class: "attention-info" };
32
+ const _hoisted_7 = {
31
33
  key: 0,
32
34
  class: "off-camera-info"
33
35
  };
34
- const _hoisted_7 = { class: "control-region" };
35
- const _hoisted_8 = { class: "media-control-region" };
36
- const _hoisted_9 = { class: "room-control-region" };
37
- const _hoisted_10 = { class: "create-room-region" };
38
- const _hoisted_11 = { class: "button-text" };
39
- const _hoisted_12 = {
36
+ const _hoisted_8 = { class: "control-region" };
37
+ const _hoisted_9 = { class: "media-control-region" };
38
+ const _hoisted_10 = { class: "room-control-region" };
39
+ const _hoisted_11 = { class: "create-room-region" };
40
+ const _hoisted_12 = { class: "button-text" };
41
+ const _hoisted_13 = {
40
42
  key: 0,
41
43
  class: "create-room-items"
42
44
  };
43
- const _hoisted_13 = ["title"];
44
45
  const _hoisted_14 = ["title"];
45
- const _hoisted_15 = { class: "enter-room-region" };
46
- const _hoisted_16 = { class: "button-text" };
47
- const _hoisted_17 = {
46
+ const _hoisted_15 = ["title"];
47
+ const _hoisted_16 = { class: "enter-room-region" };
48
+ const _hoisted_17 = { class: "button-text" };
49
+ const _hoisted_18 = {
48
50
  key: 1,
49
51
  class: "enter-room-action"
50
52
  };
51
- const _hoisted_18 = ["placeholder"];
53
+ const _hoisted_19 = ["placeholder"];
54
+ const _hoisted_20 = {
55
+ key: 0,
56
+ class: "schedule-room-region"
57
+ };
58
+ const _hoisted_21 = { class: "button-text" };
52
59
  const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
53
60
  __name: "index",
54
61
  props: {
62
+ userName: { default: "" },
55
63
  showLogo: { type: Boolean, default: true },
56
- givenRoomId: {}
64
+ givenRoomId: {},
65
+ enableScheduledConference: { type: Boolean, default: true }
57
66
  },
58
67
  emits: ["create-room", "enter-room"],
59
68
  setup(__props, { expose: __expose, emit: __emit }) {
@@ -75,6 +84,10 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
75
84
  const isCameraMuted = Vue.ref(false);
76
85
  const showCreateRoomItems = Vue.ref(false);
77
86
  const showEnterRoomAction = Vue.ref(Boolean(props.givenRoomId));
87
+ const scheduleConferenceDialogVisible = Vue.ref(false);
88
+ const scheduleConference = () => {
89
+ scheduleConferenceDialogVisible.value = true;
90
+ };
78
91
  const tuiRoomParam = {
79
92
  isOpenCamera: true,
80
93
  isOpenMicrophone: true,
@@ -121,6 +134,7 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
121
134
  tuiRoomParam.isOpenCamera = !isCameraMuted.value;
122
135
  if (isCameraMuted.value) {
123
136
  await closeCamera();
137
+ isCameraLoading.value = false;
124
138
  } else {
125
139
  isCameraLoading.value = true;
126
140
  await openCamera();
@@ -202,112 +216,131 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
202
216
  });
203
217
  return (_ctx, _cache) => {
204
218
  return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
205
- Vue.withDirectives(Vue.createVNode(Logo.default, { class: "logo" }, null, 512), [
206
- [Vue.vShow, _ctx.showLogo]
207
- ]),
208
219
  Vue.createElementVNode("div", _hoisted_2, [
209
220
  Vue.createElementVNode("div", _hoisted_3, [
210
- _hoisted_4,
211
- Vue.createElementVNode("div", _hoisted_5, [
212
- isCameraMuted.value ? (Vue.openBlock(), Vue.createElementBlock("span", _hoisted_6, Vue.toDisplayString(Vue.unref(t)("Off Camera")), 1)) : Vue.createCommentVNode("", true),
213
- isCameraLoading.value ? (Vue.openBlock(), Vue.createBlock(SvgIcon.default, {
214
- key: 1,
215
- icon: LoadingIcon.default,
216
- class: "loading"
217
- })) : Vue.createCommentVNode("", true)
218
- ])
219
- ]),
220
- Vue.createElementVNode("div", _hoisted_7, [
221
- Vue.createElementVNode("div", _hoisted_8, [
222
- Vue.createVNode(AudioMediaControl.default, {
223
- class: "media-control-item",
224
- "has-more": true,
225
- "is-muted": isMicMuted.value,
226
- "audio-volume": audioVolume.value,
227
- onClick: toggleMuteAudio
228
- }, null, 8, ["is-muted", "audio-volume"]),
229
- Vue.createVNode(VideoMediaControl.default, {
230
- class: "media-control-item",
231
- "has-more": true,
232
- "is-muted": isCameraMuted.value,
233
- onClick: toggleMuteVideo
234
- }, null, 8, ["is-muted"])
221
+ Vue.createElementVNode("div", _hoisted_4, [
222
+ _hoisted_5,
223
+ Vue.createElementVNode("div", _hoisted_6, [
224
+ isCameraMuted.value ? (Vue.openBlock(), Vue.createElementBlock("span", _hoisted_7, Vue.toDisplayString(Vue.unref(t)("Off Camera")), 1)) : Vue.createCommentVNode("", true),
225
+ isCameraLoading.value ? (Vue.openBlock(), Vue.createBlock(SvgIcon.default, {
226
+ key: 1,
227
+ icon: LoadingIcon.default,
228
+ class: "loading"
229
+ })) : Vue.createCommentVNode("", true)
230
+ ])
235
231
  ]),
236
- Vue.createElementVNode("div", _hoisted_9, [
237
- Vue.createElementVNode("div", _hoisted_10, [
238
- Vue.createVNode(Button.default, {
239
- class: "button-item",
240
- onClick: Vue.withModifiers(handleCreateRoom, ["stop"])
241
- }, {
242
- default: Vue.withCtx(() => [
243
- Vue.createVNode(SvgIcon.default, { icon: CreateRoomIcon.default }),
244
- Vue.createElementVNode("span", _hoisted_11, Vue.toDisplayString(Vue.unref(t)("New Room")), 1)
245
- ]),
246
- _: 1
247
- }),
248
- showCreateRoomItems.value ? Vue.withDirectives((Vue.openBlock(), Vue.createElementBlock("div", _hoisted_12, [
249
- Vue.createElementVNode("div", {
250
- class: "create-room-item",
251
- onClick: _cache[0] || (_cache[0] = ($event) => createRoom("SpeakAfterTakingSeat"))
252
- }, [
253
- Vue.createElementVNode("span", {
254
- title: Vue.unref(t)("On-stage Speaking Room"),
255
- class: "create-room-option"
256
- }, Vue.toDisplayString(Vue.unref(t)("On-stage Speaking Room")), 9, _hoisted_13),
257
- Vue.createVNode(SvgIcon.default, {
258
- class: "create-room-icon",
259
- icon: NextIcon.default
260
- })
261
- ]),
262
- Vue.createElementVNode("div", {
263
- class: "create-room-item",
264
- onClick: _cache[1] || (_cache[1] = ($event) => createRoom("FreeToSpeak"))
265
- }, [
266
- Vue.createElementVNode("span", {
267
- title: Vue.unref(t)("Free Speech Room"),
268
- class: "create-room-option"
269
- }, Vue.toDisplayString(Vue.unref(t)("Free Speech Room")), 9, _hoisted_14),
270
- Vue.createVNode(SvgIcon.default, {
271
- class: "create-room-icon",
272
- icon: NextIcon.default
273
- })
274
- ])
275
- ])), [
276
- [Vue.unref(vClickOutside.default), handleClickOutsideCreateRoomItems]
277
- ]) : Vue.createCommentVNode("", true)
232
+ Vue.createElementVNode("div", _hoisted_8, [
233
+ Vue.createElementVNode("div", _hoisted_9, [
234
+ Vue.createVNode(AudioMediaControl.default, {
235
+ class: "media-control-item",
236
+ "has-more": true,
237
+ "is-muted": isMicMuted.value,
238
+ "audio-volume": audioVolume.value,
239
+ onClick: toggleMuteAudio
240
+ }, null, 8, ["is-muted", "audio-volume"]),
241
+ Vue.createVNode(VideoMediaControl.default, {
242
+ class: "media-control-item",
243
+ "has-more": true,
244
+ "is-muted": isCameraMuted.value,
245
+ onClick: toggleMuteVideo
246
+ }, null, 8, ["is-muted"])
278
247
  ]),
279
- Vue.createElementVNode("div", _hoisted_15, [
280
- !showEnterRoomAction.value ? (Vue.openBlock(), Vue.createBlock(Button.default, {
281
- key: 0,
282
- class: "button-item",
283
- onClick: handleEnterRoom
284
- }, {
285
- default: Vue.withCtx(() => [
286
- Vue.createVNode(SvgIcon.default, { icon: EnterRoomIcon.default }),
287
- Vue.createElementVNode("span", _hoisted_16, Vue.toDisplayString(Vue.unref(t)("Join Room")), 1)
288
- ]),
289
- _: 1
290
- })) : Vue.createCommentVNode("", true),
291
- showEnterRoomAction.value ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_17, [
292
- Vue.withDirectives(Vue.createElementVNode("input", {
293
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => roomId.value = $event),
294
- class: "input",
295
- placeholder: Vue.unref(t)("Enter room ID"),
296
- onKeyup: Vue.withKeys(enterRoom, ["enter"])
297
- }, null, 40, _hoisted_18), [
298
- [Vue.vModelText, roomId.value]
299
- ]),
300
- Vue.createElementVNode("div", {
301
- class: Vue.normalizeClass(["enter-button", { "active": roomId.value.length > 0 }]),
302
- onClick: enterRoom
303
- }, [
304
- Vue.createVNode(SvgIcon.default, { icon: EnterRoomIcon.default })
305
- ], 2)
248
+ Vue.createElementVNode("div", _hoisted_10, [
249
+ Vue.createElementVNode("div", _hoisted_11, [
250
+ Vue.createVNode(Button.default, {
251
+ class: "button-item",
252
+ style: { "width": "170px" },
253
+ onClick: Vue.withModifiers(handleCreateRoom, ["stop"])
254
+ }, {
255
+ default: Vue.withCtx(() => [
256
+ Vue.createVNode(SvgIcon.default, { icon: CreateRoomIcon.default }),
257
+ Vue.createElementVNode("span", _hoisted_12, Vue.toDisplayString(Vue.unref(t)("New Room")), 1)
258
+ ]),
259
+ _: 1
260
+ }),
261
+ showCreateRoomItems.value ? Vue.withDirectives((Vue.openBlock(), Vue.createElementBlock("div", _hoisted_13, [
262
+ Vue.createElementVNode("div", {
263
+ class: "create-room-item",
264
+ onClick: _cache[0] || (_cache[0] = ($event) => createRoom("SpeakAfterTakingSeat"))
265
+ }, [
266
+ Vue.createElementVNode("span", {
267
+ title: Vue.unref(t)("On-stage Speaking Room"),
268
+ class: "create-room-option"
269
+ }, Vue.toDisplayString(Vue.unref(t)("On-stage Speaking Room")), 9, _hoisted_14),
270
+ Vue.createVNode(SvgIcon.default, {
271
+ class: "create-room-icon",
272
+ icon: NextIcon.default
273
+ })
274
+ ]),
275
+ Vue.createElementVNode("div", {
276
+ class: "create-room-item",
277
+ onClick: _cache[1] || (_cache[1] = ($event) => createRoom("FreeToSpeak"))
278
+ }, [
279
+ Vue.createElementVNode("span", {
280
+ title: Vue.unref(t)("Free Speech Room"),
281
+ class: "create-room-option"
282
+ }, Vue.toDisplayString(Vue.unref(t)("Free Speech Room")), 9, _hoisted_15),
283
+ Vue.createVNode(SvgIcon.default, {
284
+ class: "create-room-icon",
285
+ icon: NextIcon.default
286
+ })
287
+ ])
288
+ ])), [
289
+ [Vue.unref(vClickOutside.default), handleClickOutsideCreateRoomItems]
290
+ ]) : Vue.createCommentVNode("", true)
291
+ ]),
292
+ Vue.createElementVNode("div", _hoisted_16, [
293
+ !showEnterRoomAction.value ? (Vue.openBlock(), Vue.createBlock(Button.default, {
294
+ key: 0,
295
+ class: "button-item",
296
+ style: { "width": "170px" },
297
+ onClick: handleEnterRoom
298
+ }, {
299
+ default: Vue.withCtx(() => [
300
+ Vue.createVNode(SvgIcon.default, { icon: EnterRoomIcon.default }),
301
+ Vue.createElementVNode("span", _hoisted_17, Vue.toDisplayString(Vue.unref(t)("Join Room")), 1)
302
+ ]),
303
+ _: 1
304
+ })) : Vue.createCommentVNode("", true),
305
+ showEnterRoomAction.value ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_18, [
306
+ Vue.withDirectives(Vue.createElementVNode("input", {
307
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => roomId.value = $event),
308
+ class: "input",
309
+ placeholder: Vue.unref(t)("Enter room ID"),
310
+ onKeyup: Vue.withKeys(enterRoom, ["enter"])
311
+ }, null, 40, _hoisted_19), [
312
+ [Vue.vModelText, roomId.value]
313
+ ]),
314
+ Vue.createElementVNode("div", {
315
+ class: Vue.normalizeClass(["enter-button", { "active": roomId.value.length > 0 }]),
316
+ onClick: enterRoom
317
+ }, [
318
+ Vue.createVNode(SvgIcon.default, { icon: EnterRoomIcon.default })
319
+ ], 2)
320
+ ])) : Vue.createCommentVNode("", true)
321
+ ]),
322
+ props.enableScheduledConference ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_20, [
323
+ Vue.createVNode(Button.default, {
324
+ class: "button-item",
325
+ style: { "width": "170px" },
326
+ onClick: scheduleConference
327
+ }, {
328
+ default: Vue.withCtx(() => [
329
+ Vue.createVNode(SvgIcon.default, { icon: ScheduleRoomIcon.default }),
330
+ Vue.createElementVNode("span", _hoisted_21, Vue.toDisplayString(Vue.unref(t)("Schedule")), 1)
331
+ ]),
332
+ _: 1
333
+ })
306
334
  ])) : Vue.createCommentVNode("", true)
307
335
  ])
308
336
  ])
309
337
  ])
310
- ])
338
+ ]),
339
+ Vue.createVNode(ScheduleConferencePanel.default, {
340
+ visible: scheduleConferenceDialogVisible.value,
341
+ "user-name": props.userName,
342
+ onInput: _cache[3] || (_cache[3] = ($event) => scheduleConferenceDialogVisible.value = $event)
343
+ }, null, 8, ["visible", "user-name"])
311
344
  ]);
312
345
  };
313
346
  }
@@ -14,7 +14,7 @@ function useSideBar() {
14
14
  const { t } = index.useI18n();
15
15
  const chatStore = chat.useChatStore();
16
16
  const basicStore = basic.useBasicStore();
17
- const { sdkAppId, isSidebarOpen, sidebarName } = pinia.storeToRefs(basicStore);
17
+ const { sdkAppId, isSidebarOpen, sidebarName, roomId } = pinia.storeToRefs(basicStore);
18
18
  const roomStore = room.useRoomStore();
19
19
  const { userNumber } = pinia.storeToRefs(roomStore);
20
20
  const showSideBar = Vue.computed(() => isSidebarOpen.value && sidebarName.value !== "transfer-leave");
@@ -48,8 +48,9 @@ function useSideBar() {
48
48
  if (!options || !options.data) {
49
49
  return;
50
50
  }
51
+ const currentConversationId = `GROUP${roomId.value}`;
51
52
  options.data.forEach((message) => {
52
- if (message.type === TUIRoomEngine.TencentCloudChat.TYPES.MSG_TEXT) {
53
+ if (message.conversationID === currentConversationId && message.type === TUIRoomEngine.TencentCloudChat.TYPES.MSG_TEXT) {
53
54
  if (!basicStore.isSidebarOpen || basicStore.sidebarName !== "chat") {
54
55
  chatStore.updateUnReadCount(++chatStore.unReadCount);
55
56
  }
@@ -0,0 +1,22 @@
1
+ interface Props {
2
+ visible: boolean;
3
+ contacts: any[];
4
+ selectedList?: any[];
5
+ }
6
+ declare const _default: import('vue').DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
+ input: (...args: any[]) => void;
8
+ confirm: (...args: any[]) => void;
9
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
10
+ onInput?: ((...args: any[]) => any) | undefined;
11
+ onConfirm?: ((...args: any[]) => any) | undefined;
12
+ }, {}, {}>;
13
+ export default _default;
14
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
15
+ type __VLS_TypePropsToRuntimeProps<T> = {
16
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
17
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
18
+ } : {
19
+ type: import('vue').PropType<T[K]>;
20
+ required: true;
21
+ };
22
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const Contacts_vue_vue_type_script_setup_true_lang = require("./Contacts.vue2.js");
4
+ require("./Contacts.vue3.js");
5
+ const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.js");
6
+ const Contacts = /* @__PURE__ */ _pluginVue_exportHelper.default(Contacts_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-6ec64c29"]]);
7
+ exports.default = Contacts;
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const Vue = require("vue");
4
+ const index$1 = require("../common/base/Dialog/index.vue.js");
5
+ const index$2 = require("../common/base/Input/index.vue.js");
6
+ const Checkbox = require("../common/base/Checkbox.vue.js");
7
+ const Button = require("../common/base/Button.vue.js");
8
+ const Avatar = require("../common/Avatar.vue.js");
9
+ const SearchIcon = require("../common/icons/SearchIcon.vue.js");
10
+ const CloseIcon = require("../common/icons/CloseIcon.vue.js");
11
+ const index = require("../../locales/index.js");
12
+ const _hoisted_1 = { class: "contacts-container" };
13
+ const _hoisted_2 = { class: "contact" };
14
+ const _hoisted_3 = { class: "contact-search" };
15
+ const _hoisted_4 = { class: "contact-list" };
16
+ const _hoisted_5 = {
17
+ key: 0,
18
+ class: "no-result"
19
+ };
20
+ const _hoisted_6 = { class: "contact-list-item-checkbox-container" };
21
+ const _hoisted_7 = ["title"];
22
+ const _hoisted_8 = { class: "chosen" };
23
+ const _hoisted_9 = { class: "chosen-title" };
24
+ const _hoisted_10 = { class: "chosen-list" };
25
+ const _hoisted_11 = ["title"];
26
+ const _hoisted_12 = { class: "chosen-footer" };
27
+ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
28
+ __name: "Contacts",
29
+ props: {
30
+ visible: { type: Boolean },
31
+ contacts: {},
32
+ selectedList: {}
33
+ },
34
+ emits: ["input", "confirm"],
35
+ setup(__props, { emit: __emit }) {
36
+ const { t } = index.useI18n();
37
+ const props = __props;
38
+ const emit = __emit;
39
+ const isDialogVisible = Vue.ref(false);
40
+ const searchValue = Vue.ref("");
41
+ const updateContacts = () => {
42
+ contacts.value = props.contacts.map((user) => {
43
+ var _a;
44
+ const index2 = (_a = props.selectedList) == null ? void 0 : _a.findIndex((selectedUser) => selectedUser.userId === user.userID);
45
+ return { selected: index2 !== void 0 && index2 !== -1, userInfo: user };
46
+ });
47
+ };
48
+ const updateVisible = (val) => {
49
+ updateContacts();
50
+ emit("input", val);
51
+ };
52
+ const contacts = Vue.ref(props.contacts.map((user) => {
53
+ var _a;
54
+ const index2 = (_a = props.selectedList) == null ? void 0 : _a.findIndex((selectedUser) => selectedUser.userId === user.userID);
55
+ return { selected: !!index2 && index2 !== -1, userInfo: user };
56
+ }));
57
+ const selectedContacts = Vue.computed(() => contacts.value.filter((user) => user.selected));
58
+ const searchResult = Vue.ref([]);
59
+ const showList = Vue.computed(() => searchValue.value ? searchResult.value : contacts.value);
60
+ const searchContact = (v) => {
61
+ if (!v)
62
+ return [];
63
+ searchResult.value = contacts.value.filter((item) => item.userInfo.profile.nick.includes(v) || item.userInfo.userID.includes(v));
64
+ };
65
+ const removeSelectUser = (user) => {
66
+ const index2 = contacts.value.findIndex((item) => user.userInfo.userID === item.userInfo.userID);
67
+ contacts.value[index2].selected = false;
68
+ };
69
+ const confirm = () => {
70
+ emit("confirm", selectedContacts.value.map((item) => {
71
+ const { userID, profile } = item.userInfo;
72
+ return {
73
+ userId: userID,
74
+ userName: profile.nick,
75
+ avatarUrl: profile.avatar
76
+ };
77
+ }));
78
+ updateVisible(false);
79
+ };
80
+ const cancel = () => {
81
+ updateVisible(false);
82
+ };
83
+ Vue.watch(
84
+ () => props.visible,
85
+ (val) => {
86
+ isDialogVisible.value = val;
87
+ },
88
+ {
89
+ immediate: true
90
+ }
91
+ );
92
+ Vue.watch(isDialogVisible, (val) => {
93
+ searchValue.value = "";
94
+ updateVisible(val);
95
+ }, { immediate: true });
96
+ return (_ctx, _cache) => {
97
+ return Vue.openBlock(), Vue.createBlock(index$1.default, {
98
+ modelValue: isDialogVisible.value,
99
+ "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => isDialogVisible.value = $event),
100
+ title: Vue.unref(t)("Contacts"),
101
+ modal: true,
102
+ "append-to-body": true,
103
+ "close-on-click-modal": false
104
+ }, {
105
+ default: Vue.withCtx(() => [
106
+ Vue.createElementVNode("div", _hoisted_1, [
107
+ Vue.createElementVNode("div", _hoisted_2, [
108
+ Vue.createElementVNode("div", _hoisted_3, [
109
+ Vue.createVNode(index$2.default, {
110
+ modelValue: searchValue.value,
111
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => searchValue.value = $event),
112
+ class: "contact-search-input",
113
+ search: searchContact,
114
+ onFocus: _cache[2] || (_cache[2] = (element) => {
115
+ element.classList.add("focus");
116
+ }),
117
+ onBlur: _cache[3] || (_cache[3] = (element) => {
118
+ element.classList.remove("focus");
119
+ })
120
+ }, {
121
+ suffixIcon: Vue.withCtx(() => [
122
+ Vue.createVNode(SearchIcon.default, {
123
+ class: "search-icon",
124
+ onMousedown: _cache[0] || (_cache[0] = Vue.withModifiers(() => {
125
+ }, ["prevent"]))
126
+ })
127
+ ]),
128
+ _: 1
129
+ }, 8, ["modelValue"])
130
+ ]),
131
+ Vue.createElementVNode("div", _hoisted_4, [
132
+ showList.value.length === 0 && searchValue.value ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_5, Vue.toDisplayString(Vue.unref(t)("No relevant members found")), 1)) : (Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, { key: 1 }, Vue.renderList(showList.value, (item) => {
133
+ return Vue.openBlock(), Vue.createElementBlock("div", {
134
+ key: item.userInfo.userID,
135
+ class: "contact-list-item"
136
+ }, [
137
+ Vue.createVNode(Checkbox.default, {
138
+ "model-value": item.selected,
139
+ class: "contact-list-item-checkbox",
140
+ onInput: ($event) => item.selected = $event
141
+ }, {
142
+ default: Vue.withCtx(() => [
143
+ Vue.createElementVNode("span", _hoisted_6, [
144
+ Vue.createVNode(Avatar.default, {
145
+ class: "contact-list-item-avatar",
146
+ "img-src": item.userInfo.profile.avatar
147
+ }, null, 8, ["img-src"]),
148
+ Vue.createElementVNode("p", {
149
+ class: "contact-list-item-name",
150
+ title: item.userInfo.profile.nick
151
+ }, Vue.toDisplayString(item.userInfo.profile.nick || item.userInfo.profile.userID), 9, _hoisted_7)
152
+ ])
153
+ ]),
154
+ _: 2
155
+ }, 1032, ["model-value", "onInput"])
156
+ ]);
157
+ }), 128))
158
+ ])
159
+ ]),
160
+ Vue.createElementVNode("div", _hoisted_8, [
161
+ Vue.createElementVNode("div", _hoisted_9, Vue.toDisplayString(Vue.unref(t)(`Selected Contact`) + `(${selectedContacts.value.length})`), 1),
162
+ Vue.createElementVNode("div", _hoisted_10, [
163
+ (Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, null, Vue.renderList(selectedContacts.value, (item) => {
164
+ return Vue.openBlock(), Vue.createElementBlock("div", {
165
+ key: item.userInfo.userID,
166
+ class: "chosen-list-item"
167
+ }, [
168
+ Vue.createVNode(Avatar.default, {
169
+ class: "chosen-list-item-avatar",
170
+ "img-src": item.userInfo.profile.avatar
171
+ }, null, 8, ["img-src"]),
172
+ Vue.createElementVNode("p", {
173
+ class: "chosen-list-item-name",
174
+ title: item.userInfo.profile.nick
175
+ }, Vue.toDisplayString(item.userInfo.profile.nick || item.userInfo.profile.userID), 9, _hoisted_11),
176
+ Vue.createVNode(CloseIcon.default, {
177
+ class: "chosen-list-item-remove",
178
+ onClick: ($event) => removeSelectUser(item)
179
+ }, null, 8, ["onClick"])
180
+ ]);
181
+ }), 128))
182
+ ]),
183
+ Vue.createElementVNode("div", _hoisted_12, [
184
+ Vue.createVNode(Button.default, {
185
+ class: "chosen-footer-button",
186
+ type: "primary",
187
+ onClick: cancel
188
+ }, {
189
+ default: Vue.withCtx(() => [
190
+ Vue.createTextVNode(Vue.toDisplayString(Vue.unref(t)("Cancel")), 1)
191
+ ]),
192
+ _: 1
193
+ }),
194
+ Vue.createVNode(Button.default, {
195
+ class: "chosen-footer-button",
196
+ onClick: confirm
197
+ }, {
198
+ default: Vue.withCtx(() => [
199
+ Vue.createTextVNode(Vue.toDisplayString(Vue.unref(t)("Confirm")), 1)
200
+ ]),
201
+ _: 1
202
+ })
203
+ ])
204
+ ])
205
+ ])
206
+ ]),
207
+ _: 1
208
+ }, 8, ["modelValue", "title"]);
209
+ };
210
+ }
211
+ });
212
+ exports.default = _sfc_main;
@@ -0,0 +1,18 @@
1
+ interface Props {
2
+ modelValue: number;
3
+ }
4
+ declare const _default: import('vue').DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
+ input: (...args: any[]) => void;
6
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
7
+ onInput?: ((...args: any[]) => any) | undefined;
8
+ }, {}, {}>;
9
+ export default _default;
10
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
11
+ type __VLS_TypePropsToRuntimeProps<T> = {
12
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
13
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
14
+ } : {
15
+ type: import('vue').PropType<T[K]>;
16
+ required: true;
17
+ };
18
+ };