<?php
declare(strict_types = 1);
namespace App\Action;
use App\Domain\Repository\FinitionRepository;
use App\Domain\Repository\GrateStepRepository;
use App\Domain\Repository\GuardRailRepository;
use App\Domain\Repository\LimonRepository;
use App\Domain\Repository\StairTypeRepository;
use App\Domain\Repository\SteelStepRepository;
use App\Domain\Repository\WoodStepRepository;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Annotation\Route;
class IndexAction extends AbstractController
{
#[Route('/', name: 'app_index', methods: ['GET'])]
public function __invoke(
FinitionRepository $finitionRepository,
GrateStepRepository $grateStepRepository,
GuardRailRepository $guardRailRepository,
LimonRepository $limonRepository,
StairTypeRepository $stairTypeRepository,
SteelStepRepository $steelStepRepository,
WoodStepRepository $woodStepRepository
): JsonResponse {
return new JsonResponse([
'finitions' => $finitionRepository->findAll(),
'grateSteps' => $grateStepRepository->findAll(),
'guardRails' => $guardRailRepository->findAll(),
'limons' => $limonRepository->findAll(),
'stairTypes' => $stairTypeRepository->findAll(),
'steelSteps' => $steelStepRepository->findAll(),
'woodSteps' => $woodStepRepository->findAll(),
], JsonResponse::HTTP_OK);
}
}