function EntityReferenceUuidItem::propertyDefinitions
Overrides EntityReferenceItem::propertyDefinitions
File
-
core/
modules/ jsonapi/ tests/ modules/ jsonapi_test_field_type/ src/ Plugin/ Field/ FieldType/ EntityReferenceUuidItem.php, line 40
Class
- EntityReferenceUuidItem
- Defines the 'entity_reference_uuid' entity field type.
Namespace
Drupal\jsonapi_test_field_type\Plugin\Field\FieldTypeCode
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$settings = $field_definition->getSettings();
$target_type_info = \Drupal::entityTypeManager()->getDefinition($settings['target_type']);
$properties = parent::propertyDefinitions($field_definition);
$target_uuid_definition = DataReferenceTargetDefinition::create('string')->setLabel(new TranslatableMarkup('@label UUID', [
'@label' => $target_type_info->getLabel(),
]));
$target_uuid_definition->setRequired(TRUE);
$properties['target_uuid'] = $target_uuid_definition;
$properties['entity'] = DataReferenceDefinition::create('entity')->setLabel($target_type_info->getLabel())
->setDescription(new TranslatableMarkup('The referenced entity by UUID'))
->setComputed(TRUE)
->setReadOnly(FALSE)
->setTargetDefinition(EntityDataDefinition::create($settings['target_type']))
->addConstraint('EntityType', $settings['target_type']);
return $properties;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.