@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
@@ -64,12 +64,38 @@ export class DeviceFlowAuth {
64
64
  process.stderr.write(`⚠️ Invalid token file: ${this.tokenPath}\n`);
65
65
  }
66
66
  }
67
- // 3. Start Device Code Flow
68
- process.stderr.write('\n🔐 No valid authentication found, starting OAuth flow...\n\n');
69
- return await this.startDeviceFlow();
67
+ // 3. No token found - generate auth URL and throw immediately (non-blocking!)
68
+ process.stderr.write('\n🔐 No valid authentication found, generating authorization URL...\n\n');
69
+ // Get device code
70
+ const deviceCodeData = await this.requestDeviceCode();
71
+ // Generate authorization URL
72
+ const authUrl = this.config.qrcodeBaseUrl + encodeURIComponent(deviceCodeData.qrcode_url);
73
+ // Output to stderr for terminal users
74
+ process.stderr.write(`🔗 授权链接: ${authUrl}\n\n`);
75
+ // Throw error with URL (for MCP clients like Claude Code)
76
+ throw new Error(`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n` +
77
+ `🔐 TapTap 授权登录\n` +
78
+ `━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n` +
79
+ `请在浏览器中打开以下链接完成授权:\n\n` +
80
+ `🔗 ${authUrl}\n\n` +
81
+ `授权步骤:\n` +
82
+ `1. 点击或复制上面的链接\n` +
83
+ `2. 在浏览器中打开\n` +
84
+ `3. 使用 TapTap App 扫描二维码\n` +
85
+ `4. 授权成功后,重新执行此操作\n\n` +
86
+ `💾 Token 将自动保存到: ${this.tokenPath}\n` +
87
+ `━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━`);
88
+ }
89
+ /**
90
+ * Get authorization URL (for manual auth flow)
91
+ */
92
+ async getAuthorizationUrl() {
93
+ const deviceCodeData = await this.requestDeviceCode();
94
+ const authUrl = this.config.qrcodeBaseUrl + encodeURIComponent(deviceCodeData.qrcode_url);
95
+ return authUrl;
70
96
  }
71
97
  /**
72
- * Start Device Code Flow
98
+ * Start Device Code Flow (blocking version for terminal use)
73
99
  */
74
100
  async startDeviceFlow() {
75
101
  // Step 1: Get device code
@@ -128,9 +154,9 @@ export class DeviceFlowAuth {
128
154
  process.stderr.write('━'.repeat(80) + '\n\n');
129
155
  }
130
156
  /**
131
- * Poll for access token
157
+ * Poll for access token with progress callback
132
158
  */
133
- async pollForToken() {
159
+ async pollForToken(onProgress) {
134
160
  const url = `https://${this.config.authHost}/oauth2/v1/token`;
135
161
  let attempts = 0;
136
162
  const maxAttempts = 60; // 最多等待 2 分钟(60 * 2s)
@@ -156,6 +182,12 @@ export class DeviceFlowAuth {
156
182
  if (json.success === true && json.data) {
157
183
  // Authorization successful
158
184
  this.deviceCode = '';
185
+ if (onProgress) {
186
+ await onProgress({
187
+ type: 'success',
188
+ message: '✅ 授权成功!Token 已保存'
189
+ });
190
+ }
159
191
  return {
160
192
  kid: json.data.kid,
161
193
  mac_key: json.data.mac_key,
@@ -167,29 +199,67 @@ export class DeviceFlowAuth {
167
199
  const error = json.data?.error;
168
200
  if (error === 'authorization_pending' || error === 'authorization_waiting') {
169
201
  // Still waiting for user authorization
202
+ const elapsed = attempts * 2;
203
+ const remaining = (maxAttempts - attempts) * 2;
170
204
  if (attempts % 5 === 0) {
171
- process.stderr.write(`⏳ 仍在等待授权... (${attempts * 2}秒)\n`);
205
+ process.stderr.write(`⏳ 仍在等待授权... (${elapsed}秒)\n`);
206
+ if (onProgress) {
207
+ await onProgress({
208
+ type: 'polling',
209
+ message: `⏳ 等待授权中... 已等待 ${elapsed} 秒,剩余 ${remaining} 秒超时`,
210
+ elapsed,
211
+ remaining
212
+ });
213
+ }
172
214
  }
173
215
  continue;
174
216
  }
175
217
  // Other errors
176
218
  if (error === 'expired_token') {
177
- throw new Error('授权码已过期,请重新启动服务器');
219
+ const errorMsg = '❌ 授权码已过期,请重新调用工具获取新的授权链接';
220
+ if (onProgress) {
221
+ await onProgress({
222
+ type: 'error',
223
+ message: errorMsg
224
+ });
225
+ }
226
+ throw new Error(errorMsg);
178
227
  }
179
228
  if (error === 'access_denied') {
180
- throw new Error('用户拒绝授权');
229
+ const errorMsg = '用户拒绝授权';
230
+ if (onProgress) {
231
+ await onProgress({
232
+ type: 'error',
233
+ message: errorMsg
234
+ });
235
+ }
236
+ throw new Error(errorMsg);
181
237
  }
182
- throw new Error(`授权失败: ${json.data?.error_description || error || 'Unknown error'}`);
238
+ const errorMsg = `❌ 授权失败: ${json.data?.error_description || error || 'Unknown error'}`;
239
+ if (onProgress) {
240
+ await onProgress({
241
+ type: 'error',
242
+ message: errorMsg
243
+ });
244
+ }
245
+ throw new Error(errorMsg);
183
246
  }
184
247
  catch (error) {
185
- if (error instanceof Error && error.message.includes('授权')) {
248
+ if (error instanceof Error && error.message.includes('')) {
186
249
  throw error;
187
250
  }
188
251
  // Network error, continue polling
189
252
  continue;
190
253
  }
191
254
  }
192
- throw new Error('授权超时,请重新启动服务器');
255
+ const timeoutMsg = '⏰ 授权超时(2分钟)。请重新调用工具获取新的授权链接。';
256
+ if (onProgress) {
257
+ await onProgress({
258
+ type: 'timeout',
259
+ message: timeoutMsg
260
+ });
261
+ }
262
+ throw new Error(timeoutMsg);
193
263
  }
194
264
  /**
195
265
  * Save token to local file
@@ -211,6 +281,54 @@ export class DeviceFlowAuth {
211
281
  process.stderr.write(`⚠️ Failed to save token: ${error instanceof Error ? error.message : String(error)}\n`);
212
282
  }
213
283
  }
284
+ /**
285
+ * Start auto authorization with progress callback
286
+ * For SSE mode: polls for authorization and reports progress
287
+ */
288
+ async startAutoAuthorization(onProgress) {
289
+ // Get device code
290
+ const deviceCodeData = await this.requestDeviceCode();
291
+ const authUrl = this.config.qrcodeBaseUrl + encodeURIComponent(deviceCodeData.qrcode_url);
292
+ // Send authorization URL to client
293
+ if (onProgress) {
294
+ await onProgress({
295
+ type: 'auth_url',
296
+ message: '🔐 需要 TapTap 授权。请在浏览器中打开以下链接完成授权:',
297
+ authUrl
298
+ });
299
+ }
300
+ // Output to stderr for terminal users
301
+ process.stderr.write(`\n🔗 授权链接: ${authUrl}\n`);
302
+ process.stderr.write('⏳ 自动等待授权中...\n\n');
303
+ // Poll for token with progress
304
+ this.macToken = await this.pollForToken(onProgress);
305
+ // Save to local file
306
+ this.saveToken(this.macToken);
307
+ process.stderr.write('\n✅ 授权成功!Token 已保存\n');
308
+ process.stderr.write(`📁 Token 位置: ${this.tokenPath}\n\n`);
309
+ // Clear device code
310
+ this.deviceCode = '';
311
+ return this.macToken;
312
+ }
313
+ /**
314
+ * Complete authorization by polling for token
315
+ * Call this after user has completed authorization in browser
316
+ */
317
+ async completeAuthorization() {
318
+ if (!this.deviceCode) {
319
+ throw new Error('No pending authorization. Please call a tool that requires authentication first to get the authorization URL.');
320
+ }
321
+ process.stderr.write('⏳ Polling for authorization result...\n');
322
+ // Poll for token (with timeout)
323
+ this.macToken = await this.pollForToken();
324
+ // Save to local file
325
+ this.saveToken(this.macToken);
326
+ process.stderr.write('\n✅ 授权成功!Token 已保存\n');
327
+ process.stderr.write(`📁 Token 位置: ${this.tokenPath}\n\n`);
328
+ // Clear device code
329
+ this.deviceCode = '';
330
+ return this.macToken;
331
+ }
214
332
  /**
215
333
  * Get current MAC token
216
334
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deviceFlow.js","sourceRoot":"","sources":["../../../src/core/auth/deviceFlow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Application Management Handlers (DEPRECATED - moved to features/app)
3
+ * @deprecated Use handlers from features/app/handlers.ts instead
4
+ *
5
+ * This file is kept for backward compatibility only.
6
+ * All app management logic has been moved to the app feature module.
7
+ */
8
+ export { listDevelopersAndApps, selectApp } from '../../features/app/handlers.js';
9
+ //# sourceMappingURL=appHandlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appHandlers.d.ts","sourceRoot":"","sources":["../../../src/core/handlers/appHandlers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Application Management Handlers (DEPRECATED - moved to features/app)
3
+ * @deprecated Use handlers from features/app/handlers.ts instead
4
+ *
5
+ * This file is kept for backward compatibility only.
6
+ * All app management logic has been moved to the app feature module.
7
+ */
8
+ export { listDevelopersAndApps, selectApp } from '../../features/app/handlers.js';
9
+ //# sourceMappingURL=appHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appHandlers.js","sourceRoot":"","sources":["../../../src/core/handlers/appHandlers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environmentHandlers.d.ts","sourceRoot":"","sources":["../../../src/core/handlers/environmentHandlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAkD/E"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Environment Check Handlers
3
+ * Handles environment variable checking and validation
4
+ */
5
+ import { ApiConfig } from '../network/httpClient.js';
6
+ import * as fs from 'node:fs';
7
+ import * as os from 'node:os';
8
+ import * as path from 'node:path';
9
+ /**
10
+ * Check environment configuration and authentication status
11
+ */
12
+ export async function checkEnvironment(context) {
13
+ const apiConfig = ApiConfig.getInstance();
14
+ // Check if token exists (env var OR local file)
15
+ let hasMacToken = !!(apiConfig.macToken.kid && apiConfig.macToken.mac_key);
16
+ let tokenSource = '';
17
+ if (hasMacToken) {
18
+ tokenSource = '(环境变量)';
19
+ }
20
+ else {
21
+ // Check if token file exists
22
+ try {
23
+ const tokenPath = path.join(os.homedir(), '.config', 'taptap-minigame', 'token.json');
24
+ if (fs.existsSync(tokenPath)) {
25
+ hasMacToken = true;
26
+ tokenSource = '(本地文件)';
27
+ }
28
+ }
29
+ catch (error) {
30
+ // Ignore file check errors
31
+ }
32
+ }
33
+ const configStatus = apiConfig.getConfigStatus();
34
+ // Override MAC Token status if found in local file
35
+ if (hasMacToken && tokenSource === '(本地文件)') {
36
+ configStatus['TDS_MCP_MAC_TOKEN'] = `✅ 已配置 ${tokenSource}`;
37
+ }
38
+ const envInfo = {
39
+ ...configStatus,
40
+ 'TAPTAP_PROJECT_PATH': context.projectPath ? '✅ 已配置' : '❌ 未配置 (可选)'
41
+ };
42
+ const envResult = Object.entries(envInfo)
43
+ .map(([key, value]) => `${key}: ${value}`)
44
+ .join('\n');
45
+ let statusMessage = '';
46
+ if (hasMacToken) {
47
+ statusMessage = '\n✅ 认证配置完整,可以使用所有功能';
48
+ }
49
+ else {
50
+ statusMessage = '\n⚠️ MAC Token 未配置\n' +
51
+ ' 📖 文档功能可用(Resources, Prompts, 搜索等)\n' +
52
+ ' 🔐 管理功能需要授权(创建排行榜、列表等)\n' +
53
+ ' 💡 首次调用管理工具时将自动触发 OAuth 授权流程';
54
+ }
55
+ return `🔧 环境配置检查结果:\n\n${envResult}${statusMessage}`;
56
+ }
57
+ //# sourceMappingURL=environmentHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environmentHandlers.js","sourceRoot":"","sources":["../../../src/core/handlers/environmentHandlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AASlC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAAuB;IAC5D,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAE1C,gDAAgD;IAChD,IAAI,WAAW,GAAY,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpF,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,GAAG,QAAQ,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,6BAA6B;QAC7B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAC;YAEtF,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,WAAW,GAAG,IAAI,CAAC;gBACnB,WAAW,GAAG,QAAQ,CAAC;YACzB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2BAA2B;QAC7B,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,SAAS,CAAC,eAAe,EAAE,CAAC;IAEjD,mDAAmD;IACnD,IAAI,WAAW,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;QAC5C,YAAY,CAAC,mBAAmB,CAAC,GAAG,SAAS,WAAW,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,OAAO,GAAG;QACd,GAAG,YAAY;QACf,qBAAqB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY;KACpE,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,KAAK,EAAE,CAAC;SACzC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,WAAW,EAAE,CAAC;QAChB,aAAa,GAAG,qBAAqB,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,aAAa,GAAG,uBAAuB;YACxB,yCAAyC;YACzC,6BAA6B;YAC7B,iCAAiC,CAAC;IACnD,CAAC;IAED,OAAO,mBAAmB,SAAS,GAAG,aAAa,EAAE,CAAC;AACxD,CAAC"}
@@ -22,6 +22,10 @@ export declare class ApiConfig {
22
22
  setMacToken(token: MacToken): void;
23
23
  isConfigured(): boolean;
24
24
  getConfigStatus(): Record<string, string>;
25
+ /**
26
+ * Get current environment
27
+ */
28
+ getEnvironment(): 'rnd' | 'production';
25
29
  }
26
30
  /**
27
31
  * HTTP request options
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpClient.d.ts","sourceRoot":"","sources":["../../../src/core/network/httpClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAY;IAE5B,QAAQ,EAAE,QAAQ,CAAC;IAC1B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,WAAW,EAAE,KAAK,GAAG,YAAY,CAAC;IAElD,OAAO;IAiCP,OAAO,CAAC,cAAc;WAiBR,WAAW,IAAI,SAAS;IAOtC;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAIlC,YAAY,IAAI,OAAO;IAIvB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAShD;;OAEG;IACI,cAAc,IAAI,KAAK,GAAG,YAAY;CAG9C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAY;;IAM1B;;OAEG;IACG,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,CAAC,CAAC;IAI9E;;OAEG;IACG,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,CAAC,CAAC;IAI/E;;OAEG;YACW,OAAO;IAgMrB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAmBhC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAsBzB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAuBtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,UAAU,IAAI,MAAM;CAGrB"}
@@ -10,10 +10,18 @@ import { logger } from '../utils/logger.js';
10
10
  */
11
11
  export class ApiConfig {
12
12
  constructor() {
13
- // Required environment variables (TDS_MCP_* prefix for consistency)
13
+ // Optional: default to production
14
+ this.environment = (process.env.TDS_MCP_ENV === 'rnd') ? 'rnd' : 'production';
15
+ // Built-in OAuth Client ID (public, safe to include)
16
+ // These match the values in deviceFlow.ts for OAuth consistency
17
+ const DEFAULT_CLIENT_ID = this.environment === 'production'
18
+ ? 'cadxxoz247zw0ug5i2' // Production OAuth client ID (public)
19
+ : 'm2dnabebip3fpardnm'; // RND OAuth client ID (public)
20
+ // Environment variables (TDS_MCP_* prefix for consistency)
14
21
  const macTokenStr = process.env.TDS_MCP_MAC_TOKEN || '';
15
- this.clientId = process.env.TDS_MCP_CLIENT_ID || '';
16
- this.signingKey = process.env.TDS_MCP_CLIENT_TOKEN || ''; // HMAC signing key for API requests
22
+ this.clientId = process.env.TDS_MCP_CLIENT_ID || DEFAULT_CLIENT_ID;
23
+ // CLIENT_TOKEN must be provided via environment variable (keep it secret!)
24
+ this.signingKey = process.env.TDS_MCP_CLIENT_TOKEN || '';
17
25
  // Parse MAC Token from JSON string (optional now, can be set later via Device Flow)
18
26
  try {
19
27
  this.macToken = macTokenStr ? JSON.parse(macTokenStr) : {};
@@ -22,28 +30,27 @@ export class ApiConfig {
22
30
  process.stderr.write('⚠️ Failed to parse TDS_MCP_MAC_TOKEN from environment, will use OAuth flow\n');
23
31
  this.macToken = {};
24
32
  }
25
- // Optional: default to production
26
- this.environment = (process.env.TDS_MCP_ENV === 'rnd') ? 'rnd' : 'production';
27
33
  // Set API base URL based on environment
28
34
  this.apiBaseUrl = this.environment === 'production'
29
35
  ? 'https://agent.tapapis.cn'
30
36
  : 'https://agent.api.xdrnd.cn';
31
- // Validate CLIENT_ID and CLIENT_SECRET (MAC Token can be set later)
37
+ // Validate configuration
32
38
  this.validateConfig();
33
39
  }
34
40
  validateConfig() {
35
- const missing = [];
36
- if (!this.clientId) {
37
- missing.push('TDS_MCP_CLIENT_ID');
38
- }
41
+ // Client Token is required for API signing (keep it secret!)
39
42
  if (!this.signingKey) {
40
- missing.push('TDS_MCP_CLIENT_TOKEN');
41
- }
42
- if (missing.length > 0) {
43
- process.stderr.write(`❌ Missing required environment variables: ${missing.join(', ')}\n\n`);
44
- process.stderr.write('These are required for API authentication and request signing.\n');
43
+ process.stderr.write('❌ Missing required environment variable: TDS_MCP_CLIENT_TOKEN\n\n');
44
+ process.stderr.write('This is the API request signing key (keep it secret!).\n');
45
+ process.stderr.write('Please set it before starting the server:\n\n');
46
+ process.stderr.write(' export TDS_MCP_CLIENT_TOKEN="your_signing_key"\n\n');
47
+ process.stderr.write('Contact TapTap support to get your CLIENT_TOKEN.\n\n');
45
48
  process.exit(1);
46
49
  }
50
+ // Show info about CLIENT_ID
51
+ if (!process.env.TDS_MCP_CLIENT_ID) {
52
+ process.stderr.write(`ℹ️ Using built-in OAuth CLIENT_ID: ${this.clientId}\n`);
53
+ }
47
54
  }
48
55
  static getInstance() {
49
56
  if (!ApiConfig.instance) {
@@ -68,6 +75,12 @@ export class ApiConfig {
68
75
  'TDS_MCP_ENV': `${this.environment} (${this.apiBaseUrl})`,
69
76
  };
70
77
  }
78
+ /**
79
+ * Get current environment
80
+ */
81
+ getEnvironment() {
82
+ return this.environment;
83
+ }
71
84
  }
72
85
  /**
73
86
  * Generic HTTP Client for TapTap API
@@ -139,7 +152,7 @@ export class HttpClient {
139
152
  const signature = this.generateSignature(method, signUrl, headers, bodyString);
140
153
  headers['X-Tap-Sign'] = signature;
141
154
  // Log request
142
- logger.logRequest(method, fullUrl, headers, bodyString);
155
+ await logger.logRequest(method, fullUrl, headers, bodyString);
143
156
  // Set up timeout
144
157
  const controller = new AbortController();
145
158
  const timeout = options.timeout || 30000;
@@ -167,14 +180,45 @@ export class HttpClient {
167
180
  const errorData = await response.json();
168
181
  errorBody = errorData;
169
182
  errorMessage += ` - ${errorData.message || errorData.error || JSON.stringify(errorData)}`;
183
+ // Check for access_denied error (token expired or invalid)
184
+ if (errorData.data?.error === 'access_denied' ||
185
+ errorData.error === 'access_denied' ||
186
+ response.status === 401) {
187
+ const authError = new Error(`🔐 授权已失效\n\n` +
188
+ `您的 MAC Token 已过期或无效。\n\n` +
189
+ `📋 解决方案:\n` +
190
+ `1. 调用 clear_auth_data 工具清除过期的认证数据\n` +
191
+ `2. 调用需要认证的工具会自动触发新的授权流程\n` +
192
+ `3. 使用 TapTap App 扫码重新授权\n\n` +
193
+ `💡 提示:如果使用的是环境变量中的 Token,请更新 TDS_MCP_MAC_TOKEN 环境变量并重启服务器。`);
194
+ authError.isAuthError = true;
195
+ // Log auth error
196
+ await logger.logResponse(method, fullUrl, response.status, response.statusText, errorBody, false, responseHeaders);
197
+ throw authError;
198
+ }
170
199
  }
171
200
  else {
172
201
  const errorText = await response.text();
173
202
  errorBody = errorText;
174
203
  errorMessage += ` - ${errorText}`;
204
+ // Check for RBAC access denied (text/plain format)
205
+ if ((response.status === 403 || response.status === 401) &&
206
+ (errorText.includes('access denied') || errorText.includes('RBAC'))) {
207
+ const authError = new Error(`🔐 授权已失效\n\n` +
208
+ `您的 MAC Token 已过期或无效。\n\n` +
209
+ `📋 解决方案:\n` +
210
+ `1. 调用 clear_auth_data 工具清除过期的认证数据\n` +
211
+ `2. 调用需要认证的工具会自动触发新的授权流程\n` +
212
+ `3. 使用 TapTap App 扫码重新授权\n\n` +
213
+ `💡 提示:如果使用的是环境变量中的 Token,请更新 TDS_MCP_MAC_TOKEN 环境变量并重启服务器。`);
214
+ authError.isAuthError = true;
215
+ // Log auth error
216
+ await logger.logResponse(method, fullUrl, response.status, response.statusText, errorBody, false, responseHeaders);
217
+ throw authError;
218
+ }
175
219
  }
176
220
  // Log error response with headers
177
- logger.logResponse(method, fullUrl, response.status, response.statusText, errorBody, false, responseHeaders);
221
+ await logger.logResponse(method, fullUrl, response.status, response.statusText, errorBody, false, responseHeaders);
178
222
  throw new Error(errorMessage);
179
223
  }
180
224
  // Parse response
@@ -182,7 +226,7 @@ export class HttpClient {
182
226
  if (contentType?.includes('application/json')) {
183
227
  const jsonData = await response.json();
184
228
  // Log successful response with headers
185
- logger.logResponse(method, fullUrl, response.status, response.statusText, jsonData, true, responseHeaders);
229
+ await logger.logResponse(method, fullUrl, response.status, response.statusText, jsonData, true, responseHeaders);
186
230
  // Handle API response format
187
231
  if (jsonData.success === false) {
188
232
  throw new Error(jsonData.message || jsonData.error || 'API request failed');
@@ -193,7 +237,7 @@ export class HttpClient {
193
237
  // If not JSON, return text
194
238
  const text = await response.text();
195
239
  // Log text response with headers
196
- logger.logResponse(method, fullUrl, response.status, response.statusText, text, true, responseHeaders);
240
+ await logger.logResponse(method, fullUrl, response.status, response.statusText, text, true, responseHeaders);
197
241
  return text;
198
242
  }
199
243
  catch (error) {
@@ -201,14 +245,14 @@ export class HttpClient {
201
245
  if (error instanceof Error) {
202
246
  if (error.name === 'AbortError') {
203
247
  const timeoutError = new Error(`Request timeout after ${timeout}ms`);
204
- logger.error(`HTTP Request timeout: ${method} ${fullUrl}`, timeoutError);
248
+ await logger.error(`HTTP Request timeout: ${method} ${fullUrl}`, timeoutError);
205
249
  throw timeoutError;
206
250
  }
207
- logger.error(`HTTP Request failed: ${method} ${fullUrl}`, error);
251
+ await logger.error(`HTTP Request failed: ${method} ${fullUrl}`, error);
208
252
  throw error;
209
253
  }
210
254
  const genericError = new Error(`Request failed: ${String(error)}`);
211
- logger.error(`HTTP Request failed: ${method} ${fullUrl}`, genericError);
255
+ await logger.error(`HTTP Request failed: ${method} ${fullUrl}`, genericError);
212
256
  throw genericError;
213
257
  }
214
258
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../../src/core/network/httpClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Type definitions for TapTap MCP Server
3
+ */
4
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
5
+ /**
6
+ * MAC Token interface
7
+ * Used for MAC (Message Authentication Code) Token authentication
8
+ */
9
+ export interface MacToken {
10
+ /** mac_key id, The key identifier */
11
+ kid: string;
12
+ /** Token type, such as "mac" */
13
+ token_type: string;
14
+ /** mac key */
15
+ mac_key: string;
16
+ /** mac algorithm name, such as "hmac-sha-1" */
17
+ mac_algorithm: string;
18
+ }
19
+ /**
20
+ * Handler Context
21
+ * Passed to all tool handlers
22
+ */
23
+ export interface HandlerContext {
24
+ projectPath?: string;
25
+ macToken?: MacToken;
26
+ env?: 'production' | 'rnd';
27
+ }
28
+ /**
29
+ * Tool Registration Interface
30
+ * Combines tool definition and handler in a single object
31
+ */
32
+ export interface ToolRegistration<T = any> {
33
+ /** MCP Tool definition (JSON Schema) */
34
+ definition: Tool;
35
+ /** Tool handler function */
36
+ handler: (args: T, context: HandlerContext) => Promise<string>;
37
+ /** Whether this tool requires authentication */
38
+ requiresAuth?: boolean;
39
+ }
40
+ /**
41
+ * Resource Registration Interface
42
+ * Combines resource definition and handler in a single object
43
+ */
44
+ export interface ResourceRegistration {
45
+ /** Resource URI */
46
+ uri: string;
47
+ /** Resource name */
48
+ name: string;
49
+ /** Resource description */
50
+ description?: string;
51
+ /** MIME type */
52
+ mimeType?: string;
53
+ /** Resource handler function */
54
+ handler: (args?: any) => Promise<string>;
55
+ }
56
+ /**
57
+ * Prompt Registration Interface
58
+ * Combines prompt definition and handler in a single object
59
+ */
60
+ export interface PromptRegistration {
61
+ /** Prompt name */
62
+ name: string;
63
+ /** Prompt description */
64
+ description?: string;
65
+ /** Prompt arguments */
66
+ arguments?: Array<{
67
+ name: string;
68
+ description?: string;
69
+ required?: boolean;
70
+ }>;
71
+ /** Prompt handler function */
72
+ handler: (args?: any) => Promise<{
73
+ messages: Array<{
74
+ role: string;
75
+ content: {
76
+ type: string;
77
+ text: string;
78
+ };
79
+ }>;
80
+ }>;
81
+ }
82
+ /**
83
+ * Feature Module Interface
84
+ * Represents a complete feature module with tools, resources, and prompts
85
+ */
86
+ export interface FeatureModule {
87
+ /** Module name */
88
+ name: string;
89
+ /** Tools provided by this module */
90
+ tools: ToolRegistration[];
91
+ /** Resources provided by this module */
92
+ resources: ResourceRegistration[];
93
+ /** Prompts provided by this module (optional) */
94
+ prompts?: PromptRegistration[];
95
+ }
96
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC;IAEZ,gCAAgC;IAChC,UAAU,EAAE,MAAM,CAAC;IAEnB,cAAc;IACd,OAAO,EAAE,MAAM,CAAC;IAEhB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACvC,wCAAwC;IACxC,UAAU,EAAE,IAAI,CAAC;IAEjB,4BAA4B;IAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAE/D,gDAAgD;IAChD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,mBAAmB;IACnB,GAAG,EAAE,MAAM,CAAC;IAEZ,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IAEb,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IAEb,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,uBAAuB;IACvB,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IAEH,8BAA8B;IAC9B,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;QAC/B,QAAQ,EAAE,KAAK,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;SACH,CAAC,CAAC;KACJ,CAAC,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IAEb,oCAAoC;IACpC,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAE1B,wCAAwC;IACxC,SAAS,EAAE,oBAAoB,EAAE,CAAC;IAElC,iDAAiD;IACjD,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/core/utils/cache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAUzD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAqBtE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAqB3E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAUxD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAG1D"}