1<?php
2
3// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the GNU Affero General Public License v3.0.
4// See the LICENCE file in the repository root for full licence text.
5
6namespace App\Libraries\Markdown\Indexing\Renderers;
7
8use League\CommonMark\Extension\Table\TableCell;
9use League\CommonMark\Extension\Table\TableRow;
10use League\CommonMark\Extension\Table\TableSection;
11use League\CommonMark\Node\Node;
12use League\CommonMark\Renderer\ChildNodeRendererInterface;
13
14class TableRenderer extends BlockRenderer
15{
16 const INLINE_CLASSES = [TableCell::class, TableRow::class];
17
18 public function render(Node $node, ChildNodeRendererInterface $childRenderer): string
19 {
20 if (!$node->hasChildren()) {
21 return '';
22 }
23
24 // skip header
25 if ($node instanceof TableSection && $node->isHead()) {
26 return '';
27 }
28
29 return parent::render($node, $childRenderer);
30 }
31}