You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.2 KiB
60 lines
1.2 KiB
<?php |
|
/** |
|
* @link http://www.yiiframework.com/ |
|
* @copyright Copyright (c) 2008 Yii Software LLC |
|
* @license http://www.yiiframework.com/license/ |
|
*/ |
|
|
|
namespace yii\apidoc\helpers; |
|
|
|
use Parsedown; |
|
use yii\base\Component; |
|
|
|
/** |
|
* A Markdown helper with support for class reference links. |
|
* |
|
* @author Carsten Brandt <mail@cebe.cc> |
|
* @since 2.0 |
|
*/ |
|
class Markdown extends Component |
|
{ |
|
private $_parseDown; |
|
|
|
protected function getParseDown() |
|
{ |
|
if ($this->_parseDown === null) { |
|
$this->_parseDown = new ParseDown(); |
|
} |
|
return $this->_parseDown; |
|
} |
|
|
|
public function parse($markdown) |
|
{ |
|
return $this->getParseDown()->parse($markdown); |
|
} |
|
|
|
public function parseLine($markdown) |
|
{ |
|
return $this->getParseDown()->parseLine($markdown); |
|
} |
|
|
|
public function registerBlockHander($blockName, $callback) |
|
{ |
|
$this->getParseDown()->register_block_handler($blockName, $callback); |
|
} |
|
|
|
public function unregisterBlockHander($blockName) |
|
{ |
|
$this->getParseDown()->remove_block_handler($blockName); |
|
} |
|
|
|
public function registerInlineMarkerHandler($marker, $callback) |
|
{ |
|
$this->getParseDown()->add_span_marker($marker, $callback); |
|
} |
|
|
|
public function unregisterInlineMarkerHandler($marker) |
|
{ |
|
$this->getParseDown()->remove_span_marker($marker); |
|
} |
|
}
|
|
|