public function EntityBundle::getDerivativeDefinitions in Drupal 10
Same name and namespace in other branches
- 9 core/lib/Drupal/Core/Entity/Plugin/Condition/Deriver/EntityBundle.php \Drupal\Core\Entity\Plugin\Condition\Deriver\EntityBundle::getDerivativeDefinitions()
Gets the definition of all derivatives of a base plugin.
Parameters
array $base_plugin_definition: The definition array of the base plugin.
Return value
array An array of full derivative definitions keyed on derivative id.
Overrides DeriverBase::getDerivativeDefinitions
See also
getDerivativeDefinition()
File
- core/
lib/ Drupal/ Core/ Entity/ Plugin/ Condition/ Deriver/ EntityBundle.php, line 45
Class
- EntityBundle
- Deriver that creates a condition for each entity type with bundles.
Namespace
Drupal\Core\Entity\Plugin\Condition\DeriverCode
public function getDerivativeDefinitions($base_plugin_definition) {
foreach ($this->entityTypeManager
->getDefinitions() as $entity_type_id => $entity_type) {
if ($entity_type
->hasKey('bundle')) {
$this->derivatives[$entity_type_id] = $base_plugin_definition;
$this->derivatives[$entity_type_id]['label'] = $entity_type
->getBundleLabel();
$this->derivatives[$entity_type_id]['provider'] = $entity_type
->getProvider();
$this->derivatives[$entity_type_id]['context_definitions'] = [
$entity_type_id => EntityContextDefinition::fromEntityType($entity_type),
];
}
}
return $this->derivatives;
}