Skip to content

Commit 0cff2b6

Browse files
committed
Add stubs for core field types
1 parent dfdefd9 commit 0cff2b6

34 files changed

+460
-0
lines changed

extension.neon

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,37 @@ parameters:
1313
- engine
1414
scanFiles:
1515
- stubs/Twig/functions.stub
16+
stubFiles:
17+
- stubs/Drupal/Component/Plugin/PluginInspectionInterface.stub
18+
- stubs/Drupal/Core/Field/Plugin/Field/FieldItemBase.stub
19+
- stubs/Drupal/Core/Field/Plugin/Field/FieldItemInterface.stub
20+
- stubs/Drupal/Core/Field/Plugin/Field/PreconfiguredFieldUiOptionsInterface.stub
21+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/BooleanItem.stub
22+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/ChangedItem.stub
23+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/CreatedItem.stub
24+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/DecimalItem.stub
25+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/EmailItem.stub
26+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/EntityReferenceItem.stub
27+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/FloatItem.stub
28+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/IntegerItem.stub
29+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/LanguageItem.stub
30+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/MapItem.stub
31+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/NumericItemBase.stub
32+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/PasswordItem.stub
33+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/StringItem.stub
34+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/StringItemBase.stub
35+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/StringLongItem.stub
36+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/TimestampItem.stub
37+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/UriItem.stub
38+
- stubs/Drupal/Core/Field/Plugin/Field/FieldType/UuidItem.stub
39+
- stubs/Drupal/Core/TypedData/ComplexDataInterface.stub
40+
- stubs/Drupal/Core/TypedData/OptionsProviderInterface.stub
41+
- stubs/Drupal/Core/TypedData/TraversableTypedDataInterface.stub
42+
- stubs/Drupal/Core/TypedData/TypedData.stub
43+
- stubs/Drupal/Core/TypedData/TypedDataInterface.stub
44+
- stubs/Drupal/Core/TypedData/Plugin/DataType/Map.stub
45+
- stubs/Drupal/link/LinkItemInterface.stub
46+
- stubs/Drupal/link/Plugin/Field/FieldType/LinkItem.stub
1647
drupal:
1748
drupal_root: '%currentWorkingDirectory%'
1849
entityMapping:

src/Reflection/FieldItemListPropertyReflection.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ public function getReadableType(): Type
4343
return new ObjectType('Drupal\Core\Entity\EntityInterface');
4444
}
4545
if ($this->propertyName === 'target_id') {
46+
// @todo needs to be union type.
4647
return new StringType();
4748
}
4849
// @todo this is wrong, integer/bool/decimal/etc all use single value property.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?php
2+
3+
namespace Drupal\Component\Plugin;
4+
5+
interface PluginInspectionInterface {
6+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field;
4+
5+
use Drupal\Core\TypedData\Plugin\DataType\Map;
6+
7+
abstract class FieldItemBase extends Map implements FieldItemInterface {
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field;
4+
5+
use Drupal\Core\TypedData\ComplexDataInterface;
6+
7+
interface FieldItemInterface extends ComplexDataInterface {
8+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field\Plugin\Field\FieldType;
4+
5+
use Drupal\Core\Field\FieldItemBase;
6+
use Drupal\Core\TypedData\OptionsProviderInterface;
7+
8+
/**
9+
* @property int $value
10+
*/
11+
class BooleanItem extends FieldItemBase implements OptionsProviderInterface {
12+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field\Plugin\Field\FieldType;
4+
5+
class ChangedItem extends CreatedItem {
6+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field\Plugin\Field\FieldType;
4+
5+
class CreatedItem extends TimestampItem {
6+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field\Plugin\Field\FieldType;
4+
5+
/**
6+
* @property string $value
7+
*/
8+
class DecimalItem extends NumericItemBase {
9+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?php
2+
3+
namespace Drupal\Core\Field\Plugin\Field\FieldType;
4+
5+
use Drupal\Core\Field\FieldItemBase;
6+
7+
/**
8+
* @property string $value
9+
*/
10+
class EmailItem extends FieldItemBase {
11+
}

0 commit comments

Comments
 (0)