OptimizeImages   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 2
dl 0
loc 22
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A handle() 0 19 2
1
<?php
2
3
namespace Spatie\LaravelImageOptimizer\Middlewares;
4
5
use Closure;
6
use Spatie\ImageOptimizer\OptimizerChain;
7
use Symfony\Component\HttpFoundation\File\UploadedFile;
8
9
class OptimizeImages
10
{
11
    public function handle($request, Closure $next)
12
    {
13
        $optimizerChain = app(OptimizerChain::class);
14
15
        collect($request->allFiles())
16
            ->flatten()
17
            ->filter(function (UploadedFile $file) {
18
                if (app()->environment('testing')) {
19
                    return true;
20
                }
21
22
                return $file->isValid();
23
            })
24
            ->each(function (UploadedFile $file) use ($optimizerChain) {
25
                $optimizerChain->optimize($file->getPathname());
26
            });
27
28
        return $next($request);
29
    }
30
}
31