MediaWiki master
MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter Class Reference

Resolves Parsoid language converter markup to the appropriate variant. More...

Inherits MediaWiki\OutputTransform\OutputTransformStage.

Collaboration diagram for MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter:

Public Member Functions

 __construct (ServiceOptions $options, LoggerInterface $logger, private SiteConfig $siteConfig, private LanguageFactory $languageFactory, private LanguageConverterFactory $languageConverterFactory, private TitleFactory $titleFactory, private UrlUtils $urlUtils, private LinkBatchFactory $linkBatchFactory,)
 
 shouldRun (ParserOutput $po, ParserOptions $popts, array $options=[])
 Decides whether or not the stage should be run.
 
 transform (ParserOutput $po, ParserOptions $popts, array &$options)
 Transforms the input ParserOutput into the returned ParserOutput.
 
- Public Member Functions inherited from MediaWiki\OutputTransform\OutputTransformStage
 __construct (ServiceOptions $options, LoggerInterface $logger,)
 

Protected Member Functions

 convertNode (Node $node, ILanguageConverter $converter, string $toVariant, bool $isRaw, array &$redLinks)
 Process text and link nodes and Parsoid LanguageConverter markup.
 

Additional Inherited Members

- Public Attributes inherited from MediaWiki\OutputTransform\OutputTransformStage
const CONSTRUCTOR_OPTIONS = []
 
- Protected Attributes inherited from MediaWiki\OutputTransform\OutputTransformStage
LoggerInterface $logger
 
ServiceOptions $options
 

Detailed Description

Resolves Parsoid language converter markup to the appropriate variant.

This is an OutputTransformStage, not a ContentDOMTransformStage, because we want to control which order we do conversion on the content holder fragments – in particular, we want to do the body fragment first, so that any rules defined in the body fragment are applied to all of the other fragments (and the TOC).

Access: internal

Definition at line 46 of file ParsoidLanguageConverter.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter::__construct ( ServiceOptions $options,
LoggerInterface $logger,
private SiteConfig $siteConfig,
private LanguageFactory $languageFactory,
private LanguageConverterFactory $languageConverterFactory,
private TitleFactory $titleFactory,
private UrlUtils $urlUtils,
private LinkBatchFactory $linkBatchFactory )

Member Function Documentation

◆ convertNode()

MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter::convertNode ( Node $node,
ILanguageConverter $converter,
string $toVariant,
bool $isRaw,
array & $redLinks )
protected

Process text and link nodes and Parsoid LanguageConverter markup.

Returns
null|Node|true

Definition at line 234 of file ParsoidLanguageConverter.php.

References MediaWiki\Language\ILanguageConverter\convertTo(), MediaWiki\Language\ILanguageConverter\guessVariant(), and MediaWiki\Language\ILanguageConverter\translate().

◆ shouldRun()

MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter::shouldRun ( ParserOutput $po,
ParserOptions $popts,
array $options = [] )

Decides whether or not the stage should be run.

Parameters
ParserOutput$po
Stability: unstable
Parameters
ParserOptions$popts
array$options
Returns
bool

Reimplemented from MediaWiki\OutputTransform\OutputTransformStage.

Definition at line 73 of file ParsoidLanguageConverter.php.

◆ transform()

MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter::transform ( ParserOutput $po,
ParserOptions $popts,
array & $options )

Transforms the input ParserOutput into the returned ParserOutput.

The returned ParserOutput can explicitly be a modified version of the input ParserOutput; if modifications to that object are unexpected, a copy should be made before passing it to this method. TODO Some transformations require the possibility of modifying options (this is the case of ExecutePostCacheTransformHooks in particular). We do NOT want to keep this mechanism for later versions of this interface - the currently foreseen goal is to not pass $options at all. Modifying $options during this pass is considered deprecated.

Stability: unstable

Reimplemented from MediaWiki\OutputTransform\OutputTransformStage.

Definition at line 77 of file ParsoidLanguageConverter.php.


The documentation for this class was generated from the following file: