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

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 (498) 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/{PopoverTrigger-L8abAry7.js → PopoverTrigger-CglNN8IV.js} +3 -3
  4. package/dist/{PopperContent-XdhqL8Y2.js → PopperContent-CQa08BXt.js} +1 -1
  5. package/dist/{Teleport-CSEuZbpM.js → Teleport-D3gvcBbZ.js} +278 -268
  6. package/dist/baseComp/Modal/Modal.js +431 -23
  7. package/dist/chat/index.d.ts +68 -53
  8. package/dist/chat/server.js +15 -15
  9. package/dist/components/AudioSetting/AudioMediaControl.js +39 -41
  10. package/dist/components/AudioSetting/AudioSettingTab.js +10 -10
  11. package/dist/components/AudioSetting/MicrophoneSelect.js +8 -8
  12. package/dist/components/AudioSetting/SpeakerSelect.js +9 -9
  13. package/dist/components/AudioSettingPanel/i18n/en-US/index.d.ts +1 -0
  14. package/dist/components/AudioSettingPanel/i18n/en-US/index.js +2 -1
  15. package/dist/components/AudioSettingPanel/i18n/zh-CN/index.d.ts +1 -0
  16. package/dist/components/AudioSettingPanel/i18n/zh-CN/index.js +2 -1
  17. package/dist/components/AudioSettingPanel/index.js +81 -73
  18. package/dist/components/BarrageInput/BarrageInputH5.js +9 -9
  19. package/dist/components/BarrageInput/EmojiPicker/EmojiPicker.js +4 -4
  20. package/dist/components/BarrageInput/MessageInputState.d.ts +28 -0
  21. package/dist/components/BarrageInput/MessageInputState.js +82 -0
  22. package/dist/components/BarrageInput/TextEditor/CharacterCountExtension.js +1 -1
  23. package/dist/components/BarrageInput/TextEditor/EditorCore.js +5 -4
  24. package/dist/components/BarrageInput/TextEditor/index.js +7 -7
  25. package/dist/components/BarrageInput/type.d.ts +17 -0
  26. package/dist/components/BarrageInput/type.js +4 -0
  27. package/dist/components/BarrageInput/utils.d.ts +30 -0
  28. package/dist/components/BarrageInput/utils.js +41 -0
  29. package/dist/components/BarrageList/BarrageList.js +80 -110
  30. package/dist/components/BarrageList/BarrageList.vue.d.ts +0 -29
  31. package/dist/components/BarrageList/BarrageListH5.js +95 -122
  32. package/dist/components/BarrageList/BarrageListH5.vue.d.ts +0 -29
  33. package/dist/components/BarrageList/BarrageListState.d.ts +58 -0
  34. package/dist/components/BarrageList/BarrageListState.js +106 -0
  35. package/dist/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.js +16 -24
  36. package/dist/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.vue.d.ts +5 -5
  37. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.js +48 -73
  38. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.vue.d.ts +5 -7
  39. package/dist/components/BarrageList/Message/TextMessage/TextMessage.js +70 -76
  40. package/dist/components/BarrageList/Message/TextMessage/TextMessage.vue.d.ts +6 -6
  41. package/dist/components/BarrageList/Message/TextMessage/emoji.d.ts +5 -0
  42. package/dist/components/BarrageList/Message/TextMessage/emoji.js +134 -0
  43. package/dist/components/BarrageList/index.d.ts +0 -36
  44. package/dist/components/CameraButton/index.js +18 -19
  45. package/dist/components/ChatSetting/GroupChatSetting/GroupChatSetting.js +2 -1
  46. package/dist/components/CoGuestPanel/CoGuestPanel.js +60 -60
  47. package/dist/components/CoHostPanel/BattlePanel.js +11 -11
  48. package/dist/components/CoHostPanel/CoHostPanel.js +10 -10
  49. package/dist/components/CoHostPanel/ConfigSettingPanel.js +49 -55
  50. package/dist/components/CoHostPanel/ConnectionPanel.js +132 -123
  51. package/dist/components/CoHostPanel/RecommendHostList.js +39 -36
  52. package/dist/components/CoHostPanel/constants.d.ts +3 -0
  53. package/dist/components/CoHostPanel/constants.js +6 -0
  54. package/dist/components/CoHostPanel/i18n/en-US/index.d.ts +1 -0
  55. package/dist/components/CoHostPanel/i18n/en-US/index.js +2 -1
  56. package/dist/components/CoHostPanel/i18n/zh-CN/index.d.ts +1 -0
  57. package/dist/components/CoHostPanel/i18n/zh-CN/index.js +3 -2
  58. package/dist/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.js +6 -6
  59. package/dist/components/ContactList/ContactInfo/ContactInfo.js +1 -1
  60. package/dist/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.js +1 -1
  61. package/dist/components/ContactList/ContactInfo/FriendInfo/FriendInfo.js +9 -9
  62. package/dist/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.js +1 -1
  63. package/dist/components/ContactList/ContactInfo/GroupInfo/GroupInfo.js +4 -4
  64. package/dist/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.js +8 -8
  65. package/dist/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.js +7 -7
  66. package/dist/components/ContactList/ContactList.js +7 -7
  67. package/dist/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.js +8 -8
  68. package/dist/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.js +5 -5
  69. package/dist/components/ContactList/ContactListItem/FriendItem/FriendItem.js +5 -5
  70. package/dist/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.js +1 -1
  71. package/dist/components/ContactList/ContactListItem/GroupItem/GroupItem.js +1 -1
  72. package/dist/components/ContactList/ContactSearch/ContactSearch.js +6 -6
  73. package/dist/components/ConversationList/ConversationActions/ConversationActions.js +49 -51
  74. package/dist/components/ConversationList/ConversationCreate/ConversationCreate.js +9 -9
  75. package/dist/components/ConversationList/ConversationList.js +4 -4
  76. package/dist/components/ConversationList/ConversationList.vue.d.ts +10 -10
  77. package/dist/components/ConversationList/ConversationPreview/ConversationPreview.vue.d.ts +10 -10
  78. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewTimestamp.js +31 -29
  79. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.js +20 -20
  80. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue.d.ts +2 -2
  81. package/dist/components/ConversationList/ConversationPreview/index.js +1 -1
  82. package/dist/components/ConversationList/index.d.ts +30 -30
  83. package/dist/components/LiveAudienceList/LiveAudienceList.js +44 -45
  84. package/dist/components/LiveAudienceList/LiveAudienceListH5.js +7 -7
  85. package/dist/components/LiveAudienceList/UserActionMenu.js +57 -64
  86. package/dist/components/LiveList/LiveList.js +23 -23
  87. package/dist/components/LiveList/LiveListH5.js +38 -38
  88. package/dist/components/LiveScenePanel/CameraSettingDialog.js +10 -10
  89. package/dist/components/LiveScenePanel/MaterialItem.js +15 -15
  90. package/dist/components/LiveScenePanel/index.js +28 -27
  91. package/dist/components/LiveView/CoreViewDecorate/BattleDecorate.js +58 -58
  92. package/dist/components/LiveView/CoreViewDecorate/BattleUserDecorate.js +6 -6
  93. package/dist/components/LiveView/CoreViewDecorate/CoHostDecorate.js +5 -5
  94. package/dist/components/LiveView/DefaultStreamViewUI.js +44 -41
  95. package/dist/components/LiveView/PlayerControl/AudioControl.js +97 -93
  96. package/dist/components/LiveView/PlayerControl/AudioControl.vue.d.ts +10 -6
  97. package/dist/components/LiveView/PlayerControl/MultiResolution.js +57 -62
  98. package/dist/components/LiveView/PlayerControl/PlayerControl.js +79 -79
  99. package/dist/components/LiveView/PlayerControl/PlayerControlState.d.ts +2 -2
  100. package/dist/components/LiveView/PlayerControl/PlayerControlState.js +164 -209
  101. package/dist/components/LiveView/PlayerControl/utils/domHelpers.d.ts +8 -1
  102. package/dist/components/LiveView/PlayerControl/utils/domHelpers.js +57 -24
  103. package/dist/components/LiveView/i18n/en-US/index.d.ts +2 -2
  104. package/dist/components/LiveView/i18n/en-US/index.js +2 -2
  105. package/dist/components/LiveView/i18n/zh-CN/index.d.ts +2 -2
  106. package/dist/components/LiveView/i18n/zh-CN/index.js +2 -2
  107. package/dist/components/LiveView/index.js +17 -17
  108. package/dist/components/MessageInput/AttachmentPicker/index.js +1 -1
  109. package/dist/components/MessageInput/AudioCallPicker/AudioCallPicker.js +63 -65
  110. package/dist/components/MessageInput/EmojiPicker/EmojiPicker.js +88 -84
  111. package/dist/components/MessageInput/MessageInput.js +1 -1
  112. package/dist/components/MessageInput/MessageInput.vue.d.ts +5 -2
  113. package/dist/components/MessageInput/TextEditor/EditorCore.d.ts +3 -1
  114. package/dist/components/MessageInput/TextEditor/EditorCore.js +51 -63
  115. package/dist/components/MessageInput/TextEditor/TextEditor.vue.d.ts +6 -2
  116. package/dist/components/MessageInput/TextEditor/extensions/characterCountExtension.d.ts +19 -0
  117. package/dist/components/MessageInput/TextEditor/extensions/characterCountExtension.js +74 -0
  118. package/dist/components/MessageInput/TextEditor/extensions/imageExtension.d.ts +2 -0
  119. package/dist/components/MessageInput/TextEditor/extensions/imageExtension.js +62 -0
  120. package/dist/components/MessageInput/TextEditor/index.js +45 -35
  121. package/dist/components/MessageInput/VideoCallPicker/VideoCallPicker.js +67 -69
  122. package/dist/components/MessageInput/i18n/index.d.ts +4 -0
  123. package/dist/components/MessageInput/i18n/zh-CN.d.ts +4 -0
  124. package/dist/components/MessageInput/i18n/zh-CN.js +5 -1
  125. package/dist/components/MessageInput/index.d.ts +36 -6
  126. package/dist/components/MessageInput/index.js +1 -1
  127. package/dist/components/MessageList/Message/AudioMessage/WaveForm.js +24 -34
  128. package/dist/components/MessageList/Message/CustomMessage/CallMessage/CallMessage.js +29 -28
  129. package/dist/components/MessageList/Message/GroupTipMessage/index.js +13 -13
  130. package/dist/components/MessageList/Message/Message.vue.d.ts +1 -1
  131. package/dist/components/MessageList/Message/MessageLayout/MessageActionDropdown/MessageActionDropdown.js +3 -3
  132. package/dist/components/MessageList/Message/MessageLayout/MessageLayout.js +63 -69
  133. package/dist/components/MessageList/Message/VideoMessage/VideoMessage.js +48 -53
  134. package/dist/components/MessageList/Message/VideoMessage/VideoMessage.vue.d.ts +8 -8
  135. package/dist/components/MessageList/MessageList.js +8 -6
  136. package/dist/components/MessageList/MessageList.vue.d.ts +2 -2
  137. package/dist/components/MessageList/i18n/en-US.d.ts +65 -1
  138. package/dist/components/MessageList/i18n/en-US.js +66 -2
  139. package/dist/components/MessageList/i18n/index.d.ts +128 -0
  140. package/dist/components/MessageList/i18n/index.js +6 -6
  141. package/dist/components/MessageList/i18n/zh-CN.d.ts +65 -1
  142. package/dist/components/MessageList/i18n/zh-CN.js +64 -0
  143. package/dist/components/MessageList/index.d.ts +20 -20
  144. package/dist/components/MicButton/index.js +11 -11
  145. package/dist/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.js +172 -174
  146. package/dist/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.js +58 -60
  147. package/dist/components/Search/SearchAdvanced/SearchAdvanced.js +28 -30
  148. package/dist/components/Search/SearchAdvanced/SearchTab/SearchTab.js +22 -24
  149. package/dist/components/Search/SearchAdvanced/Slider/Slider.js +26 -28
  150. package/dist/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.js +133 -135
  151. package/dist/components/Search/SearchBar/SearchBar.js +56 -58
  152. package/dist/components/StreamMixer/LocalMixer/MixerControl.js +12 -12
  153. package/dist/components/StreamMixer/LocalMixer/index.js +66 -63
  154. package/dist/components/StreamView/Layout/CustomLayout.js +8 -8
  155. package/dist/components/StreamView/Layout/FloatLayout.js +124 -127
  156. package/dist/components/StreamView/Layout/GridLayout.js +5 -5
  157. package/dist/components/StreamView/index.js +25 -33
  158. package/dist/components/StreamView/manager/mediaManager.js +54 -60
  159. package/dist/components/UIKitModal/UIKitModal.d.ts +7 -0
  160. package/dist/components/UIKitModal/UIKitModal.js +156 -0
  161. package/dist/components/UIKitModal/index.d.ts +1 -0
  162. package/dist/components/UIKitModal/index.js +4 -0
  163. package/dist/components/{BarrageList/Message/FaceMessage/FaceMessage.vue.d.ts → UIKitModal/index.vue.d.ts} +24 -9
  164. package/dist/components/UIKitModal/type.d.ts +21 -0
  165. package/dist/components/UIKitModal/type.js +1 -0
  166. package/dist/components/UserPicker/UserPicker.js +1 -2
  167. package/dist/components/UserPicker/components/SelectedPanel/SelectedPanel.js +19 -18
  168. package/dist/components/UserPicker/hooks/useSearchFilter.d.ts +2 -2
  169. package/dist/components/UserPicker/hooks/useSearchFilter.js +39 -31
  170. package/dist/components/UserPicker/i18n/en-US.d.ts +1 -0
  171. package/dist/components/UserPicker/i18n/en-US.js +2 -1
  172. package/dist/components/UserPicker/i18n/index.d.ts +2 -0
  173. package/dist/components/UserPicker/i18n/zh-CN.d.ts +1 -0
  174. package/dist/components/UserPicker/i18n/zh-CN.js +2 -1
  175. package/dist/components/UserPicker/index.d.ts +2 -2
  176. package/dist/components/UserPicker/type.d.ts +1 -1
  177. package/dist/components/VideoSetting/CameraSelect.js +8 -8
  178. package/dist/components/VideoSetting/VideoMediaControl.js +10 -10
  179. package/dist/components/VideoSetting/VideoPreview.js +9 -9
  180. package/dist/components/VideoSetting/VideoProfile.js +6 -6
  181. package/dist/components/VideoSetting/VideoSettingTab.js +40 -39
  182. package/dist/components/VideoSettingPanel/CameraSelect.js +8 -8
  183. package/dist/components/VideoSettingPanel/VideoPreview.js +1 -1
  184. package/dist/components/VideoSettingPanel/VideoProfile.js +18 -18
  185. package/dist/hooks/useAudioControl.d.ts +3 -3
  186. package/dist/hooks/useAudioControl.js +32 -30
  187. package/dist/hooks/useRoomEngine.js +6 -6
  188. package/dist/index-B_-9wgM4.js +64 -0
  189. package/dist/{index-Bm-QfV5o.js → index-DMfTuy0v.js} +574 -631
  190. package/dist/{index-D2OVtqc8.js → index-DV6o6s43.js} +946 -915
  191. package/dist/index.d.ts +3 -1
  192. package/dist/index.js +164 -142
  193. package/dist/report/MetricsKey.d.ts +16 -0
  194. package/dist/report/MetricsKey.js +4 -0
  195. package/dist/report/dataReport.d.ts +12 -0
  196. package/dist/report/dataReport.js +45 -0
  197. package/dist/report/index.d.ts +4 -0
  198. package/dist/report/index.js +6 -0
  199. package/dist/rtc/index.d.ts +5 -43
  200. package/dist/rtc/index.js +48 -48
  201. package/dist/rtc/server.js +45 -40
  202. package/dist/states/BarrageState/BarrageState.d.ts +74 -0
  203. package/dist/states/BarrageState/BarrageState.js +80 -0
  204. package/dist/states/BarrageState/index.d.ts +1 -0
  205. package/dist/states/BarrageState/index.js +5 -0
  206. package/dist/states/{BattleState.d.ts → BattleState/BattleState.d.ts} +10 -11
  207. package/dist/states/BattleState/BattleState.js +203 -0
  208. package/dist/states/BattleState/index.d.ts +1 -0
  209. package/dist/states/BattleState/index.js +4 -0
  210. package/dist/states/CoGuestState.d.ts +24 -94
  211. package/dist/states/CoGuestState.js +297 -189
  212. package/dist/states/CoHostState/CoHostState.d.ts +2 -2
  213. package/dist/states/CoHostState/CoHostState.js +135 -131
  214. package/dist/states/{DeviceState.d.ts → DeviceState/DeviceState.d.ts} +25 -13
  215. package/dist/states/DeviceState/DeviceState.js +314 -0
  216. package/dist/states/DeviceState/index.d.ts +1 -0
  217. package/dist/states/DeviceState/index.js +4 -0
  218. package/dist/states/LiveAudienceState.d.ts +3 -1
  219. package/dist/states/LiveAudienceState.js +106 -63
  220. package/dist/states/{LiveState/index.d.ts → LiveListState/LiveListState.d.ts} +13 -8
  221. package/dist/states/LiveListState/LiveListState.js +285 -0
  222. package/dist/states/LiveListState/index.d.ts +1 -0
  223. package/dist/states/LiveListState/index.js +4 -0
  224. package/dist/states/LiveMonitorState/api/http.js +147 -129
  225. package/dist/states/LiveMonitorState/index.js +67 -62
  226. package/dist/states/LiveMonitorState/player/adapters/trtc.js +6 -6
  227. package/dist/states/LiveSeatState/index.d.ts +46 -11
  228. package/dist/states/LiveSeatState/index.js +34 -15
  229. package/dist/states/LiveSeatState/seatEventManager.d.ts +2 -0
  230. package/dist/states/LiveSeatState/seatEventManager.js +63 -42
  231. package/dist/states/LiveSeatState/seatManager.d.ts +34 -5
  232. package/dist/states/LiveSeatState/seatManager.js +131 -29
  233. package/dist/states/LiveSeatState/store.d.ts +5 -5
  234. package/dist/states/LiveSeatState/store.js +12 -10
  235. package/dist/states/LiveSeatState/usePlayStream/RTCStreamManager.js +1 -1
  236. package/dist/states/LiveSeatState/usePlayStream/RTCStreamPlayer.js +1 -1
  237. package/dist/states/LiveSeatState/usePlayStream/index.js +30 -28
  238. package/dist/states/LoginState.d.ts +23 -0
  239. package/dist/states/MessageInputState/MessageInputState.d.ts +41 -7
  240. package/dist/states/MessageInputState/MessageInputState.js +60 -59
  241. package/dist/states/MessageInputState/utils.d.ts +8 -1
  242. package/dist/states/MessageInputState/utils.js +30 -10
  243. package/dist/states/SeatStore.js +82 -83
  244. package/dist/states/UIKitModalState/UIKitModalState.d.ts +17 -0
  245. package/dist/states/UIKitModalState/UIKitModalState.js +63 -0
  246. package/dist/states/UIKitModalState/index.d.ts +1 -0
  247. package/dist/states/UIKitModalState/index.js +4 -0
  248. package/dist/states/{VideoMixerState.d.ts → VideoMixerState/VideoMixerState.d.ts} +1 -1
  249. package/dist/states/VideoMixerState/VideoMixerState.js +269 -0
  250. package/dist/states/VideoMixerState/index.d.ts +1 -0
  251. package/dist/states/VideoMixerState/index.js +4 -0
  252. package/dist/styles/index.css +1 -1
  253. package/dist/types/audience.d.ts +21 -0
  254. package/dist/types/audience.js +4 -1
  255. package/dist/types/battle.d.ts +75 -3
  256. package/dist/types/battle.js +5 -1
  257. package/dist/types/coGuest.d.ts +72 -5
  258. package/dist/types/coGuest.js +4 -2
  259. package/dist/types/device.d.ts +38 -17
  260. package/dist/types/device.js +10 -8
  261. package/dist/types/index.d.ts +2 -2
  262. package/dist/types/index.js +96 -80
  263. package/dist/types/live.d.ts +36 -21
  264. package/dist/types/live.js +6 -4
  265. package/dist/types/seat.d.ts +23 -4
  266. package/dist/types/seat.js +7 -1
  267. package/dist/{useId-CtirfF0W.js → useId-oQ5JZeuH.js} +1 -1
  268. package/dist/utils/call.d.ts +1 -1
  269. package/dist/utils/call.js +78 -79
  270. package/dist/utils/eventCenter.d.ts +88 -0
  271. package/dist/utils/eventCenter.js +161 -0
  272. package/dist/{utils-DaB7eSu5.js → utils-DuzSgmS6.js} +1 -1
  273. package/package.json +4 -3
  274. package/src/chat/server.ts +0 -1
  275. package/src/components/AudioSetting/AudioMediaControl.vue +1 -3
  276. package/src/components/AudioSetting/AudioSettingTab.vue +1 -2
  277. package/src/components/AudioSetting/MicrophoneSelect.vue +1 -2
  278. package/src/components/AudioSetting/SpeakerSelect.vue +1 -2
  279. package/src/components/AudioSettingPanel/i18n/en-US/index.ts +1 -0
  280. package/src/components/AudioSettingPanel/i18n/zh-CN/index.ts +1 -0
  281. package/src/components/AudioSettingPanel/index.vue +4 -2
  282. package/src/components/BarrageInput/BarrageInputH5.vue +1 -1
  283. package/src/components/BarrageInput/EmojiPicker/EmojiPicker.vue +1 -1
  284. package/src/components/BarrageInput/MessageInputState.ts +160 -0
  285. package/src/components/BarrageInput/TextEditor/TextEditor.vue +1 -1
  286. package/src/components/BarrageInput/type.ts +26 -0
  287. package/src/components/BarrageInput/utils.ts +45 -0
  288. package/src/components/BarrageList/BarrageList.vue +61 -117
  289. package/src/components/BarrageList/BarrageListH5.vue +75 -159
  290. package/src/components/BarrageList/BarrageListState.ts +223 -0
  291. package/src/components/BarrageList/Message/MessageLayout/MessageBubble/MessageBubble.vue +8 -55
  292. package/src/components/BarrageList/Message/MessageLayout/MessageLayout.vue +19 -44
  293. package/src/components/BarrageList/Message/TextMessage/TextMessage.vue +69 -96
  294. package/src/components/BarrageList/Message/TextMessage/emoji.ts +132 -0
  295. package/src/components/CameraButton/index.vue +0 -1
  296. package/src/components/ChatSetting/GroupChatSetting/GroupChatSetting.vue +5 -0
  297. package/src/components/CoGuestPanel/CoGuestPanel.vue +16 -91
  298. package/src/components/CoHostPanel/BattlePanel.vue +1 -4
  299. package/src/components/CoHostPanel/ConfigSettingPanel.vue +2 -8
  300. package/src/components/CoHostPanel/ConnectionPanel.vue +37 -33
  301. package/src/components/CoHostPanel/RecommendHostList.vue +12 -13
  302. package/src/components/CoHostPanel/constants.ts +3 -0
  303. package/src/components/CoHostPanel/i18n/en-US/index.ts +1 -0
  304. package/src/components/CoHostPanel/i18n/zh-CN/index.ts +2 -1
  305. package/src/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.vue +1 -1
  306. package/src/components/ContactList/ContactInfo/ContactInfo.vue +1 -1
  307. package/src/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.vue +1 -1
  308. package/src/components/ContactList/ContactInfo/FriendInfo/FriendInfo.vue +1 -1
  309. package/src/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.vue +1 -1
  310. package/src/components/ContactList/ContactInfo/GroupInfo/GroupInfo.vue +1 -1
  311. package/src/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.vue +1 -1
  312. package/src/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.vue +1 -1
  313. package/src/components/ContactList/ContactList.vue +1 -1
  314. package/src/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.vue +1 -1
  315. package/src/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.vue +1 -1
  316. package/src/components/ContactList/ContactListItem/FriendItem/FriendItem.vue +1 -1
  317. package/src/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.vue +1 -1
  318. package/src/components/ContactList/ContactListItem/GroupItem/GroupItem.vue +1 -1
  319. package/src/components/ContactList/ContactSearch/ContactSearch.vue +1 -1
  320. package/src/components/ConversationList/ConversationActions/ConversationActions.vue +2 -8
  321. package/src/components/ConversationList/ConversationCreate/ConversationCreate.vue +2 -2
  322. package/src/components/ConversationList/ConversationCreate/ConversationCreateButton/ConversationCreateButton.vue +1 -1
  323. package/src/components/ConversationList/ConversationCreate/ConversationCreateGroupDetail/ConversationCreateGroupDetail.vue +1 -1
  324. package/src/components/ConversationList/ConversationCreate/ConversationCreateUserSelectList/ConversationCreateUserSelectList.vue +1 -1
  325. package/src/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/ConversationGroupTypeInfo.vue +1 -1
  326. package/src/components/ConversationList/ConversationList.vue +2 -2
  327. package/src/components/ConversationList/ConversationListContent/ConversationListContent.vue +1 -1
  328. package/src/components/ConversationList/ConversationListHeader/ConversationListHeader.vue +1 -1
  329. package/src/components/ConversationList/ConversationPlaceHolder/ConversationPlaceHolder.vue +1 -1
  330. package/src/components/ConversationList/ConversationPreview/ConversationPreview.vue +1 -1
  331. package/src/components/ConversationList/ConversationPreview/ConversationPreviewAbstract.vue +1 -1
  332. package/src/components/ConversationList/ConversationPreview/ConversationPreviewTimestamp.vue +4 -4
  333. package/src/components/ConversationList/ConversationPreview/ConversationPreviewTitle.vue +1 -1
  334. package/src/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue +3 -3
  335. package/src/components/ConversationList/ConversationPreview/ConversationPreviewUnread.vue +1 -1
  336. package/src/components/ConversationList/ConversationSearch/ConversationSearch.vue +1 -1
  337. package/src/components/LiveAudienceList/LiveAudienceList.vue +4 -5
  338. package/src/components/LiveAudienceList/LiveAudienceListH5.vue +2 -2
  339. package/src/components/LiveAudienceList/UserActionMenu.vue +7 -48
  340. package/src/components/LiveList/LiveList.vue +5 -5
  341. package/src/components/LiveList/LiveListH5.vue +6 -6
  342. package/src/components/LiveScenePanel/index.vue +3 -2
  343. package/src/components/LiveView/CoreViewDecorate/BattleDecorate.vue +10 -15
  344. package/src/components/LiveView/CoreViewDecorate/BattleUserDecorate.vue +2 -2
  345. package/src/components/LiveView/DefaultStreamViewUI.vue +5 -3
  346. package/src/components/LiveView/PlayerControl/AudioControl.vue +72 -80
  347. package/src/components/LiveView/PlayerControl/MultiResolution.vue +30 -21
  348. package/src/components/LiveView/PlayerControl/PlayerControl.vue +26 -42
  349. package/src/components/LiveView/PlayerControl/PlayerControlState.ts +253 -455
  350. package/src/components/LiveView/PlayerControl/utils/domHelpers.ts +68 -4
  351. package/src/components/LiveView/i18n/en-US/index.ts +2 -2
  352. package/src/components/LiveView/i18n/zh-CN/index.ts +2 -2
  353. package/src/components/LiveView/index.vue +3 -2
  354. package/src/components/MessageInput/AudioCallPicker/AudioCallPicker.vue +8 -6
  355. package/src/components/MessageInput/EmojiPicker/EmojiPicker.vue +7 -3
  356. package/src/components/MessageInput/MessageInput.module.scss +1 -0
  357. package/src/components/MessageInput/MessageInput.vue +3 -1
  358. package/src/components/MessageInput/TextEditor/EditorCore.ts +17 -28
  359. package/src/components/MessageInput/TextEditor/TextEditor.vue +24 -4
  360. package/src/components/MessageInput/TextEditor/extensions/characterCountExtension.ts +159 -0
  361. package/src/components/MessageInput/TextEditor/extensions/imageExtension.ts +79 -0
  362. package/src/components/MessageInput/VideoCallPicker/VideoCallPicker.vue +8 -6
  363. package/src/components/MessageInput/i18n/zh-CN.ts +4 -0
  364. package/src/components/MessageInput/types.d.ts +1 -0
  365. package/src/components/MessageList/Message/AudioMessage/WaveForm.vue +20 -37
  366. package/src/components/MessageList/Message/CustomMessage/CallMessage/CallMessage.vue +5 -3
  367. package/src/components/MessageList/Message/GroupTipMessage/GroupTipMessage.vue +5 -4
  368. package/src/components/MessageList/Message/Message.vue +1 -1
  369. package/src/components/MessageList/Message/MessageLayout/MessageLayout.vue +8 -8
  370. package/src/components/MessageList/Message/VideoMessage/VideoMessage.vue +46 -43
  371. package/src/components/MessageList/Message/VideoMessage/index.ts +1 -1
  372. package/src/components/MessageList/MessageList.vue +2 -0
  373. package/src/components/MessageList/i18n/en-US.ts +66 -0
  374. package/src/components/MessageList/i18n/index.ts +4 -4
  375. package/src/components/MessageList/i18n/zh-CN.ts +66 -0
  376. package/src/components/MicButton/index.vue +3 -3
  377. package/src/components/Search/Search.vue +1 -1
  378. package/src/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.scss +1 -4
  379. package/src/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.vue +1 -1
  380. package/src/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.scss +1 -4
  381. package/src/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.vue +1 -1
  382. package/src/components/Search/SearchAdvanced/SearchAdvanced.scss +1 -4
  383. package/src/components/Search/SearchAdvanced/SearchAdvanced.vue +1 -1
  384. package/src/components/Search/SearchAdvanced/SearchTab/SearchTab.scss +1 -4
  385. package/src/components/Search/SearchAdvanced/SearchTab/SearchTab.vue +1 -1
  386. package/src/components/Search/SearchAdvanced/Slider/Slider.scss +1 -4
  387. package/src/components/Search/SearchAdvanced/Slider/Slider.vue +1 -1
  388. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.scss +1 -4
  389. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.vue +1 -1
  390. package/src/components/Search/SearchBar/SearchBar.scss +3 -6
  391. package/src/components/Search/SearchBar/SearchBar.vue +1 -1
  392. package/src/components/Search/SearchResults/EmptyResult/EmptyResult.vue +1 -1
  393. package/src/components/Search/SearchResults/Loading/Loading.vue +1 -1
  394. package/src/components/Search/SearchResults/SearchResults.vue +1 -1
  395. package/src/components/Search/SearchResults/SearchResultsItem/Conversation/Conversation.vue +1 -1
  396. package/src/components/Search/SearchResults/SearchResultsItem/Group/Group.vue +1 -1
  397. package/src/components/Search/SearchResults/SearchResultsItem/Message/Message.vue +1 -1
  398. package/src/components/Search/SearchResults/SearchResultsItem/SearchResultsItem.vue +1 -1
  399. package/src/components/Search/SearchResults/SearchResultsItem/User/User.vue +1 -1
  400. package/src/components/StreamMixer/LocalMixer/index.vue +6 -8
  401. package/src/components/StreamView/Layout/CustomLayout.vue +2 -2
  402. package/src/components/StreamView/Layout/FloatLayout.vue +88 -83
  403. package/src/components/StreamView/index.vue +28 -14
  404. package/src/components/StreamView/manager/mediaManager.ts +38 -42
  405. package/src/components/UIKitModal/UIKitModal.ts +71 -0
  406. package/src/components/UIKitModal/index.scss +134 -0
  407. package/src/components/UIKitModal/index.ts +1 -0
  408. package/src/components/UIKitModal/index.vue +160 -0
  409. package/src/components/UIKitModal/type.ts +24 -0
  410. package/src/components/UserPicker/UserPicker.vue +1 -1
  411. package/src/components/UserPicker/components/SelectedPanel/SelectedPanel.vue +1 -0
  412. package/src/components/UserPicker/hooks/useSearchFilter.ts +27 -18
  413. package/src/components/UserPicker/i18n/en-US.ts +1 -0
  414. package/src/components/UserPicker/i18n/zh-CN.ts +1 -0
  415. package/src/components/UserPicker/type.ts +1 -1
  416. package/src/components/VideoSetting/CameraSelect.vue +1 -2
  417. package/src/components/VideoSetting/VideoMediaControl.vue +1 -1
  418. package/src/components/VideoSetting/VideoPreview.vue +1 -2
  419. package/src/components/VideoSetting/VideoProfile.vue +1 -1
  420. package/src/components/VideoSetting/VideoSettingTab.vue +9 -5
  421. package/src/components/VideoSettingPanel/CameraSelect.vue +1 -2
  422. package/src/components/VideoSettingPanel/VideoProfile.vue +7 -7
  423. package/src/hooks/useAudioControl.ts +17 -4
  424. package/src/hooks/useRoomEngine.ts +1 -1
  425. package/src/index.ts +3 -0
  426. package/src/report/MetricsKey.ts +16 -0
  427. package/src/report/dataReport.ts +55 -0
  428. package/src/report/index.ts +7 -0
  429. package/src/rtc/index.ts +7 -9
  430. package/src/rtc/server.ts +4 -0
  431. package/src/types/audience.ts +27 -1
  432. package/src/types/battle.ts +87 -4
  433. package/src/types/coGuest.ts +87 -5
  434. package/src/types/device.ts +41 -16
  435. package/src/types/index.ts +2 -2
  436. package/src/types/live.ts +41 -22
  437. package/src/types/seat.ts +28 -4
  438. package/src/utils/call.ts +26 -27
  439. package/src/utils/eventCenter.ts +249 -0
  440. package/dist/DialogPortal-CvJcEAsn.js +0 -417
  441. package/dist/components/BarrageList/Message/FaceMessage/FaceMessage.js +0 -23
  442. package/dist/components/BarrageList/Message/FaceMessage/index.d.ts +0 -3
  443. package/dist/components/BarrageList/Message/FaceMessage/index.js +0 -4
  444. package/dist/components/BarrageList/Message/GroupTipMessage/GroupTipMessage.js +0 -4
  445. package/dist/components/BarrageList/Message/GroupTipMessage/GroupTipMessage.vue.d.ts +0 -16
  446. package/dist/components/BarrageList/Message/GroupTipMessage/index.d.ts +0 -3
  447. package/dist/components/BarrageList/Message/GroupTipMessage/index.js +0 -25
  448. package/dist/components/BarrageList/Message/ImageMessage/ImageMessage.js +0 -71
  449. package/dist/components/BarrageList/Message/ImageMessage/ImageMessage.vue.d.ts +0 -34
  450. package/dist/components/BarrageList/Message/ImageMessage/index.d.ts +0 -3
  451. package/dist/components/BarrageList/Message/ImageMessage/index.js +0 -4
  452. package/dist/components/BarrageList/Message/MergerMessage/MergerMessage.js +0 -9
  453. package/dist/components/BarrageList/Message/MergerMessage/MergerMessage.vue.d.ts +0 -2
  454. package/dist/components/BarrageList/Message/MergerMessage/index.d.ts +0 -3
  455. package/dist/components/BarrageList/Message/MergerMessage/index.js +0 -4
  456. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.js +0 -40
  457. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.vue.d.ts +0 -54
  458. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.js +0 -26
  459. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.vue.d.ts +0 -15
  460. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/index.d.ts +0 -3
  461. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/index.js +0 -4
  462. package/dist/components/BarrageList/Message/RecalledMessage/RecalledMessage.js +0 -41
  463. package/dist/components/BarrageList/Message/RecalledMessage/RecalledMessage.vue.d.ts +0 -35
  464. package/dist/components/BarrageList/Message/RecalledMessage/index.d.ts +0 -3
  465. package/dist/components/BarrageList/Message/RecalledMessage/index.js +0 -4
  466. package/dist/components/BarrageList/MessageForward/ForwardListItem.js +0 -45
  467. package/dist/components/BarrageList/MessageForward/ForwardListItem.vue.d.ts +0 -17
  468. package/dist/components/BarrageList/MessageForward/MessageForward.js +0 -203
  469. package/dist/components/BarrageList/MessageForward/MessageForward.vue.d.ts +0 -2
  470. package/dist/components/BarrageList/MessageForward/index.d.ts +0 -3
  471. package/dist/components/BarrageList/MessageForward/index.js +0 -4
  472. package/dist/components/StreamView/Layout/MixLayout.js +0 -89
  473. package/dist/components/StreamView/Layout/MixLayout.vue.d.ts +0 -31
  474. package/dist/states/BarrageListState/BarrageListState.d.ts +0 -26
  475. package/dist/states/BarrageListState/BarrageListState.js +0 -122
  476. package/dist/states/BarrageListState/index.d.ts +0 -1
  477. package/dist/states/BarrageListState/index.js +0 -4
  478. package/dist/states/BattleState.js +0 -117
  479. package/dist/states/DeviceState.js +0 -296
  480. package/dist/states/LiveState/index.js +0 -254
  481. package/dist/states/VideoMixerState.js +0 -260
  482. package/src/components/BarrageList/Message/FaceMessage/FaceMessage.vue +0 -43
  483. package/src/components/BarrageList/Message/FaceMessage/index.ts +0 -3
  484. package/src/components/BarrageList/Message/GroupTipMessage/GroupTipMessage.vue +0 -55
  485. package/src/components/BarrageList/Message/GroupTipMessage/index.ts +0 -3
  486. package/src/components/BarrageList/Message/ImageMessage/ImageMessage.vue +0 -181
  487. package/src/components/BarrageList/Message/ImageMessage/index.ts +0 -3
  488. package/src/components/BarrageList/Message/MergerMessage/MergerMessage.vue +0 -6
  489. package/src/components/BarrageList/Message/MergerMessage/index.ts +0 -3
  490. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.vue +0 -70
  491. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.vue +0 -40
  492. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/index.ts +0 -3
  493. package/src/components/BarrageList/Message/RecalledMessage/RecalledMessage.vue +0 -82
  494. package/src/components/BarrageList/Message/RecalledMessage/index.ts +0 -3
  495. package/src/components/BarrageList/MessageForward/ForwardListItem.vue +0 -67
  496. package/src/components/BarrageList/MessageForward/MessageForward.vue +0 -388
  497. package/src/components/BarrageList/MessageForward/index.ts +0 -3
  498. package/src/components/StreamView/Layout/MixLayout.vue +0 -144
@@ -1,123 +1,103 @@
1
- import { ref as m, computed as _, watch as ae } from "vue";
2
- import { TUIVideoQuality as E, TRTCCloud as V } from "@tencentcloud/tuiroom-engine-js";
3
- import { useRoomEngine as le } from "../../../hooks/useRoomEngine.js";
4
- import { useLiveState as oe } from "../../../states/LiveState/index.js";
5
- import { useLiveSeatState as se } from "../../../states/LiveSeatState/index.js";
6
- import { getDeviceType as re, getCurrentOrientation as R, shouldRotateToLandscapeForFullscreen as ie, hadLandscapeRotationToUndo as ce } from "./utils/deviceDetection.js";
7
- import { OrientationManager as F, StyleManager as I, FullscreenMode as k, FullscreenManager as D } from "./utils/fullscreenManager.js";
8
- import { EventListenerManager as ue, DOMElementGetter as i } from "./utils/domHelpers.js";
9
- import { LiveStatus as de } from "../../../types/live.js";
10
- var pe = /* @__PURE__ */ ((s) => (s.CONTAIN = "contain", s.COVER = "cover", s.FILL = "fill", s))(pe || {}), ve = ((s) => (s[s.R360P = E.kVideoQuality_360p] = "R360P", s[s.R540P = E.kVideoQuality_540p] = "R540P", s[s.R720P = E.kVideoQuality_720p] = "R720P", s[s.R1080P = E.kVideoQuality_1080p] = "R1080P", s))(ve || {});
11
- const r = m(!0), N = m(
1
+ import { ref as o, computed as N, watch as B } from "vue";
2
+ import { TUIVideoQuality as L } from "@tencentcloud/tuiroom-engine-js";
3
+ import { useRoomEngine as K } from "../../../hooks/useRoomEngine.js";
4
+ import { useLiveSeatState as W } from "../../../states/LiveSeatState/index.js";
5
+ import { hadLandscapeRotationToUndo as Z, getDeviceType as ee, shouldRotateToLandscapeForFullscreen as te } from "./utils/deviceDetection.js";
6
+ import { EventListenerManager as ne, DOMElementGetter as d } from "./utils/domHelpers.js";
7
+ import { OrientationManager as P, StyleManager as S, FullscreenMode as M, FullscreenManager as b } from "./utils/fullscreenManager.js";
8
+ import { useLiveListState as ae } from "../../../states/LiveListState/LiveListState.js";
9
+ var re = /* @__PURE__ */ ((a) => (a.CONTAIN = "contain", a.COVER = "cover", a.FILL = "fill", a))(re || {}), se = ((a) => (a[a.R360P = L.kVideoQuality_360p] = "R360P", a[a.R540P = L.kVideoQuality_540p] = "R540P", a[a.R720P = L.kVideoQuality_720p] = "R720P", a[a.R1080P = L.kVideoQuality_1080p] = "R1080P", a))(se || {});
10
+ const l = {
11
+ // Default volume level when component initializes (100% volume)
12
+ DEFAULT_VOLUME: 100,
13
+ // Minimum allowed volume level (silent)
14
+ MIN_VOLUME: 0,
15
+ // Maximum allowed volume level (full volume)
16
+ MAX_VOLUME: 100,
17
+ // Volume level when muted (silent)
18
+ MUTE_VOLUME: 0
19
+ }, ie = {
20
+ // Delay in milliseconds before resuming playback after leaving picture-in-picture
21
+ // Allows browser to handle state transitions naturally
22
+ PIP_RESUME_DELAY: 300
23
+ }, x = {
24
+ // Index of the first element in an array
25
+ FIRST_INDEX: 0
26
+ }, v = o(!0), V = o(
12
27
  "contain"
13
28
  /* CONTAIN */
14
- ), d = m(!1), L = m(!1), P = m(!1), g = m(1), z = m([]), v = m(), me = "[LiveCoreView]ResolutionInitialized", h = le();
15
- function Ve() {
16
- const { localLiveStatus: s } = oe(), { canvas: f } = se(), o = new ue(), x = `player-control-${Date.now()}`, p = _(
29
+ ), i = o(!1), E = o(!1), w = o(!1), m = o(l.DEFAULT_VOLUME), F = o(!1);
30
+ let I = l.DEFAULT_VOLUME;
31
+ const h = o([]), p = o(), u = K();
32
+ function pe() {
33
+ const { currentLive: a } = ae(), { canvas: f } = W(), c = new ne(), O = `player-control-${Date.now()}`, g = N(
17
34
  () => f.value ? f.value.width > f.value.height : !1
18
- ), S = _(
35
+ ), C = N(
19
36
  () => f.value ? f.value.width < f.value.height : !1
20
- ), c = re(), u = async (e, n, a) => {
37
+ ), y = ee(), r = async (e, t, n) => {
21
38
  try {
22
39
  return await e();
23
- } catch (t) {
24
- return console.error(`${n} operation failed:`, t), a;
40
+ } catch (s) {
41
+ return console.error(`${t} operation failed:`, s), n;
25
42
  }
26
- }, b = () => {
27
- const e = i.getVideoElement();
28
- if (e) {
29
- const n = e.volume;
30
- Math.abs(g.value - n) > 0.01 && (console.log(`Syncing volume state: ${g.value} -> ${n}`), g.value = n);
31
- }
32
- }, y = () => {
33
- const e = i.getVideoElement();
34
- if (e) {
35
- const n = !e.paused && !e.ended;
36
- r.value !== n && (console.log(`Syncing playing state: ${r.value} -> ${n}`), r.value = n);
37
- }
38
- }, M = async () => u(async () => {
39
- const e = i.getVideoElement();
40
- if (!e)
41
- throw new Error("Video element not found");
42
- return i.hasTcPlayerElement() ? await e.play() : V.subCloudMap.forEach((a) => {
43
- const t = a == null ? void 0 : a._trtc;
44
- t == null || t.callExperimentalAPI("resumeRemotePlayer", { userId: "*" });
45
- }), r.value = !0, console.log("Video playback resumed"), !0;
46
- }, "Resume playback", !1), Q = async () => u(async () => {
47
- const e = i.getVideoElement();
48
- if (!e)
49
- throw new Error("Video element not found");
50
- return i.hasTcPlayerElement() ? await e.pause() : V.subCloudMap.forEach((a) => {
51
- const t = a == null ? void 0 : a._trtc;
52
- t == null || t.callExperimentalAPI("pauseRemotePlayer", { userId: "*" });
53
- }), r.value = !1, console.log("Video playback paused"), !0;
54
- }, "Pause playback", !1), U = (e) => {
55
- if (!d.value || !p.value)
43
+ }, R = async () => r(async () => {
44
+ var e;
45
+ return await ((e = u.instance) == null ? void 0 : e.callExperimentalAPI(JSON.stringify({
46
+ api: "resume",
47
+ params: {}
48
+ }))), v.value = !0, !0;
49
+ }, "Resume playback", !1), D = async () => r(async () => {
50
+ var e;
51
+ return await ((e = u.instance) == null ? void 0 : e.callExperimentalAPI(JSON.stringify({
52
+ api: "pause",
53
+ params: {}
54
+ }))), v.value = !1, !0;
55
+ }, "Pause playback", !1), k = (e) => {
56
+ if (!i.value || !g.value)
56
57
  return;
57
- const n = i.getAllElements();
58
- if (!n.view) {
58
+ const t = d.getAllElements();
59
+ if (!t.view) {
59
60
  console.warn("live-core-view element not found for orientation change handling");
60
61
  return;
61
62
  }
62
- console.log("Handling orientation change:", {
63
- newOrientation: e,
64
- deviceType: c,
65
- isLandscapeStream: p.value,
66
- isFullscreen: d.value
67
- }), I.smartApplyLandscapeStyles(n.view, e);
68
- }, G = async () => u(async () => {
69
- const e = i.getAllElements(), n = i.validateElements(e);
70
- if (!n.isValid)
71
- throw new Error(`Missing required DOM elements: ${n.missingElements.join(", ")}`);
72
- const a = R(), t = ie(c, p.value);
73
- console.log("Request fullscreen:", {
74
- deviceType: c,
75
- currentOrientation: a,
76
- streamType: p.value ? "landscape stream" : S.value ? "portrait stream" : "unknown",
77
- shouldRotate: t,
78
- reason: t ? "Mobile device in portrait with landscape stream" : a === "landscape" ? "Already in landscape orientation" : p.value ? "Desktop device or other reason" : "Not a landscape stream"
79
- });
80
- const l = await D.requestFullscreen(
63
+ S.smartApplyLandscapeStyles(t.view, e);
64
+ }, q = async () => r(async () => {
65
+ const e = d.getAllElements(), t = d.validateElements(e);
66
+ if (!t.isValid)
67
+ throw new Error(`Missing required DOM elements: ${t.missingElements.join(", ")}`);
68
+ const n = te(y, g.value), s = await b.requestFullscreen(
81
69
  e.container,
82
70
  e.view,
83
- c,
84
- S.value,
85
- t
71
+ y,
72
+ C.value,
73
+ n
86
74
  );
87
- return l.success ? (d.value = !0, console.log(`Fullscreen request successful (${l.mode})`)) : console.error("Fullscreen request failed:", l.error), L.value = l.shouldRotateToLandscape, l;
88
- }, "Request fullscreen", { success: !1, mode: k.CSS_SIMULATED, shouldRotateToLandscape: !1 }), T = async () => u(async () => {
89
- const e = i.getAllElements();
75
+ return s.success ? i.value = !0 : console.error("Fullscreen request failed:", s.error), E.value = s.shouldRotateToLandscape, s;
76
+ }, "Request fullscreen", { success: !1, mode: M.CSS_SIMULATED, shouldRotateToLandscape: !1 }), Q = async () => r(async () => {
77
+ const e = d.getAllElements();
90
78
  if (!e.view)
91
79
  throw new Error("live-core-view element not found");
92
- const n = R(), a = ce(c, p.value);
93
- console.log("Exit fullscreen:", {
94
- deviceType: c,
95
- currentOrientation: n,
96
- streamType: p.value ? "landscape stream" : S.value ? "portrait stream" : "unknown",
97
- hadLandscapeRotation: a,
98
- reason: a ? "Mobile device with landscape stream in landscape mode" : n === "portrait" ? "Already in portrait orientation" : p.value ? "Desktop device or other reason" : "Not a landscape stream"
99
- });
100
- const t = await D.exitFullscreen(
80
+ const t = Z(y, g.value), n = await b.exitFullscreen(
101
81
  e.view,
102
- c,
103
- a
82
+ y,
83
+ t
104
84
  );
105
- return t.mode === k.CSS_SIMULATED && (d.value = !1), t.success ? console.log(`Fullscreen exit successful (${t.mode})`) : console.error("Fullscreen exit failed:", t.error), L.value = !1, t;
106
- }, "Exit fullscreen", { success: !1, mode: k.CSS_SIMULATED, shouldRotateToLandscape: !1 }), H = async () => u(async () => {
107
- const e = i.getVideoElement();
85
+ return n.mode === M.CSS_SIMULATED && (i.value = !1), n.success || console.error("Fullscreen exit failed:", n.error), E.value = !1, n;
86
+ }, "Exit fullscreen", { success: !1, mode: M.CSS_SIMULATED, shouldRotateToLandscape: !1 }), X = async () => r(async () => {
87
+ const e = d.getVideoElement();
108
88
  if (!e)
109
89
  throw new Error("Video element not found");
110
90
  if (!e.requestPictureInPicture)
111
91
  throw new Error("Picture-in-picture not supported in current environment");
112
- return C(), await e.requestPictureInPicture(), console.log("Picture-in-picture request successful"), !0;
113
- }, "Request picture-in-picture", !1), A = async () => u(async () => {
92
+ return U(), await e.requestPictureInPicture(), !0;
93
+ }, "Request picture-in-picture", !1), J = async () => r(async () => {
114
94
  if (!document.exitPictureInPicture)
115
95
  throw new Error("Exit picture-in-picture not supported in current environment");
116
- return await document.exitPictureInPicture(), console.log("Picture-in-picture exit successful"), !0;
117
- }, "Exit picture-in-picture", !1), $ = async (e) => u(async () => {
118
- if (!h.instance)
96
+ return await document.exitPictureInPicture(), !0;
97
+ }, "Exit picture-in-picture", !1), T = async (e) => r(async () => {
98
+ if (!u.instance)
119
99
  throw new Error("Room engine instance not available");
120
- return await h.instance.callExperimentalAPI(
100
+ return console.debug("Switching to resolution:", e), await u.instance.callExperimentalAPI(
121
101
  JSON.stringify({
122
102
  api: "switchPlaybackQuality",
123
103
  params: {
@@ -125,143 +105,118 @@ function Ve() {
125
105
  autoSwitch: !1
126
106
  }
127
107
  })
128
- ), r.value || (r.value = !0), v.value = e, console.log(`Resolution switched to: ${e}`), !0;
129
- }, "Switch resolution", !1), O = async (e) => u(async () => {
130
- if (!h.instance)
108
+ ), v.value || (v.value = !0), p.value = e, !0;
109
+ }, "Switch resolution", !1), $ = async (e) => r(async () => {
110
+ if (!u.instance)
131
111
  throw new Error("Room engine instance not available");
132
- const n = await h.instance.callExperimentalAPI(
112
+ return await u.instance.callExperimentalAPI(
133
113
  JSON.stringify({
134
114
  api: "queryPlaybackQualityList",
135
115
  params: {
136
116
  roomId: e
137
117
  }
138
118
  })
139
- );
140
- return console.log(`Retrieved resolution list for room ${e}:`, n), n || [];
141
- }, "Get resolution list", []), J = async (e, n = !0) => {
119
+ ) || [];
120
+ }, "Get resolution list", []), z = async (e, t = !0) => {
142
121
  try {
143
- const a = `${me}_${e}`, t = localStorage.getItem(a) === "true", l = await O(e);
144
- if (z.value = l, l.length === 0) {
145
- console.warn("No resolutions available for room:", e);
122
+ const n = await $(e);
123
+ if (h.value = n, n.length === x.FIRST_INDEX) {
124
+ console.warn("[Resolution] No resolutions available for room:", e), p.value = void 0;
146
125
  return;
147
126
  }
148
- (!v.value || !l.includes(v.value)) && (v.value = l[0]);
149
- const w = n && !t && v.value !== void 0;
150
- w && (await $(v.value), localStorage.setItem(a, "true")), console.log(`Resolution initialized for room ${e}:`, {
151
- availableResolutions: l,
152
- currentResolution: v.value,
153
- applied: w,
154
- hasInitialized: t
155
- });
156
- } catch (a) {
157
- console.error("Failed to initialize resolution:", a);
127
+ const s = n[x.FIRST_INDEX];
128
+ p.value = s, t && await T(s);
129
+ } catch (n) {
130
+ console.error("[Resolution] Failed to initialize resolution:", n);
158
131
  }
159
- }, j = async (e) => u(async () => {
160
- var a;
161
- if (e < 0 || e > 1)
162
- throw new Error("Volume value must be between 0-1");
163
- const n = V.subCloudMap;
164
- return e === 0 ? n.forEach((t) => {
165
- const l = t == null ? void 0 : t._trtc;
166
- l == null || l.muteRemoteAudio("*", !0);
167
- }) : n.forEach((t) => {
168
- const l = t == null ? void 0 : t._trtc;
169
- l == null || l.muteRemoteAudio("*", !1);
170
- }), (a = h.instance) == null || a.setAudioPlayoutVolume({ volume: e * 100 }), g.value = e, console.log(`Video volume set to: ${e}`), !0;
171
- }, "Set volume", !1), K = async (e) => u(async () => (N.value = e, console.log(`Fill mode changed to: ${e}`), !0), "Change fill mode", !1), q = () => {
132
+ }, A = async (e) => r(async () => {
133
+ var t;
134
+ if (e < l.MIN_VOLUME || e > l.MAX_VOLUME)
135
+ throw new Error(`Volume value must be between ${l.MIN_VOLUME}-${l.MAX_VOLUME}`);
136
+ return await ((t = u.instance) == null ? void 0 : t.setAudioPlayoutVolume({ volume: e })), m.value = e, I = e, F.value = e == l.MUTE_VOLUME, !0;
137
+ }, "Set volume", !1), G = async (e) => r(async () => {
138
+ var n;
139
+ let t;
140
+ return e ? (I = m.value, t = l.MUTE_VOLUME) : t = I || l.DEFAULT_VOLUME, await ((n = u.instance) == null ? void 0 : n.setAudioPlayoutVolume({ volume: t })), m.value = t, F.value = e, !0;
141
+ }, "Set mute", !1), Y = async (e) => r(async () => (V.value = e, !0), "Change fill mode", !1), _ = () => {
172
142
  try {
173
- const e = i.getAllElements();
143
+ const e = d.getAllElements();
174
144
  if (!e.view) {
175
- console.warn("live-core-view element not found for fullscreen exit cleanup");
145
+ console.warn("View element not found for fullscreen exit cleanup");
176
146
  return;
177
147
  }
178
- console.log("Executing fullscreen exit style cleanup:", {
179
- deviceType: c,
180
- hasLandscapeStream: p.value,
181
- currentOrientation: R()
182
- }), I.removeFullscreenStyles(e.view), I.removeLandscapeStyles(e.view), c !== "desktop" && F.unlockOrientation().catch((n) => {
183
- console.warn("Failed to unlock orientation during cleanup:", n);
184
- }), L.value = !1, console.log("Fullscreen exit style cleanup completed");
148
+ S.removeFullscreenStyles(e.view), S.removeLandscapeStyles(e.view), y !== "desktop" && P.unlockOrientation().catch(() => {
149
+ }), E.value = !1;
185
150
  } catch (e) {
186
- console.error("Fullscreen exit style cleanup failed:", e);
151
+ console.error("Fullscreen exit cleanup failed:", e);
187
152
  }
188
- }, X = () => {
153
+ }, j = () => {
189
154
  const e = () => {
190
- const a = !!document.fullscreenElement, t = d.value;
191
- console.log("Fullscreen state change:", {
192
- fullscreenElement: document.fullscreenElement,
193
- isCurrentlyFullscreen: a,
194
- previousValue: t,
195
- deviceType: c,
196
- changeType: a ? "entered" : "exited"
197
- }), d.value = a, t && !a && (console.log("Detected passive fullscreen exit, executing style cleanup"), q());
155
+ const n = !!document.fullscreenElement, s = i.value;
156
+ i.value = n, s && !n && _();
198
157
  };
199
- o.addListener("fullscreenchange", document, "fullscreenchange", e), o.addListener("webkitfullscreenchange", document, "webkitfullscreenchange", e), o.addListener("mozfullscreenchange", document, "mozfullscreenchange", e), o.addListener("MSFullscreenChange", document, "MSFullscreenChange", e);
200
- const n = () => {
201
- document.visibilityState === "visible" && d.value && (document.fullscreenElement || (console.log("Detected fullscreen state inconsistency via visibilitychange, executing cleanup"), d.value = !1, q()));
158
+ c.addListener("fullscreenchange", document, "fullscreenchange", e), c.addListener("webkitfullscreenchange", document, "webkitfullscreenchange", e), c.addListener("mozfullscreenchange", document, "mozfullscreenchange", e), c.addListener("MSFullscreenChange", document, "MSFullscreenChange", e);
159
+ const t = () => {
160
+ document.visibilityState === "visible" && i.value && (document.fullscreenElement || (i.value = !1, _()));
202
161
  };
203
- o.addListener("visibilitychange", document, "visibilitychange", n);
204
- }, C = () => {
205
- const e = i.getVideoElement();
206
- if (!e) return;
207
- const n = () => {
208
- console.log("Entered picture-in-picture mode"), P.value = !0;
209
- }, a = () => {
210
- console.log("Left picture-in-picture mode"), P.value = !1, setTimeout(M, 300);
211
- }, t = () => {
212
- console.log("Video play event detected"), r.value = !0;
213
- }, l = () => {
214
- console.log("Video pause event detected"), r.value = !1;
215
- }, w = () => {
216
- console.log("Video ended event detected"), r.value = !1;
217
- }, B = () => {
218
- console.log("Video load start event detected"), r.value = !e.paused;
219
- }, W = () => {
220
- console.log("Video can play event detected"), r.value = !e.paused;
221
- }, Y = () => {
222
- console.log("Video seeking event detected"), y();
223
- }, ee = () => {
224
- console.log("Video seeked event detected"), y();
225
- }, te = () => {
226
- Math.random() < 0.1 && y();
227
- }, ne = () => {
228
- console.log("Video volume change event detected"), y(), b();
162
+ c.addListener("visibilitychange", document, "visibilitychange", t);
163
+ }, U = () => {
164
+ const e = d.getVideoElement();
165
+ if (!e) {
166
+ console.warn("Video element not found for setting up event listeners");
167
+ return;
168
+ }
169
+ const t = () => {
170
+ w.value = !0;
171
+ }, n = () => {
172
+ w.value = !1, setTimeout(R, ie.PIP_RESUME_DELAY);
229
173
  };
230
- o.addListener("enterpictureinpicture", e, "enterpictureinpicture", n), o.addListener("leavepictureinpicture", e, "leavepictureinpicture", a), o.addListener("play", e, "play", t), o.addListener("pause", e, "pause", l), o.addListener("ended", e, "ended", w), o.addListener("loadstart", e, "loadstart", B), o.addListener("canplay", e, "canplay", W), o.addListener("seeking", e, "seeking", Y), o.addListener("seeked", e, "seeked", ee), o.addListener("timeupdate", e, "timeupdate", te), o.addListener("volumechange", e, "volumechange", ne);
231
- }, Z = () => {
232
- console.log("Cleaning up player control state..."), F.removeOrientationListener(x), o.removeAllListeners(), console.log(`Cleaned up ${o.getListenerCount()} event listeners`);
174
+ c.addListener("enterpictureinpicture", e, "enterpictureinpicture", t), c.addListener("leavepictureinpicture", e, "leavepictureinpicture", n);
175
+ }, H = () => {
176
+ P.removeOrientationListener(O), c.removeAllListeners();
233
177
  };
234
- return X(), C(), F.addOrientationListener(x, U), y(), b(), ae(s, (e) => {
235
- e === de.Ended && (T(), A(), r.value = !0, d.value = !1, P.value = !1, g.value = 1);
236
- }), {
237
- // State
238
- isPlaying: r,
239
- currentFillMode: N,
240
- isFullscreen: d,
241
- isLandscapeStyleMode: L,
242
- isPictureInPicture: P,
243
- currentVolume: g,
244
- // Resolution state
245
- resolutionList: z,
246
- currentResolution: v,
247
- // Methods
248
- resume: M,
249
- pause: Q,
250
- requestFullscreen: G,
251
- exitFullscreen: T,
252
- requestPictureInPicture: H,
253
- exitPictureInPicture: A,
254
- switchResolution: $,
255
- getResolutionList: O,
256
- initializeResolution: J,
257
- setVolume: j,
258
- changeFillMode: K,
259
- // Cleanup
260
- cleanup: Z
178
+ return j(), U(), P.addOrientationListener(O, k), B(
179
+ () => {
180
+ var e;
181
+ return (e = a.value) == null ? void 0 : e.liveId;
182
+ },
183
+ async (e) => {
184
+ e && (v.value = !0, w.value = !1, i.value = !1, h.value = [], p.value = void 0, await A(m.value), await z(e, !1), console.log("[PlayerControl] State after entering room:", JSON.stringify({
185
+ isPlaying: v.value,
186
+ currentFillMode: V.value,
187
+ isFullscreen: i.value,
188
+ isLandscapeStyleMode: E.value,
189
+ isPictureInPicture: w.value,
190
+ currentVolume: m.value,
191
+ resolutionList: h.value,
192
+ currentResolution: p.value
193
+ })));
194
+ }
195
+ ), {
196
+ isPlaying: v,
197
+ currentFillMode: V,
198
+ isFullscreen: i,
199
+ isLandscapeStyleMode: E,
200
+ isPictureInPicture: w,
201
+ currentVolume: m,
202
+ isMuted: F,
203
+ resolutionList: h,
204
+ currentResolution: p,
205
+ resume: R,
206
+ pause: D,
207
+ requestFullscreen: q,
208
+ exitFullscreen: Q,
209
+ requestPictureInPicture: X,
210
+ exitPictureInPicture: J,
211
+ switchResolution: T,
212
+ setVolume: A,
213
+ setMute: G,
214
+ changeFillMode: Y,
215
+ cleanup: H
261
216
  };
262
217
  }
263
218
  export {
264
- pe as FillMode,
265
- ve as Resolution,
266
- Ve as usePlayerControlState
219
+ re as FillMode,
220
+ se as Resolution,
221
+ pe as usePlayerControlState
267
222
  };
@@ -40,7 +40,8 @@ export declare class DOMElementGetter {
40
40
  */
41
41
  static getTcPlayerElement(): HTMLElement | null;
42
42
  /**
43
- * Validate if elements exist
43
+ * Validate if required elements exist for fullscreen
44
+ * Note: video element is optional because canvas rendering (TRTC SDK) doesn't use video
44
45
  */
45
46
  static validateElements(elements: {
46
47
  container?: HTMLElement | null;
@@ -73,3 +74,9 @@ export declare class EventListenerManager {
73
74
  */
74
75
  getListenerCount(): number;
75
76
  }
77
+ /**
78
+ * Wait for video element to be mounted in DOM
79
+ * @param timeout Maximum wait time in milliseconds
80
+ * @returns Promise that resolves with video element or null if timeout
81
+ */
82
+ export declare const waitForVideoMounted: (timeout?: number) => Promise<HTMLVideoElement | null>;
@@ -1,75 +1,76 @@
1
- var E = Object.defineProperty;
2
- var c = (i, e, t) => e in i ? E(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
3
- var l = (i, e, t) => c(i, typeof e != "symbol" ? e + "" : e, t);
4
- const n = {
1
+ var L = Object.defineProperty;
2
+ var m = (i, e, t) => e in i ? L(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
3
+ var d = (i, e, t) => m(i, typeof e != "symbol" ? e + "" : e, t);
4
+ const c = {
5
5
  LIVE_CORE_VIEW_CONTAINER: ".live-core-view-container",
6
6
  LIVE_CORE_VIEW: ".live-core-view",
7
7
  VIDEO_ELEMENT: "#atomicx-live-stream-content video",
8
8
  TCPLAYER_ELEMENT: ".tcplayer"
9
9
  };
10
- class r {
10
+ class s {
11
11
  /**
12
12
  * Get live-core-view-container element
13
13
  */
14
14
  static getLiveCoreViewContainer() {
15
- return document.querySelector(n.LIVE_CORE_VIEW_CONTAINER);
15
+ return document.querySelector(c.LIVE_CORE_VIEW_CONTAINER);
16
16
  }
17
17
  /**
18
18
  * Get live-core-view element
19
19
  */
20
20
  static getLiveCoreView() {
21
- return document.querySelector(n.LIVE_CORE_VIEW);
21
+ return document.querySelector(c.LIVE_CORE_VIEW);
22
22
  }
23
23
  /**
24
24
  * Get video element
25
25
  */
26
26
  static getVideoElement() {
27
- return document.querySelector(n.VIDEO_ELEMENT);
27
+ return document.querySelector(c.VIDEO_ELEMENT);
28
28
  }
29
29
  /**
30
30
  * Get all required DOM elements
31
31
  */
32
32
  static getAllElements() {
33
33
  return {
34
- container: r.getLiveCoreViewContainer(),
35
- view: r.getLiveCoreView(),
36
- video: r.getVideoElement()
34
+ container: s.getLiveCoreViewContainer(),
35
+ view: s.getLiveCoreView(),
36
+ video: s.getVideoElement()
37
37
  };
38
38
  }
39
39
  /**
40
40
  * Check if tcplayer element exists in live-core-view-container
41
41
  */
42
42
  static hasTcPlayerElement() {
43
- const e = r.getLiveCoreViewContainer();
44
- return e ? e.querySelector(n.TCPLAYER_ELEMENT) !== null : !1;
43
+ const e = s.getLiveCoreViewContainer();
44
+ return e ? e.querySelector(c.TCPLAYER_ELEMENT) !== null : !1;
45
45
  }
46
46
  /**
47
47
  * Get tcplayer element from live-core-view-container
48
48
  */
49
49
  static getTcPlayerElement() {
50
- const e = r.getLiveCoreViewContainer();
51
- return e ? e.querySelector(n.TCPLAYER_ELEMENT) : null;
50
+ const e = s.getLiveCoreViewContainer();
51
+ return e ? e.querySelector(c.TCPLAYER_ELEMENT) : null;
52
52
  }
53
53
  /**
54
- * Validate if elements exist
54
+ * Validate if required elements exist for fullscreen
55
+ * Note: video element is optional because canvas rendering (TRTC SDK) doesn't use video
55
56
  */
56
57
  static validateElements(e) {
57
58
  const t = [];
58
- return e.container === null && t.push("live-core-view-container"), e.view === null && t.push("live-core-view"), e.video === null && t.push("video"), {
59
+ return e.container === null && t.push("live-core-view-container"), e.view === null && t.push("live-core-view"), {
59
60
  isValid: t.length === 0,
60
61
  missingElements: t
61
62
  };
62
63
  }
63
64
  }
64
- class v {
65
+ class C {
65
66
  constructor() {
66
- l(this, "listeners", /* @__PURE__ */ new Map());
67
+ d(this, "listeners", /* @__PURE__ */ new Map());
67
68
  }
68
69
  /**
69
70
  * Add event listener
70
71
  */
71
- addListener(e, t, s, o) {
72
- this.removeListener(e), t.addEventListener(s, o), this.listeners.set(e, { element: t, event: s, handler: o });
72
+ addListener(e, t, r, o) {
73
+ this.removeListener(e), t.addEventListener(r, o), this.listeners.set(e, { element: t, event: r, handler: o });
73
74
  }
74
75
  /**
75
76
  * Remove specified event listener
@@ -92,8 +93,40 @@ class v {
92
93
  return this.listeners.size;
93
94
  }
94
95
  }
96
+ const g = (i = 3e3) => new Promise((e) => {
97
+ const t = document.querySelector("#atomicx-live-stream-content");
98
+ if (!t) {
99
+ e(null);
100
+ return;
101
+ }
102
+ let r = null;
103
+ const o = new MutationObserver((v) => {
104
+ for (const a of v)
105
+ a.type === "childList" && a.addedNodes.forEach((l) => {
106
+ if (l.nodeName === "VIDEO") {
107
+ const n = l, u = n.onvolumechange;
108
+ n.onvolumechange = null;
109
+ const E = () => {
110
+ r && clearTimeout(r), o.disconnect(), n.removeEventListener("loadeddata", E), setTimeout(() => {
111
+ n.onvolumechange = u;
112
+ }, 100), e(n);
113
+ };
114
+ n.readyState >= 2 ? (r && clearTimeout(r), o.disconnect(), setTimeout(() => {
115
+ n.onvolumechange = u;
116
+ }, 100), e(n)) : n.addEventListener("loadeddata", E, { once: !0 });
117
+ }
118
+ });
119
+ });
120
+ o.observe(t, {
121
+ childList: !0,
122
+ subtree: !0
123
+ }), r = window.setTimeout(() => {
124
+ o.disconnect(), e(null);
125
+ }, i);
126
+ });
95
127
  export {
96
- r as DOMElementGetter,
97
- n as DOM_SELECTORS,
98
- v as EventListenerManager
128
+ s as DOMElementGetter,
129
+ c as DOM_SELECTORS,
130
+ C as EventListenerManager,
131
+ g as waitForVideoMounted
99
132
  };
@@ -7,8 +7,8 @@ export declare const resource: {
7
7
  'Exit Picture in Picture': string;
8
8
  Fullscreen: string;
9
9
  'Exit Fullscreen': string;
10
- Mute: string;
11
- Unmute: string;
10
+ 'Open Speaker': string;
11
+ 'Close Speaker': string;
12
12
  'The system does not support picture-in-picture mode': string;
13
13
  'co-Hosting': string;
14
14
  'In battle': string;
@@ -7,8 +7,8 @@ const e = {
7
7
  "Exit Picture in Picture": "Exit Picture in Picture",
8
8
  Fullscreen: "Fullscreen",
9
9
  "Exit Fullscreen": "Exit Fullscreen",
10
- Mute: "Mute",
11
- Unmute: "Unmute",
10
+ "Open Speaker": "Open Speaker",
11
+ "Close Speaker": "Close Speaker",
12
12
  "The system does not support picture-in-picture mode": "The system does not support picture-in-picture mode",
13
13
  "co-Hosting": "co-Hosting",
14
14
  "In battle": "In battle",
@@ -7,8 +7,8 @@ export declare const resource: {
7
7
  'Exit Picture in Picture': string;
8
8
  Fullscreen: string;
9
9
  'Exit Fullscreen': string;
10
- Mute: string;
11
- Unmute: string;
10
+ 'Open Speaker': string;
11
+ 'Close Speaker': string;
12
12
  'The system does not support picture-in-picture mode': string;
13
13
  'co-Hosting': string;
14
14
  'In battle': string;