You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
9.8 KiB
81 lines
9.8 KiB
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
// @ts-ignore
|
|
const package_json_1 = __importDefault(require("../../../../package.json"));
|
|
/** MCP 服务:配置弹窗 / 启停 / 端口修改 / 配置复制。 */
|
|
exports.default = {
|
|
openMcpDialog() {
|
|
this.showMcpDialog = true;
|
|
this.mcpPort = this.mcp.port || 33010;
|
|
},
|
|
closeMcpDialog() {
|
|
this.showMcpDialog = false;
|
|
},
|
|
async toggleMcp() {
|
|
if (this.mcpBusy) {
|
|
return;
|
|
}
|
|
this.mcpBusy = true;
|
|
try {
|
|
if (this.mcp.running) {
|
|
await Editor.Message.request(package_json_1.default.name, 'stop-mcp');
|
|
}
|
|
else {
|
|
await Editor.Message.request(package_json_1.default.name, 'start-mcp', this.mcpPort);
|
|
}
|
|
await this.loadMcpState();
|
|
}
|
|
finally {
|
|
this.mcpBusy = false;
|
|
}
|
|
},
|
|
/** 保存弹窗中修改的端口并重启 MCP 服务(端口变化时)。 */
|
|
async applyMcpPort() {
|
|
const port = Math.max(1, Math.min(65535, Math.floor(Number(this.mcpPort) || 33010)));
|
|
this.mcpPort = port;
|
|
if (this.mcp.running && this.mcp.port !== port) {
|
|
this.mcpBusy = true;
|
|
try {
|
|
await Editor.Message.request(package_json_1.default.name, 'stop-mcp');
|
|
await Editor.Message.request(package_json_1.default.name, 'start-mcp', port);
|
|
await this.loadMcpState();
|
|
}
|
|
finally {
|
|
this.mcpBusy = false;
|
|
}
|
|
}
|
|
else if (!this.mcp.running) {
|
|
// 未运行则仅保存端口,供后续启动使用
|
|
this.mcpPort = port;
|
|
}
|
|
},
|
|
async loadMcpState() {
|
|
try {
|
|
const st = await Editor.Message.request(package_json_1.default.name, 'get-mcp-state');
|
|
if (st && typeof st === 'object') {
|
|
this.mcp = {
|
|
running: !!st.running,
|
|
port: Number(st.port) || 0,
|
|
url: String(st.url || ''),
|
|
token: String(st.token || ''),
|
|
};
|
|
}
|
|
}
|
|
catch (_a) {
|
|
/* 忽略 */
|
|
}
|
|
},
|
|
async copyMcpConfig() {
|
|
const text = `{\n "mcpServers": {\n "yyka-runtime-inspector": {\n "url": "${this.mcp.url}",\n "headers": { "Authorization": "Bearer ${this.mcp.token}" }\n }\n }\n}`;
|
|
await this.writeClipboard(text);
|
|
this.mcpCopied = true;
|
|
window.clearTimeout(this.mcpCopyTimer);
|
|
this.mcpCopyTimer = window.setTimeout(() => {
|
|
this.mcpCopied = false;
|
|
}, 1600);
|
|
},
|
|
};
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWNwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc291cmNlL3BhbmVscy9kZWZhdWx0L21ldGhvZHMvbWNwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsYUFBYTtBQUNiLDRFQUFtRDtBQUVuRCxzQ0FBc0M7QUFDdEMsa0JBQWU7SUFDWCxhQUFhO1FBQ1QsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUM7SUFDMUMsQ0FBQztJQUNELGNBQWM7UUFDVixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBQ0QsS0FBSyxDQUFDLFNBQVM7UUFDWCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNmLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDO1lBQ0QsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNuQixNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLHNCQUFXLENBQUMsSUFBVyxFQUFFLFVBQWlCLENBQUMsQ0FBQztZQUM3RSxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osTUFBTSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxzQkFBVyxDQUFDLElBQVcsRUFBRSxXQUFrQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM1RixDQUFDO1lBQ0QsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDOUIsQ0FBQztnQkFBUyxDQUFDO1lBQ1AsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFDRCxtQ0FBbUM7SUFDbkMsS0FBSyxDQUFDLFlBQVk7UUFDZCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBSSxDQUFDO2dCQUNELE1BQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsc0JBQVcsQ0FBQyxJQUFXLEVBQUUsVUFBaUIsQ0FBQyxDQUFDO2dCQUN6RSxNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLHNCQUFXLENBQUMsSUFBVyxFQUFFLFdBQWtCLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ2hGLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzlCLENBQUM7b0JBQVMsQ0FBQztnQkFDUCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUN6QixDQUFDO1FBQ0wsQ0FBQzthQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzNCLG9CQUFvQjtZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUN4QixDQUFDO0lBQ0wsQ0FBQztJQUNELEtBQUssQ0FBQyxZQUFZO1FBQ2QsSUFBSSxDQUFDO1lBQ0QsTUFBTSxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxzQkFBVyxDQUFDLElBQVcsRUFBRSxlQUFzQixDQUFDLENBQUM7WUFDekYsSUFBSSxFQUFFLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxHQUFHLEdBQUc7b0JBQ1AsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTztvQkFDckIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztvQkFDMUIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQztvQkFDekIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztpQkFDaEMsQ0FBQztZQUNOLENBQUM7UUFDTCxDQUFDO1FBQUMsV0FBTSxDQUFDO1lBQ0wsUUFBUTtRQUNaLENBQUM7SUFDTCxDQUFDO0lBQ0QsS0FBSyxDQUFDLGFBQWE7UUFDZixNQUFNLElBQUksR0FBRyx3RUFBd0UsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLG1EQUFtRCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssb0JBQW9CLENBQUM7UUFDdkwsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2IsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtaWdub3JlXG5pbXBvcnQgcGFja2FnZUpTT04gZnJvbSAnLi4vLi4vLi4vLi4vcGFja2FnZS5qc29uJztcblxuLyoqIE1DUCDmnI3liqHvvJrphY3nva7lvLnnqpcgLyDlkK/lgZwgLyDnq6/lj6Pkv67mlLkgLyDphY3nva7lpI3liLbjgIIgKi9cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBvcGVuTWNwRGlhbG9nKHRoaXM6IGFueSkge1xuICAgICAgICB0aGlzLnNob3dNY3BEaWFsb2cgPSB0cnVlO1xuICAgICAgICB0aGlzLm1jcFBvcnQgPSB0aGlzLm1jcC5wb3J0IHx8IDMzMDEwO1xuICAgIH0sXG4gICAgY2xvc2VNY3BEaWFsb2codGhpczogYW55KSB7XG4gICAgICAgIHRoaXMuc2hvd01jcERpYWxvZyA9IGZhbHNlO1xuICAgIH0sXG4gICAgYXN5bmMgdG9nZ2xlTWNwKHRoaXM6IGFueSkge1xuICAgICAgICBpZiAodGhpcy5tY3BCdXN5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5tY3BCdXN5ID0gdHJ1ZTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmICh0aGlzLm1jcC5ydW5uaW5nKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgRWRpdG9yLk1lc3NhZ2UucmVxdWVzdChwYWNrYWdlSlNPTi5uYW1lIGFzIGFueSwgJ3N0b3AtbWNwJyBhcyBhbnkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBhd2FpdCBFZGl0b3IuTWVzc2FnZS5yZXF1ZXN0KHBhY2thZ2VKU09OLm5hbWUgYXMgYW55LCAnc3RhcnQtbWNwJyBhcyBhbnksIHRoaXMubWNwUG9ydCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmxvYWRNY3BTdGF0ZSgpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5tY3BCdXN5ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9LFxuICAgIC8qKiDkv53lrZjlvLnnqpfkuK3kv67mlLnnmoTnq6/lj6Plubbph43lkK8gTUNQIOacjeWKoe+8iOerr+WPo+WPmOWMluaXtu+8ieOAgiAqL1xuICAgIGFzeW5jIGFwcGx5TWNwUG9ydCh0aGlzOiBhbnkpIHtcbiAgICAgICAgY29uc3QgcG9ydCA9IE1hdGgubWF4KDEsIE1hdGgubWluKDY1NTM1LCBNYXRoLmZsb29yKE51bWJlcih0aGlzLm1jcFBvcnQpIHx8IDMzMDEwKSkpO1xuICAgICAgICB0aGlzLm1jcFBvcnQgPSBwb3J0O1xuICAgICAgICBpZiAodGhpcy5tY3AucnVubmluZyAmJiB0aGlzLm1jcC5wb3J0ICE9PSBwb3J0KSB7XG4gICAgICAgICAgICB0aGlzLm1jcEJ1c3kgPSB0cnVlO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBhd2FpdCBFZGl0b3IuTWVzc2FnZS5yZXF1ZXN0KHBhY2thZ2VKU09OLm5hbWUgYXMgYW55LCAnc3RvcC1tY3AnIGFzIGFueSk7XG4gICAgICAgICAgICAgICAgYXdhaXQgRWRpdG9yLk1lc3NhZ2UucmVxdWVzdChwYWNrYWdlSlNPTi5uYW1lIGFzIGFueSwgJ3N0YXJ0LW1jcCcgYXMgYW55LCBwb3J0KTtcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmxvYWRNY3BTdGF0ZSgpO1xuICAgICAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1jcEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5tY3AucnVubmluZykge1xuICAgICAgICAgICAgLy8g5pyq6L+Q6KGM5YiZ5LuF5L+d5a2Y56uv5Y+j77yM5L6b5ZCO57ut5ZCv5Yqo5L2/55SoXG4gICAgICAgICAgICB0aGlzLm1jcFBvcnQgPSBwb3J0O1xuICAgICAgICB9XG4gICAgfSxcbiAgICBhc3luYyBsb2FkTWNwU3RhdGUodGhpczogYW55KSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBzdCA9IGF3YWl0IEVkaXRvci5NZXNzYWdlLnJlcXVlc3QocGFja2FnZUpTT04ubmFtZSBhcyBhbnksICdnZXQtbWNwLXN0YXRlJyBhcyBhbnkpO1xuICAgICAgICAgICAgaWYgKHN0ICYmIHR5cGVvZiBzdCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1jcCA9IHtcbiAgICAgICAgICAgICAgICAgICAgcnVubmluZzogISFzdC5ydW5uaW5nLFxuICAgICAgICAgICAgICAgICAgICBwb3J0OiBOdW1iZXIoc3QucG9ydCkgfHwgMCxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiBTdHJpbmcoc3QudXJsIHx8ICcnKSxcbiAgICAgICAgICAgICAgICAgICAgdG9rZW46IFN0cmluZyhzdC50b2tlbiB8fCAnJyksXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAvKiDlv73nlaUgKi9cbiAgICAgICAgfVxuICAgIH0sXG4gICAgYXN5bmMgY29weU1jcENvbmZpZyh0aGlzOiBhbnkpIHtcbiAgICAgICAgY29uc3QgdGV4dCA9IGB7XFxuICBcIm1jcFNlcnZlcnNcIjoge1xcbiAgICBcInl5a2EtcnVudGltZS1pbnNwZWN0b3JcIjoge1xcbiAgICAgIFwidXJsXCI6IFwiJHt0aGlzLm1jcC51cmx9XCIsXFxuICAgICAgXCJoZWFkZXJzXCI6IHsgXCJBdXRob3JpemF0aW9uXCI6IFwiQmVhcmVyICR7dGhpcy5tY3AudG9rZW59XCIgfVxcbiAgICB9XFxuICB9XFxufWA7XG4gICAgICAgIGF3YWl0IHRoaXMud3JpdGVDbGlwYm9hcmQodGV4dCk7XG4gICAgICAgIHRoaXMubWNwQ29waWVkID0gdHJ1ZTtcbiAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLm1jcENvcHlUaW1lcik7XG4gICAgICAgIHRoaXMubWNwQ29weVRpbWVyID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5tY3BDb3BpZWQgPSBmYWxzZTtcbiAgICAgICAgfSwgMTYwMCk7XG4gICAgfSxcbn07XG4iXX0=
|