From b9e547fb6706a7e33f9471d97d2eede71fa48216 Mon Sep 17 00:00:00 2001 From: bocharsky-bw Date: Tue, 25 Jan 2022 18:20:53 +0200 Subject: [PATCH] Revert removing Sundown --- DependencyInjection/Configuration.php | 31 +++++++++++++++++++++++++++ Parser/SundownParser.php | 30 ++++++++++++++++++++++++++ Resources/config/sundown.xml | 26 ++++++++++++++++++++++ composer.json | 3 ++- 4 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 Parser/SundownParser.php create mode 100644 Resources/config/sundown.xml diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php index 3d5900a..c9b6e90 100644 --- a/DependencyInjection/Configuration.php +++ b/DependencyInjection/Configuration.php @@ -26,6 +26,37 @@ class Configuration implements ConfigurationInterface ->scalarNode('service')->cannotBeEmpty()->defaultValue('markdown.parser.max')->end() ->end() ->end() + ->arrayNode('sundown') + ->addDefaultsIfNotSet() + ->children() + ->arrayNode('extensions') + ->addDefaultsIfNotSet() + ->children() + ->booleanNode('fenced_code_blocks')->defaultFalse()->end() + ->booleanNode('no_intra_emphasis')->defaultFalse()->end() + ->booleanNode('tables')->defaultFalse()->end() + ->booleanNode('autolink')->defaultFalse()->end() + ->booleanNode('strikethrough')->defaultFalse()->end() + ->booleanNode('lax_html_blocks')->defaultFalse()->end() + ->booleanNode('space_after_headers')->defaultFalse()->end() + ->booleanNode('superscript')->defaultFalse()->end() + ->end() + ->end() + ->arrayNode('render_flags') + ->addDefaultsIfNotSet() + ->children() + ->booleanNode('filter_html')->defaultFalse()->end() + ->booleanNode('no_images')->defaultFalse()->end() + ->booleanNode('no_links')->defaultFalse()->end() + ->booleanNode('no_styles')->defaultFalse()->end() + ->booleanNode('safe_links_only')->defaultFalse()->end() + ->booleanNode('with_toc_data')->defaultFalse()->end() + ->booleanNode('hard_wrap')->defaultFalse()->end() + ->booleanNode('xhtml')->defaultFalse()->end() + ->end() + ->end() + ->end() + ->end() ->end() ->end(); diff --git a/Parser/SundownParser.php b/Parser/SundownParser.php new file mode 100644 index 0000000..572bc7d --- /dev/null +++ b/Parser/SundownParser.php @@ -0,0 +1,30 @@ +parser = $parser; + } + + /** + * {@inheritdoc} + */ + public function transformMarkdown($text) + { + return $this->parser->render($text); + } +} diff --git a/Resources/config/sundown.xml b/Resources/config/sundown.xml new file mode 100644 index 0000000..ea1f81d --- /dev/null +++ b/Resources/config/sundown.xml @@ -0,0 +1,26 @@ + + + + + Knp\Bundle\MarkdownBundle\Parser\SundownParser + Sundown\Markdown + Sundown\Render\HTML + + + + + + + + + + %markdown.sundown.extensions% + + + + %markdown.sundown.render_flags% + + + diff --git a/composer.json b/composer.json index b10bd51..01de935 100644 --- a/composer.json +++ b/composer.json @@ -31,7 +31,8 @@ "phpstan/phpstan-symfony": "^1.0" }, "suggest": { - "symfony/twig-bundle": "to use the Twig markdown filter" + "symfony/twig-bundle": "to use the Twig markdown filter", + "ext-sundown": "to use optional support for php-sundown extension instead of php implementation" }, "extra": {