diff --git a/src/Component.php b/src/Component.php index 40cd567..9f714a0 100644 --- a/src/Component.php +++ b/src/Component.php @@ -9,5 +9,5 @@ interface Component /** * @return StateRenderable */ - public function stateRenderable(Parsedown $Parsedown); + public function stateRenderable(); } diff --git a/src/Components/Blocks/BlockQuote.php b/src/Components/Blocks/BlockQuote.php index 542b26a..c059e00 100644 --- a/src/Components/Blocks/BlockQuote.php +++ b/src/Components/Blocks/BlockQuote.php @@ -97,15 +97,15 @@ final class BlockQuote implements ContinuableBlock /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( 'blockquote', [], - $State->applyTo($Parsedown->lines($this->Lines)) + $State->applyTo((new Parsedown($State))->lines($this->Lines)) ); } ); diff --git a/src/Components/Blocks/Comment.php b/src/Components/Blocks/Comment.php index 804a2dd..6ffedc4 100644 --- a/src/Components/Blocks/Comment.php +++ b/src/Components/Blocks/Comment.php @@ -9,7 +9,6 @@ use Erusev\Parsedown\Components\ContinuableBlock; use Erusev\Parsedown\Configurables\SafeMode; use Erusev\Parsedown\Html\Renderables\RawHtml; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Context; use Erusev\Parsedown\State; @@ -73,7 +72,7 @@ final class Comment implements ContinuableBlock /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Text|RawHtml */ diff --git a/src/Components/Blocks/FencedCode.php b/src/Components/Blocks/FencedCode.php index 14ffb31..118c463 100644 --- a/src/Components/Blocks/FencedCode.php +++ b/src/Components/Blocks/FencedCode.php @@ -7,7 +7,6 @@ use Erusev\Parsedown\Components\Block; use Erusev\Parsedown\Components\ContinuableBlock; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Context; use Erusev\Parsedown\State; @@ -106,7 +105,7 @@ final class FencedCode implements ContinuableBlock /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Element('pre', [], [new Element( 'code', diff --git a/src/Components/Blocks/Header.php b/src/Components/Blocks/Header.php index fee2df2..5cfefe3 100644 --- a/src/Components/Blocks/Header.php +++ b/src/Components/Blocks/Header.php @@ -76,15 +76,15 @@ final class Header implements Block /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( 'h' . \strval($this->level), [], - $State->applyTo($Parsedown->line($this->text)) + $State->applyTo((new Parsedown($State))->line($this->text)) ); } ); diff --git a/src/Components/Blocks/IndentedCode.php b/src/Components/Blocks/IndentedCode.php index 08f288c..db1c445 100644 --- a/src/Components/Blocks/IndentedCode.php +++ b/src/Components/Blocks/IndentedCode.php @@ -7,7 +7,6 @@ use Erusev\Parsedown\Components\Block; use Erusev\Parsedown\Components\ContinuableBlock; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Context; use Erusev\Parsedown\State; @@ -70,7 +69,7 @@ final class IndentedCode implements ContinuableBlock /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Element( 'pre', diff --git a/src/Components/Blocks/Markup.php b/src/Components/Blocks/Markup.php index f82f055..bdb5576 100644 --- a/src/Components/Blocks/Markup.php +++ b/src/Components/Blocks/Markup.php @@ -10,7 +10,6 @@ use Erusev\Parsedown\Configurables\SafeMode; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\RawHtml; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Context; use Erusev\Parsedown\State; @@ -71,7 +70,7 @@ final class Markup implements ContinuableBlock /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element|RawHtml */ diff --git a/src/Components/Blocks/Paragraph.php b/src/Components/Blocks/Paragraph.php index b6d9ad3..c5eb3c6 100644 --- a/src/Components/Blocks/Paragraph.php +++ b/src/Components/Blocks/Paragraph.php @@ -62,15 +62,15 @@ final class Paragraph implements ContinuableBlock /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( 'p', [], - $State->applyTo($Parsedown->line($this->text)) + $State->applyTo((new Parsedown($State))->line($this->text)) ); } ); diff --git a/src/Components/Blocks/Reference.php b/src/Components/Blocks/Reference.php index aa77b16..db35a21 100644 --- a/src/Components/Blocks/Reference.php +++ b/src/Components/Blocks/Reference.php @@ -7,7 +7,6 @@ use Erusev\Parsedown\Components\Block; use Erusev\Parsedown\Components\StateUpdatingBlock; use Erusev\Parsedown\Configurables\DefinitionBook; use Erusev\Parsedown\Html\Renderables\Invisible; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Context; use Erusev\Parsedown\State; @@ -69,7 +68,7 @@ final class Reference implements StateUpdatingBlock /** * @return Invisible */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Invisible; } diff --git a/src/Components/Blocks/Rule.php b/src/Components/Blocks/Rule.php index 218b015..eb1f2ed 100644 --- a/src/Components/Blocks/Rule.php +++ b/src/Components/Blocks/Rule.php @@ -5,7 +5,6 @@ namespace Erusev\Parsedown\Components\Blocks; use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Block; use Erusev\Parsedown\Html\Renderables\Element; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Context; use Erusev\Parsedown\State; @@ -43,7 +42,7 @@ final class Rule implements Block /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return Element::selfClosing('hr', []); } diff --git a/src/Components/Blocks/SetextHeader.php b/src/Components/Blocks/SetextHeader.php index 38686ab..65148b3 100644 --- a/src/Components/Blocks/SetextHeader.php +++ b/src/Components/Blocks/SetextHeader.php @@ -58,15 +58,15 @@ final class SetextHeader implements Block /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( 'h' . \strval($this->level), [], - $State->applyTo($Parsedown->line($this->text)) + $State->applyTo((new Parsedown($State))->line($this->text)) ); } ); diff --git a/src/Components/Blocks/TList.php b/src/Components/Blocks/TList.php index 482c5bf..245b34e 100644 --- a/src/Components/Blocks/TList.php +++ b/src/Components/Blocks/TList.php @@ -276,11 +276,11 @@ final class TList implements ContinuableBlock /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( $this->type, ( @@ -290,12 +290,12 @@ final class TList implements ContinuableBlock ), \array_map( /** @return Element */ - function (Lines $Lines) use ($State, $Parsedown) { + function (Lines $Lines) use ($State) { if ($this->isLoose && $Lines->trailingBlankLines() === 0) { $Lines = $Lines->appendingBlankLines(1); } - $Renderables = $State->applyTo($Parsedown->lines($Lines)); + $Renderables = $State->applyTo((new Parsedown($State))->lines($Lines)); if (! $Lines->containsBlankLines() and isset($Renderables[0]) diff --git a/src/Components/Blocks/Table.php b/src/Components/Blocks/Table.php index fd71b67..5536b6e 100644 --- a/src/Components/Blocks/Table.php +++ b/src/Components/Blocks/Table.php @@ -165,11 +165,11 @@ final class Table implements ContinuableBlock /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element('table', [], [ new Element('thead', [], [new Element('tr', [], \array_map( /** @@ -177,11 +177,11 @@ final class Table implements ContinuableBlock * @param _Alignment|null $alignment * @return Element */ - function ($cell, $alignment) use ($Parsedown, $State) { + function ($cell, $alignment) use ($State) { return new Element( 'th', isset($alignment) ? ['style' => "text-align: $alignment;"] : [], - $State->applyTo($Parsedown->line($cell)) + $State->applyTo((new Parsedown($State))->line($cell)) ); }, $this->headerCells, @@ -192,18 +192,18 @@ final class Table implements ContinuableBlock * @param array $cells * @return Element */ - function ($cells) use ($Parsedown, $State) { + function ($cells) use ($State) { return new Element('tr', [], \array_map( /** * @param string $cell * @param _Alignment|null $alignment * @return Element */ - function ($cell, $alignment) use ($Parsedown, $State) { + function ($cell, $alignment) use ($State) { return new Element( 'td', isset($alignment) ? ['style' => "text-align: $alignment;"] : [], - $State->applyTo($Parsedown->line($cell)) + $State->applyTo((new Parsedown($State))->line($cell)) ); }, $cells, diff --git a/src/Components/Inlines/Code.php b/src/Components/Inlines/Code.php index b559c4a..ecbde6f 100644 --- a/src/Components/Inlines/Code.php +++ b/src/Components/Inlines/Code.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -54,7 +53,7 @@ final class Code implements Inline /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Element('code', [], [new Text($this->text)]); } diff --git a/src/Components/Inlines/Email.php b/src/Components/Inlines/Email.php index 136e478..cb71e56 100644 --- a/src/Components/Inlines/Email.php +++ b/src/Components/Inlines/Email.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -60,7 +59,7 @@ final class Email implements Inline /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Element('a', ['href' => $this->url], [new Text($this->text)]); } diff --git a/src/Components/Inlines/Emphasis.php b/src/Components/Inlines/Emphasis.php index 2b65321..906e915 100644 --- a/src/Components/Inlines/Emphasis.php +++ b/src/Components/Inlines/Emphasis.php @@ -72,15 +72,15 @@ final class Emphasis implements Inline /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( $this->type, [], - $State->applyTo($Parsedown->line($this->text)) + $State->applyTo((new Parsedown($State))->line($this->text)) ); } ); diff --git a/src/Components/Inlines/EscapeSequence.php b/src/Components/Inlines/EscapeSequence.php index 521680d..050494c 100644 --- a/src/Components/Inlines/EscapeSequence.php +++ b/src/Components/Inlines/EscapeSequence.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\RawHtml; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -45,7 +44,7 @@ final class EscapeSequence implements Inline /** * @return RawHtml */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new RawHtml($this->html); } diff --git a/src/Components/Inlines/HardBreak.php b/src/Components/Inlines/HardBreak.php index b031469..40e4a11 100644 --- a/src/Components/Inlines/HardBreak.php +++ b/src/Components/Inlines/HardBreak.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -76,7 +75,7 @@ final class HardBreak implements Inline /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return Element::selfClosing('br', []); } diff --git a/src/Components/Inlines/Image.php b/src/Components/Inlines/Image.php index 85e03ba..977ad6d 100644 --- a/src/Components/Inlines/Image.php +++ b/src/Components/Inlines/Image.php @@ -54,15 +54,15 @@ final class Image implements Inline /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element|Text */ - function (State $State) use ($Parsedown) { + function (State $State) { $attributes = [ 'src' => $this->Link->url(), 'alt' => \array_reduce( - $Parsedown->inlines($this->Link->label()), + (new Parsedown($State))->inlines($this->Link->label()), /** * @param string $text * @return string diff --git a/src/Components/Inlines/Link.php b/src/Components/Inlines/Link.php index ddbfb7d..76a4694 100644 --- a/src/Components/Inlines/Link.php +++ b/src/Components/Inlines/Link.php @@ -112,11 +112,11 @@ final class Link implements Inline /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element|Text */ - function (State $State) use ($Parsedown) { + function (State $State) { $attributes = ['href' => $this->url]; if (isset($this->title)) { diff --git a/src/Components/Inlines/Markup.php b/src/Components/Inlines/Markup.php index 46679d7..b0fb1e6 100644 --- a/src/Components/Inlines/Markup.php +++ b/src/Components/Inlines/Markup.php @@ -8,7 +8,6 @@ use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Configurables\SafeMode; use Erusev\Parsedown\Html\Renderables\RawHtml; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -59,7 +58,7 @@ final class Markup implements Inline /** * @return Handler */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Handler( /** @return Text|RawHtml */ diff --git a/src/Components/Inlines/PlainText.php b/src/Components/Inlines/PlainText.php index 9d83216..ddc3b14 100644 --- a/src/Components/Inlines/PlainText.php +++ b/src/Components/Inlines/PlainText.php @@ -5,7 +5,6 @@ namespace Erusev\Parsedown\Components\Inlines; use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -44,7 +43,7 @@ final class PlainText implements Inline /** * @return Text */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Text($this->text); } diff --git a/src/Components/Inlines/SoftBreak.php b/src/Components/Inlines/SoftBreak.php index a0eee33..ac710f5 100644 --- a/src/Components/Inlines/SoftBreak.php +++ b/src/Components/Inlines/SoftBreak.php @@ -9,7 +9,6 @@ use Erusev\Parsedown\Configurables\Breaks; use Erusev\Parsedown\Html\Renderables\Container; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -65,7 +64,7 @@ final class SoftBreak implements Inline /** * @return Handler */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Handler( /** @return Text|Container */ diff --git a/src/Components/Inlines/SpecialCharacter.php b/src/Components/Inlines/SpecialCharacter.php index 714acae..e7e7081 100644 --- a/src/Components/Inlines/SpecialCharacter.php +++ b/src/Components/Inlines/SpecialCharacter.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\RawHtml; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -45,7 +44,7 @@ final class SpecialCharacter implements Inline /** * @return RawHtml */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new RawHtml( '&' . (new Text($this->charCodeHtml))->getHtml() . ';' diff --git a/src/Components/Inlines/Strikethrough.php b/src/Components/Inlines/Strikethrough.php index 8cf4f8a..bd92818 100644 --- a/src/Components/Inlines/Strikethrough.php +++ b/src/Components/Inlines/Strikethrough.php @@ -51,15 +51,15 @@ final class Strikethrough implements Inline /** * @return Handler */ - public function stateRenderable(Parsedown $Parsedown) + public function stateRenderable() { return new Handler( /** @return Element */ - function (State $State) use ($Parsedown) { + function (State $State) { return new Element( 'del', [], - $State->applyTo($Parsedown->line($this->text)) + $State->applyTo((new Parsedown($State))->line($this->text)) ); } ); diff --git a/src/Components/Inlines/Url.php b/src/Components/Inlines/Url.php index 754401b..6113604 100644 --- a/src/Components/Inlines/Url.php +++ b/src/Components/Inlines/Url.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -67,7 +66,7 @@ final class Url implements Inline /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Element('a', ['href' => $this->url], [new Text($this->url)]); } diff --git a/src/Components/Inlines/UrlTag.php b/src/Components/Inlines/UrlTag.php index d6dc05f..c7ee6ac 100644 --- a/src/Components/Inlines/UrlTag.php +++ b/src/Components/Inlines/UrlTag.php @@ -6,7 +6,6 @@ use Erusev\Parsedown\AST\StateRenderable; use Erusev\Parsedown\Components\Inline; use Erusev\Parsedown\Html\Renderables\Element; use Erusev\Parsedown\Html\Renderables\Text; -use Erusev\Parsedown\Parsedown; use Erusev\Parsedown\Parsing\Excerpt; use Erusev\Parsedown\State; @@ -44,7 +43,7 @@ final class UrlTag implements Inline /** * @return Element */ - public function stateRenderable(Parsedown $_) + public function stateRenderable() { return new Element('a', ['href' => $this->url], [new Text($this->url)]); } diff --git a/src/Parsedown.php b/src/Parsedown.php index d607ca5..1bbffb6 100644 --- a/src/Parsedown.php +++ b/src/Parsedown.php @@ -66,7 +66,7 @@ final class Parsedown { return \array_map( /** @return StateRenderable */ - function (Block $Block) { return $Block->stateRenderable($this); }, + function (Block $Block) { return $Block->stateRenderable(); }, $this->blocks($Lines) ); } @@ -155,7 +155,7 @@ final class Parsedown { return \array_map( /** @return StateRenderable */ - function (Inline $Inline) { return $Inline->stateRenderable($this); }, + function (Inline $Inline) { return $Inline->stateRenderable(); }, $this->inlines($text) ); }