ConceptPortal-public/rsconcept/backend/apps/oss/serializers/basics.py

38 lines
1.2 KiB
Python
Raw Normal View History

2024-07-19 19:29:27 +03:00
''' Basic serializers that do not interact with database. '''
from rest_framework import serializers
from shared.serializers import StrictSerializer
2024-07-19 19:29:27 +03:00
class PositionSerializer(StrictSerializer):
''' Serializer: Position data. '''
x = serializers.FloatField()
y = serializers.FloatField()
width = serializers.FloatField()
height = serializers.FloatField()
class NodeSerializer(StrictSerializer):
''' Oss node serializer. '''
2025-06-11 16:39:12 +03:00
nodeID = serializers.CharField()
2025-04-06 15:49:43 +03:00
x = serializers.FloatField()
y = serializers.FloatField()
width = serializers.FloatField()
height = serializers.FloatField()
class LayoutSerializer(StrictSerializer):
2025-06-11 16:39:12 +03:00
''' Serializer: Layout data. '''
data = serializers.ListField(child=NodeSerializer()) # type: ignore
2024-07-21 15:19:57 +03:00
class SubstitutionExSerializer(StrictSerializer):
2024-07-21 15:19:57 +03:00
''' Serializer: Substitution extended data. '''
operation = serializers.IntegerField()
original = serializers.IntegerField()
substitution = serializers.IntegerField()
original_alias = serializers.CharField()
original_term = serializers.CharField()
substitution_alias = serializers.CharField()
substitution_term = serializers.CharField()