@kaitranntt/ccs 7.34.0-dev.2 → 7.34.0-dev.3
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/cliproxy/auth/auth-types.d.ts +13 -0
- package/dist/cliproxy/auth/auth-types.d.ts.map +1 -1
- package/dist/cliproxy/auth/auth-types.js +30 -1
- package/dist/cliproxy/auth/auth-types.js.map +1 -1
- package/dist/cliproxy/auth/environment-detector.d.ts.map +1 -1
- package/dist/cliproxy/auth/environment-detector.js +8 -3
- package/dist/cliproxy/auth/environment-detector.js.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.js +123 -0
- package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
- package/dist/cliproxy/auth/oauth-process.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-process.js +10 -0
- package/dist/cliproxy/auth/oauth-process.js.map +1 -1
- package/dist/cliproxy/cliproxy-executor.d.ts.map +1 -1
- package/dist/cliproxy/cliproxy-executor.js +3 -0
- package/dist/cliproxy/cliproxy-executor.js.map +1 -1
- package/dist/cliproxy/proxy-target-resolver.d.ts +2 -1
- package/dist/cliproxy/proxy-target-resolver.d.ts.map +1 -1
- package/dist/cliproxy/proxy-target-resolver.js +10 -4
- package/dist/cliproxy/proxy-target-resolver.js.map +1 -1
- package/dist/cliproxy/quota-fetcher.d.ts.map +1 -1
- package/dist/cliproxy/quota-fetcher.js +8 -0
- package/dist/cliproxy/quota-fetcher.js.map +1 -1
- package/dist/commands/help-command.d.ts.map +1 -1
- package/dist/commands/help-command.js +4 -0
- package/dist/commands/help-command.js.map +1 -1
- package/dist/ui/assets/{accounts-Dfin4YcT.js → accounts-BROl36rt.js} +1 -1
- package/dist/ui/assets/{alert-dialog-_EqubtAG.js → alert-dialog-Bc0CRwpK.js} +1 -1
- package/dist/ui/assets/{api-DSDQ9L-i.js → api-BTvodZ9c.js} +1 -1
- package/dist/ui/assets/{auth-section-q7grWXY1.js → auth-section-CdJfwuku.js} +1 -1
- package/dist/ui/assets/{backups-section-CZh0CP9N.js → backups-section-C1QbR4iU.js} +1 -1
- package/dist/ui/assets/cliproxy-CL-Lk791.js +3 -0
- package/dist/ui/assets/{cliproxy-control-panel-CQ329FdM.js → cliproxy-control-panel-C67g3-lG.js} +1 -1
- package/dist/ui/assets/{confirm-dialog-zLeEkNMe.js → confirm-dialog-B0UGiTIr.js} +1 -1
- package/dist/ui/assets/{copilot-MUDbtrPI.js → copilot-DoojagGr.js} +3 -3
- package/dist/ui/assets/{globalenv-section-C1sHrOB5.js → globalenv-section-DWvTHsju.js} +1 -1
- package/dist/ui/assets/{health-B4IBzQ8F.js → health-kyBi8s6g.js} +1 -1
- package/dist/ui/assets/index-8_6THoWM.css +1 -0
- package/dist/ui/assets/{index-Cp2GmGBh.js → index-Br2-kfvk.js} +1 -1
- package/dist/ui/assets/{index-Ycx3NWG-.js → index-C8D32oPF.js} +8 -8
- package/dist/ui/assets/{index-gqIAueXL.js → index-CaHIXCeK.js} +1 -1
- package/dist/ui/assets/{index-BIUioTXg.js → index-DaeRFGpX.js} +1 -1
- package/dist/ui/assets/{index-FaX034nA.js → index-Dhj9QHKA.js} +1 -1
- package/dist/ui/assets/{proxy-status-widget-BfcAANMk.js → proxy-status-widget-CRQnzDjM.js} +1 -1
- package/dist/ui/assets/{shared-mKUZMG4p.js → shared-CjMwFBIs.js} +1 -1
- package/dist/ui/assets/{switch-Bgrlji6l.js → switch-l6toeZhu.js} +1 -1
- package/dist/ui/index.html +2 -2
- package/dist/utils/websearch/hook-config.d.ts.map +1 -1
- package/dist/utils/websearch/hook-config.js +10 -2
- package/dist/utils/websearch/hook-config.js.map +1 -1
- package/dist/utils/websearch/hook-utils.d.ts.map +1 -1
- package/dist/utils/websearch/hook-utils.js +3 -1
- package/dist/utils/websearch/hook-utils.js.map +1 -1
- package/dist/utils/websearch/profile-hook-injector.d.ts.map +1 -1
- package/dist/utils/websearch/profile-hook-injector.js +3 -1
- package/dist/utils/websearch/profile-hook-injector.js.map +1 -1
- package/dist/web-server/index.d.ts.map +1 -1
- package/dist/web-server/index.js +5 -1
- package/dist/web-server/index.js.map +1 -1
- package/dist/web-server/jsonl-parser.d.ts.map +1 -1
- package/dist/web-server/jsonl-parser.js +4 -2
- package/dist/web-server/jsonl-parser.js.map +1 -1
- package/dist/web-server/routes/cliproxy-auth-routes.d.ts +0 -3
- package/dist/web-server/routes/cliproxy-auth-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-auth-routes.js +143 -3
- package/dist/web-server/routes/cliproxy-auth-routes.js.map +1 -1
- package/package.json +1 -1
- package/dist/ui/assets/cliproxy-1l8mu9aj.js +0 -3
- package/dist/ui/assets/index-CGnWrAo3.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-hook-injector.js","sourceRoot":"","sources":["../../../src/utils/websearch/profile-hook-injector.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"profile-hook-injector.js","sourceRoot":"","sources":["../../../src/utils/websearch/profile-hook-injector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;AAGH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAKrC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;AAGH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAKrC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAwFjF"}
|
package/dist/web-server/index.js
CHANGED
|
@@ -47,7 +47,11 @@ const sync_1 = require("../cliproxy/sync");
|
|
|
47
47
|
async function startServer(options) {
|
|
48
48
|
const app = (0, express_1.default)();
|
|
49
49
|
const server = http_1.default.createServer(app);
|
|
50
|
-
const wss = new ws_1.WebSocketServer({
|
|
50
|
+
const wss = new ws_1.WebSocketServer({
|
|
51
|
+
server,
|
|
52
|
+
maxPayload: 1024 * 1024, // 1MB hard limit to prevent DoS
|
|
53
|
+
perMessageDeflate: false, // Prevent zip bomb attacks
|
|
54
|
+
});
|
|
51
55
|
// JSON body parsing with error handler for malformed JSON
|
|
52
56
|
app.use(express_1.default.json());
|
|
53
57
|
app.use((err, _req, res, next) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,sDAA8B;AAC9B,gDAAwB;AACxB,gDAAwB;AACxB,2BAAqC;AACrC,2CAA6C;AAC7C,kEAAuF;AACvF,2CAA6E;AAc7E;;GAEG;AACI,KAAK,UAAU,WAAW,CAAC,OAAsB;IACtD,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IACtB,MAAM,MAAM,GAAG,cAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,oBAAe,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonl-parser.d.ts","sourceRoot":"","sources":["../../src/web-server/jsonl-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAWH,sCAAsC;AACtC,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAoBD,qBAAqB;AACrB,MAAM,WAAW,aAAa;IAC5B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"jsonl-parser.d.ts","sourceRoot":"","sources":["../../src/web-server/jsonl-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAWH,sCAAsC;AACtC,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAoBD,qBAAqB;AACrB,MAAM,WAAW,aAAa;IAC5B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA+BvF;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,aAAa,EAAE,CAAC,CAqB1B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAyBxF;AAMD;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAG9C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAerE;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CA8BjG;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAc5D"}
|
|
@@ -48,10 +48,12 @@ const os = __importStar(require("os"));
|
|
|
48
48
|
* Returns null for non-assistant entries or entries without usage data
|
|
49
49
|
*/
|
|
50
50
|
function parseUsageEntry(line, projectPath) {
|
|
51
|
-
if (
|
|
51
|
+
// Strip UTF-8 BOM if present (can occur on first line of some files)
|
|
52
|
+
const cleanLine = line.replace(/^\uFEFF/, '').trim();
|
|
53
|
+
if (!cleanLine)
|
|
52
54
|
return null;
|
|
53
55
|
try {
|
|
54
|
-
const entry = JSON.parse(
|
|
56
|
+
const entry = JSON.parse(cleanLine);
|
|
55
57
|
// Only process assistant entries with usage data
|
|
56
58
|
if (entry.type !== 'assistant')
|
|
57
59
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonl-parser.js","sourceRoot":"","sources":["../../src/web-server/jsonl-parser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAC7B,mDAAqC;AACrC,uCAAyB;AA+CzB,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAY,EAAE,WAAmB;IAC/D,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"jsonl-parser.js","sourceRoot":"","sources":["../../src/web-server/jsonl-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliproxy-auth-routes.d.ts","sourceRoot":"","sources":["../../../src/web-server/routes/cliproxy-auth-routes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cliproxy-auth-routes.d.ts","sourceRoot":"","sources":["../../../src/web-server/routes/cliproxy-auth-routes.ts"],"names":[],"mappings":"AA2CA,QAAA,MAAM,MAAM,4CAAW,CAAC;AA4pBxB,eAAe,MAAM,CAAC"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* CLIProxy Auth Routes - Authentication and account management for CLIProxy providers
|
|
4
|
-
*/
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
const express_1 = require("express");
|
|
7
4
|
const auth_handler_1 = require("../../cliproxy/auth-handler");
|
|
@@ -14,6 +11,7 @@ const remote_auth_fetcher_1 = require("../../cliproxy/remote-auth-fetcher");
|
|
|
14
11
|
const unified_config_loader_1 = require("../../config/unified-config-loader");
|
|
15
12
|
const kiro_import_1 = require("../../cliproxy/auth/kiro-import");
|
|
16
13
|
const token_manager_1 = require("../../cliproxy/auth/token-manager");
|
|
14
|
+
const auth_types_1 = require("../../cliproxy/auth/auth-types");
|
|
17
15
|
const profile_detector_1 = require("../../auth/profile-detector");
|
|
18
16
|
const router = (0, express_1.Router)();
|
|
19
17
|
// Valid providers list - derived from canonical CLIPROXY_PROFILES
|
|
@@ -466,5 +464,147 @@ router.post('/kiro/import', async (_req, res) => {
|
|
|
466
464
|
res.status(500).json({ error: error.message });
|
|
467
465
|
}
|
|
468
466
|
});
|
|
467
|
+
// ==================== Manual Callback Submission ====================
|
|
468
|
+
/**
|
|
469
|
+
* POST /api/cliproxy/auth/:provider/start-url - Start OAuth and return auth URL immediately
|
|
470
|
+
* Unlike /start which blocks until completion, this returns the URL for manual callback flow
|
|
471
|
+
*/
|
|
472
|
+
router.post('/:provider/start-url', async (req, res) => {
|
|
473
|
+
const { provider } = req.params;
|
|
474
|
+
// Check remote mode
|
|
475
|
+
const target = (0, proxy_target_resolver_1.getProxyTarget)();
|
|
476
|
+
if (target.isRemote) {
|
|
477
|
+
res.status(501).json({ error: 'Manual OAuth flow not available in remote mode' });
|
|
478
|
+
return;
|
|
479
|
+
}
|
|
480
|
+
// Validate provider
|
|
481
|
+
if (!validProviders.includes(provider)) {
|
|
482
|
+
res.status(400).json({ error: `Invalid provider: ${provider}` });
|
|
483
|
+
return;
|
|
484
|
+
}
|
|
485
|
+
try {
|
|
486
|
+
const authUrlProvider = auth_types_1.CLIPROXY_AUTH_URL_PROVIDER_MAP[provider] || provider;
|
|
487
|
+
// Call CLIProxyAPI to start OAuth and get auth URL
|
|
488
|
+
// CLIProxyAPI management routes are under /v0/management prefix
|
|
489
|
+
const response = await fetch((0, proxy_target_resolver_1.buildProxyUrl)(target, `/v0/management/${authUrlProvider}-auth-url?is_webui=true`), { headers: (0, proxy_target_resolver_1.buildManagementHeaders)(target) });
|
|
490
|
+
if (!response.ok) {
|
|
491
|
+
const error = await response.text();
|
|
492
|
+
res.status(response.status).json({ error: error || 'Failed to start OAuth' });
|
|
493
|
+
return;
|
|
494
|
+
}
|
|
495
|
+
const data = (await response.json());
|
|
496
|
+
const authUrl = data.url || data.auth_url;
|
|
497
|
+
if (!authUrl) {
|
|
498
|
+
res.status(500).json({ error: 'No authorization URL received from CLIProxyAPI' });
|
|
499
|
+
return;
|
|
500
|
+
}
|
|
501
|
+
res.json({
|
|
502
|
+
success: true,
|
|
503
|
+
authUrl,
|
|
504
|
+
state: data.state,
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
catch (error) {
|
|
508
|
+
const message = error instanceof Error ? error.message : 'Failed to start OAuth';
|
|
509
|
+
res.status(503).json({ error: `CLIProxyAPI not reachable: ${message}` });
|
|
510
|
+
}
|
|
511
|
+
});
|
|
512
|
+
/**
|
|
513
|
+
* GET /api/cliproxy/auth/:provider/status - Poll OAuth status
|
|
514
|
+
* Checks if OAuth has completed for the given state
|
|
515
|
+
*/
|
|
516
|
+
router.get('/:provider/status', async (req, res) => {
|
|
517
|
+
const { provider } = req.params;
|
|
518
|
+
const { state } = req.query;
|
|
519
|
+
if (!state || typeof state !== 'string') {
|
|
520
|
+
res.status(400).json({ error: 'state query parameter required' });
|
|
521
|
+
return;
|
|
522
|
+
}
|
|
523
|
+
// Validate provider
|
|
524
|
+
if (!validProviders.includes(provider)) {
|
|
525
|
+
res.status(400).json({ error: `Invalid provider: ${provider}` });
|
|
526
|
+
return;
|
|
527
|
+
}
|
|
528
|
+
try {
|
|
529
|
+
const target = (0, proxy_target_resolver_1.getProxyTarget)();
|
|
530
|
+
// CLIProxyAPI management routes are under /v0/management prefix
|
|
531
|
+
const response = await fetch((0, proxy_target_resolver_1.buildProxyUrl)(target, `/v0/management/get-auth-status?state=${encodeURIComponent(state)}`), { headers: (0, proxy_target_resolver_1.buildManagementHeaders)(target) });
|
|
532
|
+
const data = (await response.json());
|
|
533
|
+
res.json(data);
|
|
534
|
+
}
|
|
535
|
+
catch {
|
|
536
|
+
res.status(503).json({ status: 'error', error: 'CLIProxyAPI not reachable' });
|
|
537
|
+
}
|
|
538
|
+
});
|
|
539
|
+
/**
|
|
540
|
+
* Parse OAuth callback URL to extract code and state parameters.
|
|
541
|
+
* @param url - The callback URL to parse
|
|
542
|
+
* @returns Parsed components (code, state) or empty object on failure
|
|
543
|
+
*/
|
|
544
|
+
function parseCallbackUrl(url) {
|
|
545
|
+
try {
|
|
546
|
+
const parsed = new URL(url);
|
|
547
|
+
return {
|
|
548
|
+
code: parsed.searchParams.get('code') || undefined,
|
|
549
|
+
state: parsed.searchParams.get('state') || undefined,
|
|
550
|
+
};
|
|
551
|
+
}
|
|
552
|
+
catch {
|
|
553
|
+
return {};
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
/**
|
|
557
|
+
* POST /api/cliproxy/auth/:provider/submit-callback - Submit OAuth callback URL manually
|
|
558
|
+
* For cross-browser OAuth flows where callback cannot redirect directly
|
|
559
|
+
*/
|
|
560
|
+
router.post('/:provider/submit-callback', async (req, res) => {
|
|
561
|
+
const { provider } = req.params;
|
|
562
|
+
const { redirectUrl } = req.body;
|
|
563
|
+
// Check remote mode
|
|
564
|
+
const target = (0, proxy_target_resolver_1.getProxyTarget)();
|
|
565
|
+
if (target.isRemote) {
|
|
566
|
+
res.status(501).json({ error: 'Manual callback not available in remote mode' });
|
|
567
|
+
return;
|
|
568
|
+
}
|
|
569
|
+
// Validate provider
|
|
570
|
+
if (!validProviders.includes(provider)) {
|
|
571
|
+
res.status(400).json({ error: `Invalid provider: ${provider}` });
|
|
572
|
+
return;
|
|
573
|
+
}
|
|
574
|
+
// Validate redirectUrl
|
|
575
|
+
if (!redirectUrl || typeof redirectUrl !== 'string') {
|
|
576
|
+
res.status(400).json({ error: 'redirectUrl is required' });
|
|
577
|
+
return;
|
|
578
|
+
}
|
|
579
|
+
const parsed = parseCallbackUrl(redirectUrl);
|
|
580
|
+
if (!parsed.code) {
|
|
581
|
+
res.status(400).json({ error: 'Invalid callback URL: missing code parameter' });
|
|
582
|
+
return;
|
|
583
|
+
}
|
|
584
|
+
try {
|
|
585
|
+
const callbackProvider = auth_types_1.CLIPROXY_CALLBACK_PROVIDER_MAP[provider] || provider;
|
|
586
|
+
// Forward to CLIProxyAPI /oauth-callback endpoint (under /v0/management prefix)
|
|
587
|
+
const response = await fetch((0, proxy_target_resolver_1.buildProxyUrl)(target, '/v0/management/oauth-callback'), {
|
|
588
|
+
method: 'POST',
|
|
589
|
+
headers: (0, proxy_target_resolver_1.buildManagementHeaders)(target, { 'Content-Type': 'application/json' }),
|
|
590
|
+
body: JSON.stringify({
|
|
591
|
+
provider: callbackProvider,
|
|
592
|
+
redirect_url: redirectUrl,
|
|
593
|
+
}),
|
|
594
|
+
});
|
|
595
|
+
const data = (await response.json());
|
|
596
|
+
if (!response.ok || data.status === 'error') {
|
|
597
|
+
res.status(response.status >= 400 ? response.status : 400).json({
|
|
598
|
+
error: data.error || 'OAuth callback failed',
|
|
599
|
+
});
|
|
600
|
+
return;
|
|
601
|
+
}
|
|
602
|
+
res.json({ success: true });
|
|
603
|
+
}
|
|
604
|
+
catch (error) {
|
|
605
|
+
const message = error instanceof Error ? error.message : 'Failed to submit callback';
|
|
606
|
+
res.status(503).json({ error: `CLIProxyAPI not reachable: ${message}` });
|
|
607
|
+
}
|
|
608
|
+
});
|
|
469
609
|
exports.default = router;
|
|
470
610
|
//# sourceMappingURL=cliproxy-auth-routes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliproxy-auth-routes.js","sourceRoot":"","sources":["../../../src/web-server/routes/cliproxy-auth-routes.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAEH,qCAAoD;AACpD,8DAKqC;AACrC,wFAGkD;AAClD,8EAG6C;AAC7C,gEAAkE;AAClE,oEAUwC;AACxC,gFAAsE;AACtE,4EAA2E;AAC3E,8EAA+E;AAC/E,iEAAgE;AAChE,qEAAwE;AAExE,kEAAgE;AAEhE,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;AAExB,kEAAkE;AAClE,MAAM,cAAc,GAAuB,CAAC,GAAG,oCAAiB,CAAC,CAAC;AAElE;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAiB,EAAE;IACpE,IAAI,CAAC;QACH,kCAAkC;QAClC,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,MAAM,IAAA,2CAAqB,EAAC,MAAM,CAAC,CAAC;YACvD,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,IAAA,iCAAkB,GAAE,CAAC;QAErB,8DAA8D;QAC9D,MAAM,KAAK,GAAG,MAAM,IAAA,kCAAkB,GAAE,CAAC;QAEzC,gEAAgE;QAChE,MAAM,gBAAgB,GAAqC;YACzD,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,MAAM,EAAE,kDAAkD;YACnE,SAAS,EAAE,QAAQ,EAAE,sDAAsD;YAC3E,MAAM,EAAE,QAAQ;SACjB,CAAC;QAEF,uDAAuD;QACvD,IAAI,KAAK,EAAE,kBAAkB,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACrF,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;oBAC/D,IAAI,QAAQ,EAAE,CAAC;wBACb,gEAAgE;wBAChE,MAAM,QAAQ,GAAG,IAAA,qCAAmB,EAAC,QAAQ,CAAC,CAAC;wBAC/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;4BAC/B,qEAAqE;4BACrE,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gCACtB,IAAA,8BAAY,EAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;4BACrC,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,+BAAgB,GAAE,CAAC;QAEpC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACzC,MAAM,WAAW,GAAG,IAAA,6BAAc,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpD,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,IAAI;gBAChD,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM;gBACpC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,cAAc,EAAE,MAAM,CAAC,cAAc;aACtC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,oDAAoD;QACpD,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,UAAU,EAAE,EAAE;gBACd,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,+DAA+D;AAE/D;;GAEG;AACH,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAiB,EAAE;IAC5E,IAAI,CAAC;QACH,kCAAkC;QAClC,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,MAAM,IAAA,2CAAqB,EAAC,MAAM,CAAC,CAAC;YACvD,yDAAyD;YACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC7C,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,GAAG,GAAG;aACP,CAAC,CAAC,CACJ,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,uDAAuD;QACvD,IAAA,iCAAkB,GAAE,CAAC;QAErB,MAAM,QAAQ,GAAG,IAAA,uCAAqB,GAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC;YACnF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACtE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEhC,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAA,qCAAmB,EAAC,QAA4B,CAAC,CAAC;QACnE,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC;QAC3F,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IAC/E,qEAAqE;IACrE,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,iDAAiD;SACzD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IAE/B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,mCAAmB,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QAE7E,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B,CAAC;QACzF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,CAAC,gCAAgC,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACpF,qEAAqE;IACrE,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,iDAAiD;SACzD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAE3C,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QAEzE,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;QACpF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACxF,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAE3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,8BAAc,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QACxE,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC;QACnF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACzF,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAE3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QACzE,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;QACpF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;IACnF,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IACzE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IAEpF,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,sCAAsC;IACtC,IAAI,yCAAuB,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,4BAA4B,QAAQ,8CAA8C;gBACzF,IAAI,EAAE,mBAAmB;aAC1B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAG,IAAA,kCAAgB,EAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,eAAe,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,kBAAkB;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,MAAM,gBAAgB,GAAG,IAAA,qCAAmB,EAAC,QAA4B,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CACvD,CAAC;QACF,IAAI,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,aAAa,QAAQ,8CAA8C;gBAC1E,IAAI,EAAE,iBAAiB;aACxB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,+EAA+E;IAC/E,IAAI,WAAW,GAAG,IAAI,CAAC;IACvB,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,iDAAyB,GAAE,CAAC;QAC3C,WAAW,GAAG,eAAe,IAAI,MAAM,CAAC,QAAQ,EAAE,iBAAiB,IAAI,IAAI,CAAC;IAC9E,CAAC;IAED,IAAI,CAAC;QACH,mEAAmE;QACnE,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAY,EAAC,QAA4B,EAAE;YAC/D,GAAG,EAAE,IAAI,EAAE,0BAA0B;YACrC,QAAQ,EAAE,KAAK,EAAE,yBAAyB;YAC1C,QAAQ,EAAE,QAAQ,IAAI,SAAS;YAC/B,MAAM,EAAE,IAAI,EAAE,wCAAwC;YACtD,WAAW,EAAE,sCAAsC;SACpD,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC;gBACP,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE;oBACP,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACrE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEhC,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC,IAAA,uCAAgB,EAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,wCAAwC;IACxC,MAAM,cAAc,GAAG,IAAA,mDAA4B,EAAC,QAAQ,CAAC,CAAC;IAE9D,GAAG,CAAC,IAAI,CAAC;QACP,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,cAAc;QACzB,QAAQ;KACT,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IAChF,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEjC,MAAM,OAAO,GAAG,IAAA,+CAAmB,EAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+CAA+C,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACjF,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IAEhC,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QACrC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAC,CAAC;QACzF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,kDAAsB,EAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IAClE,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+CAA+C,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAiB,EAAE;IAChF,kEAAkE;IAClE,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,0CAA0C;SAClD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAA,mCAAmB,EAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAA,2BAAa,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,8CAA8C;YAC9C,IAAA,iCAAkB,GAAE,CAAC;YAErB,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,IAAA,qCAAmB,EAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;YAEpE,GAAG,CAAC,IAAI,CAAC;gBACP,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,UAAU;oBACjB,CAAC,CAAC;wBACE,EAAE,EAAE,UAAU,CAAC,EAAE;wBACjB,KAAK,EAAE,UAAU,CAAC,KAAK;wBACvB,QAAQ,EAAE,MAAM;wBAChB,SAAS,EAAE,UAAU,CAAC,SAAS;qBAChC;oBACH,CAAC,CAAC,IAAI;aACT,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,6BAA6B;aACrD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,kBAAe,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"cliproxy-auth-routes.js","sourceRoot":"","sources":["../../../src/web-server/routes/cliproxy-auth-routes.ts"],"names":[],"mappings":";;AAAA,qCAAoD;AACpD,8DAKqC;AACrC,wFAGkD;AAClD,8EAG6C;AAC7C,gEAAkE;AAClE,oEAUwC;AACxC,gFAI8C;AAC9C,4EAA2E;AAC3E,8EAA+E;AAC/E,iEAAgE;AAChE,qEAAwE;AACxE,+DAGwC;AAExC,kEAAgE;AAEhE,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;AAExB,kEAAkE;AAClE,MAAM,cAAc,GAAuB,CAAC,GAAG,oCAAiB,CAAC,CAAC;AAElE;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAiB,EAAE;IACpE,IAAI,CAAC;QACH,kCAAkC;QAClC,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,MAAM,IAAA,2CAAqB,EAAC,MAAM,CAAC,CAAC;YACvD,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,IAAA,iCAAkB,GAAE,CAAC;QAErB,8DAA8D;QAC9D,MAAM,KAAK,GAAG,MAAM,IAAA,kCAAkB,GAAE,CAAC;QAEzC,gEAAgE;QAChE,MAAM,gBAAgB,GAAqC;YACzD,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,MAAM,EAAE,kDAAkD;YACnE,SAAS,EAAE,QAAQ,EAAE,sDAAsD;YAC3E,MAAM,EAAE,QAAQ;SACjB,CAAC;QAEF,uDAAuD;QACvD,IAAI,KAAK,EAAE,kBAAkB,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACrF,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;oBAC/D,IAAI,QAAQ,EAAE,CAAC;wBACb,gEAAgE;wBAChE,MAAM,QAAQ,GAAG,IAAA,qCAAmB,EAAC,QAAQ,CAAC,CAAC;wBAC/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;4BAC/B,qEAAqE;4BACrE,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gCACtB,IAAA,8BAAY,EAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;4BACrC,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,+BAAgB,GAAE,CAAC;QAEpC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACzC,MAAM,WAAW,GAAG,IAAA,6BAAc,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpD,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,IAAI;gBAChD,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM;gBACpC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,cAAc,EAAE,MAAM,CAAC,cAAc;aACtC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,oDAAoD;QACpD,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,UAAU,EAAE,EAAE;gBACd,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,+DAA+D;AAE/D;;GAEG;AACH,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAiB,EAAE;IAC5E,IAAI,CAAC;QACH,kCAAkC;QAClC,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,MAAM,IAAA,2CAAqB,EAAC,MAAM,CAAC,CAAC;YACvD,yDAAyD;YACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC7C,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,GAAG,GAAG;aACP,CAAC,CAAC,CACJ,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,uDAAuD;QACvD,IAAA,iCAAkB,GAAE,CAAC;QAErB,MAAM,QAAQ,GAAG,IAAA,uCAAqB,GAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC;YACnF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACtE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEhC,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAA,qCAAmB,EAAC,QAA4B,CAAC,CAAC;QACnE,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC;QAC3F,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IAC/E,qEAAqE;IACrE,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,iDAAiD;SACzD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IAE/B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,mCAAmB,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QAE7E,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B,CAAC;QACzF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,CAAC,gCAAgC,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACpF,qEAAqE;IACrE,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,iDAAiD;SACzD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAE3C,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QAEzE,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;QACpF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACxF,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAE3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,8BAAc,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QACxE,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC;QACnF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACzF,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAE3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,QAA4B,EAAE,SAAS,CAAC,CAAC;QACzE,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,GAAG;iBACA,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,SAAS,6BAA6B,QAAQ,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;QACpF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;IACnF,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IACzE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IAEpF,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,sCAAsC;IACtC,IAAI,yCAAuB,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,4BAA4B,QAAQ,8CAA8C;gBACzF,IAAI,EAAE,mBAAmB;aAC1B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAG,IAAA,kCAAgB,EAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,eAAe,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,kBAAkB;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,MAAM,gBAAgB,GAAG,IAAA,qCAAmB,EAAC,QAA4B,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CACvD,CAAC;QACF,IAAI,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,aAAa,QAAQ,8CAA8C;gBAC1E,IAAI,EAAE,iBAAiB;aACxB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,+EAA+E;IAC/E,IAAI,WAAW,GAAG,IAAI,CAAC;IACvB,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,iDAAyB,GAAE,CAAC;QAC3C,WAAW,GAAG,eAAe,IAAI,MAAM,CAAC,QAAQ,EAAE,iBAAiB,IAAI,IAAI,CAAC;IAC9E,CAAC;IAED,IAAI,CAAC;QACH,mEAAmE;QACnE,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAY,EAAC,QAA4B,EAAE;YAC/D,GAAG,EAAE,IAAI,EAAE,0BAA0B;YACrC,QAAQ,EAAE,KAAK,EAAE,yBAAyB;YAC1C,QAAQ,EAAE,QAAQ,IAAI,SAAS;YAC/B,MAAM,EAAE,IAAI,EAAE,wCAAwC;YACtD,WAAW,EAAE,sCAAsC;SACpD,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC;gBACP,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE;oBACP,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACrE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEhC,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC,IAAA,uCAAgB,EAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,wCAAwC;IACxC,MAAM,cAAc,GAAG,IAAA,mDAA4B,EAAC,QAAQ,CAAC,CAAC;IAE9D,GAAG,CAAC,IAAI,CAAC;QACP,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,cAAc;QACzB,QAAQ;KACT,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IAChF,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEjC,MAAM,OAAO,GAAG,IAAA,+CAAmB,EAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+CAA+C,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;IACjF,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IAEhC,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QACrC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAC,CAAC;QACzF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,kDAAsB,EAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IAClE,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+CAA+C,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAiB,EAAE;IAChF,kEAAkE;IAClE,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,0CAA0C;SAClD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAA,mCAAmB,EAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAA,2BAAa,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,8CAA8C;YAC9C,IAAA,iCAAkB,GAAE,CAAC;YAErB,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,IAAA,qCAAmB,EAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;YAEpE,GAAG,CAAC,IAAI,CAAC;gBACP,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,UAAU;oBACjB,CAAC,CAAC;wBACE,EAAE,EAAE,UAAU,CAAC,EAAE;wBACjB,KAAK,EAAE,UAAU,CAAC,KAAK;wBACvB,QAAQ,EAAE,MAAM;wBAChB,SAAS,EAAE,UAAU,CAAC,SAAS;qBAChC;oBACH,CAAC,CAAC,IAAI;aACT,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,6BAA6B;aACrD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,uEAAuE;AAEvE;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;IACvF,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAEhC,oBAAoB;IACpB,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC,CAAC;QAClF,OAAO;IACT,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,eAAe,GACnB,2CAA8B,CAAC,QAA4B,CAAC,IAAI,QAAQ,CAAC;QAE3E,mDAAmD;QACnD,gEAAgE;QAChE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,IAAA,qCAAa,EAAC,MAAM,EAAE,kBAAkB,eAAe,yBAAyB,CAAC,EACjF,EAAE,OAAO,EAAE,IAAA,8CAAsB,EAAC,MAAM,CAAC,EAAE,CAC5C,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,uBAAuB,EAAE,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwD,CAAC;QAC5F,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC;QAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC,CAAC;YAClF,OAAO;QACT,CAAC;QAED,GAAG,CAAC,IAAI,CAAC;YACP,OAAO,EAAE,IAAI;YACb,OAAO;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC;QACjF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,OAAO,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;IACnF,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;IAE5B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;QAEhC,gEAAgE;QAChE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,IAAA,qCAAa,EAAC,MAAM,EAAE,wCAAwC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,EAC1F,EAAE,OAAO,EAAE,IAAA,8CAAsB,EAAC,MAAM,CAAC,EAAE,CAC5C,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwC,CAAC;QAE5E,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CAAC;IAChF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;YAClD,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;SACrD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;IAC7F,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;IAEjC,oBAAoB;IACpB,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAA4B,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,gBAAgB,GACpB,2CAA8B,CAAC,QAA4B,CAAC,IAAI,QAAQ,CAAC;QAE3E,gFAAgF;QAChF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAA,qCAAa,EAAC,MAAM,EAAE,+BAA+B,CAAC,EAAE;YACnF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,IAAA,8CAAsB,EAAC,MAAM,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;YAC/E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,QAAQ,EAAE,gBAAgB;gBAC1B,YAAY,EAAE,WAAW;aAC1B,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwC,CAAC;QAE5E,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5C,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBAC9D,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,uBAAuB;aAC7C,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC;QACrF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,OAAO,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,kBAAe,MAAM,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{j as e,$ as vs,a0 as Ns}from"./radix-ui-qEZD5MMp.js";import{r as p}from"./react-vendor-CNOkPC89.js";import{a as $e,u as ze,b as ws}from"./tanstack-De4wvi8X.js";import{b,C as qe,a as Be,c as F,P as ie,L as re,I as oe,X as Ve,Y as Qe,Z as Je,_ as We,$ as le,a0 as Ye,a1 as bs,a2 as Xe,a3 as Ze,u as es,a4 as ge,a5 as fe,a6 as je,a7 as ve,a8 as ss,a9 as _e,aa as ys,ab as Cs,ac as ks,ad as Ee,ae as Ie,B as G,af as Ss,q as ts,m as Ne,l as As,ag as Ps,ah as Ms,ai as Ts,aj as W,T as Y,o as X,p as Z,ak as Os,al as Ds,am as _s,an as Re,ao as Es,ap as Is,aq as ue,ar as Rs,as as Ls,at as Fs,au as Us,av as Hs,H as Ks,J as Gs,K as Le,M as Fe,aw as $s,ax as zs,ay as qs,az as Bs,aA as Vs,aB as Qs,aC as Js,aD as Ws,aE as Ys,aF as Xs,aG as Zs,S as et}from"./index-Ycx3NWG-.js";import{t as z}from"./notifications-B2HqRBj7.js";import{b as as,L as q,m as we,x as st,j as B,l as tt,an as be,a6 as ye,n as ee,$ as ae,ao as at,ap as ce,Z as de,I as nt,f as it,a1 as ns,aq as rt,ah as ot,X as Ce,_ as is,s as rs,t as xe,ar as lt,T as ct,p as Ue,as as dt,ag as os,q as ut,at as mt,k as xt,a0 as pt,ak as ht,au as ls}from"./icons-B_4flurP.js";import{S as ke,C as gt}from"./confirm-dialog-zLeEkNMe.js";import{S as ft}from"./switch-Bgrlji6l.js";import{P as jt}from"./proxy-status-widget-BfcAANMk.js";import"./utils-CzKF5WmX.js";import"./form-utils-C-pVd1--.js";import"./code-highlight-BRUf_pqB.js";import"./alert-dialog-_EqubtAG.js";const te={agy:{provider:"agy",displayName:"Antigravity",defaultModel:"gemini-claude-opus-4-5-thinking",models:[{id:"gemini-claude-opus-4-5-thinking",name:"Claude Opus 4.5 Thinking",description:"Most capable, extended thinking",presetMapping:{default:"gemini-claude-opus-4-5-thinking",opus:"gemini-claude-opus-4-5-thinking",sonnet:"gemini-claude-sonnet-4-5-thinking",haiku:"gemini-claude-sonnet-4-5"}},{id:"gemini-claude-sonnet-4-5-thinking",name:"Claude Sonnet 4.5 Thinking",description:"Balanced with extended thinking",presetMapping:{default:"gemini-claude-sonnet-4-5-thinking",opus:"gemini-claude-opus-4-5-thinking",sonnet:"gemini-claude-sonnet-4-5-thinking",haiku:"gemini-claude-sonnet-4-5"}},{id:"gemini-claude-sonnet-4-5",name:"Claude Sonnet 4.5",description:"Fast and capable",presetMapping:{default:"gemini-claude-sonnet-4-5",opus:"gemini-claude-opus-4-5-thinking",sonnet:"gemini-claude-sonnet-4-5",haiku:"gemini-claude-sonnet-4-5"}},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro",description:"Google latest model via Antigravity",presetMapping:{default:"gemini-3-pro-preview",opus:"gemini-3-pro-preview",sonnet:"gemini-3-pro-preview",haiku:"gemini-3-flash-preview"}},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash",description:"Fast Gemini model via Antigravity",presetMapping:{default:"gemini-3-flash-preview",opus:"gemini-3-pro-preview",sonnet:"gemini-3-pro-preview",haiku:"gemini-3-flash-preview"}}]},gemini:{provider:"gemini",displayName:"Gemini",defaultModel:"gemini-2.5-pro",models:[{id:"gemini-3-pro-preview",name:"Gemini 3 Pro",tier:"paid",description:"Latest model, requires paid Google account",presetMapping:{default:"gemini-3-pro-preview",opus:"gemini-3-pro-preview",sonnet:"gemini-3-pro-preview",haiku:"gemini-3-flash-preview"}},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash",tier:"paid",description:"Fast Gemini 3 model, requires paid Google account",presetMapping:{default:"gemini-3-flash-preview",opus:"gemini-3-pro-preview",sonnet:"gemini-3-pro-preview",haiku:"gemini-3-flash-preview"}},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",description:"Stable, works with free Google account",presetMapping:{default:"gemini-2.5-pro",opus:"gemini-2.5-pro",sonnet:"gemini-2.5-pro",haiku:"gemini-2.5-flash"}}]},codex:{provider:"codex",displayName:"Codex",defaultModel:"gpt-5.2-codex",models:[{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",description:"Full reasoning support (xhigh)",presetMapping:{default:"gpt-5.2-codex",opus:"gpt-5.2-codex",sonnet:"gpt-5.2-codex",haiku:"gpt-5-mini"}},{id:"gpt-5-mini",name:"GPT-5 Mini",description:"Fast, capped at high reasoning (no xhigh)",presetMapping:{default:"gpt-5-mini",opus:"gpt-5.2-codex",sonnet:"gpt-5-mini",haiku:"gpt-5-mini"}},{id:"gpt-5.1-codex-max",name:"Codex Max (5.1)",description:"Legacy most capable Codex model",presetMapping:{default:"gpt-5.1-codex-max",opus:"gpt-5.1-codex-max-high",sonnet:"gpt-5.1-codex-max",haiku:"gpt-5.1-codex-mini-high"}},{id:"gpt-5.2",name:"GPT 5.2",description:"Latest GPT model",presetMapping:{default:"gpt-5.2",opus:"gpt-5.2",sonnet:"gpt-5.2",haiku:"gpt-5.2"}},{id:"gpt-5.1-codex-mini",name:"Codex Mini",description:"Fast and efficient Codex model"}]},qwen:{provider:"qwen",displayName:"Qwen",defaultModel:"qwen-coder-plus",models:[{id:"qwen-coder-plus",name:"Qwen Coder Plus",description:"Alibaba code-focused model"},{id:"qwen-max",name:"Qwen Max",description:"Most capable Qwen model"}]},iflow:{provider:"iflow",displayName:"iFlow",defaultModel:"iflow-default",models:[{id:"iflow-default",name:"iFlow Default",description:"Default iFlow model"}]},kiro:{provider:"kiro",displayName:"Kiro (AWS)",defaultModel:"kiro-claude-sonnet-4-5",models:[{id:"kiro-claude-opus-4-5",name:"Kiro Claude Opus 4.5",description:"Claude Opus 4.5 via Kiro (2.2x credit)",presetMapping:{default:"kiro-claude-opus-4-5",opus:"kiro-claude-opus-4-5",sonnet:"kiro-claude-sonnet-4-5",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-sonnet-4-5",name:"Kiro Claude Sonnet 4.5",description:"Claude Sonnet 4.5 via Kiro (1.3x credit)",presetMapping:{default:"kiro-claude-sonnet-4-5",opus:"kiro-claude-opus-4-5",sonnet:"kiro-claude-sonnet-4-5",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-sonnet-4",name:"Kiro Claude Sonnet 4",description:"Claude Sonnet 4 via Kiro (1.3x credit)",presetMapping:{default:"kiro-claude-sonnet-4",opus:"kiro-claude-opus-4-5",sonnet:"kiro-claude-sonnet-4",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-haiku-4-5",name:"Kiro Claude Haiku 4.5",description:"Claude Haiku 4.5 via Kiro (0.4x credit)"}]},ghcp:{provider:"ghcp",displayName:"GitHub Copilot (OAuth)",defaultModel:"claude-sonnet-4.5",models:[{id:"claude-opus-4.5",name:"Claude Opus 4.5",description:"Anthropic Claude Opus 4.5 via GitHub Copilot",presetMapping:{default:"claude-opus-4.5",opus:"claude-opus-4.5",sonnet:"claude-sonnet-4.5",haiku:"claude-haiku-4.5"}},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5",description:"Anthropic Claude Sonnet 4.5 via GitHub Copilot",presetMapping:{default:"claude-sonnet-4.5",opus:"claude-opus-4.5",sonnet:"claude-sonnet-4.5",haiku:"claude-haiku-4.5"}},{id:"claude-sonnet-4",name:"Claude Sonnet 4",description:"Anthropic Claude Sonnet 4 via GitHub Copilot"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5",description:"Anthropic Claude Haiku 4.5 via GitHub Copilot"},{id:"gpt-5.2",name:"GPT-5.2",description:"OpenAI GPT-5.2 via GitHub Copilot",presetMapping:{default:"gpt-5.2",opus:"gpt-5.2",sonnet:"gpt-5.1",haiku:"gpt-5-mini"}},{id:"gpt-5.1",name:"GPT-5.1",description:"OpenAI GPT-5.1 via GitHub Copilot"},{id:"gpt-5",name:"GPT-5",description:"OpenAI GPT-5 via GitHub Copilot"},{id:"gpt-5-mini",name:"GPT-5 Mini",description:"OpenAI GPT-5 Mini via GitHub Copilot"},{id:"gemini-3-pro",name:"Gemini 3 Pro",description:"Google Gemini 3 Pro via GitHub Copilot"}]},claude:{provider:"claude",displayName:"Claude (Anthropic)",defaultModel:"claude-sonnet-4-5-20250929",models:[{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",description:"Most capable Claude model",presetMapping:{default:"claude-opus-4-5-20251101",opus:"claude-opus-4-5-20251101",sonnet:"claude-sonnet-4-5-20250929",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",description:"Balanced performance and speed",presetMapping:{default:"claude-sonnet-4-5-20250929",opus:"claude-opus-4-5-20251101",sonnet:"claude-sonnet-4-5-20250929",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",description:"Previous generation Sonnet",presetMapping:{default:"claude-sonnet-4-20250514",opus:"claude-opus-4-5-20251101",sonnet:"claude-sonnet-4-20250514",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",description:"Fast and efficient"}]}},pe=8317,me="ccs-internal-managed";async function vt(){try{const s=await fetch("/api/settings/auth/tokens/raw");return s.ok?(await s.json())?.apiKey?.value??me:me}catch{return me}}async function he(s,a){const t=te[s];if(!t)return{success:!1};const n=t.models[0],r=n?.presetMapping||{default:t.defaultModel,opus:t.defaultModel,sonnet:t.defaultModel,haiku:t.defaultModel},d=await vt(),u={env:{ANTHROPIC_BASE_URL:`http://127.0.0.1:${pe}/api/provider/${s}`,ANTHROPIC_AUTH_TOKEN:d,ANTHROPIC_MODEL:r.default,ANTHROPIC_DEFAULT_OPUS_MODEL:r.opus,ANTHROPIC_DEFAULT_SONNET_MODEL:r.sonnet,ANTHROPIC_DEFAULT_HAIKU_MODEL:r.haiku}};try{return{success:(await fetch(`/api/settings/${s}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:u})})).ok,presetName:n?.name||t.defaultModel}}catch{return{success:!1}}}function Nt({currentProgress:s,allSteps:a}){return e.jsx("div",{className:"flex justify-center gap-1 pt-2",children:a.map((t,n)=>e.jsx("div",{className:`w-2 h-2 rounded-full transition-colors ${s>=n?"bg-primary":"bg-muted"}`},t))})}function wt({providers:s,onSelect:a}){return e.jsx("div",{className:"grid gap-2",children:s.map(t=>e.jsxs("button",{onClick:()=>a(t.id),className:"flex items-center justify-between p-3 border rounded-lg hover:bg-muted/50 transition-colors text-left",children:[e.jsxs("div",{children:[e.jsx("div",{className:"font-medium",children:t.name}),e.jsx("div",{className:"text-xs text-muted-foreground",children:t.description})]}),e.jsx(as,{className:"w-4 h-4 text-muted-foreground"})]},t.id))})}function bt({selectedProvider:s,providers:a,authCommand:t,isRefreshing:n,isPending:r,onBack:d,onStartAuth:l,onRefresh:u}){const[o,h]=p.useState(!1),g=async f=>{await navigator.clipboard.writeText(f),h(!0),setTimeout(()=>h(!1),2e3)};return e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"text-center space-y-3",children:[e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Authenticate with ",a.find(f=>f.id===s)?.name," to add an account"]}),e.jsx(b,{onClick:l,disabled:r,className:"w-full gap-2",size:"lg",children:r?e.jsxs(e.Fragment,{children:[e.jsx(q,{className:"w-4 h-4 animate-spin"}),"Authenticating..."]}):e.jsxs(e.Fragment,{children:[e.jsx(we,{className:"w-4 h-4"}),"Authenticate in Browser"]})}),r&&e.jsx("p",{className:"text-xs text-muted-foreground",children:"Complete the OAuth flow in your browser..."})]}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-0 flex items-center",children:e.jsx("span",{className:"w-full border-t"})}),e.jsx("div",{className:"relative flex justify-center text-xs uppercase",children:e.jsx("span",{className:"bg-background px-2 text-muted-foreground",children:"Or use terminal"})})]}),e.jsx(qe,{children:e.jsxs(Be,{className:"p-4 space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(st,{className:"w-4 h-4"}),"Run this command in your terminal:"]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("code",{className:"flex-1 px-3 py-2 bg-muted rounded-md font-mono text-sm",children:t}),e.jsx(b,{variant:"outline",size:"icon",onClick:()=>g(t),children:o?e.jsx(B,{className:"w-4 h-4 text-green-500"}):e.jsx(tt,{className:"w-4 h-4"})})]})]})}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs(b,{variant:"ghost",onClick:d,disabled:r,children:[e.jsx(be,{className:"w-4 h-4 mr-2"}),"Back"]}),e.jsxs(b,{variant:"outline",onClick:u,disabled:n||r,children:[e.jsx(ye,{className:`w-4 h-4 mr-2 ${n?"animate-spin":""}`}),n?"Checking...":"Refresh Status"]})]})]})}function yt({accounts:s,privacyMode:a,onSelect:t,onAddNew:n,onBack:r}){return e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:["Select an account (",s.length,")"]}),e.jsx("div",{className:"grid gap-2 max-h-[320px] overflow-y-auto pr-1",children:s.map(d=>e.jsxs("button",{type:"button",onClick:()=>t(d),className:"flex items-center justify-between p-3 border rounded-lg hover:bg-muted/50 transition-colors text-left",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-8 h-8 rounded-full bg-muted flex items-center justify-center",children:e.jsx(ee,{className:"w-4 h-4 text-muted-foreground"})}),e.jsxs("div",{children:[e.jsx("div",{className:F("font-medium",a&&ie),children:d.email||d.id}),d.isDefault&&e.jsx("div",{className:"text-xs text-muted-foreground",children:"Default account"})]})]}),e.jsx(as,{className:"w-4 h-4 text-muted-foreground"})]},d.id))}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-0 flex items-center",children:e.jsx("span",{className:"w-full border-t"})}),e.jsx("div",{className:"relative flex justify-center text-xs uppercase",children:e.jsx("span",{className:"bg-background px-2 text-muted-foreground",children:"Or"})})]}),e.jsxs("button",{type:"button",className:"w-full flex items-center gap-3 p-3 border-2 border-dashed border-primary/50 rounded-lg hover:border-primary hover:bg-primary/5 transition-colors text-left",onClick:n,children:[e.jsx("div",{className:"w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center shrink-0",children:e.jsx(we,{className:"w-4 h-4 text-primary"})}),e.jsxs("div",{children:[e.jsx("div",{className:"font-medium text-primary",children:"Add new account"}),e.jsx("div",{className:"text-xs text-muted-foreground",children:"Authenticate with a different account"})]})]}),e.jsx("div",{className:"flex items-center justify-between pt-2",children:e.jsxs(b,{variant:"ghost",onClick:r,children:[e.jsx(be,{className:"w-4 h-4 mr-2"}),"Back"]})})]})}const He="__custom__";function Ct({selectedProvider:s,selectedAccount:a,variantName:t,modelName:n,isPending:r,privacyMode:d,onVariantNameChange:l,onModelChange:u,onBack:o,onSkip:h,onCreate:g}){const f=te[s]?.models||[],m=n&&!f.some(x=>x.id===n),[c,v]=p.useState(m),M=x=>{x===He?(v(!0),u("")):(v(!1),u(x))};return e.jsxs("div",{className:"space-y-4",children:[a&&e.jsxs("div",{className:"flex items-center gap-2 p-2 bg-muted/50 rounded-md text-sm",children:[e.jsx(ee,{className:"w-4 h-4"}),e.jsxs("span",{children:["Using:"," ",e.jsx("span",{className:F(d&&ie),children:a.email||a.id})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(re,{htmlFor:"variant-name",children:"Variant Name *"}),e.jsx(oe,{id:"variant-name",value:t,onChange:x=>l(x.target.value),placeholder:"e.g., my-gemini, g3, flash"}),e.jsxs("div",{className:"text-xs text-muted-foreground",children:["Use this name to invoke: ccs ",t||"<name>",' "prompt"']})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(re,{children:"Model"}),c?e.jsxs("div",{className:"space-y-2",children:[e.jsx(oe,{value:n,onChange:x=>u(x.target.value),placeholder:"e.g., gemini-2.5-pro, claude-opus-4-5"}),e.jsx("button",{type:"button",className:"text-xs text-primary hover:underline",onClick:()=>v(!1),children:"Choose from presets instead"})]}):e.jsxs(Ve,{value:f.some(x=>x.id===n)?n:"",onValueChange:M,children:[e.jsx(Qe,{children:e.jsx(Je,{placeholder:"Select a model"})}),e.jsxs(We,{children:[f.map(x=>e.jsx(le,{value:x.id,children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{children:x.name}),x.description&&e.jsxs("span",{className:"text-xs text-muted-foreground",children:["- ",x.description]})]})},x.id)),e.jsx(le,{value:He,children:e.jsx("span",{className:"text-primary",children:"Custom model name..."})})]})]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:c?"Enter any model name supported by CLIProxy":`Default: ${te[s]?.defaultModel||"provider default"}`})]}),e.jsxs("div",{className:"flex items-center justify-between pt-2",children:[e.jsxs(b,{variant:"ghost",onClick:o,children:[e.jsx(be,{className:"w-4 h-4 mr-2"}),"Back"]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(b,{variant:"ghost",onClick:h,children:"Skip"}),e.jsx(b,{onClick:g,disabled:!t||r,children:r?"Creating...":"Create Variant"})]})]}),e.jsx("p",{className:"text-xs text-center text-muted-foreground",children:"Skip if you just wanted to add an account without creating a variant"})]})}function kt({variantName:s,onClose:a}){return e.jsxs("div",{className:"space-y-4 text-center",children:[e.jsx("div",{className:"flex justify-center",children:e.jsx("div",{className:"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center",children:e.jsx(B,{className:"w-8 h-8 text-green-600 dark:text-green-400"})})}),e.jsxs("div",{children:[e.jsx("div",{className:"font-semibold text-lg",children:"Variant Created!"}),e.jsx("div",{className:"text-sm text-muted-foreground",children:"Your custom variant is ready to use"})]}),e.jsx(qe,{children:e.jsxs(Be,{className:"p-4 space-y-2",children:[e.jsx("div",{className:"text-sm text-muted-foreground",children:"Usage:"}),e.jsxs("code",{className:"block px-3 py-2 bg-muted rounded-md font-mono text-sm",children:["ccs ",s,' "your prompt here"']})]})}),e.jsx(b,{onClick:a,className:"w-full",children:"Done"})]})}function St({open:s,onClose:a}){const[t,n]=p.useState("provider"),[r,d]=p.useState(""),[l,u]=p.useState(null),[o,h]=p.useState(""),[g,f]=p.useState(""),[m,c]=p.useState(!1),[v,M]=p.useState(!1),{data:x,refetch:E}=Ye(),K=bs(),D=Xe(),T=Ze(),{privacyMode:O}=es(),j=x?.authStatus.find(C=>C.provider===r),P=p.useMemo(()=>j?.accounts||[],[j?.accounts]);p.useEffect(()=>{if(!s){const C=setTimeout(()=>{n("provider"),d(""),u(null),h(""),f(""),M(!1)},0);return()=>clearTimeout(C)}},[s]),p.useEffect(()=>{if(t==="auth"&&P.length>0&&!v){const C=setTimeout(()=>{n("account")},0);return()=>clearTimeout(C)}},[t,P,v]);const N=async()=>{c(!0),await E(),c(!1)},A=()=>{const C=(j?.accounts?.length||0)===0;D.mutate({provider:r},{onSuccess:async w=>{if(C){const _=await he(r);_.success&&_.presetName?z.success(`Applied "${_.presetName}" preset`):_.success||z.warning("Account added, but failed to apply default preset")}w.account&&(u(w.account),n("variant")),E()}})},I=C=>{d(C),(x?.authStatus.find(H=>H.provider===C)?.accounts||[]).length===0?n("auth"):n("account")},k=C=>{u(C),n("variant")},y=async()=>{if(!(!o||!r))try{await K.mutateAsync({name:o,provider:r,model:g||void 0,account:l?.id}),n("success")}catch(C){console.error("Failed to create variant:",C)}},R=`ccs ${r} --auth --add`,U=Cs(t),$=C=>{if(!C&&(D.isPending&&r&&T.mutate(r),t==="success"||t==="provider")){a();return}};return e.jsx(ge,{open:s,onOpenChange:$,children:e.jsxs(fe,{className:"sm:max-w-lg",onPointerDownOutside:C=>{t!=="success"&&t!=="provider"&&C.preventDefault()},onEscapeKeyDown:C=>{(D.isPending||K.isPending)&&C.preventDefault()},children:[e.jsxs(je,{children:[e.jsxs(ve,{className:"flex items-center gap-2",children:[e.jsx(ae,{className:"w-5 h-5 text-primary"}),"Quick Setup Wizard"]}),e.jsxs(ss,{children:[t==="provider"&&"Select a provider to get started",t==="auth"&&"Authenticate with your provider",t==="account"&&"Select which account to use",t==="variant"&&"Create your custom variant",t==="success"&&"Setup complete!"]})]}),e.jsxs("div",{className:"space-y-4 py-4",children:[t==="provider"&&e.jsx(wt,{providers:_e,onSelect:I}),t==="auth"&&e.jsx(bt,{selectedProvider:r,providers:_e,authCommand:R,isRefreshing:m,isPending:D.isPending,onBack:()=>n("provider"),onStartAuth:A,onRefresh:N}),t==="account"&&e.jsx(yt,{accounts:P,privacyMode:O,onSelect:k,onAddNew:()=>{M(!0),n("auth")},onBack:()=>n("provider")}),t==="variant"&&e.jsx(Ct,{selectedProvider:r,selectedAccount:l,variantName:o,modelName:g,isPending:K.isPending,privacyMode:O,onVariantNameChange:h,onModelChange:f,onBack:()=>P.length>0?n("account"):n("provider"),onSkip:a,onCreate:y}),t==="success"&&e.jsx(kt,{variantName:o,onClose:a})]}),e.jsx(Nt,{currentProgress:U,allSteps:ys})]})})}function At({open:s,onClose:a,provider:t,displayName:n,isFirstAccount:r=!1}){const[d,l]=p.useState(""),u=Xe(),o=ks(),h=Ze(),g=t==="kiro",f=u.isPending||o.isPending,m=()=>{f&&h.mutate(t),l(""),a()},c=()=>{u.mutate({provider:t,nickname:d.trim()||void 0},{onSuccess:async()=>{const x=await he(t);x.success&&x.presetName?r&&z.success(`Applied "${x.presetName}" preset`):x.success||z.warning("Account added, but failed to apply default preset. You may need to configure settings manually."),l(""),a()}})},v=()=>{o.mutate(void 0,{onSuccess:async()=>{const x=await he("kiro");x.success&&x.presetName&&r&&z.success(`Applied "${x.presetName}" preset`),l(""),a()}})},M=x=>{x||m()};return e.jsx(ge,{open:s,onOpenChange:M,children:e.jsxs(fe,{className:"sm:max-w-md",children:[e.jsxs(je,{children:[e.jsxs(ve,{children:["Add ",n," Account"]}),e.jsx(ss,{children:g?"Authenticate via browser or import an existing token from Kiro IDE.":"Click the button below to authenticate a new account. A browser window will open for OAuth."})]}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(re,{htmlFor:"nickname",children:"Nickname (optional)"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(ee,{className:"w-4 h-4 text-muted-foreground"}),e.jsx(oe,{id:"nickname",value:d,onChange:x=>l(x.target.value),placeholder:"e.g., work, personal",disabled:f,className:"flex-1"})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"A friendly name to identify this account. Auto-generated from email if left empty."})]}),e.jsxs("div",{className:"flex items-center justify-end gap-2 pt-2",children:[e.jsx(b,{variant:"ghost",onClick:m,children:"Cancel"}),g&&e.jsx(b,{variant:"outline",onClick:v,disabled:f,children:o.isPending?e.jsxs(e.Fragment,{children:[e.jsx(q,{className:"w-4 h-4 mr-2 animate-spin"}),"Importing..."]}):e.jsxs(e.Fragment,{children:[e.jsx(at,{className:"w-4 h-4 mr-2"}),"Import from IDE"]})}),e.jsx(b,{onClick:c,disabled:f,children:u.isPending?e.jsxs(e.Fragment,{children:[e.jsx(q,{className:"w-4 h-4 mr-2 animate-spin"}),"Authenticating..."]}):e.jsxs(e.Fragment,{children:[e.jsx(we,{className:"w-4 h-4 mr-2"}),"Authenticate"]})})]}),u.isPending&&e.jsx("p",{className:"text-sm text-center text-muted-foreground",children:"Complete the OAuth flow in your browser..."}),o.isPending&&e.jsx("p",{className:"text-sm text-center text-muted-foreground",children:"Importing token from Kiro IDE..."})]})]})})}const Pt=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN"];function Mt(s){const a=s?.env||{};return Pt.filter(t=>!a[t]?.trim())}function Tt(s){const[a,t]=p.useState(null),[n,r]=p.useState(!1),d=$e(),{data:l,isLoading:u,refetch:o}=ze({queryKey:["settings",s],queryFn:async()=>{const N=await fetch(`/api/settings/${s}/raw`);return N.ok?N.json():{profile:s,settings:{env:{}},mtime:Date.now(),path:`~/.ccs/profiles/${s}/settings.json`}}}),h=l?.settings,g=p.useMemo(()=>a!==null?a:h?JSON.stringify(h,null,2):`{
|
|
2
|
-
"env": {}
|
|
3
|
-
}`,[a,h]),f=p.useCallback(N=>{t(N)},[]),m=p.useMemo(()=>{try{return JSON.parse(g)}catch{return h||{env:{}}}},[g,h]),c=m?.env?.ANTHROPIC_MODEL,v=m?.env?.ANTHROPIC_DEFAULT_OPUS_MODEL,M=m?.env?.ANTHROPIC_DEFAULT_SONNET_MODEL,x=m?.env?.ANTHROPIC_DEFAULT_HAIKU_MODEL,E=p.useCallback((N,A)=>{const I={...m?.env||{},[N]:A},k={...m,env:I};t(JSON.stringify(k,null,2))},[m]),K=p.useCallback(N=>{const A={...m?.env||{},...N},I={...m,env:A};t(JSON.stringify(I,null,2))},[m]),D=p.useMemo(()=>{try{return JSON.parse(g),!0}catch{return!1}},[g]),T=p.useMemo(()=>a===null?!1:a!==JSON.stringify(h,null,2),[a,h]),O=p.useMemo(()=>Mt(m),[m]),j=ws({mutationFn:async()=>{const N=JSON.parse(g),A=await fetch(`/api/settings/${s}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:N,expectedMtime:l?.mtime})});if(A.status===409)throw new Error("CONFLICT");if(!A.ok)throw new Error("Failed to save");return A.json()},onSuccess:N=>{d.invalidateQueries({queryKey:["settings",s]}),t(null),N?.warning?z.success("Settings saved",{description:N.warning}):z.success("Settings saved")},onError:N=>{N.message==="CONFLICT"?r(!0):z.error(N.message)}}),P=async N=>{r(!1),N?(await o(),j.mutate()):t(null)};return{data:l,isLoading:u,refetch:o,rawJsonContent:g,rawJsonEdits:a,isRawJsonValid:D,hasChanges:T,currentSettings:m,currentModel:c,opusModel:v,sonnetModel:M,haikuModel:x,handleRawJsonChange:f,updateEnvValue:E,updateEnvValues:K,saveMutation:{mutate:()=>j.mutate(),isPending:j.isPending},conflictDialog:n,setConflictDialog:r,handleConflictResolve:P,missingRequiredFields:O}}function Q({label:s,description:a,value:t,onChange:n,catalog:r,allModels:d,disabled:l}){const u=new Set(r?.models.map(o=>o.id)||[]);return e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-xs font-medium",children:s}),a&&e.jsx("p",{className:"text-[10px] text-muted-foreground",children:a})]}),e.jsxs(Ve,{value:t||"",onValueChange:n,disabled:l,children:[e.jsx(Qe,{className:"h-9",children:e.jsx(Je,{placeholder:"Select model",children:t&&e.jsx("span",{className:"truncate font-mono text-xs",children:t})})}),e.jsxs(We,{className:"max-h-[300px]",children:[r&&r.models.length>0&&e.jsxs(Ee,{children:[e.jsx(Ie,{className:"text-xs text-primary",children:"Recommended"}),r.models.map(o=>e.jsx(le,{value:o.id,children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:o.id}),o.tier==="paid"&&e.jsx(G,{variant:"outline",className:"text-[9px] h-4 px-1",children:"PAID"}),t===o.id&&e.jsx(B,{className:"w-3 h-3 text-primary ml-auto"})]})},o.id))]}),d.length>0&&e.jsxs(Ee,{children:[e.jsxs(Ie,{className:"text-xs text-muted-foreground",children:["All Models (",d.length,")"]}),d.filter(o=>!u.has(o.id)).map(o=>e.jsx(le,{value:o.id,children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:o.id}),t===o.id&&e.jsx(B,{className:"w-3 h-3 text-primary ml-auto"})]})},o.id))]}),(!r||r.models.length===0)&&d.length===0&&e.jsx("div",{className:"py-2 px-3 text-xs text-muted-foreground",children:"No models available"})]})]})]})}function Ot({open:s,onClose:a,currentValues:t,onApply:n,onSave:r,isSaving:d,catalog:l,allModels:u}){const[o,h]=p.useState(t),[g,f]=p.useState(""),m=c=>{c?(h(t),f("")):a()};return e.jsx(ge,{open:s,onOpenChange:m,children:e.jsxs(fe,{className:"sm:max-w-md",children:[e.jsx(je,{children:e.jsxs(ve,{className:"flex items-center gap-2",children:[e.jsx(ae,{className:"w-4 h-4"}),"Custom Preset"]})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(re,{htmlFor:"preset-name",children:"Preset Name (optional)"}),e.jsx(oe,{id:"preset-name",value:g,onChange:c=>f(c.target.value),placeholder:"e.g., My Custom Config",className:"text-sm"})]}),e.jsx(ke,{}),e.jsx(Q,{label:"Default Model",description:"Used when no specific tier is requested",value:o.default,onChange:c=>h({...o,default:c}),catalog:l,allModels:u}),e.jsx(Q,{label:"Opus (Most capable)",description:"For complex reasoning tasks",value:o.opus,onChange:c=>h({...o,opus:c}),catalog:l,allModels:u}),e.jsx(Q,{label:"Sonnet (Balanced)",description:"Balance of speed and capability",value:o.sonnet,onChange:c=>h({...o,sonnet:c}),catalog:l,allModels:u}),e.jsx(Q,{label:"Haiku (Fast)",description:"Quick responses for simple tasks",value:o.haiku,onChange:c=>h({...o,haiku:c}),catalog:l,allModels:u})]}),e.jsxs(Ss,{className:"gap-2 sm:gap-0",children:[e.jsx(b,{variant:"outline",onClick:a,children:"Cancel"}),r&&e.jsxs(b,{variant:"secondary",onClick:()=>r(o,g||void 0),disabled:d||!g.trim(),children:[d?e.jsx(q,{className:"w-4 h-4 mr-1 animate-spin"}):e.jsx(ce,{className:"w-4 h-4 mr-1"}),"Save Preset"]}),e.jsxs(b,{onClick:()=>n(o,g||void 0),children:[e.jsx(de,{className:"w-4 h-4 mr-1"}),"Apply Preset"]})]})]})})}function ne({label:s,command:a}){return e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:s}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsx("code",{className:"flex-1 px-2 py-1.5 bg-muted rounded text-xs font-mono truncate",children:a}),e.jsx(ts,{value:a,size:"icon",className:"h-6 w-6"})]})]})}function Dt({provider:s,displayName:a,data:t,authStatus:n}){return e.jsx(Ne,{className:"h-full",children:e.jsxs("div",{className:"p-4 space-y-6",children:[e.jsxs("div",{children:[e.jsxs("h3",{className:"text-sm font-medium flex items-center gap-2 mb-3",children:[e.jsx(nt,{className:"w-4 h-4"}),"Provider Information"]}),e.jsxs("div",{className:"space-y-3 bg-card rounded-lg border p-4 shadow-sm",children:[e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:"Provider"}),e.jsx("span",{className:"font-mono",children:a})]}),t&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:"File Path"}),e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx("code",{className:"bg-muted px-1.5 py-0.5 rounded text-xs break-all",children:t.path}),e.jsx(ts,{value:t.path,size:"icon",className:"h-5 w-5"})]})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:"Last Modified"}),e.jsx("span",{className:"text-xs",children:new Date(t.mtime).toLocaleString()})]})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:"Status"}),n.authenticated?e.jsxs(G,{variant:"outline",className:"w-fit text-green-600 border-green-200 bg-green-50",children:[e.jsx(it,{className:"w-3 h-3 mr-1"}),"Authenticated"]}):e.jsx(G,{variant:"outline",className:"w-fit text-muted-foreground",children:"Not connected"})]})]})]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-medium mb-3",children:"Quick Usage"}),e.jsxs("div",{className:"space-y-3 bg-card rounded-lg border p-4 shadow-sm",children:[e.jsx(ne,{label:"Run with prompt",command:`ccs ${s} "your prompt"`}),e.jsx(ne,{label:"Change model",command:`ccs ${s} --config`}),e.jsx(ne,{label:"Add account",command:`ccs ${s} --add`}),e.jsx(ne,{label:"List accounts",command:`ccs ${s} --accounts`})]})]})]})})}const _t={gemini:"/assets/providers/gemini-color.svg",codex:"/assets/providers/openai.svg",agy:"/assets/providers/agy.png",qwen:"/assets/providers/qwen-color.svg",iflow:"/assets/providers/iflow.png",kiro:"/assets/providers/kiro.png",ghcp:"/assets/providers/copilot.svg",claude:"/assets/providers/claude.svg"},Et={gemini:{text:"text-blue-600",letter:"G"},claude:{text:"text-orange-600",letter:"C"},codex:{text:"text-emerald-600",letter:"X"},agy:{text:"text-violet-600",letter:"A"},qwen:{text:"text-cyan-600",letter:"Q"},iflow:{text:"text-indigo-600",letter:"i"},kiro:{text:"text-teal-600",letter:"K"},ghcp:{text:"text-green-600",letter:"C"}},It={sm:{container:"w-6 h-6",icon:"w-4 h-4",text:"text-xs"},md:{container:"w-8 h-8",icon:"w-5 h-5",text:"text-sm"},lg:{container:"w-12 h-12",icon:"w-8 h-8",text:"text-lg"}};function Se({provider:s,className:a,size:t="md"}){const n=s.toLowerCase(),r=Et[n]||{text:"text-gray-600",letter:s[0]?.toUpperCase()||"?"},d=It[t],l=_t[n];return e.jsx("div",{className:F("flex items-center justify-center rounded-md",l&&"bg-white p-1",d.container,a),children:l?e.jsx("img",{src:l,alt:`${s} logo`,className:F(d.icon,"object-contain")}):e.jsx("span",{className:F("font-semibold",r.text,d.text),children:r.letter})})}function Rt({displayName:s,logoProvider:a,provider:t,data:n,isLoading:r,hasChanges:d,isRawJsonValid:l,isSaving:u,isRemoteMode:o,port:h,onRefetch:g,onSave:f}){return e.jsxs("div",{className:"px-6 py-4 border-b bg-background flex items-center justify-between shrink-0",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(Se,{provider:a||t,size:"lg"}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-lg font-semibold",children:s}),o&&e.jsxs(G,{variant:"secondary",className:"text-xs gap-1 bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400",children:[e.jsx(ns,{className:"w-3 h-3"}),"Remote"]}),h&&e.jsxs(G,{variant:"outline",className:"text-xs gap-1 font-mono",children:[e.jsx(rt,{className:"w-3 h-3"}),":",h]}),!o&&n?.path&&e.jsx(G,{variant:"outline",className:"text-xs",children:n.path.replace(/^.*[\\/]/,"")})]}),o?e.jsx("p",{className:"text-xs text-blue-600 dark:text-blue-400 mt-0.5",children:"Traffic auto-routed to remote server"}):n&&e.jsxs("p",{className:"text-xs text-muted-foreground mt-0.5",children:["Last modified: ",new Date(n.mtime).toLocaleString()]})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(b,{variant:"ghost",size:"sm",onClick:g,disabled:r,children:e.jsx(ye,{className:`w-4 h-4 ${r?"animate-spin":""}`})}),e.jsx(b,{size:"sm",onClick:f,disabled:u||!d||!l,children:u?e.jsxs(e.Fragment,{children:[e.jsx(q,{className:"w-4 h-4 mr-1 animate-spin"}),"Saving..."]}):e.jsxs(e.Fragment,{children:[e.jsx(ot,{className:"w-4 h-4 mr-1"}),"Save"]})})]})]})}function Lt({catalog:s,savedPresets:a,currentModel:t,opusModel:n,sonnetModel:r,haikuModel:d,providerModels:l,onApplyPreset:u,onUpdateEnvValue:o,onOpenCustomPreset:h,onDeletePreset:g,isDeletePending:f}){const m=s&&s.models.length>0||a.length>0;return e.jsxs(e.Fragment,{children:[m&&e.jsxs("div",{children:[e.jsxs("h3",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e.jsx(ae,{className:"w-4 h-4"}),"Presets"]}),e.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:"Apply pre-configured model mappings"}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[s?.models.slice(0,4).map(c=>e.jsxs(b,{variant:"outline",size:"sm",className:"text-xs h-7 gap-1",onClick:()=>{const v=c.presetMapping||{default:c.id,opus:c.id,sonnet:c.id,haiku:c.id};u({ANTHROPIC_MODEL:v.default,ANTHROPIC_DEFAULT_OPUS_MODEL:v.opus,ANTHROPIC_DEFAULT_SONNET_MODEL:v.sonnet,ANTHROPIC_DEFAULT_HAIKU_MODEL:v.haiku})},children:[e.jsx(de,{className:"w-3 h-3"}),c.name]},c.id)),a.map(c=>e.jsxs("div",{className:"group relative",children:[e.jsxs(b,{variant:"secondary",size:"sm",className:"text-xs h-7 gap-1 pr-6",onClick:()=>{u({ANTHROPIC_MODEL:c.default,ANTHROPIC_DEFAULT_OPUS_MODEL:c.opus,ANTHROPIC_DEFAULT_SONNET_MODEL:c.sonnet,ANTHROPIC_DEFAULT_HAIKU_MODEL:c.haiku})},children:[e.jsx(ce,{className:"w-3 h-3 fill-current"}),c.name]}),e.jsx(b,{variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-7 w-5 opacity-0 group-hover:opacity-100 hover:text-destructive",onClick:v=>{v.stopPropagation(),g(c.name)},disabled:f,children:e.jsx(Ce,{className:"w-3 h-3"})})]},c.name)),e.jsxs(b,{variant:"outline",size:"sm",className:"text-xs h-7 gap-1 border-primary/50 text-primary hover:bg-primary/10 hover:border-primary",onClick:h,children:[e.jsx(is,{className:"w-3 h-3"}),"Custom"]})]})]}),e.jsx(ke,{}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-medium mb-2",children:"Model Mapping"}),e.jsx("p",{className:"text-xs text-muted-foreground mb-4",children:"Configure which models to use for each tier"}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(Q,{label:"Default Model",description:"Used when no specific tier is requested",value:t,onChange:c=>o("ANTHROPIC_MODEL",c),catalog:s,allModels:l}),e.jsx(Q,{label:"Opus (Most capable)",description:"For complex reasoning tasks",value:n,onChange:c=>o("ANTHROPIC_DEFAULT_OPUS_MODEL",c),catalog:s,allModels:l}),e.jsx(Q,{label:"Sonnet (Balanced)",description:"Balance of speed and capability",value:r,onChange:c=>o("ANTHROPIC_DEFAULT_SONNET_MODEL",c),catalog:s,allModels:l}),e.jsx(Q,{label:"Haiku (Fast)",description:"Quick responses for simple tasks",value:d,onChange:c=>o("ANTHROPIC_DEFAULT_HAIKU_MODEL",c),catalog:s,allModels:l})]})]})]})}function Ft({className:s,...a}){return e.jsx(vs,{"data-slot":"checkbox",className:F("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",s),...a,children:e.jsx(Ns,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none",children:e.jsx(B,{className:"size-3.5"})})})}function Ut(s){const a=Math.max(0,Math.min(100,s));return a<=20?"bg-destructive":a<=50?"bg-yellow-500":"bg-green-500"}function Ke(s){if(!s)return"";try{const a=new Date(s),n=new Date().getTime()-a.getTime();if(n<0)return"just now";const r=Math.floor(n/(1e3*60)),d=Math.floor(n/(1e3*60*60)),l=Math.floor(n/(1e3*60*60*24));return l>0?`${l}d ago`:d>0?`${d}h ago`:r>0?`${r}m ago`:"just now"}catch{return""}}function Ht(s){if(!s)return!1;try{const a=new Date(s);return new Date().getTime()-a.getTime()<3600*1e3}catch{return!1}}function Kt({account:s,onSetDefault:a,onRemove:t,onPauseToggle:n,isRemoving:r,isPausingAccount:d,privacyMode:l,showQuota:u,selectable:o,selected:h,onSelectChange:g}){const{data:f}=As(u),{data:m,isLoading:c}=Ps(s.provider,s.id,u),v=f?.accountStats?.[s.email||s.id]?.lastUsedAt,M=Ht(v),x=Ms(s.provider,m),E=Ts(s.provider,m);return e.jsxs("div",{className:F("flex flex-col gap-2 p-3 rounded-lg border transition-colors overflow-hidden",s.isDefault?"border-primary/30 bg-primary/5":"border-border hover:bg-muted/30",s.paused&&"opacity-75",h&&"ring-2 ring-primary/50 bg-primary/5"),children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsxs("div",{className:"flex items-center gap-3 min-w-0 flex-1",children:[o&&e.jsx("button",{type:"button",onClick:()=>g?.(!h),className:F("flex items-center justify-center w-5 h-5 rounded border-2 transition-colors shrink-0",h?"bg-primary border-primary text-primary-foreground":"border-muted-foreground/30 hover:border-primary/50"),"aria-label":h?"Deselect account":"Select account",children:h&&e.jsx(B,{className:"w-3 h-3"})}),n&&e.jsx(W,{children:e.jsxs(Y,{children:[e.jsx(X,{asChild:!0,children:e.jsx(b,{variant:"ghost",size:"icon",className:"h-7 w-7 shrink-0",onClick:()=>n(!s.paused),disabled:d,children:d?e.jsx(q,{className:"w-4 h-4 animate-spin"}):s.paused?e.jsx(rs,{className:"w-4 h-4 text-emerald-500"}):e.jsx(xe,{className:"w-4 h-4 text-muted-foreground hover:text-foreground"})})}),e.jsx(Z,{side:"top",children:s.paused?"Resume account":"Pause account"})]})}),e.jsxs("div",{className:"relative shrink-0",children:[e.jsx("div",{className:F("flex items-center justify-center w-8 h-8 rounded-full",s.isDefault?"bg-primary/10":"bg-muted"),children:e.jsx(ee,{className:"w-4 h-4"})}),s.tier&&s.tier!=="unknown"&&s.tier!=="free"&&e.jsx("span",{className:F("absolute -bottom-0.5 -right-0.5 text-[7px] font-bold uppercase px-1 py-px rounded","ring-1 ring-background",s.tier==="ultra"?"bg-violet-500/20 text-violet-600 dark:bg-violet-500/30 dark:text-violet-300":"bg-yellow-500/20 text-yellow-700 dark:bg-yellow-500/25 dark:text-yellow-400"),children:s.tier==="ultra"?"U":"P"})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:F("font-medium text-sm truncate",l&&ie),children:s.email||s.id}),s.isDefault&&e.jsxs(G,{variant:"secondary",className:"text-[10px] h-4 px-1.5 gap-0.5",children:[e.jsx(ce,{className:"w-2.5 h-2.5 fill-current"}),"Default"]}),s.paused&&e.jsxs(G,{variant:"outline",className:"text-[10px] h-4 px-1.5 border-yellow-500 text-yellow-600",children:[e.jsx(xe,{className:"w-2 h-2 mr-0.5"}),"Paused"]})]}),s.provider==="agy"&&e.jsx("div",{className:"flex items-center gap-1.5 mt-1",children:s.projectId?e.jsx(W,{children:e.jsxs(Y,{children:[e.jsx(X,{asChild:!0,children:e.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[e.jsx(lt,{className:"w-3 h-3","aria-hidden":"true"}),e.jsx("span",{className:F("font-mono max-w-[180px] truncate",l&&ie),title:s.projectId,children:s.projectId})]})}),e.jsx(Z,{side:"bottom",children:e.jsx("p",{className:"text-xs",children:"GCP Project ID (read-only)"})})]})}):e.jsx(W,{children:e.jsxs(Y,{children:[e.jsx(X,{asChild:!0,children:e.jsxs("div",{className:"flex items-center gap-1 text-xs text-amber-600 dark:text-amber-500",children:[e.jsx(ct,{className:"w-3 h-3","aria-label":"Warning"}),e.jsx("span",{children:"Project ID: N/A"})]})}),e.jsx(Z,{side:"bottom",className:"max-w-[250px]",children:e.jsxs("div",{className:"text-xs space-y-1",children:[e.jsx("p",{className:"font-medium text-amber-600",children:"Missing Project ID"}),e.jsx("p",{children:"This may cause errors. Remove the account and re-add it to fetch the project ID."})]})})]})})}),s.lastUsedAt&&e.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground mt-0.5",children:[e.jsx(Ue,{className:"w-3 h-3"}),"Last used: ",new Date(s.lastUsedAt).toLocaleDateString()]})]})]}),e.jsxs(Os,{children:[e.jsx(Ds,{asChild:!0,children:e.jsx(b,{variant:"ghost",size:"icon",className:"h-7 w-7 shrink-0",children:e.jsx(dt,{className:"w-4 h-4"})})}),e.jsxs(_s,{align:"end",children:[!s.isDefault&&e.jsxs(Re,{onClick:a,children:[e.jsx(ce,{className:"w-4 h-4 mr-2"}),"Set as default"]}),e.jsxs(Re,{className:"text-destructive focus:text-destructive",onClick:t,disabled:r,children:[e.jsx(os,{className:"w-4 h-4 mr-2"}),r?"Removing...":"Remove account"]})]})]})]}),u&&e.jsx("div",{className:"pl-11",children:c?e.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[e.jsx(q,{className:"w-3 h-3 animate-spin"}),e.jsx("span",{children:"Loading quota..."})]}):x!==null?e.jsxs("div",{className:"space-y-1.5",children:[e.jsx("div",{className:"flex items-center gap-1.5 text-xs",children:M?e.jsxs(e.Fragment,{children:[e.jsx(ut,{className:"w-3 h-3 text-emerald-500"}),e.jsxs("span",{className:"text-emerald-600 dark:text-emerald-400",children:["Active · ",Ke(v)]})]}):v?e.jsxs(e.Fragment,{children:[e.jsx(Ue,{className:"w-3 h-3 text-muted-foreground"}),e.jsxs("span",{className:"text-muted-foreground",children:["Last used ",Ke(v)]})]}):e.jsxs(e.Fragment,{children:[e.jsx(mt,{className:"w-3 h-3 text-muted-foreground"}),e.jsx("span",{className:"text-muted-foreground",children:"Not used yet"})]})}),e.jsx(W,{children:e.jsxs(Y,{children:[e.jsx(X,{asChild:!0,children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Es,{value:Math.max(0,Math.min(100,x)),className:"h-2 flex-1",indicatorClassName:Ut(x)}),e.jsxs("span",{className:"text-xs font-medium w-10 text-right",children:[x,"%"]})]})}),e.jsx(Z,{side:"bottom",className:"max-w-xs",children:m&&e.jsx(Is,{quota:m,resetTime:E})})]})})]}):m?.needsReauth?e.jsx(W,{children:e.jsxs(Y,{children:[e.jsx(X,{asChild:!0,children:e.jsx("div",{className:"flex items-center gap-1.5",children:e.jsxs(G,{variant:"outline",className:"text-[10px] h-5 px-2 gap-1 border-amber-500/50 text-amber-600 dark:text-amber-400",children:[e.jsx(xt,{className:"w-3 h-3"}),"Reauth"]})})}),e.jsx(Z,{side:"bottom",className:"max-w-[220px]",children:e.jsx("p",{className:"text-xs",children:m.error?.includes("No refresh token")?"No refresh token available. Remove and re-add account to fix.":m.error?.includes("refresh")||m.error?.includes("Invalid")?`Auto-refresh failed: ${m.error}`:`Token issue: ${m.error||"Re-authenticate required"}`})})]})}):m?.error||m&&!m.success?e.jsx(W,{children:e.jsxs(Y,{children:[e.jsx(X,{asChild:!0,children:e.jsx("div",{className:"flex items-center gap-1.5",children:e.jsxs(G,{variant:"outline",className:"text-[10px] h-5 px-2 gap-1 border-muted-foreground/50 text-muted-foreground",children:[e.jsx(pt,{className:"w-3 h-3"}),"N/A"]})})}),e.jsx(Z,{side:"bottom",children:e.jsx("p",{className:"text-xs",children:m?.error||"Quota information unavailable"})})]})}):null})]})}function Gt({selectedCount:s,onPauseSelected:a,onResumeSelected:t,onClearSelection:n,isPausing:r,isResuming:d}){if(s<1)return null;const l=r||d;return e.jsxs("div",{className:"flex items-center gap-3 p-2 bg-muted/50 rounded-lg border mt-2",children:[e.jsxs("span",{className:"text-sm text-muted-foreground",children:[s," selected"]}),e.jsx(b,{variant:"ghost",size:"sm",className:"text-xs h-6 px-2",onClick:n,disabled:l,children:"Clear"}),e.jsxs("div",{className:"flex gap-2 ml-auto",children:[e.jsxs(b,{size:"sm",variant:"outline",className:"h-7 text-xs gap-1",onClick:a,disabled:l,children:[r?e.jsx(q,{className:"w-3 h-3 animate-spin"}):e.jsx(xe,{className:"w-3 h-3"}),"Pause Selected"]}),e.jsxs(b,{size:"sm",variant:"outline",className:"h-7 text-xs gap-1",onClick:t,disabled:l,children:[d?e.jsx(q,{className:"w-3 h-3 animate-spin"}):e.jsx(rs,{className:"w-3 h-3"}),"Resume Selected"]})]})]})}function $t({accounts:s,onAddAccount:a,onSetDefault:t,onRemoveAccount:n,onPauseToggle:r,onSoloMode:d,onBulkPause:l,onBulkResume:u,isRemovingAccount:o,isPausingAccount:h,isSoloingAccount:g,isBulkPausing:f,isBulkResuming:m,privacyMode:c,showQuota:v,isKiro:M,kiroNoIncognito:x,onKiroNoIncognitoChange:E,kiroSettingsLoading:K}){const[D,T]=p.useState(new Set),O=p.useMemo(()=>new Set(s.map(w=>w.id)),[s]),j=p.useMemo(()=>new Set([...D].filter(w=>O.has(w))),[D,O]),P=!!(l&&u),N=j.size,A=s.length>0&&j.size===s.length,I=j.size>0&&j.size<s.length,k=p.useCallback(w=>{T(_=>{const H=new Set(_);return H.has(w)?H.delete(w):H.add(w),H})},[]),y=p.useCallback(()=>{T(new Set(s.map(w=>w.id)))},[s]),R=p.useCallback(()=>{T(new Set)},[]),U=p.useCallback(()=>{A?R():y()},[A,y,R]),$=p.useCallback(()=>{l&&j.size>0&&(l(Array.from(j)),T(new Set))},[l,j]),C=p.useCallback(()=>{u&&j.size>0&&(u(Array.from(j)),T(new Set))},[u,j]);return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsxs("h3",{className:"text-sm font-medium flex items-center gap-2",children:[P&&s.length>0&&e.jsx(Ft,{checked:A,onCheckedChange:U,"aria-label":"Select all accounts",className:I?"data-[state=checked]:bg-primary/50":"",...I?{"data-state":"indeterminate"}:{}}),e.jsx(ee,{className:"w-4 h-4"}),"Accounts",s.length>0&&e.jsx(G,{variant:"secondary",className:"text-xs",children:s.length})]}),e.jsxs(b,{variant:"default",size:"sm",className:"h-7 text-xs gap-1",onClick:a,children:[e.jsx(is,{className:"w-3 h-3"}),"Add"]})]}),P&&N>0&&e.jsx(Gt,{selectedCount:N,onPauseSelected:$,onResumeSelected:C,onClearSelection:R,isPausing:!!f,isResuming:!!m}),s.length>0?e.jsx("div",{className:"space-y-2",children:s.map(w=>e.jsx(Kt,{account:w,onSetDefault:()=>t(w.id),onRemove:()=>n(w.id),onPauseToggle:r?_=>r(w.id,_):void 0,onSoloMode:d?()=>d(w.id):void 0,isRemoving:o,isPausingAccount:h,isSoloingAccount:g,privacyMode:c,showQuota:v,selectable:P,selected:j.has(w.id),onSelectChange:()=>k(w.id)},w.id))}):e.jsxs("div",{className:"py-6 text-center text-muted-foreground bg-muted/30 rounded-lg border border-dashed",children:[e.jsx(ee,{className:"w-8 h-8 mx-auto mb-2 opacity-50"}),e.jsx("p",{className:"text-sm",children:"No accounts connected"}),e.jsx("p",{className:"text-xs opacity-70",children:"Add an account to get started"})]}),M&&E&&e.jsx("div",{className:"mt-3 pt-3 border-t border-dashed",children:e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(ns,{className:"w-3.5 h-3.5"}),e.jsx("span",{children:"Use incognito"})]}),e.jsx(ft,{checked:!x,onCheckedChange:w=>E(!w),disabled:K,className:"scale-90"})]})})]})}function zt({provider:s,catalog:a,savedPresets:t,currentModel:n,opusModel:r,sonnetModel:d,haikuModel:l,providerModels:u,onApplyPreset:o,onUpdateEnvValue:h,onOpenCustomPreset:g,onDeletePreset:f,isDeletePending:m,accounts:c,onAddAccount:v,onSetDefault:M,onRemoveAccount:x,onPauseToggle:E,onSoloMode:K,onBulkPause:D,onBulkResume:T,isRemovingAccount:O,isPausingAccount:j,isSoloingAccount:P,isBulkPausing:N,isBulkResuming:A,privacyMode:I,isRemoteMode:k}){const y=s==="kiro",[R,U]=p.useState(!0),[$,C]=p.useState(!0),[w,_]=p.useState(!1),H=p.useCallback(async()=>{if(y)try{C(!0);const S=(await ue.config.get()).cliproxy;U(S?.kiro_no_incognito??!0)}catch{U(!0)}finally{C(!1)}},[y]),se=p.useCallback(async i=>{U(i),_(!0);try{const S=await ue.config.get(),J=S.cliproxy??{};await ue.config.update({...S,cliproxy:{...J,kiro_no_incognito:i}})}catch{U(!i)}finally{_(!1)}},[]);return p.useEffect(()=>{H()},[H]),e.jsx(Ne,{className:"flex-1",children:e.jsxs("div",{className:"p-4 space-y-6",children:[e.jsx(Lt,{catalog:a,savedPresets:t,currentModel:n,opusModel:r,sonnetModel:d,haikuModel:l,providerModels:u,onApplyPreset:o,onUpdateEnvValue:h,onOpenCustomPreset:g,onDeletePreset:f,isDeletePending:m}),e.jsx(ke,{}),e.jsx($t,{accounts:c,onAddAccount:v,onSetDefault:M,onRemoveAccount:x,onPauseToggle:E,onSoloMode:K,onBulkPause:D,onBulkResume:T,isRemovingAccount:O,isPausingAccount:j,isSoloingAccount:P,isBulkPausing:N,isBulkResuming:A,privacyMode:I,showQuota:Rs.includes(s)&&!k,isKiro:y,kiroNoIncognito:R,onKiroNoIncognitoChange:se,kiroSettingsLoading:$||w})]})})}function Ge({provider:s,displayName:a,authStatus:t,catalog:n,logoProvider:r,baseProvider:d,isRemoteMode:l,port:u,onAddAccount:o,onSetDefault:h,onRemoveAccount:g,onPauseToggle:f,onSoloMode:m,onBulkPause:c,onBulkResume:v,isRemovingAccount:M,isPausingAccount:x,isSoloingAccount:E,isBulkPausing:K,isBulkResuming:D}){const[T,O]=p.useState(!1),{privacyMode:j}=es(),{data:P}=Ls(),{data:N}=Fs(s),A=Us(),I=Hs(),k=N?.presets||[],y=d||s,R=p.useMemo(()=>{if(!P?.models)return[];const V={gemini:["google"],agy:["antigravity"],codex:["openai"],qwen:["alibaba","qwen"],iflow:["iflow"],kiro:["kiro","aws"],ghcp:["github","copilot"]}[y.toLowerCase()]||[y.toLowerCase()];return P.models.filter(De=>V.some(js=>De.owned_by.toLowerCase().includes(js)))},[P,y]),{data:U,isLoading:$,refetch:C,rawJsonContent:w,rawJsonEdits:_,isRawJsonValid:H,hasChanges:se,currentModel:i,opusModel:S,sonnetModel:J,haikuModel:Ae,handleRawJsonChange:cs,updateEnvValue:ds,updateEnvValues:Pe,saveMutation:Me,conflictDialog:us,handleConflictResolve:Te,missingRequiredFields:ms}=Tt(s),xs=t.accounts||[],{data:ps}=ze({queryKey:["auth-tokens-raw"],queryFn:async()=>{const L=await fetch("/api/settings/auth/tokens/raw");return L.ok?L.json():{apiKey:{value:"ccs-internal-managed"}}},staleTime:6e4}),Oe=ps?.apiKey?.value??"ccs-internal-managed",hs=L=>{Pe({ANTHROPIC_BASE_URL:`http://127.0.0.1:${u??pe}/api/provider/${s}`,ANTHROPIC_AUTH_TOKEN:Oe,...L}),z.success(`Applied "${L.ANTHROPIC_MODEL?.split("/").pop()||"preset"}" preset`)},gs=(L,V)=>{Pe({ANTHROPIC_BASE_URL:`http://127.0.0.1:${u??pe}/api/provider/${s}`,ANTHROPIC_AUTH_TOKEN:Oe,ANTHROPIC_MODEL:L.default,ANTHROPIC_DEFAULT_OPUS_MODEL:L.opus,ANTHROPIC_DEFAULT_SONNET_MODEL:L.sonnet,ANTHROPIC_DEFAULT_HAIKU_MODEL:L.haiku}),z.success(`Applied ${V?`"${V}"`:"custom"} preset`),O(!1)},fs=(L,V)=>{if(!V){z.error("Please enter a preset name to save");return}A.mutate({profile:s,data:{name:V,...L}}),O(!1)};return e.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[e.jsx(Rt,{provider:s,displayName:a,logoProvider:r,data:U,isLoading:$,hasChanges:se,isRawJsonValid:H,isSaving:Me.isPending,isRemoteMode:l,port:u,onRefetch:C,onSave:()=>Me.mutate()}),$?e.jsxs("div",{className:"flex-1 flex items-center justify-center",children:[e.jsx(q,{className:"w-8 h-8 animate-spin text-muted-foreground"}),e.jsx("span",{className:"ml-3 text-muted-foreground",children:"Loading settings..."})]}):e.jsxs("div",{className:"flex-1 grid grid-cols-[40%_60%] divide-x overflow-hidden",children:[e.jsx("div",{className:"flex flex-col overflow-hidden bg-muted/5",children:e.jsxs(Ks,{defaultValue:"config",className:"h-full flex flex-col",children:[e.jsx("div",{className:"px-4 pt-4 shrink-0",children:e.jsxs(Gs,{className:"w-full",children:[e.jsx(Le,{value:"config",className:"flex-1",children:"Model Config"}),e.jsx(Le,{value:"info",className:"flex-1",children:"Info & Usage"})]})}),e.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[e.jsx(Fe,{value:"config",className:"flex-1 mt-0 border-0 p-0 data-[state=inactive]:hidden flex flex-col overflow-hidden",children:e.jsx(zt,{provider:s,catalog:n,savedPresets:k,currentModel:i,opusModel:S,sonnetModel:J,haikuModel:Ae,providerModels:R,onApplyPreset:hs,onUpdateEnvValue:ds,onOpenCustomPreset:()=>O(!0),onDeletePreset:L=>I.mutate({profile:s,name:L}),isDeletePending:I.isPending,accounts:xs,onAddAccount:o,onSetDefault:h,onRemoveAccount:g,onPauseToggle:f,onSoloMode:m,onBulkPause:c,onBulkResume:v,isRemovingAccount:M,isPausingAccount:x,isSoloingAccount:E,isBulkPausing:K,isBulkResuming:D,privacyMode:j,isRemoteMode:l})}),e.jsx(Fe,{value:"info",className:"h-full mt-0 border-0 p-0 data-[state=inactive]:hidden",children:e.jsx(Dt,{provider:s,displayName:a,data:U,authStatus:t})})]})]})}),e.jsxs("div",{className:"flex flex-col overflow-hidden",children:[e.jsxs("div",{className:"px-6 py-2 bg-muted/30 border-b flex items-center gap-2 shrink-0 h-[45px]",children:[e.jsx(ht,{className:"w-4 h-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Raw Configuration (JSON)"})]}),e.jsx($s,{rawJsonContent:w,isRawJsonValid:H,rawJsonEdits:_,onRawJsonChange:cs,profileEnv:U?.settings?.env,missingRequiredFields:ms})]})]}),e.jsx(gt,{open:us,title:"File Modified Externally",description:"This settings file was modified by another process. Overwrite with your changes or discard?",confirmText:"Overwrite",variant:"destructive",onConfirm:()=>Te(!0),onCancel:()=>Te(!1)}),e.jsx(Ot,{open:T,onClose:()=>O(!1),currentValues:{default:i||"",opus:S||"",sonnet:J||"",haiku:Ae||""},onApply:gs,onSave:fs,isSaving:A.isPending,catalog:n,allModels:R})]})}function qt({status:s,isSelected:a,onSelect:t}){const n=s.accounts?.length||0;return e.jsxs("button",{className:F("w-full flex items-center gap-3 px-3 py-2.5 rounded-lg transition-colors cursor-pointer text-left",a?"bg-primary/10 border border-primary/20":"hover:bg-muted border border-transparent"),onClick:t,children:[e.jsx(Se,{provider:s.provider,size:"md"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium text-sm truncate",children:s.displayName}),n>0&&e.jsx(G,{variant:"secondary",className:"text-[10px] h-4 px-1",children:n})]}),e.jsx("div",{className:"flex items-center gap-1.5 mt-0.5",children:s.authenticated?e.jsxs(e.Fragment,{children:[e.jsx(B,{className:"w-3 h-3 text-green-600"}),e.jsx("span",{className:"text-xs text-green-600",children:"Connected"})]}):e.jsxs(e.Fragment,{children:[e.jsx(Ce,{className:"w-3 h-3 text-muted-foreground"}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"Not connected"})]})})]})]})}function Bt({variant:s,parentAuth:a,isSelected:t,onSelect:n,onDelete:r,isDeleting:d}){return e.jsxs("button",{className:F("group w-full flex items-center gap-3 px-3 py-2 rounded-lg transition-colors cursor-pointer text-left pl-6",t?"bg-primary/10 border border-primary/20":"hover:bg-muted border border-transparent"),onClick:n,children:[e.jsxs("div",{className:"relative",children:[e.jsx(Se,{provider:s.provider,size:"sm"}),e.jsx(ls,{className:"w-2.5 h-2.5 absolute -bottom-0.5 -right-0.5 text-muted-foreground"})]}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium text-sm truncate",children:s.name}),e.jsx(G,{variant:"outline",className:"text-[9px] h-4 px-1",children:"variant"})]}),e.jsx("div",{className:"flex items-center gap-1.5 mt-0.5",children:a?.authenticated?e.jsxs(e.Fragment,{children:[e.jsx(B,{className:"w-3 h-3 text-green-600"}),e.jsxs("span",{className:"text-xs text-muted-foreground truncate",children:["via ",s.provider]})]}):e.jsxs(e.Fragment,{children:[e.jsx(Ce,{className:"w-3 h-3 text-muted-foreground"}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"Parent not connected"})]})})]}),e.jsx(b,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 hover:text-destructive",onClick:l=>{l.stopPropagation(),r()},disabled:d,children:e.jsx(os,{className:"w-3 h-3"})})]})}function Vt({onSetup:s}){return e.jsx("div",{className:"flex-1 flex items-center justify-center bg-muted/20",children:e.jsxs("div",{className:"text-center max-w-md px-8",children:[e.jsx("div",{className:"w-16 h-16 rounded-full bg-muted flex items-center justify-center mx-auto mb-6",children:e.jsx(de,{className:"w-8 h-8 text-muted-foreground"})}),e.jsx("h2",{className:"text-xl font-semibold mb-2",children:"CCS Profile Manager"}),e.jsx("p",{className:"text-muted-foreground mb-4",children:"Manage OAuth authentication, account preferences, and model selection for CLIProxy providers. Configure how CCS routes requests to different AI backends."}),e.jsxs("p",{className:"text-xs text-muted-foreground mb-6",children:["For live usage stats and real-time monitoring, visit the"," ",e.jsx("a",{href:"/cliproxy/control-panel",className:"text-primary hover:underline",children:"Control Panel"}),"."]}),e.jsxs(b,{onClick:s,className:"gap-2",children:[e.jsx(ae,{className:"w-4 h-4"}),"Quick Setup"]})]})})}function oa(){const s=$e(),{data:a,isLoading:t}=Ye(),{data:n,isFetching:r}=zs(),{data:d}=qs(),l=Bs(),u=Vs(),o=Qs(),h=Js(),g=Ws(),f=Ys(),m=Xs(),c=Zs(),[v,M]=p.useState(()=>typeof window<"u"?localStorage.getItem("cliproxy-selected-provider"):null),[x,E]=p.useState(null),[K,D]=p.useState(!1),[T,O]=p.useState(null),j=p.useMemo(()=>a?.authStatus||[],[a?.authStatus]),P=a?.source==="remote",N=p.useMemo(()=>n?.variants||[],[n?.variants]),A=i=>{M(i),i&&localStorage.setItem("cliproxy-selected-provider",i)},I=p.useMemo(()=>x?null:v&&j.some(i=>i.provider===v)?v:j.length>0&&(j.find(S=>(S.accounts?.length||0)>0)?.provider||j[0]?.provider)||null,[v,x,j]),k=j.find(i=>i.provider===I),y=N.find(i=>i.name===x),R=y?j.find(i=>i.provider===y.provider):void 0,U=()=>{s.invalidateQueries({queryKey:["cliproxy"]}),s.invalidateQueries({queryKey:["cliproxy-auth"]})},$=(i,S,J)=>{o.isPending||h.isPending||(J?o.mutate({provider:i,accountId:S}):h.mutate({provider:i,accountId:S}))},C=(i,S)=>{g.isPending||g.mutate({provider:i,accountId:S})},w=(i,S)=>{f.isPending||f.mutate({provider:i,accountIds:S})},_=(i,S)=>{m.isPending||m.mutate({provider:i,accountIds:S})},H=i=>{A(i),E(null)},se=i=>{E(i),A(null)};return e.jsxs("div",{className:"h-[calc(100vh-100px)] flex",children:[e.jsxs("div",{className:"w-80 border-r flex flex-col bg-muted/30",children:[e.jsxs("div",{className:"p-4 border-b bg-background",children:[e.jsxs("div",{className:"flex items-center justify-between mb-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(de,{className:"w-5 h-5 text-primary"}),e.jsx("h1",{className:"font-semibold",children:d?.backendLabel??"CLIProxy"})]}),e.jsx(b,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:U,disabled:r,children:e.jsx(ye,{className:F("w-4 h-4",r&&"animate-spin")})})]}),e.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:"CCS-level account management"}),e.jsxs(b,{variant:"default",size:"sm",className:"w-full gap-2",onClick:()=>D(!0),children:[e.jsx(ae,{className:"w-4 h-4"}),"Quick Setup"]})]}),e.jsx(Ne,{className:"flex-1",children:e.jsxs("div",{className:"p-2",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide px-3 py-2",children:"Providers"}),t?e.jsx("div",{className:"space-y-2 px-2",children:[1,2,3,4].map(i=>e.jsx(et,{className:"h-14 w-full rounded-lg"},i))}):e.jsx("div",{className:"space-y-1",children:j.map(i=>e.jsx(qt,{status:i,isSelected:I===i.provider,onSelect:()=>H(i.provider)},i.provider))}),N.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide px-3 py-2 mt-4 flex items-center gap-1.5",children:[e.jsx(ls,{className:"w-3 h-3"}),"Variants"]}),e.jsx("div",{className:"space-y-1",children:N.map(i=>e.jsx(Bt,{variant:i,parentAuth:j.find(S=>S.provider===i.provider),isSelected:x===i.name,onSelect:()=>se(i.name),onDelete:()=>c.mutate(i.name),isDeleting:c.isPending},i.name))})]})]})}),e.jsx("div",{className:"p-3 border-t",children:e.jsx(jt,{})}),e.jsx("div",{className:"p-3 border-t bg-background text-xs text-muted-foreground",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("span",{children:[j.length," provider",j.length!==1?"s":""]}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(B,{className:"w-3 h-3 text-green-600"}),j.filter(i=>i.authenticated).length," connected"]})]})})]}),e.jsx("div",{className:"flex-1 flex flex-col min-w-0 bg-background",children:y&&R?e.jsx(Ge,{provider:y.name,displayName:`${y.name} (${y.provider} variant)`,authStatus:R,catalog:te[y.provider],logoProvider:y.provider,baseProvider:y.provider,isRemoteMode:P,port:y.port,onAddAccount:()=>O({provider:y.provider,displayName:R.displayName,isFirstAccount:(R.accounts?.length||0)===0}),onSetDefault:i=>l.mutate({provider:y.provider,accountId:i}),onRemoveAccount:i=>u.mutate({provider:y.provider,accountId:i}),onPauseToggle:(i,S)=>$(y.provider,i,S),onSoloMode:i=>C(y.provider,i),onBulkPause:i=>w(y.provider,i),onBulkResume:i=>_(y.provider,i),isRemovingAccount:u.isPending,isPausingAccount:o.isPending||h.isPending,isSoloingAccount:g.isPending,isBulkPausing:f.isPending,isBulkResuming:m.isPending}):k?e.jsx(Ge,{provider:k.provider,displayName:k.displayName,authStatus:k,catalog:te[k.provider],isRemoteMode:P,onAddAccount:()=>O({provider:k.provider,displayName:k.displayName,isFirstAccount:(k.accounts?.length||0)===0}),onSetDefault:i=>l.mutate({provider:k.provider,accountId:i}),onRemoveAccount:i=>u.mutate({provider:k.provider,accountId:i}),onPauseToggle:(i,S)=>$(k.provider,i,S),onSoloMode:i=>C(k.provider,i),onBulkPause:i=>w(k.provider,i),onBulkResume:i=>_(k.provider,i),isRemovingAccount:u.isPending,isPausingAccount:o.isPending||h.isPending,isSoloingAccount:g.isPending,isBulkPausing:f.isPending,isBulkResuming:m.isPending}):e.jsx(Vt,{onSetup:()=>D(!0)})}),e.jsx(St,{open:K,onClose:()=>D(!1)}),e.jsx(At,{open:T!==null,onClose:()=>O(null),provider:T?.provider||"",displayName:T?.displayName||"",isFirstAccount:T?.isFirstAccount||!1})]})}export{oa as CliproxyPage};
|