mycontext-cli 0.2.10 → 0.2.12
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/README.md +48 -573
- package/dist/agents/implementations/QASubAgent.d.ts +1 -1
- package/dist/agents/implementations/QASubAgent.d.ts.map +1 -1
- package/dist/agents/implementations/QASubAgent.js +4 -9
- package/dist/agents/implementations/QASubAgent.js.map +1 -1
- package/dist/cli.js +17 -5
- package/dist/cli.js.map +1 -1
- package/dist/commands/generate-components.d.ts +15 -0
- package/dist/commands/generate-components.d.ts.map +1 -1
- package/dist/commands/generate-components.js +347 -25
- package/dist/commands/generate-components.js.map +1 -1
- package/dist/commands/generate.d.ts +13 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +411 -127
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +49 -30
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/model.d.ts.map +1 -1
- package/dist/commands/model.js +134 -96
- package/dist/commands/model.js.map +1 -1
- package/dist/config/ai-providers.json +29 -6
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/githubModelsClient.d.ts +27 -0
- package/dist/utils/githubModelsClient.d.ts.map +1 -0
- package/dist/utils/githubModelsClient.js +280 -0
- package/dist/utils/githubModelsClient.js.map +1 -0
- package/dist/utils/hybridAIClient.d.ts +18 -1
- package/dist/utils/hybridAIClient.d.ts.map +1 -1
- package/dist/utils/hybridAIClient.js +113 -12
- package/dist/utils/hybridAIClient.js.map +1 -1
- package/dist/utils/ollamaClient.js +2 -2
- package/dist/utils/spinner.d.ts +0 -3
- package/dist/utils/spinner.d.ts.map +1 -1
- package/dist/utils/spinner.js +3 -27
- package/dist/utils/spinner.js.map +1 -1
- package/package.json +1 -1
|
@@ -42,6 +42,7 @@ const spinner_1 = require("../utils/spinner");
|
|
|
42
42
|
const chalk_1 = __importDefault(require("chalk"));
|
|
43
43
|
const fs = __importStar(require("fs-extra"));
|
|
44
44
|
const path = __importStar(require("path"));
|
|
45
|
+
const child_process_1 = require("child_process");
|
|
45
46
|
// Code Generation Sub-Agent
|
|
46
47
|
class CodeGenSubAgent {
|
|
47
48
|
constructor() {
|
|
@@ -78,6 +79,21 @@ class GenerateComponentsCommand {
|
|
|
78
79
|
constructor() {
|
|
79
80
|
this.fs = new fileSystem_1.FileSystemManager();
|
|
80
81
|
}
|
|
82
|
+
// --- Naming helpers ---
|
|
83
|
+
toKebabCase(input) {
|
|
84
|
+
return String(input || "")
|
|
85
|
+
.replace(/[^a-zA-Z0-9]+/g, "-")
|
|
86
|
+
.replace(/^-+|-+$/g, "")
|
|
87
|
+
.replace(/--+/g, "-")
|
|
88
|
+
.toLowerCase();
|
|
89
|
+
}
|
|
90
|
+
getComponentBaseName(component) {
|
|
91
|
+
const raw = typeof component === "string" ? component : component?.name;
|
|
92
|
+
return this.generateComponentName(String(raw || "Component"));
|
|
93
|
+
}
|
|
94
|
+
getComponentExportName(component) {
|
|
95
|
+
return this.getComponentBaseName(component);
|
|
96
|
+
}
|
|
81
97
|
async execute(target, options) {
|
|
82
98
|
const spinner = new spinner_1.EnhancedSpinner("Initializing component generation...");
|
|
83
99
|
try {
|
|
@@ -133,6 +149,12 @@ class GenerateComponentsCommand {
|
|
|
133
149
|
if (groups.length === 0) {
|
|
134
150
|
throw new Error("No component groups found in component-list.json");
|
|
135
151
|
}
|
|
152
|
+
// Ensure shadcn/ui components are available before generation
|
|
153
|
+
await this.ensureShadcnComponentsInstalled(groups, spinner);
|
|
154
|
+
// Ensure test scaffold exists (optional)
|
|
155
|
+
if (options.withTests) {
|
|
156
|
+
await this.ensureTestsScaffold(spinner);
|
|
157
|
+
}
|
|
136
158
|
// Create components directory
|
|
137
159
|
const componentsDir = options.output || "components";
|
|
138
160
|
await this.fs.ensureDir(componentsDir);
|
|
@@ -140,11 +162,14 @@ class GenerateComponentsCommand {
|
|
|
140
162
|
let generatedGroups = 0;
|
|
141
163
|
for (const group of groups) {
|
|
142
164
|
spinner.updateText(`Generating ${group.name} components...`);
|
|
143
|
-
const groupDir = path.join(componentsDir, group.name
|
|
165
|
+
const groupDir = path.join(componentsDir, this.toKebabCase(group.name));
|
|
144
166
|
await this.fs.ensureDir(groupDir);
|
|
145
167
|
const components = group.components || [];
|
|
146
168
|
for (const component of components) {
|
|
147
169
|
await this.generateComponent(component, group, groupDir, options, userId);
|
|
170
|
+
if (options.withTests) {
|
|
171
|
+
await this.generateComponentTest(component, groupDir);
|
|
172
|
+
}
|
|
148
173
|
totalComponents++;
|
|
149
174
|
}
|
|
150
175
|
// Generate group index file
|
|
@@ -162,7 +187,7 @@ class GenerateComponentsCommand {
|
|
|
162
187
|
console.log(chalk_1.default.gray(` • ${group.name.toLowerCase()}/`));
|
|
163
188
|
const components = group.components || [];
|
|
164
189
|
components.forEach((comp) => {
|
|
165
|
-
console.log(chalk_1.default.gray(` • ${comp
|
|
190
|
+
console.log(chalk_1.default.gray(` • ${this.getComponentBaseName(comp)}.tsx`));
|
|
166
191
|
});
|
|
167
192
|
console.log(chalk_1.default.gray(` • index.ts`));
|
|
168
193
|
console.log(chalk_1.default.gray(` • page.tsx`));
|
|
@@ -181,13 +206,22 @@ class GenerateComponentsCommand {
|
|
|
181
206
|
if (!group) {
|
|
182
207
|
throw new Error(`Group '${groupName}' not found in component-list.json`);
|
|
183
208
|
}
|
|
209
|
+
// Ensure shadcn/ui components are available before generation
|
|
210
|
+
await this.ensureShadcnComponentsInstalled([group], spinner);
|
|
211
|
+
// Ensure test scaffold exists (optional)
|
|
212
|
+
if (options.withTests) {
|
|
213
|
+
await this.ensureTestsScaffold(spinner);
|
|
214
|
+
}
|
|
184
215
|
// Create group directory
|
|
185
216
|
const componentsDir = options.output || "components";
|
|
186
|
-
const groupDir = path.join(componentsDir, group.name
|
|
217
|
+
const groupDir = path.join(componentsDir, this.toKebabCase(group.name));
|
|
187
218
|
await this.fs.ensureDir(groupDir);
|
|
188
219
|
const components = group.components || [];
|
|
189
220
|
for (const component of components) {
|
|
190
221
|
await this.generateComponent(component, group, groupDir, options, userId);
|
|
222
|
+
if (options.withTests) {
|
|
223
|
+
await this.generateComponentTest(component, groupDir);
|
|
224
|
+
}
|
|
191
225
|
}
|
|
192
226
|
// Generate group index file
|
|
193
227
|
await this.generateGroupIndex(group, groupDir);
|
|
@@ -199,7 +233,7 @@ class GenerateComponentsCommand {
|
|
|
199
233
|
console.log(chalk_1.default.green("\n✅ Generated Files:"));
|
|
200
234
|
console.log(chalk_1.default.gray(` • ${groupDir}/`));
|
|
201
235
|
components.forEach((comp) => {
|
|
202
|
-
console.log(chalk_1.default.gray(` • ${comp
|
|
236
|
+
console.log(chalk_1.default.gray(` • ${this.getComponentBaseName(comp)}.tsx`));
|
|
203
237
|
});
|
|
204
238
|
console.log(chalk_1.default.gray(` • index.ts`));
|
|
205
239
|
console.log(chalk_1.default.gray(` • page.tsx`));
|
|
@@ -219,11 +253,11 @@ class GenerateComponentsCommand {
|
|
|
219
253
|
...options,
|
|
220
254
|
},
|
|
221
255
|
}),
|
|
222
|
-
new Promise((_, reject) => setTimeout(() => reject(new Error(
|
|
256
|
+
new Promise((_, reject) => setTimeout(() => reject(new Error("Code generation timed out after 60 seconds")), 60000)),
|
|
223
257
|
]));
|
|
224
258
|
}
|
|
225
259
|
catch (error) {
|
|
226
|
-
if (error.message.includes(
|
|
260
|
+
if (error.message.includes("timed out")) {
|
|
227
261
|
console.log(chalk_1.default.yellow(`⚠️ Code generation timed out for ${component.name}`));
|
|
228
262
|
console.log(chalk_1.default.gray("Using fallback generation method..."));
|
|
229
263
|
const code = this.generateComponentCode(component, group, options);
|
|
@@ -248,7 +282,8 @@ class GenerateComponentsCommand {
|
|
|
248
282
|
}
|
|
249
283
|
throw error;
|
|
250
284
|
}
|
|
251
|
-
const
|
|
285
|
+
const fileBase = this.getComponentBaseName(component);
|
|
286
|
+
const componentPath = path.join(groupDir, `${fileBase}.tsx`);
|
|
252
287
|
await this.fs.writeFile(componentPath, codeResult.code);
|
|
253
288
|
// Execute QA and docs in parallel
|
|
254
289
|
const [qaResult, docsResult] = (await Promise.all([
|
|
@@ -264,7 +299,7 @@ class GenerateComponentsCommand {
|
|
|
264
299
|
}),
|
|
265
300
|
]));
|
|
266
301
|
// Write documentation
|
|
267
|
-
const docsPath = path.join(groupDir, `${component
|
|
302
|
+
const docsPath = path.join(groupDir, `${this.getComponentBaseName(component)}.md`);
|
|
268
303
|
await this.fs.writeFile(docsPath, docsResult.content);
|
|
269
304
|
// Log QA results
|
|
270
305
|
if (qaResult.score < 70) {
|
|
@@ -317,8 +352,265 @@ class GenerateComponentsCommand {
|
|
|
317
352
|
});
|
|
318
353
|
}
|
|
319
354
|
}
|
|
355
|
+
/**
|
|
356
|
+
* Ensure shadcn/ui is initialized and required components are installed
|
|
357
|
+
*/
|
|
358
|
+
async ensureShadcnComponentsInstalled(groups, spinner) {
|
|
359
|
+
try {
|
|
360
|
+
const projectRoot = process.cwd();
|
|
361
|
+
const componentsJsonPath = path.join(projectRoot, "components.json");
|
|
362
|
+
// Initialize shadcn if components.json is missing
|
|
363
|
+
if (!(await fs.pathExists(componentsJsonPath))) {
|
|
364
|
+
spinner.updateText("Initializing shadcn/ui for this project...");
|
|
365
|
+
const pm = await this.detectPackageManager(projectRoot);
|
|
366
|
+
try {
|
|
367
|
+
if (pm === "pnpm") {
|
|
368
|
+
(0, child_process_1.execSync)(`pnpm dlx shadcn@latest init -y`, {
|
|
369
|
+
cwd: projectRoot,
|
|
370
|
+
stdio: "inherit",
|
|
371
|
+
});
|
|
372
|
+
}
|
|
373
|
+
else {
|
|
374
|
+
(0, child_process_1.execSync)(`npx shadcn@latest init -y`, {
|
|
375
|
+
cwd: projectRoot,
|
|
376
|
+
stdio: "inherit",
|
|
377
|
+
});
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
catch (e) {
|
|
381
|
+
console.log(chalk_1.default.yellow(" ⚠️ shadcn init failed; continuing. You can run it manually."));
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
// Build required component set from groups
|
|
385
|
+
const needed = new Set();
|
|
386
|
+
for (const group of groups) {
|
|
387
|
+
for (const comp of group.components || []) {
|
|
388
|
+
this.inferShadcnForComponent(comp, needed);
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
if (needed.size === 0)
|
|
392
|
+
return;
|
|
393
|
+
const pkgManager = await this.detectPackageManager(projectRoot);
|
|
394
|
+
const names = Array.from(needed);
|
|
395
|
+
spinner.updateText(`Installing shadcn components (${names.length})...`);
|
|
396
|
+
try {
|
|
397
|
+
if (pkgManager === "pnpm") {
|
|
398
|
+
(0, child_process_1.execSync)(`pnpm dlx shadcn@latest add ${names.join(" ")}`, {
|
|
399
|
+
cwd: projectRoot,
|
|
400
|
+
stdio: "inherit",
|
|
401
|
+
});
|
|
402
|
+
}
|
|
403
|
+
else {
|
|
404
|
+
(0, child_process_1.execSync)(`npx shadcn@latest add ${names.join(" ")}`, {
|
|
405
|
+
cwd: projectRoot,
|
|
406
|
+
stdio: "inherit",
|
|
407
|
+
});
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
catch (e) {
|
|
411
|
+
console.log(chalk_1.default.yellow(" ⚠️ shadcn add failed; you can add components manually."));
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
catch (error) {
|
|
415
|
+
console.log(chalk_1.default.yellow(` ⚠️ shadcn setup encountered an issue: ${error instanceof Error ? error.message : String(error)}`));
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
inferShadcnForComponent(component, out) {
|
|
419
|
+
const type = (component.type || "").toLowerCase();
|
|
420
|
+
const name = String(component.name || "").toLowerCase();
|
|
421
|
+
const desc = String(component.description || "").toLowerCase();
|
|
422
|
+
const tags = Array.isArray(component.tags)
|
|
423
|
+
? component.tags.map((t) => String(t).toLowerCase())
|
|
424
|
+
: [];
|
|
425
|
+
const add = (list) => list.forEach((n) => out.add(n));
|
|
426
|
+
// Base mapping by type
|
|
427
|
+
if (type === "form") {
|
|
428
|
+
add([
|
|
429
|
+
"button",
|
|
430
|
+
"input",
|
|
431
|
+
"label",
|
|
432
|
+
"form",
|
|
433
|
+
"select",
|
|
434
|
+
"checkbox",
|
|
435
|
+
"radio-group",
|
|
436
|
+
"textarea",
|
|
437
|
+
"switch",
|
|
438
|
+
"alert",
|
|
439
|
+
]);
|
|
440
|
+
}
|
|
441
|
+
if (type === "layout" || /layout|card/.test(name)) {
|
|
442
|
+
add(["card", "separator"]);
|
|
443
|
+
}
|
|
444
|
+
if (type === "button" || /button/.test(name)) {
|
|
445
|
+
add(["button"]);
|
|
446
|
+
}
|
|
447
|
+
if (type === "navigation" || /nav|tabs|breadcrumb/.test(name)) {
|
|
448
|
+
add(["navigation-menu", "breadcrumb", "tabs"]);
|
|
449
|
+
}
|
|
450
|
+
if (type === "feedback" ||
|
|
451
|
+
/alert|dialog|toast|progress|skeleton/.test(name)) {
|
|
452
|
+
add(["alert", "alert-dialog", "dialog", "progress", "skeleton"]);
|
|
453
|
+
}
|
|
454
|
+
if (type === "data" || /table|command|combobox/.test(name)) {
|
|
455
|
+
add(["table", "command"]);
|
|
456
|
+
}
|
|
457
|
+
if (type === "overlay" || /popover|tooltip|sheet|drawer/.test(name)) {
|
|
458
|
+
add(["popover", "tooltip", "sheet"]);
|
|
459
|
+
}
|
|
460
|
+
if (type === "media" || /avatar|badge|calendar|carousel/.test(name)) {
|
|
461
|
+
add(["avatar", "badge", "calendar", "carousel"]);
|
|
462
|
+
}
|
|
463
|
+
// Tag/description-based enrichments
|
|
464
|
+
const has = (kw) => kw.test(name) || kw.test(desc) || tags.some((t) => kw.test(t));
|
|
465
|
+
if (has(/modal|dialog/))
|
|
466
|
+
add(["dialog", "alert-dialog"]);
|
|
467
|
+
if (has(/toast|notification/))
|
|
468
|
+
add(["toast"]);
|
|
469
|
+
if (has(/popover|tooltip/))
|
|
470
|
+
add(["popover", "tooltip"]);
|
|
471
|
+
if (has(/dropdown|menu/))
|
|
472
|
+
add(["dropdown-menu", "menubar"]);
|
|
473
|
+
if (has(/tabs/))
|
|
474
|
+
add(["tabs"]);
|
|
475
|
+
if (has(/accordion|collapsible/))
|
|
476
|
+
add(["accordion", "collapsible"]);
|
|
477
|
+
if (has(/table|list|command|combobox|select/))
|
|
478
|
+
add(["table", "command", "select"]);
|
|
479
|
+
if (has(/pagination/))
|
|
480
|
+
add(["pagination"]);
|
|
481
|
+
if (has(/avatar|user|profile/))
|
|
482
|
+
add(["avatar"]);
|
|
483
|
+
if (has(/badge|status|tag/))
|
|
484
|
+
add(["badge"]);
|
|
485
|
+
if (has(/calendar|date/))
|
|
486
|
+
add(["calendar"]);
|
|
487
|
+
if (has(/carousel|gallery/))
|
|
488
|
+
add(["carousel"]);
|
|
489
|
+
if (has(/sidebar/))
|
|
490
|
+
add(["sidebar"]);
|
|
491
|
+
if (has(/sheet|drawer/))
|
|
492
|
+
add(["sheet"]);
|
|
493
|
+
if (has(/separator|divider/))
|
|
494
|
+
add(["separator"]);
|
|
495
|
+
if (has(/breadcrumb/))
|
|
496
|
+
add(["breadcrumb"]);
|
|
497
|
+
if (has(/hover|card/))
|
|
498
|
+
add(["hover-card", "card"]);
|
|
499
|
+
if (has(/radio/))
|
|
500
|
+
add(["radio-group"]);
|
|
501
|
+
if (has(/switch/))
|
|
502
|
+
add(["switch"]);
|
|
503
|
+
if (has(/slider/))
|
|
504
|
+
add(["slider"]);
|
|
505
|
+
if (has(/progress/))
|
|
506
|
+
add(["progress"]);
|
|
507
|
+
if (has(/skeleton|loading/))
|
|
508
|
+
add(["skeleton"]);
|
|
509
|
+
if (has(/tooltip/))
|
|
510
|
+
add(["tooltip"]);
|
|
511
|
+
if (has(/tabs/))
|
|
512
|
+
add(["tabs"]);
|
|
513
|
+
}
|
|
514
|
+
async detectPackageManager(projectRoot) {
|
|
515
|
+
try {
|
|
516
|
+
const pkgPath = path.join(projectRoot, "package.json");
|
|
517
|
+
if (await fs.pathExists(pkgPath)) {
|
|
518
|
+
const pkg = await fs.readJson(pkgPath);
|
|
519
|
+
if (typeof pkg.packageManager === "string" &&
|
|
520
|
+
pkg.packageManager.startsWith("pnpm@")) {
|
|
521
|
+
return "pnpm";
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
if (await fs.pathExists(path.join(projectRoot, "pnpm-lock.yaml")))
|
|
525
|
+
return "pnpm";
|
|
526
|
+
}
|
|
527
|
+
catch { }
|
|
528
|
+
return "npm";
|
|
529
|
+
}
|
|
530
|
+
/**
|
|
531
|
+
* Ensure Jest + RTL scaffold exists in the project
|
|
532
|
+
*/
|
|
533
|
+
async ensureTestsScaffold(spinner) {
|
|
534
|
+
try {
|
|
535
|
+
const projectRoot = process.cwd();
|
|
536
|
+
const jestConfigPath = path.join(projectRoot, "jest.config.ts");
|
|
537
|
+
const setupPath = path.join(projectRoot, "jest.setup.ts");
|
|
538
|
+
const pkgPath = path.join(projectRoot, "package.json");
|
|
539
|
+
const pkg = (await fs.pathExists(pkgPath))
|
|
540
|
+
? await fs.readJson(pkgPath)
|
|
541
|
+
: {};
|
|
542
|
+
const pm = await this.detectPackageManager(projectRoot);
|
|
543
|
+
// Write config files if missing
|
|
544
|
+
if (!(await fs.pathExists(jestConfigPath))) {
|
|
545
|
+
await fs.writeFile(jestConfigPath, `import type { Config } from 'jest';\n\nconst config: Config = {\n preset: 'ts-jest',\n testEnvironment: 'jsdom',\n setupFilesAfterEnv: ['<rootDir>/jest.setup.ts'],\n moduleNameMapper: {\n '^@/(.*)$': '<rootDir>/src/$1'\n },\n transform: {\n '^.+\\.(ts|tsx)$': ['ts-jest', { tsconfig: '<rootDir>/tsconfig.json' }]\n },\n};\n\nexport default config;\n`);
|
|
546
|
+
}
|
|
547
|
+
if (!(await fs.pathExists(setupPath))) {
|
|
548
|
+
await fs.writeFile(setupPath, `import '@testing-library/jest-dom';\n`);
|
|
549
|
+
}
|
|
550
|
+
// Add test script
|
|
551
|
+
pkg.scripts = pkg.scripts || {};
|
|
552
|
+
if (!pkg.scripts.test) {
|
|
553
|
+
pkg.scripts.test = "jest";
|
|
554
|
+
await fs.writeJson(pkgPath, pkg, { spaces: 2 });
|
|
555
|
+
}
|
|
556
|
+
// Install dev deps if not present
|
|
557
|
+
const devDeps = [
|
|
558
|
+
"jest",
|
|
559
|
+
"ts-jest",
|
|
560
|
+
"@types/jest",
|
|
561
|
+
"@testing-library/react",
|
|
562
|
+
"@testing-library/jest-dom",
|
|
563
|
+
"jest-environment-jsdom",
|
|
564
|
+
];
|
|
565
|
+
spinner.updateText("Ensuring test dependencies...");
|
|
566
|
+
try {
|
|
567
|
+
if (pm === "pnpm") {
|
|
568
|
+
(0, child_process_1.execSync)(`pnpm add -D ${devDeps.join(" ")}`, {
|
|
569
|
+
cwd: projectRoot,
|
|
570
|
+
stdio: "inherit",
|
|
571
|
+
});
|
|
572
|
+
}
|
|
573
|
+
else {
|
|
574
|
+
(0, child_process_1.execSync)(`npm i -D ${devDeps.join(" ")}`, {
|
|
575
|
+
cwd: projectRoot,
|
|
576
|
+
stdio: "inherit",
|
|
577
|
+
});
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
catch {
|
|
581
|
+
console.log(chalk_1.default.yellow(" ⚠️ Failed to install test deps automatically. You can install them manually."));
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
catch (error) {
|
|
585
|
+
console.log(chalk_1.default.yellow(` ⚠️ Test scaffold step encountered an issue: ${error instanceof Error ? error.message : String(error)}`));
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
async generateComponentTest(component, groupDir) {
|
|
589
|
+
try {
|
|
590
|
+
const name = component.name;
|
|
591
|
+
const type = (component.type || "").toLowerCase();
|
|
592
|
+
const testsDir = path.join(process.cwd(), "__tests__", "components");
|
|
593
|
+
await this.fs.ensureDir(testsDir);
|
|
594
|
+
const testPath = path.join(testsDir, `${name}.test.tsx`);
|
|
595
|
+
const basicRender = `import React from 'react';\nimport { render, screen } from '@testing-library/react';\nimport '@testing-library/jest-dom';\nimport { ${name} } from '${path
|
|
596
|
+
.relative(testsDir, path.join(groupDir, name))
|
|
597
|
+
.replace(/\\\\/g, "/")}';\n\ndescribe('${name}', () => {\n it('renders without crashing', () => {\n render(<${name} />);\n expect(screen.getByText('${name}')).toBeInTheDocument();\n });\n});\n`;
|
|
598
|
+
const formTest = `import React from 'react';\nimport { render, screen } from '@testing-library/react';\nimport '@testing-library/jest-dom';\nimport { ${name} } from '${path
|
|
599
|
+
.relative(testsDir, path.join(groupDir, name))
|
|
600
|
+
.replace(/\\\\/g, "/")}';\n\ndescribe('${name}', () => {\n it('disables submit when loading', () => {\n render(<${name} loading />);\n expect(screen.getByRole('button')).toBeDisabled();\n });\n});\n`;
|
|
601
|
+
const content = type === "form" ? formTest : basicRender;
|
|
602
|
+
await this.fs.writeFile(testPath, content);
|
|
603
|
+
}
|
|
604
|
+
catch (error) {
|
|
605
|
+
console.log(chalk_1.default.yellow(` ⚠️ Failed to write tests for ${component?.name}: ${error instanceof Error ? error.message : String(error)}`));
|
|
606
|
+
}
|
|
607
|
+
}
|
|
320
608
|
async storeComponent(componentData) {
|
|
321
609
|
try {
|
|
610
|
+
// Skip storage entirely in local mode (no logs)
|
|
611
|
+
if (!componentData?.userId || componentData.userId === "local") {
|
|
612
|
+
return;
|
|
613
|
+
}
|
|
322
614
|
const API_BASE = process.env.MYCONTEXT_API_URL || "https://mycontext.fbien.com";
|
|
323
615
|
const response = await fetch(`${API_BASE}/api/components/store`, {
|
|
324
616
|
method: "POST",
|
|
@@ -327,16 +619,27 @@ class GenerateComponentsCommand {
|
|
|
327
619
|
},
|
|
328
620
|
body: JSON.stringify(componentData),
|
|
329
621
|
});
|
|
330
|
-
|
|
331
|
-
|
|
622
|
+
// Attempt to parse JSON only for authenticated users
|
|
623
|
+
let result = null;
|
|
624
|
+
try {
|
|
625
|
+
result = (await response.json());
|
|
626
|
+
}
|
|
627
|
+
catch {
|
|
628
|
+
// Non-JSON/empty body; treat as noop for authenticated flow
|
|
629
|
+
result = null;
|
|
630
|
+
}
|
|
631
|
+
if (result?.success) {
|
|
332
632
|
console.log(chalk_1.default.green(`💾 Component stored: ${componentData.name}`));
|
|
333
633
|
}
|
|
334
|
-
else {
|
|
634
|
+
else if (result && result.error) {
|
|
335
635
|
console.log(chalk_1.default.yellow(`⚠️ Failed to store component: ${result.error}`));
|
|
336
636
|
}
|
|
337
637
|
}
|
|
338
638
|
catch (error) {
|
|
339
|
-
|
|
639
|
+
// Only note storage issues when authenticated
|
|
640
|
+
if (componentData?.userId && componentData.userId !== "local") {
|
|
641
|
+
console.log(chalk_1.default.yellow(`⚠️ Component storage failed: ${error}`));
|
|
642
|
+
}
|
|
340
643
|
}
|
|
341
644
|
}
|
|
342
645
|
generateComponentCode(component, group, options) {
|
|
@@ -357,15 +660,25 @@ class GenerateComponentsCommand {
|
|
|
357
660
|
else {
|
|
358
661
|
// Structured component object
|
|
359
662
|
({
|
|
360
|
-
name,
|
|
361
|
-
description,
|
|
362
|
-
type,
|
|
363
|
-
userStories,
|
|
364
|
-
actionFunctions,
|
|
365
|
-
dependencies,
|
|
366
|
-
tags,
|
|
663
|
+
name = this.generateComponentName(String(component?.name || "Component")),
|
|
664
|
+
description = String(component?.description || ""),
|
|
665
|
+
type = String(component?.type || "form"),
|
|
666
|
+
userStories = [],
|
|
667
|
+
actionFunctions = [],
|
|
668
|
+
dependencies = [],
|
|
669
|
+
tags = [],
|
|
367
670
|
} = component);
|
|
368
671
|
}
|
|
672
|
+
// Ensure robust defaults for template rendering
|
|
673
|
+
if (!Array.isArray(userStories))
|
|
674
|
+
userStories = [];
|
|
675
|
+
if (!Array.isArray(actionFunctions))
|
|
676
|
+
actionFunctions = [];
|
|
677
|
+
if (!Array.isArray(dependencies))
|
|
678
|
+
dependencies = [];
|
|
679
|
+
if (!Array.isArray(tags))
|
|
680
|
+
tags = [];
|
|
681
|
+
type = String(type || "form");
|
|
369
682
|
// Read branding for styling
|
|
370
683
|
const brandingPath = "context/branding.json";
|
|
371
684
|
let branding = {};
|
|
@@ -663,7 +976,10 @@ export function ${func}() {
|
|
|
663
976
|
}
|
|
664
977
|
async generateGroupIndex(group, groupDir) {
|
|
665
978
|
const components = group.components || [];
|
|
666
|
-
const exports = components.map((comp) =>
|
|
979
|
+
const exports = components.map((comp) => {
|
|
980
|
+
const base = this.getComponentExportName(comp);
|
|
981
|
+
return `export { ${base} } from "./${base}";`;
|
|
982
|
+
});
|
|
667
983
|
const indexContent = `/**
|
|
668
984
|
* ${group.name} Components
|
|
669
985
|
*
|
|
@@ -685,7 +1001,10 @@ ${components
|
|
|
685
1001
|
const components = group.components || [];
|
|
686
1002
|
const previewContent = `import React from "react";
|
|
687
1003
|
${components
|
|
688
|
-
.map((comp) =>
|
|
1004
|
+
.map((comp) => {
|
|
1005
|
+
const base = this.getComponentExportName(comp);
|
|
1006
|
+
return `import { ${base} } from "./${base}";`;
|
|
1007
|
+
})
|
|
689
1008
|
.join("\n")}
|
|
690
1009
|
|
|
691
1010
|
export default function ${group.name}Preview() {
|
|
@@ -698,14 +1017,17 @@ export default function ${group.name}Preview() {
|
|
|
698
1017
|
|
|
699
1018
|
<div className="grid gap-8">
|
|
700
1019
|
${components
|
|
701
|
-
.map((comp) =>
|
|
1020
|
+
.map((comp) => {
|
|
1021
|
+
const base = this.getComponentExportName(comp);
|
|
1022
|
+
return `
|
|
702
1023
|
<section className="space-y-4">
|
|
703
|
-
<h2 className="text-2xl font-semibold">${
|
|
1024
|
+
<h2 className="text-2xl font-semibold">${base}</h2>
|
|
704
1025
|
<p className="text-muted-foreground">${comp.description}</p>
|
|
705
1026
|
<div className="border rounded-lg p-6 bg-card">
|
|
706
|
-
<${
|
|
1027
|
+
<${base} />
|
|
707
1028
|
</div>
|
|
708
|
-
</section
|
|
1029
|
+
</section>`;
|
|
1030
|
+
})
|
|
709
1031
|
.join("\n")}
|
|
710
1032
|
</div>
|
|
711
1033
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-components.js","sourceRoot":"","sources":["../../src/commands/generate-components.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,oDAAwD;AACxD,8CAAmD;AACnD,kDAA0B;AAC1B,6CAA+B;AAC/B,2CAA6B;AAkB7B,4BAA4B;AAC5B,MAAM,eAAe;IAArB;QACE,SAAI,GAAG,iBAAiB,CAAC;IAS3B,CAAC;IARC,KAAK,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAO;QAC1C,+CAA+C;QAC/C,OAAO,IAAI,yBAAyB,EAAE,CAAC,qBAAqB,CAC1D,SAAS,EACT,KAAK,EACL,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AAED,wCAAwC;AACxC,MAAM,UAAU;IAAhB;QAGE,SAAI,GAAG,YAAY,CAAC;IAMtB,CAAC;IALC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAoC;QAC7D,iFAAiF;QACjF,qCAAqC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,iDAAiD;AACjD,MAAM,YAAY;IAAlB;QACE,SAAI,GAAG,cAAc,CAAC;IAKxB,CAAC;IAJC,KAAK,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAkC;QAC5D,4DAA4D;QAC5D,OAAO,KAAK,SAAS,CAAC,IAAI,OAAO,SAAS,CAAC,WAAW,IAAI,CAAC;IAC7D,CAAC;CACF;AAED,qDAAqD;AAErD,MAAa,yBAAyB;IAAtC;QACU,OAAE,GAAG,IAAI,8BAAiB,EAAE,CAAC;IAwyBvC,CAAC;IAtyBC,KAAK,CAAC,OAAO,CACX,MAAc,EACd,OAAkC;QAElC,MAAM,OAAO,GAAG,IAAI,yBAAe,CAAC,sCAAsC,CAAC,CAAC;QAE5E,IAAI,CAAC;YACH,oDAAoD;YACpD,IAAI,QAAQ,GAAQ,IAAI,CAAC;YAEzB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,QAAQ,GAAC,CAAC;gBAC/C,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;gBAEtC,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACvC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC,CAAC;oBACxD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,wFAAwF,CAAC,CACrG,CAAC;oBACF,OAAO;gBACT,CAAC;gBAED,sCAAsC;gBACtC,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;oBAClD,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC,CAAC;gBACrF,QAAQ,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACjC,CAAC;YAED,mEAAmE;YACnE,MAAM,KAAK,GAAG,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC;YAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAE7C,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,SAAS,EAAE,CAAC;gBACrB,MAAM,IAAI,CAAC,sBAAsB,CAC/B,SAAS,EACT,OAAO,EACP,OAAO,EACP,QAAQ,CAAC,MAAM,CAChB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,OAAkC,EAClC,OAAwB,EACxB,MAAc;QAEd,OAAO,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC;QAEzD,sBAAsB;QACtB,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;QACxD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CACb,2EAA2E,CAC5E,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,IAAI,EAAE,CAAC;QAE1C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,8BAA8B;QAC9B,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC;QACrD,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAEvC,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,IAAI,eAAe,GAAG,CAAC,CAAC;QAExB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,UAAU,CAAC,cAAc,KAAK,CAAC,IAAI,gBAAgB,CAAC,CAAC;YAE7D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAElC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;YAC1C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,MAAM,IAAI,CAAC,iBAAiB,CAC1B,SAAS,EACT,KAAK,EACL,QAAQ,EACR,OAAO,EACP,MAAM,CACP,CAAC;gBACF,eAAe,EAAE,CAAC;YACpB,CAAC;YAED,4BAA4B;YAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAE/C,wBAAwB;YACxB,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAEhD,eAAe,EAAE,CAAC;QACpB,CAAC;QAED,OAAO,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,aAAa,eAAe,sBAAsB,eAAe,UAAU;SAClF,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,OAAO,aAAa,GAAG,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;YAC5B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;YAC9D,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;YAC1C,UAAU,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;gBAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,SAAiB,EACjB,OAAkC,EAClC,OAAwB,EACxB,MAAc;QAEd,OAAO,CAAC,UAAU,CAAC,cAAc,SAAS,gBAAgB,CAAC,CAAC;QAE5D,sBAAsB;QACtB,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;QACxD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CACb,2EAA2E,CAC5E,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,IAAI,EAAE,CAAC;QAE1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CACvB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAC7D,CAAC;QAEF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,oCAAoC,CAAC,CAAC;QAC3E,CAAC;QAED,yBAAyB;QACzB,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;QAC1C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5E,CAAC;QAED,4BAA4B;QAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAE/C,wBAAwB;QACxB,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEhD,OAAO,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,aAAa,UAAU,CAAC,MAAM,kBAAkB,KAAK,CAAC,IAAI,GAAG;SACpE,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC5C,UAAU,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;YAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,SAAc,EACd,KAAU,EACV,QAAgB,EAChB,OAAkC,EAClC,MAAc;QAEd,IAAI,CAAC;YACH,uDAAuD;YACvD,MAAM,EAAE,YAAY,EAAE,GAAG,wDACvB,6CAA6C,GAC9C,CAAC;YAEF,6CAA6C;YAC7C,IAAI,UAAU,CAAC;YACf,IAAI,CAAC;gBACH,UAAU,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC;oBAC/B,YAAY,CAAC,YAAY,CAAC,iBAAiB,EAAE;wBAC3C,SAAS;wBACT,KAAK;wBACL,OAAO,EAAE;4BACP,GAAG,OAAO;yBACX;qBACF,CAAC;oBACF,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CACxB,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,EAAE,KAAK,CAAC,CACzF;iBACF,CAAC,CAAoC,CAAC;YACzC,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;oBACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,qCAAqC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACjF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;oBAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;oBACnE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,IAAI,MAAM,CAAC,CAAC;oBACnE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;oBAE7C,qCAAqC;oBACrC,MAAM,IAAI,CAAC,cAAc,CAAC;wBACxB,MAAM;wBACN,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,IAAI;wBACJ,QAAQ,EAAE;4BACR,MAAM,EAAE,SAAS,CAAC,WAAW,IAAI,EAAE;4BACnC,KAAK,EAAE,kBAAkB;4BACzB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;4BACzB,YAAY,EAAE,IAAI;4BAClB,KAAK,EAAE,KAAK,CAAC,IAAI;yBAClB;wBACD,KAAK,EAAE,KAAK,CAAC,IAAI;wBACjB,YAAY,EAAE,IAAI;qBACnB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,IAAI,MAAM,CAAC,CAAC;YACnE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAExD,kCAAkC;YAClC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChD,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE;oBACtC,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,SAAS;oBACT,SAAS,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,eAAe,CAAC;iBACpD,CAAC;gBACF,YAAY,CAAC,YAAY,CAAC,cAAc,EAAE;oBACxC,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,SAAS;oBACT,MAAM,EAAE,QAAiB;iBAC1B,CAAC;aACH,CAAC,CAGD,CAAC;YAEF,sBAAsB;YACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,IAAI,KAAK,CAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;YAEtD,iBAAiB;YACjB,IAAI,QAAQ,CAAC,KAAK,GAAG,EAAE,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,MAAM,CACV,oBAAoB,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,MAAM,CAC5D,CACF,CAAC;gBACF,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CACT,kBAAkB,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,MAAM,CAC1D,CACF,CAAC;YACJ,CAAC;YAED,+BAA+B;YAC/B,MAAM,IAAI,CAAC,cAAc,CAAC;gBACxB,MAAM;gBACN,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,QAAQ,EAAE;oBACR,MAAM,EAAE,SAAS,CAAC,WAAW,IAAI,EAAE;oBACnC,KAAK,EAAE,eAAe;oBACtB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;oBACzB,YAAY,EAAE,QAAQ,CAAC,KAAK;oBAC5B,KAAK,EAAE,KAAK,CAAC,IAAI;oBACjB,YAAY,EAAE,UAAU,CAAC,QAAQ,EAAE,YAAY,IAAI,EAAE;oBACrD,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE;iBACtC;gBACD,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,YAAY,EAAE,QAAQ,CAAC,KAAK;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,wDAAwD;YACxD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,MAAM,CACV,mCAAmC,SAAS,CAAC,IAAI,yBAAyB,CAC3E,CACF,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YACnE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,IAAI,MAAM,CAAC,CAAC;YACnE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAE7C,qCAAqC;YACrC,MAAM,IAAI,CAAC,cAAc,CAAC;gBACxB,MAAM;gBACN,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI;gBACJ,QAAQ,EAAE;oBACR,MAAM,EAAE,SAAS,CAAC,WAAW,IAAI,EAAE;oBACnC,KAAK,EAAE,UAAU;oBACjB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;oBACzB,YAAY,EAAE,IAAI;oBAClB,KAAK,EAAE,KAAK,CAAC,IAAI;iBAClB;gBACD,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,aAO5B;QACC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,6BAA6B,CAAC;YAChF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,uBAAuB,EAAE;gBAC/D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;aACpC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAGpC,CAAC;YAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wBAAwB,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,MAAM,CAAC,kCAAkC,MAAM,CAAC,KAAK,EAAE,CAAC,CAC/D,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEM,qBAAqB,CAC1B,SAAc,EACd,KAAU,EACV,OAAkC;QAElC,uCAAuC;QACvC,IAAI,IAAI,EACN,WAAW,EACX,IAAI,EACJ,WAAW,EACX,eAAe,EACf,YAAY,EACZ,IAAI,CAAC;QAEP,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,2DAA2D;YAC3D,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAC7C,WAAW,GAAG,SAAS,CAAC;YACxB,IAAI,GAAG,MAAM,CAAC,CAAC,eAAe;YAC9B,WAAW,GAAG;gBACZ,4BAA4B,IAAI,OAAO,SAAS,CAAC,WAAW,EAAE,EAAE;aACjE,CAAC;YACF,eAAe,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YACnD,YAAY,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YACxC,IAAI,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,8BAA8B;YAC9B,CAAC;gBACC,IAAI;gBACJ,WAAW;gBACX,IAAI;gBACJ,WAAW;gBACX,eAAe;gBACf,YAAY;gBACZ,IAAI;aACL,GAAG,SAAS,CAAC,CAAC;QACjB,CAAC;QAED,4BAA4B;QAC5B,MAAM,YAAY,GAAG,uBAAuB,CAAC;QAC7C,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6CAA6C;QAC/C,CAAC;QAED,OAAO;;;;;;KAMN,IAAI;;KAEJ,WAAW;;;EAGd,WAAW,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAG9D,eAAe,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;mBAE/C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;WAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;;;YAGd,IAAI;;;IAGZ,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;;;kBAGjB,IAAI;;IAElB,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;;KAEpC,IAAI;IACL,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,eAAe,CAAC;;;0BAG5B,IAAI,CAAC,mBAAmB,CAC5C,IAAI,EACJ,QAAQ,CACT;QACG,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;;;;;EAK3C,IAAI,CAAC,uBAAuB,CAAC,eAAe,EAAE,IAAI,CAAC;;iBAEpC,IAAI;CACpB,CAAC;IACA,CAAC;IAEO,qBAAqB,CAAC,WAAmB;QAC/C,mDAAmD;QACnD,OAAO,WAAW;aACf,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACzE,IAAI,CAAC,EAAE,CAAC;aACR,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAEO,oBAAoB,CAAC,IAAY;QACvC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;;kBAGG,CAAC;YACb,KAAK,QAAQ;gBACX,OAAO;;6BAEc,CAAC;YACxB,KAAK,MAAM;gBACT,OAAO;;;6BAGc,CAAC;YACxB,KAAK,QAAQ;gBACX,OAAO;;;;wBAIS,CAAC;YACnB;gBACE,OAAO;uCACwB,CAAC;QACpC,CAAC;IACH,CAAC;IAEO,0BAA0B,CAAC,IAAY;QAC7C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;;SAGN,CAAC;YACJ,KAAK,QAAQ;gBACX,OAAO;;WAEJ,CAAC;YACN,KAAK,MAAM;gBACT,OAAO;;;WAGJ,CAAC;YACN,KAAK,QAAQ;gBACX,OAAO;;;;WAIJ,CAAC;YACN;gBACE,OAAO,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAEO,sBAAsB,CAC5B,IAAY,EACZ,eAAyB;QAEzB,MAAM,KAAK,GAAG,EAAE,CAAC;QAEjB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC;;iEAEgD,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC;;;;;;;;;;;;KAYZ,CAAC,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,mBAAmB,CAAC,IAAY,EAAE,QAAa;QACrD,MAAM,WAAW,GAAG,EAAE,CAAC;QAEvB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACpD,MAAM;YACR,KAAK,QAAQ;gBACX,WAAW,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;gBACrD,MAAM;YACR,KAAK,MAAM;gBACT,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;gBACxE,MAAM;YACR,KAAK,QAAQ;gBACX,WAAW,CAAC,IAAI,CACd,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,4BAA4B,EAC5B,sBAAsB,EACtB,yBAAyB,EACzB,6BAA6B,EAC7B,qBAAqB,EACrB,8BAA8B,CAC/B,CAAC;gBACF,MAAM;YACR;gBACE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAEO,oBAAoB,CAAC,IAAY,EAAE,IAAY;QACrD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAsCD,CAAC;YACT,KAAK,QAAQ;gBACX,OAAO;;;+CAGgC,IAAI;;;;;;;;;;;;gBAYnC,CAAC;YACX,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;SAeN,CAAC;YACJ,KAAK,QAAQ;gBACX,OAAO;kCACmB,IAAI;cACxB,IAAI,SAAS,CAAC;YACtB;gBACE,OAAO;;gDAEiC,IAAI;;sBAE9B,IAAI;;aAEb,CAAC;QACV,CAAC;IACH,CAAC;IAEO,uBAAuB,CAC7B,eAAyB,EACzB,aAAqB;QAErB,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAE5C,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7C,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,cAAc;oBACjB,OAAO,2CAA2C,CAAC;gBACrD,KAAK,aAAa;oBAChB,OAAO;;;;;EAKf,CAAC;gBACK,KAAK,cAAc;oBACjB,OAAO;;;;;EAKf,CAAC;gBACK,KAAK,eAAe;oBAClB,OAAO;;;;EAIf,CAAC;gBACK,KAAK,eAAe;oBAClB,OAAO;;;;;EAKf,CAAC;gBACK;oBACE,OAAO;kBACC,IAAI;uBACC,IAAI;iBACV,IAAI;EACnB,CAAC;YACG,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,KAAU,EACV,QAAgB;QAEhB,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAC5B,CAAC,IAAS,EAAE,EAAE,CAAC,YAAY,IAAI,CAAC,IAAI,cAAc,IAAI,CAAC,IAAI,IAAI,CAChE,CAAC;QAEF,MAAM,YAAY,GAAG;KACpB,KAAK,CAAC,IAAI;;KAEV,KAAK,CAAC,WAAW;;2BAEK,UAAU,CAAC,MAAM;;;EAG1C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAGlB,UAAU;aACT,GAAG,CACF,CAAC,IAAS,EAAE,EAAE,CACZ,uBAAuB,IAAI,CAAC,IAAI,qBAAqB,IAAI,CAAC,IAAI,IAAI,CACrE;aACA,IAAI,CAAC,IAAI,CAAC;CACZ,CAAC;QAEE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;IACzE,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,KAAU,EACV,QAAgB;QAEhB,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;QAE1C,MAAM,cAAc,GAAG;EACzB,UAAU;aACT,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,YAAY,IAAI,CAAC,IAAI,cAAc,IAAI,CAAC,IAAI,IAAI,CAAC;aACpE,IAAI,CAAC,IAAI,CAAC;;0BAEa,KAAK,CAAC,IAAI;;;;kDAIc,KAAK,CAAC,IAAI;+CACb,KAAK,CAAC,WAAW;;;;EAI9D,UAAU;aACT,GAAG,CACF,CAAC,IAAS,EAAE,EAAE,CAAC;;mDAEgC,IAAI,CAAC,IAAI;iDACX,IAAI,CAAC,WAAW;;eAElD,IAAI,CAAC,IAAI;;mBAEL,CAChB;aACA,IAAI,CAAC,IAAI,CAAC;;;;;CAKZ,CAAC;QAEE,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC;IAC3E,CAAC;CACF;AAzyBD,8DAyyBC"}
|
|
1
|
+
{"version":3,"file":"generate-components.js","sourceRoot":"","sources":["../../src/commands/generate-components.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,20 +3,32 @@ interface GenerateOptions extends CommandOptions {
|
|
|
3
3
|
type?: "context" | "types" | "brand" | "components-list" | "all";
|
|
4
4
|
output?: string;
|
|
5
5
|
force?: boolean;
|
|
6
|
+
description?: string;
|
|
7
|
+
contextFile?: string;
|
|
8
|
+
model?: string;
|
|
9
|
+
modelCandidates?: string[] | string;
|
|
6
10
|
}
|
|
7
11
|
export declare class GenerateCommand {
|
|
8
12
|
private fs;
|
|
9
13
|
private spinner;
|
|
10
|
-
private
|
|
14
|
+
private ai;
|
|
11
15
|
constructor();
|
|
12
16
|
execute(options: GenerateOptions): Promise<void>;
|
|
13
17
|
getProjectContext(): Promise<any>;
|
|
18
|
+
private resolveInputContext;
|
|
14
19
|
generateContext(projectContext: any, options: GenerateOptions): Promise<GenerationResult>;
|
|
15
20
|
generateTypes(projectContext: any, options: GenerateOptions): Promise<GenerationResult>;
|
|
21
|
+
private sanitizeTypeScriptOutput;
|
|
16
22
|
generateBrand(projectContext: any, options: GenerateOptions): Promise<GenerationResult>;
|
|
17
23
|
generateComponentList(projectContext: any, options: GenerateOptions): Promise<GenerationResult>;
|
|
24
|
+
private buildFallbackComponentList;
|
|
18
25
|
private promptForType;
|
|
19
26
|
private saveGeneratedContent;
|
|
27
|
+
private mergeComponentLists;
|
|
28
|
+
private mergeComponentsByName;
|
|
29
|
+
private sanitizeMarkdownOutput;
|
|
30
|
+
private extractJson;
|
|
31
|
+
private getModelCandidates;
|
|
20
32
|
}
|
|
21
33
|
export {};
|
|
22
34
|
//# sourceMappingURL=generate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAqB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AA2F/E,UAAU,eAAgB,SAAQ,cAAc;IAC9C,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,iBAAiB,GAAG,KAAK,CAAC;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;CACrC;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,EAAE,CAA2B;IACrC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,EAAE,CAAiB;;IAOrB,OAAO,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA+JhD,iBAAiB;YAYT,mBAAmB;IAgB3B,eAAe,CACnB,cAAc,EAAE,GAAG,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAuCtB,aAAa,CACjB,cAAc,EAAE,GAAG,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAuC5B,OAAO,CAAC,wBAAwB;IA4B1B,aAAa,CACjB,cAAc,EAAE,GAAG,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAuCtB,qBAAqB,CACzB,cAAc,EAAE,GAAG,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAmE5B,OAAO,CAAC,0BAA0B;YAqCpB,aAAa;YAiBb,oBAAoB;IAuDlC,OAAO,CAAC,mBAAmB;IAuC3B,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,WAAW;IAoCnB,OAAO,CAAC,kBAAkB;CA6C3B"}
|