83 lines
2.8 KiB
JSON
83 lines
2.8 KiB
JSON
|
{
|
||
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
||
|
"description": "Jupyter Interactive Widget State JSON schema.",
|
||
|
"type": "object",
|
||
|
"properties": {
|
||
|
"version_major": {
|
||
|
"description": "Format version (major)",
|
||
|
"type": "number",
|
||
|
"minimum": 2,
|
||
|
"maximum": 2
|
||
|
},
|
||
|
"version_minor": {
|
||
|
"description": "Format version (minor)",
|
||
|
"type": "number",
|
||
|
"minimum": 0,
|
||
|
"maximum": 0
|
||
|
},
|
||
|
"state": {
|
||
|
"description": "Model State for All Widget Models - keys are model ids, values are model state",
|
||
|
"type": "object",
|
||
|
"additionalProperties": {
|
||
|
"type": "object",
|
||
|
"properties": {
|
||
|
"model_name": {
|
||
|
"description": "Name of the JavaScript class holding the model implementation",
|
||
|
"type": "string"
|
||
|
},
|
||
|
"model_module": {
|
||
|
"description": "Name of the JavaScript module holding the model implementation",
|
||
|
"type": "string"
|
||
|
},
|
||
|
"model_module_version": {
|
||
|
"description": "Semver range for the JavaScript module holding the model implementation",
|
||
|
"type": "string"
|
||
|
},
|
||
|
"state": {
|
||
|
"description": "Serialized state of the model",
|
||
|
"type": "object"
|
||
|
},
|
||
|
"buffers": {
|
||
|
"description": "Binary buffers in the state",
|
||
|
"type": "array",
|
||
|
"items": {
|
||
|
"type": "object",
|
||
|
"properties": {
|
||
|
"path": {
|
||
|
"description": "A path for a binary buffer value.",
|
||
|
"type": "array",
|
||
|
"items": {
|
||
|
"description": "An object key or array index",
|
||
|
"type": ["string", "number"]
|
||
|
}
|
||
|
},
|
||
|
"data": {
|
||
|
"description": "A binary buffer encoded as specified in the 'encoding' property",
|
||
|
"type": "string"
|
||
|
},
|
||
|
"encoding": {
|
||
|
"description": "The encoding of the buffer data",
|
||
|
"type": "string",
|
||
|
"oneOf": [
|
||
|
{
|
||
|
"enum": ["hex"],
|
||
|
"description": "Base 16 encoding, as specified in RFC 4648, section 8 (https://tools.ietf.org/html/rfc4648#section-8)"
|
||
|
},
|
||
|
{
|
||
|
"enum": ["base64"],
|
||
|
"description": "Base 64 encoding, as specified in RFC 4648, section 4 (https://tools.ietf.org/html/rfc4648#section-4)"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
},
|
||
|
"required": ["path", "data", "encoding"]
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"required": ["model_name", "model_module", "state"]
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"required": ["version_major", "version_minor", "state"]
|
||
|
}
|