api.js 850 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. const coreClass = require("../core");
  2. module.exports = class extends coreClass {
  3. constructor(name, moduleManager) {
  4. super(name, moduleManager);
  5. this.dependsOn = ["app", "db", "cache"];
  6. }
  7. initialize() {
  8. return new Promise((resolve, reject) => {
  9. this.app = this.moduleManager.modules["app"];
  10. this.app.app.get('/', (req, res) => {
  11. res.json({
  12. status: 'success',
  13. message: 'Coming Soon'
  14. });
  15. });
  16. const actions = require("../logic/actions");
  17. Object.keys(actions).forEach((namespace) => {
  18. Object.keys(actions[namespace]).forEach((action) => {
  19. let name = `/${namespace}/${action}`;
  20. this.app.app.get(name, (req, res) => {
  21. actions[namespace][action](null, (result) => {
  22. if (typeof cb === 'function') return res.json(result);
  23. });
  24. });
  25. })
  26. });
  27. resolve();
  28. });
  29. }
  30. }