. */ declare(strict_types=1); namespace Fisharebest\Webtrees\CommonMark; use League\CommonMark\Block\Parser\BlockParserInterface; use League\CommonMark\Block\Renderer\BlockRendererInterface; use League\CommonMark\Extension\Extension; use Webuni\CommonMark\TableExtension\Table; use Webuni\CommonMark\TableExtension\TableCell; use Webuni\CommonMark\TableExtension\TableCellRenderer; use Webuni\CommonMark\TableExtension\TableRenderer; use Webuni\CommonMark\TableExtension\TableRow; use Webuni\CommonMark\TableExtension\TableRowRenderer; use Webuni\CommonMark\TableExtension\TableRows; use Webuni\CommonMark\TableExtension\TableRowsRenderer; /** * Convert webtrees 1.x census-assistant markup into tables. * Note that webtrees 2.0 generates markdown tables directly. * * Based on the table parser from webuni/commonmark-table-extension. */ class CensusTableExtension extends Extension { /** * Returns a list of block parsers to add to the existing list * * @return BlockParserInterface[] */ public function getBlockParsers(): array { return [ new CensusTableParser(), ]; } /** * Returns a list of block renderers to add to the existing list * * The list keys are the block class names which the corresponding value (renderer) will handle. * * @return BlockRendererInterface[] */ public function getBlockRenderers(): array { return [ Table::class => new TableRenderer(), TableRows::class => new TableRowsRenderer(), TableRow::class => new TableRowRenderer(), TableCell::class => new TableCellRenderer(), ]; } /** * @return string */ public function getName(): string { return 'censustabletable'; } }