@darkstar-cli/cli 0.0.6 → 0.0.8

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-api.d.ts","sourceRoot":"","sources":["../../../src/commands/forge/make-api.ts"],"names":[],"mappings":"AAyLA,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,QAsBnC;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,QAcpC;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,QAYtC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,QAY1C"}
@@ -0,0 +1,263 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.makeApi = makeApi;
40
+ exports.makeUtil = makeUtil;
41
+ exports.makeSchema = makeSchema;
42
+ exports.makeMiddleware = makeMiddleware;
43
+ const kleur_1 = __importDefault(require("kleur"));
44
+ const fs = __importStar(require("fs"));
45
+ const path = __importStar(require("path"));
46
+ function success(msg) { console.log(kleur_1.default.green(' ✔ ') + msg); }
47
+ function info(msg) { console.log(kleur_1.default.cyan(' → ') + msg); }
48
+ function error(msg) { console.log(kleur_1.default.red(' ✘ ') + msg); }
49
+ function ensureDir(dirPath) {
50
+ if (!fs.existsSync(dirPath))
51
+ fs.mkdirSync(dirPath, { recursive: true });
52
+ }
53
+ function writeFile(filePath, content) {
54
+ if (fs.existsSync(filePath)) {
55
+ error(`Arquivo já existe: ${filePath}`);
56
+ return;
57
+ }
58
+ ensureDir(path.dirname(filePath));
59
+ fs.writeFileSync(filePath, content, 'utf-8');
60
+ success(`Criado: ${filePath}`);
61
+ }
62
+ function pluralize(word) {
63
+ if (word.endsWith('ch') || word.endsWith('sh') || word.endsWith('x') || word.endsWith('z') || word.endsWith('s')) {
64
+ return word + 'es';
65
+ }
66
+ if (word.endsWith('y') && !['ay', 'ey', 'iy', 'oy', 'uy'].some(v => word.endsWith(v))) {
67
+ return word.slice(0, -1) + 'ies';
68
+ }
69
+ return word + 's';
70
+ }
71
+ function controllerStub(name) {
72
+ const lower = name.toLowerCase();
73
+ return `import { DarkstarRequest, DarkstarResponse } from '@darkstar-cli/core'
74
+ import { ${name}Service } from '../services/${name}Service'
75
+
76
+ export class ${name}Controller {
77
+ constructor(private ${lower}Service: ${name}Service) {}
78
+
79
+ async index(req: DarkstarRequest, res: DarkstarResponse) {
80
+ const data = await this.${lower}Service.findAll()
81
+ return res.ok(data)
82
+ }
83
+
84
+ async show(req: DarkstarRequest, res: DarkstarResponse) {
85
+ const data = await this.${lower}Service.findById(req.param('id')!)
86
+ if (!data) return res.notFound('${name} não encontrado')
87
+ return res.ok(data)
88
+ }
89
+
90
+ async store(req: DarkstarRequest, res: DarkstarResponse) {
91
+ const data = await this.${lower}Service.create(req.all())
92
+ return res.created(data)
93
+ }
94
+
95
+ async update(req: DarkstarRequest, res: DarkstarResponse) {
96
+ const data = await this.${lower}Service.update(req.param('id')!, req.all())
97
+ return res.ok(data)
98
+ }
99
+
100
+ async destroy(req: DarkstarRequest, res: DarkstarResponse) {
101
+ await this.${lower}Service.delete(req.param('id')!)
102
+ return res.noContent()
103
+ }
104
+ }
105
+ `;
106
+ }
107
+ function serviceStub(name) {
108
+ const lower = name.toLowerCase();
109
+ return `import { ${name}Repository } from '../repositories/${name}Repository'
110
+
111
+ export class ${name}Service {
112
+ constructor(private ${lower}Repository: ${name}Repository) {}
113
+
114
+ findAll() { return this.${lower}Repository.findAll() }
115
+ findById(id: string) { return this.${lower}Repository.findById(id) }
116
+ create(data: Record<string, any>) { return this.${lower}Repository.create(data) }
117
+ update(id: string, data: Record<string, any>) { return this.${lower}Repository.update(id, data) }
118
+ delete(id: string) { return this.${lower}Repository.delete(id) }
119
+ }
120
+ `;
121
+ }
122
+ function repositoryStub(name) {
123
+ return `import { ${name} } from '../models/${name}'
124
+
125
+ export class ${name}Repository {
126
+ findAll() { return ${name}.findAll() }
127
+ findById(id: string) { return ${name}.findById(id) }
128
+ create(data: Record<string, any>) { return ${name}.create(data as any) }
129
+ update(id: string, data: Record<string, any>) { return ${name}.update(id, data as any) }
130
+ delete(id: string) { return ${name}.delete(id) }
131
+ }
132
+ `;
133
+ }
134
+ function modelStub(name) {
135
+ const table = pluralize(name.toLowerCase());
136
+ return `import { Model } from '@darkstar-cli/orm'
137
+
138
+ export class ${name} extends Model {
139
+ static table = '${table}'
140
+ }
141
+ `;
142
+ }
143
+ function routeStub(name) {
144
+ const lower = name.toLowerCase();
145
+ const plural = pluralize(lower);
146
+ return `import { Route, Container } from '@darkstar-cli/core'
147
+ import { ${name}Controller } from '../controllers/${name}Controller'
148
+ import { ${name}Service } from '../services/${name}Service'
149
+ import { ${name}Repository } from '../repositories/${name}Repository'
150
+
151
+ Container.bind('${name}Repository', ${name}Repository)
152
+ Container.bind('${name}Service', ${name}Service)
153
+ Container.bind('${name}Controller', ${name}Controller)
154
+
155
+ Route.resource('${plural}', ${name}Controller)
156
+ `;
157
+ }
158
+ function schemaStub(name) {
159
+ return `export const ${name}Schema = {}
160
+ `;
161
+ }
162
+ function middlewareStub(name) {
163
+ return `import { DarkstarRequest, DarkstarResponse, NextFunction } from '@darkstar-cli/core'
164
+
165
+ export class ${name}Middleware {
166
+ handle(req: DarkstarRequest, res: DarkstarResponse, next: NextFunction) {
167
+ next()
168
+ }
169
+ }
170
+ `;
171
+ }
172
+ function omitPasswordStub(name) {
173
+ return `export function omit${name}Password<T extends Record<string, any>>(obj: T): Omit<T, 'password'> {
174
+ const { password, ...rest } = obj
175
+ return rest
176
+ }
177
+ `;
178
+ }
179
+ function twoFactorStub(name) {
180
+ return `import * as crypto from 'crypto'
181
+
182
+ /**
183
+ * Gera um código TOTP simples de 6 dígitos para ${name}.
184
+ * Em produção, prefira libs como 'otplib' para TOTP compliant com RFC 6238.
185
+ */
186
+ export function generate${name}TwoFactorCode(): string {
187
+ const code = crypto.randomInt(100000, 999999)
188
+ return code.toString()
189
+ }
190
+
191
+ /**
192
+ * Valida se o código informado corresponde ao código esperado para ${name}.
193
+ */
194
+ export function validate${name}TwoFactorCode(inputCode: string, expectedCode: string): boolean {
195
+ return inputCode.trim() === expectedCode.trim()
196
+ }
197
+ `;
198
+ }
199
+ function registerRoute(src, lower) {
200
+ const appPath = path.join(src, 'core', 'app.ts');
201
+ if (!fs.existsSync(appPath))
202
+ return;
203
+ const plural = pluralize(lower);
204
+ let content = fs.readFileSync(appPath, 'utf-8');
205
+ const routeImport = `import '../routes/${plural}'`;
206
+ if (content.includes(routeImport))
207
+ return;
208
+ content = content.replace(/(import\s+.*\n)(?!import)/, `$1${routeImport}\n`);
209
+ fs.writeFileSync(appPath, content, 'utf-8');
210
+ success(`Rota registrada em src/core/app.ts`);
211
+ }
212
+ function makeApi(name) {
213
+ const src = path.resolve(process.cwd(), 'src');
214
+ const lower = name.toLowerCase();
215
+ const plural = pluralize(lower);
216
+ console.log('');
217
+ info(`Gerando camada completa para: ${kleur_1.default.magenta(name)}`);
218
+ console.log('');
219
+ writeFile(path.join(src, 'controllers', `${name}Controller.ts`), controllerStub(name));
220
+ writeFile(path.join(src, 'services', `${name}Service.ts`), serviceStub(name));
221
+ writeFile(path.join(src, 'repositories', `${name}Repository.ts`), repositoryStub(name));
222
+ writeFile(path.join(src, 'models', `${name}.ts`), modelStub(name));
223
+ writeFile(path.join(src, 'routes', `${plural}.ts`), routeStub(name));
224
+ writeFile(path.join(src, 'schemas', `${name}Schema.ts`), schemaStub(name));
225
+ writeFile(path.join(src, 'middlewares', `${name}Middleware.ts`), middlewareStub(name));
226
+ registerRoute(src, lower);
227
+ console.log('');
228
+ success(`API ${name} gerada com sucesso!`);
229
+ console.log('');
230
+ }
231
+ function makeUtil(name) {
232
+ const src = path.resolve(process.cwd(), 'src');
233
+ const lower = name.toLowerCase();
234
+ console.log('');
235
+ info(`Gerando utils para: ${kleur_1.default.magenta(name)}`);
236
+ console.log('');
237
+ writeFile(path.join(src, 'utils', lower, `omitPassword.ts`), omitPasswordStub(name));
238
+ writeFile(path.join(src, 'utils', lower, `twoFactor.ts`), twoFactorStub(name));
239
+ console.log('');
240
+ success(`Utils de ${name} geradas com sucesso!`);
241
+ console.log('');
242
+ }
243
+ function makeSchema(name) {
244
+ const src = path.resolve(process.cwd(), 'src');
245
+ console.log('');
246
+ info(`Gerando schema para: ${kleur_1.default.magenta(name)}`);
247
+ console.log('');
248
+ writeFile(path.join(src, 'schemas', `${name}Schema.ts`), schemaStub(name));
249
+ console.log('');
250
+ success(`Schema ${name} gerado com sucesso!`);
251
+ console.log('');
252
+ }
253
+ function makeMiddleware(name) {
254
+ const src = path.resolve(process.cwd(), 'src');
255
+ console.log('');
256
+ info(`Gerando middleware para: ${kleur_1.default.magenta(name)}`);
257
+ console.log('');
258
+ writeFile(path.join(src, 'middlewares', `${name}Middleware.ts`), middlewareStub(name));
259
+ console.log('');
260
+ success(`Middleware ${name} gerado com sucesso!`);
261
+ console.log('');
262
+ }
263
+ //# sourceMappingURL=make-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-api.js","sourceRoot":"","sources":["../../../src/commands/forge/make-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-controller.d.ts","sourceRoot":"","sources":["../../../src/commands/forge/make-controller.ts"],"names":[],"mappings":"AAsDA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,QAG1C"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.makeController = makeController;
40
+ const kleur_1 = __importDefault(require("kleur"));
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ function success(msg) { console.log(kleur_1.default.green(' ✔ ') + msg); }
44
+ function error(msg) { console.log(kleur_1.default.red(' ✘ ') + msg); }
45
+ function ensureDir(dirPath) {
46
+ if (!fs.existsSync(dirPath))
47
+ fs.mkdirSync(dirPath, { recursive: true });
48
+ }
49
+ function writeFile(filePath, content) {
50
+ if (fs.existsSync(filePath)) {
51
+ error(`Arquivo já existe: ${filePath}`);
52
+ return;
53
+ }
54
+ ensureDir(path.dirname(filePath));
55
+ fs.writeFileSync(filePath, content, 'utf-8');
56
+ success(`Criado: ${filePath}`);
57
+ }
58
+ function stub(name) {
59
+ return `import { DarkstarRequest, DarkstarResponse } from '@darkstar-cli/core'
60
+ import { ${name}Service } from '../services/${name}Service'
61
+
62
+ export class ${name}Controller {
63
+ constructor(private ${name.toLowerCase()}Service: ${name}Service) {}
64
+
65
+ async index(req: DarkstarRequest, res: DarkstarResponse) {
66
+ const data = await this.${name.toLowerCase()}Service.findAll()
67
+ return res.ok(data)
68
+ }
69
+
70
+ async show(req: DarkstarRequest, res: DarkstarResponse) {
71
+ const data = await this.${name.toLowerCase()}Service.findById(req.param('id')!)
72
+ if (!data) return res.notFound('${name} não encontrado')
73
+ return res.ok(data)
74
+ }
75
+
76
+ async store(req: DarkstarRequest, res: DarkstarResponse) {
77
+ const data = await this.${name.toLowerCase()}Service.create(req.all())
78
+ return res.created(data)
79
+ }
80
+
81
+ async update(req: DarkstarRequest, res: DarkstarResponse) {
82
+ const data = await this.${name.toLowerCase()}Service.update(req.param('id')!, req.all())
83
+ return res.ok(data)
84
+ }
85
+
86
+ async destroy(req: DarkstarRequest, res: DarkstarResponse) {
87
+ await this.${name.toLowerCase()}Service.delete(req.param('id')!)
88
+ return res.noContent()
89
+ }
90
+ }
91
+ `;
92
+ }
93
+ function makeController(name) {
94
+ const src = path.resolve(process.cwd(), 'src');
95
+ writeFile(path.join(src, 'controllers', `${name}Controller.ts`), stub(name));
96
+ }
97
+ //# sourceMappingURL=make-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-controller.js","sourceRoot":"","sources":["../../../src/commands/forge/make-controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,MAAY,EAAE,+BAAU;AACxB,MAAY,IAAI,iCAAY;AAE5B,SAAS,OAAO,CAAC,GAAW,IAAI,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AACxE,SAAS,KAAK,CAAC,GAAW,IAAM,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AAEtE,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,OAAe;IAClD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAC,KAAK,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAChF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;IACjC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,IAAI,CAAC,IAAY;IACxB,OAAO;WACE,IAAI,+BAA+B,IAAI;;eAEnC,IAAI;wBACK,IAAI,CAAC,WAAW,EAAE,YAAY,IAAI;;;8BAG5B,IAAI,CAAC,WAAW,EAAE;;;;;8BAKlB,IAAI,CAAC,WAAW,EAAE;sCACV,IAAI;;;;;8BAKZ,IAAI,CAAC,WAAW,EAAE;;;;;8BAKlB,IAAI,CAAC,WAAW,EAAE;;;;;iBAK/B,IAAI,CAAC,WAAW,EAAE;;;;CAIlC,CAAA;AACD,CAAC;AAED,wBAA+B,IAAY;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;IAC9C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9E,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-middleware.d.ts","sourceRoot":"","sources":["../../../src/commands/forge/make-middleware.ts"],"names":[],"mappings":"AA6BA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,QAG1C"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.makeMiddleware = makeMiddleware;
40
+ const kleur_1 = __importDefault(require("kleur"));
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ function success(msg) { console.log(kleur_1.default.green(' ✔ ') + msg); }
44
+ function error(msg) { console.log(kleur_1.default.red(' ✘ ') + msg); }
45
+ function ensureDir(dirPath) {
46
+ if (!fs.existsSync(dirPath))
47
+ fs.mkdirSync(dirPath, { recursive: true });
48
+ }
49
+ function writeFile(filePath, content) {
50
+ if (fs.existsSync(filePath)) {
51
+ error(`Arquivo já existe: ${filePath}`);
52
+ return;
53
+ }
54
+ ensureDir(path.dirname(filePath));
55
+ fs.writeFileSync(filePath, content, 'utf-8');
56
+ success(`Criado: ${filePath}`);
57
+ }
58
+ function stub(name) {
59
+ return `import { TanisRequest, TanisResponse, NextFunction } from '@darkstar-cli/core'
60
+
61
+ export class ${name}Middleware {
62
+ handle(req: TanisRequest, res: TanisResponse, next: NextFunction) {
63
+ next()
64
+ }
65
+ }
66
+ `;
67
+ }
68
+ function makeMiddleware(name) {
69
+ const src = path.resolve(process.cwd(), 'src');
70
+ writeFile(path.join(src, 'middlewares', `${name}Middleware.ts`), stub(name));
71
+ }
72
+ //# sourceMappingURL=make-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-middleware.js","sourceRoot":"","sources":["../../../src/commands/forge/make-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,MAAY,EAAE,+BAAU;AACxB,MAAY,IAAI,iCAAY;AAE5B,SAAS,OAAO,CAAC,GAAW,IAAI,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AACxE,SAAS,KAAK,CAAC,GAAW,IAAM,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AAEtE,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,OAAe;IAClD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAC,KAAK,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAChF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;IACjC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,IAAI,CAAC,IAAY;IACxB,OAAO;;eAEM,IAAI;;;;;CAKlB,CAAA;AACD,CAAC;AAED,wBAA+B,IAAY;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;IAC9C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9E,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-migration.d.ts","sourceRoot":"","sources":["../../../src/commands/forge/make-migration.ts"],"names":[],"mappings":"AAgCA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,QAgCzC"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.makeMigration = makeMigration;
40
+ const kleur_1 = __importDefault(require("kleur"));
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ function success(msg) { console.log(kleur_1.default.green(' ✔ ') + msg); }
44
+ function error(msg) { console.log(kleur_1.default.red(' ✘ ') + msg); }
45
+ function pluralize(word) {
46
+ if (word.endsWith('ch') || word.endsWith('sh') || word.endsWith('x') || word.endsWith('z') || word.endsWith('s')) {
47
+ return word + 'es';
48
+ }
49
+ if (word.endsWith('y') && !['ay', 'ey', 'iy', 'oy', 'uy'].some(v => word.endsWith(v))) {
50
+ return word.slice(0, -1) + 'ies';
51
+ }
52
+ return word + 's';
53
+ }
54
+ function extractTable(name) {
55
+ // converte PascalCase → snake_case antes do match
56
+ const snake = name
57
+ .replace(/([A-Z])/g, '_$1')
58
+ .toLowerCase()
59
+ .replace(/^_/, '');
60
+ // create_users_table → users
61
+ const match = snake.match(/^create_(.+)_table$/);
62
+ if (match)
63
+ return match[1];
64
+ // fallback: pluraliza o nome direto
65
+ return pluralize(name.toLowerCase());
66
+ }
67
+ function makeMigration(name) {
68
+ const timestamp = new Date().toISOString()
69
+ .replace(/[-T:]/g, '_')
70
+ .slice(0, 19);
71
+ const table = extractTable(name);
72
+ const fileName = `${timestamp}_${name}.ts`;
73
+ const migrationsDir = path.resolve(process.cwd(), 'database/migrations');
74
+ const filePath = path.join(migrationsDir, fileName);
75
+ fs.mkdirSync(migrationsDir, { recursive: true });
76
+ const content = `import type { BaseDriver } from '@darkstar-cli/orm'
77
+ import { Schema, Blueprint } from '@darkstar-cli/orm'
78
+
79
+ export async function up(driver: BaseDriver): Promise<void> {
80
+ const schema = new Schema(driver)
81
+
82
+ await schema.create('${table}', (table: Blueprint) => {
83
+ table.id()
84
+ table.timestamps()
85
+ })
86
+ }
87
+
88
+ export async function down(driver: BaseDriver): Promise<void> {
89
+ const schema = new Schema(driver)
90
+ await schema.drop('${table}')
91
+ }
92
+ `;
93
+ fs.writeFileSync(filePath, content, 'utf-8');
94
+ success(`Migration criada: database/migrations/${fileName}`);
95
+ }
96
+ //# sourceMappingURL=make-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-migration.js","sourceRoot":"","sources":["../../../src/commands/forge/make-migration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,MAAY,EAAE,+BAAU;AACxB,MAAY,IAAI,iCAAY;AAE5B,SAAS,OAAO,CAAC,GAAW,IAAI,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AACxE,SAAS,KAAK,CAAC,GAAW,IAAM,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AAEtE,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACjH,OAAO,IAAI,GAAG,IAAI,CAAA;IACpB,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IAClC,CAAC;IACD,OAAO,IAAI,GAAG,GAAG,CAAA;AACnB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,kDAAkD;IAClD,MAAM,KAAK,GAAG,IAAI;SACf,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC;SAC1B,WAAW,EAAE;SACb,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IAEpB,6BAA6B;IAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IAChD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;IAE1B,oCAAoC;IACpC,OAAO,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AACtC,CAAC;AAED,uBAA8B,IAAY;IACxC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEf,MAAM,KAAK,GAAM,YAAY,CAAC,IAAI,CAAC,CAAA;IACnC,MAAM,QAAQ,GAAG,GAAG,SAAS,IAAI,IAAI,KAAK,CAAA;IAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAA;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;IAEnD,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEhD,MAAM,OAAO,GAAG;;;;;;yBAMO,KAAK;;;;;;;;uBAQP,KAAK;;CAE3B,CAAA;IAEC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAA;AAC9D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-model.d.ts","sourceRoot":"","sources":["../../../src/commands/forge/make-model.ts"],"names":[],"mappings":"AA8BA,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,QAGrC"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.makeModel = makeModel;
40
+ const kleur_1 = __importDefault(require("kleur"));
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ function success(msg) { console.log(kleur_1.default.green(' ✔ ') + msg); }
44
+ function error(msg) { console.log(kleur_1.default.red(' ✘ ') + msg); }
45
+ function ensureDir(dirPath) {
46
+ if (!fs.existsSync(dirPath))
47
+ fs.mkdirSync(dirPath, { recursive: true });
48
+ }
49
+ function writeFile(filePath, content) {
50
+ if (fs.existsSync(filePath)) {
51
+ error(`Arquivo já existe: ${filePath}`);
52
+ return;
53
+ }
54
+ ensureDir(path.dirname(filePath));
55
+ fs.writeFileSync(filePath, content, 'utf-8');
56
+ success(`Criado: ${filePath}`);
57
+ }
58
+ function stub(name) {
59
+ const table = name.toLowerCase() + 's';
60
+ return `import { createModel, Model } from '@darkstar-cli/orm'
61
+
62
+ class ${name}Model extends Model {
63
+ static table = '${table}'
64
+ }
65
+
66
+ export const ${name} = createModel(${name}Model)
67
+ `;
68
+ }
69
+ function makeModel(name) {
70
+ const src = path.resolve(process.cwd(), 'src');
71
+ writeFile(path.join(src, 'models', `${name}.ts`), stub(name));
72
+ }
73
+ //# sourceMappingURL=make-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-model.js","sourceRoot":"","sources":["../../../src/commands/forge/make-model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,MAAY,EAAE,+BAAU;AACxB,MAAY,IAAI,iCAAY;AAE5B,SAAS,OAAO,CAAC,GAAW,IAAI,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AACxE,SAAS,KAAK,CAAC,GAAW,IAAM,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AAEtE,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,OAAe;IAClD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAC,KAAK,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAChF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;IACjC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,IAAI,CAAC,IAAY;IACxB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,GAAG,CAAA;IACtC,OAAO;;QAED,IAAI;oBACQ,KAAK;;;eAGV,IAAI,kBAAkB,IAAI;CACxC,CAAA;AACD,CAAC;AAED,mBAA0B,IAAY;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;IAC9C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"AA0FA,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,iBAoCxC"}
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.runNew = runNew;
40
+ const kleur_1 = __importDefault(require("kleur"));
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ const child_process_1 = require("child_process");
44
+ function log(msg) { console.log(msg); }
45
+ function success(msg) { log(kleur_1.default.green(' ✔ ') + msg); }
46
+ function info(msg) { log(kleur_1.default.cyan(' → ') + msg); }
47
+ function error(msg) { log(kleur_1.default.red(' ✘ ') + msg); }
48
+ function copyTemplate(src, dest) {
49
+ if (!fs.existsSync(src)) {
50
+ error(`Template não encontrado em: ${src}`);
51
+ process.exit(1);
52
+ }
53
+ fs.mkdirSync(dest, { recursive: true });
54
+ const entries = fs.readdirSync(src, { withFileTypes: true });
55
+ for (const entry of entries) {
56
+ if (entry.name.endsWith('.stub'))
57
+ continue;
58
+ const srcPath = path.join(src, entry.name);
59
+ const destPath = path.join(dest, entry.name);
60
+ if (entry.isDirectory()) {
61
+ copyTemplate(srcPath, destPath);
62
+ }
63
+ else {
64
+ const destName = entry.name === 'tanis.config.ts' ? 'darkstar.config.ts' : entry.name;
65
+ fs.copyFileSync(srcPath, path.join(dest, destName));
66
+ }
67
+ }
68
+ }
69
+ function configureEnv(projectPath, projectName) {
70
+ const envPath = path.join(projectPath, '.env.example');
71
+ if (!fs.existsSync(envPath))
72
+ return;
73
+ let env = fs.readFileSync(envPath, 'utf-8');
74
+ env = env.replace(/^DB_DATABASE=.*/m, `DB_DATABASE=${projectName}`);
75
+ fs.writeFileSync(envPath, env, 'utf-8');
76
+ fs.copyFileSync(envPath, path.join(projectPath, '.env'));
77
+ }
78
+ function configurePackageJson(projectPath, projectName) {
79
+ const pkgPath = path.join(projectPath, 'package.json');
80
+ const deps = {
81
+ '@darkstar-cli/core': '0.0.1',
82
+ '@darkstar-cli/orm': '0.0.1',
83
+ 'dotenv': 'latest',
84
+ 'express': 'latest',
85
+ 'express-rate-limit': 'latest',
86
+ 'zod': 'latest',
87
+ };
88
+ const pkg = {
89
+ name: projectName,
90
+ version: '0.0.1',
91
+ description: '',
92
+ main: 'dist/core/app.js',
93
+ scripts: {
94
+ dev: 'tsx src/core/app.ts',
95
+ build: 'tsc',
96
+ start: 'node dist/core/app.js',
97
+ },
98
+ dependencies: deps,
99
+ devDependencies: {
100
+ '@types/express': 'latest',
101
+ '@types/express-rate-limit': 'latest',
102
+ '@types/node': 'latest',
103
+ 'tsx': 'latest',
104
+ 'typescript': 'latest',
105
+ },
106
+ };
107
+ fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2), 'utf-8');
108
+ }
109
+ function installDeps(projectPath) {
110
+ info('Instalando dependências...');
111
+ try {
112
+ (0, child_process_1.execSync)('npm install --ignore-scripts', { cwd: projectPath, stdio: 'inherit' });
113
+ }
114
+ catch {
115
+ error('Falha ao instalar dependências. Rode npm install manualmente.');
116
+ }
117
+ }
118
+ async function runNew(name) {
119
+ console.log('');
120
+ console.log(kleur_1.default.magenta(' DarkStar — Backend Framework for Node.js'));
121
+ console.log(kleur_1.default.gray(` Criando projeto: ${name}`));
122
+ console.log('');
123
+ const projectPath = path.resolve(process.cwd(), name);
124
+ if (fs.existsSync(projectPath)) {
125
+ error(`A pasta "${name}" já existe.`);
126
+ process.exit(1);
127
+ }
128
+ const templatePath = path.resolve(__dirname, '../../templates/project');
129
+ info('Copiando estrutura do projeto...');
130
+ copyTemplate(templatePath, projectPath);
131
+ success('Estrutura criada');
132
+ info('Configurando .env...');
133
+ configureEnv(projectPath, name);
134
+ success('.env configurado');
135
+ info('Configurando package.json...');
136
+ configurePackageJson(projectPath, name);
137
+ success('package.json configurado');
138
+ installDeps(projectPath);
139
+ console.log('');
140
+ success('Projeto criado com sucesso!');
141
+ console.log('');
142
+ console.log(kleur_1.default.gray(' Próximos passos:'));
143
+ console.log(kleur_1.default.cyan(` cd ${name}`));
144
+ console.log(kleur_1.default.cyan(' darkstar serve'));
145
+ console.log('');
146
+ }
147
+ //# sourceMappingURL=new.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@darkstar-cli/cli",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "description": "CLI do framework DarkStar — backend Node.js inspirado no Laravel",
5
5
  "license": "MIT",
6
6
  "author": "Albertaodasmassa",