$container->
get('entity_type.manager'
)->
getStorage('view'
) );
} /**
* {@inheritdoc}
*/
public function getDerivativeDefinitions($base_plugin_definition) { $this->derivatives =
[];
$view_route_names =
$this->state->
get('views.view_route_names'
);
foreach ($this->
getApplicableMenuViews() as $pair) { /** @var \Drupal\views\ViewExecutable $executable */
[$view_id,
$display_id] =
$pair;
$executable =
$this->viewStorage->
load($view_id)->
getExecutable();
$executable->
setDisplay($display_id);
$menu =
$executable->display_handler->
getOption('menu'
);
if (in_array($menu['type'
],
['tab', 'default tab'
])) { $plugin_id = 'view.' .
$executable->storage->
id() . '.' .
$display_id;
$route_name =
$view_route_names[$executable->storage->
id() . '.' .
$display_id];
// Don't add a local task for views which override existing routes.