"""Reference Transaction Type Group marshmallow schema.""" from abacus_common_logic.marshalling.custom_fields import ma from marshmallow import fields from abacus_contract.schemas.reference_transaction_type import ( ReferenceTransactionTypeSchema, ) class ReferenceTransactionTypeGroupSchema(ma.Schema): """Schema for reference_transaction_type_group details.""" reference_transaction_type_group_id = ma.IntegerId(required=True) transaction_type_group_name = ma.NonemptyString(required=True) class ReferenceTransactionTypeGroupDataloaderSchema(ma.Schema): """Schema wrapping each group's transaction types (or none) per requested id.""" data = fields.Nested(ReferenceTransactionTypeSchema, many=True, allow_none=True)