X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=vendor%2Fdrupal%2Fconsole%2Fsrc%2FCommand%2FGenerate%2FPluginCKEditorButtonCommand.php;fp=vendor%2Fdrupal%2Fconsole%2Fsrc%2FCommand%2FGenerate%2FPluginCKEditorButtonCommand.php;h=347b76671c3013c9ad5feb37079a7fb1bb4e11a4;hp=2152dbeaca11acd367445445ab59017606b4bc53;hb=9917807b03b64faf00f6a1f29dcb6eafc454efa5;hpb=aea91e65e895364e460983b890e295aa5d5540a5 diff --git a/vendor/drupal/console/src/Command/Generate/PluginCKEditorButtonCommand.php b/vendor/drupal/console/src/Command/Generate/PluginCKEditorButtonCommand.php index 2152dbeac..347b76671 100644 --- a/vendor/drupal/console/src/Command/Generate/PluginCKEditorButtonCommand.php +++ b/vendor/drupal/console/src/Command/Generate/PluginCKEditorButtonCommand.php @@ -7,26 +7,23 @@ namespace Drupal\Console\Command\Generate; +use Drupal\Console\Utils\Validator; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; -use Symfony\Component\Console\Command\Command; +use Drupal\Console\Core\Command\Command; use Drupal\Console\Generator\PluginCKEditorButtonGenerator; use Drupal\Console\Command\Shared\ModuleTrait; use Drupal\Console\Command\Shared\ConfirmationTrait; -use Drupal\Console\Core\Command\Shared\CommandTrait; -use Drupal\Console\Core\Style\DrupalStyle; use Drupal\Console\Core\Utils\ChainQueue; use Drupal\Console\Extension\Manager; use Drupal\Console\Core\Utils\StringConverter; class PluginCKEditorButtonCommand extends Command { - use CommandTrait; use ModuleTrait; use ConfirmationTrait; - /** * @var ChainQueue */ @@ -48,6 +45,11 @@ class PluginCKEditorButtonCommand extends Command */ protected $stringConverter; + /** + * @var Validator + */ + protected $validator; + /** * PluginCKEditorButtonCommand constructor. @@ -56,17 +58,20 @@ class PluginCKEditorButtonCommand extends Command * @param PluginCKEditorButtonGenerator $generator * @param Manager $extensionManager * @param StringConverter $stringConverter + * @param Validator $validator */ public function __construct( ChainQueue $chainQueue, PluginCKEditorButtonGenerator $generator, Manager $extensionManager, - StringConverter $stringConverter + StringConverter $stringConverter, + Validator $validator ) { $this->chainQueue = $chainQueue; $this->generator = $generator; $this->extensionManager = $extensionManager; $this->stringConverter = $stringConverter; + $this->validator = $validator; parent::__construct(); } @@ -111,7 +116,7 @@ class PluginCKEditorButtonCommand extends Command null, InputOption::VALUE_REQUIRED, $this->trans('commands.generate.plugin.ckeditorbutton.options.button-icon-path') - ); + )->setAliases(['gpc']); } /** @@ -119,23 +124,26 @@ class PluginCKEditorButtonCommand extends Command */ protected function execute(InputInterface $input, OutputInterface $output) { - $io = new DrupalStyle($input, $output); - - // @see use Drupal\Console\Command\Shared\ConfirmationTrait::confirmGeneration - if (!$this->confirmGeneration($io)) { + // @see use Drupal\Console\Command\Shared\ConfirmationTrait::confirmOperation + if (!$this->confirmOperation()) { return 1; } $module = $input->getOption('module'); - $class_name = $input->getOption('class'); + $class_name = $this->validator->validateClassName($input->getOption('class')); $label = $input->getOption('label'); $plugin_id = $input->getOption('plugin-id'); $button_name = $input->getOption('button-name'); $button_icon_path = $input->getOption('button-icon-path'); - $this - ->generator - ->generate($module, $class_name, $label, $plugin_id, $button_name, $button_icon_path); + $this->generator->generate([ + 'module' => $module, + 'class_name' => $class_name, + 'label' => $label, + 'plugin_id' => $plugin_id, + 'button_name' => $button_name, + 'button_icon_path' => $button_icon_path, + ]); $this->chainQueue->addCommand('cache:rebuild', ['cache' => 'discovery'], false); @@ -144,22 +152,18 @@ class PluginCKEditorButtonCommand extends Command protected function interact(InputInterface $input, OutputInterface $output) { - $io = new DrupalStyle($input, $output); - // --module option - $module = $input->getOption('module'); - if (!$module) { - // @see Drupal\Console\Command\Shared\ModuleTrait::moduleQuestion - $module = $this->moduleQuestion($io); - $input->setOption('module', $module); - } + $module = $this->getModuleOption(); // --class option $class_name = $input->getOption('class'); if (!$class_name) { - $class_name = $io->ask( + $class_name = $this->getIo()->ask( $this->trans('commands.generate.plugin.ckeditorbutton.questions.class'), - 'DefaultCKEditorButton' + 'DefaultCKEditorButton', + function ($class_name) { + return $this->validator->validateClassName($class_name); + } ); $input->setOption('class', $class_name); } @@ -167,7 +171,7 @@ class PluginCKEditorButtonCommand extends Command // --label option $label = $input->getOption('label'); if (!$label) { - $label = $io->ask( + $label = $this->getIo()->ask( $this->trans('commands.generate.plugin.ckeditorbutton.questions.label'), $this->stringConverter->camelCaseToHuman($class_name) ); @@ -177,7 +181,7 @@ class PluginCKEditorButtonCommand extends Command // --plugin-id option $plugin_id = $input->getOption('plugin-id'); if (!$plugin_id) { - $plugin_id = $io->ask( + $plugin_id = $this->getIo()->ask( $this->trans('commands.generate.plugin.ckeditorbutton.questions.plugin-id'), $this->stringConverter->camelCaseToLowerCase($label) ); @@ -187,7 +191,7 @@ class PluginCKEditorButtonCommand extends Command // --button-name option $button_name = $input->getOption('button-name'); if (!$button_name) { - $button_name = $io->ask( + $button_name = $this->getIo()->ask( $this->trans('commands.generate.plugin.ckeditorbutton.questions.button-name'), $this->stringConverter->anyCaseToUcFirst($plugin_id) ); @@ -197,7 +201,7 @@ class PluginCKEditorButtonCommand extends Command // --button-icon-path option $button_icon_path = $input->getOption('button-icon-path'); if (!$button_icon_path) { - $button_icon_path = $io->ask( + $button_icon_path = $this->getIo()->ask( $this->trans('commands.generate.plugin.ckeditorbutton.questions.button-icon-path'), drupal_get_path('module', $module) . '/js/plugins/' . $plugin_id . '/images/icon.png' );