♻️(api) refactor getting versions to expose pagination

Getting versions was not working properly. Some versions returned
were not accessible by the user requesting the list of available
versions.

We refactor the code to make it simpler and let the frontend handle
pagination (load more style).
This commit is contained in:
Samuel Paccoud - DINUM
2024-09-16 19:27:48 +02:00
committed by Samuel Paccoud
parent 827d8cc8e1
commit a2a184bb93
6 changed files with 269 additions and 107 deletions

View File

@@ -343,10 +343,10 @@ class InvitationSerializer(serializers.ModelSerializer):
return attrs
class DocumentVersionSerializer(serializers.Serializer):
"""Serialize Versions."""
class VersionFilterSerializer(serializers.Serializer):
"""Validate version filters applied to the list endpoint."""
etag = serializers.CharField()
is_latest = serializers.BooleanField()
last_modified = serializers.DateTimeField()
version_id = serializers.CharField()
version_id = serializers.CharField(required=False, allow_blank=True)
page_size = serializers.IntegerField(
required=False, min_value=1, max_value=50, default=20
)