Skip to content

Commit 6e15eb9

Browse files
authoredSep 6, 2024··
fix(laravel): register HydraPartialCollectionViewNormalizer (#6588)
1 parent 3ee3cfc commit 6e15eb9

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed
 

‎src/Laravel/ApiPlatformProvider.php

+14-7
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
use ApiPlatform\Hydra\Serializer\CollectionNormalizer as HydraCollectionNormalizer;
5050
use ApiPlatform\Hydra\Serializer\DocumentationNormalizer as HydraDocumentationNormalizer;
5151
use ApiPlatform\Hydra\Serializer\EntrypointNormalizer as HydraEntrypointNormalizer;
52+
use ApiPlatform\Hydra\Serializer\PartialCollectionViewNormalizer as HydraPartialCollectionViewNormalizer;
5253
use ApiPlatform\Hydra\State\HydraLinkProcessor;
5354
use ApiPlatform\JsonApi\JsonSchema\SchemaFactory as JsonApiSchemaFactory;
5455
use ApiPlatform\JsonApi\Serializer\CollectionNormalizer as JsonApiCollectionNormalizer;
@@ -734,13 +735,19 @@ public function register(): void
734735
);
735736
});
736737

737-
$this->app->singleton(HydraCollectionNormalizer::class, function (Application $app) use ($defaultContext) {
738-
return new HydraCollectionNormalizer(
739-
$app->make(ContextBuilderInterface::class),
740-
$app->make(ResourceClassResolverInterface::class),
741-
$app->make(IriConverterInterface::class),
738+
$this->app->singleton(HydraPartialCollectionViewNormalizer::class, function (Application $app) use ($defaultContext) {
739+
return new HydraPartialCollectionViewNormalizer(
740+
new HydraCollectionNormalizer(
741+
$app->make(ContextBuilderInterface::class),
742+
$app->make(ResourceClassResolverInterface::class),
743+
$app->make(IriConverterInterface::class),
744+
$app->make(ResourceMetadataCollectionFactoryInterface::class),
745+
$defaultContext
746+
),
747+
'page',
748+
'pagination',
742749
$app->make(ResourceMetadataCollectionFactoryInterface::class),
743-
$defaultContext
750+
$app->make(PropertyAccessorInterface::class),
744751
);
745752
});
746753

@@ -845,7 +852,7 @@ public function register(): void
845852
$config = $app['config'];
846853
$list = new \SplPriorityQueue();
847854
$list->insert($app->make(HydraEntrypointNormalizer::class), -800);
848-
$list->insert($app->make(HydraCollectionNormalizer::class), -800);
855+
$list->insert($app->make(HydraPartialCollectionViewNormalizer::class), -800);
849856
$list->insert($app->make(JsonLdItemNormalizer::class), -890);
850857
$list->insert($app->make(JsonLdObjectNormalizer::class), -995);
851858
$list->insert($app->make(ArrayDenormalizer::class), -990);

0 commit comments

Comments
 (0)
Please sign in to comment.