mediaRepository = $mediaRepository; if (! $this->confirmToProceed()) { return; } $mediaItems = $this->getMediaItems(); $progressBar = $this->output->createProgressBar($mediaItems->count()); $mediaItems->each(function (Media $media) use ($progressBar) { $media->delete(); $progressBar->advance(); }); $progressBar->finish(); $this->info('All done!'); } /** @return LazyCollection */ public function getMediaItems(): LazyCollection { $modelType = $this->argument('modelType'); $collectionName = $this->argument('collectionName'); if (is_string($modelType) && is_string($collectionName)) { return $this->mediaRepository->getByModelTypeAndCollectionName( $modelType, $collectionName ); } if (is_string($modelType)) { return $this->mediaRepository->getByModelType($modelType); } if (is_string($collectionName)) { return $this->mediaRepository->getByCollectionName($collectionName); } return $this->mediaRepository->all(); } }