tuikit-atomicx-vue3 3.4.2 → 3.5.0-beta.7

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 (491) hide show
  1. package/.eslintrc.cjs +1 -0
  2. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-D1G-LitO.js → MessageInput.vue_vue_type_script_setup_true_lang-jPzZ5INK.js} +38 -36
  3. package/dist/baseComp/Modal/Modal.js +431 -23
  4. package/dist/chat/index.d.ts +68 -53
  5. package/dist/chat/server.js +15 -15
  6. package/dist/components/AudioSetting/AudioMediaControl.js +39 -41
  7. package/dist/components/AudioSetting/AudioSettingTab.js +10 -10
  8. package/dist/components/AudioSetting/MicrophoneSelect.js +8 -8
  9. package/dist/components/AudioSetting/SpeakerSelect.js +9 -9
  10. package/dist/components/AudioSettingPanel/i18n/en-US/index.d.ts +1 -0
  11. package/dist/components/AudioSettingPanel/i18n/en-US/index.js +2 -1
  12. package/dist/components/AudioSettingPanel/i18n/zh-CN/index.d.ts +1 -0
  13. package/dist/components/AudioSettingPanel/i18n/zh-CN/index.js +2 -1
  14. package/dist/components/AudioSettingPanel/index.js +81 -73
  15. package/dist/components/BarrageInput/BarrageInputH5.js +9 -9
  16. package/dist/components/BarrageInput/EmojiPicker/EmojiPicker.js +3 -3
  17. package/dist/components/BarrageInput/MessageInputState.d.ts +28 -0
  18. package/dist/components/BarrageInput/MessageInputState.js +82 -0
  19. package/dist/components/BarrageInput/TextEditor/CharacterCountExtension.js +1 -1
  20. package/dist/components/BarrageInput/TextEditor/EditorCore.js +5 -4
  21. package/dist/components/BarrageInput/TextEditor/index.js +7 -7
  22. package/dist/components/BarrageInput/type.d.ts +17 -0
  23. package/dist/components/BarrageInput/type.js +4 -0
  24. package/dist/components/BarrageInput/utils.d.ts +30 -0
  25. package/dist/components/BarrageInput/utils.js +41 -0
  26. package/dist/components/BarrageList/BarrageList.js +80 -110
  27. package/dist/components/BarrageList/BarrageList.vue.d.ts +0 -29
  28. package/dist/components/BarrageList/BarrageListH5.js +95 -122
  29. package/dist/components/BarrageList/BarrageListH5.vue.d.ts +0 -29
  30. package/dist/components/BarrageList/BarrageListState.d.ts +58 -0
  31. package/dist/components/BarrageList/BarrageListState.js +106 -0
  32. package/dist/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.js +16 -24
  33. package/dist/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.vue.d.ts +5 -5
  34. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.js +48 -73
  35. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.vue.d.ts +5 -7
  36. package/dist/components/BarrageList/Message/TextMessage/TextMessage.js +70 -76
  37. package/dist/components/BarrageList/Message/TextMessage/TextMessage.vue.d.ts +6 -6
  38. package/dist/components/BarrageList/Message/TextMessage/emoji.d.ts +5 -0
  39. package/dist/components/BarrageList/Message/TextMessage/emoji.js +134 -0
  40. package/dist/components/BarrageList/index.d.ts +0 -36
  41. package/dist/components/CameraButton/index.js +18 -19
  42. package/dist/components/ChatSetting/GroupChatSetting/GroupChatSetting.js +2 -1
  43. package/dist/components/CoGuestPanel/CoGuestPanel.js +60 -60
  44. package/dist/components/CoHostPanel/BattlePanel.js +11 -11
  45. package/dist/components/CoHostPanel/CoHostPanel.js +10 -10
  46. package/dist/components/CoHostPanel/ConfigSettingPanel.js +49 -55
  47. package/dist/components/CoHostPanel/ConnectionPanel.js +132 -123
  48. package/dist/components/CoHostPanel/RecommendHostList.js +39 -36
  49. package/dist/components/CoHostPanel/constants.d.ts +3 -0
  50. package/dist/components/CoHostPanel/constants.js +6 -0
  51. package/dist/components/CoHostPanel/i18n/en-US/index.d.ts +1 -0
  52. package/dist/components/CoHostPanel/i18n/en-US/index.js +2 -1
  53. package/dist/components/CoHostPanel/i18n/zh-CN/index.d.ts +1 -0
  54. package/dist/components/CoHostPanel/i18n/zh-CN/index.js +3 -2
  55. package/dist/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.js +6 -6
  56. package/dist/components/ContactList/ContactInfo/ContactInfo.js +1 -1
  57. package/dist/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.js +1 -1
  58. package/dist/components/ContactList/ContactInfo/FriendInfo/FriendInfo.js +9 -9
  59. package/dist/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.js +1 -1
  60. package/dist/components/ContactList/ContactInfo/GroupInfo/GroupInfo.js +4 -4
  61. package/dist/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.js +8 -8
  62. package/dist/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.js +7 -7
  63. package/dist/components/ContactList/ContactList.js +7 -7
  64. package/dist/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.js +8 -8
  65. package/dist/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.js +5 -5
  66. package/dist/components/ContactList/ContactListItem/FriendItem/FriendItem.js +5 -5
  67. package/dist/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.js +1 -1
  68. package/dist/components/ContactList/ContactListItem/GroupItem/GroupItem.js +1 -1
  69. package/dist/components/ContactList/ContactSearch/ContactSearch.js +6 -6
  70. package/dist/components/ConversationList/ConversationActions/ConversationActions.js +49 -51
  71. package/dist/components/ConversationList/ConversationCreate/ConversationCreate.js +9 -9
  72. package/dist/components/ConversationList/ConversationList.js +4 -4
  73. package/dist/components/ConversationList/ConversationList.vue.d.ts +10 -10
  74. package/dist/components/ConversationList/ConversationPreview/ConversationPreview.vue.d.ts +10 -10
  75. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewTimestamp.js +31 -29
  76. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.js +20 -20
  77. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue.d.ts +2 -2
  78. package/dist/components/ConversationList/ConversationPreview/index.js +1 -1
  79. package/dist/components/ConversationList/index.d.ts +30 -30
  80. package/dist/components/LiveAudienceList/LiveAudienceList.js +44 -45
  81. package/dist/components/LiveAudienceList/LiveAudienceListH5.js +7 -7
  82. package/dist/components/LiveAudienceList/UserActionMenu.js +57 -64
  83. package/dist/components/LiveList/LiveList.js +23 -23
  84. package/dist/components/LiveList/LiveListH5.js +38 -38
  85. package/dist/components/LiveScenePanel/CameraSettingDialog.js +10 -10
  86. package/dist/components/LiveScenePanel/MaterialItem.js +15 -15
  87. package/dist/components/LiveScenePanel/index.js +4 -4
  88. package/dist/components/LiveView/CoreViewDecorate/BattleDecorate.js +58 -58
  89. package/dist/components/LiveView/CoreViewDecorate/BattleUserDecorate.js +6 -6
  90. package/dist/components/LiveView/CoreViewDecorate/CoHostDecorate.js +5 -5
  91. package/dist/components/LiveView/DefaultStreamViewUI.js +44 -41
  92. package/dist/components/LiveView/PlayerControl/AudioControl.js +97 -93
  93. package/dist/components/LiveView/PlayerControl/AudioControl.vue.d.ts +10 -6
  94. package/dist/components/LiveView/PlayerControl/MultiResolution.js +57 -62
  95. package/dist/components/LiveView/PlayerControl/PlayerControl.js +79 -79
  96. package/dist/components/LiveView/PlayerControl/PlayerControlState.d.ts +2 -2
  97. package/dist/components/LiveView/PlayerControl/PlayerControlState.js +164 -209
  98. package/dist/components/LiveView/PlayerControl/utils/domHelpers.d.ts +8 -1
  99. package/dist/components/LiveView/PlayerControl/utils/domHelpers.js +57 -24
  100. package/dist/components/LiveView/i18n/en-US/index.d.ts +2 -2
  101. package/dist/components/LiveView/i18n/en-US/index.js +2 -2
  102. package/dist/components/LiveView/i18n/zh-CN/index.d.ts +2 -2
  103. package/dist/components/LiveView/i18n/zh-CN/index.js +2 -2
  104. package/dist/components/LiveView/index.js +17 -17
  105. package/dist/components/MessageInput/AudioCallPicker/AudioCallPicker.js +63 -65
  106. package/dist/components/MessageInput/EmojiPicker/EmojiPicker.js +88 -84
  107. package/dist/components/MessageInput/MessageInput.js +1 -1
  108. package/dist/components/MessageInput/MessageInput.vue.d.ts +5 -2
  109. package/dist/components/MessageInput/TextEditor/EditorCore.d.ts +3 -1
  110. package/dist/components/MessageInput/TextEditor/EditorCore.js +51 -63
  111. package/dist/components/MessageInput/TextEditor/TextEditor.vue.d.ts +6 -2
  112. package/dist/components/MessageInput/TextEditor/extensions/characterCountExtension.d.ts +19 -0
  113. package/dist/components/MessageInput/TextEditor/extensions/characterCountExtension.js +74 -0
  114. package/dist/components/MessageInput/TextEditor/extensions/imageExtension.d.ts +2 -0
  115. package/dist/components/MessageInput/TextEditor/extensions/imageExtension.js +62 -0
  116. package/dist/components/MessageInput/TextEditor/index.js +45 -35
  117. package/dist/components/MessageInput/VideoCallPicker/VideoCallPicker.js +67 -69
  118. package/dist/components/MessageInput/i18n/index.d.ts +4 -0
  119. package/dist/components/MessageInput/i18n/zh-CN.d.ts +4 -0
  120. package/dist/components/MessageInput/i18n/zh-CN.js +5 -1
  121. package/dist/components/MessageInput/index.d.ts +36 -6
  122. package/dist/components/MessageInput/index.js +1 -1
  123. package/dist/components/MessageList/Message/AudioMessage/WaveForm.js +24 -34
  124. package/dist/components/MessageList/Message/CustomMessage/CallMessage/CallMessage.js +29 -28
  125. package/dist/components/MessageList/Message/GroupTipMessage/index.js +13 -13
  126. package/dist/components/MessageList/Message/Message.vue.d.ts +1 -1
  127. package/dist/components/MessageList/Message/MessageLayout/MessageLayout.js +63 -69
  128. package/dist/components/MessageList/Message/VideoMessage/VideoMessage.js +48 -53
  129. package/dist/components/MessageList/Message/VideoMessage/VideoMessage.vue.d.ts +8 -8
  130. package/dist/components/MessageList/MessageList.js +8 -6
  131. package/dist/components/MessageList/MessageList.vue.d.ts +2 -2
  132. package/dist/components/MessageList/i18n/en-US.d.ts +65 -1
  133. package/dist/components/MessageList/i18n/en-US.js +66 -2
  134. package/dist/components/MessageList/i18n/index.d.ts +128 -0
  135. package/dist/components/MessageList/i18n/index.js +6 -6
  136. package/dist/components/MessageList/i18n/zh-CN.d.ts +65 -1
  137. package/dist/components/MessageList/i18n/zh-CN.js +64 -0
  138. package/dist/components/MessageList/index.d.ts +20 -20
  139. package/dist/components/MicButton/index.js +11 -11
  140. package/dist/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.js +172 -174
  141. package/dist/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.js +58 -60
  142. package/dist/components/Search/SearchAdvanced/SearchAdvanced.js +28 -30
  143. package/dist/components/Search/SearchAdvanced/SearchTab/SearchTab.js +22 -24
  144. package/dist/components/Search/SearchAdvanced/Slider/Slider.js +26 -28
  145. package/dist/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.js +133 -135
  146. package/dist/components/Search/SearchBar/SearchBar.js +56 -58
  147. package/dist/components/StreamMixer/LocalMixer/MixerControl.js +12 -12
  148. package/dist/components/StreamMixer/LocalMixer/index.js +66 -63
  149. package/dist/components/StreamView/Layout/CustomLayout.js +8 -8
  150. package/dist/components/StreamView/Layout/FloatLayout.js +124 -127
  151. package/dist/components/StreamView/Layout/GridLayout.js +5 -5
  152. package/dist/components/StreamView/index.js +25 -33
  153. package/dist/components/StreamView/manager/mediaManager.js +54 -60
  154. package/dist/components/UIKitModal/UIKitModal.d.ts +7 -0
  155. package/dist/components/UIKitModal/UIKitModal.js +156 -0
  156. package/dist/components/UIKitModal/index.d.ts +1 -0
  157. package/dist/components/UIKitModal/index.js +4 -0
  158. package/dist/components/{BarrageList/Message/RecalledMessage/RecalledMessage.vue.d.ts → UIKitModal/index.vue.d.ts} +24 -14
  159. package/dist/components/UIKitModal/type.d.ts +21 -0
  160. package/dist/components/UIKitModal/type.js +1 -0
  161. package/dist/components/UserPicker/UserPicker.js +1 -2
  162. package/dist/components/UserPicker/components/SelectedPanel/SelectedPanel.js +19 -18
  163. package/dist/components/UserPicker/hooks/useSearchFilter.d.ts +2 -2
  164. package/dist/components/UserPicker/hooks/useSearchFilter.js +39 -31
  165. package/dist/components/UserPicker/i18n/en-US.d.ts +1 -0
  166. package/dist/components/UserPicker/i18n/en-US.js +2 -1
  167. package/dist/components/UserPicker/i18n/index.d.ts +2 -0
  168. package/dist/components/UserPicker/i18n/zh-CN.d.ts +1 -0
  169. package/dist/components/UserPicker/i18n/zh-CN.js +2 -1
  170. package/dist/components/UserPicker/index.d.ts +2 -2
  171. package/dist/components/UserPicker/type.d.ts +1 -1
  172. package/dist/components/VideoSetting/CameraSelect.js +8 -8
  173. package/dist/components/VideoSetting/VideoMediaControl.js +10 -10
  174. package/dist/components/VideoSetting/VideoPreview.js +9 -9
  175. package/dist/components/VideoSetting/VideoProfile.js +6 -6
  176. package/dist/components/VideoSetting/VideoSettingTab.js +40 -39
  177. package/dist/components/VideoSettingPanel/CameraSelect.js +8 -8
  178. package/dist/components/VideoSettingPanel/VideoPreview.js +1 -1
  179. package/dist/components/VideoSettingPanel/VideoProfile.js +18 -18
  180. package/dist/hooks/useAudioControl.d.ts +3 -3
  181. package/dist/hooks/useAudioControl.js +32 -30
  182. package/dist/hooks/useRoomEngine.js +6 -6
  183. package/dist/index-B_-9wgM4.js +64 -0
  184. package/dist/{index-Bm-QfV5o.js → index-DMfTuy0v.js} +574 -631
  185. package/dist/{index-D2OVtqc8.js → index-DV6o6s43.js} +946 -915
  186. package/dist/index.d.ts +3 -1
  187. package/dist/index.js +164 -142
  188. package/dist/report/MetricsKey.d.ts +16 -0
  189. package/dist/report/MetricsKey.js +4 -0
  190. package/dist/report/dataReport.d.ts +12 -0
  191. package/dist/report/dataReport.js +45 -0
  192. package/dist/report/index.d.ts +4 -0
  193. package/dist/report/index.js +6 -0
  194. package/dist/rtc/index.d.ts +5 -43
  195. package/dist/rtc/index.js +48 -48
  196. package/dist/rtc/server.js +45 -40
  197. package/dist/states/BarrageState/BarrageState.d.ts +74 -0
  198. package/dist/states/BarrageState/BarrageState.js +80 -0
  199. package/dist/states/BarrageState/index.d.ts +1 -0
  200. package/dist/states/BarrageState/index.js +5 -0
  201. package/dist/states/{BattleState.d.ts → BattleState/BattleState.d.ts} +10 -11
  202. package/dist/states/BattleState/BattleState.js +203 -0
  203. package/dist/states/BattleState/index.d.ts +1 -0
  204. package/dist/states/BattleState/index.js +4 -0
  205. package/dist/states/CoGuestState.d.ts +24 -94
  206. package/dist/states/CoGuestState.js +297 -189
  207. package/dist/states/CoHostState/CoHostState.d.ts +2 -2
  208. package/dist/states/CoHostState/CoHostState.js +135 -131
  209. package/dist/states/{DeviceState.d.ts → DeviceState/DeviceState.d.ts} +25 -13
  210. package/dist/states/DeviceState/DeviceState.js +314 -0
  211. package/dist/states/DeviceState/index.d.ts +1 -0
  212. package/dist/states/DeviceState/index.js +4 -0
  213. package/dist/states/LiveAudienceState.d.ts +3 -1
  214. package/dist/states/LiveAudienceState.js +106 -63
  215. package/dist/states/{LiveState/index.d.ts → LiveListState/LiveListState.d.ts} +13 -8
  216. package/dist/states/LiveListState/LiveListState.js +285 -0
  217. package/dist/states/LiveListState/index.d.ts +1 -0
  218. package/dist/states/LiveListState/index.js +4 -0
  219. package/dist/states/LiveMonitorState/api/http.js +147 -129
  220. package/dist/states/LiveMonitorState/index.js +67 -62
  221. package/dist/states/LiveMonitorState/player/adapters/trtc.js +6 -6
  222. package/dist/states/LiveSeatState/index.d.ts +46 -11
  223. package/dist/states/LiveSeatState/index.js +34 -15
  224. package/dist/states/LiveSeatState/seatEventManager.d.ts +2 -0
  225. package/dist/states/LiveSeatState/seatEventManager.js +63 -42
  226. package/dist/states/LiveSeatState/seatManager.d.ts +34 -5
  227. package/dist/states/LiveSeatState/seatManager.js +131 -29
  228. package/dist/states/LiveSeatState/store.d.ts +5 -5
  229. package/dist/states/LiveSeatState/store.js +12 -10
  230. package/dist/states/LiveSeatState/usePlayStream/RTCStreamManager.js +1 -1
  231. package/dist/states/LiveSeatState/usePlayStream/RTCStreamPlayer.js +1 -1
  232. package/dist/states/LiveSeatState/usePlayStream/index.js +30 -28
  233. package/dist/states/LoginState.d.ts +23 -0
  234. package/dist/states/MessageInputState/MessageInputState.d.ts +41 -7
  235. package/dist/states/MessageInputState/MessageInputState.js +60 -59
  236. package/dist/states/MessageInputState/utils.d.ts +8 -1
  237. package/dist/states/MessageInputState/utils.js +30 -10
  238. package/dist/states/SeatStore.js +82 -83
  239. package/dist/states/UIKitModalState/UIKitModalState.d.ts +17 -0
  240. package/dist/states/UIKitModalState/UIKitModalState.js +63 -0
  241. package/dist/states/UIKitModalState/index.d.ts +1 -0
  242. package/dist/states/UIKitModalState/index.js +4 -0
  243. package/dist/states/{VideoMixerState.d.ts → VideoMixerState/VideoMixerState.d.ts} +1 -1
  244. package/dist/states/VideoMixerState/VideoMixerState.js +269 -0
  245. package/dist/states/VideoMixerState/index.d.ts +1 -0
  246. package/dist/states/VideoMixerState/index.js +4 -0
  247. package/dist/styles/index.css +1 -1
  248. package/dist/types/audience.d.ts +21 -0
  249. package/dist/types/audience.js +4 -1
  250. package/dist/types/battle.d.ts +75 -3
  251. package/dist/types/battle.js +5 -1
  252. package/dist/types/coGuest.d.ts +72 -5
  253. package/dist/types/coGuest.js +4 -2
  254. package/dist/types/device.d.ts +38 -17
  255. package/dist/types/device.js +10 -8
  256. package/dist/types/index.d.ts +2 -2
  257. package/dist/types/index.js +96 -80
  258. package/dist/types/live.d.ts +36 -21
  259. package/dist/types/live.js +6 -4
  260. package/dist/types/seat.d.ts +23 -4
  261. package/dist/types/seat.js +7 -1
  262. package/dist/utils/call.d.ts +1 -1
  263. package/dist/utils/call.js +78 -79
  264. package/dist/utils/eventCenter.d.ts +88 -0
  265. package/dist/utils/eventCenter.js +161 -0
  266. package/package.json +4 -3
  267. package/src/chat/server.ts +0 -1
  268. package/src/components/AudioSetting/AudioMediaControl.vue +1 -3
  269. package/src/components/AudioSetting/AudioSettingTab.vue +1 -2
  270. package/src/components/AudioSetting/MicrophoneSelect.vue +1 -2
  271. package/src/components/AudioSetting/SpeakerSelect.vue +1 -2
  272. package/src/components/AudioSettingPanel/i18n/en-US/index.ts +1 -0
  273. package/src/components/AudioSettingPanel/i18n/zh-CN/index.ts +1 -0
  274. package/src/components/AudioSettingPanel/index.vue +4 -2
  275. package/src/components/BarrageInput/BarrageInputH5.vue +1 -1
  276. package/src/components/BarrageInput/EmojiPicker/EmojiPicker.vue +1 -1
  277. package/src/components/BarrageInput/MessageInputState.ts +160 -0
  278. package/src/components/BarrageInput/TextEditor/TextEditor.vue +1 -1
  279. package/src/components/BarrageInput/type.ts +26 -0
  280. package/src/components/BarrageInput/utils.ts +45 -0
  281. package/src/components/BarrageList/BarrageList.vue +61 -117
  282. package/src/components/BarrageList/BarrageListH5.vue +75 -159
  283. package/src/components/BarrageList/BarrageListState.ts +223 -0
  284. package/src/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.vue +8 -55
  285. package/src/components/BarrageList/Message/MessageLayout/MessageLayout.vue +19 -44
  286. package/src/components/BarrageList/Message/TextMessage/TextMessage.vue +69 -96
  287. package/src/components/BarrageList/Message/TextMessage/emoji.ts +132 -0
  288. package/src/components/CameraButton/index.vue +0 -1
  289. package/src/components/ChatSetting/GroupChatSetting/GroupChatSetting.vue +5 -0
  290. package/src/components/CoGuestPanel/CoGuestPanel.vue +16 -91
  291. package/src/components/CoHostPanel/BattlePanel.vue +1 -4
  292. package/src/components/CoHostPanel/ConfigSettingPanel.vue +2 -8
  293. package/src/components/CoHostPanel/ConnectionPanel.vue +37 -33
  294. package/src/components/CoHostPanel/RecommendHostList.vue +12 -13
  295. package/src/components/CoHostPanel/constants.ts +3 -0
  296. package/src/components/CoHostPanel/i18n/en-US/index.ts +1 -0
  297. package/src/components/CoHostPanel/i18n/zh-CN/index.ts +2 -1
  298. package/src/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.vue +1 -1
  299. package/src/components/ContactList/ContactInfo/ContactInfo.vue +1 -1
  300. package/src/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.vue +1 -1
  301. package/src/components/ContactList/ContactInfo/FriendInfo/FriendInfo.vue +1 -1
  302. package/src/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.vue +1 -1
  303. package/src/components/ContactList/ContactInfo/GroupInfo/GroupInfo.vue +1 -1
  304. package/src/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.vue +1 -1
  305. package/src/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.vue +1 -1
  306. package/src/components/ContactList/ContactList.vue +1 -1
  307. package/src/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.vue +1 -1
  308. package/src/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.vue +1 -1
  309. package/src/components/ContactList/ContactListItem/FriendItem/FriendItem.vue +1 -1
  310. package/src/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.vue +1 -1
  311. package/src/components/ContactList/ContactListItem/GroupItem/GroupItem.vue +1 -1
  312. package/src/components/ContactList/ContactSearch/ContactSearch.vue +1 -1
  313. package/src/components/ConversationList/ConversationActions/ConversationActions.vue +2 -8
  314. package/src/components/ConversationList/ConversationCreate/ConversationCreate.vue +2 -2
  315. package/src/components/ConversationList/ConversationCreate/ConversationCreateButton/ConversationCreateButton.vue +1 -1
  316. package/src/components/ConversationList/ConversationCreate/ConversationCreateGroupDetail/ConversationCreateGroupDetail.vue +1 -1
  317. package/src/components/ConversationList/ConversationCreate/ConversationCreateUserSelectList/ConversationCreateUserSelectList.vue +1 -1
  318. package/src/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/ConversationGroupTypeInfo.vue +1 -1
  319. package/src/components/ConversationList/ConversationList.vue +2 -2
  320. package/src/components/ConversationList/ConversationListContent/ConversationListContent.vue +1 -1
  321. package/src/components/ConversationList/ConversationListHeader/ConversationListHeader.vue +1 -1
  322. package/src/components/ConversationList/ConversationPlaceHolder/ConversationPlaceHolder.vue +1 -1
  323. package/src/components/ConversationList/ConversationPreview/ConversationPreview.vue +1 -1
  324. package/src/components/ConversationList/ConversationPreview/ConversationPreviewAbstract.vue +1 -1
  325. package/src/components/ConversationList/ConversationPreview/ConversationPreviewTimestamp.vue +4 -4
  326. package/src/components/ConversationList/ConversationPreview/ConversationPreviewTitle.vue +1 -1
  327. package/src/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue +3 -3
  328. package/src/components/ConversationList/ConversationPreview/ConversationPreviewUnread.vue +1 -1
  329. package/src/components/ConversationList/ConversationSearch/ConversationSearch.vue +1 -1
  330. package/src/components/LiveAudienceList/LiveAudienceList.vue +4 -5
  331. package/src/components/LiveAudienceList/LiveAudienceListH5.vue +2 -2
  332. package/src/components/LiveAudienceList/UserActionMenu.vue +7 -48
  333. package/src/components/LiveList/LiveList.vue +5 -5
  334. package/src/components/LiveList/LiveListH5.vue +6 -6
  335. package/src/components/LiveScenePanel/index.vue +2 -2
  336. package/src/components/LiveView/CoreViewDecorate/BattleDecorate.vue +10 -15
  337. package/src/components/LiveView/CoreViewDecorate/BattleUserDecorate.vue +2 -2
  338. package/src/components/LiveView/DefaultStreamViewUI.vue +5 -3
  339. package/src/components/LiveView/PlayerControl/AudioControl.vue +72 -80
  340. package/src/components/LiveView/PlayerControl/MultiResolution.vue +30 -21
  341. package/src/components/LiveView/PlayerControl/PlayerControl.vue +26 -42
  342. package/src/components/LiveView/PlayerControl/PlayerControlState.ts +253 -455
  343. package/src/components/LiveView/PlayerControl/utils/domHelpers.ts +68 -4
  344. package/src/components/LiveView/i18n/en-US/index.ts +2 -2
  345. package/src/components/LiveView/i18n/zh-CN/index.ts +2 -2
  346. package/src/components/LiveView/index.vue +3 -2
  347. package/src/components/MessageInput/AudioCallPicker/AudioCallPicker.vue +8 -6
  348. package/src/components/MessageInput/EmojiPicker/EmojiPicker.vue +7 -3
  349. package/src/components/MessageInput/MessageInput.module.scss +1 -0
  350. package/src/components/MessageInput/MessageInput.vue +3 -1
  351. package/src/components/MessageInput/TextEditor/EditorCore.ts +17 -28
  352. package/src/components/MessageInput/TextEditor/TextEditor.vue +24 -4
  353. package/src/components/MessageInput/TextEditor/extensions/characterCountExtension.ts +159 -0
  354. package/src/components/MessageInput/TextEditor/extensions/imageExtension.ts +79 -0
  355. package/src/components/MessageInput/VideoCallPicker/VideoCallPicker.vue +8 -6
  356. package/src/components/MessageInput/i18n/zh-CN.ts +4 -0
  357. package/src/components/MessageInput/types.d.ts +1 -0
  358. package/src/components/MessageList/Message/AudioMessage/WaveForm.vue +20 -37
  359. package/src/components/MessageList/Message/CustomMessage/CallMessage/CallMessage.vue +5 -3
  360. package/src/components/MessageList/Message/GroupTipMessage/GroupTipMessage.vue +5 -4
  361. package/src/components/MessageList/Message/Message.vue +1 -1
  362. package/src/components/MessageList/Message/MessageLayout/MessageLayout.vue +8 -8
  363. package/src/components/MessageList/Message/VideoMessage/VideoMessage.vue +46 -43
  364. package/src/components/MessageList/Message/VideoMessage/index.ts +1 -1
  365. package/src/components/MessageList/MessageList.vue +2 -0
  366. package/src/components/MessageList/i18n/en-US.ts +66 -0
  367. package/src/components/MessageList/i18n/index.ts +4 -4
  368. package/src/components/MessageList/i18n/zh-CN.ts +66 -0
  369. package/src/components/MicButton/index.vue +3 -3
  370. package/src/components/Search/Search.vue +1 -1
  371. package/src/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.scss +1 -4
  372. package/src/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.vue +1 -1
  373. package/src/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.scss +1 -4
  374. package/src/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.vue +1 -1
  375. package/src/components/Search/SearchAdvanced/SearchAdvanced.scss +1 -4
  376. package/src/components/Search/SearchAdvanced/SearchAdvanced.vue +1 -1
  377. package/src/components/Search/SearchAdvanced/SearchTab/SearchTab.scss +1 -4
  378. package/src/components/Search/SearchAdvanced/SearchTab/SearchTab.vue +1 -1
  379. package/src/components/Search/SearchAdvanced/Slider/Slider.scss +1 -4
  380. package/src/components/Search/SearchAdvanced/Slider/Slider.vue +1 -1
  381. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.scss +1 -4
  382. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.vue +1 -1
  383. package/src/components/Search/SearchBar/SearchBar.scss +3 -6
  384. package/src/components/Search/SearchBar/SearchBar.vue +1 -1
  385. package/src/components/Search/SearchResults/EmptyResult/EmptyResult.vue +1 -1
  386. package/src/components/Search/SearchResults/Loading/Loading.vue +1 -1
  387. package/src/components/Search/SearchResults/SearchResults.vue +1 -1
  388. package/src/components/Search/SearchResults/SearchResultsItem/Conversation/Conversation.vue +1 -1
  389. package/src/components/Search/SearchResults/SearchResultsItem/Group/Group.vue +1 -1
  390. package/src/components/Search/SearchResults/SearchResultsItem/Message/Message.vue +1 -1
  391. package/src/components/Search/SearchResults/SearchResultsItem/SearchResultsItem.vue +1 -1
  392. package/src/components/Search/SearchResults/SearchResultsItem/User/User.vue +1 -1
  393. package/src/components/StreamMixer/LocalMixer/index.vue +6 -8
  394. package/src/components/StreamView/Layout/CustomLayout.vue +2 -2
  395. package/src/components/StreamView/Layout/FloatLayout.vue +88 -83
  396. package/src/components/StreamView/index.vue +28 -14
  397. package/src/components/StreamView/manager/mediaManager.ts +38 -42
  398. package/src/components/UIKitModal/UIKitModal.ts +71 -0
  399. package/src/components/UIKitModal/index.scss +134 -0
  400. package/src/components/UIKitModal/index.ts +1 -0
  401. package/src/components/UIKitModal/index.vue +160 -0
  402. package/src/components/UIKitModal/type.ts +24 -0
  403. package/src/components/UserPicker/UserPicker.vue +1 -1
  404. package/src/components/UserPicker/components/SelectedPanel/SelectedPanel.vue +1 -0
  405. package/src/components/UserPicker/hooks/useSearchFilter.ts +27 -18
  406. package/src/components/UserPicker/i18n/en-US.ts +1 -0
  407. package/src/components/UserPicker/i18n/zh-CN.ts +1 -0
  408. package/src/components/UserPicker/type.ts +1 -1
  409. package/src/components/VideoSetting/CameraSelect.vue +1 -2
  410. package/src/components/VideoSetting/VideoMediaControl.vue +1 -1
  411. package/src/components/VideoSetting/VideoPreview.vue +1 -2
  412. package/src/components/VideoSetting/VideoProfile.vue +1 -1
  413. package/src/components/VideoSetting/VideoSettingTab.vue +9 -5
  414. package/src/components/VideoSettingPanel/CameraSelect.vue +1 -2
  415. package/src/components/VideoSettingPanel/VideoProfile.vue +7 -7
  416. package/src/hooks/useAudioControl.ts +17 -4
  417. package/src/hooks/useRoomEngine.ts +1 -1
  418. package/src/index.ts +3 -0
  419. package/src/report/MetricsKey.ts +16 -0
  420. package/src/report/dataReport.ts +55 -0
  421. package/src/report/index.ts +7 -0
  422. package/src/rtc/index.ts +7 -9
  423. package/src/rtc/server.ts +4 -0
  424. package/src/types/audience.ts +27 -1
  425. package/src/types/battle.ts +87 -4
  426. package/src/types/coGuest.ts +87 -5
  427. package/src/types/device.ts +41 -16
  428. package/src/types/index.ts +2 -2
  429. package/src/types/live.ts +41 -22
  430. package/src/types/seat.ts +28 -4
  431. package/src/utils/call.ts +26 -27
  432. package/src/utils/eventCenter.ts +249 -0
  433. package/dist/DialogPortal-CvJcEAsn.js +0 -417
  434. package/dist/components/BarrageList/Message/FaceMessage/FaceMessage.js +0 -23
  435. package/dist/components/BarrageList/Message/FaceMessage/FaceMessage.vue.d.ts +0 -30
  436. package/dist/components/BarrageList/Message/FaceMessage/index.d.ts +0 -3
  437. package/dist/components/BarrageList/Message/FaceMessage/index.js +0 -4
  438. package/dist/components/BarrageList/Message/GroupTipMessage/GroupTipMessage.js +0 -4
  439. package/dist/components/BarrageList/Message/GroupTipMessage/GroupTipMessage.vue.d.ts +0 -16
  440. package/dist/components/BarrageList/Message/GroupTipMessage/index.d.ts +0 -3
  441. package/dist/components/BarrageList/Message/GroupTipMessage/index.js +0 -25
  442. package/dist/components/BarrageList/Message/ImageMessage/ImageMessage.js +0 -71
  443. package/dist/components/BarrageList/Message/ImageMessage/ImageMessage.vue.d.ts +0 -34
  444. package/dist/components/BarrageList/Message/ImageMessage/index.d.ts +0 -3
  445. package/dist/components/BarrageList/Message/ImageMessage/index.js +0 -4
  446. package/dist/components/BarrageList/Message/MergerMessage/MergerMessage.js +0 -9
  447. package/dist/components/BarrageList/Message/MergerMessage/MergerMessage.vue.d.ts +0 -2
  448. package/dist/components/BarrageList/Message/MergerMessage/index.d.ts +0 -3
  449. package/dist/components/BarrageList/Message/MergerMessage/index.js +0 -4
  450. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.js +0 -40
  451. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.vue.d.ts +0 -54
  452. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.js +0 -26
  453. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.vue.d.ts +0 -15
  454. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/index.d.ts +0 -3
  455. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/index.js +0 -4
  456. package/dist/components/BarrageList/Message/RecalledMessage/RecalledMessage.js +0 -41
  457. package/dist/components/BarrageList/Message/RecalledMessage/index.d.ts +0 -3
  458. package/dist/components/BarrageList/Message/RecalledMessage/index.js +0 -4
  459. package/dist/components/BarrageList/MessageForward/ForwardListItem.js +0 -45
  460. package/dist/components/BarrageList/MessageForward/ForwardListItem.vue.d.ts +0 -17
  461. package/dist/components/BarrageList/MessageForward/MessageForward.js +0 -203
  462. package/dist/components/BarrageList/MessageForward/MessageForward.vue.d.ts +0 -2
  463. package/dist/components/BarrageList/MessageForward/index.d.ts +0 -3
  464. package/dist/components/BarrageList/MessageForward/index.js +0 -4
  465. package/dist/components/StreamView/Layout/MixLayout.js +0 -89
  466. package/dist/components/StreamView/Layout/MixLayout.vue.d.ts +0 -31
  467. package/dist/states/BarrageListState/BarrageListState.d.ts +0 -26
  468. package/dist/states/BarrageListState/BarrageListState.js +0 -122
  469. package/dist/states/BarrageListState/index.d.ts +0 -1
  470. package/dist/states/BarrageListState/index.js +0 -4
  471. package/dist/states/BattleState.js +0 -117
  472. package/dist/states/DeviceState.js +0 -296
  473. package/dist/states/LiveState/index.js +0 -254
  474. package/dist/states/VideoMixerState.js +0 -260
  475. package/src/components/BarrageList/Message/FaceMessage/FaceMessage.vue +0 -43
  476. package/src/components/BarrageList/Message/FaceMessage/index.ts +0 -3
  477. package/src/components/BarrageList/Message/GroupTipMessage/GroupTipMessage.vue +0 -55
  478. package/src/components/BarrageList/Message/GroupTipMessage/index.ts +0 -3
  479. package/src/components/BarrageList/Message/ImageMessage/ImageMessage.vue +0 -181
  480. package/src/components/BarrageList/Message/ImageMessage/index.ts +0 -3
  481. package/src/components/BarrageList/Message/MergerMessage/MergerMessage.vue +0 -6
  482. package/src/components/BarrageList/Message/MergerMessage/index.ts +0 -3
  483. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.vue +0 -70
  484. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.vue +0 -40
  485. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/index.ts +0 -3
  486. package/src/components/BarrageList/Message/RecalledMessage/RecalledMessage.vue +0 -82
  487. package/src/components/BarrageList/Message/RecalledMessage/index.ts +0 -3
  488. package/src/components/BarrageList/MessageForward/ForwardListItem.vue +0 -67
  489. package/src/components/BarrageList/MessageForward/MessageForward.vue +0 -388
  490. package/src/components/BarrageList/MessageForward/index.ts +0 -3
  491. package/src/components/StreamView/Layout/MixLayout.vue +0 -144
@@ -0,0 +1,314 @@
1
+ var ee = Object.defineProperty;
2
+ var te = (e, t, a) => t in e ? ee(e, t, { enumerable: !0, configurable: !0, writable: !0, value: a }) : e[t] = a;
3
+ var F = (e, t, a) => te(e, typeof t != "symbol" ? t + "" : t, a);
4
+ import { ref as o } from "vue";
5
+ import { DeviceStatus as u, DeviceError as l, MirrorType as D, VideoQuality as m, AudioRoute as B } from "../../types/device.js";
6
+ import ae, { TUIRoomDeviceMangerEvents as P, TUIMediaDeviceType as c, TUIMediaDeviceState as E, TUIVideoQuality as k, TRTCVideoFillMode as ie, TRTCVideoRotation as ne, TRTCVideoMirrorType as O, TUIAudioRoute as H, TUIErrorCode as h } from "@tencentcloud/tuiroom-engine-js";
7
+ import { useDeviceManager as oe, useRoomEngine as se } from "../../hooks/useRoomEngine.js";
8
+ import { useLoginState as re } from "../LoginState.js";
9
+ import { TUIRoomEvents as T, TUIVideoStreamType as q } from "../../types/types.js";
10
+ const s = se(), n = oe(), { loginUserInfo: M } = re(), w = o(u.Off), g = o([]), S = o(null), v = o(l.NoError), x = o(100), Y = o(0), U = o(!1), Z = o(0), I = o(u.Off), V = o([]), A = o(null), j = o(l.NoError), Q = o(!1), f = o(!1), _ = o(!0), z = o(D.Auto), G = o(m.Quality720P), R = o([]), C = o(null), J = o(100), K = o(B.Speakerphone), L = o(!1), N = o(u.Off), W = o(null), ce = async () => {
11
+ var e;
12
+ try {
13
+ await ((e = s.instance) == null ? void 0 : e.openLocalMicrophone()), w.value = u.On, v.value = l.NoError;
14
+ } catch (t) {
15
+ if (t.code === 0 && t.message === "you have already mute the audio")
16
+ return;
17
+ switch (t.code) {
18
+ case h.ERR_MICROPHONE_START_FAILED:
19
+ v.value = l.NotSupportCapture;
20
+ break;
21
+ case h.ERR_MICROPHONE_NOT_AUTHORIZED:
22
+ v.value = l.NoSystemPermission;
23
+ break;
24
+ case h.ERR_MICROPHONE_OCCUPIED:
25
+ v.value = l.OccupiedError;
26
+ break;
27
+ case h.ERR_MICROPHONE_DEVICE_EMPTY:
28
+ v.value = l.NoDeviceDetected;
29
+ break;
30
+ default:
31
+ v.value = l.UnknownError;
32
+ break;
33
+ }
34
+ throw t;
35
+ }
36
+ }, ue = async () => {
37
+ var e;
38
+ await ((e = s.instance) == null ? void 0 : e.closeLocalMicrophone()), w.value = u.Off;
39
+ }, le = async () => {
40
+ var e;
41
+ await ((e = s.instance) == null ? void 0 : e.muteLocalAudio());
42
+ }, de = async () => {
43
+ var e;
44
+ await ((e = s.instance) == null ? void 0 : e.unmuteLocalAudio());
45
+ }, ve = async () => {
46
+ var e, t;
47
+ try {
48
+ g.value = await ((e = n.instance) == null ? void 0 : e.getDevicesList({
49
+ type: c.kMediaDeviceTypeAudioInput
50
+ })) || [], S.value = await ((t = n.instance) == null ? void 0 : t.getCurrentDevice({
51
+ type: c.kMediaDeviceTypeAudioInput
52
+ })) || null;
53
+ } catch (a) {
54
+ throw console.error("Failed to get microphone list:", a), v.value = l.NoSystemPermission, a;
55
+ }
56
+ }, pe = async (e) => {
57
+ var a;
58
+ await ((a = n.instance) == null ? void 0 : a.setCurrentDevice({
59
+ type: c.kMediaDeviceTypeAudioInput,
60
+ deviceId: e.deviceId
61
+ }));
62
+ const t = g.value.find((i) => i.deviceId === e.deviceId);
63
+ t && (S.value = t);
64
+ }, ye = async (e) => {
65
+ var t, a;
66
+ await ((t = s.instance) == null ? void 0 : t.startMicDeviceTest({ interval: e.interval || 200 })), U.value = !0, (a = n.instance) == null || a.on(P.onTestMicVolume, X);
67
+ }, Te = async (e) => {
68
+ var a;
69
+ const t = (a = s.instance) == null ? void 0 : a.getTRTCCloud();
70
+ await (t == null ? void 0 : t.setAudioCaptureVolume(e)), x.value = e;
71
+ }, me = async (e) => {
72
+ var a;
73
+ const t = (a = s.instance) == null ? void 0 : a.getTRTCCloud();
74
+ await (t == null ? void 0 : t.setAudioPlayoutVolume(e)), J.value = e;
75
+ }, X = (e) => {
76
+ Z.value = e.volume;
77
+ }, fe = async () => {
78
+ var e, t;
79
+ await ((e = s.instance) == null ? void 0 : e.stopMicDeviceTest()), U.value = !1, (t = n.instance) == null || t.off(P.onTestMicVolume, X);
80
+ };
81
+ class Ce {
82
+ constructor() {
83
+ F(this, "speakerTestPlayer", null);
84
+ }
85
+ async startSpeakerDeviceTest(t) {
86
+ var i, r, d;
87
+ if (/electron/i.test(window.navigator.userAgent)) {
88
+ (i = n.instance) == null || i.startSpeakerDeviceTest(t);
89
+ return;
90
+ }
91
+ this.speakerTestPlayer = document == null ? void 0 : document.createElement("audio"), this.speakerTestPlayer && typeof this.speakerTestPlayer.loop < "u" && (this.speakerTestPlayer.loop = !0), await ((d = this.speakerTestPlayer) == null ? void 0 : d.setSinkId(((r = C.value) == null ? void 0 : r.deviceId) || "")), this.speakerTestPlayer.src = t.filePath, this.speakerTestPlayer.play(), L.value = !0;
92
+ }
93
+ async stopSpeakerDeviceTest() {
94
+ var a;
95
+ if (/electron/i.test(window.navigator.userAgent)) {
96
+ (a = n.instance) == null || a.stopSpeakerDeviceTest();
97
+ return;
98
+ }
99
+ this.speakerTestPlayer && (this.speakerTestPlayer.pause(), this.speakerTestPlayer.currentTime = 0), L.value = !1;
100
+ }
101
+ }
102
+ const $ = new Ce(), ke = async () => {
103
+ var e, t;
104
+ try {
105
+ R.value = await ((e = n.instance) == null ? void 0 : e.getDevicesList({
106
+ type: c.kMediaDeviceTypeAudioOutput
107
+ })) || [], C.value = await ((t = n.instance) == null ? void 0 : t.getCurrentDevice({
108
+ type: c.kMediaDeviceTypeAudioOutput
109
+ })) || null;
110
+ } catch (a) {
111
+ throw console.error("Failed to get speaker list:", a), a;
112
+ }
113
+ }, he = async (e) => {
114
+ var a;
115
+ await ((a = n.instance) == null ? void 0 : a.setCurrentDevice({
116
+ type: c.kMediaDeviceTypeAudioOutput,
117
+ deviceId: e.deviceId
118
+ }));
119
+ const t = R.value.find((i) => i.deviceId === e.deviceId);
120
+ t && (C.value = t);
121
+ }, De = async (e) => {
122
+ var t;
123
+ await ((t = n.instance) == null ? void 0 : t.setAudioRoute({
124
+ route: e === B.Speakerphone ? H.kAudioRouteSpeakerphone : H.kAudioRouteEarpiece
125
+ })), K.value = e;
126
+ }, Me = async (e) => {
127
+ await $.startSpeakerDeviceTest({ filePath: e.filePath });
128
+ }, we = async () => {
129
+ await $.stopSpeakerDeviceTest();
130
+ }, ge = async () => {
131
+ var t, a;
132
+ /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ? await ((t = s.instance) == null ? void 0 : t.openLocalCamera({
133
+ isFrontCamera: _.value
134
+ })) : await ((a = s.instance) == null ? void 0 : a.openLocalCamera()), I.value = u.On;
135
+ }, Se = async () => {
136
+ var e;
137
+ await ((e = s.instance) == null ? void 0 : e.closeLocalCamera()), I.value = u.Off;
138
+ }, Ie = async () => {
139
+ var e, t;
140
+ try {
141
+ V.value = await ((e = n.instance) == null ? void 0 : e.getDevicesList({
142
+ type: c.kMediaDeviceTypeVideoCamera
143
+ })) || [], A.value = await ((t = n.instance) == null ? void 0 : t.getCurrentDevice({
144
+ type: c.kMediaDeviceTypeVideoCamera
145
+ })) || null;
146
+ } catch (a) {
147
+ throw console.error("Failed to get camera list:", a), j.value = l.NoSystemPermission, a;
148
+ }
149
+ }, Ve = async (e) => {
150
+ var a;
151
+ await ((a = n.instance) == null ? void 0 : a.setCurrentDevice({
152
+ type: c.kMediaDeviceTypeVideoCamera,
153
+ deviceId: e.deviceId
154
+ }));
155
+ const t = V.value.find((i) => i.deviceId === e.deviceId);
156
+ t && (A.value = t);
157
+ }, Ae = async (e) => {
158
+ var t;
159
+ await ((t = n.instance) == null ? void 0 : t.switchCamera(e)), _.value = e.isFrontCamera;
160
+ }, Re = async (e) => {
161
+ var i;
162
+ const t = (i = s.instance) == null ? void 0 : i.getTRTCCloud(), a = {
163
+ [D.Auto]: O.TRTCVideoMirrorType_Auto,
164
+ [D.Enable]: O.TRTCVideoMirrorType_Enable,
165
+ [D.Disable]: O.TRTCVideoMirrorType_Disable
166
+ };
167
+ t == null || t.setLocalRenderParams({
168
+ mirrorType: a[e.mirror],
169
+ rotation: ne.TRTCVideoRotation0,
170
+ fillMode: ie.TRTCVideoFillMode_Fill
171
+ }), z.value = e.mirror;
172
+ }, Ee = async (e) => {
173
+ var i;
174
+ const a = {
175
+ [m.Quality360P]: k.kVideoQuality_360p,
176
+ [m.Quality540P]: k.kVideoQuality_540p,
177
+ [m.Quality720P]: k.kVideoQuality_720p,
178
+ [m.Quality1080P]: k.kVideoQuality_1080p
179
+ }[e.quality];
180
+ await ((i = s.instance) == null ? void 0 : i.updateVideoQuality({ quality: a })), G.value = e.quality;
181
+ }, Oe = async (e) => {
182
+ var t;
183
+ f.value = !0;
184
+ try {
185
+ await ((t = n.instance) == null ? void 0 : t.startCameraDeviceTest(e)), f.value = !1, Q.value = !0;
186
+ } catch (a) {
187
+ throw f.value = !1, a;
188
+ }
189
+ }, Le = async (e) => {
190
+ var t;
191
+ await ((t = s.instance) == null ? void 0 : t.startScreenSharing({ screenAudio: e == null ? void 0 : e.screenAudio, view: e == null ? void 0 : e.view }));
192
+ }, Pe = async () => {
193
+ var e;
194
+ await ((e = s.instance) == null ? void 0 : e.stopScreenSharing());
195
+ }, Ue = async () => {
196
+ var e;
197
+ f.value = !1, await ((e = n.instance) == null ? void 0 : e.stopCameraDeviceTest()), Q.value = !1;
198
+ };
199
+ function Qe() {
200
+ N.value = u.Off;
201
+ }
202
+ async function _e(e) {
203
+ var i, r, d, p, y, b;
204
+ const { type: t, state: a } = e;
205
+ n.instance && (t === c.kMediaDeviceTypeAudioInput && (g.value = await ((i = n.instance) == null ? void 0 : i.getDevicesList({
206
+ type: t
207
+ })) || [], a === E.kMediaDeviceStateActive && (S.value = ((r = n.instance) == null ? void 0 : r.getCurrentDevice({
208
+ type: c.kMediaDeviceTypeAudioInput
209
+ })) || null)), t === c.kMediaDeviceTypeAudioOutput && (R.value = await ((d = n.instance) == null ? void 0 : d.getDevicesList({
210
+ type: t
211
+ })) || [], a === E.kMediaDeviceStateActive && (C.value = ((p = n.instance) == null ? void 0 : p.getCurrentDevice({
212
+ type: c.kMediaDeviceTypeAudioOutput
213
+ })) || null)), t === c.kMediaDeviceTypeVideoCamera && (V.value = await ((y = n.instance) == null ? void 0 : y.getDevicesList({ type: t })) || [], a === E.kMediaDeviceStateActive && (A.value = ((b = n.instance) == null ? void 0 : b.getCurrentDevice({
214
+ type: c.kMediaDeviceTypeVideoCamera
215
+ })) || null)));
216
+ }
217
+ function Ne(e) {
218
+ const { userVolumeList: t } = e, a = t.find((i) => {
219
+ var r;
220
+ return i.userId === ((r = M.value) == null ? void 0 : r.userId);
221
+ });
222
+ Y.value = (a == null ? void 0 : a.volume) || 0;
223
+ }
224
+ function be(e) {
225
+ var i;
226
+ const { userId: t, hasAudio: a } = e;
227
+ t === ((i = M.value) == null ? void 0 : i.userId) && (w.value = a ? u.On : u.Off);
228
+ }
229
+ function Fe(e) {
230
+ var r;
231
+ const { userId: t, streamType: a, hasVideo: i } = e;
232
+ t === ((r = M.value) == null ? void 0 : r.userId) && (a === q.kCameraStream ? I.value = i ? u.On : u.Off : a === q.kScreenStream && (N.value = i ? u.On : u.Off));
233
+ }
234
+ function He(e) {
235
+ const { userNetworkList: t } = e, a = t.find((i) => {
236
+ var r;
237
+ return i.userId === ((r = M.value) == null ? void 0 : r.userId);
238
+ });
239
+ a && (W.value = a);
240
+ }
241
+ ae.once("ready", () => {
242
+ var t, a, i, r, d, p, y;
243
+ (t = n.instance) == null || t.on(P.onDeviceChanged, _e);
244
+ const e = (a = s.instance) == null ? void 0 : a.getTRTCCloud();
245
+ e == null || e.enableAudioVolumeEvaluation(200), (i = s.instance) == null || i.on(T.onUserVoiceVolumeChanged, Ne), (r = s.instance) == null || r.on(T.onUserScreenCaptureStopped, Qe), (d = s.instance) == null || d.on(T.onUserAudioStateChanged, be), (p = s.instance) == null || p.on(T.onUserVideoStateChanged, Fe), (y = s.instance) == null || y.on(T.onUserNetworkQualityChanged, He);
246
+ });
247
+ function Ge() {
248
+ return {
249
+ // 麦克风数据
250
+ microphoneStatus: w,
251
+ microphoneList: g,
252
+ currentMicrophone: S,
253
+ microphoneLastError: v,
254
+ isMicrophoneTesting: U,
255
+ currentMicVolume: Y,
256
+ captureVolume: x,
257
+ testingMicVolume: Z,
258
+ // 摄像头数据
259
+ cameraStatus: I,
260
+ cameraList: V,
261
+ currentCamera: A,
262
+ cameraLastError: j,
263
+ isCameraTesting: Q,
264
+ isCameraTestLoading: f,
265
+ isFrontCamera: _,
266
+ localMirrorType: z,
267
+ localVideoQuality: G,
268
+ // 扬声器数据
269
+ speakerList: R,
270
+ currentSpeaker: C,
271
+ outputVolume: J,
272
+ currentAudioRoute: K,
273
+ isSpeakerTesting: L,
274
+ // 屏幕分享数据
275
+ screenStatus: N,
276
+ // 本地网络数据
277
+ networkInfo: W,
278
+ // 麦克风操作
279
+ openLocalMicrophone: ce,
280
+ closeLocalMicrophone: ue,
281
+ muteLocalAudio: le,
282
+ unmuteLocalAudio: de,
283
+ getMicrophoneList: ve,
284
+ setCurrentMicrophone: pe,
285
+ startMicrophoneTest: ye,
286
+ stopMicrophoneTest: fe,
287
+ setCaptureVolume: Te,
288
+ // 扬声器操作
289
+ getSpeakerList: ke,
290
+ setCurrentSpeaker: he,
291
+ setAudioRoute: De,
292
+ startSpeakerTest: Me,
293
+ stopSpeakerTest: we,
294
+ setOutputVolume: me,
295
+ // 摄像头操作
296
+ openLocalCamera: ge,
297
+ closeLocalCamera: Se,
298
+ getCameraList: Ie,
299
+ setCurrentCamera: Ve,
300
+ switchCamera: Ae,
301
+ switchMirror: Re,
302
+ updateVideoQuality: Ee,
303
+ startCameraDeviceTest: Oe,
304
+ stopCameraDeviceTest: Ue,
305
+ // 屏幕分享
306
+ startScreenShare: Le,
307
+ stopScreenShare: Pe
308
+ };
309
+ }
310
+ export {
311
+ Ge as default,
312
+ _e as onDeviceChanged,
313
+ Ge as useDeviceState
314
+ };
@@ -0,0 +1 @@
1
+ export { useDeviceState } from './DeviceState';
@@ -0,0 +1,4 @@
1
+ import { useDeviceState as o } from "./DeviceState.js";
2
+ export {
3
+ o as useDeviceState
4
+ };
@@ -1,4 +1,4 @@
1
- import { AudienceInfo } from '../types';
1
+ import { LiveAudienceEvent, AudienceInfo } from '../types';
2
2
 
3
3
  export declare function useLiveAudienceState(): {
4
4
  audienceList: import('vue').ComputedRef<AudienceInfo[]>;
@@ -17,4 +17,6 @@ export declare function useLiveAudienceState(): {
17
17
  userId: string;
18
18
  isDisable: boolean;
19
19
  }) => Promise<void | undefined>;
20
+ subscribeEvent: (event: LiveAudienceEvent, callback: (eventInfo: any) => void) => void;
21
+ unsubscribeEvent: (event: LiveAudienceEvent, callback: (eventInfo: any) => void) => void;
20
22
  };
@@ -1,57 +1,85 @@
1
- import { ref as u, computed as d, watch as f } from "vue";
2
- import h, { TUIRole as m } from "@tencentcloud/tuiroom-engine-js";
3
- import { useRoomEngine as I } from "../hooks/useRoomEngine.js";
4
- import { useLiveState as C } from "./LiveState/index.js";
5
- import { LiveStatus as y } from "../types/live.js";
1
+ import { ref as m, computed as v, watch as I } from "vue";
2
+ import C, { TUIRole as g } from "@tencentcloud/tuiroom-engine-js";
3
+ import { useRoomEngine as b } from "../hooks/useRoomEngine.js";
4
+ import { dataReport as p } from "../report/dataReport.js";
5
+ import { MetricsKey as M } from "../report/MetricsKey.js";
6
+ import { useLiveListState as y } from "./LiveListState/LiveListState.js";
7
+ import { LiveAudienceEvent as U } from "../types/audience.js";
6
8
  import { TUIRoomEvents as a } from "../types/types.js";
7
- const t = I(), { localLiveStatus: l, currentLive: v } = C(), R = 200, o = u(/* @__PURE__ */ new Map()), i = u(0), g = () => {
9
+ const r = /* @__PURE__ */ new Map(), i = b(), { currentLive: d } = y(), R = 200, o = m(/* @__PURE__ */ new Map()), u = m(0), f = () => {
8
10
  o.value.clear();
9
- }, r = d(
11
+ }, l = v(
10
12
  () => Array.from(o.value.values()).filter((e) => {
11
13
  var s;
12
- return e.userId !== ((s = v.value) == null ? void 0 : s.liveOwner.userId);
14
+ return e.userId !== ((s = d.value) == null ? void 0 : s.liveOwner.userId);
13
15
  })
14
- ), M = d(() => i.value > R ? i.value : r.value.length), U = async () => {
15
- var s;
16
- const { userInfoList: e } = await ((s = t.instance) == null ? void 0 : s.getUserList({ nextSequence: 0 })) || {
16
+ ), A = v(() => u.value > R ? u.value : l.value.length), h = async () => {
17
+ var n;
18
+ const e = M.T_METRICS_STATE_API_AUDIENCE_FETCH_LIST_COUNT;
19
+ p.reportCount(e);
20
+ const { userInfoList: s } = await ((n = i.instance) == null ? void 0 : n.getUserList({ nextSequence: 0 })) || {
17
21
  userInfoList: []
18
22
  };
19
- return o.value.clear(), e.filter((n) => {
23
+ return o.value.clear(), s.filter((t) => {
20
24
  var c;
21
- return n.userId !== ((c = v.value) == null ? void 0 : c.liveOwner.userId);
22
- }).reverse().forEach((n) => {
23
- o.value.set(n.userId, {
24
- userId: n.userId,
25
- userName: n.userName,
26
- avatarUrl: n.avatarUrl,
27
- customInfo: n.roomCustomInfo,
28
- userRole: n.userRole,
29
- isMessageDisabled: n.isMessageDisabled
25
+ return t.userId !== ((c = d.value) == null ? void 0 : c.liveOwner.userId);
26
+ }).reverse().forEach((t) => {
27
+ o.value.set(t.userId, {
28
+ userId: t.userId,
29
+ userName: t.userName,
30
+ avatarUrl: t.avatarUrl,
31
+ customInfo: t.roomCustomInfo,
32
+ userRole: t.userRole,
33
+ isMessageDisabled: t.isMessageDisabled
30
34
  });
31
- }), r.value;
35
+ }), l.value;
32
36
  }, L = async ({ userId: e }) => {
33
37
  var s;
34
- return (s = t.instance) == null ? void 0 : s.changeUserRole({
38
+ return (s = i.instance) == null ? void 0 : s.changeUserRole({
35
39
  userId: e,
36
- userRole: m.kAdministrator
40
+ userRole: g.kAdministrator
37
41
  });
38
- }, b = async ({ userId: e }) => {
42
+ }, N = async ({ userId: e }) => {
39
43
  var s;
40
- return (s = t.instance) == null ? void 0 : s.changeUserRole({
44
+ return (s = i.instance) == null ? void 0 : s.changeUserRole({
41
45
  userId: e,
42
- userRole: m.kGeneralUser
46
+ userRole: g.kGeneralUser
43
47
  });
44
- }, E = async ({ userId: e }) => {
48
+ }, O = async ({ userId: e }) => {
45
49
  var s;
46
- return (s = t.instance) == null ? void 0 : s.kickRemoteUserOutOfRoom({ userId: e });
47
- }, O = async ({ userId: e, isDisable: s }) => {
50
+ return (s = i.instance) == null ? void 0 : s.kickRemoteUserOutOfRoom({ userId: e });
51
+ }, D = async ({ userId: e, isDisable: s }) => {
48
52
  var n;
49
- return (n = t.instance) == null ? void 0 : n.disableSendingMessageByAdmin({
53
+ return (n = i.instance) == null ? void 0 : n.disableSendingMessageByAdmin({
50
54
  userId: e,
51
55
  isDisable: s
52
56
  });
53
- }, p = async ({ userInfo: e }) => {
54
- r.value.length >= R || o.value.set(e.userId, {
57
+ }, S = (e, s) => {
58
+ var n;
59
+ r.has(e) || r.set(e, []), (n = r.get(e)) == null || n.push(s);
60
+ }, T = (e, s) => {
61
+ const n = r.get(e);
62
+ n && (n.splice(n.indexOf(s), 1), n.length === 0 && r.delete(e));
63
+ }, E = (e, s) => {
64
+ const n = r.get(e);
65
+ n && n.forEach((t) => {
66
+ try {
67
+ t(s);
68
+ } catch (c) {
69
+ console.error(`Error in event callback for ${e}:`, c);
70
+ }
71
+ });
72
+ }, k = async ({ userInfo: e }) => {
73
+ E(
74
+ U.onAudienceJoined,
75
+ {
76
+ audience: {
77
+ userId: e.userId,
78
+ userName: e.userName,
79
+ avatarUrl: e.avatarUrl
80
+ }
81
+ }
82
+ ), !(l.value.length >= R) && o.value.set(e.userId, {
55
83
  userId: e.userId,
56
84
  userName: e.userName,
57
85
  avatarUrl: e.avatarUrl,
@@ -59,9 +87,18 @@ const t = I(), { localLiveStatus: l, currentLive: v } = C(), R = 200, o = u(/* @
59
87
  userRole: e.userRole,
60
88
  isMessageDisabled: e.isMessageDisabled
61
89
  });
62
- }, D = async ({ userInfo: e }) => {
63
- o.value.delete(e.userId);
64
- }, S = async ({ userInfo: e }) => {
90
+ }, _ = async ({ userInfo: e }) => {
91
+ E(
92
+ U.onAudienceLeft,
93
+ {
94
+ audience: {
95
+ userId: e.userId,
96
+ userName: e.userName,
97
+ avatarUrl: e.avatarUrl
98
+ }
99
+ }
100
+ ), o.value.delete(e.userId);
101
+ }, w = async ({ userInfo: e }) => {
65
102
  const s = o.value.get(e.userId);
66
103
  s && o.value.set(e.userId, {
67
104
  ...s,
@@ -72,7 +109,7 @@ const t = I(), { localLiveStatus: l, currentLive: v } = C(), R = 200, o = u(/* @
72
109
  userRole: e.userRole,
73
110
  isMessageDisabled: e.isMessageDisabled
74
111
  });
75
- }, k = ({ userId: e, isDisable: s }) => {
112
+ }, K = ({ userId: e, isDisable: s }) => {
76
113
  const n = o.value.get(e);
77
114
  if (!n) {
78
115
  console.error(`audienceInfo not found for userId: ${e}`);
@@ -82,42 +119,48 @@ const t = I(), { localLiveStatus: l, currentLive: v } = C(), R = 200, o = u(/* @
82
119
  ...n,
83
120
  isMessageDisabled: s
84
121
  });
85
- }, A = async ({ userCount: e }) => {
86
- i.value = e;
87
- }, N = async () => {
88
- g();
89
- }, w = [
90
- { event: a.onRemoteUserEnterRoom, handler: p },
91
- { event: a.onRemoteUserLeaveRoom, handler: D },
92
- { event: a.onUserInfoChanged, handler: S },
93
- { event: a.onKickedOutOfRoom, handler: N },
94
- { event: a.onSendMessageForUserDisableChanged, handler: k },
95
- { event: a.onRoomUserCountChanged, handler: A }
96
- ], T = () => {
97
- w.forEach(({ event: e, handler: s }) => {
122
+ }, x = async ({ userCount: e }) => {
123
+ u.value = e;
124
+ }, F = async () => {
125
+ f();
126
+ }, $ = [
127
+ { event: a.onRemoteUserEnterRoom, handler: k },
128
+ { event: a.onRemoteUserLeaveRoom, handler: _ },
129
+ { event: a.onUserInfoChanged, handler: w },
130
+ { event: a.onKickedOutOfRoom, handler: F },
131
+ { event: a.onSendMessageForUserDisableChanged, handler: K },
132
+ { event: a.onRoomUserCountChanged, handler: x }
133
+ ], q = () => {
134
+ $.forEach(({ event: e, handler: s }) => {
98
135
  var n;
99
- (n = t.instance) == null || n.on(e, s);
136
+ (n = i.instance) == null || n.on(e, s);
100
137
  });
101
138
  };
102
- h.once("ready", () => {
103
- T();
139
+ C.once("ready", () => {
140
+ q();
104
141
  });
105
- f(l, async () => {
106
- l.value === y.Live ? await U() : g();
142
+ I(() => {
143
+ var e;
144
+ return (e = d.value) == null ? void 0 : e.liveId;
145
+ }, (e) => {
146
+ e ? h() : f();
107
147
  });
108
- function G() {
148
+ function Q() {
109
149
  return {
110
150
  // state
111
- audienceList: r,
112
- audienceCount: M,
151
+ audienceList: l,
152
+ audienceCount: A,
113
153
  // action
114
- fetchAudienceList: U,
154
+ fetchAudienceList: h,
115
155
  setAdministrator: L,
116
- revokeAdministrator: b,
117
- kickUserOutOfRoom: E,
118
- disableSendMessage: O
156
+ revokeAdministrator: N,
157
+ kickUserOutOfRoom: O,
158
+ disableSendMessage: D,
159
+ // event
160
+ subscribeEvent: S,
161
+ unsubscribeEvent: T
119
162
  };
120
163
  }
121
164
  export {
122
- G as useLiveAudienceState
165
+ Q as useLiveAudienceState
123
166
  };
@@ -1,12 +1,11 @@
1
- import { LiveStatus, LiveType, TUISeatMode, LiveInfo, CreateLiveParams, JoinLiveParams, UpdateLiveInfoParams } from '../../types';
1
+ import { LiveType, TUISeatMode, LiveListEvent, LiveInfo, CreateLiveParams, JoinLiveParams, UpdateLiveInfoParams } from '../../types';
2
2
 
3
3
  /**
4
- * 直播间状态管理 Hook
4
+ * Live List State Hook
5
5
  *
6
- *
7
- * 提供直播间相关的响应式数据和操作方法
6
+ * Provides live room related reactive data and operation methods
8
7
  */
9
- export declare function useLiveState(): {
8
+ export declare function useLiveListState(): {
10
9
  liveList: import('vue').Ref<{
11
10
  liveId: string;
12
11
  liveName: string;
@@ -58,7 +57,7 @@ export declare function useLiveState(): {
58
57
  layoutTemplate: number;
59
58
  customInfo: Record<string, any>;
60
59
  }[]>;
61
- currentCursor: import('vue').Ref<string, string>;
60
+ liveListCursor: import('vue').Ref<string, string>;
62
61
  currentLive: import('vue').Ref<{
63
62
  liveId: string;
64
63
  liveName: string;
@@ -110,7 +109,6 @@ export declare function useLiveState(): {
110
109
  layoutTemplate: number;
111
110
  customInfo: Record<string, any>;
112
111
  } | null>;
113
- localLiveStatus: import('vue').Ref<LiveStatus, LiveStatus>;
114
112
  fetchLiveList: ({ category, cursor, count, }: {
115
113
  category?: string;
116
114
  cursor?: string;
@@ -121,5 +119,12 @@ export declare function useLiveState(): {
121
119
  leaveLive: () => Promise<void>;
122
120
  endLive: () => Promise<void>;
123
121
  updateLiveInfo: (params: UpdateLiveInfoParams) => Promise<void>;
122
+ queryMetaData: (options: {
123
+ keys: string[];
124
+ }) => Promise<any> | undefined;
125
+ updateLiveMetaData: (options: {
126
+ metaData: string;
127
+ }) => Promise<void> | undefined;
128
+ subscribeEvent: (event: LiveListEvent, callback: (eventInfo: any) => void) => void;
129
+ unsubscribeEvent: (event: LiveListEvent, callback: (eventInfo: any) => void) => void;
124
130
  };
125
- export default useLiveState;