@mcp-graph-workflow/mcp-graph 5.25.0 → 5.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/router.d.ts.map +1 -1
- package/dist/api/router.js +2 -0
- package/dist/api/router.js.map +1 -1
- package/dist/api/routes/translation-project.d.ts +8 -0
- package/dist/api/routes/translation-project.d.ts.map +1 -0
- package/dist/api/routes/translation-project.js +338 -0
- package/dist/api/routes/translation-project.js.map +1 -0
- package/dist/api/routes/translation.d.ts.map +1 -1
- package/dist/api/routes/translation.js +102 -0
- package/dist/api/routes/translation.js.map +1 -1
- package/dist/core/code/code-indexer.d.ts +2 -0
- package/dist/core/code/code-indexer.d.ts.map +1 -1
- package/dist/core/code/code-indexer.js +9 -3
- package/dist/core/code/code-indexer.js.map +1 -1
- package/dist/core/code/code-types.d.ts +4 -0
- package/dist/core/code/code-types.d.ts.map +1 -1
- package/dist/core/code/code-types.js +1 -0
- package/dist/core/code/code-types.js.map +1 -1
- package/dist/core/code/ts-analyzer.d.ts.map +1 -1
- package/dist/core/code/ts-analyzer.js +77 -6
- package/dist/core/code/ts-analyzer.js.map +1 -1
- package/dist/core/store/migrations.d.ts.map +1 -1
- package/dist/core/store/migrations.js +41 -0
- package/dist/core/store/migrations.js.map +1 -1
- package/dist/core/translation/project-translation-orchestrator.d.ts +65 -0
- package/dist/core/translation/project-translation-orchestrator.d.ts.map +1 -0
- package/dist/core/translation/project-translation-orchestrator.js +336 -0
- package/dist/core/translation/project-translation-orchestrator.js.map +1 -0
- package/dist/core/translation/translation-project-store.d.ts +40 -0
- package/dist/core/translation/translation-project-store.d.ts.map +1 -0
- package/dist/core/translation/translation-project-store.js +195 -0
- package/dist/core/translation/translation-project-store.js.map +1 -0
- package/dist/core/translation/translation-project-types.d.ts +98 -0
- package/dist/core/translation/translation-project-types.d.ts.map +1 -0
- package/dist/core/translation/translation-project-types.js +84 -0
- package/dist/core/translation/translation-project-types.js.map +1 -0
- package/dist/core/translation/zip-extractor.d.ts +4 -0
- package/dist/core/translation/zip-extractor.d.ts.map +1 -0
- package/dist/core/translation/zip-extractor.js +194 -0
- package/dist/core/translation/zip-extractor.js.map +1 -0
- package/dist/mcp/tools/reindex-knowledge.js +1 -1
- package/dist/mcp/tools/reindex-knowledge.js.map +1 -1
- package/dist/web/dashboard/dist/assets/{benchmark-tab-sjsZBd-4.js → benchmark-tab-BAfHRc8R.js} +1 -1
- package/dist/web/dashboard/dist/assets/{circle-alert-DcTbCUEa.js → circle-alert-Xp4yHA83.js} +1 -1
- package/dist/web/dashboard/dist/assets/{context-tab-DNMJ2Pv-.js → context-tab-WZWpYE4Q.js} +1 -1
- package/dist/web/dashboard/dist/assets/{gitnexus-tab-CZ9LJbwz.js → gitnexus-tab-BL3gMYaZ.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-section-BdcXKKoS.js → graph-section-B-cObR6x.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-tab-CFzux3kf.js → graph-tab-DC5Iama3.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-utils-_8jpWA5z.js → graph-utils-CdV9peLO.js} +1 -1
- package/dist/web/dashboard/dist/assets/index-CTdsOcRa.css +1 -0
- package/dist/web/dashboard/dist/assets/{index-CITYTuX5.js → index-DfEJaZLA.js} +46 -46
- package/dist/web/dashboard/dist/assets/{index-DSI2SYWO.js → index-iWhfMJa8.js} +1 -1
- package/dist/web/dashboard/dist/assets/{index-Bny20bel.js → index-z9HSPrpH.js} +1 -1
- package/dist/web/dashboard/dist/assets/{insights-tab-DUA76KUY.js → insights-tab-Cu1cH-bN.js} +1 -1
- package/dist/web/dashboard/dist/assets/{journey-tab-FTd6jBta.js → journey-tab-BtqgC4Wj.js} +1 -1
- package/dist/web/dashboard/dist/assets/languages-tab-BeJF5wPH.js +128 -0
- package/dist/web/dashboard/dist/assets/{loader-circle-D1DpGd2u.js → loader-circle-MkZSJbxU.js} +1 -1
- package/dist/web/dashboard/dist/assets/{logs-tab-CzL36_Qy.js → logs-tab-CA2dPs0v.js} +1 -1
- package/dist/web/dashboard/dist/assets/{lsp-tab-DdHhJq_H.js → lsp-tab-DuF6UV_3.js} +9 -19
- package/dist/web/dashboard/dist/assets/{memories-tab-CzgCahnV.js → memories-tab-blOtravG.js} +1 -1
- package/dist/web/dashboard/dist/assets/{prd-backlog-tab-C8Cl7swI.js → prd-backlog-tab-DtwzxFyr.js} +1 -1
- package/dist/web/dashboard/dist/assets/{refresh-cw-DSYiHmbh.js → refresh-cw-VhHh0g7N.js} +1 -1
- package/dist/web/dashboard/dist/assets/{siebel-tab-B4XOaUGz.js → siebel-tab-DP6xoWD8.js} +3 -3
- package/dist/web/dashboard/dist/assets/{skills-tab-CkpnwPJY.js → skills-tab-Tspln3N1.js} +1 -1
- package/dist/web/dashboard/dist/assets/{style-BOQDk6qp.js → style-CsU39IOg.js} +1 -1
- package/dist/web/dashboard/dist/assets/triangle-alert-ZnXg11jO.js +26 -0
- package/dist/web/dashboard/dist/index.html +2 -2
- package/package.json +4 -2
- package/dist/web/dashboard/dist/assets/index-CvAguK65.css +0 -1
- package/dist/web/dashboard/dist/assets/languages-tab-B_nhFL2q.js +0 -70
- package/dist/web/dashboard/dist/assets/triangle-alert-Bf6Ly19h.js +0 -16
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
export declare const TranslationProjectStatusSchema: z.ZodEnum<{
|
|
3
|
+
ready: "ready";
|
|
4
|
+
done: "done";
|
|
5
|
+
failed: "failed";
|
|
6
|
+
analyzing: "analyzing";
|
|
7
|
+
translating: "translating";
|
|
8
|
+
uploading: "uploading";
|
|
9
|
+
}>;
|
|
10
|
+
export type TranslationProjectStatus = z.infer<typeof TranslationProjectStatusSchema>;
|
|
11
|
+
export declare const TranslationProjectFileStatusSchema: z.ZodEnum<{
|
|
12
|
+
done: "done";
|
|
13
|
+
pending: "pending";
|
|
14
|
+
failed: "failed";
|
|
15
|
+
analyzing: "analyzing";
|
|
16
|
+
translating: "translating";
|
|
17
|
+
analyzed: "analyzed";
|
|
18
|
+
}>;
|
|
19
|
+
export type TranslationProjectFileStatus = z.infer<typeof TranslationProjectFileStatusSchema>;
|
|
20
|
+
export declare const TranslationProjectSchema: z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
projectId: z.ZodString;
|
|
23
|
+
name: z.ZodString;
|
|
24
|
+
sourceLanguage: z.ZodOptional<z.ZodString>;
|
|
25
|
+
targetLanguage: z.ZodString;
|
|
26
|
+
status: z.ZodEnum<{
|
|
27
|
+
ready: "ready";
|
|
28
|
+
done: "done";
|
|
29
|
+
failed: "failed";
|
|
30
|
+
analyzing: "analyzing";
|
|
31
|
+
translating: "translating";
|
|
32
|
+
uploading: "uploading";
|
|
33
|
+
}>;
|
|
34
|
+
totalFiles: z.ZodNumber;
|
|
35
|
+
processedFiles: z.ZodNumber;
|
|
36
|
+
overallConfidence: z.ZodOptional<z.ZodNumber>;
|
|
37
|
+
deterministicPct: z.ZodOptional<z.ZodNumber>;
|
|
38
|
+
createdAt: z.ZodString;
|
|
39
|
+
updatedAt: z.ZodString;
|
|
40
|
+
}, z.core.$strip>;
|
|
41
|
+
export type TranslationProject = z.infer<typeof TranslationProjectSchema>;
|
|
42
|
+
export declare const TranslationProjectFileSchema: z.ZodObject<{
|
|
43
|
+
id: z.ZodString;
|
|
44
|
+
translationProjectId: z.ZodString;
|
|
45
|
+
filePath: z.ZodString;
|
|
46
|
+
sourceCode: z.ZodString;
|
|
47
|
+
sourceLanguage: z.ZodOptional<z.ZodString>;
|
|
48
|
+
status: z.ZodEnum<{
|
|
49
|
+
done: "done";
|
|
50
|
+
pending: "pending";
|
|
51
|
+
failed: "failed";
|
|
52
|
+
analyzing: "analyzing";
|
|
53
|
+
translating: "translating";
|
|
54
|
+
analyzed: "analyzed";
|
|
55
|
+
}>;
|
|
56
|
+
jobId: z.ZodOptional<z.ZodString>;
|
|
57
|
+
deterministic: z.ZodOptional<z.ZodBoolean>;
|
|
58
|
+
analysis: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
59
|
+
confidenceScore: z.ZodOptional<z.ZodNumber>;
|
|
60
|
+
errorMessage: z.ZodOptional<z.ZodString>;
|
|
61
|
+
createdAt: z.ZodString;
|
|
62
|
+
updatedAt: z.ZodString;
|
|
63
|
+
}, z.core.$strip>;
|
|
64
|
+
export type TranslationProjectFile = z.infer<typeof TranslationProjectFileSchema>;
|
|
65
|
+
export declare const CreateTranslationProjectInputSchema: z.ZodObject<{
|
|
66
|
+
projectId: z.ZodString;
|
|
67
|
+
name: z.ZodString;
|
|
68
|
+
sourceLanguage: z.ZodOptional<z.ZodString>;
|
|
69
|
+
targetLanguage: z.ZodString;
|
|
70
|
+
totalFiles: z.ZodOptional<z.ZodNumber>;
|
|
71
|
+
}, z.core.$strip>;
|
|
72
|
+
export type CreateTranslationProjectInput = z.infer<typeof CreateTranslationProjectInputSchema>;
|
|
73
|
+
export declare const AddTranslationProjectFileInputSchema: z.ZodObject<{
|
|
74
|
+
translationProjectId: z.ZodString;
|
|
75
|
+
filePath: z.ZodString;
|
|
76
|
+
sourceCode: z.ZodString;
|
|
77
|
+
sourceLanguage: z.ZodOptional<z.ZodString>;
|
|
78
|
+
}, z.core.$strip>;
|
|
79
|
+
export type AddTranslationProjectFileInput = z.infer<typeof AddTranslationProjectFileInputSchema>;
|
|
80
|
+
export declare const ExtractedFileSchema: z.ZodObject<{
|
|
81
|
+
relativePath: z.ZodString;
|
|
82
|
+
content: z.ZodString;
|
|
83
|
+
extension: z.ZodString;
|
|
84
|
+
sizeBytes: z.ZodNumber;
|
|
85
|
+
detectedLanguage: z.ZodOptional<z.ZodString>;
|
|
86
|
+
}, z.core.$strip>;
|
|
87
|
+
export type ExtractedFile = z.infer<typeof ExtractedFileSchema>;
|
|
88
|
+
export declare const TranslationProjectSummarySchema: z.ZodObject<{
|
|
89
|
+
overallConfidence: z.ZodNumber;
|
|
90
|
+
deterministicPct: z.ZodNumber;
|
|
91
|
+
totalFiles: z.ZodNumber;
|
|
92
|
+
analyzedFiles: z.ZodNumber;
|
|
93
|
+
translatedFiles: z.ZodNumber;
|
|
94
|
+
failedFiles: z.ZodNumber;
|
|
95
|
+
pendingFiles: z.ZodNumber;
|
|
96
|
+
}, z.core.$strip>;
|
|
97
|
+
export type TranslationProjectSummary = z.infer<typeof TranslationProjectSummarySchema>;
|
|
98
|
+
//# sourceMappingURL=translation-project-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"translation-project-types.d.ts","sourceRoot":"","sources":["../../../src/core/translation/translation-project-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAI3B,eAAO,MAAM,8BAA8B;;;;;;;EAOzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,8BAA8B,CACtC,CAAC;AAIF,eAAO,MAAM,kCAAkC;;;;;;;EAO7C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAChD,OAAO,kCAAkC,CAC1C,CAAC;AAIF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;iBAanC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAI1E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;iBAcvC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAC1C,OAAO,4BAA4B,CACpC,CAAC;AAIF,eAAO,MAAM,mCAAmC;;;;;;iBAM9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC;AAIF,eAAO,MAAM,oCAAoC;;;;;iBAK/C,CAAC;AAEH,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAClD,OAAO,oCAAoC,CAC5C,CAAC;AAIF,eAAO,MAAM,mBAAmB;;;;;;iBAM9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,eAAO,MAAM,+BAA+B;;;;;;;;iBAQ1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
// --- Translation Project Status ---
|
|
3
|
+
export const TranslationProjectStatusSchema = z.enum([
|
|
4
|
+
"uploading",
|
|
5
|
+
"analyzing",
|
|
6
|
+
"ready",
|
|
7
|
+
"translating",
|
|
8
|
+
"done",
|
|
9
|
+
"failed",
|
|
10
|
+
]);
|
|
11
|
+
// --- Translation Project File Status ---
|
|
12
|
+
export const TranslationProjectFileStatusSchema = z.enum([
|
|
13
|
+
"pending",
|
|
14
|
+
"analyzing",
|
|
15
|
+
"analyzed",
|
|
16
|
+
"translating",
|
|
17
|
+
"done",
|
|
18
|
+
"failed",
|
|
19
|
+
]);
|
|
20
|
+
// --- Translation Project ---
|
|
21
|
+
export const TranslationProjectSchema = z.object({
|
|
22
|
+
id: z.string(),
|
|
23
|
+
projectId: z.string(),
|
|
24
|
+
name: z.string(),
|
|
25
|
+
sourceLanguage: z.string().optional(),
|
|
26
|
+
targetLanguage: z.string(),
|
|
27
|
+
status: TranslationProjectStatusSchema,
|
|
28
|
+
totalFiles: z.number().int().min(0),
|
|
29
|
+
processedFiles: z.number().int().min(0),
|
|
30
|
+
overallConfidence: z.number().min(0).max(1).optional(),
|
|
31
|
+
deterministicPct: z.number().min(0).max(100).optional(),
|
|
32
|
+
createdAt: z.string(),
|
|
33
|
+
updatedAt: z.string(),
|
|
34
|
+
});
|
|
35
|
+
// --- Translation Project File ---
|
|
36
|
+
export const TranslationProjectFileSchema = z.object({
|
|
37
|
+
id: z.string(),
|
|
38
|
+
translationProjectId: z.string(),
|
|
39
|
+
filePath: z.string(),
|
|
40
|
+
sourceCode: z.string(),
|
|
41
|
+
sourceLanguage: z.string().optional(),
|
|
42
|
+
status: TranslationProjectFileStatusSchema,
|
|
43
|
+
jobId: z.string().optional(),
|
|
44
|
+
deterministic: z.boolean().optional(),
|
|
45
|
+
analysis: z.record(z.string(), z.unknown()).optional(),
|
|
46
|
+
confidenceScore: z.number().min(0).max(1).optional(),
|
|
47
|
+
errorMessage: z.string().optional(),
|
|
48
|
+
createdAt: z.string(),
|
|
49
|
+
updatedAt: z.string(),
|
|
50
|
+
});
|
|
51
|
+
// --- Create Project Input ---
|
|
52
|
+
export const CreateTranslationProjectInputSchema = z.object({
|
|
53
|
+
projectId: z.string(),
|
|
54
|
+
name: z.string(),
|
|
55
|
+
sourceLanguage: z.string().optional(),
|
|
56
|
+
targetLanguage: z.string(),
|
|
57
|
+
totalFiles: z.number().int().min(0).optional(),
|
|
58
|
+
});
|
|
59
|
+
// --- Add File Input ---
|
|
60
|
+
export const AddTranslationProjectFileInputSchema = z.object({
|
|
61
|
+
translationProjectId: z.string(),
|
|
62
|
+
filePath: z.string(),
|
|
63
|
+
sourceCode: z.string(),
|
|
64
|
+
sourceLanguage: z.string().optional(),
|
|
65
|
+
});
|
|
66
|
+
// --- Extracted File (from ZIP) ---
|
|
67
|
+
export const ExtractedFileSchema = z.object({
|
|
68
|
+
relativePath: z.string(),
|
|
69
|
+
content: z.string(),
|
|
70
|
+
extension: z.string(),
|
|
71
|
+
sizeBytes: z.number().int().min(0),
|
|
72
|
+
detectedLanguage: z.string().optional(),
|
|
73
|
+
});
|
|
74
|
+
// --- Project Summary ---
|
|
75
|
+
export const TranslationProjectSummarySchema = z.object({
|
|
76
|
+
overallConfidence: z.number().min(0).max(1),
|
|
77
|
+
deterministicPct: z.number().min(0).max(100),
|
|
78
|
+
totalFiles: z.number().int().min(0),
|
|
79
|
+
analyzedFiles: z.number().int().min(0),
|
|
80
|
+
translatedFiles: z.number().int().min(0),
|
|
81
|
+
failedFiles: z.number().int().min(0),
|
|
82
|
+
pendingFiles: z.number().int().min(0),
|
|
83
|
+
});
|
|
84
|
+
//# sourceMappingURL=translation-project-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"translation-project-types.js","sourceRoot":"","sources":["../../../src/core/translation/translation-project-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zip-extractor.d.ts","sourceRoot":"","sources":["../../../src/core/translation/zip-extractor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAqFpE,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEzE;AA0CD,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAsF3D"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import AdmZip from "adm-zip";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { logger } from "../utils/logger.js";
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// Constants
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
const MAX_FILE_SIZE_BYTES = 500 * 1024; // 500 KB
|
|
8
|
+
const IGNORED_DIRS = new Set([
|
|
9
|
+
"node_modules",
|
|
10
|
+
".git",
|
|
11
|
+
".svn",
|
|
12
|
+
"__MACOSX",
|
|
13
|
+
".idea",
|
|
14
|
+
".vscode",
|
|
15
|
+
"dist",
|
|
16
|
+
"build",
|
|
17
|
+
"__pycache__",
|
|
18
|
+
".next",
|
|
19
|
+
]);
|
|
20
|
+
const BINARY_EXTENSIONS = new Set([
|
|
21
|
+
".exe",
|
|
22
|
+
".dll",
|
|
23
|
+
".so",
|
|
24
|
+
".dylib",
|
|
25
|
+
".class",
|
|
26
|
+
".jar",
|
|
27
|
+
".zip",
|
|
28
|
+
".gz",
|
|
29
|
+
".tar",
|
|
30
|
+
".png",
|
|
31
|
+
".jpg",
|
|
32
|
+
".gif",
|
|
33
|
+
".ico",
|
|
34
|
+
".pdf",
|
|
35
|
+
".woff",
|
|
36
|
+
".woff2",
|
|
37
|
+
".ttf",
|
|
38
|
+
".eot",
|
|
39
|
+
".mp3",
|
|
40
|
+
".mp4",
|
|
41
|
+
".mov",
|
|
42
|
+
".avi",
|
|
43
|
+
".wav",
|
|
44
|
+
".o",
|
|
45
|
+
".a",
|
|
46
|
+
".lib",
|
|
47
|
+
".pyc",
|
|
48
|
+
".pyo",
|
|
49
|
+
".node",
|
|
50
|
+
]);
|
|
51
|
+
// ---------------------------------------------------------------------------
|
|
52
|
+
// Language detection
|
|
53
|
+
// ---------------------------------------------------------------------------
|
|
54
|
+
const EXTENSION_TO_LANGUAGE = {
|
|
55
|
+
".ts": "typescript",
|
|
56
|
+
".tsx": "typescript",
|
|
57
|
+
".js": "javascript",
|
|
58
|
+
".jsx": "javascript",
|
|
59
|
+
".py": "python",
|
|
60
|
+
".java": "java",
|
|
61
|
+
".cs": "csharp",
|
|
62
|
+
".go": "go",
|
|
63
|
+
".rs": "rust",
|
|
64
|
+
".rb": "ruby",
|
|
65
|
+
".php": "php",
|
|
66
|
+
".swift": "swift",
|
|
67
|
+
".kt": "kotlin",
|
|
68
|
+
".kts": "kotlin",
|
|
69
|
+
".scala": "scala",
|
|
70
|
+
".cpp": "cpp",
|
|
71
|
+
".cc": "cpp",
|
|
72
|
+
".cxx": "cpp",
|
|
73
|
+
".h": "cpp",
|
|
74
|
+
".hpp": "cpp",
|
|
75
|
+
".lua": "lua",
|
|
76
|
+
".dart": "dart",
|
|
77
|
+
".ex": "elixir",
|
|
78
|
+
".exs": "elixir",
|
|
79
|
+
".hs": "haskell",
|
|
80
|
+
};
|
|
81
|
+
export function detectLanguageByExtension(ext) {
|
|
82
|
+
return EXTENSION_TO_LANGUAGE[ext.toLowerCase()];
|
|
83
|
+
}
|
|
84
|
+
// ---------------------------------------------------------------------------
|
|
85
|
+
// Binary detection
|
|
86
|
+
// ---------------------------------------------------------------------------
|
|
87
|
+
function isBinaryFile(entry) {
|
|
88
|
+
const ext = path.extname(entry.entryName).toLowerCase();
|
|
89
|
+
if (BINARY_EXTENSIONS.has(ext)) {
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
// Inspect first 512 bytes for null bytes
|
|
93
|
+
const buf = entry.getData();
|
|
94
|
+
const checkLength = Math.min(buf.length, 512);
|
|
95
|
+
for (let i = 0; i < checkLength; i++) {
|
|
96
|
+
if (buf[i] === 0x00) {
|
|
97
|
+
return true;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
// ---------------------------------------------------------------------------
|
|
103
|
+
// Path filtering helpers
|
|
104
|
+
// ---------------------------------------------------------------------------
|
|
105
|
+
function isInIgnoredDir(entryPath) {
|
|
106
|
+
const parts = entryPath.split(/[/\\]/);
|
|
107
|
+
return parts.some((part) => IGNORED_DIRS.has(part));
|
|
108
|
+
}
|
|
109
|
+
function isHiddenFile(entryPath) {
|
|
110
|
+
const basename = path.basename(entryPath);
|
|
111
|
+
return basename.startsWith(".");
|
|
112
|
+
}
|
|
113
|
+
// ---------------------------------------------------------------------------
|
|
114
|
+
// Main extractor
|
|
115
|
+
// ---------------------------------------------------------------------------
|
|
116
|
+
export function extractZip(zipPath) {
|
|
117
|
+
let zip;
|
|
118
|
+
try {
|
|
119
|
+
zip = new AdmZip(zipPath);
|
|
120
|
+
}
|
|
121
|
+
catch (err) {
|
|
122
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
123
|
+
logger.error(`Failed to open ZIP file: ${message}`, { zipPath });
|
|
124
|
+
return [];
|
|
125
|
+
}
|
|
126
|
+
const entries = zip.getEntries();
|
|
127
|
+
const extracted = [];
|
|
128
|
+
let filteredCount = 0;
|
|
129
|
+
for (const entry of entries) {
|
|
130
|
+
// Skip directories
|
|
131
|
+
if (entry.isDirectory) {
|
|
132
|
+
continue;
|
|
133
|
+
}
|
|
134
|
+
const entryPath = entry.entryName;
|
|
135
|
+
// Skip files in ignored directories
|
|
136
|
+
if (isInIgnoredDir(entryPath)) {
|
|
137
|
+
filteredCount++;
|
|
138
|
+
continue;
|
|
139
|
+
}
|
|
140
|
+
// Skip hidden files
|
|
141
|
+
if (isHiddenFile(entryPath)) {
|
|
142
|
+
filteredCount++;
|
|
143
|
+
continue;
|
|
144
|
+
}
|
|
145
|
+
// Skip files exceeding max size
|
|
146
|
+
if (entry.header.size > MAX_FILE_SIZE_BYTES) {
|
|
147
|
+
filteredCount++;
|
|
148
|
+
logger.debug(`Skipping large file: ${entryPath}`, {
|
|
149
|
+
sizeBytes: entry.header.size,
|
|
150
|
+
maxBytes: MAX_FILE_SIZE_BYTES,
|
|
151
|
+
});
|
|
152
|
+
continue;
|
|
153
|
+
}
|
|
154
|
+
// Skip binary files
|
|
155
|
+
try {
|
|
156
|
+
if (isBinaryFile(entry)) {
|
|
157
|
+
filteredCount++;
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
filteredCount++;
|
|
163
|
+
logger.debug(`Skipping unreadable entry: ${entryPath}`);
|
|
164
|
+
continue;
|
|
165
|
+
}
|
|
166
|
+
// Read content as UTF-8
|
|
167
|
+
let content;
|
|
168
|
+
try {
|
|
169
|
+
content = entry.getData().toString("utf-8");
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
filteredCount++;
|
|
173
|
+
logger.debug(`Failed to read entry as UTF-8: ${entryPath}`);
|
|
174
|
+
continue;
|
|
175
|
+
}
|
|
176
|
+
const ext = path.extname(entryPath).toLowerCase();
|
|
177
|
+
const detectedLanguage = detectLanguageByExtension(ext);
|
|
178
|
+
extracted.push({
|
|
179
|
+
relativePath: entryPath,
|
|
180
|
+
content,
|
|
181
|
+
extension: ext,
|
|
182
|
+
sizeBytes: Buffer.byteLength(content, "utf-8"),
|
|
183
|
+
...(detectedLanguage !== undefined ? { detectedLanguage } : {}),
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
logger.info(`ZIP extraction complete`, {
|
|
187
|
+
zipPath,
|
|
188
|
+
totalEntries: entries.length,
|
|
189
|
+
filtered: filteredCount,
|
|
190
|
+
extracted: extracted.length,
|
|
191
|
+
});
|
|
192
|
+
return extracted;
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=zip-extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zip-extractor.js","sourceRoot":"","sources":["../../../src/core/translation/zip-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,7 +78,7 @@ export function registerReindexKnowledge(server, store) {
|
|
|
78
78
|
if (allSources || sources?.includes("code")) {
|
|
79
79
|
try {
|
|
80
80
|
const symbols = store.getDb()
|
|
81
|
-
.prepare("SELECT name, kind,
|
|
81
|
+
.prepare("SELECT name, kind, file, exported FROM code_symbols LIMIT 500")
|
|
82
82
|
.all();
|
|
83
83
|
if (symbols.length > 0) {
|
|
84
84
|
results.code = indexCodeAnalysis(new KnowledgeStore(store.getDb()), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reindex-knowledge.js","sourceRoot":"","sources":["../../../src/mcp/tools/reindex-knowledge.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"reindex-knowledge.js","sourceRoot":"","sources":["../../../src/mcp/tools/reindex-knowledge.ts"],"names":[],"mappings":"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"}
|
package/dist/web/dashboard/dist/assets/{benchmark-tab-sjsZBd-4.js → benchmark-tab-BAfHRc8R.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as u,a as h,j as e}from"./index-
|
|
1
|
+
import{r as u,a as h,j as e}from"./index-DfEJaZLA.js";function v(){const[r,c]=u.useState(null),[m,a]=u.useState(!0),[t,x]=u.useState(null);return u.useEffect(()=>{async function n(){try{const d=await h.request("/benchmark");c(d)}catch(d){x(d instanceof Error?d.message:"Failed to load benchmark data")}finally{a(!1)}}n()},[]),{data:r,loading:m,error:t}}function p(){const{data:r,loading:c,error:m}=v();if(c)return e.jsxs("div",{className:"p-6 max-w-5xl mx-auto space-y-6",children:[e.jsx("div",{className:"h-5 w-40 rounded bg-surface animate-pulse"}),e.jsx("div",{className:"grid grid-cols-4 gap-3",children:Array.from({length:4}).map((o,l)=>e.jsx("div",{className:"h-20 rounded-xl border border-edge bg-surface-alt animate-pulse"},l))}),e.jsx("div",{className:"space-y-2",children:Array.from({length:5}).map((o,l)=>e.jsx("div",{className:"h-6 rounded bg-surface animate-pulse",style:{width:`${60+Math.random()*30}%`}},l))})]});if(m)return e.jsx("div",{className:"flex flex-col items-center justify-center h-full gap-4",children:e.jsxs("div",{className:"text-center",children:[e.jsx("p",{className:"text-sm font-medium text-foreground",children:"Failed to load benchmark"}),e.jsx("p",{className:"text-xs text-muted mt-1",children:m})]})});if(!r)return e.jsx("div",{});const{tokenEconomy:a,layeredCompression:t,dependencyIntelligence:x,toolTokenUsage:n,formulas:d}=r;return e.jsxs("div",{className:"p-6 max-w-5xl mx-auto space-y-6 overflow-y-auto h-full",children:[e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Token Economy"}),e.jsxs("div",{className:"grid grid-cols-5 gap-3 mb-4",children:[e.jsx(s,{value:`${a.avgCompressionPercent}%`,label:"Avg Compress"}),e.jsx(s,{value:a.totalTokensSaved.toLocaleString(),label:"Total Tokens Saved"}),e.jsx(s,{value:a.avgTokensSavedPerTask.toLocaleString(),label:"Saved / Task"}),e.jsx(s,{value:a.totalNodes,label:"Nodes"}),e.jsx(s,{value:a.totalEdges,label:"Edges"})]}),a.perTaskMetrics.length>0&&e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-muted mb-2",children:"Context Compression per Task (vs Full Graph)"}),e.jsx("div",{className:"space-y-1.5","data-testid":"compression-bars",children:a.perTaskMetrics.slice(0,15).map(o=>e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"w-32 truncate",title:o.title,children:o.title}),e.jsx("div",{className:"flex-1 h-3 bg-surface-elevated rounded-full overflow-hidden",children:e.jsx("div",{className:"h-full rounded-full bg-accent",style:{width:`${Math.min(o.compressionPercent,100)}%`}})}),e.jsxs("span",{className:"text-muted w-24 text-right",children:[o.compressionPercent,"% (",o.estimatedTokens," tok)"]})]},o.id))})]})]}),t&&t.avgLayer1SavingsPercent!=null?e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Real Token Savings (Per-Layer)"}),e.jsxs("div",{className:"grid grid-cols-5 gap-3 mb-4",children:[e.jsx(s,{value:`${t.avgLayer1SavingsPercent}%`,label:"L1: Field Strip"}),e.jsx(s,{value:`${t.avgLayer2SavingsPercent}%`,label:"L2: Desc Truncate"}),e.jsx(s,{value:`${t.avgLayer3SavingsPercent}%`,label:"L3: Default Omit"}),e.jsx(s,{value:`${t.avgLayer4SavingsPercent}%`,label:"L4: Short Keys"}),e.jsx(s,{value:`${t.avgTotalRealSavingsPercent}%`,label:"Total Real Savings"})]}),(()=>{const o=Math.max(t.avgNaiveNeighborhoodTokens,1),l=[{label:"Naive Neighborhood",tokens:t.avgNaiveNeighborhoodTokens,color:"#ef4444"},{label:"L1: Field Stripping",tokens:t.avgCompactContextTokens,color:"#f97316"},{label:"L2: Desc Truncation",tokens:t.avgNeighborTruncatedTokens,color:"#eab308"},{label:"L3: Default Omission",tokens:t.avgDefaultOmittedTokens,color:"#22c55e"},{label:"L4: Short Keys",tokens:t.avgShortKeysTokens,color:"#3b82f6"},{label:"Summary Tier",tokens:t.avgSummaryTierTokens,color:"#8b5cf6"}];return e.jsx("div",{className:"space-y-1.5","data-testid":"waterfall-bars",children:l.map(i=>e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"w-40 truncate",title:i.label,children:i.label}),e.jsx("div",{className:"flex-1 h-3 bg-surface-elevated rounded-full overflow-hidden",children:e.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(i.tokens/o*100,100)}%`,backgroundColor:i.color}})}),e.jsxs("span",{className:"text-muted w-20 text-right",children:[i.tokens.toLocaleString()," tok"]})]},i.label))})})()]}):e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Real Token Savings (Per-Layer)"}),e.jsx("div",{className:"px-3 py-4 rounded-xl border border-edge bg-surface-alt text-center text-xs text-muted",children:"No compression data available"})]}),e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Dependency Intelligence"}),e.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[e.jsx(s,{value:x.inferredDeps,label:"Auto Inferred"}),e.jsx(s,{value:`${x.blockedTasks}/${a.totalNodes}`,label:"Blocked Detected"}),e.jsx(s,{value:x.cycles,label:"Cycles Detected"})]})]}),e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Formulas & Justification"}),e.jsx("div",{className:"px-3 py-2 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt text-xs space-y-1","data-testid":"formulas-section",children:Object.entries(d).map(([o,l])=>e.jsxs("div",{className:"flex gap-2",children:[e.jsxs("span",{className:"text-muted font-mono w-40 shrink-0",children:[o,":"]}),e.jsx("span",{children:l})]},o))})]}),n&&n.totalCalls>0&&e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Tool Token Usage"}),e.jsxs("div",{className:"grid grid-cols-3 gap-3 mb-4",children:[e.jsx(s,{value:n.totalCalls.toLocaleString(),label:"Total Calls"}),e.jsx(s,{value:n.totalInputTokens.toLocaleString(),label:"Total Input Tokens"}),e.jsx(s,{value:n.totalOutputTokens.toLocaleString(),label:"Total Output Tokens"})]}),n.perTool.length>0&&(()=>{const o=Math.max(...n.perTool.map(l=>l.totalTokens),1);return e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-muted mb-2",children:"Token Usage per Tool"}),e.jsx("div",{className:"space-y-1.5","data-testid":"tool-token-bars",children:n.perTool.slice(0,15).map(l=>e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"w-32 truncate font-mono",title:l.toolName,children:l.toolName}),e.jsx("div",{className:"flex-1 h-3 bg-surface-elevated rounded-full overflow-hidden",children:e.jsx("div",{className:"h-full rounded-full bg-accent",style:{width:`${Math.min(l.totalTokens/o*100,100)}%`}})}),e.jsxs("span",{className:"text-muted w-32 text-right",children:[l.callCount," calls, ",l.totalTokens.toLocaleString()," tok"]})]},l.toolName))})]})})()]}),e.jsxs("section",{children:[e.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Cost Analysis"}),e.jsx("h4",{className:"text-xs font-medium text-muted mb-2",children:"Savings from Compression"}),e.jsxs("div",{className:"grid grid-cols-4 gap-3 mb-3",children:[e.jsx(s,{value:`$${a.costSavings.opusSavedPerTask.toFixed(3)}`,label:"Opus Saved/Task"}),e.jsx(s,{value:`$${a.costSavings.sonnetSavedPerTask.toFixed(3)}`,label:"Sonnet Saved/Task"}),e.jsx(s,{value:`$${a.costSavings.opusTotalSaved.toFixed(2)}`,label:"Opus Total Saved"}),e.jsx(s,{value:`$${a.costSavings.sonnetTotalSaved.toFixed(2)}`,label:"Sonnet Total Saved"})]}),e.jsx("h4",{className:"text-xs font-medium text-muted mb-2",children:"Cost per Task (after compression)"}),e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsx(s,{value:`$${a.costSavings.opusCostPerTask.toFixed(3)}`,label:"Opus Input/Task"}),e.jsx(s,{value:`$${a.costSavings.sonnetCostPerTask.toFixed(3)}`,label:"Sonnet Input/Task"})]})]})]})}function s({value:r,label:c}){return e.jsxs("div",{className:"p-3 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt text-center","data-testid":"metric-card",children:[e.jsx("div",{className:"text-xl font-bold",children:r}),e.jsx("div",{className:"text-[10px] text-muted uppercase",children:c})]})}export{p as BenchmarkTab};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as o,a as h,j as e}from"./index-
|
|
1
|
+
import{r as o,a as h,j as e}from"./index-DfEJaZLA.js";function m(){const[s,x]=o.useState(null),[i,n]=o.useState(!0),[c,r]=o.useState(null),d=o.useCallback(async()=>{n(!0),r(null);try{const l=await h.getContextBudget();x(l)}catch(l){r(l instanceof Error?l.message:"Failed to load context budget")}finally{n(!1)}},[]);return o.useEffect(()=>{d()},[d]),{budget:s,loading:i,error:c,refresh:d}}const u={green:{bg:"bg-green-500/10",text:"text-green-500",border:"border-green-500/30"},yellow:{bg:"bg-yellow-500/10",text:"text-yellow-500",border:"border-yellow-500/30"},red:{bg:"bg-red-500/10",text:"text-red-500",border:"border-red-500/30"}};function g(){const{budget:s,loading:x,error:i,refresh:n}=m();if(i)return e.jsxs("div",{className:"flex items-center justify-center h-full text-danger",children:["Failed to load context budget: ",i]});if(x||!s)return e.jsxs("div",{className:"p-6 max-w-6xl mx-auto space-y-6",children:[e.jsx("div",{className:"h-5 w-48 rounded bg-surface animate-pulse"}),e.jsx("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-3",children:Array.from({length:4}).map((t,a)=>e.jsx("div",{className:"h-20 rounded-xl border border-edge bg-surface-alt animate-pulse"},a))}),e.jsx("div",{className:"h-24 rounded-lg border border-edge bg-surface-alt animate-pulse"}),e.jsx("div",{className:"h-12 rounded-xl border border-edge bg-surface-alt animate-pulse"})]});const c=u[s.health]??u.green,[r,d]=o.useState(null),l=t=>{r===t?(d(null),h.toggleSkill(t,!1).then(()=>n())):(d(t),setTimeout(()=>d(a=>a===t?null:a),3e3))};return e.jsxs("div",{className:"p-6 max-w-6xl mx-auto space-y-6 overflow-y-auto h-full",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("h2",{className:"text-lg font-semibold",children:"Context Management"}),e.jsx("button",{onClick:()=>n(),className:"text-xs px-3 py-1.5 rounded-lg bg-accent text-white hover:opacity-90 transition-opacity",children:"Refresh"})]}),e.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-3",children:[e.jsxs("div",{className:"p-3 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt text-center",children:[e.jsx("div",{className:"text-xl font-bold",children:s.activeTokens.toLocaleString()}),e.jsx("div",{className:"text-[10px] text-muted uppercase",children:"Active Tokens"})]}),e.jsxs("div",{className:"p-3 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt text-center",children:[e.jsx("div",{className:"text-xl font-bold",children:s.totalTokens.toLocaleString()}),e.jsx("div",{className:"text-[10px] text-muted uppercase",children:"Total Tokens"})]}),e.jsxs("div",{className:"p-3 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt text-center",children:[e.jsx("div",{className:"text-xl font-bold",children:s.activeCount}),e.jsx("div",{className:"text-[10px] text-muted uppercase",children:"Active Skills"})]}),e.jsxs("div",{className:"p-3 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt text-center",children:[e.jsx("div",{className:"text-xl font-bold",children:s.totalCount}),e.jsx("div",{className:"text-[10px] text-muted uppercase",children:"Total Skills"})]})]}),e.jsxs("div",{className:`p-4 rounded-lg border ${c.bg} ${c.border}`,children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:`w-3 h-3 rounded-full ${s.health==="green"?"bg-green-500":s.health==="yellow"?"bg-yellow-500":"bg-red-500"}`}),e.jsxs("div",{children:[e.jsxs("div",{className:`text-sm font-medium ${c.text}`,children:["Session Health: ",s.health.charAt(0).toUpperCase()+s.health.slice(1)]}),e.jsx("div",{className:"text-xs text-muted mt-0.5",children:s.healthMessage})]})]}),s.recommendations.length>0&&e.jsx("div",{className:"mt-3 space-y-1",children:s.recommendations.map((t,a)=>e.jsx("div",{className:"text-xs text-muted",children:t},a))})]}),e.jsxs("div",{className:"p-4 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt",children:[e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[e.jsx("h3",{className:"text-xs font-semibold text-muted uppercase",children:"Token Budget"}),e.jsxs("span",{className:"text-xs text-muted",children:[s.activeTokens.toLocaleString()," / 4,000 (",Math.round(s.activeTokens/40),"%)"]})]}),e.jsxs("div",{className:"w-full h-3 rounded-full bg-edge relative",children:[e.jsx("div",{className:"h-full rounded-full absolute top-0 left-0 opacity-20",style:{width:`${Math.min(Math.round(s.totalTokens/40),100)}%`,background:"#6b7280"}}),e.jsx("div",{className:"h-full rounded-full absolute top-0 left-0 transition-all",style:{width:`${Math.min(Math.round(s.activeTokens/40),100)}%`,background:s.health==="red"?"#ef4444":s.health==="yellow"?"#f59e0b":"#10b981"}})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h3",{className:"text-xs font-semibold text-muted uppercase",children:"Token Breakdown by Skill"}),e.jsx("div",{className:"space-y-1",children:s.breakdown.map(t=>{const a=s.totalTokens>0?Math.round(t.tokens/s.totalTokens*100):0;return e.jsxs("div",{className:`flex items-center gap-3 p-2 rounded-xl border border-edge shadow-sm hover:shadow-md transition-shadow bg-surface-alt ${t.enabled?"":"opacity-40"}`,children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-xs font-medium truncate",children:t.name}),e.jsx("span",{className:`px-1 py-0.5 rounded text-[9px] ${t.source==="custom"?"bg-purple-500/10 text-purple-500":"bg-blue-500/10 text-blue-500"}`,children:t.source})]}),e.jsx("div",{className:"w-full h-1 rounded-full bg-edge mt-1",children:e.jsx("div",{className:"h-full rounded-full",style:{width:`${a}%`,background:t.enabled?"#3b82f6":"#6b7280"}})})]}),e.jsxs("span",{className:"text-[10px] text-muted shrink-0 w-16 text-right",children:[t.tokens.toLocaleString()," tok"]}),t.enabled&&e.jsx("button",{onClick:()=>l(t.name),className:`text-[10px] px-1.5 py-0.5 rounded border shrink-0 cursor-pointer transition-all ${r===t.name?"bg-red-500/10 text-red-400 border-red-500/30 font-medium":"border-edge text-muted hover:text-red-500 hover:border-red-500/50"}`,children:r===t.name?"Sure?":"Disable"})]},t.name)})})]})]})}export{g as ContextTab};
|