Skip to content

Commit b2b0075

Browse files
committed
Add stubs for datetime field type
1 parent 9f92965 commit b2b0075

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
namespace Drupal\datetime\Plugin\Field\FieldType;
4+
5+
use Drupal\Core\Field\FieldItemBase;
6+
7+
/**
8+
* @property ?string $value
9+
* @property-read ?\Drupal\Core\Datetime\DrupalDateTime $date
10+
*/
11+
class DateTimeItem extends FieldItemBase implements DateTimeItemInterface {
12+
13+
}

tests/src/Type/data/field-types.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
use Drupal\Core\Field\Plugin\Field\FieldType\TimestampItem;
1919
use Drupal\Core\Field\Plugin\Field\FieldType\UriItem;
2020
use Drupal\Core\Field\Plugin\Field\FieldType\UuidItem;
21+
use Drupal\datetime\Plugin\Field\FieldType\DateTimeItem;
2122
use Drupal\file\Plugin\Field\FieldType\FileItem;
2223
use Drupal\file\Plugin\Field\FieldType\FileUriItem;
2324
use Drupal\link\Plugin\Field\FieldType\LinkItem;
@@ -137,6 +138,13 @@
137138
assertType(UuidItem::class, $uuid_field);
138139
assertType('string', $uuid_field->value);
139140

141+
// DateTimeItem.
142+
$datetime_field = $node->get('field_datetime')->first();
143+
assert($datetime_field instanceof DateTimeItem);
144+
assertType(DateTimeItem::class, $datetime_field);
145+
assertType('string|null', $datetime_field->value);
146+
assertType('Drupal\Core\Datetime\DrupalDateTime|null', $datetime_field->date);
147+
140148
// FileItem.
141149
$file_field = $node->get('field_file')->first();
142150
assert($file_field instanceof FileItem);

0 commit comments

Comments
 (0)