@tencent-rtc/mcp 1.3.9 → 1.4.0

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 (431) hide show
  1. package/package.json +2 -2
  2. package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/android-faq.md} +10 -22
  3. package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/flutter-faq.md} +10 -22
  4. package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/ios-faq.md} +10 -22
  5. package/resource/doc/callkit/preset/android/api.md +296 -0
  6. package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +53 -365
  7. package/resource/doc/callkit/preset/flutter/api.md +410 -0
  8. package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +35 -97
  9. package/resource/doc/callkit/preset/ios/api.md +80 -0
  10. package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +37 -118
  11. package/resource/doc/callkit/preset/react/api.md +501 -0
  12. package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +5 -20
  13. package/resource/doc/callkit/preset/vue/api.md +501 -0
  14. package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +4 -19
  15. package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -38
  16. package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
  17. package/resource/doc/{chatuikit → chatkit}/android/integration.md +28 -121
  18. package/resource/doc/chatkit/faq/android_sdk/client-api.md +281 -0
  19. package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +0 -1
  20. package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -1
  21. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +199 -0
  22. package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
  23. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +235 -0
  24. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +3 -3
  25. package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
  26. package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +18 -87
  27. package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -38
  28. package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
  29. package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +47 -165
  30. package/resource/doc/{chatuikit → chatkit}/react/components/avatar.md +0 -33
  31. package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +8 -49
  32. package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +6 -35
  33. package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +0 -6
  34. package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -11
  35. package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +96 -502
  36. package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
  37. package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
  38. package/resource/doc/chatkit/react/components/conversation-preview.md +118 -0
  39. package/resource/doc/chatkit/react/components/conversation-search.md +60 -0
  40. package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -337
  41. package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +20 -212
  42. package/resource/doc/chatkit/react/components/search.md +243 -0
  43. package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +1 -47
  44. package/resource/doc/{chatuikit → chatkit}/react/integration.md +21 -81
  45. package/resource/doc/{chatuikit → chatkit}/vue/components/avatar.md +0 -33
  46. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -48
  47. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +3 -5
  48. package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +0 -5
  49. package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -15
  50. package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
  51. package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
  52. package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -492
  53. package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
  54. package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
  55. package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +2 -223
  56. package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -252
  57. package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
  58. package/resource/doc/{chatuikit → chatkit}/vue/components/tuikit.md +7 -21
  59. package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +3 -62
  60. package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
  61. package/resource/doc/{chatuikit → chatkit}/vue/integration.md +22 -23
  62. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +18 -89
  63. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
  64. package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +28 -141
  65. package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +20 -112
  66. package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +59 -193
  67. package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
  68. package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +94 -344
  69. package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +107 -515
  70. package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +33 -173
  71. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +14 -93
  72. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -179
  73. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +19 -107
  74. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -166
  75. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -163
  76. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +69 -443
  77. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
  78. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +107 -492
  79. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +23 -165
  80. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +35 -111
  81. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +35 -193
  82. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +31 -144
  83. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +24 -116
  84. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +37 -171
  85. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +79 -459
  86. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +69 -320
  87. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +85 -502
  88. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +32 -169
  89. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +18 -89
  90. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
  91. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +28 -141
  92. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +50 -259
  93. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
  94. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +51 -265
  95. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +61 -427
  96. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +33 -173
  97. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -203
  98. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +56 -416
  99. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +35 -111
  100. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +35 -193
  101. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +31 -144
  102. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +43 -252
  103. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +79 -459
  104. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +46 -264
  105. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-integration.md +61 -445
  106. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +32 -169
  107. package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -2
  108. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
  109. package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
  110. package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +10 -49
  111. package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +26 -144
  112. package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +12 -75
  113. package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +36 -227
  114. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +215 -0
  115. package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
  116. package/resource/doc/livekit/preset/live/vue/live-list-integration.md +241 -0
  117. package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +299 -0
  118. package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +300 -0
  119. package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +743 -0
  120. package/resource/doc/roomkit/vue/faq.md +1 -0
  121. package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
  122. package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
  123. package/resource/doc/roomkit/vue/features/device-state.md +24 -44
  124. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
  125. package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
  126. package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
  127. package/resource/doc/roomkit/vue/features/room-state.md +25 -34
  128. package/resource/doc/roomkit/vue/features/room-view.md +30 -125
  129. package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
  130. package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
  131. package/resource/doc/roomkit/vue/features/virtual-background.md +13 -29
  132. package/resource/doc/roomkit/vue/integration.md +21 -76
  133. package/resource/doc/rtcengine/faq/common/error_code.md +1 -0
  134. package/resource/doc/rtcengine/faq/web/web.md +14 -24
  135. package/resource/doc/rtcengine/web/api.md +1 -3
  136. package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +3 -10
  137. package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +1 -5
  138. package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +1 -2
  139. package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -4
  140. package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +3 -5
  141. package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +1 -7
  142. package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +0 -2
  143. package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -8
  144. package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +11 -11
  145. package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +12 -88
  146. package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -5
  147. package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +30 -37
  148. package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +13 -90
  149. package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -2
  150. package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +1 -2
  151. package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +19 -19
  152. package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
  153. package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -5
  154. package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
  155. package/resource/doc/trtc/C++/ITRTCCloud.md +686 -2835
  156. package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
  157. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +202 -1022
  158. package/resource/doc/trtc/C++/ITXDeviceManager.md +126 -767
  159. package/resource/doc/trtc/C++/TRTCCloudCallback.md +579 -2147
  160. package/resource/doc/trtc/C++/TRTCTypeDef.md +703 -3378
  161. package/resource/doc/trtc/C++/TXLiteAVCode.md +116 -908
  162. package/resource/doc/trtc/android/TRTCCloud.md +606 -2573
  163. package/resource/doc/trtc/android/TRTCCloudDef.md +752 -3640
  164. package/resource/doc/trtc/android/TRTCCloudListener.md +581 -2008
  165. package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
  166. package/resource/doc/trtc/android/TXAudioEffectManager.md +202 -1022
  167. package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
  168. package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
  169. package/resource/doc/trtc/android/TXLiteAVCode.md +114 -892
  170. package/resource/doc/trtc/iOS/TRTCCloud.md +694 -2904
  171. package/resource/doc/trtc/iOS/TRTCCloudDef.md +726 -3498
  172. package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +543 -2028
  173. package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
  174. package/resource/doc/trtc/iOS/TXAudioEffectManager.md +174 -877
  175. package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
  176. package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
  177. package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
  178. package/server.js +1 -5
  179. package/server.js.map +1 -1
  180. package/tools/call/get_callkit_api.js +32 -0
  181. package/tools/call/get_callkit_api.js.map +1 -0
  182. package/tools/call/get_native_call_uikit_integration.js +34 -0
  183. package/tools/call/get_native_call_uikit_integration.js.map +1 -0
  184. package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
  185. package/tools/call/get_web_call_uikit_integration.js.map +1 -0
  186. package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
  187. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
  188. package/tools/chat/get_native_chat_uikit_integration.js +45 -0
  189. package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
  190. package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
  191. package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
  192. package/tools/chat/get_web_chat_uikit_integration.js +45 -0
  193. package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
  194. package/tools/common/get_faq.js +265 -0
  195. package/tools/common/get_faq.js.map +1 -0
  196. package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
  197. package/tools/common/get_usersig.js.map +1 -0
  198. package/tools/common/present_framework_choice.js +63 -0
  199. package/tools/common/present_framework_choice.js.map +1 -0
  200. package/tools/definitions/get_callkit_api_def.js +29 -0
  201. package/tools/definitions/get_callkit_api_def.js.map +1 -0
  202. package/tools/definitions/get_faq_def.js +17 -18
  203. package/tools/definitions/get_faq_def.js.map +1 -1
  204. package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
  205. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  206. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
  207. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
  208. package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
  209. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  210. package/tools/definitions/get_native_livekit_core_features_def.js +34 -0
  211. package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
  212. package/tools/definitions/get_native_livekit_core_integration_def.js +34 -0
  213. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
  214. package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
  215. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
  216. package/tools/definitions/get_usersig_def.js +17 -22
  217. package/tools/definitions/get_usersig_def.js.map +1 -1
  218. package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
  219. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  220. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
  221. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
  222. package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
  223. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  224. package/tools/definitions/get_web_live_uikit_integration_def.js +15 -18
  225. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  226. package/tools/definitions/get_web_livekit_api_def.js +30 -0
  227. package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
  228. package/tools/definitions/get_web_livekit_component_detail_def.js +32 -0
  229. package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
  230. package/tools/definitions/get_web_room_uikit_integration_def.js +15 -46
  231. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  232. package/tools/definitions/get_web_roomkit_feature_detail_def.js +31 -0
  233. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
  234. package/tools/definitions/get_web_trtc_sdk_api_def.js +27 -0
  235. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
  236. package/tools/definitions/get_web_trtc_sdk_integration_def.js +27 -0
  237. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
  238. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +27 -0
  239. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
  240. package/tools/definitions/present_framework_choice_def.js +24 -12
  241. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  242. package/tools/index.js +47 -61
  243. package/tools/index.js.map +1 -1
  244. package/tools/live/get_native_livekit_core_features.js +65 -0
  245. package/tools/live/get_native_livekit_core_features.js.map +1 -0
  246. package/tools/live/get_native_livekit_core_integration.js +59 -0
  247. package/tools/live/get_native_livekit_core_integration.js.map +1 -0
  248. package/tools/live/get_web_live_uikit_integration.js +48 -0
  249. package/tools/live/get_web_live_uikit_integration.js.map +1 -0
  250. package/tools/live/get_web_livekit_api.js +32 -0
  251. package/tools/live/get_web_livekit_api.js.map +1 -0
  252. package/tools/live/get_web_livekit_component_detail.js +34 -0
  253. package/tools/live/get_web_livekit_component_detail.js.map +1 -0
  254. package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
  255. package/tools/room/get_web_room_uikit_integration.js.map +1 -0
  256. package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
  257. package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
  258. package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
  259. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
  260. package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
  261. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
  262. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
  263. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
  264. package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
  265. package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
  266. package/utils/generate-structured-result.js +61 -17
  267. package/utils/generate-structured-result.js.map +1 -1
  268. package/utils/report-cls-client.js +12 -1
  269. package/utils/report-cls-client.js.map +1 -1
  270. package/utils/report-es-client.js +2 -2
  271. package/resource/doc/chatuikit/android/workflow.md +0 -713
  272. package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1371
  273. package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -932
  274. package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1119
  275. package/resource/doc/chatuikit/flutter/workflow.md +0 -941
  276. package/resource/doc/chatuikit/react/components/conversation-list.md +0 -1017
  277. package/resource/doc/chatuikit/react/components/search.md +0 -745
  278. package/resource/doc/chatuikit/react/create-group.md +0 -23
  279. package/resource/doc/chatuikit/react/init.md +0 -26
  280. package/resource/doc/chatuikit/react/workflow.md +0 -258
  281. package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
  282. package/resource/doc/chatuikit/vue/create-group.md +0 -25
  283. package/resource/doc/chatuikit/vue/init.md +0 -40
  284. package/resource/doc/chatuikit/vue/workflow.md +0 -395
  285. package/resource/doc/livekit/live/android/workflow.md +0 -320
  286. package/resource/doc/livekit/live/flutter/workflow.md +0 -353
  287. package/resource/doc/livekit/live/ios/workflow.md +0 -454
  288. package/resource/doc/livekit/live/vue/components/barrage.md +0 -616
  289. package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -446
  290. package/resource/doc/livekit/live/vue/faq.md +0 -0
  291. package/resource/doc/livekit/live/vue/live-list-integration.md +0 -200
  292. package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -269
  293. package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -269
  294. package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -595
  295. package/resource/doc/livekit/live/vue/states/live-state.md +0 -3591
  296. package/resource/doc/livekit/live/vue/workflow.md +0 -218
  297. package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -312
  298. package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -430
  299. package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -679
  300. package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -671
  301. package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -271
  302. package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
  303. package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
  304. package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
  305. package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
  306. package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -865
  307. package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -657
  308. package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -437
  309. package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -335
  310. package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
  311. package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -327
  312. package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -507
  313. package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
  314. package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -659
  315. package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
  316. package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -814
  317. package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1000
  318. package/resource/doc/roomkit/vue/features/workflow.md +0 -553
  319. package/resource/doc/roomkit/vue/workflow.md +0 -733
  320. package/resource/doc/tuicallkit/android/workflow.md +0 -441
  321. package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -784
  322. package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -610
  323. package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -938
  324. package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -897
  325. package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -469
  326. package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -781
  327. package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -398
  328. package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
  329. package/resource/doc/tuicallkit/react/api.md +0 -1404
  330. package/resource/doc/tuicallkit/vue/api.md +0 -1406
  331. package/resource/doc/tuicallkit/vue/faq.md +0 -36
  332. package/tools/call/get-native-call-integration.js +0 -43
  333. package/tools/call/get-native-call-integration.js.map +0 -1
  334. package/tools/call/get-web-call-api.js +0 -27
  335. package/tools/call/get-web-call-api.js.map +0 -1
  336. package/tools/call/get-web-call-integration.js.map +0 -1
  337. package/tools/chat/get-native-chat-feature-detail.js +0 -30
  338. package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
  339. package/tools/chat/get-native-chat-integration.js +0 -45
  340. package/tools/chat/get-native-chat-integration.js.map +0 -1
  341. package/tools/chat/get-web-chat-component-detail.js +0 -31
  342. package/tools/chat/get-web-chat-component-detail.js.map +0 -1
  343. package/tools/chat/get-web-chat-integration.js +0 -45
  344. package/tools/chat/get-web-chat-integration.js.map +0 -1
  345. package/tools/chat/get-web-chat-uikit-init.js +0 -28
  346. package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
  347. package/tools/chat/get-web-create-group-doc.js +0 -28
  348. package/tools/chat/get-web-create-group-doc.js.map +0 -1
  349. package/tools/common/get-faq.js +0 -91
  350. package/tools/common/get-faq.js.map +0 -1
  351. package/tools/common/get-usersig.js.map +0 -1
  352. package/tools/common/present-framework-choice.js +0 -16
  353. package/tools/common/present-framework-choice.js.map +0 -1
  354. package/tools/common/present-scenario-choice.js +0 -16
  355. package/tools/common/present-scenario-choice.js.map +0 -1
  356. package/tools/common/record-prompt.js +0 -55
  357. package/tools/common/record-prompt.js.map +0 -1
  358. package/tools/common/record-result.js +0 -60
  359. package/tools/common/record-result.js.map +0 -1
  360. package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
  361. package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
  362. package/tools/definitions/get_native_live_api_def.js +0 -23
  363. package/tools/definitions/get_native_live_api_def.js.map +0 -1
  364. package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -87
  365. package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
  366. package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
  367. package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
  368. package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
  369. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
  370. package/tools/definitions/get_trtc_native_api_def.js +0 -16
  371. package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
  372. package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
  373. package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
  374. package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
  375. package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
  376. package/tools/definitions/get_web_create_group_doc_def.js +0 -18
  377. package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
  378. package/tools/definitions/get_web_live_state_detail_def.js +0 -19
  379. package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
  380. package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
  381. package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
  382. package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
  383. package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
  384. package/tools/definitions/get_web_room_state_detail_def.js +0 -19
  385. package/tools/definitions/get_web_room_state_detail_def.js.map +0 -1
  386. package/tools/definitions/present_scenario_choice_def.js +0 -53
  387. package/tools/definitions/present_scenario_choice_def.js.map +0 -1
  388. package/tools/definitions/record_prompt_def.js +0 -58
  389. package/tools/definitions/record_prompt_def.js.map +0 -1
  390. package/tools/definitions/record_result_def.js +0 -46
  391. package/tools/definitions/record_result_def.js.map +0 -1
  392. package/tools/live/get-native-live-uikit-integration.js +0 -177
  393. package/tools/live/get-native-live-uikit-integration.js.map +0 -1
  394. package/tools/live/get-web-live-component-detail.js +0 -31
  395. package/tools/live/get-web-live-component-detail.js.map +0 -1
  396. package/tools/live/get-web-live-state-detail.js +0 -31
  397. package/tools/live/get-web-live-state-detail.js.map +0 -1
  398. package/tools/live/get-web-live-uikit-integration.js +0 -52
  399. package/tools/live/get-web-live-uikit-integration.js.map +0 -1
  400. package/tools/live/get_native_live_uikit_extra_features.js +0 -105
  401. package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
  402. package/tools/live/get_native_live_uikit_interaction.js +0 -194
  403. package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
  404. package/tools/native_live/get-native-live-api.js +0 -31
  405. package/tools/native_live/get-native-live-api.js.map +0 -1
  406. package/tools/room/get-web-room-feature-detail.js.map +0 -1
  407. package/tools/room/get-web-room-integration.js.map +0 -1
  408. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
  409. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
  410. package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
  411. package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
  412. package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
  413. package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
  414. package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
  415. package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
  416. package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
  417. package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
  418. package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
  419. package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
  420. package/tools/trtc/get-trtc-native-api.js +0 -31
  421. package/tools/trtc/get-trtc-native-api.js.map +0 -1
  422. package/utils/handle-component-name.js +0 -33
  423. package/utils/handle-component-name.js.map +0 -1
  424. /package/resource/doc/{chatuikit/iOS/workflow.md → callkit/core-sdk/.gitkeep} +0 -0
  425. /package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +0 -0
  426. /package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +0 -0
  427. /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
  428. /package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +0 -0
  429. /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
  430. /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
  431. /package/resource/doc/roomkit/faq/common/{error_code.md → error-code.md} +0 -0
@@ -2,406 +2,50 @@
2
2
 
3
3
  ContactList is a highly configurable contact list component. It supports friend list, group list, blocklist, and application management, offering core features such as group collapsing, search filtering, and custom rendering. It is suitable for contact management interfaces in instant messaging and social applications.
4
4
 
5
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/41360ab1679511f0837f525400454e06.png)
6
-
7
-
8
- ## ContactList Props
9
- <table>
10
- <tr>
11
- <td rowspan="1" colSpan="1" >Field</td>
12
-
13
- <td rowspan="1" colSpan="1" >Type</td>
14
-
15
- <td rowspan="1" colSpan="1" >Default Value</td>
16
-
17
- <td rowspan="1" colSpan="1" >Description</td>
18
- </tr>
19
-
20
- <tr>
21
- <td rowspan="1" colSpan="1" >activeContactItem</td>
22
-
23
- <td rowspan="1" colSpan="1" >ContactGroupItem \| undefined</td>
24
-
25
- <td rowspan="1" colSpan="1" >`undefined`</td>
26
-
27
- <td rowspan="1" colSpan="1" >Currently active contact item</td>
28
- </tr>
29
-
30
- <tr>
31
- <td rowspan="1" colSpan="1" >enableSearch</td>
32
-
33
- <td rowspan="1" colSpan="1" >boolean</td>
34
-
35
- <td rowspan="1" colSpan="1" >`true`</td>
36
-
37
- <td rowspan="1" colSpan="1" >Whether to enable the search feature</td>
38
- </tr>
39
-
40
- <tr>
41
- <td rowspan="1" colSpan="1" >groupConfig</td>
42
-
43
- <td rowspan="1" colSpan="1" >Partial<Record<ContactItemType, CustomGroupConfig>></td>
44
-
45
- <td rowspan="1" colSpan="1" >`{}`</td>
46
-
47
- <td rowspan="1" colSpan="1" >Custom group configuration</td>
48
- </tr>
49
-
50
- <tr>
51
- <td rowspan="1" colSpan="1" >className</td>
52
-
53
- <td rowspan="1" colSpan="1" >string</td>
54
-
55
- <td rowspan="1" colSpan="1" >`undefined`</td>
56
-
57
- <td rowspan="1" colSpan="1" >Custom CSS class name</td>
58
- </tr>
59
-
60
- <tr>
61
- <td rowspan="1" colSpan="1" >style</td>
62
-
63
- <td rowspan="1" colSpan="1" >React.CSSProperties</td>
64
-
65
- <td rowspan="1" colSpan="1" >`undefined`</td>
66
-
67
- <td rowspan="1" colSpan="1" >Custom inline style</td>
68
- </tr>
69
-
70
- <tr>
71
- <td rowspan="1" colSpan="1" >searchPlaceholder</td>
72
-
73
- <td rowspan="1" colSpan="1" >string</td>
74
-
75
- <td rowspan="1" colSpan="1" >`'Search contacts'`</td>
76
-
77
- <td rowspan="1" colSpan="1" >search box placeholder text</td>
78
- </tr>
79
-
80
- <tr>
81
- <td rowspan="1" colSpan="1" >emptyText</td>
82
-
83
- <td rowspan="1" colSpan="1" >string</td>
84
-
85
- <td rowspan="1" colSpan="1" >`'No contacts'`</td>
86
-
87
- <td rowspan="1" colSpan="1" >Empty status prompt text</td>
88
- </tr>
89
-
90
- <tr>
91
- <td rowspan="1" colSpan="1" >ContactItem</td>
92
-
93
- <td rowspan="1" colSpan="1" >React.ComponentType<ContactListItemProps> \| undefined</td>
94
-
95
- <td rowspan="1" colSpan="1" >`ContactListItem`</td>
96
-
97
- <td rowspan="1" colSpan="1" >Custom contact person component</td>
98
- </tr>
99
-
100
- <tr>
101
- <td rowspan="1" colSpan="1" >ContactSearchComponent</td>
102
-
103
- <td rowspan="1" colSpan="1" >React.ComponentType<ContactSearchProps> \| undefined</td>
104
-
105
- <td rowspan="1" colSpan="1" >`ContactSearch`</td>
106
-
107
- <td rowspan="1" colSpan="1" >Custom search component</td>
108
- </tr>
109
-
110
- <tr>
111
- <td rowspan="1" colSpan="1" >GroupHeader</td>
112
-
113
- <td rowspan="1" colSpan="1" >React.ComponentType<{ data: ContactGroup }> \| undefined</td>
114
-
115
- <td rowspan="1" colSpan="1" >Default group header</td>
116
-
117
- <td rowspan="1" colSpan="1" >Custom group header component</td>
118
- </tr>
119
-
120
- <tr>
121
- <td rowspan="1" colSpan="1" >PlaceholderEmptyList</td>
122
-
123
- <td rowspan="1" colSpan="1" >React.ReactNode \| undefined</td>
124
-
125
- <td rowspan="1" colSpan="1" >Default empty status</td>
126
-
127
- <td rowspan="1" colSpan="1" >Custom empty status component</td>
128
- </tr>
129
-
130
- <tr>
131
- <td rowspan="1" colSpan="1" >onContactItemClick</td>
132
-
133
- <td rowspan="1" colSpan="1" >(item: ContactGroupItem) => void</td>
134
-
135
- <td rowspan="1" colSpan="1" >`undefined`</td>
136
-
137
- <td rowspan="1" colSpan="1" >Contact person item click event</td>
138
- </tr>
139
-
140
- <tr>
141
- <td rowspan="1" colSpan="1" >onFriendApplicationAction</td>
142
-
143
- <td rowspan="1" colSpan="1" >(action: 'accept' \| 'refuse', application: FriendApplication) => void</td>
144
-
145
- <td rowspan="1" colSpan="1" >`undefined`</td>
146
-
147
- <td rowspan="1" colSpan="1" >Friend request operation event</td>
148
- </tr>
149
-
150
- <tr>
151
- <td rowspan="1" colSpan="1" >onGroupApplicationAction</td>
152
-
153
- <td rowspan="1" colSpan="1" >(action: 'accept' \| 'refuse', application: GroupApplication) => void</td>
154
-
155
- <td rowspan="1" colSpan="1" >`undefined`</td>
156
-
157
- <td rowspan="1" colSpan="1" >Group request operation event</td>
158
- </tr>
159
- </table>
160
-
5
+ ## ContactList Props
6
+ | Field | Type | Default Value | Description |
7
+ | --- | --- | --- | --- |
8
+ | activeContactItem | ContactGroupItem \\| undefined | `undefined` | Currently active contact item |
9
+ | enableSearch | boolean | `true` | Whether to enable the search feature |
10
+ | groupConfig | Partial<Record<ContactItemType, CustomGroupConfig>> | `{}` | Custom group configuration |
11
+ | className | string | `undefined` | Custom CSS class name |
12
+ | style | React.CSSProperties | `undefined` | Custom inline style |
13
+ | searchPlaceholder | string | `'Search contacts'` | search box placeholder text |
14
+ | emptyText | string | `'No contacts'` | Empty status prompt text |
15
+ | ContactItem | React.ComponentType<ContactListItemProps> \\| undefined | `ContactListItem` | Custom contact person component |
16
+ | ContactSearchComponent | React.ComponentType<ContactSearchProps> \\| undefined | `ContactSearch` | Custom search component |
17
+ | GroupHeader | React.ComponentType<{ data: ContactGroup }> \\| undefined | Default group header | Custom group header component |
18
+ | PlaceholderEmptyList | React.ReactNode \\| undefined | Default empty status | Custom empty status component |
19
+ | onContactItemClick | (item: ContactGroupItem) => void | `undefined` | Contact person item click event |
20
+ | onFriendApplicationAction | (action: 'accept' \\| 'refuse', application: FriendApplication) => void | `undefined` | Friend request operation event |
21
+ | onGroupApplicationAction | (action: 'accept' \\| 'refuse', application: GroupApplication) => void | `undefined` | Group request operation event |
161
22
 
162
23
  ## ContactInfo props
163
- <table>
164
- <tr>
165
- <td rowspan="1" colSpan="1" >Field</td>
166
-
167
- <td rowspan="1" colSpan="1" >Type</td>
168
-
169
- <td rowspan="1" colSpan="1" >Default Value</td>
170
-
171
- <td rowspan="1" colSpan="1" >Description</td>
172
- </tr>
173
-
174
- <tr>
175
- <td rowspan="1" colSpan="1" >contactItem</td>
176
-
177
- <td rowspan="1" colSpan="1" >ContactGroupItem \| undefined</td>
178
-
179
- <td rowspan="1" colSpan="1" >`undefined`</td>
180
-
181
- <td rowspan="1" colSpan="1" >Currently showing contact item</td>
182
- </tr>
183
-
184
- <tr>
185
- <td rowspan="1" colSpan="1" >showActions</td>
186
-
187
- <td rowspan="1" colSpan="1" >boolean</td>
188
-
189
- <td rowspan="1" colSpan="1" >`true`</td>
190
-
191
- <td rowspan="1" colSpan="1" >whether to display the action button</td>
192
- </tr>
193
-
194
- <tr>
195
- <td rowspan="1" colSpan="1" >PlaceholderEmpty</td>
196
-
197
- <td rowspan="1" colSpan="1" >React.ReactNode \| undefined</td>
198
-
199
- <td rowspan="1" colSpan="1" >`undefined`</td>
200
-
201
- <td rowspan="1" colSpan="1" >Empty status placeholder component</td>
202
- </tr>
203
-
204
- <tr>
205
- <td rowspan="1" colSpan="1" >FriendInfoComponent</td>
206
-
207
- <td rowspan="1" colSpan="1" >React.ComponentType<FriendInfoProps></td>
208
-
209
- <td rowspan="1" colSpan="1" >`FriendInfo`</td>
210
-
211
- <td rowspan="1" colSpan="1" >Friend information component</td>
212
- </tr>
213
-
214
- <tr>
215
- <td rowspan="1" colSpan="1" >GroupInfoComponent</td>
216
-
217
- <td rowspan="1" colSpan="1" >React.ComponentType<GroupInfoProps></td>
218
-
219
- <td rowspan="1" colSpan="1" >`GroupInfo`</td>
220
-
221
- <td rowspan="1" colSpan="1" >Group information component</td>
222
- </tr>
223
-
224
- <tr>
225
- <td rowspan="1" colSpan="1" >BlacklistInfoComponent</td>
226
-
227
- <td rowspan="1" colSpan="1" >React.ComponentType<BlacklistInfoProps></td>
228
-
229
- <td rowspan="1" colSpan="1" >`BlacklistInfo`</td>
230
-
231
- <td rowspan="1" colSpan="1" >Blocklist information component</td>
232
- </tr>
233
-
234
- <tr>
235
- <td rowspan="1" colSpan="1" >FriendApplicationInfoComponent</td>
236
-
237
- <td rowspan="1" colSpan="1" >React.ComponentType<FriendApplicationInfoProps></td>
238
-
239
- <td rowspan="1" colSpan="1" >`FriendApplicationInfo`</td>
240
-
241
- <td rowspan="1" colSpan="1" >Friend request information component</td>
242
- </tr>
243
-
244
- <tr>
245
- <td rowspan="1" colSpan="1" >GroupApplicationInfoComponent</td>
246
-
247
- <td rowspan="1" colSpan="1" >React.ComponentType<GroupApplicationInfoProps></td>
248
-
249
- <td rowspan="1" colSpan="1" >`GroupApplicationInfo`</td>
250
-
251
- <td rowspan="1" colSpan="1" >Group application information component</td>
252
- </tr>
253
-
254
- <tr>
255
- <td rowspan="1" colSpan="1" >SearchGroupInfoComponent</td>
256
-
257
- <td rowspan="1" colSpan="1" >React.ComponentType<SearchGroupInfoProps></td>
258
-
259
- <td rowspan="1" colSpan="1" >`SearchGroupInfo`</td>
260
-
261
- <td rowspan="1" colSpan="1" >Group information search component</td>
262
- </tr>
263
-
264
- <tr>
265
- <td rowspan="1" colSpan="1" >SearchUserInfoComponent</td>
266
-
267
- <td rowspan="1" colSpan="1" >React.ComponentType<SearchUserInfoProps></td>
268
-
269
- <td rowspan="1" colSpan="1" >`SearchUserInfo`</td>
270
-
271
- <td rowspan="1" colSpan="1" >User information search component</td>
272
- </tr>
273
-
274
- <tr>
275
- <td rowspan="1" colSpan="1" >onClose</td>
276
-
277
- <td rowspan="1" colSpan="1" >() => void</td>
278
-
279
- <td rowspan="1" colSpan="1" >`undefined`</td>
280
-
281
- <td rowspan="1" colSpan="1" >Close message panel callback</td>
282
- </tr>
283
-
284
- <tr>
285
- <td rowspan="1" colSpan="1" >onSendMessage</td>
286
-
287
- <td rowspan="1" colSpan="1" >(friend: Friend) => void</td>
288
-
289
- <td rowspan="1" colSpan="1" >`undefined`</td>
290
-
291
- <td rowspan="1" colSpan="1" >Message send callback</td>
292
- </tr>
293
-
294
- <tr>
295
- <td rowspan="1" colSpan="1" >onDeleteFriend</td>
296
-
297
- <td rowspan="1" colSpan="1" >(friend: Friend) => void</td>
298
-
299
- <td rowspan="1" colSpan="1" >`undefined`</td>
300
-
301
- <td rowspan="1" colSpan="1" >Remove friend callback</td>
302
- </tr>
303
-
304
- <tr>
305
- <td rowspan="1" colSpan="1" >onUpdateFriendRemark</td>
306
-
307
- <td rowspan="1" colSpan="1" >(friend: Friend, remark: string) => void</td>
308
-
309
- <td rowspan="1" colSpan="1" >`undefined`</td>
310
-
311
- <td rowspan="1" colSpan="1" >Update friend remark callback</td>
312
- </tr>
313
-
314
- <tr>
315
- <td rowspan="1" colSpan="1" >onAddToBlacklist</td>
316
-
317
- <td rowspan="1" colSpan="1" >(friend: Friend) => void</td>
318
-
319
- <td rowspan="1" colSpan="1" >`undefined`</td>
320
-
321
- <td rowspan="1" colSpan="1" >Add to blocklist callback</td>
322
- </tr>
323
-
324
- <tr>
325
- <td rowspan="1" colSpan="1" >onRemoveFromBlacklist</td>
326
-
327
- <td rowspan="1" colSpan="1" >(profile: UserProfile) => void</td>
328
-
329
- <td rowspan="1" colSpan="1" >`undefined`</td>
330
-
331
- <td rowspan="1" colSpan="1" >Remove from blocklist callback</td>
332
- </tr>
333
-
334
- <tr>
335
- <td rowspan="1" colSpan="1" >onEnterGroup</td>
336
-
337
- <td rowspan="1" colSpan="1" >(group: GroupModel) => void</td>
338
-
339
- <td rowspan="1" colSpan="1" >`undefined`</td>
340
-
341
- <td rowspan="1" colSpan="1" >Group entry callback</td>
342
- </tr>
343
-
344
- <tr>
345
- <td rowspan="1" colSpan="1" >onLeaveGroup</td>
346
-
347
- <td rowspan="1" colSpan="1" >(group: GroupModel) => void</td>
348
-
349
- <td rowspan="1" colSpan="1" >`undefined`</td>
350
-
351
- <td rowspan="1" colSpan="1" >Group exit callback</td>
352
- </tr>
353
-
354
- <tr>
355
- <td rowspan="1" colSpan="1" >onDismissGroup</td>
356
-
357
- <td rowspan="1" colSpan="1" >(group: GroupModel) => void</td>
358
-
359
- <td rowspan="1" colSpan="1" >`undefined`</td>
360
-
361
- <td rowspan="1" colSpan="1" >Group dismissed callback</td>
362
- </tr>
363
-
364
- <tr>
365
- <td rowspan="1" colSpan="1" >onFriendApplicationAction</td>
366
-
367
- <td rowspan="1" colSpan="1" >(action: 'accept' \| 'refuse', application: FriendApplication) => void</td>
368
-
369
- <td rowspan="1" colSpan="1" >`undefined`</td>
370
-
371
- <td rowspan="1" colSpan="1" >Friend request operation callback</td>
372
- </tr>
373
-
374
- <tr>
375
- <td rowspan="1" colSpan="1" >onGroupApplicationAction</td>
376
-
377
- <td rowspan="1" colSpan="1" >(action: 'accept' \| 'refuse', application: GroupApplication) => void</td>
378
-
379
- <td rowspan="1" colSpan="1" >`undefined`</td>
380
-
381
- <td rowspan="1" colSpan="1" >Group application operation callback</td>
382
- </tr>
383
-
384
- <tr>
385
- <td rowspan="1" colSpan="1" >onAddFriend</td>
386
-
387
- <td rowspan="1" colSpan="1" >(user: UserProfile, wording: string) => void</td>
388
-
389
- <td rowspan="1" colSpan="1" >`undefined`</td>
390
-
391
- <td rowspan="1" colSpan="1" >Friend request callback</td>
392
- </tr>
393
-
394
- <tr>
395
- <td rowspan="1" colSpan="1" >onJoinGroup</td>
396
-
397
- <td rowspan="1" colSpan="1" >(group: GroupModel, note: string) => void</td>
398
-
399
- <td rowspan="1" colSpan="1" >`undefined`</td>
400
-
401
- <td rowspan="1" colSpan="1" >Group join callback</td>
402
- </tr>
403
- </table>
404
-
24
+ | Field | Type | Default Value | Description |
25
+ | --- | --- | --- | --- |
26
+ | contactItem | ContactGroupItem \\| undefined | `undefined` | Currently showing contact item |
27
+ | showActions | boolean | `true` | whether to display the action button |
28
+ | PlaceholderEmpty | React.ReactNode \\| undefined | `undefined` | Empty status placeholder component |
29
+ | FriendInfoComponent | React.ComponentType<FriendInfoProps> | `FriendInfo` | Friend information component |
30
+ | GroupInfoComponent | React.ComponentType<GroupInfoProps> | `GroupInfo` | Group information component |
31
+ | BlacklistInfoComponent | React.ComponentType<BlacklistInfoProps> | `BlacklistInfo` | Blocklist information component |
32
+ | FriendApplicationInfoComponent | React.ComponentType<FriendApplicationInfoProps> | `FriendApplicationInfo` | Friend request information component |
33
+ | GroupApplicationInfoComponent | React.ComponentType<GroupApplicationInfoProps> | `GroupApplicationInfo` | Group application information component |
34
+ | SearchGroupInfoComponent | React.ComponentType<SearchGroupInfoProps> | `SearchGroupInfo` | Group information search component |
35
+ | SearchUserInfoComponent | React.ComponentType<SearchUserInfoProps> | `SearchUserInfo` | User information search component |
36
+ | onClose | () => void | `undefined` | Close message panel callback |
37
+ | onSendMessage | (friend: Friend) => void | `undefined` | Message send callback |
38
+ | onDeleteFriend | (friend: Friend) => void | `undefined` | Remove friend callback |
39
+ | onUpdateFriendRemark | (friend: Friend, remark: string) => void | `undefined` | Update friend remark callback |
40
+ | onAddToBlacklist | (friend: Friend) => void | `undefined` | Add to blocklist callback |
41
+ | onRemoveFromBlacklist | (profile: UserProfile) => void | `undefined` | Remove from blocklist callback |
42
+ | onEnterGroup | (group: GroupModel) => void | `undefined` | Group entry callback |
43
+ | onLeaveGroup | (group: GroupModel) => void | `undefined` | Group exit callback |
44
+ | onDismissGroup | (group: GroupModel) => void | `undefined` | Group dismissed callback |
45
+ | onFriendApplicationAction | (action: 'accept' \\| 'refuse', application: FriendApplication) => void | `undefined` | Friend request operation callback |
46
+ | onGroupApplicationAction | (action: 'accept' \\| 'refuse', application: GroupApplication) => void | `undefined` | Group application operation callback |
47
+ | onAddFriend | (user: UserProfile, wording: string) => void | `undefined` | Friend request callback |
48
+ | onJoinGroup | (group: GroupModel, note: string) => void | `undefined` | Group join callback |
405
49
 
406
50
  ## Basic Usage
407
51
  ``` tsx
@@ -428,15 +72,10 @@ By setting the `enableSearch` parameter, you can flexibly control the display of
428
72
 
429
73
  The effect is as shown below.
430
74
 
431
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d1879db679511f09b85525400bf7822.png)
432
-
433
-
434
75
  ### Custom Contact List Contact Group Configuration
435
76
 
436
77
  `groupConfig` is used for custom group configuration, including title, display sequence, hidden state, etc. The default value is `{}`.
437
78
 
438
-
439
-
440
79
  【Custom Group Heading】
441
80
  ``` typescript
442
81
  import React from 'react';
@@ -472,8 +111,6 @@ function CustomGroupTitlesContactList() {
472
111
 
473
112
  The effect is as shown below.
474
113
 
475
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d333139679511f09a9d52540044a08e.png)
476
-
477
114
  【Hide Specific Group】
478
115
  ``` typescript
479
116
  import React from 'react';
@@ -505,9 +142,6 @@ function HiddenGroupsContactList() {
505
142
 
506
143
  The effect is as shown below.
507
144
 
508
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d119649679511f09b85525400bf7822.png)
509
-
510
-
511
145
  ### Custom Contact List Sub-Item
512
146
 
513
147
  ContactItem is used for custom rendering component of contact person, with default value as built-in `ContactListItem` component.
@@ -516,10 +150,10 @@ import React from 'react';
516
150
  import { ContactList, Avatar } from '@tencentcloud/chat-uikit-react';
517
151
  import type { ContactListItemProps } from '@tencentcloud/chat-uikit-react';
518
152
 
519
- const SimpleContactItem: React.FC<ContactListItemProps> = ({
520
- contactItem,
521
- onClick,
522
- activeContactItem
153
+ const SimpleContactItem: React.FC<ContactListItemProps> = ({
154
+ contactItem,
155
+ onClick,
156
+ activeContactItem
523
157
  }) => {
524
158
  const isActive = activeContactItem?.data.userID === contactItem.data.userID;
525
159
 
@@ -556,9 +190,6 @@ function ContactListWithSimpleItems() {
556
190
 
557
191
  The effect is as shown below.
558
192
 
559
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/410ebb3d679511f08e915254007c27c5.png)
560
-
561
-
562
193
  ### Custom Contact Person Detail Action Button Switch
563
194
 
564
195
  `showActions` specifies whether to display action buttons. The default value is `true`.
@@ -579,7 +210,7 @@ function ReadOnlyContactInfo() {
579
210
  };
580
211
 
581
212
  return (
582
- <ContactInfo
213
+ <ContactInfo
583
214
  contactItem={friendData}
584
215
  showActions={false} // Hide ALL action buttons and display information only
585
216
  />
@@ -589,9 +220,6 @@ function ReadOnlyContactInfo() {
589
220
 
590
221
  The effect is as shown below.
591
222
 
592
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d38fc0c679511f0924f5254005ef0f7.png)
593
-
594
-
595
223
  ### Custom Contact Person Detail Empty Status
596
224
 
597
225
  `PlaceholderEmpty` is used for custom empty status display content, default value is `undefined`.
@@ -601,9 +229,9 @@ import { ContactInfo } from '@tencentcloud/chat-uikit-react';
601
229
 
602
230
  function CustomEmptyState() {
603
231
  const EmptyPlaceholder = () => (
604
- <div style={{
232
+ <div style={{
605
233
  width: '100%',
606
- textAlign: 'center',
234
+ textAlign: 'center',
607
235
  padding: '40px 20px',
608
236
  color: '#999',
609
237
  fontSize: '14px',
@@ -618,7 +246,7 @@ function CustomEmptyState() {
618
246
  );
619
247
 
620
248
  return (
621
- <ContactInfo
249
+ <ContactInfo
622
250
  PlaceholderEmpty={<EmptyPlaceholder />}
623
251
  />
624
252
  );
@@ -627,22 +255,16 @@ function CustomEmptyState() {
627
255
 
628
256
  The effect is as shown below.
629
257
 
630
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/410e35cf679511f0837f525400454e06.png)
631
-
632
-
633
258
  ### Custom Contact Person Detail Component
634
259
 
635
260
  > **Note:**
636
- >
261
+ >
637
262
  > - `FriendInfoComponent` for custom friend information component, default value is built-in `FriendInfo` component.
638
263
  > - `GroupInfoComponent` for custom group information component, default value is built-in `GroupInfo` component.
639
264
  > - `BlacklistInfoComponent` for custom blocklist information component, default value is built-in `BlacklistInfo` component.
640
265
  > - `FriendApplicationInfoComponent` for custom Friend request information component, default value is built-in `FriendApplicationInfo` component.
641
266
  > - `GroupApplicationInfoComponent` for custom group application information component, default value is built-in `GroupApplicationInfo` component.
642
267
 
643
-
644
-
645
-
646
268
  【Custom Friend Information Component】
647
269
  ``` typescript
648
270
  import React from 'react';
@@ -651,34 +273,29 @@ import type { FriendInfoProps, Friend } from '@tencentcloud/chat-uikit-react';
651
273
  import { Button } from '@tencentcloud/uikit-base-component-react';
652
274
 
653
275
  // Custom Friend Information Component
654
- const CustomFriendInfo: React.FC<FriendInfoProps> = ({
655
- friend,
656
- showActions,
657
- onClose,
276
+ const CustomFriendInfo: React.FC<FriendInfoProps> = ({
277
+ friend,
278
+ showActions,
279
+ onClose,
658
280
  onSendMessage,
659
- onDeleteFriend
281
+ onDeleteFriend
660
282
  }) => {
661
283
  return (
662
284
  <div style={{ padding: '20px', border: '1px solid #e0e0e0', borderRadius: '8px' }}>
663
285
  <div style={{ display: 'flex', alignItems: 'center', marginBottom: '16px' }}>
664
- <img
665
- src={friend.avatar}
666
- alt="avatar"
667
- style={{ width: '60px', height: '60px', borderRadius: '50%', marginRight: '16px' }}
668
- />
286
+
669
287
  <div>
670
288
  <h3 style={{ margin: '0 0 4px 0' }}>{friend.nick}</h3>
671
289
  <p style={{ margin: '0', color: '#666' }}>Remark: {friend.remark}</p>
672
290
  </div>
673
291
  </div>
674
-
292
+
675
293
  <div style={{ display: 'flex', flexDirection: 'column', gap: '10px', marginBottom: '16px' }}>
676
294
  <p><strong>uid:</strong> {friend.userID}</p>
677
295
  <p><strong>Personal signature:</strong> {friend.selfSignature}</p>
678
296
  <p><strong>Location:</strong> {friend.location}</p>
679
297
  </div>
680
298
 
681
-
682
299
  {showActions && (
683
300
  <div style={{ display: 'flex', gap: '8px' }}>
684
301
  <Button onClick={() => onSendMessage?.(friend)}>Send Message</Button>
@@ -705,7 +322,7 @@ function CustomFriendInfoDemo() {
705
322
  };
706
323
 
707
324
  return (
708
- <ContactInfo
325
+ <ContactInfo
709
326
  contactItem={friendData}
710
327
  FriendInfoComponent={CustomFriendInfo}
711
328
  onSendMessage={(friend) => console.log('Send message to:', friend.nick)}
@@ -717,9 +334,6 @@ function CustomFriendInfoDemo() {
717
334
 
718
335
  The effect is as shown below.
719
336
 
720
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d11e473679511f0924f5254005ef0f7.png)
721
-
722
-
723
337
  【Custom Group Information Component】
724
338
  ``` typescript
725
339
  import React from 'react';
@@ -728,13 +342,13 @@ import type { GroupInfoProps, GroupModel } from '@tencentcloud/uikit-component-r
728
342
  import { Button } from '@tencentcloud/uikit-base-component-react';
729
343
 
730
344
  // Custom Group Information Component
731
- const CustomGroupInfo: React.FC<GroupInfoProps> = ({
732
- group,
733
- showActions,
734
- onClose,
345
+ const CustomGroupInfo: React.FC<GroupInfoProps> = ({
346
+ group,
347
+ showActions,
348
+ onClose,
735
349
  onEnterGroup,
736
350
  onLeaveGroup,
737
- onDismissGroup
351
+ onDismissGroup
738
352
  }) => {
739
353
  const isOwner = group.selfInfo?.role === GroupMemberRole.OWNER; // group owner
740
354
  const isAdmin = group.selfInfo?.role === GroupMemberRole.ADMIN; // admin
@@ -742,11 +356,7 @@ const CustomGroupInfo: React.FC<GroupInfoProps> = ({
742
356
  return (
743
357
  <div style={{ padding: '20px', border: '1px solid #e0e0e0', borderRadius: '8px' }}>
744
358
  <div style={{ display: 'flex', alignItems: 'center', marginBottom: '16px' }}>
745
- <img
746
- src={group.avatar}
747
- alt="group avatar"
748
- style={{ width: '60px', height: '60px', borderRadius: '8px', marginRight: '16px' }}
749
- />
359
+
750
360
  <div>
751
361
  <h3 style={{ margin: '0 0 4px 0' }}>{group.name}</h3>
752
362
  <p style={{ margin: '0', color: '#666' }}>
@@ -754,7 +364,7 @@ const CustomGroupInfo: React.FC<GroupInfoProps> = ({
754
364
  </p>
755
365
  </div>
756
366
  </div>
757
-
367
+
758
368
  <div style={{ display: 'flex', flexDirection: 'column', gap: '10px', marginBottom: '16px' }}>
759
369
  <p><strong>Group introduction:</strong> {group.introduction}</p>
760
370
  <p><strong>Group notice:</strong> {group.notification}</p>
@@ -801,7 +411,7 @@ function CustomGroupInfoDemo() {
801
411
  };
802
412
 
803
413
  return (
804
- <ContactInfo
414
+ <ContactInfo
805
415
  contactItem={groupData}
806
416
  GroupInfoComponent={CustomGroupInfo}
807
417
  onEnterGroup={(group) => console.log('Enter group:', group.name)}
@@ -814,8 +424,6 @@ function CustomGroupInfoDemo() {
814
424
 
815
425
  The effect is as shown below.
816
426
 
817
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d17ba45679511f0b5365254001c06ec.png)
818
-
819
427
  【Custom Blocklist Information Component】
820
428
  ``` typescript
821
429
  import React from 'react';
@@ -824,26 +432,22 @@ import type { BlacklistInfoProps, UserProfile } from '@tencentcloud/uikit-compon
824
432
  import { Button } from '@tencentcloud/uikit-base-component-react';
825
433
 
826
434
  // Custom Blocklist Information Component
827
- const CustomBlacklistInfo: React.FC<BlacklistInfoProps> = ({
828
- profile,
829
- showActions,
830
- onClose,
831
- onRemoveFromBlacklist
435
+ const CustomBlacklistInfo: React.FC<BlacklistInfoProps> = ({
436
+ profile,
437
+ showActions,
438
+ onClose,
439
+ onRemoveFromBlacklist
832
440
  }) => {
833
441
  return (
834
442
  <div style={{ padding: '20px', border: '1px solid #e0e0e0', borderRadius: '8px' }}>
835
443
  <div style={{ display: 'flex', alignItems: 'center', marginBottom: '16px' }}>
836
- <img
837
- src={profile.src}
838
- alt="avatar"
839
- style={{ width: '60px', height: '60px', borderRadius: '50%', marginRight: '16px' }}
840
- />
444
+
841
445
  <div>
842
446
  <h3 style={{ margin: '0 0 4px 0', color: '#ff4d4f' }}>{profile.nick}</h3>
843
447
  <p style={{ margin: '0', color: '#666' }}>uid: {profile.userID}</p>
844
448
  </div>
845
449
  </div>
846
-
450
+
847
451
  <div style={{ display: 'flex', flexDirection: 'column', gap: '10px', marginBottom: '16px' }}>
848
452
  <p><strong>Personal signature:</strong> {profile.selfSignature}</p>
849
453
  <p><strong>Location:</strong> {profile.location}</p>
@@ -854,7 +458,7 @@ const CustomBlacklistInfo: React.FC<BlacklistInfoProps> = ({
854
458
 
855
459
  {showActions && (
856
460
  <div style={{ display: 'flex', gap: '8px' }}>
857
- <Button
461
+ <Button
858
462
  onClick={() => onRemoveFromBlacklist?.(profile)}
859
463
  style={{ backgroundColor: '#52c41a', color: 'white', border: 'none' }}
860
464
  >
@@ -884,7 +488,7 @@ function CustomBlacklistInfoDemo() {
884
488
  };
885
489
 
886
490
  return (
887
- <ContactInfo
491
+ <ContactInfo
888
492
  contactItem={blacklistData}
889
493
  BlacklistInfoComponent={CustomBlacklistInfo}
890
494
  onRemoveFromBlacklist={(profile) => console.log('Removing from blocklist:', profile.nick)}
@@ -895,8 +499,6 @@ function CustomBlacklistInfoDemo() {
895
499
 
896
500
  The effect is as shown below.
897
501
 
898
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/410ce2c7679511f0837f525400454e06.png)
899
-
900
502
  【Custom Friend Request Information Component】
901
503
  ``` typescript
902
504
  import React from 'react';
@@ -905,12 +507,12 @@ import type { FriendApplicationInfoProps, FriendApplication } from '@tencentclou
905
507
  import { Button } from '@tencentcloud/uikit-base-component-react';
906
508
 
907
509
  // Custom Friend Request Information Component
908
- const CustomFriendApplicationInfo: React.FC<FriendApplicationInfoProps> = ({
909
- application,
910
- showActions,
911
- onClose,
510
+ const CustomFriendApplicationInfo: React.FC<FriendApplicationInfoProps> = ({
511
+ application,
512
+ showActions,
513
+ onClose,
912
514
  onAccept,
913
- onRefuse
515
+ onRefuse
914
516
  }) => {
915
517
  const formatTime = (timestamp: number) => {
916
518
  return new Date(timestamp).toLocaleString();
@@ -919,17 +521,13 @@ const CustomFriendApplicationInfo: React.FC<FriendApplicationInfoProps> = ({
919
521
  return (
920
522
  <div style={{ padding: '20px', border: '1px solid #e0e0e0', borderRadius: '8px' }}>
921
523
  <div style={{ display: 'flex', alignItems: 'center', marginBottom: '16px' }}>
922
- <img
923
- src={application.src}
924
- alt="avatar"
925
- style={{ width: '60px', height: '60px', borderRadius: '50%', marginRight: '16px' }}
926
- />
524
+
927
525
  <div>
928
526
  <h3 style={{ margin: '0 0 4px 0' }}>{application.nick}</h3>
929
527
  <p style={{ margin: '0', color: '#666' }}>Application time: {formatTime(application.time)}</p>
930
528
  </div>
931
529
  </div>
932
-
530
+
933
531
  <div style={{ display: 'flex', flexDirection: 'column', gap: '10px', marginBottom: '16px' }}>
934
532
  <p><strong>Application source:</strong> {application.source}</p>
935
533
  <p><strong>Remarks:</strong> {application.wording}</p>
@@ -940,13 +538,13 @@ const CustomFriendApplicationInfo: React.FC<FriendApplicationInfoProps> = ({
940
538
 
941
539
  {showActions && (
942
540
  <div style={{ display: 'flex', gap: '8px' }}>
943
- <Button
541
+ <Button
944
542
  onClick={() => onAccept?.(application)}
945
543
  style={{ backgroundColor: '#52c41a', color: 'white', border: 'none' }}
946
544
  >
947
545
  accept application
948
546
  </Button>
949
- <Button
547
+ <Button
950
548
  onClick={() => onRefuse?.(application)}
951
549
  style={{ backgroundColor: '#ff4d4f', color: 'white', border: 'none' }}
952
550
  >
@@ -974,7 +572,7 @@ function CustomFriendApplicationInfoDemo() {
974
572
  };
975
573
 
976
574
  return (
977
- <ContactInfo
575
+ <ContactInfo
978
576
  contactItem={applicationData}
979
577
  FriendApplicationInfoComponent={CustomFriendApplicationInfo}
980
578
  onFriendApplicationAction={(action, application) => {
@@ -991,8 +589,6 @@ function CustomFriendApplicationInfoDemo() {
991
589
 
992
590
  The effect is as shown below.
993
591
 
994
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d12304b679511f0bd33525400e889b2.png)
995
-
996
592
  【Custom Group Application Information Component】
997
593
  ``` typescript
998
594
  import React from 'react';
@@ -1001,12 +597,12 @@ import type { GroupApplicationInfoProps, GroupApplication } from '@tencentcloud/
1001
597
  import { Button } from '@tencentcloud/uikit-base-component-react';
1002
598
 
1003
599
  // Custom Group Application Information Component
1004
- const CustomGroupApplicationInfo: React.FC<GroupApplicationInfoProps> = ({
1005
- application,
1006
- showActions,
1007
- onClose,
600
+ const CustomGroupApplicationInfo: React.FC<GroupApplicationInfoProps> = ({
601
+ application,
602
+ showActions,
603
+ onClose,
1008
604
  onAccept,
1009
- onRefuse
605
+ onRefuse
1010
606
  }) => {
1011
607
  const getApplicationTypeText = (type: number) => {
1012
608
  return type === 0 ? 'user application to join' : 'invite user joined';
@@ -1025,7 +621,7 @@ const CustomGroupApplicationInfo: React.FC<GroupApplicationInfoProps> = ({
1025
621
  </p>
1026
622
  </div>
1027
623
  </div>
1028
-
624
+
1029
625
  <div style={{ display: 'flex', flexDirection: 'column', gap: '10px', marginBottom: '16px' }}>
1030
626
  <p><strong>Applicant:</strong> {application.applicantNick}</p>
1031
627
  <p><strong>Group ID:</strong> {application.groupID}</p>
@@ -1037,13 +633,13 @@ const CustomGroupApplicationInfo: React.FC<GroupApplicationInfoProps> = ({
1037
633
 
1038
634
  {showActions && (
1039
635
  <div style={{ display: 'flex', gap: '8px' }}>
1040
- <Button
636
+ <Button
1041
637
  onClick={() => onAccept?.(application)}
1042
638
  style={{ backgroundColor: '#52c41a', color: 'white', border: 'none' }}
1043
639
  >
1044
640
  Approving Applications
1045
641
  </Button>
1046
- <Button
642
+ <Button
1047
643
  onClick={() => onRefuse?.(application)}
1048
644
  style={{ backgroundColor: '#ff4d4f', color: 'white', border: 'none' }}
1049
645
  >
@@ -1071,7 +667,7 @@ function CustomGroupApplicationInfoDemo() {
1071
667
  };
1072
668
 
1073
669
  return (
1074
- <ContactInfo
670
+ <ContactInfo
1075
671
  contactItem={applicationData}
1076
672
  GroupApplicationInfoComponent={CustomGroupApplicationInfo}
1077
673
  onGroupApplicationAction={(action, application) => {
@@ -1088,6 +684,4 @@ function CustomGroupApplicationInfoDemo() {
1088
684
 
1089
685
  The effect is as shown below.
1090
686
 
1091
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027116646/3d42e3cb679511f08e915254007c27c5.png)
1092
-
1093
- ##
687
+ ##