cc-code-status 2.0.4 → 2.0.5
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/README.md +38 -64
- package/dist/cli-legacy.d.ts +0 -1
- package/dist/cli-legacy.d.ts.map +1 -1
- package/dist/cli-legacy.js +0 -200
- package/dist/cli-legacy.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +90 -322
- package/dist/cli.js.map +1 -1
- package/dist/config/manager.d.ts +121 -0
- package/dist/config/manager.d.ts.map +1 -0
- package/dist/config/manager.js +273 -0
- package/dist/config/manager.js.map +1 -0
- package/dist/config/validator.d.ts +17 -0
- package/dist/config/validator.d.ts.map +1 -0
- package/dist/config/validator.js +39 -0
- package/dist/config/validator.js.map +1 -0
- package/dist/launcher.d.ts +27 -0
- package/dist/launcher.d.ts.map +1 -0
- package/dist/launcher.js +149 -0
- package/dist/launcher.js.map +1 -0
- package/dist/ui/prompts.js +3 -3
- package/dist/ui/prompts.js.map +1 -1
- package/dist/ui/welcome.d.ts.map +1 -1
- package/dist/ui/welcome.js +6 -7
- package/dist/ui/welcome.js.map +1 -1
- package/dist/utils/installer.d.ts +20 -0
- package/dist/utils/installer.d.ts.map +1 -0
- package/dist/utils/installer.js +68 -0
- package/dist/utils/installer.js.map +1 -0
- package/package.json +3 -3
- package/dist/config/extended-manager.d.ts +0 -26
- package/dist/config/extended-manager.d.ts.map +0 -1
- package/dist/config/extended-manager.js +0 -42
- package/dist/config/extended-manager.js.map +0 -1
- package/dist/launcher/extended-launcher.d.ts +0 -27
- package/dist/launcher/extended-launcher.d.ts.map +0 -1
- package/dist/launcher/extended-launcher.js +0 -87
- package/dist/launcher/extended-launcher.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 安装检查工具
|
|
3
|
+
* 检查 Claude Code 是否已安装
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* 获取 Claude 命令名称(跨平台)
|
|
7
|
+
* @returns Claude 命令名称
|
|
8
|
+
*/
|
|
9
|
+
export declare function getClaudeCommand(): string;
|
|
10
|
+
/**
|
|
11
|
+
* 检查 Claude Code 是否已安装
|
|
12
|
+
* @returns 是否已安装
|
|
13
|
+
*/
|
|
14
|
+
export declare function checkClaudeInstallation(): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* 获取 Claude Code 版本
|
|
17
|
+
* @returns 版本号或 undefined
|
|
18
|
+
*/
|
|
19
|
+
export declare function getClaudeVersion(): string | undefined;
|
|
20
|
+
//# sourceMappingURL=installer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/utils/installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAGzC;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAsBjD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAWrD"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 安装检查工具
|
|
4
|
+
* 检查 Claude Code 是否已安装
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.getClaudeCommand = getClaudeCommand;
|
|
11
|
+
exports.checkClaudeInstallation = checkClaudeInstallation;
|
|
12
|
+
exports.getClaudeVersion = getClaudeVersion;
|
|
13
|
+
const child_process_1 = require("child_process");
|
|
14
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
15
|
+
const logger_1 = require("./logger");
|
|
16
|
+
/**
|
|
17
|
+
* 获取 Claude 命令名称(跨平台)
|
|
18
|
+
* @returns Claude 命令名称
|
|
19
|
+
*/
|
|
20
|
+
function getClaudeCommand() {
|
|
21
|
+
const isWindows = process.platform === 'win32';
|
|
22
|
+
return isWindows ? 'claude.cmd' : 'claude';
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 检查 Claude Code 是否已安装
|
|
26
|
+
* @returns 是否已安装
|
|
27
|
+
*/
|
|
28
|
+
function checkClaudeInstallation() {
|
|
29
|
+
try {
|
|
30
|
+
const isWindows = process.platform === 'win32';
|
|
31
|
+
const checkCommand = isWindows ? 'where claude' : 'which claude';
|
|
32
|
+
(0, child_process_1.execSync)(checkCommand, {
|
|
33
|
+
stdio: 'pipe',
|
|
34
|
+
encoding: 'utf8'
|
|
35
|
+
});
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
console.log('');
|
|
40
|
+
logger_1.Logger.error('未找到 Claude Code');
|
|
41
|
+
console.log('');
|
|
42
|
+
console.log(chalk_1.default.white('请先安装 Claude Code:'));
|
|
43
|
+
console.log(chalk_1.default.cyan(' npm install -g @anthropic-ai/claude-code'));
|
|
44
|
+
console.log('');
|
|
45
|
+
console.log(chalk_1.default.gray('或访问官方文档:'));
|
|
46
|
+
console.log(chalk_1.default.gray(' https://docs.claude.com/code'));
|
|
47
|
+
console.log('');
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* 获取 Claude Code 版本
|
|
53
|
+
* @returns 版本号或 undefined
|
|
54
|
+
*/
|
|
55
|
+
function getClaudeVersion() {
|
|
56
|
+
try {
|
|
57
|
+
const claudeCmd = getClaudeCommand();
|
|
58
|
+
const output = (0, child_process_1.execSync)(`${claudeCmd} --version`, {
|
|
59
|
+
stdio: 'pipe',
|
|
60
|
+
encoding: 'utf8'
|
|
61
|
+
});
|
|
62
|
+
return output.trim();
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=installer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/utils/installer.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;AAUH,4CAGC;AAMD,0DAsBC;AAMD,4CAWC;AAxDD,iDAAyC;AACzC,kDAA0B;AAC1B,qCAAkC;AAElC;;;GAGG;AACH,SAAgB,gBAAgB;IAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,OAAO,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB;IACrC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;QAC/C,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;QAEjE,IAAA,wBAAQ,EAAC,YAAY,EAAE;YACrB,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,eAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB;IAC9B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,GAAG,SAAS,YAAY,EAAE;YAChD,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cc-code-status",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.5",
|
|
4
4
|
"description": "Enhanced Claude Code launcher with statusline - supports multiple custom API configurations and code statistics",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -41,12 +41,12 @@
|
|
|
41
41
|
},
|
|
42
42
|
"homepage": "https://github.com/willflow/cc-code-status#readme",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"ccgo": "^1.0.0",
|
|
45
44
|
"inquirer": "^8.2.7",
|
|
46
45
|
"chalk": "^4.1.2",
|
|
47
46
|
"boxen": "^5.1.2",
|
|
48
47
|
"conf": "^10.2.0",
|
|
49
|
-
"ora": "^5.4.1"
|
|
48
|
+
"ora": "^5.4.1",
|
|
49
|
+
"ccgo": "latest"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@types/node": "^20.11.10",
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 扩展的配置管理器
|
|
3
|
-
* 继承 ccgo 的 ConfigManager 并添加 SyncConfig 支持
|
|
4
|
-
*/
|
|
5
|
-
import { ConfigManager as BaseConfigManager } from 'ccgo';
|
|
6
|
-
export interface SyncConfig {
|
|
7
|
-
apiUrl: string;
|
|
8
|
-
syncInterval: number;
|
|
9
|
-
enabled: boolean;
|
|
10
|
-
excludedProjects?: string[];
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* 扩展的配置管理器(添加同步配置支持)
|
|
14
|
-
*/
|
|
15
|
-
export declare class ExtendedConfigManager extends BaseConfigManager {
|
|
16
|
-
/**
|
|
17
|
-
* 获取同步配置
|
|
18
|
-
*/
|
|
19
|
-
getSyncConfig(): SyncConfig;
|
|
20
|
-
/**
|
|
21
|
-
* 保存同步配置
|
|
22
|
-
*/
|
|
23
|
-
saveSyncConfig(syncConfig: Partial<SyncConfig>): void;
|
|
24
|
-
}
|
|
25
|
-
export { ApiConfig, ProfileConfig, FullConfig } from 'ccgo';
|
|
26
|
-
//# sourceMappingURL=extended-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extended-manager.d.ts","sourceRoot":"","sources":["../../src/config/extended-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,MAAM,CAAC;AAG1D,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,iBAAiB;IAC1D;;OAEG;IACH,aAAa,IAAI,UAAU;IAa3B;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;CAUtD;AAGD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* 扩展的配置管理器
|
|
4
|
-
* 继承 ccgo 的 ConfigManager 并添加 SyncConfig 支持
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.ExtendedConfigManager = void 0;
|
|
8
|
-
const ccgo_1 = require("ccgo");
|
|
9
|
-
const constants_1 = require("./constants");
|
|
10
|
-
/**
|
|
11
|
-
* 扩展的配置管理器(添加同步配置支持)
|
|
12
|
-
*/
|
|
13
|
-
class ExtendedConfigManager extends ccgo_1.ConfigManager {
|
|
14
|
-
/**
|
|
15
|
-
* 获取同步配置
|
|
16
|
-
*/
|
|
17
|
-
getSyncConfig() {
|
|
18
|
-
const defaultConfig = constants_1.DEFAULT_SYNC_CONFIG;
|
|
19
|
-
// @ts-ignore - 访问父类的 config 属性
|
|
20
|
-
const config = this.config;
|
|
21
|
-
return {
|
|
22
|
-
apiUrl: config.get('sync.apiUrl', defaultConfig.apiUrl),
|
|
23
|
-
syncInterval: config.get('sync.syncInterval', defaultConfig.syncInterval),
|
|
24
|
-
enabled: config.get('sync.enabled', defaultConfig.enabled),
|
|
25
|
-
excludedProjects: config.get('sync.excludedProjects', [])
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* 保存同步配置
|
|
30
|
-
*/
|
|
31
|
-
saveSyncConfig(syncConfig) {
|
|
32
|
-
const current = this.getSyncConfig();
|
|
33
|
-
// @ts-ignore - 访问父类的 config 属性
|
|
34
|
-
const config = this.config;
|
|
35
|
-
config.set('sync', {
|
|
36
|
-
...current,
|
|
37
|
-
...syncConfig
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
exports.ExtendedConfigManager = ExtendedConfigManager;
|
|
42
|
-
//# sourceMappingURL=extended-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extended-manager.js","sourceRoot":"","sources":["../../src/config/extended-manager.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,+BAA0D;AAC1D,2CAAkD;AASlD;;GAEG;AACH,MAAa,qBAAsB,SAAQ,oBAAiB;IAC1D;;OAEG;IACH,aAAa;QACX,MAAM,aAAa,GAAG,+BAAmB,CAAC;QAC1C,+BAA+B;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC;YACvD,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,aAAa,CAAC,YAAY,CAAC;YACzE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC;YAC1D,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC;SAC1D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,UAA+B;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACrC,+BAA+B;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE;YACjB,GAAG,OAAO;YACV,GAAG,UAAU;SACd,CAAC,CAAC;IACL,CAAC;CACF;AA9BD,sDA8BC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 扩展的 Claude Code 启动器
|
|
3
|
-
* 继承 ccgo 的 ClaudeLauncher 并添加统计显示功能
|
|
4
|
-
*/
|
|
5
|
-
import { ClaudeLauncher as BaseLauncher, LaunchOptions as BaseOptions } from 'ccgo';
|
|
6
|
-
import { ExtendedConfigManager } from '../config/extended-manager';
|
|
7
|
-
export interface ExtendedLaunchOptions extends BaseOptions {
|
|
8
|
-
showStats?: boolean;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* 扩展的 Claude 启动器(添加统计显示)
|
|
12
|
-
*/
|
|
13
|
-
export declare class ExtendedClaudeLauncher extends BaseLauncher {
|
|
14
|
-
constructor(config: ExtendedConfigManager, profileName?: string);
|
|
15
|
-
/**
|
|
16
|
-
* 启动 Claude Code(覆盖父类方法以添加统计显示)
|
|
17
|
-
*/
|
|
18
|
-
launch(options?: ExtendedLaunchOptions): Promise<{
|
|
19
|
-
exitCode: number;
|
|
20
|
-
hasApiError: boolean;
|
|
21
|
-
}>;
|
|
22
|
-
/**
|
|
23
|
-
* 显示今日统计
|
|
24
|
-
*/
|
|
25
|
-
private showTodayStats;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=extended-launcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extended-launcher.d.ts","sourceRoot":"","sources":["../../src/launcher/extended-launcher.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,IAAI,YAAY,EAAE,aAAa,IAAI,WAAW,EAAE,MAAM,MAAM,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,YAAY;gBAEpD,MAAM,EAAE,qBAAqB,EAC7B,WAAW,CAAC,EAAE,MAAM;IAKtB;;OAEG;IACG,MAAM,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,CAAC;IAetG;;OAEG;YACW,cAAc;CAkB7B"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* 扩展的 Claude Code 启动器
|
|
4
|
-
* 继承 ccgo 的 ClaudeLauncher 并添加统计显示功能
|
|
5
|
-
*/
|
|
6
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
-
if (k2 === undefined) k2 = k;
|
|
8
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(o, k2, desc);
|
|
13
|
-
}) : (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
o[k2] = m[k];
|
|
16
|
-
}));
|
|
17
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
-
}) : function(o, v) {
|
|
20
|
-
o["default"] = v;
|
|
21
|
-
});
|
|
22
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
-
var ownKeys = function(o) {
|
|
24
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
-
var ar = [];
|
|
26
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
-
return ar;
|
|
28
|
-
};
|
|
29
|
-
return ownKeys(o);
|
|
30
|
-
};
|
|
31
|
-
return function (mod) {
|
|
32
|
-
if (mod && mod.__esModule) return mod;
|
|
33
|
-
var result = {};
|
|
34
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
-
__setModuleDefault(result, mod);
|
|
36
|
-
return result;
|
|
37
|
-
};
|
|
38
|
-
})();
|
|
39
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
-
exports.ExtendedClaudeLauncher = void 0;
|
|
41
|
-
const ccgo_1 = require("ccgo");
|
|
42
|
-
const logger_1 = require("../utils/logger");
|
|
43
|
-
const welcome_1 = require("../ui/welcome");
|
|
44
|
-
/**
|
|
45
|
-
* 扩展的 Claude 启动器(添加统计显示)
|
|
46
|
-
*/
|
|
47
|
-
class ExtendedClaudeLauncher extends ccgo_1.ClaudeLauncher {
|
|
48
|
-
constructor(config, profileName) {
|
|
49
|
-
super(config, profileName);
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* 启动 Claude Code(覆盖父类方法以添加统计显示)
|
|
53
|
-
*/
|
|
54
|
-
async launch(options = {}) {
|
|
55
|
-
const { showStats = false, ...baseOptions } = options;
|
|
56
|
-
// 显示启动欢迎信息
|
|
57
|
-
(0, welcome_1.showLaunchWelcome)();
|
|
58
|
-
// 如果需要显示统计信息
|
|
59
|
-
if (showStats) {
|
|
60
|
-
await this.showTodayStats();
|
|
61
|
-
}
|
|
62
|
-
// 调用父类的 launch 方法
|
|
63
|
-
return super.launch(baseOptions);
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* 显示今日统计
|
|
67
|
-
*/
|
|
68
|
-
async showTodayStats() {
|
|
69
|
-
try {
|
|
70
|
-
// 动态导入 StatusLinePlugin 以获取统计信息
|
|
71
|
-
const { StatusLinePlugin } = await Promise.resolve().then(() => __importStar(require('../index')));
|
|
72
|
-
const plugin = new StatusLinePlugin();
|
|
73
|
-
// 获取今日统计
|
|
74
|
-
const stats = await plugin.getTodayStats();
|
|
75
|
-
if (stats) {
|
|
76
|
-
const { showTodayStats } = await Promise.resolve().then(() => __importStar(require('../ui/welcome')));
|
|
77
|
-
showTodayStats(stats);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
// 静默失败,不影响启动
|
|
82
|
-
logger_1.Logger.debug(`获取统计信息失败: ${error}`);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
exports.ExtendedClaudeLauncher = ExtendedClaudeLauncher;
|
|
87
|
-
//# sourceMappingURL=extended-launcher.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extended-launcher.js","sourceRoot":"","sources":["../../src/launcher/extended-launcher.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,+BAAoF;AAEpF,4CAAyC;AACzC,2CAAkD;AAMlD;;GAEG;AACH,MAAa,sBAAuB,SAAQ,qBAAY;IACtD,YACE,MAA6B,EAC7B,WAAoB;QAEpB,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,UAAiC,EAAE;QAC9C,MAAM,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;QAEtD,WAAW;QACX,IAAA,2BAAiB,GAAE,CAAC;QAEpB,aAAa;QACb,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;QAED,kBAAkB;QAClB,OAAO,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc;QAC1B,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,EAAE,gBAAgB,EAAE,GAAG,wDAAa,UAAU,GAAC,CAAC;YACtD,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAEtC,SAAS;YACT,MAAM,KAAK,GAAG,MAAO,MAAc,CAAC,aAAa,EAAE,CAAC;YAEpD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;gBACzD,cAAc,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,aAAa;YACb,eAAM,CAAC,KAAK,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;CACF;AA/CD,wDA+CC"}
|