style: enhance help and list commands using TableAdapter
This commit is contained in:
parent
3ac2894fd8
commit
77538a7966
|
|
@ -4,10 +4,11 @@ declare(strict_types=1);
|
|||
|
||||
namespace Phred\Tasker\Commands;
|
||||
|
||||
use Phred\Tasker\Runner;
|
||||
use Phred\ConsoleContracts\CommandInterface;
|
||||
use Phred\ConsoleContracts\InputInterface;
|
||||
use Phred\ConsoleContracts\OutputInterface;
|
||||
use Phred\Tasker\Runner;
|
||||
use Phred\TaskerBridges\Phred\TableAdapter;
|
||||
|
||||
class HelpCommand implements CommandInterface
|
||||
{
|
||||
|
|
@ -70,18 +71,22 @@ class HelpCommand implements CommandInterface
|
|||
$arguments = $command->getArguments();
|
||||
if ($arguments) {
|
||||
$output->writeln('<info>Arguments:</info>');
|
||||
$table = new TableAdapter($output);
|
||||
foreach ($arguments as $name => $desc) {
|
||||
$output->writeln(sprintf(' <success>%s</success> %s', str_pad($name, 20), $desc));
|
||||
$table->addRow(["<success>{$name}</success>", $desc]);
|
||||
}
|
||||
$table->render();
|
||||
$output->writeln('');
|
||||
}
|
||||
|
||||
$options = $command->getOptions();
|
||||
if ($options) {
|
||||
$output->writeln('<info>Options:</info>');
|
||||
$table = new TableAdapter($output);
|
||||
foreach ($options as $name => $desc) {
|
||||
$output->writeln(sprintf(' <success>%s</success> %s', str_pad($name, 20), $desc));
|
||||
$table->addRow(["<success>{$name}</success>", $desc]);
|
||||
}
|
||||
$table->render();
|
||||
$output->writeln('');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ use Phred\ConsoleContracts\CommandInterface;
|
|||
use Phred\ConsoleContracts\InputInterface;
|
||||
use Phred\ConsoleContracts\OutputInterface;
|
||||
use Phred\Tasker\Runner;
|
||||
use Phred\TaskerBridges\Phred\TableAdapter;
|
||||
|
||||
class ListCommand implements CommandInterface
|
||||
{
|
||||
|
|
@ -47,10 +48,18 @@ class ListCommand implements CommandInterface
|
|||
$commands = $this->runner->getCommands();
|
||||
ksort($commands);
|
||||
|
||||
$table = new TableAdapter($output);
|
||||
$table->setHeaders(['Command', 'Description']);
|
||||
|
||||
foreach ($commands as $name => $command) {
|
||||
$output->writeln(sprintf(' <success>%s</success> %s', str_pad($name, 20), $command->getDescription()));
|
||||
$table->addRow([
|
||||
"<success>{$name}</success>",
|
||||
$command->getDescription()
|
||||
]);
|
||||
}
|
||||
|
||||
$table->render();
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue