@kaitranntt/ccs 7.12.1-dev.2 → 7.12.2-dev.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-routes.d.ts","sourceRoot":"","sources":["../../../src/web-server/routes/account-routes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"account-routes.d.ts","sourceRoot":"","sources":["../../../src/web-server/routes/account-routes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,QAAA,MAAM,MAAM,4CAAW,CAAC;AA4LxB,eAAe,MAAM,CAAC"}
|
|
@@ -12,8 +12,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
const express_1 = require("express");
|
|
13
13
|
const profile_registry_1 = __importDefault(require("../../auth/profile-registry"));
|
|
14
14
|
const unified_config_loader_1 = require("../../config/unified-config-loader");
|
|
15
|
+
const account_manager_1 = require("../../cliproxy/account-manager");
|
|
15
16
|
const router = (0, express_1.Router)();
|
|
16
17
|
const registry = new profile_registry_1.default();
|
|
18
|
+
/** Parse CLIProxy account key format: "provider:accountId" */
|
|
19
|
+
function parseCliproxyKey(key) {
|
|
20
|
+
const providers = ['gemini', 'codex', 'agy', 'qwen', 'iflow', 'kiro', 'ghcp'];
|
|
21
|
+
const colonIndex = key.indexOf(':');
|
|
22
|
+
if (colonIndex === -1)
|
|
23
|
+
return null;
|
|
24
|
+
const provider = key.slice(0, colonIndex);
|
|
25
|
+
const accountId = key.slice(colonIndex + 1);
|
|
26
|
+
if (!providers.includes(provider) || !accountId)
|
|
27
|
+
return null;
|
|
28
|
+
return { provider, accountId };
|
|
29
|
+
}
|
|
17
30
|
/**
|
|
18
31
|
* GET /api/accounts - List accounts from both profiles.json and config.yaml
|
|
19
32
|
*/
|
|
@@ -22,6 +35,8 @@ router.get('/', (_req, res) => {
|
|
|
22
35
|
// Get profiles from both legacy and unified config (same logic as CLI)
|
|
23
36
|
const legacyProfiles = registry.getAllProfiles();
|
|
24
37
|
const unifiedAccounts = registry.getAllAccountsUnified();
|
|
38
|
+
// Get CLIProxy OAuth accounts (gemini, codex, agy, etc.)
|
|
39
|
+
const cliproxyAccounts = (0, account_manager_1.getAllAccountsSummary)();
|
|
25
40
|
// Merge profiles: unified config takes precedence
|
|
26
41
|
const merged = {};
|
|
27
42
|
// Add legacy profiles first
|
|
@@ -40,6 +55,25 @@ router.get('/', (_req, res) => {
|
|
|
40
55
|
last_used: account.last_used,
|
|
41
56
|
};
|
|
42
57
|
}
|
|
58
|
+
// Add CLIProxy OAuth accounts
|
|
59
|
+
for (const [provider, accounts] of Object.entries(cliproxyAccounts)) {
|
|
60
|
+
for (const acct of accounts) {
|
|
61
|
+
// Skip accounts with no valid identifier
|
|
62
|
+
if (!acct.id) {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
// Use unique ID for key to prevent collisions between accounts with same nickname/email
|
|
66
|
+
const displayName = acct.nickname || acct.email || acct.id;
|
|
67
|
+
const key = `${provider}:${acct.id}`;
|
|
68
|
+
merged[key] = {
|
|
69
|
+
type: 'cliproxy',
|
|
70
|
+
provider,
|
|
71
|
+
displayName,
|
|
72
|
+
created: acct.createdAt || new Date().toISOString(),
|
|
73
|
+
last_used: null,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
43
77
|
// Convert to array format
|
|
44
78
|
const accounts = Object.entries(merged).map(([name, meta]) => ({
|
|
45
79
|
name,
|
|
@@ -63,6 +97,17 @@ router.post('/default', (req, res) => {
|
|
|
63
97
|
res.status(400).json({ error: 'Missing required field: name' });
|
|
64
98
|
return;
|
|
65
99
|
}
|
|
100
|
+
// Check if this is a CLIProxy account (format: "provider:accountId")
|
|
101
|
+
const cliproxyKey = parseCliproxyKey(name);
|
|
102
|
+
if (cliproxyKey) {
|
|
103
|
+
const success = (0, account_manager_1.setDefaultAccount)(cliproxyKey.provider, cliproxyKey.accountId);
|
|
104
|
+
if (!success) {
|
|
105
|
+
res.status(404).json({ error: `CLIProxy account not found: ${name}` });
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
res.json({ default: name });
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
66
111
|
// Use unified config if in unified mode, otherwise use legacy
|
|
67
112
|
if ((0, unified_config_loader_1.isUnifiedMode)()) {
|
|
68
113
|
registry.setDefaultUnified(name);
|
|
@@ -103,7 +148,7 @@ router.delete('/:name', (req, res) => {
|
|
|
103
148
|
res.status(400).json({ error: 'Missing account name' });
|
|
104
149
|
return;
|
|
105
150
|
}
|
|
106
|
-
// Check if trying to delete default
|
|
151
|
+
// Check if trying to delete default (for non-CLIProxy accounts)
|
|
107
152
|
const currentDefault = registry.getDefaultUnified() ?? registry.getDefaultProfile();
|
|
108
153
|
if (name === currentDefault) {
|
|
109
154
|
res
|
|
@@ -111,7 +156,18 @@ router.delete('/:name', (req, res) => {
|
|
|
111
156
|
.json({ error: 'Cannot delete the default account. Set a different default first.' });
|
|
112
157
|
return;
|
|
113
158
|
}
|
|
114
|
-
//
|
|
159
|
+
// Check if this is a CLIProxy account (format: "provider:accountId")
|
|
160
|
+
const cliproxyKey = parseCliproxyKey(name);
|
|
161
|
+
if (cliproxyKey) {
|
|
162
|
+
const success = (0, account_manager_1.removeAccount)(cliproxyKey.provider, cliproxyKey.accountId);
|
|
163
|
+
if (!success) {
|
|
164
|
+
res.status(404).json({ error: `CLIProxy account not found: ${name}` });
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
res.json({ success: true, deleted: name });
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
// Delete the profile (legacy/unified)
|
|
115
171
|
registry.deleteProfile(name);
|
|
116
172
|
res.json({ success: true, deleted: name });
|
|
117
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-routes.js","sourceRoot":"","sources":["../../../src/web-server/routes/account-routes.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;AAEH,qCAAoD;AACpD,mFAA0D;AAC1D,8EAAmE;
|
|
1
|
+
{"version":3,"file":"account-routes.js","sourceRoot":"","sources":["../../../src/web-server/routes/account-routes.ts"],"names":[],"mappings":"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"}
|