You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

151 lines
3.3 KiB

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"fromRevision": {
"$ref": "#/$defs/__schema0"
},
"toRevision": {
"$ref": "#/$defs/__schema0"
},
"steps": {
"maxItems": 128,
"type": "array",
"items": {
"$ref": "#/$defs/__schema1"
}
}
},
"required": ["id", "fromRevision", "toRevision", "steps"],
"additionalProperties": false,
"$defs": {
"__schema0": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"__schema1": {
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/__schema2"
},
"effect": {
"$ref": "#/$defs/__schema2"
},
"trigger": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "after"
},
"steps": {
"type": "array",
"items": {
"$ref": "#/$defs/__schema2"
}
}
},
"required": ["kind", "steps"],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "marker"
},
"step": {
"$ref": "#/$defs/__schema2"
},
"marker": {
"$ref": "#/$defs/__schema2"
}
},
"required": ["kind", "step", "marker"],
"additionalProperties": false
}
]
},
"params": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"$ref": "#/$defs/__schema3"
}
},
"emits": {
"type": "array",
"items": {
"$ref": "#/$defs/__schema2"
}
},
"blocking": {
"type": "boolean"
},
"timeoutMs": {
"type": "integer",
"minimum": 1,
"maximum": 12000
}
},
"required": [
"id",
"effect",
"trigger",
"params",
"emits",
"blocking",
"timeoutMs"
],
"additionalProperties": false
},
"__schema2": {
"type": "string",
"pattern": "^[a-z][a-zA-Z0-9.-]{0,79}$"
},
"__schema3": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/__schema3"
}
},
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"$ref": "#/$defs/__schema3"
}
}
]
}
},
"$id": "urn:juegoland:presentation-plan:1"
}

Powered by TurnKey Linux.