@mikoto_zero/minigame-open-mcp 1.2.0-beta.8 → 1.2.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 (150) hide show
  1. package/README.md +266 -153
  2. package/dist/{auth → core/auth}/deviceFlow.d.ts +28 -2
  3. package/dist/core/auth/deviceFlow.d.ts.map +1 -0
  4. package/dist/{auth → core/auth}/deviceFlow.js +130 -12
  5. package/dist/core/auth/deviceFlow.js.map +1 -0
  6. package/dist/core/handlers/appHandlers.d.ts +9 -0
  7. package/dist/core/handlers/appHandlers.d.ts.map +1 -0
  8. package/dist/core/handlers/appHandlers.js +9 -0
  9. package/dist/core/handlers/appHandlers.js.map +1 -0
  10. package/dist/core/handlers/environmentHandlers.d.ts.map +1 -0
  11. package/dist/core/handlers/environmentHandlers.js +57 -0
  12. package/dist/core/handlers/environmentHandlers.js.map +1 -0
  13. package/dist/{network → core/network}/httpClient.d.ts +4 -0
  14. package/dist/core/network/httpClient.d.ts.map +1 -0
  15. package/dist/{network → core/network}/httpClient.js +66 -22
  16. package/dist/core/network/httpClient.js.map +1 -0
  17. package/dist/core/types/index.d.ts +96 -0
  18. package/dist/core/types/index.d.ts.map +1 -0
  19. package/dist/core/types/index.js.map +1 -0
  20. package/dist/core/utils/cache.d.ts.map +1 -0
  21. package/dist/core/utils/cache.js.map +1 -0
  22. package/dist/core/utils/docHelpers.d.ts +92 -0
  23. package/dist/core/utils/docHelpers.d.ts.map +1 -0
  24. package/dist/core/utils/docHelpers.js +138 -0
  25. package/dist/core/utils/docHelpers.js.map +1 -0
  26. package/dist/core/utils/logger.d.ts +102 -0
  27. package/dist/core/utils/logger.d.ts.map +1 -0
  28. package/dist/core/utils/logger.js +353 -0
  29. package/dist/core/utils/logger.js.map +1 -0
  30. package/dist/features/app/api.d.ts +144 -0
  31. package/dist/features/app/api.d.ts.map +1 -0
  32. package/dist/features/app/api.js +231 -0
  33. package/dist/features/app/api.js.map +1 -0
  34. package/dist/{handlers/appHandlers.d.ts → features/app/handlers.d.ts} +9 -7
  35. package/dist/features/app/handlers.d.ts.map +1 -0
  36. package/dist/{handlers/appHandlers.js → features/app/handlers.js} +46 -2
  37. package/dist/{handlers/appHandlers.js.map → features/app/handlers.js.map} +1 -1
  38. package/dist/features/app/index.d.ts +10 -0
  39. package/dist/features/app/index.d.ts.map +1 -0
  40. package/dist/features/app/index.js +14 -0
  41. package/dist/features/app/index.js.map +1 -0
  42. package/dist/features/app/tools.d.ts +11 -0
  43. package/dist/features/app/tools.d.ts.map +1 -0
  44. package/dist/features/app/tools.js +169 -0
  45. package/dist/features/app/tools.js.map +1 -0
  46. package/dist/features/h5Game/api.d.ts +20 -0
  47. package/dist/features/h5Game/api.d.ts.map +1 -0
  48. package/dist/features/h5Game/api.js +16 -0
  49. package/dist/features/h5Game/api.js.map +1 -0
  50. package/dist/features/h5Game/handlers.d.ts +49 -0
  51. package/dist/features/h5Game/handlers.d.ts.map +1 -0
  52. package/dist/features/h5Game/handlers.js +321 -0
  53. package/dist/features/h5Game/handlers.js.map +1 -0
  54. package/dist/features/h5Game/index.d.ts +7 -0
  55. package/dist/features/h5Game/index.d.ts.map +1 -0
  56. package/dist/features/h5Game/index.js +11 -0
  57. package/dist/features/h5Game/index.js.map +1 -0
  58. package/dist/features/h5Game/messages.d.ts +79 -0
  59. package/dist/features/h5Game/messages.d.ts.map +1 -0
  60. package/dist/features/h5Game/messages.js +141 -0
  61. package/dist/features/h5Game/messages.js.map +1 -0
  62. package/dist/features/h5Game/tools.d.ts +14 -0
  63. package/dist/features/h5Game/tools.d.ts.map +1 -0
  64. package/dist/features/h5Game/tools.js +181 -0
  65. package/dist/features/h5Game/tools.js.map +1 -0
  66. package/dist/features/h5Game/types.d.ts +113 -0
  67. package/dist/features/h5Game/types.d.ts.map +1 -0
  68. package/dist/features/h5Game/types.js +2 -0
  69. package/dist/features/h5Game/types.js.map +1 -0
  70. package/dist/{network/leaderboardApi.d.ts → features/leaderboard/api.d.ts} +1 -64
  71. package/dist/features/leaderboard/api.d.ts.map +1 -0
  72. package/dist/{network/leaderboardApi.js → features/leaderboard/api.js} +3 -151
  73. package/dist/features/leaderboard/api.js.map +1 -0
  74. package/dist/{tools/leaderboardTools.d.ts → features/leaderboard/docTools.d.ts} +6 -1
  75. package/dist/features/leaderboard/docTools.d.ts.map +1 -0
  76. package/dist/{tools/leaderboardTools.js → features/leaderboard/docTools.js} +125 -51
  77. package/dist/features/leaderboard/docTools.js.map +1 -0
  78. package/dist/features/leaderboard/docs.d.ts +11 -0
  79. package/dist/features/leaderboard/docs.d.ts.map +1 -0
  80. package/dist/{data/leaderboardDocs.js → features/leaderboard/docs.js} +5 -127
  81. package/dist/features/leaderboard/docs.js.map +1 -0
  82. package/dist/{handlers/leaderboardHandlers.d.ts → features/leaderboard/handlers.d.ts} +1 -1
  83. package/dist/features/leaderboard/handlers.d.ts.map +1 -0
  84. package/dist/{handlers/leaderboardHandlers.js → features/leaderboard/handlers.js} +37 -20
  85. package/dist/features/leaderboard/handlers.js.map +1 -0
  86. package/dist/features/leaderboard/index.d.ts +10 -0
  87. package/dist/features/leaderboard/index.d.ts.map +1 -0
  88. package/dist/features/leaderboard/index.js +27 -0
  89. package/dist/features/leaderboard/index.js.map +1 -0
  90. package/dist/features/leaderboard/resources.d.ts +11 -0
  91. package/dist/features/leaderboard/resources.d.ts.map +1 -0
  92. package/dist/features/leaderboard/resources.js +68 -0
  93. package/dist/features/leaderboard/resources.js.map +1 -0
  94. package/dist/features/leaderboard/tools.d.ts +11 -0
  95. package/dist/features/leaderboard/tools.d.ts.map +1 -0
  96. package/dist/features/leaderboard/tools.js +146 -0
  97. package/dist/features/leaderboard/tools.js.map +1 -0
  98. package/dist/server.js +366 -159
  99. package/dist/server.js.map +1 -1
  100. package/dist/version.d.ts +2 -0
  101. package/dist/version.d.ts.map +1 -0
  102. package/dist/version.js +15 -0
  103. package/dist/version.js.map +1 -0
  104. package/package.json +17 -10
  105. package/dist/auth/deviceFlow.d.ts.map +0 -1
  106. package/dist/auth/deviceFlow.js.map +0 -1
  107. package/dist/config/promptDefinitions.d.ts +0 -19
  108. package/dist/config/promptDefinitions.d.ts.map +0 -1
  109. package/dist/config/promptDefinitions.js +0 -28
  110. package/dist/config/promptDefinitions.js.map +0 -1
  111. package/dist/config/resourceDefinitions.d.ts +0 -19
  112. package/dist/config/resourceDefinitions.d.ts.map +0 -1
  113. package/dist/config/resourceDefinitions.js +0 -93
  114. package/dist/config/resourceDefinitions.js.map +0 -1
  115. package/dist/config/toolDefinitions.d.ts +0 -10
  116. package/dist/config/toolDefinitions.d.ts.map +0 -1
  117. package/dist/config/toolDefinitions.js +0 -250
  118. package/dist/config/toolDefinitions.js.map +0 -1
  119. package/dist/data/leaderboardDocs.d.ts +0 -37
  120. package/dist/data/leaderboardDocs.d.ts.map +0 -1
  121. package/dist/data/leaderboardDocs.js.map +0 -1
  122. package/dist/handlers/appHandlers.d.ts.map +0 -1
  123. package/dist/handlers/environmentHandlers.d.ts.map +0 -1
  124. package/dist/handlers/environmentHandlers.js +0 -21
  125. package/dist/handlers/environmentHandlers.js.map +0 -1
  126. package/dist/handlers/leaderboardHandlers.d.ts.map +0 -1
  127. package/dist/handlers/leaderboardHandlers.js.map +0 -1
  128. package/dist/handlers/promptHandlers.d.ts +0 -26
  129. package/dist/handlers/promptHandlers.d.ts.map +0 -1
  130. package/dist/handlers/promptHandlers.js +0 -336
  131. package/dist/handlers/promptHandlers.js.map +0 -1
  132. package/dist/network/httpClient.d.ts.map +0 -1
  133. package/dist/network/httpClient.js.map +0 -1
  134. package/dist/network/leaderboardApi.d.ts.map +0 -1
  135. package/dist/network/leaderboardApi.js.map +0 -1
  136. package/dist/tools/leaderboardTools.d.ts.map +0 -1
  137. package/dist/tools/leaderboardTools.js.map +0 -1
  138. package/dist/types/index.d.ts +0 -18
  139. package/dist/types/index.d.ts.map +0 -1
  140. package/dist/types/index.js.map +0 -1
  141. package/dist/utils/cache.d.ts.map +0 -1
  142. package/dist/utils/cache.js.map +0 -1
  143. package/dist/utils/logger.d.ts +0 -45
  144. package/dist/utils/logger.d.ts.map +0 -1
  145. package/dist/utils/logger.js +0 -192
  146. package/dist/utils/logger.js.map +0 -1
  147. /package/dist/{handlers → core/handlers}/environmentHandlers.d.ts +0 -0
  148. /package/dist/{types → core/types}/index.js +0 -0
  149. /package/dist/{utils → core/utils}/cache.d.ts +0 -0
  150. /package/dist/{utils → core/utils}/cache.js +0 -0
@@ -0,0 +1,14 @@
1
+ /**
2
+ * H5 Game Tools
3
+ * MCP Tool definitions using unified format (ToolRegistration[])
4
+ *
5
+ * Note: Developer and app listing tools are provided by the app module.
6
+ * Use list_developers_and_apps and select_app from app module for those operations.
7
+ */
8
+ import type { ToolRegistration } from '../../core/types/index.js';
9
+ /**
10
+ * H5 Game Tools - Unified Format
11
+ * Each tool includes both definition and handler in a single object
12
+ */
13
+ export declare const h5GameTools: ToolRegistration[];
14
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/features/h5Game/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AASlE;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,gBAAgB,EA2KzC,CAAC"}
@@ -0,0 +1,181 @@
1
+ /**
2
+ * H5 Game Tools
3
+ * MCP Tool definitions using unified format (ToolRegistration[])
4
+ *
5
+ * Note: Developer and app listing tools are provided by the app module.
6
+ * Use list_developers_and_apps and select_app from app module for those operations.
7
+ */
8
+ import { TOOL_DESCRIPTION } from './messages.js';
9
+ import { handleGatherGameInfo, handleUploadGame, handleCreateApp, handleEditApp, } from './handlers.js';
10
+ /**
11
+ * H5 Game Tools - Unified Format
12
+ * Each tool includes both definition and handler in a single object
13
+ */
14
+ export const h5GameTools = [
15
+ // 1. 收集 H5 游戏信息
16
+ {
17
+ definition: {
18
+ name: 'h5_game_info_gatherer',
19
+ description: `
20
+ [H5 Game Upload Workflow - Step 1]
21
+ Use this tool when user wants to publish/upload/deploy H5 game ('发布', '上传', '部署').
22
+
23
+ This tool will:
24
+ 1. Verify the game project directory (must contain index.html)
25
+ 2. Auto-select developer/app if only one exists
26
+ 3. Show developer/app list if multiple exist (user can provide developerId/appId to select)
27
+ 4. Use cached selection if available
28
+
29
+ After gathering info, use h5_game_uploader to upload the game.
30
+
31
+ Note: For general app management (not H5 upload), use list_developers_and_apps and select_app instead.
32
+ `,
33
+ inputSchema: {
34
+ type: 'object',
35
+ properties: {
36
+ projectPath: {
37
+ type: 'string',
38
+ description: 'The absolute path to the H5 game project directory (must contain index.html)',
39
+ },
40
+ genre: {
41
+ type: 'string',
42
+ description: TOOL_DESCRIPTION.GENRE_DESCRIPTION,
43
+ },
44
+ developerName: {
45
+ type: 'string',
46
+ description: 'The name of the developer, if not provided, can be empty',
47
+ },
48
+ developerId: {
49
+ type: 'number',
50
+ description: 'The developer id of the developer, if not provided, can be empty',
51
+ },
52
+ appId: {
53
+ type: 'number',
54
+ description: 'The app id of the game, if not provided, can be empty',
55
+ },
56
+ },
57
+ },
58
+ },
59
+ handler: async (args) => {
60
+ return await handleGatherGameInfo(args);
61
+ },
62
+ },
63
+ // 2. 上传 H5 游戏
64
+ {
65
+ definition: {
66
+ name: 'h5_game_uploader',
67
+ description: `
68
+ When the user confirms the game information from h5_game_info_gatherer, or has previously confirmed it.
69
+ Please use this tool to upload the H5 game to TapTap platform.
70
+ `,
71
+ inputSchema: {
72
+ type: 'object',
73
+ properties: {
74
+ projectPath: {
75
+ type: 'string',
76
+ description: 'The absolute path to the H5 game project directory (must contain index.html)',
77
+ },
78
+ genre: {
79
+ type: 'string',
80
+ description: TOOL_DESCRIPTION.GENRE_DESCRIPTION,
81
+ },
82
+ developerName: {
83
+ type: 'string',
84
+ description: 'The name of the developer, if not provided, can be empty',
85
+ },
86
+ developerId: {
87
+ type: 'number',
88
+ description: 'The developer id of the developer',
89
+ },
90
+ appId: {
91
+ type: 'number',
92
+ description: 'The app id of the game',
93
+ },
94
+ appName: {
95
+ type: 'string',
96
+ description: 'The name of the app, if not provided, can be empty',
97
+ },
98
+ },
99
+ },
100
+ },
101
+ handler: async (args) => {
102
+ return await handleUploadGame(args);
103
+ },
104
+ },
105
+ // 3. 创建 H5 游戏
106
+ {
107
+ definition: {
108
+ name: 'h5_create_app',
109
+ description: 'User wants to create a new H5 game on TapTap platform',
110
+ inputSchema: {
111
+ type: 'object',
112
+ properties: {
113
+ developerId: {
114
+ type: 'number',
115
+ description: 'The developer id of the app. Leave empty if the user has not specified a particular ID',
116
+ },
117
+ appName: {
118
+ type: 'string',
119
+ description: 'The name of the app',
120
+ },
121
+ genre: {
122
+ type: 'string',
123
+ description: TOOL_DESCRIPTION.GENRE_DESCRIPTION,
124
+ },
125
+ },
126
+ },
127
+ },
128
+ handler: async (args) => {
129
+ return await handleCreateApp(args);
130
+ },
131
+ },
132
+ // 5. 编辑 H5 游戏
133
+ {
134
+ definition: {
135
+ name: 'h5_edit_app',
136
+ description: "User wants to edit the H5 game's name, genre, description, chatting_label, chatting_number, screen_orientation on TapTap platform",
137
+ inputSchema: {
138
+ type: 'object',
139
+ properties: {
140
+ developerId: {
141
+ type: 'number',
142
+ description: 'The developer id of the app',
143
+ },
144
+ appId: {
145
+ type: 'number',
146
+ description: 'The app id of the game',
147
+ },
148
+ appName: {
149
+ type: 'string',
150
+ description: 'The name of the app, if not provided, can be empty',
151
+ },
152
+ genre: {
153
+ type: 'string',
154
+ description: TOOL_DESCRIPTION.GENRE_DESCRIPTION,
155
+ },
156
+ description: {
157
+ type: 'string',
158
+ description: 'The description of the craft, if not provided, can be empty',
159
+ },
160
+ chattingLabel: {
161
+ type: 'string',
162
+ description: 'The name of the QQ group, if not provided, can be empty',
163
+ },
164
+ chattingNumber: {
165
+ type: 'string',
166
+ description: 'The number of the QQ group, if not provided, can be empty',
167
+ },
168
+ screenOrientation: {
169
+ type: 'number',
170
+ description: 'The screen orientation of the app, 1: vertical, 2: horizontal, if not provided, can be empty',
171
+ },
172
+ },
173
+ required: ['developerId', 'appId'],
174
+ },
175
+ },
176
+ handler: async (args) => {
177
+ return await handleEditApp(args);
178
+ },
179
+ },
180
+ ];
181
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/features/h5Game/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Tap 开发者身份信息
3
+ */
4
+ export interface TapDeveloperInfo {
5
+ /** 游戏列表 */
6
+ levels: TapAppItem[];
7
+ /** 开发者 ID */
8
+ developer_id: number;
9
+ /** 开发者名称 */
10
+ developer_name: string;
11
+ /** 是否已认证 */
12
+ is_certified: boolean;
13
+ }
14
+ /**
15
+ * H5 游戏信息
16
+ */
17
+ export interface TapAppItem {
18
+ /** 游戏 ID */
19
+ app_id: number;
20
+ /** 分类 */
21
+ category: string;
22
+ /** 游戏标题 */
23
+ app_title: string;
24
+ /** 是否已发布 */
25
+ is_published: boolean;
26
+ }
27
+ /**
28
+ * 上传参数
29
+ */
30
+ export interface UploadParams {
31
+ /** 上传包 ID */
32
+ h5_package_id: number;
33
+ /** 上传 URL */
34
+ url: string;
35
+ /** 上传方法 */
36
+ method: string;
37
+ /** 上传头 */
38
+ headers: Record<string, string>;
39
+ }
40
+ /**
41
+ * 创建开发者身份响应
42
+ */
43
+ export interface CreateDeveloperResponse {
44
+ /** 开发者名称 */
45
+ developer_name: string;
46
+ /** 开发者 ID */
47
+ developer_id: number;
48
+ }
49
+ /**
50
+ * 创建游戏响应
51
+ */
52
+ export interface CreateAppResponse {
53
+ /** 应用 ID */
54
+ app_id: number;
55
+ /** 应用标题 */
56
+ app_title: string;
57
+ /** 显示应用标题 */
58
+ display_app_title: string;
59
+ }
60
+ /**
61
+ * 编辑游戏响应
62
+ */
63
+ export interface EditAppResponse {
64
+ /** 游戏标题 */
65
+ app_title?: string;
66
+ /** 显示应用标题 */
67
+ display_app_title?: string;
68
+ }
69
+ /**
70
+ * 游戏详情响应
71
+ */
72
+ export interface AppDetailAPIResponse {
73
+ /** 游戏详情 */
74
+ level?: {
75
+ /** 显示应用标题 */
76
+ display_app_title?: string;
77
+ /** 开发者 ID */
78
+ developer_id?: number;
79
+ /** 开发者名称 */
80
+ developer_name?: string;
81
+ };
82
+ /** 上传游戏详情 */
83
+ upload_level?: {
84
+ /** 游戏 ID */
85
+ app_id: number;
86
+ /** 表单数据 */
87
+ form_data: {
88
+ /** 游戏信息 */
89
+ info: {
90
+ /** 游戏标题 */
91
+ title: string;
92
+ };
93
+ };
94
+ };
95
+ }
96
+ /**
97
+ * 游戏状态响应
98
+ */
99
+ export interface AppStatusResponse {
100
+ /** 审核状态:0-未发布,1-审核中,2-审核失败,3-已上线 */
101
+ review_status: number;
102
+ }
103
+ /**
104
+ * App 详情
105
+ */
106
+ export interface AppDetail {
107
+ appId: number;
108
+ appTitle: string;
109
+ displayAppTitle: string;
110
+ developerId: number;
111
+ developerName: string;
112
+ }
113
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/features/h5Game/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,WAAW;IACX,MAAM,EAAE,UAAU,EAAE,CAAC;IAErB,aAAa;IACb,YAAY,EAAE,MAAM,CAAC;IAErB,YAAY;IACZ,cAAc,EAAE,MAAM,CAAC;IAEvB,YAAY;IACZ,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,YAAY;IACZ,MAAM,EAAE,MAAM,CAAC;IAEf,SAAS;IACT,QAAQ,EAAE,MAAM,CAAC;IAEjB,WAAW;IACX,SAAS,EAAE,MAAM,CAAC;IAElB,YAAY;IACZ,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,aAAa;IACb,aAAa,EAAE,MAAM,CAAC;IAEtB,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW;IACX,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU;IACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,YAAY;IACZ,cAAc,EAAE,MAAM,CAAC;IAEvB,aAAa;IACb,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY;IACZ,MAAM,EAAE,MAAM,CAAC;IAEf,WAAW;IACX,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa;IACb,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,WAAW;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,aAAa;IACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,WAAW;IACX,KAAK,CAAC,EAAE;QACN,aAAa;QACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,aAAa;QACb,YAAY,CAAC,EAAE,MAAM,CAAC;QAEtB,YAAY;QACZ,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF,aAAa;IACb,YAAY,CAAC,EAAE;QACb,YAAY;QACZ,MAAM,EAAE,MAAM,CAAC;QAEf,WAAW;QACX,SAAS,EAAE;YACT,WAAW;YACX,IAAI,EAAE;gBACJ,WAAW;gBACX,KAAK,EAAE,MAAM,CAAC;aACf,CAAC;SACH,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/features/h5Game/types.ts"],"names":[],"mappings":""}
@@ -2,7 +2,6 @@
2
2
  * TapTap Leaderboard Management API
3
3
  * Server-side leaderboard operations
4
4
  */
5
- import { AppCacheInfo } from '../utils/cache.js';
6
5
  /**
7
6
  * Period types for leaderboard
8
7
  * WARNING: 0 = UNSPECIFIED (invalid), do NOT use 0!
@@ -73,68 +72,6 @@ export interface CreateLeaderboardResponse {
73
72
  * @returns Created leaderboard information
74
73
  */
75
74
  export declare function createLeaderboard(params: CreateLeaderboardParams): Promise<CreateLeaderboardResponse>;
76
- /**
77
- * Craft/App item in developer list
78
- */
79
- export interface CraftItem {
80
- app_id: number;
81
- app_title: string;
82
- miniapp_id?: string;
83
- category?: string;
84
- is_published?: boolean;
85
- }
86
- /**
87
- * Developer with levels/apps list
88
- */
89
- export interface DeveloperCraftList {
90
- developer_id: number;
91
- developer_name: string;
92
- levels: CraftItem[];
93
- crafts?: CraftItem[];
94
- }
95
- /**
96
- * Level list response
97
- */
98
- export interface LevelListResponse {
99
- list: DeveloperCraftList[];
100
- }
101
- /**
102
- * Selection required error - thrown when multiple options exist
103
- */
104
- export declare class SelectionRequiredError extends Error {
105
- readonly developers: DeveloperCraftList[];
106
- constructor(message: string, developers: DeveloperCraftList[]);
107
- }
108
- /**
109
- * Get app/level list information for current user
110
- * Returns all developers and their apps/games
111
- * @param projectPath - Optional project path for cache lookup
112
- * @param autoSelect - If true, automatically selects first option. If false, throws SelectionRequiredError when multiple options exist
113
- * @returns App information including developer_id and app_id
114
- * @throws SelectionRequiredError when multiple developers/apps exist and autoSelect is false
115
- */
116
- export declare function getAppInfo(projectPath?: string, autoSelect?: boolean): Promise<AppCacheInfo>;
117
- /**
118
- * Get or fetch app information with automatic caching
119
- * @param projectPath - Optional project path
120
- * @param autoSelect - If true, automatically selects first option. If false, throws SelectionRequiredError when multiple options exist
121
- * @returns App information from cache or API
122
- * @throws SelectionRequiredError when multiple developers/apps exist and autoSelect is false
123
- */
124
- export declare function ensureAppInfo(projectPath?: string, autoSelect?: boolean): Promise<AppCacheInfo>;
125
- /**
126
- * Select and cache a specific developer and app
127
- * @param developerId - Developer ID to select
128
- * @param appId - App ID to select
129
- * @param projectPath - Optional project path for cache storage
130
- * @returns Selected app information
131
- */
132
- export declare function selectApp(developerId: number, appId: number, projectPath?: string): Promise<AppCacheInfo>;
133
- /**
134
- * Get all developers and apps for selection
135
- * @returns List of all developers and their apps
136
- */
137
- export declare function getAllDevelopersAndApps(): Promise<LevelListResponse>;
138
75
  /**
139
76
  * Leaderboard item in list
140
77
  */
@@ -216,4 +153,4 @@ export declare const EnumDescriptions: {
216
153
  3: string;
217
154
  };
218
155
  };
219
- //# sourceMappingURL=leaderboardApi.d.ts.map
156
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/features/leaderboard/api.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  * TapTap Leaderboard Management API
3
3
  * Server-side leaderboard operations
4
4
  */
5
- import { HttpClient } from './httpClient.js';
6
- import { readAppCache, saveAppCache } from '../utils/cache.js';
5
+ import { HttpClient } from '../../core/network/httpClient.js';
6
+ import { ensureAppInfo } from '../app/api.js';
7
7
  /**
8
8
  * Period types for leaderboard
9
9
  * WARNING: 0 = UNSPECIFIED (invalid), do NOT use 0!
@@ -91,154 +91,6 @@ export async function createLeaderboard(params) {
91
91
  throw new Error(`Failed to create leaderboard: ${String(error)}`);
92
92
  }
93
93
  }
94
- /**
95
- * Selection required error - thrown when multiple options exist
96
- */
97
- export class SelectionRequiredError extends Error {
98
- constructor(message, developers) {
99
- super(message);
100
- this.developers = developers;
101
- this.name = 'SelectionRequiredError';
102
- }
103
- }
104
- /**
105
- * Get app/level list information for current user
106
- * Returns all developers and their apps/games
107
- * @param projectPath - Optional project path for cache lookup
108
- * @param autoSelect - If true, automatically selects first option. If false, throws SelectionRequiredError when multiple options exist
109
- * @returns App information including developer_id and app_id
110
- * @throws SelectionRequiredError when multiple developers/apps exist and autoSelect is false
111
- */
112
- export async function getAppInfo(projectPath, autoSelect = true) {
113
- const client = new HttpClient();
114
- try {
115
- const response = await client.get('/level/v1/list');
116
- // Get first developer and first app by default
117
- if (!response.list || response.list.length === 0) {
118
- throw new Error('No developers or apps found for current user');
119
- }
120
- // Count total developers and apps
121
- const totalDevelopers = response.list.length;
122
- const totalApps = response.list.reduce((sum, dev) => sum + (dev.levels?.length || dev.crafts?.length || 0), 0);
123
- // If multiple options exist and autoSelect is false, throw error for AI to decide
124
- if (!autoSelect && (totalDevelopers > 1 || totalApps > 1)) {
125
- let errorMsg = `Multiple options found:\n`;
126
- errorMsg += `- ${totalDevelopers} developer(s)\n`;
127
- errorMsg += `- ${totalApps} app(s) in total\n\n`;
128
- errorMsg += `Please use 'list_developers_and_apps' tool to see all options and 'select_app' to make a selection.`;
129
- throw new SelectionRequiredError(errorMsg, response.list);
130
- }
131
- const firstDeveloper = response.list[0];
132
- // Support both 'levels' (actual API response) and 'crafts' (backward compatibility)
133
- const apps = firstDeveloper.levels || firstDeveloper.crafts || [];
134
- if (apps.length === 0) {
135
- throw new Error(`Developer ${firstDeveloper.developer_name} has no apps/games`);
136
- }
137
- const firstApp = apps[0];
138
- const appInfo = {
139
- developer_id: firstDeveloper.developer_id,
140
- developer_name: firstDeveloper.developer_name,
141
- app_id: firstApp.app_id,
142
- app_title: firstApp.app_title,
143
- miniapp_id: firstApp.miniapp_id
144
- };
145
- // Save to cache
146
- saveAppCache(appInfo, projectPath);
147
- return appInfo;
148
- }
149
- catch (error) {
150
- // Re-throw SelectionRequiredError
151
- if (error instanceof SelectionRequiredError) {
152
- throw error;
153
- }
154
- // If API fails, try to use cached data
155
- const cached = readAppCache(projectPath);
156
- if (cached?.developer_id && cached?.app_id) {
157
- return cached;
158
- }
159
- if (error instanceof Error) {
160
- throw new Error(`Failed to get app info: ${error.message}`);
161
- }
162
- throw new Error(`Failed to get app info: ${String(error)}`);
163
- }
164
- }
165
- /**
166
- * Get or fetch app information with automatic caching
167
- * @param projectPath - Optional project path
168
- * @param autoSelect - If true, automatically selects first option. If false, throws SelectionRequiredError when multiple options exist
169
- * @returns App information from cache or API
170
- * @throws SelectionRequiredError when multiple developers/apps exist and autoSelect is false
171
- */
172
- export async function ensureAppInfo(projectPath, autoSelect = true) {
173
- // Check cache first
174
- const cached = readAppCache(projectPath);
175
- if (cached?.developer_id && cached?.app_id) {
176
- return cached;
177
- }
178
- // No cache, fetch from API
179
- return await getAppInfo(projectPath, autoSelect);
180
- }
181
- /**
182
- * Select and cache a specific developer and app
183
- * @param developerId - Developer ID to select
184
- * @param appId - App ID to select
185
- * @param projectPath - Optional project path for cache storage
186
- * @returns Selected app information
187
- */
188
- export async function selectApp(developerId, appId, projectPath) {
189
- const client = new HttpClient();
190
- try {
191
- // Fetch full list to validate selection
192
- const response = await client.get('/level/v1/list');
193
- if (!response.list || response.list.length === 0) {
194
- throw new Error('No developers or apps found for current user');
195
- }
196
- // Find the selected developer and app
197
- const developer = response.list.find(dev => dev.developer_id === developerId);
198
- if (!developer) {
199
- throw new Error(`Developer with ID ${developerId} not found`);
200
- }
201
- // Support both 'levels' (actual API response) and 'crafts' (backward compatibility)
202
- const apps = developer.levels || developer.crafts || [];
203
- const app = apps.find(craft => craft.app_id === appId);
204
- if (!app) {
205
- throw new Error(`App with ID ${appId} not found for developer ${developer.developer_name}`);
206
- }
207
- const appInfo = {
208
- developer_id: developer.developer_id,
209
- developer_name: developer.developer_name,
210
- app_id: app.app_id,
211
- app_title: app.app_title,
212
- miniapp_id: app.miniapp_id
213
- };
214
- // Save to cache
215
- saveAppCache(appInfo, projectPath);
216
- return appInfo;
217
- }
218
- catch (error) {
219
- if (error instanceof Error) {
220
- throw new Error(`Failed to select app: ${error.message}`);
221
- }
222
- throw new Error(`Failed to select app: ${String(error)}`);
223
- }
224
- }
225
- /**
226
- * Get all developers and apps for selection
227
- * @returns List of all developers and their apps
228
- */
229
- export async function getAllDevelopersAndApps() {
230
- const client = new HttpClient();
231
- try {
232
- const response = await client.get('/level/v1/list');
233
- return response;
234
- }
235
- catch (error) {
236
- if (error instanceof Error) {
237
- throw new Error(`Failed to get developers and apps list: ${error.message}`);
238
- }
239
- throw new Error(`Failed to get developers and apps list: ${String(error)}`);
240
- }
241
- }
242
94
  /**
243
95
  * List all leaderboards for a specific app
244
96
  * @param params - Query parameters (developer_id and app_id will be auto-filled if not provided)
@@ -344,4 +196,4 @@ export const EnumDescriptions = {
344
196
  [CalcType.LATEST]: 'Latest/最新分 (keep latest score)'
345
197
  }
346
198
  };
347
- //# sourceMappingURL=leaderboardApi.js.map
199
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/features/leaderboard/api.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,10 @@ declare function getQuickStartGuide(): Promise<string>;
49
49
  * Get current app information from cache
50
50
  */
51
51
  declare function getCurrentAppInfo(): Promise<string>;
52
+ /**
53
+ * Get complete integration workflow guide
54
+ */
55
+ declare function getIntegrationWorkflow(): Promise<string>;
52
56
  export declare const leaderboardTools: {
53
57
  getLeaderboardManager: typeof getLeaderboardManager;
54
58
  openLeaderboard: typeof openLeaderboard;
@@ -61,6 +65,7 @@ export declare const leaderboardTools: {
61
65
  getLeaderboardPatterns: typeof getLeaderboardPatterns;
62
66
  getQuickStartGuide: typeof getQuickStartGuide;
63
67
  getCurrentAppInfo: typeof getCurrentAppInfo;
68
+ getIntegrationWorkflow: typeof getIntegrationWorkflow;
64
69
  };
65
70
  export {};
66
- //# sourceMappingURL=leaderboardTools.d.ts.map
71
+ //# sourceMappingURL=docTools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docTools.d.ts","sourceRoot":"","sources":["../../../src/features/leaderboard/docTools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,UAAU,QAAQ;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID;;GAEG;AACH,iBAAe,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEtD;AAED;;GAEG;AACH,iBAAe,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAEhD;AAED;;GAEG;AACH,iBAAe,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAE7C;AAED;;GAEG;AACH,iBAAe,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEtD;AAED;;GAEG;AACH,iBAAe,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvD;AAED;;GAEG;AACH,iBAAe,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AA8BD;;GAEG;AACH,iBAAe,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBpE;AAED;;GAEG;AACH,iBAAe,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvD;AAED;;GAEG;AACH,iBAAe,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvD;AAED;;GAEG;AACH,iBAAe,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CA+InD;AAED;;GAEG;AACH,iBAAe,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CA4DlD;AAED;;GAEG;AACH,iBAAe,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAgFvD;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;CAgB5B,CAAC"}