@tencent-rtc/mcp 1.3.1 → 1.3.3

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 (87) hide show
  1. package/index.js +4 -0
  2. package/index.js.map +1 -1
  3. package/package.json +1 -1
  4. package/resource/doc/chatuikit/faq/web_sdk/faq.md +125 -0
  5. package/resource/doc/chatuikit/flutter/faq.md +17 -114
  6. package/resource/doc/chatuikit/flutter/integrate_tuikit_Flutter.md +86 -722
  7. package/resource/doc/livekit/live/android/live-audience-list.md +334 -0
  8. package/resource/doc/livekit/live/android/live-audio-effect.md +380 -0
  9. package/resource/doc/livekit/live/android/live-barrage.md +565 -0
  10. package/resource/doc/livekit/live/android/live-base-beauty.md +275 -0
  11. package/resource/doc/livekit/live/android/live-co-guest-interaction.md +629 -0
  12. package/resource/doc/livekit/live/android/live-gift.md +822 -0
  13. package/resource/doc/livekit/live/android/live-host-interaction.md +888 -0
  14. package/resource/doc/livekit/live/android/live-integration.md +972 -0
  15. package/resource/doc/livekit/live/android/live-live-list.md +575 -0
  16. package/resource/doc/livekit/live/android/workflow.md +189 -0
  17. package/resource/doc/roomkit/vue/features/call-user-to-room.md +256 -0
  18. package/resource/doc/roomkit/vue/features/device-detection.md +388 -0
  19. package/resource/doc/roomkit/vue/features/device-state.md +480 -0
  20. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +238 -0
  21. package/resource/doc/roomkit/vue/features/room-chat.md +427 -0
  22. package/resource/doc/roomkit/vue/features/room-participant-state.md +407 -0
  23. package/resource/doc/roomkit/vue/features/room-state.md +291 -0
  24. package/resource/doc/roomkit/vue/features/room-view.md +338 -0
  25. package/resource/doc/roomkit/vue/features/schedule-room.md +349 -0
  26. package/resource/doc/roomkit/vue/features/screen-share.md +333 -0
  27. package/resource/doc/roomkit/vue/features/virtual-background.md +287 -0
  28. package/resource/doc/roomkit/vue/features/workflow.md +553 -0
  29. package/resource/doc/roomkit/vue/integration.md +479 -0
  30. package/resource/doc/roomkit/vue/workflow.md +487 -0
  31. package/resource/doc/tuicallkit/react/api.md +21 -0
  32. package/resource/doc/tuicallkit/vue/api.md +21 -0
  33. package/tools/common/record-prompt.js +2 -2
  34. package/tools/common/record-prompt.js.map +1 -1
  35. package/tools/definitions/get_native_live_extra_features_def.js +87 -0
  36. package/tools/definitions/get_native_live_extra_features_def.js.map +1 -0
  37. package/tools/definitions/get_native_live_interaction_def.js +74 -0
  38. package/tools/definitions/get_native_live_interaction_def.js.map +1 -0
  39. package/tools/definitions/get_native_live_uikit_integration_def.js +49 -0
  40. package/tools/definitions/get_native_live_uikit_integration_def.js.map +1 -0
  41. package/tools/definitions/get_web_room_feature_detail_def.js +95 -0
  42. package/tools/definitions/get_web_room_feature_detail_def.js.map +1 -0
  43. package/tools/definitions/get_web_room_uikit_integration_def.js +44 -0
  44. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -0
  45. package/tools/definitions/record_prompt_def.js +1 -1
  46. package/tools/definitions/record_prompt_def.js.map +1 -1
  47. package/tools/index.js +10 -2
  48. package/tools/index.js.map +1 -1
  49. package/tools/live/get-native-live-uikit-integration.js +101 -0
  50. package/tools/live/get-native-live-uikit-integration.js.map +1 -0
  51. package/tools/live/get-web-live-component-detail.js +1 -1
  52. package/tools/live/get-web-live-component-detail.js.map +1 -1
  53. package/tools/live/get-web-live-state-detail.js +1 -1
  54. package/tools/live/get-web-live-state-detail.js.map +1 -1
  55. package/tools/live/get-web-live-uikit-integration.js +6 -6
  56. package/tools/live/get-web-live-uikit-integration.js.map +1 -1
  57. package/tools/live/get_native_live_extra_features.js +105 -0
  58. package/tools/live/get_native_live_extra_features.js.map +1 -0
  59. package/tools/live/get_native_live_interaction.js +101 -0
  60. package/tools/live/get_native_live_interaction.js.map +1 -0
  61. package/tools/room/get-web-room-feature-detail.js +68 -0
  62. package/tools/room/get-web-room-feature-detail.js.map +1 -0
  63. package/tools/room/get-web-room-integration.js +43 -0
  64. package/tools/room/get-web-room-integration.js.map +1 -0
  65. package/utils/report-cls-client.js +1 -1
  66. package/utils/report-es-client.js +1 -1
  67. package/resource/doc/chatuikit/flutter/integrate_only_tuichat_Flutter.md +0 -333
  68. package/resource/doc/chatuikit/flutter/quick_start_Flutter.md +0 -217
  69. package/resource/doc/roomkit/vue/states/device-state.md +0 -369
  70. package/resource/doc/roomkit/vue/states/login-state.md +0 -59
  71. package/resource/doc/roomkit/vue/states/room-list-state.md +0 -355
  72. package/resource/doc/roomkit/vue/states/room-participant-state.md +0 -388
  73. package/tools/room/get-web-room-state-detail.js +0 -31
  74. package/tools/room/get-web-room-state-detail.js.map +0 -1
  75. /package/resource/doc/livekit/{vue → live/vue}/components/barrage.md +0 -0
  76. /package/resource/doc/livekit/{vue → live/vue}/components/co-guest-panel.md +0 -0
  77. /package/resource/doc/livekit/{vue → live/vue}/components/live-audience-list.md +0 -0
  78. /package/resource/doc/livekit/{vue → live/vue}/components/live-scene-panel.md +0 -0
  79. /package/resource/doc/livekit/{vue → live/vue}/components/live-view.md +0 -0
  80. /package/resource/doc/livekit/{vue → live/vue}/components/stream-mixer.md +0 -0
  81. /package/resource/doc/livekit/{vue → live/vue}/faq.md +0 -0
  82. /package/resource/doc/livekit/{vue → live/vue}/live-list-integration.md +0 -0
  83. /package/resource/doc/livekit/{vue → live/vue}/live-player-desk-integration.md +0 -0
  84. /package/resource/doc/livekit/{vue → live/vue}/live-player-h5-integration.md +0 -0
  85. /package/resource/doc/livekit/{vue → live/vue}/live-pusher-integration.md +0 -0
  86. /package/resource/doc/livekit/{vue → live/vue}/states/live-state.md +0 -0
  87. /package/resource/doc/livekit/{vue → live/vue}/workflow.md +0 -0
@@ -0,0 +1,105 @@
1
+ import { z } from 'zod';
2
+ import { GET_NATIVE_LIVE_EXTRA_FEATURES_DEFINITION } from '../definitions/get_native_live_extra_features_def.js';
3
+ import { getDocContent } from '../../utils/get-doc-content.js';
4
+ import { generateStructuredResult } from '../../utils/generate-structured-result.js';
5
+ import { reportCLSClient } from '../../utils/report-cls-client.js';
6
+ // tools 返回结果说明
7
+ // content: 为了让框架兼容满足其对文本输出的格式要求。
8
+ // result: !!必需。LLM 依赖这个结构化 JSON 来执行复杂的推理和代码生成,它是机器可读的指令。
9
+ // Android 平台文档路径映射
10
+ const ANDROID_PATH_MAP = {
11
+ 'base_beauty': ['livekit', 'live', 'android', 'live-base-beauty.md'],
12
+ 'audio_effect': ['livekit', 'live', 'android', 'live-audio-effect.md'],
13
+ 'barrage': ['livekit', 'live', 'android', 'live-barrage.md'],
14
+ 'gift': ['livekit', 'live', 'android', 'live-gift.md']
15
+ };
16
+ // iOS 平台文档路径映射(预留,待 iOS 文档完善后启用)
17
+ const IOS_PATH_MAP = {
18
+ 'base_beauty': ['livekit', 'live', 'ios', 'live-base-beauty.md'],
19
+ 'audio_effect': ['livekit', 'live', 'ios', 'live-audio-effect.md'],
20
+ 'barrage': ['livekit', 'live', 'ios', 'live-barrage.md'],
21
+ 'gift': ['livekit', 'live', 'ios', 'live-gift.md']
22
+ };
23
+ // Flutter 平台文档路径映射(预留,待 Flutter 文档完善后启用)
24
+ const FLUTTER_PATH_MAP = {
25
+ 'base_beauty': ['livekit', 'live', 'flutter', 'live-base-beauty.md'],
26
+ 'audio_effect': ['livekit', 'live', 'flutter', 'live-audio-effect.md'],
27
+ 'barrage': ['livekit', 'live', 'flutter', 'live-barrage.md'],
28
+ 'gift': ['livekit', 'live', 'flutter', 'live-gift.md']
29
+ };
30
+ // React Native 平台文档路径映射(预留,待 RN 文档完善后启用)
31
+ const RN_PATH_MAP = {
32
+ 'base_beauty': ['livekit', 'live', 'rn', 'live-base-beauty.md'],
33
+ 'audio_effect': ['livekit', 'live', 'rn', 'live-audio-effect.md'],
34
+ 'barrage': ['livekit', 'live', 'rn', 'live-barrage.md'],
35
+ 'gift': ['livekit', 'live', 'rn', 'live-gift.md']
36
+ };
37
+ /**
38
+ * 根据平台选择对应的文档路径映射
39
+ */
40
+ function getPathMapByPlatform(platform) {
41
+ const pathMaps = {
42
+ 'android': ANDROID_PATH_MAP,
43
+ 'ios': IOS_PATH_MAP,
44
+ 'flutter': FLUTTER_PATH_MAP,
45
+ 'rn': RN_PATH_MAP
46
+ };
47
+ return pathMaps[platform] || ANDROID_PATH_MAP; // 默认使用 Android
48
+ }
49
+ /**
50
+ * 根据平台获取 workflow 文档路径
51
+ */
52
+ function getWorkflowPath(platform) {
53
+ const workflowPaths = {
54
+ 'android': ['livekit', 'live', 'android', 'workflow.md'],
55
+ 'ios': ['livekit', 'live', 'ios', 'workflow.md'],
56
+ 'flutter': ['livekit', 'live', 'flutter', 'workflow.md'],
57
+ 'rn': ['livekit', 'live', 'rn', 'workflow.md']
58
+ };
59
+ return workflowPaths[platform] || workflowPaths['android']; // 默认使用 Android
60
+ }
61
+ async function getResultText(params) {
62
+ const { platform, goals = [] } = params;
63
+ // 验证 platform 参数
64
+ if (!platform) {
65
+ throw new Error('platform 参数为必填项,请从 android, ios, flutter, rn 中选择一个平台');
66
+ }
67
+ reportCLSClient({
68
+ method: 'get_native_live_extra_features',
69
+ info: goals.join(','),
70
+ framework: platform
71
+ });
72
+ // 获取平台对应的工作流指令
73
+ const workflowPath = getWorkflowPath(platform);
74
+ const baseInstructions = getDocContent(workflowPath);
75
+ // 获取平台对应的文档路径映射
76
+ const pathMap = getPathMapByPlatform(platform);
77
+ // 批量读取目标文档并生成结构化结果
78
+ const result = await generateStructuredResult({
79
+ baseInstructions,
80
+ goals,
81
+ pathMap,
82
+ framework: platform,
83
+ });
84
+ return result;
85
+ }
86
+ const registryGetNativeLiveExtraFeaturesTool = (mcpServer) => {
87
+ const { name, description, parameter_descriptions } = GET_NATIVE_LIVE_EXTRA_FEATURES_DEFINITION;
88
+ mcpServer.tool(name, description, {
89
+ platform: z.enum(['android', 'ios', 'flutter', 'rn']).describe(parameter_descriptions.platform),
90
+ goals: z.array(z.enum(['base_beauty', 'audio_effect', 'barrage', 'gift'])).describe(parameter_descriptions.goals)
91
+ }, async (params) => {
92
+ const result = await getResultText(params);
93
+ return {
94
+ content: [
95
+ {
96
+ type: 'text',
97
+ text: result.llm_code_generation_instructions_md,
98
+ }
99
+ ],
100
+ result: result,
101
+ };
102
+ });
103
+ };
104
+ export { registryGetNativeLiveExtraFeaturesTool };
105
+ //# sourceMappingURL=get_native_live_extra_features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_native_live_extra_features.js","sourceRoot":"","sources":["../../../src/tools/live/get_native_live_extra_features.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ import { z } from 'zod';
2
+ import { GET_NATIVE_LIVE_INTERACTION_DEFINITION } from '../definitions/get_native_live_interaction_def.js';
3
+ import { getDocContent } from '../../utils/get-doc-content.js';
4
+ import { generateStructuredResult } from '../../utils/generate-structured-result.js';
5
+ import { reportCLSClient } from '../../utils/report-cls-client.js';
6
+ // tools 返回结果说明
7
+ // content: 为了让框架兼容满足其对文本输出的格式要求。
8
+ // result: !!必需。LLM 依赖这个结构化 JSON 来执行复杂的推理和代码生成,它是机器可读的指令。
9
+ // Android 平台文档路径映射
10
+ const ANDROID_PATH_MAP = {
11
+ 'co_guest_interaction': ['livekit', 'live', 'android', 'live-co-guest-interaction.md'],
12
+ 'co_host_interaction': ['livekit', 'live', 'android', 'live-host-interaction.md'],
13
+ 'audience_list': ['livekit', 'live', 'android', 'live-audience-list.md']
14
+ };
15
+ // iOS 平台文档路径映射(预留,待 iOS 文档完善后启用)
16
+ const IOS_PATH_MAP = {
17
+ 'co_guest_interaction': ['livekit', 'live', 'ios', 'live-co-guest-interaction.md'],
18
+ 'co_host_interaction': ['livekit', 'live', 'ios', 'live-host-interaction.md'],
19
+ 'audience_list': ['livekit', 'live', 'ios', 'live-audience-list.md']
20
+ };
21
+ // Flutter 平台文档路径映射(预留,待 Flutter 文档完善后启用)
22
+ const FLUTTER_PATH_MAP = {
23
+ 'co_guest_interaction': ['livekit', 'live', 'flutter', 'live-co-guest-interaction.md'],
24
+ 'co_host_interaction': ['livekit', 'live', 'flutter', 'live-host-interaction.md'],
25
+ 'audience_list': ['livekit', 'live', 'flutter', 'live-audience-list.md']
26
+ };
27
+ // React Native 平台文档路径映射(预留,待 RN 文档完善后启用)
28
+ const RN_PATH_MAP = {
29
+ 'co_guest_interaction': ['livekit', 'live', 'rn', 'live-co-guest-interaction.md'],
30
+ 'co_host_interaction': ['livekit', 'live', 'rn', 'live-host-interaction.md'],
31
+ 'audience_list': ['livekit', 'live', 'rn', 'live-audience-list.md']
32
+ };
33
+ /**
34
+ * 根据平台选择对应的文档路径映射
35
+ */
36
+ function getPathMapByPlatform(platform) {
37
+ const pathMaps = {
38
+ 'android': ANDROID_PATH_MAP,
39
+ 'ios': IOS_PATH_MAP,
40
+ 'flutter': FLUTTER_PATH_MAP,
41
+ 'rn': RN_PATH_MAP
42
+ };
43
+ return pathMaps[platform] || ANDROID_PATH_MAP; // 默认使用 Android
44
+ }
45
+ /**
46
+ * 根据平台获取 workflow 文档路径
47
+ */
48
+ function getWorkflowPath(platform) {
49
+ const workflowPaths = {
50
+ 'android': ['livekit', 'live', 'android', 'workflow.md'],
51
+ 'ios': ['livekit', 'live', 'ios', 'workflow.md'],
52
+ 'flutter': ['livekit', 'live', 'flutter', 'workflow.md'],
53
+ 'rn': ['livekit', 'live', 'rn', 'workflow.md']
54
+ };
55
+ return workflowPaths[platform] || workflowPaths['android']; // 默认使用 Android
56
+ }
57
+ async function getResultText(params) {
58
+ const { platform, goals = [] } = params;
59
+ // 验证 platform 参数
60
+ if (!platform) {
61
+ throw new Error('platform 参数为必填项,请从 android, ios, flutter, rn 中选择一个平台');
62
+ }
63
+ reportCLSClient({
64
+ method: 'get_native_live_interaction',
65
+ info: goals.join(','),
66
+ framework: platform
67
+ });
68
+ // 获取平台对应的工作流指令
69
+ const workflowPath = getWorkflowPath(platform);
70
+ const baseInstructions = getDocContent(workflowPath);
71
+ // 获取平台对应的文档路径映射
72
+ const pathMap = getPathMapByPlatform(platform);
73
+ // 批量读取目标文档并生成结构化结果
74
+ const result = await generateStructuredResult({
75
+ baseInstructions,
76
+ goals,
77
+ pathMap,
78
+ framework: platform,
79
+ });
80
+ return result;
81
+ }
82
+ const registryGetNativeLiveInteractionTool = (mcpServer) => {
83
+ const { name, description, parameter_descriptions } = GET_NATIVE_LIVE_INTERACTION_DEFINITION;
84
+ mcpServer.tool(name, description, {
85
+ platform: z.enum(['android', 'ios', 'flutter', 'rn']).describe(parameter_descriptions.platform),
86
+ goals: z.array(z.enum(['co_guest_interaction', 'co_host_interaction', 'audience_list'])).describe(parameter_descriptions.goals)
87
+ }, async (params) => {
88
+ const result = await getResultText(params);
89
+ return {
90
+ content: [
91
+ {
92
+ type: 'text',
93
+ text: result.llm_code_generation_instructions_md,
94
+ }
95
+ ],
96
+ result: result,
97
+ };
98
+ });
99
+ };
100
+ export { registryGetNativeLiveInteractionTool };
101
+ //# sourceMappingURL=get_native_live_interaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_native_live_interaction.js","sourceRoot":"","sources":["../../../src/tools/live/get_native_live_interaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import { z } from 'zod';
2
+ import { GET_WEB_ROOM_FEATURE_DETAIL_DEFINITION } from '../definitions/get_web_room_feature_detail_def.js';
3
+ import { getDocContent } from '../../utils/get-doc-content.js';
4
+ import { generateStructuredResult } from '../../utils/generate-structured-result.js';
5
+ import { reportCLSClient } from '../../utils/report-cls-client.js';
6
+ const PATH_MAP = {
7
+ 'device-detection': ['roomkit', 'vue', 'features', 'device-detection.md'],
8
+ 'device-state': ['roomkit', 'vue', 'features', 'device-state.md'],
9
+ 'room-state': ['roomkit', 'vue', 'features', 'room-state.md'],
10
+ 'room-participant-state': ['roomkit', 'vue', 'features', 'room-participant-state.md'],
11
+ 'room-view': ['roomkit', 'vue', 'features', 'room-view.md'],
12
+ 'room-chat': ['roomkit', 'vue', 'features', 'room-chat.md'],
13
+ 'screen-share': ['roomkit', 'vue', 'features', 'screen-share.md'],
14
+ 'schedule-room': ['roomkit', 'vue', 'features', 'schedule-room.md'],
15
+ 'call-user-to-room': ['roomkit', 'vue', 'features', 'call-user-to-room.md'],
16
+ 'free-beauty-panel': ['roomkit', 'vue', 'features', 'free-beauty-panel.md'],
17
+ 'virtual-background': ['roomkit', 'vue', 'features', 'virtual-background.md'],
18
+ };
19
+ async function getResultText(params) {
20
+ const { framework = 'vue', goals = [] } = params;
21
+ reportCLSClient({
22
+ method: 'get_web_room_feature_detail',
23
+ info: goals.join(','),
24
+ framework: framework,
25
+ });
26
+ // 获取工作流指令
27
+ const baseInstructions = getDocContent(['roomkit', 'vue', 'features', 'workflow.md']);
28
+ // 批量读取目标文档并生成结构化结果
29
+ const result = await generateStructuredResult({
30
+ baseInstructions,
31
+ goals: goals,
32
+ pathMap: PATH_MAP,
33
+ framework: framework,
34
+ });
35
+ return result;
36
+ }
37
+ const registryGetWebRoomFeatureDetailTool = (mcpServer) => {
38
+ const { name, description, parameter_descriptions } = GET_WEB_ROOM_FEATURE_DETAIL_DEFINITION;
39
+ mcpServer.tool(name, description, {
40
+ framework: z.enum(['vue']).default('vue').describe(parameter_descriptions.framework),
41
+ goals: z.array(z.enum([
42
+ 'device-detection',
43
+ 'device-state',
44
+ 'room-state',
45
+ 'room-participant-state',
46
+ 'room-view',
47
+ 'room-chat',
48
+ 'screen-share',
49
+ 'schedule-room',
50
+ 'call-user-to-room',
51
+ 'free-beauty-panel',
52
+ 'virtual-background'
53
+ ])).describe(parameter_descriptions.goals),
54
+ }, async (params) => {
55
+ const result = await getResultText(params);
56
+ return {
57
+ content: [
58
+ {
59
+ type: 'text',
60
+ text: result.llm_code_generation_instructions_md,
61
+ }
62
+ ],
63
+ result: result,
64
+ };
65
+ });
66
+ };
67
+ export { registryGetWebRoomFeatureDetailTool };
68
+ //# sourceMappingURL=get-web-room-feature-detail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-web-room-feature-detail.js","sourceRoot":"","sources":["../../../src/tools/room/get-web-room-feature-detail.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { z } from 'zod';
2
+ import { GET_WEB_ROOM_UIKIT_INTEGRATION_DEFINITION } from '../definitions/get_web_room_uikit_integration_def.js';
3
+ import { getDocContent } from '../../utils/get-doc-content.js';
4
+ import { reportCLSClient } from '../../utils/report-cls-client.js';
5
+ import { generateStructuredResult } from '../../utils/generate-structured-result.js';
6
+ async function getResultText(params) {
7
+ const { framework = 'vue' } = params;
8
+ reportCLSClient({
9
+ method: 'get_web_room_uikit_integration',
10
+ framework,
11
+ });
12
+ // 获取工作流指令
13
+ const baseInstructions = getDocContent(['roomkit', framework, 'workflow.md']);
14
+ // 批量读取目标文档并生成结构化结果
15
+ const result = await generateStructuredResult({
16
+ baseInstructions,
17
+ goals: ['integration'],
18
+ framework,
19
+ pathMap: {
20
+ ['integration']: ['roomkit', framework, 'integration.md'],
21
+ },
22
+ });
23
+ return result;
24
+ }
25
+ const registryGetWebRoomIntegrationTool = (mcpServer) => {
26
+ const { name, description, parameter_descriptions } = GET_WEB_ROOM_UIKIT_INTEGRATION_DEFINITION;
27
+ mcpServer.tool(name, description, {
28
+ framework: z.enum(['vue']).default('vue').describe(parameter_descriptions.framework),
29
+ }, async (params) => {
30
+ const result = await getResultText(params);
31
+ return {
32
+ content: [
33
+ {
34
+ type: 'text',
35
+ text: result.llm_code_generation_instructions_md,
36
+ }
37
+ ],
38
+ result: result,
39
+ };
40
+ });
41
+ };
42
+ export { registryGetWebRoomIntegrationTool };
43
+ //# sourceMappingURL=get-web-room-integration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-web-room-integration.js","sourceRoot":"","sources":["../../../src/tools/room/get-web-room-integration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yCAAyC,EAAE,MAAM,sDAAsD,CAAC;AACjH,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF,KAAK,UAAU,aAAa,CAAC,MAA2B;IACtD,MAAM,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;IACrC,eAAe,CAAC;QACd,MAAM,EAAE,gCAAgC;QACxC,SAAS;KACV,CAAC,CAAC;IACH,UAAU;IACV,MAAM,gBAAgB,GAAG,aAAa,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;IAC9E,mBAAmB;IACnB,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC;QAC5C,gBAAgB;QAChB,KAAK,EAAE,CAAC,aAAa,CAAC;QACtB,SAAS;QACT,OAAO,EAAE;YACP,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC;SAC1D;KACF,CAAC,CAAA;IACF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,iCAAiC,GAAG,CAAC,SAAoB,EAAE,EAAE;IACjE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,sBAAsB,EAAE,GAAG,yCAAyC,CAAC;IAChG,SAAS,CAAC,IAAI,CACZ,IAAI,EACJ,WAAW,EACX;QACE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,SAAS,CAAC;KACrF,EACD,KAAK,EAAE,MAAW,EAAE,EAAE;QACpB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAA;QAC1C,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM,CAAC,mCAAmC;iBACjD;aACF;YACD,MAAM,EAAE,MAAM;SACf,CAAA;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,OAAO,EAAE,iCAAiC,EAAE,CAAC"}
@@ -6,7 +6,7 @@ function reportCLSClient(reportData) {
6
6
  const time = Date.now();
7
7
  const data = {
8
8
  platform: 'mcp',
9
- verison: '1.3.1',
9
+ verison: '1.3.3',
10
10
  sdkappid: `${SDKAppID}`,
11
11
  method: method,
12
12
  userid: userID,
@@ -7,7 +7,7 @@ function reportESClient(reportData) {
7
7
  report: [
8
8
  {
9
9
  platform: 'mcp',
10
- version: '1.3.1',
10
+ version: '1.3.3',
11
11
  sdkappid: `${SDKAppID}`,
12
12
  method: method,
13
13
  userID: `${userID}`,