feat: add Swagger UI service to docker-compose and update OpenAPI annotations in controllers
Some checks failed
🧪✨ Tests Workflow / 🧪 ✨ Database Migrations (push) Failing after 2m49s
🧪✨ Tests Workflow / 🛡️ 🔒 Library Audit (push) Successful in 2m42s
🧪✨ Tests Workflow / 🛡️ 🔒 License Check (push) Successful in 2m50s
🧪✨ Tests Workflow / 📝 ✨ Code Lint (push) Successful in 2m44s
🧪✨ Tests Workflow / 🐙 🔍 Code Sniffer (push) Successful in 3m5s
🧪✨ Tests Workflow / 🧪 ✅ Unit Tests (push) Successful in 2m54s

This commit is contained in:
2025-12-01 10:34:38 -05:00
parent a397177896
commit abc4fcf544
2 changed files with 10 additions and 4 deletions

View File

@@ -11,7 +11,7 @@ use League\Route\Router;
use Nyholm\Psr7\Factory\Psr17Factory; use Nyholm\Psr7\Factory\Psr17Factory;
use Siteworxpro\App\Controllers\HealthcheckController; use Siteworxpro\App\Controllers\HealthcheckController;
use Siteworxpro\App\Controllers\IndexController; use Siteworxpro\App\Controllers\IndexController;
use Siteworxpro\App\Controllers\SwaggerController; use Siteworxpro\App\Controllers\OpenApiController;
use Siteworxpro\App\Http\JsonResponseFactory; use Siteworxpro\App\Http\JsonResponseFactory;
use Siteworxpro\App\Http\Middleware\CorsMiddleware; use Siteworxpro\App\Http\Middleware\CorsMiddleware;
use Siteworxpro\App\Http\Middleware\JwtMiddleware; use Siteworxpro\App\Http\Middleware\JwtMiddleware;
@@ -74,8 +74,8 @@ class Api
$this->router->get('/healthz', HealthcheckController::class . '::get'); $this->router->get('/healthz', HealthcheckController::class . '::get');
$this->router->group('/.well-known', function (RouteGroup $router) { $this->router->group('/.well-known', function (RouteGroup $router) {
$router->get('/swagger.yaml', SwaggerController::class . '::get'); $router->get('/swagger.yaml', OpenApiController::class . '::get');
$router->get('/swagger.json', SwaggerController::class . '::get'); $router->get('/swagger.json', OpenApiController::class . '::get');
}); });
$this->router->middleware(new CorsMiddleware()); $this->router->middleware(new CorsMiddleware());

View File

@@ -9,8 +9,14 @@ use Nyholm\Psr7\ServerRequest;
use OpenApi\Generator; use OpenApi\Generator;
use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ResponseInterface;
class SwaggerController extends Controller class OpenApiController extends Controller
{ {
/**
* Handles the GET request to generate and return the OpenAPI specification.
*
* @param ServerRequest $request
* @return ResponseInterface
*/
public function get(ServerRequest $request): ResponseInterface public function get(ServerRequest $request): ResponseInterface
{ {
$openapi = new Generator()->generate([ $openapi = new Generator()->generate([