Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
8 / 8 |
|
100.00% |
2 / 2 |
CRAP | |
100.00% |
1 / 1 |
DiffRenderer | |
100.00% |
8 / 8 |
|
100.00% |
2 / 2 |
2 | |
100.00% |
1 / 1 |
__construct | |
100.00% |
2 / 2 |
|
100.00% |
1 / 1 |
1 | |||
renderSchemaDiffTable | |
100.00% |
6 / 6 |
|
100.00% |
1 / 1 |
1 |
1 | <?php |
2 | |
3 | declare( strict_types = 1 ); |
4 | |
5 | namespace EntitySchema\Presentation; |
6 | |
7 | use DifferenceEngine; |
8 | use EntitySchema\MediaWiki\Content\EntitySchemaSlotDiffRenderer; |
9 | use Message; |
10 | use MessageLocalizer; |
11 | |
12 | /** |
13 | * @license GPL-2.0-or-later |
14 | */ |
15 | class DiffRenderer { |
16 | |
17 | private MessageLocalizer $msgLocalizer; |
18 | private EntitySchemaSlotDiffRenderer $slotDiffRenderer; |
19 | |
20 | public function __construct( |
21 | MessageLocalizer $msgLocalizer, |
22 | EntitySchemaSlotDiffRenderer $slotDiffRenderer |
23 | ) { |
24 | $this->msgLocalizer = $msgLocalizer; |
25 | $this->slotDiffRenderer = $slotDiffRenderer; |
26 | } |
27 | |
28 | public function renderSchemaDiffTable( string $diffRowsHTML, Message $leftSideHeading ): string { |
29 | $diffEngine = new DifferenceEngine(); |
30 | return $diffEngine->addHeader( |
31 | $this->slotDiffRenderer->localizeDiff( $diffRowsHTML ), |
32 | $leftSideHeading->parse(), |
33 | $this->msgLocalizer->msg( 'yourtext' )->parse() |
34 | ); |
35 | } |
36 | |
37 | } |