Skip to content

Commit

Permalink
Add template configuration (#11)
Browse files Browse the repository at this point in the history
Co-authored-by: Artem Henvald <[email protected]>
  • Loading branch information
fre5h and Artem Henvald authored Sep 6, 2022
1 parent 0dd2b50 commit 22059a9
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 3 deletions.
3 changes: 2 additions & 1 deletion DependencyInjection/Configuration.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@ public function getConfigTreeBuilder(): TreeBuilder

$root
->children()
->scalarNode('config_folder')->cannotBeEmpty()->isRequired()
->scalarNode('config_folder')->cannotBeEmpty()->isRequired()->end()
->scalarNode('template')->defaultValue('@Swagger/SwaggerUi/index.html.twig')->end()
->end()
;

Expand Down
1 change: 1 addition & 0 deletions DependencyInjection/SwaggerExtension.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ public function load(array $configs, ContainerBuilder $container): void
$configuration = new Configuration();
$config = $this->processConfiguration($configuration, $configs);
$container->setParameter('swagger.config_folder', $config['config_folder']);
$container->setParameter('swagger.template', $config['template']);

$loader = new PhpFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$loader->load('services.php');
Expand Down
5 changes: 3 additions & 2 deletions Generator/Generator.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,9 @@ class Generator
* @param Environment $twig
* @param ConfigParser $configParser
* @param string $docsFolder
* @param string $template
*/
public function __construct(private readonly Environment $twig, private readonly ConfigParser $configParser, private readonly string $docsFolder)
public function __construct(private readonly Environment $twig, private readonly ConfigParser $configParser, private readonly string $docsFolder, private readonly string $template)
{
}

Expand All @@ -38,7 +39,7 @@ public function generate(): void
$swaggerConfig = $this->configParser->parse();

$docs = $this->twig->render(
'@Swagger/SwaggerUi/index.html.twig',
$this->template,
[
'swagger_data' => $swaggerConfig,
]
Expand Down
1 change: 1 addition & 0 deletions Resources/config/services.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
->autowire()
->autoconfigure()
->bind('$configFolder', '%swagger.config_folder%')
->bind('$template', '%swagger.template%')
->bind('$docsFolder', '%kernel.project_dir%/public/api/')
;

Expand Down

0 comments on commit 22059a9

Please sign in to comment.