logicstamp-context 0.1.0 ā 0.2.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/LICENSE +21 -21
- package/LLM_CONTEXT.md +4 -3
- package/README.md +140 -21
- package/dist/cli/commands/compare.d.ts.map +1 -1
- package/dist/cli/commands/compare.js +17 -8
- package/dist/cli/commands/compare.js.map +1 -1
- package/dist/cli/commands/context/bundleFormatter.d.ts +20 -0
- package/dist/cli/commands/context/bundleFormatter.d.ts.map +1 -0
- package/dist/cli/commands/context/bundleFormatter.js +55 -0
- package/dist/cli/commands/context/bundleFormatter.js.map +1 -0
- package/dist/cli/commands/context/configManager.d.ts +23 -0
- package/dist/cli/commands/context/configManager.d.ts.map +1 -0
- package/dist/cli/commands/context/configManager.js +69 -0
- package/dist/cli/commands/context/configManager.js.map +1 -0
- package/dist/cli/commands/context/contractBuilder.d.ts +18 -0
- package/dist/cli/commands/context/contractBuilder.d.ts.map +1 -0
- package/dist/cli/commands/context/contractBuilder.js +72 -0
- package/dist/cli/commands/context/contractBuilder.js.map +1 -0
- package/dist/cli/commands/context/fileWriter.d.ts +38 -0
- package/dist/cli/commands/context/fileWriter.d.ts.map +1 -0
- package/dist/cli/commands/context/fileWriter.js +165 -0
- package/dist/cli/commands/context/fileWriter.js.map +1 -0
- package/dist/cli/commands/context/statsCalculator.d.ts +44 -0
- package/dist/cli/commands/context/statsCalculator.d.ts.map +1 -0
- package/dist/cli/commands/context/statsCalculator.js +150 -0
- package/dist/cli/commands/context/statsCalculator.js.map +1 -0
- package/dist/cli/commands/context/tokenEstimator.d.ts +76 -0
- package/dist/cli/commands/context/tokenEstimator.d.ts.map +1 -0
- package/dist/cli/commands/context/tokenEstimator.js +258 -0
- package/dist/cli/commands/context/tokenEstimator.js.map +1 -0
- package/dist/cli/commands/context.d.ts +2 -0
- package/dist/cli/commands/context.d.ts.map +1 -1
- package/dist/cli/commands/context.js +75 -405
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +113 -24
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/style.d.ts +11 -0
- package/dist/cli/commands/style.d.ts.map +1 -0
- package/dist/cli/commands/style.js +15 -0
- package/dist/cli/commands/style.js.map +1 -0
- package/dist/cli/handlers/cleanHandler.d.ts +5 -0
- package/dist/cli/handlers/cleanHandler.d.ts.map +1 -0
- package/dist/cli/handlers/cleanHandler.js +28 -0
- package/dist/cli/handlers/cleanHandler.js.map +1 -0
- package/dist/cli/handlers/compareHandler.d.ts +5 -0
- package/dist/cli/handlers/compareHandler.d.ts.map +1 -0
- package/dist/cli/handlers/compareHandler.js +332 -0
- package/dist/cli/handlers/compareHandler.js.map +1 -0
- package/dist/cli/handlers/contextHandler.d.ts +5 -0
- package/dist/cli/handlers/contextHandler.d.ts.map +1 -0
- package/dist/cli/handlers/contextHandler.js +24 -0
- package/dist/cli/handlers/contextHandler.js.map +1 -0
- package/dist/cli/handlers/initHandler.d.ts +6 -0
- package/dist/cli/handlers/initHandler.d.ts.map +1 -0
- package/dist/cli/handlers/initHandler.js +30 -0
- package/dist/cli/handlers/initHandler.js.map +1 -0
- package/dist/cli/handlers/styleHandler.d.ts +5 -0
- package/dist/cli/handlers/styleHandler.d.ts.map +1 -0
- package/dist/cli/handlers/styleHandler.js +30 -0
- package/dist/cli/handlers/styleHandler.js.map +1 -0
- package/dist/cli/handlers/validateHandler.d.ts +5 -0
- package/dist/cli/handlers/validateHandler.d.ts.map +1 -0
- package/dist/cli/handlers/validateHandler.js +23 -0
- package/dist/cli/handlers/validateHandler.js.map +1 -0
- package/dist/cli/index.js +5 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/parser/argumentParser.d.ts +44 -0
- package/dist/cli/parser/argumentParser.d.ts.map +1 -0
- package/dist/cli/parser/argumentParser.js +194 -0
- package/dist/cli/parser/argumentParser.js.map +1 -0
- package/dist/cli/parser/helpText.d.ts +11 -0
- package/dist/cli/parser/helpText.d.ts.map +1 -0
- package/dist/cli/parser/helpText.js +373 -0
- package/dist/cli/parser/helpText.js.map +1 -0
- package/dist/cli/stamp.js +14 -897
- package/dist/cli/stamp.js.map +1 -1
- package/dist/core/astParser/detectors.d.ts +24 -0
- package/dist/core/astParser/detectors.d.ts.map +1 -0
- package/dist/core/astParser/detectors.js +102 -0
- package/dist/core/astParser/detectors.js.map +1 -0
- package/dist/core/astParser/extractors/componentExtractor.d.ts +13 -0
- package/dist/core/astParser/extractors/componentExtractor.d.ts.map +1 -0
- package/dist/core/astParser/extractors/componentExtractor.js +41 -0
- package/dist/core/astParser/extractors/componentExtractor.js.map +1 -0
- package/dist/core/astParser/extractors/eventExtractor.d.ts +14 -0
- package/dist/core/astParser/extractors/eventExtractor.d.ts.map +1 -0
- package/dist/core/astParser/extractors/eventExtractor.js +49 -0
- package/dist/core/astParser/extractors/eventExtractor.js.map +1 -0
- package/dist/core/astParser/extractors/propExtractor.d.ts +14 -0
- package/dist/core/astParser/extractors/propExtractor.d.ts.map +1 -0
- package/dist/core/astParser/extractors/propExtractor.js +73 -0
- package/dist/core/astParser/extractors/propExtractor.js.map +1 -0
- package/dist/core/astParser/extractors/stateExtractor.d.ts +13 -0
- package/dist/core/astParser/extractors/stateExtractor.d.ts.map +1 -0
- package/dist/core/astParser/extractors/stateExtractor.js +66 -0
- package/dist/core/astParser/extractors/stateExtractor.js.map +1 -0
- package/dist/core/astParser.d.ts.map +1 -1
- package/dist/core/astParser.js +5 -307
- package/dist/core/astParser.js.map +1 -1
- package/dist/core/contractBuilder.d.ts +1 -0
- package/dist/core/contractBuilder.d.ts.map +1 -1
- package/dist/core/contractBuilder.js +1 -0
- package/dist/core/contractBuilder.js.map +1 -1
- package/dist/core/pack/builder.d.ts +35 -0
- package/dist/core/pack/builder.d.ts.map +1 -0
- package/dist/core/pack/builder.js +76 -0
- package/dist/core/pack/builder.js.map +1 -0
- package/dist/core/pack/collector.d.ts +20 -0
- package/dist/core/pack/collector.d.ts.map +1 -0
- package/dist/core/pack/collector.js +71 -0
- package/dist/core/pack/collector.js.map +1 -0
- package/dist/core/pack/loader.d.ts +23 -0
- package/dist/core/pack/loader.d.ts.map +1 -0
- package/dist/core/pack/loader.js +66 -0
- package/dist/core/pack/loader.js.map +1 -0
- package/dist/core/pack/resolver.d.ts +21 -0
- package/dist/core/pack/resolver.d.ts.map +1 -0
- package/dist/core/pack/resolver.js +79 -0
- package/dist/core/pack/resolver.js.map +1 -0
- package/dist/core/pack.d.ts +17 -27
- package/dist/core/pack.d.ts.map +1 -1
- package/dist/core/pack.js +18 -225
- package/dist/core/pack.js.map +1 -1
- package/dist/core/styleExtractor/index.d.ts +11 -0
- package/dist/core/styleExtractor/index.d.ts.map +1 -0
- package/dist/core/styleExtractor/index.js +11 -0
- package/dist/core/styleExtractor/index.js.map +1 -0
- package/dist/core/styleExtractor/layout.d.ts +14 -0
- package/dist/core/styleExtractor/layout.d.ts.map +1 -0
- package/dist/core/styleExtractor/layout.js +86 -0
- package/dist/core/styleExtractor/layout.js.map +1 -0
- package/dist/core/styleExtractor/motion.d.ts +20 -0
- package/dist/core/styleExtractor/motion.d.ts.map +1 -0
- package/dist/core/styleExtractor/motion.js +74 -0
- package/dist/core/styleExtractor/motion.js.map +1 -0
- package/dist/core/styleExtractor/scss.d.ts +30 -0
- package/dist/core/styleExtractor/scss.d.ts.map +1 -0
- package/dist/core/styleExtractor/scss.js +80 -0
- package/dist/core/styleExtractor/scss.js.map +1 -0
- package/dist/core/styleExtractor/styleExtractor.d.ts +11 -0
- package/dist/core/styleExtractor/styleExtractor.d.ts.map +1 -0
- package/dist/core/styleExtractor/styleExtractor.js +115 -0
- package/dist/core/styleExtractor/styleExtractor.js.map +1 -0
- package/dist/core/styleExtractor/styled.d.ts +13 -0
- package/dist/core/styleExtractor/styled.d.ts.map +1 -0
- package/dist/core/styleExtractor/styled.js +31 -0
- package/dist/core/styleExtractor/styled.js.map +1 -0
- package/dist/core/styleExtractor/tailwind.d.ts +16 -0
- package/dist/core/styleExtractor/tailwind.d.ts.map +1 -0
- package/dist/core/styleExtractor/tailwind.js +85 -0
- package/dist/core/styleExtractor/tailwind.js.map +1 -0
- package/dist/core/styleExtractor.d.ts +8 -0
- package/dist/core/styleExtractor.d.ts.map +1 -0
- package/dist/core/styleExtractor.js +8 -0
- package/dist/core/styleExtractor.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types/UIFContract.d.ts +71 -0
- package/dist/types/UIFContract.d.ts.map +1 -1
- package/dist/types/UIFContract.js.map +1 -1
- package/dist/utils/gitignore.d.ts +6 -5
- package/dist/utils/gitignore.d.ts.map +1 -1
- package/dist/utils/gitignore.js +11 -50
- package/dist/utils/gitignore.js.map +1 -1
- package/dist/utils/llmContext.d.ts +4 -6
- package/dist/utils/llmContext.d.ts.map +1 -1
- package/dist/utils/llmContext.js +8 -59
- package/dist/utils/llmContext.js.map +1 -1
- package/dist/utils/tokens.d.ts +18 -10
- package/dist/utils/tokens.d.ts.map +1 -1
- package/dist/utils/tokens.js +112 -10
- package/dist/utils/tokens.js.map +1 -1
- package/package.json +3 -1
- package/schema/logicstamp.context.schema.json +288 -0
|
@@ -1,58 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Context command - Generates context bundles from React/TypeScript codebases
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { globFiles, readFileWithText, getFolderPath, normalizeEntryId } from '../../utils/fsx.js';
|
|
7
|
-
import { buildContract } from '../../core/contractBuilder.js';
|
|
8
|
-
import { extractFromFile } from '../../core/astParser.js';
|
|
4
|
+
import { resolve, dirname } from 'node:path';
|
|
5
|
+
import { globFiles } from '../../utils/fsx.js';
|
|
9
6
|
import { buildDependencyGraph } from '../../core/manifest.js';
|
|
10
7
|
import { pack, } from '../../core/pack.js';
|
|
11
|
-
import { estimateGPT4Tokens, estimateClaudeTokens
|
|
8
|
+
import { estimateGPT4Tokens, estimateClaudeTokens } from '../../utils/tokens.js';
|
|
12
9
|
import { validateBundles } from './validate.js';
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return path.replace(/\\/g, '/');
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Detect if a folder is a root (application entry point) and assign a label
|
|
23
|
-
*/
|
|
24
|
-
function detectRootFolder(relativePath, components) {
|
|
25
|
-
// Project root is always a root
|
|
26
|
-
if (relativePath === '.') {
|
|
27
|
-
return { isRoot: true, rootLabel: 'Project Root' };
|
|
28
|
-
}
|
|
29
|
-
// Detect common application entry points
|
|
30
|
-
const pathLower = relativePath.toLowerCase();
|
|
31
|
-
// Next.js app router
|
|
32
|
-
if (pathLower.includes('/app') && components.some(c => c === 'page.tsx' || c === 'layout.tsx')) {
|
|
33
|
-
return { isRoot: true, rootLabel: 'Next.js App' };
|
|
34
|
-
}
|
|
35
|
-
// Examples folder
|
|
36
|
-
if (pathLower.startsWith('examples/') && pathLower.endsWith('/src')) {
|
|
37
|
-
const exampleName = relativePath.split('/')[1];
|
|
38
|
-
return { isRoot: true, rootLabel: `Example: ${exampleName}` };
|
|
39
|
-
}
|
|
40
|
-
// Test fixtures
|
|
41
|
-
if (pathLower.includes('tests/fixtures/') && pathLower.endsWith('/src')) {
|
|
42
|
-
return { isRoot: true, rootLabel: 'Test Fixture' };
|
|
43
|
-
}
|
|
44
|
-
// Root src folder
|
|
45
|
-
if (relativePath === 'src') {
|
|
46
|
-
return { isRoot: true, rootLabel: 'Main Source' };
|
|
47
|
-
}
|
|
48
|
-
// Apps folder (monorepo pattern)
|
|
49
|
-
if (pathLower.startsWith('apps/')) {
|
|
50
|
-
const appName = relativePath.split('/')[1];
|
|
51
|
-
return { isRoot: true, rootLabel: `App: ${appName}` };
|
|
52
|
-
}
|
|
53
|
-
// Default: not a root
|
|
54
|
-
return { isRoot: false };
|
|
55
|
-
}
|
|
10
|
+
import { buildContractsFromFiles } from './context/contractBuilder.js';
|
|
11
|
+
import { formatBundles } from './context/bundleFormatter.js';
|
|
12
|
+
import { calculateTokenEstimates, generateModeComparison, displayModeComparison } from './context/tokenEstimator.js';
|
|
13
|
+
import { calculateStats, generateStatsOutput, generateSummary } from './context/statsCalculator.js';
|
|
14
|
+
import { writeContextFiles, writeMainIndex, groupBundlesByFolder, displayPath } from './context/fileWriter.js';
|
|
15
|
+
import { ensureConfigExists, setupGitignore, setupLLMContext } from './context/configManager.js';
|
|
56
16
|
export async function contextCommand(options) {
|
|
57
17
|
const startTime = Date.now();
|
|
58
18
|
// Determine the target directory
|
|
@@ -75,33 +35,11 @@ export async function contextCommand(options) {
|
|
|
75
35
|
if (!options.quiet) {
|
|
76
36
|
console.log(`šØ Analyzing components...`);
|
|
77
37
|
}
|
|
78
|
-
const contracts =
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
// Extract AST from file
|
|
84
|
-
const ast = await extractFromFile(file);
|
|
85
|
-
// Build contract from AST
|
|
86
|
-
const { text } = await readFileWithText(file);
|
|
87
|
-
totalSourceSize += text.length; // Accumulate source size
|
|
88
|
-
const result = buildContract(file, ast, {
|
|
89
|
-
preset: 'none',
|
|
90
|
-
sourceText: text,
|
|
91
|
-
enablePredictions: options.predictBehavior,
|
|
92
|
-
});
|
|
93
|
-
if (result.contract) {
|
|
94
|
-
contracts.push(result.contract);
|
|
95
|
-
analyzed++;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
catch (error) {
|
|
99
|
-
// Skip files that can't be analyzed
|
|
100
|
-
if (!options.quiet) {
|
|
101
|
-
console.warn(` ā ļø Skipped ${file}: ${error.message}`);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
38
|
+
const { contracts, analyzed, totalSourceSize } = await buildContractsFromFiles(files, {
|
|
39
|
+
includeStyle: options.includeStyle,
|
|
40
|
+
predictBehavior: options.predictBehavior,
|
|
41
|
+
quiet: options.quiet,
|
|
42
|
+
});
|
|
105
43
|
if (!options.quiet) {
|
|
106
44
|
console.log(` Analyzed ${analyzed} components`);
|
|
107
45
|
}
|
|
@@ -163,13 +101,11 @@ export async function contextCommand(options) {
|
|
|
163
101
|
maxNodes: options.maxNodes,
|
|
164
102
|
contractsMap, // Pass in-memory contracts
|
|
165
103
|
};
|
|
166
|
-
let bundles;
|
|
167
|
-
let output;
|
|
168
104
|
// Generate context for all root components
|
|
169
105
|
if (!options.quiet) {
|
|
170
106
|
console.log(`š¦ Generating context for ${manifest.graph.roots.length} root components (depth=${depth})...`);
|
|
171
107
|
}
|
|
172
|
-
bundles = [];
|
|
108
|
+
const bundles = [];
|
|
173
109
|
for (const rootId of manifest.graph.roots) {
|
|
174
110
|
try {
|
|
175
111
|
const bundle = await pack(rootId, manifest, packOptions, projectRoot);
|
|
@@ -188,130 +124,36 @@ export async function contextCommand(options) {
|
|
|
188
124
|
// Sort bundles by entryId for deterministic output
|
|
189
125
|
bundles.sort((a, b) => a.entryId.localeCompare(b.entryId));
|
|
190
126
|
// Combine all bundles into output
|
|
191
|
-
|
|
192
|
-
output = bundles.map((b, idx) => {
|
|
193
|
-
const bundleWithSchema = {
|
|
194
|
-
$schema: 'https://logicstamp.dev/schemas/context/v0.1.json',
|
|
195
|
-
position: `${idx + 1}/${bundles.length}`,
|
|
196
|
-
...b,
|
|
197
|
-
};
|
|
198
|
-
return JSON.stringify(bundleWithSchema);
|
|
199
|
-
}).join('\n');
|
|
200
|
-
}
|
|
201
|
-
else if (options.format === 'json') {
|
|
202
|
-
const bundlesWithPosition = bundles.map((b, idx) => ({
|
|
203
|
-
$schema: 'https://logicstamp.dev/schemas/context/v0.1.json',
|
|
204
|
-
position: `${idx + 1}/${bundles.length}`,
|
|
205
|
-
...b,
|
|
206
|
-
}));
|
|
207
|
-
output = JSON.stringify(bundlesWithPosition, null, 2);
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
// pretty format
|
|
211
|
-
output = bundles.map((b, idx) => {
|
|
212
|
-
const bundleWithSchema = {
|
|
213
|
-
$schema: 'https://logicstamp.dev/schemas/context/v0.1.json',
|
|
214
|
-
position: `${idx + 1}/${bundles.length}`,
|
|
215
|
-
...b,
|
|
216
|
-
};
|
|
217
|
-
const header = `\n# Bundle ${idx + 1}/${bundles.length}: ${b.entryId}`;
|
|
218
|
-
return header + '\n' + JSON.stringify(bundleWithSchema, null, 2);
|
|
219
|
-
}).join('\n\n');
|
|
220
|
-
}
|
|
127
|
+
const output = formatBundles(bundles, options.format);
|
|
221
128
|
const elapsed = Date.now() - startTime;
|
|
222
129
|
// Calculate stats
|
|
223
|
-
const
|
|
224
|
-
const totalEdges = bundles.reduce((sum, b) => sum + b.graph.edges.length, 0);
|
|
225
|
-
const totalMissing = bundles.reduce((sum, b) => sum + b.meta.missing.length, 0);
|
|
130
|
+
const stats = calculateStats(bundles);
|
|
226
131
|
// Calculate token counts for actual output (current mode)
|
|
227
|
-
const currentGPT4 = estimateGPT4Tokens(output);
|
|
228
|
-
const currentClaude = estimateClaudeTokens(output);
|
|
229
|
-
//
|
|
230
|
-
|
|
231
|
-
const sourceTokensGPT4 = Math.ceil(totalSourceSize / 4);
|
|
232
|
-
const sourceTokensClaude = Math.ceil(totalSourceSize / 4.5);
|
|
233
|
-
// Estimate based on typical ratios observed in practice:
|
|
234
|
-
// - none mode: ~60% of header mode (contracts only, no code snippets)
|
|
235
|
-
// - header mode: baseline (contracts + JSDoc headers)
|
|
236
|
-
// - full mode: header mode + all source code
|
|
237
|
-
const modeEstimates = {
|
|
238
|
-
none: {
|
|
239
|
-
gpt4: Math.ceil(currentGPT4 * 0.6),
|
|
240
|
-
claude: Math.ceil(currentClaude * 0.6),
|
|
241
|
-
},
|
|
242
|
-
header: {
|
|
243
|
-
gpt4: currentGPT4,
|
|
244
|
-
claude: currentClaude,
|
|
245
|
-
},
|
|
246
|
-
full: {
|
|
247
|
-
gpt4: currentGPT4 + sourceTokensGPT4,
|
|
248
|
-
claude: currentClaude + sourceTokensClaude,
|
|
249
|
-
},
|
|
250
|
-
};
|
|
251
|
-
// Calculate savings percentage for current mode vs full
|
|
252
|
-
const savingsGPT4 = modeEstimates.full.gpt4 > 0
|
|
253
|
-
? ((modeEstimates.full.gpt4 - currentGPT4) / modeEstimates.full.gpt4 * 100).toFixed(0)
|
|
254
|
-
: '0';
|
|
255
|
-
const savingsClaude = modeEstimates.full.claude > 0
|
|
256
|
-
? ((modeEstimates.full.claude - currentClaude) / modeEstimates.full.claude * 100).toFixed(0)
|
|
257
|
-
: '0';
|
|
132
|
+
const currentGPT4 = await estimateGPT4Tokens(output);
|
|
133
|
+
const currentClaude = await estimateClaudeTokens(output);
|
|
134
|
+
// Calculate token estimates
|
|
135
|
+
const tokenEstimates = await calculateTokenEstimates(output, totalSourceSize, currentGPT4, currentClaude);
|
|
258
136
|
// If --compare-modes flag is set, output detailed mode comparison and exit
|
|
259
137
|
if (options.compareModes) {
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
: '0';
|
|
272
|
-
console.log(`${mode.name.padEnd(8)} | ${formatTokenCount(mode.gpt4).padStart(13)} | ${formatTokenCount(mode.claude).padStart(13)} | ${savings}%`);
|
|
138
|
+
const comparison = await generateModeComparison(files, manifest, projectRoot, currentGPT4, currentClaude, totalSourceSize, {
|
|
139
|
+
includeCode: options.includeCode,
|
|
140
|
+
includeStyle: options.includeStyle,
|
|
141
|
+
depth: options.depth,
|
|
142
|
+
maxNodes: options.maxNodes,
|
|
143
|
+
format: options.format,
|
|
144
|
+
hashLock: options.hashLock,
|
|
145
|
+
strict: options.strict,
|
|
146
|
+
allowMissing: options.allowMissing,
|
|
147
|
+
predictBehavior: options.predictBehavior,
|
|
148
|
+
quiet: options.quiet,
|
|
273
149
|
});
|
|
274
|
-
|
|
150
|
+
await displayModeComparison(comparison, elapsed);
|
|
275
151
|
return;
|
|
276
152
|
}
|
|
277
153
|
// If --stats flag is set, output one-line JSON and exit
|
|
278
|
-
// Stats Output Contract (for CI parsing):
|
|
279
|
-
// {
|
|
280
|
-
// totalComponents: number, // Total .ts/.tsx files analyzed
|
|
281
|
-
// rootComponents: number, // Components with no dependencies (entry points)
|
|
282
|
-
// leafComponents: number, // Components that are only dependencies (no imports)
|
|
283
|
-
// bundlesGenerated: number, // Number of bundles created (one per root)
|
|
284
|
-
// totalNodes: number, // Sum of all nodes across all bundles
|
|
285
|
-
// totalEdges: number, // Sum of all edges across all bundles
|
|
286
|
-
// missingDependencies: number, // Count of unresolved dependencies (third-party/external)
|
|
287
|
-
// tokensGPT4: number, // Estimated GPT-4 tokens (current mode)
|
|
288
|
-
// tokensClaude: number, // Estimated Claude tokens (current mode)
|
|
289
|
-
// modeEstimates: object, // Token estimates for all modes (none/header/full)
|
|
290
|
-
// savingsGPT4: string, // Savings percentage for GPT-4 (current vs full)
|
|
291
|
-
// savingsClaude: string, // Savings percentage for Claude (current vs full)
|
|
292
|
-
// elapsedMs: number // Time taken in milliseconds
|
|
293
|
-
// }
|
|
294
154
|
if (options.stats) {
|
|
295
|
-
const
|
|
296
|
-
|
|
297
|
-
rootComponents: manifest.graph.roots.length,
|
|
298
|
-
leafComponents: manifest.graph.leaves.length,
|
|
299
|
-
bundlesGenerated: bundles.length,
|
|
300
|
-
totalNodes,
|
|
301
|
-
totalEdges,
|
|
302
|
-
missingDependencies: totalMissing,
|
|
303
|
-
tokensGPT4: currentGPT4,
|
|
304
|
-
tokensClaude: currentClaude,
|
|
305
|
-
modeEstimates: {
|
|
306
|
-
none: { gpt4: modeEstimates.none.gpt4, claude: modeEstimates.none.claude },
|
|
307
|
-
header: { gpt4: modeEstimates.header.gpt4, claude: modeEstimates.header.claude },
|
|
308
|
-
full: { gpt4: modeEstimates.full.gpt4, claude: modeEstimates.full.claude },
|
|
309
|
-
},
|
|
310
|
-
savingsGPT4,
|
|
311
|
-
savingsClaude,
|
|
312
|
-
elapsedMs: elapsed,
|
|
313
|
-
};
|
|
314
|
-
console.log(JSON.stringify(stats));
|
|
155
|
+
const statsOutput = generateStatsOutput(contracts, manifest, bundles, stats, tokenEstimates, elapsed);
|
|
156
|
+
console.log(JSON.stringify(statsOutput));
|
|
315
157
|
return;
|
|
316
158
|
}
|
|
317
159
|
// Validate bundles before writing
|
|
@@ -344,193 +186,28 @@ export async function contextCommand(options) {
|
|
|
344
186
|
// If --out points to a .json file, use its directory; otherwise use it as the directory
|
|
345
187
|
const outPath = resolve(options.out);
|
|
346
188
|
const outputDir = outPath.endsWith('.json') ? dirname(outPath) : outPath;
|
|
347
|
-
//
|
|
348
|
-
const
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
if (!options.quiet) {
|
|
358
|
-
console.log(`š Writing context files for ${bundlesByFolder.size} folders...`);
|
|
359
|
-
}
|
|
360
|
-
let filesWritten = 0;
|
|
361
|
-
const normalizedRoot = normalizeEntryId(projectRoot);
|
|
362
|
-
const folderInfos = [];
|
|
363
|
-
let totalTokenEstimate = 0;
|
|
364
|
-
for (const [folderPath, folderBundles] of bundlesByFolder) {
|
|
365
|
-
// Sort bundles for deterministic output
|
|
366
|
-
folderBundles.sort((a, b) => a.entryId.localeCompare(b.entryId));
|
|
367
|
-
// Calculate relative path from project root
|
|
368
|
-
let relativePath;
|
|
369
|
-
if (folderPath === normalizedRoot) {
|
|
370
|
-
relativePath = '.';
|
|
371
|
-
}
|
|
372
|
-
else if (folderPath.startsWith(normalizedRoot + '/')) {
|
|
373
|
-
relativePath = folderPath.substring(normalizedRoot.length + 1);
|
|
374
|
-
}
|
|
375
|
-
else {
|
|
376
|
-
relativePath = folderPath;
|
|
377
|
-
}
|
|
378
|
-
// Extract component file names from bundle entryIds
|
|
379
|
-
const components = folderBundles.map(b => {
|
|
380
|
-
const normalized = normalizeEntryId(b.entryId);
|
|
381
|
-
const lastSlash = normalized.lastIndexOf('/');
|
|
382
|
-
return lastSlash !== -1 ? normalized.substring(lastSlash + 1) : normalized;
|
|
383
|
-
});
|
|
384
|
-
// Detect if this is a root folder
|
|
385
|
-
const { isRoot, rootLabel } = detectRootFolder(relativePath, components);
|
|
386
|
-
// Format bundles for this folder
|
|
387
|
-
let folderOutput;
|
|
388
|
-
if (options.format === 'ndjson') {
|
|
389
|
-
folderOutput = folderBundles.map((b, idx) => {
|
|
390
|
-
const bundleWithSchema = {
|
|
391
|
-
$schema: 'https://logicstamp.dev/schemas/context/v0.1.json',
|
|
392
|
-
position: `${idx + 1}/${folderBundles.length}`,
|
|
393
|
-
...b,
|
|
394
|
-
};
|
|
395
|
-
return JSON.stringify(bundleWithSchema);
|
|
396
|
-
}).join('\n');
|
|
397
|
-
}
|
|
398
|
-
else if (options.format === 'json') {
|
|
399
|
-
const bundlesWithPosition = folderBundles.map((b, idx) => ({
|
|
400
|
-
$schema: 'https://logicstamp.dev/schemas/context/v0.1.json',
|
|
401
|
-
position: `${idx + 1}/${folderBundles.length}`,
|
|
402
|
-
...b,
|
|
403
|
-
}));
|
|
404
|
-
folderOutput = JSON.stringify(bundlesWithPosition, null, 2);
|
|
405
|
-
}
|
|
406
|
-
else {
|
|
407
|
-
// pretty format
|
|
408
|
-
folderOutput = folderBundles.map((b, idx) => {
|
|
409
|
-
const bundleWithSchema = {
|
|
410
|
-
$schema: 'https://logicstamp.dev/schemas/context/v0.1.json',
|
|
411
|
-
position: `${idx + 1}/${folderBundles.length}`,
|
|
412
|
-
...b,
|
|
413
|
-
};
|
|
414
|
-
const header = `\n# Bundle ${idx + 1}/${folderBundles.length}: ${b.entryId}`;
|
|
415
|
-
return header + '\n' + JSON.stringify(bundleWithSchema, null, 2);
|
|
416
|
-
}).join('\n\n');
|
|
417
|
-
}
|
|
418
|
-
// Estimate tokens for this folder's context file
|
|
419
|
-
const folderTokenEstimate = estimateGPT4Tokens(folderOutput);
|
|
420
|
-
totalTokenEstimate += folderTokenEstimate;
|
|
421
|
-
// Write folder's context.json to output directory maintaining relative structure
|
|
422
|
-
const contextFileName = relativePath === '.' ? 'context.json' : join(relativePath, 'context.json');
|
|
423
|
-
const contextFilePath = relativePath === '.' ? 'context.json' : `${relativePath}/context.json`;
|
|
424
|
-
const folderContextPath = join(outputDir, contextFileName);
|
|
425
|
-
await mkdir(dirname(folderContextPath), { recursive: true });
|
|
426
|
-
await writeFile(folderContextPath, folderOutput, 'utf8');
|
|
427
|
-
filesWritten++;
|
|
428
|
-
if (!options.quiet) {
|
|
429
|
-
console.log(` ā ${displayPath(folderContextPath)} (${folderBundles.length} bundles)`);
|
|
430
|
-
}
|
|
431
|
-
// Add to folder info array
|
|
432
|
-
folderInfos.push({
|
|
433
|
-
path: relativePath === '.' ? '.' : relativePath,
|
|
434
|
-
contextFile: contextFilePath,
|
|
435
|
-
bundles: folderBundles.length,
|
|
436
|
-
components: components.sort(),
|
|
437
|
-
isRoot,
|
|
438
|
-
rootLabel,
|
|
439
|
-
tokenEstimate: folderTokenEstimate,
|
|
440
|
-
});
|
|
441
|
-
}
|
|
442
|
-
// Write context_main.json as metadata index
|
|
443
|
-
const mainContextPath = join(outputDir, 'context_main.json');
|
|
189
|
+
// Write context files
|
|
190
|
+
const { filesWritten, folderInfos, totalTokenEstimate } = await writeContextFiles(bundles, outputDir, projectRoot, {
|
|
191
|
+
format: options.format,
|
|
192
|
+
quiet: options.quiet,
|
|
193
|
+
});
|
|
194
|
+
// Write main index
|
|
195
|
+
await writeMainIndex(outputDir, folderInfos, contracts, bundles, groupBundlesByFolder(bundles).size, totalTokenEstimate, projectRoot, {
|
|
196
|
+
quiet: options.quiet,
|
|
197
|
+
suppressSuccessIndicator: options.suppressSuccessIndicator,
|
|
198
|
+
});
|
|
444
199
|
if (!options.quiet) {
|
|
445
|
-
console.log(`š Writing main context index...`);
|
|
446
|
-
}
|
|
447
|
-
// Sort folders by path for deterministic output
|
|
448
|
-
folderInfos.sort((a, b) => a.path.localeCompare(b.path));
|
|
449
|
-
// Create index structure
|
|
450
|
-
const index = {
|
|
451
|
-
type: 'LogicStampIndex',
|
|
452
|
-
schemaVersion: '0.1',
|
|
453
|
-
projectRoot: '.',
|
|
454
|
-
projectRootResolved: normalizedRoot,
|
|
455
|
-
createdAt: new Date().toISOString(),
|
|
456
|
-
summary: {
|
|
457
|
-
totalComponents: contracts.length,
|
|
458
|
-
totalBundles: bundles.length,
|
|
459
|
-
totalFolders: bundlesByFolder.size,
|
|
460
|
-
totalTokenEstimate,
|
|
461
|
-
},
|
|
462
|
-
folders: folderInfos,
|
|
463
|
-
meta: {
|
|
464
|
-
source: 'logicstamp-context@0.1.0',
|
|
465
|
-
},
|
|
466
|
-
};
|
|
467
|
-
const indexOutput = JSON.stringify(index, null, 2);
|
|
468
|
-
await writeFile(mainContextPath, indexOutput, 'utf8');
|
|
469
|
-
if (options.quiet) {
|
|
470
|
-
// Minimal output in quiet mode
|
|
471
|
-
process.stdout.write('ā\n');
|
|
472
|
-
}
|
|
473
|
-
else {
|
|
474
|
-
console.log(` ā ${displayPath(mainContextPath)} (index of ${bundlesByFolder.size} folders)`);
|
|
475
200
|
console.log(`ā
${filesWritten + 1} context files written successfully`);
|
|
476
201
|
}
|
|
477
|
-
//
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
if (created) {
|
|
487
|
-
console.log('\nā
Created .gitignore with LogicStamp patterns');
|
|
488
|
-
}
|
|
489
|
-
else {
|
|
490
|
-
console.log('\nā
Added LogicStamp patterns to .gitignore');
|
|
491
|
-
}
|
|
492
|
-
}
|
|
493
|
-
else if (skipped) {
|
|
494
|
-
console.log('\nš Skipping .gitignore setup (you can run `stamp init` later if needed)');
|
|
495
|
-
}
|
|
496
|
-
}
|
|
497
|
-
else if (!prompted && added) {
|
|
498
|
-
// Auto-added based on saved preference
|
|
499
|
-
if (created) {
|
|
500
|
-
console.log('\nš Created .gitignore with LogicStamp patterns');
|
|
501
|
-
}
|
|
502
|
-
else {
|
|
503
|
-
console.log('\nš Added LogicStamp patterns to .gitignore');
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
}
|
|
507
|
-
}
|
|
508
|
-
catch (error) {
|
|
509
|
-
// Silently ignore gitignore errors - not critical to context generation
|
|
510
|
-
// Users can run `stamp init` manually if needed
|
|
511
|
-
}
|
|
512
|
-
// Smart LLM_CONTEXT.md setup with prompt and config persistence
|
|
513
|
-
try {
|
|
514
|
-
const { added, prompted, skipped } = await smartLLMContextSetup(projectRoot);
|
|
515
|
-
// Show results if prompted (first-time config) even in quiet mode, or if not quiet
|
|
516
|
-
if (prompted || !options.quiet) {
|
|
517
|
-
if (prompted) {
|
|
518
|
-
if (added) {
|
|
519
|
-
console.log('\nā
Created LLM_CONTEXT.md');
|
|
520
|
-
}
|
|
521
|
-
else if (skipped) {
|
|
522
|
-
console.log('\nš Skipping LLM_CONTEXT.md generation (you can run `stamp init` later if needed)');
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
else if (!prompted && added) {
|
|
526
|
-
// Auto-added based on saved preference
|
|
527
|
-
console.log('\nš Created LLM_CONTEXT.md');
|
|
528
|
-
}
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
catch (error) {
|
|
532
|
-
// Silently ignore LLM_CONTEXT.md errors - not critical to context generation
|
|
533
|
-
}
|
|
202
|
+
// Auto-create config with safe defaults if it doesn't exist (first run)
|
|
203
|
+
await ensureConfigExists(projectRoot, { quiet: options.quiet });
|
|
204
|
+
// Smart .gitignore setup (no prompting - only init prompts)
|
|
205
|
+
await setupGitignore(projectRoot, {
|
|
206
|
+
skipGitignore: options.skipGitignore,
|
|
207
|
+
quiet: options.quiet,
|
|
208
|
+
});
|
|
209
|
+
// Smart LLM_CONTEXT.md setup (no prompting - only init prompts)
|
|
210
|
+
await setupLLMContext(projectRoot, { quiet: options.quiet });
|
|
534
211
|
}
|
|
535
212
|
else {
|
|
536
213
|
if (!options.quiet) {
|
|
@@ -539,37 +216,30 @@ export async function contextCommand(options) {
|
|
|
539
216
|
}
|
|
540
217
|
// Print summary (skip in quiet mode)
|
|
541
218
|
if (!options.quiet) {
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
b.meta.missing.forEach(dep => allMissing.add(dep.name));
|
|
562
|
-
});
|
|
563
|
-
Array.from(allMissing).slice(0, 10).forEach(name => console.log(` - ${name}`));
|
|
564
|
-
if (allMissing.size > 10) {
|
|
565
|
-
console.log(` ... and ${allMissing.size - 10} more`);
|
|
566
|
-
}
|
|
567
|
-
}
|
|
219
|
+
await generateSummary(contracts, manifest, bundles, stats, tokenEstimates, {
|
|
220
|
+
includeCode: options.includeCode,
|
|
221
|
+
includeStyle: options.includeStyle,
|
|
222
|
+
files,
|
|
223
|
+
projectRoot,
|
|
224
|
+
currentGPT4,
|
|
225
|
+
currentClaude,
|
|
226
|
+
totalSourceSize,
|
|
227
|
+
packOptions: {
|
|
228
|
+
depth,
|
|
229
|
+
maxNodes: options.maxNodes,
|
|
230
|
+
format: options.format,
|
|
231
|
+
hashLock,
|
|
232
|
+
strict,
|
|
233
|
+
allowMissing: options.allowMissing,
|
|
234
|
+
predictBehavior: options.predictBehavior,
|
|
235
|
+
},
|
|
236
|
+
quiet: options.quiet,
|
|
237
|
+
});
|
|
568
238
|
console.log(`\nā± Completed in ${elapsed}ms`);
|
|
569
239
|
}
|
|
570
240
|
// Exit with non-zero code if --strict-missing is enabled and there are missing dependencies
|
|
571
|
-
if (options.strictMissing && totalMissing > 0) {
|
|
572
|
-
console.error(`\nā Strict missing mode: ${totalMissing} missing dependencies found`);
|
|
241
|
+
if (options.strictMissing && stats.totalMissing > 0) {
|
|
242
|
+
console.error(`\nā Strict missing mode: ${stats.totalMissing} missing dependencies found`);
|
|
573
243
|
process.exit(1);
|
|
574
244
|
}
|
|
575
245
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,IAAI,GAGL,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACrH,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpG,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAwBjG,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAuB;IAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,iCAAiC;IACjC,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC;IACxC,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,kCAAkC;IAClC,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAE3C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,6CAA6C,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACvF,OAAO,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;QACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,MAAM,uBAAuB,CAAC,KAAK,EAAE;QACpF,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAe,QAAQ,aAAa,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,OAAO,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;QAC9F,OAAO,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;QAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IACD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAEjD,mDAAmD;IACnD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC;IACpD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,yBAAyB;IACzB,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC1B,IAAI,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACtC,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAChC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE5B,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QACnC,KAAK,GAAG,CAAC,CAAC;QACV,WAAW,GAAG,QAAQ,CAAC;QACvB,QAAQ,GAAG,KAAK,CAAC;QACjB,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC;QACtB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAC1C,KAAK,GAAG,CAAC,CAAC;QACV,WAAW,GAAG,QAAQ,CAAC;QACvB,QAAQ,GAAG,KAAK,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QAC3C,WAAW,GAAG,MAAM,CAAC;QACrB,QAAQ,GAAG,KAAK,CAAC;QACjB,MAAM,GAAG,IAAI,CAAC;QACd,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAgB;QAC/B,KAAK;QACL,WAAW;QACX,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ;QACR,MAAM;QACN,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,YAAY,EAAE,2BAA2B;KAC1C,CAAC;IAEF,2CAA2C;IAC3C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,6BAA6B,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,2BAA2B,KAAK,MAAM,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,OAAO,GAAuB,EAAE,CAAC;IACvC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YACtE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,yBAAyB,MAAM,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,mDAAmD;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3D,kCAAkC;IAClC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IAEvC,kBAAkB;IAClB,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAEtC,0DAA0D;IAC1D,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAEzD,4BAA4B;IAC5B,MAAM,cAAc,GAAG,MAAM,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;IAE1G,2EAA2E;IAC3E,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAC7C,KAAK,EACL,QAAQ,EACR,WAAW,EACX,WAAW,EACX,aAAa,EACb,eAAe,EACf;YACE,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CACF,CAAC;QAEF,MAAM,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IAED,wDAAwD;IACxD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,mBAAmB,CACrC,SAAS,EACT,QAAQ,EACR,OAAO,EACP,KAAK,EACL,cAAc,EACd,OAAO,CACR,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjD,OAAO,EAAE,kDAAkD;QAC3D,QAAQ,EAAE,GAAG,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE;QACxC,GAAG,CAAC;KACL,CAAC,CAAC,CAAC;IACJ,MAAM,UAAU,GAAG,eAAe,CAAC,iBAAuC,CAAC,CAAC;IAE5E,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,0BAA0B,UAAU,CAAC,MAAM,WAAW,CAAC,CAAC;QACtE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,UAAU,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,OAAO,UAAU,CAAC,QAAQ,+BAA+B,CAAC,CAAC;YACvE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;QACrG,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,+CAA+C;QAC/C,wFAAwF;QACxF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAEzE,sBAAsB;QACtB,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,MAAM,iBAAiB,CAC/E,OAAO,EACP,SAAS,EACT,WAAW,EACX;YACE,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CACF,CAAC;QAEF,mBAAmB;QACnB,MAAM,cAAc,CAClB,SAAS,EACT,WAAW,EACX,SAAS,EACT,OAAO,EACP,oBAAoB,CAAC,OAAO,CAAC,CAAC,IAAI,EAClC,kBAAkB,EAClB,WAAW,EACX;YACE,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;SAC3D,CACF,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,KAAK,YAAY,GAAG,CAAC,qCAAqC,CAAC,CAAC;QAC1E,CAAC;QAED,wEAAwE;QACxE,MAAM,kBAAkB,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAEhE,4DAA4D;QAC5D,MAAM,cAAc,CAAC,WAAW,EAAE;YAChC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QAEH,gEAAgE;QAChE,MAAM,eAAe,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE;YACzE,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,KAAK;YACL,WAAW;YACX,WAAW;YACX,aAAa;YACb,eAAe;YACf,WAAW,EAAE;gBACX,KAAK;gBACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,QAAQ;gBACR,MAAM;gBACN,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC;YACD,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,4FAA4F;IAC5F,IAAI,OAAO,CAAC,aAAa,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QACpD,OAAO,CAAC,KAAK,CAAC,4BAA4B,KAAK,CAAC,YAAY,6BAA6B,CAAC,CAAC;QAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA2BD;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgInE"}
|