{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$id": "kendo-cli://schemas/css-color.json",
    "title": "Schema definition for CSS color",

    "$defs": {

        "hex-color": {
            "description": "HEX color",
            "type": "string",
            "pattern": "^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$",
            "example": "#aa33cc"
        },

        "hexa-color": {
            "description": "HEXA color",
            "type": "string",
            "pattern": "^#([a-fA-F0-9]{8}|[a-fA-F0-9]{4})$",
            "example": "#aa33ccaa"
        },

        "rgb-color": {
            "description": "RGB color",
            "type": "string",
            "pattern": "^rgb\\(\\s*\\d{1,3}\\s*,\\s*\\d{1,3}\\s*,\\s*\\d{1,3}\\s*\\)$",
            "example": "rgb( 255, 255, 255 )"
        },

        "rgba-color": {
            "description": "RGBA color",
            "type": "string",
            "pattern": "^rgba\\(\\s*\\d{1,3}\\s*,\\s*\\d{1,3}\\s*,\\s*\\d{1,3}\\s*\\,\\s*(?:0|1|1.0+|0\\.\\d+|\\.\\d+)\\s*\\)$",
            "example": "rgba( 255, 255, 255, 0 )"
        },

        "named-color": {
            "description": "Named color",
            "type": "string",
            "enum": [
                "transparent",
                "currentColor",

                "black",
                "white",

                "silver",
                "gray", "grey",
                "maroon",
                "red",
                "purple",
                "fuchsia", "magenta",
                "green",
                "lime",
                "olive",
                "yellow",
                "navy",
                "blue",
                "teal",
                "aqua", "cyan",

                "orange",

                "aliceblue",
                "antiquewhite",
                "aquamarine",
                "azure",
                "beige",
                "bisque",
                "blanchedalmond",
                "blueviolet",
                "brown",
                "burlywood",
                "cadetblue",
                "chartreuse",
                "chocolate",
                "coral",
                "cornflowerblue",
                "cornsilk",
                "crimson",
                "darkblue",
                "darkcyan",
                "darkgoldenrod",
                "darkgray", "darkgrey",
                "darkgreen",
                "darkkhaki",
                "darkmagenta",
                "darkolivegreen",
                "darkorange",
                "darkorchid",
                "darkred",
                "darksalmon",
                "darkseagreen",
                "darkslateblue",
                "darkslategray", "darkslategrey",
                "darkturquoise",
                "darkviolet",
                "deeppink",
                "deepskyblue",
                "dimgray", "dimgrey",
                "dodgerblue",
                "firebrick",
                "floralwhite",
                "forestgreen",
                "gainsboro",
                "ghostwhite",
                "gold",
                "goldenrod",
                "greenyellow",
                "honeydew",
                "hotpink",
                "indianred",
                "indigo",
                "ivory",
                "khaki",
                "lavender",
                "lavenderblush",
                "lawngreen",
                "lemonchiffon",
                "lightblue",
                "lightcoral",
                "lightcyan",
                "lightgoldenrodyellow",
                "lightgray", "lightgrey",
                "lightgreen",
                "lightpink",
                "lightsalmon",
                "lightseagreen",
                "lightskyblue",
                "lightslategray", "lightslategrey",
                "lightsteelblue",
                "lightyellow",
                "limegreen",
                "linen",
                "mediumaquamarine",
                "mediumblue",
                "mediumorchid",
                "mediumpurple",
                "mediumseagreen",
                "mediumslateblue",
                "mediumspringgreen",
                "mediumturquoise",
                "mediumvioletred",
                "midnightblue",
                "mintcream",
                "mistyrose",
                "moccasin",
                "navajowhite",
                "oldlace",
                "olivedrab",
                "orangered",
                "orchid",
                "palegoldenrod",
                "palegreen",
                "paleturquoise",
                "palevioletred",
                "papayawhip",
                "peachpuff",
                "peru",
                "pink",
                "plum",
                "powderblue",
                "rosybrown",
                "royalblue",
                "saddlebrown",
                "salmon",
                "sandybrown",
                "seagreen",
                "seashell",
                "sienna",
                "skyblue",
                "slateblue",
                "slategray", "slategrey",
                "snow",
                "springgreen",
                "steelblue",
                "tan",
                "thistle",
                "tomato",
                "turquoise",
                "violet",
                "wheat",
                "whitesmoke",
                "yellowgreen",

                "rebeccapurple"
            ]
        },

        "system-color": {
            "description": "System colors",
            "type": "string",
            "enum": [
                "ActiveText",
                "ButtonFace",
                "ButtonText",
                "Canvas",
                "CanvasText",
                "Field",
                "FieldText",
                "Highlight",
                "HighlightText",
                "LinkText",
                "Mark",
                "MarkText",
                "VisitedText"
            ]
        },

        "css-color": {
            "oneOf": [
                { "$ref": "#/$defs/hex-color"},
                { "$ref": "#/$defs/hexa-color"},
                { "$ref": "#/$defs/rgb-color"},
                { "$ref": "#/$defs/rgba-color"},
                { "$ref": "#/$defs/named-color"},
                { "$ref": "#/$defs/system-color"}
            ]
        }

    }
}
