UNPKG

ksmf

Version:

Modular Microframework for create minimalistic CLI/Web application or REST API

60 lines (55 loc) 1.68 kB
/** * @author Antonio Membrides Espinosa * @email tonykssa@gmail.com * @date 21/05/2022 * @copyright Copyright (c) 2020-2030 * @license GPL * @version 1.0 **/ const Module = require('../plugin/Module'); class DataModule extends Module { /** * @description initialize module * @param {Object} payload * @param {Object} [payload.app] * @param {Object} [payload.web] * @param {Object} [payload.opt] * @param {Object} [payload.db] * @returns {DataModule} self */ configure(payload) { super.configure(payload); this.db = payload?.db || this.db || {}; return this; } init() { if (!this.db?.modelName) { return null; } const controller = { route: this.prefix + "/" + this.db.modelName, strict: true, id: "ksmf.dao.Controller." + this.db.modelName, name: "ksmf", type: "lib", namespace: "dao.DataController", dependency: { helper: "helper", dao: "dao", srv: { name: "ksmf", type: "lib", id: "ksmf.dao.Service." + this.db.modelName, namespace: "dao.DataService", dependency: { helper: "helper", dao: "dao", }, options: this.db } } }; super.initRouterREST(controller); } } module.exports = DataModule;