timeline-state-resolver-api
Version:
Have timeline, control stuff
75 lines (74 loc) • 1.85 kB
JSON
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "This is a meta-schema that defines the schemas for *device*/$schemas/actions.json",
"type": "object",
"properties": {
"$schema": {
"type": "string"
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Device-unique id of the action"
},
"name": {
"type": "string",
"description": "User readable name of the action"
},
"destructive": {
"type": "boolean",
"description": "A destructive action affects playout, users might get a confirmation dialog before executing it."
},
"timeout": {
"type": "integer",
"description": "Time in ms after which the action should be considered to have failed if it hasn't returned yet."
},
"payload": {
"type": "object",
"tsType": "string",
"description": "The payload object is the first argument of the function",
"properties": {
"type": {
"type": "string",
"enum": ["object"]
},
"properties": {
"type": "object"
}
},
"required": ["type", "properties"],
"allOf": [
{
"$ref": "https://json-schema.org/draft/2020-12/schema"
}
]
},
"result": {
"type": "object",
"tsType": "unknown",
"description": "Defines the returned data",
"properties": {
"type": {
"type": "string"
}
},
"required": ["type"],
"allOf": [
{
"$ref": "https://json-schema.org/draft/2020-12/schema"
}
]
}
},
"required": ["id", "name", "destructive"],
"additionalProperties": false
}
}
},
"required": ["actions"],
"additionalProperties": false
}