mirror of
https://github.com/AnimeThemes/animethemes-server.git
synced 2026-09-08 13:43:11 +02:00
* refactor(api): prefer composition to strict inheritance for API queries, requests & actions * style: fix StyleCI findigns
46 lines
1001 B
PHP
46 lines
1001 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Http\Controllers\Api\Config;
|
|
|
|
use App\Contracts\Http\Api\InteractsWithSchema;
|
|
use App\Http\Api\Query\Query;
|
|
use App\Http\Api\Schema\Config\FlagsSchema;
|
|
use App\Http\Api\Schema\Schema;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\Api\ShowRequest;
|
|
use App\Http\Resources\Config\Resource\FlagsResource;
|
|
use Illuminate\Http\JsonResponse;
|
|
|
|
/**
|
|
* Class FlagsController.
|
|
*/
|
|
class FlagsController extends Controller implements InteractsWithSchema
|
|
{
|
|
/**
|
|
* Flags resource.
|
|
*
|
|
* @param ShowRequest $request
|
|
* @return JsonResponse
|
|
*/
|
|
public function show(ShowRequest $request): JsonResponse
|
|
{
|
|
$query = new Query($request->validated());
|
|
|
|
$resource = new FlagsResource($query);
|
|
|
|
return $resource->toResponse($request);
|
|
}
|
|
|
|
/**
|
|
* Get the underlying schema.
|
|
*
|
|
* @return Schema
|
|
*/
|
|
public function schema(): Schema
|
|
{
|
|
return new FlagsSchema();
|
|
}
|
|
}
|