CreateMixFile::getStub()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 13

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 13
ccs 0
cts 13
cp 0
rs 9.8333
c 0
b 0
f 0
cc 1
nc 1
nop 1
crap 2
1
<?php namespace Arcanedev\Assets\Pipes\Init;
2
3
use Arcanedev\Assets\Helpers\Stub;
4
use Closure;
5
6
/**
7
 * Class     CreateMixFile
8
 *
9
 * @package  Arcanedev\Assets\Pipes\Init
10
 * @author   ARCANEDEV <[email protected]>
11
 */
12
class CreateMixFile extends AbstractPipe
13
{
14
    /* -----------------------------------------------------------------
15
     |  Main Method
16
     | -----------------------------------------------------------------
17
     */
18
19
    /**
20
     * @param  array    $passable
21
     * @param  Closure  $next
22
     *
23
     * @return mixed
24
     */
25
    public function handle(array $passable, Closure $next)
26
    {
27
        $this->getStub($passable)
28
             ->save($passable['path'].'/webpack.mix.js');
29
30
        return $next($passable);
31
    }
32
33
    /* -----------------------------------------------------------------
34
     |  Other Methods
35
     | -----------------------------------------------------------------
36
     */
37
38
    /**
39
     * Get the stub file.
40
     *
41
     * @param  array  $passable
42
     *
43
     * @return \Arcanedev\Assets\Helpers\Stub
44
     */
45
    protected function getStub(array $passable)
46
    {
47
        return Stub::make('module/webpack.mix.stub')
48
            ->replace([
49
                '{{asset_directory}}',
50
                '{{public_directory}}',
51
                '{{name}}',
52
            ],[
53
                $passable['path'],
54
                $passable['public-directory'],
55
                'app',
56
            ]);
57
    }
58
}
59