{ "custom": {}, "params": { "tagProps": [ "\"\"", 1, "", "value", "value", "value", "value", "value", "value", "value" ] }, "propConfig": { "params.tagProps": { "paramDirection": "inout", "persistent": true }, "params.tagProps[0]": { "paramDirection": "input", "persistent": true }, "params.tagProps[1]": { "paramDirection": "input", "persistent": true }, "params.tagProps[2]": { "paramDirection": "input", "persistent": true }, "params.tagProps[3]": { "paramDirection": "input", "persistent": true }, "params.tagProps[4]": { "paramDirection": "input", "persistent": true }, "params.tagProps[5]": { "paramDirection": "input", "persistent": true }, "params.tagProps[6]": { "paramDirection": "input", "persistent": true }, "params.tagProps[7]": { "paramDirection": "input", "persistent": true }, "params.tagProps[8]": { "paramDirection": "input", "persistent": true }, "params.tagProps[9]": { "paramDirection": "input", "persistent": true } }, "props": { "defaultSize": { "height": 40, "width": 40 }, "styles": "value" }, "root": { "children": [ { "meta": { "name": "Icon" }, "position": { "basis": "264px" }, "propConfig": { "meta.visible": { "binding": { "config": { "expression": "if({parent.custom.state}\u003d1||{parent.custom.covert_mode}||{parent.custom.isMatch}\u003e0,true,false)" }, "type": "expr" } }, "props.style.classes": { "binding": { "config": { "expression": "{parent.custom.ref_state}" }, "overlayOptOut": true, "transforms": [ { "fallback": "EmergencyStop-Styles/EstopDeactivated", "inputType": "scalar", "mappings": [ { "input": 1, "output": "State-Styles/State1" }, { "input": 2, "output": "State-Styles/State2" }, { "input": 3, "output": "State-Styles/State3" }, { "input": 4, "output": "State-Styles/State4" }, { "input": 5, "output": "State-Styles/State5" }, { "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" } ], "outputType": "style-list", "type": "map" } ], "type": "expr" } } }, "props": { "path": "material/location_on" }, "type": "ia.display.icon" } ], "events": { "dom": { "onDoubleClick": { "config": { "script": "\ttagProps \u003d self.view.params.tagProps\n\tsystem.perspective.openPopup(\"DevicePopUP\", \"PopUp-Views/Device/Information-Device\", params \u003d{\"tagProps\":tagProps},resizable \u003d 1)\n\tsystem.perspective.print(tagProps)" }, "scope": "G", "type": "script" } } }, "meta": { "name": "root" }, "propConfig": { "custom.alarmId": { "binding": { "config": { "path": "session.custom.deviceSearchId" }, "type": "property" } }, "custom.bit_position": { "binding": { "config": { "path": "view.params.tagProps[1]" }, "type": "property" } }, "custom.bit_value": { "binding": { "config": { "fallbackDelay": 2.5, "mode": "indirect", "references": { "0": "{view.params.tagProps[0]}" }, "tagPath": "{0}" }, "type": "tag" } }, "custom.covert_mode": { "binding": { "config": { "path": "session.custom.covert" }, "type": "property" } }, "custom.isMatch": { "binding": { "config": { "expression": "if({this.custom.alarmId} \u003d {this.custom.search_path},1,0)" }, "type": "expr" }, "onChange": { "enabled": null, "script": "\tif currentValue.value \u003d\u003d 1:\n\t\tself.session.custom.searchId \u003d \"\"" } }, "custom.priority": { "binding": { "config": { "expression": "{view.params.tagProps[0]}" }, "transforms": [ { "code": "\tif \"AlarmCritical\" in value:\n\t\treturn 1\n\telif \"AlarmHigh\" in value:\n\t\treturn 1\n\telif \"AlarmMedium\" in value:\n\t\treturn 2\n\telif \"AlarmLow\" in value:\n\t\treturn 3\n\telif \"AlarmInfo\" in value:\n\t\treturn 4\n\telse:\n\t\treturn 5", "type": "script" } ], "type": "expr" } }, "custom.ref_state": { "binding": { "config": { "expression": "if({this.custom.state}\u003d1 \u0026\u0026 {this.custom.isMatch} \u003d 1,{this.custom.priority}+100,\nif({this.custom.state}\u003d1 \u0026\u0026 {this.custom.isMatch} \u003d 0,{this.custom.priority},\nif({this.custom.state}\u003d0 \u0026\u0026 {this.custom.isMatch} \u003d 1,{this.custom.priority}+100,5)))\n\n" }, "type": "expr" } }, "custom.search_path": { "binding": { "config": { "expression": "{view.params.tagProps[0]}+\"/\"+{view.params.tagProps[1]}" }, "type": "expr" } }, "custom.state": { "binding": { "config": { "expression": "getBit({this.custom.bit_value},{this.custom.bit_position})" }, "type": "expr" } } }, "props": { "direction": "column" }, "type": "ia.container.flex" } }