@tencentcloud/chat-uikit-react 2.2.7 → 2.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (673) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/_virtual/index.js +1 -0
  3. package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
  4. package/dist/cjs/components/{TUIChat/TUIChat.d.ts → Chat/Chat.d.ts} +8 -8
  5. package/dist/cjs/components/Chat/Chat.js +1 -0
  6. package/dist/cjs/components/Chat/index.js +1 -0
  7. package/dist/cjs/components/{TUIChatHeader/TUIChatHeader.d.ts → ChatHeader/ChatHeader.d.ts} +3 -3
  8. package/dist/cjs/components/ChatHeader/ChatHeader.js +1 -0
  9. package/dist/cjs/components/{TUIChatHeader/TUIChatHeaderDefault.d.ts → ChatHeader/ChatHeaderDefault.d.ts} +2 -2
  10. package/dist/cjs/components/ChatHeader/ChatHeaderDefault.js +1 -0
  11. package/dist/cjs/components/ChatSetting/ChatSetting.d.ts +6 -0
  12. package/dist/cjs/components/ChatSetting/ChatSetting.js +1 -0
  13. package/dist/cjs/components/Contact/Contact.d.ts +6 -0
  14. package/dist/cjs/components/Contact/Contact.js +1 -0
  15. package/dist/cjs/components/Contact/ContactInfo/ContactInfo.d.ts +10 -0
  16. package/dist/cjs/components/Contact/ContactInfo/ContactInfo.js +1 -0
  17. package/dist/cjs/components/Contact/ContactInfo/basicInfo.js +1 -0
  18. package/dist/cjs/components/Contact/ContactInfo/blockInfo.js +1 -0
  19. package/dist/cjs/components/Contact/ContactInfo/friendApplication.js +1 -0
  20. package/dist/cjs/components/Contact/ContactInfo/friendInfo.js +1 -0
  21. package/dist/cjs/components/Contact/ContactInfo/groupInfo.js +1 -0
  22. package/dist/cjs/components/Contact/ContactInfo/hooks/useContactInfo.js +1 -0
  23. package/dist/cjs/components/Contact/ContactList/ContactList.d.ts +6 -0
  24. package/dist/cjs/components/Contact/ContactList/ContactList.js +1 -0
  25. package/dist/cjs/components/Contact/hooks/useTUIContact.js +1 -0
  26. package/dist/cjs/components/ContactSearch/ContactSearch.js +1 -0
  27. package/dist/cjs/components/ContactSearch/hooks/useContactSearch.js +1 -0
  28. package/dist/cjs/components/ConversationActions/ConversationActions.d.ts +52 -0
  29. package/dist/cjs/components/ConversationActions/ConversationActions.js +1 -0
  30. package/dist/cjs/components/ConversationCreate/ConversationCreate.d.ts +21 -0
  31. package/dist/cjs/components/ConversationCreate/ConversationCreate.js +1 -1
  32. package/dist/cjs/components/ConversationCreate/ConversationCreateButton.d.ts +13 -0
  33. package/dist/cjs/components/ConversationCreate/ConversationCreateButton.js +1 -0
  34. package/dist/cjs/components/ConversationCreate/ConversationCreateGroupDetail.d.ts +16 -0
  35. package/dist/cjs/components/ConversationCreate/ConversationCreateGroupDetail.js +1 -0
  36. package/dist/cjs/components/ConversationCreate/ConversationCreateSelectView.d.ts +15 -0
  37. package/dist/cjs/components/ConversationCreate/ConversationCreateUserSelectList.d.ts +18 -0
  38. package/dist/cjs/components/ConversationCreate/ConversationCreateUserSelectList.js +1 -1
  39. package/dist/cjs/components/ConversationCreate/ConversationGroupTypeInfo.d.ts +24 -0
  40. package/dist/cjs/components/ConversationCreate/ConversationGroupTypeInfo.js +1 -1
  41. package/dist/cjs/components/ConversationCreate/hooks/useConversationCreate.d.ts +14 -0
  42. package/dist/cjs/components/ConversationCreate/hooks/useConversationCreate.js +1 -1
  43. package/dist/cjs/components/ConversationList/ConversationList.d.ts +57 -0
  44. package/dist/cjs/components/ConversationList/ConversationList.js +1 -0
  45. package/dist/cjs/components/ConversationList/ConversationListContent/ConversationListContent.d.ts +23 -0
  46. package/dist/cjs/components/ConversationList/ConversationListContent/ConversationListContent.js +1 -0
  47. package/dist/cjs/components/ConversationList/ConversationListHeader/ConversationListHeader.d.ts +15 -0
  48. package/dist/cjs/components/ConversationList/ConversationListHeader/ConversationListHeader.js +1 -0
  49. package/dist/cjs/components/ConversationPreview/ConversationPreview.d.ts +39 -27
  50. package/dist/cjs/components/ConversationPreview/ConversationPreview.js +1 -1
  51. package/dist/cjs/components/ConversationPreview/utils.js +1 -1
  52. package/dist/cjs/components/ConversationSearch/ConversationSearch.d.ts +39 -0
  53. package/dist/cjs/components/ConversationSearch/ConversationSearch.js +1 -0
  54. package/dist/cjs/components/ConversationSearch/ConversationSearchInput/ConversationSearchInput.d.ts +7 -0
  55. package/dist/cjs/components/ConversationSearch/ConversationSearchInput/ConversationSearchInput.js +1 -0
  56. package/dist/cjs/components/ConversationSearch/ConversationSearchResult/ConversationSearchResult.d.ts +29 -0
  57. package/dist/cjs/components/ConversationSearch/ConversationSearchResult/ConversationSearchResult.js +1 -0
  58. package/dist/cjs/components/Icon/Icon.js +1 -1
  59. package/dist/cjs/components/Icon/config.js +1 -1
  60. package/dist/cjs/components/Icon/images/mute.svg.js +1 -0
  61. package/dist/cjs/components/Icon/type.d.ts +2 -0
  62. package/dist/cjs/components/Icon/type.js +1 -1
  63. package/dist/cjs/components/Input/Input.d.ts +5 -2
  64. package/dist/cjs/components/Input/Input.js +1 -1
  65. package/dist/{esm/components/TUIMessage/TUIMessage.d.ts → cjs/components/MessageElement/Message.d.ts} +1 -1
  66. package/dist/cjs/components/MessageElement/Message.js +1 -0
  67. package/dist/cjs/components/MessageElement/MessageAudio.js +1 -0
  68. package/dist/cjs/components/MessageElement/MessageAvatar.js +1 -0
  69. package/dist/cjs/components/MessageElement/MessageBubble.js +1 -0
  70. package/dist/cjs/components/MessageElement/MessageContext.js +1 -0
  71. package/dist/cjs/components/MessageElement/MessageCustom.js +1 -0
  72. package/dist/cjs/components/MessageElement/MessageDefault.js +1 -0
  73. package/dist/cjs/components/MessageElement/MessageName.js +1 -0
  74. package/dist/cjs/components/MessageElement/MessagePlugins.js +1 -0
  75. package/dist/cjs/components/MessageElement/MessageProgress.js +1 -0
  76. package/dist/cjs/components/MessageElement/MessageRevoke.js +1 -0
  77. package/dist/cjs/components/MessageElement/MessageStatus.js +1 -0
  78. package/dist/cjs/components/MessageElement/MessageSystem.js +1 -0
  79. package/dist/cjs/components/MessageElement/MessageText.js +1 -0
  80. package/dist/cjs/components/MessageElement/MessageTip.js +1 -0
  81. package/dist/cjs/components/MessageElement/hooks/useMessageHandler.js +1 -0
  82. package/dist/cjs/components/MessageElement/hooks/useMessageReply.js +1 -0
  83. package/dist/cjs/components/MessageInput/EmojiPicker.js +1 -0
  84. package/dist/cjs/components/MessageInput/Forward.js +1 -0
  85. package/dist/cjs/components/MessageInput/InputPluginsDefalut.js +1 -0
  86. package/dist/cjs/components/MessageInput/InputQuoteDefalut.js +1 -0
  87. package/dist/cjs/components/{TUIMessageInput/TUIMessageInput.d.ts → MessageInput/MessageInput.d.ts} +4 -4
  88. package/dist/cjs/components/MessageInput/MessageInput.js +1 -0
  89. package/dist/cjs/components/MessageInput/MessageInputDefault.js +1 -0
  90. package/dist/cjs/components/MessageInput/Transmitter.js +1 -0
  91. package/dist/cjs/components/MessageInput/hooks/useEmojiPicker.js +1 -0
  92. package/dist/cjs/components/MessageInput/hooks/useHandleForwardMessage.js +1 -0
  93. package/dist/cjs/components/MessageInput/hooks/useHandleQuoteMessage.js +1 -0
  94. package/dist/cjs/components/MessageInput/hooks/useMessageInputText.js +1 -0
  95. package/dist/cjs/components/MessageInput/hooks/useUploadPicker.js +1 -0
  96. package/dist/cjs/components/{TUIMessageList/TUIMessageList.d.ts → MessageList/MessageList.d.ts} +3 -3
  97. package/dist/cjs/components/MessageList/MessageList.js +1 -0
  98. package/dist/cjs/components/MessageList/hooks/useMessageListElement.js +1 -0
  99. package/dist/cjs/components/PlaceHolder/index.d.ts +34 -0
  100. package/dist/cjs/components/PlaceHolder/index.js +1 -0
  101. package/dist/cjs/components/Plugins/index.d.ts +5 -2
  102. package/dist/cjs/components/Profile/Profile.d.ts +10 -0
  103. package/dist/cjs/components/Profile/Profile.js +1 -1
  104. package/dist/cjs/components/Profile/ProfileDefault.js +1 -0
  105. package/dist/cjs/components/Profile/myProfile/MyProfile.js +1 -0
  106. package/dist/cjs/context/{TUIChatActionContext.d.ts → ChatActionContext.d.ts} +1 -1
  107. package/dist/cjs/context/{TUIChatStateContext.d.ts → ChatStateContext.d.ts} +6 -6
  108. package/dist/cjs/context/ComponentContext.d.ts +3 -3
  109. package/dist/cjs/context/{TUIContactContext.d.ts → ContactContext.d.ts} +4 -4
  110. package/dist/cjs/context/ConversationListContext.d.ts +22 -0
  111. package/dist/cjs/context/ConversationListContext.js +1 -0
  112. package/dist/{esm/context/TUIMessageContext.d.ts → cjs/context/MessageContext.d.ts} +1 -1
  113. package/dist/{esm/context/TUIMessageInputContext.d.ts → cjs/context/MessageInputContext.d.ts} +4 -4
  114. package/dist/cjs/hooks/useConversation.d.ts +4 -23
  115. package/dist/cjs/hooks/useConversation.js +1 -1
  116. package/dist/cjs/hooks/useLongPress.d.ts +3 -0
  117. package/dist/cjs/hooks/useLongPress.js +1 -0
  118. package/dist/cjs/hooks/useMouseHover.js +1 -0
  119. package/dist/cjs/index.css +2 -1
  120. package/dist/cjs/index.d.css +885 -407
  121. package/dist/cjs/index.d.ts +41 -29
  122. package/dist/cjs/index.js +1 -1
  123. package/dist/cjs/locales/en-US/TUIConversation.js +1 -1
  124. package/dist/cjs/locales/index.js +1 -1
  125. package/dist/cjs/locales/ja-JP/TUIConversation.js +1 -1
  126. package/dist/cjs/locales/ko-KR/TUIConversation.js +1 -1
  127. package/dist/cjs/locales/zh-CN/TUIConversation.js +1 -1
  128. package/dist/cjs/locales/zh-TW/TUIConversation.js +1 -1
  129. package/dist/esm/_virtual/index.js +1 -0
  130. package/dist/esm/components/Avatar/Avatar.d.ts +1 -1
  131. package/dist/esm/components/{TUIChat/TUIChat.d.ts → Chat/Chat.d.ts} +8 -8
  132. package/dist/esm/components/Chat/Chat.js +1 -0
  133. package/dist/esm/components/Chat/index.js +1 -0
  134. package/dist/esm/components/{TUIChatHeader/TUIChatHeader.d.ts → ChatHeader/ChatHeader.d.ts} +3 -3
  135. package/dist/esm/components/ChatHeader/ChatHeader.js +1 -0
  136. package/dist/esm/components/{TUIChatHeader/TUIChatHeaderDefault.d.ts → ChatHeader/ChatHeaderDefault.d.ts} +2 -2
  137. package/dist/esm/components/ChatHeader/ChatHeaderDefault.js +1 -0
  138. package/dist/esm/components/ChatSetting/ChatSetting.d.ts +6 -0
  139. package/dist/esm/components/ChatSetting/ChatSetting.js +1 -0
  140. package/dist/esm/components/Contact/Contact.d.ts +6 -0
  141. package/dist/esm/components/Contact/Contact.js +1 -0
  142. package/dist/esm/components/Contact/ContactInfo/ContactInfo.d.ts +10 -0
  143. package/dist/esm/components/Contact/ContactInfo/ContactInfo.js +1 -0
  144. package/dist/esm/components/Contact/ContactInfo/basicInfo.js +1 -0
  145. package/dist/esm/components/Contact/ContactInfo/blockInfo.js +1 -0
  146. package/dist/esm/components/Contact/ContactInfo/friendApplication.js +1 -0
  147. package/dist/esm/components/Contact/ContactInfo/friendInfo.js +1 -0
  148. package/dist/esm/components/Contact/ContactInfo/groupInfo.js +1 -0
  149. package/dist/esm/components/Contact/ContactInfo/hooks/useContactInfo.js +1 -0
  150. package/dist/esm/components/Contact/ContactList/ContactList.d.ts +6 -0
  151. package/dist/esm/components/Contact/ContactList/ContactList.js +1 -0
  152. package/dist/esm/components/Contact/hooks/useTUIContact.js +1 -0
  153. package/dist/esm/components/ContactSearch/ContactSearch.js +1 -0
  154. package/dist/esm/components/ContactSearch/hooks/useContactSearch.js +1 -0
  155. package/dist/esm/components/ConversationActions/ConversationActions.d.ts +52 -0
  156. package/dist/esm/components/ConversationActions/ConversationActions.js +1 -0
  157. package/dist/esm/components/ConversationCreate/ConversationCreate.d.ts +21 -0
  158. package/dist/esm/components/ConversationCreate/ConversationCreate.js +1 -1
  159. package/dist/esm/components/ConversationCreate/ConversationCreateButton.d.ts +13 -0
  160. package/dist/esm/components/ConversationCreate/ConversationCreateButton.js +1 -0
  161. package/dist/esm/components/ConversationCreate/ConversationCreateGroupDetail.d.ts +16 -0
  162. package/dist/esm/components/ConversationCreate/ConversationCreateGroupDetail.js +1 -0
  163. package/dist/esm/components/ConversationCreate/ConversationCreateSelectView.d.ts +15 -0
  164. package/dist/esm/components/ConversationCreate/ConversationCreateUserSelectList.d.ts +18 -0
  165. package/dist/esm/components/ConversationCreate/ConversationCreateUserSelectList.js +1 -1
  166. package/dist/esm/components/ConversationCreate/ConversationGroupTypeInfo.d.ts +24 -0
  167. package/dist/esm/components/ConversationCreate/ConversationGroupTypeInfo.js +1 -1
  168. package/dist/esm/components/ConversationCreate/hooks/useConversationCreate.d.ts +14 -0
  169. package/dist/esm/components/ConversationCreate/hooks/useConversationCreate.js +1 -1
  170. package/dist/esm/components/ConversationList/ConversationList.d.ts +57 -0
  171. package/dist/esm/components/ConversationList/ConversationList.js +1 -0
  172. package/dist/esm/components/ConversationList/ConversationListContent/ConversationListContent.d.ts +23 -0
  173. package/dist/esm/components/ConversationList/ConversationListContent/ConversationListContent.js +1 -0
  174. package/dist/esm/components/ConversationList/ConversationListHeader/ConversationListHeader.d.ts +15 -0
  175. package/dist/esm/components/ConversationList/ConversationListHeader/ConversationListHeader.js +1 -0
  176. package/dist/esm/components/ConversationPreview/ConversationPreview.d.ts +39 -27
  177. package/dist/esm/components/ConversationPreview/ConversationPreview.js +1 -1
  178. package/dist/esm/components/ConversationPreview/utils.js +1 -1
  179. package/dist/esm/components/ConversationSearch/ConversationSearch.d.ts +39 -0
  180. package/dist/esm/components/ConversationSearch/ConversationSearch.js +1 -0
  181. package/dist/esm/components/ConversationSearch/ConversationSearchInput/ConversationSearchInput.d.ts +7 -0
  182. package/dist/esm/components/ConversationSearch/ConversationSearchInput/ConversationSearchInput.js +1 -0
  183. package/dist/esm/components/ConversationSearch/ConversationSearchResult/ConversationSearchResult.d.ts +29 -0
  184. package/dist/esm/components/ConversationSearch/ConversationSearchResult/ConversationSearchResult.js +1 -0
  185. package/dist/esm/components/Icon/Icon.js +1 -1
  186. package/dist/esm/components/Icon/config.js +1 -1
  187. package/dist/esm/components/Icon/images/mute.svg.js +1 -0
  188. package/dist/esm/components/Icon/type.d.ts +2 -0
  189. package/dist/esm/components/Icon/type.js +1 -1
  190. package/dist/esm/components/Input/Input.d.ts +5 -2
  191. package/dist/esm/components/Input/Input.js +1 -1
  192. package/dist/{cjs/components/TUIMessage/TUIMessage.d.ts → esm/components/MessageElement/Message.d.ts} +1 -1
  193. package/dist/esm/components/MessageElement/Message.js +1 -0
  194. package/dist/esm/components/MessageElement/MessageAudio.js +1 -0
  195. package/dist/esm/components/MessageElement/MessageAvatar.js +1 -0
  196. package/dist/esm/components/MessageElement/MessageBubble.js +1 -0
  197. package/dist/esm/components/MessageElement/MessageContext.js +1 -0
  198. package/dist/esm/components/MessageElement/MessageCustom.js +1 -0
  199. package/dist/esm/components/MessageElement/MessageDefault.js +1 -0
  200. package/dist/esm/components/MessageElement/MessageName.js +1 -0
  201. package/dist/esm/components/MessageElement/MessagePlugins.js +1 -0
  202. package/dist/esm/components/MessageElement/MessageProgress.js +1 -0
  203. package/dist/esm/components/MessageElement/MessageRevoke.js +1 -0
  204. package/dist/esm/components/MessageElement/MessageStatus.js +1 -0
  205. package/dist/esm/components/MessageElement/MessageSystem.js +1 -0
  206. package/dist/esm/components/MessageElement/MessageText.js +1 -0
  207. package/dist/esm/components/MessageElement/MessageTip.js +1 -0
  208. package/dist/esm/components/MessageElement/hooks/useMessageHandler.js +1 -0
  209. package/dist/esm/components/MessageElement/hooks/useMessageReply.js +1 -0
  210. package/dist/esm/components/MessageInput/EmojiPicker.js +1 -0
  211. package/dist/esm/components/MessageInput/Forward.js +1 -0
  212. package/dist/esm/components/MessageInput/InputPluginsDefalut.js +1 -0
  213. package/dist/esm/components/MessageInput/InputQuoteDefalut.js +1 -0
  214. package/dist/esm/components/{TUIMessageInput/TUIMessageInput.d.ts → MessageInput/MessageInput.d.ts} +4 -4
  215. package/dist/esm/components/MessageInput/MessageInput.js +1 -0
  216. package/dist/esm/components/MessageInput/MessageInputDefault.js +1 -0
  217. package/dist/esm/components/MessageInput/Transmitter.js +1 -0
  218. package/dist/esm/components/MessageInput/hooks/useEmojiPicker.js +1 -0
  219. package/dist/esm/components/MessageInput/hooks/useHandleForwardMessage.js +1 -0
  220. package/dist/esm/components/MessageInput/hooks/useHandleQuoteMessage.js +1 -0
  221. package/dist/esm/components/MessageInput/hooks/useMessageInputText.js +1 -0
  222. package/dist/esm/components/MessageInput/hooks/useUploadPicker.js +1 -0
  223. package/dist/esm/components/{TUIMessageList/TUIMessageList.d.ts → MessageList/MessageList.d.ts} +3 -3
  224. package/dist/esm/components/MessageList/MessageList.js +1 -0
  225. package/dist/esm/components/MessageList/hooks/useMessageListElement.js +1 -0
  226. package/dist/esm/components/PlaceHolder/index.d.ts +34 -0
  227. package/dist/esm/components/PlaceHolder/index.js +1 -0
  228. package/dist/esm/components/Plugins/index.d.ts +5 -2
  229. package/dist/esm/components/Profile/Profile.d.ts +10 -0
  230. package/dist/esm/components/Profile/Profile.js +1 -1
  231. package/dist/esm/components/Profile/ProfileDefault.js +1 -0
  232. package/dist/esm/components/Profile/myProfile/MyProfile.js +1 -0
  233. package/dist/esm/context/{TUIChatActionContext.d.ts → ChatActionContext.d.ts} +1 -1
  234. package/dist/esm/context/{TUIChatStateContext.d.ts → ChatStateContext.d.ts} +6 -6
  235. package/dist/esm/context/ComponentContext.d.ts +3 -3
  236. package/dist/esm/context/{TUIContactContext.d.ts → ContactContext.d.ts} +4 -4
  237. package/dist/esm/context/ConversationListContext.d.ts +22 -0
  238. package/dist/esm/context/ConversationListContext.js +1 -0
  239. package/dist/{cjs/context/TUIMessageContext.d.ts → esm/context/MessageContext.d.ts} +1 -1
  240. package/dist/{cjs/context/TUIMessageInputContext.d.ts → esm/context/MessageInputContext.d.ts} +4 -4
  241. package/dist/esm/hooks/useConversation.d.ts +4 -23
  242. package/dist/esm/hooks/useConversation.js +1 -1
  243. package/dist/esm/hooks/useLongPress.d.ts +3 -0
  244. package/dist/esm/hooks/useLongPress.js +1 -0
  245. package/dist/esm/hooks/useMouseHover.js +1 -0
  246. package/dist/esm/index.css +2 -1
  247. package/dist/esm/index.d.css +885 -407
  248. package/dist/esm/index.d.ts +41 -29
  249. package/dist/esm/index.js +1 -1
  250. package/dist/esm/locales/en-US/TUIConversation.js +1 -1
  251. package/dist/esm/locales/index.js +1 -1
  252. package/dist/esm/locales/ja-JP/TUIConversation.js +1 -1
  253. package/dist/esm/locales/ko-KR/TUIConversation.js +1 -1
  254. package/dist/esm/locales/zh-CN/TUIConversation.js +1 -1
  255. package/dist/esm/locales/zh-TW/TUIConversation.js +1 -1
  256. package/package.json +2 -1
  257. package/src/components/Avatar/Avatar.tsx +33 -31
  258. package/src/components/{TUIChat/TUIChat.tsx → Chat/Chat.tsx} +15 -15
  259. package/src/components/{TUIChat → Chat}/hooks/useHandleMessage.tsx +1 -1
  260. package/src/components/{TUIChat → Chat}/hooks/useHandleMessageList.tsx +1 -1
  261. package/src/components/{TUIChat → Chat}/index.ts +1 -1
  262. package/src/components/{TUIChatHeader/TUIChatHeader.tsx → ChatHeader/ChatHeader.tsx} +5 -5
  263. package/src/components/{TUIChatHeader/TUIChatHeaderDefault.tsx → ChatHeader/ChatHeaderDefault.tsx} +2 -2
  264. package/src/components/ChatHeader/index.ts +2 -0
  265. package/src/components/{TUIChatHeader → ChatHeader}/styles/layout.scss +0 -8
  266. package/src/components/{TUIManage/TUIManage.tsx → ChatSetting/ChatSetting.tsx} +17 -20
  267. package/src/components/ChatSetting/index.ts +1 -0
  268. package/src/components/{TUIManage → ChatSetting}/styles/index.scss +4 -2
  269. package/src/components/Checkbox/index.tsx +9 -9
  270. package/src/components/{TUIContact/TUIContact.tsx → Contact/Contact.tsx} +35 -35
  271. package/src/components/{TUIContact/TUIContactInfo/TUIContactInfo.tsx → Contact/ContactInfo/ContactInfo.tsx} +4 -4
  272. package/src/components/{TUIContact/TUIContactList/TUIContactList.tsx → Contact/ContactList/ContactList.tsx} +3 -3
  273. package/src/components/Contact/index.ts +3 -0
  274. package/src/components/{TUIContactSearch/TUIContactSearch.tsx → ContactSearch/ContactSearch.tsx} +8 -7
  275. package/src/components/ConversationActions/ConversationActions.scss +45 -0
  276. package/src/components/ConversationActions/ConversationActions.tsx +172 -0
  277. package/src/components/ConversationActions/index.ts +1 -0
  278. package/src/components/ConversationCreate/ConversationCreate.tsx +104 -49
  279. package/src/components/ConversationCreate/ConversationCreateButton.tsx +46 -0
  280. package/src/components/ConversationCreate/ConversationCreateGroupDetail.tsx +179 -0
  281. package/src/components/ConversationCreate/ConversationCreateSelectView.tsx +7 -7
  282. package/src/components/ConversationCreate/ConversationCreateUserSelectList.tsx +31 -29
  283. package/src/components/ConversationCreate/ConversationGroupTypeInfo.tsx +19 -19
  284. package/src/components/ConversationCreate/hooks/useConversationCreate.tsx +36 -29
  285. package/src/components/ConversationCreate/index.ts +2 -1
  286. package/src/components/ConversationCreate/styles/{ConversationCreatGroupDetail.scss → ConversationCreateGroupDetail.scss} +6 -1
  287. package/src/components/ConversationCreate/styles/conversationCreateButton.scss +5 -0
  288. package/src/components/ConversationCreate/styles/index.scss +34 -2
  289. package/src/components/ConversationList/ConversationList.scss +29 -0
  290. package/src/components/ConversationList/ConversationList.tsx +155 -0
  291. package/src/components/ConversationList/ConversationListContent/ConversationListContent.scss +16 -0
  292. package/src/components/ConversationList/ConversationListContent/ConversationListContent.tsx +63 -0
  293. package/src/components/ConversationList/ConversationListContent/index.ts +1 -0
  294. package/src/components/ConversationList/ConversationListHeader/ConversationListHeader.scss +28 -0
  295. package/src/components/ConversationList/ConversationListHeader/ConversationListHeader.tsx +43 -0
  296. package/src/components/ConversationList/ConversationListHeader/index.ts +1 -0
  297. package/src/components/ConversationList/index.ts +3 -0
  298. package/src/components/ConversationPreview/ConversationPreview.scss +137 -0
  299. package/src/components/ConversationPreview/ConversationPreview.tsx +245 -63
  300. package/src/components/ConversationPreview/index.ts +0 -1
  301. package/src/components/ConversationPreview/utils.tsx +78 -60
  302. package/src/components/ConversationSearch/ConversationSearch.scss +22 -0
  303. package/src/components/ConversationSearch/ConversationSearch.tsx +125 -0
  304. package/src/components/ConversationSearch/ConversationSearchInput/ConversationSearchInput.scss +13 -0
  305. package/src/components/ConversationSearch/ConversationSearchInput/ConversationSearchInput.tsx +42 -0
  306. package/src/components/ConversationSearch/ConversationSearchInput/index.ts +1 -0
  307. package/src/components/ConversationSearch/ConversationSearchResult/ConversationSearchResult.scss +15 -0
  308. package/src/components/ConversationSearch/ConversationSearchResult/ConversationSearchResult.tsx +72 -0
  309. package/src/components/ConversationSearch/ConversationSearchResult/index.ts +1 -0
  310. package/src/components/ConversationSearch/index.ts +3 -2
  311. package/src/components/EmptyStateIndicator/EmptyStateIndicator.tsx +2 -3
  312. package/src/components/Icon/Icon.tsx +8 -8
  313. package/src/components/Icon/config.ts +9 -0
  314. package/src/components/Icon/images/mute.svg +8 -0
  315. package/src/components/Icon/styles/index.scss +41 -6
  316. package/src/components/Icon/type.ts +2 -0
  317. package/src/components/Input/Input.tsx +24 -23
  318. package/src/components/{TUIMessage/TUIMessage.tsx → MessageElement/Message.tsx} +33 -33
  319. package/src/components/{TUIMessage → MessageElement}/MessageCustom.tsx +1 -1
  320. package/src/components/{TUIMessage/TUIMessageDefault.tsx → MessageElement/MessageDefault.tsx} +24 -24
  321. package/src/components/{TUIMessage → MessageElement}/MessagePlugins.tsx +18 -18
  322. package/src/components/{TUIMessage → MessageElement}/index.ts +1 -1
  323. package/src/components/{TUIMessage → MessageElement}/styles/layout.scss +1 -1
  324. package/src/components/{TUIMessageInput → MessageInput}/EmojiPicker.tsx +2 -2
  325. package/src/components/{TUIMessageInput/TUIForward.tsx → MessageInput/Forward.tsx} +41 -36
  326. package/src/components/{TUIMessageInput → MessageInput}/InputPluginsDefalut.tsx +2 -2
  327. package/src/components/{TUIMessageInput → MessageInput}/InputQuoteDefalut.tsx +1 -1
  328. package/src/components/{TUIMessageInput/TUIMessageInput.tsx → MessageInput/MessageInput.tsx} +25 -27
  329. package/src/components/{TUIMessageInput/TUIMessageInputDefault.tsx → MessageInput/MessageInputDefault.tsx} +14 -14
  330. package/src/components/{TUIMessageInput → MessageInput}/Transmitter.tsx +2 -2
  331. package/src/components/{TUIMessageInput → MessageInput}/hooks/useEmojiPicker.tsx +1 -1
  332. package/src/components/{TUIMessageInput → MessageInput}/hooks/useMessageInputState.tsx +1 -1
  333. package/src/components/{TUIMessageInput → MessageInput}/hooks/useMessageInputText.tsx +2 -2
  334. package/src/components/MessageInput/index.ts +3 -0
  335. package/src/components/{TUIMessageInput → MessageInput}/styles/color.scss +1 -1
  336. package/src/components/{TUIMessageList/TUIMessageList.tsx → MessageList/MessageList.tsx} +5 -5
  337. package/src/components/{TUIMessageList → MessageList}/hooks/useMessageListElement.tsx +1 -1
  338. package/src/components/MessageList/index.ts +1 -0
  339. package/src/components/PlaceHolder/index.tsx +79 -0
  340. package/src/components/PlaceHolder/styles/index.scss +36 -0
  341. package/src/components/Plugins/index.tsx +49 -45
  342. package/src/components/Profile/Profile.tsx +46 -21
  343. package/src/components/Profile/index.ts +2 -1
  344. package/src/components/Profile/myProfile/MyProfile.tsx +25 -0
  345. package/src/components/Profile/myProfile/index.ts +1 -0
  346. package/src/components/Profile/myProfile/styles/index.scss +32 -0
  347. package/src/components/Profile/styles/index.scss +2 -32
  348. package/src/components/{TUIProfile → Profile}/styles/layout.scss +1 -0
  349. package/src/components/index.ts +13 -11
  350. package/src/context/{TUIChatActionContext.tsx → ChatActionContext.tsx} +1 -1
  351. package/src/context/ChatStateContext.tsx +49 -0
  352. package/src/context/ComponentContext.tsx +13 -13
  353. package/src/context/{TUIContactContext.tsx → ContactContext.tsx} +10 -11
  354. package/src/context/ConversationListContext.tsx +113 -0
  355. package/src/context/LanguageContext.tsx +1 -0
  356. package/src/context/MessageContext.tsx +55 -0
  357. package/src/context/MessageInputContext.tsx +54 -0
  358. package/src/context/index.ts +6 -5
  359. package/src/hooks/index.ts +2 -0
  360. package/src/hooks/useConversation.tsx +26 -74
  361. package/src/hooks/useLongPress.tsx +117 -0
  362. package/src/hooks/useMouseHover.tsx +21 -0
  363. package/src/locales/en-US/TUIConversation.ts +4 -0
  364. package/src/locales/index.ts +10 -0
  365. package/src/locales/ja-JP/TUIConversation.ts +4 -0
  366. package/src/locales/ko-KR/TUIConversation.ts +4 -0
  367. package/src/locales/zh-CN/TUIConversation.ts +4 -0
  368. package/src/locales/zh-TW/TUIConversation.ts +4 -0
  369. package/dist/cjs/components/ConversationCreate/ConversationCreatGroupDetail.js +0 -1
  370. package/dist/cjs/components/ConversationPreview/ConversationListContainer.d.ts +0 -10
  371. package/dist/cjs/components/ConversationPreview/ConversationListContainer.js +0 -1
  372. package/dist/cjs/components/ConversationPreview/ConversationPreviewContent.d.ts +0 -10
  373. package/dist/cjs/components/ConversationPreview/ConversationPreviewContent.js +0 -1
  374. package/dist/cjs/components/ConversationSearch/ConversationSearchInput.d.ts +0 -6
  375. package/dist/cjs/components/ConversationSearch/ConversationSearchInput.js +0 -1
  376. package/dist/cjs/components/ConversationSearch/ConversationSearchResult.d.ts +0 -12
  377. package/dist/cjs/components/ConversationSearch/ConversationSearchResult.js +0 -1
  378. package/dist/cjs/components/TUIChat/TUIChat.js +0 -1
  379. package/dist/cjs/components/TUIChat/index.js +0 -1
  380. package/dist/cjs/components/TUIChatHeader/TUIChatHeader.js +0 -1
  381. package/dist/cjs/components/TUIChatHeader/TUIChatHeaderDefault.js +0 -1
  382. package/dist/cjs/components/TUIContact/TUIContact.d.ts +0 -6
  383. package/dist/cjs/components/TUIContact/TUIContact.js +0 -1
  384. package/dist/cjs/components/TUIContact/TUIContactInfo/TUIContactInfo.d.ts +0 -10
  385. package/dist/cjs/components/TUIContact/TUIContactInfo/TUIContactInfo.js +0 -1
  386. package/dist/cjs/components/TUIContact/TUIContactInfo/basicInfo.js +0 -1
  387. package/dist/cjs/components/TUIContact/TUIContactInfo/blockInfo.js +0 -1
  388. package/dist/cjs/components/TUIContact/TUIContactInfo/friendApplication.js +0 -1
  389. package/dist/cjs/components/TUIContact/TUIContactInfo/friendInfo.js +0 -1
  390. package/dist/cjs/components/TUIContact/TUIContactInfo/groupInfo.js +0 -1
  391. package/dist/cjs/components/TUIContact/TUIContactInfo/hooks/useContactInfo.js +0 -1
  392. package/dist/cjs/components/TUIContact/TUIContactList/TUIContactList.d.ts +0 -6
  393. package/dist/cjs/components/TUIContact/TUIContactList/TUIContactList.js +0 -1
  394. package/dist/cjs/components/TUIContact/hooks/useTUIContact.js +0 -1
  395. package/dist/cjs/components/TUIContactSearch/TUIContactSearch.js +0 -1
  396. package/dist/cjs/components/TUIContactSearch/hooks/useContactSearch.js +0 -1
  397. package/dist/cjs/components/TUIConversation/TUIConversation.d.ts +0 -12
  398. package/dist/cjs/components/TUIConversation/TUIConversation.js +0 -1
  399. package/dist/cjs/components/TUIConversationList/TUIConversationList.d.ts +0 -19
  400. package/dist/cjs/components/TUIConversationList/TUIConversationList.js +0 -1
  401. package/dist/cjs/components/TUIConversationList/hooks/useConversationList.js +0 -1
  402. package/dist/cjs/components/TUIConversationList/hooks/useConversationUpdate.js +0 -1
  403. package/dist/cjs/components/TUIManage/TUIManage.d.ts +0 -6
  404. package/dist/cjs/components/TUIManage/TUIManage.js +0 -1
  405. package/dist/cjs/components/TUIMessage/MessageAudio.js +0 -1
  406. package/dist/cjs/components/TUIMessage/MessageAvatar.js +0 -1
  407. package/dist/cjs/components/TUIMessage/MessageBubble.js +0 -1
  408. package/dist/cjs/components/TUIMessage/MessageContext.js +0 -1
  409. package/dist/cjs/components/TUIMessage/MessageCustom.js +0 -1
  410. package/dist/cjs/components/TUIMessage/MessageName.js +0 -1
  411. package/dist/cjs/components/TUIMessage/MessagePlugins.js +0 -1
  412. package/dist/cjs/components/TUIMessage/MessageProgress.js +0 -1
  413. package/dist/cjs/components/TUIMessage/MessageRevoke.js +0 -1
  414. package/dist/cjs/components/TUIMessage/MessageStatus.js +0 -1
  415. package/dist/cjs/components/TUIMessage/MessageSystem.js +0 -1
  416. package/dist/cjs/components/TUIMessage/MessageText.js +0 -1
  417. package/dist/cjs/components/TUIMessage/MessageTip.js +0 -1
  418. package/dist/cjs/components/TUIMessage/TUIMessage.js +0 -1
  419. package/dist/cjs/components/TUIMessage/TUIMessageDefault.js +0 -1
  420. package/dist/cjs/components/TUIMessage/hooks/useMessageHandler.js +0 -1
  421. package/dist/cjs/components/TUIMessage/hooks/useMessageReply.js +0 -1
  422. package/dist/cjs/components/TUIMessageInput/EmojiPicker.js +0 -1
  423. package/dist/cjs/components/TUIMessageInput/InputPluginsDefalut.js +0 -1
  424. package/dist/cjs/components/TUIMessageInput/InputQuoteDefalut.js +0 -1
  425. package/dist/cjs/components/TUIMessageInput/TUIForward.js +0 -1
  426. package/dist/cjs/components/TUIMessageInput/TUIMessageInput.js +0 -1
  427. package/dist/cjs/components/TUIMessageInput/TUIMessageInputDefault.js +0 -1
  428. package/dist/cjs/components/TUIMessageInput/Transmitter.js +0 -1
  429. package/dist/cjs/components/TUIMessageInput/hooks/useEmojiPicker.js +0 -1
  430. package/dist/cjs/components/TUIMessageInput/hooks/useHandleForwardMessage.js +0 -1
  431. package/dist/cjs/components/TUIMessageInput/hooks/useHandleQuoteMessage.js +0 -1
  432. package/dist/cjs/components/TUIMessageInput/hooks/useMessageInputText.js +0 -1
  433. package/dist/cjs/components/TUIMessageInput/hooks/useUploadPicker.js +0 -1
  434. package/dist/cjs/components/TUIMessageList/TUIMessageList.js +0 -1
  435. package/dist/cjs/components/TUIMessageList/hooks/useMessageListElement.js +0 -1
  436. package/dist/cjs/components/TUIProfile/TUIProfile.d.ts +0 -10
  437. package/dist/cjs/components/TUIProfile/TUIProfile.js +0 -1
  438. package/dist/cjs/components/TUIProfile/TUIProfileDefault.js +0 -1
  439. package/dist/cjs/context/TUIConversationContext.js +0 -1
  440. package/dist/esm/components/ConversationCreate/ConversationCreatGroupDetail.js +0 -1
  441. package/dist/esm/components/ConversationPreview/ConversationListContainer.d.ts +0 -10
  442. package/dist/esm/components/ConversationPreview/ConversationListContainer.js +0 -1
  443. package/dist/esm/components/ConversationPreview/ConversationPreviewContent.d.ts +0 -10
  444. package/dist/esm/components/ConversationPreview/ConversationPreviewContent.js +0 -1
  445. package/dist/esm/components/ConversationSearch/ConversationSearchInput.d.ts +0 -6
  446. package/dist/esm/components/ConversationSearch/ConversationSearchInput.js +0 -1
  447. package/dist/esm/components/ConversationSearch/ConversationSearchResult.d.ts +0 -12
  448. package/dist/esm/components/ConversationSearch/ConversationSearchResult.js +0 -1
  449. package/dist/esm/components/TUIChat/TUIChat.js +0 -1
  450. package/dist/esm/components/TUIChat/index.js +0 -1
  451. package/dist/esm/components/TUIChatHeader/TUIChatHeader.js +0 -1
  452. package/dist/esm/components/TUIChatHeader/TUIChatHeaderDefault.js +0 -1
  453. package/dist/esm/components/TUIContact/TUIContact.d.ts +0 -6
  454. package/dist/esm/components/TUIContact/TUIContact.js +0 -1
  455. package/dist/esm/components/TUIContact/TUIContactInfo/TUIContactInfo.d.ts +0 -10
  456. package/dist/esm/components/TUIContact/TUIContactInfo/TUIContactInfo.js +0 -1
  457. package/dist/esm/components/TUIContact/TUIContactInfo/basicInfo.js +0 -1
  458. package/dist/esm/components/TUIContact/TUIContactInfo/blockInfo.js +0 -1
  459. package/dist/esm/components/TUIContact/TUIContactInfo/friendApplication.js +0 -1
  460. package/dist/esm/components/TUIContact/TUIContactInfo/friendInfo.js +0 -1
  461. package/dist/esm/components/TUIContact/TUIContactInfo/groupInfo.js +0 -1
  462. package/dist/esm/components/TUIContact/TUIContactInfo/hooks/useContactInfo.js +0 -1
  463. package/dist/esm/components/TUIContact/TUIContactList/TUIContactList.d.ts +0 -6
  464. package/dist/esm/components/TUIContact/TUIContactList/TUIContactList.js +0 -1
  465. package/dist/esm/components/TUIContact/hooks/useTUIContact.js +0 -1
  466. package/dist/esm/components/TUIContactSearch/TUIContactSearch.js +0 -1
  467. package/dist/esm/components/TUIContactSearch/hooks/useContactSearch.js +0 -1
  468. package/dist/esm/components/TUIConversation/TUIConversation.d.ts +0 -12
  469. package/dist/esm/components/TUIConversation/TUIConversation.js +0 -1
  470. package/dist/esm/components/TUIConversationList/TUIConversationList.d.ts +0 -19
  471. package/dist/esm/components/TUIConversationList/TUIConversationList.js +0 -1
  472. package/dist/esm/components/TUIConversationList/hooks/useConversationList.js +0 -1
  473. package/dist/esm/components/TUIConversationList/hooks/useConversationUpdate.js +0 -1
  474. package/dist/esm/components/TUIManage/TUIManage.d.ts +0 -6
  475. package/dist/esm/components/TUIManage/TUIManage.js +0 -1
  476. package/dist/esm/components/TUIMessage/MessageAudio.js +0 -1
  477. package/dist/esm/components/TUIMessage/MessageAvatar.js +0 -1
  478. package/dist/esm/components/TUIMessage/MessageBubble.js +0 -1
  479. package/dist/esm/components/TUIMessage/MessageContext.js +0 -1
  480. package/dist/esm/components/TUIMessage/MessageCustom.js +0 -1
  481. package/dist/esm/components/TUIMessage/MessageName.js +0 -1
  482. package/dist/esm/components/TUIMessage/MessagePlugins.js +0 -1
  483. package/dist/esm/components/TUIMessage/MessageProgress.js +0 -1
  484. package/dist/esm/components/TUIMessage/MessageRevoke.js +0 -1
  485. package/dist/esm/components/TUIMessage/MessageStatus.js +0 -1
  486. package/dist/esm/components/TUIMessage/MessageSystem.js +0 -1
  487. package/dist/esm/components/TUIMessage/MessageText.js +0 -1
  488. package/dist/esm/components/TUIMessage/MessageTip.js +0 -1
  489. package/dist/esm/components/TUIMessage/TUIMessage.js +0 -1
  490. package/dist/esm/components/TUIMessage/TUIMessageDefault.js +0 -1
  491. package/dist/esm/components/TUIMessage/hooks/useMessageHandler.js +0 -1
  492. package/dist/esm/components/TUIMessage/hooks/useMessageReply.js +0 -1
  493. package/dist/esm/components/TUIMessageInput/EmojiPicker.js +0 -1
  494. package/dist/esm/components/TUIMessageInput/InputPluginsDefalut.js +0 -1
  495. package/dist/esm/components/TUIMessageInput/InputQuoteDefalut.js +0 -1
  496. package/dist/esm/components/TUIMessageInput/TUIForward.js +0 -1
  497. package/dist/esm/components/TUIMessageInput/TUIMessageInput.js +0 -1
  498. package/dist/esm/components/TUIMessageInput/TUIMessageInputDefault.js +0 -1
  499. package/dist/esm/components/TUIMessageInput/Transmitter.js +0 -1
  500. package/dist/esm/components/TUIMessageInput/hooks/useEmojiPicker.js +0 -1
  501. package/dist/esm/components/TUIMessageInput/hooks/useHandleForwardMessage.js +0 -1
  502. package/dist/esm/components/TUIMessageInput/hooks/useHandleQuoteMessage.js +0 -1
  503. package/dist/esm/components/TUIMessageInput/hooks/useMessageInputText.js +0 -1
  504. package/dist/esm/components/TUIMessageInput/hooks/useUploadPicker.js +0 -1
  505. package/dist/esm/components/TUIMessageList/TUIMessageList.js +0 -1
  506. package/dist/esm/components/TUIMessageList/hooks/useMessageListElement.js +0 -1
  507. package/dist/esm/components/TUIProfile/TUIProfile.d.ts +0 -10
  508. package/dist/esm/components/TUIProfile/TUIProfile.js +0 -1
  509. package/dist/esm/components/TUIProfile/TUIProfileDefault.js +0 -1
  510. package/dist/esm/context/TUIConversationContext.js +0 -1
  511. package/src/components/ConversationCreate/ConversationCreatGroupDetail.tsx +0 -170
  512. package/src/components/ConversationPreview/ConversationListContainer.tsx +0 -20
  513. package/src/components/ConversationPreview/ConversationPreviewContent.tsx +0 -191
  514. package/src/components/ConversationPreview/styles/index.scss +0 -171
  515. package/src/components/ConversationSearch/ConversationSearchInput.tsx +0 -27
  516. package/src/components/ConversationSearch/ConversationSearchResult.tsx +0 -39
  517. package/src/components/ConversationSearch/styles/index.scss +0 -20
  518. package/src/components/TUIChatHeader/index.ts +0 -2
  519. package/src/components/TUIContact/index.ts +0 -3
  520. package/src/components/TUIConversation/TUIConversation.tsx +0 -46
  521. package/src/components/TUIConversation/index.ts +0 -1
  522. package/src/components/TUIConversationList/TUIConversationList.tsx +0 -178
  523. package/src/components/TUIConversationList/hooks/useConversationList.tsx +0 -42
  524. package/src/components/TUIConversationList/hooks/useConversationUpdate.tsx +0 -38
  525. package/src/components/TUIConversationList/index.scss +0 -58
  526. package/src/components/TUIConversationList/index.ts +0 -2
  527. package/src/components/TUIManage/index.ts +0 -1
  528. package/src/components/TUIMessageInput/index.ts +0 -3
  529. package/src/components/TUIMessageList/index.ts +0 -1
  530. package/src/components/TUIProfile/TUIProfile.tsx +0 -50
  531. package/src/components/TUIProfile/index.ts +0 -2
  532. package/src/components/TUIProfile/styles/index.scss +0 -2
  533. package/src/context/TUIChatStateContext.tsx +0 -50
  534. package/src/context/TUIConversationContext.tsx +0 -29
  535. package/src/context/TUIMessageContext.tsx +0 -56
  536. package/src/context/TUIMessageInputContext.tsx +0 -55
  537. /package/dist/cjs/components/{TUIChat/TUIChatState.js → Chat/ChatState.js} +0 -0
  538. /package/dist/cjs/components/{TUIChat → Chat}/hooks/useCreateTUIChatStateContext.js +0 -0
  539. /package/dist/cjs/components/{TUIChat → Chat}/hooks/useHandleMessage.d.ts +0 -0
  540. /package/dist/cjs/components/{TUIChat → Chat}/hooks/useHandleMessage.js +0 -0
  541. /package/dist/cjs/components/{TUIChat → Chat}/hooks/useHandleMessageList.js +0 -0
  542. /package/dist/cjs/components/{TUIChat → Chat}/server.js +0 -0
  543. /package/dist/cjs/components/{TUIChat → Chat}/utils.js +0 -0
  544. /package/dist/cjs/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/addFriendInfo.js +0 -0
  545. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageContext.d.ts +0 -0
  546. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageFace.js +0 -0
  547. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageFile.js +0 -0
  548. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageImage.js +0 -0
  549. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageLocation.js +0 -0
  550. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageMerger.js +0 -0
  551. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessagePlugins.d.ts +0 -0
  552. /package/dist/cjs/components/{TUIMessage → MessageElement}/MessageVideo.js +0 -0
  553. /package/dist/cjs/components/{TUIMessage → MessageElement}/hooks/useMessageContextHandler.js +0 -0
  554. /package/dist/cjs/components/{TUIMessage → MessageElement}/hooks/useMessagePluginElement.js +0 -0
  555. /package/dist/cjs/components/{TUIMessage → MessageElement}/utils/decodeText.js +0 -0
  556. /package/dist/cjs/components/{TUIMessage → MessageElement}/utils/emojiMap.js +0 -0
  557. /package/dist/cjs/components/{TUIMessage → MessageElement}/utils/index.js +0 -0
  558. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/InputPluginsDefalut.d.ts +0 -0
  559. /package/dist/cjs/components/{TUIMessageInput/TUIMessageInputDefault.d.ts → MessageInput/MessageInputDefault.d.ts} +0 -0
  560. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/hooks/useCreateMessageInputContext.js +0 -0
  561. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/hooks/useEmojiPicker.d.ts +0 -0
  562. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/hooks/useMessageInputState.d.ts +0 -0
  563. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/hooks/useMessageInputState.js +0 -0
  564. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/hooks/useUploadElement.js +0 -0
  565. /package/dist/cjs/components/{TUIMessageInput → MessageInput}/hooks/useUploadPicker.d.ts +0 -0
  566. /package/dist/cjs/components/{TUIProfile/TUIProfileDefault.d.ts → Profile/ProfileDefault.d.ts} +0 -0
  567. /package/dist/cjs/components/{TUIProfile → Profile}/hooks/useMyProfile.js +0 -0
  568. /package/dist/cjs/context/{TUIChatActionContext.js → ChatActionContext.js} +0 -0
  569. /package/dist/cjs/context/{TUIChatStateContext.js → ChatStateContext.js} +0 -0
  570. /package/dist/cjs/context/{TUIContactContext.js → ContactContext.js} +0 -0
  571. /package/dist/cjs/context/{TUIMessageContext.js → MessageContext.js} +0 -0
  572. /package/dist/cjs/context/{TUIMessageInputContext.js → MessageInputContext.js} +0 -0
  573. /package/dist/esm/components/{TUIChat/TUIChatState.js → Chat/ChatState.js} +0 -0
  574. /package/dist/esm/components/{TUIChat → Chat}/hooks/useCreateTUIChatStateContext.js +0 -0
  575. /package/dist/esm/components/{TUIChat → Chat}/hooks/useHandleMessage.d.ts +0 -0
  576. /package/dist/esm/components/{TUIChat → Chat}/hooks/useHandleMessage.js +0 -0
  577. /package/dist/esm/components/{TUIChat → Chat}/hooks/useHandleMessageList.js +0 -0
  578. /package/dist/esm/components/{TUIChat → Chat}/server.js +0 -0
  579. /package/dist/esm/components/{TUIChat → Chat}/utils.js +0 -0
  580. /package/dist/esm/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/addFriendInfo.js +0 -0
  581. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageContext.d.ts +0 -0
  582. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageFace.js +0 -0
  583. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageFile.js +0 -0
  584. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageImage.js +0 -0
  585. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageLocation.js +0 -0
  586. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageMerger.js +0 -0
  587. /package/dist/esm/components/{TUIMessage → MessageElement}/MessagePlugins.d.ts +0 -0
  588. /package/dist/esm/components/{TUIMessage → MessageElement}/MessageVideo.js +0 -0
  589. /package/dist/esm/components/{TUIMessage → MessageElement}/hooks/useMessageContextHandler.js +0 -0
  590. /package/dist/esm/components/{TUIMessage → MessageElement}/hooks/useMessagePluginElement.js +0 -0
  591. /package/dist/esm/components/{TUIMessage → MessageElement}/utils/decodeText.js +0 -0
  592. /package/dist/esm/components/{TUIMessage → MessageElement}/utils/emojiMap.js +0 -0
  593. /package/dist/esm/components/{TUIMessage → MessageElement}/utils/index.js +0 -0
  594. /package/dist/esm/components/{TUIMessageInput → MessageInput}/InputPluginsDefalut.d.ts +0 -0
  595. /package/dist/esm/components/{TUIMessageInput/TUIMessageInputDefault.d.ts → MessageInput/MessageInputDefault.d.ts} +0 -0
  596. /package/dist/esm/components/{TUIMessageInput → MessageInput}/hooks/useCreateMessageInputContext.js +0 -0
  597. /package/dist/esm/components/{TUIMessageInput → MessageInput}/hooks/useEmojiPicker.d.ts +0 -0
  598. /package/dist/esm/components/{TUIMessageInput → MessageInput}/hooks/useMessageInputState.d.ts +0 -0
  599. /package/dist/esm/components/{TUIMessageInput → MessageInput}/hooks/useMessageInputState.js +0 -0
  600. /package/dist/esm/components/{TUIMessageInput → MessageInput}/hooks/useUploadElement.js +0 -0
  601. /package/dist/esm/components/{TUIMessageInput → MessageInput}/hooks/useUploadPicker.d.ts +0 -0
  602. /package/dist/esm/components/{TUIProfile/TUIProfileDefault.d.ts → Profile/ProfileDefault.d.ts} +0 -0
  603. /package/dist/esm/components/{TUIProfile → Profile}/hooks/useMyProfile.js +0 -0
  604. /package/dist/esm/context/{TUIChatActionContext.js → ChatActionContext.js} +0 -0
  605. /package/dist/esm/context/{TUIChatStateContext.js → ChatStateContext.js} +0 -0
  606. /package/dist/esm/context/{TUIContactContext.js → ContactContext.js} +0 -0
  607. /package/dist/esm/context/{TUIMessageContext.js → MessageContext.js} +0 -0
  608. /package/dist/esm/context/{TUIMessageInputContext.js → MessageInputContext.js} +0 -0
  609. /package/src/components/{TUIChat/TUIChatState.tsx → Chat/ChatState.tsx} +0 -0
  610. /package/src/components/{TUIChat → Chat}/hooks/useCreateTUIChatStateContext.tsx +0 -0
  611. /package/src/components/{TUIChat → Chat}/hooks/useIsMounted.ts +0 -0
  612. /package/src/components/{TUIChat → Chat}/server.ts +0 -0
  613. /package/src/components/{TUIChat → Chat}/styles/index.scss +0 -0
  614. /package/src/components/{TUIChat → Chat}/styles/layout.scss +0 -0
  615. /package/src/components/{TUIChat → Chat}/utils.ts +0 -0
  616. /package/src/components/{TUIChatHeader → ChatHeader}/styles/color.scss +0 -0
  617. /package/src/components/{TUIChatHeader → ChatHeader}/styles/index.scss +0 -0
  618. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/addFriendInfo.tsx +0 -0
  619. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/basicInfo.tsx +0 -0
  620. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/blockInfo.tsx +0 -0
  621. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/friendApplication.tsx +0 -0
  622. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/friendInfo.tsx +0 -0
  623. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/groupInfo.tsx +0 -0
  624. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/hooks/useContactInfo.tsx +0 -0
  625. /package/src/components/{TUIContact/TUIContactInfo → Contact/ContactInfo}/index.scss +0 -0
  626. /package/src/components/{TUIContact/TUIContactList → Contact/ContactList}/index.scss +0 -0
  627. /package/src/components/{TUIContact → Contact}/hooks/useTUIContact.tsx +0 -0
  628. /package/src/components/{TUIContact → Contact}/index.scss +0 -0
  629. /package/src/components/{TUIContactSearch → ContactSearch}/hooks/useContactSearch.tsx +0 -0
  630. /package/src/components/{TUIContactSearch → ContactSearch}/index.scss +0 -0
  631. /package/src/components/{TUIMessage → MessageElement}/MessageAudio.tsx +0 -0
  632. /package/src/components/{TUIMessage → MessageElement}/MessageAvatar.tsx +0 -0
  633. /package/src/components/{TUIMessage → MessageElement}/MessageBubble.tsx +0 -0
  634. /package/src/components/{TUIMessage → MessageElement}/MessageContext.tsx +0 -0
  635. /package/src/components/{TUIMessage → MessageElement}/MessageFace.tsx +0 -0
  636. /package/src/components/{TUIMessage → MessageElement}/MessageFile.tsx +0 -0
  637. /package/src/components/{TUIMessage → MessageElement}/MessageImage.tsx +0 -0
  638. /package/src/components/{TUIMessage → MessageElement}/MessageLocation.tsx +0 -0
  639. /package/src/components/{TUIMessage → MessageElement}/MessageMerger.tsx +0 -0
  640. /package/src/components/{TUIMessage → MessageElement}/MessageName.tsx +0 -0
  641. /package/src/components/{TUIMessage → MessageElement}/MessageProgress.tsx +0 -0
  642. /package/src/components/{TUIMessage → MessageElement}/MessageRevoke.tsx +0 -0
  643. /package/src/components/{TUIMessage → MessageElement}/MessageStatus.tsx +0 -0
  644. /package/src/components/{TUIMessage → MessageElement}/MessageSystem.tsx +0 -0
  645. /package/src/components/{TUIMessage → MessageElement}/MessageText.tsx +0 -0
  646. /package/src/components/{TUIMessage → MessageElement}/MessageTip.tsx +0 -0
  647. /package/src/components/{TUIMessage → MessageElement}/MessageVideo.tsx +0 -0
  648. /package/src/components/{TUIMessage → MessageElement}/hooks/index.ts +0 -0
  649. /package/src/components/{TUIMessage → MessageElement}/hooks/useMessageContextHandler.ts +0 -0
  650. /package/src/components/{TUIMessage → MessageElement}/hooks/useMessageHandler.ts +0 -0
  651. /package/src/components/{TUIMessage → MessageElement}/hooks/useMessagePluginElement.tsx +0 -0
  652. /package/src/components/{TUIMessage → MessageElement}/hooks/useMessageReply.ts +0 -0
  653. /package/src/components/{TUIMessage → MessageElement}/styles/color.scss +0 -0
  654. /package/src/components/{TUIMessage → MessageElement}/styles/index.scss +0 -0
  655. /package/src/components/{TUIMessage → MessageElement}/utils/decodeText.ts +0 -0
  656. /package/src/components/{TUIMessage → MessageElement}/utils/emojiMap.ts +0 -0
  657. /package/src/components/{TUIMessage → MessageElement}/utils/index.ts +0 -0
  658. /package/src/components/{TUIMessageInput → MessageInput}/hooks/index.ts +0 -0
  659. /package/src/components/{TUIMessageInput → MessageInput}/hooks/useCreateMessageInputContext.ts +0 -0
  660. /package/src/components/{TUIMessageInput → MessageInput}/hooks/useHandleForwardMessage.tsx +0 -0
  661. /package/src/components/{TUIMessageInput → MessageInput}/hooks/useHandleQuoteMessage.tsx +0 -0
  662. /package/src/components/{TUIMessageInput → MessageInput}/hooks/usePluginsElement.tsx +0 -0
  663. /package/src/components/{TUIMessageInput → MessageInput}/hooks/useUploadElement.tsx +0 -0
  664. /package/src/components/{TUIMessageInput → MessageInput}/hooks/useUploadPicker.tsx +0 -0
  665. /package/src/components/{TUIMessageInput → MessageInput}/styles/index.scss +0 -0
  666. /package/src/components/{TUIMessageInput → MessageInput}/styles/layout.scss +0 -0
  667. /package/src/components/{TUIMessageList → MessageList}/styles/color.scss +0 -0
  668. /package/src/components/{TUIMessageList → MessageList}/styles/index.scss +0 -0
  669. /package/src/components/{TUIMessageList → MessageList}/styles/layout.scss +0 -0
  670. /package/src/components/{TUIProfile/TUIProfileDefault.tsx → Profile/ProfileDefault.tsx} +0 -0
  671. /package/src/components/{TUIProfile → Profile}/hooks/index.ts +0 -0
  672. /package/src/components/{TUIProfile → Profile}/hooks/useMyProfile.tsx +0 -0
  673. /package/src/components/{TUIProfile → Profile}/styles/color.scss +0 -0
@@ -9,23 +9,27 @@ import { usePluginsElement } from './hooks';
9
9
  import './styles/index.scss';
10
10
 
11
11
  export interface PluginsProps {
12
- plugins?: Array<any>,
13
- showNumber?: number,
14
- MoreIcon?: any,
15
- className?: string,
16
- customClass?: string,
17
- style?: any,
18
- root?: any,
19
- handleVisible?: (isVisible:any) => void,
20
- showMore?: boolean,
12
+ plugins?: any[];
13
+ showNumber?: number;
14
+ MoreIcon?: any;
15
+ className?: string;
16
+ customClass?: string;
17
+ style?: any;
18
+ root?: any;
19
+ handleVisible?: (isVisible: any) => void;
20
+ showMore?: boolean;
21
+ }
22
+
23
+ export interface IPluginsRef {
24
+ closeMore?: () => void;
21
25
  }
22
26
 
23
27
  function PluginsWithContext<T extends PluginsProps>(
24
- props:PropsWithChildren<T>,
25
- // eslint-disable-next-line
28
+ props: PropsWithChildren<T>,
29
+ // eslint-disable-next-line
26
30
  // @ts-ignore
27
31
  ref,
28
- ):React.ReactElement {
32
+ ): React.ReactElement {
29
33
  const {
30
34
  plugins = [],
31
35
  showNumber,
@@ -72,12 +76,12 @@ function PluginsWithContext<T extends PluginsProps>(
72
76
  });
73
77
  }
74
78
  };
75
- // eslint-disable-next-line
79
+ // eslint-disable-next-line
76
80
  // @ts-ignore
77
81
  return (
78
82
  ((showPicker && showPicker.length > 0) || (elements && elements?.length > 0)) && (
79
83
  <ul className={`plugin ${className}`}>
80
- {showPicker && showPicker?.length > 0 && showPicker.map((Item, index:number) => {
84
+ {showPicker && showPicker?.length > 0 && showPicker.map((Item, index: number) => {
81
85
  const key = `${Item}${index}`;
82
86
  return (
83
87
  <li className="plugin-item" key={key}>
@@ -86,38 +90,38 @@ function PluginsWithContext<T extends PluginsProps>(
86
90
  );
87
91
  })}
88
92
  {
89
- elements && elements?.length > 0 && (
90
- <div className="plugin-popup" ref={pluginRef}>
91
- <div role="menuitem" tabIndex={0} className="more" onClick={handleShow}>
92
- {
93
- !MoreIcon && <Icon width={20} height={20} type={IconTypes.ADD} />
94
- }
95
- {
96
- MoreIcon && MoreIcon
97
- }
93
+ elements && elements?.length > 0 && (
94
+ <div className="plugin-popup" ref={pluginRef}>
95
+ <div role="menuitem" tabIndex={0} className="more" onClick={handleShow}>
96
+ {
97
+ !MoreIcon && <Icon width={20} height={20} type={IconTypes.ADD} />
98
+ }
99
+ {
100
+ MoreIcon && MoreIcon
101
+ }
102
+ </div>
103
+ <Popup
104
+ className={`plugin-popup-box ${customClass}`}
105
+ style={style}
106
+ show={show}
107
+ close={handleShow}
108
+ root={root}
109
+ handleVisible={pluginHandleVisible}
110
+ >
111
+ <ul>
112
+ {elements.map((Item, index: number) => {
113
+ const key = `${Item}${index}`;
114
+ return (
115
+ <li className="plugin-item" key={key}>
116
+ {Item}
117
+ </li>
118
+ );
119
+ })}
120
+ </ul>
121
+ </Popup>
98
122
  </div>
99
- <Popup
100
- className={`plugin-popup-box ${customClass}`}
101
- style={style}
102
- show={show}
103
- close={handleShow}
104
- root={root}
105
- handleVisible={pluginHandleVisible}
106
- >
107
- <ul>
108
- {elements.map((Item, index:number) => {
109
- const key = `${Item}${index}`;
110
- return (
111
- <li className="plugin-item" key={key}>
112
- {Item}
113
- </li>
114
- );
115
- })}
116
- </ul>
117
- </Popup>
118
- </div>
119
- )
120
- }
123
+ )
124
+ }
121
125
  </ul>
122
126
  )
123
127
  );
@@ -1,25 +1,50 @@
1
- import React from 'react';
1
+ import React, { PropsWithChildren } from 'react';
2
+ import { MyProfile } from './myProfile/index';
3
+
2
4
  import './styles/index.scss';
3
- import { Profile as TProfile } from '@tencentcloud/chat';
4
- import { Avatar, defaultUserAvatar } from '../Avatar';
5
- import { Icon, IconTypes } from '../Icon';
6
-
7
- export interface ProfileProps {
8
- profile?: TProfile,
9
- className?: string,
10
- handleAvatar?: () => void,
5
+ import { useMyProfile } from './hooks';
6
+ import { TUIProfileDefault } from './ProfileDefault';
7
+ import { useUIManager } from '../../context';
8
+
9
+ interface TUIProfileProps {
10
+ className?: string;
11
+ TUIProfile?: React.ComponentType<any>;
11
12
  }
12
- export function Profile<T extends ProfileProps>(props: T) {
13
- const { profile, className = '', handleAvatar } = props;
14
- return (profile?.nick || profile?.userID) && (
15
- <div className={`profile ${className}`}>
16
- <div className="profile-content">
17
- <Avatar size={32} image={profile.avatar || defaultUserAvatar} onClick={handleAvatar} />
18
- <div className="profile-name">{profile.nick || profile.userID}</div>
19
- </div>
20
- <div className="profile-more">
21
- <Icon type={IconTypes.ELLIPSE} width={18} height={5} onClick={handleAvatar} />
22
- </div>
23
- </div>
13
+
14
+ function UnMemoizedProfile<T extends TUIProfileProps>(
15
+ props: PropsWithChildren<T>,
16
+ ): React.ReactElement {
17
+ const {
18
+ className,
19
+ TUIProfile: PropTUIProfile,
20
+ } = props;
21
+
22
+ const { myProfile, updateMyProfile } = useMyProfile();
23
+
24
+ const { setTUIProfileShow, TUIProfileShow } = useUIManager('TUIProfile');
25
+
26
+ const TUIProfileUIComponent = PropTUIProfile || TUIProfileDefault;
27
+
28
+ return (
29
+ <>
30
+ {/* //eslint-disable-next-line
31
+ @ts-ignore */}
32
+ <MyProfile
33
+ profile={myProfile}
34
+ handleAvatar={() => {
35
+ setTUIProfileShow && setTUIProfileShow(true);
36
+ }}
37
+ />
38
+ {TUIProfileShow && (
39
+ <TUIProfileUIComponent
40
+ className={className}
41
+ userInfo={myProfile}
42
+ update={updateMyProfile}
43
+ />
44
+ )}
45
+ </>
24
46
  );
25
47
  }
48
+
49
+ export const Profile = React.memo(UnMemoizedProfile) as
50
+ typeof UnMemoizedProfile;
@@ -1 +1,2 @@
1
- export * from './Profile';
1
+ export * from './Profile';
2
+ export * from './ProfileDefault';
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import './styles/index.scss';
3
+ import { Profile as TProfile } from '@tencentcloud/chat';
4
+ import { Avatar, defaultUserAvatar } from '../../Avatar';
5
+ import { Icon, IconTypes } from '../../Icon';
6
+
7
+ export interface ProfileProps {
8
+ profile?: TProfile;
9
+ className?: string;
10
+ handleAvatar?: () => void;
11
+ }
12
+ export function MyProfile<T extends ProfileProps>(props: T) {
13
+ const { profile, className = '', handleAvatar } = props;
14
+ return (profile?.nick || profile?.userID) && (
15
+ <div className={`profile ${className}`}>
16
+ <div className="profile-content">
17
+ <Avatar size={32} image={profile.avatar || defaultUserAvatar} onClick={handleAvatar} />
18
+ <div className="profile-name">{profile.nick || profile.userID}</div>
19
+ </div>
20
+ <div className="profile-more">
21
+ <Icon type={IconTypes.ELLIPSE} width={18} height={5} onClick={handleAvatar} />
22
+ </div>
23
+ </div>
24
+ );
25
+ }
@@ -0,0 +1 @@
1
+ export * from './MyProfile';
@@ -0,0 +1,32 @@
1
+ @use "../../../../styles/colors/color-theme" as *;
2
+
3
+ .profile {
4
+ display: flex;
5
+ flex-direction: row;
6
+ justify-content: space-between;
7
+ align-items: center;
8
+ padding: 16px 20px;
9
+
10
+ @include theme() {
11
+ background-color: get(bg-color-operate);
12
+ }
13
+
14
+ .profile-content {
15
+ display: flex;
16
+ align-items: center;
17
+
18
+ .profile-name {
19
+ font-weight: 600;
20
+ margin-left: 10px;
21
+ font-size: 14px;
22
+ text-overflow: ellipsis;
23
+ white-space: nowrap;
24
+ max-width: 200px;
25
+ overflow: hidden;
26
+
27
+ @include theme() {
28
+ color: get(text-color-primary);
29
+ }
30
+ }
31
+ }
32
+ }
@@ -1,32 +1,2 @@
1
- @use "../../../styles/colors/color-theme" as *;
2
-
3
- .profile {
4
- display: flex;
5
- flex-direction: row;
6
- justify-content: space-between;
7
- align-items: center;
8
- padding: 16px 20px;
9
-
10
- @include theme() {
11
- background-color: get(bg-color-operate);
12
- }
13
-
14
- .profile-content {
15
- display: flex;
16
- align-items: center;
17
-
18
- .profile-name {
19
- font-weight: 600;
20
- margin-left: 10px;
21
- font-size: 14px;
22
- text-overflow: ellipsis;
23
- white-space: nowrap;
24
- max-width: 200px;
25
- overflow: hidden;
26
-
27
- @include theme() {
28
- color: get(text-color-primary);
29
- }
30
- }
31
- }
32
- }
1
+ @import "./layout.scss";
2
+ @import "./color.scss";
@@ -4,6 +4,7 @@
4
4
  display: flex;
5
5
  flex-direction: column;
6
6
  align-items: center;
7
+ height: 100%;
7
8
 
8
9
  @include theme() {
9
10
  color: get(text-color-primary);
@@ -1,19 +1,21 @@
1
- export * from './TUIConversation';
2
- export * from './TUIConversationList';
3
- export * from './TUIChat';
1
+ export * from './Chat';
2
+ export * from './ConversationList';
3
+ export * from './ConversationActions';
4
4
  export * from './ConversationPreview';
5
- export * from './TUIChatHeader';
6
- export * from './TUIMessageList';
7
- export * from './TUIMessage';
8
- export * from './TUIMessageInput';
9
- export * from './TUIProfile';
10
- export * from './Avatar';
11
5
  export * from './ConversationSearch';
12
- export * from './TUIManage';
6
+ export * from './ConversationCreate';
7
+ export * from './ChatHeader';
8
+ export * from './MessageList';
9
+ export * from './MessageElement';
10
+ export * from './MessageInput';
11
+ export * from './Profile';
12
+ export * from './Avatar';
13
+ export * from './ChatSetting';
13
14
  export * from './Popup';
14
15
  export * from './Checkbox';
15
16
  export * from './DivWithEdit';
16
17
  export * from './Icon';
18
+ export * from './PlaceHolder';
17
19
  export * from './EmptyStateIndicator';
18
20
  export * from './Input';
19
21
  export * from './Model';
@@ -21,4 +23,4 @@ export * from './Plugins';
21
23
  export * from './Switch';
22
24
  export * from './Toast';
23
25
  export * from './Popup';
24
- export * from './TUIContact';
26
+ export * from './Contact';
@@ -1,7 +1,7 @@
1
1
  import React, { PropsWithChildren, useContext } from 'react';
2
2
  import { Message } from '@tencentcloud/chat';
3
3
  import { IMessageModel } from '@tencentcloud/chat-uikit-engine';
4
- import { OperateMessageParams } from '../components/TUIChat/hooks/useHandleMessage';
4
+ import { OperateMessageParams } from '../components/Chat/hooks/useHandleMessage';
5
5
 
6
6
  export interface TUIChatActionContextValue {
7
7
  updateMessage?: (messages: Message[]) => void;
@@ -0,0 +1,49 @@
1
+ import React, {
2
+ PropsWithChildren, useContext, MutableRefObject, RefObject,
3
+ } from 'react';
4
+ import { Conversation, Message } from '@tencentcloud/chat';
5
+ import { MessageListProps, TUIMessageInputBasicProps, TUIMessageProps } from '../components';
6
+ import { OperateMessageParams } from '../components/Chat/hooks/useHandleMessage';
7
+
8
+ export interface TUIChatStateContextValue {
9
+ conversation?: Conversation;
10
+ messageList?: Message[];
11
+ nextReqMessageID?: string;
12
+ isCompleted?: boolean;
13
+ init?: boolean;
14
+ highlightedMessageId?: string;
15
+ lastMessageID?: string;
16
+ isSameLastMessageID?: boolean;
17
+ messageListRef?: RefObject<HTMLDivElement>;
18
+ textareaRef?: MutableRefObject<HTMLTextAreaElement | undefined>;
19
+ operateData?: OperateMessageParams;
20
+ noMore?: boolean;
21
+ messageConfig?: TUIMessageProps;
22
+ cloudCustomData?: string;
23
+ TUIMessageInputConfig?: TUIMessageInputBasicProps;
24
+ audioSource?: HTMLAudioElement | null;
25
+ vidoeSource?: HTMLVideoElement | null;
26
+ TUIMessageListConfig?: MessageListProps;
27
+ uploadPendingMessageList?: Message[];
28
+ firstSendMessage?: Message | null;
29
+ activeMessageID?: string;
30
+ }
31
+
32
+ export const TUIChatStateContext = React.createContext<TUIChatStateContextValue | null>(null);
33
+ export function TUIChatStateContextProvider({ children, value }: PropsWithChildren<{
34
+ value: TUIChatStateContextValue;
35
+ }>): React.ReactElement {
36
+ return (
37
+ <TUIChatStateContext.Provider value={value}>
38
+ {children}
39
+ </TUIChatStateContext.Provider>
40
+ );
41
+ }
42
+
43
+ export function useTUIChatStateContext(componentName?: string): TUIChatStateContextValue {
44
+ const contextValue = useContext(TUIChatStateContext);
45
+ if (!contextValue && componentName) {
46
+ return {} as TUIChatStateContextValue;
47
+ }
48
+ return (contextValue as unknown) as TUIChatStateContextValue;
49
+ }
@@ -1,23 +1,23 @@
1
1
  import React, { PropsWithChildren, useContext } from 'react';
2
2
  import { TUIChatHeaderDefaultProps } from '../components';
3
- import type{ EmptyStateIndicatorProps } from '../components/EmptyStateIndicator';
4
- import { MessageContextProps, TUIMessageProps } from '../components/TUIMessage';
3
+ import type { EmptyStateIndicatorProps } from '../components/EmptyStateIndicator';
4
+ import { MessageContextProps, TUIMessageProps } from '../components/MessageElement';
5
5
 
6
6
  export interface UnknowPorps {
7
- [propsName: string]: any
7
+ [propsName: string]: any;
8
8
  }
9
9
 
10
10
  export interface ComponentContextValue {
11
- TUIMessage?: React.ComponentType<TUIMessageProps | UnknowPorps>,
12
- TUIChatHeader?: React.ComponentType<TUIChatHeaderDefaultProps>,
13
- EmptyStateIndicator?: React.ComponentType<EmptyStateIndicatorProps>,
14
- TUIMessageInput?: React.ComponentType<UnknowPorps>,
15
- MessageContext?: React.ComponentType<MessageContextProps>,
16
- InputPlugins?: React.ComponentType<UnknowPorps>,
17
- MessagePlugins?: React.ComponentType<UnknowPorps>,
18
- MessageCustomPlugins?: React.ComponentType<UnknowPorps>,
19
- MessageTextPlugins?: React.ComponentType<UnknowPorps>,
20
- InputQuote?: React.ComponentType<UnknowPorps>,
11
+ TUIMessage?: React.ComponentType<TUIMessageProps | UnknowPorps>;
12
+ TUIChatHeader?: React.ComponentType<TUIChatHeaderDefaultProps>;
13
+ EmptyStateIndicator?: React.ComponentType<EmptyStateIndicatorProps>;
14
+ TUIMessageInput?: React.ComponentType<UnknowPorps>;
15
+ MessageContext?: React.ComponentType<MessageContextProps>;
16
+ InputPlugins?: React.ComponentType<UnknowPorps>;
17
+ MessagePlugins?: React.ComponentType<UnknowPorps>;
18
+ MessageCustomPlugins?: React.ComponentType<UnknowPorps>;
19
+ MessageTextPlugins?: React.ComponentType<UnknowPorps>;
20
+ InputQuote?: React.ComponentType<UnknowPorps>;
21
21
  }
22
22
 
23
23
  export const ComponentContext = React.createContext<ComponentContextValue | undefined>(undefined);
@@ -4,17 +4,17 @@ import React, {
4
4
  import { Friend, Profile, FriendApplication } from '@tencentcloud/chat';
5
5
 
6
6
  export interface TUIContactContextValue {
7
- friendList?: Array<Friend>,
8
- blocklistProfile?: Array<Profile>,
9
- friendApplicationList?: Array<FriendApplication>,
10
- blockList?: Array<string>,
11
- isShowContactList?: boolean,
12
- setShowContactList?: React.Dispatch<React.SetStateAction<boolean>>
7
+ friendList?: Friend[];
8
+ blocklistProfile?: Profile[];
9
+ friendApplicationList?: FriendApplication[];
10
+ blockList?: string[];
11
+ isShowContactList?: boolean;
12
+ setShowContactList?: React.Dispatch<React.SetStateAction<boolean>>;
13
13
  }
14
14
  export const TUIContactContext = React.createContext<TUIContactContextValue>({});
15
- export function TUIContactContextProvider({ children, value }:PropsWithChildren<{
16
- value: TUIContactContextValue
17
- }>):React.ReactElement {
15
+ export function TUIContactContextProvider({ children, value }: PropsWithChildren<{
16
+ value: TUIContactContextValue;
17
+ }>): React.ReactElement {
18
18
  return (
19
19
  <TUIContactContext.Provider value={value}>
20
20
  {children}
@@ -22,8 +22,7 @@ export function TUIContactContextProvider({ children, value }:PropsWithChildren<
22
22
  );
23
23
  }
24
24
 
25
- export function useTUIContactContext(componentName?:string)
26
- :TUIContactContextValue {
25
+ export function useTUIContactContext(componentName?: string): TUIContactContextValue {
27
26
  const contextValue = useContext(TUIContactContext);
28
27
  if (!contextValue && componentName) {
29
28
  return {} as TUIContactContextValue;
@@ -0,0 +1,113 @@
1
+ import React, { PropsWithChildren, useContext, useEffect, useState } from 'react';
2
+ import TUIChatEngine, { IConversationModel, StoreName, TUIConversationService, TUIStore } from '@tencentcloud/chat-uikit-engine';
3
+
4
+ interface ConversationListProviderProps {
5
+ /** Specifies a function to filter conversations in the conversation list. */
6
+ filter?: (conversationList: IConversationModel[]) => IConversationModel[];
7
+ /** Specifies a function to sort conversations in the conversation list. */
8
+ sort?: (conversationList: IConversationModel[]) => IConversationModel[];
9
+ }
10
+ interface ConversationListContextType {
11
+ conversationList: IConversationModel[];
12
+ filteredAndSortedConversationList: IConversationModel[];
13
+ currentConversation: IConversationModel | undefined;
14
+ setCurrentConversation: (conversation: IConversationModel) => void;
15
+ isLoading: boolean;
16
+ isLoadError: boolean;
17
+ }
18
+
19
+ const ConversationListContext = React.createContext<ConversationListContextType | null>(null);
20
+
21
+ function ConversationListProvider(props: PropsWithChildren<Partial<ConversationListProviderProps>>) {
22
+ const {
23
+ filter,
24
+ sort,
25
+ children,
26
+ } = props;
27
+
28
+ const [conversationList, setConversationList] = useState<IConversationModel[]>([]);
29
+
30
+ const [currentConversation, _setCurrentConversation] = useState<IConversationModel | undefined>(undefined);
31
+
32
+ const [filteredAndSortedConversationList, setFilteredAndSortedConversationList] = useState<IConversationModel[]>([]);
33
+
34
+ const [isLoading, setIsLoading] = useState(true);
35
+ const [isLoadError, setIsLoadError] = useState(false);
36
+
37
+ useEffect(() => {
38
+ TUIStore.watch(StoreName.CONV, {
39
+ conversationList: onConversationListUpdated,
40
+ currentConversation: onCurrentConversationUpdated,
41
+ });
42
+ TUIStore.watch(StoreName.USER, {
43
+ netStateChange: onNetStateChange,
44
+ });
45
+
46
+ return () => {
47
+ TUIStore.unwatch(StoreName.CONV, {
48
+ conversationList: onConversationListUpdated,
49
+ currentConversation: onCurrentConversationUpdated,
50
+ });
51
+ TUIStore.unwatch(StoreName.USER, {
52
+ netStateChange: onNetStateChange,
53
+ });
54
+ };
55
+ }, []);
56
+
57
+ useEffect(() => {
58
+ // filter & sort conversationList
59
+ let _conversationList = conversationList;
60
+ filter && (_conversationList = filter(_conversationList));
61
+ sort && (_conversationList = sort(_conversationList));
62
+ setFilteredAndSortedConversationList(_conversationList);
63
+ }, [conversationList, sort, filter]);
64
+
65
+ function onConversationListUpdated(list: IConversationModel[]) {
66
+ // original conversationList
67
+ setConversationList(list);
68
+ if (isLoading) {
69
+ setIsLoading(false);
70
+ }
71
+ }
72
+
73
+ function onCurrentConversationUpdated(conversation: IConversationModel) {
74
+ _setCurrentConversation(conversation);
75
+ }
76
+
77
+ function onNetStateChange(netState: string) {
78
+ if (netState === TUIChatEngine.TYPES.NET_STATE_DISCONNECTED) {
79
+ setIsLoadError(true);
80
+ } else {
81
+ setIsLoadError(false);
82
+ }
83
+ }
84
+
85
+ function setCurrentConversation(conversation: IConversationModel) {
86
+ TUIConversationService.switchConversation(conversation?.conversationID);
87
+ }
88
+
89
+ const value = {
90
+ conversationList,
91
+ filteredAndSortedConversationList,
92
+ currentConversation,
93
+ setCurrentConversation,
94
+ isLoading,
95
+ isLoadError,
96
+ };
97
+
98
+ return (
99
+ <ConversationListContext.Provider value={value}>
100
+ {children}
101
+ </ConversationListContext.Provider>
102
+ );
103
+ }
104
+
105
+ function useConversationList() {
106
+ const context = useContext(ConversationListContext);
107
+ if (!context) {
108
+ throw new Error('useConversationList must be used within a useConversationList');
109
+ }
110
+ return context;
111
+ }
112
+
113
+ export { useConversationList, ConversationListProvider, ConversationListContextType, ConversationListProviderProps };
@@ -6,6 +6,7 @@ import {
6
6
  PropsWithChildren,
7
7
  } from 'react';
8
8
  import { useTranslation } from 'react-i18next';
9
+ import { TUITranslateService } from '@tencentcloud/chat-uikit-engine';
9
10
 
10
11
  interface LanguageContextType {
11
12
  language: string;
@@ -0,0 +1,55 @@
1
+ import React, { PropsWithChildren, ReactEventHandler, useContext } from 'react';
2
+ import { Message } from '@tencentcloud/chat';
3
+ import { MessagePluginsProps } from '../components';
4
+
5
+ export enum messageShowType {
6
+ IN = 'in',
7
+ OUT = 'out',
8
+ ALL = 'all',
9
+ NONE = 'none',
10
+ }
11
+
12
+ export interface TUIMessageContextValue {
13
+ message?: Message;
14
+ handleDelete?: ReactEventHandler;
15
+ CustemElement?: React.ComponentType<{ message: Message }>;
16
+ TextElement?: React.ComponentType<{ message: Message }>;
17
+ ImageElement?: React.ComponentType<{ message: Message }>;
18
+ VideoElement?: React.ComponentType<{ message: Message }>;
19
+ AudioElement?: React.ComponentType<{ message: Message }>;
20
+ FileElement?: React.ComponentType<{ message: Message }>;
21
+ MergerElement?: React.ComponentType<{ message: Message }>;
22
+ LocationElement?: React.ComponentType<{ message: Message }>;
23
+ FaceElement?: React.ComponentType<{ message: Message }>;
24
+ filter?: (data: Message) => void;
25
+ isShowTime?: boolean;
26
+ isShowRead?: boolean;
27
+ plugin?: MessagePluginsProps;
28
+ prefix?: React.ReactElement | string;
29
+ suffix?: React.ReactElement | string;
30
+ customName?: React.ReactElement;
31
+ showAvatar?: messageShowType;
32
+ showName?: messageShowType;
33
+ customAvatar?: React.ReactElement;
34
+ isShowProgress?: boolean;
35
+ Progress?: React.ComponentType<{ message: Message }>;
36
+ }
37
+
38
+ export const TUIMessageContext = React.createContext<TUIMessageContextValue>({});
39
+ export function TUIMessageContextProvider({ children, value }: PropsWithChildren<{
40
+ value: TUIMessageContextValue;
41
+ }>): React.ReactElement {
42
+ return (
43
+ <TUIMessageContext.Provider value={value}>
44
+ {children}
45
+ </TUIMessageContext.Provider>
46
+ );
47
+ }
48
+
49
+ export function useTUIMessageContext(componentName?: string): TUIMessageContextValue {
50
+ const contextValue = useContext(TUIMessageContext);
51
+ if (!contextValue && componentName) {
52
+ return {} as TUIMessageContextValue;
53
+ }
54
+ return (contextValue as unknown) as TUIMessageContextValue;
55
+ }