2026-04-24 FE Backup

This commit is contained in:
2026-04-24 12:37:16 +00:00
parent ace79b82f7
commit 0ba11a23b8
3705 changed files with 1240402 additions and 0 deletions

View File

@@ -0,0 +1,263 @@
{
"custom": {
"Status": 0,
"auth": {
"almAck": true,
"almShelve": true,
"config": true,
"control": true
},
"current_value": 0
},
"params": {
"ID": 3,
"tagPath": "[Ignition_Common_IO_Gtwy]MPR1140/PLC Tags/FreezeProtectionCmd"
},
"propConfig": {
"custom.Status": {
"binding": {
"config": {
"path": "view.custom.current_value"
},
"transforms": [
{
"code": "\tmask \u003d pow(2, self.params.ID)\n\tmasked \u003d value \u0026 mask\n\treturn masked \u003e\u003e self.params.ID",
"type": "script"
}
],
"type": "property"
},
"persistent": true
},
"custom.auth": {
"binding": {
"config": {
"path": "session.props.auth.user.roles"
},
"transforms": [
{
"code": "\treturn utils.roles.validate(value)",
"type": "script"
}
],
"type": "property"
},
"persistent": true
},
"custom.current_value": {
"binding": {
"config": {
"fallbackDelay": 2.5,
"mode": "indirect",
"references": {
"tagPath": "{view.params.tagPath}"
},
"tagPath": "{tagPath}"
},
"type": "tag"
},
"persistent": true
},
"params.ID": {
"paramDirection": "input",
"persistent": true
},
"params.tagPath": {
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 86,
"width": 453
}
},
"root": {
"children": [
{
"meta": {
"name": "Label"
},
"propConfig": {
"props.text": {
"binding": {
"config": {
"path": "view.params.ID"
},
"transforms": [
{
"expression": "\"Freeze Protection Lineup \"+{value}",
"type": "expression"
}
],
"type": "property"
}
}
},
"props": {
"style": {
"fontFamily": "inherit",
"fontSize": 12,
"textAlign": "center"
}
},
"type": "ia.display.label"
},
{
"children": [
{
"events": {
"dom": {
"onClick": {
"config": {
"script": "\tcurrent_value \u003d system.tag.readBlocking(self.view.params.tagPath)[0].value\n\tmask \u003d pow(2, self.view.params.ID)\n\tnew_value \u003d current_value | mask\n\tsystem.tag.writeBlocking(self.view.params.tagPath, new_value)"
},
"scope": "G",
"type": "script"
}
}
},
"meta": {
"name": "On_btn"
},
"position": {
"basis": "50%"
},
"propConfig": {
"props.enabled": {
"binding": {
"config": {
"path": "view.custom.auth.control"
},
"type": "property"
}
},
"props.primary": {
"binding": {
"config": {
"path": "view.custom.Status"
},
"transforms": [
{
"fallback": false,
"inputType": "scalar",
"mappings": [
{
"input": 0,
"output": false
},
{
"input": 1,
"output": true
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "property"
}
}
},
"props": {
"text": "On"
},
"type": "ia.input.button"
},
{
"events": {
"dom": {
"onClick": {
"config": {
"script": "\tcurrent_value \u003d system.tag.readBlocking(self.view.params.tagPath)[0].value\n\tmask \u003d pow(2, self.view.params.ID)\n\tmask \u003d mask ^ 0b1111111111111111\n\tnew_value \u003d current_value \u0026 mask\n\tsystem.tag.writeBlocking(self.view.params.tagPath, new_value)"
},
"scope": "G",
"type": "script"
}
}
},
"meta": {
"name": "Off_btn"
},
"position": {
"basis": "50%"
},
"propConfig": {
"props.enabled": {
"binding": {
"config": {
"path": "view.custom.auth.control"
},
"type": "property"
}
},
"props.primary": {
"binding": {
"config": {
"path": "view.custom.Status"
},
"transforms": [
{
"fallback": true,
"inputType": "scalar",
"mappings": [
{
"input": 0,
"output": true
},
{
"input": 1,
"output": false
}
],
"outputType": "scalar",
"type": "map"
}
],
"type": "property"
}
}
},
"props": {
"text": "Off"
},
"type": "ia.input.button"
}
],
"meta": {
"name": "FlexContainer"
},
"position": {
"basis": "200px"
},
"props": {
"style": {
"gap": 10
}
},
"type": "ia.container.flex"
}
],
"meta": {
"name": "root"
},
"props": {
"direction": "column",
"style": {
"backgroundColor": "var(--container)",
"borderBottomLeftRadius": "var(--borderRadius)",
"borderBottomRightRadius": "var(--borderRadius)",
"borderTopLeftRadius": "var(--borderRadius)",
"borderTopRightRadius": "var(--borderRadius)",
"boxShadow": "var(--boxShadow2)",
"gap": 10,
"paddingBottom": 10,
"paddingLeft": 10,
"paddingRight": 10,
"paddingTop": 10
}
},
"type": "ia.container.flex"
}
}