mycontext-cli 2.0.25 → 2.0.27
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 +184 -37
- package/dist/cli.js +92 -80
- package/dist/cli.js.map +1 -1
- package/dist/commands/build-app.d.ts +6 -1
- package/dist/commands/build-app.d.ts.map +1 -1
- package/dist/commands/build-app.js +97 -9
- package/dist/commands/build-app.js.map +1 -1
- package/dist/commands/compile-prd.d.ts.map +1 -1
- package/dist/commands/compile-prd.js +7 -0
- package/dist/commands/compile-prd.js.map +1 -1
- package/dist/commands/export-progress.d.ts +34 -0
- package/dist/commands/export-progress.d.ts.map +1 -0
- package/dist/commands/export-progress.js +552 -0
- package/dist/commands/export-progress.js.map +1 -0
- package/dist/commands/generate-context-files.d.ts.map +1 -1
- package/dist/commands/generate-context-files.js +10 -2
- package/dist/commands/generate-context-files.js.map +1 -1
- package/dist/commands/generate.d.ts +8 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +212 -0
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/help.d.ts +17 -0
- package/dist/commands/help.d.ts.map +1 -0
- package/dist/commands/help.js +329 -0
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/import-project-plan.d.ts +27 -0
- package/dist/commands/import-project-plan.d.ts.map +1 -0
- package/dist/commands/import-project-plan.js +411 -0
- package/dist/commands/import-project-plan.js.map +1 -0
- package/dist/commands/pm-integration.d.ts +18 -0
- package/dist/commands/pm-integration.d.ts.map +1 -0
- package/dist/commands/pm-integration.js +385 -0
- package/dist/commands/pm-integration.js.map +1 -0
- package/dist/commands/setup-complete.d.ts +16 -0
- package/dist/commands/setup-complete.d.ts.map +1 -0
- package/dist/commands/setup-complete.js +468 -0
- package/dist/commands/setup-complete.js.map +1 -0
- package/dist/commands/setup-shadcn.d.ts +20 -0
- package/dist/commands/setup-shadcn.d.ts.map +1 -0
- package/dist/commands/setup-shadcn.js +241 -0
- package/dist/commands/setup-shadcn.js.map +1 -0
- package/dist/commands/suggest.d.ts +15 -0
- package/dist/commands/suggest.d.ts.map +1 -0
- package/dist/commands/suggest.js +288 -0
- package/dist/commands/suggest.js.map +1 -0
- package/dist/commands/update.d.ts +0 -4
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +7 -197
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/workflow.d.ts +16 -0
- package/dist/commands/workflow.d.ts.map +1 -0
- package/dist/commands/workflow.js +464 -0
- package/dist/commands/workflow.js.map +1 -0
- package/dist/package.json +1 -1
- package/dist/services/PMIntegrationService.d.ts +46 -0
- package/dist/services/PMIntegrationService.d.ts.map +1 -0
- package/dist/services/PMIntegrationService.js +363 -0
- package/dist/services/PMIntegrationService.js.map +1 -0
- package/dist/services/WebhookServer.d.ts +37 -0
- package/dist/services/WebhookServer.d.ts.map +1 -0
- package/dist/services/WebhookServer.js +231 -0
- package/dist/services/WebhookServer.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/pm-integration.d.ts +241 -0
- package/dist/types/pm-integration.d.ts.map +1 -0
- package/dist/types/pm-integration.js +24 -0
- package/dist/types/pm-integration.js.map +1 -0
- package/dist/utils/NextJSProjectValidator.d.ts.map +1 -1
- package/dist/utils/NextJSProjectValidator.js +14 -7
- package/dist/utils/NextJSProjectValidator.js.map +1 -1
- package/dist/utils/ProjectStateAnalyzer.d.ts +46 -0
- package/dist/utils/ProjectStateAnalyzer.d.ts.map +1 -0
- package/dist/utils/ProjectStateAnalyzer.js +311 -0
- package/dist/utils/ProjectStateAnalyzer.js.map +1 -0
- package/dist/utils/ProjectStructureValidator.d.ts +12 -0
- package/dist/utils/ProjectStructureValidator.d.ts.map +1 -1
- package/dist/utils/ProjectStructureValidator.js +111 -14
- package/dist/utils/ProjectStructureValidator.js.map +1 -1
- package/dist/utils/claudeAgentClient.d.ts +4 -0
- package/dist/utils/claudeAgentClient.d.ts.map +1 -1
- package/dist/utils/claudeAgentClient.js +90 -20
- package/dist/utils/claudeAgentClient.js.map +1 -1
- package/dist/utils/errorHandler.d.ts +31 -74
- package/dist/utils/errorHandler.d.ts.map +1 -1
- package/dist/utils/errorHandler.js +190 -276
- package/dist/utils/errorHandler.js.map +1 -1
- package/dist/utils/hybridAIClient.js +1 -1
- package/dist/utils/hybridAIClient.js.map +1 -1
- package/dist/utils/mcpTools.d.ts +9 -9
- package/dist/utils/nextStepsSuggester.d.ts +52 -0
- package/dist/utils/nextStepsSuggester.d.ts.map +1 -0
- package/dist/utils/nextStepsSuggester.js +438 -0
- package/dist/utils/nextStepsSuggester.js.map +1 -0
- package/dist/utils/progress.d.ts +31 -1
- package/dist/utils/progress.d.ts.map +1 -1
- package/dist/utils/progress.js +110 -2
- package/dist/utils/progress.js.map +1 -1
- package/dist/utils/workflowEngine.d.ts +96 -0
- package/dist/utils/workflowEngine.d.ts.map +1 -0
- package/dist/utils/workflowEngine.js +793 -0
- package/dist/utils/workflowEngine.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,468 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Setup Complete Command
|
|
3
|
+
// Single-command guided setup for complete project initialization
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
+
var ownKeys = function(o) {
|
|
22
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
+
var ar = [];
|
|
24
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
+
return ar;
|
|
26
|
+
};
|
|
27
|
+
return ownKeys(o);
|
|
28
|
+
};
|
|
29
|
+
return function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
38
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.SetupCompleteCommand = void 0;
|
|
42
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
43
|
+
const prompts_1 = __importDefault(require("prompts"));
|
|
44
|
+
const path_1 = __importDefault(require("path"));
|
|
45
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
46
|
+
const generate_context_files_1 = require("./generate-context-files");
|
|
47
|
+
const generate_1 = require("./generate");
|
|
48
|
+
const progress_1 = require("../utils/progress");
|
|
49
|
+
const spinner_1 = require("../utils/spinner");
|
|
50
|
+
class SetupCompleteCommand {
|
|
51
|
+
constructor() {
|
|
52
|
+
this.spinner = new spinner_1.EnhancedSpinner("Setting up project...");
|
|
53
|
+
}
|
|
54
|
+
register(program) {
|
|
55
|
+
program
|
|
56
|
+
.command("setup-complete")
|
|
57
|
+
.description("Complete guided project setup with AI assistance")
|
|
58
|
+
.option("-d, --description <text>", "Project description")
|
|
59
|
+
.option("-n, --name <name>", "Project name")
|
|
60
|
+
.option("-o, --output <dir>", "Output directory")
|
|
61
|
+
.option("--force", "Overwrite existing files without confirmation")
|
|
62
|
+
.option("--interactive", "Force interactive mode")
|
|
63
|
+
.option("--auto-continue", "Continue to component generation automatically")
|
|
64
|
+
.option("--skip-confirmation", "Skip confirmation prompts")
|
|
65
|
+
.action(async (options) => {
|
|
66
|
+
await this.execute(options);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
async execute(options) {
|
|
70
|
+
try {
|
|
71
|
+
console.log(chalk_1.default.blue.bold("🚀 MyContext Complete Project Setup\n"));
|
|
72
|
+
console.log("This guided setup will create your complete project structure with AI assistance.\n");
|
|
73
|
+
// Get project preferences
|
|
74
|
+
const preferences = await this.gatherProjectPreferences(options);
|
|
75
|
+
// Confirm setup
|
|
76
|
+
if (!options.skipConfirmation) {
|
|
77
|
+
await this.confirmSetup(preferences);
|
|
78
|
+
}
|
|
79
|
+
// Execute complete setup workflow
|
|
80
|
+
await this.executeCompleteSetup(preferences, options);
|
|
81
|
+
// Show success and next steps
|
|
82
|
+
await this.showSetupComplete(preferences);
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
console.error(chalk_1.default.red("❌ Setup failed:"), error);
|
|
86
|
+
console.log(chalk_1.default.yellow("\n💡 Troubleshooting:"));
|
|
87
|
+
console.log(" • Check your internet connection for AI services");
|
|
88
|
+
console.log(" • Verify API keys are configured");
|
|
89
|
+
console.log(" • Try with --force to overwrite existing files");
|
|
90
|
+
console.log(" • Use --interactive for guided setup");
|
|
91
|
+
throw error;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async gatherProjectPreferences(options) {
|
|
95
|
+
// If all options provided and not interactive, use them directly
|
|
96
|
+
if (options.description && options.name && !options.interactive) {
|
|
97
|
+
return {
|
|
98
|
+
name: options.name,
|
|
99
|
+
description: options.description,
|
|
100
|
+
type: "moderate", // default
|
|
101
|
+
techStack: ["Next.js", "TypeScript", "Tailwind CSS"],
|
|
102
|
+
features: ["responsive", "modern"],
|
|
103
|
+
timeline: "standard",
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
console.log(chalk_1.default.cyan("📋 Let's gather some information about your project:\n"));
|
|
107
|
+
// Project name
|
|
108
|
+
const nameResponse = await (0, prompts_1.default)({
|
|
109
|
+
type: "text",
|
|
110
|
+
name: "name",
|
|
111
|
+
message: "Project name:",
|
|
112
|
+
initial: options.name || "my-awesome-app",
|
|
113
|
+
validate: (value) => value.length >= 2 || "Project name must be at least 2 characters",
|
|
114
|
+
});
|
|
115
|
+
// Project description
|
|
116
|
+
const descriptionResponse = await (0, prompts_1.default)({
|
|
117
|
+
type: "text",
|
|
118
|
+
name: "description",
|
|
119
|
+
message: "Describe your project:",
|
|
120
|
+
initial: options.description || "",
|
|
121
|
+
validate: (value) => value.length >= 10 ||
|
|
122
|
+
"Please provide a detailed description (at least 10 characters)",
|
|
123
|
+
});
|
|
124
|
+
// Project complexity
|
|
125
|
+
const complexityResponse = await (0, prompts_1.default)({
|
|
126
|
+
type: "select",
|
|
127
|
+
name: "type",
|
|
128
|
+
message: "Project complexity:",
|
|
129
|
+
choices: [
|
|
130
|
+
{
|
|
131
|
+
title: "Simple (landing page, blog, portfolio)",
|
|
132
|
+
value: "simple",
|
|
133
|
+
description: "Basic website with 5-10 components",
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
title: "Moderate (dashboard, e-commerce, SaaS)",
|
|
137
|
+
value: "moderate",
|
|
138
|
+
description: "Full application with 15-25 components",
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
title: "Complex (social platform, LMS, marketplace)",
|
|
142
|
+
value: "complex",
|
|
143
|
+
description: "Advanced application with 30+ components",
|
|
144
|
+
},
|
|
145
|
+
],
|
|
146
|
+
});
|
|
147
|
+
// Tech stack preferences
|
|
148
|
+
const techStackResponse = await (0, prompts_1.default)({
|
|
149
|
+
type: "multiselect",
|
|
150
|
+
name: "techStack",
|
|
151
|
+
message: "Select your preferred technologies:",
|
|
152
|
+
choices: [
|
|
153
|
+
{ title: "Next.js", value: "Next.js", selected: true },
|
|
154
|
+
{ title: "React", value: "React" },
|
|
155
|
+
{ title: "TypeScript", value: "TypeScript", selected: true },
|
|
156
|
+
{ title: "Tailwind CSS", value: "Tailwind CSS", selected: true },
|
|
157
|
+
{ title: "Prisma", value: "Prisma" },
|
|
158
|
+
{ title: "NextAuth.js", value: "NextAuth.js" },
|
|
159
|
+
{ title: "Stripe", value: "Stripe" },
|
|
160
|
+
{ title: "Supabase", value: "Supabase" },
|
|
161
|
+
],
|
|
162
|
+
min: 1,
|
|
163
|
+
hint: "Use space to select, enter to confirm",
|
|
164
|
+
});
|
|
165
|
+
// Timeline preference
|
|
166
|
+
const timelineResponse = await (0, prompts_1.default)({
|
|
167
|
+
type: "select",
|
|
168
|
+
name: "timeline",
|
|
169
|
+
message: "Development timeline:",
|
|
170
|
+
choices: [
|
|
171
|
+
{ title: "Quick (1-2 weeks)", value: "quick" },
|
|
172
|
+
{ title: "Standard (2-4 weeks)", value: "standard", selected: true },
|
|
173
|
+
{ title: "Extended (1-3 months)", value: "extended" },
|
|
174
|
+
],
|
|
175
|
+
});
|
|
176
|
+
return {
|
|
177
|
+
name: nameResponse.name,
|
|
178
|
+
description: descriptionResponse.description,
|
|
179
|
+
type: complexityResponse.type,
|
|
180
|
+
techStack: techStackResponse.techStack,
|
|
181
|
+
features: this.getDefaultFeatures(complexityResponse.type),
|
|
182
|
+
timeline: timelineResponse.timeline,
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
getDefaultFeatures(type) {
|
|
186
|
+
const baseFeatures = ["responsive", "accessible"];
|
|
187
|
+
switch (type) {
|
|
188
|
+
case "simple":
|
|
189
|
+
return [...baseFeatures, "fast", "seo-friendly"];
|
|
190
|
+
case "moderate":
|
|
191
|
+
return [...baseFeatures, "interactive", "data-driven", "user-accounts"];
|
|
192
|
+
case "complex":
|
|
193
|
+
return [
|
|
194
|
+
...baseFeatures,
|
|
195
|
+
"real-time",
|
|
196
|
+
"multi-tenant",
|
|
197
|
+
"advanced-analytics",
|
|
198
|
+
"api-driven",
|
|
199
|
+
];
|
|
200
|
+
default:
|
|
201
|
+
return baseFeatures;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
async confirmSetup(preferences) {
|
|
205
|
+
console.log(chalk_1.default.cyan("\n📋 Setup Summary:"));
|
|
206
|
+
console.log(` Project: ${chalk_1.default.white(preferences.name)}`);
|
|
207
|
+
console.log(` Type: ${chalk_1.default.white(preferences.type)}`);
|
|
208
|
+
console.log(` Tech Stack: ${chalk_1.default.white(preferences.techStack.join(", "))}`);
|
|
209
|
+
console.log(` Timeline: ${chalk_1.default.white(preferences.timeline)}`);
|
|
210
|
+
console.log(` Key Features: ${chalk_1.default.white(preferences.features.join(", "))}`);
|
|
211
|
+
console.log("");
|
|
212
|
+
const confirmResponse = await (0, prompts_1.default)({
|
|
213
|
+
type: "confirm",
|
|
214
|
+
name: "confirm",
|
|
215
|
+
message: "Ready to create this project?",
|
|
216
|
+
initial: true,
|
|
217
|
+
});
|
|
218
|
+
if (!confirmResponse.confirm) {
|
|
219
|
+
console.log(chalk_1.default.yellow("Setup cancelled."));
|
|
220
|
+
process.exit(0);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
async executeCompleteSetup(preferences, options) {
|
|
224
|
+
const outputDir = options.output || preferences.name;
|
|
225
|
+
const projectPath = path_1.default.resolve(outputDir);
|
|
226
|
+
// Initialize progress tracker with enhanced features
|
|
227
|
+
const progressTracker = new progress_1.ProgressTracker("Complete Project Setup");
|
|
228
|
+
progressTracker
|
|
229
|
+
.addStep("init", "Initialize project structure", 2000)
|
|
230
|
+
.addStep("context", "Generate context files", 8000)
|
|
231
|
+
.addStep("architecture", "Generate project architecture", 15000)
|
|
232
|
+
.addStep("components", "Generate components", 20000);
|
|
233
|
+
console.log(chalk_1.default.blue.bold(`\n🏗️ Creating project: ${preferences.name}`));
|
|
234
|
+
console.log(chalk_1.default.gray(`Location: ${projectPath}`));
|
|
235
|
+
console.log(chalk_1.default.gray(`Estimated time: ~${this.estimateTotalTime(preferences)} minutes\n`));
|
|
236
|
+
// Start real-time progress updates
|
|
237
|
+
const progressInterval = progressTracker.startProgressUpdates(3000);
|
|
238
|
+
// Check if directory exists
|
|
239
|
+
if ((await fs_extra_1.default.pathExists(projectPath)) && !options.force) {
|
|
240
|
+
const overwriteResponse = await (0, prompts_1.default)({
|
|
241
|
+
type: "confirm",
|
|
242
|
+
name: "overwrite",
|
|
243
|
+
message: `Directory ${outputDir} already exists. Overwrite?`,
|
|
244
|
+
initial: false,
|
|
245
|
+
});
|
|
246
|
+
if (!overwriteResponse.overwrite) {
|
|
247
|
+
console.log(chalk_1.default.yellow("Setup cancelled."));
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
try {
|
|
252
|
+
// Step 1: Initialize project
|
|
253
|
+
progressTracker.startStep("init");
|
|
254
|
+
console.log(chalk_1.default.cyan("📁 Step 1: Initializing project structure..."));
|
|
255
|
+
// Create project directory
|
|
256
|
+
await fs_extra_1.default.ensureDir(projectPath);
|
|
257
|
+
process.chdir(projectPath);
|
|
258
|
+
// Create basic package.json
|
|
259
|
+
const packageJson = {
|
|
260
|
+
name: preferences.name.toLowerCase().replace(/\s+/g, "-"),
|
|
261
|
+
version: "0.1.0",
|
|
262
|
+
description: preferences.description,
|
|
263
|
+
scripts: {
|
|
264
|
+
dev: "next dev",
|
|
265
|
+
build: "next build",
|
|
266
|
+
start: "next start",
|
|
267
|
+
lint: "next lint",
|
|
268
|
+
},
|
|
269
|
+
dependencies: {},
|
|
270
|
+
devDependencies: {},
|
|
271
|
+
};
|
|
272
|
+
await fs_extra_1.default.writeJson("package.json", packageJson, { spaces: 2 });
|
|
273
|
+
progressTracker.completeStep("init", "✅ Project initialized");
|
|
274
|
+
console.log(chalk_1.default.gray(` Created project structure`));
|
|
275
|
+
// Step 2: Generate context files
|
|
276
|
+
progressTracker.startStep("context");
|
|
277
|
+
console.log(chalk_1.default.cyan("📝 Step 2: Generating context files..."));
|
|
278
|
+
const contextDescription = this.buildContextDescription(preferences);
|
|
279
|
+
const contextCommand = new generate_context_files_1.GenerateContextFilesCommand();
|
|
280
|
+
await contextCommand.execute({
|
|
281
|
+
description: contextDescription,
|
|
282
|
+
projectPath: projectPath,
|
|
283
|
+
verbose: false,
|
|
284
|
+
force: true,
|
|
285
|
+
});
|
|
286
|
+
progressTracker.completeStep("context", "✅ Context files generated");
|
|
287
|
+
console.log(chalk_1.default.gray(` Generated PRD and feature specifications`));
|
|
288
|
+
// Step 3: Generate architecture
|
|
289
|
+
progressTracker.startStep("architecture");
|
|
290
|
+
console.log(chalk_1.default.cyan("🏗️ Step 3: Generating project architecture..."));
|
|
291
|
+
const generateCommand = new generate_1.GenerateCommand();
|
|
292
|
+
await generateCommand.execute({
|
|
293
|
+
type: "architecture",
|
|
294
|
+
description: contextDescription,
|
|
295
|
+
output: path_1.default.join(projectPath, ".mycontext"),
|
|
296
|
+
autoContinue: options.autoContinue || false,
|
|
297
|
+
force: true,
|
|
298
|
+
});
|
|
299
|
+
progressTracker.completeStep("architecture", "✅ Architecture generated");
|
|
300
|
+
console.log(chalk_1.default.gray(` Generated types, components, and project structure`));
|
|
301
|
+
// Step 4: Generate components (if auto-continue enabled)
|
|
302
|
+
if (options.autoContinue) {
|
|
303
|
+
progressTracker.startStep("components");
|
|
304
|
+
console.log(chalk_1.default.cyan("🧩 Step 4: Generating components..."));
|
|
305
|
+
const { GenerateComponentsCommand } = await Promise.resolve().then(() => __importStar(require("./generate-components")));
|
|
306
|
+
const generateComponentsCommand = new GenerateComponentsCommand();
|
|
307
|
+
await generateComponentsCommand.execute("all", {
|
|
308
|
+
withTests: true,
|
|
309
|
+
all: true,
|
|
310
|
+
});
|
|
311
|
+
progressTracker.completeStep("components", "✅ Components generated");
|
|
312
|
+
console.log(chalk_1.default.gray(` Generated component implementations`));
|
|
313
|
+
}
|
|
314
|
+
// Show final progress
|
|
315
|
+
clearInterval(progressInterval);
|
|
316
|
+
console.log(chalk_1.default.gray(`\n📊 ${progressTracker.getDetailedProgress()}`));
|
|
317
|
+
}
|
|
318
|
+
catch (error) {
|
|
319
|
+
// Clean up progress interval
|
|
320
|
+
clearInterval(progressInterval);
|
|
321
|
+
// Note: We don't have a getCurrentStep method, so we'll use a generic failure message
|
|
322
|
+
console.error(chalk_1.default.red("❌ Setup failed:"), error);
|
|
323
|
+
throw error;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
estimateTotalTime(preferences) {
|
|
327
|
+
// Base time estimates in minutes
|
|
328
|
+
const baseTimes = {
|
|
329
|
+
simple: 3,
|
|
330
|
+
moderate: 5,
|
|
331
|
+
complex: 8,
|
|
332
|
+
};
|
|
333
|
+
let totalMinutes = baseTimes[preferences.type];
|
|
334
|
+
// Add time for component generation if auto-continue is enabled
|
|
335
|
+
if (preferences.features.includes("interactive") ||
|
|
336
|
+
preferences.features.includes("real-time")) {
|
|
337
|
+
totalMinutes += 2;
|
|
338
|
+
}
|
|
339
|
+
// Add time for complex tech stacks
|
|
340
|
+
if (preferences.techStack.length > 4) {
|
|
341
|
+
totalMinutes += 1;
|
|
342
|
+
}
|
|
343
|
+
return Math.ceil(totalMinutes);
|
|
344
|
+
}
|
|
345
|
+
buildContextDescription(preferences) {
|
|
346
|
+
const typeDescriptions = {
|
|
347
|
+
simple: "a simple, clean website",
|
|
348
|
+
moderate: "a full-featured web application",
|
|
349
|
+
complex: "an advanced, scalable web platform",
|
|
350
|
+
};
|
|
351
|
+
return `Create ${typeDescriptions[preferences.type]} called "${preferences.name}" with the following requirements:
|
|
352
|
+
|
|
353
|
+
Project Description: ${preferences.description}
|
|
354
|
+
|
|
355
|
+
Technical Requirements:
|
|
356
|
+
• Tech Stack: ${preferences.techStack.join(", ")}
|
|
357
|
+
• Complexity Level: ${preferences.type}
|
|
358
|
+
• Key Features: ${preferences.features.join(", ")}
|
|
359
|
+
• Timeline: ${preferences.timeline}
|
|
360
|
+
|
|
361
|
+
Please generate comprehensive context files that will guide the development of this ${preferences.type} project using modern best practices and the specified technology stack.`;
|
|
362
|
+
}
|
|
363
|
+
async showSetupComplete(preferences) {
|
|
364
|
+
const projectPath = path_1.default.resolve(preferences.name);
|
|
365
|
+
console.log(chalk_1.default.green.bold(`\n🎉 Project "${preferences.name}" setup complete!`));
|
|
366
|
+
console.log("");
|
|
367
|
+
console.log(chalk_1.default.cyan("📁 Project Structure:"));
|
|
368
|
+
console.log(` Location: ${chalk_1.default.white(projectPath)}`);
|
|
369
|
+
console.log(` Type: ${chalk_1.default.white(preferences.type)} application`);
|
|
370
|
+
console.log(` Tech Stack: ${chalk_1.default.white(preferences.techStack.join(", "))}`);
|
|
371
|
+
console.log("");
|
|
372
|
+
console.log(chalk_1.default.cyan("📋 Generated Files:"));
|
|
373
|
+
console.log(" • PRD and feature specifications");
|
|
374
|
+
console.log(" • TypeScript type definitions");
|
|
375
|
+
console.log(" • Component architecture");
|
|
376
|
+
console.log(" • Project structure");
|
|
377
|
+
if (preferences.type === "moderate" || preferences.type === "complex") {
|
|
378
|
+
console.log(" • Brand guidelines");
|
|
379
|
+
}
|
|
380
|
+
console.log("");
|
|
381
|
+
console.log(chalk_1.default.cyan("🚀 Next Steps:"));
|
|
382
|
+
// Change to project directory
|
|
383
|
+
console.log(` ${chalk_1.default.cyan(`cd ${preferences.name}`)}`);
|
|
384
|
+
// Install dependencies
|
|
385
|
+
console.log(` ${chalk_1.default.cyan("pnpm install")} # Install dependencies`);
|
|
386
|
+
// Start development
|
|
387
|
+
console.log(` ${chalk_1.default.cyan("pnpm dev")} # Start development server`);
|
|
388
|
+
if (!preferences.techStack.includes("Next.js")) {
|
|
389
|
+
console.log(` ${chalk_1.default.cyan("npm run dev")} # Alternative start command`);
|
|
390
|
+
}
|
|
391
|
+
console.log("");
|
|
392
|
+
console.log(chalk_1.default.cyan("🔧 Development Commands:"));
|
|
393
|
+
console.log(` ${chalk_1.default.gray("mycontext generate components")} # Generate more components`);
|
|
394
|
+
console.log(` ${chalk_1.default.gray("mycontext build-app")} # Build complete application`);
|
|
395
|
+
console.log(` ${chalk_1.default.gray("mycontext preview components")} # Preview generated components`);
|
|
396
|
+
console.log("");
|
|
397
|
+
console.log(chalk_1.default.green("💡 Tip: Your project is ready for development!"));
|
|
398
|
+
console.log(chalk_1.default.gray(" Use 'mycontext --help' for more commands."));
|
|
399
|
+
}
|
|
400
|
+
static getHelpText() {
|
|
401
|
+
return `
|
|
402
|
+
${chalk_1.default.blue.bold("🚀 MyContext Setup Complete Command")}
|
|
403
|
+
|
|
404
|
+
${chalk_1.default.yellow("Description:")}
|
|
405
|
+
Complete guided project setup with AI assistance. This single command creates
|
|
406
|
+
your entire project structure, from initial concept to working application.
|
|
407
|
+
|
|
408
|
+
${chalk_1.default.yellow("What it does:")}
|
|
409
|
+
1. 📁 Creates project directory and initializes structure
|
|
410
|
+
2. 📝 Generates comprehensive context files (PRD, features, specs)
|
|
411
|
+
3. 🏗️ Creates complete project architecture (types, components, structure)
|
|
412
|
+
4. 🧩 Optionally generates component implementations
|
|
413
|
+
5. 📋 Provides next steps and development guidance
|
|
414
|
+
|
|
415
|
+
${chalk_1.default.yellow("Usage:")}
|
|
416
|
+
mycontext setup-complete [options]
|
|
417
|
+
|
|
418
|
+
${chalk_1.default.yellow("Interactive Mode (Recommended for first-time users):")}
|
|
419
|
+
mycontext setup-complete --interactive
|
|
420
|
+
|
|
421
|
+
${chalk_1.default.yellow("Direct Mode (For automation/scripts):")}
|
|
422
|
+
mycontext setup-complete \\
|
|
423
|
+
--name "My Project" \\
|
|
424
|
+
--description "A modern web application for task management" \\
|
|
425
|
+
--auto-continue
|
|
426
|
+
|
|
427
|
+
${chalk_1.default.yellow("Options:")}
|
|
428
|
+
-n, --name <name> Project name
|
|
429
|
+
-d, --description <text> Project description
|
|
430
|
+
-o, --output <dir> Output directory (default: project name)
|
|
431
|
+
--force Overwrite existing files
|
|
432
|
+
--interactive Force interactive mode
|
|
433
|
+
--auto-continue Generate components automatically
|
|
434
|
+
--skip-confirmation Skip confirmation prompts
|
|
435
|
+
|
|
436
|
+
${chalk_1.default.yellow("Project Types:")}
|
|
437
|
+
• Simple: Landing pages, portfolios, blogs (5-10 components)
|
|
438
|
+
• Moderate: Dashboards, e-commerce, SaaS apps (15-25 components)
|
|
439
|
+
• Complex: Social platforms, LMS, marketplaces (30+ components)
|
|
440
|
+
|
|
441
|
+
${chalk_1.default.yellow("Examples:")}
|
|
442
|
+
${chalk_1.default.gray("# Interactive setup (recommended)")}
|
|
443
|
+
${chalk_1.default.cyan("mycontext setup-complete --interactive")}
|
|
444
|
+
|
|
445
|
+
${chalk_1.default.gray("# Direct setup with description")}
|
|
446
|
+
${chalk_1.default.cyan('mycontext setup-complete --name "TaskApp" --description "A modern task management application"')}
|
|
447
|
+
|
|
448
|
+
${chalk_1.default.gray("# Complete setup with components")}
|
|
449
|
+
${chalk_1.default.cyan('mycontext setup-complete --name "Ecommerce" --description "Online store" --auto-continue')}
|
|
450
|
+
|
|
451
|
+
${chalk_1.default.yellow("Generated Structure:")}
|
|
452
|
+
project/
|
|
453
|
+
├── .mycontext/ # Context and configuration
|
|
454
|
+
│ ├── 01-prd.md # Product requirements
|
|
455
|
+
│ ├── 02-types.ts # TypeScript definitions
|
|
456
|
+
│ ├── 03-branding.md # Design guidelines
|
|
457
|
+
│ ├── 04-component-list.json # Component specifications
|
|
458
|
+
│ └── 05-project-structure.md # Architecture
|
|
459
|
+
├── components/ # Generated components (if --auto-continue)
|
|
460
|
+
├── package.json # Project configuration
|
|
461
|
+
└── README.md # Setup documentation
|
|
462
|
+
|
|
463
|
+
${chalk_1.default.green("💡 This command replaces 4-6 separate commands with one guided experience!")}
|
|
464
|
+
`;
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
exports.SetupCompleteCommand = SetupCompleteCommand;
|
|
468
|
+
//# sourceMappingURL=setup-complete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-complete.js","sourceRoot":"","sources":["../../src/commands/setup-complete.ts"],"names":[],"mappings":";AAAA,yBAAyB;AACzB,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGlE,kDAA0B;AAC1B,sDAA8B;AAC9B,gDAAwB;AACxB,wDAA0B;AAC1B,qEAAuE;AACvE,yCAA6C;AAC7C,gDAAoD;AACpD,8CAAmD;AAqBnD,MAAa,oBAAoB;IAG/B;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,yBAAe,CAAC,uBAAuB,CAAC,CAAC;IAC9D,CAAC;IAEM,QAAQ,CAAC,OAAgB;QAC9B,OAAO;aACJ,OAAO,CAAC,gBAAgB,CAAC;aACzB,WAAW,CAAC,kDAAkD,CAAC;aAC/D,MAAM,CAAC,0BAA0B,EAAE,qBAAqB,CAAC;aACzD,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC;aAC3C,MAAM,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;aAChD,MAAM,CAAC,SAAS,EAAE,+CAA+C,CAAC;aAClE,MAAM,CAAC,eAAe,EAAE,wBAAwB,CAAC;aACjD,MAAM,CACL,iBAAiB,EACjB,gDAAgD,CACjD;aACA,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;aAC1D,MAAM,CAAC,KAAK,EAAE,OAAqB,EAAE,EAAE;YACtC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,OAAqB;QACzC,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CACT,qFAAqF,CACtF,CAAC;YAEF,0BAA0B;YAC1B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAEjE,gBAAgB;YAChB,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC9B,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACvC,CAAC;YAED,kCAAkC;YAClC,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAEtD,8BAA8B;YAC9B,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YACtD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,OAAqB;QAErB,iEAAiE;QACjE,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAChE,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,IAAI,EAAE,UAAU,EAAE,UAAU;gBAC5B,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,cAAc,CAAC;gBACpD,QAAQ,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC;gBAClC,QAAQ,EAAE,UAAU;aACrB,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CACrE,CAAC;QAEF,eAAe;QACf,MAAM,YAAY,GAAG,MAAM,IAAA,iBAAO,EAAC;YACjC,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,OAAO,CAAC,IAAI,IAAI,gBAAgB;YACzC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,4CAA4C;SACpE,CAAC,CAAC;QAEH,sBAAsB;QACtB,MAAM,mBAAmB,GAAG,MAAM,IAAA,iBAAO,EAAC;YACxC,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK,CAAC,MAAM,IAAI,EAAE;gBAClB,gEAAgE;SACnE,CAAC,CAAC;QAEH,qBAAqB;QACrB,MAAM,kBAAkB,GAAG,MAAM,IAAA,iBAAO,EAAC;YACvC,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,qBAAqB;YAC9B,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,wCAAwC;oBAC/C,KAAK,EAAE,QAAQ;oBACf,WAAW,EAAE,oCAAoC;iBAClD;gBACD;oBACE,KAAK,EAAE,wCAAwC;oBAC/C,KAAK,EAAE,UAAU;oBACjB,WAAW,EAAE,wCAAwC;iBACtD;gBACD;oBACE,KAAK,EAAE,6CAA6C;oBACpD,KAAK,EAAE,SAAS;oBAChB,WAAW,EAAE,0CAA0C;iBACxD;aACF;SACF,CAAC,CAAC;QAEH,yBAAyB;QACzB,MAAM,iBAAiB,GAAG,MAAM,IAAA,iBAAO,EAAC;YACtC,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,qCAAqC;YAC9C,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACtD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;gBAClC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC5D,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAChE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACpC,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;gBAC9C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACpC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;aACzC;YACD,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,uCAAuC;SAC9C,CAAC,CAAC;QAEH,sBAAsB;QACtB,MAAM,gBAAgB,GAAG,MAAM,IAAA,iBAAO,EAAC;YACrC,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,uBAAuB;YAChC,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC9C,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACpE,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,UAAU,EAAE;aACtD;SACF,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,WAAW,EAAE,mBAAmB,CAAC,WAAW;YAC5C,IAAI,EAAE,kBAAkB,CAAC,IAAI;YAC7B,SAAS,EAAE,iBAAiB,CAAC,SAAS;YACtC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC1D,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;SACpC,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,MAAM,YAAY,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAElD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ;gBACX,OAAO,CAAC,GAAG,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;YACnD,KAAK,UAAU;gBACb,OAAO,CAAC,GAAG,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;YAC1E,KAAK,SAAS;gBACZ,OAAO;oBACL,GAAG,YAAY;oBACf,WAAW;oBACX,cAAc;oBACd,oBAAoB;oBACpB,YAAY;iBACb,CAAC;YACJ;gBACE,OAAO,YAAY,CAAC;QACxB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,WAA+B;QACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAe,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,YAAY,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CACT,kBAAkB,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAClE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CACT,oBAAoB,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CACnE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,eAAe,GAAG,MAAM,IAAA,iBAAO,EAAC;YACpC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,+BAA+B;YACxC,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,WAA+B,EAC/B,OAAqB;QAErB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC;QACrD,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE5C,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,0BAAe,CAAC,wBAAwB,CAAC,CAAC;QACtE,eAAe;aACZ,OAAO,CAAC,MAAM,EAAE,8BAA8B,EAAE,IAAI,CAAC;aACrD,OAAO,CAAC,SAAS,EAAE,wBAAwB,EAAE,IAAI,CAAC;aAClD,OAAO,CAAC,cAAc,EAAE,+BAA+B,EAAE,KAAK,CAAC;aAC/D,OAAO,CAAC,YAAY,EAAE,qBAAqB,EAAE,KAAK,CAAC,CAAC;QAEvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,WAAW,EAAE,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CACR,oBAAoB,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,YAAY,CACpE,CACF,CAAC;QAEF,mCAAmC;QACnC,MAAM,gBAAgB,GAAG,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAEpE,4BAA4B;QAC5B,IAAI,CAAC,MAAM,kBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACzD,MAAM,iBAAiB,GAAG,MAAM,IAAA,iBAAO,EAAC;gBACtC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,aAAa,SAAS,6BAA6B;gBAC5D,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBAC9C,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,6BAA6B;YAC7B,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;YAExE,2BAA2B;YAC3B,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAE3B,4BAA4B;YAC5B,MAAM,WAAW,GAAG;gBAClB,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;gBACzD,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,OAAO,EAAE;oBACP,GAAG,EAAE,UAAU;oBACf,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,WAAW;iBAClB;gBACD,YAAY,EAAE,EAAE;gBAChB,eAAe,EAAE,EAAE;aACpB,CAAC;YAEF,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/D,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;YAExD,iCAAiC;YACjC,eAAe,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;YAElE,MAAM,kBAAkB,GAAG,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;YACrE,MAAM,cAAc,GAAG,IAAI,oDAA2B,EAAE,CAAC;YAEzD,MAAM,cAAc,CAAC,OAAO,CAAC;gBAC3B,WAAW,EAAE,kBAAkB;gBAC/B,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YAEH,eAAe,CAAC,YAAY,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;YAEvE,gCAAgC;YAChC,eAAe,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;YAE1E,MAAM,eAAe,GAAG,IAAI,0BAAe,EAAE,CAAC;YAC9C,MAAM,eAAe,CAAC,OAAO,CAAC;gBAC5B,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,kBAAkB;gBAC/B,MAAM,EAAE,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC;gBAC5C,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,KAAK;gBAC3C,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YAEH,eAAe,CAAC,YAAY,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC;YACzE,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CACpE,CAAC;YAEF,yDAAyD;YACzD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzB,eAAe,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;gBAE/D,MAAM,EAAE,yBAAyB,EAAE,GAAG,wDACpC,uBAAuB,GACxB,CAAC;gBACF,MAAM,yBAAyB,GAAG,IAAI,yBAAyB,EAAE,CAAC;gBAClE,MAAM,yBAAyB,CAAC,OAAO,CAAC,KAAK,EAAE;oBAC7C,SAAS,EAAE,IAAI;oBACf,GAAG,EAAE,IAAI;iBACV,CAAC,CAAC;gBAEH,eAAe,CAAC,YAAY,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;YACpE,CAAC;YAED,sBAAsB;YACtB,aAAa,CAAC,gBAAgB,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,QAAQ,eAAe,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6BAA6B;YAC7B,aAAa,CAAC,gBAAgB,CAAC,CAAC;YAChC,sFAAsF;YACtF,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,WAA+B;QACvD,iCAAiC;QACjC,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,CAAC;YACT,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;SACX,CAAC;QAEF,IAAI,YAAY,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE/C,gEAAgE;QAChE,IACE,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC5C,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAC1C,CAAC;YACD,YAAY,IAAI,CAAC,CAAC;QACpB,CAAC;QAED,mCAAmC;QACnC,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,YAAY,IAAI,CAAC,CAAC;QACpB,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IAEO,uBAAuB,CAAC,WAA+B;QAC7D,MAAM,gBAAgB,GAAG;YACvB,MAAM,EAAE,yBAAyB;YACjC,QAAQ,EAAE,iCAAiC;YAC3C,OAAO,EAAE,oCAAoC;SAC9C,CAAC;QAEF,OAAO,UAAU,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,YACjD,WAAW,CAAC,IACd;;uBAEmB,WAAW,CAAC,WAAW;;;gBAG9B,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;sBAC1B,WAAW,CAAC,IAAI;kBACpB,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;cACnC,WAAW,CAAC,QAAQ;;sFAG5B,WAAW,CAAC,IACd,0EAA0E,CAAC;IAC7E,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,WAA+B;QAE/B,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEnD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,WAAW,CAAC,IAAI,mBAAmB,CAAC,CACvE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,YAAY,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CACT,kBAAkB,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAClE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAE1C,8BAA8B;QAC9B,OAAO,CAAC,GAAG,CAAC,MAAM,eAAK,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAE1D,uBAAuB;QACvB,OAAO,CAAC,GAAG,CAAC,MAAM,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;QAExE,oBAAoB;QACpB,OAAO,CAAC,GAAG,CAAC,MAAM,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,iCAAiC,CAAC,CAAC;QAE3E,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CACT,MAAM,eAAK,CAAC,IAAI,CAAC,aAAa,CAAC,+BAA+B,CAC/D,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CACT,MAAM,eAAK,CAAC,IAAI,CACd,+BAA+B,CAChC,8BAA8B,CAChC,CAAC;QACF,OAAO,CAAC,GAAG,CACT,MAAM,eAAK,CAAC,IAAI,CACd,qBAAqB,CACtB,yCAAyC,CAC3C,CAAC;QACF,OAAO,CAAC,GAAG,CACT,MAAM,eAAK,CAAC,IAAI,CACd,8BAA8B,CAC/B,mCAAmC,CACrC,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;IAC1E,CAAC;IAEM,MAAM,CAAC,WAAW;QACvB,OAAO;EACT,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC;;EAEtD,eAAK,CAAC,MAAM,CAAC,cAAc,CAAC;;;;EAI5B,eAAK,CAAC,MAAM,CAAC,eAAe,CAAC;;;;;;;EAO7B,eAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;;;EAGtB,eAAK,CAAC,MAAM,CAAC,sDAAsD,CAAC;;;EAGpE,eAAK,CAAC,MAAM,CAAC,uCAAuC,CAAC;;;;;;EAMrD,eAAK,CAAC,MAAM,CAAC,UAAU,CAAC;;;;;;;;;EASxB,eAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC;;;;;EAK9B,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC;IACvB,eAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC;IAC/C,eAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC;;IAEpD,eAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC;IAC7C,eAAK,CAAC,IAAI,CACV,gGAAgG,CACjG;;IAEC,eAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC;IAC9C,eAAK,CAAC,IAAI,CACV,0FAA0F,CAC3F;;EAED,eAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC;;;;;;;;;;;;EAYpC,eAAK,CAAC,KAAK,CACX,4EAA4E,CAC7E;CACA,CAAC;IACA,CAAC;CACF;AAthBD,oDAshBC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
interface ShadcnSetupOptions {
|
|
2
|
+
all?: boolean;
|
|
3
|
+
components?: string[];
|
|
4
|
+
force?: boolean;
|
|
5
|
+
skipPrompts?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare class SetupShadcnCommand {
|
|
8
|
+
private spinner;
|
|
9
|
+
execute(options: ShadcnSetupOptions): Promise<void>;
|
|
10
|
+
private isValidProject;
|
|
11
|
+
private isShadcnInitialized;
|
|
12
|
+
private initializeShadcn;
|
|
13
|
+
private installAllComponents;
|
|
14
|
+
private installSpecificComponents;
|
|
15
|
+
private interactiveComponentInstallation;
|
|
16
|
+
private runShadcnCommand;
|
|
17
|
+
private detectPackageManager;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=setup-shadcn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-shadcn.d.ts","sourceRoot":"","sources":["../../src/commands/setup-shadcn.ts"],"names":[],"mappings":"AAMA,UAAU,kBAAkB;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAkD;IAE3D,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;YAsC3C,cAAc;YAgBd,mBAAmB;YASnB,gBAAgB;YAUhB,oBAAoB;YAsFpB,yBAAyB;YAezB,gCAAgC;YAuBhC,gBAAgB;YAoChB,oBAAoB;CAenC"}
|