aliasmate 1.3.2 → 1.5.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/CHANGELOG.md +23 -0
- package/README.md +96 -10
- package/dist/cli.js +9 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/changelog.d.ts +9 -0
- package/dist/commands/changelog.d.ts.map +1 -0
- package/dist/commands/changelog.js +72 -0
- package/dist/commands/changelog.js.map +1 -0
- package/dist/commands/edit.d.ts.map +1 -1
- package/dist/commands/edit.js +77 -3
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +4 -0
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/prev.d.ts +1 -1
- package/dist/commands/prev.d.ts.map +1 -1
- package/dist/commands/prev.js +66 -4
- package/dist/commands/prev.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +23 -2
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/save.d.ts.map +1 -1
- package/dist/commands/save.js +61 -2
- package/dist/commands/save.js.map +1 -1
- package/dist/storage/index.d.ts +40 -1
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +83 -1
- package/dist/storage/index.js.map +1 -1
- package/dist/utils/changelog.d.ts +41 -0
- package/dist/utils/changelog.d.ts.map +1 -0
- package/dist/utils/changelog.js +192 -0
- package/dist/utils/changelog.js.map +1 -0
- package/dist/utils/constants.d.ts +1 -1
- package/dist/utils/constants.js +1 -1
- package/dist/utils/env.d.ts +64 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/env.js +199 -0
- package/dist/utils/env.js.map +1 -0
- package/dist/utils/executor.d.ts +2 -1
- package/dist/utils/executor.d.ts.map +1 -1
- package/dist/utils/executor.js +3 -1
- package/dist/utils/executor.js.map +1 -1
- package/dist/utils/llm-generator.d.ts.map +1 -1
- package/dist/utils/llm-generator.js +123 -7
- package/dist/utils/llm-generator.js.map +1 -1
- package/dist/utils/onboarding.d.ts.map +1 -1
- package/dist/utils/onboarding.js +35 -7
- package/dist/utils/onboarding.js.map +1 -1
- package/dist/utils/prompts.d.ts +11 -1
- package/dist/utils/prompts.d.ts.map +1 -1
- package/dist/utils/prompts.js.map +1 -1
- package/dist/utils/version-checker.d.ts +29 -0
- package/dist/utils/version-checker.d.ts.map +1 -0
- package/dist/utils/version-checker.js +191 -0
- package/dist/utils/version-checker.js.map +1 -0
- package/package.json +6 -2
- package/whats-new.json +144 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Changelog utilities for displaying cumulative version changes
|
|
4
|
+
*/
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.getVersionsInRange = getVersionsInRange;
|
|
43
|
+
exports.getVersionChanges = getVersionChanges;
|
|
44
|
+
exports.getCumulativeChanges = getCumulativeChanges;
|
|
45
|
+
exports.displayVersionChanges = displayVersionChanges;
|
|
46
|
+
exports.displayCumulativeChanges = displayCumulativeChanges;
|
|
47
|
+
exports.getUpgradeSummary = getUpgradeSummary;
|
|
48
|
+
const fs = __importStar(require("fs"));
|
|
49
|
+
const path = __importStar(require("path"));
|
|
50
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
51
|
+
/**
|
|
52
|
+
* Compare semantic version strings
|
|
53
|
+
* @returns -1 if v1 < v2, 0 if equal, 1 if v1 > v2
|
|
54
|
+
*/
|
|
55
|
+
function compareVersions(v1, v2) {
|
|
56
|
+
const parts1 = v1.split('.').map(Number);
|
|
57
|
+
const parts2 = v2.split('.').map(Number);
|
|
58
|
+
for (let i = 0; i < 3; i++) {
|
|
59
|
+
if (parts1[i] > parts2[i])
|
|
60
|
+
return 1;
|
|
61
|
+
if (parts1[i] < parts2[i])
|
|
62
|
+
return -1;
|
|
63
|
+
}
|
|
64
|
+
return 0;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Load what's new data from file
|
|
68
|
+
*/
|
|
69
|
+
function loadWhatsNewData() {
|
|
70
|
+
const whatsNewPath = path.join(__dirname, '../../whats-new.json');
|
|
71
|
+
if (!fs.existsSync(whatsNewPath)) {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
const data = fs.readFileSync(whatsNewPath, 'utf8');
|
|
76
|
+
return JSON.parse(data);
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get all versions between fromVersion and toVersion (inclusive)
|
|
84
|
+
*/
|
|
85
|
+
function getVersionsInRange(fromVersion, toVersion) {
|
|
86
|
+
const data = loadWhatsNewData();
|
|
87
|
+
if (!data)
|
|
88
|
+
return [];
|
|
89
|
+
const allVersions = Object.keys(data).sort(compareVersions);
|
|
90
|
+
return allVersions.filter((version) => {
|
|
91
|
+
return compareVersions(version, fromVersion) >= 0 && compareVersions(version, toVersion) <= 0;
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Get changes for a specific version
|
|
96
|
+
*/
|
|
97
|
+
function getVersionChanges(version) {
|
|
98
|
+
const data = loadWhatsNewData();
|
|
99
|
+
if (!data)
|
|
100
|
+
return null;
|
|
101
|
+
return data[version] || null;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Get cumulative changes between two versions
|
|
105
|
+
*/
|
|
106
|
+
function getCumulativeChanges(fromVersion, toVersion) {
|
|
107
|
+
const versions = getVersionsInRange(fromVersion, toVersion);
|
|
108
|
+
const data = loadWhatsNewData();
|
|
109
|
+
if (!data)
|
|
110
|
+
return [];
|
|
111
|
+
return versions
|
|
112
|
+
.map((v) => data[v])
|
|
113
|
+
.filter((entry) => entry !== undefined);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Format a changelog section for display
|
|
117
|
+
*/
|
|
118
|
+
function formatSection(title, items, icon) {
|
|
119
|
+
let output = chalk_1.default.bold(`\n${icon} ${title}:\n`);
|
|
120
|
+
items.forEach((item) => {
|
|
121
|
+
output += chalk_1.default.gray(` • ${item}\n`);
|
|
122
|
+
});
|
|
123
|
+
return output;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Display changes for a single version
|
|
127
|
+
*/
|
|
128
|
+
function displayVersionChanges(entry) {
|
|
129
|
+
console.log();
|
|
130
|
+
console.log(chalk_1.default.bold.cyan(`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━`));
|
|
131
|
+
console.log(chalk_1.default.bold.green(`Version ${entry.version}`) + chalk_1.default.gray(` (${entry.date})`));
|
|
132
|
+
console.log(chalk_1.default.bold.cyan(`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━`));
|
|
133
|
+
if (entry.sections.added) {
|
|
134
|
+
console.log(formatSection('Added', entry.sections.added, '✨'));
|
|
135
|
+
}
|
|
136
|
+
if (entry.sections.changed) {
|
|
137
|
+
console.log(formatSection('Changed', entry.sections.changed, '🔄'));
|
|
138
|
+
}
|
|
139
|
+
if (entry.sections.fixed) {
|
|
140
|
+
console.log(formatSection('Fixed', entry.sections.fixed, '🐛'));
|
|
141
|
+
}
|
|
142
|
+
if (entry.sections.deprecated) {
|
|
143
|
+
console.log(formatSection('Deprecated', entry.sections.deprecated, '⚠️'));
|
|
144
|
+
}
|
|
145
|
+
if (entry.sections.removed) {
|
|
146
|
+
console.log(formatSection('Removed', entry.sections.removed, '🗑️'));
|
|
147
|
+
}
|
|
148
|
+
if (entry.sections.security) {
|
|
149
|
+
console.log(formatSection('Security', entry.sections.security, '🔒'));
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Display cumulative changes between versions
|
|
154
|
+
*/
|
|
155
|
+
function displayCumulativeChanges(fromVersion, toVersion) {
|
|
156
|
+
const changes = getCumulativeChanges(fromVersion, toVersion);
|
|
157
|
+
if (changes.length === 0) {
|
|
158
|
+
console.log(chalk_1.default.yellow('\nNo changelog data available for this version range.'));
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
console.log();
|
|
162
|
+
console.log(chalk_1.default.bold.magenta('╔═══════════════════════════════════════════════════════╗'));
|
|
163
|
+
console.log(chalk_1.default.bold.magenta('║ 📋 CUMULATIVE CHANGELOG ║'));
|
|
164
|
+
console.log(chalk_1.default.bold.magenta(`║ ${fromVersion} → ${toVersion} ║`));
|
|
165
|
+
console.log(chalk_1.default.bold.magenta('╚═══════════════════════════════════════════════════════╝'));
|
|
166
|
+
// Display in reverse chronological order (newest first)
|
|
167
|
+
changes.reverse().forEach((entry) => {
|
|
168
|
+
displayVersionChanges(entry);
|
|
169
|
+
});
|
|
170
|
+
console.log();
|
|
171
|
+
console.log(chalk_1.default.bold.cyan(`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━`));
|
|
172
|
+
console.log(chalk_1.default.bold.green(`✅ Total of ${changes.length} version(s) included`));
|
|
173
|
+
console.log(chalk_1.default.bold.cyan(`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━`));
|
|
174
|
+
console.log();
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Get a summary of changes suitable for upgrade notifications
|
|
178
|
+
*/
|
|
179
|
+
function getUpgradeSummary(fromVersion, toVersion) {
|
|
180
|
+
const changes = getCumulativeChanges(fromVersion, toVersion);
|
|
181
|
+
const highlights = [];
|
|
182
|
+
changes.forEach((entry) => {
|
|
183
|
+
// Collect the most important items (max 3 per version)
|
|
184
|
+
const important = [
|
|
185
|
+
...(entry.sections.added?.slice(0, 2) || []),
|
|
186
|
+
...(entry.sections.security?.slice(0, 1) || []),
|
|
187
|
+
];
|
|
188
|
+
highlights.push(...important);
|
|
189
|
+
});
|
|
190
|
+
return highlights.slice(0, 5); // Return top 5 highlights
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=changelog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"changelog.js","sourceRoot":"","sources":["../../src/utils/changelog.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Application constants
|
|
3
3
|
*/
|
|
4
4
|
export declare const APP_NAME = "aliasmate";
|
|
5
|
-
export declare const APP_VERSION = "1.
|
|
5
|
+
export declare const APP_VERSION = "1.5.0";
|
|
6
6
|
export declare const CONFIG_DIR_NAME = ".config/aliasmate";
|
|
7
7
|
export declare const CONFIG_FILE_NAME = "config.json";
|
|
8
8
|
/**
|
package/dist/utils/constants.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ERROR_MESSAGES = exports.SUCCESS_MESSAGES = exports.HELP_MESSAGES = exports.CONFIG_FILE_NAME = exports.CONFIG_DIR_NAME = exports.APP_VERSION = exports.APP_NAME = void 0;
|
|
7
7
|
exports.APP_NAME = 'aliasmate';
|
|
8
|
-
exports.APP_VERSION = '1.
|
|
8
|
+
exports.APP_VERSION = '1.5.0';
|
|
9
9
|
exports.CONFIG_DIR_NAME = '.config/aliasmate';
|
|
10
10
|
exports.CONFIG_FILE_NAME = 'config.json';
|
|
11
11
|
/**
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for handling environment variables
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Check if an environment variable name appears to be sensitive
|
|
6
|
+
* @param varName - The name of the environment variable
|
|
7
|
+
* @returns true if the variable name matches sensitive patterns
|
|
8
|
+
*/
|
|
9
|
+
export declare function isSensitiveEnvVar(varName: string): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Check if an environment variable is a system variable that should be excluded
|
|
12
|
+
* @param varName - The name of the environment variable
|
|
13
|
+
* @returns true if the variable is a system variable
|
|
14
|
+
*/
|
|
15
|
+
export declare function isSystemEnvVar(varName: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Filter environment variables to get only user-defined (non-system) variables
|
|
18
|
+
* @param env - The environment object to filter (defaults to process.env)
|
|
19
|
+
* @returns Filtered environment variables excluding system variables
|
|
20
|
+
*/
|
|
21
|
+
export declare function getUserEnvVars(env?: NodeJS.ProcessEnv): Record<string, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Categorize environment variables into sensitive and non-sensitive
|
|
24
|
+
* @param env - The environment object to categorize
|
|
25
|
+
* @returns Object containing sensitive and safe environment variables
|
|
26
|
+
*/
|
|
27
|
+
export declare function categorizeEnvVars(env: Record<string, string>): {
|
|
28
|
+
sensitive: Record<string, string>;
|
|
29
|
+
safe: Record<string, string>;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Merge saved environment variables with current environment
|
|
33
|
+
* Current environment takes precedence to allow runtime overrides
|
|
34
|
+
* @param savedEnv - Environment variables saved with the command
|
|
35
|
+
* @param currentEnv - Current environment (defaults to process.env)
|
|
36
|
+
* @returns Merged environment object
|
|
37
|
+
*/
|
|
38
|
+
export declare function mergeEnvVars(savedEnv: Record<string, string>, currentEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
39
|
+
/**
|
|
40
|
+
* Get a list of environment variable names that will be overridden
|
|
41
|
+
* @param savedEnv - Environment variables saved with the command
|
|
42
|
+
* @param currentEnv - Current environment (defaults to process.env)
|
|
43
|
+
* @returns Array of variable names that exist in both with different values
|
|
44
|
+
*/
|
|
45
|
+
export declare function getEnvOverrides(savedEnv: Record<string, string>, currentEnv?: NodeJS.ProcessEnv): Array<{
|
|
46
|
+
name: string;
|
|
47
|
+
savedValue: string;
|
|
48
|
+
currentValue: string;
|
|
49
|
+
}>;
|
|
50
|
+
/**
|
|
51
|
+
* Format environment variables for display
|
|
52
|
+
* Truncates long values for readability
|
|
53
|
+
* @param env - Environment variables to format
|
|
54
|
+
* @param maxLength - Maximum length for values (default: 50)
|
|
55
|
+
* @returns Array of formatted strings
|
|
56
|
+
*/
|
|
57
|
+
export declare function formatEnvVars(env: Record<string, string>, maxLength?: number): string[];
|
|
58
|
+
/**
|
|
59
|
+
* Mask sensitive values in environment variable display
|
|
60
|
+
* @param env - Environment variables to mask
|
|
61
|
+
* @returns Environment variables with masked sensitive values
|
|
62
|
+
*/
|
|
63
|
+
export declare function maskSensitiveEnvVars(env: Record<string, string>): Record<string, string>;
|
|
64
|
+
//# sourceMappingURL=env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA;;GAEG;AA0DH;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB3F;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IAC9D,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B,CAaA;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,UAAU,GAAE,MAAM,CAAC,UAAwB,GAC1C,MAAM,CAAC,UAAU,CAanB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,UAAU,GAAE,MAAM,CAAC,UAAwB,GAC1C,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAenE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAE,MAAW,GAAG,MAAM,EAAE,CAO3F;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBxF"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Utility functions for handling environment variables
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isSensitiveEnvVar = isSensitiveEnvVar;
|
|
7
|
+
exports.isSystemEnvVar = isSystemEnvVar;
|
|
8
|
+
exports.getUserEnvVars = getUserEnvVars;
|
|
9
|
+
exports.categorizeEnvVars = categorizeEnvVars;
|
|
10
|
+
exports.mergeEnvVars = mergeEnvVars;
|
|
11
|
+
exports.getEnvOverrides = getEnvOverrides;
|
|
12
|
+
exports.formatEnvVars = formatEnvVars;
|
|
13
|
+
exports.maskSensitiveEnvVars = maskSensitiveEnvVars;
|
|
14
|
+
/**
|
|
15
|
+
* System environment variables that should be excluded by default
|
|
16
|
+
* These are typically OS-level vars that shouldn't be captured
|
|
17
|
+
*/
|
|
18
|
+
const SYSTEM_ENV_VARS = new Set([
|
|
19
|
+
'PATH',
|
|
20
|
+
'HOME',
|
|
21
|
+
'USER',
|
|
22
|
+
'SHELL',
|
|
23
|
+
'TERM',
|
|
24
|
+
'TMPDIR',
|
|
25
|
+
'PWD',
|
|
26
|
+
'OLDPWD',
|
|
27
|
+
'SHLVL',
|
|
28
|
+
'LOGNAME',
|
|
29
|
+
'LANG',
|
|
30
|
+
'LC_ALL',
|
|
31
|
+
'LC_CTYPE',
|
|
32
|
+
'DISPLAY',
|
|
33
|
+
'EDITOR',
|
|
34
|
+
'VISUAL',
|
|
35
|
+
'PAGER',
|
|
36
|
+
'MANPATH',
|
|
37
|
+
'INFOPATH',
|
|
38
|
+
'XDG_CONFIG_HOME',
|
|
39
|
+
'XDG_DATA_HOME',
|
|
40
|
+
'XDG_CACHE_HOME',
|
|
41
|
+
'SSH_AUTH_SOCK',
|
|
42
|
+
'SSH_AGENT_PID',
|
|
43
|
+
'_',
|
|
44
|
+
'COLORTERM',
|
|
45
|
+
'TERM_PROGRAM',
|
|
46
|
+
'TERM_PROGRAM_VERSION',
|
|
47
|
+
'TERM_SESSION_ID',
|
|
48
|
+
]);
|
|
49
|
+
/**
|
|
50
|
+
* Patterns that indicate potentially sensitive environment variables
|
|
51
|
+
* These should trigger security warnings when captured
|
|
52
|
+
*/
|
|
53
|
+
const SENSITIVE_PATTERNS = [
|
|
54
|
+
/key/i,
|
|
55
|
+
/secret/i,
|
|
56
|
+
/token/i,
|
|
57
|
+
/password/i,
|
|
58
|
+
/pass/i,
|
|
59
|
+
/auth/i,
|
|
60
|
+
/credential/i,
|
|
61
|
+
/api[_-]?key/i,
|
|
62
|
+
/private/i,
|
|
63
|
+
/cert/i,
|
|
64
|
+
/jwt/i,
|
|
65
|
+
/bearer/i,
|
|
66
|
+
/oauth/i,
|
|
67
|
+
];
|
|
68
|
+
/**
|
|
69
|
+
* Check if an environment variable name appears to be sensitive
|
|
70
|
+
* @param varName - The name of the environment variable
|
|
71
|
+
* @returns true if the variable name matches sensitive patterns
|
|
72
|
+
*/
|
|
73
|
+
function isSensitiveEnvVar(varName) {
|
|
74
|
+
return SENSITIVE_PATTERNS.some((pattern) => pattern.test(varName));
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Check if an environment variable is a system variable that should be excluded
|
|
78
|
+
* @param varName - The name of the environment variable
|
|
79
|
+
* @returns true if the variable is a system variable
|
|
80
|
+
*/
|
|
81
|
+
function isSystemEnvVar(varName) {
|
|
82
|
+
return SYSTEM_ENV_VARS.has(varName);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Filter environment variables to get only user-defined (non-system) variables
|
|
86
|
+
* @param env - The environment object to filter (defaults to process.env)
|
|
87
|
+
* @returns Filtered environment variables excluding system variables
|
|
88
|
+
*/
|
|
89
|
+
function getUserEnvVars(env = process.env) {
|
|
90
|
+
const filtered = {};
|
|
91
|
+
for (const [key, value] of Object.entries(env)) {
|
|
92
|
+
// Skip undefined values, system vars, and vars starting with npm_ or NODE_
|
|
93
|
+
if (value !== undefined &&
|
|
94
|
+
!isSystemEnvVar(key) &&
|
|
95
|
+
!key.startsWith('npm_') &&
|
|
96
|
+
!key.startsWith('NODE_') &&
|
|
97
|
+
!key.startsWith('VSCODE_')) {
|
|
98
|
+
filtered[key] = value;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return filtered;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Categorize environment variables into sensitive and non-sensitive
|
|
105
|
+
* @param env - The environment object to categorize
|
|
106
|
+
* @returns Object containing sensitive and safe environment variables
|
|
107
|
+
*/
|
|
108
|
+
function categorizeEnvVars(env) {
|
|
109
|
+
const sensitive = {};
|
|
110
|
+
const safe = {};
|
|
111
|
+
for (const [key, value] of Object.entries(env)) {
|
|
112
|
+
if (isSensitiveEnvVar(key)) {
|
|
113
|
+
sensitive[key] = value;
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
safe[key] = value;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return { sensitive, safe };
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Merge saved environment variables with current environment
|
|
123
|
+
* Current environment takes precedence to allow runtime overrides
|
|
124
|
+
* @param savedEnv - Environment variables saved with the command
|
|
125
|
+
* @param currentEnv - Current environment (defaults to process.env)
|
|
126
|
+
* @returns Merged environment object
|
|
127
|
+
*/
|
|
128
|
+
function mergeEnvVars(savedEnv, currentEnv = process.env) {
|
|
129
|
+
// Start with current env (keeps all system vars)
|
|
130
|
+
const merged = { ...currentEnv };
|
|
131
|
+
// Add saved env vars (but current env takes precedence)
|
|
132
|
+
for (const [key, value] of Object.entries(savedEnv)) {
|
|
133
|
+
// Only add if not already in current env
|
|
134
|
+
if (!(key in currentEnv)) {
|
|
135
|
+
merged[key] = value;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return merged;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Get a list of environment variable names that will be overridden
|
|
142
|
+
* @param savedEnv - Environment variables saved with the command
|
|
143
|
+
* @param currentEnv - Current environment (defaults to process.env)
|
|
144
|
+
* @returns Array of variable names that exist in both with different values
|
|
145
|
+
*/
|
|
146
|
+
function getEnvOverrides(savedEnv, currentEnv = process.env) {
|
|
147
|
+
const overrides = [];
|
|
148
|
+
for (const [key, savedValue] of Object.entries(savedEnv)) {
|
|
149
|
+
const currentValue = currentEnv[key];
|
|
150
|
+
if (currentValue !== undefined && currentValue !== savedValue) {
|
|
151
|
+
overrides.push({
|
|
152
|
+
name: key,
|
|
153
|
+
savedValue,
|
|
154
|
+
currentValue,
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
return overrides;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Format environment variables for display
|
|
162
|
+
* Truncates long values for readability
|
|
163
|
+
* @param env - Environment variables to format
|
|
164
|
+
* @param maxLength - Maximum length for values (default: 50)
|
|
165
|
+
* @returns Array of formatted strings
|
|
166
|
+
*/
|
|
167
|
+
function formatEnvVars(env, maxLength = 50) {
|
|
168
|
+
return Object.entries(env)
|
|
169
|
+
.sort(([a], [b]) => a.localeCompare(b))
|
|
170
|
+
.map(([key, value]) => {
|
|
171
|
+
const truncated = value.length > maxLength ? `${value.substring(0, maxLength)}...` : value;
|
|
172
|
+
return `${key}=${truncated}`;
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Mask sensitive values in environment variable display
|
|
177
|
+
* @param env - Environment variables to mask
|
|
178
|
+
* @returns Environment variables with masked sensitive values
|
|
179
|
+
*/
|
|
180
|
+
function maskSensitiveEnvVars(env) {
|
|
181
|
+
const masked = {};
|
|
182
|
+
for (const [key, value] of Object.entries(env)) {
|
|
183
|
+
if (isSensitiveEnvVar(key)) {
|
|
184
|
+
// Show first 3 chars and last 2 chars, mask the rest
|
|
185
|
+
if (value.length > 8) {
|
|
186
|
+
masked[key] =
|
|
187
|
+
`${value.substring(0, 3)}${'*'.repeat(value.length - 5)}${value.substring(value.length - 2)}`;
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
masked[key] = '*'.repeat(value.length);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
masked[key] = value;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return masked;
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":";AAAA;;GAEG;;AA+DH,8CAEC;AAOD,wCAEC;AAOD,wCAiBC;AAOD,8CAgBC;AASD,oCAgBC;AAQD,0CAkBC;AASD,sCAOC;AAOD,oDAkBC;AAnND;;;GAGG;AACH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,OAAO;IACP,SAAS;IACT,MAAM;IACN,QAAQ;IACR,UAAU;IACV,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,SAAS;IACT,UAAU;IACV,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,GAAG;IACH,WAAW;IACX,cAAc;IACd,sBAAsB;IACtB,iBAAiB;CAClB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,kBAAkB,GAAG;IACzB,MAAM;IACN,SAAS;IACT,QAAQ;IACR,WAAW;IACX,OAAO;IACP,OAAO;IACP,aAAa;IACb,cAAc;IACd,UAAU;IACV,OAAO;IACP,MAAM;IACN,SAAS;IACT,QAAQ;CACT,CAAC;AAEF;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,OAAe;IAC/C,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,MAAyB,OAAO,CAAC,GAAG;IACjE,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAE5C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,2EAA2E;QAC3E,IACE,KAAK,KAAK,SAAS;YACnB,CAAC,cAAc,CAAC,GAAG,CAAC;YACpB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;YACvB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;YACxB,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAC1B,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,GAA2B;IAI3D,MAAM,SAAS,GAA2B,EAAE,CAAC;IAC7C,MAAM,IAAI,GAA2B,EAAE,CAAC;IAExC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,QAAgC,EAChC,aAAgC,OAAO,CAAC,GAAG;IAE3C,iDAAiD;IACjD,MAAM,MAAM,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;IAEjC,wDAAwD;IACxD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,yCAAyC;QACzC,IAAI,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAC7B,QAAgC,EAChC,aAAgC,OAAO,CAAC,GAAG;IAE3C,MAAM,SAAS,GAAsE,EAAE,CAAC;IAExF,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;YAC9D,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,GAAG;gBACT,UAAU;gBACV,YAAY;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,GAA2B,EAAE,YAAoB,EAAE;IAC/E,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;SACvB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3F,OAAO,GAAG,GAAG,IAAI,SAAS,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,GAA2B;IAC9D,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,qDAAqD;YACrD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,CAAC;oBACT,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YAClG,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/utils/executor.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export interface ExecutionResult {
|
|
|
17
17
|
*
|
|
18
18
|
* @param command - The shell command to execute
|
|
19
19
|
* @param cwd - The working directory to execute the command in
|
|
20
|
+
* @param env - Optional environment variables to use (defaults to process.env)
|
|
20
21
|
* @returns A promise that resolves with the execution result
|
|
21
22
|
* @throws {Error} If the directory doesn't exist
|
|
22
23
|
*
|
|
@@ -28,5 +29,5 @@ export interface ExecutionResult {
|
|
|
28
29
|
* }
|
|
29
30
|
* ```
|
|
30
31
|
*/
|
|
31
|
-
export declare function executeCommand(command: string, cwd: string): Promise<ExecutionResult>;
|
|
32
|
+
export declare function executeCommand(command: string, cwd: string, env?: NodeJS.ProcessEnv): Promise<ExecutionResult>;
|
|
32
33
|
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/utils/executor.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gDAAgD;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/utils/executor.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gDAAgD;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,eAAe,CAAC,CA6C1B"}
|
package/dist/utils/executor.js
CHANGED
|
@@ -46,6 +46,7 @@ const fs = __importStar(require("fs"));
|
|
|
46
46
|
*
|
|
47
47
|
* @param command - The shell command to execute
|
|
48
48
|
* @param cwd - The working directory to execute the command in
|
|
49
|
+
* @param env - Optional environment variables to use (defaults to process.env)
|
|
49
50
|
* @returns A promise that resolves with the execution result
|
|
50
51
|
* @throws {Error} If the directory doesn't exist
|
|
51
52
|
*
|
|
@@ -57,7 +58,7 @@ const fs = __importStar(require("fs"));
|
|
|
57
58
|
* }
|
|
58
59
|
* ```
|
|
59
60
|
*/
|
|
60
|
-
async function executeCommand(command, cwd) {
|
|
61
|
+
async function executeCommand(command, cwd, env = process.env) {
|
|
61
62
|
// Validate inputs
|
|
62
63
|
if (!command || !command.trim()) {
|
|
63
64
|
throw new Error('Command cannot be empty');
|
|
@@ -80,6 +81,7 @@ async function executeCommand(command, cwd) {
|
|
|
80
81
|
shell: true,
|
|
81
82
|
cwd: resolvedCwd,
|
|
82
83
|
stdio: 'inherit',
|
|
84
|
+
env,
|
|
83
85
|
});
|
|
84
86
|
return {
|
|
85
87
|
success: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/utils/executor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/utils/executor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,wCAiDC;AArFD,kDAA0B;AAC1B,2CAA6B;AAC7B,uCAAyB;AAgBzB;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,cAAc,CAClC,OAAe,EACf,GAAW,EACX,MAAyB,OAAO,CAAC,GAAG;IAEpC,kBAAkB;IAClB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,6BAA6B;IAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEtC,4BAA4B;IAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,6BAA6B,WAAW,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,qCAAqC;IACrC,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,4BAA4B,WAAW,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC;QACH,6CAA6C;QAC7C,uDAAuD;QACvD,MAAM,IAAA,eAAK,EAAC,OAAO,EAAE;YACnB,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,SAAS;YAChB,GAAG;SACJ,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,KAAyB,CAAC;QAC7C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,EAAE;YAC/B,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,OAAO;YAC/C,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAC9B,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-generator.d.ts","sourceRoot":"","sources":["../../src/utils/llm-generator.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"llm-generator.d.ts","sourceRoot":"","sources":["../../src/utils/llm-generator.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAgY3C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAOvD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB,CAOA"}
|