[INIT] Initial Project Structure
This commit is contained in:
commit
0fc5f05b6a
105 changed files with 10448 additions and 0 deletions
26
lib/modules/auth/auth.router.ts
Normal file
26
lib/modules/auth/auth.router.ts
Normal file
|
@ -0,0 +1,26 @@
|
|||
import { VixpressRoute } from "@dunemask/vix";
|
||||
import { contract } from "@dunemask/vix/express";
|
||||
import RouteGuard from "@lib/vix/RouteGuard";
|
||||
import { Router } from "express";
|
||||
import AuthController from "./auth.controller";
|
||||
import { AuthContract } from "@lib/contracts/auth.contracts";
|
||||
import { ProjectContract } from "@lib/contracts/project.contracts";
|
||||
|
||||
export class AuthRoute extends VixpressRoute {
|
||||
async configureRoutes(router: Router) {
|
||||
const jsonOpts = { limit: "20mb" };
|
||||
const cBase = { json: jsonOpts, reqParams: ProjectContract.ProjectParams };
|
||||
// Controllers
|
||||
const authController = this.useController(AuthController);
|
||||
|
||||
// Configuration
|
||||
const loginCreds = { ...cBase, reqBody: AuthContract.Login, resBody: AuthContract.LoginCredentials };
|
||||
const credRes = { ...cBase, resBody: AuthContract.Credentials };
|
||||
// Middleware
|
||||
|
||||
// Routes
|
||||
router.get("/verify", RouteGuard.User, authController.verify);
|
||||
router.post("/login", contract(authController.login, loginCreds));
|
||||
router.get("/credentials", RouteGuard.User, contract(authController.credentials, credRes));
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue