@tencent-rtc/mcp 1.3.8 → 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.
- package/package.json +2 -2
- package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/android-faq.md} +10 -22
- package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/flutter-faq.md} +10 -22
- package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/ios-faq.md} +10 -22
- package/resource/doc/callkit/preset/android/api.md +296 -0
- package/resource/doc/callkit/preset/android/integration.md +430 -0
- package/resource/doc/callkit/preset/flutter/api.md +410 -0
- package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +35 -97
- package/resource/doc/callkit/preset/ios/api.md +80 -0
- package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +37 -118
- package/resource/doc/callkit/preset/react/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +5 -20
- package/resource/doc/callkit/preset/vue/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +4 -19
- package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -38
- package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
- package/resource/doc/chatkit/android/integration.md +490 -0
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +281 -0
- package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -1
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +199 -0
- package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +235 -0
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +3 -3
- package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +19 -88
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -38
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +47 -165
- package/resource/doc/{chatuikit → chatkit}/react/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +8 -49
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +6 -35
- package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +0 -6
- package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -11
- package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +96 -502
- package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
- package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
- package/resource/doc/chatkit/react/components/conversation-preview.md +118 -0
- package/resource/doc/chatkit/react/components/conversation-search.md +60 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -337
- package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +20 -212
- package/resource/doc/chatkit/react/components/search.md +243 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +1 -47
- package/resource/doc/{chatuikit → chatkit}/react/integration.md +21 -81
- package/resource/doc/{chatuikit → chatkit}/vue/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -48
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +3 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +0 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -15
- package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
- package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -492
- package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
- package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +2 -223
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -252
- package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
- package/resource/doc/{chatuikit → chatkit}/vue/components/tuikit.md +7 -21
- package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +3 -62
- package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/vue/integration.md +22 -23
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +18 -89
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +28 -141
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +20 -112
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +59 -193
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +94 -344
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +107 -515
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +33 -173
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +14 -93
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -179
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +19 -107
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -166
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -163
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +69 -443
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +107 -492
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +23 -165
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +35 -111
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +35 -193
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +31 -144
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +24 -116
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +37 -171
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +79 -459
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +69 -320
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +85 -502
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +32 -169
- package/resource/doc/livekit/core-sdk/voice/android/voice-audience-list.md +263 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-audio-effect.md +222 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-barrage.md +452 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +536 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-gift.md +442 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-host-interaction.md +489 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-integration.md +574 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +435 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +516 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-integration.md +576 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-audience-list.md +263 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-audio-effect.md +212 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-barrage.md +404 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +499 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-gift.md +403 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-host-interaction.md +552 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +514 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +348 -0
- package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -2
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
- package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
- package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +10 -49
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +26 -144
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +12 -75
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +36 -227
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +215 -0
- package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
- package/resource/doc/livekit/preset/live/vue/live-list-integration.md +241 -0
- package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +299 -0
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +300 -0
- package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +743 -0
- package/resource/doc/roomkit/vue/faq.md +1 -0
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
- package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
- package/resource/doc/roomkit/vue/features/device-state.md +24 -44
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
- package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
- package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
- package/resource/doc/roomkit/vue/features/room-state.md +25 -34
- package/resource/doc/roomkit/vue/features/room-view.md +30 -125
- package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
- package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
- package/resource/doc/roomkit/vue/features/virtual-background.md +13 -29
- package/resource/doc/roomkit/vue/integration.md +173 -337
- package/resource/doc/rtcengine/faq/common/error_code.md +1 -0
- package/resource/doc/rtcengine/faq/web/web.md +14 -24
- package/resource/doc/rtcengine/web/api.md +1 -3
- package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +3 -10
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +1 -5
- package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +1 -2
- package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -4
- package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +3 -5
- package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +1 -7
- package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +0 -2
- package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -8
- package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +11 -11
- package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +12 -88
- package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -5
- package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +30 -37
- package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +13 -90
- package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -2
- package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +1 -2
- package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +19 -19
- package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
- package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -5
- package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
- package/resource/doc/trtc/C++/ITRTCCloud.md +686 -2835
- package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/C++/ITXDeviceManager.md +126 -767
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +579 -2147
- package/resource/doc/trtc/C++/TRTCTypeDef.md +703 -3378
- package/resource/doc/trtc/C++/TXLiteAVCode.md +116 -908
- package/resource/doc/trtc/android/TRTCCloud.md +606 -2573
- package/resource/doc/trtc/android/TRTCCloudDef.md +752 -3640
- package/resource/doc/trtc/android/TRTCCloudListener.md +581 -2008
- package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/android/TXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
- package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
- package/resource/doc/trtc/android/TXLiteAVCode.md +114 -892
- package/resource/doc/trtc/iOS/TRTCCloud.md +694 -2904
- package/resource/doc/trtc/iOS/TRTCCloudDef.md +726 -3498
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +543 -2028
- package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +174 -877
- package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
- package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
- package/server.js +1 -5
- package/server.js.map +1 -1
- package/tools/call/get_callkit_api.js +32 -0
- package/tools/call/get_callkit_api.js.map +1 -0
- package/tools/call/get_native_call_uikit_integration.js +34 -0
- package/tools/call/get_native_call_uikit_integration.js.map +1 -0
- package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
- package/tools/call/get_web_call_uikit_integration.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_integration.js +45 -0
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_integration.js +45 -0
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
- package/tools/common/get_faq.js +265 -0
- package/tools/common/get_faq.js.map +1 -0
- package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
- package/tools/common/get_usersig.js.map +1 -0
- package/tools/common/present_framework_choice.js +63 -0
- package/tools/common/present_framework_choice.js.map +1 -0
- package/tools/definitions/get_callkit_api_def.js +29 -0
- package/tools/definitions/get_callkit_api_def.js.map +1 -0
- package/tools/definitions/get_faq_def.js +17 -18
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js +15 -18
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
- package/tools/definitions/get_usersig_def.js +17 -22
- package/tools/definitions/get_usersig_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +15 -18
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_livekit_api_def.js +30 -0
- package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js +32 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +15 -30
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +31 -0
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +24 -12
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/index.js +47 -59
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_features.js +65 -0
- package/tools/live/get_native_livekit_core_features.js.map +1 -0
- package/tools/live/get_native_livekit_core_integration.js +59 -0
- package/tools/live/get_native_livekit_core_integration.js.map +1 -0
- package/tools/live/get_web_live_uikit_integration.js +48 -0
- package/tools/live/get_web_live_uikit_integration.js.map +1 -0
- package/tools/live/get_web_livekit_api.js +32 -0
- package/tools/live/get_web_livekit_api.js.map +1 -0
- package/tools/live/get_web_livekit_component_detail.js +34 -0
- package/tools/live/get_web_livekit_component_detail.js.map +1 -0
- package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
- package/tools/room/get_web_room_uikit_integration.js.map +1 -0
- package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
- package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
- package/utils/generate-structured-result.js +61 -17
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/report-cls-client.js +12 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +2 -2
- package/resource/doc/chatuikit/android/integration.md +0 -287
- package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1371
- package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -932
- package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1119
- package/resource/doc/chatuikit/flutter/workflow.md +0 -941
- package/resource/doc/chatuikit/iOS/workflow.md +0 -0
- package/resource/doc/chatuikit/react/components/conversation-list.md +0 -1017
- package/resource/doc/chatuikit/react/components/search.md +0 -745
- package/resource/doc/chatuikit/react/create-group.md +0 -23
- package/resource/doc/chatuikit/react/init.md +0 -26
- package/resource/doc/chatuikit/react/workflow.md +0 -258
- package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
- package/resource/doc/chatuikit/vue/create-group.md +0 -25
- package/resource/doc/chatuikit/vue/init.md +0 -40
- package/resource/doc/chatuikit/vue/workflow.md +0 -395
- package/resource/doc/livekit/live/android/workflow.md +0 -320
- package/resource/doc/livekit/live/flutter/workflow.md +0 -353
- package/resource/doc/livekit/live/ios/workflow.md +0 -454
- package/resource/doc/livekit/live/vue/components/barrage.md +0 -616
- package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -446
- package/resource/doc/livekit/live/vue/faq.md +0 -0
- package/resource/doc/livekit/live/vue/live-list-integration.md +0 -200
- package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -595
- package/resource/doc/livekit/live/vue/states/live-state.md +0 -3591
- package/resource/doc/livekit/live/vue/workflow.md +0 -218
- package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -312
- package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -430
- package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -679
- package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -671
- package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -271
- package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
- package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
- package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
- package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
- package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -865
- package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -657
- package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -437
- package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -335
- package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
- package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -327
- package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -659
- package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
- package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -814
- package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1000
- package/resource/doc/roomkit/vue/features/workflow.md +0 -553
- package/resource/doc/roomkit/vue/workflow.md +0 -487
- package/resource/doc/tuicallkit/android/integration.md +0 -286
- package/resource/doc/tuicallkit/android/workflow.md +0 -0
- package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -784
- package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -610
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -938
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -897
- package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -469
- package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -781
- package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -398
- package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
- package/resource/doc/tuicallkit/react/api.md +0 -1404
- package/resource/doc/tuicallkit/vue/api.md +0 -1406
- package/resource/doc/tuicallkit/vue/faq.md +0 -36
- package/tools/call/get-native-call-integration.js +0 -43
- package/tools/call/get-native-call-integration.js.map +0 -1
- package/tools/call/get-web-call-api.js +0 -27
- package/tools/call/get-web-call-api.js.map +0 -1
- package/tools/call/get-web-call-integration.js.map +0 -1
- package/tools/chat/get-native-chat-feature-detail.js +0 -30
- package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
- package/tools/chat/get-native-chat-integration.js +0 -45
- package/tools/chat/get-native-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-component-detail.js +0 -31
- package/tools/chat/get-web-chat-component-detail.js.map +0 -1
- package/tools/chat/get-web-chat-integration.js +0 -45
- package/tools/chat/get-web-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-uikit-init.js +0 -28
- package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
- package/tools/chat/get-web-create-group-doc.js +0 -28
- package/tools/chat/get-web-create-group-doc.js.map +0 -1
- package/tools/common/get-faq.js +0 -91
- package/tools/common/get-faq.js.map +0 -1
- package/tools/common/get-usersig.js.map +0 -1
- package/tools/common/present-framework-choice.js +0 -16
- package/tools/common/present-framework-choice.js.map +0 -1
- package/tools/common/record-prompt.js +0 -55
- package/tools/common/record-prompt.js.map +0 -1
- package/tools/common/record-result.js +0 -60
- package/tools/common/record-result.js.map +0 -1
- package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
- package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_live_api_def.js +0 -23
- package/tools/definitions/get_native_live_api_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -87
- package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_integration_def.js +0 -49
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -74
- package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
- package/tools/definitions/get_trtc_native_api_def.js +0 -16
- package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
- package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
- package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
- package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
- package/tools/definitions/get_web_create_group_doc_def.js +0 -18
- package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
- package/tools/definitions/get_web_live_state_detail_def.js +0 -19
- package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
- package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
- package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_feature_detail_def.js +0 -95
- package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_state_detail_def.js +0 -19
- package/tools/definitions/get_web_room_state_detail_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -53
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -30
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -101
- package/tools/live/get-native-live-uikit-integration.js.map +0 -1
- package/tools/live/get-web-live-component-detail.js +0 -31
- package/tools/live/get-web-live-component-detail.js.map +0 -1
- package/tools/live/get-web-live-state-detail.js +0 -31
- package/tools/live/get-web-live-state-detail.js.map +0 -1
- package/tools/live/get-web-live-uikit-integration.js +0 -52
- package/tools/live/get-web-live-uikit-integration.js.map +0 -1
- package/tools/live/get_native_live_uikit_extra_features.js +0 -105
- package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
- package/tools/live/get_native_live_uikit_interaction.js +0 -101
- package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
- package/tools/native_live/get-native-live-api.js +0 -31
- package/tools/native_live/get-native-live-api.js.map +0 -1
- package/tools/room/get-web-room-feature-detail.js.map +0 -1
- package/tools/room/get-web-room-integration.js.map +0 -1
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
- package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
- package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
- package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
- package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
- package/tools/trtc/get-trtc-native-api.js +0 -31
- package/tools/trtc/get-trtc-native-api.js.map +0 -1
- package/utils/handle-component-name.js +0 -33
- package/utils/handle-component-name.js.map +0 -1
- /package/resource/doc/{chatuikit/android/workflow.md → callkit/core-sdk/.gitkeep} +0 -0
- /package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +0 -0
- /package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
- /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
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
<
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
<
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
<
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
<
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
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
|
-

|
|
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
|
-

|
|
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
|
-

|
|
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
|
-

|
|
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
|
-

|
|
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
|
-

|
|
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
|
-
|
|
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
|
-

|
|
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
|
-
|
|
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
|
-

|
|
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
|
-
|
|
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
|
-

|
|
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
|
-
|
|
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
|
-

|
|
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
|
-
|
|
1092
|
-
|
|
1093
|
-
##
|
|
687
|
+
##
|