File "ModuleMakeCommand.php"
Full Path: /home/isoftco/public_html/hrm/vendor/nwidart/laravel-modules/src/Commands/ModuleMakeCommand.php
File size: 1.86 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace Nwidart\Modules\Commands;
use Illuminate\Console\Command;
use Nwidart\Modules\Contracts\ActivatorInterface;
use Nwidart\Modules\Generators\ModuleGenerator;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
class ModuleMakeCommand extends Command
{
/**
* The console command name.
*
* @var string
*/
protected $name = 'module:make';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Create a new module.';
/**
* Execute the console command.
*/
public function handle()
{
$names = $this->argument('name');
foreach ($names as $name) {
with(new ModuleGenerator($name))
->setFilesystem($this->laravel['files'])
->setModule($this->laravel['modules'])
->setConfig($this->laravel['config'])
->setActivator($this->laravel[ActivatorInterface::class])
->setConsole($this)
->setForce($this->option('force'))
->setPlain($this->option('plain'))
->setActive(!$this->option('disabled'))
->generate();
}
}
/**
* Get the console command arguments.
*
* @return array
*/
protected function getArguments()
{
return [
['name', InputArgument::IS_ARRAY, 'The names of modules will be created.'],
];
}
protected function getOptions()
{
return [
['plain', 'p', InputOption::VALUE_NONE, 'Generate a plain module (without some resources).'],
['disabled', 'd', InputOption::VALUE_NONE, 'Do not enable the module at creation.'],
['force', null, InputOption::VALUE_NONE, 'Force the operation to run when the module already exists.'],
];
}
}