Coverage for backend/django/flowsheetInternals/unitops/serializers/FlowsheetEditOperationSerializer.py: 100%
17 statements
« prev ^ index » next coverage.py v7.10.7, created at 2026-07-22 05:22 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2026-07-22 05:22 +0000
1from rest_framework import serializers
3from flowsheetInternals.unitops.models.FlowsheetEditOperation import (
4 FlowsheetEditOperation,
5)
8class FlowsheetEditOperationSerializer(serializers.ModelSerializer):
9 """Public history metadata without internal forward/inverse payloads."""
11 operation_id = serializers.IntegerField(source="pk", read_only=True)
12 label = serializers.CharField(source="label_key", read_only=True)
14 class Meta:
15 model = FlowsheetEditOperation
16 fields = (
17 "operation_id",
18 "kind",
19 "label",
20 "revision",
21 "last_revision",
22 "state",
23 "schema_version",
24 "affected_object_ids",
25 "affected_group_ids",
26 "created_at",
27 "updated_at",
28 )
31class FlowsheetEditTransitionSerializer(serializers.Serializer):
32 """Response returned after applying an undo or redo transition."""
34 operation_id = serializers.IntegerField()
35 label = serializers.CharField()
36 revision = serializers.IntegerField()
37 state = serializers.CharField()
38 affected_object_ids = serializers.ListField(child=serializers.IntegerField())
39 affected_group_ids = serializers.ListField(child=serializers.IntegerField())
42class FlowsheetEditTransitionRequestSerializer(serializers.Serializer):
43 """Concurrency token supplied by the history list currently on screen."""
45 expected_revision = serializers.IntegerField(min_value=0)