"""Schema for product metadata.""" from marshmallow import fields from analytics.schemas.common import ( ArtistCoreMetadataSchema, ProductCoreMetadataSchema, TrackCoreMetadataSchema, ) class ProductTrackItemSchema(TrackCoreMetadataSchema): """Marshmallow schema for track-product metadata.""" track_number = fields.Integer(data_key="track_number") track_cd = fields.Integer(data_key="track_cd") track_type = fields.String(data_key="track_type") class ProductMetadataSchema(ProductCoreMetadataSchema): """Marshmallow schema for product metadata.""" tracks = fields.Nested(ProductTrackItemSchema, many=True) artists = fields.Nested(ArtistCoreMetadataSchema, many=True)