Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
oyaji / oyaji / images / schemas.py
Size: Mime:
# -*- coding:utf-8 -*-

# Third
from marshmallow import Schema
from marshmallow.fields import Str, Integer, Nested

# Apps
from oyaji.messages import Messages


class ThumbSchema(Schema):
    url = Str(required=True, error_messages={"required": Messages.FIELD_REQUIRED.value})
    key = Str(required=True, error_messages={"required": Messages.FIELD_REQUIRED.value})


class ImageSchema(Schema):
    id = Str()
    supplier_id = Str(
        required=True, error_messages={"required": Messages.FIELD_REQUIRED.value}
    )
    name = Str(
        required=True, error_messages={"required": Messages.FIELD_REQUIRED.value}
    )
    size = Integer(
        required=True, error_messages={"required": Messages.FIELD_REQUIRED.value}
    )
    url = Str(required=True, error_messages={"required": Messages.FIELD_REQUIRED.value})
    key = Str(required=True, error_messages={"required": Messages.FIELD_REQUIRED.value})
    processed = Nested(ThumbSchema)
    thumb150 = Nested(ThumbSchema)
    thumb250 = Nested(ThumbSchema)
    thumb450 = Nested(ThumbSchema)


class SimpleImageSchema(Schema):
    id = Str()
    url = Str(required=True, error_messages={"required": Messages.FIELD_REQUIRED.value})
    key = Str(required=True, error_messages={"required": Messages.FIELD_REQUIRED.value})