node-ff
Version:
A CLI for creating NodeJs projects
153 lines • 6.7 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.OrmControl = void 0;
const utils_1 = require("../../utils");
const packages_1 = require("./packages");
class OrmControl {
constructor({ content, ormWithType, projectName }) {
this.content = [];
this.projectName = '';
this.ormWithType = false;
this.content = content;
this.projectName = projectName;
this.ormWithType = ormWithType;
this.dealings();
}
dealings() {
if (this.ormWithType) {
this.content = {
directory_name: [
this.projectName,
this.projectName,
this.projectName,
`${this.projectName}/app`,
`${this.projectName}/app/api/controllers/user`,
`${this.projectName}/app/api/routes`,
`${this.projectName}/app/api/routes`,
`${this.projectName}/app/api/services`,
`${this.projectName}/app/db/config`,
`${this.projectName}/app/db/dal`,
`${this.projectName}/app/db/dto`,
`${this.projectName}/app/db/models`,
`${this.projectName}/app/db/models`,
`${this.projectName}/app/db`,
],
filename: [
'.sequelizerc',
'.env',
'tsc_eval.sh',
'server.ts',
'index.ts',
'index.ts',
'users.routes.ts',
'UserService.ts',
'database.ts',
'User.ts',
'user.dto.ts',
'index.ts',
'User.ts',
'init.ts',
],
text: [
utils_1.textHandling.return_text(packages_1.sequeliseTyp.sequelizercTyp, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.envTyp, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.tscEval, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.severTyp, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.controllerType, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.indexRouter, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.userRoutes, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.userService, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.databaseTyp, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.dal, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.dto, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.indexModel, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.userModel, true),
utils_1.textHandling.return_text(packages_1.sequeliseTyp.dbInit, true),
],
commands: `
cd ${this.projectName} &&
mv ./src ./app &&
cd app &&
mkdir api &&
mkdir db &&
cd db &&
mkdir config &&
mkdir dal &&
mkdir dto &&
mkdir migrations &&
mkdir seeders &&
mkdir models &&
cd .. &&
cd api &&
mkdir contracts &&
mkdir controllers &&
cd controllers &&
mkdir user &&
cd .. &&
mkdir routes &&
mkdir services
`
};
}
else {
this.content = {
directory_name: [
this.projectName,
this.projectName,
`${this.projectName}/app`,
`${this.projectName}/config`,
`${this.projectName}/app/controllers`,
`${this.projectName}/app/controllers`,
`${this.projectName}/app/models`,
`${this.projectName}/app/models`,
`${this.projectName}/app/routes`,
`${this.projectName}/app/routes`,
`${this.projectName}/app/services`,
`${this.projectName}/app/services`,
],
filename: [
'.sequelizerc',
'.env',
'server.js',
'database.js',
'index.js',
'users_controller.js',
'index.js',
'user.js',
'index.js',
'user_routes.js',
'index.js',
'user_services.js',
],
text: [
utils_1.textHandling.return_text(packages_1.sequeliseJav.sequelizerc, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.env, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.server, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.database, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.index_controller, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.user_controller, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.index_model, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.user_model, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.index_router, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.user_router, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.index_service, true),
utils_1.textHandling.return_text(packages_1.sequeliseJav.user_service, true),
],
commands: `
cd ${this.projectName} &&
npx sequelize init &&
mkdir database &&
rm -rf config/config.json &&
rm -rf models/index.js &&
mv ./migrations ./seeders ./database &&
mv ./src ./app &&
mv ./models ./app &&
cd app &&
mkdir controllers routes services
`,
};
}
}
}
exports.OrmControl = OrmControl;
//# sourceMappingURL=ormControl.js.map