Файл: vendor/laravel/ui/src/UiCommand.php
Строк: 102
<?php
namespace LaravelUi;
use IlluminateConsoleCommand;
use InvalidArgumentException;
class UiCommand extends Command
{
/**
* The console command signature.
*
* @var string
*/
protected $signature = 'ui
{ type : The preset type (bootstrap, vue, react) }
{ --auth : Install authentication UI scaffolding }
{ --option=* : Pass an option to the preset command }';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Swap the front-end scaffolding for the application';
/**
* Execute the console command.
*
* @return void
*
* @throws InvalidArgumentException
*/
public function handle()
{
if (static::hasMacro($this->argument('type'))) {
return call_user_func(static::$macros[$this->argument('type')], $this);
}
if (! in_array($this->argument('type'), ['bootstrap', 'vue', 'react'])) {
throw new InvalidArgumentException('Invalid preset.');
}
$this->{$this->argument('type')}();
if ($this->option('auth')) {
$this->call('ui:auth');
}
}
/**
* Install the "bootstrap" preset.
*
* @return void
*/
protected function bootstrap()
{
PresetsBootstrap::install();
$this->info('Bootstrap scaffolding installed successfully.');
$this->comment('Please run "npm install && npm run dev" to compile your fresh scaffolding.');
}
/**
* Install the "vue" preset.
*
* @return void
*/
protected function vue()
{
PresetsBootstrap::install();
PresetsVue::install();
$this->info('Vue scaffolding installed successfully.');
$this->comment('Please run "npm install && npm run dev" to compile your fresh scaffolding.');
}
/**
* Install the "react" preset.
*
* @return void
*/
protected function react()
{
PresetsBootstrap::install();
PresetsReact::install();
$this->info('React scaffolding installed successfully.');
$this->comment('Please run "npm install && npm run dev" to compile your fresh scaffolding.');
}
}