sequelize-ts-boilerplate
Version:
A REST API scaffolding tool designed to scale and easily generate CRUD endpoints based on database schema design
24 lines • 1.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const general_utils_1 = require("../../../utils/general-utils");
const constants_1 = require("../../../utils/constants");
function get(table, config) {
const pkLower = config.ORM_GENERATE.pkIdentifier;
const pkUpper = general_utils_1.default.capitalizeFirstLetter(pkLower);
const upperCaseTableName = general_utils_1.default.capitalizeFirstLetter(table.tableName);
const pluralizedTableName = general_utils_1.default.pluralize(upperCaseTableName);
const pluralizedUpperCaseTableName = general_utils_1.default.capitalizeFirstLetter(pluralizedTableName);
return (`return Router()
${constants_1.CONSTANT.GENERATED_ROUTES}
.get("/${pluralizedTableName}", ${upperCaseTableName}Controller.getAll${pluralizedUpperCaseTableName})
.get("/${pluralizedTableName}/:${pkLower}", ${upperCaseTableName}Controller.getAll${pluralizedUpperCaseTableName}By${pkUpper})
.get("/${table.tableName}/:${pkLower}", ${upperCaseTableName}Controller.get${upperCaseTableName}By${pkUpper})
.post("/${table.tableName}", ${upperCaseTableName}Controller.save${upperCaseTableName})
.post("/${pluralizedTableName}", ${upperCaseTableName}Controller.batchSave${pluralizedUpperCaseTableName})
.put("/${table.tableName}", ${upperCaseTableName}Controller.update${upperCaseTableName})
.delete("/${table.tableName}", ${upperCaseTableName}Controller.delete${upperCaseTableName}By${pkUpper})
.delete("/${table.tableName}/:${pkLower}", ${upperCaseTableName}Controller.delete${upperCaseTableName}By${pkUpper})
`);
}
exports.get = get;
//# sourceMappingURL=write-route-methods.js.map