change full archi api backend

This commit is contained in:
grimhilt
2023-05-02 13:47:04 +02:00
parent 12e508c7cb
commit 22fb12e6d6
7 changed files with 88 additions and 72 deletions

28
back/routes/account.ts Normal file
View File

@@ -0,0 +1,28 @@
import express from "express";
import Account from "../abl/Account-abl";
import validator from "../validator/validator";
const router = express.Router();
/**
* Return all mailboxes and folders for an user
*/
router.get("/getAll", async (req, res) => {
await validator.validate("getAccounts", req.params, res, Account.getAll);
});
/**
* Register a new mailbox inside the app
*/
router.post("/create", async (req, res) => {
await validator.validate("createAccount", req.body, res, Account.register);
});
/**
* Return all rooms from a mailbox
*/
router.get("/:mailboxId/rooms", async (req, res) => {
// todo offet limit
await validator.validate("getRooms", req.params, res, Account.getRooms);
});
export default router;

View File

@@ -1,57 +0,0 @@
import express from "express";
const router = express.Router();
import Message from "../abl/Message-abl";
import Account from "../abl/Account-abl";
import validator from "../validator/validator";
import Room from "../abl/Room-abl";
/**
* Return all mailboxes and folders for an user
*/
router.get("/accounts", async (req, res) => {
await validator.validate("getAccounts", req.params, res, Account.getAll);
});
/**
* Return all rooms from a mailbox
*/
router.get("/:mailboxId/rooms", async (req, res) => {
// todo offet limit
await validator.validate("getRooms", req.params, res, Room.getAll);
});
/**
* Return all messages from a room
*/
router.get("/:roomId/messages", async (req, res) => {
await validator.validate("getMessages", req.params, res, Room.getMessages);
});
/**
* Return all members from a room
*/
router.get("/:roomId/members", async (req, res) => {
await validator.validate("getMembers", req.params, res, Room.getMembers);
});
/**
* Register a new mailbox inside the app
*/
router.post("/account", async (req, res) => {
await validator.validate("createAccount", req.body, res, Account.register);
});
router.post("/addFlag", async (req, res) => {
await validator.validate("addFlag", req.body, res, Message.addFlag);
});
router.post("/removeFlag", async (req, res) => {
await validator.validate("removeFlag", req.body, res, Message.removeFlag);
});
router.post("/response", async (req, res) => {
await validator.validate("response", req.body, res, Room.response);
});
export default router;

15
back/routes/message.ts Normal file
View File

@@ -0,0 +1,15 @@
import express from "express";
import Message from "../abl/Message-abl";
import validator from "../validator/validator";
const router = express.Router();
router.post("/addFlag", async (req, res) => {
await validator.validate("addFlag", req.body, res, Message.addFlag);
});
router.post("/removeFlag", async (req, res) => {
await validator.validate("removeFlag", req.body, res, Message.removeFlag);
});
export default router;

24
back/routes/room.ts Normal file
View File

@@ -0,0 +1,24 @@
import express from "express";
import Room from "../abl/Room-abl";
import validator from "../validator/validator";
const router = express.Router();
/**
* Return all messages from a room
*/
router.get("/messages", async (req, res) => {
await validator.validate("getMessages", req.params, res, Room.getMessages);
});
/**
* Return all members from a room
*/
router.get("/:roomId/members", async (req, res) => {
await validator.validate("getMembers", req.params, res, Room.getMembers);
});
router.post("/response", async (req, res) => {
await validator.validate("response", req.body, res, Room.response);
});
export default router;