Snips/src/Service/SnipParser/Generic/GenericParser.php
Tim 978c075a3e Simplefy the generic parser
(remove code blocks, made obsolete by markdown)
2025-05-27 15:21:01 +02:00

30 lines
883 B
PHP

<?php
namespace App\Service\SnipParser\Generic;
use App\Service\SnipParser\AbstractParser;
use League\Pipeline\PipelineBuilder;
class GenericParser extends AbstractParser
{
public function __construct(
private readonly UrlReferenceStage $referenceStage,
private readonly IncludeReferenceStage $includeStage,
) {}
public function safeParseView(string $content): string
{
$builder = new PipelineBuilder();
$pipeline = $builder
->add(new HtmlEscapeStage())
// ->add(new ReplaceBlocksStage('<pre>', '</pre>', '```'))
// ->add(new ReplaceBlocksStage('<code>', '</code>', '``'))
->add(new ReplaceStage(PHP_EOL, '<br>'))
->add($this->referenceStage)
->add($this->includeStage)
->build()
;
return $pipeline->process($content);
}
}