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
@@ -0,0 +1,177 @@
1
+ var Q = Object.defineProperty;
2
+ var b = (u, t, e) => t in u ? Q(u, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : u[t] = e;
3
+ var n = (u, t, e) => b(u, typeof t != "symbol" ? t + "" : t, e);
4
+ import { debounce as m } from "../../../utils/utils.js";
5
+ import { VideoStreamQuality as d } from "./types.js";
6
+ import { VideoStreamType as I } from "../../../types/participant.js";
7
+ const g = 6, p = 300, M = 480, D = 270, v = 1.15;
8
+ class A {
9
+ constructor({ onQualityChange: t, loginUserId: e }) {
10
+ n(this, "resizeObserver", null);
11
+ n(this, "bodyResizeObserver", null);
12
+ // DOM 信息映射
13
+ n(this, "domInfoMap", /* @__PURE__ */ new Map());
14
+ // 大流管理
15
+ n(this, "highQualityDomMap", /* @__PURE__ */ new Map());
16
+ // 缓存屏幕面积,避免重复计算
17
+ n(this, "cachedBodyArea", 0);
18
+ n(this, "loginUserId");
19
+ // 回调函数
20
+ n(this, "onQualityChange");
21
+ n(this, "pendingEntries", /* @__PURE__ */ new Map());
22
+ n(this, "handleBodyResize", m(() => {
23
+ this.updateBodyAreaCache();
24
+ }, p));
25
+ /**
26
+ * 处理 DOM 尺寸变化
27
+ */
28
+ n(this, "handleResize", (t) => {
29
+ const { width: e, height: r } = t.contentRect, s = this.domInfoMap.get(t.target);
30
+ if (!s)
31
+ return;
32
+ const { userId: i, streamType: a } = s;
33
+ s.rect = { width: e, height: r }, this.domInfoMap.set(t.target, s);
34
+ const o = this.calculateOptimalQuality({ userId: i, streamType: a });
35
+ this.onQualityChange({
36
+ userId: i,
37
+ streamType: a,
38
+ newQuality: o,
39
+ reason: `DOM resize: ${e}x${r}`
40
+ });
41
+ });
42
+ this.onQualityChange = t, this.loginUserId = e, this.initResizeObserver(), this.initBodyAreaCache();
43
+ }
44
+ setLoginUserId(t) {
45
+ this.loginUserId = t;
46
+ }
47
+ /**
48
+ * 初始化 ResizeObserver
49
+ */
50
+ initResizeObserver() {
51
+ const t = m(() => {
52
+ this.pendingEntries.forEach((e) => {
53
+ this.handleResize(e);
54
+ }), this.pendingEntries.clear();
55
+ }, p);
56
+ this.resizeObserver = new ResizeObserver((e) => {
57
+ e.forEach((r) => {
58
+ this.pendingEntries.set(r.target, r);
59
+ }), t();
60
+ });
61
+ }
62
+ /**
63
+ * 初始化屏幕面积缓存
64
+ */
65
+ initBodyAreaCache() {
66
+ this.cachedBodyArea = document.body.clientWidth * document.body.clientHeight, this.bodyResizeObserver = new ResizeObserver(this.handleBodyResize), this.bodyResizeObserver.observe(document.body);
67
+ }
68
+ /**
69
+ * 更新屏幕面积缓存
70
+ */
71
+ updateBodyAreaCache() {
72
+ this.cachedBodyArea = document.body.clientWidth * document.body.clientHeight, console.log(`[VideoQualityManager] 屏幕面积更新: ${this.cachedBodyArea}`);
73
+ }
74
+ /**
75
+ * 添加 DOM 元素监听
76
+ */
77
+ observe(t) {
78
+ var i, a;
79
+ const { userId: e, streamType: r, viewElement: s } = t;
80
+ return this.resizeObserver ? s ? (this.domInfoMap.has(s) && ((i = this.domInfoMap.get(s)) == null ? void 0 : i.userId) === e && ((a = this.domInfoMap.get(s)) == null ? void 0 : a.streamType) === r || (this.domInfoMap.set(s, {
81
+ userId: e,
82
+ streamType: r,
83
+ rect: this.getDomRect(s)
84
+ }), this.resizeObserver.observe(s)), !0) : (console.warn("[VideoQualityManager] DOM element not found:", s), !1) : (console.warn("[VideoQualityManager] Observer not initialized"), !1);
85
+ }
86
+ /**
87
+ * 移除 DOM 元素监听
88
+ */
89
+ unobserve(t) {
90
+ t && this.resizeObserver && this.resizeObserver.unobserve(t), this.domInfoMap.delete(t), this.highQualityDomMap.has(t) && this.highQualityDomMap.delete(t);
91
+ }
92
+ /**
93
+ * 计算最优质量
94
+ */
95
+ calculateOptimalQuality(t) {
96
+ const { userId: e, streamType: r, views: s } = t, i = s || this.getViewsByStream(e, r);
97
+ if (e === this.loginUserId)
98
+ return d.LD;
99
+ if (r === I.Screen)
100
+ return this.tryToRemoveHighQualityDom(e, r, i, 1), this.updateHighQualityMap(e, r, i, 1), d.HD;
101
+ if (i.length === 0)
102
+ return this.removeHighQualityDom(e, r, i), d.LD;
103
+ const a = i.map((l) => this.getDomRect(l)), o = Math.max(...a.map((l) => l.width * l.height), 0), h = M * D;
104
+ if (o < h * v)
105
+ return this.removeHighQualityDom(e, r, i), d.LD;
106
+ const f = this.cachedBodyArea || document.body.clientWidth * document.body.clientHeight, c = o / f;
107
+ return Array.from(this.highQualityDomMap.entries()).filter(([l, y]) => !(y.userId === e && y.streamType === r)).sort((l, y) => l[1].radio - y[1].radio).length < g ? (this.updateHighQualityMap(e, r, i, c), d.HD) : this.tryToRemoveHighQualityDom(e, r, i, c) ? (this.updateHighQualityMap(e, r, i, c), d.HD) : (console.log(
108
+ `[StreamPlayer][VideoQualityManager] ${e}_${r} 面积占比过小,保持小流: ${(c * 100).toFixed(2)}%`
109
+ ), this.removeHighQualityDom(e, r, i), d.LD);
110
+ }
111
+ // 将淘汰大流的逻辑单独实现在这里
112
+ tryToRemoveHighQualityDom(t, e, r, s) {
113
+ const i = Array.from(this.highQualityDomMap.entries()).filter(([o, h]) => !(h.userId === t && h.streamType === e)).sort((o, h) => o[1].radio - h[1].radio);
114
+ if (i.length < g)
115
+ return !1;
116
+ const a = i.filter(([o, h]) => h.radio < s);
117
+ if (a.length > 0) {
118
+ const [, o] = a[0];
119
+ return console.log(
120
+ `[StreamPlayer][VideoQualityManager] 淘汰 ${o.userId}_${o.streamType} (占比: ${(o.radio * 100).toFixed(2)}%),为 ${t}_${e} (占比: ${(s * 100).toFixed(2)}%) 腾出位置`
121
+ ), this.onQualityChange({
122
+ userId: o.userId,
123
+ streamType: o.streamType,
124
+ newQuality: d.LD,
125
+ reason: `because of ${t}_${e} become high quality`
126
+ }), this.removeHighQualityDom(o.userId, o.streamType, r), !0;
127
+ }
128
+ return !1;
129
+ }
130
+ /**
131
+ * 更新大流映射
132
+ */
133
+ updateHighQualityMap(t, e, r, s) {
134
+ Array.from(this.highQualityDomMap.entries()).forEach(([i, a]) => {
135
+ a.userId === t && a.streamType === e && this.highQualityDomMap.delete(i);
136
+ }), r.forEach((i) => {
137
+ (typeof i == "string" ? document.getElementById(i) : i) && this.highQualityDomMap.set(i, { userId: t, streamType: e, radio: s });
138
+ });
139
+ }
140
+ removeHighQualityDom(t, e, r) {
141
+ Array.from(this.highQualityDomMap.entries()).forEach(([s, i]) => {
142
+ i.userId === t && i.streamType === e && this.highQualityDomMap.delete(s);
143
+ });
144
+ }
145
+ /**
146
+ * 根据流信息获取相关视图
147
+ */
148
+ getViewsByStream(t, e) {
149
+ const r = [];
150
+ return Array.from(this.domInfoMap.entries()).forEach(([s, i]) => {
151
+ i.userId === t && i.streamType === e && r.push(s);
152
+ }), r;
153
+ }
154
+ /**
155
+ * 获取 DOM 元素的尺寸
156
+ */
157
+ getDomRect(t) {
158
+ const e = typeof t == "string" ? document.getElementById(t) : t;
159
+ return e ? e.getBoundingClientRect() : { width: 0, height: 0 };
160
+ }
161
+ /**
162
+ * 清理所有资源
163
+ */
164
+ destroy() {
165
+ this.resizeObserver && (this.resizeObserver.disconnect(), this.resizeObserver = null), this.bodyResizeObserver && (this.bodyResizeObserver.disconnect(), this.bodyResizeObserver = null), this.domInfoMap.clear(), this.highQualityDomMap.clear(), this.cachedBodyArea = 0;
166
+ }
167
+ /**
168
+ * 获取监听的 DOM 数量
169
+ */
170
+ getObservedCount() {
171
+ return this.domInfoMap.size;
172
+ }
173
+ }
174
+ export {
175
+ A as VideoQualityManager,
176
+ A as default
177
+ };
@@ -0,0 +1,119 @@
1
+ import { VideoStreamType, FillMode } from '../../../types';
2
+
3
+ /**
4
+ * 流播放管理器新版本 - 协调器
5
+ * 职责:
6
+ * 1. 协调各个专业模块的工作
7
+ * 2. 提供统一的流管理接口
8
+ * 3. 处理模块间的通信和事件
9
+ * 4. 管理整个系统的生命周期
10
+ */
11
+ export declare class StreamPlayManager {
12
+ static instance: StreamPlayManager | null;
13
+ private lazyLoadManager;
14
+ private videoQualityManager;
15
+ private streamPlayer;
16
+ private streamInfoManager;
17
+ private hasVideoStreamMap;
18
+ constructor();
19
+ setLoginUserId(loginUserId: string): void;
20
+ private onUserVideoStateChanged;
21
+ private isLocalVideoStream;
22
+ /**
23
+ * 绑定视频流到指定视图
24
+ * @param options 绑定选项
25
+ */
26
+ bindView(options: {
27
+ userId: string;
28
+ streamType: VideoStreamType;
29
+ view: string | HTMLDivElement;
30
+ lazyLoad?: {
31
+ enable: boolean;
32
+ viewport?: string | HTMLDivElement;
33
+ };
34
+ }): Promise<void>;
35
+ /**
36
+ * 解绑视频流的指定视图
37
+ * @param options 解绑选项
38
+ */
39
+ unbindView(options: {
40
+ userId: string;
41
+ streamType: VideoStreamType;
42
+ view: string | HTMLDivElement;
43
+ }): Promise<void>;
44
+ /**
45
+ * 处理可见性变化回调
46
+ * @private
47
+ */
48
+ private handleVisibilityChange;
49
+ /**
50
+ * 处理质量变化回调
51
+ * @private
52
+ */
53
+ private handleQualityChange;
54
+ /**
55
+ * 更新视频视图列表
56
+ * @private
57
+ */
58
+ private updateVideoView;
59
+ /**
60
+ * 检查并更新视频质量
61
+ * @private
62
+ */
63
+ private checkAndUpdateQuality;
64
+ /**
65
+ * 开始播放视频流
66
+ * @private
67
+ */
68
+ private startPlayVideo;
69
+ /**
70
+ * 停止播放视频流
71
+ * @private
72
+ */
73
+ private stopPlayVideo;
74
+ /**
75
+ * 更新视频流质量
76
+ * @private
77
+ */
78
+ private updateVideoQuality;
79
+ /**
80
+ * 设置流配置
81
+ * @param options 配置选项
82
+ */
83
+ setStreamConfig(options: {
84
+ userId: string;
85
+ streamType: VideoStreamType;
86
+ renderParams?: {
87
+ fillMode?: FillMode;
88
+ };
89
+ }): Promise<void>;
90
+ private bindEvent;
91
+ private unbindEvent;
92
+ /**
93
+ * 清理所有流信息
94
+ */
95
+ destroy(): Promise<void>;
96
+ }
97
+ export declare function useStreamPlayManager(): {
98
+ bindView: (options: {
99
+ userId: string;
100
+ streamType: VideoStreamType;
101
+ view: string | HTMLDivElement;
102
+ lazyLoad?: {
103
+ enable: boolean;
104
+ viewport?: string | HTMLDivElement;
105
+ };
106
+ }) => Promise<void>;
107
+ unbindView: (options: {
108
+ userId: string;
109
+ streamType: VideoStreamType;
110
+ view: string | HTMLDivElement;
111
+ }) => Promise<void>;
112
+ setStreamConfig: (options: {
113
+ userId: string;
114
+ streamType: VideoStreamType;
115
+ renderParams?: {
116
+ fillMode?: FillMode;
117
+ };
118
+ }) => Promise<void>;
119
+ };
@@ -0,0 +1,298 @@
1
+ var M = Object.defineProperty;
2
+ var v = (o, t, e) => t in o ? M(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;
3
+ var m = (o, t, e) => v(o, typeof t != "symbol" ? t + "" : t, e);
4
+ import { watch as p } from "vue";
5
+ import S, { TUIRoomEvents as I, TUIVideoStreamType as h } from "@tencentcloud/tuiroom-engine-js";
6
+ import { useRoomEngine as b } from "../../../hooks/useRoomEngine.js";
7
+ import { useLoginState as Q } from "../../../states/LoginState.js";
8
+ import { useRoomState as P } from "../../../states/RoomState/index.js";
9
+ import { LazyLoadManager as L } from "./LazyLoadManager.js";
10
+ import { StreamInfoManager as C } from "./StreamInfoManager.js";
11
+ import { StreamPlayer as T } from "./StreamPlayer.js";
12
+ import { VideoQualityManager as $ } from "./VideoQualityManager.js";
13
+ import { VideoStreamType as g, FillMode as E } from "../../../types/participant.js";
14
+ const V = b(), { currentRoom: U } = P(), { loginUserInfo: c } = Q(), y = class y {
15
+ constructor() {
16
+ // 专业模块实例
17
+ m(this, "lazyLoadManager");
18
+ m(this, "videoQualityManager");
19
+ m(this, "streamPlayer");
20
+ m(this, "streamInfoManager");
21
+ m(this, "hasVideoStreamMap", /* @__PURE__ */ new Map());
22
+ var t;
23
+ if (y.instance)
24
+ return y.instance;
25
+ y.instance = this, this.streamInfoManager = new C(), this.streamPlayer = new T(), this.lazyLoadManager = new L({
26
+ onVisibilityChange: this.handleVisibilityChange.bind(this)
27
+ }), this.videoQualityManager = new $({
28
+ onQualityChange: this.handleQualityChange.bind(this),
29
+ loginUserId: ((t = c.value) == null ? void 0 : t.userId) || ""
30
+ }), this.onUserVideoStateChanged = this.onUserVideoStateChanged.bind(this), this.bindEvent();
31
+ }
32
+ setLoginUserId(t) {
33
+ this.videoQualityManager.setLoginUserId(t);
34
+ }
35
+ onUserVideoStateChanged(t) {
36
+ const { userId: e, streamType: a, hasVideo: i } = t, s = {
37
+ [h.kCameraStreamLow]: g.Camera,
38
+ [h.kCameraStream]: g.Camera,
39
+ [h.kScreenStream]: g.Screen
40
+ }[a];
41
+ i ? (this.hasVideoStreamMap.set(`${e}_${s}`, !0), this.startPlayVideo({ userId: e, streamType: s })) : (this.hasVideoStreamMap.delete(`${e}_${s}`), this.stopPlayVideo({ userId: e, streamType: s }));
42
+ }
43
+ isLocalVideoStream(t) {
44
+ var e;
45
+ return t === ((e = c.value) == null ? void 0 : e.userId);
46
+ }
47
+ /**
48
+ * 绑定视频流到指定视图
49
+ * @param options 绑定选项
50
+ */
51
+ async bindView(t) {
52
+ const { userId: e, streamType: a, view: i, lazyLoad: r } = t, { enable: s, viewport: l } = r || { enable: !0, viewport: null }, d = typeof i == "string" ? document.getElementById(i) : i;
53
+ if (!d)
54
+ throw new Error("[StreamPlayManager] bindView failed: view not found");
55
+ const f = !s || this.isLocalVideoStream(e);
56
+ try {
57
+ if (this.streamInfoManager.addView({
58
+ userId: e,
59
+ streamType: a,
60
+ view: d,
61
+ initVisible: f
62
+ }), f) {
63
+ await this.startPlayVideo({ userId: e, streamType: a });
64
+ return;
65
+ }
66
+ this.lazyLoadManager.initObserver({ root: l || null }), this.lazyLoadManager.observe({ userId: e, streamType: a, viewElement: d });
67
+ } catch (w) {
68
+ throw console.error("[StreamPlayManager] bindView error:", w), w;
69
+ }
70
+ }
71
+ /**
72
+ * 解绑视频流的指定视图
73
+ * @param options 解绑选项
74
+ */
75
+ async unbindView(t) {
76
+ const { userId: e, streamType: a, view: i } = t, r = typeof i == "string" ? document.getElementById(i) : i;
77
+ if (!r)
78
+ throw new Error("[StreamPlayManager] unbindView failed: view not found");
79
+ try {
80
+ this.streamInfoManager.removeView({
81
+ userId: e,
82
+ streamType: a,
83
+ view: r
84
+ }), this.lazyLoadManager.unobserve(r), this.videoQualityManager.unobserve(r), this.streamInfoManager.getVisibleViewIdList(e, a).length === 0 ? await this.stopPlayVideo({ userId: e, streamType: a }) : await this.updateVideoView({ userId: e, streamType: a, removeViews: [r] });
85
+ } catch (s) {
86
+ throw console.error("[StreamPlayManager] unbindView error:", s), s;
87
+ }
88
+ }
89
+ /**
90
+ * 处理可见性变化回调
91
+ * @private
92
+ */
93
+ async handleVisibilityChange(t) {
94
+ const { userId: e, streamType: a, isVisible: i, target: r } = t, s = this.streamInfoManager.getStreamInfo(e, a);
95
+ s && (console.log("[StreamPlayManager] VisibilityChange", `${e}_${a} ${i ? "enter" : "left"}`), this.streamInfoManager.setViewVisible({
96
+ userId: e,
97
+ streamType: a,
98
+ view: r,
99
+ isVisible: i
100
+ }), i ? s.isPlaying ? await this.updateVideoView({ userId: e, streamType: a, addViews: [r] }) : await this.startPlayVideo({ userId: e, streamType: a }) : this.streamInfoManager.getVisibleViewIdList(e, a).length === 0 ? await this.stopPlayVideo({ userId: e, streamType: a }) : await this.updateVideoView({ userId: e, streamType: a, removeViews: [r] }));
101
+ }
102
+ /**
103
+ * 处理质量变化回调
104
+ * @private
105
+ */
106
+ async handleQualityChange(t) {
107
+ const { userId: e, streamType: a, newQuality: i, reason: r } = t, s = this.streamInfoManager.getStreamInfo(e, a);
108
+ !s || s.videoQuality === i || (console.log(`[StreamPlayManager] videoQualityChange: ${e}_${a} -> ${i}, reason: ${r}`), this.streamInfoManager.updateStreamInfo({
109
+ userId: e,
110
+ streamType: a,
111
+ updates: { videoQuality: i }
112
+ }), s.isPlaying && await this.updateVideoQuality({ userId: e, streamType: a, newQuality: i }));
113
+ }
114
+ /**
115
+ * 更新视频视图列表
116
+ * @private
117
+ */
118
+ async updateVideoView(t) {
119
+ const { userId: e, streamType: a, addViews: i, removeViews: r } = t, s = this.streamInfoManager.getStreamInfo(e, a);
120
+ if (!s)
121
+ return;
122
+ i == null || i.forEach((d) => {
123
+ this.videoQualityManager.observe({ userId: e, streamType: a, viewElement: d });
124
+ }), r == null || r.forEach((d) => {
125
+ this.videoQualityManager.unobserve(d);
126
+ });
127
+ const l = this.streamInfoManager.getVisibleViewIdList(e, a);
128
+ if (s.isPlaying && l.length > 0) {
129
+ const d = this.streamInfoManager.getAllViewIdList(e, a);
130
+ await this.streamPlayer.updateVideoView({
131
+ userId: e,
132
+ streamType: a,
133
+ viewIdList: d
134
+ }), await this.checkAndUpdateQuality({ userId: e, streamType: a });
135
+ }
136
+ }
137
+ /**
138
+ * 检查并更新视频质量
139
+ * @private
140
+ */
141
+ async checkAndUpdateQuality(t) {
142
+ const { userId: e, streamType: a } = t, i = this.streamInfoManager.getStreamInfo(e, a);
143
+ if (!i)
144
+ return;
145
+ const r = this.videoQualityManager.calculateOptimalQuality({ userId: e, streamType: a }), s = i.videoQuality;
146
+ r !== s && (console.log(`[StreamPlayManager] videoQualityChange: ${e}_${a} -> ${r}, reason: view update`), this.streamInfoManager.updateStreamInfo({
147
+ userId: e,
148
+ streamType: a,
149
+ updates: { videoQuality: r }
150
+ }), await this.updateVideoQuality({ userId: e, streamType: a, newQuality: r }));
151
+ }
152
+ /**
153
+ * 开始播放视频流
154
+ * @private
155
+ */
156
+ async startPlayVideo(t) {
157
+ const { userId: e, streamType: a } = t, i = this.streamInfoManager.getStreamInfo(e, a);
158
+ if (!i || !this.hasVideoStreamMap.get(`${e}_${a}`))
159
+ return;
160
+ Array.from(i.views.keys()).forEach((l) => {
161
+ this.videoQualityManager.observe({ userId: e, streamType: a, viewElement: l });
162
+ });
163
+ const s = this.videoQualityManager.calculateOptimalQuality({ userId: e, streamType: a });
164
+ i.videoQuality && i.videoQuality !== s && console.log(`[StreamPlayManager] videoQualityChange: ${e}_${a} -> ${s}, reason: view update`), this.streamInfoManager.updateStreamInfo({
165
+ userId: e,
166
+ streamType: a,
167
+ updates: { videoQuality: s }
168
+ });
169
+ try {
170
+ const l = this.streamInfoManager.getVisibleViewIdList(e, a);
171
+ if (l.length === 0)
172
+ return;
173
+ await this.streamPlayer.startPlayVideo({
174
+ userId: e,
175
+ streamType: a,
176
+ videoQuality: s,
177
+ viewIdList: l
178
+ }), this.streamInfoManager.updateStreamInfo({
179
+ userId: e,
180
+ streamType: a,
181
+ updates: { isPlaying: !0 }
182
+ });
183
+ } catch (l) {
184
+ throw console.error("[StreamPlayManager] startPlayVideo error:", l), l;
185
+ }
186
+ }
187
+ /**
188
+ * 停止播放视频流
189
+ * @private
190
+ */
191
+ async stopPlayVideo(t) {
192
+ const { userId: e, streamType: a } = t, i = this.streamInfoManager.getStreamInfo(e, a);
193
+ if (!(!i || !i.isPlaying)) {
194
+ Array.from(i.views.keys()).forEach((r) => {
195
+ this.videoQualityManager.unobserve(r);
196
+ });
197
+ try {
198
+ this.streamInfoManager.updateStreamInfo({
199
+ userId: e,
200
+ streamType: a,
201
+ updates: { isPlaying: !1 }
202
+ }), await this.streamPlayer.stopPlayVideo({
203
+ userId: e,
204
+ streamType: a,
205
+ videoQuality: i.videoQuality
206
+ });
207
+ } catch (r) {
208
+ throw console.error("[StreamPlayManager] stopPlayVideo error:", r), r;
209
+ }
210
+ }
211
+ }
212
+ /**
213
+ * 更新视频流质量
214
+ * @private
215
+ */
216
+ async updateVideoQuality(t) {
217
+ const { userId: e, streamType: a, newQuality: i } = t, r = this.streamInfoManager.getStreamInfo(e, a);
218
+ if (!(!r || !r.isPlaying))
219
+ try {
220
+ await this.streamPlayer.updateVideoQuality({
221
+ userId: e,
222
+ streamType: a,
223
+ videoQuality: i
224
+ }), console.log(`[StreamPlayManager] updateVideoQuality success: ${e}_${a} -> ${i}`);
225
+ } catch (s) {
226
+ throw console.error("[StreamPlayManager] updateVideoQuality error:", s), s;
227
+ }
228
+ }
229
+ /**
230
+ * 设置流配置
231
+ * @param options 配置选项
232
+ */
233
+ async setStreamConfig(t) {
234
+ const { userId: e, streamType: a, renderParams: i } = t;
235
+ if (this.streamInfoManager.getStreamInfo(e, a)) {
236
+ i && i.fillMode && this.streamInfoManager.updateStreamInfo({ userId: e, streamType: a, updates: { fillMode: i.fillMode } });
237
+ try {
238
+ await this.streamPlayer.setRenderParams({
239
+ userId: e,
240
+ streamType: a,
241
+ renderParams: {
242
+ fillMode: (i == null ? void 0 : i.fillMode) || E.Fit
243
+ }
244
+ });
245
+ } catch (s) {
246
+ throw console.error("[StreamPlayManager] setStreamConfig error:", s), s;
247
+ }
248
+ }
249
+ }
250
+ bindEvent() {
251
+ S.once("ready", () => {
252
+ var t;
253
+ (t = V.instance) == null || t.on(I.onUserVideoStateChanged, this.onUserVideoStateChanged);
254
+ });
255
+ }
256
+ unbindEvent() {
257
+ var t;
258
+ (t = V.instance) == null || t.off(I.onUserVideoStateChanged, this.onUserVideoStateChanged);
259
+ }
260
+ /**
261
+ * 清理所有流信息
262
+ */
263
+ async destroy() {
264
+ try {
265
+ const t = [], e = this.streamInfoManager.getAllStreams();
266
+ for (const { userId: a, streamType: i } of e)
267
+ t.push(this.stopPlayVideo({ userId: a, streamType: i }));
268
+ await Promise.all(t), this.hasVideoStreamMap.clear(), this.lazyLoadManager.destroy(), this.videoQualityManager.destroy(), this.streamInfoManager.clear(), this.unbindEvent(), y.instance = null;
269
+ } catch (t) {
270
+ throw console.error("[StreamPlayManager] cleanup error:", t), t;
271
+ }
272
+ }
273
+ };
274
+ m(y, "instance", null);
275
+ let u = y, n = new u();
276
+ p(() => {
277
+ var o;
278
+ return (o = U.value) == null ? void 0 : o.roomId;
279
+ }, async (o, t) => {
280
+ t && !o && (await n.destroy(), n = new u());
281
+ });
282
+ p(() => {
283
+ var o;
284
+ return (o = c.value) == null ? void 0 : o.userId;
285
+ }, (o) => {
286
+ o && n.setLoginUserId(o);
287
+ });
288
+ function D() {
289
+ return {
290
+ bindView: n == null ? void 0 : n.bindView.bind(n),
291
+ unbindView: n == null ? void 0 : n.unbindView.bind(n),
292
+ setStreamConfig: n == null ? void 0 : n.setStreamConfig.bind(n)
293
+ };
294
+ }
295
+ export {
296
+ u as StreamPlayManager,
297
+ D as useStreamPlayManager
298
+ };
@@ -0,0 +1,14 @@
1
+ import { FillMode } from '../../../types';
2
+
3
+ export declare enum VideoStreamQuality {
4
+ HD = "HD",
5
+ LD = "LD"
6
+ }
7
+ export interface StreamInfo {
8
+ views: Map<HTMLDivElement, {
9
+ isVisible: boolean;
10
+ }>;
11
+ isPlaying: boolean;
12
+ videoQuality?: VideoStreamQuality;
13
+ fillMode?: FillMode;
14
+ }
@@ -0,0 +1,4 @@
1
+ var r = /* @__PURE__ */ ((D) => (D.HD = "HD", D.LD = "LD", D))(r || {});
2
+ export {
3
+ r as VideoStreamQuality
4
+ };