/**
  * Return an index of entries from related stream.
  *
  * @param LookupTableBuilder $table
  * @param                    $key
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function index(LookupTableBuilder $table, $key)
 {
     /* @var Collection $config */
     $config = $this->dispatch(new GetConfiguration($key));
     $table->setConfig($config)->setModel($config->get('related'));
     $this->dispatch(new HydrateLookupTable($table));
     return $table->render();
 }
 /**
  * Handle the command.
  *
  * @param LookupTableBuilder $builder
  */
 public function handle(LookupTableBuilder $builder)
 {
     $stream = $builder->getTableStream();
     $filter = $stream->getTitleColumn();
     if ($filter == 'id') {
         return;
     }
     $builder->setFilters([$filter]);
 }
 /**
  * Handle the command.
  *
  * @param LookupTableBuilder $builder
  */
 public function handle(LookupTableBuilder $builder)
 {
     $stream = $builder->getTableStream();
     $column = $stream->getTitleColumn();
     if ($column == 'id') {
         return;
     }
     $builder->setColumns([$column]);
 }
 /**
  * Handle the command.
  *
  * @param RelationshipFieldType $fieldType
  * @param AddonCollection       $addons
  * @param Repository            $config
  * @return array
  */
 public function handle(RelationshipFieldType $fieldType, AddonCollection $addons, Repository $config)
 {
     $definition = [];
     /* @var Addon $addon */
     foreach ($addons->withConfig('lookup.' . $this->table->config('related')) as $addon) {
         $definition = $config->get($addon->getNamespace('lookup.' . $this->table->config('related')));
     }
     $definition = $config->get($fieldType->getNamespace('lookup.' . $this->table->config('related')), $definition);
     return $definition;
 }
 /**
  * Handle the command.
  *
  * @param LookupTableBuilder $builder
  */
 public function handle(LookupTableBuilder $builder)
 {
     $builder->setButtons(['select' => ['data-entry' => 'entry.id', 'data-key' => $builder->config('key')]]);
 }