micro-generate 1.2.0 → 1.2.1
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 +29 -2
- package/dist/cli/index.js +67 -31
- package/dist/cli/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -67,8 +67,35 @@ npx micro-generate mutation
|
|
|
67
67
|
```
|
|
68
68
|
* Similar a `query`, ideal para operaciones de creación, actualización o eliminación (CRUD).
|
|
69
69
|
|
|
70
|
-
### 5. 🤖
|
|
71
|
-
Todos los comandos
|
|
70
|
+
### 5. 🤖 Referencia de Flags (Modo Headless)
|
|
71
|
+
Todos los comandos pueden ejecutarse sin prompts interactivos usando los siguientes flags.
|
|
72
|
+
|
|
73
|
+
#### `init` (Inicializar Proyecto)
|
|
74
|
+
| Flag | Descripción | Ejemplo |
|
|
75
|
+
|------|-------------|---------|
|
|
76
|
+
| `-n, --name <nombre>` | Nombre del proyecto | `-n my-api` |
|
|
77
|
+
| `--mongo` / `--no-mongo` | Habilita/Deshabilita MongoDB | `--no-mongo` |
|
|
78
|
+
| `--mysql` / `--no-mysql` | Habilita/Deshabilita MySQL | `--mysql` |
|
|
79
|
+
| `--redis` / `--no-redis` | Habilita/Deshabilita Redis | `--redis` |
|
|
80
|
+
| `--mongo-dbs <lista>` | DBs adicionales Mongo (separadas por coma)| `--mongo-dbs "logs,users"` |
|
|
81
|
+
| `--mysql-dbs <lista>` | DBs adicionales MySQL (separadas por coma)| `--mysql-dbs "archive,stats"` |
|
|
82
|
+
|
|
83
|
+
#### `feature` (Crear Feature)
|
|
84
|
+
| Flag | Descripción | Ejemplo |
|
|
85
|
+
|------|-------------|---------|
|
|
86
|
+
| `-n, --name <nombre>` | Nombre de la feature | `-n orders` |
|
|
87
|
+
| `--mongo` / `--no-mongo` | Habilita/Deshabilita MongoDB | `--mongo` |
|
|
88
|
+
| `--mysql` / `--no-mysql` | Habilita/Deshabilita MySQL | `--mysql` |
|
|
89
|
+
| `--redis` / `--no-redis` | Habilita/Deshabilita Redis | `--redis` |
|
|
90
|
+
| `--db-connection <nombre>`| Nombre de la conexión Mongo (Multi-DB) | `--db-connection logs` |
|
|
91
|
+
| `--mysql-connection <nombre>`| Nombre de la conexión MySQL (Multi-DB) | `--mysql-connection main` |
|
|
92
|
+
|
|
93
|
+
#### `query` y `mutation`
|
|
94
|
+
| Flag | Descripción | Ejemplo |
|
|
95
|
+
|------|-------------|---------|
|
|
96
|
+
| `-f, --feature <nombre>` | Feature objetivo | `-f users` |
|
|
97
|
+
| `-n, --name <nombre>` | Nombre de la query/mutation | `-n getUser` |
|
|
98
|
+
| `-r, --return-type <tipo>` | Tipo de retorno GraphQL | `-r UserResponse` |
|
|
72
99
|
|
|
73
100
|
**Ejemplos:**
|
|
74
101
|
```bash
|
package/dist/cli/index.js
CHANGED
|
@@ -95,54 +95,90 @@ program
|
|
|
95
95
|
program
|
|
96
96
|
.command('init')
|
|
97
97
|
.description('Initialize a new project')
|
|
98
|
-
.
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
.option('-n, --name <name>', 'Project name')
|
|
99
|
+
.option('--mongo', 'Use MongoDB')
|
|
100
|
+
.option('--no-mongo', 'Skip MongoDB')
|
|
101
|
+
.option('--mongo-dbs <dbs>', 'Additional Mongo DBs (comma separated)')
|
|
102
|
+
.option('--mysql', 'Use MySQL')
|
|
103
|
+
.option('--no-mysql', 'Skip MySQL')
|
|
104
|
+
.option('--mysql-dbs <dbs>', 'Additional MySQL DBs (comma separated)')
|
|
105
|
+
.option('--redis', 'Use Redis')
|
|
106
|
+
.option('--no-redis', 'Skip Redis')
|
|
107
|
+
.action(async (options) => {
|
|
108
|
+
const prompts = [];
|
|
109
|
+
if (!options.name) {
|
|
110
|
+
prompts.push({
|
|
101
111
|
type: 'input',
|
|
102
112
|
name: 'name',
|
|
103
113
|
message: 'Project name (default: current directory):',
|
|
104
114
|
default: path.basename(process.cwd()),
|
|
105
|
-
}
|
|
106
|
-
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
if (options.mongo === undefined) {
|
|
118
|
+
prompts.push({
|
|
107
119
|
type: 'confirm',
|
|
108
120
|
name: 'useMongo',
|
|
109
121
|
message: 'Do you want to use MongoDB?',
|
|
110
122
|
default: true,
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
{
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
// We can't easily conditionally prompt for dbs inside the array if we don't know useMongo yet.
|
|
126
|
+
// But for init, we can just ask for DBs if useMongo is likely true, or use "when" dynamically.
|
|
127
|
+
// However, mixing flags and prompts makes "when" tricky.
|
|
128
|
+
// Adaptation: We prompt for Main booleans first.
|
|
129
|
+
if (options.mysql === undefined) {
|
|
130
|
+
prompts.push({
|
|
120
131
|
type: 'confirm',
|
|
121
132
|
name: 'useMySQL',
|
|
122
133
|
message: 'Do you want to use MySQL (Sequelize)?',
|
|
123
134
|
default: false,
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
message: 'Enter additional MySQL database names (comma separated, leave empty if none):',
|
|
129
|
-
when: (answers) => answers.useMySQL,
|
|
130
|
-
filter: (input) => input ? input.split(',').map((s) => s.trim()).filter((s) => s.length > 0) : [],
|
|
131
|
-
},
|
|
132
|
-
{
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
if (options.redis === undefined) {
|
|
138
|
+
prompts.push({
|
|
133
139
|
type: 'confirm',
|
|
134
140
|
name: 'useRedis',
|
|
135
141
|
message: 'Do you want to use Redis?',
|
|
136
142
|
default: true,
|
|
137
|
-
}
|
|
138
|
-
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
const answers = await inquirer.prompt(prompts);
|
|
146
|
+
const name = options.name || answers.name;
|
|
147
|
+
const useMongo = options.mongo !== undefined ? options.mongo : answers.useMongo;
|
|
148
|
+
const useMySQL = options.mysql !== undefined ? options.mysql : answers.useMySQL;
|
|
149
|
+
const useRedis = options.redis !== undefined ? options.redis : answers.useRedis;
|
|
150
|
+
// Secondary prompts for DB lists
|
|
151
|
+
const secondaryPrompts = [];
|
|
152
|
+
if (useMongo && options.mongoDbs === undefined) {
|
|
153
|
+
// Note: If user didn't provide flag, we ask.
|
|
154
|
+
// If they provided flag but empty string? We assume they want none.
|
|
155
|
+
// Wait, option is <dbs>. If missing, it's undefined.
|
|
156
|
+
secondaryPrompts.push({
|
|
157
|
+
type: 'input',
|
|
158
|
+
name: 'dbNames',
|
|
159
|
+
message: 'Enter additional MongoDB database names (comma separated, leave empty if none):',
|
|
160
|
+
filter: (input) => input ? input.split(',').map((s) => s.trim()).filter((s) => s.length > 0) : [],
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
if (useMySQL && options.mysqlDbs === undefined) {
|
|
164
|
+
secondaryPrompts.push({
|
|
165
|
+
type: 'input',
|
|
166
|
+
name: 'mysqlDbNames',
|
|
167
|
+
message: 'Enter additional MySQL database names (comma separated, leave empty if none):',
|
|
168
|
+
filter: (input) => input ? input.split(',').map((s) => s.trim()).filter((s) => s.length > 0) : [],
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
const secondaryAnswers = await inquirer.prompt(secondaryPrompts);
|
|
172
|
+
// Process flags for DBs if present
|
|
173
|
+
const dbNamesFlag = options.mongoDbs ? options.mongoDbs.split(',').map((s) => s.trim()).filter((s) => s.length > 0) : undefined;
|
|
174
|
+
const mysqlDbNamesFlag = options.mysqlDbs ? options.mysqlDbs.split(',').map((s) => s.trim()).filter((s) => s.length > 0) : undefined;
|
|
139
175
|
await generateInit({
|
|
140
|
-
name
|
|
141
|
-
useMongo
|
|
142
|
-
useRedis
|
|
143
|
-
useMySQL
|
|
144
|
-
dbNames:
|
|
145
|
-
mysqlDbNames:
|
|
176
|
+
name,
|
|
177
|
+
useMongo,
|
|
178
|
+
useRedis,
|
|
179
|
+
useMySQL,
|
|
180
|
+
dbNames: dbNamesFlag !== undefined ? dbNamesFlag : secondaryAnswers.dbNames || [],
|
|
181
|
+
mysqlDbNames: mysqlDbNamesFlag !== undefined ? mysqlDbNamesFlag : secondaryAnswers.mysqlDbNames || [],
|
|
146
182
|
});
|
|
147
183
|
});
|
|
148
184
|
program
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|