Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
0.00% |
0 / 6 |
|
0.00% |
0 / 1 |
CRAP | |
0.00% |
0 / 1 |
OptionalLoader | |
0.00% |
0 / 6 |
|
0.00% |
0 / 1 |
12 | |
0.00% |
0 / 1 |
addOptionalDependencies | |
0.00% |
0 / 6 |
|
0.00% |
0 / 1 |
12 |
1 | <?php |
2 | |
3 | namespace Cite\ResourceLoader; |
4 | |
5 | use ExtensionRegistry; |
6 | use MediaWiki\ResourceLoader\FileModule; |
7 | use MediaWiki\ResourceLoader\Module; |
8 | |
9 | /** |
10 | * @license MIT |
11 | */ |
12 | class OptionalLoader { |
13 | public static function addOptionalDependencies( array $info ): Module { |
14 | // Copied from DiscussionTools |
15 | $extensionRegistry = ExtensionRegistry::getInstance(); |
16 | foreach ( $info['optionalDependencies'] as $ext => $deps ) { |
17 | if ( $extensionRegistry->isLoaded( $ext ) ) { |
18 | $info['dependencies'] = array_merge( $info['dependencies'], (array)$deps ); |
19 | } |
20 | } |
21 | $class = $info['class'] ?? FileModule::class; |
22 | return new $class( $info ); |
23 | } |
24 | } |