X-Git-Url: https://git.rapsys.eu/packbundle/blobdiff_plain/e228b33bad82184f989a081b162e127c1a949f10..068e3ad94a51810a9d5ebdff3b2a60a746663d45:/Package/PathPackage.php diff --git a/Package/PathPackage.php b/Package/PathPackage.php index 8b53136..c53b10f 100644 --- a/Package/PathPackage.php +++ b/Package/PathPackage.php @@ -11,31 +11,30 @@ namespace Rapsys\PackBundle\Package; +use Rapsys\PackBundle\Context\NullContext; + use Symfony\Component\Asset\Context\ContextInterface; use Symfony\Component\Asset\Package; use Symfony\Component\Asset\VersionStrategy\VersionStrategyInterface; -use Rapsys\PackBundle\Context\NullContext; - /** * {@inheritdoc} */ class PathPackage extends Package { - //The base path - protected $basePath; - - //The base url - protected $baseUrl; + /** + * The base url + */ + protected string $baseUrl; /** * {@inheritdoc} */ - public function __construct(string $basePath, VersionStrategyInterface $versionStrategy, ContextInterface $context = null) { + public function __construct(protected string $basePath, protected VersionStrategyInterface $versionStrategy, protected ?ContextInterface $context = null) { //Without context use a null context - $context = $context ?? new NullContext(); + $this->context = $this->context ?? new NullContext(); //Call parent constructor - parent::__construct($versionStrategy, $context); + parent::__construct($this->versionStrategy, $this->context); //Without base path if (empty($basePath)) { @@ -54,10 +53,12 @@ class PathPackage extends Package { } //Set base url - $this->baseUrl = $context->getBaseUrl(); + $this->baseUrl = $this->context->getBaseUrl(); } /** + * {@inheritdoc} + * * Returns an absolute or root-relative public path * * Transform @BundleBundle to bundle and remove /Resources/public fragment from path @@ -66,10 +67,8 @@ class PathPackage extends Package { * @link https://symfony.com/doc/current/bundles.html#overridding-the-bundle-directory-structure * @see vendor/symfony/framework-bundle/Command/AssetsInstallCommand.php +113 * @see vendor/symfony/framework-bundle/Command/AssetsInstallCommand.php +141 - * - * {@inheritdoc} */ - public function getUrl($path): string { + public function getUrl(string $path): string { //Match url starting with a bundle name if (preg_match('%^@([A-Z][a-zA-Z]*?)(?:Bundle/Resources/public)?/(.*)$%', $path, $matches)) { //Handle empty or without replacement pattern basePath