@tencent-rtc/mcp 1.3.9 → 1.4.1
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/{tuicallkit → callkit/preset}/android/integration.md +53 -365
- 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/{chatuikit → chatkit}/android/integration.md +28 -121
- 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 +18 -87
- 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/{voice → core-sdk/voice}/android/voice-audience-list.md +18 -89
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +28 -141
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +50 -259
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +51 -265
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +61 -427
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +33 -173
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -203
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +56 -416
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +35 -111
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +35 -193
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +31 -144
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +43 -252
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +79 -459
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +46 -264
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-integration.md +61 -445
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +32 -169
- 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 +21 -76
- 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/common/record_skill_session.js +58 -0
- package/tools/common/record_skill_session.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 -34
- 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 -41
- 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 -46
- 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/definitions/record_skill_session_def.js +31 -0
- package/tools/definitions/record_skill_session_def.js.map +1 -0
- package/tools/index.js +49 -61
- 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 +21 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +2 -2
- package/resource/doc/chatuikit/android/workflow.md +0 -713
- 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/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 -733
- package/resource/doc/tuicallkit/android/workflow.md +0 -441
- 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/present-scenario-choice.js +0 -16
- package/tools/common/present-scenario-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 -75
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
- 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 -92
- 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/present_scenario_choice_def.js +0 -53
- package/tools/definitions/present_scenario_choice_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -58
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -46
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -177
- 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 -194
- 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/iOS/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
|
@@ -4,42 +4,28 @@ TUIKit is a UI component library based on Tencent Cloud Chat SDK. It provides so
|
|
|
4
4
|
Based on UI components, you can quickly build your own business logic like building blocks.
|
|
5
5
|
The components in TUIKit implement UI features while calling the appropriate APIs of the IM SDK to handle IM-related logic and data. Therefore, developers using TUIKit only need to consider their business or personalized expansion.
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
## TUIKit main features
|
|
9
8
|
|
|
10
9
|
TUIKit is mainly divided into several UI subcomponents: Chat, ConversationList, ChatSetting, ContactList, and Search. Each UI component is responsible for showing different content.
|
|
11
10
|
|
|
12
11
|
## Chat
|
|
13
12
|
|
|
14
|
-
Chat is primarily responsible for displaying the message interface. You can use it to directly send different types of messages, including text, emoji, images, video, file, and custom message types. You can also long-press messages to forward, recall, or refer to them, as well as check message read receipt details.
|
|
13
|
+
Chat is primarily responsible for displaying the message interface. You can use it to directly send different types of messages, including text, emoji, images, video, file, and custom message types. You can also long-press messages to forward, recall, or refer to them, as well as check message read receipt details.
|
|
15
14
|
|
|
16
15
|
## ConversationList
|
|
17
16
|
|
|
18
|
-
ConversationList is primarily responsible for showing and editing the conversation list, including session pinning, mute conversation notifications, delete conversation, and other features.
|
|
17
|
+
ConversationList is primarily responsible for showing and editing the conversation list, including session pinning, mute conversation notifications, delete conversation, and other features.
|
|
19
18
|
|
|
20
19
|
## Search
|
|
21
20
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
<td rowspan="1" colSpan="1">in-conversation search</td>
|
|
28
|
-
</tr>
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
<tr>
|
|
32
|
-
<td rowspan="1" colSpan="1"><br><br>Search ALL text containing "hello" via global search</td>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
<td rowspan="1" colSpan="1"><br><br>Search all file messages in specific conversations</td>
|
|
36
|
-
</tr>
|
|
37
|
-
</table>
|
|
21
|
+
| global search | in-conversation search |
|
|
22
|
+
| --- | --- |
|
|
23
|
+
| Search ALL text containing "hello" via global search | Search all file messages in specific conversations |
|
|
38
24
|
|
|
39
25
|
## ChatSetting
|
|
40
26
|
|
|
41
|
-
ChatSetting is primarily responsible for managing group information, group members, and group permissions.
|
|
27
|
+
ChatSetting is primarily responsible for managing group information, group members, and group permissions.
|
|
42
28
|
|
|
43
29
|
## ContactList
|
|
44
30
|
|
|
45
|
-
ContactList is primarily responsible for showing the contact person and permission setting.
|
|
31
|
+
ContactList is primarily responsible for showing the contact person and permission setting.
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
## Overview
|
|
2
2
|
|
|
3
|
-
|
|
4
3
|
UserPicker is a powerful selector component that supports two display modes: list and tree. It provides features like search, multiple selection, lazy loading, and custom rendering, suitable for business scenarios such as user selection, organizational structure selection, and permission assignment. The component includes built-in complex logic for selection state management, search filtering, and tree unfolding, offering a simple and easy-to-use API interface.
|
|
5
4
|
|
|
6
|
-
|
|
7
5
|
## Props quick reference table
|
|
8
6
|
|
|
9
|
-
|
|
10
7
|
| Field | Type | Default | Description |
|
|
11
8
|
| -------------------- | -------------------------------------------- | -------------------------- | ----------- |
|
|
12
9
|
| displayMode | `'list' \| 'tree'` | required | Display mode, list or tree |
|
|
@@ -24,33 +21,25 @@ UserPicker is a powerful selector component that supports two display modes: lis
|
|
|
24
21
|
| onReachEnd | `Function` | `undefined` | Callback when scrolling to the bottom in list mode |
|
|
25
22
|
| onExpand | `Function` | `undefined` | Expand callback in tree mode |
|
|
26
23
|
|
|
27
|
-
|
|
28
24
|
## Ref expose method quick reference table
|
|
29
25
|
|
|
30
|
-
|
|
31
26
|
| Method | Parameter | Return | Description |
|
|
32
27
|
| -------- | ---- | ---- | ---- |
|
|
33
28
|
| getSelectedItems | None | UserPickerResult<T> | Get the currently selected items |
|
|
34
29
|
| updateTreeData | nodeKey: string, partialNode: Partial<UserPickerNode<T>> | void | Update tree mode node data |
|
|
35
30
|
|
|
36
|
-
|
|
37
31
|
## Props detailed introduction
|
|
38
32
|
|
|
39
|
-
|
|
40
33
|
### displayMode
|
|
41
34
|
|
|
42
|
-
|
|
43
35
|
-`'list' | 'tree'`
|
|
44
36
|
- `description`: The display mode of the component. `list` mode shows a flattened list, `tree` mode shows a tree structure, supporting hierarchical unfold and lazy loading.
|
|
45
37
|
|
|
46
|
-
|
|
47
38
|
### dataSource
|
|
48
39
|
|
|
49
|
-
|
|
50
40
|
- `Type`: `UserPickerDataSource<T>`
|
|
51
41
|
- `description`: The data source of the component, which accepts different data structures based on displayMode. Default: `[]`.
|
|
52
42
|
|
|
53
|
-
|
|
54
43
|
```typescript
|
|
55
44
|
Data structure in list mode
|
|
56
45
|
interface UserPickerRow<T = unknown> {
|
|
@@ -60,7 +49,6 @@ interface UserPickerRow<T = unknown> {
|
|
|
60
49
|
extraData?: T; // extension data
|
|
61
50
|
}
|
|
62
51
|
|
|
63
|
-
|
|
64
52
|
Data structure in tree mode
|
|
65
53
|
interface UserPickerNode<T = unknown> {
|
|
66
54
|
key: string; // unique identifier
|
|
@@ -72,14 +60,11 @@ interface UserPickerNode<T = unknown> {
|
|
|
72
60
|
extraData?: T; // extension data
|
|
73
61
|
}
|
|
74
62
|
|
|
75
|
-
|
|
76
63
|
export type UserPickerDataSource<T = unknown> = Array<UserPickerRow<T>> | Array<UserPickerNode<T>>;
|
|
77
64
|
```
|
|
78
65
|
|
|
79
|
-
|
|
80
66
|
#### Example 1: Data source in list mode
|
|
81
67
|
|
|
82
|
-
|
|
83
68
|
```vue
|
|
84
69
|
<template>
|
|
85
70
|
<UserPicker
|
|
@@ -89,13 +74,11 @@ export type UserPickerDataSource<T = unknown> = Array<UserPickerRow<T>> | Array<
|
|
|
89
74
|
/>
|
|
90
75
|
</template>
|
|
91
76
|
|
|
92
|
-
|
|
93
77
|
<script setup lang="ts">
|
|
94
78
|
import { ref } from 'vue';
|
|
95
79
|
import { UserPicker } from 'tuikit-atomicx-vue3';
|
|
96
80
|
import type { UserPickerRow } from 'tuikit-atomicx-vue3/types';
|
|
97
81
|
|
|
98
|
-
|
|
99
82
|
User list data
|
|
100
83
|
const listData = ref<UserPickerRow[]>([
|
|
101
84
|
{
|
|
@@ -105,78 +88,60 @@ const listData = ref<UserPickerRow[]>([
|
|
|
105
88
|
extraData: { department: 'Technology Department', role: 'frontend engineer' }
|
|
106
89
|
},
|
|
107
90
|
{
|
|
108
|
-
key: 'user2',
|
|
91
|
+
key: 'user2',
|
|
109
92
|
label: 'Li Si',
|
|
110
93
|
avatarUrl: 'https://example.com/avatar2.jpg',
|
|
111
94
|
extraData: { department: 'Product Department', role: 'product manager' }
|
|
112
95
|
}
|
|
113
96
|
]);
|
|
114
97
|
|
|
115
|
-
|
|
116
98
|
const handleSelectionChange = (selectedItems: any[]) => {
|
|
117
99
|
console.log('Selected user:', selectedItems);
|
|
118
100
|
};
|
|
119
101
|
</script>
|
|
120
102
|
```
|
|
121
103
|
|
|
122
|
-
|
|
123
104
|
### defaultSelectedItems
|
|
124
105
|
|
|
125
|
-
|
|
126
106
|
- `type`: `Array<{ key: string; [key: string]: any }>`
|
|
127
107
|
- `description`: Project list chosen by default, identified by the key field. Default is `[]`.
|
|
128
108
|
|
|
129
|
-
|
|
130
109
|
### lockedItems
|
|
131
110
|
|
|
132
|
-
|
|
133
111
|
- `type`: `Array<{ key: string; [key: string]: any }>`
|
|
134
112
|
- `description`: Locked project list, these projects will be forcibly selected and users are unable to cancel. Default is `[]`.
|
|
135
113
|
|
|
136
|
-
|
|
137
114
|
### maxCount
|
|
138
115
|
|
|
139
|
-
|
|
140
116
|
- `type`: `number`
|
|
141
117
|
- `description`: Maximum number limit allowed. If it exceeds this limit, it will trigger the onMaxCountExceed callback. Default is `Number.POSITIVE_INFINITY`.
|
|
142
118
|
|
|
143
|
-
|
|
144
119
|
### minCount
|
|
145
120
|
|
|
146
|
-
|
|
147
121
|
- `type`: `number`
|
|
148
122
|
- `description`: Minimum number required for form validation. Default value is `0`.
|
|
149
123
|
|
|
150
|
-
|
|
151
124
|
### enableSearch
|
|
152
125
|
|
|
153
|
-
|
|
154
126
|
- `type`: `boolean`
|
|
155
127
|
- `description`: Whether to enable search functionality. If enabled, the search bar will be displayed. Default is `true`.
|
|
156
128
|
|
|
157
|
-
|
|
158
129
|
### searchPlaceholder
|
|
159
130
|
|
|
160
|
-
|
|
161
131
|
- `type`: `string`
|
|
162
132
|
- `description`: Placeholder text for the search bar. If not set, use default internationalization text. Default is `undefined`.
|
|
163
133
|
|
|
164
|
-
|
|
165
134
|
### renderItem
|
|
166
135
|
|
|
167
|
-
|
|
168
136
|
- `Type`: `(data: UserPickerRow<T> | UserPickerNode<T>) => any`
|
|
169
137
|
- `description`: Custom project render function. Can customize the display content and style of each option. Default is `undefined`.
|
|
170
138
|
|
|
171
|
-
|
|
172
139
|
```typescript
|
|
173
140
|
type RenderItemFunction<T> = (data: UserPickerRow<T> | UserPickerNode<T>) => VNode | string;
|
|
174
141
|
```
|
|
175
142
|
|
|
176
|
-
|
|
177
143
|
Custom render function
|
|
178
144
|
|
|
179
|
-
|
|
180
145
|
```vue
|
|
181
146
|
<template>
|
|
182
147
|
<UserPicker
|
|
@@ -186,13 +151,11 @@ Custom render function
|
|
|
186
151
|
/>
|
|
187
152
|
</template>
|
|
188
153
|
|
|
189
|
-
|
|
190
154
|
<script setup lang="ts">
|
|
191
155
|
import { h } from 'vue';
|
|
192
156
|
import { UserPicker } from 'tuikit-atomicx-vue3';
|
|
193
157
|
import type { UserPickerRow } from 'tuikit-atomicx-vue3/types';
|
|
194
158
|
|
|
195
|
-
|
|
196
159
|
const userData = ref<UserPickerRow[]>([
|
|
197
160
|
{
|
|
198
161
|
key: 'user1',
|
|
@@ -201,14 +164,13 @@ const userData = ref<UserPickerRow[]>([
|
|
|
201
164
|
}
|
|
202
165
|
]);
|
|
203
166
|
|
|
204
|
-
|
|
205
167
|
custom render function, display user status and department information
|
|
206
168
|
const customRenderItem = (data: UserPickerRow) => {
|
|
207
169
|
return h('div', { class: 'custom-user-item' }, [
|
|
208
170
|
h('div', { class: 'user-name' }, data.label),
|
|
209
171
|
h('div', { class: 'user-info' }, [
|
|
210
|
-
h('span', {
|
|
211
|
-
class: `status ${data.extraData?.status}`
|
|
172
|
+
h('span', {
|
|
173
|
+
class: `status ${data.extraData?.status}`
|
|
212
174
|
}, data.extraData?.status === 'online' ? 'online' : 'offline'),
|
|
213
175
|
h('span', { class: 'department' }, data.extraData?.department)
|
|
214
176
|
])
|
|
@@ -217,14 +179,11 @@ const customRenderItem = (data: UserPickerRow) => {
|
|
|
217
179
|
</script>
|
|
218
180
|
```
|
|
219
181
|
|
|
220
|
-
|
|
221
182
|
### onSelectedChange
|
|
222
183
|
|
|
223
|
-
|
|
224
184
|
- `Type`: `(selectedItems: UserPickerResult<T>) => void`
|
|
225
185
|
-description: Select the callback function when the state changes. It will input all currently selected items. The default is undefined. Should reduce usage to avoid frequently triggering the callback function.
|
|
226
186
|
|
|
227
|
-
|
|
228
187
|
```typescript
|
|
229
188
|
interface UserPickerResultItem<T = unknown> {
|
|
230
189
|
key: string;
|
|
@@ -235,49 +194,36 @@ interface UserPickerResultItem<T = unknown> {
|
|
|
235
194
|
path?: string[]; // Only meaningful in tree mode, records the node path
|
|
236
195
|
}
|
|
237
196
|
|
|
238
|
-
|
|
239
197
|
type UserPickerResult<T = unknown> = Array<UserPickerResultItem<T>>;
|
|
240
198
|
```
|
|
241
199
|
|
|
242
|
-
|
|
243
200
|
### onMaxCountExceed
|
|
244
201
|
|
|
245
|
-
|
|
246
202
|
- `Type`: `(selectedItems: UserPickerResult<T>) => void`
|
|
247
203
|
- `description`: Callback function triggered when the selected quantity exceeds the maxCount limit. Default is `undefined`.
|
|
248
204
|
|
|
249
|
-
|
|
250
205
|
### onSearch
|
|
251
206
|
|
|
252
|
-
|
|
253
207
|
- `Type`: `(value: string) => void`
|
|
254
208
|
- `description`: Callback function triggered when the search input changes. It can be used to implement server-side search. Default is `undefined`.
|
|
255
209
|
|
|
256
|
-
|
|
257
210
|
### onReachEnd
|
|
258
211
|
|
|
259
|
-
|
|
260
212
|
- `Type`: `() => void`
|
|
261
213
|
- `description`: Callback function triggered when scrolling to the bottom in list mode. It is often used to implement load by page. Default is `undefined`.
|
|
262
214
|
|
|
263
|
-
|
|
264
215
|
### onExpand
|
|
265
216
|
|
|
266
|
-
|
|
267
217
|
- `Type`: `(node: UserPickerNode<T>) => void`
|
|
268
218
|
- `description`: Callback function triggered when a node unfolds in tree mode. It is used to implement lazy loading of sub-nodes. Default is `undefined`.
|
|
269
219
|
|
|
270
|
-
|
|
271
220
|
## Ref Expose method detailed introduction
|
|
272
221
|
|
|
273
|
-
|
|
274
222
|
### getSelectedItems
|
|
275
223
|
|
|
276
|
-
|
|
277
224
|
- `Type`: `() => UserPickerResult<T>`
|
|
278
225
|
- `description`: As a best practice to confirm after completing the selection.
|
|
279
226
|
|
|
280
|
-
|
|
281
227
|
```typescript
|
|
282
228
|
interface UserPickerResultItem<T = unknown> {
|
|
283
229
|
key: string;
|
|
@@ -288,14 +234,11 @@ interface UserPickerResultItem<T = unknown> {
|
|
|
288
234
|
path?: string[]; // Only meaningful in tree mode, records the node path
|
|
289
235
|
}
|
|
290
236
|
|
|
291
|
-
|
|
292
237
|
type UserPickerResult<T = unknown> = Array<UserPickerResultItem<T>>;
|
|
293
238
|
```
|
|
294
239
|
|
|
295
|
-
|
|
296
240
|
Confirm and retrieve the selected item after completing the selection
|
|
297
241
|
|
|
298
|
-
|
|
299
242
|
```vue
|
|
300
243
|
<template>
|
|
301
244
|
<UserPicker
|
|
@@ -305,11 +248,9 @@ Confirm and retrieve the selected item after completing the selection
|
|
|
305
248
|
/>
|
|
306
249
|
</template>
|
|
307
250
|
|
|
308
|
-
|
|
309
251
|
<script setup lang="ts">
|
|
310
252
|
const userPickerRef = useRef();
|
|
311
253
|
|
|
312
|
-
|
|
313
254
|
function onConfirm() {
|
|
314
255
|
userPickerRef.value.getSelectedItems();
|
|
315
256
|
}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
TUIKit is a Vue3 UI component library built on top of Tencent Cloud Chat SDK. It provides common UI components for instant messaging features including conversations, chat, groups, and more. This guide explains how to quickly integrate TUIKit and implement core functionality.
|
|
4
4
|
|
|
5
5
|
> **Note:**
|
|
6
|
-
>
|
|
6
|
+
>
|
|
7
7
|
> Hello! We are developing an instant messaging product called UIKit, based on Tencent Cloud Chat SDK. It is a Vue 3 UI component library that helps you quickly integrate and implement core instant messaging features.
|
|
8
|
-
>
|
|
8
|
+
>
|
|
9
9
|
|
|
10
10
|
## Key Concepts
|
|
11
11
|
|
|
@@ -31,9 +31,9 @@ The `chat-uikit-vue3` library consists of core UI components including Conversat
|
|
|
31
31
|
Create a new Vue 3 project named **chat-example** using Vite.
|
|
32
32
|
|
|
33
33
|
> **Note:**
|
|
34
|
-
>
|
|
34
|
+
>
|
|
35
35
|
> Higher versions of Vite require the latest Node.js version.
|
|
36
|
-
>
|
|
36
|
+
>
|
|
37
37
|
|
|
38
38
|
**[shell]**
|
|
39
39
|
```bash
|
|
@@ -69,17 +69,17 @@ For example, add the following code to `src/App.vue`:
|
|
|
69
69
|
<div class="chat-layout">
|
|
70
70
|
<!-- Left Navigation -->
|
|
71
71
|
<SideTab :active-tab="activeTab" @tab-change="handleTabChange" />
|
|
72
|
-
|
|
72
|
+
|
|
73
73
|
<!-- Middle List Panel -->
|
|
74
74
|
<div class="conversation-list-panel">
|
|
75
75
|
<ConversationList v-show="activeTab === 'conversations'" />
|
|
76
76
|
<ContactList v-show="activeTab === 'contacts'" />
|
|
77
77
|
</div>
|
|
78
|
-
|
|
78
|
+
|
|
79
79
|
<!-- Right Chat Panel -->
|
|
80
|
-
<Chat
|
|
81
|
-
v-show="activeTab === 'conversations'"
|
|
82
|
-
class="chat-content-panel"
|
|
80
|
+
<Chat
|
|
81
|
+
v-show="activeTab === 'conversations'"
|
|
82
|
+
class="chat-content-panel"
|
|
83
83
|
:PlaceholderEmpty="EmptyChatTpl"
|
|
84
84
|
>
|
|
85
85
|
<ChatHeader>
|
|
@@ -130,9 +130,9 @@ For example, add the following code to `src/App.vue`:
|
|
|
130
130
|
|
|
131
131
|
<!-- Contact Details -->
|
|
132
132
|
<ContactInfo
|
|
133
|
-
v-show="activeTab === 'contacts'"
|
|
134
|
-
class="contact-detail-panel"
|
|
135
|
-
@send-message="handleSendMessage"
|
|
133
|
+
v-show="activeTab === 'contacts'"
|
|
134
|
+
class="contact-detail-panel"
|
|
135
|
+
@send-message="handleSendMessage"
|
|
136
136
|
/>
|
|
137
137
|
</div>
|
|
138
138
|
</UIKitProvider>
|
|
@@ -222,7 +222,7 @@ Create a new file `SideTab.vue` in the `src/component` folder and add the follow
|
|
|
222
222
|
</div>
|
|
223
223
|
<!-- Tab Switcher -->
|
|
224
224
|
<div class="tabs">
|
|
225
|
-
<div
|
|
225
|
+
<div
|
|
226
226
|
class="tab-item"
|
|
227
227
|
:class="{ active: props.activeTab === 'conversations' }"
|
|
228
228
|
@click="handleTabChange('conversations')"
|
|
@@ -230,7 +230,7 @@ Create a new file `SideTab.vue` in the `src/component` folder and add the follow
|
|
|
230
230
|
>
|
|
231
231
|
<IconChatNew size="24" />
|
|
232
232
|
</div>
|
|
233
|
-
<div
|
|
233
|
+
<div
|
|
234
234
|
class="tab-item"
|
|
235
235
|
:class="{ active: props.activeTab === 'contacts' }"
|
|
236
236
|
@click="handleTabChange('contacts')"
|
|
@@ -242,7 +242,6 @@ Create a new file `SideTab.vue` in the `src/component` folder and add the follow
|
|
|
242
242
|
</div>
|
|
243
243
|
</template>
|
|
244
244
|
|
|
245
|
-
|
|
246
245
|
<script lang="ts" setup>
|
|
247
246
|
import { computed } from 'vue';
|
|
248
247
|
import { useLoginState, useUIKit, Avatar } from '@tencentcloud/chat-uikit-vue3';
|
|
@@ -304,7 +303,7 @@ npm run dev
|
|
|
304
303
|
```
|
|
305
304
|
|
|
306
305
|
> **Note:**
|
|
307
|
-
>
|
|
306
|
+
>
|
|
308
307
|
> 1. Please ensure that SDKAppID, userID, and userSig in [Step 3] have been successfully replaced. Failure to replace them will cause the project to behave abnormally.
|
|
309
308
|
> 2. userID and userSig have a one-to-one correspondence.
|
|
310
309
|
> 3. If the project fails to start, please check whether the development environment requirements are met.
|
|
@@ -314,9 +313,9 @@ npm run dev
|
|
|
314
313
|
### Audio/Video Calling
|
|
315
314
|
|
|
316
315
|
> **Note:**
|
|
317
|
-
>
|
|
316
|
+
>
|
|
318
317
|
> TUICallKit is an audio/video calling UI component launched by Tencent Cloud. By integrating this component, you only need to write a few lines of code to experience audio/video calling functionality in your chat application.
|
|
319
|
-
>
|
|
318
|
+
>
|
|
320
319
|
|
|
321
320
|
1. Install the `@tencentcloud/call-uikit-vue` dependency.
|
|
322
321
|
|
|
@@ -337,7 +336,7 @@ npm run dev
|
|
|
337
336
|
...
|
|
338
337
|
</UIKitProvider>
|
|
339
338
|
<template>
|
|
340
|
-
|
|
339
|
+
|
|
341
340
|
<script setup lang="ts">
|
|
342
341
|
// Import audio/video call core component
|
|
343
342
|
import { TUICallKit } from '@tencentcloud/call-uikit-vue';
|
|
@@ -369,13 +368,13 @@ npm run dev
|
|
|
369
368
|
### Cloud Search
|
|
370
369
|
|
|
371
370
|
> **Note:**
|
|
372
|
-
>
|
|
371
|
+
>
|
|
373
372
|
> Search is an essential feature in customer service, social, online education, online medical, OA and other scenarios. It helps users quickly find groups, users, and messages, improving product user experience and user stickiness.
|
|
374
|
-
>
|
|
373
|
+
>
|
|
375
374
|
> Due to the special nature of local storage on the Web platform, Vue **cannot implement local search**. To better meet the demand for search capabilities, a **cloud search capability** has been launched. **Cloud search functionality supports global search and in-conversation search, and supports searching for groups, users, and messages.**
|
|
376
|
-
>
|
|
375
|
+
>
|
|
377
376
|
> This feature is a value-added service that requires you to purchase the cloud search plugin.
|
|
378
|
-
>
|
|
377
|
+
>
|
|
379
378
|
|
|
380
379
|
Cloud search is integrated by default in "Step 2". If you need to disable the cloud search functionality, please refer to the following code:
|
|
381
380
|
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
`LiveAudienceStore` is a module in `AtomicXCore` designed for managing audience information in live streaming rooms. With `LiveAudienceStore`, you can implement a comprehensive audience list and management system for your live streaming application.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Features
|
|
7
4
|
- **Real-Time Audience List**: Retrieve and display all audience information currently present in the live room.
|
|
8
5
|
|
|
@@ -14,58 +11,20 @@
|
|
|
14
11
|
|
|
15
12
|
- **Room Management**: The host or administrator can remove (kick out) any regular viewer from the live room.
|
|
16
13
|
|
|
17
|
-
|
|
18
14
|
## Core Concepts
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
<td rowspan="1" colSpan="1" >**Core Responsibilities & Description**</td>
|
|
26
|
-
</tr>
|
|
27
|
-
|
|
28
|
-
<tr>
|
|
29
|
-
<td rowspan="1" colSpan="1" >`LiveUserInfo`</td>
|
|
30
|
-
|
|
31
|
-
<td rowspan="1" colSpan="1" >data class</td>
|
|
32
|
-
|
|
33
|
-
<td rowspan="1" colSpan="1" >Represents the basic information model of an audience member (user). It contains the user's unique identifier (`userID`), nickname (`userName`), and avatar URL (`avatarURL`).</td>
|
|
34
|
-
</tr>
|
|
35
|
-
|
|
36
|
-
<tr>
|
|
37
|
-
<td rowspan="1" colSpan="1" >`LiveAudienceState`</td>
|
|
38
|
-
|
|
39
|
-
<td rowspan="1" colSpan="1" >data class</td>
|
|
40
|
-
|
|
41
|
-
<td rowspan="1" colSpan="1" >Represents the current state of the audience module. Its core property `audienceList` is a StateFlow that stores the real-time state of the audience list; `audienceCount` represents the real-time state of the current total number of viewers.</td>
|
|
42
|
-
</tr>
|
|
43
|
-
|
|
44
|
-
<tr>
|
|
45
|
-
<td rowspan="1" colSpan="1" >`LiveAudienceListener`</td>
|
|
46
|
-
|
|
47
|
-
<td rowspan="1" colSpan="1" >abstract class</td>
|
|
48
|
-
|
|
49
|
-
<td rowspan="1" colSpan="1" >Represents real-time audience activity events. It includes `onAudienceJoined` (audience joins) and `onAudienceLeft` (audience leaves), used for incremental updates to the audience list.</td>
|
|
50
|
-
</tr>
|
|
51
|
-
|
|
52
|
-
<tr>
|
|
53
|
-
<td rowspan="1" colSpan="1" >`LiveAudienceStore`</td>
|
|
54
|
-
|
|
55
|
-
<td rowspan="1" colSpan="1" >abstract class</td>
|
|
56
|
-
|
|
57
|
-
<td rowspan="1" colSpan="1" >This is the core management class for interacting with audience list functionality. Through it, you can obtain audience list snapshots, perform management operations, and subscribe to its `LiveAudienceListener` for real-time updates.</td>
|
|
58
|
-
</tr>
|
|
59
|
-
</table>
|
|
60
|
-
|
|
15
|
+
| **Core Concept** | **Type** | **Core Responsibilities & Description** |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| `LiveUserInfo` | data class | Represents the basic information model of an audience member (user). It contains the user's unique identifier (`userID`), nickname (`userName`), and avatar URL (`avatarURL`). |
|
|
18
|
+
| `LiveAudienceState` | data class | Represents the current state of the audience module. Its core property `audienceList` is a StateFlow that stores the real-time state of the audience list; `audienceCount` represents the real-time state of the current total number of viewers. |
|
|
19
|
+
| `LiveAudienceListener` | abstract class | Represents real-time audience activity events. It includes `onAudienceJoined` (audience joins) and `onAudienceLeft` (audience leaves), used for incremental updates to the audience list. |
|
|
20
|
+
| `LiveAudienceStore` | abstract class | This is the core management class for interacting with audience list functionality. Through it, you can obtain audience list snapshots, perform management operations, and subscribe to its `LiveAudienceListener` for real-time updates. |
|
|
61
21
|
|
|
62
22
|
## Implementation Guide
|
|
63
23
|
|
|
64
24
|
### Step 1: Component Integration
|
|
65
|
-
- **Video Live Streaming**: Please refer to
|
|
66
|
-
|
|
67
|
-
- **Voice Chat Room**: Please refer to [Quick Start](https://write.woa.com/document/194571595678187521) to integrate AtomicXCore.
|
|
25
|
+
- **Video Live Streaming**: Please refer to Quick Start to integrate AtomicXCore
|
|
68
26
|
|
|
27
|
+
- **Voice Chat Room**: Please refer to Quick Start to integrate AtomicXCore.
|
|
69
28
|
|
|
70
29
|
### Step 2: Initialize and Retrieve the Audience List
|
|
71
30
|
|
|
@@ -86,11 +45,11 @@ class AudienceManager(
|
|
|
86
45
|
// Expose the [full] audience list state flow for UI layer subscription
|
|
87
46
|
private val _audienceList = MutableStateFlow<List<LiveUserInfo>>(emptyList())
|
|
88
47
|
val audienceList: StateFlow<List<LiveUserInfo>> = _audienceList.asStateFlow()
|
|
89
|
-
|
|
48
|
+
|
|
90
49
|
// Expose the audience count state flow
|
|
91
50
|
private val _audienceCount = MutableStateFlow(0)
|
|
92
51
|
val audienceCount: StateFlow<Int> = _audienceCount.asStateFlow()
|
|
93
|
-
|
|
52
|
+
|
|
94
53
|
init {
|
|
95
54
|
// 1. Subscribe to state and events, see next section for implementation
|
|
96
55
|
subscribeToAudienceState()
|
|
@@ -113,7 +72,7 @@ class AudienceManager(
|
|
|
113
72
|
}
|
|
114
73
|
})
|
|
115
74
|
}
|
|
116
|
-
|
|
75
|
+
|
|
117
76
|
// ... subsequent code
|
|
118
77
|
}
|
|
119
78
|
```
|
|
@@ -132,7 +91,7 @@ class AudienceManager {
|
|
|
132
91
|
}
|
|
133
92
|
}
|
|
134
93
|
|
|
135
|
-
scope.launch {
|
|
94
|
+
scope.launch {
|
|
136
95
|
// audienceCount is the real-time total
|
|
137
96
|
audienceStore.liveAudienceState.audienceCount.collect { count ->
|
|
138
97
|
_audienceCount.value = count
|
|
@@ -200,7 +159,7 @@ class AudienceManager {
|
|
|
200
159
|
override fun onSuccess() {
|
|
201
160
|
println("Successfully promoted user $userId to administrator")
|
|
202
161
|
}
|
|
203
|
-
|
|
162
|
+
|
|
204
163
|
override fun onFailure(code: Int, desc: String) {
|
|
205
164
|
println("Failed to set administrator: $desc")
|
|
206
165
|
}
|
|
@@ -276,40 +235,11 @@ class LiveRoomManager(
|
|
|
276
235
|
## API Documentation
|
|
277
236
|
|
|
278
237
|
For detailed information on all public interfaces, properties, and methods of [LiveAudienceStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-audience-store/index.html) and its related classes, refer to the official API documentation included with the [AtomicX Core](https://tencent-rtc.github.io/TUIKit_Android/index.html) framework. The relevant Stores used in this document are as follows:
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
286
|
-
</tr>
|
|
287
|
-
|
|
288
|
-
<tr>
|
|
289
|
-
<td rowspan="1" colSpan="1" >LiveCoreView</td>
|
|
290
|
-
|
|
291
|
-
<td rowspan="1" colSpan="1" >Core view component for live video stream display and interaction: responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host-to-host connection.</td>
|
|
292
|
-
|
|
293
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html)</td>
|
|
294
|
-
</tr>
|
|
295
|
-
|
|
296
|
-
<tr>
|
|
297
|
-
<td rowspan="1" colSpan="1" >LiveAudienceStore</td>
|
|
298
|
-
|
|
299
|
-
<td rowspan="1" colSpan="1" >Audience management: obtain real-time audience list (ID / name / avatar), count audience numbers, and listen for audience join/leave events.</td>
|
|
300
|
-
|
|
301
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html)</td>
|
|
302
|
-
</tr>
|
|
303
|
-
|
|
304
|
-
<tr>
|
|
305
|
-
<td rowspan="1" colSpan="1" >BarrageStore</td>
|
|
306
|
-
|
|
307
|
-
<td rowspan="1" colSpan="1" >Barrage feature: send text/custom barrage, maintain barrage list, and listen to barrage status in real time.</td>
|
|
308
|
-
|
|
309
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html)</td>
|
|
310
|
-
</tr>
|
|
311
|
-
</table>
|
|
312
|
-
|
|
238
|
+
| **Store/Component** | **Feature Description** | **API Documentation** |
|
|
239
|
+
| --- | --- | --- |
|
|
240
|
+
| LiveCoreView | Core view component for live video stream display and interaction: responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host-to-host connection. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
|
|
241
|
+
| LiveAudienceStore | Audience management: obtain real-time audience list (ID / name / avatar), count audience numbers, and listen for audience join/leave events. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
|
|
242
|
+
| BarrageStore | Barrage feature: send text/custom barrage, maintain barrage list, and listen to barrage status in real time. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html) |
|
|
313
243
|
|
|
314
244
|
## FAQs
|
|
315
245
|
|
|
@@ -330,5 +260,4 @@ The update of `audienceCount` is not always strictly real-time. The mechanism is
|
|
|
330
260
|
|
|
331
261
|
- **What does this mean for developers?**
|
|
332
262
|
|
|
333
|
-
|
|
334
263
|
`audienceCount` is a near real-time, high-precision estimate, but in extreme high-concurrency scenarios, there may be brief delays or data loss. We recommend using it for UI display only, and not as the sole basis for billing, statistics, or other scenarios requiring absolute accuracy.
|