From bbb691337f0799e65dda85b107071610d6d60604 Mon Sep 17 00:00:00 2001 From: Nick van der Zwet Date: Wed, 20 Feb 2019 11:32:55 +0100 Subject: [PATCH 1/2] add custom twig template dirs --- src/Command/GenerateTypesCommand.php | 5 ++++- src/TypesGeneratorConfiguration.php | 4 ++++ tests/Command/DumpConfigurationTest.php | 3 +++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/Command/GenerateTypesCommand.php b/src/Command/GenerateTypesCommand.php index 869baa39..589ccb4c 100644 --- a/src/Command/GenerateTypesCommand.php +++ b/src/Command/GenerateTypesCommand.php @@ -146,7 +146,10 @@ protected function execute(InputInterface $input, OutputInterface $output): void $goodRelationsBridge = new GoodRelationsBridge($relations); $cardinalitiesExtractor = new CardinalitiesExtractor($graphs, $goodRelationsBridge); - $loader = new \Twig_Loader_Filesystem(__DIR__.'/../../templates/'); + $templatePaths = $processedConfiguration['generatorTemplates']; + $templatePaths[] = __DIR__ . '/../../templates/'; + + $loader = new \Twig_Loader_Filesystem($templatePaths); $twig = new \Twig_Environment($loader, ['autoescape' => false, 'debug' => $processedConfiguration['debug']]); $twig->addFilter(new \Twig_SimpleFilter('ucfirst', 'ucfirst')); $twig->addFilter(new \Twig_SimpleFilter('pluralize', [Inflector::class, 'pluralize'])); diff --git a/src/TypesGeneratorConfiguration.php b/src/TypesGeneratorConfiguration.php index d1a3b29a..29cd12f6 100644 --- a/src/TypesGeneratorConfiguration.php +++ b/src/TypesGeneratorConfiguration.php @@ -209,6 +209,10 @@ function ($rdfa) { ]) ->prototype('scalar')->end() ->end() + ->arrayNode('generatorTemplates') + ->info('Directories for custom generator twig templates') + ->prototype('scalar')->end() + ->end() ->end(); return $treeBuilder; diff --git a/tests/Command/DumpConfigurationTest.php b/tests/Command/DumpConfigurationTest.php index 7e1c27da..5ee5c53a 100644 --- a/tests/Command/DumpConfigurationTest.php +++ b/tests/Command/DumpConfigurationTest.php @@ -199,6 +199,9 @@ interface: null - ApiPlatform\SchemaGenerator\AnnotationGenerator\ConstraintAnnotationGenerator - ApiPlatform\SchemaGenerator\AnnotationGenerator\SerializerGroupsAnnotationGenerator + # Directories for custom generator twig templates + generatorTemplates: [] + YAML , From 1e40382aded975fbbcdbc93192ebfec4e824ce9e Mon Sep 17 00:00:00 2001 From: Nick van der Zwet Date: Mon, 15 Apr 2019 11:09:16 +0200 Subject: [PATCH 2/2] php-cs-fixer --- src/Command/GenerateTypesCommand.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Command/GenerateTypesCommand.php b/src/Command/GenerateTypesCommand.php index 589ccb4c..b2a080e0 100644 --- a/src/Command/GenerateTypesCommand.php +++ b/src/Command/GenerateTypesCommand.php @@ -147,7 +147,7 @@ protected function execute(InputInterface $input, OutputInterface $output): void $cardinalitiesExtractor = new CardinalitiesExtractor($graphs, $goodRelationsBridge); $templatePaths = $processedConfiguration['generatorTemplates']; - $templatePaths[] = __DIR__ . '/../../templates/'; + $templatePaths[] = __DIR__.'/../../templates/'; $loader = new \Twig_Loader_Filesystem($templatePaths); $twig = new \Twig_Environment($loader, ['autoescape' => false, 'debug' => $processedConfiguration['debug']]);