@elliotding/ai-agent-mcp 0.2.20 → 0.2.22
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.
- package/dist/client-adapters/codex-adapter.d.ts +48 -0
- package/dist/client-adapters/codex-adapter.d.ts.map +1 -0
- package/dist/client-adapters/codex-adapter.js +69 -0
- package/dist/client-adapters/codex-adapter.js.map +1 -0
- package/dist/client-adapters/cursor-adapter.d.ts +36 -0
- package/dist/client-adapters/cursor-adapter.d.ts.map +1 -0
- package/dist/client-adapters/cursor-adapter.js +65 -0
- package/dist/client-adapters/cursor-adapter.js.map +1 -0
- package/dist/client-adapters/index.d.ts +89 -0
- package/dist/client-adapters/index.d.ts.map +1 -0
- package/dist/client-adapters/index.js +49 -0
- package/dist/client-adapters/index.js.map +1 -0
- package/dist/config/index.d.ts +19 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +12 -2
- package/dist/config/index.js.map +1 -1
- package/dist/prompts/manager.d.ts +18 -0
- package/dist/prompts/manager.d.ts.map +1 -1
- package/dist/prompts/manager.js +51 -5
- package/dist/prompts/manager.js.map +1 -1
- package/dist/server/http.d.ts +10 -6
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +83 -89
- package/dist/server/http.js.map +1 -1
- package/dist/server/streamable-http.d.ts +28 -0
- package/dist/server/streamable-http.d.ts.map +1 -0
- package/dist/server/streamable-http.js +126 -0
- package/dist/server/streamable-http.js.map +1 -0
- package/dist/server.d.ts +8 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +60 -96
- package/dist/server.js.map +1 -1
- package/dist/telemetry/manager.d.ts +5 -0
- package/dist/telemetry/manager.d.ts.map +1 -1
- package/dist/telemetry/manager.js +5 -0
- package/dist/telemetry/manager.js.map +1 -1
- package/dist/tools/manage-subscription.d.ts.map +1 -1
- package/dist/tools/manage-subscription.js +33 -2
- package/dist/tools/manage-subscription.js.map +1 -1
- package/dist/tools/policy-generator.d.ts +31 -0
- package/dist/tools/policy-generator.d.ts.map +1 -0
- package/dist/tools/policy-generator.js +53 -0
- package/dist/tools/policy-generator.js.map +1 -0
- package/dist/tools/resolve-prompt-content.d.ts.map +1 -1
- package/dist/tools/resolve-prompt-content.js +14 -1
- package/dist/tools/resolve-prompt-content.js.map +1 -1
- package/dist/tools/search-resources.d.ts.map +1 -1
- package/dist/tools/search-resources.js +24 -0
- package/dist/tools/search-resources.js.map +1 -1
- package/dist/tools/sync-resources.d.ts.map +1 -1
- package/dist/tools/sync-resources.js +232 -58
- package/dist/tools/sync-resources.js.map +1 -1
- package/dist/tools/uninstall-resource.d.ts.map +1 -1
- package/dist/tools/uninstall-resource.js +21 -3
- package/dist/tools/uninstall-resource.js.map +1 -1
- package/dist/types/tools.d.ts +113 -4
- package/dist/types/tools.d.ts.map +1 -1
- package/dist/utils/codex-paths.d.ts +35 -0
- package/dist/utils/codex-paths.d.ts.map +1 -0
- package/dist/utils/codex-paths.js +49 -0
- package/dist/utils/codex-paths.js.map +1 -0
- package/package.json +1 -1
- package/dist/transport/sse.d.ts +0 -29
- package/dist/transport/sse.d.ts.map +0 -1
- package/dist/transport/sse.js +0 -271
- package/dist/transport/sse.js.map +0 -1
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Streamable HTTP Server Transport
|
|
4
|
+
*
|
|
5
|
+
* Implements the MCP Streamable HTTP transport specification (2025-03-26),
|
|
6
|
+
* which Codex CLI uses to communicate with MCP servers.
|
|
7
|
+
*
|
|
8
|
+
* Differences from the legacy SSE transport (http.ts):
|
|
9
|
+
* - Stateless: each POST /mcp request is processed independently by a new
|
|
10
|
+
* Server instance; no sessionId or persistent SSE connection is maintained.
|
|
11
|
+
* - Single endpoint: all JSON-RPC messages arrive as POST /mcp.
|
|
12
|
+
* - GET /mcp is supported for SSE streaming server notifications (optional).
|
|
13
|
+
*
|
|
14
|
+
* Authentication:
|
|
15
|
+
* - Reuses tokenAuthOrLegacyMiddleware from the SSE server.
|
|
16
|
+
* - For Codex (stdio MCP config without a bearer token), auth is skipped when
|
|
17
|
+
* the middleware finds no Authorization header and the server has been
|
|
18
|
+
* configured with CSP_AGENT_PROFILE=codex.
|
|
19
|
+
*/
|
|
20
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
21
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.streamableHttpServer = exports.StreamableHTTPServer = void 0;
|
|
25
|
+
const fastify_1 = __importDefault(require("fastify"));
|
|
26
|
+
const cors_1 = __importDefault(require("@fastify/cors"));
|
|
27
|
+
const helmet_1 = __importDefault(require("@fastify/helmet"));
|
|
28
|
+
const streamableHttp_js_1 = require("@modelcontextprotocol/sdk/server/streamableHttp.js");
|
|
29
|
+
const index_js_1 = require("../config/index.js");
|
|
30
|
+
const logger_js_1 = require("../utils/logger.js");
|
|
31
|
+
const middleware_js_1 = require("../auth/middleware.js");
|
|
32
|
+
const http_js_1 = require("./http.js");
|
|
33
|
+
class StreamableHTTPServer {
|
|
34
|
+
fastify;
|
|
35
|
+
constructor() {
|
|
36
|
+
this.fastify = (0, fastify_1.default)({
|
|
37
|
+
logger: false,
|
|
38
|
+
bodyLimit: 10 * 1024 * 1024, // 10 MB
|
|
39
|
+
});
|
|
40
|
+
this.setupMiddleware();
|
|
41
|
+
this.setupRoutes();
|
|
42
|
+
}
|
|
43
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
44
|
+
// Middleware
|
|
45
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
46
|
+
setupMiddleware() {
|
|
47
|
+
void this.fastify.register(cors_1.default, { origin: true });
|
|
48
|
+
void this.fastify.register(helmet_1.default, {
|
|
49
|
+
contentSecurityPolicy: false,
|
|
50
|
+
crossOriginEmbedderPolicy: false,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
54
|
+
// Routes
|
|
55
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
56
|
+
setupRoutes() {
|
|
57
|
+
const basePath = index_js_1.config.streamableHttp?.basePath ?? index_js_1.config.http?.basePath ?? '';
|
|
58
|
+
// Health check — same contract as the SSE server
|
|
59
|
+
this.fastify.get(`${basePath}/health`, async (_req, reply) => {
|
|
60
|
+
await reply.send({ status: 'healthy', transport: 'streamable_http' });
|
|
61
|
+
});
|
|
62
|
+
// Primary MCP endpoint — handles both GET (SSE notification stream) and
|
|
63
|
+
// POST (JSON-RPC request/response or SSE streaming response)
|
|
64
|
+
const mcpPath = `${basePath}/mcp`;
|
|
65
|
+
this.fastify.all(mcpPath, async (req, reply) => {
|
|
66
|
+
// Auth — same middleware as the SSE server.
|
|
67
|
+
// For Codex with CSP_AGENT_PROFILE=codex, the middleware should be
|
|
68
|
+
// configured to allow unauthenticated requests (handled at deploy time).
|
|
69
|
+
try {
|
|
70
|
+
await (0, middleware_js_1.tokenAuthOrLegacyMiddleware)(req, reply);
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
// tokenAuthOrLegacyMiddleware already replied with a 401/403; bail out.
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
if (reply.sent) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const authedReq = req;
|
|
80
|
+
const token = authedReq.headers.authorization?.replace(/^Bearer\s+/i, '');
|
|
81
|
+
// Per-request stateless Server instance — identical setup to the SSE path.
|
|
82
|
+
const mcpServer = (0, http_js_1.createMcpServerInstance)(authedReq.user?.userId, authedReq.user?.email, authedReq.user?.groups, token);
|
|
83
|
+
const transport = new streamableHttp_js_1.StreamableHTTPServerTransport({
|
|
84
|
+
// Stateless mode: each request is independent; session management is
|
|
85
|
+
// left to the client (Codex handles reconnection on its own).
|
|
86
|
+
sessionIdGenerator: undefined,
|
|
87
|
+
});
|
|
88
|
+
// Connect MCP Server to transport; the transport will send the response
|
|
89
|
+
// through the underlying Node.js ServerResponse (accessed via reply.raw).
|
|
90
|
+
await mcpServer.connect(transport);
|
|
91
|
+
try {
|
|
92
|
+
await transport.handleRequest(req.raw, reply.raw, req.body);
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
96
|
+
logger_js_1.logger.error({ err, path: req.url }, `Streamable HTTP MCP request failed: ${msg}`);
|
|
97
|
+
if (!reply.sent) {
|
|
98
|
+
await reply.code(500).send({ error: 'Internal server error' });
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
finally {
|
|
102
|
+
// Clean up: close the transport so the underlying connection is freed.
|
|
103
|
+
// The Server instance will be garbage-collected after this request.
|
|
104
|
+
await transport.close().catch(() => undefined);
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
109
|
+
// Lifecycle
|
|
110
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
111
|
+
async start() {
|
|
112
|
+
// Use dedicated streamableHttp config block when available (dual mode),
|
|
113
|
+
// fall back to http config for standalone streamable_http mode.
|
|
114
|
+
const host = index_js_1.config.streamableHttp?.host ?? index_js_1.config.http?.host ?? '0.0.0.0';
|
|
115
|
+
const port = index_js_1.config.streamableHttp?.port ?? index_js_1.config.http?.port ?? 3001;
|
|
116
|
+
await this.fastify.listen({ host, port });
|
|
117
|
+
logger_js_1.logger.info({ host, port, transport: 'streamable_http' }, `✅ Streamable HTTP MCP server listening on ${host}:${port}`);
|
|
118
|
+
}
|
|
119
|
+
async stop() {
|
|
120
|
+
await this.fastify.close();
|
|
121
|
+
logger_js_1.logger.info('Streamable HTTP server stopped');
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
exports.StreamableHTTPServer = StreamableHTTPServer;
|
|
125
|
+
exports.streamableHttpServer = new StreamableHTTPServer();
|
|
126
|
+
//# sourceMappingURL=streamable-http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streamable-http.js","sourceRoot":"","sources":["../../src/server/streamable-http.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -3,7 +3,14 @@
|
|
|
3
3
|
* Implements Model Context Protocol server with dual transport support
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
|
-
* Start MCP Server (auto-detect transport mode)
|
|
6
|
+
* Start MCP Server (auto-detect transport mode from config)
|
|
7
|
+
*
|
|
8
|
+
* Transport modes:
|
|
9
|
+
* stdio — local stdio (Cursor local MCP, default)
|
|
10
|
+
* sse — legacy SSE only (Cursor remote MCP)
|
|
11
|
+
* streamable_http — Streamable HTTP only (Codex CLI)
|
|
12
|
+
* dual — SSE (port HTTP_PORT) + Streamable HTTP (port STREAMABLE_HTTP_PORT)
|
|
13
|
+
* simultaneously, serving Cursor and Codex from the same process
|
|
7
14
|
*/
|
|
8
15
|
export declare function startServer(): Promise<void>;
|
|
9
16
|
/**
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6FH;;;;;;;;;GASG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAoBjD;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAsBhD"}
|
package/dist/server.js
CHANGED
|
@@ -39,15 +39,21 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
39
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
40
|
exports.startServer = startServer;
|
|
41
41
|
exports.stopServer = stopServer;
|
|
42
|
-
const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
|
|
43
42
|
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
44
|
-
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
45
43
|
const logger_1 = require("./utils/logger");
|
|
46
44
|
const config_1 = require("./config");
|
|
47
45
|
const registry_1 = require("./tools/registry");
|
|
48
46
|
const tools_1 = require("./tools");
|
|
49
47
|
const http_1 = require("./server/http");
|
|
50
|
-
|
|
48
|
+
const streamable_http_js_1 = require("./server/streamable-http.js");
|
|
49
|
+
const index_js_1 = require("./client-adapters/index.js");
|
|
50
|
+
const cursor_adapter_js_1 = require("./client-adapters/cursor-adapter.js");
|
|
51
|
+
const codex_adapter_js_1 = require("./client-adapters/codex-adapter.js");
|
|
52
|
+
// Register client adapters at startup.
|
|
53
|
+
// Cursor adapter is registered first so it serves as the default fallback.
|
|
54
|
+
index_js_1.adapterRegistry.register(new cursor_adapter_js_1.CursorAdapter());
|
|
55
|
+
index_js_1.adapterRegistry.register(new codex_adapter_js_1.CodexAdapter());
|
|
56
|
+
let stdioServer = null;
|
|
51
57
|
/**
|
|
52
58
|
* Register all MCP tools
|
|
53
59
|
*/
|
|
@@ -64,91 +70,18 @@ function registerTools() {
|
|
|
64
70
|
logger_1.logger.info({ toolCount: registry_1.toolRegistry.getToolCount() }, `Registered ${registry_1.toolRegistry.getToolCount()} MCP tools`);
|
|
65
71
|
}
|
|
66
72
|
/**
|
|
67
|
-
* Start MCP Server with stdio transport
|
|
73
|
+
* Start MCP Server with stdio transport.
|
|
74
|
+
* Reuses createMcpServerInstance() from http.ts to avoid duplicating
|
|
75
|
+
* handler registration (promptManager, tools, oninitialized auto-sync).
|
|
68
76
|
*/
|
|
69
77
|
async function startStdioServer() {
|
|
70
78
|
logger_1.logger.info('Starting MCP Server with stdio transport...');
|
|
71
|
-
//
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
}, {
|
|
76
|
-
capabilities: {
|
|
77
|
-
tools: {},
|
|
78
|
-
prompts: {},
|
|
79
|
-
},
|
|
80
|
-
});
|
|
81
|
-
// Install Prompt list/get handlers so Command and Skill resources are
|
|
82
|
-
// exposed as MCP Prompts (Cursor slash commands).
|
|
83
|
-
const { promptManager } = await Promise.resolve().then(() => __importStar(require('./prompts/index.js')));
|
|
84
|
-
promptManager.installHandlers(server);
|
|
85
|
-
// Handle tools/list request
|
|
86
|
-
server.setRequestHandler(types_js_1.ListToolsRequestSchema, () => {
|
|
87
|
-
const tools = registry_1.toolRegistry.getMCPToolDefinitions();
|
|
88
|
-
logger_1.logger.debug({ toolCount: tools.length }, 'tools/list request handled');
|
|
89
|
-
return {
|
|
90
|
-
tools,
|
|
91
|
-
};
|
|
92
|
-
});
|
|
93
|
-
// Handle tools/call request
|
|
94
|
-
server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
95
|
-
const { name, arguments: args } = request.params;
|
|
96
|
-
logger_1.logger.info({ toolName: name, arguments: args }, `tools/call request: ${name}`);
|
|
97
|
-
const tool = registry_1.toolRegistry.getTool(name);
|
|
98
|
-
if (!tool) {
|
|
99
|
-
const error = `Tool not found: ${name}`;
|
|
100
|
-
logger_1.logger.error({ toolName: name }, error);
|
|
101
|
-
return {
|
|
102
|
-
content: [
|
|
103
|
-
{
|
|
104
|
-
type: 'text',
|
|
105
|
-
text: JSON.stringify({
|
|
106
|
-
success: false,
|
|
107
|
-
error: {
|
|
108
|
-
code: 'TOOL_NOT_FOUND',
|
|
109
|
-
message: error,
|
|
110
|
-
},
|
|
111
|
-
}),
|
|
112
|
-
},
|
|
113
|
-
],
|
|
114
|
-
isError: true,
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
try {
|
|
118
|
-
// Call the tool handler
|
|
119
|
-
const result = await tool.handler(args || {});
|
|
120
|
-
return {
|
|
121
|
-
content: [
|
|
122
|
-
{
|
|
123
|
-
type: 'text',
|
|
124
|
-
text: JSON.stringify(result),
|
|
125
|
-
},
|
|
126
|
-
],
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
catch (error) {
|
|
130
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
131
|
-
logger_1.logger.error({ toolName: name, error: errorMessage }, `Tool execution failed: ${name}`);
|
|
132
|
-
return {
|
|
133
|
-
content: [
|
|
134
|
-
{
|
|
135
|
-
type: 'text',
|
|
136
|
-
text: JSON.stringify({
|
|
137
|
-
success: false,
|
|
138
|
-
error: {
|
|
139
|
-
code: 'TOOL_EXECUTION_ERROR',
|
|
140
|
-
message: errorMessage,
|
|
141
|
-
},
|
|
142
|
-
}),
|
|
143
|
-
},
|
|
144
|
-
],
|
|
145
|
-
isError: true,
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
});
|
|
149
|
-
// Connect to stdio transport
|
|
79
|
+
// Reuse the shared factory — same capabilities, prompt handlers,
|
|
80
|
+
// tool handlers, and oninitialized auto-sync as the SSE path.
|
|
81
|
+
// No userId/email/groups for stdio (no auth header available).
|
|
82
|
+
stdioServer = (0, http_1.createMcpServerInstance)();
|
|
150
83
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
151
|
-
await
|
|
84
|
+
await stdioServer.connect(transport);
|
|
152
85
|
// Flush any pending telemetry immediately — stdio reconnects when Cursor
|
|
153
86
|
// restarts the process, so treat connect as a reconnect event.
|
|
154
87
|
const { telemetry: tel } = await Promise.resolve().then(() => __importStar(require('./telemetry/index.js')));
|
|
@@ -160,22 +93,46 @@ async function startStdioServer() {
|
|
|
160
93
|
*/
|
|
161
94
|
async function startSSEServer() {
|
|
162
95
|
logger_1.logger.info('Starting MCP Server with SSE transport...');
|
|
163
|
-
// Start HTTP server
|
|
164
96
|
await http_1.httpServer.start();
|
|
165
97
|
logger_1.logger.info('✅ MCP Server started successfully (SSE transport)');
|
|
166
98
|
}
|
|
167
99
|
/**
|
|
168
|
-
* Start MCP Server
|
|
100
|
+
* Start MCP Server with Streamable HTTP transport.
|
|
101
|
+
* Used by Codex CLI clients which use the 2025-03-26 Streamable HTTP spec.
|
|
102
|
+
*/
|
|
103
|
+
async function startStreamableHttpServer() {
|
|
104
|
+
logger_1.logger.info('Starting MCP Server with Streamable HTTP transport...');
|
|
105
|
+
await streamable_http_js_1.streamableHttpServer.start();
|
|
106
|
+
logger_1.logger.info('✅ MCP Server started successfully (Streamable HTTP transport)');
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Start MCP Server (auto-detect transport mode from config)
|
|
110
|
+
*
|
|
111
|
+
* Transport modes:
|
|
112
|
+
* stdio — local stdio (Cursor local MCP, default)
|
|
113
|
+
* sse — legacy SSE only (Cursor remote MCP)
|
|
114
|
+
* streamable_http — Streamable HTTP only (Codex CLI)
|
|
115
|
+
* dual — SSE (port HTTP_PORT) + Streamable HTTP (port STREAMABLE_HTTP_PORT)
|
|
116
|
+
* simultaneously, serving Cursor and Codex from the same process
|
|
169
117
|
*/
|
|
170
118
|
async function startServer() {
|
|
171
|
-
// Register all tools (common for both transports)
|
|
172
119
|
registerTools();
|
|
173
|
-
// Start server based on transport mode
|
|
174
120
|
const transportMode = config_1.config.transport.mode;
|
|
175
|
-
logger_1.logger.info({ transportMode }, `Starting server with ${transportMode} transport`);
|
|
176
|
-
if (transportMode === '
|
|
121
|
+
logger_1.logger.info({ transportMode, agentProfile: config_1.config.agentProfile }, `Starting server with ${transportMode} transport`);
|
|
122
|
+
if (transportMode === 'dual') {
|
|
123
|
+
// Start both transports concurrently; fail fast if either one throws.
|
|
124
|
+
await Promise.all([
|
|
125
|
+
startSSEServer(),
|
|
126
|
+
startStreamableHttpServer(),
|
|
127
|
+
]);
|
|
128
|
+
logger_1.logger.info('✅ Dual transport mode: SSE + Streamable HTTP both started');
|
|
129
|
+
}
|
|
130
|
+
else if (transportMode === 'sse') {
|
|
177
131
|
await startSSEServer();
|
|
178
132
|
}
|
|
133
|
+
else if (transportMode === 'streamable_http') {
|
|
134
|
+
await startStreamableHttpServer();
|
|
135
|
+
}
|
|
179
136
|
else {
|
|
180
137
|
await startStdioServer();
|
|
181
138
|
}
|
|
@@ -186,15 +143,22 @@ async function startServer() {
|
|
|
186
143
|
async function stopServer() {
|
|
187
144
|
logger_1.logger.info('Stopping MCP Server...');
|
|
188
145
|
const transportMode = config_1.config.transport.mode;
|
|
189
|
-
if (transportMode === '
|
|
190
|
-
|
|
146
|
+
if (transportMode === 'dual') {
|
|
147
|
+
await Promise.all([
|
|
148
|
+
http_1.httpServer.stop(),
|
|
149
|
+
streamable_http_js_1.streamableHttpServer.stop(),
|
|
150
|
+
]);
|
|
151
|
+
}
|
|
152
|
+
else if (transportMode === 'sse') {
|
|
191
153
|
await http_1.httpServer.stop();
|
|
192
154
|
}
|
|
155
|
+
else if (transportMode === 'streamable_http') {
|
|
156
|
+
await streamable_http_js_1.streamableHttpServer.stop();
|
|
157
|
+
}
|
|
193
158
|
else {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
server = null;
|
|
159
|
+
if (stdioServer) {
|
|
160
|
+
await stdioServer.close();
|
|
161
|
+
stdioServer = null;
|
|
198
162
|
}
|
|
199
163
|
}
|
|
200
164
|
logger_1.logger.info('MCP Server stopped');
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,6 +62,11 @@ export interface TelemetryReportPayload {
|
|
|
62
62
|
events: InvocationEvent[];
|
|
63
63
|
subscribed_rules: SubscribedRule[];
|
|
64
64
|
configured_mcps: ConfiguredMcp[];
|
|
65
|
+
/**
|
|
66
|
+
* Identifies which AI client emitted this telemetry.
|
|
67
|
+
* Present when the server has a resolved agent_profile ('cursor' or 'codex').
|
|
68
|
+
*/
|
|
69
|
+
agent_profile?: string;
|
|
65
70
|
}
|
|
66
71
|
export type ReportFn = (payload: TelemetryReportPayload, userToken: string) => Promise<void>;
|
|
67
72
|
export declare class TelemetryManager {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/telemetry/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAKH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,gBAAgB,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,eAAe,EAAE,CAAC;IAClC,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,eAAe,EAAE,aAAa,EAAE,CAAC;CAClC;AAED,iDAAiD;AACjD,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,eAAe,EAAE,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/telemetry/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -251,12 +251,17 @@ class TelemetryManager {
|
|
|
251
251
|
const user = data.users[token];
|
|
252
252
|
if (!user)
|
|
253
253
|
return;
|
|
254
|
+
// Import config lazily to avoid circular dependencies at module load time.
|
|
255
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-unsafe-assignment
|
|
256
|
+
const cfgModule = require('../config/index.js');
|
|
257
|
+
const agentProfile = cfgModule?.config?.agentProfile;
|
|
254
258
|
const payload = {
|
|
255
259
|
client_version: this.clientVersion,
|
|
256
260
|
reported_at: new Date().toISOString(),
|
|
257
261
|
events: user.pending_events,
|
|
258
262
|
subscribed_rules: user.subscribed_rules,
|
|
259
263
|
configured_mcps: user.configured_mcps,
|
|
264
|
+
...(agentProfile ? { agent_profile: agentProfile } : {}),
|
|
260
265
|
};
|
|
261
266
|
await this.reportWithRetry(payload, token);
|
|
262
267
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/telemetry/manager.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/telemetry/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manage-subscription.d.ts","sourceRoot":"","sources":["../../src/tools/manage-subscription.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAA4B,wBAAwB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMrG,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"manage-subscription.d.ts","sourceRoot":"","sources":["../../src/tools/manage-subscription.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAA4B,wBAAwB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMrG,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,CAyavG;AAGD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDlC,CAAC"}
|
|
@@ -177,6 +177,9 @@ async function manageSubscription(params) {
|
|
|
177
177
|
resource_id_or_name: pattern,
|
|
178
178
|
remove_from_account: false, // already unsubscribed above
|
|
179
179
|
...(resolvedType ? { resource_type: resolvedType } : {}),
|
|
180
|
+
// Forward agent_profile so uninstall emits the correct config action
|
|
181
|
+
// (remove_mcp_json_entry for Cursor, remove_toml_entry for Codex).
|
|
182
|
+
...(typedParams.agent_profile ? { agent_profile: typedParams.agent_profile } : {}),
|
|
180
183
|
});
|
|
181
184
|
if (uninstallResult.success && uninstallResult.data && uninstallResult.data.removed_resources.length > 0) {
|
|
182
185
|
// Collect local_actions_required (e.g. remove_mcp_json_entry for mcp-type resources,
|
|
@@ -196,6 +199,31 @@ async function manageSubscription(params) {
|
|
|
196
199
|
}
|
|
197
200
|
const removedCount = uninstallResults.filter(r => r.removed).length;
|
|
198
201
|
const notFoundCount = uninstallResults.filter(r => !r.removed).length;
|
|
202
|
+
// Verify server-side unsubscription with retry (up to 3 attempts, 300 ms apart).
|
|
203
|
+
// The API may have a short propagation delay before list reflects the removal.
|
|
204
|
+
const removedIds = new Set(typedParams.resource_ids);
|
|
205
|
+
let verifiedRemoval = false;
|
|
206
|
+
for (let attempt = 0; attempt < 3; attempt++) {
|
|
207
|
+
if (attempt > 0) {
|
|
208
|
+
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
209
|
+
}
|
|
210
|
+
try {
|
|
211
|
+
const verifySubs = await client_1.apiClient.getSubscriptions({}, typedParams.user_token);
|
|
212
|
+
const stillPresent = verifySubs.subscriptions.filter((s) => removedIds.has(s.id));
|
|
213
|
+
if (stillPresent.length === 0) {
|
|
214
|
+
verifiedRemoval = true;
|
|
215
|
+
break;
|
|
216
|
+
}
|
|
217
|
+
logger_1.logger.info({ attempt, stillPresent: stillPresent.map((s) => s.id) }, 'manage_subscription unsubscribe: server list still contains removed IDs, retrying verification');
|
|
218
|
+
}
|
|
219
|
+
catch (verifyErr) {
|
|
220
|
+
logger_1.logger.warn({ attempt, error: verifyErr.message }, 'manage_subscription unsubscribe: verification list call failed, skipping retry');
|
|
221
|
+
break;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
if (!verifiedRemoval) {
|
|
225
|
+
logger_1.logger.warn({ resourceIds: typedParams.resource_ids }, 'manage_subscription unsubscribe: server list still shows resources after 3 verification attempts — possible API propagation delay');
|
|
226
|
+
}
|
|
199
227
|
result = {
|
|
200
228
|
action: 'unsubscribe',
|
|
201
229
|
success: true,
|
|
@@ -204,13 +232,16 @@ async function manageSubscription(params) {
|
|
|
204
232
|
removedCount > 0 ? `Removed local files for ${removedCount} resource${removedCount > 1 ? 's' : ''}.` : null,
|
|
205
233
|
notFoundCount > 0 ? `${notFoundCount} resource${notFoundCount > 1 ? 's were' : ' was'} not installed locally.` : null,
|
|
206
234
|
unsubscribeLocalActions.length > 0
|
|
207
|
-
? `
|
|
235
|
+
? `IMPORTANT: You MUST execute ALL ${unsubscribeLocalActions.length} action(s) in local_actions_required immediately to delete local skill files and manifests. Do not skip any delete_file action.`
|
|
236
|
+
: null,
|
|
237
|
+
!verifiedRemoval
|
|
238
|
+
? `WARNING: The server subscription list may still show these resources due to propagation delay. If manage_subscription(list) still returns them, wait 1-2 seconds and retry — the removal is confirmed server-side.`
|
|
208
239
|
: null,
|
|
209
240
|
].filter(Boolean).join(' '),
|
|
210
241
|
sync_details: uninstallResults.map(r => ({ id: r.id, name: r.id, action: r.removed ? 'uninstalled' : 'not_found_locally' })),
|
|
211
242
|
...(unsubscribeLocalActions.length > 0 ? { local_actions_required: unsubscribeLocalActions } : {}),
|
|
212
243
|
};
|
|
213
|
-
logger_1.logger.info({ count: typedParams.resource_ids.length, removedCount }, 'Resources unsubscribed and local files cleaned up');
|
|
244
|
+
logger_1.logger.info({ count: typedParams.resource_ids.length, removedCount, verifiedRemoval }, 'Resources unsubscribed and local files cleaned up');
|
|
214
245
|
break;
|
|
215
246
|
}
|
|
216
247
|
case 'list': {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manage-subscription.js","sourceRoot":"","sources":["../../src/tools/manage-subscription.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAWH,gDAgYC;AAzYD,4CAAsD;AACtD,0CAA0C;AAC1C,4CAAwE;AAExE,qDAAiD;AACjD,6DAAyD;AACzD,kDAAoD;AACpD,8DAAmE;AAE5D,KAAK,UAAU,kBAAkB,CAAC,MAAe;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,4BAA4B;IAC5B,MAAM,WAAW,GAAG,MAAkC,CAAC;IAEvD,eAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,EAAE,4BAA4B,CAAC,CAAC;IAEnF,IAAI,CAAC;QACH,IAAI,MAAgC,CAAC;QAErC,QAAQ,WAAW,CAAC,MAAM,EAAE,CAAC;YAC3B,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,wBAAwB;gBACxB,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvE,MAAM,IAAA,8BAAqB,EACzB,cAAc,EACd,OAAO,EACP,+CAA+C,CAChD,CAAC;gBACJ,CAAC;gBAED,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,SAAS,EAAE,EAAE,6BAA6B,CAAC,CAAC;gBAExH,yBAAyB;gBACzB,MAAM,SAAS,GAAG,MAAM,kBAAS,CAAC,SAAS,CACzC,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,SAAS,EACrB,SAAS,EACT,WAAW,CAAC,UAAU,CACvB,CAAC;gBAEF,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBAE5F,mEAAmE;gBACnE,MAAM,cAAc,GAAG,WAAW,CAAC,SAAS,KAAK,KAAK,CAAC;gBACvD,IAAI,WAA+B,CAAC;gBACpC,IAAI,WAA4E,CAAC;gBACjF,IAAI,YAAmC,CAAC;gBAExC,IAAI,cAAc,IAAI,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzD,eAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,YAAY,EAAE,EAAE,4CAA4C,CAAC,CAAC;oBACrG,4DAA4D;oBAC5D,2EAA2E;oBAC3E,2EAA2E;oBAC3E,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAa,EAAC;wBACrC,IAAI,EAAE,aAAa;wBACnB,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,QAAQ;wBACpC,UAAU,EAAE,WAAW,CAAC,UAAU;wBAClC,YAAY,EAAE,WAAW,CAAC,YAAY;qBACvC,CAAC,CAAC;oBACH,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;wBAC1C,MAAM,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC;wBAC3B,WAAW,GAAG,cAAc,EAAE,CAAC,OAAO,CAAC,MAAM,YAAY,EAAE,CAAC,OAAO,CAAC,MAAM,YAAY,EAAE,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC;wBACjH,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;wBAClF,IAAI,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpD,YAAY,GAAG,EAAE,CAAC,aAAa,CAAC;wBAClC,CAAC;wBACD,eAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,qCAAqC,CAAC,CAAC;oBAC9E,CAAC;yBAAM,CAAC;wBACN,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,+DAA+D,CAAC,CAAC;wBAC1G,WAAW,GAAG,0DAA0D,CAAC;oBAC3E,CAAC;gBACH,CAAC;gBAED,mEAAmE;gBACnE,kEAAkE;gBAClE,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC7D,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;oBACvC,CAAC,CAAC,wGAAwG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,+GAA+G;oBACtP,CAAC,CAAC,SAAS,CAAC;gBAEd,MAAM,GAAG;oBACP,MAAM,EAAE,WAAW;oBACnB,OAAO,EAAE,IAAI;oBACb,aAAa,EAAE,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACjD,EAAE,EAAE,GAAG,CAAC,EAAE;wBACV,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,aAAa,EAAE,GAAG,CAAC,aAAa;qBACjC,CAAC,CAAC;oBACH,OAAO,EAAE;wBACP,8BAA8B,SAAS,CAAC,aAAa,CAAC,MAAM,YAAY,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;wBACxH,WAAW;wBACX,QAAQ;wBACR,0JAA0J;qBAC3J,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC3B,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACzD,CAAC;gBACF,MAAM;YACR,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,wBAAwB;gBACxB,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvE,MAAM,IAAA,8BAAqB,EACzB,cAAc,EACd,OAAO,EACP,iDAAiD,CAClD,CAAC;gBACJ,CAAC;gBAED,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,YAAY,EAAE,EAAE,iCAAiC,CAAC,CAAC;gBAE3F,wEAAwE;gBACxE,oEAAoE;gBACpE,qEAAqE;gBACrE,yDAAyD;gBACzD,MAAM,QAAQ,GAAwB,IAAI,GAAG,EAAE,CAAC;gBAChD,MAAM,QAAQ,GAAwB,IAAI,GAAG,EAAE,CAAC;gBAChD,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,MAAM,kBAAS,CAAC,gBAAgB,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;oBACjF,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;wBAC1C,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC3B,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;4BACX,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC7B,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,EAAE,2GAA2G,CAAC,CAAC;gBAC5J,CAAC;gBAED,kCAAkC;gBAClC,MAAM,kBAAS,CAAC,WAAW,CAAC,WAAW,CAAC,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;gBAC9E,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBAE7F,0DAA0D;gBAC1D,4EAA4E;gBAC5E,MAAM,gBAAgB,GAA4D,EAAE,CAAC;gBACrF,yEAAyE;gBACzE,MAAM,uBAAuB,GAA8C,EAAE,CAAC;gBAC9E,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;oBAClD,2EAA2E;oBAC3E,sFAAsF;oBACtF,6EAA6E;oBAC7E,MAAM,iBAAiB,GAAG,wBAAa,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CACpF,CAAC,IAAI,EAAE,EAAE;wBACP,sFAAsF;wBACtF,MAAM,UAAU,GAAG,wBAAa,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;wBACrF,OAAO,UAAU,EAAE,IAAI,EAAE,WAAW,KAAK,UAAU,CAAC;oBACtD,CAAC,CACF,CAAC;oBACF,IAAI,iBAAiB,EAAE,CAAC;wBACtB,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC3C,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,CAAwB,CAAC;wBACpE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC;wBACnE,wBAAa,CAAC,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;wBACrG,eAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,wCAAwC,CAAC,CAAC;wBAEvG,wEAAwE;wBACxE,mFAAmF;wBACnF,kFAAkF;wBAClF,uEAAuE;wBACvE,kFAAkF;wBAClF,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;4BAC7B,MAAM,QAAQ,GAAG,GAAG,IAAA,yCAAuB,EAAC,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC;4BACxE,MAAM,YAAY,GAAG,GAAG,IAAA,yCAAuB,EAAC,YAAY,CAAC,IAAI,YAAY,KAAK,CAAC;4BAEnF,uBAAuB,CAAC,IAAI,CAC1B,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAA6C,EACrG,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAA6C,CAC3G,CAAC;4BACF,eAAM,CAAC,IAAI,CACT,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,EACxC,uEAAuE,CACxE,CAAC;wBACJ,CAAC;wBAED,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,gCAAgC,YAAY,GAAG,EAAE,CAAC,CAAC;wBAClH,SAAS;oBACX,CAAC;oBACD,yEAAyE;oBACzE,yEAAyE;oBACzE,6DAA6D;oBAC7D,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBAChD,IAAI,aAAuB,CAAC;oBAC5B,IAAI,cAAc,EAAE,CAAC;wBACnB,qEAAqE;wBACrE,+DAA+D;wBAC/D,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;oBACpE,CAAC;yBAAM,CAAC;wBACN,wDAAwD;wBACxD,8CAA8C;wBAC9C,kDAAkD;wBAClD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAClC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;4BACzC,UAAU,CAAC;wBAC5B,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;4BACjC,UAAU;4BACV,UAAU,CAAC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC;4BACtD,QAAQ;yBACT,CAAC,CAAC,CAAC;oBACN,CAAC;oBAED,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAA+B,CAAC;oBAC5E,IAAI,WAAW,GAAG,KAAK,CAAC;oBACxB,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;wBACpC,MAAM,eAAe,GAAG,MAAM,IAAA,sCAAiB,EAAC;4BAC9C,mBAAmB,EAAE,OAAO;4BAC5B,mBAAmB,EAAE,KAAK,EAAE,6BAA6B;4BACzD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBACzD,CAAC,CAAC;wBACH,IAAI,eAAe,CAAC,OAAO,IAAI,eAAe,CAAC,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACzG,qFAAqF;4BACrF,mFAAmF;4BACnF,IAAI,eAAe,CAAC,IAAI,CAAC,sBAAsB,IAAI,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC1G,uBAAuB,CAAC,IAAI,CAC1B,GAAI,eAAe,CAAC,IAAI,CAAC,sBAAoE,CAC9F,CAAC;gCACF,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,EACxF,yEAAyE,CAC1E,CAAC;4BACJ,CAAC;4BACD,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,4BAA4B,OAAO,GAAG,EAAE,CAAC,CAAC;4BACzG,WAAW,GAAG,IAAI,CAAC;4BACnB,MAAM;wBACR,CAAC;oBACH,CAAC;oBACD,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,oDAAoD,EAAE,CAAC,CAAC;oBAC1H,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBACpE,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBAEtE,MAAM,GAAG;oBACP,MAAM,EAAE,aAAa;oBACrB,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP,kCAAkC,WAAW,CAAC,YAAY,CAAC,MAAM,YAAY,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;wBAC9H,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B,YAAY,YAAY,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;wBAC3G,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,YAAY,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,yBAAyB,CAAC,CAAC,CAAC,IAAI;wBACrH,uBAAuB,CAAC,MAAM,GAAG,CAAC;4BAChC,CAAC,CAAC,WAAW,uBAAuB,CAAC,MAAM,iFAAiF;4BAC5H,CAAC,CAAC,IAAI;qBACT,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC3B,YAAY,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;oBAC5H,GAAG,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnG,CAAC;gBAEF,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,mDAAmD,CAAC,CAAC;gBAC3H,MAAM;YACR,CAAC;YAED,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,KAAK,EAAE,EAAE,0BAA0B,CAAC,CAAC;gBAEhF,yBAAyB;gBACzB,MAAM,IAAI,GAAG,MAAM,kBAAS,CAAC,gBAAgB,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;gBAE1E,MAAM,GAAG;oBACP,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,IAAI;oBACb,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC5C,EAAE,EAAE,GAAG,CAAC,EAAE;wBACV,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,aAAa,EAAE,GAAG,CAAC,aAAa;qBACjC,CAAC,CAAC;oBACH,OAAO,EAAE,SAAS,IAAI,CAAC,KAAK,gBAAgB,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;iBAC1E,CAAC;gBAEF,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBACxE,MAAM;YACR,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,wBAAwB;gBACxB,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvE,MAAM,IAAA,8BAAqB,EACzB,cAAc,EACd,OAAO,EACP,qDAAqD,CACtD,CAAC;gBACJ,CAAC;gBAED,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,SAAS,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBAE/H,MAAM,cAAc,GAAG,MAAM,kBAAS,CAAC,SAAS,CAC9C,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,SAAS,EACrB,SAAS,EACT,WAAW,CAAC,UAAU,CACvB,CAAC;gBAEF,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,8BAA8B,CAAC,CAAC;gBAE5F,mEAAmE;gBACnE,MAAM,mBAAmB,GAAG,WAAW,CAAC,SAAS,KAAK,KAAK,CAAC;gBAC5D,IAAI,gBAAoC,CAAC;gBACzC,IAAI,gBAAiF,CAAC;gBACtF,IAAI,iBAAwC,CAAC;gBAE7C,IAAI,mBAAmB,IAAI,cAAc,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnE,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,4CAA4C,CAAC,CAAC;oBAC1G,MAAM,eAAe,GAAG,MAAM,IAAA,8BAAa,EAAC;wBAC1C,IAAI,EAAE,aAAa;wBACnB,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,QAAQ;wBACpC,UAAU,EAAE,WAAW,CAAC,UAAU;qBACnC,CAAC,CAAC;oBACH,IAAI,eAAe,CAAC,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;wBACpD,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC;wBAChC,gBAAgB,GAAG,cAAc,EAAE,CAAC,OAAO,CAAC,MAAM,YAAY,EAAE,CAAC,OAAO,CAAC,MAAM,YAAY,EAAE,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC;wBACtH,gBAAgB,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;wBACvF,IAAI,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpD,iBAAiB,GAAG,EAAE,CAAC,aAAa,CAAC;wBACvC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,gBAAgB,GAAG,0DAA0D,CAAC;oBAChF,CAAC;gBACH,CAAC;gBAED,MAAM,GAAG;oBACP,MAAM,EAAE,iBAAiB;oBACzB,OAAO,EAAE,IAAI;oBACb,aAAa,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACtD,EAAE,EAAE,GAAG,CAAC,EAAE;wBACV,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,aAAa,EAAE,GAAG,CAAC,aAAa;qBACjC,CAAC,CAAC;oBACH,OAAO,EAAE;wBACP,oCAAoC,cAAc,CAAC,aAAa,CAAC,MAAM,YAAY,cAAc,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;wBACxI,gBAAgB;qBACjB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC3B,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/D,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;gBACF,MAAM;YACR,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,wBAAwB;gBACxB,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvE,MAAM,IAAA,8BAAqB,EACzB,cAAc,EACd,OAAO,EACP,uDAAuD,CACxD,CAAC;gBACJ,CAAC;gBAED,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,uCAAuC,CAAC,CAAC;gBAElG,sEAAsE;gBACtE,OAAO,kBAAkB,CAAC,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;YACvE,CAAC;YAED,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,IAAA,8BAAqB,EACzB,QAAQ,EACR,QAAQ,EACR,kGAAkG,CACnG,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,IAAA,oBAAW,EAAC,qBAAqB,EAAE,SAAS,EAAE,MAAiC,EAAE,QAAQ,CAAC,CAAC;QAE3F,eAAM,CAAC,IAAI,CACT;YACE,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,QAAQ;SACT,EACD,4CAA4C,CAC7C,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,4BAA4B,CAAC,CAAC;QAClF,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,KAAK,YAAY,uBAAc,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;gBACpE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,+BAA+B;AAClB,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,gEAAgE;QAChE,gFAAgF;QAChF,oFAAoF;QACpF,oFAAoF;QACpF,0DAA0D;QAC1D,0GAA0G;QAC1G,sHAAsH;IACxH,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,mBAAmB,CAAC;aACnF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,2DAA2D;aACzE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,yGAAyG;oBACzG,sDAAsD;oBACtD,6FAA6F;gBAC/F,OAAO,EAAE,IAAI;aACd;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oBAAoB;gBACjC,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;gBAC7B,OAAO,EAAE,QAAQ;aAClB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,6BAA6B;gBAC1C,OAAO,EAAE,IAAI;aACd;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8EAA8E;oBAC9E,iFAAiF;aACpF;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,OAAO,EAAE,kBAAkB;CAC5B,CAAC"}
|
|
1
|
+
{"version":3,"file":"manage-subscription.js","sourceRoot":"","sources":["../../src/tools/manage-subscription.ts"],"names":[],"mappings":"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"}
|