From 7d82f5ba39682fae7a53d0390dfd3ad96cbc0469 Mon Sep 17 00:00:00 2001 From: Watheq Alshowaiter Date: Wed, 15 Oct 2025 14:52:43 +0300 Subject: [PATCH] add api --- app/Http/Controllers/RateController.php | 18 +++++++++++++++--- bootstrap/app.php | 1 + routes/api.php | 6 ++++++ 3 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 routes/api.php diff --git a/app/Http/Controllers/RateController.php b/app/Http/Controllers/RateController.php index a208c58..206b430 100644 --- a/app/Http/Controllers/RateController.php +++ b/app/Http/Controllers/RateController.php @@ -8,12 +8,24 @@ use App\Services\RateService; class RateController extends Controller { - public function __invoke( RateService $rateService) + public function __invoke(RateService $rateService) { $rates = $rateService->getFormattedRates(); - return view('rates', [ - 'rates' => $rates, + return view('rates', [ + 'rates' => $rates, + ]); + } + + public function api(RateService $rateService) + { + $rates = $rateService->getFormattedRates(); + + return response()->json([ + 'data' => $rates->items(), + 'next_page_url' => $rates->nextPageUrl(), + 'path' => $rates->path(), + 'per_page' => $rates->perPage(), ]); } } diff --git a/bootstrap/app.php b/bootstrap/app.php index 7b162da..d654276 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -7,6 +7,7 @@ use Illuminate\Foundation\Configuration\Middleware; return Application::configure(basePath: dirname(__DIR__)) ->withRouting( web: __DIR__.'/../routes/web.php', + api: __DIR__.'/../routes/api.php', commands: __DIR__.'/../routes/console.php', health: '/up', ) diff --git a/routes/api.php b/routes/api.php new file mode 100644 index 0000000..699477a --- /dev/null +++ b/routes/api.php @@ -0,0 +1,6 @@ +