tspace-mysql
Version:
Tspace MySQL is a promise-based ORM for Node.js, designed with modern TypeScript and providing type safety for schema databases.
112 lines • 4.65 kB
JavaScript
#!/usr/bin/env node
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const fs_1 = __importDefault(require("fs"));
const make_1 = __importDefault(require("./models/make"));
const make_2 = __importDefault(require("./tables/make"));
const make_3 = __importDefault(require("./migrate/make"));
const make_4 = __importDefault(require("./generate/make"));
const make_model_1 = __importDefault(require("./migrations/make-model"));
const make_db_1 = __importDefault(require("./migrations/make-db"));
const query_1 = __importDefault(require("./query"));
const db_1 = __importDefault(require("./dump/db"));
const table_1 = __importDefault(require("./dump/table"));
const help = () => {
console.log(`
\x1b[31m
tspace-mysql make:model User --m --dir=app/Models
tspace-mysql make:migration users --dir=app/Models/Migrations
tspace-mysql migrate --dir=App/Models/Migrations --type=js
tspace-mysql query "SELECT * FROM users" --env=development
tspace-mysql generate:models --dir=app/Models --env=development
tspace-mysql generate:models --dir=app/Models --env=development --decorators
tspace-mysql dump:db "database" --dir=app/db --v --env=development
tspace-mysql dump:table "table" --dir=app/table --v --env=development
tspace-mysql migrations:models --dir=migrations --models=src/models --generate
tspace-mysql migrations:models --dir=migrations --models=src/models --push
tspace-mysql migrations:db --dir=migrations --generate --db=new-db
tspace-mysql migrations:db --dir=migrations --push
\x1b[0m
`);
console.log(`Read more https://www.npmjs.com/package/tspace-mysql`);
};
const commands = {
'query': query_1.default,
'make:model': make_1.default,
'make:table': make_2.default,
'make:migration': make_2.default,
'migrate': make_3.default,
'generate:models': make_4.default,
'gen:models': make_4.default,
'dump:db': db_1.default,
'dump:table': table_1.default,
'migrations:models': make_model_1.default,
'migrations:db': make_db_1.default,
'help': () => help(),
'lists': () => help()
};
try {
const name = process.argv.slice(2)?.find(data => {
return data?.includes('--name=');
})?.replace('--name=', '') ?? null;
const sql = process.argv.slice(3)[0] ?? '';
const migrate = process.argv.slice(2)?.includes('--m') ?? false;
const dir = process.argv.slice(2)?.find(data => {
return data?.includes('--dir=');
})?.replace('--dir=', '/') ?? null;
const models = process.argv.slice(2)?.find(data => {
return data?.includes('--models=');
})?.replace('--models=', '/') ?? null;
const db = process.argv.slice(2)?.find(data => {
return data?.includes('--db=');
})?.replace('--db=', '') ?? null;
const table = process.argv.slice(2)?.find(data => {
return data?.includes('--table=');
})?.replace('--table=', '') ?? null;
const filename = process.argv.slice(2)?.find(data => {
return data?.includes('--filename=');
})?.replace('--filename=', '') ?? null;
let type = (process.argv.slice(2)?.find(data => {
return data?.includes('--type=');
})?.replace('--type=', '.') ?? '.ts');
type = ['.js', '.ts'].includes(type) ? type : '.ts';
const file = process.argv.slice(3)[0] ?? '';
const env = process.argv.slice(2)?.find(data => {
return data?.includes('--env=');
})?.replace('--env=', '') ?? null;
const values = (process.argv.slice(2)?.includes('--values') || process.argv.slice(2)?.includes('--v')) ?? false;
const decorator = (process.argv.slice(2)?.includes('--decorator') || process.argv.slice(2)?.includes('--decorators')) ?? false;
const push = process.argv.slice(2)?.includes('--push') ?? false;
const generate = process.argv.slice(2)?.includes('--generate') ?? false;
if (env != null)
process.env.NODE_ENV = env;
const cmd = {
name,
file,
dir,
models,
migrate,
type,
cwd: process.cwd(),
fs: fs_1.default,
sql,
db,
table,
values,
decorator,
env,
push,
generate,
npm: 'tspace-mysql'
};
commands[process.argv[2]](cmd);
}
catch (err) {
console.log(err);
console.log('##############################################################');
console.log("The input command failed. Please try again using 'tspace-mysql lists'");
}
//# sourceMappingURL=index.js.map