@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,353 @@
1
+ /**
2
+ * MCP-compliant Logger for TapTap Minigame MCP Server
3
+ * Supports RFC 5424 log levels and dual output mode (stderr + MCP notifications)
4
+ */
5
+ import process from 'node:process';
6
+ /**
7
+ * Log level priorities (lower number = higher severity)
8
+ */
9
+ const LOG_LEVEL_PRIORITY = {
10
+ 'emergency': 0,
11
+ 'alert': 1,
12
+ 'critical': 2,
13
+ 'error': 3,
14
+ 'warning': 4,
15
+ 'notice': 5,
16
+ 'info': 6,
17
+ 'debug': 7,
18
+ };
19
+ /**
20
+ * Check if verbose logging is enabled
21
+ */
22
+ function isVerboseEnabled() {
23
+ return process.env.TDS_MCP_VERBOSE === 'true' || process.env.TDS_MCP_VERBOSE === '1';
24
+ }
25
+ /**
26
+ * Format object for logging
27
+ */
28
+ function formatObject(obj) {
29
+ try {
30
+ return JSON.stringify(obj, null, 2);
31
+ }
32
+ catch (error) {
33
+ return String(obj);
34
+ }
35
+ }
36
+ /**
37
+ * Get current timestamp
38
+ */
39
+ function getTimestamp() {
40
+ return new Date().toISOString();
41
+ }
42
+ /**
43
+ * Sanitize sensitive data from objects
44
+ */
45
+ function sanitizeData(data) {
46
+ if (!data || typeof data !== 'object') {
47
+ return data;
48
+ }
49
+ const sensitiveKeys = ['password', 'token', 'secret', 'key', 'authorization', 'auth'];
50
+ const sanitized = Array.isArray(data) ? [...data] : { ...data };
51
+ for (const key in sanitized) {
52
+ const lowerKey = key.toLowerCase();
53
+ if (sensitiveKeys.some(sk => lowerKey.includes(sk))) {
54
+ sanitized[key] = '***REDACTED***';
55
+ }
56
+ else if (typeof sanitized[key] === 'object' && sanitized[key] !== null) {
57
+ sanitized[key] = sanitizeData(sanitized[key]);
58
+ }
59
+ }
60
+ return sanitized;
61
+ }
62
+ /**
63
+ * MCP-compliant Logger class
64
+ */
65
+ export class Logger {
66
+ constructor() {
67
+ this.currentLevel = 'info';
68
+ this.verbose = isVerboseEnabled();
69
+ }
70
+ /**
71
+ * Initialize logger with MCP server instance
72
+ */
73
+ initialize(server, transport) {
74
+ this.server = server;
75
+ this.transport = transport;
76
+ }
77
+ /**
78
+ * Set log level (implements MCP logging/setLevel)
79
+ */
80
+ setLevel(level) {
81
+ this.currentLevel = level;
82
+ if (this.verbose) {
83
+ process.stderr.write(`[${getTimestamp()}] [LOGGER] Log level set to: ${level}\n`);
84
+ }
85
+ }
86
+ /**
87
+ * Get current log level
88
+ */
89
+ getLevel() {
90
+ return this.currentLevel;
91
+ }
92
+ /**
93
+ * Check if a message should be logged based on current level
94
+ */
95
+ shouldLog(messageLevel) {
96
+ return LOG_LEVEL_PRIORITY[messageLevel] <= LOG_LEVEL_PRIORITY[this.currentLevel];
97
+ }
98
+ /**
99
+ * Core logging method with dual output
100
+ * Pure dual-write: simple stderr + MCP notification
101
+ */
102
+ async log(level, loggerName, message, data) {
103
+ // Check if we should log this level
104
+ if (!this.shouldLog(level)) {
105
+ return;
106
+ }
107
+ const timestamp = getTimestamp();
108
+ const sanitized = data ? sanitizeData(data) : undefined;
109
+ // Output 1: Simple stderr (for local debugging)
110
+ if (this.verbose) {
111
+ process.stderr.write(`[${timestamp}] [${level.toUpperCase()}] [${loggerName}] ${message}\n`);
112
+ if (sanitized !== undefined) {
113
+ process.stderr.write(`${formatObject(sanitized)}\n`);
114
+ }
115
+ }
116
+ // Output 2: MCP notifications (for client)
117
+ if (this.server) {
118
+ try {
119
+ await this.server.notification({
120
+ method: 'notifications/message',
121
+ params: {
122
+ level,
123
+ logger: loggerName,
124
+ data: sanitized !== undefined
125
+ ? { message, timestamp, ...sanitized }
126
+ : { message, timestamp }
127
+ }
128
+ });
129
+ }
130
+ catch (error) {
131
+ // Silently ignore notification errors to prevent logging loops
132
+ }
133
+ }
134
+ }
135
+ /**
136
+ * Log debug message
137
+ */
138
+ async debug(message, data, loggerName = 'server') {
139
+ await this.log('debug', loggerName, message, data);
140
+ }
141
+ /**
142
+ * Log info message
143
+ */
144
+ async info(message, data, loggerName = 'server') {
145
+ await this.log('info', loggerName, message, data);
146
+ }
147
+ /**
148
+ * Log notice message
149
+ */
150
+ async notice(message, data, loggerName = 'server') {
151
+ await this.log('notice', loggerName, message, data);
152
+ }
153
+ /**
154
+ * Log warning message
155
+ */
156
+ async warning(message, data, loggerName = 'server') {
157
+ await this.log('warning', loggerName, message, data);
158
+ }
159
+ /**
160
+ * Log error message
161
+ */
162
+ async error(message, error, loggerName = 'server') {
163
+ const data = error instanceof Error
164
+ ? { error: error.message, stack: error.stack }
165
+ : { error };
166
+ await this.log('error', loggerName, message, data);
167
+ }
168
+ /**
169
+ * Log critical message
170
+ */
171
+ async critical(message, data, loggerName = 'server') {
172
+ await this.log('critical', loggerName, message, data);
173
+ }
174
+ /**
175
+ * Log alert message
176
+ */
177
+ async alert(message, data, loggerName = 'server') {
178
+ await this.log('alert', loggerName, message, data);
179
+ }
180
+ /**
181
+ * Log emergency message
182
+ */
183
+ async emergency(message, data, loggerName = 'server') {
184
+ await this.log('emergency', loggerName, message, data);
185
+ }
186
+ /**
187
+ * Log tool call with input arguments
188
+ */
189
+ async logToolCall(toolName, args) {
190
+ const sanitizedArgs = sanitizeData(args);
191
+ // Context: Opening border (stderr only)
192
+ if (this.verbose) {
193
+ process.stderr.write(`\n${'='.repeat(80)}\n`);
194
+ }
195
+ // Key info: Tool call (dual output: stderr + MCP notification)
196
+ await this.log('info', 'tools', `Tool called: ${toolName}`, { tool: toolName, args: sanitizedArgs });
197
+ // Context: Input details + closing border (stderr only)
198
+ if (this.verbose) {
199
+ process.stderr.write(`📥 Input:\n${formatObject(sanitizedArgs)}\n`);
200
+ process.stderr.write(`${'='.repeat(80)}\n\n`);
201
+ }
202
+ }
203
+ /**
204
+ * Log tool response with output
205
+ */
206
+ async logToolResponse(toolName, output, success = true) {
207
+ const truncatedOutput = typeof output === 'string'
208
+ ? output.substring(0, 200)
209
+ : output;
210
+ // Context: Opening border (stderr only)
211
+ if (this.verbose) {
212
+ process.stderr.write(`\n${'-'.repeat(80)}\n`);
213
+ }
214
+ // Key info: Tool response (dual output: stderr + MCP notification)
215
+ await this.log(success ? 'info' : 'error', 'tools', `Tool ${success ? 'completed' : 'failed'}: ${toolName}`, { tool: toolName, success, output: truncatedOutput });
216
+ // Context: Output details + closing border (stderr only)
217
+ if (this.verbose) {
218
+ const displayOutput = typeof output === 'string'
219
+ ? output.substring(0, 500) + (output.length > 500 ? '...(truncated)' : '')
220
+ : formatObject(output);
221
+ process.stderr.write(`📤 Output:\n${displayOutput}\n`);
222
+ process.stderr.write(`${'='.repeat(80)}\n\n`);
223
+ }
224
+ }
225
+ /**
226
+ * Log HTTP request
227
+ */
228
+ async logRequest(method, url, headers, body) {
229
+ // Sanitize sensitive headers
230
+ const safeHeaders = { ...headers };
231
+ if (safeHeaders['Authorization']) {
232
+ const authHeader = safeHeaders['Authorization'];
233
+ safeHeaders['Authorization'] = authHeader.replace(/mac="[^"]+"/g, 'mac="***REDACTED***"');
234
+ }
235
+ if (safeHeaders['X-Tap-Sign']) {
236
+ safeHeaders['X-Tap-Sign'] = '***REDACTED***';
237
+ }
238
+ const sanitizedBody = body ? sanitizeData(body) : undefined;
239
+ // Context: Opening border + method/url (stderr only)
240
+ if (this.verbose) {
241
+ process.stderr.write(`\n${'='.repeat(100)}\n`);
242
+ process.stderr.write(`📤 Method: ${method}\n`);
243
+ process.stderr.write(`📤 URL: ${url}\n`);
244
+ process.stderr.write(`\n`);
245
+ }
246
+ // Key info: HTTP request summary (dual output: stderr + MCP notification)
247
+ await this.log('debug', 'http', `HTTP ${method} ${url}`, { method, url, headers: safeHeaders, body: sanitizedBody });
248
+ // Context: Headers + body details (stderr only)
249
+ if (this.verbose) {
250
+ if (safeHeaders['Authorization']) {
251
+ process.stderr.write(`🔐 Authorization:\n${safeHeaders['Authorization']}\n\n`);
252
+ }
253
+ process.stderr.write(`📋 Headers (${Object.keys(headers).length} total):\n`);
254
+ process.stderr.write(`${formatObject(safeHeaders)}\n`);
255
+ if (body) {
256
+ try {
257
+ const parsedBody = JSON.parse(body);
258
+ process.stderr.write(`\n📦 Request Body (JSON):\n`);
259
+ process.stderr.write(`${formatObject(sanitizeData(parsedBody))}\n`);
260
+ }
261
+ catch {
262
+ process.stderr.write(`\n📦 Request Body (Raw):\n`);
263
+ process.stderr.write(`${body}\n`);
264
+ }
265
+ }
266
+ else {
267
+ process.stderr.write(`\n📦 Request Body: (empty)\n`);
268
+ }
269
+ process.stderr.write(`${'='.repeat(100)}\n\n`);
270
+ }
271
+ }
272
+ /**
273
+ * Log HTTP response
274
+ */
275
+ async logResponse(method, url, status, statusText, body, success = true, responseHeaders) {
276
+ const sanitizedBody = sanitizeData(body);
277
+ // Context: Opening border + method/url/status (stderr only)
278
+ if (this.verbose) {
279
+ process.stderr.write(`\n${'-'.repeat(100)}\n`);
280
+ process.stderr.write(`📥 Method: ${method}\n`);
281
+ process.stderr.write(`📥 URL: ${url}\n`);
282
+ process.stderr.write(`📥 Status: ${status} ${statusText}\n`);
283
+ process.stderr.write(`\n`);
284
+ }
285
+ // Key info: HTTP response summary (dual output: stderr + MCP notification)
286
+ await this.log(success ? 'debug' : 'error', 'http', `HTTP ${method} ${url} - ${status} ${statusText}`, { method, url, status, statusText, body: sanitizedBody, headers: responseHeaders });
287
+ // Context: Headers + body details (stderr only)
288
+ if (this.verbose) {
289
+ if (responseHeaders && Object.keys(responseHeaders).length > 0) {
290
+ process.stderr.write(`📋 Response Headers (${Object.keys(responseHeaders).length} total):\n`);
291
+ process.stderr.write(`${formatObject(responseHeaders)}\n\n`);
292
+ }
293
+ if (typeof body === 'string') {
294
+ try {
295
+ const parsedBody = JSON.parse(body);
296
+ process.stderr.write(`📦 Response Body (JSON):\n`);
297
+ process.stderr.write(`${formatObject(sanitizeData(parsedBody))}\n`);
298
+ }
299
+ catch {
300
+ process.stderr.write(`📦 Response Body (Text):\n`);
301
+ process.stderr.write(`${body}\n`);
302
+ }
303
+ }
304
+ else if (body !== undefined && body !== null) {
305
+ process.stderr.write(`📦 Response Body (Object):\n`);
306
+ process.stderr.write(`${formatObject(sanitizedBody)}\n`);
307
+ }
308
+ else {
309
+ process.stderr.write(`📦 Response Body: (empty)\n`);
310
+ }
311
+ process.stderr.write(`${'='.repeat(100)}\n\n`);
312
+ }
313
+ }
314
+ /**
315
+ * Log client connection event
316
+ */
317
+ async logClientConnection(sessionId) {
318
+ // Context: Connection event (stderr only)
319
+ if (this.verbose) {
320
+ process.stderr.write(`\n${'='.repeat(80)}\n`);
321
+ process.stderr.write(`🔌 Client Connected\n`);
322
+ process.stderr.write(`Session ID: ${sessionId}\n`);
323
+ process.stderr.write(`Timestamp: ${getTimestamp()}\n`);
324
+ process.stderr.write(`${'='.repeat(80)}\n\n`);
325
+ }
326
+ // Key info: Client connection (dual output: stderr + MCP notification)
327
+ await this.log('info', 'connection', 'Client connected', { sessionId, event: 'client_connected' });
328
+ }
329
+ /**
330
+ * Log client disconnection event
331
+ */
332
+ async logClientDisconnection(sessionId) {
333
+ // Context: Disconnection event (stderr only)
334
+ if (this.verbose) {
335
+ process.stderr.write(`\n${'-'.repeat(80)}\n`);
336
+ process.stderr.write(`🔌 Client Disconnected\n`);
337
+ process.stderr.write(`Session ID: ${sessionId}\n`);
338
+ process.stderr.write(`Timestamp: ${getTimestamp()}\n`);
339
+ process.stderr.write(`${'='.repeat(80)}\n\n`);
340
+ }
341
+ // Key info: Client disconnection (dual output: stderr + MCP notification)
342
+ await this.log('info', 'connection', 'Client disconnected', { sessionId, event: 'client_disconnected' });
343
+ }
344
+ /**
345
+ * Check if verbose mode is enabled
346
+ */
347
+ isVerbose() {
348
+ return this.verbose;
349
+ }
350
+ }
351
+ // Export singleton instance
352
+ export const logger = new Logger();
353
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/core/utils/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ /**
2
+ * Application Management API
3
+ * Handles developer and app operations
4
+ */
5
+ import { AppCacheInfo } from '../../core/utils/cache.js';
6
+ /**
7
+ * Craft/App item in developer list
8
+ */
9
+ export interface CraftItem {
10
+ app_id: number;
11
+ app_title: string;
12
+ miniapp_id?: string;
13
+ category?: string;
14
+ is_published?: boolean;
15
+ }
16
+ /**
17
+ * Developer with levels/apps list
18
+ */
19
+ export interface DeveloperCraftList {
20
+ developer_id: number;
21
+ developer_name: string;
22
+ levels: CraftItem[];
23
+ crafts?: CraftItem[];
24
+ }
25
+ /**
26
+ * Level list response
27
+ */
28
+ export interface LevelListResponse {
29
+ list: DeveloperCraftList[];
30
+ }
31
+ /**
32
+ * Selection required error - thrown when multiple options exist
33
+ */
34
+ export declare class SelectionRequiredError extends Error {
35
+ readonly developers: DeveloperCraftList[];
36
+ constructor(message: string, developers: DeveloperCraftList[]);
37
+ }
38
+ /**
39
+ * Get app/level list information for current user
40
+ * Returns all developers and their apps/games
41
+ * @param projectPath - Optional project path for cache lookup
42
+ * @param autoSelect - If true, automatically selects first option. If false, throws SelectionRequiredError when multiple options exist
43
+ * @returns App information including developer_id and app_id
44
+ * @throws SelectionRequiredError when multiple developers/apps exist and autoSelect is false
45
+ */
46
+ export declare function getAppInfo(projectPath?: string, autoSelect?: boolean): Promise<AppCacheInfo>;
47
+ /**
48
+ * Get or fetch app information with automatic caching
49
+ * @param projectPath - Optional project path
50
+ * @param autoSelect - If true, automatically selects first option. If false, throws SelectionRequiredError when multiple options exist
51
+ * @returns App information from cache or API
52
+ * @throws SelectionRequiredError when multiple developers/apps exist and autoSelect is false
53
+ */
54
+ export declare function ensureAppInfo(projectPath?: string, autoSelect?: boolean): Promise<AppCacheInfo>;
55
+ /**
56
+ * Select and cache a specific developer and app
57
+ * @param developerId - Developer ID to select
58
+ * @param appId - App ID to select
59
+ * @param projectPath - Optional project path for cache storage
60
+ * @returns Selected app information
61
+ */
62
+ export declare function selectApp(developerId: number, appId: number, projectPath?: string): Promise<AppCacheInfo>;
63
+ /**
64
+ * Get all developers and apps for selection
65
+ * @returns List of all developers and their apps
66
+ */
67
+ export declare function getAllDevelopersAndApps(): Promise<LevelListResponse>;
68
+ /**
69
+ * Create Developer Response
70
+ */
71
+ export interface CreateDeveloperResponse {
72
+ developer_name: string;
73
+ developer_id: number;
74
+ }
75
+ /**
76
+ * Create unverified developer
77
+ */
78
+ export declare function createDeveloper(): Promise<CreateDeveloperResponse>;
79
+ /**
80
+ * Create App Response
81
+ */
82
+ export interface CreateAppResponse {
83
+ app_id: number;
84
+ app_title: string;
85
+ display_app_title: string;
86
+ }
87
+ /**
88
+ * Create a new app/game
89
+ */
90
+ export declare function createAppForDeveloper(developer_id: number, title?: string, genre?: string): Promise<CreateAppResponse>;
91
+ /**
92
+ * Edit App Response
93
+ */
94
+ export interface EditAppResponse {
95
+ app_title?: string;
96
+ display_app_title?: string;
97
+ }
98
+ /**
99
+ * Edit app/game information
100
+ */
101
+ export declare function editAppInfo(app_id: number, developer_id: number, package_id?: number, appName?: string, genre?: string, description?: string, chatting_label?: string, chatting_number?: string, screen_orientation?: number): Promise<EditAppResponse>;
102
+ /**
103
+ * App Status Response
104
+ */
105
+ export interface AppStatusResponse {
106
+ review_status: number;
107
+ }
108
+ /**
109
+ * Get app review status
110
+ */
111
+ export declare function getAppStatus(app_id: number): Promise<AppStatusResponse>;
112
+ /**
113
+ * App Detail API Response
114
+ */
115
+ export interface AppDetailAPIResponse {
116
+ level?: {
117
+ display_app_title?: string;
118
+ developer_id?: number;
119
+ developer_name?: string;
120
+ };
121
+ upload_level?: {
122
+ app_id: number;
123
+ form_data: {
124
+ info: {
125
+ title: string;
126
+ };
127
+ };
128
+ };
129
+ }
130
+ /**
131
+ * App Detail
132
+ */
133
+ export interface AppDetail {
134
+ appId: number;
135
+ appTitle: string;
136
+ displayAppTitle: string;
137
+ developerId: number;
138
+ developerName: string;
139
+ }
140
+ /**
141
+ * Get app detail information
142
+ */
143
+ export declare function getAppDetail(appId: number): Promise<AppDetail | undefined>;
144
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/features/app/api.ts"],"names":[],"mappings":"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"}