Skip to content

Commit 22059a9

Browse files
fre5hArtem Henvald
andauthored
Add template configuration (#11)
Co-authored-by: Artem Henvald <artem.genvald@stfalcon.com>
1 parent 0dd2b50 commit 22059a9

4 files changed

Lines changed: 7 additions & 3 deletions

File tree

DependencyInjection/Configuration.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ public function getConfigTreeBuilder(): TreeBuilder
3333

3434
$root
3535
->children()
36-
->scalarNode('config_folder')->cannotBeEmpty()->isRequired()
36+
->scalarNode('config_folder')->cannotBeEmpty()->isRequired()->end()
37+
->scalarNode('template')->defaultValue('@Swagger/SwaggerUi/index.html.twig')->end()
3738
->end()
3839
;
3940

DependencyInjection/SwaggerExtension.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ public function load(array $configs, ContainerBuilder $container): void
3030
$configuration = new Configuration();
3131
$config = $this->processConfiguration($configuration, $configs);
3232
$container->setParameter('swagger.config_folder', $config['config_folder']);
33+
$container->setParameter('swagger.template', $config['template']);
3334

3435
$loader = new PhpFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
3536
$loader->load('services.php');

Generator/Generator.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@ class Generator
2525
* @param Environment $twig
2626
* @param ConfigParser $configParser
2727
* @param string $docsFolder
28+
* @param string $template
2829
*/
29-
public function __construct(private readonly Environment $twig, private readonly ConfigParser $configParser, private readonly string $docsFolder)
30+
public function __construct(private readonly Environment $twig, private readonly ConfigParser $configParser, private readonly string $docsFolder, private readonly string $template)
3031
{
3132
}
3233

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

4041
$docs = $this->twig->render(
41-
'@Swagger/SwaggerUi/index.html.twig',
42+
$this->template,
4243
[
4344
'swagger_data' => $swaggerConfig,
4445
]

Resources/config/services.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
->autowire()
2121
->autoconfigure()
2222
->bind('$configFolder', '%swagger.config_folder%')
23+
->bind('$template', '%swagger.template%')
2324
->bind('$docsFolder', '%kernel.project_dir%/public/api/')
2425
;
2526

0 commit comments

Comments
 (0)