tuikit-atomicx-vue3 0.1.1 → 3.3.0-beta.3

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 (455) hide show
  1. package/dist/MessageInput.vue_vue_type_script_setup_true_lang-XRL7A5Gj.js +123 -0
  2. package/dist/{PopoverTrigger-ByOI-vdB.js → PopoverTrigger-BKOIHfdS.js} +1 -1
  3. package/dist/{PopperContent-BaiCn-CA.js → PopperContent-DtL7HVWz.js} +29 -21
  4. package/dist/baseComp/TuiSwitch.js +2 -2
  5. package/dist/baseComp/index.d.ts +0 -1
  6. package/dist/baseComp/index.js +1 -3
  7. package/dist/chat/index.d.ts +2230 -4090
  8. package/dist/chat/index.js +16 -8
  9. package/dist/components/Avatar/Avatar.js +35 -10
  10. package/dist/components/Avatar/Avatar.vue.d.ts +1 -1
  11. package/dist/components/BarrageInput/BarrageInput.vue.d.ts +2 -2
  12. package/dist/components/BarrageInput/BarrageInputH5.js +30 -10
  13. package/dist/components/BarrageInput/BarrageInputH5.vue.d.ts +2 -2
  14. package/dist/components/BarrageInput/EmojiPicker/EmojiPicker.js +1 -1
  15. package/dist/components/BarrageInput/TextEditor/index.js +13 -5
  16. package/dist/components/BarrageInput/constants.d.ts +3 -0
  17. package/dist/components/BarrageInput/constants.js +6 -0
  18. package/dist/components/BarrageInput/i18n/en-US/index.d.ts +2 -0
  19. package/dist/components/BarrageInput/i18n/en-US/index.js +3 -1
  20. package/dist/components/BarrageInput/i18n/zh-CN/index.d.ts +2 -0
  21. package/dist/components/BarrageInput/i18n/zh-CN/index.js +3 -1
  22. package/dist/components/BarrageInput/index.d.ts +18 -18
  23. package/dist/components/BarrageList/BarrageList.js +5 -6
  24. package/dist/components/BarrageList/BarrageListH5.js +5 -6
  25. package/dist/components/BarrageList/Message/MessageLayout/MessageLayout.js +1 -1
  26. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.js +5 -4
  27. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.vue.d.ts +2 -2
  28. package/dist/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.js +7 -4
  29. package/dist/components/BarrageList/Message/TextMessage/TextMessage.js +1 -1
  30. package/dist/components/ChatSetting/ChatSetting.js +8 -11
  31. package/dist/components/ChatSetting/GroupChatSetting/GroupActions/GroupActions.js +2 -1
  32. package/dist/components/ChatSetting/GroupChatSetting/GroupChatSetting.js +2 -1
  33. package/dist/components/ChatSetting/GroupChatSetting/GroupInfo/GroupInfo.js +2 -2
  34. package/dist/components/ChatSetting/GroupChatSetting/GroupManagement/GroupManagement.js +2 -1
  35. package/dist/components/ChatSetting/GroupChatSetting/GroupMembers/GroupMembers.js +2 -2
  36. package/dist/components/ChatSetting/SettingItem/SettingItem.js +116 -89
  37. package/dist/components/ChatSetting/i18n/index.d.ts +191 -1
  38. package/dist/components/ChatSetting/i18n/index.js +3 -4
  39. package/dist/components/ChatSetting/index.js +4 -0
  40. package/dist/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.js +78 -0
  41. package/dist/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.vue.d.ts +33 -0
  42. package/dist/components/ContactList/ContactInfo/BlacklistInfo/index.d.ts +1 -0
  43. package/dist/components/ContactList/ContactInfo/BlacklistInfo/index.js +4 -0
  44. package/dist/components/ContactList/ContactInfo/ContactInfo.js +257 -0
  45. package/dist/components/ContactList/ContactInfo/ContactInfo.vue.d.ts +56 -0
  46. package/dist/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.js +96 -0
  47. package/dist/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.vue.d.ts +37 -0
  48. package/dist/components/ContactList/ContactInfo/FriendApplicationInfo/index.d.ts +1 -0
  49. package/dist/components/ContactList/ContactInfo/FriendApplicationInfo/index.js +4 -0
  50. package/dist/components/ContactList/ContactInfo/FriendInfo/FriendInfo.js +228 -0
  51. package/dist/components/ContactList/ContactInfo/FriendInfo/FriendInfo.vue.d.ts +39 -0
  52. package/dist/components/ContactList/ContactInfo/FriendInfo/index.d.ts +1 -0
  53. package/dist/components/ContactList/ContactInfo/FriendInfo/index.js +4 -0
  54. package/dist/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.js +101 -0
  55. package/dist/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.vue.d.ts +37 -0
  56. package/dist/components/ContactList/ContactInfo/GroupApplicationInfo/index.d.ts +1 -0
  57. package/dist/components/ContactList/ContactInfo/GroupApplicationInfo/index.js +4 -0
  58. package/dist/components/ContactList/ContactInfo/GroupInfo/GroupInfo.js +154 -0
  59. package/dist/components/ContactList/ContactInfo/GroupInfo/GroupInfo.vue.d.ts +37 -0
  60. package/dist/components/ContactList/ContactInfo/GroupInfo/index.d.ts +1 -0
  61. package/dist/components/ContactList/ContactInfo/GroupInfo/index.js +4 -0
  62. package/dist/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.js +141 -0
  63. package/dist/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.vue.d.ts +32 -0
  64. package/dist/components/ContactList/ContactInfo/SearchGroupInfo/index.d.ts +1 -0
  65. package/dist/components/ContactList/ContactInfo/SearchGroupInfo/index.js +4 -0
  66. package/dist/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.js +122 -0
  67. package/dist/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.vue.d.ts +33 -0
  68. package/dist/components/ContactList/ContactInfo/SearchUserInfo/index.d.ts +1 -0
  69. package/dist/components/ContactList/ContactInfo/SearchUserInfo/index.js +4 -0
  70. package/dist/components/ContactList/ContactInfo/index.d.ts +8 -0
  71. package/dist/components/ContactList/ContactInfo/index.js +18 -0
  72. package/dist/components/ContactList/ContactList.js +281 -0
  73. package/dist/components/ContactList/ContactList.vue.d.ts +41 -0
  74. package/dist/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.js +52 -0
  75. package/dist/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.vue.d.ts +25 -0
  76. package/dist/components/ContactList/ContactListItem/BlacklistItem/index.d.ts +1 -0
  77. package/dist/components/ContactList/ContactListItem/BlacklistItem/index.js +4 -0
  78. package/dist/components/ContactList/ContactListItem/ContactListItem.js +4 -0
  79. package/dist/components/ContactList/ContactListItem/ContactListItem.vue.d.ts +30 -0
  80. package/dist/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.js +76 -0
  81. package/dist/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.vue.d.ts +27 -0
  82. package/dist/components/ContactList/ContactListItem/FriendApplicationItem/index.d.ts +1 -0
  83. package/dist/components/ContactList/ContactListItem/FriendApplicationItem/index.js +4 -0
  84. package/dist/components/ContactList/ContactListItem/FriendItem/FriendItem.js +53 -0
  85. package/dist/components/ContactList/ContactListItem/FriendItem/FriendItem.vue.d.ts +25 -0
  86. package/dist/components/ContactList/ContactListItem/FriendItem/index.d.ts +1 -0
  87. package/dist/components/ContactList/ContactListItem/FriendItem/index.js +4 -0
  88. package/dist/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.js +79 -0
  89. package/dist/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.vue.d.ts +27 -0
  90. package/dist/components/ContactList/ContactListItem/GroupApplicationItem/index.d.ts +1 -0
  91. package/dist/components/ContactList/ContactListItem/GroupApplicationItem/index.js +4 -0
  92. package/dist/components/ContactList/ContactListItem/GroupItem/GroupItem.js +52 -0
  93. package/dist/components/ContactList/ContactListItem/GroupItem/GroupItem.vue.d.ts +25 -0
  94. package/dist/components/ContactList/ContactListItem/GroupItem/index.d.ts +1 -0
  95. package/dist/components/ContactList/ContactListItem/GroupItem/index.js +4 -0
  96. package/dist/components/ContactList/ContactListItem/index.d.ts +6 -0
  97. package/dist/components/ContactList/ContactListItem/index.js +95 -0
  98. package/dist/components/ContactList/ContactSearch/ContactSearch.js +85 -0
  99. package/dist/components/ContactList/ContactSearch/ContactSearch.vue.d.ts +8 -0
  100. package/dist/components/ContactList/ContactSearch/index.d.ts +1 -0
  101. package/dist/components/ContactList/ContactSearch/index.js +4 -0
  102. package/dist/components/ContactList/constants/const.d.ts +3 -0
  103. package/dist/components/ContactList/constants/const.js +6 -0
  104. package/dist/components/ContactList/hooks/index.d.ts +1 -0
  105. package/dist/components/ContactList/hooks/index.js +4 -0
  106. package/dist/components/ContactList/hooks/useContactList.d.ts +9 -0
  107. package/dist/components/ContactList/hooks/useContactList.js +18 -0
  108. package/dist/components/ContactList/i18n/en-US.d.ts +77 -0
  109. package/dist/components/ContactList/i18n/en-US.js +80 -0
  110. package/dist/components/ContactList/i18n/index.d.ts +4 -0
  111. package/dist/components/ContactList/i18n/index.js +6 -0
  112. package/dist/components/ContactList/i18n/zh-CN.d.ts +77 -0
  113. package/dist/components/ContactList/i18n/zh-CN.js +80 -0
  114. package/dist/components/ContactList/index.d.ts +310 -0
  115. package/dist/components/ContactList/index.js +16 -0
  116. package/dist/components/ConversationList/ConversationActions/ConversationActions.js +31 -46
  117. package/dist/components/ConversationList/ConversationActions/ConversationActions.vue.d.ts +1 -10
  118. package/dist/components/ConversationList/ConversationCreate/ConversationCreate.js +160 -100
  119. package/dist/components/ConversationList/ConversationCreate/ConversationCreate.vue.d.ts +0 -3
  120. package/dist/components/ConversationList/ConversationCreate/ConversationCreateButton/ConversationCreateButton.js +79 -17
  121. package/dist/components/ConversationList/ConversationCreate/ConversationCreateButton/ConversationCreateButton.vue.d.ts +6 -12
  122. package/dist/components/ConversationList/ConversationCreate/ConversationCreateGroupDetail/ConversationCreateGroupDetail.js +78 -158
  123. package/dist/components/ConversationList/ConversationCreate/ConversationCreateGroupDetail/ConversationCreateGroupDetail.vue.d.ts +5 -4
  124. package/dist/components/ConversationList/ConversationCreate/ConversationCreateUserSelectList/ConversationCreateUserSelectList.js +38 -207
  125. package/dist/components/ConversationList/ConversationCreate/ConversationCreateUserSelectList/ConversationCreateUserSelectList.vue.d.ts +3 -9
  126. package/dist/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/ConversationGroupTypeInfo.js +35 -23
  127. package/dist/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/ConversationGroupTypeInfo.vue.d.ts +2 -11
  128. package/dist/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/index.js +1 -2
  129. package/dist/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/type.d.ts +2 -7
  130. package/dist/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/type.js +6 -14
  131. package/dist/components/ConversationList/ConversationCreate/index.d.ts +0 -2
  132. package/dist/components/ConversationList/ConversationCreate/index.js +5 -9
  133. package/dist/components/ConversationList/ConversationList.js +51 -39
  134. package/dist/components/ConversationList/ConversationList.vue.d.ts +654 -1510
  135. package/dist/components/ConversationList/ConversationListContent/ConversationListContent.js +4 -4
  136. package/dist/components/ConversationList/ConversationListContent/ConversationListContent.vue.d.ts +1 -1
  137. package/dist/components/ConversationList/ConversationPlaceHolder/ConversationPlaceHolder.js +2 -2
  138. package/dist/components/ConversationList/ConversationPreview/ConversationPreview.vue.d.ts +596 -1404
  139. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewAbstract.js +1 -1
  140. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.js +13 -29
  141. package/dist/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue.d.ts +146 -348
  142. package/dist/components/ConversationList/ConversationPreview/index.js +3 -3
  143. package/dist/components/ConversationList/ConversationPreview/utils.js +8 -8
  144. package/dist/components/ConversationList/ConversationSearch/ConversationSearch.js +5 -5
  145. package/dist/components/ConversationList/ConversationSearch/ConversationSearch.vue.d.ts +8 -8
  146. package/dist/components/ConversationList/hooks/useConversation.d.ts +6 -0
  147. package/dist/components/ConversationList/hooks/useConversation.js +20 -0
  148. package/dist/components/ConversationList/hooks/useConversationCreate.d.ts +5 -0
  149. package/dist/components/ConversationList/hooks/useConversationCreate.js +24 -0
  150. package/dist/components/ConversationList/i18n/en-US.d.ts +16 -0
  151. package/dist/components/ConversationList/i18n/en-US.js +25 -7
  152. package/dist/components/ConversationList/i18n/zh-CN.d.ts +16 -0
  153. package/dist/components/ConversationList/i18n/zh-CN.js +24 -6
  154. package/dist/components/ConversationList/index.d.ts +2096 -4595
  155. package/dist/components/{LiveStreamView → LiveCoreView}/DefaultStreamViewUI.js +1 -1
  156. package/dist/components/LiveCoreView/index.d.ts +4 -0
  157. package/dist/components/{LiveStreamView → LiveCoreView}/index.js +68 -74
  158. package/dist/components/LiveList/LiveList.js +71 -45
  159. package/dist/components/LiveList/LiveListH5.js +14 -15
  160. package/dist/components/LiveScenePanel/CameraSettingDialog.js +1 -2
  161. package/dist/components/LiveScenePanel/icons/AddIcon.js +2 -2
  162. package/dist/components/LiveScenePanel/icons/CameraIcon.js +2 -2
  163. package/dist/components/LiveScenePanel/icons/CameraMirror.js +2 -2
  164. package/dist/components/LiveScenePanel/icons/CameraUnmirror.js +2 -2
  165. package/dist/components/LiveScenePanel/icons/ImageIcon.js +2 -2
  166. package/dist/components/LiveScenePanel/icons/MoreIcon.js +2 -2
  167. package/dist/components/LiveScenePanel/icons/ScreenIcon.js +2 -2
  168. package/dist/components/MessageInput/AttachmentPicker/index.js +1 -1
  169. package/dist/components/MessageInput/EmojiPicker/EmojiPicker.js +1 -1
  170. package/dist/components/MessageInput/MessageInput.js +1 -1
  171. package/dist/components/MessageInput/QuotedMessagePreview/index.js +2 -2
  172. package/dist/components/MessageInput/SendButton/index.js +1 -1
  173. package/dist/components/MessageInput/TextEditor/index.js +6 -5
  174. package/dist/components/MessageInput/i18n/index.d.ts +24 -1
  175. package/dist/components/MessageInput/i18n/index.js +7 -8
  176. package/dist/components/MessageInput/index.d.ts +409 -6
  177. package/dist/components/MessageInput/index.js +23 -125
  178. package/dist/components/MessageList/Message/AudioMessage/PlayButton.js +3 -3
  179. package/dist/components/MessageList/Message/ImageMessage/ImageMessage.js +2 -2
  180. package/dist/components/MessageList/Message/MessageLayout/MessageActionDropdown/MessageActionDropdown.js +3 -3
  181. package/dist/components/MessageList/Message/MessageLayout/MessageActionDropdown/MessageActionDropdown.vue.d.ts +5 -5
  182. package/dist/components/MessageList/Message/MessageLayout/MessageLayout.js +1 -1
  183. package/dist/components/MessageList/Message/MessageLayout/MessageMeta/MessageMeta.js +34 -30
  184. package/dist/components/MessageList/Message/MessageLayout/MessageMeta/MessageMeta.vue.d.ts +0 -10
  185. package/dist/components/MessageList/MessageForward/MessageForward.js +4 -4
  186. package/dist/components/MessageList/MessageList.js +66 -60
  187. package/dist/components/MessageList/MessageList.vue.d.ts +3 -3
  188. package/dist/components/MessageList/ScrollToBottom/ScrollToBottom.js +32 -0
  189. package/dist/components/MessageList/ScrollToBottom/ScrollToBottom.vue.d.ts +6 -0
  190. package/dist/components/MessageList/ScrollToBottom/index.d.ts +3 -0
  191. package/dist/components/MessageList/ScrollToBottom/index.js +4 -0
  192. package/dist/components/MessageList/i18n/en-US.d.ts +5 -0
  193. package/dist/components/MessageList/i18n/en-US.js +6 -1
  194. package/dist/components/MessageList/i18n/index.d.ts +85 -1
  195. package/dist/components/MessageList/i18n/index.js +7 -8
  196. package/dist/components/MessageList/i18n/zh-CN.d.ts +5 -0
  197. package/dist/components/MessageList/i18n/zh-CN.js +6 -1
  198. package/dist/components/MessageList/index.js +4 -0
  199. package/dist/components/Search/Search.js +4 -4
  200. package/dist/components/Search/Search.vue.d.ts +4 -4
  201. package/dist/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.js +15 -9
  202. package/dist/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.js +12 -7
  203. package/dist/components/Search/SearchAdvanced/SearchAdvanced.js +2 -2
  204. package/dist/components/Search/SearchAdvanced/SearchTab/SearchTab.js +10 -5
  205. package/dist/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.js +10 -10
  206. package/dist/components/Search/SearchBar/SearchBar.js +3 -2
  207. package/dist/components/Search/SearchResults/EmptyResult/EmptyResult.js +1 -1
  208. package/dist/components/Search/SearchResults/SearchResults.js +82 -69
  209. package/dist/components/Search/SearchResults/SearchResultsItem/Conversation/Conversation.js +8 -8
  210. package/dist/components/Search/SearchResults/SearchResultsItem/utils/highlightText.d.ts +5 -6
  211. package/dist/components/Search/i18n/en-US/Search.js +9 -9
  212. package/dist/components/Search/i18n/zh-CN/Search.js +13 -13
  213. package/dist/components/Search/index.d.ts +6 -6
  214. package/dist/components/StreamMixer/LocalMixer/MixerControl.js +14 -10
  215. package/dist/components/StreamMixer/LocalMixer/index.js +81 -56
  216. package/dist/components/StreamMixer/icons/CameraMirror.js +2 -2
  217. package/dist/components/StreamMixer/icons/Delete.js +2 -2
  218. package/dist/components/StreamMixer/icons/Down.js +2 -2
  219. package/dist/components/StreamMixer/icons/Rotation.js +2 -2
  220. package/dist/components/StreamMixer/icons/Up.js +2 -2
  221. package/dist/components/StreamMixer/index.js +2 -2
  222. package/dist/components/StreamView/common/StreamCover/index.js +2 -2
  223. package/dist/components/UserPicker/components/TreeMode/TreeNode.js +2 -2
  224. package/dist/components/UserPicker/i18n/index.d.ts +15 -1
  225. package/dist/components/UserPicker/i18n/index.js +3 -4
  226. package/dist/components/UserPicker/index.d.ts +0 -1
  227. package/dist/components/UserPicker/index.js +6 -3
  228. package/dist/components/VideoSettingPanel/VideoPreview.js +3 -4
  229. package/dist/components/VideoSettingPanel/VideoProfile.js +3 -4
  230. package/dist/components/VideoSettingPanel/i18n/en-US/index.d.ts +5 -0
  231. package/dist/components/VideoSettingPanel/i18n/en-US/index.js +8 -3
  232. package/dist/components/VideoSettingPanel/i18n/zh-CN/index.d.ts +5 -0
  233. package/dist/components/VideoSettingPanel/i18n/zh-CN/index.js +8 -3
  234. package/dist/components/VideoSettingPanel/index.js +3 -3
  235. package/dist/hooks/useLongPress.d.ts +4 -4
  236. package/dist/hooks/useMessageActions.js +5 -5
  237. package/dist/hooks/useMouseHover.d.ts +7 -5
  238. package/dist/hooks/useMouseHover.js +3 -1
  239. package/dist/index.js +12 -6
  240. package/dist/rtc/index.d.ts +22 -20
  241. package/dist/rtc/index.js +6 -3
  242. package/dist/states/BarrageListState/BarrageListState.js +3 -2
  243. package/dist/states/CoHostState.d.ts +1 -1
  244. package/dist/states/CoHostState.js +59 -62
  245. package/dist/states/ContactListState/ContactListState.d.ts +16 -16
  246. package/dist/states/ContactListState/ContactListState.js +20 -20
  247. package/dist/states/ConversationListState/ConversationListState.d.ts +13 -12
  248. package/dist/states/ConversationListState/ConversationListState.js +19 -19
  249. package/dist/states/LiveSeatState/seatEventManager.js +3 -5
  250. package/dist/states/LiveSeatState/usePlayStream/MixStreamPlayer.js +9 -0
  251. package/dist/states/LiveState/index.d.ts +4 -4
  252. package/dist/states/LiveState/index.js +4 -2
  253. package/dist/states/LoginState.js +1 -3
  254. package/dist/states/MessageInputState/MessageInputState.js +18 -18
  255. package/dist/states/SearchState.d.ts +2 -2
  256. package/dist/states/SearchState.js +124 -127
  257. package/dist/styles/index.css +1954 -1070
  258. package/dist/types/contact.d.ts +145 -9
  259. package/dist/types/conversation.d.ts +36 -28
  260. package/dist/types/conversation.js +22 -0
  261. package/dist/types/index.js +5 -3
  262. package/dist/types/live.d.ts +2 -3
  263. package/dist/types/types.d.ts +0 -8
  264. package/dist/types/types.js +0 -10
  265. package/dist/utils/time.d.ts +2 -2
  266. package/dist/utils/time.js +253 -1471
  267. package/package.json +23 -5
  268. package/src/baseComp/View/View.vue +1 -2
  269. package/src/baseComp/index.ts +1 -2
  270. package/src/chat/index.ts +11 -0
  271. package/src/components/Avatar/Avatar.vue +12 -11
  272. package/src/components/BarrageInput/BarrageInputH5.vue +36 -9
  273. package/src/components/BarrageInput/TextEditor/TextEditor.vue +13 -5
  274. package/src/components/BarrageInput/constants.ts +3 -0
  275. package/src/components/BarrageInput/i18n/en-US/index.ts +2 -0
  276. package/src/components/BarrageInput/i18n/zh-CN/index.ts +2 -0
  277. package/src/components/BarrageList/BarrageList.vue +2 -2
  278. package/src/components/BarrageList/BarrageListH5.vue +2 -2
  279. package/src/components/BarrageList/Message/MessageLayout/MessageLayout.vue +0 -1
  280. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/MessageMeta.vue +5 -2
  281. package/src/components/BarrageList/Message/MessageLayout/MessageMeta/MessageStatusIcon.vue +7 -3
  282. package/src/components/BarrageList/Message/TextMessage/TextMessage.vue +3 -3
  283. package/src/components/ChatSetting/ChatSetting.vue +6 -10
  284. package/src/components/ChatSetting/GroupChatSetting/GroupInfo/GroupInfo.vue +1 -1
  285. package/src/components/ChatSetting/SettingItem/SettingItem.vue +40 -36
  286. package/src/components/ChatSetting/i18n/index.ts +3 -5
  287. package/src/components/ChatSetting/index.ts +5 -1
  288. package/src/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.scss +50 -0
  289. package/src/components/ContactList/ContactInfo/BlacklistInfo/BlacklistInfo.vue +71 -0
  290. package/src/components/ContactList/ContactInfo/BlacklistInfo/index.ts +1 -0
  291. package/src/components/ContactList/ContactInfo/ContactInfo.scss +33 -0
  292. package/src/components/ContactList/ContactInfo/ContactInfo.vue +256 -0
  293. package/src/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.scss +82 -0
  294. package/src/components/ContactList/ContactInfo/FriendApplicationInfo/FriendApplicationInfo.vue +88 -0
  295. package/src/components/ContactList/ContactInfo/FriendApplicationInfo/index.ts +1 -0
  296. package/src/components/ContactList/ContactInfo/FriendInfo/FriendInfo.scss +92 -0
  297. package/src/components/ContactList/ContactInfo/FriendInfo/FriendInfo.vue +219 -0
  298. package/src/components/ContactList/ContactInfo/FriendInfo/index.ts +1 -0
  299. package/src/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.scss +82 -0
  300. package/src/components/ContactList/ContactInfo/GroupApplicationInfo/GroupApplicationInfo.vue +99 -0
  301. package/src/components/ContactList/ContactInfo/GroupApplicationInfo/index.ts +1 -0
  302. package/src/components/ContactList/ContactInfo/GroupInfo/GroupInfo.scss +52 -0
  303. package/src/components/ContactList/ContactInfo/GroupInfo/GroupInfo.vue +146 -0
  304. package/src/components/ContactList/ContactInfo/GroupInfo/index.ts +1 -0
  305. package/src/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.scss +111 -0
  306. package/src/components/ContactList/ContactInfo/SearchGroupInfo/SearchGroupInfo.vue +147 -0
  307. package/src/components/ContactList/ContactInfo/SearchGroupInfo/index.ts +1 -0
  308. package/src/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.scss +111 -0
  309. package/src/components/ContactList/ContactInfo/SearchUserInfo/SearchUserInfo.vue +128 -0
  310. package/src/components/ContactList/ContactInfo/SearchUserInfo/index.ts +1 -0
  311. package/src/components/ContactList/ContactInfo/index.ts +8 -0
  312. package/src/components/ContactList/ContactList.scss +124 -0
  313. package/src/components/ContactList/ContactList.vue +299 -0
  314. package/src/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.scss +39 -0
  315. package/src/components/ContactList/ContactListItem/BlacklistItem/BlacklistItem.vue +47 -0
  316. package/src/components/ContactList/ContactListItem/BlacklistItem/index.ts +1 -0
  317. package/src/components/ContactList/ContactListItem/ContactListItem.vue +98 -0
  318. package/src/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.scss +58 -0
  319. package/src/components/ContactList/ContactListItem/FriendApplicationItem/FriendApplicationItem.vue +70 -0
  320. package/src/components/ContactList/ContactListItem/FriendApplicationItem/index.ts +1 -0
  321. package/src/components/ContactList/ContactListItem/FriendItem/FriendItem.scss +39 -0
  322. package/src/components/ContactList/ContactListItem/FriendItem/FriendItem.vue +47 -0
  323. package/src/components/ContactList/ContactListItem/FriendItem/index.ts +1 -0
  324. package/src/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.scss +57 -0
  325. package/src/components/ContactList/ContactListItem/GroupApplicationItem/GroupApplicationItem.vue +78 -0
  326. package/src/components/ContactList/ContactListItem/GroupApplicationItem/index.ts +1 -0
  327. package/src/components/ContactList/ContactListItem/GroupItem/GroupItem.scss +39 -0
  328. package/src/components/ContactList/ContactListItem/GroupItem/GroupItem.vue +47 -0
  329. package/src/components/ContactList/ContactListItem/GroupItem/index.ts +1 -0
  330. package/src/components/ContactList/ContactListItem/index.ts +6 -0
  331. package/src/components/ContactList/ContactSearch/ContactSearch.scss +58 -0
  332. package/src/components/ContactList/ContactSearch/ContactSearch.vue +98 -0
  333. package/src/components/ContactList/ContactSearch/index.ts +1 -0
  334. package/src/components/ContactList/constants/const.ts +7 -0
  335. package/src/components/ContactList/hooks/index.ts +1 -0
  336. package/src/components/ContactList/hooks/useContactList.ts +21 -0
  337. package/src/components/ContactList/i18n/en-US.ts +77 -0
  338. package/src/components/ContactList/i18n/index.ts +4 -0
  339. package/src/components/ContactList/i18n/zh-CN.ts +77 -0
  340. package/src/components/ContactList/index.ts +18 -0
  341. package/src/components/ConversationList/ConversationActions/ConversationActions.scss +34 -35
  342. package/src/components/ConversationList/ConversationActions/ConversationActions.vue +15 -29
  343. package/src/components/ConversationList/ConversationCreate/ConversationCreate.scss +11 -37
  344. package/src/components/ConversationList/ConversationCreate/ConversationCreate.vue +154 -69
  345. package/src/components/ConversationList/ConversationCreate/ConversationCreateButton/ConversationCreateButton.scss +37 -1
  346. package/src/components/ConversationList/ConversationCreate/ConversationCreateButton/ConversationCreateButton.vue +70 -15
  347. package/src/components/ConversationList/ConversationCreate/ConversationCreateGroupDetail/ConversationCreateGroupDetail.scss +19 -66
  348. package/src/components/ConversationList/ConversationCreate/ConversationCreateGroupDetail/ConversationCreateGroupDetail.vue +72 -139
  349. package/src/components/ConversationList/ConversationCreate/ConversationCreateUserSelectList/ConversationCreateUserSelectList.scss +5 -129
  350. package/src/components/ConversationList/ConversationCreate/ConversationCreateUserSelectList/ConversationCreateUserSelectList.vue +42 -183
  351. package/src/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/ConversationGroupTypeInfo.scss +14 -11
  352. package/src/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/ConversationGroupTypeInfo.vue +23 -18
  353. package/src/components/ConversationList/ConversationCreate/ConversationGroupTypeInfo/type.ts +2 -8
  354. package/src/components/ConversationList/ConversationCreate/index.ts +0 -2
  355. package/src/components/ConversationList/ConversationList.scss +1 -0
  356. package/src/components/ConversationList/ConversationList.vue +44 -25
  357. package/src/components/ConversationList/ConversationListContent/ConversationListContent.scss +2 -5
  358. package/src/components/ConversationList/ConversationPlaceHolder/ConversationPlaceHolder.vue +2 -2
  359. package/src/components/ConversationList/ConversationPreview/ConversationPreviewAbstract.vue +1 -1
  360. package/src/components/ConversationList/ConversationPreview/ConversationPreviewUI.vue +6 -19
  361. package/src/components/ConversationList/ConversationPreview/utils.ts +11 -11
  362. package/src/components/ConversationList/hooks/useConversation.ts +21 -0
  363. package/src/components/ConversationList/hooks/useConversationCreate.ts +29 -0
  364. package/src/components/ConversationList/i18n/en-US.ts +26 -6
  365. package/src/components/ConversationList/i18n/zh-CN.ts +25 -5
  366. package/src/components/{LiveStreamView → LiveCoreView}/index.ts +4 -3
  367. package/src/components/{LiveStreamView → LiveCoreView}/index.vue +109 -88
  368. package/src/components/LiveList/LiveList.vue +94 -38
  369. package/src/components/LiveList/LiveListH5.vue +47 -23
  370. package/src/components/MessageInput/MessageInput.module.scss +1 -1
  371. package/src/components/MessageInput/QuotedMessagePreview/QuotedMessagePreview.vue +2 -2
  372. package/src/components/MessageInput/SendButton/SendButton.vue +1 -1
  373. package/src/components/MessageInput/TextEditor/Editor.scss +3 -2
  374. package/src/components/MessageInput/TextEditor/TextEditor.module.scss +1 -0
  375. package/src/components/MessageInput/TextEditor/TextEditor.vue +2 -0
  376. package/src/components/MessageInput/i18n/index.ts +1 -7
  377. package/src/components/MessageInput/index.ts +25 -8
  378. package/src/components/MessageList/Message/MessageLayout/MessageActionDropdown/MessageActionDropdown.vue +4 -4
  379. package/src/components/MessageList/Message/MessageLayout/MessageLayout.vue +0 -1
  380. package/src/components/MessageList/Message/MessageLayout/MessageMeta/MessageMeta.vue +16 -17
  381. package/src/components/MessageList/MessageForward/MessageForward.vue +2 -2
  382. package/src/components/MessageList/MessageList.vue +21 -5
  383. package/src/components/MessageList/ScrollToBottom/ScrollToBottom.vue +50 -0
  384. package/src/components/MessageList/ScrollToBottom/index.ts +5 -0
  385. package/src/components/MessageList/i18n/en-US.ts +5 -0
  386. package/src/components/MessageList/i18n/index.ts +1 -5
  387. package/src/components/MessageList/i18n/zh-CN.ts +5 -0
  388. package/src/components/MessageList/index.ts +4 -1
  389. package/src/components/Search/Search.vue +0 -4
  390. package/src/components/Search/SearchAdvanced/DateRangePicker/DateRangePicker.vue +125 -38
  391. package/src/components/Search/SearchAdvanced/MessageAdvanced/MessageAdvanced.vue +24 -16
  392. package/src/components/Search/SearchAdvanced/SearchAdvanced.vue +9 -7
  393. package/src/components/Search/SearchAdvanced/SearchTab/SearchTab.vue +4 -3
  394. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.scss +0 -1
  395. package/src/components/Search/SearchAdvanced/UserAdvanced/UserAdvanced.vue +57 -23
  396. package/src/components/Search/SearchBar/SearchBar.scss +0 -2
  397. package/src/components/Search/SearchBar/SearchBar.vue +7 -5
  398. package/src/components/Search/SearchResults/EmptyResult/EmptyResult.vue +4 -2
  399. package/src/components/Search/SearchResults/SearchResults.scss +5 -11
  400. package/src/components/Search/SearchResults/SearchResults.vue +25 -29
  401. package/src/components/Search/SearchResults/SearchResultsItem/Conversation/Conversation.scss +1 -9
  402. package/src/components/Search/SearchResults/SearchResultsItem/utils/highlightText.ts +15 -16
  403. package/src/components/Search/i18n/en-US/Search.ts +9 -9
  404. package/src/components/Search/i18n/zh-CN/Search.ts +13 -13
  405. package/src/components/StreamMixer/LocalMixer/MixerControl.vue +20 -15
  406. package/src/components/StreamMixer/LocalMixer/index.vue +130 -57
  407. package/src/components/StreamMixer/index.vue +3 -3
  408. package/src/components/UserPicker/i18n/index.ts +1 -5
  409. package/src/components/UserPicker/index.ts +4 -3
  410. package/src/components/VideoSettingPanel/VideoPreview.vue +13 -8
  411. package/src/components/VideoSettingPanel/VideoProfile.vue +5 -5
  412. package/src/components/VideoSettingPanel/i18n/en-US/index.ts +8 -3
  413. package/src/components/VideoSettingPanel/i18n/zh-CN/index.ts +8 -3
  414. package/src/components/VideoSettingPanel/index.vue +15 -9
  415. package/src/hooks/useLongPress.ts +7 -18
  416. package/src/hooks/useMessageActions.ts +5 -5
  417. package/src/hooks/useMouseHover.ts +9 -7
  418. package/src/rtc/index.ts +6 -3
  419. package/src/types/contact.ts +175 -12
  420. package/src/types/conversation.ts +42 -32
  421. package/src/types/live.ts +3 -5
  422. package/src/types/types.ts +0 -28
  423. package/src/utils/time.ts +8 -10
  424. package/dist/baseComp/Popup/Popup.js +0 -132
  425. package/dist/baseComp/Popup/Popup.vue.d.ts +0 -54
  426. package/dist/baseComp/Popup/index.d.ts +0 -2
  427. package/dist/baseComp/Popup/index.js +0 -4
  428. package/dist/components/ConversationList/ConversationCreate/ConversationCreateSelectView/ConversationCreateSelectView.js +0 -65
  429. package/dist/components/ConversationList/ConversationCreate/ConversationCreateSelectView/ConversationCreateSelectView.vue.d.ts +0 -17
  430. package/dist/components/ConversationList/ConversationCreate/ConversationCreateSelectView/index.d.ts +0 -1
  431. package/dist/components/ConversationList/ConversationCreate/ConversationCreateSelectView/index.js +0 -4
  432. package/dist/components/ConversationList/ConversationCreate/hooks/useConversationCreate.d.ts +0 -9
  433. package/dist/components/ConversationList/ConversationCreate/hooks/useConversationCreate.js +0 -96
  434. package/dist/components/ConversationList/ConversationCreate/static/word.d.ts +0 -6
  435. package/dist/components/ConversationList/ConversationCreate/static/word.js +0 -4
  436. package/dist/components/LiveStreamView/index.d.ts +0 -4
  437. package/src/baseComp/Popup/Popup.vue +0 -156
  438. package/src/baseComp/Popup/index.ts +0 -2
  439. package/src/components/ConversationList/ConversationCreate/ConversationCreateSelectView/ConversationCreateSelectView.scss +0 -36
  440. package/src/components/ConversationList/ConversationCreate/ConversationCreateSelectView/ConversationCreateSelectView.vue +0 -44
  441. package/src/components/ConversationList/ConversationCreate/ConversationCreateSelectView/index.ts +0 -1
  442. package/src/components/ConversationList/ConversationCreate/hooks/useConversationCreate.ts +0 -132
  443. package/src/components/ConversationList/ConversationCreate/static/word.ts +0 -300
  444. /package/dist/components/{LiveStreamView → LiveCoreView}/DefaultStreamViewUI.vue.d.ts +0 -0
  445. /package/dist/components/{LiveStreamView → LiveCoreView}/i18n/en-US/index.d.ts +0 -0
  446. /package/dist/components/{LiveStreamView → LiveCoreView}/i18n/en-US/index.js +0 -0
  447. /package/dist/components/{LiveStreamView → LiveCoreView}/i18n/index.d.ts +0 -0
  448. /package/dist/components/{LiveStreamView → LiveCoreView}/i18n/index.js +0 -0
  449. /package/dist/components/{LiveStreamView → LiveCoreView}/i18n/zh-CN/index.d.ts +0 -0
  450. /package/dist/components/{LiveStreamView → LiveCoreView}/i18n/zh-CN/index.js +0 -0
  451. /package/dist/components/{LiveStreamView → LiveCoreView}/index.vue.d.ts +0 -0
  452. /package/src/components/{LiveStreamView → LiveCoreView}/DefaultStreamViewUI.vue +0 -0
  453. /package/src/components/{LiveStreamView → LiveCoreView}/i18n/en-US/index.ts +0 -0
  454. /package/src/components/{LiveStreamView → LiveCoreView}/i18n/index.ts +0 -0
  455. /package/src/components/{LiveStreamView → LiveCoreView}/i18n/zh-CN/index.ts +0 -0
@@ -1,8 +1,24 @@
1
1
  <template>
2
- <div class="live-list-panel" v-if="loginUserInfo">
3
- <div v-if="liveList.length > 0" class="live-list" @wheel="handleWheel" ref="scrollContainerRef">
4
- <div class="live-list-items">
5
- <div class="live-item" v-for="item in liveList" :key="item.liveId" @click="liveRoomClick(item)">
2
+ <div
3
+ v-if="loginUserInfo"
4
+ class="live-list-panel"
5
+ >
6
+ <div
7
+ v-if="liveList.length > 0"
8
+ ref="scrollContainerRef"
9
+ class="live-list"
10
+ @wheel="handleWheel"
11
+ >
12
+ <div
13
+ ref="liveListItemsRef"
14
+ class="live-list-items"
15
+ >
16
+ <div
17
+ v-for="item in liveList"
18
+ :key="item.liveId"
19
+ class="live-item"
20
+ @click="liveRoomClick(item)"
21
+ >
6
22
  <div class="live-room-cover">
7
23
  <div class="header">
8
24
  <div class="left">
@@ -14,26 +30,49 @@
14
30
  <span> {{ t('people have watched the live') }} </span>
15
31
  </div>
16
32
  </div>
17
- <img :src="item.coverUrl || DEFAULT_COVER" alt="" @error="handleCoverImageError" />
33
+ <img
34
+ :src="item.coverUrl || DEFAULT_COVER"
35
+ alt=""
36
+ @error="handleCoverImageError"
37
+ >
18
38
  </div>
19
39
  <span class="live-name">{{ item.liveName }} </span>
20
40
  <div class="owner-info">
21
- <Avatar :src="item.liveOwner.avatarUrl" :size="24" />
41
+ <Avatar
42
+ :src="item.liveOwner.avatarUrl"
43
+ :size="24"
44
+ :style="{ border: '1px solid var(--uikit-color-white-7)' }"
45
+ />
22
46
  <span class="owner-name">{{ item.liveOwner.userName || item.liveOwner.userId }} </span>
23
47
  </div>
24
48
  </div>
25
49
  </div>
26
- <div class="bottom-text-no-more" v-if="!hasMoreLive">
50
+ <div
51
+ v-if="!hasMoreLive"
52
+ class="bottom-text-no-more"
53
+ >
27
54
  <span>{{ t('No More') }}</span>
28
55
  </div>
29
56
  </div>
30
- <div v-else-if="!isLoadingMore" class="no-live">
57
+ <div
58
+ v-else-if="!isLoadingMore"
59
+ class="no-live"
60
+ >
31
61
  <IconNoLiveRoom :size="60" />
32
62
  <span>{{ t('No Live') }}</span>
33
63
  </div>
34
- <div class="bottom-text" v-if="liveList.length > 0 && (isShowMoreVisible || isLoadingMore)">
35
- <span class="load-more-lives" v-if="isShowMoreVisible">{{ t('Load More') }}</span>
36
- <span class="loading" v-if="isLoadingMore">{{ t('Loading...') }}</span>
64
+ <div
65
+ v-if="liveList.length > 0 && (isShowMoreVisible || isLoadingMore)"
66
+ class="bottom-text"
67
+ >
68
+ <span
69
+ v-if="isShowMoreVisible"
70
+ class="load-more-lives"
71
+ >{{ t('Load More') }}</span>
72
+ <span
73
+ v-if="isLoadingMore"
74
+ class="loading"
75
+ >{{ t('Loading...') }}</span>
37
76
  </div>
38
77
  </div>
39
78
  </template>
@@ -42,9 +81,9 @@
42
81
  import { ref, computed, defineEmits, watch } from 'vue';
43
82
  import { useUIKit, IconLiveCoverHeader, IconNoLiveRoom } from '@tencentcloud/uikit-base-component-vue3';
44
83
  import { useLiveState } from '../../states/LiveState';
45
- import { LiveInfo } from '../../types';
46
84
  import { useLoginState } from '../../states/LoginState';
47
85
  import { Avatar } from '../Avatar';
86
+ import type { LiveInfo } from '../../types';
48
87
 
49
88
  const { liveList, currentCursor, fetchLiveList } = useLiveState();
50
89
  const { loginUserInfo } = useLoginState();
@@ -52,30 +91,48 @@ const { t } = useUIKit();
52
91
 
53
92
  const DEFAULT_COVER = 'https://liteav-test-1252463788.cos.ap-guangzhou.myqcloud.com/voice_room/voice_room_cover1.png';
54
93
  const scrollContainerRef = ref<HTMLElement | null>(null);
94
+ const liveListItemsRef = ref<HTMLElement | null>(null);
55
95
 
56
96
  const isLoadingMore = ref(false);
57
97
  const hasMoreLive = computed(() => currentCursor.value !== '');
58
98
 
59
- const shouldFetchMoreLiveList = computed(() => {
60
- return hasMoreLive.value && !isLoadingMore.value;
61
- });
99
+ const liveItemWidth = ref('356px');
100
+ const liveItemHeight = ref('270px');
101
+ const coverWidth = ref('356px');
102
+ const coverHeight = ref('210px');
103
+ const columnCount = 5;
62
104
 
63
- const isShowMoreVisible = computed(() => {
64
- return shouldFetchMoreLiveList.value && !scrollContainerRef.value;
65
- });
105
+ const shouldFetchMoreLiveList = computed(() => hasMoreLive.value && !isLoadingMore.value);
106
+
107
+ const isShowMoreVisible = computed(() => shouldFetchMoreLiveList.value && !scrollContainerRef.value);
66
108
 
67
109
  watch(
68
110
  loginUserInfo,
69
- async user => {
111
+ async (user) => {
70
112
  if (user && user.userId) {
71
113
  isLoadingMore.value = true;
72
114
  await fetchLiveList({});
73
115
  isLoadingMore.value = false;
74
116
  }
75
117
  },
76
- { immediate: true }
118
+ { immediate: true },
77
119
  );
78
120
 
121
+ watch(liveListItemsRef, () => {
122
+ if (liveListItemsRef.value && screen.width > screen.height) {
123
+ const { width } = liveListItemsRef.value.getBoundingClientRect();
124
+ const gapWidth = 20 * (columnCount - 1);
125
+ const newItemWidth = (width - gapWidth) / columnCount;
126
+ const newItemHeight = newItemWidth * 0.75;
127
+
128
+ liveItemWidth.value = `${newItemWidth}px`;
129
+ liveItemHeight.value = `${newItemHeight}px`;
130
+
131
+ coverWidth.value = `${newItemWidth}px`;
132
+ coverHeight.value = `${newItemHeight - 52}px`;
133
+ }
134
+ });
135
+
79
136
  const emit = defineEmits<{
80
137
  (e: 'live-room-click', liveInfo: LiveInfo): void;
81
138
  }>();
@@ -90,8 +147,8 @@ function isScrollAtBottom(threshold = 50) {
90
147
  return false;
91
148
  }
92
149
  return (
93
- scrollContainerRef.value.scrollTop + scrollContainerRef.value.clientHeight >=
94
- scrollContainerRef.value.scrollHeight - threshold
150
+ scrollContainerRef.value.scrollTop + scrollContainerRef.value.clientHeight
151
+ >= scrollContainerRef.value.scrollHeight - threshold
95
152
  );
96
153
  }
97
154
 
@@ -106,7 +163,9 @@ function handleWheel(event: WheelEvent) {
106
163
  }
107
164
 
108
165
  async function fetchMoreLives() {
109
- if (!hasMoreLive.value || isLoadingMore.value) return;
166
+ if (!hasMoreLive.value || isLoadingMore.value) {
167
+ return;
168
+ }
110
169
  try {
111
170
  isLoadingMore.value = true;
112
171
  await fetchLiveList({ cursor: currentCursor.value });
@@ -126,6 +185,7 @@ function handleCoverImageError(event: Event) {
126
185
  <style lang="scss" scoped>
127
186
  $text-color1: var(--text-color-primary);
128
187
  $text-color2: var(--text-color-secondary);
188
+ $text-color3: var(--text-color-tertiary);
129
189
 
130
190
  @mixin text-size-12 {
131
191
  font-size: 12px;
@@ -164,7 +224,8 @@ $text-color2: var(--text-color-secondary);
164
224
  flex-direction: column;
165
225
  overflow: hidden;
166
226
  align-items: center;
167
- width: 100%;
227
+ margin: 0px 16px;
228
+ width: calc(100% - 32px);
168
229
  height: 100%;
169
230
  }
170
231
 
@@ -181,7 +242,7 @@ $text-color2: var(--text-color-secondary);
181
242
  .live-list-items {
182
243
  width: 100%;
183
244
  display: grid;
184
- grid-template-columns: repeat(auto-fill, 356px);
245
+ grid-template-columns: repeat(auto-fill, v-bind(liveItemWidth));
185
246
  flex-wrap: wrap;
186
247
  justify-content: center;
187
248
  gap: 20px;
@@ -191,8 +252,8 @@ $text-color2: var(--text-color-secondary);
191
252
  display: flex;
192
253
  flex-direction: column;
193
254
  overflow: hidden;
194
- width: 356px;
195
- height: 270px;
255
+ width: v-bind(liveItemWidth);
256
+ height: v-bind(liveItemHeight);
196
257
  white-space: nowrap;
197
258
  text-overflow: ellipsis;
198
259
  gap: 5px;
@@ -204,8 +265,8 @@ $text-color2: var(--text-color-secondary);
204
265
 
205
266
  .live-room-cover {
206
267
  position: relative;
207
- width: 356px;
208
- height: 210px;
268
+ width: v-bind(coverWidth);
269
+ height: v-bind(coverHeight);
209
270
  overflow: hidden;
210
271
 
211
272
  img {
@@ -244,11 +305,12 @@ $text-color2: var(--text-color-secondary);
244
305
 
245
306
  .live-name {
246
307
  margin: 5px 0px;
308
+ height: 18px;
247
309
  max-width: 200px;
248
310
  overflow: hidden;
249
311
  text-overflow: ellipsis;
250
312
  color: $text-color1;
251
- @include text-size-12;
313
+ @include text-size-14;
252
314
  }
253
315
 
254
316
  .owner-info {
@@ -257,19 +319,13 @@ $text-color2: var(--text-color-secondary);
257
319
  align-items: center;
258
320
  gap: 10px;
259
321
  color: $text-color2;
260
- @include text-size-12;
322
+ @include text-size-14;
261
323
 
262
324
  .owner-name {
263
325
  max-width: 200px;
264
326
  overflow: hidden;
265
327
  text-overflow: ellipsis;
266
328
  }
267
-
268
- img {
269
- width: 24px;
270
- height: 24px;
271
- border-radius: 50%;
272
- }
273
329
  }
274
330
  }
275
331
 
@@ -284,7 +340,7 @@ $text-color2: var(--text-color-secondary);
284
340
  bottom: 5px;
285
341
  text-align: center;
286
342
  transform: translate(-50%, 0);
287
- color: $text-color1;
343
+ color: $text-color3;
288
344
  @include text-size-14;
289
345
  }
290
346
  }
@@ -1,38 +1,63 @@
1
1
  <template>
2
- <div class="live-list-panel-h5" v-if="loginUserInfo">
2
+ <div
3
+ v-if="loginUserInfo"
4
+ class="live-list-panel-h5"
5
+ >
3
6
  <div
4
7
  v-if="liveList.length > 0"
8
+ ref="scrollContainerRef"
5
9
  class="live-list"
6
10
  @scroll="handleScroll"
7
11
  @wheel="handleWheel"
8
- ref="scrollContainerRef"
9
12
  >
10
13
  <div class="live-list-items">
11
- <div class="live-item" v-for="item in liveList" :key="item.liveId" @click="liveRoomClick(item)">
14
+ <div
15
+ v-for="item in liveList"
16
+ :key="item.liveId"
17
+ class="live-item"
18
+ @click="liveRoomClick(item)"
19
+ >
12
20
  <div class="live-room-cover">
13
21
  <div class="header">
14
22
  <IconLiveCoverHeader :size="10" />
15
23
  <span class="viewer-count"> {{ item.currentViewerCount || 0 }} </span>
16
24
  <span> {{ t('people have watched the live') }} </span>
17
25
  </div>
18
- <img :src="item.coverUrl || DEFAULT_COVER" alt="" @error="handleCoverImageError" />
26
+ <img
27
+ :src="item.coverUrl || DEFAULT_COVER"
28
+ alt=""
29
+ @error="handleCoverImageError"
30
+ >
19
31
  </div>
20
32
  <span class="live-name">{{ item.liveName }} </span>
21
33
  <div class="owner-info">
22
- <Avatar :src="item.liveOwner.avatarUrl" :size="16" />
34
+ <Avatar
35
+ :src="item.liveOwner.avatarUrl"
36
+ :size="16"
37
+ :style="{ border: '1px solid var(--uikit-color-white-7)' }"
38
+ />
23
39
  <span class="owner-name">{{ item.liveOwner.userName || item.liveOwner.userId }} </span>
24
40
  </div>
25
41
  </div>
26
42
  </div>
27
- <div class="bottom-text-no-more" v-if="!hasMoreLive">
43
+ <div
44
+ v-if="!hasMoreLive"
45
+ class="bottom-text-no-more"
46
+ >
28
47
  <span>{{ t('No More') }}</span>
29
48
  </div>
30
49
  </div>
31
- <div v-else-if="!isLoadingMore" class="no-live">
50
+ <div
51
+ v-else-if="!isLoadingMore"
52
+ class="no-live"
53
+ >
32
54
  <IconNoLiveRoom :size="60" />
33
55
  <span>{{ t('No Live') }}</span>
34
56
  </div>
35
- <div class="bottom-text" v-if="liveList.length > 0 && (isShowMoreVisible || isLoadingMore)">
57
+ <div
58
+ v-if="liveList.length > 0 && (isShowMoreVisible || isLoadingMore)"
59
+ class="bottom-text"
60
+ >
36
61
  <span v-if="isShowMoreVisible">{{ t('Load More') }}</span>
37
62
  <span v-if="isLoadingMore">{{ t('Loading...') }}</span>
38
63
  </div>
@@ -43,9 +68,9 @@
43
68
  import { ref, watch, computed, defineEmits, onMounted, onUnmounted } from 'vue';
44
69
  import { useUIKit, IconLiveCoverHeader, IconNoLiveRoom } from '@tencentcloud/uikit-base-component-vue3';
45
70
  import { useLiveState } from '../../states/LiveState';
46
- import { LiveInfo } from '../../types';
47
71
  import { useLoginState } from '../../states/LoginState';
48
72
  import { Avatar } from '../Avatar';
73
+ import type { LiveInfo } from '../../types';
49
74
 
50
75
  const { liveList, currentCursor, fetchLiveList } = useLiveState();
51
76
  const { loginUserInfo } = useLoginState();
@@ -60,13 +85,9 @@ const hasMoreLive = computed(() => currentCursor.value !== '');
60
85
  const liveItemWidth = ref('168px');
61
86
  const liveItemHeight = ref('262px');
62
87
 
63
- const shouldFetchMoreLiveList = computed(() => {
64
- return hasMoreLive.value && !isLoadingMore.value;
65
- });
88
+ const shouldFetchMoreLiveList = computed(() => hasMoreLive.value && !isLoadingMore.value);
66
89
 
67
- const isShowMoreVisible = computed(() => {
68
- return shouldFetchMoreLiveList.value && !scrollContainerRef.value;
69
- });
90
+ const isShowMoreVisible = computed(() => shouldFetchMoreLiveList.value && !scrollContainerRef.value);
70
91
 
71
92
  const emit = defineEmits<{
72
93
  (e: 'live-room-click', liveInfo: LiveInfo): void;
@@ -74,14 +95,14 @@ const emit = defineEmits<{
74
95
 
75
96
  watch(
76
97
  loginUserInfo,
77
- async user => {
98
+ async (user) => {
78
99
  if (user && user.userId) {
79
100
  isLoadingMore.value = true;
80
101
  await fetchLiveList({});
81
102
  isLoadingMore.value = false;
82
103
  }
83
104
  },
84
- { immediate: true }
105
+ { immediate: true },
85
106
  );
86
107
 
87
108
  watch(scrollContainerRef, () => {
@@ -106,8 +127,8 @@ function isScrollAtBottom(threshold = 50) {
106
127
  return false;
107
128
  }
108
129
  return (
109
- scrollContainerRef.value.scrollTop + scrollContainerRef.value.clientHeight >=
110
- scrollContainerRef.value.scrollHeight - threshold
130
+ scrollContainerRef.value.scrollTop + scrollContainerRef.value.clientHeight
131
+ >= scrollContainerRef.value.scrollHeight - threshold
111
132
  );
112
133
  }
113
134
 
@@ -132,7 +153,9 @@ function handleScroll() {
132
153
  }
133
154
 
134
155
  async function fetchMoreLives() {
135
- if (!hasMoreLive.value || isLoadingMore.value) return;
156
+ if (!hasMoreLive.value || isLoadingMore.value) {
157
+ return;
158
+ }
136
159
  try {
137
160
  isLoadingMore.value = true;
138
161
  await fetchLiveList({ cursor: currentCursor.value });
@@ -164,6 +187,7 @@ onUnmounted(() => {
164
187
  <style lang="scss" scoped>
165
188
  $text-color1: var(--text-color-primary);
166
189
  $text-color2: var(--text-color-secondary);
190
+ $text-color3: var(--text-color-tertiary);
167
191
 
168
192
  @mixin text-size-12 {
169
193
  font-size: 12px;
@@ -279,7 +303,7 @@ $text-color2: var(--text-color-secondary);
279
303
  align-items: center;
280
304
  margin-left: 10px;
281
305
  color: $text-color1;
282
- @include text-size-12;
306
+ @include text-size-14;
283
307
  }
284
308
 
285
309
  .owner-info {
@@ -292,7 +316,7 @@ $text-color2: var(--text-color-secondary);
292
316
  margin-left: 10px;
293
317
  gap: 4px;
294
318
  color: $text-color2;
295
- @include text-size-12;
319
+ @include text-size-14;
296
320
 
297
321
  .owner-name {
298
322
  max-width: 80px;
@@ -313,7 +337,7 @@ $text-color2: var(--text-color-secondary);
313
337
  bottom: 5px;
314
338
  text-align: center;
315
339
  transform: translate(-50%, 0);
316
- color: $text-color1;
340
+ color: $text-color3;
317
341
  @include text-size-14;
318
342
  }
319
343
  }
@@ -5,7 +5,7 @@
5
5
  background-color: var(--bg-color-operate);
6
6
  height: 160px;
7
7
  flex-shrink: 0;
8
- padding: 3px 10px 10px;
8
+ padding: 10px;
9
9
  gap: 4px;
10
10
 
11
11
  &__toolbar {
@@ -32,7 +32,7 @@ import styles from './QuotedMessagePreview.module.scss';
32
32
  import type { IMessageModel } from '@tencentcloud/chat-uikit-engine';
33
33
 
34
34
  const { t } = useUIKit();
35
- const { currentConversation } = useConversationListState();
35
+ const { activeConversation } = useConversationListState();
36
36
  const { focusEditor } = useMessageInputState();
37
37
  const { quotedMessage, clearQuotedMessage } = useMessageActionState();
38
38
 
@@ -44,7 +44,7 @@ watch(quotedMessage, (newVal) => {
44
44
  });
45
45
 
46
46
  // Watch conversation changes
47
- watch(currentConversation, () => {
47
+ watch(activeConversation, () => {
48
48
  clearQuotedMessage();
49
49
  });
50
50
 
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <TUIButton
3
3
  type="primary"
4
- shape="round"
4
+ radius="round"
5
5
  size="medium"
6
6
  :disabled="disabled"
7
7
  @click="onSendButtonClick"
@@ -1,8 +1,9 @@
1
1
  @use '../../../styles//mixins/scrollbar' as scrollbar;
2
2
 
3
- .tiptap.ProseMirror {
3
+
4
+ .message-input .tiptap.ProseMirror {
4
5
  height: auto;
5
- flex: 1 0 auto;
6
+ flex: 1;
6
7
  word-wrap: break-word;
7
8
  word-break: break-word;
8
9
  white-space: pre-wrap;
@@ -22,4 +22,5 @@
22
22
  .editor {
23
23
  flex: 1;
24
24
  display: flex;
25
+ flex-direction: column;
25
26
  }
@@ -51,6 +51,8 @@ onMounted(() => {
51
51
  return;
52
52
  }
53
53
 
54
+ element.classList.add('message-input');
55
+
54
56
  if (!element.dataset.editorCreated) {
55
57
  editorInstance = createEditor({
56
58
  element,
@@ -1,13 +1,7 @@
1
- import { i18next } from '@tencentcloud/uikit-base-component-vue3';
2
-
3
1
  import enUS from './en-US';
4
2
  import zhCN from './zh-CN';
5
3
 
6
- const resources = {
4
+ export const resources = {
7
5
  'en-US': enUS,
8
6
  'zh-CN': zhCN,
9
7
  };
10
-
11
- Object.entries(resources).forEach(([lng, resource]) => {
12
- i18next.addResourceBundle(lng, 'translation', { MessageInput: resource }, true, false);
13
- });
@@ -1,16 +1,33 @@
1
- import { AttachmentPicker, FilePicker, ImagePicker, VideoPicker } from './AttachmentPicker';
2
- import { EmojiPicker } from './EmojiPicker';
3
- import MessageInput from './MessageInput.vue';
4
- import { TextEditor } from './TextEditor';
1
+ import {
2
+ AttachmentPicker as AttachmentPickerComponent,
3
+ FilePicker as FilePickerComponent,
4
+ ImagePicker as ImagePickerComponent,
5
+ VideoPicker as VideoPickerComponent,
6
+ } from './AttachmentPicker';
7
+ import { EmojiPicker as EmojiPickerComponent } from './EmojiPicker';
8
+ import { TextEditor as TextEditorComponent } from './TextEditor';
9
+ import MessageInputComponent from './MessageInput.vue';
10
+ import { addI18n } from '../../i18n';
11
+ import { resources } from './i18n';
12
+
13
+ addI18n('en-US', { translation: { MessageInput: resources['en-US'] } });
14
+ addI18n('zh-CN', { translation: { MessageInput: resources['zh-CN'] } });
15
+
16
+ const AttachmentPicker = AttachmentPickerComponent;
17
+ const FilePicker = FilePickerComponent;
18
+ const ImagePicker = ImagePickerComponent;
19
+ const VideoPicker = VideoPickerComponent;
20
+ const EmojiPicker = EmojiPickerComponent;
21
+ const TextEditor = TextEditorComponent;
22
+ const MessageInput = MessageInputComponent;
5
23
 
6
- import './i18n';
7
24
 
8
25
  export {
9
- TextEditor,
10
- MessageInput,
11
- EmojiPicker,
12
26
  AttachmentPicker,
13
27
  FilePicker,
14
28
  ImagePicker,
15
29
  VideoPicker,
30
+ EmojiPicker,
31
+ TextEditor,
32
+ MessageInput,
16
33
  };
@@ -12,16 +12,16 @@ import {
12
12
  import { useMessageActions } from '../../../../../hooks/useMessageActions';
13
13
  import classes from './MessageActionDropdown.module.scss';
14
14
  import type { MessageAction } from '../../../../../hooks/useMessageActions';
15
- import type { IMessageModel } from '@tencentcloud/chat-uikit-engine';
15
+ import type { IMessageModel as MessageModel } from '@tencentcloud/chat-uikit-engine';
16
16
 
17
17
  interface IMessageActionDropdownProps {
18
- message: IMessageModel;
18
+ message: MessageModel;
19
19
  messageActionList?: MessageAction[] | undefined;
20
20
  }
21
21
 
22
22
  const props = withDefaults(defineProps<IMessageActionDropdownProps>(), {
23
23
  messageActionList: undefined,
24
- message: () => ({}) as IMessageModel,
24
+ message: () => ({}) as MessageModel,
25
25
  });
26
26
 
27
27
  const { t } = useUIKit();
@@ -74,7 +74,7 @@ const bodyElement = document.body;
74
74
  :message="message"
75
75
  />
76
76
  <template v-else-if="action.visible">
77
- <span>{{ t(`TUIChat.${action.label}`, { defaultValue: action.label }) }}</span>
77
+ <span>{{ t(`MessageList.${action.label}`, { defaultValue: action.label }) }}</span>
78
78
  <template v-if="action.icon">
79
79
  <span v-if="typeof action.icon === 'string'">{{ action.icon }}</span>
80
80
  <component
@@ -197,7 +197,6 @@ $message-avatar-gap: 8px;
197
197
  &.message-layout__wrapper--left {
198
198
  padding-left: calc(#{$message-avatar-size} + #{$message-avatar-gap});
199
199
  }
200
- // 右侧聚合时反转 padding
201
200
  &.message-layout__wrapper--right {
202
201
  padding-right: calc(#{$message-avatar-size} + #{$message-avatar-gap});
203
202
  }