/**
  * Gets entity browser IDs that use routes.
  *
  * @return array
  *   Array of browser IDs.
  */
 protected function getBrowserIDsWithRoute()
 {
     // Get all display plugins which provides the type.
     $display_plugins = $this->displayManager->getDefinitions();
     $ids = array();
     foreach ($display_plugins as $id => $definition) {
         if (!empty($definition['uses_route'])) {
             $ids[$id] = $id;
         }
     }
     return $this->browserQuery->condition('status', TRUE)->condition("display", $ids, 'IN')->execute();
 }
 /**
  * {@inheritdoc}
  */
 public function buildForm(array $form, FormStateInterface $form_state)
 {
     $cached_values = $form_state->getTemporaryValue('wizard');
     /** @var \Drupal\entity_browser\EntityBrowserInterface  $entity_browser */
     $entity_browser = $cached_values['entity_browser'];
     $displays = [];
     foreach ($this->displayManager->getDefinitions() as $plugin_id => $plugin_definition) {
         $displays[$plugin_id] = $plugin_definition['label'];
     }
     $form['display'] = ['#type' => 'select', '#title' => $this->t('Display plugin'), '#default_value' => $entity_browser->get('display') ? $entity_browser->getDisplay()->getPluginId() : NULL, '#options' => $displays, '#required' => TRUE];
     $widget_selectors = [];
     foreach ($this->widgetSelectorManager->getDefinitions() as $plugin_id => $plugin_definition) {
         $widget_selectors[$plugin_id] = $plugin_definition['label'];
     }
     $form['widget_selector'] = ['#type' => 'select', '#title' => $this->t('Widget selector plugin'), '#default_value' => $entity_browser->get('widget_selector') ? $entity_browser->getWidgetSelector()->getPluginId() : NULL, '#options' => $widget_selectors, '#required' => TRUE];
     $selection_display = [];
     foreach ($this->selectionDisplayManager->getDefinitions() as $plugin_id => $plugin_definition) {
         $selection_display[$plugin_id] = $plugin_definition['label'];
     }
     $form['selection_display'] = ['#type' => 'select', '#title' => $this->t('Selection display plugin'), '#default_value' => $entity_browser->get('selection_display') ? $entity_browser->getSelectionDisplay()->getPluginId() : NULL, '#options' => $selection_display, '#required' => TRUE];
     return $form;
 }