@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
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [2.2.8] (2024-09-27)
2
+
3
+ #### feat
4
+ * feat: Rename UIKit components to Chat, ConversationList, ChatSetting, Contact, and Profile.
5
+ * feat: Support Custom ConversationList
6
+
1
7
  ## [2.2.7] (2024-09-13)
2
8
 
3
9
  #### feat
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.classnames={exports:{}};
@@ -15,7 +15,7 @@ interface AvatarProps {
15
15
  */
16
16
  shape?: 'circle' | 'rounded' | 'square';
17
17
  update?: (url: string) => void;
18
- list?: Array<string>;
18
+ list?: string[];
19
19
  }
20
20
  declare function Avatar<T extends AvatarProps>(props: T): React__default.ReactElement;
21
21
 
@@ -2,11 +2,11 @@ import React__default, { PropsWithChildren } from 'react';
2
2
  import { Conversation, Message } from '@tencentcloud/chat';
3
3
  import { IMessageModel } from '@tencentcloud/chat-uikit-engine';
4
4
  import { UnknowPorps } from '../../context/ComponentContext.js';
5
- import { TUIChatHeaderDefaultProps } from '../TUIChatHeader/TUIChatHeaderDefault.js';
6
- import { TUIMessageProps } from '../TUIMessage/TUIMessage.js';
7
- import { MessageContextProps } from '../TUIMessage/MessageContext.js';
8
- import { MessageListProps } from '../TUIMessageList/TUIMessageList.js';
9
- import { TUIMessageInputBasicProps } from '../TUIMessageInput/TUIMessageInput.js';
5
+ import { TUIChatHeaderDefaultProps } from '../ChatHeader/ChatHeaderDefault.js';
6
+ import { TUIMessageProps } from '../MessageElement/Message.js';
7
+ import { MessageContextProps } from '../MessageElement/MessageContext.js';
8
+ import { MessageListProps } from '../MessageList/MessageList.js';
9
+ import { TUIMessageInputBasicProps } from '../MessageInput/MessageInput.js';
10
10
 
11
11
  interface TUIChatProps {
12
12
  className?: string;
@@ -33,7 +33,7 @@ interface TUIChatProps {
33
33
  TUIMessageListConfig?: MessageListProps;
34
34
  [propName: string]: any;
35
35
  }
36
- declare function UnMemoizedTUIChat<T extends TUIChatProps>(props: PropsWithChildren<T>): React__default.ReactElement;
37
- declare const TUIChat: typeof UnMemoizedTUIChat;
36
+ declare function UnMemoizedChat<T extends TUIChatProps>(props: PropsWithChildren<T>): React__default.ReactElement;
37
+ declare const Chat: typeof UnMemoizedChat;
38
38
 
39
- export { TUIChat };
39
+ export { Chat };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react"),s=require("react/jsx-runtime"),a=require("@tencentcloud/chat-uikit-engine"),n=require("../utils.js"),r=require("../../context/UIKitContext.js"),i=require("../../context/UIManagerContext.js"),o=require("../../context/ChatStateContext.js"),u=require("../../context/ChatActionContext.js");require("../../context/MessageContext.js");var c=require("../../context/ComponentContext.js"),g=require("./hooks/useCreateTUIChatStateContext.js"),l=require("../MessageElement/Message.js");require("../MessageElement/MessagePlugins.js"),require("../MessageElement/MessageContext.js");var d=require("../../constants.js"),M=require("./ChatState.js"),C=require("./hooks/useHandleMessageList.js"),v=require("./hooks/useHandleMessage.js"),I=require("../ChatHeader/ChatHeader.js");require("@tencentcloud/tui-core"),require("@tencentcloud/chat"),require("../Icon/config.js"),require("../Icon/type.js"),require("../../utils/env.js");var h=require("../MessageList/MessageList.js"),T=require("../MessageInput/MessageInput.js");require("react-i18next");var f=require("../EmptyStateIndicator/EmptyStateIndicator.js");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function _(a){var n=a.conversation,o=a.EmptyPlaceholder,u=void 0===o?s.jsx(f.EmptyStateIndicator,{listType:"chat"}):o,c=r.useUIKit().chat,g=i.useUIManager().conversation,l=n||g;return(null==l?void 0:l.conversationID)?t.createElement(S,e.__assign({chat:c},a,{conversation:l,key:l.conversationID})):u}function S(r){var i=this,f=r.chat,p=r.conversation,_=r.className,S=r.children,j=r.TUIMessage,m=r.TUIChatHeader,x=r.TUIMessageInput,q=r.InputPlugins,P=r.MessagePlugins,U=r.MessageContext,E=r.MessageCustomPlugins,A=r.MessageTextPlugins,H=r.InputQuote;r.onMessageRecevied,r.sendMessage;var L=r.revokeMessage;r.selectedConversation;var y=r.filterMessage,N=r.messageConfig,D=r.cloudCustomData,k=r.TUIMessageInputConfig,R=r.TUIMessageListConfig,O=r.callButtonClicked,w=t.useReducer(M.chatReducer,e.__assign(e.__assign({},M.initialState),{conversation:p})),b=w[0],F=w[1],Y=t.useRef(null),B=t.useRef(),G=b&&g(e.__assign({chat:f,conversation:p,messageListRef:Y,textareaRef:B,messageConfig:N,cloudCustomData:D,TUIMessageInputConfig:k,TUIMessageListConfig:R},b)),K=C.useHandleMessageList({chat:f,conversation:p,state:b,dispatch:F,filterMessage:y}),Q=K.editLocalMessage,V=K.updateUploadPendingMessageList,J=v.useHandleMessage({state:b,dispatch:F}),z=J.operateMessage,W=J.setAudioSource,X=J.setVideoSource,Z=J.setHighlightedMessageId,$=J.setActiveMessageID;t.useEffect((function(){return a.TUIStore.watch(a.StoreName.CHAT,{messageList:ee,isCompleted:te}),function(){a.TUIStore.unwatch(a.StoreName.CHAT,{messageList:ee,isCompleted:te})}}),[]);var ee=function(e){var t=e.filter((function(e){return!e.isDeleted}));F({type:d.CONSTANT_DISPATCH_TYPE.SET_MESSAGELIST,value:y?y(t):t})},te=function(e){e&&F({type:d.CONSTANT_DISPATCH_TYPE.SET_NO_MORE,value:e})},se=function(){return e.__awaiter(i,void 0,void 0,(function(){return e.__generator(this,(function(e){return a.TUIChatService.getMessageList(),[2]}))}))},ae=function(t){return e.__awaiter(i,void 0,void 0,(function(){var s;return e.__generator(this,(function(e){return"TIMCustomElem"===t.type&&7===(null===(s=n.JSONStringToParse(t.payload.data))||void 0===s?void 0:s.src)||b.firstSendMessage||F({type:d.CONSTANT_DISPATCH_TYPE.SET_FIRST_SEND_MESSAGE,value:t}),[2]}))}))},ne=t.useMemo((function(){return{editLocalMessage:Q,operateMessage:z,loadMore:se,revokeMessage:L,setAudioSource:W,setVideoSource:X,setHighlightedMessageId:Z,setActiveMessageID:$,updateUploadPendingMessageList:V,setFirstSendMessage:ae,callButtonClicked:O}}),[Q,z,se,L,W,X,Z,$,V,ae,O]),re=t.useMemo((function(){return{TUIMessage:j||l.TUIMessage,MessageContext:U,InputPlugins:q,MessagePlugins:P,MessageCustomPlugins:E,MessageTextPlugins:A,TUIChatHeader:m,TUIMessageInput:x,InputQuote:H}}),[]);return s.jsx("div",e.__assign({className:"chat ".concat(_)},{children:s.jsx(o.TUIChatStateContextProvider,e.__assign({value:G},{children:s.jsx(u.TUIChatActionProvider,e.__assign({value:ne},{children:s.jsx(c.ComponentProvider,e.__assign({value:re},{children:S||s.jsxs(s.Fragment,{children:[s.jsx(I.ChatHeader,{}),s.jsx(h.MessageList,{}),s.jsx(T.MessageInput,{})]})}))}))}))}))}var j=p(t).default.memo(_);exports.Chat=j;
@@ -0,0 +1 @@
1
+ "use strict";var e=require("./server.js");require("tslib"),require("react"),require("react/jsx-runtime"),require("@tencentcloud/chat-uikit-engine"),require("date-fns"),require("date-fns/locale"),require("@tencentcloud/chat"),require("../Icon/config.js"),require("../Icon/type.js"),require("@tencentcloud/tui-core"),require("react-i18next"),require("../../context/MessageContext.js"),require("../../constants.js"),require("../MessageElement/hooks/useMessageReply.js"),require("../MessageElement/MessagePlugins.js"),require("../MessageElement/MessageContext.js"),require("../../utils/env.js"),require("../MessageInput/hooks/useHandleQuoteMessage.js"),new e;
@@ -1,6 +1,6 @@
1
1
  import React__default, { PropsWithChildren } from 'react';
2
2
  import { Conversation } from '@tencentcloud/chat';
3
- import { TUIChatHeaderDefaultProps } from './TUIChatHeaderDefault.js';
3
+ import { TUIChatHeaderDefaultProps } from './ChatHeaderDefault.js';
4
4
 
5
5
  interface TUIChatHeaderProps {
6
6
  title?: string;
@@ -11,6 +11,6 @@ interface TUIChatHeaderProps {
11
11
  enableCall?: boolean;
12
12
  }
13
13
  declare function UnMemoizedTUIChatHeader<T extends TUIChatHeaderProps>(props: PropsWithChildren<T>): React__default.ReactElement;
14
- declare const TUIChatHeader: typeof UnMemoizedTUIChatHeader;
14
+ declare const ChatHeader: typeof UnMemoizedTUIChatHeader;
15
15
 
16
- export { TUIChatHeader };
16
+ export { ChatHeader };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("../../context/ChatStateContext.js"),a=require("./ChatHeaderDefault.js");require("tslib"),require("@tencentcloud/tui-core"),require("react-i18next"),require("@tencentcloud/chat-uikit-engine"),require("../../context/MessageContext.js");var n=require("../../context/ComponentContext.js");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(t){var o=t.title,u=t.conversation,i=t.TUIChatHeader,c=t.avatar,s=t.headerOpateIcon,l=t.enableCall,C=r.useTUIChatStateContext("TUIChatHeader").conversation,d=n.useComponentContext().TUIChatHeader,x=i||d||a.ChatHeaderDefault,h=u||C;return e.jsx(x,{title:o,conversation:h,avatar:c,opateIcon:s,enableCall:l})}var i=o(t).default.memo(u);exports.ChatHeader=i;
@@ -13,6 +13,6 @@ interface TUIChatHeaderBasicProps extends TUIChatHeaderDefaultProps {
13
13
  isLive?: boolean;
14
14
  opateIcon?: React__default.ReactElement | string;
15
15
  }
16
- declare function TUIChatHeaderDefault(props: TUIChatHeaderBasicProps): React__default.ReactElement;
16
+ declare function ChatHeaderDefault(props: TUIChatHeaderBasicProps): React__default.ReactElement;
17
17
 
18
- export { TUIChatHeaderBasicProps, TUIChatHeaderDefault, TUIChatHeaderDefaultProps };
18
+ export { ChatHeaderDefault, TUIChatHeaderBasicProps, TUIChatHeaderDefaultProps };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),a=require("react"),i=require("@tencentcloud/tui-core"),n=require("@tencentcloud/chat"),s=require("@tencentcloud/chat-uikit-engine"),r=require("../Avatar/Avatar.js"),l=require("../utils.js"),c=require("../../utils/env.js"),u=require("../Icon/Icon.js"),o=require("../Icon/type.js");require("react-i18next");var d=require("../../context/UIManagerContext.js"),v=require("../../context/ChatActionContext.js");require("../../context/MessageContext.js");var h=require("../Chat/utils.js");function C(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=C(a),I=C(i),_=C(n);function g(n){var C=n.title,f=void 0===C?"":C,g=n.avatar;n.isOnline;var j=n.conversation,x=n.isLive,p=n.opateIcon,y=n.enableCall,S=void 0!==y&&y,T=v.useTUIChatActionContext().callButtonClicked,m=d.useUIManager().setActiveContact,N=a.useState(f),E=N[0],q=N[1],P=a.useState(""),A=P[0],O=P[1],k=a.useState(!1),M=k[0],b=k[1];a.useEffect((function(){switch(q(f),g&&O(g),null==j?void 0:j.type){case _.default.TYPES.CONV_C2C:!function(e,a){E||q(a||(null==e?void 0:e.nick)||(null==e?void 0:e.userID));g||O(t.jsx(r.Avatar,{size:32,image:l.handleDisplayAvatar(e.avatar)}))}(j.userProfile,null==j?void 0:j.remark);var e=!!I.default.getService(i.TUIConstants.TUICalling.SERVICE.NAME);b(e&&S);break;case _.default.TYPES.CONV_GROUP:!function(e){E||q((null==e?void 0:e.name)||(null==e?void 0:e.groupID));g||O(t.jsx(r.Avatar,{size:32,image:l.handleDisplayAvatar(e.avatar,_.default.TYPES.CONV_GROUP)}))}(j.groupProfile);break;case _.default.TYPES.CONV_SYSTEM:q("System Notice");break;default:q("")}}),[j]);var U=d.useUIManager().setTUIManageShow,V=function(e){var t,a=(null===(t=null==j?void 0:j.userProfile)||void 0===t?void 0:t.userID)||"",i=(null==j?void 0:j.type)||_.default.TYPES.CONV_C2C;h.startCall({callType:i,callMediaType:e,userIDList:[a],callButtonClicked:T})};return t.jsxs("header",e.__assign({className:"tui-chat-header ".concat(x?"tui-chat-live-header":"")},{children:[c.isH5&&t.jsx("div",e.__assign({style:{paddingRight:"10px"}},{children:t.jsx(u.Icon,{onClick:function(){s.TUIConversationService.switchConversation(""),m()},type:o.IconTypes.BACK,width:9,height:16})})),t.jsx("div",e.__assign({className:"tui-chat-header-left ".concat((null==j?void 0:j.type)===_.default.TYPES.CONV_SYSTEM?"system":"")},{children:(null==j?void 0:j.type)!==_.default.TYPES.CONV_SYSTEM&&A})),t.jsx("div",e.__assign({className:"header-content"},{children:t.jsx("h3",e.__assign({className:"title"},{children:E}))})),M&&t.jsxs("div",e.__assign({className:"call-btn-container"},{children:[t.jsx(u.Icon,{className:"call-btn",onClick:function(){return V(2)},type:o.IconTypes.VIDEOCALL,width:24}),t.jsx(u.Icon,{className:"call-btn",onClick:function(){return V(1)},type:o.IconTypes.VOICECALL,width:20})]})),t.jsx("div",e.__assign({className:"tui-chat-header-right"},{children:t.jsx("div",e.__assign({className:"header-handle"},{children:p||t.jsx(u.Icon,{className:"header-handle-more",onClick:function(){U&&U(!0)},type:o.IconTypes.ELLIPSE,width:18,height:5})}))}))]}),null==j?void 0:j.conversationID)}var j=f.default.memo(g);exports.ChatHeaderDefault=function(a){var i=e.__assign({},a);return t.jsx(j,e.__assign({},i))};
@@ -0,0 +1,6 @@
1
+ import React__default from 'react';
2
+
3
+ declare function UnMemoizedChatSetting<T>(): React__default.ReactElement;
4
+ declare const ChatSetting: typeof UnMemoizedChatSetting;
5
+
6
+ export { ChatSetting };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),n=require("react/jsx-runtime"),i=require("react"),a=require("react-i18next"),s=require("@tencentcloud/chat-uikit-engine"),t=require("../Icon/Icon.js"),r=require("../Icon/type.js"),o=require("../Avatar/Avatar.js"),l=require("../Avatar/default.js"),c=require("../Switch/Switch.js");require("@tencentcloud/tui-core");var u=require("../../context/UIManagerContext.js");require("../../context/MessageContext.js");var d=require("../../utils/env.js"),v=require("../ConversationPreview/utils.js");function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function h(){var g=a.useTranslation().t,h=i.useState(),m=h[0],j=h[1],x=i.useState(),_=x[0],f=x[1],I=i.useState(!1),C=I[0],p=I[1],q=i.useState(0),N=q[0];q[1];var S=u.useUIManager(),T=S.conversation,U=S.setActiveConversation,A=S.TUIManageShow,D=S.setTUIManageShow,M=function(){D&&D(!1)};return i.useEffect((function(){j(T),T&&f(v.getMessageProfile(T)),p(!!T&&T.isPinned)}),[T,N]),A&&T&&n.jsxs("div",e.__assign({className:"tui-manage ".concat(d.isH5?"tui-h5-manage":"")},{children:[n.jsxs("div",e.__assign({className:"tui-manage-title"},{children:[d.isPC&&n.jsx(t.Icon,{onClick:M,type:r.IconTypes.CANCEL,width:9,height:16}),d.isH5&&n.jsx(t.Icon,{onClick:M,type:r.IconTypes.BACK,width:9,height:16}),n.jsx("span",e.__assign({style:{marginLeft:"10px"}},{children:g("TUIConversation.Conversation Information")}))]})),n.jsxs("div",e.__assign({className:"tui-manage-container"},{children:[n.jsxs("div",e.__assign({className:"tui-manage-info"},{children:[n.jsx("div",e.__assign({className:"info-avatar"},{children:n.jsx(o.Avatar,{size:64,image:(null==_?void 0:_.avatar)||((null==_?void 0:_.groupID)?l.defaultGroupAvatarWork:l.defaultUserAvatar)})})),n.jsx("div",e.__assign({className:"info-name"},{children:(null==_?void 0:_.nick)||(null==_?void 0:_.name)})),n.jsxs("div",e.__assign({className:"info-id"},{children:["ID:",(null==_?void 0:_.userID)||(null==_?void 0:_.groupID)]}))]})),n.jsxs("div",e.__assign({className:"tui-manage-handle"},{children:[n.jsxs("div",e.__assign({className:"manage-handle-box"},{children:[n.jsx("div",e.__assign({className:"manage-handle-title"},{children:g("TUIConversation.Pin")})),n.jsx(c.Switch,{onChange:function(e){!function(e){if(p(e.target.checked),null==m?void 0:m.conversationID){var n=s.TUIStore.getConversationModel(null==m?void 0:m.conversationID);n&&n.pinConversation()}}(e)},checked:C})]})),d.isPC&&n.jsx("div",e.__assign({className:"manage-handle-box",role:"presentation",onClick:function(){if(null==m?void 0:m.conversationID){var e=s.TUIStore.getConversationModel(null==m?void 0:m.conversationID);e&&e.deleteConversation()}U(void 0)}},{children:n.jsx("div",e.__assign({className:"manage-handle-title red"},{children:g("TUIConversation.Delete")}))}))]}))]}))]}))}var m=g(i).default.memo(h);exports.ChatSetting=m;
@@ -0,0 +1,6 @@
1
+ import React__default, { PropsWithChildren } from 'react';
2
+
3
+ declare function UnMemoizedContact<T>(props: PropsWithChildren<T>): React__default.ReactElement;
4
+ declare const Contact: React__default.MemoExoticComponent<typeof UnMemoizedContact>;
5
+
6
+ export { Contact, UnMemoizedContact };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),e=require("react/jsx-runtime"),i=require("react"),n=require("react-i18next"),s=require("../../context/ContactContext.js"),c=require("../../utils/env.js");require("@tencentcloud/tui-core");var r=require("../../context/UIManagerContext.js");require("../../context/MessageContext.js"),require("@tencentcloud/chat-uikit-engine");var a=require("./hooks/useTUIContact.js"),o=require("./ContactList/ContactList.js"),u=require("../ContactSearch/ContactSearch.js"),d=require("../Icon/Icon.js"),l=require("../Icon/type.js");function h(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function j(h){var j=h.children,x=n.useTranslation().t,C=r.useUIManager().setActiveContact,f=i.useState(!1),p=f[0],q=f[1],v=a(),g=v.friendList,_=v.blockList,I=v.blocklistProfile,L=v.friendApplicationList,m=v.isShowContactList,S=v.setShowContactList,k=i.useMemo((function(){return{friendList:g,blockList:_,blocklistProfile:I,friendApplicationList:L,isShowContactList:m,setShowContactList:S}}),[g,I,L,m,S]);return e.jsx(s.TUIContactContextProvider,t.__assign({value:k},{children:j||e.jsxs("div",t.__assign({className:"tui-contacts ".concat(c.isH5?"tui-contacts-h5":""," ")},{children:[!p&&e.jsxs(e.Fragment,{children:[e.jsxs("div",t.__assign({className:"tui-contacts-header"},{children:[e.jsx("div",t.__assign({className:"tui-contact-input"},{children:e.jsx(u.ContactSearch,{})})),e.jsx(d.Icon,{onClick:function(){C(),q(!0)},type:l.IconTypes.ADDFRIEND,width:24,height:24})]})),e.jsx(o.ContactList,{})]}),p&&e.jsxs(e.Fragment,{children:[e.jsxs("div",t.__assign({className:"tui-contacts-add-header"},{children:[e.jsx(d.Icon,{onClick:function(){C(),q(!1)},type:l.IconTypes.BACK,width:9,height:16}),e.jsx("div",t.__assign({className:"tui-contacts-add-header-title"},{children:x("TUIContact.Add Friend")}))]})),e.jsx(u.ContactSearch,{})]})]}))}))}var x=h(i).default.memo(j);exports.Contact=x,exports.UnMemoizedContact=j;
@@ -0,0 +1,10 @@
1
+ import React__default, { PropsWithChildren } from 'react';
2
+
3
+ interface TUIContactInfoProps {
4
+ className?: string;
5
+ showChats?: () => void;
6
+ }
7
+ declare function UnMemoizedContactInfo<T extends TUIContactInfoProps>(props: PropsWithChildren<T>): React__default.ReactElement;
8
+ declare const ContactInfo: React__default.MemoExoticComponent<typeof UnMemoizedContactInfo>;
9
+
10
+ export { ContactInfo, UnMemoizedContactInfo };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),n=require("react/jsx-runtime"),t=require("react");require("@tencentcloud/tui-core"),require("react-i18next");var r=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js"),require("@tencentcloud/chat-uikit-engine");var i=require("../../../utils/env.js"),o=require("./friendInfo.js"),a=require("./blockInfo.js"),u=require("./addFriendInfo.js"),d=require("./groupInfo.js"),l=require("./friendApplication.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(t){var s=t.showChats,c=r.useUIManager().contactData;return(null==c?void 0:c.type)?n.jsxs("div",e.__assign({className:"tui-contact-info ".concat(i.isH5?"tui-contact-info-h5":""," ")},{children:["addFriend"===(null==c?void 0:c.type)&&n.jsx(u.AddFriendInfo,{profile:null==c?void 0:c.data}),"friend"===(null==c?void 0:c.type)&&n.jsx(o.FriendInfo,{showChats:s,friend:null==c?void 0:c.data}),"block"===(null==c?void 0:c.type)&&n.jsx(a.BlockInfo,{profile:null==c?void 0:c.data}),"group"===(null==c?void 0:c.type)&&n.jsx(d.GroupInfo,{showChats:s,group:null==c?void 0:c.data}),"friendApplication"===(null==c?void 0:c.type)&&n.jsx(l.FriendApplicationInfo,{application:null==c?void 0:c.data})]})):n.jsx(n.Fragment,{children:" "})}var f=s(t).default.memo(c);exports.ContactInfo=f,exports.UnMemoizedContactInfo=c;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),r=require("react/jsx-runtime"),a=require("react"),t=require("react-i18next"),i=require("@tencentcloud/chat-uikit-engine");require("@tencentcloud/tui-core");var n=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js");var s=require("../../Icon/Icon.js"),c=require("../../Icon/type.js"),o=require("../../../utils/env.js"),u=require("../../Avatar/Avatar.js"),d=require("../../Avatar/default.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function v(a){var l=a.profile,v=t.useTranslation().t,x=l.userID,j=l.nick,h=l.selfSignature,f=l.avatar,g=n.useUIManager().setActiveContact;return r.jsxs("div",e.__assign({className:"tui-contact-info-header"},{children:[o.isH5&&r.jsx(s.Icon,{width:9,height:16,type:c.IconTypes.BACK,onClick:function(){i.TUIConversationService.switchConversation(""),g()}}),r.jsxs("div",e.__assign({className:"header-container"},{children:[r.jsxs("div",e.__assign({className:"header-container-avatar"},{children:[r.jsx(u.Avatar,{size:60,image:f||d.defaultUserAvatar}),r.jsx("div",e.__assign({className:"header-container-name"},{children:j||x}))]})),r.jsx("div",e.__assign({className:"header-container-text"},{children:"ID:".concat(x)})),r.jsxs("div",e.__assign({className:"header-container-text"},{children:[v("TUIContact.Signature"),":",h||""]}))]}))]}))}var x=l(a).default.memo(v);exports.BasicInfo=x,exports.UnMemoizedBasicInfo=v;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),n=require("react"),r=require("react-i18next");require("@tencentcloud/tui-core");var i=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js"),require("@tencentcloud/chat-uikit-engine");var c=require("./basicInfo.js"),s=require("../../Switch/Switch.js"),o=require("./hooks/useContactInfo.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(a){var u=this,l=a.profile,f=i.useUIManager(),d=f.contactData,x=f.setActiveContact,h=r.useTranslation().t,j=n.useState(!1),m=j[0],v=j[1],_=o().removeFromBlocklist;n.useEffect((function(){v(!0)}),[d]);return t.jsxs(t.Fragment,{children:[t.jsx(c.BasicInfo,{profile:l}),t.jsx("div",e.__assign({className:"tui-contact-info-content"},{children:t.jsxs("div",e.__assign({className:"content-item"},{children:[t.jsx("p",e.__assign({className:"content-item-label"},{children:h("TUIContact.block")})),t.jsx(s.Switch,{className:"content-item-text",onChange:function(){return e.__awaiter(u,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,_(l.userID)];case 1:return e.sent(),v(!1),x(),[2]}}))}))},checked:m})]}))}))]})}var l=a(n).default.memo(u);exports.BlockInfo=l,exports.UnMemoizedBlockInfo=u;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),n=require("react"),a=require("react-i18next"),i=require("@tencentcloud/chat");require("@tencentcloud/tui-core");var s=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js"),require("@tencentcloud/chat-uikit-engine");var r=require("../../Avatar/Avatar.js"),c=require("../../Avatar/default.js"),o=require("./hooks/useContactInfo.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=l(n),u=l(i);function _(n){var i=s.useUIManager().setActiveContact,l=a.useTranslation().t,d=n.application,_=d.userID,x=d.nick,v=d.avatar,m=d.type,j=d.wording,f=o(),h=f.acceptFriendApplication,g=f.refuseFriendApplication;return t.jsxs(t.Fragment,{children:[t.jsx("div",e.__assign({className:"tui-contact-info-header"},{children:t.jsxs("div",e.__assign({className:"header-container"},{children:[t.jsxs("div",e.__assign({className:"header-container-avatar"},{children:[t.jsx(r.Avatar,{size:60,image:v||c.defaultUserAvatar}),t.jsx("div",e.__assign({className:"header-container-name"},{children:x||_}))]})),t.jsx("div",e.__assign({className:"header-container-text"},{children:"ID:".concat(_)}))]}))})),t.jsx("div",e.__assign({className:"tui-contact-info-content"},{children:t.jsxs("div",e.__assign({className:"content-item"},{children:[t.jsx("p",e.__assign({className:"content-item-label"},{children:l("TUIContact.verification info")})),t.jsx("p",e.__assign({className:"content-item-text"},{children:j}))]}))})),m===u.default.TYPES.SNS_APPLICATION_SENT_TO_ME&&t.jsx("div",e.__assign({className:"tui-contact-info-content"},{children:t.jsxs("div",e.__assign({className:"content-btn-container"},{children:[t.jsx("div",e.__assign({className:"content-item-btn delete-btn",role:"button",tabIndex:0,onClick:function(){i(),g(_)}},{children:l("TUIContact.Refuse")})),t.jsx("div",e.__assign({className:"content-item-btn confirm-btn",role:"button",tabIndex:0,onClick:function(){i(),h(_)}},{children:l("TUIContact.Agree")}))]}))}))]})}var x=d.default.memo(_);exports.FriendApplicationInfo=x,exports.UnMemoizedFriendApplication=_;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),n=require("react"),i=require("react-i18next"),r=require("@tencentcloud/chat-uikit-engine"),s=require("../../../context/UIKitContext.js"),a=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js");var c=require("./basicInfo.js"),o=require("../../Switch/Switch.js"),u=require("./hooks/useContactInfo.js"),l=require("../../DivWithEdit/DivWithEdit.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function f(d){var f=this,m=s.useUIKit().chat,v=a.useUIManager(),h=v.contactData,x=v.setActiveContact,_=v.setActiveConversation,j=i.useTranslation().t,g=d.friend,C=d.showChats,b=g.userID,I=g.profile,k=g.remark,q=n.useState(""),p=q[0],N=q[1],U=n.useState(""),w=U[0],S=U[1],D=n.useState(!1),T=D[0],M=D[1],E=u(),F=E.addToBlocklist,y=E.deleteFriend;n.useEffect((function(){M(!1),S(k)}),[h,k]);return t.jsxs(t.Fragment,{children:[t.jsx(c.BasicInfo,{profile:I}),t.jsxs("div",e.__assign({className:"tui-contact-info-content"},{children:[t.jsxs("div",e.__assign({className:"content-item"},{children:[t.jsx("p",e.__assign({className:"content-item-label"},{children:j("TUIContact.remark")})),t.jsx(l.DivWithEdit,{name:"remark",className:"content-item-text",value:w,type:"text",toggle:function(){N("remark")},isEdit:"remark"===p,confirm:function(e){m.updateFriend({userID:b,remark:null==e?void 0:e.value}),S(null==e?void 0:e.value),N("")},close:function(){N("")}})]})),t.jsxs("div",e.__assign({className:"content-item"},{children:[t.jsx("p",e.__assign({className:"content-item-label"},{children:j("TUIContact.block")})),t.jsx(o.Switch,{className:"content-item-text",onChange:function(){return e.__awaiter(f,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,F(b)];case 1:return e.sent(),M(!0),x(),[2]}}))}))},checked:T})]})),t.jsxs("div",e.__assign({className:"content-btn-container"},{children:[t.jsx("div",e.__assign({className:"content-item-btn delete-btn",role:"button",tabIndex:0,onClick:function(){return e.__awaiter(f,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,y(b)];case 1:return e.sent(),x(),[2]}}))}))}},{children:j("TUIContact.Delete friend")})),t.jsx("div",e.__assign({className:"content-item-btn confirm-btn",role:"button",tabIndex:0,onClick:function(){var e="C2C".concat(b);C&&C(),r.TUIConversationService.switchConversation(e).then((function(e){_(e.getConversation())}))}},{children:j("TUIContact.Send Message")}))]}))]}))]})}var m=d(n).default.memo(f);exports.FriendInfo=m,exports.UnMemoizedFriendInfo=f;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),n=require("react/jsx-runtime"),t=require("react"),r=require("react-i18next"),a=require("@tencentcloud/chat-uikit-engine");require("@tencentcloud/tui-core");var i=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js");var s=require("../../Icon/Icon.js"),c=require("../../Icon/type.js"),o=require("../../../utils/env.js"),u=require("../../Avatar/Avatar.js"),d=require("../../Avatar/default.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function l(t){var v=t.group,l=t.showChats,h=i.useUIManager(),x=h.setActiveContact,j=h.setActiveConversation,g=r.useTranslation().t,m=v.groupID,_=v.name,f=v.avatar;return n.jsxs(n.Fragment,{children:[n.jsxs("div",e.__assign({className:"tui-contact-info-header"},{children:[o.isH5&&n.jsx(s.Icon,{width:9,height:16,type:c.IconTypes.BACK,onClick:function(){a.TUIConversationService.switchConversation(""),x()}}),n.jsxs("div",e.__assign({className:"header-container"},{children:[n.jsxs("div",e.__assign({className:"header-container-avatar"},{children:[n.jsx(u.Avatar,{size:60,image:f||d.defaultUserAvatar}),n.jsx("div",e.__assign({className:"header-container-name"},{children:_||m}))]})),n.jsx("div",e.__assign({className:"header-container-text"},{children:"groupID:".concat(m)}))]}))]})),n.jsx("div",e.__assign({className:"tui-contact-info-content"},{children:n.jsx("div",e.__assign({className:"content-btn-container"},{children:n.jsx("div",e.__assign({className:"content-item-btn confirm-btn",role:"button",tabIndex:0,onClick:function(){var e="GROUP".concat(m);l&&l(),a.TUIConversationService.switchConversation(e).then((function(e){j(e.getConversation())}))}},{children:g("TUIContact.Send Message")}))}))}))]})}var h=v(t).default.memo(l);exports.GroupInfo=h,exports.UnMemoizedGroupInfo=l;
@@ -0,0 +1 @@
1
+ "use strict";var e=require("tslib"),t=require("react"),r=require("@tencentcloud/chat"),i=require("../../../Toast/index.js"),n=require("../../../../context/UIKitContext.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("react/jsx-runtime"),require("@tencentcloud/chat-uikit-engine"),require("../../../../context/MessageContext.js");var c=u(r);module.exports=function(){var r=this,u=n.useUIKit().chat,a=t.useCallback((function(e){u.removeFromBlacklist({userIDList:[e]})}),[u]),o=t.useCallback((function(e){u.addFriend({to:null==e?void 0:e.userID,source:"AddSource_Type_Web",remark:null==e?void 0:e.remark,wording:null==e?void 0:e.wording}).catch((function(e){console.warn("delete friend failed:",e),i.Toast({text:e,type:"error"})}))}),[u]),l=t.useCallback((function(e){u.deleteFriend({userIDList:[e]})}),[u]);return{addToBlocklist:t.useCallback((function(e){u.addToBlacklist({userIDList:[e]})}),[u]),removeFromBlocklist:a,isFriend:function(e){return new Promise((function(t,r){u.checkFriend({userIDList:[null==e?void 0:e.userID],type:c.default.TYPES.SNS_CHECK_TYPE_BOTH}).then((function(e){var r,i;switch(null===(i=null===(r=null==e?void 0:e.data)||void 0===r?void 0:r.successUserIDList[0])||void 0===i?void 0:i.relation){case c.default.TYPES.SNS_TYPE_NO_RELATION:case c.default.TYPES.SNS_TYPE_A_WITH_B:case c.default.TYPES.SNS_TYPE_B_WITH_A:t(!1);break;case c.default.TYPES.SNS_TYPE_BOTH_WAY:t(!0);break;default:t(!1)}})).catch((function(e){console.warn("checkFriend error",e),r(e)}))}))},isBlock:function(t){return e.__awaiter(r,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,u.getBlacklist()];case 1:return[2,e.sent().data.includes(t)]}}))}))},addFriend:o,deleteFriend:l,acceptFriendApplication:t.useCallback((function(e){u.acceptFriendApplication({userID:e,type:c.default.TYPES.SNS_APPLICATION_AGREE_AND_ADD})}),[u]),refuseFriendApplication:t.useCallback((function(e){u.refuseFriendApplication({userID:e})}),[u])}};
@@ -0,0 +1,6 @@
1
+ import React__default from 'react';
2
+
3
+ declare function UnMemoizedContactList<T>(): React__default.ReactElement;
4
+ declare const ContactList: React__default.MemoExoticComponent<typeof UnMemoizedContactList>;
5
+
6
+ export { ContactList };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),s=require("react/jsx-runtime"),i=require("react"),e=require("react-i18next"),n=require("@tencentcloud/chat"),a=require("../../../utils/env.js");require("@tencentcloud/tui-core");var c=require("../../../context/UIManagerContext.js");require("../../../context/MessageContext.js");var o=require("../../../context/ContactContext.js");require("@tencentcloud/chat-uikit-engine");var r=require("../ContactInfo/hooks/useContactInfo.js"),l=require("../hooks/useTUIContact.js"),u=require("../../Avatar/Avatar.js"),d=require("../../Avatar/default.js");function _(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var x=_(i),m=_(n);function p(){var n=c.useUIManager().setActiveContact,_=e.useTranslation().t,x=o.useTUIContactContext("TUIContactList"),p=x.isShowContactList,j=x.friendList,v=x.blocklistProfile,h=x.friendApplicationList,f=r().acceptFriendApplication,g=l().groupList,C=i.useState(!1),N=C[0],I=C[1],S=i.useState(!1),b=S[0],T=S[1],A=i.useState(!1),q=A[0],k=A[1],U=i.useState(!1),w=U[0],L=U[1],P=function(i){var e=i.type,a=i.isShow,c=i.setShow,o=i.list,r=i.title;return s.jsxs(s.Fragment,{children:[s.jsxs("div",t.__assign({className:"tui-contacts-title",role:"button",tabIndex:0,onClick:function(){return c(!a)}},{children:[s.jsx("div",t.__assign({className:"tui-contacts-list-title"},{children:r})),s.jsx("div",t.__assign({className:"tui-contacts-list-icon"},{children:a?s.jsx("i",t.__assign({className:"iconfont contacts-list-icon"},{children:""})):s.jsx("i",t.__assign({className:"iconfont contacts-list-icon"},{children:""}))}))]})),a&&(null==o?void 0:o.map((function(i){var a=i.profile||i,c=a.userID,o=a.groupID,r=a.avatar,l=a.name,_=a.nick,x=i.remark||_||c||l||o;return s.jsxs("div",t.__assign({role:"button",tabIndex:0,className:"tui-contacts-list-item",onClick:function(){n({type:e,data:i})}},{children:[s.jsx(u.Avatar,{size:30,image:r||d.defaultUserAvatar}),s.jsx("div",t.__assign({className:"tui-contacts-list-item-container"},{children:s.jsx("p",t.__assign({className:"tui-contacts-list-item-name"},{children:x}))}))]}),c||o)})))]})};return p&&s.jsxs("div",t.__assign({className:"tui-contacts-list ".concat(a.isH5?"tui-contacts-list-h5":""," ")},{children:[s.jsxs("div",t.__assign({className:"tui-contacts-title",role:"button",tabIndex:0,onClick:function(){return I(!N)}},{children:[s.jsx("p",t.__assign({className:"tui-contacts-list-title"},{children:_("TUIContact.New Contacts")})),s.jsx("div",t.__assign({className:"tui-contacts-list-icon"},{children:N?s.jsx("i",t.__assign({className:"iconfont contacts-list-icon"},{children:""})):s.jsx("i",t.__assign({className:"iconfont contacts-list-icon"},{children:""}))}))]})),N&&(null==h?void 0:h.map((function(i,e){var a=i.userID,c=i.avatar,o=i.nick,r=i.wording,l=i.type;return s.jsxs("div",t.__assign({role:"button",tabIndex:0,className:"tui-contacts-list-item",onClick:function(t){t.stopPropagation(),n({type:"friendApplication",data:i})}},{children:[s.jsx(u.Avatar,{size:30,image:c||d.defaultUserAvatar}),s.jsxs("div",t.__assign({className:"tui-contacts-list-item-card"},{children:[s.jsxs("div",{children:[s.jsx("p",t.__assign({className:"tui-contacts-list-item-name text-ellipsis"},{children:o||a})),""!==r&&s.jsx("p",t.__assign({className:"tui-contacts-list-item-text text-ellipsis"},{children:r}))]}),l===m.default.TYPES.SNS_APPLICATION_SENT_BY_ME&&s.jsx("p",t.__assign({className:"tui-contacts-list-btn-text text-ellipsis"},{children:_("TUIContact.waiting for verification")})),l===m.default.TYPES.SNS_APPLICATION_SENT_TO_ME&&s.jsx("div",t.__assign({className:"application-btn",role:"button",tabIndex:0,onClick:function(t){!function(t,s){t.stopPropagation(),f(s),n()}(t,a)}},{children:_("TUIContact.Agree")}))]}))]}),a)}))),s.jsx(P,{type:"block",title:_("TUIContact.Blocked List"),isShow:q,setShow:k,list:v}),s.jsx(P,{type:"group",title:_("TUIContact.Group List"),setShow:L,isShow:w,list:g}),s.jsx(P,{type:"friend",title:_("TUIContact.Friends"),setShow:T,isShow:b,list:j})]}))}var j=x.default.memo(p);exports.ContactList=j;
@@ -0,0 +1 @@
1
+ "use strict";var t=require("tslib"),e=require("react"),n=require("@tencentcloud/chat"),i=require("@tencentcloud/chat-uikit-engine"),r=require("../../../context/UIKitContext.js");function a(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}require("react/jsx-runtime"),require("../../../context/MessageContext.js");var u=a(n);module.exports=function(){var n=this,a=r.useUIKit().chat,o=e.useState([]),c=o[0],s=o[1],l=e.useState([]),d=l[0],f=l[1],v=e.useState([]),_=v[0],L=v[1],h=e.useState([]),g=h[0],E=h[1],S=e.useState(),p=S[0],w=S[1],I=e.useState(!0),T=I[0],A=I[1];e.useEffect((function(){i.TUIStore.watch(i.StoreName.GRP,{groupList:D}),P(),q(),b()}),[a]);var D=function(t){w(t)};e.useEffect((function(){null==a||a.on(u.default.EVENT.BLACKLIST_UPDATED,x),null==a||a.on(u.default.EVENT.FRIEND_LIST_UPDATED,C),null==a||a.on(u.default.EVENT.FRIEND_APPLICATION_LIST_UPDATED,U)}),[a]);var b=function(){return t.__awaiter(n,void 0,void 0,(function(){var e;return t.__generator(this,(function(t){switch(t.label){case 0:return[4,a.getFriendApplicationList()];case 1:return e=t.sent().data,L(null==e?void 0:e.friendApplicationList),[2]}}))}))},P=function(){return t.__awaiter(n,void 0,void 0,(function(){var e,n,i;return t.__generator(this,(function(t){switch(t.label){case 0:return[4,null==a?void 0:a.getFriendList()];case 1:return e=t.sent(),n=e.code,i=e.data,0===n&&s(i),[2]}}))}))},q=function(){return t.__awaiter(n,void 0,void 0,(function(){var e;return t.__generator(this,(function(t){switch(t.label){case 0:return[4,null==a?void 0:a.getBlacklist()];case 1:return 0===(e=t.sent().data).length||(f(e),N(e)),[2]}}))}))},N=function(e){return t.__awaiter(n,void 0,void 0,(function(){var n;return t.__generator(this,(function(t){switch(t.label){case 0:return[4,a.getUserProfile({userIDList:e})];case 1:return n=t.sent().data,E(n),[2]}}))}))},U=function(t){var e;L(null===(e=null==t?void 0:t.data)||void 0===e?void 0:e.friendApplicationList)},x=function(t){f(t.data),N(t.data)},C=function(t){s(t.data)};return{friendList:c,groupList:p,blocklistProfile:g,friendApplicationList:_,blockList:d,isShowContactList:T,setShowContactList:A}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),r=require("react"),n=require("react-i18next");require("@tencentcloud/tui-core");var a=require("../../context/UIManagerContext.js");require("../../context/MessageContext.js");var i=require("../../context/ContactContext.js");require("@tencentcloud/chat-uikit-engine");var o=require("./hooks/useContactSearch.js"),u=require("../Icon/Icon.js"),s=require("../Icon/type.js"),c=require("../Avatar/Avatar.js"),l=require("../Avatar/default.js"),d=require("../Input/Input.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function f(){var v=this,f=a.useUIManager().setActiveContact,h=n.useTranslation().t,x=i.useTUIContactContext("TUIContactList"),j=x.friendList,I=x.setShowContactList,g=r.useState(!1),p=g[0],_=g[1],C=o(),m=C.checkFriend,q=C.isBlock,y=C.getUserProfile,U=r.useState(""),b=U[0],S=U[1],k=r.useState([]),A=k[0],w=k[1];return t.jsxs("div",e.__assign({className:"tui-contact-search"},{children:[t.jsx(d.Input,{className:"tui-contact-search-input",placeholder:h("TUIContact.Enter a userID"),clearable:!0,value:b,onBlur:function(e){var t;S(null===(t=e.target)||void 0===t?void 0:t.value)},onFocus:function(){f()},onChange:function(e){var t,r;if(""===(null===(t=e.target)||void 0===t?void 0:t.value))return I&&I(!0),_(!1),void w([]);_(!0),S(null===(r=e.target)||void 0===r?void 0:r.value),I&&I(!1)},onKeyDown:function(){return e.__awaiter(v,void 0,void 0,(function(){return e.__generator(this,(function(e){return b&&y(b).then((function(e){var t=e.data;w(t)})),[2]}))}))},prefix:t.jsx(u.Icon,{type:s.IconTypes.SEARCH,height:16,width:16})}),p&&0===A.length?t.jsx("div",e.__assign({className:"tui-contact-search-item"},{children:h("TUIContact.No Result")})):A.map((function(r,n){var a=r.userID,i=r.avatar,o=r.nick;return t.jsxs("div",e.__assign({className:"tui-contact-search-item",role:"button",tabIndex:0,onClick:function(){var t;t=r,e.__awaiter(v,void 0,void 0,(function(){var r;return e.__generator(this,(function(e){switch(e.label){case 0:return[4,m(t)];case 1:return e.sent()?((r=null==j?void 0:j.find((function(e){return e.userID===b})))&&f({type:"friend",data:r}),[2]):q(t.userID)?(f({type:"block",data:t}),[2]):(f({type:"addFriend",data:t}),[2])}}))}))}},{children:[t.jsx(c.Avatar,{size:30,image:i||l.defaultUserAvatar}),t.jsx("div",e.__assign({className:"search-item-name"},{children:o||a}))]}),a)}))]}))}var h=v(r).default.memo(f);exports.ContactSearch=h,exports.UnMemoizedContactSearch=f;
@@ -0,0 +1 @@
1
+ "use strict";var e=require("@tencentcloud/chat"),t=require("../../../context/UIKitContext.js");require("tslib"),require("react/jsx-runtime"),require("react"),require("@tencentcloud/chat-uikit-engine"),require("../../../context/MessageContext.js");var r=require("../../../context/ContactContext.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i=n(e);module.exports=function(){var e=r.useTUIContactContext("TUIContactList").blockList,n=t.useUIKit().chat;return{checkFriend:function(e){return n.checkFriend({userIDList:[null==e?void 0:e.userID],type:i.default.TYPES.SNS_CHECK_TYPE_BOTH}).then((function(e){var t,r;return(null===(r=null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.successUserIDList[0])||void 0===r?void 0:r.relation)===i.default.TYPES.SNS_TYPE_BOTH_WAY}))},isBlock:function(t){return null==e?void 0:e.includes(t)},getUserProfile:function(e){return n.getUserProfile({userIDList:[e]})}}};
@@ -0,0 +1,52 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { IConversationModel } from '@tencentcloud/chat-uikit-engine';
4
+
5
+ interface IConversationActionsConfig {
6
+ /** Determines whether the pin button appears on the conversation actions list view. (Default: True) */
7
+ enablePin?: boolean;
8
+ /** Determines whether the mute button appears on the conversation actions list view. (Default: True) */
9
+ enableMute?: boolean;
10
+ /** Determines whether the delete button appears on the conversation actions list view. (Default: True) */
11
+ enableDelete?: boolean;
12
+ /** Function to override the default behavior when user pin or unpin a conversation. */
13
+ onConversationPin?: (conversation: IConversationModel, e?: React__default.MouseEvent) => void;
14
+ /** Function to override the default behavior when user mute or unmute a conversation. */
15
+ onConversationMute?: (conversation: IConversationModel, e?: React__default.MouseEvent) => void;
16
+ /** Function to override the default behavior when user delete a conversation. */
17
+ onConversationDelete?: (conversation: IConversationModel, e?: React__default.MouseEvent) => void;
18
+ /**
19
+ * An object containing custom conversation actions (key) and object (value).
20
+ * Each value is an object with the following properties:
21
+ * enable: Determines whether the custom action is enabled. (Default: True)
22
+ * label: The label of the custom action.
23
+ * onClick: The function to be called when the custom action is clicked.
24
+ * Note: The key of the custom action must be unique.
25
+ */
26
+ customConversationActions?: Record<string, IConversationActionItem>;
27
+ /** The icon react element to be displayed in the action popup. */
28
+ PopupIcon?: React__default.ReactElement;
29
+ /** An array of react elements to be displayed in the action popup. */
30
+ PopupElements?: React__default.ReactElement[];
31
+ /** The function to be called when the action popup is clicked. */
32
+ onClick?: (e: React__default.MouseEvent, key?: string, conversation?: IConversationModel) => void;
33
+ }
34
+ interface IConversationActionsProps extends IConversationActionsConfig {
35
+ /** The conversation model. */
36
+ conversation: IConversationModel;
37
+ /** The class name of the root element. */
38
+ className?: string;
39
+ /** The style of the root element. */
40
+ style?: React__default.CSSProperties;
41
+ }
42
+ interface IConversationActionItem {
43
+ /** Determines whether the custom action is enabled. (Default: True) */
44
+ enable?: boolean;
45
+ /** label: The label of the custom action. */
46
+ label: string;
47
+ /** onClick: The function to be called when the custom action is clicked. */
48
+ onClick: (conversation: IConversationModel, e?: React__default.MouseEvent) => void;
49
+ }
50
+ declare const ConversationActions: (props: IConversationActionsProps) => react_jsx_runtime.JSX.Element;
51
+
52
+ export { ConversationActions, IConversationActionItem, IConversationActionsConfig, IConversationActionsProps };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),n=require("react/jsx-runtime"),o=require("react"),i=require("react-i18next"),t=require("../../node_modules/classnames/index.js"),s=require("../Plugins/index.js"),a=require("../Icon/Icon.js"),r=require("../Icon/type.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=l(o);exports.ConversationActions=function(l){var u=l.conversation,v=l.PopupIcon,d=l.enablePin,p=void 0===d||d,C=l.enableMute,f=void 0===C||C,_=l.enableDelete,m=void 0===_||_,b=l.onConversationPin,k=l.onConversationMute,j=l.onConversationDelete,I=l.customConversationActions,x=l.PopupElements,P=l.onClick,g=l.className,M=l.style,q=i.useTranslation().t,y=o.useRef(null),T=c.default.useState({}),U=T[0],h=T[1],N={delete:{enable:m,label:q("TUIConversation.Delete"),onClick:j||function(e){e.deleteConversation()}},pin:{enable:p,label:q(u.isPinned?"TUIConversation.Unpin":"TUIConversation.Pin"),onClick:b||function(e){e.pinConversation()}},mute:{enable:f,label:q(u.isMuted?"TUIConversation.Unmute":"TUIConversation.Mute"),onClick:k||function(e){e.muteConversation()}}};o.useEffect((function(){h(e.__assign(e.__assign({},N),I))}),[u,I]);var D=function(e,n){var o,i;(null===(o=null==y?void 0:y.current)||void 0===o?void 0:o.closeMore)&&y.current.closeMore(),null==P||P(e,n,u),null===(i=U[n])||void 0===i||i.onClick(u,e)};return n.jsx("div",e.__assign({className:t({"uikit-conversation-actions":!0,className:g}),style:M,onClick:function(e){e.stopPropagation()}},{children:n.jsx(s.Plugins,{customClass:"uikit-conversation-actions__container",ref:y,plugins:x||Object.keys(U).map((function(o){return!1===U[o].enable?null:n.jsx("div",e.__assign({className:t("uikit-conversation-actions__item",["uikit-conversation-actions__item--".concat(o)]),onClick:function(e){return D(e,o)}},{children:U[o].label}),o)})),showNumber:0,MoreIcon:v||n.jsx(a.Icon,{className:"uikit-conversation-actions__popup-icon",width:16,height:16,type:r.IconTypes.MORE})})}))};
@@ -0,0 +1,21 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { CreateGroupParams, IConversationModel } from '@tencentcloud/chat-uikit-engine';
4
+
5
+ interface IConversationCreateProps {
6
+ visible?: boolean;
7
+ className?: string;
8
+ style?: React__default.CSSProperties;
9
+ onBeforeCreateConversation?: (params: string | CreateGroupParams) => string | CreateGroupParams;
10
+ onConversationCreated?: (conversation: IConversationModel) => void;
11
+ onChangeCreateModelVisible: (visible: boolean) => void;
12
+ conversationList?: IConversationModel[];
13
+ }
14
+ declare enum PageStateTypes {
15
+ USER_SELECT = "Next",
16
+ CREATE_DETAIL = "Create",
17
+ GROUP_TYPE = "GroupType"
18
+ }
19
+ declare function ConversationCreate<T extends IConversationCreateProps>(props: T): react_jsx_runtime.JSX.Element | null;
20
+
21
+ export { ConversationCreate, IConversationCreateProps, PageStateTypes };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),s=require("react"),r=require("react-i18next"),a=require("../Icon/Icon.js"),o=require("../Icon/type.js"),i=require("./ConversationCreateUserSelectList.js"),n=require("./ConversationCreatGroupDetail.js"),c=require("../../context/UIKitContext.js");require("@tencentcloud/chat-uikit-engine"),require("../../context/TUIMessageContext.js");var u,p=require("../../hooks/useConversation.js");exports.PageStateTypes=void 0,(u=exports.PageStateTypes||(exports.PageStateTypes={})).USER_SELECT="Next",u.CREATE_DETAIL="Create",u.GROUP_TYPE="GroupType",exports.ConversationCreate=function(u){var C=u.className,S=void 0===C?"":C,T=u.setConversationCreated,v=u.conversationList,E=void 0===v?[]:v,l=r.useTranslation().t,x=s.useState(!1),d=x[0],g=x[1],P=s.useState(exports.PageStateTypes.USER_SELECT),_=P[0],j=P[1],y=s.useState([]),L=y[0],I=y[1],U=c.useUIKit().chat,h=p.useConversation(U).createConversation,q=function(){if(d)switch(_){case exports.PageStateTypes.USER_SELECT:g(!1);break;case exports.PageStateTypes.CREATE_DETAIL:j(exports.PageStateTypes.USER_SELECT),I([]);break;case exports.PageStateTypes.GROUP_TYPE:j(exports.PageStateTypes.CREATE_DETAIL)}else T(!1)};return s.useMemo((function(){return t.jsxs(t.Fragment,{children:[t.jsxs("div",e.__assign({className:"tui-conversation-create-header"},{children:[t.jsx(a.Icon,{onClick:q,type:o.IconTypes.BACK,width:9,height:16}),t.jsx("div",e.__assign({className:"title"},{children:l(d?"TUIConversation.Add Participants":"TUIConversation.Start chat")}))]})),_===exports.PageStateTypes.USER_SELECT?t.jsx(i.ConversationCreateUserSelectList,{isCreateGroup:d,setIsCreateGroup:g,className:S,selectList:L,setSelectList:I,conversationList:E,setConversationCreated:T,setPageState:j}):t.jsx(n.ConversationCreatGroupDetail,{pageState:_,setPageState:j,profileList:L.map((function(e){return null==e?void 0:e.profile})),createConversation:h,setConversationCreated:T})]})}),[d,L,_])};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),s=require("react/jsx-runtime"),r=require("react"),a=require("react-i18next"),n=require("@tencentcloud/chat-uikit-engine"),o=require("../../node_modules/classnames/index.js"),i=require("../Icon/Icon.js"),c=require("../Icon/type.js"),u=require("./ConversationCreateButton.js"),C=require("./ConversationCreateUserSelectList.js"),l=require("./ConversationCreateGroupDetail.js");exports.PageStateTypes=void 0,(e=exports.PageStateTypes||(exports.PageStateTypes={})).USER_SELECT="Next",e.CREATE_DETAIL="Create",e.GROUP_TYPE="GroupType",exports.ConversationCreate=function(e){var p=e.visible,v=void 0===p||p,S=e.className,T=e.style,E=e.onChangeCreateModelVisible,d=e.conversationList,x=void 0===d?[]:d,_=e.onBeforeCreateConversation,g=e.onConversationCreated,P=a.useTranslation().t,y=r.useState(!1),f=y[0],j=y[1],L=r.useState(!1),h=L[0],I=L[1],U=r.useState(exports.PageStateTypes.USER_SELECT),q=U[0],R=U[1],m=r.useState([]),A=m[0],G=m[1],b=function(e){j(!1),B(),n.TUIConversationService.switchConversation(e.conversationID),null==g||g(e)};r.useEffect((function(){E(f)}),[E,f]);var k=function(){if(h)switch(q){case exports.PageStateTypes.USER_SELECT:I(!1);break;case exports.PageStateTypes.CREATE_DETAIL:R(exports.PageStateTypes.USER_SELECT),G([]);break;case exports.PageStateTypes.GROUP_TYPE:R(exports.PageStateTypes.CREATE_DETAIL)}else j(!1),B()};function B(){I(!1),R(exports.PageStateTypes.USER_SELECT),G([])}return r.useMemo((function(){return v?s.jsxs("div",t.__assign({className:o("uikit-conversation-create-container",S),style:T},{children:[!f&&s.jsx(u.ConversationCreateButton,{onClick:function(){return j(!0)}}),f&&s.jsxs("div",t.__assign({className:"tui-conversation-create"},{children:[s.jsxs("div",t.__assign({className:"tui-conversation-create-header"},{children:[s.jsx(i.Icon,{onClick:k,type:c.IconTypes.BACK,width:9,height:16}),s.jsx("div",t.__assign({className:"title"},{children:P(h?"TUIConversation.Add Participants":"TUIConversation.Start chat")}))]})),q===exports.PageStateTypes.USER_SELECT?s.jsx(C.ConversationCreateUserSelectList,{isCreateGroup:h,setIsCreateGroup:I,selectList:A,setSelectList:G,conversationList:x,onBeforeCreateConversation:_,onConversationCreated:b,setPageState:R}):s.jsx(l.ConversationCreateGroupDetail,{pageState:q,setPageState:R,profileList:A.map((function(e){return null==e?void 0:e.profile})),onBeforeCreateConversation:_,onConversationCreated:b})]}))]})):null}),[v,S,f,h,q,A,x,_])};
@@ -0,0 +1,13 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+
4
+ interface IConversationCreateButtonProps {
5
+ visible?: boolean;
6
+ onClick?: (event: React__default.BaseSyntheticEvent) => void;
7
+ height?: number;
8
+ width?: number;
9
+ className?: string;
10
+ }
11
+ declare const ConversationCreateButton: (props: IConversationCreateButtonProps) => react_jsx_runtime.JSX.Element | null;
12
+
13
+ export { ConversationCreateButton, IConversationCreateButtonProps };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),i=require("react/jsx-runtime"),r=require("../../node_modules/classnames/index.js"),s=require("../Icon/Icon.js"),t=require("../Icon/type.js");exports.ConversationCreateButton=function(n){var o=n.visible,c=void 0===o||o,u=n.className,a=n.onClick,l=n.height,d=void 0===l?24:l,v=n.width,h=void 0===v?24:v;return c?i.jsx("div",e.__assign({className:r("tui-conversation-create-button",u)},{children:i.jsx(s.Icon,{onClick:a,type:t.IconTypes.CREATE,height:d,width:h})})):null};
@@ -0,0 +1,16 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { Profile } from '@tencentcloud/chat';
4
+ import { CreateGroupParams, IConversationModel } from '@tencentcloud/chat-uikit-engine';
5
+ import { PageStateTypes } from './ConversationCreate.js';
6
+
7
+ interface ConversationCreateGroupDetailProps {
8
+ profileList: Profile[];
9
+ pageState: PageStateTypes;
10
+ setPageState: React__default.Dispatch<React__default.SetStateAction<PageStateTypes>>;
11
+ onBeforeCreateConversation?: (params: CreateGroupParams) => void;
12
+ onConversationCreated?: (conversation: IConversationModel) => void;
13
+ }
14
+ declare function ConversationCreateGroupDetail(props: ConversationCreateGroupDetailProps): react_jsx_runtime.JSX.Element;
15
+
16
+ export { ConversationCreateGroupDetail, ConversationCreateGroupDetailProps };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),r=require("react/jsx-runtime"),t=require("react"),a=require("react-i18next"),n=require("../Input/Input.js"),i=require("../Icon/Icon.js"),s=require("../Icon/type.js"),o=require("../Toast/index.js"),u=require("../Avatar/Avatar.js"),c=require("../Avatar/default.js"),p=require("./ConversationCreate.js"),l=require("./ConversationGroupTypeInfo.js");require("@tencentcloud/tui-core");var v=require("../../context/UIManagerContext.js");require("../../context/MessageContext.js"),require("@tencentcloud/chat-uikit-engine");var d=require("../../hooks/useConversation.js");exports.ConversationCreateGroupDetail=function(g){var x=this,f=g.profileList,_=g.pageState,m=g.setPageState,h=g.onBeforeCreateConversation,j=g.onConversationCreated,C=a.useTranslation().t,I=v.useUIManager();I.setActiveConversation;var y=I.myProfile,T=e.__spreadArray([],f,!0);y&&T.unshift(y);var G=T.map((function(e){return e.nick||e.userID})).toString(),N=t.useState(G.length>=15?"".concat(G.slice(0,12),"..."):G),b=N[0],q=N[1],A=t.useState(""),k=A[0],P=A[1],U=t.useState(l.GroupType.Work),S=U[0],D=U[1],R=function(e,r){var t=e.target.value;switch(r){case"name":q(t);break;case"id":P(t);break;case"type":D(t)}},L=function(){m(p.PageStateTypes.GROUP_TYPE)};return _!==p.PageStateTypes.GROUP_TYPE?r.jsxs(r.Fragment,{children:[r.jsxs("div",e.__assign({className:"tui-conversation-create-group-detail"},{children:[r.jsx("div",e.__assign({className:"create-group-box create-group-name"},{children:r.jsx(n.Input,{maxLength:15,value:b,onChange:function(e){R(e,"name")},border:"bottom",inputClassName:"input-group-name",clearable:!0,prefix:r.jsx("div",e.__assign({className:"input-group-title"},{children:C("TUIConversation.Group Name")}))})})),r.jsx("div",e.__assign({className:"create-group-box create-group-id"},{children:r.jsx(n.Input,{border:"bottom",inputClassName:"input-group-text",clearable:!0,value:k,onChange:function(e){R(e,"id")},prefix:r.jsx("div",e.__assign({className:"input-group-title"},{children:C("TUIConversation.Group ID")}))})})),r.jsx("div",e.__assign({className:"create-group-box create-group-type",onClick:L},{children:r.jsx(n.Input,{readOnly:!0,border:"bottom",inputClassName:"input-group-text",prefix:r.jsx("div",e.__assign({className:"input-group-title"},{children:C("TUIConversation.Group Type")})),suffix:r.jsx(i.Icon,{onClick:L,type:s.IconTypes.ARROW_RIGHT,width:7,height:12}),value:C("TUIConversation.".concat(S)),onChange:function(e){R(e,"type")}})})),r.jsx("div",e.__assign({className:"create-group-illustrate"},{children:C("TUIConversation.".concat(null===l.typeInfoList||void 0===l.typeInfoList?void 0:l.typeInfoList.find((function(e){return e.type===S})).des))})),r.jsxs("div",e.__assign({className:"create-group-portrait"},{children:[r.jsx("div",e.__assign({className:"create-group-portrait-title"},{children:C("TUIConversation.Participants")})),r.jsx("div",e.__assign({className:"create-group-portrait-info-container"},{children:f.map((function(t){var a=t.avatar,n=t.userID,i=t.nick;return r.jsxs("div",e.__assign({className:"create-group-portrait-info"},{children:[r.jsx(u.Avatar,{shape:"square",size:50,image:a||c.defaultUserAvatar}),r.jsx("div",e.__assign({className:"create-group-portrait-info-nick"},{children:i}))]}),n)}))}))]}))]})),r.jsx("div",e.__assign({className:"tui-conversation-create-next-container"},{children:r.jsx("div",e.__assign({role:"presentation",className:"tui-conversation-create-next",onClick:function(){return e.__awaiter(x,void 0,void 0,(function(){var r,t,a,n;return e.__generator(this,(function(e){return r=f.map((function(e){return{userID:e.userID}})),t=function(e){switch(e){case l.GroupType.Work:return c.defaultGroupAvatarWork;case l.GroupType.Public:return c.defaultGroupAvatarPublic;case l.GroupType.Meeting:return c.defaultGroupAvatarMeeting;case l.GroupType.AVChatRoom:return c.defaultGroupAvatarAVChatRoom;default:return""}}(S),a={name:b,type:S,groupID:k,avatar:t,memberList:r},n=(null==h?void 0:h(a))||a,d.createGroupConversation(n).then((function(e){null==j||j(e)})).catch((function(e){o.Toast({text:e.message,type:"error"})})),[2]}))}))}},{children:C("TUIConversation.Create")}))}))]}):r.jsx(l.ConversationGroupTypeInfo,{groupType:S,setGroupType:D,setPageState:m})};
@@ -0,0 +1,15 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { Profile } from '@tencentcloud/chat';
4
+
5
+ interface ValueProps {
6
+ profile: Profile;
7
+ domList: HTMLInputElement[];
8
+ }
9
+ interface ConversationCreateSelectViewProps {
10
+ selectList: ValueProps[];
11
+ setSelectList: React__default.Dispatch<React__default.SetStateAction<ValueProps[]>>;
12
+ }
13
+ declare function ConversationCreateSelectView(props: ConversationCreateSelectViewProps): react_jsx_runtime.JSX.Element;
14
+
15
+ export { ConversationCreateSelectView, ConversationCreateSelectViewProps };
@@ -0,0 +1,18 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { ConversationCreateSelectViewProps } from './ConversationCreateSelectView.js';
4
+ import { PageStateTypes } from './ConversationCreate.js';
5
+ import { IConversationModel } from '@tencentcloud/chat-uikit-engine';
6
+
7
+ interface ConversationCreateUserSelectListProps extends ConversationCreateSelectViewProps {
8
+ isCreateGroup: boolean;
9
+ setIsCreateGroup: React__default.Dispatch<React__default.SetStateAction<boolean>>;
10
+ className?: string;
11
+ conversationList: IConversationModel[];
12
+ setPageState: React__default.Dispatch<React__default.SetStateAction<PageStateTypes>>;
13
+ onBeforeCreateConversation?: (userID: string) => void;
14
+ onConversationCreated?: (conversation: IConversationModel) => void;
15
+ }
16
+ declare function ConversationCreateUserSelectList(props: ConversationCreateUserSelectListProps): react_jsx_runtime.JSX.Element;
17
+
18
+ export { ConversationCreateUserSelectList, ConversationCreateUserSelectListProps };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),r=require("react"),n=require("react-i18next"),s=require("@tencentcloud/chat-uikit-engine"),i=require("../Input/Input.js"),a=require("../Icon/Icon.js"),c=require("../Icon/type.js"),o=require("./ConversationCreateSelectView.js"),u=require("../Avatar/Avatar.js"),l=require("../Avatar/default.js"),v=require("./hooks/useConversationCreate.js"),d=require("../../context/UIKitContext.js"),h=require("../../context/UIManagerContext.js");require("../../context/TUIMessageContext.js");var p=require("./ConversationCreate.js"),x=require("../../hooks/useConversation.js"),C=require("../Toast/index.js");exports.ConversationCreateUserSelectList=function(g){var _=this,j=g.isCreateGroup,f=g.selectList,I=g.setSelectList,m=g.className,q=g.conversationList,N=g.setIsCreateGroup,k=g.setConversationCreated,S=g.setPageState,T=n.useTranslation().t,b=r.useState(""),y=b[0],U=b[1],A=d.useUIKit().chat,w=h.useUIManager().setActiveConversation,L=r.useState({}),D=L[0],E=L[1],M=v.useConversationCreate(A,q,(function(e){E(e)})).getFriendListSortSearchResult,P=x.useConversation(A).createConversation,R=r.useRef(new Map);return t.jsxs(t.Fragment,{children:[t.jsx(i.Input,{className:"tui-conversation-create-search-input",placeholder:T("TUIConversation.Search"),clearable:!0,value:y,onChange:function(t){return e.__awaiter(_,void 0,void 0,(function(){var r,n;return e.__generator(this,(function(e){switch(e.label){case 0:return r=t.target.value,U(r),n=E,[4,M(r)];case 1:return n.apply(void 0,[e.sent()]),[2]}}))}))},prefix:t.jsx(a.Icon,{type:c.IconTypes.SEARCH,height:16,width:16})}),j&&t.jsx(o.ConversationCreateSelectView,{selectList:f,setSelectList:I}),!j&&t.jsxs("div",e.__assign({role:"presentation",className:"tui-user",onClick:function(){N(!0),R.current.clear(),I([])}},{children:[t.jsx(a.Icon,{type:c.IconTypes.ADD}),t.jsx("div",e.__assign({className:"tui-user-name active"},{children:T("TUIConversation.New group chat")}))]})),t.jsx("div",e.__assign({className:"tui-conversation-create ".concat(m)},{children:t.jsx("div",e.__assign({className:"tui-conversation-create-container"},{children:t.jsx("div",e.__assign({className:"tui-group-container"},{children:Object.keys(D).map((function(r){return 0!==D[r].length&&t.jsxs("div",e.__assign({className:"tui-group-box"},{children:[t.jsx("div",e.__assign({className:"title"},{children:r})),D[r].map((function(n,i){var a=n.userID,c=n.nick,o=n.avatar;return t.jsxs("label",e.__assign({role:"presentation",className:"tui-user tui-user-checkbox-label",htmlFor:"userChecked-".concat(r,"-").concat(a),onClick:function(t){!function(t){e.__awaiter(_,void 0,void 0,(function(){var r,n;return e.__generator(this,(function(e){switch(e.label){case 0:return j?[2]:(r=t.userID,[4,P("C2C".concat(r))]);case 1:return n=e.sent(),k(!1),w(n),s.TUIConversationService.switchConversation(null==n?void 0:n.conversationID),[2]}}))}))}(n)}},{children:[t.jsx(u.Avatar,{size:30,image:o||l.defaultUserAvatar}),t.jsx("div",e.__assign({className:"tui-user-name text-ellipsis"},{children:c||"".concat(a)})),j&&t.jsx("input",{onChange:function(t){!function(t,r,n){void 0===n&&(n=[]);var s=r.userID,i=t.target.checked;n.forEach((function(e){e.checked=i})),i?f.push({profile:r,domList:n}):f.splice(f.findIndex((function(e){return e.profile.userID===s})),1),I(e.__spreadArray([],f,!0))}(t,n,R.current.get(a))},type:"checkbox",ref:function(e){!function(e,t){if(t){R.current.has(e)||R.current.set(e,[]);var r=R.current.get(e);0!==r.length&&r.some((function(e){return e.id===t.id}))||r.push(t)}}(a,e)},id:"userChecked-".concat(r,"-").concat(a),className:"tui-user-checkbox"})]}),a)}))]}),r)}))}))}))})),j&&t.jsx("div",e.__assign({className:"tui-conversation-create-next-container"},{children:t.jsx("div",e.__assign({role:"presentation",className:"tui-conversation-create-next",onClick:function(){f&&0===f.length?C.Toast({text:T("TUIConversation.Participant cannot be empty"),type:"error"}):S(p.PageStateTypes.CREATE_DETAIL)}},{children:T("TUIConversation.Next")}))}))]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react/jsx-runtime"),r=require("react"),n=require("react-i18next"),s=require("../Input/Input.js"),i=require("../Icon/Icon.js"),a=require("../Icon/type.js"),c=require("./ConversationCreateSelectView.js"),o=require("../Avatar/Avatar.js"),u=require("../Avatar/default.js"),l=require("./hooks/useConversationCreate.js"),v=require("../../hooks/useConversation.js"),d=require("../../context/UIKitContext.js");require("@tencentcloud/chat-uikit-engine"),require("../../context/MessageContext.js");var h=require("./ConversationCreate.js"),p=require("../Toast/index.js");exports.ConversationCreateUserSelectList=function(x){var C=this,_=x.isCreateGroup,f=x.selectList,g=x.setSelectList,j=x.className,m=x.conversationList,I=x.setIsCreateGroup,q=x.setPageState,N=x.onBeforeCreateConversation,k=x.onConversationCreated,y=n.useTranslation().t,S=r.useState(""),T=S[0],b=S[1];d.useUIKit().chat;var A=r.useState({}),L=A[0],w=A[1],U=l.useConversationCreate(m,(function(e){w(e)})).getFriendListSortSearchResult,D=r.useRef(new Map),E=function(t){return e.__awaiter(C,void 0,void 0,(function(){var r;return e.__generator(this,(function(e){return _||(r=t.userID,null==N||N(r),v.createC2CConversation(r).then((function(e){null==k||k(e)})).catch((function(e){p.Toast({text:e.message,type:"error"})}))),[2]}))}))};return t.jsxs(t.Fragment,{children:[t.jsx(s.Input,{className:"tui-conversation-create-search-input",placeholder:y("TUIConversation.Search"),clearable:!0,value:T,onChange:function(t){return e.__awaiter(C,void 0,void 0,(function(){var r,n;return e.__generator(this,(function(e){switch(e.label){case 0:return r=t.target.value,b(r),n=w,[4,U(r)];case 1:return n.apply(void 0,[e.sent()]),[2]}}))}))},prefix:t.jsx(i.Icon,{type:a.IconTypes.SEARCH,height:16,width:16})}),_&&t.jsx(c.ConversationCreateSelectView,{selectList:f,setSelectList:g}),!_&&t.jsxs("div",e.__assign({role:"presentation",className:"tui-user",onClick:function(){I(!0),D.current.clear(),g([])}},{children:[t.jsx(i.Icon,{type:a.IconTypes.ADD}),t.jsx("div",e.__assign({className:"tui-user-name active"},{children:y("TUIConversation.New group chat")}))]})),t.jsx("div",e.__assign({className:"tui-conversation-create-select-list-container ".concat(j)},{children:t.jsx("div",e.__assign({className:"tui-conversation-create-select-list"},{children:t.jsx("div",e.__assign({className:"tui-group-container"},{children:Object.keys(L).map((function(r){return 0!==L[r].length&&t.jsxs("div",e.__assign({className:"tui-group-box"},{children:[t.jsx("div",e.__assign({className:"title"},{children:r})),L[r].map((function(n,s){var i=n.userID,a=n.nick,c=n.avatar;return t.jsxs("label",e.__assign({role:"presentation",className:"tui-user tui-user-checkbox-label",htmlFor:"userChecked-".concat(r,"-").concat(i),onClick:function(){E(n)}},{children:[t.jsx(o.Avatar,{size:30,image:c||u.defaultUserAvatar}),t.jsx("div",e.__assign({className:"tui-user-name text-ellipsis"},{children:a||"".concat(i)})),_&&t.jsx("input",{onChange:function(t){!function(t,r,n){void 0===n&&(n=[]);var s=r.userID,i=t.target.checked;n.forEach((function(e){e.checked=i})),i?f.push({profile:r,domList:n}):f.splice(f.findIndex((function(e){return e.profile.userID===s})),1),g(e.__spreadArray([],f,!0))}(t,n,D.current.get(i))},type:"checkbox",ref:function(e){!function(e,t){if(t){D.current.has(e)||D.current.set(e,[]);var r=D.current.get(e);0!==r.length&&r.some((function(e){return e.id===t.id}))||r.push(t)}}(i,e)},id:"userChecked-".concat(r,"-").concat(i),className:"tui-user-checkbox"})]}),i)}))]}),r)}))}))}))})),_&&t.jsx("div",e.__assign({className:"tui-conversation-create-next-container"},{children:t.jsx("div",e.__assign({role:"presentation",className:"tui-conversation-create-next",onClick:function(){f&&0===f.length?p.Toast({text:y("TUIConversation.Participant cannot be empty"),type:"error"}):q(h.PageStateTypes.CREATE_DETAIL)}},{children:y("TUIConversation.Next")}))}))]})};
@@ -0,0 +1,24 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { PageStateTypes } from './ConversationCreate.js';
4
+
5
+ declare enum GroupType {
6
+ Work,
7
+ Public,
8
+ Meeting,
9
+ AVChatRoom,
10
+ Community
11
+ }
12
+ interface ConversationGroupTypeInfoProps {
13
+ groupType: GroupType;
14
+ setGroupType: React__default.Dispatch<React__default.SetStateAction<GroupType>>;
15
+ setPageState: React__default.Dispatch<React__default.SetStateAction<PageStateTypes>>;
16
+ }
17
+ declare const typeInfoList: Array<{
18
+ type: GroupType;
19
+ name: string;
20
+ des: string;
21
+ }>;
22
+ declare function ConversationGroupTypeInfo(props: ConversationGroupTypeInfoProps): react_jsx_runtime.JSX.Element;
23
+
24
+ export { ConversationGroupTypeInfo, ConversationGroupTypeInfoProps, GroupType, typeInfoList };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),o=require("react/jsx-runtime"),n=require("react-i18next"),r=require("./ConversationCreate.js"),i=require("../Icon/Icon.js"),a=require("../Icon/type.js");exports.GroupType=void 0,(e=exports.GroupType||(exports.GroupType={})).Work="Private",e.Public="Public",e.Meeting="ChatRoom",e.AVChatRoom="AVChatRoom",e.Community="Community";var s=[{type:"Work",des:"Users can join the group only via invitation by existing members. The invitation does not need to be agreed by the invitee or approved by the group owner. See the documentation for details."},{type:"Public",des:"After a public group is created, the group owner can designate group admins. To join the group, a user needs to search the group ID and send a request, which needs to be approved by the group owner or an admin before the user can join the group. See the documentation for details."},{type:"Meeting",des:"After the group is created, a user can join and quit the group freely and can view the messages sent before joining the group. It is suitable for scenarios that integrate Tencent Real-Time Communication (TRTC), such as audio and video conferences and online education. See the documentation for details."},{type:"AVChatRoom",des:"After a group is created, a user can join and quit the group freely. The group can have an unlimited number of members, but it does not store message history. It can be combined with Live Video Broadcasting (LVB) to support on-screen comment scenarios. See the documentation for details."},{type:"Community",des:"After creation, you can enter and leave at will, support up to 100,000 people, support historical message storage, and after users search for group ID and initiate a group application, they can join the group without administrator approval. See product documentation for details."}];exports.ConversationGroupTypeInfo=function(e){var u=e.groupType,p=e.setGroupType,c=e.setPageState,d=n.useTranslation().t;return o.jsxs("div",t.__assign({className:"tui-conversation-group-type-info"},{children:[s.map((function(e){var n=e.type,s=e.des;return o.jsxs("div",t.__assign({role:"presentation",className:"group-type-info-box ".concat(n===u?"group-type-info-box--active":""," "),onClick:function(){!function(e){p(e),c(r.PageStateTypes.CREATE_DETAIL)}(n)}},{children:[o.jsxs("div",t.__assign({className:"group-type-info-title"},{children:[n===u&&o.jsx(i.Icon,{className:"box-active-icon",type:a.IconTypes.RIGHT,width:16,height:16}),d("TUIConversation.".concat(n))]})),o.jsx("div",t.__assign({className:"group-type-info-description"},{children:d("TUIConversation.".concat(s))}))]}),n)})),o.jsx("a",t.__assign({className:"group-type-info-document",target:"_blank",href:"https://www.tencentcloud.com/document/product/1047/33515?lang=en&pg=#group-features",rel:"bookmark noreferrer"},{children:d("TUIConversation.Details")}))]}))},exports.typeInfoList=s;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),o=require("react/jsx-runtime"),n=require("react-i18next"),r=require("@tencentcloud/chat-uikit-engine"),i=require("./ConversationCreate.js"),a=require("../Icon/Icon.js"),s=require("../Icon/type.js");exports.GroupType=void 0,(e=exports.GroupType||(exports.GroupType={}))[e.Work=r.TUIChatEngine.TYPES.GRP_WORK]="Work",e[e.Public=r.TUIChatEngine.TYPES.GRP_PUBLIC]="Public",e[e.Meeting=r.TUIChatEngine.TYPES.GRP_MEETING]="Meeting",e[e.AVChatRoom=r.TUIChatEngine.TYPES.GRP_AVCHATROOM]="AVChatRoom",e[e.Community=r.TUIChatEngine.TYPES.GRP_COMMUNITY]="Community";var p=[{type:exports.GroupType.Work,name:"Work",des:"Users can join the group only via invitation by existing members. The invitation does not need to be agreed by the invitee or approved by the group owner. See the documentation for details."},{type:exports.GroupType.Public,name:"Public",des:"After a public group is created, the group owner can designate group admins. To join the group, a user needs to search the group ID and send a request, which needs to be approved by the group owner or an admin before the user can join the group. See the documentation for details."},{type:exports.GroupType.Meeting,name:"Meeting",des:"After the group is created, a user can join and quit the group freely and can view the messages sent before joining the group. It is suitable for scenarios that integrate Tencent Real-Time Communication (TRTC), such as audio and video conferences and online education. See the documentation for details."},{type:exports.GroupType.AVChatRoom,name:"AVChatRoom",des:"After a group is created, a user can join and quit the group freely. The group can have an unlimited number of members, but it does not store message history. It can be combined with Live Video Broadcasting (LVB) to support on-screen comment scenarios. See the documentation for details."},{type:exports.GroupType.Community,name:"Community",des:"After creation, you can enter and leave at will, support up to 100,000 people, support historical message storage, and after users search for group ID and initiate a group application, they can join the group without administrator approval. See product documentation for details."}];exports.ConversationGroupTypeInfo=function(e){var r=e.groupType,u=e.setGroupType,c=e.setPageState,d=n.useTranslation().t;return o.jsxs("div",t.__assign({className:"tui-conversation-group-type-info"},{children:[p.map((function(e){var n=e.type,p=e.name,g=e.des;return o.jsxs("div",t.__assign({role:"presentation",className:"group-type-info-box ".concat(n===r?"group-type-info-box--active":""," "),onClick:function(){!function(e){u(e),c(i.PageStateTypes.CREATE_DETAIL)}(n)}},{children:[o.jsxs("div",t.__assign({className:"group-type-info-title"},{children:[n===r&&o.jsx(a.Icon,{className:"box-active-icon",type:s.IconTypes.RIGHT,width:16,height:16}),d("TUIConversation.".concat(p))]})),o.jsx("div",t.__assign({className:"group-type-info-description"},{children:d("TUIConversation.".concat(g))}))]}),n)})),o.jsx("a",t.__assign({className:"group-type-info-document",target:"_blank",href:"https://trtc.io/document/33529?platform=web&product=chat&menulabel=uikit#group-types",rel:"bookmark noreferrer"},{children:d("TUIConversation.Details")}))]}))},exports.typeInfoList=p;
@@ -0,0 +1,14 @@
1
+ import React__default from 'react';
2
+ import { IConversationModel } from '@tencentcloud/chat-uikit-engine';
3
+ import { Friend } from '@tencentcloud/chat';
4
+
5
+ declare const useConversationCreate: (conversationList: IConversationModel[], setFriendListResultHandler?: ((newFriendListResult: object, setFriendListResult: React__default.Dispatch<React__default.SetStateAction<{
6
+ string: object[];
7
+ }>>) => void) | undefined) => {
8
+ getFirstLetter: (str: string) => string;
9
+ queryFriendList: (friendList: Friend[]) => Promise<void>;
10
+ getFriendListSortSearchResult: (searchValue: string) => Promise<any>;
11
+ friendListSortResult: any;
12
+ };
13
+
14
+ export { useConversationCreate };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),r=require("react"),t=require("@tencentcloud/chat"),n=require("../static/word.js");require("react/jsx-runtime"),require("react-i18next"),require("@tencentcloud/tui-core"),require("@tencentcloud/chat-uikit-engine"),require("../../../context/TUIMessageContext.js"),require("../../../utils/env.js"),require("../../Icon/config.js"),require("../../Icon/type.js"),require("date-fns"),require("date-fns/locale"),require("../ConversationCreate.js"),require("../ConversationGroupTypeInfo.js"),require("../../TUIChat/index.js"),require("../../../constants.js"),require("../../TUIMessage/hooks/useMessageReply.js"),require("../../TUIMessage/MessagePlugins.js"),require("../../TUIMessage/MessageContext.js"),require("../../TUIMessageInput/hooks/useHandleQuoteMessage.js"),require("../../TUIProfile/TUIProfileDefault.js");var i=require("../../../hooks/useProfile.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=u(t);exports.useConversationCreate=function(t,u,s){var a=r.useState(),c=a[0],l=a[1],f=function(e){var r=e.trim(),t=r.charCodeAt(0);return t>40869||t<19968?r.charAt(0):n.strChineseFirstPy.charAt(t-19968)},d=function(){return e.__awaiter(void 0,void 0,void 0,(function(){var r,n,i,a;return e.__generator(this,(function(e){switch(e.label){case 0:return u.filter((function(e){return(null==e?void 0:e.type)===o.default.TYPES.CONV_C2C})).slice(0,5).map((function(e){return null==e?void 0:e.userProfile})),[4,null==t?void 0:t.getFriendList()];case 1:return r=e.sent()||{},n=r.code,i=r.data,0===n&&(a=v(i.map((function(e){return e.profile}))),l(a),s&&s(a,l)),[2]}}))}))},v=function(e,r){for(var t={"#":[]},n=65;n<=90;n+=1)t[String.fromCharCode(n)]=[];return e.forEach((function(e){var r=e.nick,n=e.userID,i=f(r||n);i>="a"&&i<="z"?t[i.toLocaleUpperCase()].push(e):i<"A"||i>"z"?t["#"].push(e):t[i].push(e)})),Object.keys(t).forEach((function(e){t[e].sort((function(e,r){var t=e.nick,n=e.userID,i=r.nick,u=r.userID;return t||n<i||u||t||n===i||u?1:-1}))})),t},q=i.useProfile(t).getUserProfile;return r.useEffect((function(){d()}),[t]),{getFirstLetter:f,queryFriendList:d,getFriendListSortSearchResult:function(r){return e.__awaiter(void 0,void 0,void 0,(function(){var t,n,i,u;return e.__generator(this,(function(e){switch(e.label){case 0:return r?[4,q([r])]:[2,c];case 1:return t=e.sent().data,n={},i=!1,Object.keys(c).forEach((function(e){n[e]=c[e].filter((function(e){var t,n,u=e.nick,o=e.userID,s=null==u?void 0:u.toLocaleLowerCase(),a=r.toLocaleLowerCase(),c=o.toLocaleLowerCase();return n="TencentCloudDemo"===(null===(t=process.env)||void 0===t?void 0:t.REACT_APP_ONLINE)?s?s.includes(a):c.includes(a):c===a,i=i||n,n}))})),"TencentCloudDemo"===(null===(u=process.env)||void 0===u?void 0:u.REACT_APP_ONLINE)?[2,n]:[2,i?n:v(t)]}}))}))},friendListSortResult:c}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),r=require("react"),t=require("@tencentcloud/chat-uikit-engine"),n=require("@tencentcloud/chat"),i=require("../static/word.js");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=o(n);exports.useConversationCreate=function(n,o){var c=r.useState(),a=c[0],s=c[1],f=function(e){var r=e.trim(),t=r.charCodeAt(0);return t>40869||t<19968?r.charAt(0):i.strChineseFirstPy.charAt(t-19968)},l=function(r){return e.__awaiter(void 0,void 0,void 0,(function(){var t;return e.__generator(this,(function(e){return n.filter((function(e){return(null==e?void 0:e.type)===u.default.TYPES.CONV_C2C})).slice(0,5).map((function(e){return null==e?void 0:e.userProfile})),t=d(null==r?void 0:r.map((function(e){return e.profile}))),s(t),o&&o(t,s),[2]}))}))};function d(e,r){for(var t={"#":[]},n=65;n<=90;n+=1)t[String.fromCharCode(n)]=[];return null==e||e.forEach((function(e){var r=e.nick,n=e.userID,i=f(r||n);i>="a"&&i<="z"?t[i.toLocaleUpperCase()].push(e):i<"A"||i>"z"?t["#"].push(e):t[i].push(e)})),Object.keys(t).forEach((function(e){t[e].sort((function(e,r){var t=e.nick,n=e.userID,i=r.nick,o=r.userID;return t||n<=i||o?1:-1}))})),t}function v(e){l(e)}return r.useEffect((function(){return t.TUIStore.watch(t.StoreName.FRIEND,{friendList:v}),function(){t.TUIStore.unwatch(t.StoreName.FRIEND,{friendList:v})}}),[]),{getFirstLetter:f,queryFriendList:l,getFriendListSortSearchResult:function(r){return e.__awaiter(void 0,void 0,void 0,(function(){var n,i,o,u;return e.__generator(this,(function(e){switch(e.label){case 0:return r?[4,t.TUIUserService.getUserProfile({userIDList:[r]})]:[2,a];case 1:return n=e.sent().data,i={},o=!1,Object.keys(a).forEach((function(e){i[e]=a[e].filter((function(e){var t,n,i=e.nick,u=e.userID,c=null==i?void 0:i.toLocaleLowerCase(),a=r.toLocaleLowerCase(),s=u.toLocaleLowerCase();return n="TencentCloudDemo"===(null===(t=process.env)||void 0===t?void 0:t.REACT_APP_ONLINE)?c?c.includes(a):s.includes(a):s===a,o=o||n,n}))})),"TencentCloudDemo"===(null===(u=process.env)||void 0===u?void 0:u.REACT_APP_ONLINE)?[2,i]:[2,o?i:d(n)]}}))}))},friendListSortResult:a}};