@tencent-rtc/mcp 1.4.6 → 1.6.0-beta.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.
Files changed (552) hide show
  1. package/cursor-setting.png +0 -0
  2. package/knowledge/bm25-cache.js +74 -0
  3. package/knowledge/bm25-cache.js.map +1 -0
  4. package/knowledge/bm25.js +148 -0
  5. package/knowledge/bm25.js.map +1 -0
  6. package/knowledge/build-index.js +70 -0
  7. package/knowledge/build-index.js.map +1 -0
  8. package/knowledge/chunker.js +168 -0
  9. package/knowledge/chunker.js.map +1 -0
  10. package/knowledge/content-loader.js +40 -0
  11. package/knowledge/content-loader.js.map +1 -0
  12. package/knowledge/doc-url-resolver.js +143 -0
  13. package/knowledge/doc-url-resolver.js.map +1 -0
  14. package/knowledge/extractors.js +26 -0
  15. package/knowledge/extractors.js.map +1 -0
  16. package/knowledge/path-meta.js +185 -0
  17. package/knowledge/path-meta.js.map +1 -0
  18. package/knowledge/search/exact-lookup.js +498 -0
  19. package/knowledge/search/exact-lookup.js.map +1 -0
  20. package/knowledge/search/filter-pool.js +105 -0
  21. package/knowledge/search/filter-pool.js.map +1 -0
  22. package/knowledge/search/product-scope-intent.js +41 -0
  23. package/knowledge/search/product-scope-intent.js.map +1 -0
  24. package/knowledge/search/requires-framework.js +82 -0
  25. package/knowledge/search/requires-framework.js.map +1 -0
  26. package/knowledge/search/search-knowledge.js +230 -0
  27. package/knowledge/search/search-knowledge.js.map +1 -0
  28. package/mcp-server-prompt.png +0 -0
  29. package/package.json +1 -1
  30. package/resource/_schema/feature-aliases.yaml +10 -0
  31. package/resource/_schema/goal-tags.yaml +72 -0
  32. package/resource/_schema/products.yaml +19 -0
  33. package/resource/_schema/trtc-intents.yaml +27 -0
  34. package/resource/_schema/types.yaml +43 -0
  35. package/resource/index/component-slugs.json +1 -0
  36. package/resource/index/doc-source-urls.json +1 -0
  37. package/resource/index/manifest.json +1 -0
  38. package/resource/{doc → integration}/callkit/preset/android/integration.md +34 -28
  39. package/resource/integration/callkit/preset/flutter/integration.md +346 -0
  40. package/resource/integration/callkit/preset/ios/integration.md +408 -0
  41. package/resource/integration/callkit/preset/react/integration.md +362 -0
  42. package/resource/integration/callkit/preset/vue/integration.md +356 -0
  43. package/resource/integration/chat/preset/android/integration.md +500 -0
  44. package/resource/integration/chat/preset/flutter/integration.md +370 -0
  45. package/resource/integration/chat/preset/ios/integration.md +566 -0
  46. package/resource/integration/chat/preset/react/integration.md +490 -0
  47. package/resource/integration/chat/preset/vue/integration.md +504 -0
  48. package/resource/{doc → integration}/livekit/preset/live/vue/live-list-integration.md +26 -22
  49. package/resource/{doc → integration}/livekit/preset/live/vue/live-player-desk-integration.md +22 -18
  50. package/resource/integration/livekit/preset/live/vue/live-player-h5-integration.md +309 -0
  51. package/resource/{doc → integration}/livekit/preset/live/vue/live-pusher-integration.md +47 -39
  52. package/resource/integration/roomkit/preset/vue/integration.md +562 -0
  53. package/resource/knowledge/callkit/core-sdk/android/answer-call.md +828 -0
  54. package/resource/knowledge/callkit/core-sdk/android/make-call.md +897 -0
  55. package/resource/knowledge/callkit/core-sdk/android/offline-push.md +363 -0
  56. package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +1111 -0
  57. package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +1132 -0
  58. package/resource/{doc → knowledge}/callkit/core-sdk/flutter/offline-push.md +174 -151
  59. package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +1084 -0
  60. package/resource/knowledge/callkit/core-sdk/ios/make-call.md +1252 -0
  61. package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +534 -0
  62. package/resource/knowledge/callkit/core-sdk/uni-app/answer-call.md +953 -0
  63. package/resource/knowledge/callkit/core-sdk/uni-app/make-call.md +1061 -0
  64. package/resource/knowledge/callkit/faq/android.md +92 -0
  65. package/resource/{doc/callkit/faq/android-faq.md → knowledge/callkit/faq/common.md} +11 -12
  66. package/resource/knowledge/callkit/faq/error-code.md +67 -0
  67. package/resource/knowledge/callkit/faq/flutter.md +52 -0
  68. package/resource/knowledge/callkit/faq/ios.md +104 -0
  69. package/resource/knowledge/callkit/faq/web.md +74 -0
  70. package/resource/knowledge/callkit/preset/android/api.md +412 -0
  71. package/resource/knowledge/callkit/preset/flutter/api.md +22 -0
  72. package/resource/knowledge/callkit/preset/ios/api.md +234 -0
  73. package/resource/knowledge/callkit/preset/web/api.md +83 -0
  74. package/resource/knowledge/chat/preset/android/features/chat-setting.md +74 -0
  75. package/resource/knowledge/chat/preset/android/features/contact-list.md +43 -0
  76. package/resource/knowledge/chat/preset/android/features/conversation-list.md +117 -0
  77. package/resource/knowledge/chat/preset/android/features/language.md +136 -0
  78. package/resource/knowledge/chat/preset/android/features/message-input.md +57 -0
  79. package/resource/knowledge/chat/preset/android/features/message-list.md +142 -0
  80. package/resource/knowledge/chat/preset/android/features/search.md +64 -0
  81. package/resource/knowledge/chat/preset/android/features/theme.md +222 -0
  82. package/resource/knowledge/chat/preset/android-view/integration.md +300 -0
  83. package/resource/knowledge/chat/preset/flutter/features/chat-setting.md +64 -0
  84. package/resource/knowledge/chat/preset/flutter/features/contact-list.md +40 -0
  85. package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +129 -0
  86. package/resource/knowledge/chat/preset/flutter/features/language.md +104 -0
  87. package/resource/knowledge/chat/preset/flutter/features/message-input.md +54 -0
  88. package/resource/knowledge/chat/preset/flutter/features/message-list.md +158 -0
  89. package/resource/knowledge/chat/preset/flutter/features/search.md +59 -0
  90. package/resource/knowledge/chat/preset/flutter/features/theme.md +261 -0
  91. package/resource/knowledge/chat/preset/ios/features/chat-setting.md +94 -0
  92. package/resource/knowledge/chat/preset/ios/features/contact-list.md +119 -0
  93. package/resource/knowledge/chat/preset/ios/features/conversation-list.md +134 -0
  94. package/resource/knowledge/chat/preset/ios/features/language.md +125 -0
  95. package/resource/knowledge/chat/preset/ios/features/message-input.md +69 -0
  96. package/resource/knowledge/chat/preset/ios/features/message-list.md +162 -0
  97. package/resource/knowledge/chat/preset/ios/features/search.md +93 -0
  98. package/resource/knowledge/chat/preset/ios/features/theme.md +270 -0
  99. package/resource/{doc/chatkit/ios → knowledge/chat/preset/ios-uikit}/integration.md +160 -158
  100. package/resource/knowledge/chat/preset/react/features/chat-setting.md +101 -0
  101. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/contact-list.md +43 -41
  102. package/resource/knowledge/chat/preset/react/features/conversation-actions.md +215 -0
  103. package/resource/knowledge/chat/preset/react/features/conversation-list.md +339 -0
  104. package/resource/knowledge/chat/preset/react/features/conversation-preview.md +101 -0
  105. package/resource/knowledge/chat/preset/react/features/conversation-search.md +61 -0
  106. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-input.md +117 -156
  107. package/resource/knowledge/chat/preset/react/features/message-list.md +297 -0
  108. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/search.md +65 -59
  109. package/resource/knowledge/chat/preset/react/features/theme.md +93 -0
  110. package/resource/knowledge/chat/preset/vue/features/chat-header.md +331 -0
  111. package/resource/knowledge/chat/preset/vue/features/chat-setting.md +79 -0
  112. package/resource/knowledge/chat/preset/vue/features/contact-list.md +277 -0
  113. package/resource/knowledge/chat/preset/vue/features/conversation-actions.md +234 -0
  114. package/resource/knowledge/chat/preset/vue/features/conversation-list.md +331 -0
  115. package/resource/knowledge/chat/preset/vue/features/conversation-preview.md +216 -0
  116. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-search.md +13 -13
  117. package/resource/knowledge/chat/preset/vue/features/message-input.md +551 -0
  118. package/resource/knowledge/chat/preset/vue/features/message-list.md +350 -0
  119. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/search.md +79 -73
  120. package/resource/knowledge/chat/preset/vue/features/theme.md +136 -0
  121. package/resource/knowledge/chat/urls/error-code.md +17 -0
  122. package/resource/knowledge/chat/urls/product.md +43 -0
  123. package/resource/knowledge/chat/urls/restapi.md +204 -0
  124. package/resource/knowledge/chat/urls/sdk/android.md +80 -0
  125. package/resource/knowledge/chat/urls/sdk/flutter.md +71 -0
  126. package/resource/knowledge/chat/urls/sdk/ios.md +80 -0
  127. package/resource/knowledge/chat/urls/sdk/web.md +80 -0
  128. package/resource/knowledge/chat/urls/webhook.md +68 -0
  129. package/resource/knowledge/livekit/core-sdk/api-reference/android/AudioEffectStore.md +286 -0
  130. package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +174 -0
  131. package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +329 -0
  132. package/resource/knowledge/livekit/core-sdk/api-reference/android/CameraView.md +55 -0
  133. package/resource/knowledge/livekit/core-sdk/api-reference/android/CoGuestStore.md +434 -0
  134. package/resource/knowledge/livekit/core-sdk/api-reference/android/CoHostStore.md +362 -0
  135. package/resource/knowledge/livekit/core-sdk/api-reference/android/DeviceStore.md +466 -0
  136. package/resource/knowledge/livekit/core-sdk/api-reference/android/GiftStore.md +173 -0
  137. package/resource/knowledge/livekit/core-sdk/api-reference/android/LikeStore.md +51 -0
  138. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveAudienceStore.md +291 -0
  139. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveCoreView.md +78 -0
  140. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveSeatStore.md +488 -0
  141. package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +219 -0
  142. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/AudioEffectStore.md +282 -0
  143. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +212 -0
  144. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BaseBeautyStore.md +153 -0
  145. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +312 -0
  146. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoGuestStore.md +404 -0
  147. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoHostStore.md +334 -0
  148. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/DeviceStore.md +426 -0
  149. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +166 -0
  150. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LikeStore.md +52 -0
  151. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +281 -0
  152. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveCoreView.md +150 -0
  153. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +438 -0
  154. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +190 -0
  155. package/resource/knowledge/livekit/core-sdk/api-reference/ios/AudioEffectStore.md +291 -0
  156. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BarrageStore.md +192 -0
  157. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +146 -0
  158. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +309 -0
  159. package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoGuestStore.md +370 -0
  160. package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoHostStore.md +339 -0
  161. package/resource/knowledge/livekit/core-sdk/api-reference/ios/DeviceStore.md +503 -0
  162. package/resource/knowledge/livekit/core-sdk/api-reference/ios/GiftStore.md +188 -0
  163. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LikeStore.md +51 -0
  164. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveAudienceStore.md +289 -0
  165. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveCoreView.md +78 -0
  166. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveSeatStore.md +487 -0
  167. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +183 -0
  168. package/resource/knowledge/livekit/core-sdk/api-reference/web/index.md +736 -0
  169. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audience-list.md +53 -47
  170. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audio-effect.md +28 -24
  171. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-barrage.md +22 -18
  172. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-base-beauty.md +17 -15
  173. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-co-guest-interaction.md +19 -18
  174. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-gift.md +102 -89
  175. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-host-interaction.md +41 -37
  176. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-integration.md +45 -43
  177. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-live-list.md +23 -20
  178. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audience-list.md +41 -41
  179. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audio-effect.md +70 -69
  180. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-barrage.md +68 -71
  181. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-base-beauty.md +43 -47
  182. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-co-guest-interaction.md +59 -56
  183. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-gift.md +103 -105
  184. package/resource/knowledge/livekit/core-sdk/live/flutter/live-host-interaction.md +869 -0
  185. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-integration.md +84 -87
  186. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-live-list.md +43 -40
  187. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audience-list.md +11 -10
  188. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audio-effect.md +28 -24
  189. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-barrage.md +22 -18
  190. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-base-beauty.md +15 -14
  191. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-co-guest-interaction.md +19 -18
  192. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-gift.md +54 -50
  193. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-host-interaction.md +41 -37
  194. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-integration.md +40 -40
  195. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-live-list.md +19 -18
  196. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audience-list.md +53 -47
  197. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audio-effect.md +28 -24
  198. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-barrage.md +22 -18
  199. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +41 -33
  200. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-gift.md +94 -81
  201. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-host-interaction.md +35 -30
  202. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-integration.md +45 -42
  203. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-room-list.md +23 -20
  204. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audience-list.md +260 -0
  205. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audio-effect.md +598 -0
  206. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-barrage.md +490 -0
  207. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +65 -59
  208. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-gift.md +424 -0
  209. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-integration.md +69 -76
  210. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-room-list.md +726 -0
  211. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audience-list.md +11 -10
  212. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audio-effect.md +28 -24
  213. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-barrage.md +22 -18
  214. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +41 -33
  215. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-gift.md +54 -50
  216. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-host-interaction.md +35 -30
  217. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-integration.md +49 -46
  218. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-room-list.md +19 -18
  219. package/resource/knowledge/livekit/faq/error-code.md +193 -0
  220. package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/barrage.md +56 -53
  221. package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/live-audience-list.md +22 -21
  222. package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/live-view.md +34 -32
  223. package/resource/knowledge/push/config/android.md +92 -0
  224. package/resource/knowledge/push/config/harmonyos.md +83 -0
  225. package/resource/knowledge/push/config/ios.md +254 -0
  226. package/resource/knowledge/push/config/react-native.md +254 -0
  227. package/resource/knowledge/push/config/unity.md +209 -0
  228. package/resource/knowledge/push/config/unreal-engine.md +194 -0
  229. package/resource/knowledge/push/integration/android.md +404 -0
  230. package/resource/knowledge/push/integration/flutter.md +465 -0
  231. package/resource/knowledge/push/integration/harmonyos.md +63 -0
  232. package/resource/knowledge/push/integration/ios.md +246 -0
  233. package/resource/knowledge/push/integration/react-native.md +366 -0
  234. package/resource/knowledge/push/integration/uni-app.md +208 -0
  235. package/resource/knowledge/push/integration/unity.md +389 -0
  236. package/resource/knowledge/push/integration/unreal-engine.md +390 -0
  237. package/resource/knowledge/push/overview/prepare.md +60 -0
  238. package/resource/knowledge/roomkit/core-sdk/android/call-user-to-room.md +241 -0
  239. package/resource/knowledge/roomkit/core-sdk/android/room-participant-state.md +588 -0
  240. package/resource/knowledge/roomkit/core-sdk/android/room-state.md +364 -0
  241. package/resource/knowledge/roomkit/core-sdk/android/schedule-room.md +340 -0
  242. package/resource/knowledge/roomkit/core-sdk/flutter/call-user-to-room.md +230 -0
  243. package/resource/knowledge/roomkit/core-sdk/flutter/room-participant-state.md +797 -0
  244. package/resource/knowledge/roomkit/core-sdk/flutter/room-state.md +325 -0
  245. package/resource/knowledge/roomkit/core-sdk/flutter/schedule-room.md +325 -0
  246. package/resource/knowledge/roomkit/core-sdk/ios/call-user-to-room.md +233 -0
  247. package/resource/knowledge/roomkit/core-sdk/ios/room-participant-state.md +569 -0
  248. package/resource/knowledge/roomkit/core-sdk/ios/room-state.md +325 -0
  249. package/resource/knowledge/roomkit/core-sdk/ios/schedule-room.md +322 -0
  250. package/resource/knowledge/roomkit/core-sdk/vue/call-user-to-room.md +221 -0
  251. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/device-detection.md +49 -48
  252. package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +461 -0
  253. package/resource/knowledge/roomkit/core-sdk/vue/free-beauty-panel.md +216 -0
  254. package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +370 -0
  255. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/room-participant-state.md +61 -60
  256. package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +280 -0
  257. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/room-view.md +57 -56
  258. package/resource/knowledge/roomkit/core-sdk/vue/schedule-room.md +319 -0
  259. package/resource/knowledge/roomkit/core-sdk/vue/screen-share.md +267 -0
  260. package/resource/knowledge/roomkit/core-sdk/vue/virtual-background.md +261 -0
  261. package/resource/knowledge/roomkit/preset/android/integration.md +396 -0
  262. package/resource/knowledge/roomkit/preset/flutter/integration.md +404 -0
  263. package/resource/knowledge/roomkit/preset/ios/integration.md +369 -0
  264. package/resource/knowledge/roomkit/preset/react/integration.md +576 -0
  265. package/resource/knowledge/rtcengine/web/how_to_run_web_sdk_demo.md +44 -0
  266. package/resource/{doc → knowledge}/rtcengine/web/plugin/21-advanced-auto-play-policy.md +8 -2
  267. package/resource/{doc → knowledge}/rtcengine/web/plugin/22-advanced-audio-mixer.md +19 -1
  268. package/resource/{doc → knowledge}/rtcengine/web/plugin/23-advanced-support-detection.md +1 -1
  269. package/resource/{doc → knowledge}/rtcengine/web/plugin/24-advanced-network-quality.md +8 -8
  270. package/resource/{doc → knowledge}/rtcengine/web/plugin/25-advanced-device-change.md +1 -1
  271. package/resource/{doc → knowledge}/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +6 -6
  272. package/resource/{doc → knowledge}/rtcengine/web/plugin/27-advanced-small-stream.md +3 -3
  273. package/resource/{doc → knowledge}/rtcengine/web/plugin/29-advanced-water-mark.md +18 -0
  274. package/resource/{doc → knowledge}/rtcengine/web/plugin/31-advanced-plugins-overview.md +1 -1
  275. package/resource/{doc → knowledge}/rtcengine/web/plugin/34-advanced-proxy.md +2 -2
  276. package/resource/{doc → knowledge}/rtcengine/web/plugin/35-advanced-ai-denoiser.md +1 -1
  277. package/resource/knowledge/trtc/android/TRTCCloud.md +1915 -0
  278. package/resource/knowledge/trtc/android/TRTCCloudDef.md +1029 -0
  279. package/resource/knowledge/trtc/android/TRTCCloudListener.md +1095 -0
  280. package/resource/knowledge/trtc/android/TRTCStatistics.md +68 -0
  281. package/resource/knowledge/trtc/android/TXAudioEffectManager.md +502 -0
  282. package/resource/knowledge/trtc/android/TXBeautyManager.md +415 -0
  283. package/resource/knowledge/trtc/android/TXDeviceManager.md +169 -0
  284. package/resource/knowledge/trtc/android/TXLiteAVCode.md +125 -0
  285. package/resource/knowledge/trtc/c++/ITRTCCloud.md +2069 -0
  286. package/resource/knowledge/trtc/c++/ITRTCStatistics.md +73 -0
  287. package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +502 -0
  288. package/resource/knowledge/trtc/c++/ITXDeviceManager.md +391 -0
  289. package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +1191 -0
  290. package/resource/knowledge/trtc/c++/TRTCTypeDef.md +931 -0
  291. package/resource/knowledge/trtc/c++/TXLiteAVCode.md +127 -0
  292. package/resource/knowledge/trtc/ios/TRTCCloud.md +2118 -0
  293. package/resource/knowledge/trtc/ios/TRTCCloudDef.md +975 -0
  294. package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +1131 -0
  295. package/resource/knowledge/trtc/ios/TRTCStatistics.md +68 -0
  296. package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +423 -0
  297. package/resource/knowledge/trtc/ios/TXBeautyManager.md +416 -0
  298. package/resource/knowledge/trtc/ios/TXDeviceManager.md +387 -0
  299. package/resource/knowledge/trtc/ios/TXLiteAVCode.md +127 -0
  300. package/server.js +35 -10
  301. package/server.js.map +1 -1
  302. package/tools/call/get_native_call_uikit_integration.js +2 -3
  303. package/tools/call/get_native_call_uikit_integration.js.map +1 -1
  304. package/tools/call/get_native_callkit_core_integration.js +2 -5
  305. package/tools/call/get_native_callkit_core_integration.js.map +1 -1
  306. package/tools/call/get_web_call_uikit_integration.js +2 -3
  307. package/tools/call/get_web_call_uikit_integration.js.map +1 -1
  308. package/tools/chat/get_native_chat_uikit_integration.js +2 -3
  309. package/tools/chat/get_native_chat_uikit_integration.js.map +1 -1
  310. package/tools/chat/get_web_chat_uikit_integration.js +2 -3
  311. package/tools/chat/get_web_chat_uikit_integration.js.map +1 -1
  312. package/tools/common/present_framework_choice.js +19 -13
  313. package/tools/common/present_framework_choice.js.map +1 -1
  314. package/tools/common/record_answer.js +19 -25
  315. package/tools/common/record_answer.js.map +1 -1
  316. package/tools/common/record_feedback.js +17 -30
  317. package/tools/common/record_feedback.js.map +1 -1
  318. package/tools/common/search_trtc_knowledge.js +45 -0
  319. package/tools/common/search_trtc_knowledge.js.map +1 -0
  320. package/tools/definitions/get_native_call_uikit_integration_def.js +3 -1
  321. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  322. package/tools/definitions/get_native_callkit_core_integration_def.js +5 -3
  323. package/tools/definitions/get_native_callkit_core_integration_def.js.map +1 -1
  324. package/tools/definitions/get_native_chat_uikit_integration_def.js +5 -2
  325. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  326. package/tools/definitions/get_native_livekit_core_integration_def.js +6 -5
  327. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -1
  328. package/tools/definitions/get_web_call_uikit_integration_def.js +4 -2
  329. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  330. package/tools/definitions/get_web_chat_uikit_integration_def.js +2 -0
  331. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  332. package/tools/definitions/get_web_live_uikit_integration_def.js +5 -5
  333. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  334. package/tools/definitions/get_web_room_core_integration_def.js +50 -0
  335. package/tools/definitions/get_web_room_core_integration_def.js.map +1 -0
  336. package/tools/definitions/get_web_room_uikit_integration_def.js +5 -4
  337. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  338. package/tools/definitions/integration-boundary.js +6 -0
  339. package/tools/definitions/integration-boundary.js.map +1 -0
  340. package/tools/definitions/present_framework_choice_def.js +12 -10
  341. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  342. package/tools/definitions/record_answer_def.js +19 -17
  343. package/tools/definitions/record_answer_def.js.map +1 -1
  344. package/tools/definitions/record_feedback_def.js +14 -13
  345. package/tools/definitions/record_feedback_def.js.map +1 -1
  346. package/tools/definitions/search_trtc_knowledge_def.js +40 -0
  347. package/tools/definitions/search_trtc_knowledge_def.js.map +1 -0
  348. package/tools/index.js +5 -36
  349. package/tools/index.js.map +1 -1
  350. package/tools/live/get_native_livekit_core_integration.js +1 -3
  351. package/tools/live/get_native_livekit_core_integration.js.map +1 -1
  352. package/tools/live/get_web_live_uikit_integration.js +2 -4
  353. package/tools/live/get_web_live_uikit_integration.js.map +1 -1
  354. package/tools/room/get_web_room_core_integration.js +48 -0
  355. package/tools/room/get_web_room_core_integration.js.map +1 -0
  356. package/tools/room/get_web_room_uikit_integration.js +2 -3
  357. package/tools/room/get_web_room_uikit_integration.js.map +1 -1
  358. package/utils/generate-structured-result.js +24 -30
  359. package/utils/generate-structured-result.js.map +1 -1
  360. package/utils/get-doc-content.js +14 -8
  361. package/utils/get-doc-content.js.map +1 -1
  362. package/utils/report-cls-client.js +18 -20
  363. package/utils/report-cls-client.js.map +1 -1
  364. package/utils/report-es-client.js +1 -1
  365. package/resource/doc/callkit/core-sdk/.gitkeep +0 -0
  366. package/resource/doc/callkit/core-sdk/android/answer-call.md +0 -852
  367. package/resource/doc/callkit/core-sdk/android/make-call.md +0 -954
  368. package/resource/doc/callkit/core-sdk/android/offline-push.md +0 -361
  369. package/resource/doc/callkit/core-sdk/flutter/answer-call.md +0 -1160
  370. package/resource/doc/callkit/core-sdk/flutter/make-call.md +0 -1205
  371. package/resource/doc/callkit/core-sdk/ios/answer-call.md +0 -1090
  372. package/resource/doc/callkit/core-sdk/ios/make-call.md +0 -1248
  373. package/resource/doc/callkit/core-sdk/ios/offline-push.md +0 -485
  374. package/resource/doc/callkit/core-sdk/uni-app/answer-call.md +0 -950
  375. package/resource/doc/callkit/core-sdk/uni-app/make-call.md +0 -1052
  376. package/resource/doc/callkit/faq/common/error-code.md +0 -47
  377. package/resource/doc/callkit/faq/flutter-faq.md +0 -115
  378. package/resource/doc/callkit/faq/ios-faq.md +0 -115
  379. package/resource/doc/callkit/faq/web-faq.md +0 -36
  380. package/resource/doc/callkit/preset/android/api.md +0 -296
  381. package/resource/doc/callkit/preset/flutter/api.md +0 -410
  382. package/resource/doc/callkit/preset/flutter/integration.md +0 -164
  383. package/resource/doc/callkit/preset/ios/api.md +0 -80
  384. package/resource/doc/callkit/preset/ios/integration.md +0 -187
  385. package/resource/doc/callkit/preset/react/api.md +0 -501
  386. package/resource/doc/callkit/preset/react/integration.md +0 -86
  387. package/resource/doc/callkit/preset/vue/api.md +0 -501
  388. package/resource/doc/callkit/preset/vue/integration.md +0 -83
  389. package/resource/doc/chatkit/android/faq.md +0 -111
  390. package/resource/doc/chatkit/android/features/theme.md +0 -219
  391. package/resource/doc/chatkit/android/integration.md +0 -490
  392. package/resource/doc/chatkit/faq/android_sdk/client-api.md +0 -281
  393. package/resource/doc/chatkit/faq/common/product.md +0 -7
  394. package/resource/doc/chatkit/faq/common/server.md +0 -44
  395. package/resource/doc/chatkit/faq/common/server_error_code.md +0 -74
  396. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +0 -199
  397. package/resource/doc/chatkit/faq/flutter_sdk/faq.md +0 -53
  398. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +0 -235
  399. package/resource/doc/chatkit/faq/web_sdk/error_code.md +0 -47
  400. package/resource/doc/chatkit/faq/web_sdk/faq.md +0 -287
  401. package/resource/doc/chatkit/flutter/faq.md +0 -23
  402. package/resource/doc/chatkit/flutter/features/theme.md +0 -235
  403. package/resource/doc/chatkit/flutter/integration.md +0 -344
  404. package/resource/doc/chatkit/ios/faq.md +0 -111
  405. package/resource/doc/chatkit/ios/features/theme.md +0 -267
  406. package/resource/doc/chatkit/react/components/avatar.md +0 -104
  407. package/resource/doc/chatkit/react/components/chat-header.md +0 -148
  408. package/resource/doc/chatkit/react/components/chat-setting.md +0 -57
  409. package/resource/doc/chatkit/react/components/chat.md +0 -38
  410. package/resource/doc/chatkit/react/components/component-list.md +0 -37
  411. package/resource/doc/chatkit/react/components/conversation-actions.md +0 -174
  412. package/resource/doc/chatkit/react/components/conversation-list.md +0 -333
  413. package/resource/doc/chatkit/react/components/conversation-preview.md +0 -118
  414. package/resource/doc/chatkit/react/components/conversation-search.md +0 -60
  415. package/resource/doc/chatkit/react/components/message-list.md +0 -293
  416. package/resource/doc/chatkit/react/components/tuikit.md +0 -34
  417. package/resource/doc/chatkit/react/faq.md +0 -26
  418. package/resource/doc/chatkit/react/integration.md +0 -416
  419. package/resource/doc/chatkit/vue/components/avatar.md +0 -104
  420. package/resource/doc/chatkit/vue/components/chat-header.md +0 -148
  421. package/resource/doc/chatkit/vue/components/chat-setting.md +0 -62
  422. package/resource/doc/chatkit/vue/components/chat.md +0 -45
  423. package/resource/doc/chatkit/vue/components/component-list.md +0 -87
  424. package/resource/doc/chatkit/vue/components/contact-list.md +0 -271
  425. package/resource/doc/chatkit/vue/components/conversation-actions.md +0 -228
  426. package/resource/doc/chatkit/vue/components/conversation-list.md +0 -320
  427. package/resource/doc/chatkit/vue/components/conversation-preview.md +0 -213
  428. package/resource/doc/chatkit/vue/components/message-input.md +0 -1054
  429. package/resource/doc/chatkit/vue/components/message-list.md +0 -433
  430. package/resource/doc/chatkit/vue/components/tuikit.md +0 -31
  431. package/resource/doc/chatkit/vue/components/userpicker.md +0 -256
  432. package/resource/doc/chatkit/vue/faq.md +0 -36
  433. package/resource/doc/chatkit/vue/integration.md +0 -428
  434. package/resource/doc/livekit/core-sdk/live/flutter/live-host-interaction.md +0 -866
  435. package/resource/doc/livekit/faq/common/error-code.md +0 -88
  436. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +0 -780
  437. package/resource/doc/livekit/preset/live/vue/components/co-guest-panel.md +0 -91
  438. package/resource/doc/livekit/preset/live/vue/components/live-scene-panel.md +0 -112
  439. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +0 -215
  440. package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +0 -300
  441. package/resource/doc/roomkit/faq/common/error-code.md +0 -67
  442. package/resource/doc/roomkit/vue/features/call-user-to-room.md +0 -220
  443. package/resource/doc/roomkit/vue/features/device-state.md +0 -460
  444. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +0 -215
  445. package/resource/doc/roomkit/vue/features/room-chat.md +0 -369
  446. package/resource/doc/roomkit/vue/features/room-state.md +0 -282
  447. package/resource/doc/roomkit/vue/features/schedule-room.md +0 -318
  448. package/resource/doc/roomkit/vue/features/screen-share.md +0 -265
  449. package/resource/doc/roomkit/vue/features/virtual-background.md +0 -271
  450. package/resource/doc/roomkit/vue/integration.md +0 -315
  451. package/resource/doc/rtcengine/faq/common/error_code.md +0 -1
  452. package/resource/doc/rtcengine/faq/web_sdk/.gitkeep +0 -0
  453. package/resource/doc/rtcengine/web/.gitkeep +0 -0
  454. package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +0 -59
  455. package/resource/doc/trtc/C++/ITRTCCloud.md +0 -1970
  456. package/resource/doc/trtc/C++/ITRTCStatistics.md +0 -70
  457. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +0 -469
  458. package/resource/doc/trtc/C++/ITXDeviceManager.md +0 -387
  459. package/resource/doc/trtc/C++/TRTCCloudCallback.md +0 -1082
  460. package/resource/doc/trtc/C++/TRTCTypeDef.md +0 -925
  461. package/resource/doc/trtc/C++/TXLiteAVCode.md +0 -129
  462. package/resource/doc/trtc/android/TRTCCloud.md +0 -1815
  463. package/resource/doc/trtc/android/TRTCCloudDef.md +0 -992
  464. package/resource/doc/trtc/android/TRTCCloudListener.md +0 -1004
  465. package/resource/doc/trtc/android/TRTCStatistics.md +0 -65
  466. package/resource/doc/trtc/android/TXAudioEffectManager.md +0 -469
  467. package/resource/doc/trtc/android/TXBeautyManager.md +0 -402
  468. package/resource/doc/trtc/android/TXDeviceManager.md +0 -173
  469. package/resource/doc/trtc/android/TXLiteAVCode.md +0 -127
  470. package/resource/doc/trtc/iOS/TRTCCloud.md +0 -2028
  471. package/resource/doc/trtc/iOS/TRTCCloudDef.md +0 -958
  472. package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +0 -1046
  473. package/resource/doc/trtc/iOS/TRTCStatistics.md +0 -65
  474. package/resource/doc/trtc/iOS/TXAudioEffectManager.md +0 -397
  475. package/resource/doc/trtc/iOS/TXBeautyManager.md +0 -403
  476. package/resource/doc/trtc/iOS/TXDeviceManager.md +0 -381
  477. package/resource/doc/trtc/iOS/TXLiteAVCode.md +0 -130
  478. package/tools/call/get_callkit_api.js +0 -33
  479. package/tools/call/get_callkit_api.js.map +0 -1
  480. package/tools/chat/get_native_chat_uikit_feature_detail.js +0 -35
  481. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +0 -1
  482. package/tools/chat/get_web_chat_uikit_component_detail.js +0 -35
  483. package/tools/chat/get_web_chat_uikit_component_detail.js.map +0 -1
  484. package/tools/common/get_faq.js +0 -266
  485. package/tools/common/get_faq.js.map +0 -1
  486. package/tools/common/record_skill_session.js +0 -69
  487. package/tools/common/record_skill_session.js.map +0 -1
  488. package/tools/definitions/get_callkit_api_def.js +0 -29
  489. package/tools/definitions/get_callkit_api_def.js.map +0 -1
  490. package/tools/definitions/get_faq_def.js +0 -49
  491. package/tools/definitions/get_faq_def.js.map +0 -1
  492. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +0 -31
  493. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +0 -1
  494. package/tools/definitions/get_native_livekit_core_features_def.js +0 -34
  495. package/tools/definitions/get_native_livekit_core_features_def.js.map +0 -1
  496. package/tools/definitions/get_native_trtc_sdk_docs_def.js +0 -32
  497. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +0 -1
  498. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +0 -31
  499. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +0 -1
  500. package/tools/definitions/get_web_livekit_api_def.js +0 -30
  501. package/tools/definitions/get_web_livekit_api_def.js.map +0 -1
  502. package/tools/definitions/get_web_livekit_component_detail_def.js +0 -32
  503. package/tools/definitions/get_web_livekit_component_detail_def.js.map +0 -1
  504. package/tools/definitions/get_web_roomkit_feature_detail_def.js +0 -31
  505. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +0 -1
  506. package/tools/definitions/get_web_trtc_sdk_api_def.js +0 -27
  507. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +0 -1
  508. package/tools/definitions/get_web_trtc_sdk_integration_def.js +0 -27
  509. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +0 -1
  510. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +0 -27
  511. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +0 -1
  512. package/tools/definitions/record_skill_session_def.js +0 -31
  513. package/tools/definitions/record_skill_session_def.js.map +0 -1
  514. package/tools/live/get_native_livekit_core_features.js +0 -68
  515. package/tools/live/get_native_livekit_core_features.js.map +0 -1
  516. package/tools/live/get_web_livekit_api.js +0 -33
  517. package/tools/live/get_web_livekit_api.js.map +0 -1
  518. package/tools/live/get_web_livekit_component_detail.js +0 -35
  519. package/tools/live/get_web_livekit_component_detail.js.map +0 -1
  520. package/tools/room/get_web_roomkit_feature_detail.js +0 -69
  521. package/tools/room/get_web_roomkit_feature_detail.js.map +0 -1
  522. package/tools/rtcengine/get_web_trtc_sdk_api.js +0 -32
  523. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +0 -1
  524. package/tools/rtcengine/get_web_trtc_sdk_integration.js +0 -32
  525. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +0 -1
  526. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +0 -32
  527. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +0 -1
  528. package/tools/trtc/get_native_trtc_sdk_docs.js +0 -74
  529. package/tools/trtc/get_native_trtc_sdk_docs.js.map +0 -1
  530. package/utils/build-session-directives.js +0 -120
  531. package/utils/build-session-directives.js.map +0 -1
  532. package/utils/handle-framework.js +0 -9
  533. package/utils/handle-framework.js.map +0 -1
  534. package/utils/handle-state-name.js +0 -29
  535. package/utils/handle-state-name.js.map +0 -1
  536. package/utils/report-runtime-error-cls-client.js +0 -91
  537. package/utils/report-runtime-error-cls-client.js.map +0 -1
  538. /package/resource/{doc/livekit/preset/live/vue/faq.md → knowledge/push/config/donut.md} +0 -0
  539. /package/resource/{doc/roomkit/vue/faq.md → knowledge/push/integration/donut.md} +0 -0
  540. /package/resource/{doc → knowledge}/rtcengine/web/api.md +0 -0
  541. /package/resource/{doc/rtcengine/faq/web/web.md → knowledge/rtcengine/web/faq.md} +0 -0
  542. /package/resource/{doc → knowledge}/rtcengine/web/how_to_integrated_web_sdk.md +0 -0
  543. /package/resource/{doc → knowledge}/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +0 -0
  544. /package/resource/{doc → knowledge}/rtcengine/web/plugin/28-advanced-beauty.md +0 -0
  545. /package/resource/{doc → knowledge}/rtcengine/web/plugin/30-advanced-cross-room-link.md +0 -0
  546. /package/resource/{doc → knowledge}/rtcengine/web/plugin/36-advanced-virtual-background.md +0 -0
  547. /package/resource/{doc → knowledge}/rtcengine/web/plugin/37-advanced-voice-changer.md +0 -0
  548. /package/resource/{doc → knowledge}/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -0
  549. /package/resource/{doc → knowledge}/rtcengine/web/plugin/40-advanced-video-mixer.md +0 -0
  550. /package/resource/{doc → knowledge}/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +0 -0
  551. /package/resource/{doc → knowledge}/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +0 -0
  552. /package/resource/{doc → knowledge}/rtcengine/web/plugin/43-advanced-face-detection.md +0 -0
@@ -0,0 +1,64 @@
1
+ ## **Component Overview**
2
+
3
+ Search component provides users with a complete set of features, including a search box, search results display, and navigation within the interface. The component supports user search, group search, and message search, and offers a comprehensive set of interactive webhook interfaces.
4
+
5
+ > **Note:**
6
+ >
7
+
8
+ > Search function is available in the Pro edition or Enterprise edition. You can use this feature after purchasing the Pro edition or Enterprise edition package. For details, see [Pricing Information](https://trtc.io/document/67650).
9
+ >
10
+
11
+ | <strong>Search Entry</strong> | <strong>Search Results</strong> |
12
+ | --- | --- |
13
+ | | |
14
+
15
+ ## Component Integration
16
+
17
+ The Search component is included in TUIKit Compose. To use the Search component, integrate TUIKit Compose into your project. For integration instructions, refer to the [TUIKit Compose documentation](https://www.tencentcloud.com/document/product/1047/77459) and complete the login process.
18
+
19
+ ## Component Structure
20
+
21
+ `SearchScreen` is the entry point for the Search component. It only exposes the initialization method for the search component; all other logic is encapsulated within `SearchScreen`.
22
+ | Method | Parameter | Description |
23
+ | --- | --- | --- |
24
+ | SearchScreen | <code>modifier: Modifier</code> | Used in Jetpack Compose to set the style, layout, behavior, and appearance of the component. |
25
+ | <code>onBack: () -> Unit</code> | Webhook triggered when the Cancel button is clicked; optional parameter. | |
26
+ | <code>onContactSelect: (FriendSearchInfo) -> Unit</code> | Webhook triggered when a searched contact item is clicked; optional parameter. | |
27
+ | <code>onGroupSelect: (GroupSearchInfo) -> Unit</code> | Webhook triggered when a searched group item is clicked; optional parameter. | |
28
+ | <code>onConversationSelect: (MessageSearchResultItem) -> Unit</code> | Webhook triggered when a searched conversation item is clicked; optional parameter. | |
29
+ | <code>onMessageSelect: (MessageInfo) -> Unit</code> | Webhook triggered when a searched message item is clicked; optional parameter. | |
30
+
31
+ ## Basic Usage
32
+
33
+ The routing logic for search results in `SearchScreen` is as follows:
34
+ - Automatic Routing: On the search results page, clicking the More button or a chat record entry will automatically trigger internal navigation handled by the component.
35
+
36
+ - Custom Routing: When a user clicks a specific contact, group, conversation, or message, the component triggers the corresponding webhook (`onContactSelect`, `onGroupSelect`, `onConversationSelect`, or `onMessageSelect`). You must implement custom navigation in these webhook handlers (for example, navigating to your custom chat interface).
37
+
38
+ Example:
39
+
40
+ Initialize the `SearchScreen` component as shown below:
41
+
42
+ ``` java
43
+ SearchScreen(
44
+ modifier = Modifier.Companion
45
+ .fillMaxSize()
46
+ .statusBarsPadding()
47
+ .navigationBarsPadding(),
48
+ onBack = {
49
+ // Cancel button click event
50
+ },
51
+ onContactSelect = {
52
+ // Contact click event
53
+ },
54
+ onGroupSelect = {
55
+ // Group click event
56
+ },
57
+ onConversationSelect = {
58
+ // Conversation click event
59
+ },
60
+ onMessageSelect = {
61
+ // Message click event
62
+ }
63
+ )
64
+ ```
@@ -0,0 +1,222 @@
1
+ TUIKit Compose offers flexible appearance customization with support for Light, Dark, and System theme modes, along with customizable primary colors. A simple configuration enables theme switching and brand color application throughout your app.
2
+
3
+ For example, in the message list, you can see how different theme modes and primary colors affect the UI:
4
+ | <strong>Light + Default Color</strong> | <strong>Light + Orange</strong> | <strong>Dark + Default Color</strong> | <strong>Dark + Green Theme</strong> |
5
+ | --- | --- | --- | --- |
6
+ | | | | |
7
+
8
+ ## Key Features
9
+
10
+ **Theme Mode**
11
+ - Light Mode: Bright interface for daytime use.
12
+
13
+ - Dark Mode: Dim interface for nighttime use.
14
+
15
+ - Follow System: Automatically matches the system appearance setting.
16
+
17
+ **Primary Color Customization**
18
+
19
+ - Preset Theme Colors: Includes standard options like blue, green, red, orange, and more.
20
+
21
+ - Custom Theme Color: Supports any Hex color value.
22
+
23
+ - Intelligent Palette Generation: Automatically creates a palette with 10 color shades.
24
+
25
+ - Quick Reset: Instantly revert to the default theme color.
26
+
27
+ ## API Reference
28
+
29
+ All theme configuration and queries are handled through concise APIs in `ThemeState`.
30
+
31
+ ### Set Theme Mode
32
+ | Method | Parameter | Return Value | Description |
33
+ | --- | --- | --- | --- |
34
+ | <code>setThemeMode</code> | <code>ThemeMode</code> | <code>Unit</code> | Sets the display mode, automatically saves and refreshes.<br>- <code>ThemeMode.SYSTEM</code>: Follows system appearance.<br>- <code>ThemeMode.LIGHT</code>: Forces light mode.<br>- <code>ThemeMode.DARK</code>: Forces dark mode. |
35
+
36
+ ### Set Primary Color
37
+
38
+ |Method|Parameter|Return Value|Description|
39
+ |---------|---------|---------|---------|
40
+ |`setPrimaryColor`|`String`|`Unit`|Sets the primary color using a Hex value (e.g., "#1C66E5").|
41
+ |`clearPrimaryColor`|None|`Unit`|Resets the primary color to the default blue.|
42
+
43
+ > **Note:**
44
+ >
45
+ > - When you call setThemeMode or setPrimaryColor, your settings are automatically saved to persistent storage. No manual saving is required. The configuration will be loaded automatically the next time the app starts.
46
+ > - Changing theme settings automatically clears the cache to ensure real-time color updates. You do not need to manage the cache manually.
47
+ > - Avoid frequent theme switching in your code (for example, do not call these APIs in a loop).
48
+
49
+ ### Query ThemeState Information
50
+
51
+ You can check the current theme configuration using the following read-only properties:
52
+
53
+ |Property|Type|Description|
54
+ |---------|---------|---------|
55
+ |`currentMode`|`ThemeMode`|Current theme mode.|
56
+ |`currentPrimaryColor`|`String?`|Current primary color (Hex format).|
57
+ |`hasCustomPrimaryColor`|`Boolean`|Indicates if a custom primary color is set.|
58
+ |`isDarkMode`|`Boolean`|Indicates if the current mode is dark mode.|
59
+
60
+ ## Usage
61
+
62
+ This section explains how to integrate theme and primary color customization into your app, with three approaches ranging from basic to advanced.
63
+
64
+ ### Option A: Configure with AppBuilder (Recommended)
65
+
66
+ AppBuilder is a convenient tool for customizing features and UI, managed through a unified JSON configuration file. It’s ideal for keeping Web and Native apps visually consistent.
67
+
68
+ Try AppBuilder in the [Chat Web Demo Center](https://trtc.io/demo/homepage/#/detail). Entry point:
69
+
70
+ While the Chat Web Demo Center does not currently support real-time preview for mobile, mobile projects do support AppBuilder configuration.
71
+
72
+ To apply your custom configuration from the Web Demo Center to your mobile project, follow these two steps:
73
+ 1. Download the configuration file.
74
+
75
+ 2. Add the appConfig.json file to your Android project.
76
+
77
+ #### 1. Download the Configuration File
78
+
79
+ Go to the [Chat Web Demo Center](https://trtc.io/demo/homepage/#/detail) and download the appConfig.json configuration file. Download path:
80
+
81
+ The contents of `appConfig.json` map directly to the configuration options in AppBuilder. Appearance settings are under the `theme` section:
82
+ ``` json
83
+ {
84
+ "theme": {
85
+ "mode": "light", // Theme mode: light - Light mode, dark - Dark mode, system - Follow system
86
+ "primaryColor": "#E65100" // Primary color, hexadecimal color value
87
+ },
88
+ "messageList": {
89
+ "alignment": "two-sided",
90
+ "enableReadReceipt": false,
91
+ "messageActionList": [
92
+ "copy",
93
+ "recall",
94
+ "quote",
95
+ "forward",
96
+ "delete"
97
+ ]
98
+ },
99
+ "conversationList": {
100
+ "enableCreateConversation": true,
101
+ "conversationActionList": [
102
+ "delete",
103
+ "mute",
104
+ "pin",
105
+ "markUnread"
106
+ ]
107
+ },
108
+ "messageInput": {
109
+ "hideSendButton": false,
110
+ "attachmentPickerMode": "collapsed"
111
+ },
112
+ "search": {
113
+ "hideSearch": false
114
+ },
115
+ "avatar": {
116
+ "shape": "circular"
117
+ }
118
+ }
119
+ ```
120
+
121
+ **Configuration Option Description**
122
+
123
+ |Parameter|Type|Optional Values|Description|
124
+ |---------|---------|---------|---------|
125
+ |`mode`|String|`"system"`, `"light"`, `"dark"`|Theme mode|
126
+ |`primaryColor`|String|Hex color value, e.g., `"#0ABF77"`|Primary color|
127
+
128
+ #### 2. Add the Configuration File to Your Project
129
+
130
+ Drag appConfig.json into your project. For example, in the open-source demo [TUIKit Android Compose](https://github.com/Tencent-RTC/TUIKit_Android_Compose/blob/main/chat/demo/app/src/main/assets/appConfig.json) on GitHub, appConfig.json is located in the assets folder under demo/app:
131
+
132
+ Once you’ve added the file, you don’t need to write any extra code. When you launch the app, TUIKit Compose components will automatically use the theme mode and primary color specified in appConfig.json.
133
+
134
+ ### Option B: Set Theme Mode in Code
135
+
136
+ You can set the theme mode directly using the `setThemeMode` API. Example:
137
+ ``` swift
138
+ val themeState = ThemeState.shared
139
+ Column {
140
+ Button(onClick = {
141
+ themeState.setThemeMode(ThemeMode.SYSTEM)
142
+ }) { Text(text = "Follow System") }
143
+ Button(onClick = {
144
+ themeState.setThemeMode(ThemeMode.LIGHT)
145
+ }) { Text(text = "Light Mode") }
146
+ Button(onClick = {
147
+ themeState.setThemeMode(ThemeMode.DARK)
148
+ }) { Text(text = "Dark Mode") }
149
+ }
150
+ ```
151
+
152
+ ### Approach 3: Set Primary Color in Code
153
+
154
+ Set the primary color using the `setPrimaryColor` API. Just provide a Hex color value, and all TUIKit Compose components will automatically use matching colors from the same palette for UI rendering. No manual color adjustments are needed. Example:
155
+ ``` swift
156
+ Column {
157
+ var text: String by remember { mutableStateOf("#1C66E5") }
158
+
159
+ fun isValidHexColor(): Boolean {
160
+ return text.matches(Regex("^#[0-9A-Fa-f]{6}$"))
161
+ }
162
+ BasicTextField(
163
+ value = text,
164
+ onValueChange = { text = it },
165
+ modifier = Modifier
166
+ .fillMaxWidth()
167
+ .padding(16.dp)
168
+ )
169
+ Button(
170
+ enabled = isValidHexColor(),
171
+ onClick = {
172
+ themeState.setPrimaryColor(text)
173
+ }) {
174
+ Text("Apply Primary Color")
175
+ }
176
+ }
177
+ ```
178
+
179
+ > **Usage Recommendations****:**
180
+ >
181
+ > - For most apps, using the JSON configuration file is recommended. It’s simple, reliable, and ensures cross-platform consistency.
182
+ > - Use colors from themeState.colors throughout your app to maintain a consistent look when switching themes.
183
+
184
+ ## FAQs
185
+
186
+ ### **How do I check if the current mode is dark mode?**
187
+ ``` java
188
+ if themeState.isDarkMode {
189
+ // Currently in dark mode
190
+ } else {
191
+ // Currently in light mode
192
+ }
193
+ ```
194
+
195
+ ### **Can I set transparency?**
196
+
197
+ No. Only 6-digit Hex format (RGB) is supported for the primary color. 8-digit Hex (RGBA) is not supported.
198
+
199
+ ### **How do I reset to the default theme?**
200
+ ``` swift
201
+ themeState.clearPrimaryColor() // Remove custom primary color
202
+ themeState.setThemeMode(ThemeMode.SYSTEM) // Switch to system mode
203
+ ```
204
+
205
+ ### **Where is the theme configuration saved?**
206
+
207
+ Theme settings are stored in the app’s persistent storage. If the app is uninstalled, the configuration is lost and defaults are restored on reinstallation.
208
+
209
+ ### **How do I get the full current theme configuration?**
210
+ ``` swift
211
+ val config = themeState.currentTheme
212
+ print("Mode: ${config.mode}")
213
+ print("Primary Color: ${config.primaryColor ?: "Default"}")
214
+ ```
215
+
216
+ ### **Can I set both mode and primary color at the same time?**
217
+
218
+ Yes. Call both methods separately; the system will automatically merge the settings:
219
+ ``` swift
220
+ themeState.setThemeMode(ThemeMode.DARK)
221
+ themeState.setPrimaryColor("#0ABF77")
222
+ ```
@@ -0,0 +1,300 @@
1
+ TUIKit is a UI component library built on the Chat SDK. It enables rapid implementation of chat, conversation, search, relationship chain, group, and other features through UI components. This document describes how to quickly integrate TUIKit and implement core features.
2
+
3
+ ## Key Concepts
4
+
5
+ TUIKit provides a complete set of instant messaging UI components. It depends on the **AtomicXCore data layer** and can be used to build various functional pages.
6
+ - Page layer: Complete functional pages built on TUIKit components, including ChatPageView, ContactsPageView, and ConversationsPageView. You can use them directly.
7
+
8
+ - TUIKit (UI component layer): View UI components, not Compose components, built on AtomicXCore. You can embed them into your existing app pages.
9
+
10
+ - AtomicXCore (data layer): Provides data management and business logic, including various stores and managers.
11
+
12
+ ## Prerequisites
13
+ - Android Studio 2022.3.1 or later, JDK 17.
14
+
15
+ - A physical device or emulator running Android 6.0 or later.
16
+
17
+ - Your project must support Kotlin, because TUIKit is developed in Kotlin.
18
+
19
+ - minSdk >= 23.
20
+
21
+ - A valid Tencent Cloud account and Chat application. See Activate the Service to obtain the following information from the Console:
22
+
23
+ - SDKAppID: The ID of the Chat application obtained from the Console. It is the unique identifier of the application.
24
+
25
+ - SDKSecretKey: The application secret key.
26
+
27
+ >
28
+
29
+ > **Version Compatibility Notice:**
30
+ >
31
+ >
32
+
33
+ > To ensure a stable build environment, strictly follow the official compatibility requirements:
34
+ >
35
+ > - For compatibility between Gradle, Android Gradle Plugin, JDK, and Android Studio, see the Android official documentation: [Release Notes](https://developer.android.com/build/releases/gradle-plugin#updating-gradle)
36
+ > - For the mapping between Kotlin, Android Gradle Plugin, and Gradle versions, see the Kotlin official documentation: [Kotlin-Gradle Plugin Compatibility](https://kotlinlang.org/docs/gradle-configure-project.html#apply-the-plugin)
37
+
38
+ > We recommend selecting a version combination that fully matches your project requirements according to these guidelines.
39
+ >
40
+
41
+ ## Integrate the TUIKit
42
+
43
+ ### Download the Source Code
44
+
45
+ Download the source code from the GitHub repository [Tencent-RTC/TUIKit_Android](https://github.com/Tencent-RTC/TUIKit_Android). The project directory structure is as follows:
46
+ ``` text
47
+ TUIKit_Android/
48
+ ├── atomic_x/ # Base UI component library (required by Chat)
49
+ ├── call/
50
+ │ └── tuicallkit-kt/ # Audio/video call component (required by Chat)
51
+ └── chat/
52
+ ├── demo/ # Chat View Demo project
53
+ └── uikit/ # Chat View UI component library
54
+ ```
55
+
56
+ ### Integrate Components
57
+ 1. Copy the `chat`, `atomic_x`, and optionally `call` folders from the repository root to your project root directory. The directory structure after copying is as follows:
58
+
59
+ ``` text
60
+ YourApplication/
61
+ ├── app/ # Your app module
62
+ ├── atomic_x/ # Base UI component library (required)
63
+ ├── call/ # Audio/video call component (optional)
64
+ │ └── tuicallkit-kt/
65
+ ├── chat/ # Chat source code
66
+ │ ├── demo/ # Demo project (for reference, optional)
67
+ │ └── uikit/ # Chat UIKit component library (required)
68
+ ├── settings.gradle.kts
69
+ └── build.gradle.kts
70
+ ```
71
+ 2. Add the corresponding modules in `settings.gradle.kts`. Adjust the relative paths based on where you actually place the source code:
72
+
73
+ 【Kotlin DSL】
74
+ ``` kotlin
75
+ // settings.gradle.kts
76
+
77
+ // Include the Chat UIKit component library (required)
78
+ include(":uikit")
79
+ project(":uikit").projectDir = file("${settingsDir.path}/chat/uikit")
80
+
81
+ // Include the AtomicX base UI component library (required)
82
+ include(":atomic_x")
83
+ project(":atomic_x").projectDir = file("${settingsDir.path}/atomic_x")
84
+
85
+ // Include the audio/video call component (optional, required for audio/video calls)
86
+ include(":tuicallkit-kt")
87
+ project(":tuicallkit-kt").projectDir = file("${settingsDir.path}/call/tuicallkit-kt")
88
+ ```
89
+
90
+ 【Groovy DSL】
91
+ ``` groovy
92
+ // settings.gradle
93
+
94
+ // Include the Chat UIKit component library (required)
95
+ include ':uikit'
96
+ project(':uikit').projectDir = new File(settingsDir, 'chat/uikit')
97
+
98
+ // Include the AtomicX base UI component library (required)
99
+ include ':atomic_x'
100
+ project(':atomic_x').projectDir = new File(settingsDir, 'atomic_x')
101
+
102
+ // Include the audio/video call component (optional, required for audio/video calls)
103
+ include ':tuicallkit-kt'
104
+ project(':tuicallkit-kt').projectDir = new File(settingsDir, 'call/tuicallkit-kt')
105
+ ```
106
+
107
+ 3. Add dependencies to the app module's `build.gradle.kts`:
108
+
109
+ 【Kotlin DSL】
110
+ ``` kotlin
111
+ // app/build.gradle.kts
112
+ dependencies {
113
+ // TUIKit component library (required)
114
+ implementation(project(":uikit"))
115
+ implementation(project(":atomic_x"))
116
+ // Audio/video call (optional)
117
+ implementation(project(":tuicallkit-kt"))
118
+ }
119
+ ```
120
+
121
+ 【Groovy DSL】
122
+ ``` groovy
123
+ // app/build.gradle
124
+ dependencies {
125
+ // TUIKit component library (required)
126
+ implementation project(':uikit')
127
+ implementation project(':atomic_x')
128
+ // Audio/video call (optional)
129
+ implementation project(':tuicallkit-kt')
130
+ }
131
+ ```
132
+
133
+ ### Implementation Steps
134
+
135
+ After completing the integration above, follow these steps to quickly build core UIs such as the conversation list, chat, and contacts with only a few lines of code.
136
+
137
+ #### Step 1. Configure User Authentication
138
+
139
+ In [Console > Development Tools > UserSig Tools](https://console.trtc.io/usersig), obtain a UserSig based on the UserID. The UserSig is used for user authentication during login.
140
+
141
+ > **Description:**
142
+ >
143
+
144
+ > For more UserSig operations, see UserSig Generation & Verification.
145
+ >
146
+
147
+ #### Step 2. User Login
148
+
149
+ You must log in before using component features. Call the `login` API of `LoginStore` and pass in the sdkAppID, userID, and userSig obtained above for login authentication:
150
+ ``` java
151
+ import io.trtc.tuikit.atomicxcore.api.CompletionHandler
152
+ import io.trtc.tuikit.atomicxcore.api.login.LoginStore
153
+
154
+ LoginStore.shared.login(
155
+ context,
156
+ sdkAppID, // Int, obtained from the Console
157
+ userID, // String
158
+ userSig, // String, generated in the Console or on your server
159
+ object : CompletionHandler {
160
+ override fun onSuccess() {
161
+ // Login succeeded. You can navigate to the conversation list or chat page.
162
+ }
163
+ override fun onFailure(code: Int, desc: String) {
164
+ // Login failed. You can show an error dialog.
165
+ }
166
+ }
167
+ )
168
+ ```
169
+
170
+ > **Note:**
171
+ >
172
+
173
+ > In a production environment, we recommend generating UserSig on your server. When needed, your app should request a dynamic UserSig from your business server for authentication. For details, see [Generating UserSig on the Server](https://intl.cloud.tencent.com/document/product/1047/34385).
174
+ >
175
+
176
+ #### Step 3. Build the Conversation List UI
177
+
178
+ To build a conversation list, create `ConversationsPageView` and add it to your layout. It automatically reads recent conversations from local storage. When a conversation is tapped, the `onConversationClick` callback returns the conversation's `conversationID`, which you can use to navigate to the chat UI.
179
+ ``` kotlin
180
+ import android.os.Bundle
181
+ import androidx.appcompat.app.AppCompatActivity
182
+ import io.trtc.tuikit.chat.uikit.pages.ConversationsPageView
183
+
184
+ class ConversationActivity : AppCompatActivity() {
185
+ override fun onCreate(savedInstanceState: Bundle?) {
186
+ super.onCreate(savedInstanceState)
187
+
188
+ val conversationsPage = ConversationsPageView(this)
189
+ conversationsPage.setHeaderTitle("Messages")
190
+
191
+ // Conversation tap callback. conversationID already includes the c2c_ or group_ prefix.
192
+ conversationsPage.onConversationClick = { conversationID ->
193
+ // Navigate to your chat UI and pass in conversationID. See ChatActivity in Step 4.
194
+ }
195
+ // Optional callbacks for search, starting one-to-one chats, and creating groups.
196
+ conversationsPage.onSearchClick = { /* Navigate to the search page */ }
197
+ conversationsPage.onStartChatClick = { /* Start a one-to-one chat */ }
198
+ conversationsPage.onCreateGroupClick = { /* Create a group */ }
199
+
200
+ // Set the conversation list as the page content.
201
+ setContentView(conversationsPage)
202
+ }
203
+ }
204
+ ```
205
+
206
+ #### Step 4. Build the Chat UI
207
+
208
+ Use `ChatPageView` to display and send or receive messages. Pass `conversationID` through `setup`. The `conversationID` format is `c2c_<peer UserID>` for one-to-one chats and `group_<GroupID>` for group chats.
209
+ ``` kotlin
210
+ import android.content.Context
211
+ import android.content.Intent
212
+ import android.os.Bundle
213
+ import androidx.appcompat.app.AppCompatActivity
214
+ import io.trtc.tuikit.chat.uikit.pages.ChatPageView
215
+
216
+ class ChatActivity : AppCompatActivity() {
217
+
218
+ override fun onCreate(savedInstanceState: Bundle?) {
219
+ // Material Components theme is required, otherwise ChatPageView may crash at runtime.
220
+ setTheme(com.google.android.material.R.style.Theme_MaterialComponents_Light_NoActionBar)
221
+ super.onCreate(savedInstanceState)
222
+
223
+ // conversationID format: "c2c_<peer UserID>" for one-to-one chats, "group_<GroupID>" for group chats.
224
+ val conversationID = intent.getStringExtra("conversationID") ?: return
225
+
226
+ val chatPageView = ChatPageView(this)
227
+ chatPageView.setup(conversationID = conversationID)
228
+ setContentView(chatPageView)
229
+ }
230
+
231
+ companion object {
232
+ fun start(context: Context, conversationID: String) {
233
+ context.startActivity(Intent(context, ChatActivity::class.java).apply {
234
+ putExtra("conversationID", conversationID)
235
+ })
236
+ }
237
+ }
238
+ }
239
+ ```
240
+
241
+ > **Note:**
242
+ >
243
+
244
+ > The Activity that hosts the chat page **must** use a Material Components theme, such as `setTheme(com.google.android.material.R.style.Theme_MaterialComponents_Light_NoActionBar)`. Otherwise, Material controls used inside `ChatPageView` may crash at runtime because required theme attributes are missing.
245
+ >
246
+
247
+ > **Description:**The Demo project provides `ChatActivity`, a chat page encapsulated based on `ChatPageView` with a title bar, unread badges, group event handling, and more. You can reuse it directly or refer to its implementation for customization: `ChatActivity.start(context, conversationID)`.
248
+ >
249
+
250
+ #### Step 5. Build the Contacts UI
251
+
252
+ Use `ContactsPageView` to display friend lists, group lists, and more. Set click callbacks through `setup`. When a contact or group is tapped, navigate to the corresponding chat UI.
253
+ ``` kotlin
254
+ import android.os.Bundle
255
+ import androidx.appcompat.app.AppCompatActivity
256
+ import io.trtc.tuikit.chat.uikit.pages.ContactsPageView
257
+
258
+ class ContactActivity : AppCompatActivity() {
259
+ override fun onCreate(savedInstanceState: Bundle?) {
260
+ super.onCreate(savedInstanceState)
261
+
262
+ val contactsPage = ContactsPageView(this)
263
+ contactsPage.setHeaderTitle("Contacts")
264
+ contactsPage.setup(
265
+ onContactClick = { contactInfo ->
266
+ // Navigate to your chat UI. The one-to-one conversation ID is "c2c_" + contactInfo.userID.
267
+ },
268
+ onGroupClick = { contactInfo ->
269
+ // Navigate to your chat UI. The group conversation ID is "group_" + contactInfo.userID.
270
+ }
271
+ )
272
+ setContentView(contactsPage)
273
+ }
274
+ }
275
+ ```
276
+
277
+ #### Step 6. Theme Settings (Optional)
278
+
279
+ TUIKit uses `ThemeStore` to support primary color settings and light/dark theme switching.
280
+ ``` kotlin
281
+ import io.trtc.tuikit.atomicx.theme.Theme
282
+ import io.trtc.tuikit.atomicx.theme.ThemeStore
283
+
284
+ // Set primary color.
285
+ ThemeStore.shared(context).setPrimaryColor("#1C66E5")
286
+
287
+ // Switch between light and dark themes.
288
+ ThemeStore.shared(context).setTheme(Theme.lightTheme(context))
289
+ // ThemeStore.shared(context).setTheme(Theme.darkTheme(context))
290
+ ```
291
+
292
+ ## FAQs
293
+
294
+ ##### Using Emoji Packs
295
+
296
+ To respect emoji design copyrights, the Chat Demo/TUIKit project does not include large emoji image assets. Before commercial release, replace them with emoji packs designed by you or otherwise licensed to you. The default **smiley emoji pack shown below is copyrighted by Tencent Cloud**, and you can use it for free by upgrading to [Chat Pro Plus or Enterprise Edition](https://console.trtc.io/subscription/buy/chat).
297
+
298
+ ## Contact Us
299
+
300
+ If you have any questions or suggestions during integration or use, [contact us](https://trtc.io/contact) to submit feedback.
@@ -0,0 +1,64 @@
1
+ ## Component Overview
2
+
3
+ ChatSetting is a suite of chat settings components, featuring two primary modules: C2CChatSetting for one-on-one chat settings and GroupChatSetting for group chat settings.
4
+
5
+ These components offer a complete set of tools for managing chat sessions, including user information management, permission controls, group management, and other essential features.
6
+ | C2C Chat Settings Interface | Group Chat Settings Interface |
7
+ | --- | --- |
8
+ | | |
9
+
10
+ ## Component Integration
11
+
12
+ ChatSetting is included in TUIKit Flutter. To use ChatSetting, integrate TUIKit Flutter into your project. For detailed integration instructions, see the [TUIKit Flutter](https://www.tencentcloud.com/document/product/1047/77489) documentation.
13
+
14
+ ## Component Structure
15
+
16
+ ChatSetting provides two main components: C2CChatSetting for one-on-one chat settings and GroupChatSetting for group chat settings. Each module supports extensive configuration options.
17
+
18
+ ### C2C Chat Settings (C2CChatSetting)
19
+
20
+ #### Initialization Parameters
21
+
22
+ |Parameter Name|Type|Description|
23
+ |---------|---------|---------|
24
+ |`userID`|`String`|The user ID of the chat partner.|
25
+ |`onSendMessageClick`|`void Function({String? userID, String? groupID})`|Callback triggered when the Send Message button is clicked. Optional.|
26
+ |`onContactDelete`|`VoidCallback`|Callback triggered when the Delete Contact button is clicked. Optional.|
27
+
28
+ ### Group Chat Settings (GroupChatSetting)
29
+
30
+ #### Initialization Parameters
31
+
32
+ |Parameter Name|Type|Description|
33
+ |---------|---------|---------|
34
+ |`groupID`|`String`|Group ID, used to identify the group chat.|
35
+ |`onSendMessageClick`|`void Function({String? userID, String? groupID})`|Callback triggered when the Send Message button is clicked. Optional.|
36
+ |`onGroupDelete`|`VoidCallback`|Callback triggered when the Dissolve/Leave Group button is clicked. Optional.|
37
+
38
+ ## Basic Usage
39
+
40
+ To display the one-on-one chat settings page, initialize C2CChatSetting as shown below:
41
+ ``` swift
42
+ C2CChatSetting(
43
+ userID: userID,
44
+ onSendMessageClick: ({String? userID, String? groupID}) {
45
+ // Handle send message button click event
46
+ },
47
+ onContactDelete: () {
48
+ // Handle delete contact button click event
49
+ },
50
+ );
51
+ ```
52
+
53
+ To display the group chat settings page, initialize GroupChatSetting as follows:
54
+ ``` swift
55
+ GroupChatSetting(
56
+ groupID: groupID,
57
+ onGroupDelete: () {
58
+ // Handle delete, dissolve, or leave group button click event
59
+ },
60
+ onSendMessageClick: ({String? userID, String? groupID}) {
61
+ // Handle send message button click event
62
+ },
63
+ );
64
+ ```