recipe-backend/src/endpoints/CompactRecipePoint.ts

27 lines
No EOL
896 B
TypeScript

import { Router } from "express";
import { asyncHandler } from "../utils/asyncHandler.js";
import { RecipeRepository } from "../repositories/RecipeRepository.js";
import { CompactRecipeController } from "../controllers/CompactRecipeController.js";
import { CompactRecipeDtoEntityMapper } from "../mappers/CompactRecipeDtoEntityMapper.js";
/**
* Handles all recipe related routes
*/
const router = Router();
// Inject repo + mapper here
const recipeRepository = new RecipeRepository();
const compactRecipeMapper = new CompactRecipeDtoEntityMapper();
const compactRecipeController = new CompactRecipeController(recipeRepository, compactRecipeMapper);
/**
* Load header data of all recipes
*/
router.get(
"/",
asyncHandler(async (req, res) => {
const response = await compactRecipeController.getAllCompactRecipes();
res.status(201).json(response);
})
);
export default router;