tuikit-atomicx-vue3 4.4.0 → 4.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 (641) hide show
  1. package/.eslintrc.cjs +6 -2
  2. package/dist/DurationSelector.vue_vue_type_script_setup_true_lang-RndH6NtJ.js +54 -0
  3. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-D9jiYNFu.js → MessageInput.vue_vue_type_script_setup_true_lang-jPzZ5INK.js} +31 -29
  4. package/dist/TimezoneSelector.vue_vue_type_script_setup_true_lang-C-lovW-l.js +62 -0
  5. package/dist/baseComp/AudioIcon.js +7 -7
  6. package/dist/baseComp/Input/InputH5.vue.d.ts +1 -1
  7. package/dist/baseComp/Input/InputPC.vue.d.ts +1 -1
  8. package/dist/baseComp/Input/InputWX.vue.d.ts +1 -1
  9. package/dist/baseComp/Input/index.d.ts +15 -15
  10. package/dist/changeNameCardDialog.vue_vue_type_script_setup_true_lang-a4FmKskP.js +41 -0
  11. package/dist/chat/index.d.ts +490 -475
  12. package/dist/components/AudioSetting/AudioMediaControl.js +23 -23
  13. package/dist/components/AudioSetting/AudioRequestDialog.js +86 -2
  14. package/dist/components/AudioSetting/AudioSettingTab.js +32 -33
  15. package/dist/components/AudioSetting/MicrophoneSelect.js +14 -15
  16. package/dist/components/AudioSetting/SpeakerSelect.js +16 -17
  17. package/dist/components/AudioSetting/index.js +29 -3
  18. package/dist/components/AudioSettingPanel/MicrophoneSelect.js +61 -0
  19. package/dist/components/AudioSettingPanel/MicrophoneSelect.vue.d.ts +29 -0
  20. package/dist/components/AudioSettingPanel/SpeakerSelect.js +61 -0
  21. package/dist/components/AudioSettingPanel/SpeakerSelect.vue.d.ts +29 -0
  22. package/dist/components/AudioSettingPanel/i18n/en-US/index.d.ts +12 -6
  23. package/dist/components/AudioSettingPanel/i18n/en-US/index.js +12 -6
  24. package/dist/components/AudioSettingPanel/i18n/zh-CN/index.d.ts +12 -6
  25. package/dist/components/AudioSettingPanel/i18n/zh-CN/index.js +12 -6
  26. package/dist/components/AudioSettingPanel/index.d.ts +49 -2
  27. package/dist/components/AudioSettingPanel/index.js +127 -94
  28. package/dist/components/AudioSettingPanel/index.vue.d.ts +49 -1
  29. package/dist/components/BarrageInput/TextEditor/CharacterCountExtension.js +1 -1
  30. package/dist/components/BarrageInput/TextEditor/EditorCore.js +5 -4
  31. package/dist/components/BarrageInput/TextEditor/TextEditor.vue.d.ts +1 -1
  32. package/dist/components/BarrageInput/index.d.ts +6 -6
  33. package/dist/components/BarrageList/BarrageList.js +7 -7
  34. package/dist/components/BarrageList/BarrageListH5.js +7 -7
  35. package/dist/components/BarrageList/BarrageListState.d.ts +5 -27
  36. package/dist/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.js +4 -4
  37. package/dist/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.vue.d.ts +1 -1
  38. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.js +11 -11
  39. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.vue.d.ts +1 -1
  40. package/dist/components/BarrageList/Message/TextMessage/TextMessage.js +4 -4
  41. package/dist/components/BarrageList/Message/TextMessage/TextMessage.vue.d.ts +1 -1
  42. package/dist/components/CameraButton/index.js +7 -7
  43. package/dist/components/ChatSetting/GroupChatSetting/GroupChatSetting.js +2 -1
  44. package/dist/components/ChatSetting/SettingItem/SettingItem.vue.d.ts +2 -2
  45. package/dist/components/ConversationList/ConversationActions/ConversationActions.js +49 -51
  46. package/dist/components/ConversationList/ConversationList.vue.d.ts +190 -190
  47. package/dist/components/ConversationList/ConversationPreview/ConversationPreview.vue.d.ts +82 -82
  48. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewTimestamp.js +31 -29
  49. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue.d.ts +16 -16
  50. package/dist/components/ConversationList/ConversationSearch/ConversationSearch.vue.d.ts +36 -36
  51. package/dist/components/ConversationList/index.d.ts +442 -442
  52. package/dist/components/FreeBeautyPanel/FreeBeautyPanel.js +257 -0
  53. package/dist/components/FreeBeautyPanel/FreeBeautyPanel.vue.d.ts +6 -0
  54. package/dist/components/FreeBeautyPanel/i18n/en-US/index.d.ts +15 -0
  55. package/dist/components/FreeBeautyPanel/i18n/en-US/index.js +19 -0
  56. package/dist/components/FreeBeautyPanel/i18n/index.d.ts +4 -0
  57. package/dist/components/FreeBeautyPanel/i18n/index.js +6 -0
  58. package/dist/components/FreeBeautyPanel/i18n/zh-CN/index.d.ts +15 -0
  59. package/dist/components/FreeBeautyPanel/i18n/zh-CN/index.js +19 -0
  60. package/dist/components/FreeBeautyPanel/index.d.ts +6 -0
  61. package/dist/components/FreeBeautyPanel/index.js +10 -0
  62. package/dist/components/LiveMonitorView/LiveMonitorView.js +11 -11
  63. package/dist/components/LiveScenePanel/index.d.ts +1 -2
  64. package/dist/components/LiveScenePanel/index.js +44 -43
  65. package/dist/components/LiveView/DefaultStreamViewUI.js +10 -10
  66. package/dist/components/LiveView/PlayerControl/AudioControl.js +97 -93
  67. package/dist/components/LiveView/PlayerControl/AudioControl.vue.d.ts +10 -6
  68. package/dist/components/LiveView/PlayerControl/MultiResolution.js +58 -64
  69. package/dist/components/LiveView/PlayerControl/MultiResolution.vue.d.ts +1 -7
  70. package/dist/components/LiveView/PlayerControl/PlayerControl.js +82 -83
  71. package/dist/components/LiveView/PlayerControl/PlayerControlState.d.ts +6 -6
  72. package/dist/components/LiveView/PlayerControl/PlayerControlState.js +153 -194
  73. package/dist/components/LiveView/index.d.ts +37 -2
  74. package/dist/components/LiveView/index.js +29 -29
  75. package/dist/components/MessageInput/AudioCallPicker/AudioCallPicker.js +63 -65
  76. package/dist/components/MessageInput/MessageInput.js +1 -1
  77. package/dist/components/MessageInput/MessageInput.vue.d.ts +4 -1
  78. package/dist/components/MessageInput/TextEditor/EditorCore.d.ts +2 -1
  79. package/dist/components/MessageInput/TextEditor/EditorCore.js +47 -61
  80. package/dist/components/MessageInput/TextEditor/TextEditor.vue.d.ts +5 -1
  81. package/dist/components/MessageInput/TextEditor/extensions/characterCountExtension.d.ts +19 -0
  82. package/dist/components/MessageInput/TextEditor/extensions/characterCountExtension.js +74 -0
  83. package/dist/components/MessageInput/TextEditor/extensions/imageExtension.d.ts +2 -0
  84. package/dist/components/MessageInput/TextEditor/extensions/imageExtension.js +62 -0
  85. package/dist/components/MessageInput/TextEditor/index.js +48 -39
  86. package/dist/components/MessageInput/VideoCallPicker/VideoCallPicker.js +67 -69
  87. package/dist/components/MessageInput/i18n/index.d.ts +4 -0
  88. package/dist/components/MessageInput/i18n/zh-CN.d.ts +4 -0
  89. package/dist/components/MessageInput/i18n/zh-CN.js +5 -1
  90. package/dist/components/MessageInput/index.d.ts +60 -30
  91. package/dist/components/MessageInput/index.js +1 -1
  92. package/dist/components/MessageList/Message/CustomMessage/CallMessage/CallMessage.js +18 -18
  93. package/dist/components/MessageList/Message/GroupTipMessage/index.js +13 -13
  94. package/dist/components/MessageList/Message/MessageLayout/MessageLayout.js +63 -69
  95. package/dist/components/MessageList/Message/VideoMessage/VideoMessage.js +48 -53
  96. package/dist/components/MessageList/Message/VideoMessage/VideoMessage.vue.d.ts +8 -8
  97. package/dist/components/MessageList/i18n/en-US.d.ts +65 -1
  98. package/dist/components/MessageList/i18n/en-US.js +66 -2
  99. package/dist/components/MessageList/i18n/index.d.ts +128 -0
  100. package/dist/components/MessageList/i18n/index.js +6 -6
  101. package/dist/components/MessageList/i18n/zh-CN.d.ts +65 -1
  102. package/dist/components/MessageList/i18n/zh-CN.js +64 -0
  103. package/dist/components/MicButton/index.js +13 -13
  104. package/dist/components/RoomParticipantList/ParticipantAction.js +78 -0
  105. package/dist/components/RoomParticipantList/ParticipantAction.vue.d.ts +17 -0
  106. package/dist/components/RoomParticipantList/ParticipantItem.js +82 -0
  107. package/dist/components/RoomParticipantList/ParticipantItem.vue.d.ts +27 -0
  108. package/dist/components/RoomParticipantList/PendingParticipantItem.js +75 -0
  109. package/dist/components/RoomParticipantList/PendingParticipantItem.vue.d.ts +16 -0
  110. package/dist/components/RoomParticipantList/RoomAction.js +89 -0
  111. package/dist/components/RoomParticipantList/RoomAction.vue.d.ts +2 -0
  112. package/dist/components/RoomParticipantList/i18n/en-US/index.d.ts +66 -0
  113. package/dist/components/RoomParticipantList/i18n/en-US/index.js +69 -0
  114. package/dist/components/RoomParticipantList/i18n/index.d.ts +2 -0
  115. package/dist/components/RoomParticipantList/i18n/index.js +6 -0
  116. package/dist/components/RoomParticipantList/i18n/zh-CN/index.d.ts +66 -0
  117. package/dist/components/RoomParticipantList/i18n/zh-CN/index.js +69 -0
  118. package/dist/components/RoomParticipantList/index.d.ts +2 -0
  119. package/dist/components/RoomParticipantList/index.js +171 -0
  120. package/dist/components/RoomParticipantList/index.vue.d.ts +2 -0
  121. package/dist/components/RoomParticipantList/useParticpantAction/index.d.ts +15 -0
  122. package/dist/components/RoomParticipantList/useParticpantAction/index.js +71 -0
  123. package/dist/components/RoomParticipantList/useParticpantAction/useAdminAction.d.ts +19 -0
  124. package/dist/components/RoomParticipantList/useParticpantAction/useAdminAction.js +36 -0
  125. package/dist/components/RoomParticipantList/useParticpantAction/useAudioAction.d.ts +19 -0
  126. package/dist/components/RoomParticipantList/useParticpantAction/useAudioAction.js +42 -0
  127. package/dist/components/RoomParticipantList/useParticpantAction/useKickAction.d.ts +11 -0
  128. package/dist/components/RoomParticipantList/useParticpantAction/useKickAction.js +34 -0
  129. package/dist/components/RoomParticipantList/useParticpantAction/useMessageAction.d.ts +11 -0
  130. package/dist/components/RoomParticipantList/useParticpantAction/useMessageAction.js +31 -0
  131. package/dist/components/RoomParticipantList/useParticpantAction/useNameCardAction/changeNameCardDialog.js +4 -0
  132. package/dist/components/RoomParticipantList/useParticpantAction/useNameCardAction/changeNameCardDialog.vue.d.ts +17 -0
  133. package/dist/components/RoomParticipantList/useParticpantAction/useNameCardAction/index.d.ts +11 -0
  134. package/dist/components/RoomParticipantList/useParticpantAction/useNameCardAction/index.js +61 -0
  135. package/dist/components/RoomParticipantList/useParticpantAction/useTransferOwnerAction.d.ts +11 -0
  136. package/dist/components/RoomParticipantList/useParticpantAction/useTransferOwnerAction.js +54 -0
  137. package/dist/components/RoomParticipantList/useParticpantAction/useVideoAction.d.ts +19 -0
  138. package/dist/components/RoomParticipantList/useParticpantAction/useVideoAction.js +40 -0
  139. package/dist/components/RoomParticipantList/useRoomAction/index.d.ts +8 -0
  140. package/dist/components/RoomParticipantList/useRoomAction/index.js +20 -0
  141. package/dist/components/RoomParticipantList/useRoomAction/useRoomAudioAction.d.ts +5 -0
  142. package/dist/components/RoomParticipantList/useRoomAction/useRoomAudioAction.js +51 -0
  143. package/dist/components/RoomParticipantList/useRoomAction/useRoomScreenAction.d.ts +8 -0
  144. package/dist/components/RoomParticipantList/useRoomAction/useRoomScreenAction.js +60 -0
  145. package/dist/components/RoomParticipantList/useRoomAction/useRoomVideoAction.d.ts +5 -0
  146. package/dist/components/RoomParticipantList/useRoomAction/useRoomVideoAction.js +50 -0
  147. package/dist/components/RoomParticipantView/StreamPlay.js +74 -0
  148. package/dist/components/RoomParticipantView/StreamPlay.vue.d.ts +66 -0
  149. package/dist/components/RoomParticipantView/StreamPlayManager/LazyLoadManager.d.ts +56 -0
  150. package/dist/components/RoomParticipantView/StreamPlayManager/LazyLoadManager.js +94 -0
  151. package/dist/components/RoomParticipantView/StreamPlayManager/StreamInfoManager.d.ts +58 -0
  152. package/dist/components/RoomParticipantView/StreamPlayManager/StreamInfoManager.js +97 -0
  153. package/dist/components/RoomParticipantView/StreamPlayManager/StreamPlayer.d.ts +46 -0
  154. package/dist/components/RoomParticipantView/StreamPlayManager/StreamPlayer.js +100 -0
  155. package/dist/components/RoomParticipantView/StreamPlayManager/VideoQualityManager.d.ts +92 -0
  156. package/dist/components/RoomParticipantView/StreamPlayManager/VideoQualityManager.js +177 -0
  157. package/dist/components/RoomParticipantView/StreamPlayManager/index.d.ts +119 -0
  158. package/dist/components/RoomParticipantView/StreamPlayManager/index.js +298 -0
  159. package/dist/components/RoomParticipantView/StreamPlayManager/types.d.ts +14 -0
  160. package/dist/components/RoomParticipantView/StreamPlayManager/types.js +4 -0
  161. package/dist/components/RoomParticipantView/index.d.ts +99 -0
  162. package/dist/components/RoomParticipantView/index.js +32 -0
  163. package/dist/components/RoomParticipantView/index.vue.d.ts +34 -0
  164. package/dist/components/RoomView/ArrowStroke.js +43 -0
  165. package/dist/components/RoomView/ArrowStroke.vue.d.ts +20 -0
  166. package/dist/components/RoomView/GridLayout.js +119 -0
  167. package/dist/components/RoomView/GridLayout.vue.d.ts +20 -0
  168. package/dist/components/RoomView/SpeakerLayout.js +141 -0
  169. package/dist/components/RoomView/SpeakerLayout.vue.d.ts +32 -0
  170. package/dist/components/RoomView/index.d.ts +52 -0
  171. package/dist/components/RoomView/index.js +49 -0
  172. package/dist/components/RoomView/index.vue.d.ts +46 -0
  173. package/dist/components/RoomView/useRoomToolbar.d.ts +5 -0
  174. package/dist/components/RoomView/useRoomToolbar.js +36 -0
  175. package/dist/components/RoomView/useRoomView.d.ts +13 -0
  176. package/dist/components/RoomView/useRoomView.js +40 -0
  177. package/dist/components/RoomView/useStreamItemDimensions.d.ts +30 -0
  178. package/dist/components/RoomView/useStreamItemDimensions.js +57 -0
  179. package/dist/components/ScheduleRoomPanel/Datepicker.js +162 -0
  180. package/dist/components/ScheduleRoomPanel/Datepicker.vue.d.ts +18 -0
  181. package/dist/components/ScheduleRoomPanel/DurationSelector.js +4 -0
  182. package/dist/components/ScheduleRoomPanel/DurationSelector.vue.d.ts +39 -0
  183. package/dist/components/ScheduleRoomPanel/RoomDetail.js +113 -0
  184. package/dist/components/ScheduleRoomPanel/RoomDetail.vue.d.ts +31 -0
  185. package/dist/components/ScheduleRoomPanel/RoomEdit.js +281 -0
  186. package/dist/components/ScheduleRoomPanel/RoomEdit.vue.d.ts +23 -0
  187. package/dist/components/ScheduleRoomPanel/RoomShare.js +110 -0
  188. package/dist/components/ScheduleRoomPanel/RoomShare.vue.d.ts +16 -0
  189. package/dist/components/ScheduleRoomPanel/ScheduleRoomPanel.js +385 -0
  190. package/dist/components/ScheduleRoomPanel/ScheduleRoomPanel.vue.d.ts +40 -0
  191. package/dist/components/ScheduleRoomPanel/ScheduledRoomList.js +345 -0
  192. package/dist/components/ScheduleRoomPanel/ScheduledRoomList.vue.d.ts +8 -0
  193. package/dist/components/ScheduleRoomPanel/Timepicker.js +65 -0
  194. package/dist/components/ScheduleRoomPanel/Timepicker.vue.d.ts +18 -0
  195. package/dist/components/ScheduleRoomPanel/TimezoneSelector.js +4 -0
  196. package/dist/components/ScheduleRoomPanel/TimezoneSelector.vue.d.ts +18 -0
  197. package/dist/components/ScheduleRoomPanel/i18n/en-US/index.d.ts +108 -0
  198. package/dist/components/ScheduleRoomPanel/i18n/en-US/index.js +111 -0
  199. package/dist/components/ScheduleRoomPanel/i18n/index.d.ts +4 -0
  200. package/dist/components/ScheduleRoomPanel/i18n/index.js +6 -0
  201. package/dist/components/ScheduleRoomPanel/i18n/zh-CN/index.d.ts +108 -0
  202. package/dist/components/ScheduleRoomPanel/i18n/zh-CN/index.js +111 -0
  203. package/dist/components/ScheduleRoomPanel/index.d.ts +34 -0
  204. package/dist/components/ScheduleRoomPanel/index.js +12 -0
  205. package/dist/components/ScheduleRoomPanel/type.d.ts +7 -0
  206. package/dist/components/ScheduleRoomPanel/type.js +1 -0
  207. package/dist/components/ScheduleRoomPanel/utils.d.ts +46 -0
  208. package/dist/components/ScheduleRoomPanel/utils.js +123 -0
  209. package/dist/components/Search/Search.vue.d.ts +12 -12
  210. package/dist/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.js +172 -174
  211. package/dist/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.js +58 -60
  212. package/dist/components/Search/SearchAdvanced/SearchAdvanced.js +28 -30
  213. package/dist/components/Search/SearchAdvanced/SearchTab/SearchTab.js +22 -24
  214. package/dist/components/Search/SearchAdvanced/Slider/Slider.js +26 -28
  215. package/dist/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.js +133 -135
  216. package/dist/components/Search/SearchBar/SearchBar.js +56 -58
  217. package/dist/components/Search/index.d.ts +18 -18
  218. package/dist/components/StreamMixer/LocalMixer/index.js +25 -22
  219. package/dist/components/StreamMixer/index.d.ts +1 -2
  220. package/dist/components/StreamMixer/index.js +9 -8
  221. package/dist/components/StreamView/Layout/CustomLayout.js +53 -53
  222. package/dist/components/StreamView/Layout/CustomLayout.vue.d.ts +1 -2
  223. package/dist/components/StreamView/Layout/FloatLayout.vue.d.ts +1 -2
  224. package/dist/components/StreamView/Layout/GridLayout.js +47 -51
  225. package/dist/components/StreamView/Layout/GridLayout.vue.d.ts +1 -2
  226. package/dist/components/StreamView/Layout/MeetingLayout.js +10 -10
  227. package/dist/components/StreamView/Layout/MeetingLayout.vue.d.ts +1 -1
  228. package/dist/components/StreamView/common/StreamList/index.vue.d.ts +1 -1
  229. package/dist/components/StreamView/common/StreamRegion/StreamRegionPC.vue.d.ts +2 -2
  230. package/dist/components/StreamView/index.d.ts +90 -3
  231. package/dist/components/StreamView/index.js +4 -4
  232. package/dist/components/StreamView/index.vue.d.ts +1 -1
  233. package/dist/components/StreamView/manager/mediaManager.js +9 -9
  234. package/dist/components/UIKitModal/UIKitModal.d.ts +7 -0
  235. package/dist/components/UIKitModal/UIKitModal.js +156 -0
  236. package/dist/components/UIKitModal/index.d.ts +2 -0
  237. package/dist/components/UIKitModal/index.js +6 -0
  238. package/dist/components/UIKitModal/index.vue.d.ts +45 -0
  239. package/dist/components/UIKitModal/type.d.ts +21 -0
  240. package/dist/components/UIKitModal/type.js +1 -0
  241. package/dist/components/UIKitModal/useRoomModal/i18n/en-US/index.d.ts +17 -0
  242. package/dist/components/UIKitModal/useRoomModal/i18n/en-US/index.js +21 -0
  243. package/dist/components/UIKitModal/useRoomModal/i18n/index.d.ts +4 -0
  244. package/dist/components/UIKitModal/useRoomModal/i18n/index.js +6 -0
  245. package/dist/components/UIKitModal/useRoomModal/i18n/zh-CN/index.d.ts +17 -0
  246. package/dist/components/UIKitModal/useRoomModal/i18n/zh-CN/index.js +21 -0
  247. package/dist/components/UIKitModal/useRoomModal/index.d.ts +6 -0
  248. package/dist/components/UIKitModal/useRoomModal/index.js +11 -0
  249. package/dist/components/UIKitModal/useRoomModal/useRoomModal.d.ts +21 -0
  250. package/dist/components/UIKitModal/useRoomModal/useRoomModal.js +79 -0
  251. package/dist/components/UserList/AllUserActions/indexH5.js +21 -21
  252. package/dist/components/UserList/AllUserActions/useIndexHooks.d.ts +0 -2
  253. package/dist/components/UserList/AllUserActions/useIndexHooks.js +24 -25
  254. package/dist/components/UserList/UserItem/UserInfo/index.js +19 -19
  255. package/dist/components/UserPicker/UserPicker.js +1 -2
  256. package/dist/components/UserPicker/components/SelectedPanel/SelectedPanel.js +19 -18
  257. package/dist/components/UserPicker/hooks/useSearchFilter.d.ts +2 -2
  258. package/dist/components/UserPicker/hooks/useSearchFilter.js +39 -31
  259. package/dist/components/UserPicker/i18n/en-US.d.ts +1 -0
  260. package/dist/components/UserPicker/i18n/en-US.js +2 -1
  261. package/dist/components/UserPicker/i18n/index.d.ts +2 -0
  262. package/dist/components/UserPicker/i18n/zh-CN.d.ts +1 -0
  263. package/dist/components/UserPicker/i18n/zh-CN.js +2 -1
  264. package/dist/components/UserPicker/index.d.ts +2 -2
  265. package/dist/components/UserPicker/type.d.ts +1 -1
  266. package/dist/components/VideoSetting/CameraSelect.js +6 -7
  267. package/dist/components/VideoSetting/VideoMediaControl.js +45 -44
  268. package/dist/components/VideoSetting/VideoPreview.js +24 -25
  269. package/dist/components/VideoSetting/VideoProfile.js +22 -23
  270. package/dist/components/VideoSetting/VideoSettingTab.js +24 -24
  271. package/dist/components/VideoSetting/index.js +32 -3
  272. package/dist/components/VideoSettingPanel/CameraSelect.js +28 -25
  273. package/dist/components/VideoSettingPanel/VideoPreview.js +13 -13
  274. package/dist/components/VideoSettingPanel/VideoProfile.js +27 -27
  275. package/dist/components/VideoSettingPanel/i18n/en-US/index.d.ts +13 -10
  276. package/dist/components/VideoSettingPanel/i18n/en-US/index.js +13 -10
  277. package/dist/components/VideoSettingPanel/i18n/zh-CN/index.d.ts +13 -10
  278. package/dist/components/VideoSettingPanel/i18n/zh-CN/index.js +13 -10
  279. package/dist/components/VideoSettingPanel/index.d.ts +9 -0
  280. package/dist/components/VideoSettingPanel/index.js +56 -44
  281. package/dist/components/VideoSettingPanel/index.vue.d.ts +9 -0
  282. package/dist/components/VirtualBackgroundPanel/VirtualBackgroundPanel.js +169 -0
  283. package/dist/components/VirtualBackgroundPanel/VirtualBackgroundPanel.vue.d.ts +33 -0
  284. package/dist/components/VirtualBackgroundPanel/i18n/en-US/index.d.ts +10 -0
  285. package/dist/components/VirtualBackgroundPanel/i18n/en-US/index.js +14 -0
  286. package/dist/components/VirtualBackgroundPanel/i18n/index.d.ts +4 -0
  287. package/dist/components/VirtualBackgroundPanel/i18n/index.js +6 -0
  288. package/dist/components/VirtualBackgroundPanel/i18n/zh-CN/index.d.ts +10 -0
  289. package/dist/components/VirtualBackgroundPanel/i18n/zh-CN/index.js +14 -0
  290. package/dist/components/VirtualBackgroundPanel/index.d.ts +20 -0
  291. package/dist/components/VirtualBackgroundPanel/index.js +10 -0
  292. package/dist/hooks/useRoomActions/index.d.ts +1 -1
  293. package/dist/hooks/useRoomActions/index.js +10 -11
  294. package/dist/hooks/useRoomActions/useRoomAudioAction.d.ts +1 -3
  295. package/dist/hooks/useRoomActions/useRoomAudioAction.js +30 -31
  296. package/dist/hooks/useRoomActions/useRoomScreenAction.d.ts +0 -2
  297. package/dist/hooks/useRoomActions/useRoomScreenAction.js +20 -20
  298. package/dist/hooks/useRoomActions/useRoomVideoAction.d.ts +1 -8
  299. package/dist/hooks/useRoomActions/useRoomVideoAction.js +26 -28
  300. package/dist/hooks/useRoomEngine.d.ts +2 -2
  301. package/dist/hooks/useUserActions/index.d.ts +7 -23
  302. package/dist/hooks/useUserActions/index.js +11 -11
  303. package/dist/hooks/useUserActions/useChangeNameCardAction/index.d.ts +1 -9
  304. package/dist/hooks/useUserActions/useKickUserAction.d.ts +1 -9
  305. package/dist/hooks/useUserActions/useSeatAction.d.ts +1 -1
  306. package/dist/hooks/useUserActions/useSeatAction.js +3 -3
  307. package/dist/hooks/useUserActions/useTransferOwnerAction.d.ts +2 -10
  308. package/dist/hooks/useUserActions/useTransferOwnerAction.js +22 -20
  309. package/dist/hooks/useUserActions/useVideoAction.d.ts +1 -9
  310. package/dist/index-7vNB_Vx8.js +64 -0
  311. package/dist/{index-BfIEeWMg.js → index-Do-2CngU.js} +1894 -1759
  312. package/dist/{index-DTi1fL-x.js → index-ZILx4LYk.js} +1210 -1512
  313. package/dist/index.d.ts +3 -6
  314. package/dist/index.js +255 -194
  315. package/dist/report/MetricsKey.d.ts +27 -14
  316. package/dist/report/MetricsKey.js +1 -1
  317. package/dist/report/dataReport.js +12 -8
  318. package/dist/states/ASRState/ASRState.d.ts +61 -0
  319. package/dist/states/ASRState/ASRState.js +79 -0
  320. package/dist/states/ASRState/index.d.ts +1 -0
  321. package/dist/states/ASRState/index.js +4 -0
  322. package/dist/states/BarrageState/BarrageState.d.ts +70 -44
  323. package/dist/states/BarrageState/BarrageState.js +29 -31
  324. package/dist/states/BarrageState/index.js +2 -3
  325. package/dist/states/BattleState/BattleState.d.ts +101 -5
  326. package/dist/states/C2CSettingState/C2CSettingState.d.ts +107 -0
  327. package/dist/states/CoGuestState.d.ts +53 -1
  328. package/dist/states/CoGuestState.js +15 -15
  329. package/dist/states/CoHostState/CoHostState.d.ts +120 -0
  330. package/dist/states/ContactListState/ContactListState.d.ts +56 -0
  331. package/dist/states/ConversationListState/ConversationListState.d.ts +36 -0
  332. package/dist/states/DeviceState/DeviceState.d.ts +68 -10
  333. package/dist/states/DeviceState/DeviceState.js +233 -189
  334. package/dist/states/DeviceState/mediaAbality.d.ts +2 -0
  335. package/dist/states/DeviceState/mediaAbality.js +11 -0
  336. package/dist/states/FreeBeautyState/FreeBeautyState.d.ts +11 -0
  337. package/dist/states/FreeBeautyState/FreeBeautyState.js +103 -0
  338. package/dist/states/FreeBeautyState/index.d.ts +1 -0
  339. package/dist/states/FreeBeautyState/index.js +4 -0
  340. package/dist/states/GroupSettingState/GroupSettingState.d.ts +59 -0
  341. package/dist/states/LiveAudienceState.d.ts +42 -4
  342. package/dist/states/LiveListState/LiveListState.d.ts +2 -2
  343. package/dist/states/LiveListState/LiveListState.js +5 -5
  344. package/dist/states/LiveMonitorState/index.d.ts +42 -0
  345. package/dist/states/LiveMonitorState/player/adapters/trtc.js +6 -6
  346. package/dist/states/LiveSeatState/index.d.ts +58 -8
  347. package/dist/states/LiveSeatState/index.js +20 -18
  348. package/dist/states/LiveSeatState/seatManager.d.ts +293 -6
  349. package/dist/states/LiveSeatState/seatManager.js +283 -0
  350. package/dist/states/LiveSeatState/store.d.ts +0 -2
  351. package/dist/states/LiveSeatState/usePlayStream/RTCStreamManager.js +13 -13
  352. package/dist/states/LiveSeatState/usePlayStream/RTCStreamPlayer.js +7 -7
  353. package/dist/states/LiveSeatState/usePlayStream/index.d.ts +4 -7
  354. package/dist/states/LiveSeatState/usePlayStream/index.js +65 -54
  355. package/dist/states/LoginState.d.ts +45 -0
  356. package/dist/states/MessageActionState/MessageActionState.d.ts +36 -2
  357. package/dist/states/MessageActionState/MessageActionState.js +142 -22
  358. package/dist/states/MessageListState/MessageListState.d.ts +39 -0
  359. package/dist/states/RoomParticipantState/callEventManager.d.ts +10 -0
  360. package/dist/states/RoomParticipantState/callEventManager.js +49 -0
  361. package/dist/states/RoomParticipantState/common.d.ts +14 -0
  362. package/dist/states/RoomParticipantState/common.js +76 -0
  363. package/dist/states/RoomParticipantState/index.d.ts +4 -0
  364. package/dist/states/RoomParticipantState/index.js +93 -0
  365. package/dist/states/RoomParticipantState/participantEventManager.d.ts +66 -0
  366. package/dist/states/RoomParticipantState/participantEventManager.js +326 -0
  367. package/dist/states/RoomParticipantState/participantManager.d.ts +311 -0
  368. package/dist/states/RoomParticipantState/participantManager.js +440 -0
  369. package/dist/states/RoomParticipantState/scheduleEventManager.d.ts +7 -0
  370. package/dist/states/RoomParticipantState/scheduleEventManager.js +37 -0
  371. package/dist/states/RoomParticipantState/store.d.ts +38 -0
  372. package/dist/states/RoomParticipantState/store.js +102 -0
  373. package/dist/states/RoomState/callManager.d.ts +43 -0
  374. package/dist/states/RoomState/callManager.js +208 -0
  375. package/dist/states/RoomState/common.d.ts +25 -0
  376. package/dist/states/RoomState/common.js +101 -0
  377. package/dist/states/RoomState/index.d.ts +8 -0
  378. package/dist/states/RoomState/index.js +52 -0
  379. package/dist/states/RoomState/roomManager.d.ts +35 -0
  380. package/dist/states/RoomState/roomManager.js +129 -0
  381. package/dist/states/RoomState/scheduleManager.d.ts +48 -0
  382. package/dist/states/RoomState/scheduleManager.js +174 -0
  383. package/dist/states/RoomState/store.d.ts +103 -0
  384. package/dist/states/RoomState/store.js +12 -0
  385. package/dist/states/SearchState.d.ts +47 -0
  386. package/dist/states/SeatStore.d.ts +59 -52
  387. package/dist/states/UIKitModalState/UIKitModalState.d.ts +17 -0
  388. package/dist/states/UIKitModalState/UIKitModalState.js +63 -0
  389. package/dist/states/UIKitModalState/index.d.ts +1 -0
  390. package/dist/states/UIKitModalState/index.js +4 -0
  391. package/dist/states/UserState/index.js +22 -28
  392. package/dist/states/UserState/store.d.ts +1 -1
  393. package/dist/states/UserState/store.js +55 -62
  394. package/dist/states/UserState/userManager.d.ts +2 -2
  395. package/dist/states/UserState/userManager.js +23 -25
  396. package/dist/states/VideoMixerState/VideoMixerState.d.ts +57 -1
  397. package/dist/states/VideoMixerState/VideoMixerState.js +91 -90
  398. package/dist/states/VideoMixerState/index.d.ts +1 -0
  399. package/dist/states/VideoMixerState/index.js +2 -1
  400. package/dist/states/VirtualBackgroundState/VirtualBackgroundState.d.ts +52 -0
  401. package/dist/states/VirtualBackgroundState/VirtualBackgroundState.js +99 -0
  402. package/dist/states/VirtualBackgroundState/index.d.ts +1 -0
  403. package/dist/states/VirtualBackgroundState/index.js +4 -0
  404. package/dist/styles/index.css +1 -1
  405. package/dist/subEntry/common/base.d.ts +5 -0
  406. package/dist/subEntry/common/base.js +21 -0
  407. package/dist/subEntry/common/index.d.ts +2 -0
  408. package/dist/subEntry/common/index.js +29 -0
  409. package/dist/subEntry/common/rtc.d.ts +4 -0
  410. package/dist/subEntry/common/rtc.js +10 -0
  411. package/dist/subEntry/live/index.d.ts +4 -0
  412. package/dist/subEntry/live/index.js +200 -0
  413. package/dist/subEntry/live/live.d.ts +21 -0
  414. package/dist/subEntry/live/live.js +45 -0
  415. package/dist/{rtc → subEntry/live}/server.d.ts +1 -1
  416. package/dist/{rtc → subEntry/live}/server.js +4 -4
  417. package/dist/subEntry/room/index.d.ts +4 -0
  418. package/dist/subEntry/room/index.js +180 -0
  419. package/dist/subEntry/room/room.d.ts +11 -0
  420. package/dist/subEntry/room/room.js +25 -0
  421. package/dist/subEntry/room/server.d.ts +19 -0
  422. package/dist/subEntry/room/server.js +97 -0
  423. package/dist/types/asr.d.ts +29 -0
  424. package/dist/types/asr.js +4 -0
  425. package/dist/types/barrage.d.ts +83 -0
  426. package/dist/types/barrage.js +4 -0
  427. package/dist/types/beauty.d.ts +9 -0
  428. package/dist/types/beauty.js +4 -0
  429. package/dist/types/device.d.ts +0 -1
  430. package/dist/types/index.d.ts +7 -3
  431. package/dist/types/index.js +125 -108
  432. package/dist/types/participant.d.ts +243 -0
  433. package/dist/types/participant.js +10 -0
  434. package/dist/types/room.d.ts +202 -55
  435. package/dist/types/room.js +5 -3
  436. package/dist/types/virtualBackground.d.ts +14 -0
  437. package/dist/types/virtualBackground.js +5 -0
  438. package/dist/utils/call.d.ts +1 -1
  439. package/dist/utils/call.js +78 -79
  440. package/dist/utils/compare.d.ts +10 -0
  441. package/dist/utils/compare.js +12 -0
  442. package/package.json +11 -7
  443. package/src/baseComp/AudioIcon.vue +11 -3
  444. package/src/components/AudioSetting/AudioMediaControl.vue +10 -9
  445. package/src/components/AudioSetting/AudioRequestDialog.vue +11 -11
  446. package/src/components/AudioSetting/AudioSettingTab.vue +14 -14
  447. package/src/components/AudioSetting/MicrophoneSelect.vue +11 -11
  448. package/src/components/AudioSetting/SpeakerSelect.vue +10 -11
  449. package/src/components/AudioSetting/index.ts +1 -1
  450. package/src/components/AudioSetting/index.vue +4 -7
  451. package/src/components/AudioSettingPanel/MicrophoneSelect.vue +77 -0
  452. package/src/components/AudioSettingPanel/SpeakerSelect.vue +78 -0
  453. package/src/components/AudioSettingPanel/i18n/en-US/index.ts +12 -6
  454. package/src/components/AudioSettingPanel/i18n/zh-CN/index.ts +12 -6
  455. package/src/components/AudioSettingPanel/index.ts +3 -1
  456. package/src/components/AudioSettingPanel/index.vue +150 -122
  457. package/src/components/BarrageList/BarrageList.vue +1 -1
  458. package/src/components/BarrageList/BarrageListH5.vue +1 -1
  459. package/src/components/BarrageList/BarrageListState.ts +1 -1
  460. package/src/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.vue +1 -1
  461. package/src/components/BarrageList/Message/MessageLayout/MessageLayout.vue +2 -2
  462. package/src/components/BarrageList/Message/TextMessage/TextMessage.vue +1 -1
  463. package/src/components/ChatSetting/GroupChatSetting/GroupChatSetting.vue +5 -0
  464. package/src/components/ConversationList/ConversationActions/ConversationActions.vue +1 -7
  465. package/src/components/ConversationList/ConversationPreview/ConversationPreviewTimestamp.vue +3 -3
  466. package/src/components/FreeBeautyPanel/FreeBeautyPanel.vue +618 -0
  467. package/src/components/FreeBeautyPanel/i18n/en-US/index.ts +16 -0
  468. package/src/components/FreeBeautyPanel/i18n/index.ts +4 -0
  469. package/src/components/FreeBeautyPanel/i18n/zh-CN/index.ts +16 -0
  470. package/src/components/FreeBeautyPanel/index.ts +11 -0
  471. package/src/components/LiveScenePanel/index.ts +4 -1
  472. package/src/components/LiveView/PlayerControl/AudioControl.vue +72 -80
  473. package/src/components/LiveView/PlayerControl/MultiResolution.vue +29 -26
  474. package/src/components/LiveView/PlayerControl/PlayerControl.vue +10 -36
  475. package/src/components/LiveView/PlayerControl/PlayerControlState.ts +108 -286
  476. package/src/components/LiveView/index.ts +2 -1
  477. package/src/components/MessageInput/AudioCallPicker/AudioCallPicker.vue +8 -6
  478. package/src/components/MessageInput/MessageInput.vue +2 -0
  479. package/src/components/MessageInput/TextEditor/EditorCore.ts +13 -26
  480. package/src/components/MessageInput/TextEditor/TextEditor.vue +23 -2
  481. package/src/components/MessageInput/TextEditor/extensions/characterCountExtension.ts +159 -0
  482. package/src/components/MessageInput/TextEditor/extensions/imageExtension.ts +79 -0
  483. package/src/components/MessageInput/VideoCallPicker/VideoCallPicker.vue +8 -6
  484. package/src/components/MessageInput/i18n/zh-CN.ts +4 -0
  485. package/src/components/MessageInput/types.d.ts +1 -0
  486. package/src/components/MessageList/Message/CustomMessage/CallMessage/CallMessage.vue +4 -2
  487. package/src/components/MessageList/Message/GroupTipMessage/GroupTipMessage.vue +5 -4
  488. package/src/components/MessageList/Message/MessageLayout/MessageLayout.vue +8 -8
  489. package/src/components/MessageList/Message/VideoMessage/VideoMessage.vue +46 -43
  490. package/src/components/MessageList/Message/VideoMessage/index.ts +1 -1
  491. package/src/components/MessageList/i18n/en-US.ts +66 -0
  492. package/src/components/MessageList/i18n/index.ts +4 -4
  493. package/src/components/MessageList/i18n/zh-CN.ts +66 -0
  494. package/src/components/RoomParticipantList/ParticipantAction.vue +196 -0
  495. package/src/components/RoomParticipantList/ParticipantItem.vue +205 -0
  496. package/src/components/RoomParticipantList/PendingParticipantItem.vue +142 -0
  497. package/src/components/RoomParticipantList/RoomAction.vue +141 -0
  498. package/src/components/RoomParticipantList/i18n/en-US/index.ts +74 -0
  499. package/src/components/RoomParticipantList/i18n/index.ts +2 -0
  500. package/src/components/RoomParticipantList/i18n/zh-CN/index.ts +74 -0
  501. package/src/components/RoomParticipantList/index.ts +10 -0
  502. package/src/components/RoomParticipantList/index.vue +285 -0
  503. package/src/components/RoomParticipantList/useParticpantAction/index.ts +94 -0
  504. package/src/components/RoomParticipantList/useParticpantAction/useAdminAction.ts +56 -0
  505. package/src/components/RoomParticipantList/useParticpantAction/useAudioAction.ts +66 -0
  506. package/src/components/RoomParticipantList/useParticpantAction/useKickAction.ts +46 -0
  507. package/src/components/RoomParticipantList/useParticpantAction/useMessageAction.ts +42 -0
  508. package/src/components/RoomParticipantList/useParticpantAction/useNameCardAction/changeNameCardDialog.vue +51 -0
  509. package/src/components/RoomParticipantList/useParticpantAction/useNameCardAction/index.ts +80 -0
  510. package/src/components/RoomParticipantList/useParticpantAction/useTransferOwnerAction.ts +77 -0
  511. package/src/components/RoomParticipantList/useParticpantAction/useVideoAction.ts +59 -0
  512. package/src/components/RoomParticipantList/useRoomAction/index.ts +23 -0
  513. package/src/components/RoomParticipantList/useRoomAction/useRoomAudioAction.ts +67 -0
  514. package/src/components/RoomParticipantList/useRoomAction/useRoomScreenAction.ts +69 -0
  515. package/src/components/RoomParticipantList/useRoomAction/useRoomVideoAction.ts +66 -0
  516. package/src/components/RoomParticipantView/StreamPlay.vue +127 -0
  517. package/src/components/RoomParticipantView/StreamPlayManager/LazyLoadManager.ts +174 -0
  518. package/src/components/RoomParticipantView/StreamPlayManager/README.md +768 -0
  519. package/src/components/RoomParticipantView/StreamPlayManager/StreamInfoManager.ts +209 -0
  520. package/src/components/RoomParticipantView/StreamPlayManager/StreamPlayer.ts +183 -0
  521. package/src/components/RoomParticipantView/StreamPlayManager/VideoQualityManager.ts +357 -0
  522. package/src/components/RoomParticipantView/StreamPlayManager/index.ts +501 -0
  523. package/src/components/RoomParticipantView/StreamPlayManager/types.ts +13 -0
  524. package/src/components/RoomParticipantView/index.ts +5 -0
  525. package/src/components/RoomParticipantView/index.vue +43 -0
  526. package/src/components/RoomView/ArrowStroke.vue +265 -0
  527. package/src/components/RoomView/GridLayout.vue +236 -0
  528. package/src/components/RoomView/SpeakerLayout.vue +400 -0
  529. package/src/components/RoomView/index.ts +5 -0
  530. package/src/components/RoomView/index.vue +58 -0
  531. package/src/components/RoomView/useRoomToolbar.ts +97 -0
  532. package/src/components/RoomView/useRoomView.ts +48 -0
  533. package/src/components/RoomView/useStreamItemDimensions.ts +162 -0
  534. package/src/components/ScheduleRoomPanel/Datepicker.vue +332 -0
  535. package/src/components/ScheduleRoomPanel/DurationSelector.vue +92 -0
  536. package/src/components/ScheduleRoomPanel/RoomDetail.vue +240 -0
  537. package/src/components/ScheduleRoomPanel/RoomEdit.vue +473 -0
  538. package/src/components/ScheduleRoomPanel/RoomShare.vue +216 -0
  539. package/src/components/ScheduleRoomPanel/ScheduleRoomPanel.vue +625 -0
  540. package/src/components/ScheduleRoomPanel/ScheduledRoomList.vue +622 -0
  541. package/src/components/ScheduleRoomPanel/Timepicker.vue +86 -0
  542. package/src/components/ScheduleRoomPanel/TimezoneSelector.vue +70 -0
  543. package/src/components/ScheduleRoomPanel/i18n/en-US/index.ts +116 -0
  544. package/src/components/ScheduleRoomPanel/i18n/index.ts +4 -0
  545. package/src/components/ScheduleRoomPanel/i18n/zh-CN/index.ts +116 -0
  546. package/src/components/ScheduleRoomPanel/index.ts +14 -0
  547. package/src/components/ScheduleRoomPanel/type.ts +7 -0
  548. package/src/components/ScheduleRoomPanel/utils.ts +281 -0
  549. package/src/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.scss +1 -4
  550. package/src/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.scss +1 -4
  551. package/src/components/Search/SearchAdvanced/SearchAdvanced.scss +1 -4
  552. package/src/components/Search/SearchAdvanced/SearchTab/SearchTab.scss +1 -4
  553. package/src/components/Search/SearchAdvanced/Slider/Slider.scss +1 -4
  554. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.scss +1 -4
  555. package/src/components/Search/SearchBar/SearchBar.scss +3 -6
  556. package/src/components/StreamMixer/LocalMixer/index.vue +6 -1
  557. package/src/components/StreamMixer/index.ts +4 -1
  558. package/src/components/StreamView/Layout/CustomLayout.vue +40 -36
  559. package/src/components/StreamView/Layout/GridLayout.vue +31 -40
  560. package/src/components/StreamView/Layout/MeetingLayout.vue +34 -35
  561. package/src/components/StreamView/index.ts +5 -3
  562. package/src/components/StreamView/manager/mediaManager.ts +1 -2
  563. package/src/components/UIKitModal/UIKitModal.ts +71 -0
  564. package/src/components/UIKitModal/index.scss +134 -0
  565. package/src/components/UIKitModal/index.ts +2 -0
  566. package/src/components/UIKitModal/index.vue +160 -0
  567. package/src/components/UIKitModal/type.ts +24 -0
  568. package/src/components/UIKitModal/useRoomModal/i18n/en-US/index.ts +19 -0
  569. package/src/components/UIKitModal/useRoomModal/i18n/index.ts +4 -0
  570. package/src/components/UIKitModal/useRoomModal/i18n/zh-CN/index.ts +18 -0
  571. package/src/components/UIKitModal/useRoomModal/index.ts +11 -0
  572. package/src/components/UIKitModal/useRoomModal/useRoomModal.ts +103 -0
  573. package/src/components/UserList/AllUserActions/indexH5.vue +3 -3
  574. package/src/components/UserList/AllUserActions/useIndexHooks.ts +1 -1
  575. package/src/components/UserList/UserItem/UserInfo/index.vue +17 -12
  576. package/src/components/UserPicker/UserPicker.vue +1 -1
  577. package/src/components/UserPicker/components/SelectedPanel/SelectedPanel.vue +1 -0
  578. package/src/components/UserPicker/hooks/useSearchFilter.ts +27 -18
  579. package/src/components/UserPicker/i18n/en-US.ts +1 -0
  580. package/src/components/UserPicker/i18n/zh-CN.ts +1 -0
  581. package/src/components/UserPicker/type.ts +1 -1
  582. package/src/components/VideoSetting/CameraSelect.vue +11 -11
  583. package/src/components/VideoSetting/VideoMediaControl.vue +22 -21
  584. package/src/components/VideoSetting/VideoPreview.vue +14 -8
  585. package/src/components/VideoSetting/VideoProfile.vue +13 -15
  586. package/src/components/VideoSetting/VideoSettingTab.vue +9 -9
  587. package/src/components/VideoSettingPanel/CameraSelect.vue +8 -3
  588. package/src/components/VideoSettingPanel/VideoPreview.vue +4 -4
  589. package/src/components/VideoSettingPanel/VideoProfile.vue +6 -6
  590. package/src/components/VideoSettingPanel/i18n/en-US/index.ts +13 -10
  591. package/src/components/VideoSettingPanel/i18n/zh-CN/index.ts +13 -10
  592. package/src/components/VideoSettingPanel/index.ts +2 -2
  593. package/src/components/VideoSettingPanel/index.vue +73 -74
  594. package/src/components/VirtualBackgroundPanel/VirtualBackgroundPanel.vue +337 -0
  595. package/src/components/VirtualBackgroundPanel/assets/blurred-background.png +0 -0
  596. package/src/components/VirtualBackgroundPanel/assets/close-virtual-background.png +0 -0
  597. package/src/components/VirtualBackgroundPanel/i18n/en-US/index.ts +11 -0
  598. package/src/components/VirtualBackgroundPanel/i18n/index.ts +4 -0
  599. package/src/components/VirtualBackgroundPanel/i18n/zh-CN/index.ts +11 -0
  600. package/src/components/VirtualBackgroundPanel/index.ts +11 -0
  601. package/src/hooks/useRoomActions/index.ts +3 -2
  602. package/src/hooks/useRoomActions/useRoomAudioAction.ts +11 -12
  603. package/src/hooks/useRoomActions/useRoomScreenAction.ts +12 -13
  604. package/src/hooks/useRoomActions/useRoomVideoAction.ts +10 -13
  605. package/src/hooks/useRoomEngine.ts +3 -2
  606. package/src/hooks/useUserActions/index.ts +38 -43
  607. package/src/hooks/useUserActions/useSeatAction.ts +10 -10
  608. package/src/hooks/useUserActions/useTransferOwnerAction.ts +10 -10
  609. package/src/index.ts +7 -9
  610. package/src/report/MetricsKey.ts +28 -14
  611. package/src/report/dataReport.ts +13 -9
  612. package/src/subEntry/common/base.ts +6 -0
  613. package/src/subEntry/common/index.ts +2 -0
  614. package/src/subEntry/common/rtc.ts +5 -0
  615. package/src/subEntry/live/index.ts +8 -0
  616. package/src/subEntry/live/live.ts +23 -0
  617. package/src/{rtc → subEntry/live}/server.ts +3 -3
  618. package/src/subEntry/room/index.ts +8 -0
  619. package/src/subEntry/room/room.ts +12 -0
  620. package/src/subEntry/room/server.ts +123 -0
  621. package/src/types/asr.ts +31 -0
  622. package/src/types/barrage.ts +86 -0
  623. package/src/types/beauty.ts +10 -0
  624. package/src/types/device.ts +3 -5
  625. package/src/types/index.ts +9 -3
  626. package/src/types/participant.ts +155 -0
  627. package/src/types/room.ts +122 -57
  628. package/src/types/user.ts +2 -0
  629. package/src/types/virtualBackground.ts +17 -0
  630. package/src/utils/call.ts +25 -26
  631. package/src/utils/compare.ts +34 -0
  632. package/tsconfig.eslint.json +15 -0
  633. package/tsconfig.json +7 -1
  634. package/dist/AudioRequestDialog.vue_vue_type_script_setup_true_lang-DESfuJPj.js +0 -89
  635. package/dist/index-DTq2ybsB.js +0 -33
  636. package/dist/index.vue_vue_type_script_setup_true_lang-DZIBxSQ7.js +0 -32
  637. package/dist/rtc/index.d.ts +0 -501
  638. package/dist/rtc/index.js +0 -67
  639. package/dist/states/RoomState.d.ts +0 -173
  640. package/dist/states/RoomState.js +0 -272
  641. package/src/rtc/index.ts +0 -100
@@ -1,13 +1,11 @@
1
1
  import type { Ref } from 'vue';
2
2
  import { computed, ref, watch } from 'vue';
3
- import { TRTCCloud, TUIVideoQuality } from '@tencentcloud/tuiroom-engine-js';
3
+ import { TUIVideoQuality } from '@tencentcloud/tuiroom-engine-js';
4
4
  import useRoomEngine from '../../../hooks/useRoomEngine';
5
5
  import { useLiveSeatState } from '../../../states/LiveSeatState';
6
6
  import { useLiveListState } from '../../../states/LiveListState';
7
- // Import utility modules
8
7
  import {
9
8
  getDeviceType,
10
- getCurrentOrientation,
11
9
  shouldRotateToLandscapeForFullscreen,
12
10
  hadLandscapeRotationToUndo,
13
11
  } from './utils/deviceDetection';
@@ -22,7 +20,8 @@ import {
22
20
  StyleManager,
23
21
  } from './utils/fullscreenManager';
24
22
  import type {
25
- FullscreenResult } from './utils/fullscreenManager';
23
+ FullscreenResult
24
+ } from './utils/fullscreenManager';
26
25
 
27
26
  // Player fill mode enum
28
27
  export enum FillMode {
@@ -48,6 +47,7 @@ export interface PlayerControlState {
48
47
  isLandscapeStyleMode: Ref<boolean>;
49
48
  isPictureInPicture: Ref<boolean>;
50
49
  currentVolume: Ref<number>;
50
+ isMuted: Ref<boolean>;
51
51
 
52
52
  // Resolution state properties
53
53
  resolutionList: Ref<Resolution[]>;
@@ -67,29 +67,53 @@ export interface PlayerControlState {
67
67
 
68
68
  // Resolution control methods
69
69
  switchResolution: (resolution: Resolution) => Promise<boolean>;
70
- getResolutionList: (roomId: string) => Promise<Resolution[]>;
71
- initializeResolution: (roomId: string, applyResolution?: boolean) => Promise<void>;
72
70
 
73
71
  // Other control methods
74
- setVolume: (volume: number) => Promise<boolean>;
72
+ setVolume: (volume: number) => Promise<boolean>; // Volume range: 0-100
73
+ setMute: (muted: boolean) => Promise<boolean>;
75
74
  changeFillMode: (fillMode: FillMode) => Promise<boolean>;
76
-
77
75
  // Cleanup method
78
76
  cleanup: () => void;
79
77
  }
80
78
 
79
+ // Constants
80
+ const VOLUME_CONSTANTS = {
81
+ // Default volume level when component initializes (100% volume)
82
+ DEFAULT_VOLUME: 100,
83
+ // Minimum allowed volume level (silent)
84
+ MIN_VOLUME: 0,
85
+ // Maximum allowed volume level (full volume)
86
+ MAX_VOLUME: 100,
87
+ // Volume level when muted (silent)
88
+ MUTE_VOLUME: 0,
89
+ };
90
+
91
+ const TIMING_CONSTANTS = {
92
+ // Delay in milliseconds before resuming playback after leaving picture-in-picture
93
+ // Allows browser to handle state transitions naturally
94
+ PIP_RESUME_DELAY: 300,
95
+ };
96
+
97
+ const ARRAY_CONSTANTS = {
98
+ // Index of the first element in an array
99
+ FIRST_INDEX: 0,
100
+ };
101
+
81
102
  // State management
82
103
  const isPlaying = ref(true);
83
104
  const currentFillMode = ref<FillMode>(FillMode.CONTAIN);
84
105
  const isFullscreen = ref(false);
85
106
  const isLandscapeStyleMode = ref(false);
86
107
  const isPictureInPicture = ref(false);
87
- const currentVolume = ref(1.0); // Default volume is 1.0 (100%)
108
+ const currentVolume = ref(VOLUME_CONSTANTS.DEFAULT_VOLUME);
109
+ const isMuted = ref(false); // Mute state - synced across all rooms
110
+
111
+ // Internal storage for volume restoration (not reactive)
112
+ let restoreVolume = VOLUME_CONSTANTS.DEFAULT_VOLUME;
88
113
 
89
114
  // Resolution state management
90
115
  const resolutionList = ref<Resolution[]>([]);
91
116
  const currentResolution = ref<Resolution | undefined>();
92
- const RESOLUTION_INITIALIZED_PREFIX = '[LiveCoreView]ResolutionInitialized';
93
117
 
94
118
  const roomEngine = useRoomEngine();
95
119
 
@@ -134,67 +158,21 @@ export function usePlayerControlState(): PlayerControlState {
134
158
  }
135
159
  };
136
160
 
137
- /**
138
- * Video control methods
139
- */
140
-
141
- const syncVolumeState = (): void => {
142
- const video = DOMElementGetter.getVideoElement();
143
- if (video) {
144
- const actualVolume = video.volume;
145
- if (Math.abs(currentVolume.value - actualVolume) > 0.01) { // Use small tolerance for floating point comparison
146
- console.log(`Syncing volume state: ${currentVolume.value} -> ${actualVolume}`);
147
- currentVolume.value = actualVolume;
148
- }
149
- }
150
- };
151
-
152
- const syncPlayingState = (): void => {
153
- const video = DOMElementGetter.getVideoElement();
154
- if (video) {
155
- const actualPlayingState = !video.paused && !video.ended;
156
- if (isPlaying.value !== actualPlayingState) {
157
- console.log(`Syncing playing state: ${isPlaying.value} -> ${actualPlayingState}`);
158
- isPlaying.value = actualPlayingState;
159
- }
160
- }
161
- };
162
-
163
161
  const resume = async (): Promise<boolean> => withErrorHandling(async () => {
164
- const video = DOMElementGetter.getVideoElement();
165
- if (!video) {
166
- throw new Error('Video element not found');
167
- }
168
- if (DOMElementGetter.hasTcPlayerElement()) {
169
- await video.play();
170
- } else {
171
- const trtcCloudMap = TRTCCloud.subCloudMap;
172
- trtcCloudMap.forEach((trtcCloud: TRTCCloud) => {
173
- const trtc = trtcCloud?._trtc;
174
- trtc?.callExperimentalAPI('resumeRemotePlayer', { userId: '*' });
175
- });
176
- }
162
+ await roomEngine.instance?.callExperimentalAPI(JSON.stringify({
163
+ api: 'resume',
164
+ params: {},
165
+ }));
177
166
  isPlaying.value = true;
178
- console.log('Video playback resumed');
179
167
  return true;
180
168
  }, 'Resume playback', false);
181
169
 
182
170
  const pause = async (): Promise<boolean> => withErrorHandling(async () => {
183
- const video = DOMElementGetter.getVideoElement();
184
- if (!video) {
185
- throw new Error('Video element not found');
186
- }
187
- if (DOMElementGetter.hasTcPlayerElement()) {
188
- await video.pause();
189
- } else {
190
- const trtcCloudMap = TRTCCloud.subCloudMap;
191
- trtcCloudMap.forEach((trtcCloud: TRTCCloud) => {
192
- const trtc = trtcCloud?._trtc;
193
- trtc?.callExperimentalAPI('pauseRemotePlayer', { userId: '*' });
194
- });
195
- }
171
+ await roomEngine.instance?.callExperimentalAPI(JSON.stringify({
172
+ api: 'pause',
173
+ params: {},
174
+ }));
196
175
  isPlaying.value = false;
197
- console.log('Video playback paused');
198
176
  return true;
199
177
  }, 'Pause playback', false);
200
178
 
@@ -202,13 +180,7 @@ export function usePlayerControlState(): PlayerControlState {
202
180
  * Handle orientation change
203
181
  */
204
182
  const handleOrientationChange = (newOrientation: 'portrait' | 'landscape' | 'unknown'): void => {
205
- // Only handle orientation changes in fullscreen mode
206
- if (!isFullscreen.value) {
207
- return;
208
- }
209
-
210
- // Only handle for landscape streams
211
- if (!isLandscapeStream.value) {
183
+ if (!isFullscreen.value || !isLandscapeStream.value) {
212
184
  return;
213
185
  }
214
186
 
@@ -218,14 +190,6 @@ export function usePlayerControlState(): PlayerControlState {
218
190
  return;
219
191
  }
220
192
 
221
- console.log('Handling orientation change:', {
222
- newOrientation,
223
- deviceType,
224
- isLandscapeStream: isLandscapeStream.value,
225
- isFullscreen: isFullscreen.value,
226
- });
227
-
228
- // Smart adjustment of landscape styles
229
193
  StyleManager.smartApplyLandscapeStyles(elements.view, newOrientation);
230
194
  };
231
195
 
@@ -240,23 +204,8 @@ export function usePlayerControlState(): PlayerControlState {
240
204
  throw new Error(`Missing required DOM elements: ${validation.missingElements.join(', ')}`);
241
205
  }
242
206
 
243
- const currentOrientation = getCurrentOrientation();
244
207
  const shouldRotateToLandscape = shouldRotateToLandscapeForFullscreen(deviceType, isLandscapeStream.value);
245
208
 
246
- console.log('Request fullscreen:', {
247
- deviceType,
248
- currentOrientation,
249
- streamType: isLandscapeStream.value ? 'landscape stream' : isPortraitStream.value ? 'portrait stream' : 'unknown',
250
- shouldRotate: shouldRotateToLandscape,
251
- reason: shouldRotateToLandscape
252
- ? 'Mobile device in portrait with landscape stream'
253
- : currentOrientation === 'landscape'
254
- ? 'Already in landscape orientation'
255
- : !isLandscapeStream.value
256
- ? 'Not a landscape stream'
257
- : 'Desktop device or other reason',
258
- });
259
-
260
209
  const result: FullscreenResult = await FullscreenManager.requestFullscreen(
261
210
  elements.container!,
262
211
  elements.view!,
@@ -267,7 +216,6 @@ export function usePlayerControlState(): PlayerControlState {
267
216
 
268
217
  if (result.success) {
269
218
  isFullscreen.value = true;
270
- console.log(`Fullscreen request successful (${result.mode})`);
271
219
  } else {
272
220
  console.error('Fullscreen request failed:', result.error);
273
221
  }
@@ -281,38 +229,19 @@ export function usePlayerControlState(): PlayerControlState {
281
229
  throw new Error('live-core-view element not found');
282
230
  }
283
231
 
284
- const currentOrientation = getCurrentOrientation();
285
232
  const hadLandscapeRotation = hadLandscapeRotationToUndo(deviceType, isLandscapeStream.value);
286
233
 
287
- console.log('Exit fullscreen:', {
288
- deviceType,
289
- currentOrientation,
290
- streamType: isLandscapeStream.value ? 'landscape stream' : isPortraitStream.value ? 'portrait stream' : 'unknown',
291
- hadLandscapeRotation,
292
- reason: hadLandscapeRotation
293
- ? 'Mobile device with landscape stream in landscape mode'
294
- : currentOrientation === 'portrait'
295
- ? 'Already in portrait orientation'
296
- : !isLandscapeStream.value
297
- ? 'Not a landscape stream'
298
- : 'Desktop device or other reason',
299
- });
300
-
301
234
  const result: FullscreenResult = await FullscreenManager.exitFullscreen(
302
235
  elements.view,
303
236
  deviceType,
304
237
  hadLandscapeRotation,
305
238
  );
306
239
 
307
- // For standard fullscreen, state is updated by event listeners
308
- // For CSS simulated fullscreen, update state directly
309
240
  if (result.mode === FullscreenMode.CSS_SIMULATED) {
310
241
  isFullscreen.value = false;
311
242
  }
312
243
 
313
- if (result.success) {
314
- console.log(`Fullscreen exit successful (${result.mode})`);
315
- } else {
244
+ if (!result.success) {
316
245
  console.error('Fullscreen exit failed:', result.error);
317
246
  }
318
247
  isLandscapeStyleMode.value = false;
@@ -332,11 +261,8 @@ export function usePlayerControlState(): PlayerControlState {
332
261
  throw new Error('Picture-in-picture not supported in current environment');
333
262
  }
334
263
 
335
- // Ensure event listeners are set
336
264
  setupVideoEventListeners();
337
265
  await video.requestPictureInPicture();
338
-
339
- console.log('Picture-in-picture request successful');
340
266
  return true;
341
267
  }, 'Request picture-in-picture', false);
342
268
 
@@ -346,7 +272,6 @@ export function usePlayerControlState(): PlayerControlState {
346
272
  }
347
273
 
348
274
  await document.exitPictureInPicture();
349
- console.log('Picture-in-picture exit successful');
350
275
  return true;
351
276
  }, 'Exit picture-in-picture', false);
352
277
 
@@ -357,6 +282,7 @@ export function usePlayerControlState(): PlayerControlState {
357
282
  if (!roomEngine.instance) {
358
283
  throw new Error('Room engine instance not available');
359
284
  }
285
+ console.debug('Switching to resolution:', resolution);
360
286
  await roomEngine.instance.callExperimentalAPI(
361
287
  JSON.stringify({
362
288
  api: 'switchPlaybackQuality',
@@ -370,7 +296,6 @@ export function usePlayerControlState(): PlayerControlState {
370
296
  isPlaying.value = true;
371
297
  }
372
298
  currentResolution.value = resolution;
373
- console.log(`Resolution switched to: ${resolution}`);
374
299
  return true;
375
300
  }, 'Switch resolution', false);
376
301
 
@@ -388,46 +313,28 @@ export function usePlayerControlState(): PlayerControlState {
388
313
  }),
389
314
  );
390
315
 
391
- console.log(`Retrieved resolution list for room ${roomId}:`, resolutions);
392
316
  return (resolutions || []) as Resolution[];
393
317
  }, 'Get resolution list', []);
394
318
 
395
319
  const initializeResolution = async (roomId: string, applyResolution = true): Promise<void> => {
396
320
  try {
397
- // Check if resolution has been initialized for this room
398
- const initializedKey = `${RESOLUTION_INITIALIZED_PREFIX}_${roomId}`;
399
- const hasInitialized = localStorage.getItem(initializedKey) === 'true';
400
-
401
- // Get available resolutionList
402
321
  const availableResolutions = await getResolutionList(roomId);
403
322
  resolutionList.value = availableResolutions;
404
323
 
405
- if (availableResolutions.length === 0) {
406
- console.warn('No resolutions available for room:', roomId);
324
+ if (availableResolutions.length === ARRAY_CONSTANTS.FIRST_INDEX) {
325
+ console.warn('[Resolution] No resolutions available for room:', roomId);
326
+ currentResolution.value = undefined;
407
327
  return;
408
328
  }
409
329
 
410
- // Always set current resolution if it's not set or if it's not in the available list
411
- if (!currentResolution.value || !availableResolutions.includes(currentResolution.value)) {
412
- currentResolution.value = availableResolutions[0];
413
- }
414
-
415
- // Only apply resolution if it hasn't been initialized for this room or explicitly requested
416
- const shouldApplyResolution = applyResolution && !hasInitialized && currentResolution.value !== undefined;
417
- if (shouldApplyResolution) {
418
- await switchResolution(currentResolution.value!);
419
- // Mark as initialized for this room
420
- localStorage.setItem(initializedKey, 'true');
330
+ // Always set to the first available resolution when entering a room
331
+ const targetResolution = availableResolutions[ARRAY_CONSTANTS.FIRST_INDEX];
332
+ currentResolution.value = targetResolution;
333
+ if (applyResolution) {
334
+ await switchResolution(targetResolution);
421
335
  }
422
-
423
- console.log(`Resolution initialized for room ${roomId}:`, {
424
- availableResolutions,
425
- currentResolution: currentResolution.value,
426
- applied: shouldApplyResolution,
427
- hasInitialized,
428
- });
429
336
  } catch (error) {
430
- console.error('Failed to initialize resolution:', error);
337
+ console.error('[Resolution] Failed to initialize resolution:', error);
431
338
  }
432
339
  };
433
340
 
@@ -435,19 +342,32 @@ export function usePlayerControlState(): PlayerControlState {
435
342
  * Other control methods
436
343
  */
437
344
  const setVolume = async (volume: number): Promise<boolean> => withErrorHandling(async () => {
438
- if (volume < 0 || volume > 1) {
439
- throw new Error('Volume value must be between 0-1');
345
+ if (volume < VOLUME_CONSTANTS.MIN_VOLUME || volume > VOLUME_CONSTANTS.MAX_VOLUME) {
346
+ throw new Error(`Volume value must be between ${VOLUME_CONSTANTS.MIN_VOLUME}-${VOLUME_CONSTANTS.MAX_VOLUME}`);
440
347
  }
441
- await roomEngine.instance?.setAudioPlayoutVolume({ volume: volume * 100 });
348
+ await roomEngine.instance?.setAudioPlayoutVolume({ volume });
442
349
  currentVolume.value = volume;
443
- console.log(`Video volume set to: ${volume}`);
350
+ restoreVolume = volume;
351
+ isMuted.value = volume == VOLUME_CONSTANTS.MUTE_VOLUME;
444
352
  return true;
445
353
  }, 'Set volume', false);
446
354
 
355
+ const setMute = async (muted: boolean): Promise<boolean> => withErrorHandling(async () => {
356
+ let volume;
357
+ if (muted) {
358
+ restoreVolume = currentVolume.value;
359
+ volume = VOLUME_CONSTANTS.MUTE_VOLUME;
360
+ } else {
361
+ volume = restoreVolume || VOLUME_CONSTANTS.DEFAULT_VOLUME;
362
+ }
363
+ await roomEngine.instance?.setAudioPlayoutVolume({ volume });
364
+ currentVolume.value = volume;
365
+ isMuted.value = muted;
366
+ return true;
367
+ }, 'Set mute', false);
368
+
447
369
  const changeFillMode = async (fillMode: FillMode): Promise<boolean> => withErrorHandling(async () => {
448
370
  currentFillMode.value = fillMode;
449
- console.log(`Fill mode changed to: ${fillMode}`);
450
- // TODO: Implement actual fill mode logic
451
371
  return true;
452
372
  }, 'Change fill mode', false);
453
373
 
@@ -458,55 +378,35 @@ export function usePlayerControlState(): PlayerControlState {
458
378
  try {
459
379
  const elements = DOMElementGetter.getAllElements();
460
380
  if (!elements.view) {
461
- console.warn('live-core-view element not found for fullscreen exit cleanup');
381
+ console.warn('View element not found for fullscreen exit cleanup');
462
382
  return;
463
383
  }
464
384
 
465
- console.log('Executing fullscreen exit style cleanup:', {
466
- deviceType,
467
- hasLandscapeStream: isLandscapeStream.value,
468
- currentOrientation: getCurrentOrientation(),
469
- });
470
-
471
- // Remove all fullscreen related styles
472
385
  StyleManager.removeFullscreenStyles(elements.view);
473
386
  StyleManager.removeLandscapeStyles(elements.view);
474
387
 
475
- // If mobile device, try to unlock screen orientation
476
388
  if (deviceType !== 'desktop') {
477
- OrientationManager.unlockOrientation().catch((error) => {
478
- console.warn('Failed to unlock orientation during cleanup:', error);
389
+ OrientationManager.unlockOrientation().catch(() => {
390
+ // Ignore orientation unlock errors in non-desktop environments
479
391
  });
480
392
  }
481
-
482
393
  isLandscapeStyleMode.value = false;
483
- console.log('Fullscreen exit style cleanup completed');
484
394
  } catch (error) {
485
- console.error('Fullscreen exit style cleanup failed:', error);
395
+ console.error('Fullscreen exit cleanup failed:', error);
486
396
  }
487
397
  };
488
398
 
489
399
  /**
490
- * Event listener setup
400
+ * Event listener setup for fullscreen state changes
401
+ * Handles fullscreen API events across different browsers and visibility changes
491
402
  */
492
403
  const setupFullscreenEventListeners = (): void => {
493
404
  const handleFullscreenChange = () => {
494
405
  const isCurrentlyFullscreen = !!document.fullscreenElement;
495
406
  const wasFullscreen = isFullscreen.value;
496
407
 
497
- console.log('Fullscreen state change:', {
498
- fullscreenElement: document.fullscreenElement,
499
- isCurrentlyFullscreen,
500
- previousValue: wasFullscreen,
501
- deviceType,
502
- changeType: isCurrentlyFullscreen ? 'entered' : 'exited',
503
- });
504
-
505
- // Update state
506
408
  isFullscreen.value = isCurrentlyFullscreen;
507
- // If exiting fullscreen, need to cleanup styles
508
409
  if (wasFullscreen && !isCurrentlyFullscreen) {
509
- console.log('Detected passive fullscreen exit, executing style cleanup');
510
410
  handleFullscreenExit();
511
411
  }
512
412
  };
@@ -517,163 +417,88 @@ export function usePlayerControlState(): PlayerControlState {
517
417
  eventManager.addListener('mozfullscreenchange', document, 'mozfullscreenchange', handleFullscreenChange);
518
418
  eventManager.addListener('MSFullscreenChange', document, 'MSFullscreenChange', handleFullscreenChange);
519
419
 
520
- // Add additional detection mechanisms for non-standard fullscreen exits (like Android back button)
521
420
  const handleVisibilityChange = () => {
522
- // When page visibility changes, check if fullscreen state is consistent
523
421
  if (document.visibilityState === 'visible' && isFullscreen.value) {
524
422
  const actuallyFullscreen = !!document.fullscreenElement;
525
423
  if (!actuallyFullscreen) {
526
- console.log('Detected fullscreen state inconsistency via visibilitychange, executing cleanup');
527
424
  isFullscreen.value = false;
528
425
  handleFullscreenExit();
529
426
  }
530
427
  }
531
428
  };
532
429
 
533
- // Listen to page visibility changes (Android back button scenarios)
534
430
  eventManager.addListener('visibilitychange', document, 'visibilitychange', handleVisibilityChange);
535
431
  };
536
432
 
537
433
  const setupVideoEventListeners = (): void => {
538
434
  const video = DOMElementGetter.getVideoElement();
539
435
  if (!video) {
436
+ console.warn('Video element not found for setting up event listeners');
540
437
  return;
541
438
  }
542
439
 
543
440
  const handleEnterPictureInPicture = () => {
544
- console.log('Entered picture-in-picture mode');
545
441
  isPictureInPicture.value = true;
546
442
  };
547
443
 
548
444
  const handleLeavePictureInPicture = () => {
549
- console.log('Left picture-in-picture mode');
550
445
  isPictureInPicture.value = false;
551
- setTimeout(resume, 300);
552
- };
553
-
554
- // Video playback state change handlers
555
- const handlePlay = () => {
556
- console.log('Video play event detected');
557
- isPlaying.value = true;
558
- };
559
-
560
- const handlePause = () => {
561
- console.log('Video pause event detected');
562
- isPlaying.value = false;
563
- };
564
-
565
- const handleEnded = () => {
566
- console.log('Video ended event detected');
567
- isPlaying.value = false;
568
- };
569
-
570
- const handleLoadStart = () => {
571
- console.log('Video load start event detected');
572
- // Sync initial state when video loads
573
- isPlaying.value = !video.paused;
574
- };
575
-
576
- const handleCanPlay = () => {
577
- console.log('Video can play event detected');
578
- // Sync state when video becomes playable
579
- isPlaying.value = !video.paused;
580
- };
581
-
582
- const handleSeeking = () => {
583
- console.log('Video seeking event detected');
584
- // Sync state during seeking
585
- syncPlayingState();
446
+ setTimeout(resume, TIMING_CONSTANTS.PIP_RESUME_DELAY);
586
447
  };
587
448
 
588
- const handleSeeked = () => {
589
- console.log('Video seeked event detected');
590
- // Sync state after seeking
591
- syncPlayingState();
592
- };
593
-
594
- const handleTimeUpdate = () => {
595
- // Only sync occasionally during time updates to avoid too many calls
596
- if (Math.random() < 0.1) { // 10% chance per timeupdate event
597
- syncPlayingState();
598
- }
599
- };
600
-
601
- const handleVolumeChange = () => {
602
- console.log('Video volume change event detected');
603
- // Sync state when volume changes (might indicate user interaction)
604
- syncPlayingState();
605
- syncVolumeState();
606
- };
607
-
608
- // Add picture-in-picture event listeners
609
449
  eventManager.addListener('enterpictureinpicture', video, 'enterpictureinpicture', handleEnterPictureInPicture);
610
450
  eventManager.addListener('leavepictureinpicture', video, 'leavepictureinpicture', handleLeavePictureInPicture);
611
-
612
- // Add video playback state event listeners
613
- eventManager.addListener('play', video, 'play', handlePlay);
614
- eventManager.addListener('pause', video, 'pause', handlePause);
615
- eventManager.addListener('ended', video, 'ended', handleEnded);
616
- eventManager.addListener('loadstart', video, 'loadstart', handleLoadStart);
617
- eventManager.addListener('canplay', video, 'canplay', handleCanPlay);
618
-
619
- // Add additional state sync events
620
- eventManager.addListener('seeking', video, 'seeking', handleSeeking);
621
- eventManager.addListener('seeked', video, 'seeked', handleSeeked);
622
- eventManager.addListener('timeupdate', video, 'timeupdate', handleTimeUpdate);
623
- eventManager.addListener('volumechange', video, 'volumechange', handleVolumeChange);
624
451
  };
625
452
 
626
453
  /**
627
454
  * Cleanup method
628
455
  */
629
456
  const cleanup = (): void => {
630
- console.log('Cleaning up player control state...');
631
-
632
- // Remove orientation listener
633
457
  OrientationManager.removeOrientationListener(orientationListenerId);
634
-
635
- // Remove all event listeners
636
458
  eventManager.removeAllListeners();
637
- console.log(`Cleaned up ${eventManager.getListenerCount()} event listeners`);
638
459
  };
639
460
 
640
- // Initialize
641
461
  setupFullscreenEventListeners();
642
462
  setupVideoEventListeners();
643
-
644
- // Setup orientation listener for dynamic style adjustment
645
463
  OrientationManager.addOrientationListener(orientationListenerId, handleOrientationChange);
646
464
 
647
- // Initial state sync
648
- syncPlayingState();
649
- syncVolumeState();
650
-
651
- watch(() => currentLive.value?.liveId, (liveId) => {
652
- if (!liveId) {
653
- exitFullscreen();
654
- exitPictureInPicture();
655
- isPlaying.value = true;
656
- isFullscreen.value = false;
657
- isPictureInPicture.value = false;
658
- currentVolume.value = 1.0;
659
- }
660
- });
465
+ watch(
466
+ () => currentLive.value?.liveId,
467
+ async (newLiveId) => {
468
+ if (newLiveId) {
469
+ isPlaying.value = true;
470
+ resolutionList.value = [];
471
+ currentResolution.value = undefined;
472
+ // When pulling a TRTC stream, this interface has a cache, but when using TCPlayer, there is no cache
473
+ await setVolume(currentVolume.value);
474
+ await initializeResolution(newLiveId, false);
475
+
476
+ // Print player control state after entering room
477
+ console.log('[PlayerControl] State after entering room:', {
478
+ isPlaying: isPlaying.value,
479
+ currentFillMode: currentFillMode.value,
480
+ isFullscreen: isFullscreen.value,
481
+ isLandscapeStyleMode: isLandscapeStyleMode.value,
482
+ isPictureInPicture: isPictureInPicture.value,
483
+ currentVolume: currentVolume.value,
484
+ resolutionList: resolutionList.value,
485
+ currentResolution: currentResolution.value,
486
+ });
487
+ }
488
+ },
489
+ );
661
490
 
662
491
  // Return interface implementation
663
492
  return {
664
- // State
665
493
  isPlaying,
666
494
  currentFillMode,
667
495
  isFullscreen,
668
496
  isLandscapeStyleMode,
669
497
  isPictureInPicture,
670
498
  currentVolume,
671
-
672
- // Resolution state
499
+ isMuted,
673
500
  resolutionList,
674
501
  currentResolution,
675
-
676
- // Methods
677
502
  resume,
678
503
  pause,
679
504
  requestFullscreen,
@@ -681,12 +506,9 @@ export function usePlayerControlState(): PlayerControlState {
681
506
  requestPictureInPicture,
682
507
  exitPictureInPicture,
683
508
  switchResolution,
684
- getResolutionList,
685
- initializeResolution,
686
509
  setVolume,
510
+ setMute,
687
511
  changeFillMode,
688
-
689
- // Cleanup
690
512
  cleanup,
691
513
  };
692
514
  }
@@ -1,5 +1,5 @@
1
1
  import { addI18n } from '../../i18n';
2
- import DefaultStreamViewUI from './DefaultStreamViewUI.vue';
2
+ import DefaultStreamViewUIComp from './DefaultStreamViewUI.vue';
3
3
  import { enUSResource, zhCNResource } from './i18n';
4
4
  import LiveViewComponent from './index.vue';
5
5
 
@@ -8,5 +8,6 @@ addI18n('zh-CN', { translation: zhCNResource });
8
8
 
9
9
  const LiveCoreView = LiveViewComponent;
10
10
  const LiveView = LiveViewComponent;
11
+ const DefaultStreamViewUI = DefaultStreamViewUIComp;
11
12
 
12
13
  export { LiveCoreView, LiveView, DefaultStreamViewUI };