61 lines
1.7 KiB
JSON
61 lines
1.7 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema",
|
|
"definitions": {
|
|
"object_check": {
|
|
"type": "object",
|
|
"dependencies": {
|
|
"additionalProperties": ["type"]
|
|
},
|
|
"additionalProperties": {
|
|
"anyOf": [
|
|
{ "type": "object", "$ref": "#/definitions/object_check" },
|
|
{ "type": "array", "$ref": "#/definitions/array_check" },
|
|
{ "type": "string" },
|
|
{ "type": "boolean" },
|
|
{ "type": "number" },
|
|
{ "type": "integer" }
|
|
]
|
|
},
|
|
"properties": {
|
|
"title": {
|
|
"type": "string",
|
|
"pattern": "^([A-Z0-9][a-z0-9\\.]*(| ))*$"
|
|
},
|
|
"defaultSnippets": {
|
|
"type": "array",
|
|
"title": "default Snippets",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["label", "body"],
|
|
"examples": [{ "label": "example", "body": {} }],
|
|
"properties": {
|
|
"label": { "type": "string" },
|
|
"body": { "type": ["object", "string", "array", "number", "boolean", "integer"] }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"array_check": {
|
|
"items": {
|
|
"anyOf": [
|
|
{ "type": "object", "$ref": "#/definitions/object_check" },
|
|
{ "type": "array", "$ref": "#/definitions/array_check" },
|
|
{ "type": "string" },
|
|
{ "type": "boolean" },
|
|
{ "type": "number" },
|
|
{ "type": "integer" }
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"anyOf": [
|
|
{ "type": "object", "$ref": "#/definitions/object_check" },
|
|
{ "type": "array", "$ref": "#/definitions/array_check" },
|
|
{ "type": "string" },
|
|
{ "type": "boolean" },
|
|
{ "type": "number" },
|
|
{ "type": "integer" }
|
|
]
|
|
}
|