You are here

public static function TimeRangeType::propertyDefinitions in Time Field For Drupal 8.x / 9.x 8

Same name and namespace in other branches
  1. 2.x src/Plugin/Field/FieldType/TimeRangeType.php \Drupal\time_field\Plugin\Field\FieldType\TimeRangeType::propertyDefinitions()

Defines field item properties.

Properties that are required to constitute a valid, non-empty item should be denoted with \Drupal\Core\TypedData\DataDefinition::setRequired().

Return value

\Drupal\Core\TypedData\DataDefinitionInterface[] An array of property definitions of contained properties, keyed by property name.

Overrides FieldItemInterface::propertyDefinitions

See also

\Drupal\Core\Field\BaseFieldDefinition

File

src/Plugin/Field/FieldType/TimeRangeType.php, line 27

Class

TimeRangeType
Plugin implementation of the 'time' field type.

Namespace

Drupal\time_field\Plugin\Field\FieldType

Code

public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {

  // Prevent early t() calls by using the TranslatableMarkup.
  $properties['from'] = DataDefinition::create('integer')
    ->setLabel(new TranslatableMarkup('Seconds passed through midnight'))
    ->setSetting('unsigned', TRUE)
    ->setSetting('size', 'small')
    ->setRequired(TRUE);
  $properties['to'] = DataDefinition::create('integer')
    ->setLabel(new TranslatableMarkup('Seconds passed through midnight'))
    ->setSetting('unsigned', TRUE)
    ->setSetting('size', 'small')
    ->setRequired(TRUE);
  return $properties;
}