Files
Stream_PHX_A7/Gateways/FE/projects/.resources/d25f90cab47c7a3c5cbda56770649b8f753e3704889f26fb33578362ee2b6896

1019 lines
39 KiB
Plaintext

{
"custom": {
"JA01": "/AC Primary Power Fault",
"JA02": "/AC Secondary Power Fault",
"JA03": "/DC Power Supply 1 Fault",
"JA04": "/DC Power Supply 2 Fault",
"PLC_A_Fail": false,
"PLC_A_Online": false,
"PLC_B_Fail": false,
"PLC_B_Online": false,
"RedundancySTS": "/Hot Standby Status",
"TAH": "/High Temperature",
"XA": "/Panel Intrusion",
"allTags": [
{
"dataType": "Boolean",
"instancePosition": {},
"instanceStyle": {
"classes": ""
},
"name": "Chiller Quantity Fail"
},
{
"dataType": "Boolean",
"instancePosition": {},
"instanceStyle": {
"classes": ""
},
"name": "DP Fail"
},
{
"dataType": "Boolean",
"instancePosition": {},
"instanceStyle": {
"classes": ""
},
"name": "DP Low"
},
{
"dataType": "Boolean",
"instancePosition": {},
"instanceStyle": {
"classes": ""
},
"name": "Supply Temp Fail"
}
],
"inTagPath": "[Ignition_Common_IO_Gtwy]GAL1261/SATB1_GAL1261_PNL24"
},
"params": {
"embedded": false,
"objectName": "DiscreteIn",
"tagPath": "[Ignition_Common_IO_Gtwy]GAL1261/SATB1_GAL1261_PNL24"
},
"propConfig": {
"custom.JA01": {
"persistent": true
},
"custom.JA02": {
"persistent": true
},
"custom.JA03": {
"persistent": true
},
"custom.JA04": {
"persistent": true
},
"custom.PLC_A_Fail": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "indirect",
"references": {
"tagPath": "{view.params.tagPath}"
},
"tagPath": "{tagPath}/Hot Standby Status/PLC A Fail"
},
"type": "tag"
},
"persistent": true
},
"custom.PLC_A_Online": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "indirect",
"references": {
"tagPath": "{view.params.tagPath}"
},
"tagPath": "{tagPath}/Hot Standby Status/PLC A Online"
},
"transforms": [
{
"expression": "!{value}",
"type": "expression"
}
],
"type": "tag"
},
"persistent": true
},
"custom.PLC_B_Fail": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "indirect",
"references": {
"tagPath": "{view.params.tagPath}"
},
"tagPath": "{tagPath}/Hot Standby Status/PLC B Fail"
},
"type": "tag"
},
"persistent": true
},
"custom.PLC_B_Online": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "indirect",
"references": {
"tagPath": "{view.params.tagPath}"
},
"tagPath": "{tagPath}/Hot Standby Status/PLC B Online"
},
"transforms": [
{
"expression": "!{value}",
"type": "expression"
}
],
"type": "tag"
},
"persistent": true
},
"custom.RedundancySTS": {
"persistent": true
},
"custom.TAH": {
"persistent": true
},
"custom.XA": {
"persistent": true
},
"custom.allTags": {
"binding": {
"config": {
"struct": {
"tagPath": "{view.params.tagPath}"
},
"waitOnAll": true
},
"enabled": false,
"transforms": [
{
"code": "\toutput \u003d []\n\t\n\t# Simulate fetching tag configurations and sorting by name\n\tnodes \u003d system.tag.getConfiguration(value[\u0027tagPath\u0027], True)\n\tfor item in nodes:\n\t if \u0027tags\u0027 in item:\n\t \tsortedTags \u003d sorted(item[\u0027tags\u0027], key\u003dlambda x: x[\u0027name\u0027])\n\t \tsortedTags \u003d sorted(sortedTags, key\u003dlambda x: x.get(\u0027engUnit\u0027, \u0027misc\u0027) if x.get(\u0027engUnit\u0027, \u0027misc\u0027) !\u003d \"\" else \u0027misc\u0027)\n\t \t\n for tagConfig in sortedTags:\n if str(tagConfig[\u0027tagType\u0027]) \u003d\u003d \u0027AtomicTag\u0027:\n name \u003d tagConfig.get(\"name\", \"\")\n dataType \u003d tagConfig.get(\"dataType\", \"\")\n tagPath \u003d value[\u0027tagPath\u0027] + \u0027/\u0027 + name\n instance \u003d {\n \"instanceStyle\": {\n \"classes\": \"\"\n },\n \"instancePosition\": {},\n \"name\": name,\n \"dataType\": dataType\n }\n # Group based on name containing \u0027Power\u0027, \u0027Current\u0027, or \u0027Voltage\u0027\n output.append(instance)\n\t\n\t# Return or process the sorted output\n\treturn output",
"type": "script"
}
],
"type": "expr-struct"
},
"persistent": true
},
"custom.inTagPath": {
"binding": {
"config": {
"path": "view.params.tagPath"
},
"type": "property"
},
"persistent": true
},
"params.embedded": {
"paramDirection": "input",
"persistent": true
},
"params.objectName": {
"paramDirection": "input",
"persistent": true
},
"params.tagPath": {
"paramDirection": "input",
"persistent": true
}
},
"props": {},
"root": {
"children": [
{
"children": [
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + self.view.custom.JA01\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "DiscreteIn",
"tagPath": "{view.custom.inTagPath}{view.custom.JA01}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_1"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"expression": "tag({view.custom.inTagPath}+{view.custom.JA01}+\"/Alarms/Alarm Target Disagree\") || tag({view.custom.inTagPath}+{view.custom.JA01}+\"/Alarms/Alarm IO Fail\")"
},
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "var(--state-faulted)"
},
{
"input": false,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "expr"
}
},
"props.textStyle.color": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "expression",
"tagPath": "{view.custom.inTagPath} + {view.custom.JA01}+\"/VAL\""
},
"enabled": false,
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": false,
"output": "white"
},
{
"input": true,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "tag"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "AC Primary Power Failure",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + self.view.custom.JA02\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "DiscreteIn",
"tagPath": "{view.custom.inTagPath}{view.custom.JA02}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_0"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"expression": "tag({view.custom.inTagPath}+{view.custom.JA02}+\"/Alarms/Alarm Target Disagree\") || tag({view.custom.inTagPath}+{view.custom.JA02}+\"/Alarms/Alarm IO Fail\")"
},
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "var(--state-faulted)"
},
{
"input": false,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "expr"
}
},
"props.textStyle.color": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "expression",
"tagPath": "{view.custom.inTagPath} + {view.custom.JA02}+\"/VAL\""
},
"enabled": false,
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": false,
"output": "white"
},
{
"input": true,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "tag"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "AC Secondary Power Failure",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + self.view.custom.JA03\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "DiscreteIn",
"tagPath": "{view.custom.inTagPath}{view.custom.JA03}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_2"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"expression": "tag({view.custom.inTagPath}+{view.custom.JA03}+\"/Alarms/Alarm Target Disagree\") || tag({view.custom.inTagPath}+{view.custom.JA03}+\"/Alarms/Alarm IO Fail\")"
},
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "var(--state-faulted)"
},
{
"input": false,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "expr"
}
},
"props.textStyle.color": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "expression",
"tagPath": "{view.custom.inTagPath} + {view.custom.JA03}+\"/VAL\""
},
"enabled": false,
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": false,
"output": "white"
},
{
"input": true,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "tag"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "DC Power Supply 1 Fault",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + self.view.custom.JA04\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "DiscreteIn",
"tagPath": "{view.custom.inTagPath}{view.custom.JA04}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_3"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"expression": "tag({view.custom.inTagPath}+{view.custom.JA04}+\"/Alarms/Alarm Target Disagree\") || tag({view.custom.inTagPath}+{view.custom.JA04}+\"/Alarms/Alarm IO Fail\")"
},
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "var(--state-faulted)"
},
{
"input": false,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "expr"
}
},
"props.textStyle.color": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "expression",
"tagPath": "{view.custom.inTagPath} + {view.custom.JA04}+\"/VAL\""
},
"enabled": false,
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": false,
"output": "white"
},
{
"input": true,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "tag"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "DC Power Supply 2 Fault",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + \"/AC Primary Power Fault\"\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "DiscreteIn",
"tagPath": "{view.custom.inTagPath}{view.custom.TAH}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_4"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"expression": "tag({view.custom.inTagPath}+{view.custom.TAH}+\"/Alarms/Alarm Target Disagree\") || tag({view.custom.inTagPath}+{view.custom.TAH}+\"/Alarms/Alarm IO Fail\")"
},
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "var(--state-faulted)"
},
{
"input": false,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "expr"
}
},
"props.textStyle.color": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "expression",
"tagPath": "{view.custom.inTagPath} + {view.custom.TAH}+\"/VAL\""
},
"enabled": false,
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": false,
"output": "white"
},
{
"input": true,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "tag"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "Temperature High",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + \"/AC Primary Power Fault\"\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "DiscreteIn",
"tagPath": "{view.custom.inTagPath}{view.custom.XA}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_5"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"expression": "tag({view.custom.inTagPath}+{view.custom.XA}+\"/Alarms/Alarm Target Disagree\") || tag({view.custom.inTagPath}+{view.custom.XA}+\"/Alarms/Alarm IO Fail\")"
},
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "var(--state-faulted)"
},
{
"input": false,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "expr"
}
},
"props.textStyle.color": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "expression",
"tagPath": "{view.custom.inTagPath} + {view.custom.XA}+\"/VAL\""
},
"enabled": false,
"transforms": [
{
"fallback": "purple",
"inputType": "scalar",
"mappings": [
{
"input": false,
"output": "white"
},
{
"input": true,
"output": "var(--state-standby)"
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "tag"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "Panel Intrusion",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"events": {
"dom": {
"onClick": [
{
"config": {
"script": "\ttagPath \u003d self.view.params.tagPath + \"/AC Primary Power Fault\"\n\tobjectName \u003d self.view.params.objectName\n\tif(self.view.params.embedded \u003d\u003d True):\n\t\tpageId \u003d self.page.props.pageId\n\t\tsystem.perspective.print(\u0027pageId: {}\u0027.format(pageId))\n\t\n\t\t\n\t\tutils.nav.openEQPopup(objectName, tagPath)\n\telse:\n\t\tpayload\u003d{\n\t\t\t\u0027objectName\u0027: objectName,\n\t\t\t\u0027tagPath\u0027: tagPath,\n\t\t\t\u0027modal\u0027: False,\n\t\t\t\u0027resizable\u0027: True,\n\t\t\t\u0027draggable\u0027: True,\n\t\t\t\u0027position\u0027: {\n\t#\t\t\t\u0027left\u0027:\u00270\u0027,\n\t#\t\t\t\u0027top\u0027:\u00270\u0027,\n\t\t\t\u0027width\u0027: \u00271000px\u0027,\n\t\t\t\u0027height\u0027: \u0027800px\u0027\n\t\t\t}\n\t\t}\n\t\tutils.nav.eqPopupMsg(self, payload)\n\t\n\t"
},
"enabled": false,
"scope": "G",
"type": "script"
},
{
"config": {
"draggable": true,
"id": "sII9XbeP",
"modal": false,
"overlayDismiss": false,
"position": {
"height": 800,
"width": 1000
},
"positionType": "exact",
"resizable": true,
"showCloseIcon": false,
"type": "open",
"viewParams": {
"objectName": "Redundancy",
"tagPath": "{view.custom.inTagPath}{view.custom.RedundancySTS}"
},
"viewPath": "Library/Templates/Base",
"viewportBound": false
},
"scope": "C",
"type": "popup"
}
]
}
},
"meta": {
"name": "Label_6"
},
"position": {
"basis": "112px"
},
"propConfig": {
"props.style.backgroundColor": {
"binding": {
"config": {
"struct": {
"PLC_A": "{view.custom.PLC_A_Fail}",
"PLC_A_On": "{view.custom.PLC_A_Online}",
"PLC_B": "{view.custom.PLC_B_Fail}",
"PLC_B_On": "{view.custom.PLC_B_Online}"
},
"waitOnAll": true
},
"transforms": [
{
"code": "\tif value[\u0027PLC_A\u0027] or value[\u0027PLC_B\u0027] or value[\u0027PLC_A_On\u0027] or value[\u0027PLC_B_On\u0027]:\n\t\treturn \u0027var(--elec-on)\u0027\n\telse:\n\t\treturn \u0027var(--state-standby)\u0027",
"type": "script"
}
],
"type": "expr-struct"
}
}
},
"props": {
"style": {
"borderBottomLeftRadius": 4,
"borderBottomRightRadius": 4,
"borderTopLeftRadius": 4,
"borderTopRightRadius": 4,
"classes": "containers/HoverOver",
"outlineStyle": "none"
},
"text": "Redundancy Status",
"textStyle": {
"color": "white",
"textAlign": "center"
}
},
"type": "ia.display.label"
}
],
"meta": {
"name": "FlexContainer"
},
"position": {
"basis": "136px"
},
"props": {
"justify": "space-evenly",
"style": {
"gap": 5,
"overflow": "visible",
"padding": 5
},
"wrap": "wrap"
},
"type": "ia.container.flex"
}
],
"meta": {
"name": "root"
},
"props": {
"direction": "column",
"style": {
"classes": "containers/padded-container"
}
},
"type": "ia.container.flex"
}
}