genaicode 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/cli-params.js +21 -0
- package/dist/cli/cli-params.js.map +1 -1
- package/dist/cli/validate-cli-params.js +19 -11
- package/dist/cli/validate-cli-params.js.map +1 -1
- package/dist/files/read-files.js +8 -2
- package/dist/files/read-files.js.map +1 -1
- package/dist/files/source-code-tree.d.ts +2 -5
- package/dist/files/source-code-tree.js +3 -32
- package/dist/files/source-code-tree.js.map +1 -1
- package/dist/files/source-code-types.d.ts +7 -2
- package/dist/files/source-code-utils.d.ts +22 -0
- package/dist/files/source-code-utils.js +69 -0
- package/dist/files/source-code-utils.js.map +1 -0
- package/dist/files/summary-cache.d.ts +1 -1
- package/dist/files/summary-cache.js +1 -1
- package/dist/main/common/user-actions.d.ts +1 -1
- package/dist/main/common/user-actions.js +3 -3
- package/dist/main/common/user-actions.js.map +1 -1
- package/dist/main/ui/backend/endpoints/generate-content-endpoint.js +6 -5
- package/dist/main/ui/backend/endpoints/generate-content-endpoint.js.map +1 -1
- package/dist/main/ui/backend/service.js +10 -8
- package/dist/main/ui/backend/service.js.map +1 -1
- package/dist/main/ui/frontend/assets/{index-DfiFNFf2.js → index-D8KFdZaU.js} +69 -65
- package/dist/main/ui/frontend/index.html +1 -1
- package/dist/prompt/ai-service-fallback.js +1 -1
- package/dist/prompt/ai-service-fallback.js.map +1 -1
- package/dist/prompt/function-calling-validate.js +1 -0
- package/dist/prompt/function-calling-validate.js.map +1 -1
- package/dist/prompt/function-defs/get-source-code.js +8 -11
- package/dist/prompt/function-defs/get-source-code.js.map +1 -1
- package/dist/prompt/function-defs/set-summaries.d.ts +1 -1
- package/dist/prompt/function-defs/set-summaries.js +10 -6
- package/dist/prompt/function-defs/set-summaries.js.map +1 -1
- package/dist/prompt/prompt-service.js +2 -3
- package/dist/prompt/prompt-service.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.d.ts +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js +17 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js +24 -14
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js +15 -19
- package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js +10 -5
- package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js.map +1 -1
- package/dist/prompt/steps/step-context-optimization.js +8 -6
- package/dist/prompt/steps/step-context-optimization.js.map +1 -1
- package/dist/prompt/steps/step-ensure-context.js +1 -2
- package/dist/prompt/steps/step-ensure-context.js.map +1 -1
- package/dist/prompt/steps/step-generate-codegen-summary.js +3 -0
- package/dist/prompt/steps/step-generate-codegen-summary.js.map +1 -1
- package/dist/prompt/steps/step-process-file-updates.js +1 -0
- package/dist/prompt/steps/step-process-file-updates.js.map +1 -1
- package/dist/prompt/steps/step-summarization.d.ts +5 -0
- package/dist/prompt/steps/step-summarization.js +77 -42
- package/dist/prompt/steps/step-summarization.js.map +1 -1
- package/package.json +2 -2
package/dist/cli/cli-params.js
CHANGED
|
@@ -2,6 +2,26 @@ import fs from 'fs';
|
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import { serviceAutoDetect } from './service-autodetect.js';
|
|
4
4
|
const params = process.argv.slice(2);
|
|
5
|
+
// Handle positional arguments first
|
|
6
|
+
const positionalArgs = params.filter((param) => !param.startsWith('--'));
|
|
7
|
+
const namedArgs = params.filter((param) => param.startsWith('--'));
|
|
8
|
+
// Process first positional argument as either explicit prompt or task file
|
|
9
|
+
if (positionalArgs.length > 0) {
|
|
10
|
+
const firstArg = positionalArgs[0];
|
|
11
|
+
const hasExplicitPrompt = namedArgs.some((arg) => arg.startsWith('--explicit-prompt='));
|
|
12
|
+
const hasTaskFile = namedArgs.some((arg) => arg.startsWith('--task-file='));
|
|
13
|
+
// Only process if neither explicit prompt nor task file is provided via named arguments
|
|
14
|
+
if (!hasExplicitPrompt && !hasTaskFile) {
|
|
15
|
+
// Check if the argument is a file that exists
|
|
16
|
+
const possibleFilePath = path.isAbsolute(firstArg) ? firstArg : path.join(process.cwd(), firstArg);
|
|
17
|
+
if (fs.existsSync(possibleFilePath)) {
|
|
18
|
+
params.push(`--task-file=${firstArg}`);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
params.push(`--explicit-prompt=${firstArg}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
5
25
|
export const dryRun = params.includes('--dry-run');
|
|
6
26
|
export const allowFileCreate = !params.includes('--disallow-file-create');
|
|
7
27
|
export const allowFileDelete = !params.includes('--disallow-file-delete');
|
|
@@ -33,6 +53,7 @@ export const ignorePatterns = params
|
|
|
33
53
|
export const disableAiServiceFallback = params.includes('--disable-ai-service-fallback');
|
|
34
54
|
export const enableVertexUnescape = params.includes('--enable-vertex-unescape');
|
|
35
55
|
export const disableHistory = params.includes('--disable-history');
|
|
56
|
+
// Validate task file and explicitPrompt exclusivity
|
|
36
57
|
// New variable to store the ui-port value
|
|
37
58
|
export const uiPort = parseInt(params.find((param) => param.startsWith('--ui-port='))?.split('=')[1] || '1337', 10);
|
|
38
59
|
if (taskFile) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-params.js","sourceRoot":"","sources":["../../src/cli/cli-params.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-params.js","sourceRoot":"","sources":["../../src/cli/cli-params.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,22 +44,31 @@ export function validateCliParams() {
|
|
|
44
44
|
const providedParameters = process.argv.slice(2);
|
|
45
45
|
// Check if --help is present
|
|
46
46
|
const helpRequested = providedParameters.includes('--help');
|
|
47
|
+
const positionalArgs = providedParameters.filter((param) => !param.startsWith('--'));
|
|
48
|
+
const namedArgs = providedParameters.filter((param) => param.startsWith('--'));
|
|
47
49
|
if (helpRequested) {
|
|
48
50
|
// If --help is present, no other parameters should be allowed
|
|
49
51
|
if (providedParameters.length > 1) {
|
|
50
|
-
|
|
51
|
-
process.exit(1);
|
|
52
|
+
throw new Error('Error: The --help option must be used alone.');
|
|
52
53
|
}
|
|
53
54
|
return; // Exit the function early as no further validation is needed
|
|
54
55
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
// Validate positional arguments
|
|
57
|
+
if (positionalArgs.length > 1) {
|
|
58
|
+
throw new Error('Error: Only one positional argument is allowed. Use named parameters (--option=value) for additional options.');
|
|
59
|
+
}
|
|
60
|
+
// Check for conflicts between positional and named arguments
|
|
61
|
+
if (positionalArgs.length > 0) {
|
|
62
|
+
const hasExplicitPrompt = namedArgs.some((arg) => arg.startsWith('--explicit-prompt='));
|
|
63
|
+
const hasTaskFile = namedArgs.some((arg) => arg.startsWith('--task-file='));
|
|
64
|
+
if (hasExplicitPrompt || hasTaskFile) {
|
|
65
|
+
throw new Error('Error: Cannot use positional argument with --explicit-prompt or --task-file. Choose either positional or named parameter style.');
|
|
59
66
|
}
|
|
67
|
+
}
|
|
68
|
+
// Validate named parameters
|
|
69
|
+
namedArgs.forEach((param) => {
|
|
60
70
|
if (!allowedParameters.some((p) => (p.endsWith('=') && param.startsWith(p)) || param === p)) {
|
|
61
|
-
|
|
62
|
-
process.exit(1);
|
|
71
|
+
throw new Error(`Error: Invalid parameter "${param}". Allowed parameters are:\n ${allowedParameters.join('\n ')}`);
|
|
63
72
|
}
|
|
64
73
|
});
|
|
65
74
|
// Validate --ai-service parameter
|
|
@@ -68,7 +77,7 @@ export function validateCliParams() {
|
|
|
68
77
|
const aiServiceValue = aiServiceParam.split('=')[1];
|
|
69
78
|
if (!['vertex-ai', 'openai', 'anthropic', 'ai-studio', 'vertex-ai-claude'].includes(aiServiceValue) &&
|
|
70
79
|
!aiServiceValue.startsWith('plugin:')) {
|
|
71
|
-
throw new Error(
|
|
80
|
+
throw new Error(`Invalid --ai-service value "${aiServiceValue}"`);
|
|
72
81
|
}
|
|
73
82
|
}
|
|
74
83
|
// Validate temperature parameter, it must be a number between 0.0 and 2.0
|
|
@@ -76,8 +85,7 @@ export function validateCliParams() {
|
|
|
76
85
|
if (temperatureParam) {
|
|
77
86
|
const temperatureValue = parseFloat(temperatureParam.split('=')[1]);
|
|
78
87
|
if (isNaN(temperatureValue) || temperatureValue < 0.0 || temperatureValue > 2.0) {
|
|
79
|
-
|
|
80
|
-
process.exit(1);
|
|
88
|
+
throw new Error('Invalid temperature value. It must be a number between 0.0 and 2.0.');
|
|
81
89
|
}
|
|
82
90
|
}
|
|
83
91
|
// Validate --imagen parameter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-cli-params.js","sourceRoot":"","sources":["../../src/cli/validate-cli-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,iCAAiC;AACjC,MAAM,iBAAiB,GAAa;IAClC,WAAW;IACX,eAAe;IACf,MAAM;IACN,YAAY;IACZ,wBAAwB;IACxB,wBAAwB;IACxB,6BAA6B;IAC7B,sBAAsB;IACtB,eAAe;IACf,oBAAoB;IACpB,cAAc;IACd,kBAAkB;IAClB,wBAAwB;IACxB,gCAAgC;IAChC,qBAAqB;IACrB,gBAAgB;IAChB,UAAU;IACV,WAAW;IACX,SAAS;IACT,wBAAwB;IACxB,QAAQ;IACR,iBAAiB;IACjB,iBAAiB;IACjB,mBAAmB;IACnB,cAAc;IACd,+BAA+B;IAC/B,mBAAmB;IACnB,2BAA2B;IAC3B,iBAAiB;IACjB,gCAAgC;CACjC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,kBAAkB,GAAa,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3D,6BAA6B;IAC7B,MAAM,aAAa,GAAY,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"validate-cli-params.js","sourceRoot":"","sources":["../../src/cli/validate-cli-params.ts"],"names":[],"mappings":"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"}
|
package/dist/files/read-files.js
CHANGED
|
@@ -8,6 +8,7 @@ import { rcConfig, importantContext, rcConfigSchemaFilePath } from '../main/conf
|
|
|
8
8
|
import { verifySourceCodeLimit } from '../prompt/limits.js';
|
|
9
9
|
import { getSummary } from './summary-cache.js';
|
|
10
10
|
import { GENAICODERC_SCHEMA } from '../main/config-schema.js';
|
|
11
|
+
import { md5 } from './cache-file.js';
|
|
11
12
|
/**
|
|
12
13
|
* Read contents of source files and create a map with file path as key and file content as value
|
|
13
14
|
*/
|
|
@@ -24,6 +25,7 @@ function readSourceFiles({ contentMask, ignorePatterns }, filterPaths, forceAll
|
|
|
24
25
|
if (importantFiles.has(file)) {
|
|
25
26
|
const content = readFileContent(file);
|
|
26
27
|
sourceCode[file] = {
|
|
28
|
+
fileId: md5(file),
|
|
27
29
|
content,
|
|
28
30
|
dependencies: summary?.dependencies,
|
|
29
31
|
};
|
|
@@ -35,10 +37,11 @@ function readSourceFiles({ contentMask, ignorePatterns }, filterPaths, forceAll
|
|
|
35
37
|
if (!relativePath.startsWith(contentMask)) {
|
|
36
38
|
sourceCode[file] = summary
|
|
37
39
|
? {
|
|
40
|
+
fileId: md5(file),
|
|
38
41
|
summary: summary.summary,
|
|
39
42
|
...(summary.dependencies?.length ? { dependencies: summary.dependencies } : {}),
|
|
40
43
|
}
|
|
41
|
-
: { content: null };
|
|
44
|
+
: { fileId: md5(file), content: null };
|
|
42
45
|
continue;
|
|
43
46
|
}
|
|
44
47
|
}
|
|
@@ -46,14 +49,16 @@ function readSourceFiles({ contentMask, ignorePatterns }, filterPaths, forceAll
|
|
|
46
49
|
sourceCode[file] =
|
|
47
50
|
!ignorePatterns?.some((pattern) => globRegex(pattern).test(file)) && summary
|
|
48
51
|
? {
|
|
52
|
+
fileId: md5(file),
|
|
49
53
|
summary: summary.summary,
|
|
50
54
|
...(summary.dependencies?.length ? { dependencies: summary.dependencies } : {}),
|
|
51
55
|
}
|
|
52
|
-
: { content: null };
|
|
56
|
+
: { fileId: md5(file), content: null };
|
|
53
57
|
}
|
|
54
58
|
else {
|
|
55
59
|
const content = readFileContent(file);
|
|
56
60
|
sourceCode[file] = {
|
|
61
|
+
fileId: md5(file),
|
|
57
62
|
content,
|
|
58
63
|
dependencies: summary?.dependencies,
|
|
59
64
|
};
|
|
@@ -74,6 +79,7 @@ export function getSourceCode({ filterPaths, taskFile, forceAll, ignoreImportant
|
|
|
74
79
|
const sourceCode = readSourceFiles(options, filterPaths, forceAll, ignoreImportantFiles);
|
|
75
80
|
if (taskFile && !sourceCode[taskFile]) {
|
|
76
81
|
sourceCode[taskFile] = {
|
|
82
|
+
fileId: md5(taskFile),
|
|
77
83
|
content: readFileContent(taskFile),
|
|
78
84
|
};
|
|
79
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-files.js","sourceRoot":"","sources":["../../src/files/read-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,MAAM,MAAM,YAAY,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"read-files.js","sourceRoot":"","sources":["../../src/files/read-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,MAAM,MAAM,YAAY,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAWtC;;GAEG;AACH,SAAS,eAAe,CACtB,EAAE,WAAW,EAAE,cAAc,EAAkB,EAC/C,WAAsB,EACtB,QAAQ,GAAG,KAAK,EAChB,oBAAoB,GAAG,KAAK;IAE5B,MAAM,UAAU,GAAkB,EAAE,CAAC;IACrC,MAAM,cAAc,GAAG,oBAAoB,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAEhG,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;YAC5D,SAAS;QACX,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3E,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAEjC,iCAAiC;YACjC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtC,UAAU,CAAC,IAAI,CAAC,GAAG;oBACjB,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC;oBACjB,OAAO;oBACP,YAAY,EAAE,OAAO,EAAE,YAAY;iBACpC,CAAC;gBACF,SAAS;YACX,CAAC;YAED,wCAAwC;YACxC,IAAI,CAAC,WAAW,IAAI,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC3D,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC1C,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO;wBACxB,CAAC,CAAC;4BACE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC;4BACjB,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAChF;wBACH,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBAEzC,SAAS;gBACX,CAAC;YACH,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,UAAU,CAAC,IAAI,CAAC;oBACd,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,OAAO;wBAC1E,CAAC,CAAC;4BACE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC;4BACjB,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAChF;wBACH,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtC,UAAU,CAAC,IAAI,CAAC,GAAG;oBACjB,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC;oBACjB,OAAO;oBACP,YAAY,EAAE,OAAO,EAAE,YAAY;iBACpC,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,oBAAoB;AACpB,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,aAAa,CAC3B,EACE,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,oBAAoB,GAMrB,EACD,OAAuB;IAEvB,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAEzF,IAAI,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,UAAU,CAAC,QAAQ,CAAC,GAAG;YACrB,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;YACrB,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IAClD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,cAAc;IAC5B,MAAM,WAAW,GAAmB,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,WAAW,CAAC,IAAI,CAAC,GAAG;YAClB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAC3B,KAAK,EAAE,UAAU,CAAC,KAAM;YACxB,MAAM,EAAE,UAAU,CAAC,MAAO;SAC3B,CAAC;IACJ,CAAC;IACD,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACnD,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -4,16 +4,13 @@ import { FileContent } from './source-code-types.js';
|
|
|
4
4
|
/**
|
|
5
5
|
* Directory structure representing source code files with their content or summaries and dependencies
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
type SourceCodeTree = {
|
|
8
8
|
[directoryPath: string]: {
|
|
9
9
|
[filePath: string]: FileContent | FileSummary;
|
|
10
10
|
};
|
|
11
11
|
};
|
|
12
|
-
/**
|
|
13
|
-
* Converts flat SourceCodeMap into a directory tree structure
|
|
14
|
-
*/
|
|
15
|
-
export declare function getSourceCodeTree(sourceCode: SourceCodeMap): SourceCodeTree;
|
|
16
12
|
/**
|
|
17
13
|
* Converts directory tree structure back into flat SourceCodeMap
|
|
18
14
|
*/
|
|
19
15
|
export declare function parseSourceCodeTree(sourceCodeTree: SourceCodeTree): SourceCodeMap;
|
|
16
|
+
export {};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { rcConfig } from '../main/config.js';
|
|
1
|
+
import { md5 } from './cache-file.js';
|
|
3
2
|
/**
|
|
4
3
|
* Type guard to check if an object is a FileContent with dependencies
|
|
5
4
|
*/
|
|
@@ -12,36 +11,6 @@ function hasContent(obj) {
|
|
|
12
11
|
function hasSummary(obj) {
|
|
13
12
|
return 'summary' in obj;
|
|
14
13
|
}
|
|
15
|
-
/**
|
|
16
|
-
* Converts flat SourceCodeMap into a directory tree structure
|
|
17
|
-
*/
|
|
18
|
-
export function getSourceCodeTree(sourceCode) {
|
|
19
|
-
const result = {};
|
|
20
|
-
for (const [filePath, fileData] of Object.entries(sourceCode)) {
|
|
21
|
-
if (!filePath.startsWith(rcConfig.rootDir)) {
|
|
22
|
-
continue;
|
|
23
|
-
}
|
|
24
|
-
const dirPath = path.dirname(filePath);
|
|
25
|
-
const fileName = path.basename(filePath);
|
|
26
|
-
if (!result[dirPath]) {
|
|
27
|
-
result[dirPath] = {};
|
|
28
|
-
}
|
|
29
|
-
// Handle both content and summary cases while preserving dependencies
|
|
30
|
-
if (hasContent(fileData)) {
|
|
31
|
-
result[dirPath][fileName] = {
|
|
32
|
-
content: fileData.content,
|
|
33
|
-
...(fileData.dependencies && { dependencies: fileData.dependencies }),
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
else if (hasSummary(fileData)) {
|
|
37
|
-
result[dirPath][fileName] = {
|
|
38
|
-
summary: fileData.summary,
|
|
39
|
-
...(fileData.dependencies && { dependencies: fileData.dependencies }),
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return result;
|
|
44
|
-
}
|
|
45
14
|
/**
|
|
46
15
|
* Converts directory tree structure back into flat SourceCodeMap
|
|
47
16
|
*/
|
|
@@ -53,12 +22,14 @@ export function parseSourceCodeTree(sourceCodeTree) {
|
|
|
53
22
|
// Handle both content and summary cases while preserving dependencies
|
|
54
23
|
if (hasContent(fileData)) {
|
|
55
24
|
result[fullPath] = {
|
|
25
|
+
fileId: md5(fullPath),
|
|
56
26
|
content: fileData.content,
|
|
57
27
|
...(fileData.dependencies && { dependencies: fileData.dependencies }),
|
|
58
28
|
};
|
|
59
29
|
}
|
|
60
30
|
else if (hasSummary(fileData)) {
|
|
61
31
|
result[fullPath] = {
|
|
32
|
+
fileId: md5(fullPath),
|
|
62
33
|
summary: fileData.summary,
|
|
63
34
|
...(fileData.dependencies && { dependencies: fileData.dependencies }),
|
|
64
35
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-code-tree.js","sourceRoot":"","sources":["../../src/files/source-code-tree.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"source-code-tree.js","sourceRoot":"","sources":["../../src/files/source-code-tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAKtC;;GAEG;AACH,SAAS,UAAU,CAAC,GAA8B;IAChD,OAAO,SAAS,IAAI,GAAG,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,GAA8B;IAChD,OAAO,SAAS,IAAI,GAAG,CAAC;AAC1B,CAAC;AAWD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,cAA8B;IAChE,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC9D,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,QAAQ,GAAG,GAAG,OAAO,IAAI,QAAQ,EAAE,CAAC;YAE1C,sEAAsE;YACtE,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,QAAQ,CAAC,GAAG;oBACjB,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;oBACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,GAAG,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;iBACtE,CAAC;YACJ,CAAC;iBAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;oBACjB,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;oBACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,GAAG,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;iBACtE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -6,7 +6,10 @@ export interface DependencyInfo {
|
|
|
6
6
|
path: string;
|
|
7
7
|
/** Type of dependency */
|
|
8
8
|
type: 'local' | 'external';
|
|
9
|
-
|
|
9
|
+
/** Unique identifier for the dependent file */
|
|
10
|
+
fileId?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
10
13
|
* Represents file content with optional dependencies
|
|
11
14
|
*/
|
|
12
15
|
export interface FileContent {
|
|
@@ -23,4 +26,6 @@ export interface FileSummary {
|
|
|
23
26
|
/** Optional list of dependencies */
|
|
24
27
|
dependencies?: DependencyInfo[];
|
|
25
28
|
}
|
|
26
|
-
export type SourceCodeMap = Record<string,
|
|
29
|
+
export type SourceCodeMap = Record<string, {
|
|
30
|
+
fileId: string;
|
|
31
|
+
} & (FileContent | FileSummary)>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SourceCodeMap } from './source-code-types.js';
|
|
2
|
+
import { CodegenOptions } from '../main/codegen-types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Returns a SourceCodeMap containing the content of context files, their first-level dependencies,
|
|
5
|
+
* and files that depend on the context files.
|
|
6
|
+
*
|
|
7
|
+
* @param contextPaths An array of file paths to consider as context.
|
|
8
|
+
* @param options Codegen options to be passed to getSourceCode.
|
|
9
|
+
* @returns A SourceCodeMap containing:
|
|
10
|
+
* 1. All files from contextPaths
|
|
11
|
+
* 2. Their first-level dependencies
|
|
12
|
+
* 3. Files that depend on the context files
|
|
13
|
+
*/
|
|
14
|
+
export declare function getContextSourceCode(contextPaths: string[], options: CodegenOptions): SourceCodeMap;
|
|
15
|
+
/**
|
|
16
|
+
* Returns an array of file paths that are expanded from the given context paths.
|
|
17
|
+
*
|
|
18
|
+
* @param contextPaths
|
|
19
|
+
* @param options
|
|
20
|
+
* @returns
|
|
21
|
+
*/
|
|
22
|
+
export declare function getExpandedContextPaths(contextPaths: string[], options: CodegenOptions): string[];
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { getSourceCode } from './read-files.js';
|
|
2
|
+
/**
|
|
3
|
+
* Returns a SourceCodeMap containing the content of context files, their first-level dependencies,
|
|
4
|
+
* and files that depend on the context files.
|
|
5
|
+
*
|
|
6
|
+
* @param contextPaths An array of file paths to consider as context.
|
|
7
|
+
* @param options Codegen options to be passed to getSourceCode.
|
|
8
|
+
* @returns A SourceCodeMap containing:
|
|
9
|
+
* 1. All files from contextPaths
|
|
10
|
+
* 2. Their first-level dependencies
|
|
11
|
+
* 3. Files that depend on the context files
|
|
12
|
+
*/
|
|
13
|
+
export function getContextSourceCode(contextPaths, options) {
|
|
14
|
+
if (!contextPaths || contextPaths.length === 0) {
|
|
15
|
+
return {};
|
|
16
|
+
}
|
|
17
|
+
const allSourceCodeMap = getSourceCode({ forceAll: true, ignoreImportantFiles: true }, options);
|
|
18
|
+
const resultSourceCodeMap = {};
|
|
19
|
+
const dependencyPaths = new Set();
|
|
20
|
+
const reverseDependencyPaths = new Set();
|
|
21
|
+
// Add context paths and their first-level dependencies
|
|
22
|
+
for (const contextPath of contextPaths) {
|
|
23
|
+
if (allSourceCodeMap[contextPath]) {
|
|
24
|
+
resultSourceCodeMap[contextPath] = allSourceCodeMap[contextPath];
|
|
25
|
+
const dependencies = allSourceCodeMap[contextPath]?.dependencies;
|
|
26
|
+
if (dependencies) {
|
|
27
|
+
dependencies.forEach((dep) => dependencyPaths.add(dep.path));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
// Add dependency files to the result
|
|
32
|
+
for (const dependencyPath of dependencyPaths) {
|
|
33
|
+
if (allSourceCodeMap[dependencyPath]) {
|
|
34
|
+
resultSourceCodeMap[dependencyPath] = allSourceCodeMap[dependencyPath];
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Find reverse dependencies
|
|
38
|
+
for (const filePath of Object.keys(allSourceCodeMap)) {
|
|
39
|
+
const fileContent = allSourceCodeMap[filePath];
|
|
40
|
+
const dependencies = fileContent?.dependencies;
|
|
41
|
+
if (dependencies) {
|
|
42
|
+
for (const dep of dependencies) {
|
|
43
|
+
if (contextPaths.includes(dep.path)) {
|
|
44
|
+
reverseDependencyPaths.add(filePath);
|
|
45
|
+
break; // Add the file only once if it depends on any context path
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// Add reverse dependency files to the result
|
|
51
|
+
for (const reverseDependencyPath of reverseDependencyPaths) {
|
|
52
|
+
if (allSourceCodeMap[reverseDependencyPath]) {
|
|
53
|
+
resultSourceCodeMap[reverseDependencyPath] = allSourceCodeMap[reverseDependencyPath];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return resultSourceCodeMap;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Returns an array of file paths that are expanded from the given context paths.
|
|
60
|
+
*
|
|
61
|
+
* @param contextPaths
|
|
62
|
+
* @param options
|
|
63
|
+
* @returns
|
|
64
|
+
*/
|
|
65
|
+
export function getExpandedContextPaths(contextPaths, options) {
|
|
66
|
+
const sourceCodeMap = getContextSourceCode(contextPaths, options);
|
|
67
|
+
return Object.keys(sourceCodeMap);
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=source-code-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-code-utils.js","sourceRoot":"","sources":["../../src/files/source-code-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAAsB,EAAE,OAAuB;IAClF,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,gBAAgB,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;IAChG,MAAM,mBAAmB,GAAkB,EAAE,CAAC;IAC9C,MAAM,eAAe,GAAgB,IAAI,GAAG,EAAE,CAAC;IAC/C,MAAM,sBAAsB,GAAgB,IAAI,GAAG,EAAE,CAAC;IAEtD,uDAAuD;IACvD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,mBAAmB,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;YACjE,MAAM,YAAY,GAAI,gBAAgB,CAAC,WAAW,CAA+B,EAAE,YAAY,CAAC;YAChG,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,gBAAgB,CAAC,cAAc,CAAC,EAAE,CAAC;YACrC,mBAAmB,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrD,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAA8B,CAAC;QAC5E,MAAM,YAAY,GAAG,WAAW,EAAE,YAAY,CAAC;QAC/C,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAC/B,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACpC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACrC,MAAM,CAAC,2DAA2D;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,KAAK,MAAM,qBAAqB,IAAI,sBAAsB,EAAE,CAAC;QAC3D,IAAI,gBAAgB,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC5C,mBAAmB,CAAC,qBAAqB,CAAC,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,YAAsB,EAAE,OAAuB;IACrF,MAAM,aAAa,GAAG,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAClE,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { readCache } from './cache-file.js';
|
|
2
|
-
export const CACHE_VERSION = '
|
|
2
|
+
export const CACHE_VERSION = 'v7'; // Incremented version for dependency support
|
|
3
3
|
export const summaryCache = readCache('summaries', {
|
|
4
4
|
_version: CACHE_VERSION,
|
|
5
5
|
});
|
|
@@ -18,7 +18,7 @@ export type ConfirmHandlerProps = {
|
|
|
18
18
|
};
|
|
19
19
|
type ConfirmHandler = (props: ConfirmHandlerProps) => Promise<ConfirmHandlerResponse>;
|
|
20
20
|
export declare function askUserForInput(prompt: string, message: string, options: CodegenOptions): Promise<InputHandlerResponse>;
|
|
21
|
-
export declare function askUserForConfirmation(prompt: string, defaultValue: boolean, options: CodegenOptions): Promise<ConfirmHandlerResponse>;
|
|
21
|
+
export declare function askUserForConfirmation(prompt: string, defaultValue: boolean, options: CodegenOptions, confirmLabel?: string, declineLabel?: string): Promise<ConfirmHandlerResponse>;
|
|
22
22
|
export declare function askUserForConfirmationWithAnswer(prompt: string, confirmLabel: string, declineLabel: string, defaultValue: boolean, options: CodegenOptions): Promise<ConfirmHandlerResponse>;
|
|
23
23
|
export declare function registerInputHandler(handler: InputHandler): void;
|
|
24
24
|
export declare function registerConfirmHandler(handler: ConfirmHandler): void;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export async function askUserForInput(prompt, message, options) {
|
|
2
2
|
return handleOptionsUpdate(await inputHandler(prompt, message), options);
|
|
3
3
|
}
|
|
4
|
-
export async function askUserForConfirmation(prompt, defaultValue, options) {
|
|
4
|
+
export async function askUserForConfirmation(prompt, defaultValue, options, confirmLabel = 'Yes', declineLabel = 'No') {
|
|
5
5
|
return handleOptionsUpdate(await confirmHandler({
|
|
6
6
|
prompt,
|
|
7
|
-
confirmLabel
|
|
8
|
-
declineLabel
|
|
7
|
+
confirmLabel,
|
|
8
|
+
declineLabel,
|
|
9
9
|
includeAnswer: false,
|
|
10
10
|
defaultValue,
|
|
11
11
|
}), options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-actions.js","sourceRoot":"","sources":["../../../src/main/common/user-actions.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,OAAe,EACf,OAAuB;IAEvB,OAAO,mBAAmB,CAAC,MAAM,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAc,EACd,YAAqB,EACrB,OAAuB;
|
|
1
|
+
{"version":3,"file":"user-actions.js","sourceRoot":"","sources":["../../../src/main/common/user-actions.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,OAAe,EACf,OAAuB;IAEvB,OAAO,mBAAmB,CAAC,MAAM,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAc,EACd,YAAqB,EACrB,OAAuB,EACvB,YAAY,GAAG,KAAK,EACpB,YAAY,GAAG,IAAI;IAEnB,OAAO,mBAAmB,CACxB,MAAM,cAAc,CAAC;QACnB,MAAM;QACN,YAAY;QACZ,YAAY;QACZ,aAAa,EAAE,KAAK;QACpB,YAAY;KACb,CAAC,EACF,OAAO,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAc,EACd,YAAoB,EACpB,YAAoB,EACpB,YAAqB,EACrB,OAAuB;IAEvB,OAAO,mBAAmB,CACxB,MAAM,cAAc,CAAC;QACnB,MAAM;QACN,YAAY;QACZ,YAAY;QACZ,aAAa,EAAE,IAAI;QACnB,YAAY;KACb,CAAC,EACF,OAAO,CACR,CAAC;AACJ,CAAC;AAED,IAAI,YAA0B,CAAC;AAC/B,IAAI,cAA8B,CAAC;AAEnC,MAAM,UAAU,oBAAoB,CAAC,OAAqB;IACxD,YAAY,GAAG,OAAO,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAuB;IAC5D,cAAc,GAAG,OAAO,CAAC;AAC3B,CAAC;AAED,SAAS,mBAAmB,CAAyC,QAAW,EAAE,OAAuB;IACvG,IAAI,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;QAChC,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;IACjD,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;IACzC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
import { ModelType } from '../../../../ai-service/common-types.js';
|
|
2
1
|
import { registerEndpoint } from '../api-handlers.js';
|
|
3
2
|
registerEndpoint((router, service) => {
|
|
4
3
|
router.post('/generate-content', async (req, res) => {
|
|
5
4
|
try {
|
|
6
|
-
const { prompt, temperature,
|
|
5
|
+
const { prompt, temperature, modelType, options } = req.body;
|
|
7
6
|
if (!prompt || typeof prompt !== 'string') {
|
|
8
7
|
return res.status(400).json({ error: 'Invalid prompt: must be a string' });
|
|
9
8
|
}
|
|
10
9
|
if (typeof temperature !== 'number' || temperature < 0 || temperature > 2) {
|
|
11
10
|
return res.status(400).json({ error: 'Invalid temperature: must be a number between 0 and 2' });
|
|
12
11
|
}
|
|
13
|
-
if (
|
|
14
|
-
return res
|
|
12
|
+
if (!['default', 'cheap', 'reasoning'].includes(modelType)) {
|
|
13
|
+
return res
|
|
14
|
+
.status(400)
|
|
15
|
+
.json({ error: 'Invalid modelType parameter: must be one of: default, cheap, reasoning' });
|
|
15
16
|
}
|
|
16
|
-
const result = await service.generateContent(prompt, temperature,
|
|
17
|
+
const result = await service.generateContent(prompt, temperature, modelType, options);
|
|
17
18
|
res.json({ result });
|
|
18
19
|
}
|
|
19
20
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-content-endpoint.js","sourceRoot":"","sources":["../../../../../src/main/ui/backend/endpoints/generate-content-endpoint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generate-content-endpoint.js","sourceRoot":"","sources":["../../../../../src/main/ui/backend/endpoints/generate-content-endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,gBAAgB,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IACnC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAClD,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,IAKvD,CAAC;YAEF,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC1C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC,CAAC;YAC7E,CAAC;YAED,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC1E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAC,CAAC;YAClG,CAAC;YAED,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3D,OAAO,GAAG;qBACP,MAAM,CAAC,GAAG,CAAC;qBACX,IAAI,CAAC,EAAE,KAAK,EAAE,wEAAwE,EAAE,CAAC,CAAC;YAC/F,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,SAAsB,EAAE,OAAO,CAAC,CAAC;YACnG,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YAClD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+CAA+C,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAClG,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -5,6 +5,7 @@ import { abortController } from '../../common/abort-controller.js';
|
|
|
5
5
|
import { getUsageMetrics } from '../../common/cost-collector.js';
|
|
6
6
|
import { editMessage, putSystemMessage } from '../../common/content-bus.js';
|
|
7
7
|
import { getGenerateContentFunctions } from '../../codegen.js';
|
|
8
|
+
import { ModelType } from '../../../ai-service/common-types.js';
|
|
8
9
|
import { getSanitizedServiceConfigurations, updateServiceConfig } from '../../../ai-service/service-configurations.js';
|
|
9
10
|
export class Service {
|
|
10
11
|
executionStatus = 'idle';
|
|
@@ -125,18 +126,19 @@ export class Service {
|
|
|
125
126
|
const generateContenFn = generateContentFns[options.aiService];
|
|
126
127
|
// Use the AI service fallback mechanism for better reliability
|
|
127
128
|
const result = await generateContenFn([
|
|
128
|
-
{ type: 'systemPrompt', systemPrompt: '' },
|
|
129
129
|
{
|
|
130
130
|
type: 'user',
|
|
131
131
|
text: prompt,
|
|
132
132
|
},
|
|
133
|
-
],
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
133
|
+
], modelType === ModelType.REASONING
|
|
134
|
+
? []
|
|
135
|
+
: [
|
|
136
|
+
{
|
|
137
|
+
name: 'printMessage',
|
|
138
|
+
description: 'Print a message',
|
|
139
|
+
parameters: { type: 'object', properties: { message: { type: 'string' } }, required: ['message'] },
|
|
140
|
+
},
|
|
141
|
+
], modelType === ModelType.REASONING ? 'reasoningInferenceResponse' : 'printMessage', temperature, modelType, options);
|
|
140
142
|
return result;
|
|
141
143
|
}
|
|
142
144
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/main/ui/backend/service.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAK3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAgB,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/main/ui/backend/service.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAK3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAgB,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAE,iCAAiC,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AASvH,MAAM,OAAO,OAAO;IACV,eAAe,GAAoD,MAAM,CAAC;IAC1E,eAAe,GAAoB,IAAI,CAAC;IACxC,uBAAuB,GAM1B,EAAE,CAAC;IACA,cAAc,CAAiB;IAC/B,OAAO,GAAmB,EAAE,CAAC;IAC7B,mBAAmB,GAAwB,IAAI,CAAC;IAChD,aAAa,CAAS;IAE9B,mDAAmD;IAC3C,cAAc,GAAyB,IAAI,GAAG,EAAE,CAAC;IAEzD,YAAY,cAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,UAAkB;QACrD,yBAAyB;QACzB,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,wCAAwC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC;QAChF,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,oDAAoD;QACpD,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QAED,oDAAoD;QACpD,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACxD,IAAI,WAAW,CAAC,OAAO,CAAC,WAAW,KAAK,kBAAkB,IAAI,IAAI,CAAC,eAAe,KAAK,MAAM,EAAE,CAAC;YAC9F,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACjF,CAAC;QAED,4CAA4C;QAC5C,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,wBAAwB;QAC7B,OAAO,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,0BAA0B,CAAC,MAA2B;QAC3D,mBAAmB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IAEO,aAAa;QACnB,OAAO,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEM,aAAa,CAAC,KAAa;QAChC,OAAO,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC;IACtC,CAAC;IAEM,YAAY;QACjB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,OAAuB,EAAE,MAAoB;QAChF,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC;QAE7D,IAAI,CAAC;YACH,MAAM,kBAAkB,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACjD,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC1C,SAAS,EAAE,KAAK,CAAC,QAAQ;gBACzB,YAAY,EAAE,KAAK,CAAC,YAAY;aACjC,CAAC,CAAC,CAAC;YAEJ,MAAM,gBAAgB,CACpB;gBACE,GAAG,IAAI,CAAC,cAAc;gBACtB,cAAc,EAAE,MAAM;gBACtB,MAAM,EAAE,kBAAkB;gBAC1B,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,CAAC,kBAAkB,EAAE,MAAM;aACnE,EACD,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAC1B,CAAC;YACF,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;YAC9B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;YAC9B,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC;gBAC1E,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;oBACzD,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,OAAO,EAAE,+FAA+F;qBACzG,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5E,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;QAClE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,MAAc,EACd,WAAmB,EACnB,SAAoB,EACpB,OAAuB;QAEvB,IAAI,CAAC;YACH,uCAAuC;YACvC,MAAM,kBAAkB,GAAG,2BAA2B,EAAE,CAAC;YACzD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,cAAc,OAAO,CAAC,SAAS,mBAAmB,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAE/D,+DAA+D;YAC/D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC;gBACE;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM;iBACb;aACF,EACD,SAAS,KAAK,SAAS,CAAC,SAAS;gBAC/B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE;wBACE,IAAI,EAAE,cAAc;wBACpB,WAAW,EAAE,iBAAiB;wBAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE;qBACnG;iBACF,EACL,SAAS,KAAK,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,cAAc,EACjF,WAAW,EACX,SAAS,EACT,OAAO,CACR,CAAC;YAEF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YAClD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,IAAI,IAAI,CAAC,eAAe,KAAK,WAAW,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC9E,eAAe,EAAE,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,GAAG,aAAa,CAAC;YACrC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,IAAI,CAAC,eAAe,KAAK,WAAW,EAAE,CAAC;YACzC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;YAChC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;YACnC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;YACtC,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC3B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CACf,QAAgB,EAChB,YAA+B;QAE/B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG;YACrB,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,QAAQ;YACd,YAAY;SACb,CAAC;QAEF,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAEnC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,IAAI;YAC7F,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,SAAS;SACrB,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,UAAkB,EAClB,MAAc,EACd,SAA8B,EAC9B,OAAwB;QAExB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;YACnE,oCAAoC;YACpC,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC;YAC/D,CAAC;YAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC;gBAChC,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE;gBAC3B,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI;gBACnC,MAAM,EAAE,MAAM;gBACd,SAAS;gBACT,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY;aAChD,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,aAAa,CAAC,OAAqB;QACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,OAAO,MAAM,eAAe,EAAE,CAAC;IACjC,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,eAAe,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5G,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,WAAmB;QACvC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAChC,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW;YAC5C,mCAAmC;YACnC,WAAW,KAAK,kBAAkB,CACrC,CAAC;IACJ,CAAC;IAEO,qBAAqB;QAC3B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,aAAa,GAAG,GAAG,EAAE;gBACzB,IAAI,eAAe,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;oBAC9E,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAC;gBACzD,CAAC;qBAAM,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;oBACzC,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC,CAAC;YACF,aAAa,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAc,GAAW;QAC5C,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAkB,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAc,GAAW,EAAE,KAAQ;QACtD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,GAAW;QACjC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACF"}
|