@rsdoctor/utils 1.5.15 → 1.5.17
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/common/global-config.d.cts +23 -2
- package/dist/common/global-config.d.ts +23 -2
- package/dist/common.cjs +46 -8
- package/dist/common.js +46 -8
- package/package.json +2 -2
|
@@ -7,13 +7,34 @@
|
|
|
7
7
|
* builder1: portNumber,
|
|
8
8
|
* builder2: portNumber,
|
|
9
9
|
* },
|
|
10
|
-
*
|
|
10
|
+
* socketUrlList: {
|
|
11
|
+
* builder1: socketUrl,
|
|
12
|
+
* builder2: socketUrl,
|
|
13
|
+
* },
|
|
14
|
+
* port: portNumber, // The port of the last builder is used by default
|
|
15
|
+
* socketUrl: socketUrl, // The socket URL of the last builder is used by default
|
|
11
16
|
* }
|
|
12
17
|
*
|
|
13
18
|
* @param {number} port - The port number to write.
|
|
14
19
|
* @param {string} [builderName] - The name of the builder.
|
|
20
|
+
* @param {string} [socketToken] - The socket token of the builder.
|
|
15
21
|
*/
|
|
16
|
-
export
|
|
22
|
+
export interface McpConfig {
|
|
23
|
+
portList: Record<string, number>;
|
|
24
|
+
port: number;
|
|
25
|
+
socketUrlList?: Record<string, string>;
|
|
26
|
+
socketUrl?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare function readMcpConfig(): McpConfig | undefined;
|
|
29
|
+
export declare function getMcpServerInfo(builderName?: string): {
|
|
30
|
+
port?: number;
|
|
31
|
+
socketUrl?: string;
|
|
32
|
+
};
|
|
33
|
+
export declare function getMcpServerInfoByPort(port: number): {
|
|
34
|
+
port?: number;
|
|
35
|
+
socketUrl?: string;
|
|
36
|
+
};
|
|
37
|
+
export declare function writeMcpPort(port: number, builderName?: string, socketToken?: string): void;
|
|
17
38
|
/**
|
|
18
39
|
* @description Gets the path to the mcp.json file.
|
|
19
40
|
* @returns {string} The path to the mcp.json file.
|
|
@@ -7,13 +7,34 @@
|
|
|
7
7
|
* builder1: portNumber,
|
|
8
8
|
* builder2: portNumber,
|
|
9
9
|
* },
|
|
10
|
-
*
|
|
10
|
+
* socketUrlList: {
|
|
11
|
+
* builder1: socketUrl,
|
|
12
|
+
* builder2: socketUrl,
|
|
13
|
+
* },
|
|
14
|
+
* port: portNumber, // The port of the last builder is used by default
|
|
15
|
+
* socketUrl: socketUrl, // The socket URL of the last builder is used by default
|
|
11
16
|
* }
|
|
12
17
|
*
|
|
13
18
|
* @param {number} port - The port number to write.
|
|
14
19
|
* @param {string} [builderName] - The name of the builder.
|
|
20
|
+
* @param {string} [socketToken] - The socket token of the builder.
|
|
15
21
|
*/
|
|
16
|
-
export
|
|
22
|
+
export interface McpConfig {
|
|
23
|
+
portList: Record<string, number>;
|
|
24
|
+
port: number;
|
|
25
|
+
socketUrlList?: Record<string, string>;
|
|
26
|
+
socketUrl?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare function readMcpConfig(): McpConfig | undefined;
|
|
29
|
+
export declare function getMcpServerInfo(builderName?: string): {
|
|
30
|
+
port?: number;
|
|
31
|
+
socketUrl?: string;
|
|
32
|
+
};
|
|
33
|
+
export declare function getMcpServerInfoByPort(port: number): {
|
|
34
|
+
port?: number;
|
|
35
|
+
socketUrl?: string;
|
|
36
|
+
};
|
|
37
|
+
export declare function writeMcpPort(port: number, builderName?: string, socketToken?: string): void;
|
|
17
38
|
/**
|
|
18
39
|
* @description Gets the path to the mcp.json file.
|
|
19
40
|
* @returns {string} The path to the mcp.json file.
|
package/dist/common.cjs
CHANGED
|
@@ -504,6 +504,9 @@ for(var __rspack_i in (()=>{
|
|
|
504
504
|
var global_config_namespaceObject = {};
|
|
505
505
|
__webpack_require__.r(global_config_namespaceObject), __webpack_require__.d(global_config_namespaceObject, {
|
|
506
506
|
getMcpConfigPath: ()=>getMcpConfigPath,
|
|
507
|
+
getMcpServerInfo: ()=>getMcpServerInfo,
|
|
508
|
+
getMcpServerInfoByPort: ()=>getMcpServerInfoByPort,
|
|
509
|
+
readMcpConfig: ()=>readMcpConfig,
|
|
507
510
|
writeMcpPort: ()=>writeMcpPort
|
|
508
511
|
});
|
|
509
512
|
var common_summary = __webpack_require__("./src/common/summary.ts"), common_crypto = __webpack_require__("./src/common/crypto.ts"), algorithm = __webpack_require__("./src/common/algorithm.ts"), external_path_ = __webpack_require__("path"), external_path_default = __webpack_require__.n(external_path_);
|
|
@@ -1499,21 +1502,56 @@ for(var __rspack_i in (()=>{
|
|
|
1499
1502
|
};
|
|
1500
1503
|
};
|
|
1501
1504
|
var external_fs_ = __webpack_require__("fs"), external_fs_default = __webpack_require__.n(external_fs_), external_os_ = __webpack_require__("os"), external_os_default = __webpack_require__.n(external_os_);
|
|
1502
|
-
function
|
|
1505
|
+
function readMcpConfig() {
|
|
1506
|
+
let mcpPortFilePath = getMcpConfigPath();
|
|
1507
|
+
if (external_fs_default().existsSync(mcpPortFilePath)) try {
|
|
1508
|
+
return JSON.parse(external_fs_default().readFileSync(mcpPortFilePath, 'utf8'));
|
|
1509
|
+
} catch (error) {
|
|
1510
|
+
logger.logger.debug('Failed to parse mcp.json', error);
|
|
1511
|
+
return;
|
|
1512
|
+
}
|
|
1513
|
+
}
|
|
1514
|
+
function getMcpServerInfo(builderName) {
|
|
1515
|
+
let mcpJson = readMcpConfig();
|
|
1516
|
+
if (!mcpJson) return {};
|
|
1517
|
+
if (builderName) {
|
|
1518
|
+
let port = mcpJson.portList?.[builderName], socketUrl = mcpJson.socketUrlList?.[builderName];
|
|
1519
|
+
if (port || socketUrl) return {
|
|
1520
|
+
port,
|
|
1521
|
+
socketUrl
|
|
1522
|
+
};
|
|
1523
|
+
}
|
|
1524
|
+
return {
|
|
1525
|
+
port: mcpJson.port,
|
|
1526
|
+
socketUrl: mcpJson.socketUrl
|
|
1527
|
+
};
|
|
1528
|
+
}
|
|
1529
|
+
function getMcpServerInfoByPort(port) {
|
|
1530
|
+
let mcpJson = readMcpConfig();
|
|
1531
|
+
if (!mcpJson) return {};
|
|
1532
|
+
let builderName = Object.entries(mcpJson.portList || {}).find(([, builderPort])=>builderPort === port)?.[0];
|
|
1533
|
+
return builderName ? {
|
|
1534
|
+
port,
|
|
1535
|
+
socketUrl: mcpJson.socketUrlList?.[builderName]
|
|
1536
|
+
} : mcpJson.port === port ? {
|
|
1537
|
+
port,
|
|
1538
|
+
socketUrl: mcpJson.socketUrl
|
|
1539
|
+
} : {
|
|
1540
|
+
port
|
|
1541
|
+
};
|
|
1542
|
+
}
|
|
1543
|
+
function writeMcpPort(port, builderName, socketToken) {
|
|
1503
1544
|
let homeDir = external_os_default().homedir(), rsdoctorDir = external_path_default().join(homeDir, '.cache/rsdoctor'), mcpPortFilePath = external_path_default().join(rsdoctorDir, 'mcp.json');
|
|
1504
1545
|
external_fs_default().existsSync(rsdoctorDir) || external_fs_default().mkdirSync(rsdoctorDir, {
|
|
1505
1546
|
recursive: !0
|
|
1506
1547
|
});
|
|
1507
|
-
let
|
|
1548
|
+
let builderKey = builderName || 'builder', socketUrl = function(port, socketToken) {
|
|
1549
|
+
if (port && socketToken) return `ws://localhost:${port}?token=${encodeURIComponent(socketToken)}`;
|
|
1550
|
+
}(port, socketToken), mcpJson = readMcpConfig() ?? {
|
|
1508
1551
|
portList: {},
|
|
1509
1552
|
port: 0
|
|
1510
1553
|
};
|
|
1511
|
-
|
|
1512
|
-
mcpJson = JSON.parse(external_fs_default().readFileSync(mcpPortFilePath, 'utf8'));
|
|
1513
|
-
} catch (error) {
|
|
1514
|
-
logger.logger.debug('Failed to parse mcp.json', error);
|
|
1515
|
-
}
|
|
1516
|
-
mcpJson.portList || (mcpJson.portList = {}), mcpJson.portList[builderName || 'builder'] = port, mcpJson.port = port, external_fs_default().writeFileSync(mcpPortFilePath, JSON.stringify(mcpJson, null, 2), 'utf8');
|
|
1554
|
+
mcpJson.portList || (mcpJson.portList = {}), mcpJson.portList[builderKey] = port, mcpJson.socketUrlList || (mcpJson.socketUrlList = {}), socketUrl ? (mcpJson.socketUrlList[builderKey] = socketUrl, mcpJson.socketUrl = socketUrl) : (delete mcpJson.socketUrlList[builderKey], delete mcpJson.socketUrl), mcpJson.port = port, socketUrl && (mcpJson.socketUrlList || (mcpJson.socketUrlList = {}), mcpJson.socketUrlList[builderName || 'builder'] = socketUrl, mcpJson.socketUrl = socketUrl), external_fs_default().writeFileSync(mcpPortFilePath, JSON.stringify(mcpJson, null, 2), 'utf8');
|
|
1517
1555
|
}
|
|
1518
1556
|
function getMcpConfigPath() {
|
|
1519
1557
|
let homeDir = external_os_default().homedir(), rsdoctorDir = external_path_default().join(homeDir, '.cache/rsdoctor');
|
package/dist/common.js
CHANGED
|
@@ -48,6 +48,9 @@ __webpack_require__.r(file_namespaceObject), __webpack_require__.d(file_namespac
|
|
|
48
48
|
var global_config_namespaceObject = {};
|
|
49
49
|
__webpack_require__.r(global_config_namespaceObject), __webpack_require__.d(global_config_namespaceObject, {
|
|
50
50
|
getMcpConfigPath: ()=>getMcpConfigPath,
|
|
51
|
+
getMcpServerInfo: ()=>getMcpServerInfo,
|
|
52
|
+
getMcpServerInfoByPort: ()=>getMcpServerInfoByPort,
|
|
53
|
+
readMcpConfig: ()=>readMcpConfig,
|
|
51
54
|
writeMcpPort: ()=>writeMcpPort
|
|
52
55
|
});
|
|
53
56
|
var graph_namespaceObject = {};
|
|
@@ -1280,21 +1283,56 @@ let PACKAGE_SLUG = /[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*/, MODULE_PATH_PACKAGES
|
|
|
1280
1283
|
version: path && name && path.match(RegExp(`${name}@([\\d.]+)`))?.flat().slice(1)?.[0] || ''
|
|
1281
1284
|
};
|
|
1282
1285
|
};
|
|
1283
|
-
function
|
|
1286
|
+
function readMcpConfig() {
|
|
1287
|
+
let mcpPortFilePath = getMcpConfigPath();
|
|
1288
|
+
if (fs.existsSync(mcpPortFilePath)) try {
|
|
1289
|
+
return JSON.parse(fs.readFileSync(mcpPortFilePath, 'utf8'));
|
|
1290
|
+
} catch (error) {
|
|
1291
|
+
rsdoctorLogger.debug('Failed to parse mcp.json', error);
|
|
1292
|
+
return;
|
|
1293
|
+
}
|
|
1294
|
+
}
|
|
1295
|
+
function getMcpServerInfo(builderName) {
|
|
1296
|
+
let mcpJson = readMcpConfig();
|
|
1297
|
+
if (!mcpJson) return {};
|
|
1298
|
+
if (builderName) {
|
|
1299
|
+
let port = mcpJson.portList?.[builderName], socketUrl = mcpJson.socketUrlList?.[builderName];
|
|
1300
|
+
if (port || socketUrl) return {
|
|
1301
|
+
port,
|
|
1302
|
+
socketUrl
|
|
1303
|
+
};
|
|
1304
|
+
}
|
|
1305
|
+
return {
|
|
1306
|
+
port: mcpJson.port,
|
|
1307
|
+
socketUrl: mcpJson.socketUrl
|
|
1308
|
+
};
|
|
1309
|
+
}
|
|
1310
|
+
function getMcpServerInfoByPort(port) {
|
|
1311
|
+
let mcpJson = readMcpConfig();
|
|
1312
|
+
if (!mcpJson) return {};
|
|
1313
|
+
let builderName = Object.entries(mcpJson.portList || {}).find(([, builderPort])=>builderPort === port)?.[0];
|
|
1314
|
+
return builderName ? {
|
|
1315
|
+
port,
|
|
1316
|
+
socketUrl: mcpJson.socketUrlList?.[builderName]
|
|
1317
|
+
} : mcpJson.port === port ? {
|
|
1318
|
+
port,
|
|
1319
|
+
socketUrl: mcpJson.socketUrl
|
|
1320
|
+
} : {
|
|
1321
|
+
port
|
|
1322
|
+
};
|
|
1323
|
+
}
|
|
1324
|
+
function writeMcpPort(port, builderName, socketToken) {
|
|
1284
1325
|
let homeDir = os.homedir(), rsdoctorDir = path_0.join(homeDir, '.cache/rsdoctor'), mcpPortFilePath = path_0.join(rsdoctorDir, 'mcp.json');
|
|
1285
1326
|
fs.existsSync(rsdoctorDir) || fs.mkdirSync(rsdoctorDir, {
|
|
1286
1327
|
recursive: !0
|
|
1287
1328
|
});
|
|
1288
|
-
let
|
|
1329
|
+
let builderKey = builderName || 'builder', socketUrl = function(port, socketToken) {
|
|
1330
|
+
if (port && socketToken) return `ws://localhost:${port}?token=${encodeURIComponent(socketToken)}`;
|
|
1331
|
+
}(port, socketToken), mcpJson = readMcpConfig() ?? {
|
|
1289
1332
|
portList: {},
|
|
1290
1333
|
port: 0
|
|
1291
1334
|
};
|
|
1292
|
-
|
|
1293
|
-
mcpJson = JSON.parse(fs.readFileSync(mcpPortFilePath, 'utf8'));
|
|
1294
|
-
} catch (error) {
|
|
1295
|
-
rsdoctorLogger.debug('Failed to parse mcp.json', error);
|
|
1296
|
-
}
|
|
1297
|
-
mcpJson.portList || (mcpJson.portList = {}), mcpJson.portList[builderName || 'builder'] = port, mcpJson.port = port, fs.writeFileSync(mcpPortFilePath, JSON.stringify(mcpJson, null, 2), 'utf8');
|
|
1335
|
+
mcpJson.portList || (mcpJson.portList = {}), mcpJson.portList[builderKey] = port, mcpJson.socketUrlList || (mcpJson.socketUrlList = {}), socketUrl ? (mcpJson.socketUrlList[builderKey] = socketUrl, mcpJson.socketUrl = socketUrl) : (delete mcpJson.socketUrlList[builderKey], delete mcpJson.socketUrl), mcpJson.port = port, socketUrl && (mcpJson.socketUrlList || (mcpJson.socketUrlList = {}), mcpJson.socketUrlList[builderName || 'builder'] = socketUrl, mcpJson.socketUrl = socketUrl), fs.writeFileSync(mcpPortFilePath, JSON.stringify(mcpJson, null, 2), 'utf8');
|
|
1298
1336
|
}
|
|
1299
1337
|
function getMcpConfigPath() {
|
|
1300
1338
|
let homeDir = os.homedir(), rsdoctorDir = path_0.join(homeDir, '.cache/rsdoctor');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rsdoctor/utils",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.17",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/web-infra-dev/rsdoctor",
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
"picocolors": "^1.1.1",
|
|
102
102
|
"rslog": "^2.1.2",
|
|
103
103
|
"strip-ansi": "^6.0.1",
|
|
104
|
-
"@rsdoctor/types": "1.5.
|
|
104
|
+
"@rsdoctor/types": "1.5.17"
|
|
105
105
|
},
|
|
106
106
|
"devDependencies": {
|
|
107
107
|
"@types/babel__code-frame": "7.27.0",
|