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,29 +1,84 @@
1
1
  <template>
2
- <IconSearchMore
3
- v-if="visible"
4
- :class="[$style['conversation-create-button'], className]"
5
- size="24px"
6
- @click="handleClick"
7
- />
2
+ <template v-if="!enableSearch">
3
+ <ul :class="[$style['conversation-create-list'], {[$style['conversation-create-list--detail']]: !enableSearch }]">
4
+ <li
5
+ v-for="(action, key) in createActions"
6
+ :key="key"
7
+ :class="[$style['conversation-create-item']]"
8
+ @click="() => handleClick(action.key)"
9
+ >
10
+ <component :is="action.icon" />
11
+ <span :class="[$style['conversation-create-text']]">{{ action.label }}</span>
12
+ </li>
13
+ </ul>
14
+ </template>
15
+ <template v-else>
16
+ <TUIDropdown
17
+ trigger="click"
18
+ placement="bottom-end"
19
+ >
20
+ <IconSearchMore
21
+ :class="[$style['conversation-create-button']]"
22
+ :size="`${size}px`"
23
+ />
24
+ <template #dropdown>
25
+ <div :class="[$style['conversation-create-dropdown']]">
26
+ <ul :class="[$style['conversation-create-list']]">
27
+ <li
28
+ v-for="(action, key) in createActions"
29
+ :key="key"
30
+ :class="[$style['conversation-create-item']]"
31
+ @click="() => handleClick(action.key)"
32
+ >
33
+ <component :is="action.icon" />
34
+ <span :class="[$style['conversation-create-text']]">{{ action.label }}</span>
35
+ </li>
36
+ </ul>
37
+ </div>
38
+ </template>
39
+ </TUIDropdown>
40
+ </template>
8
41
  </template>
9
42
 
10
43
  <script lang="ts" setup>
11
- import { IconSearchMore } from '@tencentcloud/uikit-base-component-vue3';
44
+ import { shallowRef } from 'vue';
45
+ import {
46
+ IconSearchMore,
47
+ TUIDropdown,
48
+ IconIconC2c,
49
+ IconStartGroup,
50
+ useUIKit,
51
+ } from '@tencentcloud/uikit-base-component-vue3';
52
+ import { CreateConvTypes } from '../../../../types';
53
+ import { useConversation } from '../../hooks/useConversation';
12
54
  import type { ConversationCreateButtonProps } from '../../../../types';
13
55
 
14
- const props = withDefaults(defineProps<ConversationCreateButtonProps>(), {
15
- visible: true,
16
- height: 24,
17
- width: 24,
56
+ const { t } = useUIKit();
57
+ const { enableSearch } = useConversation();
58
+
59
+ withDefaults(defineProps<ConversationCreateButtonProps>(), {
60
+ size: 24,
18
61
  });
19
62
 
20
63
  const emit = defineEmits<{
21
- click: [event: Event];
64
+ click: [key: CreateConvTypes];
22
65
  }>();
23
66
 
24
- const handleClick = (event: Event) => {
25
- emit('click', event);
26
- props.onClick?.(event);
67
+ const createActions = shallowRef([
68
+ {
69
+ icon: IconIconC2c,
70
+ key: CreateConvTypes.C2C,
71
+ label: t('TUIConversation.Start C2C Chat'),
72
+ },
73
+ {
74
+ icon: IconStartGroup,
75
+ key: CreateConvTypes.GROUP,
76
+ label: t('TUIConversation.Start Group Chat'),
77
+ },
78
+ ]);
79
+
80
+ const handleClick = (action: CreateConvTypes) => {
81
+ emit('click', action);
27
82
  };
28
83
  </script>
29
84
 
@@ -1,4 +1,11 @@
1
+ @use '../../../../styles/mixins/_scrollbar.scss' as scrollbar;
1
2
  .conversationCreateGroupDetail {
3
+ flex: 1;
4
+ height: 640px;
5
+ display: flex;
6
+ &--h5 {
7
+ height: 100%;
8
+ }
2
9
  &__nextContainer {
3
10
  width: 100%;
4
11
  display: flex;
@@ -20,83 +27,29 @@
20
27
  flex-direction: column;
21
28
  padding: 0 10px;
22
29
  overflow-y: auto;
30
+ @include scrollbar.scrollbar-hidden();
23
31
  color: var(--text-color-primary);
24
32
  }
25
33
 
26
34
  &__box {
27
35
  padding: 10px 0;
28
36
  position: relative;
37
+ display: flex;
38
+ gap: 10px;
39
+ justify-content: flex-start;
40
+ align-items: center;
29
41
  }
30
42
 
31
43
  &__inputText {
32
- font-weight: 600;
33
- font-size: 16px !important;
44
+ flex: 1;
34
45
  border-bottom: 1px solid var(--stroke-color-primary);
35
46
  color: var(--text-color-primary);
36
-
37
- &::placeholder {
38
- font-weight: 400;
39
- font-size: 16px;
40
- color: var(--text-color-tertiary) 40%;
41
- }
42
- }
43
-
44
- &__inputReadonly {
45
- position: absolute;
46
- z-index: 1;
47
- width: 100%;
48
- height: 100%;
49
- top: 0;
50
- left: 0;
51
47
  }
48
+ }
52
49
 
53
- &__inputTitle {
54
- font-weight: 400;
55
- font-size: 16px;
56
- padding: 0 10px 0 6px;
57
- color: var(--text-color-tertiary) 40%;
58
- }
59
-
60
- &__illustrate {
61
- font-size: 12px;
62
- line-height: 16px;
63
- text-align: justify;
64
- padding: 0 14px;
65
- hyphens: auto;
66
- color: var(--text-color-tertiary) 40%;
67
- }
68
-
69
- &__portrait {
70
- &Title {
71
- font-weight: 600;
72
- font-size: 14px;
73
- padding: 12px 0 12px 10px;
74
- color: var(--text-color-primary);
75
- }
76
-
77
- &InfoContainer {
78
- display: flex;
79
- flex-wrap: wrap;
80
- justify-content: flex-start;
81
- margin-bottom: 10px;
82
- padding: 0 10px;
83
- }
84
-
85
- &Info {
86
- align-items: center;
87
- display: flex;
88
- flex-direction: column;
89
- padding: 6px;
90
- box-sizing: border-box;
91
-
92
- &Nick {
93
- font-size: 12px;
94
- margin-top: 6px;
95
- max-width: 48px;
96
- overflow: hidden;
97
- text-overflow: ellipsis;
98
- white-space: nowrap;
99
- }
100
- }
101
- }
50
+ .from__label {
51
+ min-width: 85px;
52
+ font-weight: 400;
53
+ font-size: 14px;
54
+ color: var(--text-color-primary);
102
55
  }
@@ -1,188 +1,121 @@
1
1
  <template>
2
- <div :class="$style.conversationCreateGroupDetail">
2
+ <div
3
+ :class="[
4
+ $style.conversationCreateGroupDetail,
5
+ isH5 && $style['conversationCreateGroupDetail--h5'],
6
+ ]"
7
+ >
3
8
  <div
4
9
  v-if="pageState !== PageStateTypes.GROUP_TYPE"
5
10
  :class="$style.conversationCreateGroupDetail__main"
6
11
  >
7
- <div :class="[$style.conversationCreateGroupDetail__box, $style.conversationCreateGroupDetail__name]">
8
- <TUIInput
9
- v-model="groupName"
10
- :class="$style.conversationCreateGroupDetail__inputText"
11
- :max-length="15"
12
- :border="false"
13
- :placeholder="t('TUIConversation.Group Name')"
14
- @update:model-value="(value) => groupInfoChange(String(value), 'name')"
12
+ <div :class="$style.conversationCreateGroupDetail__box">
13
+ <label
14
+ :class="$style.from__label"
15
+ for="group-avatar"
16
+ >{{ t('TUIConversation.Group Avatar') }}</label>
17
+ <Avatar
18
+ size="sm"
19
+ :src="groupInfo.avatar"
15
20
  />
16
21
  </div>
17
-
18
22
  <div :class="$style.conversationCreateGroupDetail__box">
23
+ <label
24
+ :class="$style.from__label"
25
+ for="group-name"
26
+ >{{ t('TUIConversation.Group Name') }}</label>
19
27
  <TUIInput
20
- v-model="groupID"
28
+ id="group-name"
29
+ v-model="groupInfo.name"
30
+ clearable
21
31
  :class="$style.conversationCreateGroupDetail__inputText"
32
+ :max-length="30"
22
33
  :border="false"
23
- :placeholder="t('TUIConversation.Group ID')"
24
- @update:model-value="(value) => groupInfoChange(String(value), 'id')"
34
+ :placeholder="t('TUIConversation.Group Name')"
35
+ @update:model-value="(value) => groupInfoChange(String(value), GroupLabelTypes.NAME)"
25
36
  />
26
37
  </div>
27
38
 
28
39
  <div :class="$style.conversationCreateGroupDetail__box">
29
- <div
30
- :class="$style.conversationCreateGroupDetail__inputReadonly"
31
- @click.self="setPageState(PageStateTypes.GROUP_TYPE)"
32
- />
40
+ <label
41
+ :class="$style.from__label"
42
+ for="group-id"
43
+ >{{ t('TUIConversation.Group ID') }}</label>
33
44
  <TUIInput
45
+ id="group-id"
46
+ v-model="groupInfo.groupID"
47
+ clearable
34
48
  :class="$style.conversationCreateGroupDetail__inputText"
35
- readonly
36
49
  :border="false"
37
- :prefix="h('div', { class: $style.conversationCreateGroupDetail__inputTitle }, t('TUIConversation.Group Type'))"
38
- :suffix="IconChevronRight"
39
- :model-value="t(`TUIConversation.${groupType}`)"
50
+ :placeholder="t('TUIConversation.Group ID')"
51
+ @update:model-value="(value) => groupInfoChange(String(value), GroupLabelTypes.GROUP_ID)"
40
52
  />
41
53
  </div>
42
54
 
43
- <div :class="$style.conversationCreateGroupDetail__illustrate">
44
- {{ t(`TUIConversation.${getDes()}`) }}
45
- </div>
46
-
47
- <div :class="$style.conversationCreateGroupDetail__portrait">
48
- <div :class="$style.conversationCreateGroupDetail__portraitTitle">
49
- {{ t('TUIConversation.Participants') }}
50
- </div>
51
- <div :class="$style.conversationCreateGroupDetail__portraitInfoContainer">
52
- <div
53
- v-for="{ avatar, userID, nick } in profileList"
54
- :key="userID"
55
- :class="$style.conversationCreateGroupDetail__portraitInfo"
56
- >
57
- <Avatar :src="avatar || DEFAULT_USER_AVATAR" />
58
- <div :class="$style.conversationCreateGroupDetail__portraitInfoNick">
59
- {{ nick || userID }}
60
- </div>
61
- </div>
62
- </div>
55
+ <div
56
+ :class="$style.conversationCreateGroupDetail__box"
57
+ :style="{ alignItems: 'flex-start' }"
58
+ >
59
+ <label
60
+ :class="$style.from__label"
61
+ for="group-type"
62
+ >{{ t('TUIConversation.Group Type') }}</label>
63
+ <ConversationGroupTypeInfo
64
+ id="group-type"
65
+ :group-type="groupInfo.type"
66
+ :set-group-type="(type: GroupType) => groupInfoChange(type, GroupLabelTypes.TYPE)"
67
+ />
63
68
  </div>
64
69
  </div>
65
-
66
- <div
67
- v-if="pageState !== PageStateTypes.GROUP_TYPE"
68
- :class="$style.conversationCreateGroupDetail__nextContainer"
69
- >
70
- <TUIButton @click="next">
71
- {{ t('TUIConversation.Create') }}
72
- </TUIButton>
73
- </div>
74
-
75
- <ConversationGroupTypeInfo
76
- v-else
77
- :group-type="groupType"
78
- :set-group-type="setGroupType"
79
- :set-page-state="setPageState"
80
- />
81
70
  </div>
82
71
  </template>
83
72
 
84
73
  <script lang="ts" setup>
85
- import { ref, computed, h } from 'vue';
86
- import { StoreName, TUIStore } from '@tencentcloud/chat-uikit-engine';
87
- import { TUIButton, TUIInput, IconChevronRight, TUIToast, useUIKit } from '@tencentcloud/uikit-base-component-vue3';
88
- import { useConversationListState } from '../../../../states/ConversationListState';
89
- import {
90
- Avatar,
91
- DEFAULT_GROUP_AVATAR_WORK,
92
- DEFAULT_GROUP_AVATAR_AVCHATROOM,
93
- DEFAULT_GROUP_AVATAR_MEETING,
94
- DEFAULT_GROUP_AVATAR_PUBLIC,
95
- DEFAULT_USER_AVATAR,
96
- } from '../../../Avatar';
97
- import { ConversationGroupTypeInfo, GroupType, typeInfoList } from '../ConversationGroupTypeInfo';
98
- import type { PageStateTypes, ConversationCreateGroupDetailProps } from '../../../../types';
99
- import type { CreateGroupParams, IConversationModel } from '@tencentcloud/chat-uikit-engine';
74
+ import { ref } from 'vue';
75
+ import { TUIInput, useUIKit } from '@tencentcloud/uikit-base-component-vue3';
76
+ import { PageStateTypes, GroupLabelTypes } from '../../../../types';
77
+ import { isH5 } from '../../../../utils/env';
78
+ import { Avatar } from '../../../Avatar';
79
+ import { useConversationCreate } from '../../hooks/useConversationCreate';
80
+ import { ConversationGroupTypeInfo } from '../ConversationGroupTypeInfo';
81
+ import type {
82
+ ConversationCreateGroupDetailProps,
83
+ ConversationModel,
84
+ CreateGroupInfo,
85
+ CreateGroupParams,
86
+ GroupType,
87
+ } from '../../../../types';
100
88
 
101
89
  const props = defineProps<ConversationCreateGroupDetailProps>();
102
90
 
103
91
  const emit = defineEmits<{
104
92
  'update:page-state': [state: PageStateTypes];
105
93
  'beforeCreateConversation': [params: CreateGroupParams];
106
- 'conversationCreated': [conversation: IConversationModel];
94
+ 'conversationCreated': [conversation: ConversationModel];
95
+ 'update-group-info': [groupInfo: CreateGroupInfo];
107
96
  }>();
108
97
 
109
98
  const { t } = useUIKit();
110
- const { createGroupConversation } = useConversationListState();
111
-
112
- const myProfile = computed(() => TUIStore.getData(StoreName.USER, 'userProfile'));
113
- const temp = computed(() => [myProfile.value, ...props.profileList]);
114
- const name = computed(() => temp.value.map(item => item?.nick || item?.userID).toString());
99
+ const { getDefaultAvatar } = useConversationCreate();
115
100
 
116
- const groupName = ref(name.value.length >= 15 ? `${name.value.slice(0, 12)}...` : name.value);
117
- const groupID = ref('');
118
- const groupType = ref<GroupType>(GroupType.WORK);
101
+ const groupInfo = ref<CreateGroupInfo>(props.groupInfo);
119
102
 
120
103
  const groupInfoChange = (value: string, type: string) => {
121
104
  switch (type) {
122
- case 'name':
123
- groupName.value = value;
105
+ case GroupLabelTypes.NAME:
106
+ groupInfo.value.name = value;
124
107
  break;
125
- case 'id':
126
- groupID.value = value;
108
+ case GroupLabelTypes.GROUP_ID:
109
+ groupInfo.value.groupID = value;
127
110
  break;
128
- case 'type':
129
- groupType.value = value as GroupType;
111
+ case GroupLabelTypes.TYPE:
112
+ groupInfo.value.type = value as GroupType;
113
+ groupInfo.value.avatar = getDefaultAvatar(groupInfo.value.type);
130
114
  break;
131
115
  default:
132
116
  break;
133
117
  }
134
- };
135
-
136
- const getDefaultAvatar = (type: GroupType) => {
137
- switch (type) {
138
- case GroupType.WORK:
139
- return DEFAULT_GROUP_AVATAR_WORK;
140
- case GroupType.PUBLIC:
141
- return DEFAULT_GROUP_AVATAR_PUBLIC;
142
- case GroupType.MEETING:
143
- return DEFAULT_GROUP_AVATAR_MEETING;
144
- case GroupType.AVCHATROOM:
145
- return DEFAULT_GROUP_AVATAR_AVCHATROOM;
146
- default:
147
- return '';
148
- }
149
- };
150
-
151
- const getDes = () => typeInfoList?.find((item: any) => item.type === groupType.value)?.des || '';
152
-
153
- const setGroupType = (type: GroupType) => {
154
- groupType.value = type;
155
- };
156
-
157
- const setPageState = (state: PageStateTypes) => {
158
- emit('update:page-state', state);
159
- props?.setPageState?.(state);
160
- };
161
-
162
- const next = async () => {
163
- const memberList = props.profileList.map(item => ({
164
- userID: item.userID,
165
- }));
166
-
167
- const avatar = getDefaultAvatar(groupType.value);
168
- const options: CreateGroupParams = {
169
- name: groupName.value,
170
- type: groupType.value,
171
- groupID: groupID.value,
172
- avatar,
173
- memberList,
174
- };
175
-
176
- emit('beforeCreateConversation', options);
177
- const _options = props.onBeforeCreateConversation?.(options) || options;
178
-
179
- try {
180
- const conversation = await createGroupConversation(_options);
181
- emit('conversationCreated', conversation);
182
- props.onConversationCreated?.(conversation);
183
- } catch (error: any) {
184
- TUIToast.error({ message: error.message });
185
- }
118
+ emit('update-group-info', groupInfo.value);
186
119
  };
187
120
  </script>
188
121
 
@@ -1,135 +1,11 @@
1
1
  .conversationCreateUserSelectList {
2
2
  display: flex;
3
3
  flex-direction: column;
4
- height: 100%;
4
+ width: 100%;
5
+ height: 640px;
5
6
 
6
- &__searchInput {
7
- padding: 8px 16px;
8
- }
9
-
10
- &__user {
11
- padding: 8px 16px;
12
- display: flex;
13
- align-items: center;
14
- text-align: center;
15
- gap: 8px;
16
- cursor: pointer;
17
- color: var(--text-color-link);
18
-
19
- &:hover {
20
- background-color: var(--list-color-hover);
21
- }
22
-
23
- &--active {
24
- font-weight: 600;
25
- font-size: 14px;
26
- color: var(--text-color-link);
27
- }
28
-
29
- &Name {
30
- flex: 1;
31
- font-size: 14px;
32
- overflow: hidden;
33
- text-overflow: ellipsis;
34
- word-break: keep-all;
35
- text-align: left;
36
- color: var(--text-color-primary);
37
-
38
- &--active {
39
- font-weight: 600;
40
- font-size: 14px;
41
- color: var(--text-color-link);
42
- }
43
- }
44
- }
45
-
46
- &__userCheckbox {
47
- cursor: pointer;
48
- color: var(--text-color-primary);
49
- }
50
-
51
- &__activeIcon {
52
- color: var(--text-color-link);
53
- }
54
-
55
- &__nextContainer {
56
- width: 100%;
57
- display: flex;
58
- justify-content: center;
59
- margin: 20px auto 10px;
60
- }
61
-
62
- &__next {
63
- cursor: pointer;
64
- text-align: center;
65
- border-radius: 31px;
66
- font-size: 14px;
67
- color: #fff;
68
- padding: 12px 36px;
69
- background-color: var(--text-color-link);
70
- }
71
-
72
- &__container {
73
- height: 0;
74
- overflow-y: auto;
75
- flex: 1 1 auto;
76
- padding: 0 10px;
77
- scrollbar-width: none;
78
- -ms-overflow-style: none;
79
- &::-webkit-scrollbar {
80
- display: none;
81
- }
82
- }
83
-
84
- &__list {
85
- position: relative;
86
- }
87
-
88
- &__groupContainer {
89
- width: 100%;
90
- }
91
-
92
- &__title {
93
- font-weight: 600;
94
- font-size: 12px;
95
- padding: 8px 10px;
96
- text-align: left;
97
- color: var(--text-color-secondary);
98
- }
99
-
100
- &__groupBox {
101
- width: 100%;
102
- }
103
-
104
- &__userAvatar {
105
- width: 36px;
106
- height: 36px;
107
- border-radius: 50%;
108
- margin-right: 8px;
109
- }
110
-
111
- &__userInfo {
112
- flex: 1;
113
- display: flex;
114
- flex-direction: column;
115
- justify-content: center;
116
- text-align: left;
117
- }
118
-
119
- &__userName {
120
- font-size: 14px;
121
- font-weight: 500;
122
- overflow: hidden;
123
- text-overflow: ellipsis;
124
- white-space: nowrap;
125
- color: var(--text-color-primary);
126
- }
127
-
128
- &__userID {
129
- font-size: 12px;
130
- overflow: hidden;
131
- text-overflow: ellipsis;
132
- white-space: nowrap;
133
- color: var(--text-color-secondary);
7
+ &--h5 {
8
+ height: 100%;
9
+ padding: 0 20px;
134
10
  }
135
11
  }