3 namespace Drupal\serialization\Normalizer;
5 use Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem;
8 * Converts empty reference values for entity reference items.
10 trait EntityReferenceFieldItemNormalizerTrait {
12 protected function normalizeRootReferenceValue(&$values, EntityReferenceItem $field_item) {
13 // @todo Generalize for all tree-structured entity types.
14 if ($this->fieldItemReferencesTaxonomyTerm($field_item) && empty($values['target_id'])) {
15 $values['target_id'] = NULL;
20 * Determines if a field item references a taxonomy term.
22 * @param \Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem $field_item
26 protected function fieldItemReferencesTaxonomyTerm(EntityReferenceItem $field_item) {
27 return $field_item->getFieldDefinition()->getSetting('target_type') === 'taxonomy_term';