flex-mcp 1.1.4 → 1.1.6
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/api/configs.js +12 -2
- package/dist/api/configs.js.map +1 -1
- package/dist/cli.d.ts +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +135 -84
- package/dist/cli.js.map +1 -1
- package/dist/daemon.d.ts +25 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +261 -0
- package/dist/daemon.js.map +1 -0
- package/dist/index.js +35 -2
- package/dist/index.js.map +1 -1
- package/dist/mcp/tool-sync.d.ts.map +1 -1
- package/dist/mcp/tool-sync.js +0 -1
- package/dist/mcp/tool-sync.js.map +1 -1
- package/dist/web/assets/{Blank-2vpGi200.js → Blank-BAn70pKV.js} +1 -1
- package/dist/web/assets/{Configs-4PrDyfwx.js → Configs-C6QxaALX.js} +1 -1
- package/dist/web/assets/{Dashboard-D8vYINT3.js → Dashboard-CC6Oo381.js} +2 -2
- package/dist/web/assets/InitScriptEditor-DzzTB5Qk.js +679 -0
- package/dist/web/assets/{Layout-CYzaFG4l.js → Layout-BOxnvITD.js} +1 -1
- package/dist/web/assets/{Layout-C5VF6KaE.js → Layout-CNq36nXL.js} +1 -1
- package/dist/web/assets/{Login-uQx8mYT4.js → Login-BxCS6qf-.js} +1 -1
- package/dist/web/assets/{Login-DEm7Yc0V.js → Login-zgQ_fCXm.js} +1 -1
- package/dist/web/assets/{Users-zZdxWL7h.js → Users-68dlwZ5K.js} +1 -1
- package/dist/web/assets/{index-NmCbGUEa.js → index-DAOSS2K-.js} +162 -162
- package/dist/web/assets/style-C2LUa6XO.css +1 -0
- package/dist/web/index.html +2 -2
- package/package.json +2 -1
- package/dist/web/assets/InitScriptEditor-RtEtxdk9.js +0 -679
- package/dist/web/assets/style-hUGligFl.css +0 -1
package/dist/daemon.js
ADDED
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 守护进程管理模块
|
|
3
|
+
* 实现类似 whistle w2 的进程管理功能
|
|
4
|
+
*/
|
|
5
|
+
import * as fs from 'fs';
|
|
6
|
+
import * as path from 'path';
|
|
7
|
+
import { spawn } from 'child_process';
|
|
8
|
+
import { getDataDir } from './config.js';
|
|
9
|
+
import { fileURLToPath } from 'url';
|
|
10
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
11
|
+
const __dirname = path.dirname(__filename);
|
|
12
|
+
// PID 文件路径(存储在数据目录)
|
|
13
|
+
const PID_FILE = path.join(getDataDir(), 'flex-mcp.pid');
|
|
14
|
+
const LOG_FILE = path.join(getDataDir(), 'flex-mcp.log');
|
|
15
|
+
/**
|
|
16
|
+
* 获取 PID 文件路径
|
|
17
|
+
*/
|
|
18
|
+
export function getPidFile() {
|
|
19
|
+
return PID_FILE;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* 读取 PID 文件
|
|
23
|
+
*/
|
|
24
|
+
function readPid() {
|
|
25
|
+
try {
|
|
26
|
+
if (!fs.existsSync(PID_FILE)) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
const pidStr = fs.readFileSync(PID_FILE, 'utf-8').trim();
|
|
30
|
+
const pid = parseInt(pidStr, 10);
|
|
31
|
+
return isNaN(pid) ? null : pid;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* 写入 PID 文件
|
|
39
|
+
*/
|
|
40
|
+
function writePid(pid) {
|
|
41
|
+
try {
|
|
42
|
+
fs.writeFileSync(PID_FILE, pid.toString(), 'utf-8');
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
console.error('❌ 无法写入 PID 文件:', error);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* 删除 PID 文件
|
|
50
|
+
*/
|
|
51
|
+
function removePid() {
|
|
52
|
+
try {
|
|
53
|
+
if (fs.existsSync(PID_FILE)) {
|
|
54
|
+
fs.unlinkSync(PID_FILE);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
// 忽略错误
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* 检查进程是否正在运行
|
|
63
|
+
*/
|
|
64
|
+
function isProcessRunning(pid) {
|
|
65
|
+
try {
|
|
66
|
+
// 发送信号 0 来检查进程是否存在(不会实际发送信号)
|
|
67
|
+
process.kill(pid, 0);
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
// ESRCH 表示进程不存在
|
|
72
|
+
if (error.code === 'ESRCH') {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
// 其他错误(如权限问题)也认为进程不存在
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* 获取服务器启动脚本路径
|
|
81
|
+
*/
|
|
82
|
+
function getServerScriptPath() {
|
|
83
|
+
// 如果是开发环境,使用 tsx 运行源文件
|
|
84
|
+
// 如果是生产环境,使用编译后的 dist/index.js
|
|
85
|
+
const distPath = path.join(__dirname, 'index.js');
|
|
86
|
+
const srcPath = path.join(__dirname, '..', 'src', 'index.ts');
|
|
87
|
+
// 检查编译后的文件是否存在
|
|
88
|
+
if (fs.existsSync(distPath)) {
|
|
89
|
+
return distPath;
|
|
90
|
+
}
|
|
91
|
+
// 否则使用源文件(开发环境)
|
|
92
|
+
return srcPath;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* 启动守护进程
|
|
96
|
+
*/
|
|
97
|
+
export async function startDaemon() {
|
|
98
|
+
// 检查是否已经运行
|
|
99
|
+
const existingPid = readPid();
|
|
100
|
+
if (existingPid !== null && isProcessRunning(existingPid)) {
|
|
101
|
+
console.log(`⚠️ 服务已在运行中 (PID: ${existingPid})`);
|
|
102
|
+
console.log(` 使用 "flex-mcp stop" 停止服务`);
|
|
103
|
+
console.log(` 使用 "flex-mcp status" 查看状态`);
|
|
104
|
+
process.exit(0);
|
|
105
|
+
}
|
|
106
|
+
// 清理旧的 PID 文件(如果存在但进程已停止)
|
|
107
|
+
if (existingPid !== null) {
|
|
108
|
+
removePid();
|
|
109
|
+
}
|
|
110
|
+
console.log('🚀 启动 flex-mcp 守护进程...');
|
|
111
|
+
// 获取服务器脚本路径
|
|
112
|
+
const serverScript = getServerScriptPath();
|
|
113
|
+
const isDev = serverScript.endsWith('.ts');
|
|
114
|
+
// 准备启动命令
|
|
115
|
+
let command;
|
|
116
|
+
let args;
|
|
117
|
+
if (isDev) {
|
|
118
|
+
// 开发环境:使用 tsx
|
|
119
|
+
command = 'npx';
|
|
120
|
+
args = ['tsx', serverScript];
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
// 生产环境:使用 node
|
|
124
|
+
command = 'node';
|
|
125
|
+
args = [serverScript];
|
|
126
|
+
}
|
|
127
|
+
// 创建日志文件流
|
|
128
|
+
const logStream = fs.createWriteStream(LOG_FILE, { flags: 'a' });
|
|
129
|
+
const logDate = new Date().toISOString();
|
|
130
|
+
logStream.write(`\n=== flex-mcp started at ${logDate} ===\n`);
|
|
131
|
+
// 启动子进程
|
|
132
|
+
const child = spawn(command, args, {
|
|
133
|
+
detached: true,
|
|
134
|
+
stdio: ['ignore', logStream, logStream],
|
|
135
|
+
env: {
|
|
136
|
+
...process.env,
|
|
137
|
+
// 标记为守护进程模式,避免无限递归
|
|
138
|
+
DAEMON_MODE: 'true',
|
|
139
|
+
},
|
|
140
|
+
});
|
|
141
|
+
// 监听错误
|
|
142
|
+
child.on('error', (error) => {
|
|
143
|
+
console.error('❌ 启动失败:', error);
|
|
144
|
+
logStream.end();
|
|
145
|
+
process.exit(1);
|
|
146
|
+
});
|
|
147
|
+
// 等待一下确保进程启动成功
|
|
148
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
149
|
+
// 检查进程是否还在运行
|
|
150
|
+
if (child.pid && isProcessRunning(child.pid)) {
|
|
151
|
+
// 写入 PID 文件
|
|
152
|
+
writePid(child.pid);
|
|
153
|
+
// 解除父子进程关系,让子进程成为独立的守护进程
|
|
154
|
+
child.unref();
|
|
155
|
+
console.log(`✅ 守护进程已启动 (PID: ${child.pid})`);
|
|
156
|
+
console.log(`📝 日志文件: ${LOG_FILE}`);
|
|
157
|
+
console.log(`\n💡 管理命令:`);
|
|
158
|
+
console.log(` flex-mcp stop # 停止服务`);
|
|
159
|
+
console.log(` flex-mcp restart # 重启服务`);
|
|
160
|
+
console.log(` flex-mcp status # 查看状态`);
|
|
161
|
+
console.log(` tail -f ${LOG_FILE} # 查看日志`);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
console.error('❌ 进程启动失败,请查看日志:', LOG_FILE);
|
|
165
|
+
logStream.end();
|
|
166
|
+
process.exit(1);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* 停止守护进程
|
|
171
|
+
*/
|
|
172
|
+
export async function stopDaemon() {
|
|
173
|
+
const pid = readPid();
|
|
174
|
+
if (pid === null) {
|
|
175
|
+
console.log('ℹ️ 服务未运行');
|
|
176
|
+
process.exit(0);
|
|
177
|
+
}
|
|
178
|
+
if (!isProcessRunning(pid)) {
|
|
179
|
+
console.log('ℹ️ 服务未运行(PID 文件存在但进程已停止)');
|
|
180
|
+
removePid();
|
|
181
|
+
process.exit(0);
|
|
182
|
+
}
|
|
183
|
+
console.log(`🛑 正在停止服务 (PID: ${pid})...`);
|
|
184
|
+
try {
|
|
185
|
+
// 发送 SIGTERM 信号(优雅关闭)
|
|
186
|
+
process.kill(pid, 'SIGTERM');
|
|
187
|
+
// 等待进程退出(最多等待 5 秒)
|
|
188
|
+
let waited = 0;
|
|
189
|
+
const maxWait = 5000;
|
|
190
|
+
const interval = 100;
|
|
191
|
+
while (waited < maxWait) {
|
|
192
|
+
if (!isProcessRunning(pid)) {
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
await new Promise((resolve) => setTimeout(resolve, interval));
|
|
196
|
+
waited += interval;
|
|
197
|
+
}
|
|
198
|
+
// 如果还在运行,强制杀死
|
|
199
|
+
if (isProcessRunning(pid)) {
|
|
200
|
+
console.log('⚠️ 进程未响应,强制终止...');
|
|
201
|
+
process.kill(pid, 'SIGKILL');
|
|
202
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
203
|
+
}
|
|
204
|
+
// 删除 PID 文件
|
|
205
|
+
removePid();
|
|
206
|
+
console.log('✅ 服务已停止');
|
|
207
|
+
}
|
|
208
|
+
catch (error) {
|
|
209
|
+
if (error.code === 'ESRCH') {
|
|
210
|
+
// 进程不存在
|
|
211
|
+
console.log('ℹ️ 进程已停止');
|
|
212
|
+
removePid();
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
console.error('❌ 停止服务失败:', error.message);
|
|
216
|
+
process.exit(1);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* 重启守护进程
|
|
222
|
+
*/
|
|
223
|
+
export async function restartDaemon() {
|
|
224
|
+
console.log('🔄 重启服务...\n');
|
|
225
|
+
await stopDaemon();
|
|
226
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
227
|
+
await startDaemon();
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* 查看守护进程状态
|
|
231
|
+
*/
|
|
232
|
+
export async function statusDaemon() {
|
|
233
|
+
const pid = readPid();
|
|
234
|
+
if (pid === null) {
|
|
235
|
+
console.log('ℹ️ 状态: 未运行');
|
|
236
|
+
console.log(` 使用 "flex-mcp start" 启动服务`);
|
|
237
|
+
process.exit(0);
|
|
238
|
+
}
|
|
239
|
+
const isRunning = isProcessRunning(pid);
|
|
240
|
+
if (isRunning) {
|
|
241
|
+
console.log(`✅ 状态: 运行中`);
|
|
242
|
+
console.log(` PID: ${pid}`);
|
|
243
|
+
console.log(` PID 文件: ${PID_FILE}`);
|
|
244
|
+
console.log(` 日志文件: ${LOG_FILE}`);
|
|
245
|
+
console.log(`\n💡 管理命令:`);
|
|
246
|
+
console.log(` flex-mcp stop # 停止服务`);
|
|
247
|
+
console.log(` flex-mcp restart # 重启服务`);
|
|
248
|
+
console.log(` tail -f ${LOG_FILE} # 查看日志`);
|
|
249
|
+
}
|
|
250
|
+
else {
|
|
251
|
+
console.log(`⚠️ 状态: 已停止(PID 文件存在但进程不存在)`);
|
|
252
|
+
console.log(` PID 文件: ${PID_FILE}`);
|
|
253
|
+
console.log(`\n💡 清理 PID 文件:`);
|
|
254
|
+
console.log(` rm ${PID_FILE}`);
|
|
255
|
+
console.log(`\n💡 启动服务:`);
|
|
256
|
+
console.log(` flex-mcp start`);
|
|
257
|
+
// 清理无效的 PID 文件
|
|
258
|
+
removePid();
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
//# sourceMappingURL=daemon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -122,12 +122,13 @@ else {
|
|
|
122
122
|
// 启动服务器
|
|
123
123
|
const port = parseInt(process.env.PORT || '3000');
|
|
124
124
|
const host = process.env.HOST || 'localhost';
|
|
125
|
+
let server = null;
|
|
125
126
|
async function start() {
|
|
126
127
|
// 初始化数据库
|
|
127
128
|
await initDatabase();
|
|
128
129
|
// 启动服务器
|
|
129
|
-
serve({
|
|
130
|
-
fetch: app.fetch,
|
|
130
|
+
server = serve({
|
|
131
|
+
fetch: app.fetch, // 类型兼容性修复
|
|
131
132
|
port,
|
|
132
133
|
hostname: host,
|
|
133
134
|
});
|
|
@@ -146,6 +147,38 @@ async function start() {
|
|
|
146
147
|
// 上报服务器启动统计(延迟执行,不阻塞启动)
|
|
147
148
|
reportStartup();
|
|
148
149
|
}
|
|
150
|
+
// 优雅关闭处理
|
|
151
|
+
async function gracefulShutdown(signal) {
|
|
152
|
+
console.log(`\n收到 ${signal} 信号,正在优雅关闭...`);
|
|
153
|
+
if (server) {
|
|
154
|
+
return new Promise((resolve) => {
|
|
155
|
+
// @hono/node-server 的 serve 返回的是 http.Server
|
|
156
|
+
const httpServer = server;
|
|
157
|
+
httpServer.close(() => {
|
|
158
|
+
console.log('✅ 服务器已关闭');
|
|
159
|
+
resolve();
|
|
160
|
+
});
|
|
161
|
+
// 10 秒后强制退出
|
|
162
|
+
setTimeout(() => {
|
|
163
|
+
console.log('⚠️ 强制退出');
|
|
164
|
+
process.exit(1);
|
|
165
|
+
}, 10000);
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
process.exit(0);
|
|
169
|
+
}
|
|
170
|
+
// 注册信号处理器
|
|
171
|
+
process.on('SIGTERM', () => gracefulShutdown('SIGTERM'));
|
|
172
|
+
process.on('SIGINT', () => gracefulShutdown('SIGINT'));
|
|
173
|
+
// 处理未捕获的异常
|
|
174
|
+
process.on('uncaughtException', (error) => {
|
|
175
|
+
console.error('❌ 未捕获的异常:', error);
|
|
176
|
+
gracefulShutdown('uncaughtException').then(() => process.exit(1));
|
|
177
|
+
});
|
|
178
|
+
process.on('unhandledRejection', (reason, _) => {
|
|
179
|
+
console.error('❌ 未处理的 Promise 拒绝:', reason);
|
|
180
|
+
gracefulShutdown('unhandledRejection').then(() => process.exit(1));
|
|
181
|
+
});
|
|
149
182
|
start().catch((error) => {
|
|
150
183
|
console.error('Failed to start server:', error);
|
|
151
184
|
process.exit(1);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-sync.d.ts","sourceRoot":"","sources":["../../src/mcp/tool-sync.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,mBAAmB,CAAC;AAGjE;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAiEhI;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,GAAE,OAAe,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"tool-sync.d.ts","sourceRoot":"","sources":["../../src/mcp/tool-sync.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,mBAAmB,CAAC;AAGjE;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAiEhI;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,GAAE,OAAe,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA0IhL"}
|
package/dist/mcp/tool-sync.js
CHANGED
|
@@ -126,7 +126,6 @@ export async function syncComponentTools(config, componentId, allowDisabled = fa
|
|
|
126
126
|
]);
|
|
127
127
|
console.log(`[ToolSync] Component ${component.name} returned ${componentTools.length} tools`);
|
|
128
128
|
// 获取组件配置
|
|
129
|
-
const toolPatches = component.config?.toolPatches || {};
|
|
130
129
|
const disabledTools = Array.isArray(component.config?.disabledTools)
|
|
131
130
|
? component.config.disabledTools
|
|
132
131
|
: [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-sync.js","sourceRoot":"","sources":["../../src/mcp/tool-sync.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tool-sync.js","sourceRoot":"","sources":["../../src/mcp/tool-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as e,c as o,o as a}from"./index-
|
|
1
|
+
import{d as e,c as o,o as a}from"./index-DAOSS2K-.js";import{_ as t}from"./_plugin-vue_export-helper-DlAUqK2U.js";const s={class:"blank-view"},n=e({__name:"Blank",setup(_){return(c,r)=>(a(),o("div",s))}}),m=t(n,[["__scopeId","data-v-1be224a2"]]);export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as N,u as P,r as d,p as S,I as j,c as v,b as e,f as s,y as m,m as _,w as o,g as a,B as H,O as T,P as V,e as E,t as b,V as k,D as I,J as D,o as r,h as L,K as O,L as x}from"./index-
|
|
1
|
+
import{d as N,u as P,r as d,p as S,I as j,c as v,b as e,f as s,y as m,m as _,w as o,g as a,B as H,O as T,P as V,e as E,t as b,V as k,D as I,J as D,o as r,h as L,K as O,L as x}from"./index-DAOSS2K-.js";import{u as G,M as J,C as K,I as W}from"./InitScriptEditor-DzzTB5Qk.js";import{_ as q}from"./_plugin-vue_export-helper-DlAUqK2U.js";const A={class:"configs-page"},F={style:{position:"absolute",width:"0",height:"0"}},Q={class:"configs-container"},R={class:"config-content"},X={class:"user-selector-section"},Y={class:"selector-header"},Z={key:0,class:"loading-state"},$={key:1,class:"config-stats"},ee={class:"stat-card"},te={class:"stat-content"},se={class:"stat-value"},oe={class:"stat-card"},ae={class:"stat-content"},ne={class:"stat-value"},le={key:0,class:"modal-content"},ie={class:"tab-content"},re={class:"tab-content"},de={class:"tab-content"},ce=N({__name:"Configs",setup(ve){const u=P(),p=G(),i=d(null),f=d(!1),y=d([]),g=d(!1),w=d("components"),l=S(()=>p.currentConfig),C=d([]);async function M(){try{const n=await D.get("/users");y.value=n.data.data.filter(t=>t.role!=="admin"),C.value=y.value.map(t=>({label:t.email,value:t.id}))}catch{u.error("加载用户列表失败")}}async function B(){if(i.value){f.value=!0;try{await p.fetchUserConfig(i.value)}catch(n){u.error(n.message)}finally{f.value=!1}}}function U(){l.value&&(w.value="components",g.value=!0)}async function h(n){if(i.value)try{await p.updateUserConfig(i.value,n),u.success("更新成功")}catch(t){u.error(t.message)}}function z(n){i.value=n,n&&B()}return j(()=>{M()}),(n,t)=>(r(),v("div",A,[(r(),v("svg",F,[...t[3]||(t[3]=[e("defs",null,[e("linearGradient",{id:"loading-gradient",x1:"0%",y1:"0%",x2:"100%",y2:"100%"},[e("stop",{offset:"0%","stop-color":"#dc2626"}),e("stop",{offset:"50%","stop-color":"#ea580c"}),e("stop",{offset:"100%","stop-color":"#f59e0b"})])],-1)])])),t[15]||(t[15]=e("div",{class:"page-header"},[e("div",null,[e("h1",{class:"page-title"},"配置管理"),e("p",{class:"page-description"},"查看和编辑用户的 MCP 配置")])],-1)),e("div",Q,[e("main",R,[e("div",X,[e("div",Y,[t[6]||(t[6]=e("div",{class:"selector-label"},[e("svg",{class:"label-icon",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197M13 7a4 4 0 11-8 0 4 4 0 018 0z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})]),e("span",null,"选择用户")],-1)),l.value?(r(),m(a(H),{key:0,type:"primary",size:"large",class:"edit-btn",onClick:U},{icon:o(()=>[...t[4]||(t[4]=[e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])]),default:o(()=>[t[5]||(t[5]=L(" 编辑配置 ",-1))]),_:1})):_("",!0)]),s(a(T),{value:i.value,"onUpdate:value":[t[0]||(t[0]=c=>i.value=c),z],options:C.value,placeholder:"请选择要配置的用户",size:"large",filterable:"",clearable:"",class:"user-select"},{empty:o(()=>[s(a(k),{description:"暂无用户"})]),_:1},8,["value","options"])]),s(a(V),{class:"content-divider"}),f.value?(r(),v("div",Z,[...t[7]||(t[7]=[e("div",{class:"loading-spinner"},[e("svg",{class:"spinner",viewBox:"0 0 50 50"},[e("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none","stroke-width":"4"})])],-1),e("p",{class:"loading-text"},"加载配置中...",-1)])])):l.value?(r(),v("div",$,[e("div",ee,[t[9]||(t[9]=E('<div class="stat-icon stat-icon--primary" data-v-e297e9f7><svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-e297e9f7><rect x="3" y="3" width="7" height="7" rx="1" stroke="currentColor" stroke-width="2" data-v-e297e9f7></rect><rect x="14" y="3" width="7" height="7" rx="1" stroke="currentColor" stroke-width="2" data-v-e297e9f7></rect><rect x="3" y="14" width="7" height="7" rx="1" stroke="currentColor" stroke-width="2" data-v-e297e9f7></rect><rect x="14" y="14" width="7" height="7" rx="1" stroke="currentColor" stroke-width="2" data-v-e297e9f7></rect></svg></div>',1)),e("div",te,[e("div",se,b(l.value.components.length),1),t[8]||(t[8]=e("div",{class:"stat-label"},"MCP 组件",-1))])]),e("div",oe,[t[11]||(t[11]=e("div",{class:"stat-icon stat-icon--success"},[e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),e("div",ae,[e("div",ne,b(l.value.customTools.length),1),t[10]||(t[10]=e("div",{class:"stat-label"},"自定义工具",-1))])])])):i.value?(r(),m(a(k),{key:3,description:"该用户暂无配置或加载失败",class:"empty-placeholder"},{icon:o(()=>[...t[13]||(t[13]=[e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])]),_:1})):(r(),m(a(k),{key:2,description:"请选择一个用户查看配置",class:"empty-placeholder"},{icon:o(()=>[...t[12]||(t[12]=[e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197M13 7a4 4 0 11-8 0 4 4 0 018 0z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])]),_:1}))])]),s(a(I),{show:g.value,"onUpdate:show":t[2]||(t[2]=c=>g.value=c),preset:"card",bordered:!1,class:"config-edit-modal",style:{width:"90vw",maxWidth:"1400px",height:"90vh"}},{header:o(()=>[...t[14]||(t[14]=[e("div",{class:"modal-header"},[e("div",{class:"modal-icon"},[e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e("path",{d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})])]),e("div",null,[e("h3",{class:"modal-title"},"编辑用户配置"),e("p",{class:"modal-subtitle"},"管理 MCP 组件、工具和脚本")])],-1)])]),default:o(()=>[l.value?(r(),v("div",le,[s(a(O),{value:w.value,"onUpdate:value":t[1]||(t[1]=c=>w.value=c),type:"line",animated:"",size:"large",class:"config-tabs"},{default:o(()=>[s(a(x),{name:"components",tab:"MCP 组件"},{default:o(()=>[e("div",ie,[s(J,{config:l.value,onUpdate:h},null,8,["config"])])]),_:1}),s(a(x),{name:"tools",tab:"自定义工具"},{default:o(()=>[e("div",re,[s(K,{config:l.value,onUpdate:h},null,8,["config"])])]),_:1}),s(a(x),{name:"init",tab:"初始化脚本"},{default:o(()=>[e("div",de,[s(W,{config:l.value,onUpdate:h},null,8,["config"])])]),_:1})]),_:1},8,["value"])])):_("",!0)]),_:1},8,["show"])]))}}),ge=q(ce,[["__scopeId","data-v-e297e9f7"]]);export{ge as default};
|