@mvp-kit/create 0.0.11 → 0.0.13
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 +54 -93
- package/dist/create.js +212 -287
- package/dist/create.js.map +1 -1
- package/dist/download.js +3 -3
- package/dist/download.js.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/template.js +20 -5
- package/dist/template.js.map +1 -1
- package/package.json +13 -10
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @mvp-kit/create
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Official MVPKit scaffolding CLI for `core` and `saas` templates.
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@mvp-kit/create)
|
|
6
6
|
[](https://opensource.org/licenses/MIT)
|
|
@@ -8,142 +8,103 @@
|
|
|
8
8
|
## Quick Start
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
|
-
#
|
|
11
|
+
# npm
|
|
12
12
|
npx @mvp-kit/create my-app
|
|
13
13
|
|
|
14
|
-
#
|
|
14
|
+
# pnpm
|
|
15
15
|
pnpm create @mvp-kit my-app
|
|
16
16
|
|
|
17
|
-
#
|
|
17
|
+
# bun
|
|
18
18
|
bun create @mvp-kit my-app
|
|
19
19
|
```
|
|
20
20
|
|
|
21
|
-
##
|
|
21
|
+
## Templates
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
- Cloudflare Workers for edge computing
|
|
26
|
-
- tRPC for end-to-end type safety
|
|
27
|
-
- Drizzle ORM with D1 database
|
|
28
|
-
- Better Auth for authentication
|
|
29
|
-
- Tailwind CSS + shadcn/ui components
|
|
23
|
+
- `core`: production-ready full-stack starter
|
|
24
|
+
- `saas`: extended product starter (everything in core + SaaS modules)
|
|
30
25
|
|
|
31
26
|
## Usage
|
|
32
27
|
|
|
33
|
-
|
|
28
|
+
```bash
|
|
29
|
+
@mvp-kit/create <project-name> [options]
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Common Examples
|
|
34
33
|
|
|
35
34
|
```bash
|
|
36
|
-
#
|
|
35
|
+
# interactive (recommended)
|
|
37
36
|
npx @mvp-kit/create my-app
|
|
38
37
|
|
|
39
|
-
#
|
|
38
|
+
# create from SaaS template
|
|
39
|
+
npx @mvp-kit/create my-app --template saas
|
|
40
|
+
|
|
41
|
+
# non-interactive defaults
|
|
40
42
|
npx @mvp-kit/create my-app --yes
|
|
41
43
|
|
|
42
|
-
#
|
|
43
|
-
npx @mvp-kit/create my-app --no-install
|
|
44
|
+
# skip install + git init
|
|
45
|
+
npx @mvp-kit/create my-app --no-install --no-git
|
|
46
|
+
|
|
47
|
+
# full component pack
|
|
48
|
+
npx @mvp-kit/create my-app --pack all
|
|
44
49
|
```
|
|
45
50
|
|
|
46
51
|
### Options
|
|
47
52
|
|
|
48
53
|
| Option | Description |
|
|
49
|
-
|
|
50
|
-
| `-t, --template <template>` | Template to use (
|
|
54
|
+
|---|---|
|
|
55
|
+
| `-t, --template <template>` | Template to use (`core`, `saas`) |
|
|
51
56
|
| `-d, --description <text>` | Project description |
|
|
52
|
-
| `-w, --website <domain>` | Domain name
|
|
53
|
-
| `-p, --pack <pack>` | Component pack
|
|
54
|
-
|
|
|
57
|
+
| `-w, --website <domain>` | Domain name |
|
|
58
|
+
| `-p, --pack <pack>` | Component pack (`basic`, `all`) |
|
|
59
|
+
| `-y, --yes` | Non-interactive mode (no prompts) |
|
|
55
60
|
| `--no-install` | Skip dependency installation |
|
|
56
61
|
| `--no-git` | Skip git initialization |
|
|
57
|
-
| `-y, --yes` | Skip interactive prompts and use defaults |
|
|
58
62
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
# Minimal setup (skip installs and git)
|
|
63
|
-
npx @mvp-kit/create my-app --no-install --no-git
|
|
63
|
+
## Interactive Prompts
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
npx @mvp-kit/create my-app --pack all
|
|
65
|
+
In interactive mode, the CLI collects:
|
|
67
66
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
67
|
+
- template (`core` / `saas`) when not provided
|
|
68
|
+
- description
|
|
69
|
+
- domain
|
|
70
|
+
- tagline
|
|
71
|
+
- component pack
|
|
72
|
+
- social handles (SaaS only): GitHub, X, Instagram, TikTok
|
|
73
|
+
- package manager (`pnpm` / `bun`)
|
|
74
|
+
- git initialization preference
|
|
74
75
|
|
|
75
|
-
##
|
|
76
|
-
|
|
77
|
-
### 🚀 Automated Setup
|
|
78
|
-
The CLI automatically handles:
|
|
79
|
-
- **Database Setup**: Initializes D1 database, generates schema, and runs migrations
|
|
80
|
-
- **Dependencies**: Installs all required packages
|
|
81
|
-
- **UI Components**: Configures shadcn/ui with your chosen theme
|
|
82
|
-
- **Code Quality**: Sets up ESLint, Prettier, and TypeScript
|
|
83
|
-
- **Version Control**: Initializes git repository with initial commit
|
|
84
|
-
|
|
85
|
-
### 🆓 MVPKit Core Template
|
|
86
|
-
Production-ready foundation for rapid development:
|
|
87
|
-
- **Frontend**: React 19, TanStack Router, TanStack Query
|
|
88
|
-
- **Backend**: Cloudflare Workers, Hono, tRPC
|
|
89
|
-
- **Database**: D1 with Drizzle ORM (auto-configured)
|
|
90
|
-
- **Auth**: Better Auth with social providers
|
|
91
|
-
- **Styling**: Tailwind CSS v4 + shadcn/ui
|
|
92
|
-
- **Deployment**: Cloudflare Pages + Workers
|
|
93
|
-
|
|
94
|
-
### 📱 Development Workflow
|
|
95
|
-
After creation:
|
|
96
|
-
```bash
|
|
97
|
-
cd my-app
|
|
98
|
-
pnpm dev
|
|
99
|
-
```
|
|
76
|
+
## Output & Setup
|
|
100
77
|
|
|
101
|
-
|
|
102
|
-
- ✅ Database initialized and migrated
|
|
103
|
-
- ✅ Authentication configured
|
|
104
|
-
- ✅ UI components installed
|
|
105
|
-
- ✅ All dependencies resolved
|
|
78
|
+
The CLI scaffolds a monorepo and can automatically:
|
|
106
79
|
|
|
107
|
-
|
|
80
|
+
- install dependencies
|
|
81
|
+
- initialize DB artifacts/migrations (when applicable)
|
|
82
|
+
- configure UI/component setup
|
|
83
|
+
- run formatting/lint checks
|
|
84
|
+
- initialize git with an initial commit
|
|
108
85
|
|
|
109
|
-
|
|
110
|
-
Production-ready foundation for rapid development:
|
|
111
|
-
- **Frontend**: React 19, TanStack Router, TanStack Query
|
|
112
|
-
- **Backend**: Cloudflare Workers, Hono, tRPC
|
|
113
|
-
- **Database**: D1 with Drizzle ORM
|
|
114
|
-
- **Auth**: Better Auth with social providers
|
|
115
|
-
- **Styling**: Tailwind CSS v4 + shadcn/ui
|
|
116
|
-
- **Deployment**: Cloudflare Pages + Workers
|
|
86
|
+
Default local endpoints:
|
|
117
87
|
|
|
118
|
-
|
|
88
|
+
- `http://localhost:3001` (web)
|
|
89
|
+
- `http://localhost:3002` (app)
|
|
119
90
|
|
|
120
91
|
## Development
|
|
121
92
|
|
|
122
|
-
For local development of the CLI itself:
|
|
123
|
-
|
|
124
93
|
```bash
|
|
125
|
-
|
|
126
|
-
git clone https://github.com/mvp-kit/cli.git
|
|
127
|
-
cd cli
|
|
128
|
-
|
|
129
|
-
# Install dependencies
|
|
94
|
+
cd create
|
|
130
95
|
pnpm install
|
|
131
|
-
|
|
132
|
-
# Build the CLI
|
|
133
96
|
pnpm build
|
|
134
|
-
|
|
135
|
-
# Test locally
|
|
136
|
-
npx @mvp-kit/create test-app --dev
|
|
97
|
+
node dist/index.js --help
|
|
137
98
|
```
|
|
138
99
|
|
|
139
|
-
See [CLI_TESTING_GUIDE.md](./CLI_TESTING_GUIDE.md) for
|
|
100
|
+
See [CLI_TESTING_GUIDE.md](./CLI_TESTING_GUIDE.md) for local validation notes.
|
|
140
101
|
|
|
141
102
|
## Support
|
|
142
103
|
|
|
143
|
-
-
|
|
144
|
-
-
|
|
145
|
-
-
|
|
104
|
+
- [Website](https://mvpkit.dev)
|
|
105
|
+
- [Docs](https://docs.mvpkit.dev)
|
|
106
|
+
- [Examples](https://github.com/mvp-kit/core/examples)
|
|
146
107
|
|
|
147
108
|
## License
|
|
148
109
|
|
|
149
|
-
MIT © [MVPKit](https://mvpkit.dev)
|
|
110
|
+
MIT © [MVPKit](https://mvpkit.dev)
|
package/dist/create.js
CHANGED
|
@@ -8,12 +8,17 @@ import prompts from 'prompts';
|
|
|
8
8
|
import { processTemplate, shouldSkipFile, getTargetFilePath } from './template.js';
|
|
9
9
|
import { downloadTemplate } from './download.js';
|
|
10
10
|
import os from 'node:os';
|
|
11
|
+
const SUPPORTED_TEMPLATES = ['core', 'saas'];
|
|
12
|
+
function validateTemplateName(template) {
|
|
13
|
+
if (!SUPPORTED_TEMPLATES.includes(template)) {
|
|
14
|
+
throw new Error(`Unsupported template "${template}". Supported templates: ${SUPPORTED_TEMPLATES.join(', ')}`);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
11
17
|
/**
|
|
12
18
|
* Get path to template directory
|
|
13
19
|
* Supports multiple ways to specify template location:
|
|
14
20
|
* 1. --template-path CLI option (passed via options.templatePath)
|
|
15
|
-
* 2.
|
|
16
|
-
* 3. Download from GitHub releases using --template option
|
|
21
|
+
* 2. Download from GitHub releases using --template option
|
|
17
22
|
*/
|
|
18
23
|
async function getTemplatePath(options = {}) {
|
|
19
24
|
// 1. CLI option takes highest priority
|
|
@@ -24,26 +29,13 @@ async function getTemplatePath(options = {}) {
|
|
|
24
29
|
}
|
|
25
30
|
throw new Error(`Template path not found: ${templatePath}`);
|
|
26
31
|
}
|
|
27
|
-
// 2.
|
|
28
|
-
if (process.env.MVPKIT_TEMPLATE_PATH) {
|
|
29
|
-
const templatePath = path.resolve(process.env.MVPKIT_TEMPLATE_PATH);
|
|
30
|
-
if (fs.existsSync(templatePath)) {
|
|
31
|
-
return templatePath;
|
|
32
|
-
}
|
|
33
|
-
throw new Error(`Template path from MVPKIT_TEMPLATE_PATH not found: ${templatePath}`);
|
|
34
|
-
}
|
|
35
|
-
// 3. Download from GitHub based on template option
|
|
32
|
+
// 2. Download from GitHub based on template option
|
|
36
33
|
const template = options.template || 'core';
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (hasCachedTemplate) {
|
|
43
|
-
return templateDir;
|
|
44
|
-
}
|
|
45
|
-
// Download the template (this will clear the directory if it exists)
|
|
46
|
-
return await downloadTemplate(template, templateDir);
|
|
34
|
+
if (SUPPORTED_TEMPLATES.includes(template)) {
|
|
35
|
+
const targetDir = path.join(os.tmpdir(), 'mvpkit-template-download', template);
|
|
36
|
+
return await downloadTemplate(template, targetDir);
|
|
37
|
+
}
|
|
38
|
+
throw new Error(`Unsupported template "${template}". Supported templates: ${SUPPORTED_TEMPLATES.join(', ')}`);
|
|
47
39
|
}
|
|
48
40
|
/**
|
|
49
41
|
* Read template configuration from template.json
|
|
@@ -67,36 +59,8 @@ async function readTemplateConfig(templateDir) {
|
|
|
67
59
|
async function collectVariables(variables, options) {
|
|
68
60
|
// If non-interactive mode, use simple detection without prompts
|
|
69
61
|
if (options.interactive === false) {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
// Simple detection based on user agent and argv - no prompts
|
|
73
|
-
const userAgent = process.env.npm_config_user_agent || '';
|
|
74
|
-
const invocation = process.argv.join(' ');
|
|
75
|
-
if (userAgent.includes('bun/') || invocation.includes('bunx') || invocation.includes('bun create')) {
|
|
76
|
-
try {
|
|
77
|
-
packageManagerVersion = execSync('bun --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
78
|
-
packageManager = 'bun';
|
|
79
|
-
}
|
|
80
|
-
catch {
|
|
81
|
-
// Fallback to pnpm if bun not available
|
|
82
|
-
packageManager = 'pnpm';
|
|
83
|
-
try {
|
|
84
|
-
packageManagerVersion = execSync('pnpm --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
85
|
-
}
|
|
86
|
-
catch {
|
|
87
|
-
packageManagerVersion = '9.0.0';
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
// Default to pnpm for everything else (pnpm, npm, npx, unknown)
|
|
93
|
-
try {
|
|
94
|
-
packageManagerVersion = execSync('pnpm --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
95
|
-
}
|
|
96
|
-
catch {
|
|
97
|
-
packageManagerVersion = '9.0.0';
|
|
98
|
-
}
|
|
99
|
-
}
|
|
62
|
+
const packageManager = 'pnpm';
|
|
63
|
+
const packageManagerVersion = getRequiredCommandVersion('pnpm');
|
|
100
64
|
return {
|
|
101
65
|
...variables,
|
|
102
66
|
packageManager,
|
|
@@ -105,53 +69,106 @@ async function collectVariables(variables, options) {
|
|
|
105
69
|
git: options.git !== false
|
|
106
70
|
};
|
|
107
71
|
}
|
|
72
|
+
const normalizeHandle = (handle) => {
|
|
73
|
+
if (!handle)
|
|
74
|
+
return undefined;
|
|
75
|
+
const trimmed = handle.trim();
|
|
76
|
+
if (!trimmed)
|
|
77
|
+
return undefined;
|
|
78
|
+
return trimmed.startsWith('@') ? trimmed : `@${trimmed}`;
|
|
79
|
+
};
|
|
80
|
+
const toSocialUrl = (platform, handle) => {
|
|
81
|
+
const normalized = normalizeHandle(handle);
|
|
82
|
+
if (!normalized)
|
|
83
|
+
return undefined;
|
|
84
|
+
const username = normalized.slice(1);
|
|
85
|
+
if (!username)
|
|
86
|
+
return undefined;
|
|
87
|
+
if (platform === 'tiktok')
|
|
88
|
+
return `https://tiktok.com/@${username}`;
|
|
89
|
+
if (platform === 'x')
|
|
90
|
+
return `https://x.com/${username}`;
|
|
91
|
+
if (platform === 'instagram')
|
|
92
|
+
return `https://instagram.com/${username}`;
|
|
93
|
+
return `https://github.com/${username}`;
|
|
94
|
+
};
|
|
108
95
|
const fieldsToCollect = [
|
|
109
|
-
// 1. Template selection (if not passed via CLI)
|
|
96
|
+
// 1. Template selection (if not passed via CLI)
|
|
110
97
|
{
|
|
111
98
|
name: 'template',
|
|
112
99
|
message: 'Select template',
|
|
113
|
-
type: 'select',
|
|
100
|
+
type: !options.template && !options.templatePath ? 'select' : null,
|
|
114
101
|
choices: [
|
|
115
|
-
{ title: 'Core', value: 'core' }
|
|
102
|
+
{ title: 'Core', value: 'core' },
|
|
103
|
+
{ title: 'SaaS', value: 'saas' }
|
|
116
104
|
],
|
|
117
|
-
initial: 0
|
|
118
|
-
when: () => !options.template && !options.templatePath
|
|
105
|
+
initial: 0
|
|
119
106
|
},
|
|
120
107
|
// 2. Project description
|
|
121
108
|
{
|
|
122
|
-
name: '
|
|
109
|
+
name: 'description',
|
|
123
110
|
message: 'Project description',
|
|
124
111
|
type: 'text',
|
|
125
112
|
initial: options.description || `A full-stack application built with MVPKit`
|
|
126
113
|
},
|
|
127
114
|
// 3. Domain name
|
|
128
115
|
{
|
|
129
|
-
name: '
|
|
116
|
+
name: 'domain',
|
|
130
117
|
message: 'Website domain (for deployment)',
|
|
131
118
|
type: 'text',
|
|
132
|
-
initial: options.domain || `${variables.
|
|
119
|
+
initial: options.domain || `${variables.name}.localhost`
|
|
120
|
+
},
|
|
121
|
+
// 4. Tagline
|
|
122
|
+
{
|
|
123
|
+
name: 'tagline',
|
|
124
|
+
message: 'Tagline',
|
|
125
|
+
type: 'text',
|
|
126
|
+
initial: variables.tagline || 'Build and deploy MVPs faster.'
|
|
133
127
|
},
|
|
134
|
-
//
|
|
128
|
+
// 5. Component pack selection
|
|
135
129
|
{
|
|
136
130
|
name: 'componentPack',
|
|
137
131
|
message: 'Choose component pack',
|
|
138
|
-
type: 'select',
|
|
132
|
+
type: !options.componentPack ? 'select' : null,
|
|
139
133
|
choices: [
|
|
140
134
|
{ title: 'Essentials', value: 'basic' },
|
|
141
135
|
{ title: 'All', value: 'all' }
|
|
142
136
|
],
|
|
143
|
-
initial: 0
|
|
144
|
-
|
|
137
|
+
initial: 0
|
|
138
|
+
},
|
|
139
|
+
// 6. SaaS social handles
|
|
140
|
+
{
|
|
141
|
+
name: 'socialGithubHandle',
|
|
142
|
+
message: 'GitHub handle (@username)',
|
|
143
|
+
type: (_prev, values) => (options.template || values.template || variables.template) === 'saas' ? 'text' : null,
|
|
144
|
+
initial: variables.social?.github?.handle || '@mvp-kit'
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
name: 'socialXHandle',
|
|
148
|
+
message: 'X handle (@username)',
|
|
149
|
+
type: (_prev, values) => (options.template || values.template || variables.template) === 'saas' ? 'text' : null,
|
|
150
|
+
initial: variables.social?.x?.handle || '@mvpkithq'
|
|
145
151
|
},
|
|
146
|
-
|
|
152
|
+
{
|
|
153
|
+
name: 'socialInstagramHandle',
|
|
154
|
+
message: 'Instagram handle (@username)',
|
|
155
|
+
type: (_prev, values) => (options.template || values.template || variables.template) === 'saas' ? 'text' : null,
|
|
156
|
+
initial: variables.social?.instagram?.handle || '@mvpkit'
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
name: 'socialTiktokHandle',
|
|
160
|
+
message: 'TikTok handle (@username)',
|
|
161
|
+
type: (_prev, values) => (options.template || values.template || variables.template) === 'saas' ? 'text' : null,
|
|
162
|
+
initial: variables.social?.tiktok?.handle || '@mvpkittok'
|
|
163
|
+
},
|
|
164
|
+
// 7. Git initialization
|
|
147
165
|
{
|
|
148
166
|
name: 'git',
|
|
149
167
|
message: 'Initialize git repository?',
|
|
150
|
-
type: 'confirm',
|
|
168
|
+
type: options.git === undefined ? 'confirm' : null,
|
|
151
169
|
initial: options.git !== false,
|
|
152
|
-
when: () => options.git === undefined
|
|
153
170
|
},
|
|
154
|
-
//
|
|
171
|
+
// 8. Package manager (last, after user sees what will be installed)
|
|
155
172
|
{
|
|
156
173
|
name: 'packageManager',
|
|
157
174
|
message: 'Choose package manager',
|
|
@@ -167,7 +184,8 @@ async function collectVariables(variables, options) {
|
|
|
167
184
|
// Check if we can use prompts (TTY available)
|
|
168
185
|
if (!process.stdin.isTTY) {
|
|
169
186
|
console.log(chalk.yellow('⚠️ Non-interactive environment detected, using defaults'));
|
|
170
|
-
const
|
|
187
|
+
const packageManager = 'pnpm';
|
|
188
|
+
const packageManagerVersion = getRequiredCommandVersion('pnpm');
|
|
171
189
|
return {
|
|
172
190
|
...variables,
|
|
173
191
|
packageManager,
|
|
@@ -186,52 +204,46 @@ async function collectVariables(variables, options) {
|
|
|
186
204
|
});
|
|
187
205
|
}
|
|
188
206
|
catch (promptError) {
|
|
189
|
-
|
|
190
|
-
console.log(chalk.white.dim(` Error: ${promptError instanceof Error ? promptError.message : 'Unknown error'}`));
|
|
191
|
-
const { packageManager, version: packageManagerVersion } = await detectPackageManager();
|
|
192
|
-
return {
|
|
193
|
-
...variables,
|
|
194
|
-
packageManager,
|
|
195
|
-
packageManagerVersion
|
|
196
|
-
};
|
|
197
|
-
}
|
|
198
|
-
// Get package manager version
|
|
199
|
-
let packageManagerVersion = '9.0.0'; // default
|
|
200
|
-
if (responses.packageManager === 'bun') {
|
|
201
|
-
try {
|
|
202
|
-
packageManagerVersion = execSync('bun --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
203
|
-
}
|
|
204
|
-
catch {
|
|
205
|
-
packageManagerVersion = '1.0.0';
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
else {
|
|
209
|
-
try {
|
|
210
|
-
packageManagerVersion = execSync('pnpm --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
211
|
-
}
|
|
212
|
-
catch {
|
|
213
|
-
packageManagerVersion = '9.0.0';
|
|
214
|
-
}
|
|
207
|
+
throw new Error(`Interactive prompts failed: ${promptError instanceof Error ? promptError.message : String(promptError)}`);
|
|
215
208
|
}
|
|
209
|
+
const selectedPackageManager = (responses.packageManager || 'pnpm');
|
|
210
|
+
const packageManagerVersion = getRequiredCommandVersion(selectedPackageManager);
|
|
211
|
+
const socialGithubHandle = normalizeHandle(responses.socialGithubHandle || variables.social?.github?.handle);
|
|
212
|
+
const socialXHandle = normalizeHandle(responses.socialXHandle || variables.social?.x?.handle);
|
|
213
|
+
const socialInstagramHandle = normalizeHandle(responses.socialInstagramHandle || variables.social?.instagram?.handle);
|
|
214
|
+
const socialTiktokHandle = normalizeHandle(responses.socialTiktokHandle || variables.social?.tiktok?.handle);
|
|
216
215
|
return {
|
|
217
216
|
...variables,
|
|
218
217
|
template: responses.template || options.template || variables.template,
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
218
|
+
description: responses.description || variables.description,
|
|
219
|
+
domain: responses.domain || variables.domain,
|
|
220
|
+
tagline: responses.tagline || variables.tagline,
|
|
221
|
+
social: {
|
|
222
|
+
github: {
|
|
223
|
+
handle: socialGithubHandle,
|
|
224
|
+
url: toSocialUrl('github', socialGithubHandle),
|
|
225
|
+
},
|
|
226
|
+
x: {
|
|
227
|
+
handle: socialXHandle,
|
|
228
|
+
url: toSocialUrl('x', socialXHandle),
|
|
229
|
+
},
|
|
230
|
+
instagram: {
|
|
231
|
+
handle: socialInstagramHandle,
|
|
232
|
+
url: toSocialUrl('instagram', socialInstagramHandle),
|
|
233
|
+
},
|
|
234
|
+
tiktok: {
|
|
235
|
+
handle: socialTiktokHandle,
|
|
236
|
+
url: toSocialUrl('tiktok', socialTiktokHandle),
|
|
237
|
+
},
|
|
238
|
+
},
|
|
239
|
+
packageManager: selectedPackageManager,
|
|
222
240
|
packageManagerVersion,
|
|
223
241
|
componentPack: responses.componentPack || options.componentPack,
|
|
224
242
|
git: responses.git !== undefined ? responses.git : (options.git !== false)
|
|
225
243
|
};
|
|
226
244
|
}
|
|
227
245
|
catch (error) {
|
|
228
|
-
|
|
229
|
-
const { packageManager, version: packageManagerVersion } = await detectPackageManager();
|
|
230
|
-
return {
|
|
231
|
-
...variables,
|
|
232
|
-
packageManager,
|
|
233
|
-
packageManagerVersion
|
|
234
|
-
};
|
|
246
|
+
throw new Error(`Failed to collect template variables: ${error instanceof Error ? error.message : String(error)}`);
|
|
235
247
|
}
|
|
236
248
|
}
|
|
237
249
|
/**
|
|
@@ -247,149 +259,58 @@ async function completeProjectSetup(targetDir, variables, options) {
|
|
|
247
259
|
await installDependencies(targetDir, packageManager);
|
|
248
260
|
}
|
|
249
261
|
// Step 3: Setup database
|
|
250
|
-
const apiPath = path.join(targetDir, '
|
|
262
|
+
const apiPath = path.join(targetDir, 'services', 'api');
|
|
251
263
|
if (fs.existsSync(apiPath) && options.install !== false) {
|
|
252
264
|
await setupDatabase(apiPath, packageManager);
|
|
253
265
|
}
|
|
254
266
|
// Step 4: Initialize shadcn in UI package
|
|
255
267
|
const uiPath = path.join(targetDir, 'packages', 'ui');
|
|
268
|
+
const hasPreconfiguredUI = fs.existsSync(path.join(uiPath, 'components.json')) &&
|
|
269
|
+
fs.existsSync(path.join(uiPath, 'src', 'components', 'ui'));
|
|
256
270
|
if (fs.existsSync(uiPath)) {
|
|
257
|
-
|
|
271
|
+
if (!hasPreconfiguredUI) {
|
|
272
|
+
await initShadcnInUIPackage(uiPath, 'new-york', options.interactive !== false);
|
|
273
|
+
}
|
|
258
274
|
}
|
|
259
|
-
// Step 5: Install component pack
|
|
275
|
+
// Step 5: Install component pack
|
|
260
276
|
const componentPack = variables.componentPack;
|
|
261
277
|
if (componentPack && fs.existsSync(uiPath)) {
|
|
262
|
-
|
|
263
|
-
|
|
278
|
+
// The core template already includes the baseline "basic" set.
|
|
279
|
+
const shouldInstallPack = componentPack === 'all' || !hasPreconfiguredUI;
|
|
280
|
+
if (shouldInstallPack) {
|
|
281
|
+
const templateConfig = await readTemplateConfig(targetDir);
|
|
282
|
+
await installComponentPack(uiPath, componentPack, options.interactive !== false, templateConfig);
|
|
283
|
+
}
|
|
264
284
|
}
|
|
265
285
|
// Step 6: Cleanup tasks
|
|
266
|
-
await cleanup(targetDir, packageManager);
|
|
286
|
+
await cleanup(targetDir, packageManager, options.install !== false);
|
|
267
287
|
// Step 7: Initialize git at the end
|
|
268
288
|
const shouldInitGit = variables.git;
|
|
269
289
|
if (shouldInitGit !== false) {
|
|
270
290
|
await initializeGitWithCommit(targetDir);
|
|
271
291
|
}
|
|
272
292
|
}
|
|
273
|
-
async function cleanup(targetDir, packageManager) {
|
|
293
|
+
async function cleanup(targetDir, packageManager, shouldRunLintFix) {
|
|
274
294
|
// Only inherit theme name from UI to web
|
|
275
295
|
const uiPath = path.join(targetDir, 'packages', 'ui');
|
|
276
296
|
const webPath = path.join(targetDir, 'apps', 'web');
|
|
277
297
|
if (fs.existsSync(uiPath) && fs.existsSync(webPath)) {
|
|
278
298
|
await inheritUIConfigToWeb(uiPath, webPath);
|
|
279
299
|
}
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
/**
|
|
284
|
-
* Detect package manager based on how CLI was invoked
|
|
285
|
-
* - npx: Ask user to choose
|
|
286
|
-
* - pnpm create/pnpm dlx: Use pnpm
|
|
287
|
-
* - bunx: Use bun
|
|
288
|
-
*/
|
|
289
|
-
async function detectPackageManager() {
|
|
290
|
-
// Check how the CLI was invoked using environment variables and process.argv
|
|
291
|
-
const userAgent = process.env.npm_config_user_agent || '';
|
|
292
|
-
const invocation = process.argv.join(' ');
|
|
293
|
-
// Check user agent for package manager detection
|
|
294
|
-
if (userAgent.includes('bun/')) {
|
|
295
|
-
try {
|
|
296
|
-
const bunVersion = execSync('bun --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
297
|
-
return { packageManager: 'bun', version: bunVersion };
|
|
298
|
-
}
|
|
299
|
-
catch {
|
|
300
|
-
console.log(chalk.yellow('⚠️ Bun not available, falling back to pnpm'));
|
|
301
|
-
const pnpmVersion = await getPnpmVersion();
|
|
302
|
-
return { packageManager: 'pnpm', version: pnpmVersion };
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
if (userAgent.includes('pnpm/')) {
|
|
306
|
-
const pnpmVersion = await getPnpmVersion();
|
|
307
|
-
return { packageManager: 'pnpm', version: pnpmVersion };
|
|
308
|
-
}
|
|
309
|
-
// Check argv for direct invocations (fallback)
|
|
310
|
-
if (invocation.includes('bunx') || invocation.includes('bun create')) {
|
|
311
|
-
try {
|
|
312
|
-
const bunVersion = execSync('bun --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
313
|
-
return { packageManager: 'bun', version: bunVersion };
|
|
314
|
-
}
|
|
315
|
-
catch {
|
|
316
|
-
console.log(chalk.yellow('⚠️ Bun not available, falling back to pnpm'));
|
|
317
|
-
const pnpmVersion = await getPnpmVersion();
|
|
318
|
-
return { packageManager: 'pnpm', version: pnpmVersion };
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
if (invocation.includes('pnpm create') || invocation.includes('pnpm dlx')) {
|
|
322
|
-
const pnpmVersion = await getPnpmVersion();
|
|
323
|
-
return { packageManager: 'pnpm', version: pnpmVersion };
|
|
324
|
-
}
|
|
325
|
-
// For npx (npm user agent) or unknown, ask user to choose
|
|
326
|
-
if (userAgent.includes('npm/') || invocation.includes('npx')) {
|
|
327
|
-
return await promptForPackageManager();
|
|
328
|
-
}
|
|
329
|
-
// Fallback: try to detect what's available
|
|
330
|
-
try {
|
|
331
|
-
const bunVersion = execSync('bun --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
332
|
-
return { packageManager: 'bun', version: bunVersion };
|
|
333
|
-
}
|
|
334
|
-
catch {
|
|
335
|
-
const pnpmVersion = await getPnpmVersion();
|
|
336
|
-
return { packageManager: 'pnpm', version: pnpmVersion };
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
/**
|
|
340
|
-
* Get pnpm version with fallback
|
|
341
|
-
*/
|
|
342
|
-
async function getPnpmVersion() {
|
|
343
|
-
try {
|
|
344
|
-
return execSync('pnpm --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
345
|
-
}
|
|
346
|
-
catch {
|
|
347
|
-
return '9.0.0'; // Default version
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
/**
|
|
351
|
-
* Prompt user to choose package manager (for npx invocation)
|
|
352
|
-
*/
|
|
353
|
-
async function promptForPackageManager() {
|
|
354
|
-
const inquirer = await import('inquirer');
|
|
355
|
-
// Check what's available
|
|
356
|
-
const bunAvailable = await checkCommandAvailable('bun');
|
|
357
|
-
const pnpmAvailable = await checkCommandAvailable('pnpm');
|
|
358
|
-
if (!bunAvailable && !pnpmAvailable) {
|
|
359
|
-
console.log(chalk.yellow('⚠️ Neither bun nor pnpm found, defaulting to pnpm'));
|
|
360
|
-
return { packageManager: 'pnpm', version: '9.0.0' };
|
|
361
|
-
}
|
|
362
|
-
const choices = [];
|
|
363
|
-
if (pnpmAvailable)
|
|
364
|
-
choices.push({ name: 'pnpm (recommended for most projects)', value: 'pnpm' });
|
|
365
|
-
if (bunAvailable)
|
|
366
|
-
choices.push({ name: 'bun (fast and modern)', value: 'bun' });
|
|
367
|
-
const { packageManager } = await inquirer.default.prompt([{
|
|
368
|
-
type: 'list',
|
|
369
|
-
name: 'packageManager',
|
|
370
|
-
message: 'Which package manager would you like to use?',
|
|
371
|
-
choices,
|
|
372
|
-
default: 'pnpm'
|
|
373
|
-
}]);
|
|
374
|
-
if (packageManager === 'bun') {
|
|
375
|
-
const bunVersion = execSync('bun --version', { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
376
|
-
return { packageManager: 'bun', version: bunVersion };
|
|
377
|
-
}
|
|
378
|
-
else {
|
|
379
|
-
const pnpmVersion = await getPnpmVersion();
|
|
380
|
-
return { packageManager: 'pnpm', version: pnpmVersion };
|
|
300
|
+
if (shouldRunLintFix) {
|
|
301
|
+
// Run lint fix only when dependencies were installed.
|
|
302
|
+
await runLintFixCommand(targetDir, packageManager);
|
|
381
303
|
}
|
|
382
304
|
}
|
|
383
305
|
/**
|
|
384
|
-
*
|
|
306
|
+
* Get version for required command or fail fast with clear guidance
|
|
385
307
|
*/
|
|
386
|
-
|
|
308
|
+
function getRequiredCommandVersion(command) {
|
|
387
309
|
try {
|
|
388
|
-
execSync(`${command} --version`, { stdio: 'pipe' });
|
|
389
|
-
return true;
|
|
310
|
+
return execSync(`${command} --version`, { encoding: 'utf8', stdio: 'pipe' }).trim();
|
|
390
311
|
}
|
|
391
|
-
catch {
|
|
392
|
-
|
|
312
|
+
catch (error) {
|
|
313
|
+
throw new Error(`Required package manager "${command}" is not available. Install ${command} and re-run the command.`);
|
|
393
314
|
}
|
|
394
315
|
}
|
|
395
316
|
/**
|
|
@@ -397,42 +318,65 @@ async function checkCommandAvailable(command) {
|
|
|
397
318
|
*/
|
|
398
319
|
export async function createProject(projectName, options = {}) {
|
|
399
320
|
const targetDir = path.join(process.cwd(), projectName);
|
|
321
|
+
const selectedTemplate = options.template || 'core';
|
|
400
322
|
// Validate target directory
|
|
401
323
|
if (fs.existsSync(targetDir)) {
|
|
402
324
|
throw new Error(`Directory ${projectName} already exists`);
|
|
403
325
|
}
|
|
326
|
+
if (!options.templatePath) {
|
|
327
|
+
validateTemplateName(selectedTemplate);
|
|
328
|
+
}
|
|
404
329
|
// Build initial template variables
|
|
405
330
|
const variables = {
|
|
406
|
-
template:
|
|
407
|
-
projectName,
|
|
408
|
-
|
|
409
|
-
|
|
331
|
+
template: selectedTemplate,
|
|
332
|
+
name: projectName,
|
|
333
|
+
description: options.description || `A full-stack application built with MVPKit`,
|
|
334
|
+
domain: options.domain || `${projectName}.localhost`,
|
|
335
|
+
executionDate: new Date().toISOString().slice(0, 10),
|
|
336
|
+
tagline: 'Build and deploy MVPs faster.',
|
|
337
|
+
social: {
|
|
338
|
+
github: {
|
|
339
|
+
handle: '@mvp-kit',
|
|
340
|
+
url: 'https://github.com/mvp-kit'
|
|
341
|
+
},
|
|
342
|
+
x: {
|
|
343
|
+
handle: '@mvpkithq',
|
|
344
|
+
url: 'https://x.com/mvpkithq'
|
|
345
|
+
},
|
|
346
|
+
instagram: {
|
|
347
|
+
handle: '@mvpkit',
|
|
348
|
+
url: 'https://instagram.com/mvpkit'
|
|
349
|
+
},
|
|
350
|
+
tiktok: {
|
|
351
|
+
handle: '@mvpkittok',
|
|
352
|
+
url: 'https://tiktok.com/@mvpkittok'
|
|
353
|
+
}
|
|
354
|
+
},
|
|
410
355
|
packageManager: 'pnpm', // Default, will be updated by prompts if needed
|
|
411
|
-
packageManagerVersion: '
|
|
356
|
+
packageManagerVersion: ''
|
|
412
357
|
};
|
|
413
358
|
// CLI mode with interactive prompts
|
|
414
359
|
// Collect missing variables interactively
|
|
415
360
|
const finalVariables = await collectVariables(variables, options);
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
}
|
|
361
|
+
const templateLabel = (finalVariables.template || 'core').toUpperCase();
|
|
362
|
+
console.log(chalk.blue(`🚀 Creating ${projectName} with MVPKit ${templateLabel}\n`));
|
|
363
|
+
// Resolve template path once to avoid duplicate downloads/work.
|
|
364
|
+
const resolvedTemplatePath = await getTemplatePath({ ...options, template: finalVariables.template });
|
|
365
|
+
const resolvedOptions = {
|
|
366
|
+
...options,
|
|
367
|
+
template: finalVariables.template,
|
|
368
|
+
templatePath: resolvedTemplatePath
|
|
369
|
+
};
|
|
370
|
+
// Copy template and complete setup using shared functionality
|
|
371
|
+
await copyTemplate(targetDir, finalVariables, resolvedOptions);
|
|
372
|
+
await completeProjectSetup(targetDir, finalVariables, resolvedOptions);
|
|
373
|
+
// Success!
|
|
374
|
+
console.log('\n' + chalk.green('🎉 Project Created Successfully!'));
|
|
375
|
+
console.log(chalk.white.dim('═'.repeat(50)));
|
|
376
|
+
console.log(chalk.green(`✅ ${projectName} is ready to go!`));
|
|
377
|
+
// Next steps
|
|
378
|
+
const extendedOptions = { ...options, componentPack: finalVariables.componentPack };
|
|
379
|
+
printNextSteps(projectName, extendedOptions, finalVariables.packageManager);
|
|
436
380
|
}
|
|
437
381
|
/**
|
|
438
382
|
* Initialize shadcn/ui ONLY in packages/ui using the official shadcn CLI
|
|
@@ -539,19 +483,25 @@ async function inheritUIConfigToWeb(uiPath, webPath) {
|
|
|
539
483
|
}
|
|
540
484
|
try {
|
|
541
485
|
const uiConfig = JSON.parse(fs.readFileSync(uiComponentsPath, 'utf-8'));
|
|
542
|
-
|
|
486
|
+
const webConfigCurrent = fs.existsSync(webComponentsPath)
|
|
487
|
+
? JSON.parse(fs.readFileSync(webComponentsPath, 'utf-8'))
|
|
488
|
+
: {};
|
|
489
|
+
// Create web-specific config inheriting style/theme from UI while preserving web paths.
|
|
543
490
|
const webConfig = {
|
|
544
|
-
...
|
|
545
|
-
|
|
491
|
+
...webConfigCurrent,
|
|
492
|
+
style: uiConfig.style ?? webConfigCurrent.style,
|
|
493
|
+
rsc: uiConfig.rsc ?? webConfigCurrent.rsc,
|
|
494
|
+
tsx: uiConfig.tsx ?? webConfigCurrent.tsx,
|
|
546
495
|
tailwind: {
|
|
496
|
+
...(webConfigCurrent.tailwind || {}),
|
|
547
497
|
...uiConfig.tailwind,
|
|
548
|
-
css: 'src/styles
|
|
498
|
+
css: webConfigCurrent?.tailwind?.css || 'src/styles.css'
|
|
549
499
|
},
|
|
550
500
|
aliases: {
|
|
551
|
-
...uiConfig.aliases,
|
|
552
|
-
|
|
501
|
+
...(uiConfig.aliases || {}),
|
|
502
|
+
...(webConfigCurrent.aliases || {})
|
|
553
503
|
},
|
|
554
|
-
registries: {}
|
|
504
|
+
registries: webConfigCurrent.registries || {}
|
|
555
505
|
};
|
|
556
506
|
await fs.writeJson(webComponentsPath, webConfig, { spaces: 2 });
|
|
557
507
|
}
|
|
@@ -644,7 +594,7 @@ export async function copyPackageManagerFiles(targetDir, variables, options = {}
|
|
|
644
594
|
}
|
|
645
595
|
catch (error) {
|
|
646
596
|
spinner.fail('Package manager configuration failed');
|
|
647
|
-
|
|
597
|
+
throw new Error(`Failed to configure package manager files: ${error instanceof Error ? error.message : String(error)}`);
|
|
648
598
|
}
|
|
649
599
|
}
|
|
650
600
|
/**
|
|
@@ -662,7 +612,8 @@ async function installDependencies(targetDir, packageManager) {
|
|
|
662
612
|
}
|
|
663
613
|
catch (error) {
|
|
664
614
|
spinner.fail('Package installation failed');
|
|
665
|
-
|
|
615
|
+
throw new Error(`Failed to install dependencies with ${packageManager}. ` +
|
|
616
|
+
`Run "cd ${path.basename(targetDir)} && ${packageManager} install" after fixing the issue.`);
|
|
666
617
|
}
|
|
667
618
|
}
|
|
668
619
|
/**
|
|
@@ -694,7 +645,8 @@ async function setupDatabase(apiPath, packageManager) {
|
|
|
694
645
|
}
|
|
695
646
|
catch (error) {
|
|
696
647
|
spinner.fail('Database setup failed');
|
|
697
|
-
|
|
648
|
+
throw new Error(`Failed to set up database with ${packageManager}. ` +
|
|
649
|
+
`Run "cd ${path.basename(apiPath)} && ${packageManager} run db:init && ${packageManager} run db:generate && ${packageManager} run db:migrate:local" manually.`);
|
|
698
650
|
}
|
|
699
651
|
}
|
|
700
652
|
/**
|
|
@@ -712,20 +664,8 @@ async function runLintFixCommand(targetDir, packageManager) {
|
|
|
712
664
|
spinner.succeed('Code formatted and linted');
|
|
713
665
|
}
|
|
714
666
|
catch (error) {
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
const pmCommand = packageManager === 'pnpm' ? 'pnpm' : 'bun';
|
|
718
|
-
execSync(`${pmCommand} run lint`, {
|
|
719
|
-
cwd: targetDir,
|
|
720
|
-
stdio: 'pipe',
|
|
721
|
-
timeout: 60000
|
|
722
|
-
});
|
|
723
|
-
spinner.succeed('Code formatting verified');
|
|
724
|
-
}
|
|
725
|
-
catch (lintError) {
|
|
726
|
-
// If no lint command exists, skip silently
|
|
727
|
-
spinner.succeed('Code formatting completed');
|
|
728
|
-
}
|
|
667
|
+
spinner.fail('Code formatting failed');
|
|
668
|
+
throw new Error(`Failed to run lint:fix with ${packageManager}. Ensure lint scripts are valid and dependencies are installed.`);
|
|
729
669
|
}
|
|
730
670
|
}
|
|
731
671
|
/**
|
|
@@ -741,23 +681,7 @@ async function initializeGitWithCommit(targetDir) {
|
|
|
741
681
|
}
|
|
742
682
|
catch (error) {
|
|
743
683
|
spinner.fail('Version control initialization failed');
|
|
744
|
-
|
|
745
|
-
}
|
|
746
|
-
}
|
|
747
|
-
/**
|
|
748
|
-
* Initialize git repository (legacy function for compatibility)
|
|
749
|
-
*/
|
|
750
|
-
async function initializeGit(targetDir) {
|
|
751
|
-
const spinner = ora('Initializing version control...').start();
|
|
752
|
-
try {
|
|
753
|
-
execSync('git init', { cwd: targetDir, stdio: 'pipe' });
|
|
754
|
-
execSync('git add .', { cwd: targetDir, stdio: 'pipe' });
|
|
755
|
-
execSync('git commit -m "Initial commit"', { cwd: targetDir, stdio: 'pipe' });
|
|
756
|
-
spinner.succeed('Version control initialized');
|
|
757
|
-
}
|
|
758
|
-
catch (error) {
|
|
759
|
-
spinner.fail('Version control initialization failed');
|
|
760
|
-
console.log(chalk.yellow('\n💡 Initialize version control manually if needed\n'));
|
|
684
|
+
throw new Error('Failed to initialize git repository and create initial commit. Ensure git is installed and configured.');
|
|
761
685
|
}
|
|
762
686
|
}
|
|
763
687
|
/**
|
|
@@ -777,7 +701,7 @@ function printNextSteps(projectName, options, packageManager) {
|
|
|
777
701
|
else {
|
|
778
702
|
console.log(chalk.green(` 2. ${pmCommand} dev`));
|
|
779
703
|
}
|
|
780
|
-
console.log(chalk.green(` 3. Open http://localhost:
|
|
704
|
+
console.log(chalk.green(` 3. Open http://localhost:3001 (web) and http://localhost:3002 (app)`));
|
|
781
705
|
// What's included section
|
|
782
706
|
console.log('\n' + chalk.whiteBright.bold('🎁 What\'s Included:'));
|
|
783
707
|
const features = [
|
|
@@ -785,7 +709,8 @@ function printNextSteps(projectName, options, packageManager) {
|
|
|
785
709
|
'🗄️ Database with Drizzle ORM + migrations',
|
|
786
710
|
'🎨 shadcn/ui components with new-york theme',
|
|
787
711
|
'🔐 Authentication with better-auth',
|
|
788
|
-
'
|
|
712
|
+
'🌐 Dual surfaces: apps/web (marketing) + apps/app (authenticated app)',
|
|
713
|
+
'📦 Monorepo structure (apps + packages + services)',
|
|
789
714
|
'🔧 ESLint, Prettier, and TypeScript configured'
|
|
790
715
|
];
|
|
791
716
|
if (options.componentPack && options.componentPack === 'all') {
|
|
@@ -802,7 +727,7 @@ function printNextSteps(projectName, options, packageManager) {
|
|
|
802
727
|
console.log(chalk.white(' • Database is already set up and migrated'));
|
|
803
728
|
console.log(chalk.white(' • Add more components: npx shadcn@latest add <component>'));
|
|
804
729
|
console.log(chalk.white(' • Customize UI theme in packages/ui/src/styles.css'));
|
|
805
|
-
console.log(chalk.white(' • API
|
|
730
|
+
console.log(chalk.white(' • API handlers are in services/api/src/trpc/ and services/api/src/app.ts'));
|
|
806
731
|
console.log('\n' + chalk.bold('📚 Learn More:'));
|
|
807
732
|
console.log(chalk.blue(' https://docs.mvpkit.dev'));
|
|
808
733
|
console.log(chalk.white(' https://ui.shadcn.com (for UI components)'));
|
package/dist/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAA;AAErD,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAgD,CAAC,EAAE,CAAC;QACpF,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,2BAA2B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/G,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,eAAe,CAAC,UAAyB,EAAE;IACxD,uCAAuC;IACvC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QACvD,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,OAAO,YAAY,CAAA;QACrB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,mDAAmD;IACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAA;IAC3C,IAAI,mBAAmB,CAAC,QAAQ,CAAC,QAAgD,CAAC,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,0BAA0B,EAAE,QAAQ,CAAC,CAAA;QAC9E,OAAO,MAAM,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IACpD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,2BAA2B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAC/G,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAAC,WAAmB;IACnD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAA;QAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAmB,CAAA;QACpD,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC,CAAA;IACxE,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,SAA4B,EAAE,OAAsB;IAClF,gEAAgE;IAChE,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;QAClC,MAAM,cAAc,GAAG,MAAM,CAAA;QAC7B,MAAM,qBAAqB,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAE/D,OAAO;YACL,GAAG,SAAS;YACZ,cAAc;YACd,qBAAqB;YACrB,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO;YAC/C,GAAG,EAAE,OAAO,CAAC,GAAG,KAAK,KAAK;SAC3B,CAAA;IACH,CAAC;IAED,MAAM,eAAe,GAAG,CAAC,MAAe,EAAsB,EAAE;QAC9D,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAA;QAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAA;QAC9B,OAAO,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAA;IAC1D,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,QAAiD,EAAE,MAAe,EAAsB,EAAE;QAC7G,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAA;QACjC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEpC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QAC/B,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO,uBAAuB,QAAQ,EAAE,CAAA;QACnE,IAAI,QAAQ,KAAK,GAAG;YAAE,OAAO,iBAAiB,QAAQ,EAAE,CAAA;QACxD,IAAI,QAAQ,KAAK,WAAW;YAAE,OAAO,yBAAyB,QAAQ,EAAE,CAAA;QACxE,OAAO,sBAAsB,QAAQ,EAAE,CAAA;IACzC,CAAC,CAAA;IAED,MAAM,eAAe,GAA+B;QAClD,gDAAgD;QAChD;YACE,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,iBAAiB;YAC1B,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YAClE,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;gBAChC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;aACjC;YACD,OAAO,EAAE,CAAC;SACX;QAED,yBAAyB;QACzB;YACE,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,qBAAqB;YAC9B,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO,CAAC,WAAW,IAAI,4CAA4C;SAC7E;QAED,iBAAiB;QACjB;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,iCAAiC;YAC1C,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO,CAAC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,YAAY;SACzD;QAED,aAAa;QACb;YACE,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,+BAA+B;SAC9D;QAED,8BAA8B;QAC9B;YACE,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YAC9C,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE;gBACvC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;aAC/B;YACD,OAAO,EAAE,CAAC;SACX;QAED,yBAAyB;QACzB;YACE,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,2BAA2B;YACpC,IAAI,EAAE,CAAC,KAAU,EAAE,MAA2B,EAAE,EAAE,CAChD,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACxF,OAAO,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,UAAU;SACxD;QACD;YACE,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,sBAAsB;YAC/B,IAAI,EAAE,CAAC,KAAU,EAAE,MAA2B,EAAE,EAAE,CAChD,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACxF,OAAO,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,IAAI,WAAW;SACpD;QACD;YACE,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,8BAA8B;YACvC,IAAI,EAAE,CAAC,KAAU,EAAE,MAA2B,EAAE,EAAE,CAChD,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACxF,OAAO,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,IAAI,SAAS;SAC1D;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,2BAA2B;YACpC,IAAI,EAAE,CAAC,KAAU,EAAE,MAA2B,EAAE,EAAE,CAChD,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACxF,OAAO,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,YAAY;SAC1D;QAED,wBAAwB;QACxB;YACE,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,4BAA4B;YACrC,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YAClD,OAAO,EAAE,OAAO,CAAC,GAAG,KAAK,KAAK;SAC/B;QAED,oEAAoE;QACpE;YACE,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,wBAAwB;YACjC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE;gBACzC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;aAC/B;YACD,OAAO,EAAE,CAAC;SACX;KACF,CAAA;IAED,IAAI,CAAC;QACH,8CAA8C;QAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0DAA0D,CAAC,CAAC,CAAA;YACrF,MAAM,cAAc,GAAG,MAAM,CAAA;YAC7B,MAAM,qBAAqB,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAA;YAC/D,OAAO;gBACL,GAAG,SAAS;gBACZ,cAAc;gBACd,qBAAqB;aACtB,CAAA;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAA;QACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAE5C,IAAI,SAAS,CAAA;QACb,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,OAAO,CAAC,eAAsB,EAAE;gBAChD,QAAQ,EAAE,GAAG,EAAE;oBACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAA;oBAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACjB,CAAC;aACF,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,+BAA+B,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAC1G,CAAA;QACH,CAAC;QAED,MAAM,sBAAsB,GAAG,CAAC,SAAS,CAAC,cAAc,IAAI,MAAM,CAAmB,CAAA;QACrF,MAAM,qBAAqB,GAAG,yBAAyB,CAAC,sBAAsB,CAAC,CAAA;QAE/E,MAAM,kBAAkB,GAAG,eAAe,CAAC,SAAS,CAAC,kBAAkB,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;QAC5G,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC,aAAa,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;QAC7F,MAAM,qBAAqB,GAAG,eAAe,CAAC,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACrH,MAAM,kBAAkB,GAAG,eAAe,CAAC,SAAS,CAAC,kBAAkB,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;QAE5G,OAAO;YACL,GAAG,SAAS;YACZ,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ;YACtE,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW;YAC3D,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM;YAC5C,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO;YAC/C,MAAM,EAAE;gBACN,MAAM,EAAE;oBACN,MAAM,EAAE,kBAAkB;oBAC1B,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,kBAAkB,CAAC;iBAC/C;gBACD,CAAC,EAAE;oBACD,MAAM,EAAE,aAAa;oBACrB,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC;iBACrC;gBACD,SAAS,EAAE;oBACT,MAAM,EAAE,qBAAqB;oBAC7B,GAAG,EAAE,WAAW,CAAC,WAAW,EAAE,qBAAqB,CAAC;iBACrD;gBACD,MAAM,EAAE;oBACN,MAAM,EAAE,kBAAkB;oBAC1B,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,kBAAkB,CAAC;iBAC/C;aACF;YACD,cAAc,EAAE,sBAAsB;YACtC,qBAAqB;YACrB,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa;YAC/D,GAAG,EAAE,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,KAAK,KAAK,CAAC;SAC3E,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACpH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CACjC,SAAiB,EACjB,SAA4B,EAC5B,OAAsB;IAEtB,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAA;IAE/C,8CAA8C;IAC9C,MAAM,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;IAE5D,+BAA+B;IAC/B,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAC9B,MAAM,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;IACtD,CAAC;IAED,yBAAyB;IACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;IACvD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACxD,MAAM,aAAa,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;IAC9C,CAAC;IAED,0CAA0C;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;IACrD,MAAM,kBAAkB,GACtB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACnD,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAA;IAE7D,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,MAAM,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,WAAW,KAAK,KAAK,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAA;IAC7C,IAAI,aAAa,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,+DAA+D;QAC/D,MAAM,iBAAiB,GAAG,aAAa,KAAK,KAAK,IAAI,CAAC,kBAAkB,CAAA;QACxE,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;YAC1D,MAAM,oBAAoB,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,cAAc,CAAC,CAAA;QAClG,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,OAAO,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,CAAA;IAEnE,oCAAoC;IACpC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAA;IACnC,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,uBAAuB,CAAC,SAAS,CAAC,CAAA;IAC1C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,SAAiB,EACjB,cAAsB,EACtB,gBAAyB;IAEzB,yCAAyC;IACzC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAEnD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACrB,sDAAsD;QACtD,MAAM,iBAAiB,CAAC,SAAS,EAAE,cAAgC,CAAC,CAAA;IACtE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAAC,OAAuB;IACxD,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,OAAO,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;IACrF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,6BAA6B,OAAO,+BAA+B,OAAO,0BAA0B,CACrG,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAmB,EACnB,UAAyB,EAAE;IAE3B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAA;IACvD,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAA;IAEnD,4BAA4B;IAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,iBAAiB,CAAC,CAAA;IAC5D,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1B,oBAAoB,CAAC,gBAAgB,CAAC,CAAA;IACxC,CAAC;IAED,mCAAmC;IACnC,MAAM,SAAS,GAAsB;QACnC,QAAQ,EAAE,gBAAgB;QAC1B,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,4CAA4C;QAChF,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,GAAG,WAAW,YAAY;QACpD,aAAa,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACpD,OAAO,EAAE,+BAA+B;QACxC,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,MAAM,EAAE,UAAU;gBAClB,GAAG,EAAE,4BAA4B;aAClC;YACD,CAAC,EAAE;gBACD,MAAM,EAAE,WAAW;gBACnB,GAAG,EAAE,wBAAwB;aAC9B;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,SAAS;gBACjB,GAAG,EAAE,8BAA8B;aACpC;YACD,MAAM,EAAE;gBACN,MAAM,EAAE,YAAY;gBACpB,GAAG,EAAE,+BAA+B;aACrC;SACF;QACD,cAAc,EAAE,MAAM,EAAE,gDAAgD;QACxE,qBAAqB,EAAE,EAAE;KAC1B,CAAA;IAED,oCAAoC;IACpC,0CAA0C;IAC1C,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAEjE,MAAM,aAAa,GAAG,CAAC,cAAc,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAA;IACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,WAAW,gBAAgB,aAAa,IAAI,CAAC,CAAC,CAAA;IAEpF,gEAAgE;IAChE,MAAM,oBAAoB,GAAG,MAAM,eAAe,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;IACrG,MAAM,eAAe,GAAkB;QACrC,GAAG,OAAO;QACV,QAAQ,EAAE,cAAc,CAAC,QAAQ;QACjC,YAAY,EAAE,oBAAoB;KACnC,CAAA;IAED,8DAA8D;IAC9D,MAAM,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE,eAAe,CAAC,CAAA;IAC9D,MAAM,oBAAoB,CAAC,SAAS,EAAE,cAAc,EAAE,eAAe,CAAC,CAAA;IAEtE,WAAW;IACX,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAA;IACnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,WAAW,kBAAkB,CAAC,CAAC,CAAA;IAE5D,aAAa;IACb,MAAM,eAAe,GAAG,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC,aAAa,EAAE,CAAA;IACnF,cAAc,CAAC,WAAW,EAAE,eAAe,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;AAC7E,CAAC;AAGD;;GAEG;AACH,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,KAAa,EAAE,WAAoB;IACtF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IAE1D,IAAI,CAAC;QACH,0DAA0D;QAC1D,MAAM,UAAU,GAAG;;;;;;CAMtB,CAAA;QACG,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,UAAU,CAAC,CAAA;QAE5C,IAAI,WAAW,EAAE,CAAC;YAChB,wFAAwF;YACxF,QAAQ,CAAC,8BAA8B,EAAE;gBACvC,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,KAAK,CAAC,iCAAiC;aACjD,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,kGAAkG;YAClG,QAAQ,CAAC,yCAAyC,EAAE;gBAClD,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,KAAK,CAAC,iCAAiC;aACjD,CAAC,CAAA;QACJ,CAAC;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,iDAAiD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC5H,CAAC;YAAS,CAAC;QACT,oCAAoC;QACpC,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,MAAc,EAAE,QAAgB,EAAE,WAAoB,EAAE,cAAsC;IAChI,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,QAAQ,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAA;IAExE,IAAI,CAAC;QACH,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YACvB,8CAA8C;YAC9C,MAAM,OAAO,GAAG;gBACd,KAAK;gBACL,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;gBACvB,aAAa;gBACb,OAAO;aACR,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAEjB,QAAQ,CAAC,qBAAqB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;gBACjD,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,MAAM,CAAC,oCAAoC;aACrD,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,0EAA0E;YAC1E,MAAM,cAAc,GAAG,cAAc,EAAE,cAAc,IAAI;gBACvD,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;aACzE,CAAA;YAED,IAAI,CAAC,CAAC,QAAQ,IAAI,cAAc,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,sBAAsB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACpH,CAAC;YAED,MAAM,UAAU,GAAI,cAA2D,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAA;YAEpG,kCAAkC;YAClC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG;oBACd,KAAK;oBACL,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;oBACvB,aAAa;oBACb,SAAS;iBACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBAEjB,QAAQ,CAAC,qBAAqB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;oBACjD,GAAG,EAAE,MAAM;oBACX,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,KAAK,CAAC,kCAAkC;iBAClD,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,OAAO,QAAQ,0BAA0B,CAAC,CAAA;IAC5D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,OAAO,QAAQ,wCAAwC,CAAC,CAAA;QACrE,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,uBAAuB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/H,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CAAC,MAAc,EAAE,OAAe;IACjE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC7D,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;IAE/D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAA;IACxF,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAA;QACvE,MAAM,gBAAgB,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;YACvD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YACzD,CAAC,CAAC,EAAE,CAAA;QAEN,wFAAwF;QACxF,MAAM,SAAS,GAAG;YAChB,GAAG,gBAAgB;YACnB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,gBAAgB,CAAC,KAAK;YAC/C,GAAG,EAAE,QAAQ,CAAC,GAAG,IAAI,gBAAgB,CAAC,GAAG;YACzC,GAAG,EAAE,QAAQ,CAAC,GAAG,IAAI,gBAAgB,CAAC,GAAG;YACzC,QAAQ,EAAE;gBACR,GAAG,CAAC,gBAAgB,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACpC,GAAG,QAAQ,CAAC,QAAQ;gBACpB,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,IAAI,gBAAgB;aACzD;YACD,OAAO,EAAE;gBACP,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,gBAAgB,CAAC,OAAO,IAAI,EAAE,CAAC;aACpC;YACD,UAAU,EAAE,gBAAgB,CAAC,UAAU,IAAI,EAAE;SAC9C,CAAA;QAED,MAAM,EAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAClH,CAAC;AACH,CAAC;AAID;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,SAAiB,EAAE,SAA4B,EAAE,UAAyB,EAAE;IAC7G,MAAM,OAAO,GAAG,GAAG,CAAC,iCAAiC,CAAC,CAAC,KAAK,EAAE,CAAA;IAE9D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAA;QAE9C,oCAAoC;QACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE;YAC/B,GAAG,EAAE,OAAO;YACZ,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAA;QAEF,oBAAoB;QACpB,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YAEjD,+CAA+C;YAC/C,IAAI,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;gBACxC,SAAQ;YACV,CAAC;YAED,wBAAwB;YACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAA;YAEtE,iCAAiC;YACjC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;YAE5C,yBAAyB;YACzB,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACrC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;gBACrD,MAAM,gBAAgB,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBAC5D,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAA;YAClD,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;QACjD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,SAAiB,EAAE,SAA4B,EAAE,UAAyB,EAAE;IACxH,MAAM,OAAO,GAAG,GAAG,CAAC,gCAAgC,CAAC,CAAC,KAAK,EAAE,CAAA;IAE7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,SAAS,CAAC,cAAc,CAAC,CAAA;QAE1F,4CAA4C;QAC5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAA;YACzD,OAAM;QACR,CAAC;QAED,+CAA+C;QAC/C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE;YAC/B,GAAG,EAAE,iBAAiB;YACtB,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAA;QAEF,8CAA8C;QAC9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;YACrD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;YAE7C,iCAAiC;YACjC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;YAE5C,0DAA0D;YAC1D,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;gBACrD,MAAM,gBAAgB,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBAC5D,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAA;gBAC7D,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;YACvD,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,kBAAkB,SAAS,CAAC,cAAc,EAAE,CAAC,CAAA;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;QACpD,MAAM,IAAI,KAAK,CACb,8CAA8C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvG,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAAC,SAAiB,EAAE,cAA8B;IAClF,MAAM,OAAO,GAAG,GAAG,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAA;IAErD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAA;QACzE,QAAQ,CAAC,OAAO,EAAE;YAChB,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;QACF,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;QAC3C,MAAM,IAAI,KAAK,CACb,uCAAuC,cAAc,IAAI;YACzD,WAAW,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,cAAc,mCAAmC,CAC5F,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAAC,OAAe,EAAE,cAA8B;IAC1E,MAAM,OAAO,GAAG,GAAG,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAA;IAErD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAA;QAE3D,4BAA4B;QAC5B,QAAQ,CAAC,GAAG,SAAS,cAAc,EAAE;YACnC,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;QAEF,2BAA2B;QAC3B,QAAQ,CAAC,GAAG,SAAS,kBAAkB,EAAE;YACvC,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;QAEF,uBAAuB;QACvB,QAAQ,CAAC,GAAG,SAAS,uBAAuB,EAAE;YAC5C,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;QAEF,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAA;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QACrC,MAAM,IAAI,KAAK,CACb,kCAAkC,cAAc,IAAI;YACpD,WAAW,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,cAAc,mBAAmB,cAAc,uBAAuB,cAAc,kCAAkC,CAC/J,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,SAAiB,EAAE,cAA8B;IAChF,MAAM,OAAO,GAAG,GAAG,CAAC,2BAA2B,CAAC,CAAC,KAAK,EAAE,CAAA;IAExD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAA;QAC5D,QAAQ,CAAC,GAAG,SAAS,eAAe,EAAE;YACpC,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,KAAK,CAAC,oBAAoB;SACpC,CAAC,CAAA;QACF,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;QACtC,MAAM,IAAI,KAAK,CACb,+BAA+B,cAAc,iEAAiE,CAC/G,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,uBAAuB,CAAC,SAAiB;IACtD,MAAM,OAAO,GAAG,GAAG,CAAC,iCAAiC,CAAC,CAAC,KAAK,EAAE,CAAA;IAE9D,IAAI,CAAC;QACH,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACvD,QAAQ,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,QAAQ,CAAC,uDAAuD,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACpG,OAAO,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAA;QACrD,MAAM,IAAI,KAAK,CACb,wGAAwG,CACzG,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CACrB,WAAmB,EACnB,OAAsB,EACtB,cAA8B;IAE9B,MAAM,SAAS,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAA;IAE3D,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAE5C,4BAA4B;IAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;IACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,WAAW,EAAE,CAAC,CAAC,CAAA;IAElD,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,SAAS,UAAU,CAAC,CAAC,CAAA;QACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,SAAS,MAAM,CAAC,CAAC,CAAA;IACnD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,SAAS,MAAM,CAAC,CAAC,CAAA;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC,CAAA;IAEjG,0BAA0B;IAC1B,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAElE,MAAM,QAAQ,GAAG;QACf,yCAAyC;QACzC,6CAA6C;QAC7C,6CAA6C;QAC7C,oCAAoC;QACpC,uEAAuE;QACvE,oDAAoD;QACpD,gDAAgD;KACjD,CAAA;IAED,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;QAC7D,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,0DAA0D,CAAC,CAAA;IACnF,CAAC;SAAM,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QACjC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,yDAAyD,CAAC,CAAA;IAClF,CAAC;IAED,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,aAAa;IACb,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAA;IACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC,CAAA;IACtF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAA;IAChF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC,CAAA;IAEtG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAA;IACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAA;IACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAA;IACrE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9B,CAAC"}
|
package/dist/download.js
CHANGED
|
@@ -18,12 +18,12 @@ export async function downloadGitHubRelease(owner, repo, targetDir, tag = 'lates
|
|
|
18
18
|
? `https://api.github.com/repos/${owner}/${repo}/releases/latest`
|
|
19
19
|
: `https://api.github.com/repos/${owner}/${repo}/releases/tags/${tag}`;
|
|
20
20
|
const releaseResponse = await fetch(apiUrl);
|
|
21
|
+
let downloadUrl = null;
|
|
21
22
|
if (!releaseResponse.ok) {
|
|
22
|
-
throw new Error(`Failed to fetch release info: ${releaseResponse.statusText}`);
|
|
23
|
+
throw new Error(`Failed to fetch release info: ${releaseResponse.status} ${releaseResponse.statusText}`);
|
|
23
24
|
}
|
|
24
25
|
const releaseData = await releaseResponse.json();
|
|
25
|
-
|
|
26
|
-
const downloadUrl = releaseData.tarball_url;
|
|
26
|
+
downloadUrl = releaseData.tarball_url || null;
|
|
27
27
|
if (!downloadUrl) {
|
|
28
28
|
throw new Error('No tarball found in release');
|
|
29
29
|
}
|
package/dist/download.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download.js","sourceRoot":"","sources":["../src/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,IAAY,EACZ,SAAiB,EACjB,MAAc,QAAQ;IAEtB,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,KAAK,IAAI,IAAI,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,CAAA;IAE7E,IAAI,CAAC;QACH,8CAA8C;QAC9C,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC7B,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAE5B,mCAAmC;QACnC,MAAM,MAAM,GAAG,GAAG,KAAK,QAAQ;YAC7B,CAAC,CAAC,gCAAgC,KAAK,IAAI,IAAI,kBAAkB;YACjE,CAAC,CAAC,gCAAgC,KAAK,IAAI,IAAI,kBAAkB,GAAG,EAAE,CAAA;QAExE,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,iCAAiC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"download.js","sourceRoot":"","sources":["../src/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,IAAY,EACZ,SAAiB,EACjB,MAAc,QAAQ;IAEtB,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,KAAK,IAAI,IAAI,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,CAAA;IAE7E,IAAI,CAAC;QACH,8CAA8C;QAC9C,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC7B,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAE5B,mCAAmC;QACnC,MAAM,MAAM,GAAG,GAAG,KAAK,QAAQ;YAC7B,CAAC,CAAC,gCAAgC,KAAK,IAAI,IAAI,kBAAkB;YACjE,CAAC,CAAC,gCAAgC,KAAK,IAAI,IAAI,kBAAkB,GAAG,EAAE,CAAA;QAExE,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,WAAW,GAAkB,IAAI,CAAA;QAErC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,iCAAiC,eAAe,CAAC,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC,CAAA;QAC1G,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,IAAI,EAAS,CAAA;QACvD,WAAW,GAAG,WAAW,CAAC,WAAW,IAAI,IAAI,CAAA;QAE7C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChD,CAAC;QAED,uBAAuB;QACvB,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,CAAA;QAChD,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,+BAA+B,eAAe,CAAC,UAAU,EAAE,CAAC,CAAA;QAC9E,CAAC;QAED,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;QACvD,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,CAAA;QACzD,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;QAE3D,kBAAkB;QAClB,QAAQ,CAAC,aAAa,WAAW,8BAA8B,SAAS,GAAG,EAAE;YAC3E,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;QAEF,qBAAqB;QACrB,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAE5B,OAAO,CAAC,OAAO,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,CAAA;IAChF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,sBAAsB,KAAK,IAAI,IAAI,IAAI,GAAG,UAAU,CAAC,CAAA;QAClE,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACjH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,QAAgB,EAAE,SAAiB;IACxE,oDAAoD;IACpD,MAAM,KAAK,GAAG,SAAS,CAAA;IACvB,MAAM,IAAI,GAAG,QAAQ,CAAA;IAErB,MAAM,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC7D,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -9,12 +9,11 @@ program
|
|
|
9
9
|
.description('Create CLI - Create a new MVPKit application')
|
|
10
10
|
.version('0.1.0')
|
|
11
11
|
.argument('<project-name>', 'name of the project')
|
|
12
|
-
.option('-t, --template <template>', 'template to use (core)', 'core')
|
|
12
|
+
.option('-t, --template <template>', 'template to use (core, saas)', 'core')
|
|
13
13
|
.option('-d, --description <description>', 'project description')
|
|
14
14
|
.option('-w, --website <domain>', 'domain name for the application')
|
|
15
15
|
.option('-y, --yes', 'skip interactive prompts and use defaults (non-interactive mode)')
|
|
16
16
|
.option('-p, --pack <pack>', 'install component pack (basic=essentials, all)', 'basic')
|
|
17
|
-
.option('-nc, --no-cache', 'disable template caching, always download fresh')
|
|
18
17
|
.option('--no-install', 'skip dependency installation')
|
|
19
18
|
.option('--no-git', 'skip git initialization')
|
|
20
19
|
.addOption(new Option('--template-path <path>', 'local template directory path (for development/testing)').hideHelp())
|
|
@@ -24,7 +23,6 @@ program
|
|
|
24
23
|
validateProjectName(projectName);
|
|
25
24
|
const createOptions = {
|
|
26
25
|
template: options.template,
|
|
27
|
-
cache: options.cache,
|
|
28
26
|
description: options.description,
|
|
29
27
|
domain: options.website,
|
|
30
28
|
install: options.install,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,iBAAiB,CAAC;KACvB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,OAAO,CAAC,OAAO,CAAC;KAChB,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,2BAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,iBAAiB,CAAC;KACvB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,OAAO,CAAC,OAAO,CAAC;KAChB,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,2BAA2B,EAAE,8BAA8B,EAAE,MAAM,CAAC;KAC3E,MAAM,CAAC,iCAAiC,EAAE,qBAAqB,CAAC;KAChE,MAAM,CAAC,wBAAwB,EAAE,iCAAiC,CAAC;KACnE,MAAM,CAAC,WAAW,EAAE,kEAAkE,CAAC;KACvF,MAAM,CAAC,mBAAmB,EAAE,gDAAgD,EAAE,OAAO,CAAC;KACtF,MAAM,CAAC,cAAc,EAAE,8BAA8B,CAAC;KACtD,MAAM,CAAC,UAAU,EAAE,yBAAyB,CAAC;KAC7C,SAAS,CAAC,IAAI,MAAM,CAAC,wBAAwB,EAAE,yDAAyD,CAAC,CAAC,QAAQ,EAAE,CAAC;KACrH,MAAM,CAAC,KAAK,EAAE,WAAmB,EAAE,OAAY,EAAE,EAAE;IAClD,IAAI,CAAC;QACH,wBAAwB;QACxB,mBAAmB,CAAC,WAAW,CAAC,CAAA;QAEhC,MAAM,aAAa,GAAG;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,OAAO,CAAC,OAAO;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG;YACzB,aAAa,EAAE,OAAO,CAAC,IAAI;YAC3B,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAA;QAED,2CAA2C;QAC3C,MAAM,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3E,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,CAAA;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,KAAK,EAAE,CAAA"}
|
package/dist/template.js
CHANGED
|
@@ -6,15 +6,30 @@ Handlebars.registerHelper('eq', (a, b) => a === b);
|
|
|
6
6
|
/**
|
|
7
7
|
* Simple template processing - only for .template files using handlebars
|
|
8
8
|
*/
|
|
9
|
+
function getValueByPath(obj, variablePath) {
|
|
10
|
+
return variablePath.split('.').reduce((acc, key) => {
|
|
11
|
+
if (acc && typeof acc === 'object' && key in acc) {
|
|
12
|
+
return acc[key];
|
|
13
|
+
}
|
|
14
|
+
return undefined;
|
|
15
|
+
}, obj);
|
|
16
|
+
}
|
|
17
|
+
function replaceVariables(content, variables) {
|
|
18
|
+
return content.replace(/\{\{\s*([A-Za-z_]\w*(?:\.[A-Za-z_]\w*)*)\s*\}\}/g, (match, variablePath) => {
|
|
19
|
+
const value = getValueByPath(variables, variablePath);
|
|
20
|
+
if (value === undefined || value === null) {
|
|
21
|
+
return match;
|
|
22
|
+
}
|
|
23
|
+
return String(value);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
9
26
|
export function processTemplate(content, variables) {
|
|
10
|
-
|
|
27
|
+
const usesBlockHelpers = /\{\{\s*[#/]/.test(content);
|
|
28
|
+
if (usesBlockHelpers) {
|
|
11
29
|
const template = Handlebars.compile(content);
|
|
12
30
|
return template(variables);
|
|
13
31
|
}
|
|
14
|
-
|
|
15
|
-
console.warn('Template processing failed:', error instanceof Error ? error.message : String(error));
|
|
16
|
-
return content;
|
|
17
|
-
}
|
|
32
|
+
return replaceVariables(content, variables);
|
|
18
33
|
}
|
|
19
34
|
/**
|
|
20
35
|
* Read .templateignore file and return patterns
|
package/dist/template.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,IAAI,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mvp-kit/create",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.13",
|
|
4
4
|
"description": "Create MVPKit applications - Universal Create CLI for all MVPKit templates",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -15,18 +15,27 @@
|
|
|
15
15
|
"license": "MIT",
|
|
16
16
|
"repository": {
|
|
17
17
|
"type": "git",
|
|
18
|
-
"url": "https://github.com/mvp-kit/create.git"
|
|
18
|
+
"url": "git+https://github.com/mvp-kit/create.git"
|
|
19
19
|
},
|
|
20
20
|
"bin": {
|
|
21
|
-
"
|
|
21
|
+
"create-mvpkit": "dist/index.js"
|
|
22
22
|
},
|
|
23
23
|
"files": [
|
|
24
24
|
"dist",
|
|
25
25
|
"README.md"
|
|
26
26
|
],
|
|
27
|
+
"publishConfig": {
|
|
28
|
+
"access": "public"
|
|
29
|
+
},
|
|
27
30
|
"engines": {
|
|
28
31
|
"node": ">=20.0.0"
|
|
29
32
|
},
|
|
33
|
+
"scripts": {
|
|
34
|
+
"build": "tsc && chmod +x dist/index.js",
|
|
35
|
+
"dev": "tsc --watch",
|
|
36
|
+
"clean": "rm -rf dist",
|
|
37
|
+
"typecheck": "tsc --noEmit"
|
|
38
|
+
},
|
|
30
39
|
"dependencies": {
|
|
31
40
|
"@types/prompts": "^2.4.9",
|
|
32
41
|
"chalk": "^5.3.0",
|
|
@@ -44,11 +53,5 @@
|
|
|
44
53
|
"@types/inquirer": "^9.0.0",
|
|
45
54
|
"@types/node": "^20.0.0",
|
|
46
55
|
"typescript": "^5.9.2"
|
|
47
|
-
},
|
|
48
|
-
"scripts": {
|
|
49
|
-
"build": "tsc && chmod +x dist/index.js",
|
|
50
|
-
"dev": "tsc --watch",
|
|
51
|
-
"clean": "rm -rf dist",
|
|
52
|
-
"typecheck": "tsc --noEmit"
|
|
53
56
|
}
|
|
54
|
-
}
|
|
57
|
+
}
|