Passed
Push — master ( 33d5ac...775805 )
by Dmitriy
03:03
created

AssetLoaderInterfaceProxy   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 3
eloc 5
dl 0
loc 19
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A loadBundle() 0 6 1
A getAssetUrl() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Yii\Debug\Collector\Web;
6
7
use Yiisoft\Assets\AssetBundle;
8
use Yiisoft\Assets\AssetLoaderInterface;
9
10
final class AssetLoaderInterfaceProxy implements AssetLoaderInterface
11
{
12
    public function __construct(
13
        private AssetLoaderInterface $assetLoader,
14
        private AssetCollector $assetCollector
15
    ) {
16
    }
17
18
    public function getAssetUrl(AssetBundle $bundle, string $assetPath): string
19
    {
20
        return $this->assetLoader->getAssetUrl($bundle, $assetPath);
21
    }
22
23
    public function loadBundle(string $name, array $config = []): AssetBundle
24
    {
25
        $bundle = $this->assetLoader->loadBundle($name, $config);
26
27
        $this->assetCollector->collect($bundle);
28
        return $bundle;
29
    }
30
}
31