summaryrefslogtreecommitdiff
path: root/data/schemas
diff options
context:
space:
mode:
Diffstat (limited to 'data/schemas')
-rw-r--r--data/schemas/definitions.jsonschema42
-rw-r--r--data/schemas/keyboard.jsonschema12
-rw-r--r--data/schemas/keymap.jsonschema7
3 files changed, 51 insertions, 10 deletions
diff --git a/data/schemas/definitions.jsonschema b/data/schemas/definitions.jsonschema
index 822f237073..46aba52cbd 100644
--- a/data/schemas/definitions.jsonschema
+++ b/data/schemas/definitions.jsonschema
@@ -20,6 +20,10 @@
"type": "string",
"pattern": "^0x[0-9A-F]{4}$"
},
+ "bcd_version": {
+ "type": "string",
+ "pattern": "^[0-9]{1,2}\\.[0-9]\\.[0-9]$"
+ },
"text_identifier": {
"type": "string",
"minLength": 1,
@@ -29,7 +33,33 @@
"oneOf": [
{
"type": "string",
- "enum": ["LAYOUT", "LAYOUT_planck_1x2uC"]
+ "enum": [
+ "LAYOUT",
+ "LAYOUT_1x2uC",
+ "LAYOUT_1x2uL",
+ "LAYOUT_1x2uR",
+ "LAYOUT_2x2uC",
+ "LAYOUT_2x3uC",
+ "LAYOUT_625uC",
+ "LAYOUT_ANSI_DEFAULT",
+ "LAYOUT_JP",
+ "LAYOUT_ortho_3x12_1x2uC",
+ "LAYOUT_ortho_4x12_1x2uC",
+ "LAYOUT_ortho_4x12_1x2uL",
+ "LAYOUT_ortho_4x12_1x2uR",
+ "LAYOUT_ortho_5x12_1x2uC",
+ "LAYOUT_ortho_5x12_2x2uC",
+ "LAYOUT_ortho_5x14_1x2uC",
+ "LAYOUT_ortho_5x14_1x2uL",
+ "LAYOUT_ortho_5x14_1x2uR",
+ "LAYOUT_planck_1x2uC",
+ "LAYOUT_planck_1x2uL",
+ "LAYOUT_planck_1x2uR",
+ "LAYOUT_preonic_1x2uC",
+ "LAYOUT_preonic_1x2uL",
+ "LAYOUT_preonic_1x2uR",
+ "LAYOUT_reviung34_2uL"
+ ]
},
{
"type": "string",
@@ -49,6 +79,10 @@
"oneOf": [
{
"type": "string",
+ "enum": ["NO_PIN"]
+ },
+ {
+ "type": "string",
"pattern": "^[A-K]\\d{1,2}$"
},
{
@@ -70,13 +104,13 @@
"signed_int": {
"type": "number",
"multipleOf": 1
- }
+ },
"signed_int_8": {
"type": "number",
"min": -127,
"max": 127,
"multipleOf": 1
- }
+ },
"string_array": {
"type": "array",
"items": {
@@ -97,7 +131,7 @@
"type": "number",
"min": 0,
"multipleOf": 1
- }
+ },
"unsigned_int_8": {
"type": "number",
"min": 0,
diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema
index 308f9b782b..a8b3d06933 100644
--- a/data/schemas/keyboard.jsonschema
+++ b/data/schemas/keyboard.jsonschema
@@ -13,7 +13,7 @@
},
"processor": {
"type": "string",
- "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK66FX1M0", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L433", "STM32L443", "GD32VF103", "WB32F3G71", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"]
+ "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK66FX1M0", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L432", "STM32L433", "STM32L442", "STM32L443", "GD32VF103", "WB32F3G71", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"]
},
"audio": {
"type": "object",
@@ -45,7 +45,7 @@
"properties": {
"driver": {
"type": "string",
- "enum": ["AdafruitBLE", "RN42"]
+ "enum": ["BluefruitLE", "RN42"]
},
"lto": {"type": "boolean"},
}
@@ -57,7 +57,7 @@
},
"bootloader": {
"type": "string",
- "enum": ["atmel-dfu", "bootloadhid", "bootloadHID", "caterina", "halfkay", "kiibohd", "lufa-dfu", "lufa-ms", "micronucleus", "qmk-dfu", "qmk-hid", "stm32-dfu", "stm32duino", "gd32v-dfu", "wb32-dfu", "unknown", "usbasploader", "USBasp", "tinyuf2"],
+ "enum": ["atmel-dfu", "bootloadhid", "bootloadHID", "custom", "caterina", "halfkay", "kiibohd", "lufa-dfu", "lufa-ms", "md-boot", "qmk-dfu", "qmk-hid", "stm32-dfu", "stm32duino", "gd32v-dfu", "wb32-dfu", "unknown", "usbasploader", "USBasp", "tinyuf2"],
},
"bootloader_instructions": {
"type": "string",
@@ -69,7 +69,7 @@
"properties": {
"debounce_type": {
"type": "string",
- "enum": ["custom", "eager_pk", "eager_pr", "sym_defer_pk", "sym_eager_pk"]
+ "enum": ["custom", "eager_pk", "eager_pr", "sym_defer_pk", "sym_defer_pr", "sym_eager_pk"]
},
"firmware_format": {
"type": "string",
@@ -109,6 +109,7 @@
},
"layouts": {
"type": "object",
+ "propertyNames": {"$ref": "qmk.definitions.v1#/layout_macro"},
"additionalProperties": {
"type": "object",
"additionalProperties": false,
@@ -320,7 +321,8 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "device_ver": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
+ "device_ver": {"$ref": "qmk.definitions.v1#/hex_number_4d"}, # Deprecated
+ "device_version": {"$ref": "qmk.definitions.v1#/bcd_version"},
"force_nkro": {"type": "boolean"},
"pid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
"vid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
diff --git a/data/schemas/keymap.jsonschema b/data/schemas/keymap.jsonschema
index faa250a942..3803301a66 100644
--- a/data/schemas/keymap.jsonschema
+++ b/data/schemas/keymap.jsonschema
@@ -53,5 +53,10 @@
"type": "string",
"description": "asdf"
}
- }
+ },
+ "required": [
+ "keyboard",
+ "layout",
+ "layers"
+ ]
}