import * as express from "express" import * as bodyParser from "body-parser" import { AppDataSource } from "./data-source" import {errorHandler} from "./controller/errorController"; import {AuthRoutes} from "./routes/authRoutes"; import {UserRoutes} from "./routes/userRoutes"; import {AuthController} from "./controller/authController"; import {PostRoutes} from "./routes/postRoutes"; import {swaggerRouter} from "./routes/swaggerRoutes"; import * as cors from "cors"; AppDataSource.initialize() .then(async () => { // create express app const app = express(); app.use(bodyParser.json()); app.use(cors()); // register express routes from defined application routes // Auth Routes app.use("/auth", AuthRoutes); // Swagger Routes app.use("/docs", swaggerRouter); // All routes after this one require authentication const authController = new AuthController(); app.use(authController.protect); app.use("/users", UserRoutes); app.use("/posts", PostRoutes); // setup express app here app.use(errorHandler); // start express server app.listen(3000); console.log( "Express server has started on port 3000. Open http://localhost:3000/users to see results" ); }) .catch((error) => console.log(error));