@darkstar-cli/cli 0.0.4 → 0.0.5
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/package.json +1 -1
- package/dist/commands/forge/db-create.d.ts +0 -2
- package/dist/commands/forge/db-create.d.ts.map +0 -1
- package/dist/commands/forge/db-create.js +0 -86
- package/dist/commands/forge/db-create.js.map +0 -1
- package/dist/commands/forge/db-migrate.d.ts +0 -2
- package/dist/commands/forge/db-migrate.d.ts.map +0 -1
- package/dist/commands/forge/db-migrate.js +0 -168
- package/dist/commands/forge/db-migrate.js.map +0 -1
- package/dist/commands/forge/db-rollback.d.ts +0 -2
- package/dist/commands/forge/db-rollback.d.ts.map +0 -1
- package/dist/commands/forge/db-rollback.js +0 -86
- package/dist/commands/forge/db-rollback.js.map +0 -1
- package/dist/commands/forge/db-seed.d.ts +0 -2
- package/dist/commands/forge/db-seed.d.ts.map +0 -1
- package/dist/commands/forge/db-seed.js +0 -25
- package/dist/commands/forge/db-seed.js.map +0 -1
- package/dist/commands/forge/make-api.d.ts +0 -5
- package/dist/commands/forge/make-api.d.ts.map +0 -1
- package/dist/commands/forge/make-api.js +0 -263
- package/dist/commands/forge/make-api.js.map +0 -1
- package/dist/commands/forge/make-controller.d.ts +0 -2
- package/dist/commands/forge/make-controller.d.ts.map +0 -1
- package/dist/commands/forge/make-controller.js +0 -97
- package/dist/commands/forge/make-controller.js.map +0 -1
- package/dist/commands/forge/make-deps.d.ts +0 -2
- package/dist/commands/forge/make-deps.d.ts.map +0 -1
- package/dist/commands/forge/make-deps.js +0 -200
- package/dist/commands/forge/make-deps.js.map +0 -1
- package/dist/commands/forge/make-middleware.d.ts +0 -2
- package/dist/commands/forge/make-middleware.d.ts.map +0 -1
- package/dist/commands/forge/make-middleware.js +0 -72
- package/dist/commands/forge/make-middleware.js.map +0 -1
- package/dist/commands/forge/make-migration.d.ts +0 -2
- package/dist/commands/forge/make-migration.d.ts.map +0 -1
- package/dist/commands/forge/make-migration.js +0 -96
- package/dist/commands/forge/make-migration.js.map +0 -1
- package/dist/commands/forge/make-model.d.ts +0 -2
- package/dist/commands/forge/make-model.d.ts.map +0 -1
- package/dist/commands/forge/make-model.js +0 -73
- package/dist/commands/forge/make-model.js.map +0 -1
- package/dist/commands/forge/make-repository.d.ts +0 -2
- package/dist/commands/forge/make-repository.d.ts.map +0 -1
- package/dist/commands/forge/make-repository.js +0 -74
- package/dist/commands/forge/make-repository.js.map +0 -1
- package/dist/commands/forge/make-schema.d.ts +0 -2
- package/dist/commands/forge/make-schema.d.ts.map +0 -1
- package/dist/commands/forge/make-schema.js +0 -66
- package/dist/commands/forge/make-schema.js.map +0 -1
- package/dist/commands/forge/make-security.d.ts +0 -2
- package/dist/commands/forge/make-security.d.ts.map +0 -1
- package/dist/commands/forge/make-security.js +0 -316
- package/dist/commands/forge/make-security.js.map +0 -1
- package/dist/commands/forge/make-seeder.d.ts +0 -2
- package/dist/commands/forge/make-seeder.d.ts.map +0 -1
- package/dist/commands/forge/make-seeder.js +0 -176
- package/dist/commands/forge/make-seeder.js.map +0 -1
- package/dist/commands/forge/make-service.d.ts +0 -2
- package/dist/commands/forge/make-service.d.ts.map +0 -1
- package/dist/commands/forge/make-service.js +0 -76
- package/dist/commands/forge/make-service.js.map +0 -1
- package/dist/commands/forge/make-util.d.ts +0 -2
- package/dist/commands/forge/make-util.d.ts.map +0 -1
- package/dist/commands/forge/make-util.js +0 -83
- package/dist/commands/forge/make-util.js.map +0 -1
- package/dist/commands/new.d.ts +0 -2
- package/dist/commands/new.d.ts.map +0 -1
- package/dist/commands/new.js +0 -147
- package/dist/commands/new.js.map +0 -1
- package/dist/commands/serve.d.ts +0 -2
- package/dist/commands/serve.d.ts.map +0 -1
- package/dist/commands/serve.js +0 -20
- package/dist/commands/serve.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -115
- package/dist/index.js.map +0 -1
|
@@ -1,83 +0,0 @@
|
|
|
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.makeUtil = makeUtil;
|
|
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 twoFactorStub(name) {
|
|
59
|
-
return `import * as crypto from 'crypto'
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Gera um código TOTP simples de 6 dígitos para ${name}.
|
|
63
|
-
* Em produção, prefira libs como 'otplib' para TOTP compliant com RFC 6238.
|
|
64
|
-
*/
|
|
65
|
-
export function generate${name}TwoFactorCode(): string {
|
|
66
|
-
const code = crypto.randomInt(100000, 999999)
|
|
67
|
-
return code.toString()
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Valida se o código informado corresponde ao código esperado para ${name}.
|
|
72
|
-
*/
|
|
73
|
-
export function validate${name}TwoFactorCode(inputCode: string, expectedCode: string): boolean {
|
|
74
|
-
return inputCode.trim() === expectedCode.trim()
|
|
75
|
-
}
|
|
76
|
-
`;
|
|
77
|
-
}
|
|
78
|
-
function makeUtil(name) {
|
|
79
|
-
const src = path.resolve(process.cwd(), 'src');
|
|
80
|
-
const lower = name.toLowerCase();
|
|
81
|
-
writeFile(path.join(src, 'utils', lower, 'twoFactor.ts'), twoFactorStub(name));
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=make-util.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"make-util.js","sourceRoot":"","sources":["../../../src/commands/forge/make-util.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,aAAa,CAAC,IAAY;IACjC,OAAO;;;mDAG0C,IAAI;;;0BAG7B,IAAI;;;;;;sEAMwC,IAAI;;0BAEhD,IAAI;;;CAG7B,CAAA;AACD,CAAC;AAED,kBAAyB,IAAY;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAChC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;AAChF,CAAC"}
|
package/dist/commands/new.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"AA0FA,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,iBAoCxC"}
|
package/dist/commands/new.js
DELETED
|
@@ -1,147 +0,0 @@
|
|
|
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-core': '0.0.1',
|
|
82
|
-
'darkstar-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
|
package/dist/commands/new.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/serve.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAMA,wBAAgB,QAAQ,SAOvB"}
|
package/dist/commands/serve.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.runServe = runServe;
|
|
7
|
-
const kleur_1 = __importDefault(require("kleur"));
|
|
8
|
-
const child_process_1 = require("child_process");
|
|
9
|
-
function info(msg) { console.log(kleur_1.default.cyan(' → ') + msg); }
|
|
10
|
-
function error(msg) { console.log(kleur_1.default.red(' ✘ ') + msg); }
|
|
11
|
-
function runServe() {
|
|
12
|
-
info('Iniciando servidor Darkstar...');
|
|
13
|
-
try {
|
|
14
|
-
(0, child_process_1.execSync)('npm run dev', { stdio: 'inherit' });
|
|
15
|
-
}
|
|
16
|
-
catch {
|
|
17
|
-
error('Falha ao subir o servidor.');
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=serve.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,iDAAwC;AAExC,SAAS,IAAI,CAAC,GAAW,IAAK,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AACrE,SAAS,KAAK,CAAC,GAAW,IAAI,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;AAEpE;IACE,IAAI,CAAC,gCAAgC,CAAC,CAAA;IACtC,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,4BAA4B,CAAC,CAAA;IACrC,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
DELETED
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
const commander_1 = require("commander");
|
|
5
|
-
const new_1 = require("./commands/new");
|
|
6
|
-
const serve_1 = require("./commands/serve");
|
|
7
|
-
const make_controller_1 = require("./commands/forge/make-controller");
|
|
8
|
-
const make_service_1 = require("./commands/forge/make-service");
|
|
9
|
-
const make_repository_1 = require("./commands/forge/make-repository");
|
|
10
|
-
const make_model_1 = require("./commands/forge/make-model");
|
|
11
|
-
const make_api_1 = require("./commands/forge/make-api");
|
|
12
|
-
const make_middleware_1 = require("./commands/forge/make-middleware");
|
|
13
|
-
const make_schema_1 = require("./commands/forge/make-schema");
|
|
14
|
-
const make_util_1 = require("./commands/forge/make-util");
|
|
15
|
-
const make_deps_1 = require("./commands/forge/make-deps");
|
|
16
|
-
const make_security_1 = require("./commands/forge/make-security");
|
|
17
|
-
const db_migrate_1 = require("./commands/forge/db-migrate");
|
|
18
|
-
const db_seed_1 = require("./commands/forge/db-seed");
|
|
19
|
-
const make_migration_1 = require("./commands/forge/make-migration");
|
|
20
|
-
const db_create_1 = require("./commands/forge/db-create");
|
|
21
|
-
const db_rollback_1 = require("./commands/forge/db-rollback");
|
|
22
|
-
const make_seeder_1 = require("./commands/forge/make-seeder");
|
|
23
|
-
// -----------------------------------------------
|
|
24
|
-
// Configuração do programa
|
|
25
|
-
// -----------------------------------------------
|
|
26
|
-
commander_1.program
|
|
27
|
-
.name('darkstar')
|
|
28
|
-
.description('DarkStar — Backend Framework for Node.js')
|
|
29
|
-
.version('1.0.0');
|
|
30
|
-
// -----------------------------------------------
|
|
31
|
-
// darkstar new <name>
|
|
32
|
-
// -----------------------------------------------
|
|
33
|
-
commander_1.program
|
|
34
|
-
.command('new <name>')
|
|
35
|
-
.description('Cria um novo projeto DarkStar')
|
|
36
|
-
.action((name) => (0, new_1.runNew)(name));
|
|
37
|
-
// -----------------------------------------------
|
|
38
|
-
// darkstar serve
|
|
39
|
-
// -----------------------------------------------
|
|
40
|
-
commander_1.program
|
|
41
|
-
.command('serve')
|
|
42
|
-
.description('Sobe o servidor de desenvolvimento')
|
|
43
|
-
.action(() => (0, serve_1.runServe)());
|
|
44
|
-
// -----------------------------------------------
|
|
45
|
-
// darkstar forge
|
|
46
|
-
// -----------------------------------------------
|
|
47
|
-
const forge = commander_1.program
|
|
48
|
-
.command('forge')
|
|
49
|
-
.description('DarkStar Forge — gerador de arquivos e banco de dados');
|
|
50
|
-
forge
|
|
51
|
-
.command('make:controller <name>')
|
|
52
|
-
.description('Cria um Controller')
|
|
53
|
-
.action((name) => (0, make_controller_1.makeController)(name));
|
|
54
|
-
forge
|
|
55
|
-
.command('make:service <name>')
|
|
56
|
-
.description('Cria um Service')
|
|
57
|
-
.action((name) => (0, make_service_1.makeService)(name));
|
|
58
|
-
forge
|
|
59
|
-
.command('make:repository <name>')
|
|
60
|
-
.description('Cria um Repository')
|
|
61
|
-
.action((name) => (0, make_repository_1.makeRepository)(name));
|
|
62
|
-
forge
|
|
63
|
-
.command('make:model <name>')
|
|
64
|
-
.description('Cria um Model')
|
|
65
|
-
.action((name) => (0, make_model_1.makeModel)(name));
|
|
66
|
-
forge
|
|
67
|
-
.command('make:api <name>')
|
|
68
|
-
.description('Gera Controller + Service + Repository + Model + Rotas + Schema + Middleware')
|
|
69
|
-
.action((name) => (0, make_api_1.makeApi)(name));
|
|
70
|
-
forge
|
|
71
|
-
.command('make:middleware <name>')
|
|
72
|
-
.description('Cria um Middleware')
|
|
73
|
-
.action((name) => (0, make_middleware_1.makeMiddleware)(name));
|
|
74
|
-
forge
|
|
75
|
-
.command('make:schema <name>')
|
|
76
|
-
.description('Cria um Schema')
|
|
77
|
-
.action((name) => (0, make_schema_1.makeSchema)(name));
|
|
78
|
-
forge
|
|
79
|
-
.command('make:util <name>')
|
|
80
|
-
.description('Cria utils de omitPassword e twoFactor')
|
|
81
|
-
.action((name) => (0, make_util_1.makeUtil)(name));
|
|
82
|
-
forge
|
|
83
|
-
.command('make:migration <name>')
|
|
84
|
-
.description('Cria uma nova migration')
|
|
85
|
-
.action((name) => (0, make_migration_1.makeMigration)(name));
|
|
86
|
-
forge
|
|
87
|
-
.command('make:seeder <name>')
|
|
88
|
-
.description('Cria um Seeder')
|
|
89
|
-
.action((name) => (0, make_seeder_1.makeSeeder)(name));
|
|
90
|
-
forge
|
|
91
|
-
.command('make:security')
|
|
92
|
-
.description('Gera o RateLimitMiddleware com limiters prontos')
|
|
93
|
-
.action(() => (0, make_security_1.makeSecurity)());
|
|
94
|
-
forge
|
|
95
|
-
.command('make:deps [names...]')
|
|
96
|
-
.description('Instala dependências opcionais no projeto (sem argumentos lista todas)')
|
|
97
|
-
.action((names) => (0, make_deps_1.makeDeps)(names));
|
|
98
|
-
forge
|
|
99
|
-
.command('db:create')
|
|
100
|
-
.description('Cria o banco de dados')
|
|
101
|
-
.action(() => (0, db_create_1.dbCreate)());
|
|
102
|
-
forge
|
|
103
|
-
.command('db:migrate')
|
|
104
|
-
.description('Roda as migrations pendentes')
|
|
105
|
-
.action(() => (0, db_migrate_1.dbMigrate)());
|
|
106
|
-
forge
|
|
107
|
-
.command('db:rollback')
|
|
108
|
-
.description('Desfaz a última migration')
|
|
109
|
-
.action(() => (0, db_rollback_1.dbRollback)());
|
|
110
|
-
forge
|
|
111
|
-
.command('db:seed')
|
|
112
|
-
.description('Popula o banco com seeders')
|
|
113
|
-
.action(() => (0, db_seed_1.dbSeed)());
|
|
114
|
-
commander_1.program.parse(process.argv);
|
|
115
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|