NelmioApiDocBundle/Twig/Extension/MarkdownExtension.php

35 lines
708 B
PHP
Raw Normal View History

<?php
namespace Nelmio\ApiDocBundle\Twig\Extension;
use Michelf\MarkdownExtra;
2022-12-01 16:52:52 +03:00
use Twig\Extension\AbstractExtension;
2024-10-10 23:07:49 +03:00
use Twig\TwigFilter;
2022-12-01 16:52:52 +03:00
class MarkdownExtension extends AbstractExtension
{
2024-10-10 23:07:49 +03:00
private MarkdownExtra $markdownParser;
public function __construct()
{
$this->markdownParser = new MarkdownExtra();
}
2024-10-10 23:07:49 +03:00
public function getFilters(): array
{
2024-10-01 15:54:04 +03:00
return [
2024-10-10 23:07:49 +03:00
new TwigFilter('extra_markdown', [$this, 'markdown'], ['is_safe' => ['html']]),
2024-10-01 15:54:04 +03:00
];
}
2024-10-10 23:07:49 +03:00
public function getName(): string
{
return 'nelmio_api_doc';
}
2024-10-10 23:07:49 +03:00
public function markdown($text): string
{
return $this->markdownParser->transform($text);
}
}