{
    "title": "Feature",
    "description": "A MWF feature component's schema definition.",
    "type": "object",
    "oneOf": [
        {
            "$ref": "#/definitions/left"
        },
        {
            "$ref": "#/definitions/center"
        },
        {
            "$ref": "#/definitions/right"
        }
    ],
    "required": [
        "content"
    ],
    "properties": {
        "content": {
            "type": "object",
            "properties": {
                "heading": {
                    "type": "string"
                },
                "body": {
                    "type": "string"
                },
                "badge": {
                    "type": "object",
                    "properties": {
                        "config": {
                            "type": "object",
                            "properties": {
                                "size": {
                                    "type": "string",
                                    "enum": [
                                        "small",
                                        "large"
                                    ]
                                },
                                "type": {
                                    "type": "string",
                                    "enum": [
                                        "highlight",
                                        "lowlight"
                                    ]
                                }
                            },
                            "required": [
                                "size",
                                "type"
                            ]
                        },
                        "content": {
                            "type": "object",
                            "properties": {
                                "text": {
                                    "type": "string"
                                }
                            },
                            "required": [
                                "text"
                            ]
                        }
                    },
                    "required": [
                        "config",
                        "content"
                    ]
                },
                "image": {
                    "type": "object",
                    "properties": {
                        "vp6": {
                            "type": "string"
                        },
                        "vp5": {
                            "type": "string"
                        },
                        "vp4": {
                            "type": "string"
                        },
                        "vp3": {
                            "type": "string"
                        },
                        "vp2": {
                            "type": "string"
                        },
                        "vp1": {
                            "type": "string"
                        },
                        "alt": {
                            "type": "string"
                        }
                    },
                    "required": [
                        "vp1",
                        "vp2",
                        "vp3",
                        "vp4",
                        "vp5",
                        "vp6",
                        "alt"
                    ]
                },
                "call-to-action": {
                    "type": "object",
                    "properties": {
                        "content": {
                            "type": "object",
                            "properties": {
                                "text": {
                                    "type": "string"
                                },
                                "href": {
                                    "type": "string"
                                }
                            },
                            "required": [
                                "text",
                                "href"
                            ]
                        }
                    }
                }
            },
            "required": [
                "heading",
                "body",
                "image"
            ]
        }
    },
    "definitions": {
        "left": {
            "properties": {
                "config": {
                    "type": "object",
                    "properties": {
                        "align": {
                            "type": "string",
                            "enum": [
                                "left"
                            ]
                        }
                    },
                    "required": [
                        "align"
                    ]
                }
            },
            "required": [
                "config"
            ]
        },
        "center": {
            "properties": {
                "config": {
                    "type": "object",
                    "properties": {
                        "align": {
                            "type": "string",
                            "enum": [
                                "center"
                            ]
                        }
                    },
                    "required": [
                        "align"
                    ]
                }
            },
            "required": [
                "config"
            ]
        },
        "right": {
            "properties": {
                "config": {
                    "type": "object",
                    "properties": {
                        "align": {
                            "type": "string",
                            "enum": [
                                "right"
                            ]
                        }
                    },
                    "required": [
                        "align"
                    ]
                }
            },
            "required": [
                "config"
            ]
        }
    }
}