diff options
| author | Anhgelus Morhtuuzh <anhgelus@anhgelus.world> | 2024-12-10 20:34:11 +0100 |
|---|---|---|
| committer | Anhgelus Morhtuuzh <anhgelus@anhgelus.world> | 2024-12-10 20:34:11 +0100 |
| commit | 8f86a7299d75b2905e4e6eb61f43750c51ed48e4 (patch) | |
| tree | 073b347673c258f9b80a18efe8b8cefeb7b3abcf /config.schema.json | |
| parent | a5955c32fb3b22e37769df49196ddab7b7d53b7d (diff) | |
feat(config): json schema for custom pages
Diffstat (limited to 'config.schema.json')
| -rw-r--r-- | config.schema.json | 193 |
1 files changed, 193 insertions, 0 deletions
diff --git a/config.schema.json b/config.schema.json new file mode 100644 index 0000000..9b325c3 --- /dev/null +++ b/config.schema.json @@ -0,0 +1,193 @@ +{ + "type": "object", + "properties": { + "colors": { + "type": "object", + "properties": { + "background": { + "type": "object", + "properties": { + "angle": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 359 + }, + "colors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "color": { + "type": "string" + }, + "position": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100 + } + }, + "additionalProperties": false, + "required": [ + "color", + "position" + ] + } + }, + "type": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "type", + "angle", + "colors" + ] + }, + "buttons": { + "type": "object", + "properties": { + "background": { + "type": "string" + }, + "background_hover": { + "type": "string" + }, + "text": { + "type": "string" + }, + "text_hover": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "text", + "text_hover", + "background", + "background_hover" + ] + }, + "text": { + "type": "string" + }, + "tag_hover": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "background", + "buttons", + "text", + "tag_hover" + ] + }, + "description": { + "type": "string" + }, + "image": { + "type": "string" + }, + "legal": { + "type": "object", + "properties": { + "font_source": { + "type": "string" + }, + "images_source": { + "type": "array", + "items": { + "type": "string" + } + }, + "legal_information_link": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "legal_information_link", + "images_source", + "font_source" + ] + }, + "links": { + "type": "array", + "items": { + "type": "object", + "properties": { + "content": { + "type": "string" + }, + "link": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "link", + "content" + ] + } + }, + "person": { + "type": "object", + "properties": { + "image": { + "type": "string" + }, + "name": { + "type": "string" + }, + "pronouns": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "name": { + "type": "string" + }, + "link": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "name", + "description", + "link" + ] + } + } + }, + "additionalProperties": false, + "required": [ + "name", + "pronouns", + "image", + "tags" + ] + }, + "custom_pages": { + "type": "array" + } + }, + "additionalProperties": false, + "required": [ + "image", + "description", + "person", + "colors", + "links", + "legal" + ] +} |
