5 * Contains Drupal\Console\Command\Shared\MenuTrait.
8 namespace Drupal\Console\Command\Shared;
10 use Drupal\Console\Core\Style\DrupalStyle;
11 use Symfony\Component\Yaml\Parser;
16 * @package Drupal\Console\Command
21 * @param \Drupal\Console\Core\Style\DrupalStyle $io
22 * @param string $className The form class name
26 public function menuQuestion(DrupalStyle $io, $className)
29 $this->trans('commands.generate.form.questions.menu_link_gen'),
33 // now we need to ask them where to gen the form
36 'menu_link_gen' => true,
38 $menu_link_title = $io->ask(
39 $menu_link_title = $this->trans('commands.generate.form.questions.menu_link_title'),
42 $menuLinkFile = sprintf(
43 '%s/core/modules/system/system.links.menu.yml',
47 $parser = new Parser();
48 $menuLinkContent = $parser->parse(file_get_contents($menuLinkFile));
51 $menu_parent = $io->choiceNoList(
52 $menu_parent = $this->trans('commands.generate.form.questions.menu_parent'),
53 array_keys($menuLinkContent),
54 'system.admin_config_system'
57 $menu_link_desc = $io->ask(
58 $menu_link_desc = $this->trans('commands.generate.form.questions.menu_link_desc'),
59 'A description for the menu entry'
61 $menu_options['menu_link_title'] = $menu_link_title;
62 $menu_options['menu_parent'] = $menu_parent;
63 $menu_options['menu_link_desc'] = $menu_link_desc;