/** * @param ListBlock $block * @param HtmlRendererInterface $htmlRenderer * @param bool $inTightList * * @return HtmlElement */ public function render(AbstractBlock $block, HtmlRendererInterface $htmlRenderer, $inTightList = false) { if (!$block instanceof ListBlock) { throw new \InvalidArgumentException('Incompatible block type: ' . get_class($block)); } $listData = $block->getListData(); $tag = $listData->type == ListBlock::TYPE_UNORDERED ? 'ul' : 'ol'; $attr = $listData->start === null || $listData->start === 1 ? array() : array('start' => (string) $listData->start); return new HtmlElement($tag, $attr, $htmlRenderer->getOption('inner_separator', "\n") . $htmlRenderer->renderBlocks($block->getChildren(), $block->isTight()) . $htmlRenderer->getOption('inner_separator', "\n")); }
/** * @param Aside $block * @param HtmlRendererInterface $htmlRenderer * @param bool $inTightList * * @return HtmlElement */ public function render(AbstractBlock $block, HtmlRendererInterface $htmlRenderer, $inTightList = false) { if (!$block instanceof Aside) { throw new \InvalidArgumentException('Incompatible block type: ' . get_class($block)); } $filling = $htmlRenderer->renderBlocks($block->getChildren()); if ($filling === '') { return new HtmlElement('aside', array(), $htmlRenderer->getOption('inner_separator')); } return new HtmlElement('aside', array(), $htmlRenderer->getOption('inner_separator', "\n") . $filling . $htmlRenderer->getOption('inner_separator', "\n")); }
/** * @param Newline $inline * @param HtmlRendererInterface $htmlRenderer * * @return HtmlElement|string */ public function render(AbstractInline $inline, HtmlRendererInterface $htmlRenderer) { if (!$inline instanceof Newline) { throw new \InvalidArgumentException('Incompatible inline type: ' . get_class($inline)); } if ($inline->getType() === Newline::HARDBREAK) { return new HtmlElement('br', [], '', true) . "\n"; } else { return $htmlRenderer->getOption('soft_break', "\n"); } }