3 namespace Drupal\Core\Field;
6 * A trait used to assist in the normalization of raw input field values.
10 * @see \Drupal\Core\Field\FieldConfigBase
11 * @see \Drupal\Core\Field\BaseFieldDefinition
13 trait FieldInputValueNormalizerTrait {
16 * Ensure a field value is transformed into a format keyed by delta.
19 * The raw field value to normalize.
20 * @param string $main_property_name
21 * The main field property name.
24 * A field value normalized into a format keyed by delta.
26 protected static function normalizeValue(&$value, $main_property_name) {
27 if (!isset($value) || $value === NULL) {
30 if (!is_array($value)) {
31 if ($main_property_name === NULL) {
32 throw new \InvalidArgumentException('A main property is required when normalizing scalar field values.');
34 return [[$main_property_name => $value]];
36 if (!empty($value) && !is_numeric(array_keys($value)[0])) {