3 namespace DrupalCodeGenerator\Command\Drupal_8\Yml;
5 use DrupalCodeGenerator\Command\BaseGenerator;
6 use DrupalCodeGenerator\Utils;
7 use Symfony\Component\Console\Input\InputInterface;
8 use Symfony\Component\Console\Output\OutputInterface;
9 use Symfony\Component\Console\Question\Question;
12 * Implements d8:yml:module-info command.
14 class ModuleInfo extends BaseGenerator {
16 protected $name = 'd8:yml:module-info';
17 protected $description = 'Generates a module info yml file';
18 protected $alias = 'module-info';
23 protected function interact(InputInterface $input, OutputInterface $output) {
24 $questions = Utils::defaultQuestions();
25 $questions['description'] = new Question('Description', 'Module description.');
26 $questions['package'] = new Question('Package', 'Custom');
27 $questions['configure'] = new Question('Configuration page (route name)');
28 $questions['dependencies'] = new Question('Dependencies (comma separated)');
30 $vars = &$this->collectVars($input, $output, $questions);
31 if ($vars['dependencies']) {
32 $vars['dependencies'] = array_map('trim', explode(',', strtolower($vars['dependencies'])));
36 ->path('{machine_name}.info.yml')
37 ->template('d8/yml/module-info.twig');