70 lines
2.1 KiB
JSON
70 lines
2.1 KiB
JSON
{
|
|
"$id": "https://smatchit.io/schema/screens",
|
|
"$comment": "To describe screens as tree to navigate inside",
|
|
"title": "Screens description",
|
|
"description": "Each propertie value is a mustache template string where a data must be provide to display screen with value",
|
|
"type": "object",
|
|
"properties": {
|
|
"screenid":{
|
|
"title":"Screen identification used in html tag id",
|
|
"type":"string"
|
|
},
|
|
"title": {
|
|
"title": "A title in a screen",
|
|
"type": "string"
|
|
},
|
|
"subtitle": {
|
|
"title": "A subtitle in a screen",
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"title": "an icon name",
|
|
"type": "string"
|
|
},
|
|
"warning": {
|
|
"title": "A text to highlight something, this text is between 2 ! icon",
|
|
"type": "string"
|
|
},
|
|
"formcontrol": {
|
|
"title": "A key word to presents this content",
|
|
"type": "string",
|
|
"enum":["squarebluebtn","listbtn","form"]
|
|
},
|
|
"forms":{
|
|
"title":"Liste of data collection element into the screen",
|
|
"type":"array",
|
|
"items":{"type":"objects"}
|
|
},
|
|
"action": {
|
|
"title": "List of possible action on this element",
|
|
"type": "string",
|
|
"enum":["onclick"]
|
|
},
|
|
"function":{
|
|
"title":"Function name to call, if action",
|
|
"comment":"other function than nextlevel",
|
|
"type":"string"
|
|
},
|
|
"params":{
|
|
"title":" an object containning parameter to send to function",
|
|
"comment":"can be empty {}",
|
|
"type":"objects"
|
|
},
|
|
"nextlevel":{
|
|
"title":"List of new screens to show if function is nextlevel $ref:# means it same current schema",
|
|
"type":"array",
|
|
"items":{"$ref":"#"}
|
|
}
|
|
},
|
|
"required": ["screenid", "title"],
|
|
"apxid": "screenid",
|
|
"apxuniquekey": ["screenid"],
|
|
"apxidx": [
|
|
{ "name": "lst_screens", "type": "array", "keyval": "screenid" },
|
|
],
|
|
"apxaccessrights": {
|
|
"owner": { "R": [], "U": [], "D": [] },
|
|
"anonymous": { "R": [] },
|
|
}
|
|
}
|