/**
  * Handle the command.
  *
  * @param Container $container
  */
 public function handle(Container $container)
 {
     $handler = array_get($this->fieldType->getConfig(), 'handler');
     if (!class_exists($handler) && !str_contains($handler, '@')) {
         $handler = array_get($this->fieldType->getHandlers(), $handler);
     }
     if (is_string($handler) && !str_contains($handler, '@')) {
         $handler .= '@handle';
     }
     $container->call($handler, ['fieldType' => $this->fieldType]);
 }
 /**
  * Handle the select options.
  *
  * @param SelectFieldType $fieldType
  * @return array
  */
 public function handle(SelectFieldType $fieldType)
 {
     $options = array_get($fieldType->getConfig(), 'options', []);
     if (is_string($options)) {
         $options = $this->dispatch(new ParseOptions($options));
     }
     return array_filter([null => $fieldType->getPlaceholder()] + $options);
 }
 /**
  * Handle the select options.
  *
  * @param SelectFieldType $fieldType
  * @return array
  */
 public function handle(SelectFieldType $fieldType, Container $container)
 {
     $options = array_get($fieldType->getConfig(), 'options', []);
     if (is_string($options)) {
         $options = $this->dispatch(new ParseOptions($options));
     }
     if ($options instanceof \Closure) {
         $options = $container->call($options);
     }
     $fieldType->setOptions($options);
 }