refonte
This commit is contained in:
30
src/ApiPlatform/OpenApiFactoryDecorator.php
Normal file
30
src/ApiPlatform/OpenApiFactoryDecorator.php
Normal file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
namespace App\ApiPlatform;
|
||||
|
||||
use ApiPlatform\OpenApi\Factory\OpenApiFactoryInterface;
|
||||
use ApiPlatform\OpenApi\Model\SecurityScheme;
|
||||
use ApiPlatform\OpenApi\OpenApi;
|
||||
use Symfony\Component\DependencyInjection\Attribute\AsDecorator;
|
||||
|
||||
#[AsDecorator('api_platform.openapi.factory')]
|
||||
class OpenApiFactoryDecorator implements OpenApiFactoryInterface
|
||||
{
|
||||
|
||||
public function __construct(private OpenApiFactoryInterface $decorated)
|
||||
{
|
||||
}
|
||||
|
||||
public function __invoke(array $context = []): OpenApi
|
||||
{
|
||||
$openApi = $this->decorated->__invoke($context);
|
||||
|
||||
$securitySchemes = $openApi->getComponents()->getSecuritySchemes() ?: new \ArrayObject();
|
||||
$securitySchemes['access_token'] = new SecurityScheme(
|
||||
type: 'http',
|
||||
scheme: 'bearer',
|
||||
);
|
||||
|
||||
return $openApi;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user