import { config } from "#config"; import express from "express"; import { logger } from "#logger"; import DbService from "./db/db-service.js"; const PORT = config.PORT; const app = express(); app.use(express.json()); // cookie-parser import cookieParser from "cookie-parser"; app.use(cookieParser()); // cors import cors from "cors"; app.use( cors({ credentials: true, origin: ["http://localhost:9000", "http://localhost:9001"], }), ); // файлы import path from "path"; const __dirname = path.resolve(); app.use("/files", express.static(path.join(__dirname, "files"))); // лог всех запросов app.use((req, res, next) => { logger.debug(`Запрос ${req.url}`); next(); }); // роутеры import authMiddleware from "./middlewares/auth-middleware.js"; // users-management import authRouter from "./modules/users-management/auth/routers/auth-router.js"; app.use("/api/auth/", authRouter); // events-management import EventsRouter from "./modules/events-management/events-router.js"; app.use("/api/events-management/", authMiddleware(), EventsRouter); // companies-management import CompaniesRouter from "./modules/companies-management/companies-router.js"; app.use("/api/companies-management/", authMiddleware(), CompaniesRouter); // locations-management import LocationsRouter from "./modules/locations-management/locations-router.js"; app.use("/api/locations-management/", authMiddleware(), LocationsRouter); // tasks-management import TasksRouter from "./modules/tasks-management/tasks-router.js"; app.use("/api/tasks-management/", authMiddleware(), TasksRouter); import TaskBlocksRouter from "./modules/tasks-management/task-blocks-router.js"; app.use("/api/tasks-management/", authMiddleware(), TaskBlocksRouter); // import sessionRouter from "./modules/user/routers/session-router.js"; // app.use("/api/session/", sessionRouter); // обработчик ошибок import errorMiddleware from "./middlewares/error-middleware.js"; app.use(errorMiddleware); // const start = async () => { try { logger.info("Запуск сервиса..."); // проверка схемы БД await DbService.checkDbShema(); // TODO сделать проверку .env app.listen(PORT, () => logger.info(`Сервер запущен на порту ${PORT}`)); } catch (e) { logger.error(e); } }; start();