From 448fe2acae1aa99846a40e588a26d6f664357d6b Mon Sep 17 00:00:00 2001 From: "gigi.mamaladze" Date: Thu, 5 Jun 2025 19:26:59 +0400 Subject: [PATCH] Update Status view --- .../Equipment-Views/Status/view.json | 690 +++--------------- 1 file changed, 121 insertions(+), 569 deletions(-) diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Equipment-Views/Status/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Equipment-Views/Status/view.json index 87d71c8..0574fc2 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Equipment-Views/Status/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Equipment-Views/Status/view.json @@ -1,21 +1,15 @@ { "custom": { - "alarm_message": null, "covert_mode": true, - "disconnected": false, + "disconnected": true, "display_icon": true, - "error": false, - "isMatch": 0, "plc": "value", "priority": 0, - "priority_string": "No active alarms", + "priority_string": "No Active Alarms", "running": false, - "searchId": "value", - "show_error": false, - "show_running": true, - "state": 5, - "state_string": "Unknown", - "visible_status": false + "searchId": "PLC01", + "state": 0, + "state_string": "Off(Inactive)" }, "params": { "directionLeft": false, @@ -35,9 +29,6 @@ ] }, "propConfig": { - "custom.alarm_message": { - "persistent": true - }, "custom.covert_mode": { "binding": { "config": { @@ -45,7 +36,7 @@ }, "transforms": [ { - "expression": "case(\t{value},\r\n\t\t0, {session.custom.alarm_filter.show_running},\r\n\t\t1, True,\r\n\t\t2, True,\r\n\t\t3, {session.custom.alarm_filter.show_low_alarm} || {session.custom.alarm_filter.show_running},\r\n\t\t4, {session.custom.alarm_filter.show_diagnostic} || {session.custom.alarm_filter.show_running},\r\n\t\t5, {session.custom.alarm_filter.show_running},\r\n\t\tFalse)", + "expression": "case(\t{value},\r\n\t\t0, True,\r\n\t\t1, True,\r\n\t\t2, {session.custom.alarm_filter.show_running},\r\n\t\t3, {session.custom.alarm_filter.show_diagnostic} || {session.custom.alarm_filter.show_running},\r\n\t\t4, True,\r\n\t\t5, True,\r\n\t\t6, {session.custom.alarm_filter.show_diagnostic} || {session.custom.alarm_filter.show_running},\r\n\t\t7, True,\r\n\t\t8, True,\r\n\t\t9, True,\r\n\t\t13, True,\r\n\t\t14, True,\r\n\t\tFalse )", "type": "expression" } ], @@ -59,14 +50,14 @@ "fallbackDelay": 2.5, "mode": "indirect", "references": { - "fc": "{session.custom.fc}", - "plc": "{view.custom.plc}" + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" }, - "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{plc}/DCN" + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/STATE" }, "transforms": [ { - "expression": "if(isNull({value}), False, {value})", + "expression": "!isGood({value})", "type": "expression" } ], @@ -77,31 +68,7 @@ "custom.display_icon": { "binding": { "config": { - "expression": "{this.custom.covert_mode}||{this.custom.isMatch}\u003e0" - }, - "type": "expr" - }, - "persistent": true - }, - "custom.error": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "0 \u003c {value} \u0026\u0026 {value} \u003c 5", - "type": "expression" - } - ], - "type": "property" - }, - "persistent": true - }, - "custom.isMatch": { - "binding": { - "config": { - "expression": "if({view.params.tagProps[0]}\u003d\"value\",0,\nif({this.custom.searchId}\u003d{view.params.tagProps[0]},100,0))" + "expression": "{this.custom.covert_mode} \u003e 0" }, "type": "expr" }, @@ -132,21 +99,53 @@ "fallback": 0, "inputType": "scalar", "mappings": [ + { + "input": 0, + "output": 0 + }, { "input": 1, - "output": 4 + "output": 0 }, { "input": 2, - "output": 3 + "output": 0 }, { "input": 3, - "output": 2 + "output": 4 }, { "input": 4, "output": 1 + }, + { + "input": 5, + "output": 1 + }, + { + "input": 6, + "output": 4 + }, + { + "input": 7, + "output": 1 + }, + { + "input": 8, + "output": 1 + }, + { + "input": 9, + "output": 1 + }, + { + "input": 13, + "output": 1 + }, + { + "input": 14, + "output": 2 } ], "outputType": "scalar", @@ -160,41 +159,79 @@ "custom.priority_string": { "binding": { "config": { - "expression": "case({view.custom.state},\r\n1, \"High\",\r\n2, \"Medium\",\r\n3, \"Low\",\r\n4, \"Diagnostic\",\r\n5, \"No active alarms\",\r\n\"Unknown\")" + "path": "view.custom.state" }, - "type": "expr" + "transforms": [ + { + "fallback": "Unknown", + "inputType": "scalar", + "mappings": [ + { + "input": 0, + "output": "No Active Alarms" + }, + { + "input": 1, + "output": "No Active Alarms" + }, + { + "input": 2, + "output": "No Active Alarms" + }, + { + "input": 3, + "output": "Diagnostic" + }, + { + "input": 4, + "output": "High" + }, + { + "input": 5, + "output": "High" + }, + { + "input": 6, + "output": "Diagnostic" + }, + { + "input": 7, + "output": "High" + }, + { + "input": 8, + "output": "High" + }, + { + "input": 9, + "output": "High" + }, + { + "input": 13, + "output": "High" + }, + { + "input": 14, + "output": "Medium" + } + ], + "outputType": "scalar", + "type": "map" + } + ], + "type": "property" }, "persistent": true }, "custom.running": { "binding": { "config": { - "expression": "{view.custom.running_status} \u003d 3" + "expression": "{view.custom.state} \u003d 1" }, "type": "expr" }, "persistent": true }, - "custom.running_status": { - "binding": { - "config": { - "fallbackDelay": 2.5, - "mode": "indirect", - "references": { - "0": "{view.params.tagProps[0]}", - "fc": "{session.custom.fc}" - }, - "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/STATE" - }, - "transforms": [ - { - "expression": "coalesce({value},{view.params.forceRunningStatus},0)", - "type": "expression" - } - ], - "type": "tag" - } - }, "custom.searchId": { "binding": { "config": { @@ -204,36 +241,6 @@ }, "persistent": true }, - "custom.show_error": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "case(\t{value},\r\n\t\t1, True,\r\n\t\t2, True,\r\n\t\t3, {session.custom.alarm_filter.show_low_alarm} || {view.custom.isMatch}\u003e0,\r\n\t\t4, {session.custom.alarm_filter.show_diagnostic} || {view.custom.isMatch}\u003e0,\r\n\t\tFalse)", - "type": "expression" - } - ], - "type": "property" - }, - "persistent": true - }, - "custom.show_running": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "case(\t{value},\r\n\t\t1, False,\r\n\t\t2, False,\r\n\t\t{session.custom.alarm_filter.show_running}\r\n\t\t)", - "type": "expression" - } - ], - "type": "property" - }, - "persistent": true - }, "custom.state": { "binding": { "config": { @@ -243,40 +250,12 @@ "0": "{view.params.tagProps[0]}", "fc": "{session.custom.fc}" }, - "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/ALARMST" + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/STATE" }, "transforms": [ { "expression": "coalesce({value},{view.params.forceFaultStatus},0)", "type": "expression" - }, - { - "fallback": null, - "inputType": "scalar", - "mappings": [ - { - "input": 4, - "output": 1 - }, - { - "input": 3, - "output": 2 - }, - { - "input": 2, - "output": 3 - }, - { - "input": 1, - "output": 4 - }, - { - "input": 0, - "output": 5 - } - ], - "outputType": "scalar", - "type": "map" } ], "type": "tag" @@ -286,16 +265,7 @@ "custom.state_string": { "binding": { "config": { - "expression": "case({view.custom.running_status},\r\n1, \"Faulted\",\r\n2, \"Stopped\",\r\n3, \"Running\",\r\n\"Unknown\")" - }, - "type": "expr" - }, - "persistent": true - }, - "custom.visible_status": { - "binding": { - "config": { - "expression": "{view.custom.state} !\u003d 5" + "expression": "case({view.custom.state},\r\n0, \"Off(Inactive)\",\r\n1, \"Enabled, Not Running\",\r\n2, \"Running\",\r\n3, \"Energy Management\",\r\n4, \"Jammed\",\r\n5, \"Full\",\r\n6, \"Maintenance Mode\",\r\n7, \"VFD Faulted\",\r\n8, \"Communication Fault\",\r\n9, \"E-Stop\",\r\n13,\"Encoder_Fault\",\r\n14,\"Stopped\",\r\n\"Unknown\")" }, "type": "expr" }, @@ -326,265 +296,6 @@ }, "root": { "children": [ - { - "meta": { - "name": "ErrorStatus", - "tooltip": { - "style": { - "fontSize": 16 - } - } - }, - "position": { - "grow": 1 - }, - "propConfig": { - "meta.visible": { - "binding": { - "config": { - "expression": "{view.custom.display_icon} \u0026\u0026 {view.custom.error} \u0026! {view.params.directionLeft}" - }, - "type": "expr" - } - }, - "position.display": { - "binding": { - "config": { - "expression": "{view.custom.display_icon} \u0026\u0026 {view.custom.error} \u0026! {view.params.directionLeft} \u0026\u0026 {view.custom.show_error}" - }, - "type": "expr" - } - }, - "props.elements[0].fill.paint": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "if({session.custom.colours}[\"state\"+{value}] \u003d null, \r\n{session.custom.colours}[\"Fallback\"],\r\n{session.custom.colours}[\"state\"+{value}])", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[1].fill.paint": { - "binding": { - "config": { - "path": "view.custom.running_status" - }, - "transforms": [ - { - "expression": "case(\t{value}, \r\n\t\t1, {session.custom.colours.state0},\r\n\t\t2, {session.custom.colours.state0},\r\n\t\t3, {session.custom.colours.state5},\r\n\t\t\u0027#000000\u0027\r\n\t)", - "type": "expression" - }, - { - "expression": "if({session.custom.alarm_filter.show_running},{value},{value}+\u002700\u0027)", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[1].stroke.width": { - "binding": { - "config": { - "expression": "if({session.custom.alarm_filter.show_running},2,0)" - }, - "type": "expr" - } - }, - "props.elements[2].fill": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "if({session.custom.colours.colour_impaired}, \r\n\tcase(\t{value},\r\n\t\t\t1,\u0027#FFFFFF\u0027,\r\n\t\t\t2,\u0027#FFFFFF\u0027,\r\n\t\t\t3,\u0027#000000\u0027,\r\n\t\t\t4,\u0027#000000\u0027,\r\n\t\t\t\u0027#000000\u0027),\r\n\tcase(\t{value},\r\n\t\t\t1,\u0027#FFFFFF\u0027,\r\n\t\t\t2,\u0027#000000\u0027,\r\n\t\t\t3,\u0027#000000\u0027,\r\n\t\t\t4,\u0027#FFFFFF\u0027,\r\n\t\t\t\u0027#000000\u0027)\r\n\t)", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[2].text": { - "binding": { - "config": { - "path": "view.custom.priority" - }, - "type": "property" - } - } - }, - "props": { - "elements": [ - { - "d": "M 32 2 L 62 32 L 32 62 L 2 32 Z", - "fill": {}, - "name": "path", - "stroke": { - "paint": "#000000", - "width": 2 - }, - "type": "path" - }, - { - "d": "M 38 2 L 57.96 2 L 57.96 2 L 88 32 L 57.96 62 L 57.96 62 L 38 62 L 67.96 32 Z", - "fill": {}, - "name": "path", - "stroke": { - "paint": "#000000" - }, - "type": "path" - }, - { - "style": { - "classes": "", - "fontSize": 42, - "fontWeight": "bolder" - }, - "type": "text", - "x": 20, - "y": 44.5 - } - ], - "style": { - "overflow": "hidden" - }, - "viewBox": "0.5 0.5 89 64" - }, - "type": "ia.shapes.svg" - }, - { - "meta": { - "name": "ErrorStatus_Left" - }, - "position": { - "grow": 1 - }, - "propConfig": { - "meta.visible": { - "binding": { - "config": { - "expression": "{view.custom.display_icon} \u0026\u0026 {view.custom.error} \u0026\u0026 {view.params.directionLeft}" - }, - "type": "expr" - } - }, - "position.display": { - "binding": { - "config": { - "expression": "{view.custom.display_icon} \u0026\u0026 {view.custom.error} \u0026\u0026 {view.params.directionLeft} \u0026\u0026 {view.custom.show_error}" - }, - "type": "expr" - } - }, - "props.elements[0].fill.paint": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "case({value},\r\n0,{session.custom.colours.state0},\r\n1,{session.custom.colours.state1},\r\n2,{session.custom.colours.state2},\r\n3,{session.custom.colours.state3},\r\n4,{session.custom.colours.state4},\r\n5,{session.custom.colours.state5},\r\n6,{session.custom.colours.state6},\r\n{session.custom.colours.fallback}\r\n)", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[1].fill.paint": { - "binding": { - "config": { - "path": "view.custom.running_status" - }, - "transforms": [ - { - "expression": "case(\t{value}, \r\n\t\t1, {session.custom.colours.state0},\r\n\t\t2, {session.custom.colours.state0},\r\n\t\t3, {session.custom.colours.state5},\r\n\t\t\u0027#000000\u0027\r\n\t)", - "type": "expression" - }, - { - "expression": "if({session.custom.alarm_filter.show_running},{value},{value}+\u002700\u0027)", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[1].stroke.width": { - "binding": { - "config": { - "expression": "if({session.custom.alarm_filter.show_running},2,0)" - }, - "type": "expr" - } - }, - "props.elements[2].fill": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "if({session.custom.colours.colour_impaired}, \r\n\tcase(\t{value},\r\n\t\t\t1,\u0027#FFFFFF\u0027,\r\n\t\t\t2,\u0027#FFFFFF\u0027,\r\n\t\t\t3,\u0027#000000\u0027,\r\n\t\t\t4,\u0027#000000\u0027,\r\n\t\t\t\u0027#000000\u0027),\r\n\tcase(\t{value},\r\n\t\t\t1,\u0027#FFFFFF\u0027,\r\n\t\t\t2,\u0027#000000\u0027,\r\n\t\t\t3,\u0027#000000\u0027,\r\n\t\t\t4,\u0027#FFFFFF\u0027,\r\n\t\t\t\u0027#000000\u0027)\r\n\t)", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[2].text": { - "binding": { - "config": { - "path": "view.custom.priority" - }, - "type": "property" - } - } - }, - "props": { - "elements": [ - { - "d": "M 56,2 C 66,12 76,22 86,32 76,42 66,52 56,62 46,52 36,42 26,32 36,22 46,12 56,2 Z", - "fill": {}, - "name": "path", - "stroke": { - "paint": "#000000", - "width": 2 - }, - "type": "path" - }, - { - "d": "M 50,2 C 43.346667,2 36.693333,2 30.04,2 20.026667,12 10.013333,22 0,32 10.013333,42 20.026667,52 30.04,62 36.693333,62 43.346667,62 50,62 40.013333,52 30.026667,42 20.04,32 30.026667,22 40.013333,12 50,2 Z", - "fill": {}, - "name": "path", - "stroke": { - "paint": "#000000" - }, - "type": "path" - }, - { - "style": { - "classes": "", - "fontSize": 42, - "fontWeight": "bolder", - "textOrientation": "upright", - "writingMode": "horizontal-tb" - }, - "type": "text", - "x": 44.5, - "y": 44.5 - } - ], - "style": { - "overflow": "hidden" - }, - "viewBox": "0.5 0.5 89 64" - }, - "type": "ia.shapes.svg" - }, { "meta": { "name": "RunningStatus" @@ -596,7 +307,7 @@ "position.display": { "binding": { "config": { - "expression": "if((({view.custom.display_icon} \u0026\u0026 !{view.custom.error}) || ({view.custom.show_running} \u0026! {view.custom.show_error})) \u0026! {view.params.directionLeft},True, False)" + "expression": "if(({view.custom.display_icon} || ({view.custom.show_running} \u0026\u0026 !{view.custom.show_error})) \u0026\u0026 !{view.params.directionLeft}, True, False)" }, "type": "expr" } @@ -618,15 +329,9 @@ "props.elements[0].fill.paint": { "binding": { "config": { - "path": "view.custom.running_status" + "expression": "if(\r\n {view.custom.disconnected},\r\n \"#000000\",\r\n switch(\r\n toInt({view.custom.state}),\r\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13, 14,\r\n \"#c2c2c2\", \"#c9fcc0\", \"#00ff11\", \"#00ffd0\", \"#ff8c00\",\r\n \"#0008ff\", \"#946446\", \"#ff0000\", \"#ff0000\", \"#ff0000\", \"#ff8c00\", \"#c2c2c2\",\r\n \"#fff700\"\r\n )\r\n)\r\n" }, - "transforms": [ - { - "expression": "case(\t{value}, \r\n\t\t1, {session.custom.colours.state0},\r\n\t\t2, {session.custom.colours.state0},\r\n\t\t3, {session.custom.colours.state5},\r\n\t\t\u0027#000000\u0027\r\n\t)\r\n\t\t\r\n", - "type": "expression" - } - ], - "type": "property" + "type": "expr" } } }, @@ -649,71 +354,6 @@ "viewBox": "-1.5 -1.5 73 63" }, "type": "ia.shapes.svg" - }, - { - "meta": { - "name": "RunningStatus_Left" - }, - "position": { - "grow": 1 - }, - "propConfig": { - "position.display": { - "binding": { - "config": { - "expression": "if((({view.custom.display_icon} \u0026\u0026 !{view.custom.error}) || ({view.custom.show_running} \u0026! {view.custom.show_error})) \u0026\u0026 {view.params.directionLeft},True, False)" - }, - "type": "expr" - } - }, - "position.rotate.angle": { - "binding": { - "config": { - "path": "view.params.directionLeft" - }, - "transforms": [ - { - "expression": "if({value}, \u0027180deg\u0027, \u00270deg\u0027)", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.elements[0].fill.paint": { - "binding": { - "config": { - "path": "view.custom.running_status" - }, - "transforms": [ - { - "expression": "case(\t{value}, \r\n\t\t1, {session.custom.colours.state0},\r\n\t\t2, {session.custom.colours.state0},\r\n\t\t3, {session.custom.colours.state5},\r\n\t\t\u0027#000000\u0027\r\n\t)\r\n\t\t\r\n", - "type": "expression" - } - ], - "type": "property" - } - } - }, - "props": { - "elements": [ - { - "d": "M 70,60 C 56.666667,60 43.333333,60 30,60 20,50 10,40 0,30 10,20 20,10 30,0 43.333333,0 56.666667,0 70,0 60,10 50,20 40,30 50,40 60,50 70,60 Z", - "fill": {}, - "name": "path", - "stroke": { - "paint": "#4c4c4c", - "width": "2" - }, - "type": "path" - } - ], - "style": { - "overflow": "hidden" - }, - "viewBox": "-0.5 -0.5 71 61" - }, - "type": "ia.shapes.svg" } ], "events": { @@ -751,20 +391,6 @@ } }, "propConfig": { - "meta.tooltip.style.backgroundColor": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "case({value},\r\n0,{session.custom.colours.state0},\r\n1,{session.custom.colours.state1},\r\n2,{session.custom.colours.state2},\r\n3,{session.custom.colours.state3},\r\n4,{session.custom.colours.state4},\r\n5,{session.custom.colours.state5},\r\n6,{session.custom.colours.state6},\r\n{session.custom.colours.Fallback}\r\n)", - "type": "expression" - } - ], - "type": "property" - } - }, "meta.tooltip.style.classes": { "binding": { "config": { @@ -777,19 +403,19 @@ "mappings": [ { "input": 1, - "output": "Alarms-Styles/Diagnostic" + "output": "Alarms-Styles/High" }, { "input": 2, - "output": "Alarms-Styles/Low" - }, - { - "input": 3, "output": "Alarms-Styles/Medium" }, + { + "input": 3, + "output": "Alarms-Styles/Low" + }, { "input": 4, - "output": "Alarms-Styles/High" + "output": "Alarms-Styles/Diagnostic" } ], "outputType": "style-list", @@ -799,24 +425,10 @@ "type": "expr" } }, - "meta.tooltip.style.color": { - "binding": { - "config": { - "path": "view.custom.state" - }, - "transforms": [ - { - "expression": "if({session.custom.colours.colour_impaired},\r\n\t\u0027#000000\u0027,\r\n\tcase(\t{value},\r\n\t\t\t1,\u0027#FFFFFF\u0027,\r\n\t\t\t2,\u0027#000000\u0027,\r\n\t\t\t3,\u0027#000000\u0027,\r\n\t\t\t4,\u0027#FFFFFF\u0027,\r\n\t\t\t5,\u0027#FFFFFF\u0027,\r\n\t\t\t\u0027#000000\u0027)\r\n\t)", - "type": "expression" - } - ], - "type": "property" - } - }, "meta.tooltip.text": { "binding": { "config": { - "expression": "if({view.custom.disconnected} \u003d False,\n\tif(isNull({view.custom.alarm_message}),\n\t\"Source Id: \" + {view.params.tagProps[0]} +\n\t\", Priority: \" + {view.custom.priority_string} +\n\t\", State: \" + {view.custom.state_string},\n\t\"Source Id: \" + {view.params.tagProps[0]} +\n\t\", Alarm: \" + {view.custom.alarm_message} +\n\t\", Priority: \" + {view.custom.priority_string} +\n\t\", State: \" + {view.custom.state_string}),\n\"Source Id: \" +{view.params.tagProps[0]} + \", Priority: Unknown, State: Unknown\")" + "expression": "if(\n {view.custom.disconnected} \u003d false,\n \"Source Id: \" + {view.params.tagProps[0]} + \", Priority: \" + {view.custom.priority_string} + \", State: \" + {view.custom.state_string},\n \"Device Disconnected\"\n)\n" }, "type": "expr" } @@ -834,6 +446,7 @@ "config": { "path": "view.custom.disconnected" }, + "enabled": false, "transforms": [ { "fallback": "", @@ -854,74 +467,13 @@ ], "type": "property" } - }, - "props.style.classes": { - "binding": { - "config": { - "expression": "if({session.custom.colours.colour_impaired} \u003d True \u0026\u0026 {view.custom.isMatch} \u003e 0,\r\n{view.custom.state} + 100 + {view.custom.isMatch},\r\n{view.custom.state} + {view.custom.isMatch})" - }, - "transforms": [ - { - "fallback": "", - "inputType": "scalar", - "mappings": [ - { - "input": 101, - "output": "State-Styles/State101" - }, - { - "input": 102, - "output": "State-Styles/State102" - }, - { - "input": 103, - "output": "State-Styles/State103" - }, - { - "input": 104, - "output": "State-Styles/State104" - }, - { - "input": 105, - "output": "State-Styles/State105" - }, - { - "input": 106, - "output": "State-Styles/State106" - }, - { - "input": 201, - "output": "State-Styles/State201" - }, - { - "input": 202, - "output": "State-Styles/State202" - }, - { - "input": 203, - "output": "State-Styles/State203" - }, - { - "input": 204, - "output": "State-Styles/State204" - }, - { - "input": 205, - "output": "State-Styles/State205" - } - ], - "outputType": "style-list", - "type": "map" - } - ], - "type": "expr" - } } }, "props": { "justify": "center", "style": { "borderColor": "#FF0000", + "borderStyle": "none", "borderWidth": "2px", "cursor": "pointer" }