diff --git a/.resources/18e228f24e0e118cc401a31debe09b161150fc6bf1a8947f8a15a5000d2e6d53 b/.resources/18e228f24e0e118cc401a31debe09b161150fc6bf1a8947f8a15a5000d2e6d53 new file mode 100644 index 00000000..0afc1a4b --- /dev/null +++ b/.resources/18e228f24e0e118cc401a31debe09b161150fc6bf1a8947f8a15a5000d2e6d53 @@ -0,0 +1,965 @@ +{ + "custom": { + "PLC_list": [ + "MCM01", + "MCM02" + ], + "start_color": "#C2C2C2", + "stop_color": "#C2C2C2" + }, + "params": { + "tagProps": [ + "System/MCM01/Station/SS_PB/UL14_1_SS1", + "value", + "value", + "value", + "value", + "value", + "value", + "value", + "value", + "value" + ] + }, + "propConfig": { + "custom.PLC_list": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]Configuration/PLC" + }, + "transforms": [ + { + "code": "\tdevices \u003d system.util.jsonDecode(value)\n\tplcList \u003d []\n\tfor k in devices.keys():\n\t\tplcList.append(k)\n\t\t\n\treturn(sorted(set(plcList)))\n", + "type": "script" + } + ], + "type": "tag" + }, + "persistent": true + }, + "custom.start_color": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Start/Color" + }, + "transforms": [ + { + "expression": "coalesce({value},0)", + "type": "expression" + }, + { + "fallback": "#000000", + "inputType": "scalar", + "mappings": [ + { + "input": 0, + "output": "#C2C2C2" + }, + { + "input": 1, + "output": "#FF0000" + }, + { + "input": 2, + "output": "#FFA500" + }, + { + "input": 3, + "output": "#0008FF" + }, + { + "input": 4, + "output": "#00FF00" + }, + { + "input": 5, + "output": "#FFF700" + }, + { + "input": 6, + "output": "#87CEEB" + }, + { + "input": 7, + "output": "#90EE90" + }, + { + "input": 8, + "output": "#964B00" + }, + { + "input": 9, + "output": "#FFFFFF" + }, + { + "input": 10, + "output": "#000000" + }, + { + "input": 11, + "output": "#8B0000" + }, + { + "input": 12, + "output": "#808080" + }, + { + "input": 13, + "output": "#8B8000" + }, + { + "input": 14, + "output": "#006400" + }, + { + "input": 15, + "output": "#FFFFC5" + }, + { + "input": 16, + "output": "#00008B" + }, + { + "input": 17, + "output": "#FF7276" + }, + { + "input": 18, + "output": "#556B2F" + }, + { + "input": 19, + "output": "#B43434" + }, + { + "input": 20, + "output": "#4682B4" + }, + { + "input": 21, + "output": "#FFD700" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + }, + "persistent": true + }, + "custom.stop_color": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Stop/Color" + }, + "transforms": [ + { + "expression": "coalesce({value},0)", + "type": "expression" + }, + { + "fallback": "#000000", + "inputType": "scalar", + "mappings": [ + { + "input": 0, + "output": "#C2C2C2" + }, + { + "input": 1, + "output": "#FF0000" + }, + { + "input": 2, + "output": "#FFA500" + }, + { + "input": 3, + "output": "#0008FF" + }, + { + "input": 4, + "output": "#00FF00" + }, + { + "input": 5, + "output": "#FFF700" + }, + { + "input": 6, + "output": "#87CEEB" + }, + { + "input": 7, + "output": "#90EE90" + }, + { + "input": 8, + "output": "#964B00" + }, + { + "input": 9, + "output": "#FFFFFF" + }, + { + "input": 10, + "output": "#000000" + }, + { + "input": 11, + "output": "#8B0000" + }, + { + "input": 12, + "output": "#808080" + }, + { + "input": 13, + "output": "#8B8000" + }, + { + "input": 14, + "output": "#006400" + }, + { + "input": 15, + "output": "#FFFFC5" + }, + { + "input": 16, + "output": "#00008B" + }, + { + "input": 17, + "output": "#FF7276" + }, + { + "input": 18, + "output": "#556B2F" + }, + { + "input": 19, + "output": "#B43434" + }, + { + "input": 20, + "output": "#4682B4" + }, + { + "input": 21, + "output": "#FFD700" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + }, + "persistent": true + }, + "params.tagProps": { + "paramDirection": "input", + "persistent": true + } + }, + "props": { + "defaultSize": { + "width": 400 + } + }, + "root": { + "children": [ + { + "children": [ + { + "children": [ + { + "meta": { + "name": "Label" + }, + "position": { + "grow": 1 + }, + "propConfig": { + "props.text": { + "binding": { + "config": { + "expression": "\u0027Source ID: \u0027 + {view.params.tagProps[0]}" + }, + "type": "expr" + } + } + }, + "props": { + "style": { + "color": "#FFFF", + "fontFamily": "Arial", + "fontSize": 14, + "fontWeight": "bold", + "paddingLeft": 10 + } + }, + "type": "ia.display.label" + }, + { + "events": { + "dom": { + "onClick": { + "config": { + "script": "\tsystem.perspective.closeDock(\u0027Docked-East-SS\u0027)\n\tself.getSibling(\"tabs\").props.currentTabIndex \u003d 0" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "Icon", + "tooltip": { + "enabled": true, + "style": { + "cursor": "pointer" + }, + "text": "Close faceplate" + } + }, + "props": { + "path": "material/close", + "style": { + "cursor": "pointer", + "marginBottom": 5, + "marginLeft": 5, + "marginRight": 5, + "marginTop": 5 + } + }, + "type": "ia.display.icon" + } + ], + "meta": { + "name": "FlexContainer" + }, + "position": { + "basis": "30px", + "shrink": 0 + }, + "props": { + "style": { + "overflow": "hidden" + } + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "children": [ + { + "meta": { + "name": "Label" + }, + "position": { + "basis": "32px", + "display": false + }, + "propConfig": { + "position.display": { + "binding": { + "config": { + "expression": "if({../AlarmTable.props.params.length_of_table_data} \u003d 0, True, False)" + }, + "enabled": false, + "type": "expr" + } + } + }, + "props": { + "style": { + "classes": "Labels/Label_1", + "marginTop": 20 + }, + "text": "No Active Alarms" + }, + "type": "ia.display.label" + }, + { + "meta": { + "name": "AlarmStatusTable" + }, + "position": { + "basis": "400px", + "grow": 1 + }, + "propConfig": { + "props.filters.active.text": { + "binding": { + "config": { + "path": "view.params.tagProps[0]" + }, + "transforms": [ + { + "code": "\treturn value[1:]", + "type": "script" + } + ], + "type": "property" + } + } + }, + "props": { + "columns": { + "active": { + "displayPath": { + "enabled": false + }, + "priority": { + "enabled": false + }, + "source": { + "enabled": false + }, + "state": { + "enabled": false + } + } + }, + "filters": { + "active": { + "priorities": { + "critical": false, + "high": false, + "low": false, + "medium": false + }, + "states": { + "clearUnacked": false + } + } + }, + "refreshRate": 500, + "toolbar": { + "enabled": false + } + }, + "type": "ia.display.alarmstatustable" + } + ], + "meta": { + "name": "Active_tab" + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "children": [ + { + "meta": { + "name": "NameField" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "props": { + "style": { + "paddingLeft": 20 + }, + "text": "NAME" + }, + "type": "ia.display.label" + }, + { + "meta": { + "name": "DeviceName" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "propConfig": { + "props.text": { + "binding": { + "config": { + "path": "view.params.tagProps[0]" + }, + "transforms": [ + { + "code": " return value.rsplit(\u0027/\u0027, 1)[-1]", + "type": "script" + } + ], + "type": "property" + } + } + }, + "props": { + "style": { + "backgroundColor": "#FFFFFF", + "classes": "Text-Styles/Ariel-Bold-12pt", + "paddingLeft": 10 + } + }, + "type": "ia.display.label" + } + ], + "meta": { + "name": "Name" + }, + "position": { + "basis": "35px" + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel", + "overflow": "hidden" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer_0" + }, + "position": { + "basis": "35px" + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "meta": { + "name": "NameField" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "props": { + "style": { + "paddingLeft": 20 + }, + "text": "LIGHT" + }, + "type": "ia.display.label" + }, + { + "meta": { + "name": "PB_Light" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "propConfig": { + "props.style.backgroundColor": { + "binding": { + "config": { + "path": "this.props.text" + }, + "transforms": [ + { + "fallback": "#D5D5D5", + "inputType": "scalar", + "mappings": [ + { + "input": "UNKNOWN", + "output": "#FFFFFF" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "property" + } + }, + "props.text": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Start/Color" + }, + "transforms": [ + { + "expression": "coalesce({value},0)", + "type": "expression" + }, + { + "fallback": "OFF", + "inputType": "scalar", + "mappings": [ + { + "input": 4, + "output": "ON" + } + ], + "outputType": "scalar", + "type": "map" + } + ], + "type": "tag" + } + }, + "props.textStyle.color": { + "binding": { + "config": { + "path": "this.props.text" + }, + "transforms": [ + { + "fallback": "#000000", + "inputType": "scalar", + "mappings": [ + { + "input": "ON", + "output": "#47FF47" + }, + { + "input": "OFF", + "output": "#FF0000" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "property" + } + } + }, + "props": { + "style": { + "classes": "Text-Styles/Ariel-Bold-12pt", + "paddingLeft": 10 + } + }, + "type": "ia.display.label" + } + ], + "meta": { + "name": "Property" + }, + "position": { + "basis": "35px", + "shrink": 2 + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer_1" + }, + "position": { + "basis": "35px" + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "Info_tab" + }, + "position": { + "tabIndex": 1 + }, + "props": { + "direction": "column", + "style": { + "margin-left": "" + } + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "children": [ + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Start_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "Button" + }, + "position": { + "basis": "80px", + "grow": 1 + }, + "propConfig": { + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.style.backgroundColor": { + "binding": { + "config": { + "path": "view.custom.start_color" + }, + "type": "property" + } + } + }, + "props": { + "image": { + "icon": { + "path": "material/not_started" + } + }, + "style": { + "classes": "Background-Styles/Controller" + }, + "text": "START" + }, + "type": "ia.input.button" + } + ], + "meta": { + "name": "Start" + }, + "position": { + "basis": "35px" + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel", + "padding": "" + } + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Stop_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "Button" + }, + "position": { + "basis": "80px", + "grow": 1 + }, + "propConfig": { + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.style.backgroundColor": { + "binding": { + "config": { + "path": "view.custom.stop_color" + }, + "type": "property" + } + } + }, + "props": { + "image": { + "icon": { + "path": "material/stop_circle" + } + }, + "style": { + "classes": "Background-Styles/Controller" + }, + "text": "STOP" + }, + "type": "ia.input.button" + } + ], + "meta": { + "name": "Stop" + }, + "position": { + "basis": "35px" + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel", + "padding": "" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer_0" + }, + "position": { + "basis": "100px", + "grow": 1 + }, + "props": { + "direction": "column", + "style": { + "gap": 6, + "paddingBottom": 20, + "paddingLeft": 10, + "paddingRight": 10, + "paddingTop": 13 + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "Commands" + }, + "position": { + "tabIndex": 2 + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "tabs" + }, + "position": { + "grow": 1 + }, + "props": { + "currentTabIndex": 2, + "menuType": "modern", + "tabSize": { + "width": 1000 + }, + "tabStyle": { + "active": { + "classes": "", + "color": "#FFFFFF", + "fontFamily": "Arial", + "fontSize": 14, + "fontWeight": "bold", + "paddingLeft": 10 + }, + "inactive": { + "classes": "", + "color": "#B8B8B8", + "fontFamily": "Arial", + "fontSize": 14, + "fontWeight": "bold", + "paddingLeft": 10 + } + }, + "tabs": [ + "Alarms", + "Info", + "Commands" + ] + }, + "type": "ia.container.tab" + } + ], + "meta": { + "name": "FlexContainer_1" + }, + "position": { + "basis": "670px", + "grow": 1 + }, + "props": { + "style": { + "border-top": "1px solid white", + "gap": "" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer" + }, + "position": { + "basis": "800px", + "grow": 1 + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "root" + }, + "props": { + "direction": "column", + "style": { + "classes": "Buttons/Button-Menu" + } + }, + "type": "ia.container.flex" + } +} \ No newline at end of file diff --git a/.resources/ffabf8bdfa9506fd7f8a3108a4d36f1bd3c66d9bbf192355d4900e8fdce0c772 b/.resources/21415e4466a50b36b148e0f76e0893916b49f75c440c6d726f6b0eb2ec47279f similarity index 98% rename from .resources/ffabf8bdfa9506fd7f8a3108a4d36f1bd3c66d9bbf192355d4900e8fdce0c772 rename to .resources/21415e4466a50b36b148e0f76e0893916b49f75c440c6d726f6b0eb2ec47279f index f9c20fd3..12da1bb7 100644 --- a/.resources/ffabf8bdfa9506fd7f8a3108a4d36f1bd3c66d9bbf192355d4900e8fdce0c772 +++ b/.resources/21415e4466a50b36b148e0f76e0893916b49f75c440c6d726f6b0eb2ec47279f @@ -32,7 +32,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},0)", "type": "expression" }, { diff --git a/.resources/7286acac512dd0566063816d747fe8d3a3416e9eb499c55ea1f2f3a7af6325d7 b/.resources/3430b8403e1d934ae00d7cb6bb61eb194368da1ab9080445e4942e82143f0333 similarity index 99% rename from .resources/7286acac512dd0566063816d747fe8d3a3416e9eb499c55ea1f2f3a7af6325d7 rename to .resources/3430b8403e1d934ae00d7cb6bb61eb194368da1ab9080445e4942e82143f0333 index f3839be7..27f40936 100644 --- a/.resources/7286acac512dd0566063816d747fe8d3a3416e9eb499c55ea1f2f3a7af6325d7 +++ b/.resources/3430b8403e1d934ae00d7cb6bb61eb194368da1ab9080445e4942e82143f0333 @@ -151,7 +151,7 @@ "dom": { "onClick": { "config": { - "script": "\tsystem.perspective.closeDock(\u0027Docked-East-Device\u0027)\n\tself.getSibling(\"tabs\").props.currentTabIndex \u003d 0" + "script": "\tsystem.perspective.closeDock(\u0027Docked-East-Beacon\u0027)\n\tself.getSibling(\"tabs\").props.currentTabIndex \u003d 0" }, "scope": "G", "type": "script" diff --git a/.resources/3b4257fe1e0d504c9a4b1f9ee7e5f97d3001ebe91bfa2abf9391ca80af66c5df b/.resources/3b4257fe1e0d504c9a4b1f9ee7e5f97d3001ebe91bfa2abf9391ca80af66c5df deleted file mode 100644 index 2aefa40f..00000000 Binary files a/.resources/3b4257fe1e0d504c9a4b1f9ee7e5f97d3001ebe91bfa2abf9391ca80af66c5df and /dev/null differ diff --git a/.resources/4edd1db8d10bd8eda6f6830c355695dd084803da48e0ed97f6dc5303b83b3124 b/.resources/4edd1db8d10bd8eda6f6830c355695dd084803da48e0ed97f6dc5303b83b3124 new file mode 100644 index 00000000..2b625381 Binary files /dev/null and b/.resources/4edd1db8d10bd8eda6f6830c355695dd084803da48e0ed97f6dc5303b83b3124 differ diff --git a/.resources/6db9283f9b601d8836b05a45fd2972eaf4224a6aec6d3a2510b0007decdc8a89 b/.resources/6db9283f9b601d8836b05a45fd2972eaf4224a6aec6d3a2510b0007decdc8a89 new file mode 100644 index 00000000..a1f0384b Binary files /dev/null and b/.resources/6db9283f9b601d8836b05a45fd2972eaf4224a6aec6d3a2510b0007decdc8a89 differ diff --git a/.resources/baea218e87729f404dfbdd2d1c01a9779ed29767c181de24870cc6e69a8dfdb1 b/.resources/7bed58e727c8699b8989bd76283dfd736e39fa6ce23b4e4020d24528498f32f6 similarity index 96% rename from .resources/baea218e87729f404dfbdd2d1c01a9779ed29767c181de24870cc6e69a8dfdb1 rename to .resources/7bed58e727c8699b8989bd76283dfd736e39fa6ce23b4e4020d24528498f32f6 index 96b59f5a..932242e6 100644 --- a/.resources/baea218e87729f404dfbdd2d1c01a9779ed29767c181de24870cc6e69a8dfdb1 +++ b/.resources/7bed58e727c8699b8989bd76283dfd736e39fa6ce23b4e4020d24528498f32f6 @@ -389,6 +389,20 @@ "size": 400, "viewParams": {}, "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon" + }, + { + "anchor": "fixed", + "autoBreakpoint": 480, + "content": "cover", + "handle": "hide", + "iconUrl": "", + "id": "Docked-East-SS", + "modal": false, + "resizable": false, + "show": "onDemand", + "size": 400, + "viewParams": {}, + "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button" } ], "top": [ @@ -487,6 +501,20 @@ "size": 400, "viewParams": {}, "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon" + }, + { + "anchor": "fixed", + "autoBreakpoint": 480, + "content": "cover", + "handle": "hide", + "iconUrl": "", + "id": "Docked-East-SS", + "modal": false, + "resizable": false, + "show": "onDemand", + "size": 400, + "viewParams": {}, + "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button" } ], "top": [ diff --git a/.resources/7d7ec24b5ed5426fcc02ba74f1c382a5b90babdd6aaecfc6f82475e026f01f65 b/.resources/7d7ec24b5ed5426fcc02ba74f1c382a5b90babdd6aaecfc6f82475e026f01f65 deleted file mode 100644 index 8861b5bb..00000000 Binary files a/.resources/7d7ec24b5ed5426fcc02ba74f1c382a5b90babdd6aaecfc6f82475e026f01f65 and /dev/null differ diff --git a/.resources/9c181e26186312d1d0d2971200ac79d83c98eba43bf6303e169c211c516b71ff b/.resources/9c181e26186312d1d0d2971200ac79d83c98eba43bf6303e169c211c516b71ff deleted file mode 100644 index 94e5e196..00000000 Binary files a/.resources/9c181e26186312d1d0d2971200ac79d83c98eba43bf6303e169c211c516b71ff and /dev/null differ diff --git a/.resources/9bf7fc743aa8f99c5a9120e0ab84c84d936c223e33d96640840cd315d0970bb2 b/.resources/a33d514fceb9b73f2c4860d7e09806c4907375684da1e1ddb583b61eaee1e0e3 similarity index 99% rename from .resources/9bf7fc743aa8f99c5a9120e0ab84c84d936c223e33d96640840cd315d0970bb2 rename to .resources/a33d514fceb9b73f2c4860d7e09806c4907375684da1e1ddb583b61eaee1e0e3 index 5d3644ab..44dde28f 100644 --- a/.resources/9bf7fc743aa8f99c5a9120e0ab84c84d936c223e33d96640840cd315d0970bb2 +++ b/.resources/a33d514fceb9b73f2c4860d7e09806c4907375684da1e1ddb583b61eaee1e0e3 @@ -340,7 +340,7 @@ "dom": { "onClick": { "config": { - "script": "\tsystem.perspective.openDock(\u0027Docked-East-SS-BTN\u0027,params\u003d{\u0027tagProps\u0027:self.view.params.tagProps})" + "script": "\tsystem.perspective.openDock(\u0027Docked-East-SS\u0027,params\u003d{\u0027tagProps\u0027:self.view.params.tagProps})" }, "scope": "G", "type": "script" diff --git a/.resources/b9ca271abff7f8cd07cc96c2e45a9dd22b22a2cea2d1bde3792d6999a60d5345 b/.resources/b9ca271abff7f8cd07cc96c2e45a9dd22b22a2cea2d1bde3792d6999a60d5345 new file mode 100644 index 00000000..901a3084 Binary files /dev/null and b/.resources/b9ca271abff7f8cd07cc96c2e45a9dd22b22a2cea2d1bde3792d6999a60d5345 differ diff --git a/BNA8/com.inductiveautomation.perspective/page-config/config.json b/BNA8/com.inductiveautomation.perspective/page-config/config.json index 96b59f5a..932242e6 100644 --- a/BNA8/com.inductiveautomation.perspective/page-config/config.json +++ b/BNA8/com.inductiveautomation.perspective/page-config/config.json @@ -389,6 +389,20 @@ "size": 400, "viewParams": {}, "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon" + }, + { + "anchor": "fixed", + "autoBreakpoint": 480, + "content": "cover", + "handle": "hide", + "iconUrl": "", + "id": "Docked-East-SS", + "modal": false, + "resizable": false, + "show": "onDemand", + "size": 400, + "viewParams": {}, + "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button" } ], "top": [ @@ -487,6 +501,20 @@ "size": 400, "viewParams": {}, "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon" + }, + { + "anchor": "fixed", + "autoBreakpoint": 480, + "content": "cover", + "handle": "hide", + "iconUrl": "", + "id": "Docked-East-SS", + "modal": false, + "resizable": false, + "show": "onDemand", + "size": 400, + "viewParams": {}, + "viewPath": "autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button" } ], "top": [ diff --git a/BNA8/com.inductiveautomation.perspective/page-config/resource.json b/BNA8/com.inductiveautomation.perspective/page-config/resource.json index fb4fe59f..5c408e57 100644 --- a/BNA8/com.inductiveautomation.perspective/page-config/resource.json +++ b/BNA8/com.inductiveautomation.perspective/page-config/resource.json @@ -9,8 +9,8 @@ "attributes": { "lastModification": { "actor": "admin", - "timestamp": "2025-09-02T13:54:56Z" + "timestamp": "2025-09-02T14:10:08Z" }, - "lastModificationSignature": "cde5c366f59e0c0fd40e8fcc099e4c9f8e95393181012b53ec8131648d76515c" + "lastModificationSignature": "7548c6754a9db337a166b83a67f7a265eef4805c386588363586651511151192" } } \ No newline at end of file diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/resource.json b/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/resource.json index 0b914355..f6945f10 100644 --- a/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/resource.json +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/resource.json @@ -10,8 +10,8 @@ "attributes": { "lastModification": { "actor": "admin", - "timestamp": "2025-09-02T13:01:16Z" + "timestamp": "2025-09-02T14:09:45Z" }, - "lastModificationSignature": "ca86fda542d27e75e51798d2edd0f0a40233efc02806b174ec6ddcaf7d498fe3" + "lastModificationSignature": "259b9ad04a954195a14e08ab651d9c599a961fe09206142c2b408277d6b59678" } } \ No newline at end of file diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/thumbnail.png b/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/thumbnail.png index 2aefa40f..2b625381 100644 Binary files a/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/thumbnail.png and b/BNA8/com.inductiveautomation.perspective/views/autStand/Detailed_Views/MCM01-FLUID INBOUND/thumbnail.png differ diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/resource.json b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/resource.json index 932ab128..caf777c1 100644 --- a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/resource.json +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/resource.json @@ -9,8 +9,8 @@ "attributes": { "lastModification": { "actor": "admin", - "timestamp": "2025-09-02T13:53:51Z" + "timestamp": "2025-09-02T14:06:15Z" }, - "lastModificationSignature": "be8055dd8d4a77c3cfa5c8c5038ba7707e9ee401aa8d546d299e7aaafa1ff583" + "lastModificationSignature": "d5232a318367d19f4a2e7e168642219563ba5654aa71d83410af57a3d7e4d64e" } } \ No newline at end of file diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/view.json b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/view.json index f9c20fd3..12da1bb7 100644 --- a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/view.json +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/Beacon/view.json @@ -32,7 +32,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},0)", "type": "expression" }, { diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/resource.json b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/resource.json index 04404032..d24bf7f1 100644 --- a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/resource.json +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/resource.json @@ -9,9 +9,9 @@ ], "attributes": { "lastModification": { - "actor": "external", - "timestamp": "2025-08-28T09:46:53Z" + "actor": "admin", + "timestamp": "2025-09-02T14:08:25Z" }, - "lastModificationSignature": "ba0342c46ff4cd83234832fb2a71827afb28ab26549a57cbf4a7dd996284e104" + "lastModificationSignature": "c8d76f0c22ace2d21f057a581d9d63526dccb7eca53179cc184f510e02c28aa6" } } \ No newline at end of file diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/thumbnail.png b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/thumbnail.png index 8861b5bb..8ecfff91 100644 Binary files a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/thumbnail.png and b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/thumbnail.png differ diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/view.json b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/view.json index 5d3644ab..44dde28f 100644 --- a/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/view.json +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/Equipment/SS_Button/view.json @@ -340,7 +340,7 @@ "dom": { "onClick": { "config": { - "script": "\tsystem.perspective.openDock(\u0027Docked-East-SS-BTN\u0027,params\u003d{\u0027tagProps\u0027:self.view.params.tagProps})" + "script": "\tsystem.perspective.openDock(\u0027Docked-East-SS\u0027,params\u003d{\u0027tagProps\u0027:self.view.params.tagProps})" }, "scope": "G", "type": "script" diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/resource.json b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/resource.json index ce8fb2b4..556f9a98 100644 --- a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/resource.json +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/resource.json @@ -10,8 +10,8 @@ "attributes": { "lastModification": { "actor": "admin", - "timestamp": "2025-09-02T13:53:25Z" + "timestamp": "2025-09-02T13:58:52Z" }, - "lastModificationSignature": "25163de2c5a54146406062c2a966eef0206834f4d30cecd75de8329b9f1f8070" + "lastModificationSignature": "80f7b129da7285682c8f19de642720a06d0a7decadafc208718b77430b25d2e1" } } \ No newline at end of file diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/thumbnail.png b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/thumbnail.png index 94e5e196..a1f0384b 100644 Binary files a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/thumbnail.png and b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-Beacon/thumbnail.png differ diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/resource.json b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/resource.json new file mode 100644 index 00000000..91e94864 --- /dev/null +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/resource.json @@ -0,0 +1,17 @@ +{ + "scope": "G", + "version": 1, + "restricted": false, + "overridable": true, + "files": [ + "view.json", + "thumbnail.png" + ], + "attributes": { + "lastModification": { + "actor": "admin", + "timestamp": "2025-09-02T14:10:37Z" + }, + "lastModificationSignature": "ada68e83969e4f72353c4afafc9d50a19555f5ec4f69a05fb8e22215e605b4c9" + } +} \ No newline at end of file diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/thumbnail.png b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/thumbnail.png new file mode 100644 index 00000000..901a3084 Binary files /dev/null and b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/thumbnail.png differ diff --git a/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/view.json b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/view.json new file mode 100644 index 00000000..0afc1a4b --- /dev/null +++ b/BNA8/com.inductiveautomation.perspective/views/autStand/PopUp-Views/Controller-Equipment/Information-Docked-East-SS-Button/view.json @@ -0,0 +1,965 @@ +{ + "custom": { + "PLC_list": [ + "MCM01", + "MCM02" + ], + "start_color": "#C2C2C2", + "stop_color": "#C2C2C2" + }, + "params": { + "tagProps": [ + "System/MCM01/Station/SS_PB/UL14_1_SS1", + "value", + "value", + "value", + "value", + "value", + "value", + "value", + "value", + "value" + ] + }, + "propConfig": { + "custom.PLC_list": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]Configuration/PLC" + }, + "transforms": [ + { + "code": "\tdevices \u003d system.util.jsonDecode(value)\n\tplcList \u003d []\n\tfor k in devices.keys():\n\t\tplcList.append(k)\n\t\t\n\treturn(sorted(set(plcList)))\n", + "type": "script" + } + ], + "type": "tag" + }, + "persistent": true + }, + "custom.start_color": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Start/Color" + }, + "transforms": [ + { + "expression": "coalesce({value},0)", + "type": "expression" + }, + { + "fallback": "#000000", + "inputType": "scalar", + "mappings": [ + { + "input": 0, + "output": "#C2C2C2" + }, + { + "input": 1, + "output": "#FF0000" + }, + { + "input": 2, + "output": "#FFA500" + }, + { + "input": 3, + "output": "#0008FF" + }, + { + "input": 4, + "output": "#00FF00" + }, + { + "input": 5, + "output": "#FFF700" + }, + { + "input": 6, + "output": "#87CEEB" + }, + { + "input": 7, + "output": "#90EE90" + }, + { + "input": 8, + "output": "#964B00" + }, + { + "input": 9, + "output": "#FFFFFF" + }, + { + "input": 10, + "output": "#000000" + }, + { + "input": 11, + "output": "#8B0000" + }, + { + "input": 12, + "output": "#808080" + }, + { + "input": 13, + "output": "#8B8000" + }, + { + "input": 14, + "output": "#006400" + }, + { + "input": 15, + "output": "#FFFFC5" + }, + { + "input": 16, + "output": "#00008B" + }, + { + "input": 17, + "output": "#FF7276" + }, + { + "input": 18, + "output": "#556B2F" + }, + { + "input": 19, + "output": "#B43434" + }, + { + "input": 20, + "output": "#4682B4" + }, + { + "input": 21, + "output": "#FFD700" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + }, + "persistent": true + }, + "custom.stop_color": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Stop/Color" + }, + "transforms": [ + { + "expression": "coalesce({value},0)", + "type": "expression" + }, + { + "fallback": "#000000", + "inputType": "scalar", + "mappings": [ + { + "input": 0, + "output": "#C2C2C2" + }, + { + "input": 1, + "output": "#FF0000" + }, + { + "input": 2, + "output": "#FFA500" + }, + { + "input": 3, + "output": "#0008FF" + }, + { + "input": 4, + "output": "#00FF00" + }, + { + "input": 5, + "output": "#FFF700" + }, + { + "input": 6, + "output": "#87CEEB" + }, + { + "input": 7, + "output": "#90EE90" + }, + { + "input": 8, + "output": "#964B00" + }, + { + "input": 9, + "output": "#FFFFFF" + }, + { + "input": 10, + "output": "#000000" + }, + { + "input": 11, + "output": "#8B0000" + }, + { + "input": 12, + "output": "#808080" + }, + { + "input": 13, + "output": "#8B8000" + }, + { + "input": 14, + "output": "#006400" + }, + { + "input": 15, + "output": "#FFFFC5" + }, + { + "input": 16, + "output": "#00008B" + }, + { + "input": 17, + "output": "#FF7276" + }, + { + "input": 18, + "output": "#556B2F" + }, + { + "input": 19, + "output": "#B43434" + }, + { + "input": 20, + "output": "#4682B4" + }, + { + "input": 21, + "output": "#FFD700" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + }, + "persistent": true + }, + "params.tagProps": { + "paramDirection": "input", + "persistent": true + } + }, + "props": { + "defaultSize": { + "width": 400 + } + }, + "root": { + "children": [ + { + "children": [ + { + "children": [ + { + "meta": { + "name": "Label" + }, + "position": { + "grow": 1 + }, + "propConfig": { + "props.text": { + "binding": { + "config": { + "expression": "\u0027Source ID: \u0027 + {view.params.tagProps[0]}" + }, + "type": "expr" + } + } + }, + "props": { + "style": { + "color": "#FFFF", + "fontFamily": "Arial", + "fontSize": 14, + "fontWeight": "bold", + "paddingLeft": 10 + } + }, + "type": "ia.display.label" + }, + { + "events": { + "dom": { + "onClick": { + "config": { + "script": "\tsystem.perspective.closeDock(\u0027Docked-East-SS\u0027)\n\tself.getSibling(\"tabs\").props.currentTabIndex \u003d 0" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "Icon", + "tooltip": { + "enabled": true, + "style": { + "cursor": "pointer" + }, + "text": "Close faceplate" + } + }, + "props": { + "path": "material/close", + "style": { + "cursor": "pointer", + "marginBottom": 5, + "marginLeft": 5, + "marginRight": 5, + "marginTop": 5 + } + }, + "type": "ia.display.icon" + } + ], + "meta": { + "name": "FlexContainer" + }, + "position": { + "basis": "30px", + "shrink": 0 + }, + "props": { + "style": { + "overflow": "hidden" + } + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "children": [ + { + "meta": { + "name": "Label" + }, + "position": { + "basis": "32px", + "display": false + }, + "propConfig": { + "position.display": { + "binding": { + "config": { + "expression": "if({../AlarmTable.props.params.length_of_table_data} \u003d 0, True, False)" + }, + "enabled": false, + "type": "expr" + } + } + }, + "props": { + "style": { + "classes": "Labels/Label_1", + "marginTop": 20 + }, + "text": "No Active Alarms" + }, + "type": "ia.display.label" + }, + { + "meta": { + "name": "AlarmStatusTable" + }, + "position": { + "basis": "400px", + "grow": 1 + }, + "propConfig": { + "props.filters.active.text": { + "binding": { + "config": { + "path": "view.params.tagProps[0]" + }, + "transforms": [ + { + "code": "\treturn value[1:]", + "type": "script" + } + ], + "type": "property" + } + } + }, + "props": { + "columns": { + "active": { + "displayPath": { + "enabled": false + }, + "priority": { + "enabled": false + }, + "source": { + "enabled": false + }, + "state": { + "enabled": false + } + } + }, + "filters": { + "active": { + "priorities": { + "critical": false, + "high": false, + "low": false, + "medium": false + }, + "states": { + "clearUnacked": false + } + } + }, + "refreshRate": 500, + "toolbar": { + "enabled": false + } + }, + "type": "ia.display.alarmstatustable" + } + ], + "meta": { + "name": "Active_tab" + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "children": [ + { + "meta": { + "name": "NameField" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "props": { + "style": { + "paddingLeft": 20 + }, + "text": "NAME" + }, + "type": "ia.display.label" + }, + { + "meta": { + "name": "DeviceName" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "propConfig": { + "props.text": { + "binding": { + "config": { + "path": "view.params.tagProps[0]" + }, + "transforms": [ + { + "code": " return value.rsplit(\u0027/\u0027, 1)[-1]", + "type": "script" + } + ], + "type": "property" + } + } + }, + "props": { + "style": { + "backgroundColor": "#FFFFFF", + "classes": "Text-Styles/Ariel-Bold-12pt", + "paddingLeft": 10 + } + }, + "type": "ia.display.label" + } + ], + "meta": { + "name": "Name" + }, + "position": { + "basis": "35px" + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel", + "overflow": "hidden" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer_0" + }, + "position": { + "basis": "35px" + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "meta": { + "name": "NameField" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "props": { + "style": { + "paddingLeft": 20 + }, + "text": "LIGHT" + }, + "type": "ia.display.label" + }, + { + "meta": { + "name": "PB_Light" + }, + "position": { + "basis": "50%", + "grow": 1 + }, + "propConfig": { + "props.style.backgroundColor": { + "binding": { + "config": { + "path": "this.props.text" + }, + "transforms": [ + { + "fallback": "#D5D5D5", + "inputType": "scalar", + "mappings": [ + { + "input": "UNKNOWN", + "output": "#FFFFFF" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "property" + } + }, + "props.text": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Start/Color" + }, + "transforms": [ + { + "expression": "coalesce({value},0)", + "type": "expression" + }, + { + "fallback": "OFF", + "inputType": "scalar", + "mappings": [ + { + "input": 4, + "output": "ON" + } + ], + "outputType": "scalar", + "type": "map" + } + ], + "type": "tag" + } + }, + "props.textStyle.color": { + "binding": { + "config": { + "path": "this.props.text" + }, + "transforms": [ + { + "fallback": "#000000", + "inputType": "scalar", + "mappings": [ + { + "input": "ON", + "output": "#47FF47" + }, + { + "input": "OFF", + "output": "#FF0000" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "property" + } + } + }, + "props": { + "style": { + "classes": "Text-Styles/Ariel-Bold-12pt", + "paddingLeft": 10 + } + }, + "type": "ia.display.label" + } + ], + "meta": { + "name": "Property" + }, + "position": { + "basis": "35px", + "shrink": 2 + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer_1" + }, + "position": { + "basis": "35px" + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "Info_tab" + }, + "position": { + "tabIndex": 1 + }, + "props": { + "direction": "column", + "style": { + "margin-left": "" + } + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "children": [ + { + "children": [ + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Start_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "Button" + }, + "position": { + "basis": "80px", + "grow": 1 + }, + "propConfig": { + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.style.backgroundColor": { + "binding": { + "config": { + "path": "view.custom.start_color" + }, + "type": "property" + } + } + }, + "props": { + "image": { + "icon": { + "path": "material/not_started" + } + }, + "style": { + "classes": "Background-Styles/Controller" + }, + "text": "START" + }, + "type": "ia.input.button" + } + ], + "meta": { + "name": "Start" + }, + "position": { + "basis": "35px" + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel", + "padding": "" + } + }, + "type": "ia.container.flex" + }, + { + "children": [ + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Stop_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "Button" + }, + "position": { + "basis": "80px", + "grow": 1 + }, + "propConfig": { + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.style.backgroundColor": { + "binding": { + "config": { + "path": "view.custom.stop_color" + }, + "type": "property" + } + } + }, + "props": { + "image": { + "icon": { + "path": "material/stop_circle" + } + }, + "style": { + "classes": "Background-Styles/Controller" + }, + "text": "STOP" + }, + "type": "ia.input.button" + } + ], + "meta": { + "name": "Stop" + }, + "position": { + "basis": "35px" + }, + "props": { + "style": { + "classes": "PopUp-Styles/InfoLabel", + "padding": "" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer_0" + }, + "position": { + "basis": "100px", + "grow": 1 + }, + "props": { + "direction": "column", + "style": { + "gap": 6, + "paddingBottom": 20, + "paddingLeft": 10, + "paddingRight": 10, + "paddingTop": 13 + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "Commands" + }, + "position": { + "tabIndex": 2 + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "tabs" + }, + "position": { + "grow": 1 + }, + "props": { + "currentTabIndex": 2, + "menuType": "modern", + "tabSize": { + "width": 1000 + }, + "tabStyle": { + "active": { + "classes": "", + "color": "#FFFFFF", + "fontFamily": "Arial", + "fontSize": 14, + "fontWeight": "bold", + "paddingLeft": 10 + }, + "inactive": { + "classes": "", + "color": "#B8B8B8", + "fontFamily": "Arial", + "fontSize": 14, + "fontWeight": "bold", + "paddingLeft": 10 + } + }, + "tabs": [ + "Alarms", + "Info", + "Commands" + ] + }, + "type": "ia.container.tab" + } + ], + "meta": { + "name": "FlexContainer_1" + }, + "position": { + "basis": "670px", + "grow": 1 + }, + "props": { + "style": { + "border-top": "1px solid white", + "gap": "" + } + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "FlexContainer" + }, + "position": { + "basis": "800px", + "grow": 1 + }, + "props": { + "direction": "column" + }, + "type": "ia.container.flex" + } + ], + "meta": { + "name": "root" + }, + "props": { + "direction": "column", + "style": { + "classes": "Buttons/Button-Menu" + } + }, + "type": "ia.container.flex" + } +} \ No newline at end of file