SkinrContextualLinks.php in Skinr 8.2
File
skinr_ui/src/Plugin/Derivative/SkinrContextualLinks.php
View source
<?php
namespace Drupal\skinr_ui\Plugin\Derivative;
use Drupal\Component\Plugin\Derivative\DeriverBase;
use Drupal\Core\Plugin\Discovery\ContainerDeriverInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
class SkinrContextualLinks extends DeriverBase implements ContainerDeriverInterface {
public static function create(ContainerInterface $container, $base_plugin_id) {
return new static($container
->get('plugin.manager.skinr_ui.mapper'));
}
public function getDerivativeDefinitions($base_plugin_definition) {
foreach (array(
'block',
'node',
'view',
) as $entity_type_id) {
$route_name = 'skinr_ui.edit.' . $entity_type_id;
$this->derivatives[$route_name] = $base_plugin_definition;
$this->derivatives[$route_name]['route_name'] = 'entity.skin.edit.' . $entity_type_id;
$this->derivatives[$route_name]['route_parameters'] = array(
'element_type' => $entity_type_id,
'element' => 'placeholder',
);
$this->derivatives[$route_name]['group'] = $entity_type_id;
}
return parent::getDerivativeDefinitions($base_plugin_definition);
}
}