MediaWiki master
MediaWiki\OutputTransform\ContentDOMTransformStage Class Reference

OutputTransformStages that modify the content as a HTML DOM tree. More...

Inherits MediaWiki\OutputTransform\OutputTransformStage.

Inherited by MediaWiki\OutputTransform\Stages\DeduplicateStylesDOM, MediaWiki\OutputTransform\Stages\ExpandRelativeAttrs, MediaWiki\OutputTransform\Stages\ExpandToAbsoluteUrlsDOM, MediaWiki\OutputTransform\Stages\HandleParsoidSectionLinks, MediaWiki\OutputTransform\Stages\HandleTOCMarkersDOM, MediaWiki\OutputTransform\Stages\ParsoidLanguageConverter, and MediaWiki\OutputTransform\Stages\ParsoidLocalization.

Collaboration diagram for MediaWiki\OutputTransform\ContentDOMTransformStage:

Public Member Functions

 __construct (ServiceOptions $options, LoggerInterface $logger, private readonly bool $transformBodyOnly,)
 
 createElement (Document $doc, string $name, array $attribs=[], Node|string ... $children)
 Helper method for DOM transforms to easily create DOM Elements with the given attributes and children.
 
 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

 
 transformDOM (DocumentFragment $df, ParserOutput $po, ParserOptions $popts, array &$options)
 Applies the transformation to a DOM document.
 
- Public Member Functions inherited from MediaWiki\OutputTransform\OutputTransformStage
 __construct (ServiceOptions $options, LoggerInterface $logger,)
 
 shouldRun (ParserOutput $po, ParserOptions $popts, array $options=[])
 Decides whether or not the stage should be run.
 

Protected Member Functions

 getFragmentsToTransform (ParserOutput $po, ParserOptions $popts)
 Override this method if you need more control over which fragments should be transformed.
 

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

OutputTransformStages that modify the content as a HTML DOM tree.

Subclasses are expected to implement ::transformDOM() to mutate the DOM-structured content as a Document in-place.

Access: internal

Definition at line 25 of file ContentDOMTransformStage.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\OutputTransform\ContentDOMTransformStage::__construct ( ServiceOptions $options,
LoggerInterface $logger,
private readonly bool $transformBodyOnly )

Member Function Documentation

◆ createElement()

MediaWiki\OutputTransform\ContentDOMTransformStage::createElement ( Document $doc,
string $name,
array $attribs = [],
Node|string ... $children )

Helper method for DOM transforms to easily create DOM Elements with the given attributes and children.

Parameters
Document$docDocument holding the new element
string$nameLowercase tag name of the new element
array<string,string>$attribs Associative array between the name and (unescaped) value of the attributes of the new element
Node|string...$children List of child nodes for the new element. Unescaped strings are converted to new Text Nodes before their insertion in the tree.
Returns
Element
Exceptions

\DOMException

Definition at line 80 of file ContentDOMTransformStage.php.

◆ getFragmentsToTransform()

MediaWiki\OutputTransform\ContentDOMTransformStage::getFragmentsToTransform ( ParserOutput $po,
ParserOptions $popts )
protected

Override this method if you need more control over which fragments should be transformed.

Definition at line 39 of file ContentDOMTransformStage.php.

◆ transform()

MediaWiki\OutputTransform\ContentDOMTransformStage::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 48 of file ContentDOMTransformStage.php.

References MediaWiki\Parser\ParserOutput\getContentHolder().

◆ transformDOM()


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