{ "custom": {}, "params": { "ch": "", "current_op": "", "new_op": "" }, "propConfig": { "params.ch": { "paramDirection": "input", "persistent": true }, "params.current_op": { "paramDirection": "input", "persistent": true }, "params.new_op": { "paramDirection": "inout", "persistent": true } }, "props": { "defaultSize": { "height": 75, "width": 75 } }, "root": { "children": [ { "meta": { "name": "Label" }, "position": { "basis": "32px" }, "propConfig": { "props.text": { "binding": { "config": { "struct": { "ch": "{view.params.ch}", "val": "{view.params.current_op}" }, "waitOnAll": true }, "transforms": [ { "code": "\ttitle \u003d \"CH{:02d}\".format(value[\u0027ch\u0027]) + \" - \" + \"{:02d}\".format(value[\u0027val\u0027])\n\treturn title", "type": "script" } ], "type": "expr-struct" } } }, "type": "ia.display.label" }, { "meta": { "name": "NumericEntryField" }, "position": { "basis": "32px" }, "propConfig": { "props.value": { "binding": { "config": { "bidirectional": true, "path": "view.params.new_op" }, "type": "property" } } }, "props": { "inputBounds": { "maximum": 48, "minimum": 0 } }, "type": "ia.input.numeric-entry-field" } ], "meta": { "name": "root" }, "props": { "direction": "column" }, "type": "ia.container.flex" } }