%PDF- %PDF-
Direktori : /var/www/html/hr/api/vendor/spatie/laravel-medialibrary/src/MediaCollection/ |
Current File : /var/www/html/hr/api/vendor/spatie/laravel-medialibrary/src/MediaCollection/MediaCollection.php |
<?php namespace Spatie\MediaLibrary\MediaCollection; use Illuminate\Support\Traits\Macroable; use InvalidArgumentException; class MediaCollection { use Macroable; /** @var string */ public $name = ''; /** @var string */ public $diskName = ''; /** @var callable */ public $mediaConversionRegistrations; /** @var bool */ public $generateResponsiveImages = false; /** @var callable */ public $acceptsFile; /** @var array $acceptsMimeTypes */ public $acceptsMimeTypes = []; /** @var int */ public $collectionSizeLimit = false; public $singleFile = false; /** @var string */ public $fallbackUrl = ''; /** @var string */ public $fallbackPath = ''; public function __construct(string $name) { $this->name = $name; $this->mediaConversionRegistrations = function () { }; $this->acceptsFile = function () { return true; }; } public static function create($name) { return new static($name); } public function useDisk(string $diskName): self { $this->diskName = $diskName; return $this; } public function acceptsFile(callable $acceptsFile): self { $this->acceptsFile = $acceptsFile; return $this; } public function acceptsMimeTypes(array $mimeTypes): self { $this->acceptsMimeTypes = $mimeTypes; return $this; } public function singleFile(): self { return $this->onlyKeepLatest(1); } public function onlyKeepLatest(int $maximumNumberOfItemsInCollection): self { if ($maximumNumberOfItemsInCollection < 1) { throw new InvalidArgumentException("You should pass a value higher than 0. `{$maximumNumberOfItemsInCollection}` given."); } $this->singleFile = ($maximumNumberOfItemsInCollection === 1); $this->collectionSizeLimit = $maximumNumberOfItemsInCollection; return $this; } public function registerMediaConversions(callable $mediaConversionRegistrations) { $this->mediaConversionRegistrations = $mediaConversionRegistrations; } public function useFallbackUrl(string $url): self { $this->fallbackUrl = $url; return $this; } public function useFallbackPath(string $path): self { $this->fallbackPath = $path; return $this; } public function withResponsiveImages(): self { $this->generateResponsiveImages = true; return $this; } }