From c97131a9ec0b3fa2e7bdf6277597822093127ecb Mon Sep 17 00:00:00 2001 From: Aaron Carlino Date: Tue, 7 Sep 2021 13:59:00 +1200 Subject: [PATCH] BUGFIX: Ensure scalar plugin is assigned to Version field --- src/GraphQL/Plugins/VersionedDataObject.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/GraphQL/Plugins/VersionedDataObject.php b/src/GraphQL/Plugins/VersionedDataObject.php index a113b540..ec345521 100644 --- a/src/GraphQL/Plugins/VersionedDataObject.php +++ b/src/GraphQL/Plugins/VersionedDataObject.php @@ -4,8 +4,10 @@ use SilverStripe\Core\Extensible; use SilverStripe\GraphQL\Schema\DataObject\Plugin\Paginator; +use SilverStripe\GraphQL\Schema\DataObject\Plugin\ScalarDBField; use SilverStripe\GraphQL\Schema\Exception\SchemaBuilderException; use SilverStripe\GraphQL\Schema\Field\Field; +use SilverStripe\GraphQL\Schema\Field\ModelField; use SilverStripe\GraphQL\Schema\Interfaces\ModelTypePlugin; use SilverStripe\GraphQL\Schema\Interfaces\SchemaUpdater; use SilverStripe\GraphQL\Schema\Plugin\AbstractQuerySortPlugin; @@ -90,7 +92,9 @@ public function apply(ModelType $type, Schema $schema, array $config = []): void $memberTypeName = $memberType->getModel()->getTypeName(); $resolver = ['resolver' => [VersionedResolver::class, 'resolveVersionFields']]; - $type->addField('version', 'Int'); + $type->addField('version', 'Int', function (ModelField $field) { + $field->addResolverAfterware([ScalarDBField::class, 'resolve']); + }); $versionType = Type::create($versionName) ->addField('author', ['type' => $memberTypeName] + $resolver)