309 lines
8.5 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://gitea.jbrumond.me/minimal/docs/raw/branch/master/schemas/color-theme.json",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the color theme as it is displayed in web UI. Must match the file\nname of the theme file, e.g. a theme called \"example-theme\" should be located\nin a file called \"example-theme.theme.json\"\n"
},
"colors": {
"type": "object",
"description": "Contains the values that will be used to populate the CSS variables controlling the UI theme",
"properties": {
"sun": {
"$ref": "#/definitions/css_color",
"description": "The color of the sun icon used to indicate that the light color theme is active"
},
"moon": {
"$ref": "#/definitions/css_color",
"description": "The color of the moon icon used to indicate that the dark color theme is active"
},
"bg_main": {
"$ref": "#/definitions/css_color",
"description": "The primary background color applied to the page as a whole"
},
"bg_light": {
"$ref": "#/definitions/css_color"
},
"bg_heavy": {
"$ref": "#/definitions/css_color"
},
"bg_popup_mask": {
"$ref": "#/definitions/css_color"
},
"line": {
"$ref": "#/definitions/css_color"
},
"text_heading": {
"$ref": "#/definitions/css_color",
"description": "The color of heading text"
},
"text_body": {
"$ref": "#/definitions/css_color",
"description": "The color of main / normal body copy text"
},
"text_light": {
"$ref": "#/definitions/css_color"
},
"text_link": {
"$ref": "#/definitions/css_color",
"description": "The default color of hyperlinks"
},
"text_link_active": {
"$ref": "#/definitions/css_color",
"description": "The color of hyperlinks that are currently active / selected"
},
"text_link_visited": {
"$ref": "#/definitions/css_color",
"description": "The color of hyperlinks that have been previously visited"
},
"text_highlight": {
"$ref": "#/definitions/css_color"
},
"bg_text_highlight": {
"$ref": "#/definitions/css_color"
},
"text_selection": {
"$ref": "#/definitions/css_color"
},
"bg_text_selection": {
"$ref": "#/definitions/css_color"
},
"bg_button_primary": {
"$ref": "#/definitions/css_color"
},
"bg_button_primary_hover": {
"$ref": "#/definitions/css_color"
},
"text_button_primary": {
"$ref": "#/definitions/css_color"
},
"bg_button_secondary": {
"$ref": "#/definitions/css_color"
},
"bg_button_secondary_hover": {
"$ref": "#/definitions/css_color"
},
"text_button_secondary": {
"$ref": "#/definitions/css_color"
},
"bg_error_box": {
"$ref": "#/definitions/css_color"
},
"border_error_box": {
"$ref": "#/definitions/css_color"
},
"text_error_box": {
"$ref": "#/definitions/css_color"
},
"bg_input": {
"$ref": "#/definitions/css_color"
},
"border_input": {
"$ref": "#/definitions/css_color"
},
"border_input_invalid": {
"$ref": "#/definitions/css_color"
},
"icon_active_indicator": {
"$ref": "#/definitions/css_color"
},
"icon_success_indicator": {
"$ref": "#/definitions/css_color"
},
"icon_failure_indicator": {
"$ref": "#/definitions/css_color"
},
"icon_warning_indicator": {
"$ref": "#/definitions/css_color"
},
"chart_axis": {
"$ref": "#/definitions/css_color"
},
"chart_text": {
"$ref": "#/definitions/css_color"
},
"chart_guideline": {
"$ref": "#/definitions/css_color"
},
"chart_data_0": {
"$ref": "#/definitions/css_color"
},
"chart_data_1": {
"$ref": "#/definitions/css_color"
},
"chart_data_2": {
"$ref": "#/definitions/css_color"
},
"chart_data_3": {
"$ref": "#/definitions/css_color"
},
"chart_data_4": {
"$ref": "#/definitions/css_color"
},
"chart_data_5": {
"$ref": "#/definitions/css_color"
},
"chart_data_6": {
"$ref": "#/definitions/css_color"
},
"chart_data_7": {
"$ref": "#/definitions/css_color"
},
"chart_data_8": {
"$ref": "#/definitions/css_color"
},
"chart_data_9": {
"$ref": "#/definitions/css_color"
},
"code_normal": {
"$ref": "#/definitions/css_color"
},
"code_shadow": {
"$ref": "#/definitions/css_color"
},
"code_background": {
"$ref": "#/definitions/css_color"
},
"code_selection": {
"$ref": "#/definitions/css_color"
},
"code_comment": {
"$ref": "#/definitions/css_color"
},
"code_punc": {
"$ref": "#/definitions/css_color"
},
"code_operator": {
"$ref": "#/definitions/css_color"
},
"code_const_literal": {
"$ref": "#/definitions/css_color"
},
"code_number_literal": {
"$ref": "#/definitions/css_color"
},
"code_boolean_literal": {
"$ref": "#/definitions/css_color"
},
"code_tag": {
"$ref": "#/definitions/css_color"
},
"code_string": {
"$ref": "#/definitions/css_color"
},
"code_keyword": {
"$ref": "#/definitions/css_color"
},
"code_func_name": {
"$ref": "#/definitions/css_color"
},
"code_class_name": {
"$ref": "#/definitions/css_color"
},
"code_regex_important": {
"$ref": "#/definitions/css_color"
},
"code_variable": {
"$ref": "#/definitions/css_color"
},
"code_builtin": {
"$ref": "#/definitions/css_color"
},
"code_attr_name": {
"$ref": "#/definitions/css_color"
},
"code_gutter_divider": {
"$ref": "#/definitions/css_color"
},
"code_line_number": {
"$ref": "#/definitions/css_color"
},
"code_line_highlight": {
"$ref": "#/definitions/css_color"
}
}
}
},
"definitions": {
"css_color": {
"oneOf": [
{
"type": "string",
"format": "regex",
"pattern": "^(#[0-9a-fA-F]{3}(?:[0-9a-fA-F]{3}(?:[0-9a-fA-F]{2})?)?)$",
"examples": [
"#000",
"#ff0000",
"#ffccaa88"
]
},
{
"type": "string",
"format": "regex",
"pattern": "^(rgb\\(\\s*([0-9]{1,3})\\s*,\\s*([0-9]{1,3})\\s*,\\s*([0-9]{1,3})\\s*\\))$",
"examples": [
"rgb(10, 70, 130)"
]
},
{
"type": "string",
"format": "regex",
"pattern": "^(rgba\\(\\s*([0-9]{1,3})\\s*,\\s*([0-9]{1,3})\\s*,\\s*([0-9]{1,3})\\s*,\\s*([01]|[01]?\\.[0-9]{1,3})\\s*\\))$",
"examples": [
"rgba(10, 70, 130, 0.5)"
]
},
{
"type": "string",
"const": "transparent"
},
{
"type": "string",
"const": "currentcolor"
},
{
"type": "string",
"enum": [
"black",
"silver",
"gray",
"white",
"maroon",
"red",
"purple",
"fuchsia",
"green",
"lime",
"olive",
"yellow",
"navy",
"blue",
"teal",
"aqua"
]
},
{
"type": "string",
"enum": [
"orange"
]
},
{
"type": "string",
"enum": [
"aliceblue",
"antiquewhite"
]
},
{
"type": "string",
"enum": [
"rebeccapurple"
]
}
]
}
}
}