PublishCommand::handle()   A
last analyzed

Complexity

Conditions 4
Paths 4

Size

Total Lines 23

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 23
rs 9.552
c 0
b 0
f 0
cc 4
nc 4
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Cortex\Contacts\Console\Commands;
6
7
use Rinvex\Contacts\Console\Commands\PublishCommand as BasePublishCommand;
8
9
class PublishCommand extends BasePublishCommand
10
{
11
    /**
12
     * The name and signature of the console command.
13
     *
14
     * @var string
15
     */
16
    protected $signature = 'cortex:publish:contacts {--force : Overwrite any existing files.} {--R|resource=all}';
17
18
    /**
19
     * The console command description.
20
     *
21
     * @var string
22
     */
23
    protected $description = 'Publish Cortex Contacts Resources.';
24
25
    /**
26
     * Execute the console command.
27
     *
28
     * @return void
29
     */
30
    public function handle(): void
31
    {
32
        parent::handle();
33
34
        switch ($this->option('resource')) {
35
            case 'lang':
36
                $this->call('vendor:publish', ['--tag' => 'cortex-contacts-lang', '--force' => $this->option('force')]);
37
                break;
38
            case 'views':
39
                $this->call('vendor:publish', ['--tag' => 'cortex-contacts-views', '--force' => $this->option('force')]);
40
                break;
41
            case 'migrations':
42
                $this->call('vendor:publish', ['--tag' => 'cortex-contacts-migrations', '--force' => $this->option('force')]);
43
                break;
44
            default:
45
                $this->call('vendor:publish', ['--tag' => 'cortex-contacts-lang', '--force' => $this->option('force')]);
46
                $this->call('vendor:publish', ['--tag' => 'cortex-contacts-views', '--force' => $this->option('force')]);
47
                $this->call('vendor:publish', ['--tag' => 'cortex-contacts-migrations', '--force' => $this->option('force')]);
48
                break;
49
        }
50
51
        $this->line('');
52
    }
53
}
54