fix: Add missing fields to Spa Manifest Serializer

Part-of: <https://dev.funkwhale.audio/funkwhale/funkwhale/-/merge_requests/2256>
This commit is contained in:
Georg Krause 2022-12-07 09:26:41 +01:00 committed by petitminion
parent b0b81a8683
commit 180cd1cc48
1 changed files with 25 additions and 0 deletions

View File

@ -201,11 +201,36 @@ class NodeInfo20Serializer(serializers.Serializer):
return MetadataSerializer(obj).data
class SpaManifestIconSerializer(serializers.Serializer):
src = serializers.CharField()
sizes = serializers.CharField()
type = serializers.CharField()
class SpaManifestRelatedApplicationsSerializer(serializers.Serializer):
platform = serializers.CharField()
url = serializers.URLField()
id = serializers.CharField()
class SpaManifestShortcutSerializer(serializers.Serializer):
name = serializers.CharField()
url = serializers.CharField()
icons = SpaManifestIconSerializer(many=True, required=False)
class SpaManifestSerializer(serializers.Serializer):
name = serializers.CharField(default="Funkwhale")
short_name = serializers.CharField(default="Funkwhale")
display = serializers.CharField(required=False)
background_color = serializers.CharField(required=False)
lang = serializers.CharField(required=False)
categories = serializers.ListField(child=serializers.CharField(), required=False)
description = serializers.CharField(required=False)
icons = SpaManifestIconSerializer(many=True, required=False)
start_url = serializers.CharField(required=False)
prefer_related_applications = serializers.BooleanField(required=False)
related_applications = SpaManifestRelatedApplicationsSerializer(
many=True, required=False
)
shortcuts = SpaManifestShortcutSerializer(many=True, required=False)