-
1README.md
-
2application/pom.xml
-
4application/src/main/data/json/demo/dashboards/firmware.json
-
3application/src/main/data/json/demo/dashboards/rule_engine_statistics.json
-
4application/src/main/data/json/demo/dashboards/software.json
-
38application/src/main/data/json/demo/dashboards/thermostats.json
-
9application/src/main/data/json/edge/rule_chains/edge_root_rule_chain.json
-
19application/src/main/data/json/system/scada_symbols/bottom-flow-meter.svg
-
82application/src/main/data/json/system/scada_symbols/bottom-right-elbow-connector-hp.svg
-
87application/src/main/data/json/system/scada_symbols/bottom-tee-connector-hp.svg
-
19application/src/main/data/json/system/scada_symbols/centrifugal-pump.svg
-
1210application/src/main/data/json/system/scada_symbols/conical-tank.svg
-
332application/src/main/data/json/system/scada_symbols/control-panel-hp.svg
-
87application/src/main/data/json/system/scada_symbols/cross-connector-hp.svg
-
35application/src/main/data/json/system/scada_symbols/cylindrical-tank.svg
-
795application/src/main/data/json/system/scada_symbols/dynamic-horizontal-scale-hp.svg
-
795application/src/main/data/json/system/scada_symbols/dynamic-vertical-scale-hp.svg
-
35application/src/main/data/json/system/scada_symbols/elevated-tank.svg
-
426application/src/main/data/json/system/scada_symbols/extra-long-horizontal-pipe.svg
-
438application/src/main/data/json/system/scada_symbols/extra-long-vertical-pipe.svg
-
282application/src/main/data/json/system/scada_symbols/filter-hp.svg
-
613application/src/main/data/json/system/scada_symbols/heat-pump-hp.svg
-
97application/src/main/data/json/system/scada_symbols/horizontal-broken-pipe.svg
-
174application/src/main/data/json/system/scada_symbols/horizontal-connector-hp.svg
-
19application/src/main/data/json/system/scada_symbols/horizontal-inline-flow-meter.svg
-
552application/src/main/data/json/system/scada_symbols/horizontal-tank-hp.svg
-
42application/src/main/data/json/system/scada_symbols/horizontal-tank.svg
-
392application/src/main/data/json/system/scada_symbols/horizontal-valve-hp.svg
-
1220application/src/main/data/json/system/scada_symbols/large-conical-tank.svg
-
35application/src/main/data/json/system/scada_symbols/large-cylindrical-tank.svg
-
35application/src/main/data/json/system/scada_symbols/large-stand-cylindrical-tank.svg
-
35application/src/main/data/json/system/scada_symbols/large-stand-vertical-tank.svg
-
35application/src/main/data/json/system/scada_symbols/large-vertical-tank.svg
-
35application/src/main/data/json/system/scada_symbols/left-analog-water-level-meter.svg
-
82application/src/main/data/json/system/scada_symbols/left-bottom-elbow-connector-hp.svg
-
19application/src/main/data/json/system/scada_symbols/left-flow-meter.svg
-
35application/src/main/data/json/system/scada_symbols/left-heat-pump.svg
-
19application/src/main/data/json/system/scada_symbols/left-motor-pump.svg
-
87application/src/main/data/json/system/scada_symbols/left-tee-connector-hp.svg
-
82application/src/main/data/json/system/scada_symbols/left-top-elbow-connector-hp.svg
-
97application/src/main/data/json/system/scada_symbols/long-horizontal-broken-pipe.svg
-
176application/src/main/data/json/system/scada_symbols/long-horizontal-connector-hp.svg
-
97application/src/main/data/json/system/scada_symbols/long-vertical-broken-pipe.svg
-
174application/src/main/data/json/system/scada_symbols/long-vertical-connector-hp.svg
-
551application/src/main/data/json/system/scada_symbols/pool-hp.svg
-
368application/src/main/data/json/system/scada_symbols/pump-hp.svg
-
35application/src/main/data/json/system/scada_symbols/right-analog-water-level-meter.svg
-
19application/src/main/data/json/system/scada_symbols/right-flow-meter.svg
-
35application/src/main/data/json/system/scada_symbols/right-heat-pump.svg
-
19application/src/main/data/json/system/scada_symbols/right-motor-pump.svg
-
87application/src/main/data/json/system/scada_symbols/right-tee-connector-hp.svg
-
652application/src/main/data/json/system/scada_symbols/sand-filter-hp.svg
-
83application/src/main/data/json/system/scada_symbols/sand-filter.svg
-
552application/src/main/data/json/system/scada_symbols/short-vertical-tank-hp.svg
-
723application/src/main/data/json/system/scada_symbols/simple-horizontal-scale-hp.svg
-
723application/src/main/data/json/system/scada_symbols/simple-vertical-scale-hp.svg
-
1391application/src/main/data/json/system/scada_symbols/small-cylindrical-tank.svg
-
19application/src/main/data/json/system/scada_symbols/small-left-motor-pump.svg
-
19application/src/main/data/json/system/scada_symbols/small-right-motor-pump.svg
-
42application/src/main/data/json/system/scada_symbols/small-spherical-tank.svg
-
42application/src/main/data/json/system/scada_symbols/spherical-tank.svg
-
35application/src/main/data/json/system/scada_symbols/stand-cylindrical-tank.svg
-
42application/src/main/data/json/system/scada_symbols/stand-horizontal-tank.svg
-
35application/src/main/data/json/system/scada_symbols/stand-vertical-short-tank.svg
-
35application/src/main/data/json/system/scada_symbols/stand-vertical-tank.svg
-
19application/src/main/data/json/system/scada_symbols/top-flow-meter.svg
-
82application/src/main/data/json/system/scada_symbols/top-right-elbow-connector-hp.svg
-
87application/src/main/data/json/system/scada_symbols/top-tee-connector-hp.svg
-
97application/src/main/data/json/system/scada_symbols/vertical-broken-pipe.svg
-
174application/src/main/data/json/system/scada_symbols/vertical-connector-hp.svg
-
19application/src/main/data/json/system/scada_symbols/vertical-inline-flow-meter.svg
-
35application/src/main/data/json/system/scada_symbols/vertical-short-tank.svg
-
552application/src/main/data/json/system/scada_symbols/vertical-tank-hp.svg
-
35application/src/main/data/json/system/scada_symbols/vertical-tank.svg
-
392application/src/main/data/json/system/scada_symbols/vertical-valve-hp.svg
-
1application/src/main/data/json/system/widget_bundles/buttons.json
-
1application/src/main/data/json/system/widget_bundles/control_widgets.json
-
31application/src/main/data/json/system/widget_bundles/general_high_performance_scada_symbols.json
-
23application/src/main/data/json/system/widget_bundles/high_performance_scada_fluid_system.json
-
11application/src/main/data/json/system/widget_bundles/scada_fluid_system.json
-
15application/src/main/data/json/system/widget_types/action_button.json
-
16application/src/main/data/json/system/widget_types/air_quality_index_card.json
-
29application/src/main/data/json/system/widget_types/air_quality_index_card_with_background.json
-
16application/src/main/data/json/system/widget_types/air_quality_index_chart_card.json
-
29application/src/main/data/json/system/widget_types/air_quality_index_chart_card_with_background.json
-
16application/src/main/data/json/system/widget_types/alarm_count.json
-
16application/src/main/data/json/system/widget_types/alarms_table.json
-
16application/src/main/data/json/system/widget_types/asset_admin_table.json
-
18application/src/main/data/json/system/widget_types/attributes_card.json
-
15application/src/main/data/json/system/widget_types/bar_chart.json
-
15application/src/main/data/json/system/widget_types/bar_chart_with_labels.json
-
15application/src/main/data/json/system/widget_types/bars.json
-
16application/src/main/data/json/system/widget_types/bars_deprecated.json
-
16application/src/main/data/json/system/widget_types/basic_gpio_control.json
-
16application/src/main/data/json/system/widget_types/basic_gpio_panel.json
-
16application/src/main/data/json/system/widget_types/battery_level.json
-
16application/src/main/data/json/system/widget_types/carbon_monoxide__co__card.json
-
29application/src/main/data/json/system/widget_types/carbon_monoxide__co__card_with_background.json
-
15application/src/main/data/json/system/widget_types/carbon_monoxide__co__chart_card.json
-
28application/src/main/data/json/system/widget_types/carbon_monoxide__co__chart_card_with_background.json
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
@ -0,0 +1,82 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Bottom right elbow connector", |
|||
"description": "Bottom right elbow connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M200 101H131C113.879 101 100 114.879 100 132V201" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.2 KiB |
@ -0,0 +1,87 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Bottom tee connector", |
|||
"description": "Bottom tee connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line-color", |
|||
"stateRenderFunction": "element.fill(ctx.properties.lineColor);\nelement.stroke(ctx.properties.lineColor);", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M200 100H115C106.716 100 100 106.716 100 115V200" stroke="#1A1A1A" stroke-width="6" id="path2" tb:tag="line"/><path d="M0 100H85C93.2843 100 100 106.716 100 115V200" stroke="#1A1A1A" stroke-width="6" id="path4" tb:tag="line"/><path d="M0 100L200 100" stroke="#1A1A1A" stroke-width="6" id="path6" tb:tag="line"/><path d="M87 100H113C113 100 100 100 100 114C100 100 87 100 87 100Z" fill="#1A1A1A" stroke="#1A1A1A" stroke-width="2" id="path8" tb:tag="line-color"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.7 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 85 KiB |
@ -0,0 +1,332 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="400" height="200" fill="none" version="1.1" viewBox="0 0 400 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Control panel", |
|||
"description": "Control panel", |
|||
"searchTags": [ |
|||
"control" |
|||
], |
|||
"widgetSizeX": 2, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "element.fill(ctx.properties.background);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "label", |
|||
"stateRenderFunction": "if (ctx.properties.label) {\n element.show();\n ctx.api.font(element, ctx.properties.labelFont, ctx.properties.labelColor);\n ctx.api.text(element, ctx.properties.labelText);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "offButton", |
|||
"stateRenderFunction": "var offButtonChildren = element.children();\nif(ctx.values.value){\n ctx.api.enable(element);\n offButtonChildren[0].fill(ctx.properties.defaultButtonColor);\n} else {\n ctx.api.disable(element);\n offButtonChildren[0].fill(ctx.properties.activeButtonColor);\n}\n\noffButtonChildren[1].stroke(ctx.properties.borderButtonColor);\n\nif (!ctx.properties.label) {\n element.transform({translateY: -37});\n}", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.disable(element);\nctx.api.callAction(event, 'offUpdateState', undefined, {\n next: () => {\n ctx.api.setValue('value', false);\n },\n error: () => {\n ctx.api.enable(element);\n } \n});" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "offLabel", |
|||
"stateRenderFunction": "ctx.api.text(element, ctx.properties.offLabelText);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "onButton", |
|||
"stateRenderFunction": "var onButtonChildren = element.children();\nif(ctx.values.value){\n ctx.api.disable(element);\n onButtonChildren[0].fill(ctx.properties.activeButtonColor);\n} else {\n ctx.api.enable(element);\n onButtonChildren[0].fill(ctx.properties.defaultButtonColor);\n}\nonButtonChildren[1].stroke(ctx.properties.borderButtonColor);\nif (!ctx.properties.label) {\n element.transform({translateY: -37});\n}", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.disable(element);\nctx.api.callAction(event, 'onUpdateState', undefined, {\n next: () => {\n ctx.api.setValue('value', true);\n },\n error: () => {\n ctx.api.enable(element);\n } \n});" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "onLabel", |
|||
"stateRenderFunction": "ctx.api.text(element, ctx.properties.onLabelText);", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "value", |
|||
"name": "On/Off state", |
|||
"hint": null, |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "On", |
|||
"falseLabel": "Off", |
|||
"stateLabel": "On", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "value" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "onUpdateState", |
|||
"name": "On update state", |
|||
"hint": null, |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "value" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "CONSTANT", |
|||
"constantValue": true, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "offUpdateState", |
|||
"name": "Off update state", |
|||
"hint": null, |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "value" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "CONSTANT", |
|||
"constantValue": false, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "background", |
|||
"name": "{i18n:scada.symbol.background-color}", |
|||
"type": "color", |
|||
"default": "#DEDEDE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "label", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelText", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "text", |
|||
"default": "Heat pump", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelFont", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelColor", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "onLabelText", |
|||
"name": "{i18n:scada.symbol.on-label}", |
|||
"type": "text", |
|||
"default": "On", |
|||
"required": true, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "offLabelText", |
|||
"name": "{i18n:scada.symbol.off-label}", |
|||
"type": "text", |
|||
"default": "Off", |
|||
"required": true, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeButtonColor", |
|||
"name": "{i18n:scada.symbol.button-color}", |
|||
"type": "color", |
|||
"default": "#999999", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultButtonColor", |
|||
"name": "{i18n:scada.symbol.button-color}", |
|||
"type": "color", |
|||
"default": "#DEDEDE", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "borderButtonColor", |
|||
"name": "{i18n:scada.symbol.button-color}", |
|||
"type": "color", |
|||
"default": "#999999", |
|||
"required": null, |
|||
"subLabel": "Border", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<rect width="400" height="200" rx="8" fill="#dedede" tb:tag="background"/><rect x="1" y="1" width="398" height="198" rx="7" stroke="#000" stroke-opacity=".87" stroke-width="2"/><text x="198.7832" y="57.511719" fill="#000000" font-family="Roboto" font-size="56px" font-weight="400" text-anchor="middle" tb:tag="label" xml:space="preserve"><tspan dominant-baseline="middle">Heat pump</tspan></text><g tb:tag="onButton"> |
|||
<rect x="29" y="100" width="156" height="72" rx="9.8143" fill="#999" style="stroke-width:.95761"/> |
|||
<path d="m29.957 109.03c0-4.4589 3.9482-8.0734 8.8189-8.0734h136.45c4.8707 0 8.8189 3.6144 8.8189 8.0734v53.938c0 4.4589-3.9482 8.0743-8.8189 8.0743h-136.45c-4.8707 0-8.8189-3.6153-8.8189-8.0743z" shape-rendering="crispEdges" stroke="#999" stroke-width="1.9147"/> |
|||
<text x="107.44609" y="138.7375" fill="#000000" font-family="Roboto" font-size="34px" font-weight="500" text-anchor="middle" tb:tag="onLabel" xml:space="preserve"><tspan dominant-baseline="middle">On</tspan></text> |
|||
</g><g tb:tag="offButton"> |
|||
<rect x="214" y="100" width="156" height="72" rx="9.8143" fill="#dedede" style="stroke-width:.95761"/> |
|||
<path d="m214.96 109.03c0-4.4589 3.9482-8.0734 8.8189-8.0734h136.45c4.8707 0 8.8189 3.6144 8.8189 8.0734v53.938c0 4.4589-3.9482 8.0743-8.8189 8.0743h-136.45c-4.8707 0-8.8189-3.6153-8.8189-8.0743z" shape-rendering="crispEdges" stroke="#999" stroke-width="1.9147"/> |
|||
<text x="290.68408" y="139.33516" fill="#000000" font-family="Roboto" font-size="34px" font-weight="500" text-anchor="middle" tb:tag="offLabel" xml:space="preserve"><tspan dominant-baseline="middle">Off</tspan></text> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 11 KiB |
@ -0,0 +1,87 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Cross connector", |
|||
"description": "Cross connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line-color", |
|||
"stateRenderFunction": "element.fill(ctx.properties.lineColor);", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M87 100H113C113 100 100 100 100 86C100 100 87 100 87 100Z" id="path12" fill="#1A1A1A" tb:tag="line-color"/><path d="M87 100H113C113 100 100 100 100 114C100 100 87 100 87 100Z" id="path10" fill="#1A1A1A" tb:tag="line-color"/><path d="M0 100H85C93.2843 100 100 93.2843 100 85V0" stroke-width="6" id="path8" stroke="#1A1A1A" tb:tag="line"/><path d="M200 100H115C106.716 100 100 93.2843 100 85V0" stroke-width="6" id="path6" stroke="#1A1A1A" tb:tag="line"/><path d="M0 100H85C93.2843 100 100 106.716 100 115V200" stroke-width="6" id="path4" stroke="#1A1A1A" tb:tag="line"/><path d="M200 100H115C106.716 100 100 106.716 100 115V200" stroke-width="6" id="path2" stroke="#1A1A1A" tb:tag="line"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 113 KiB |
@ -0,0 +1,795 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="800" height="400" fill="none" version="1.1" viewBox="0 0 800 400"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Dynamic horizontal scale", |
|||
"description": "Dynamic horizontal scale with current volume value and dynamically configurable warning and critical scale.", |
|||
"searchTags": [ |
|||
"scale" |
|||
], |
|||
"widgetSizeX": 4, |
|||
"widgetSizeY": 2, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "highCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar highCriticalState = ctx.values.highCriticalState;\nif (showHighCriticalScale && highCriticalState !== null) {\n element.show();\n var offset = calculateOffset(highCriticalState, minValue, maxValue);\n element.width(653-offset);\n} else {\n element.hide();\n}\n\nif (showHighCriticalScale && value !== null && highCriticalState !== null) {\n if (value >= highCriticalState) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "highWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar showHighWarningScale = ctx.properties.showHighWarningScale;\nvar highWarningState = ctx.values.highWarningState;\nvar highCriticalState = ctx.values.highCriticalState;\nif (showHighWarningScale && highWarningState !== null) {\n element.show();\n var offset = calculateOffset(highWarningState, minValue, maxValue);\n element.width(653-offset);\n} else {\n element.hide();\n}\n\nif (showHighWarningScale && value !== null) {\n if (!showHighCriticalScale) {\n highCriticalState = Number.MAX_SAFE_INTEGER;\n }\n \n if (highWarningState !== null && highCriticalState !== null) {\n if (value < highCriticalState && value >= highWarningState) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "label", |
|||
"stateRenderFunction": "if (ctx.properties.label) {\n element.show();\n ctx.api.font(element, ctx.properties.labelFont, ctx.properties.labelColor);\n ctx.api.text(element, ctx.properties.labelText);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowCriticalValue = ctx.values.lowCriticalState;\n\nif (showLowCriticalScale && lowCriticalValue !== null) {\n element.show();\n var offset = calculateOffset(lowCriticalValue, minValue, maxValue);\n element.width(offset);\n} else {\n element.hide();\n}\n\nif (showLowCriticalScale && value !== null) {\n var lowCriticalScale = ctx.values.lowCriticalState;\n if (value <= lowCriticalScale) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowWarningScale = ctx.properties.showLowWarningScale;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowWarningState = ctx.values.lowWarningState;\nvar lowCriticalState = ctx.values.lowCriticalState;\nif (showLowWarningScale && lowWarningState !== null) {\n element.show();\n var offset = calculateOffset(lowWarningState, minValue, maxValue);\n element.width(offset);\n} else {\n element.hide();\n}\n\nif (showLowWarningScale && value !== null) {\n if (!showLowCriticalScale) {\n lowCriticalState = Number.MIN_SAFE_INTEGER;\n }\n if (lowCriticalState !== null && lowWarningState !== null) {\n if (value > lowCriticalState && value <= lowWarningState) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "maxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.maxValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minMaxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n element.show();\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.minValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scaleBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.scaleColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "target", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showTarget = ctx.properties.showTarget;\nvar targetValue = ctx.values.targetValue;\n\nif (showTarget && targetValue !== null) {\n element.show();\n var offset = calculateOffset(targetValue, minValue, maxValue);\n element.transform({translateX: Math.min(Math.max(offset-17, 0), 619)});\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "targetBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.targetColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "units", |
|||
"stateRenderFunction": "if (ctx.properties.showUnits) {\n element.show();\n ctx.api.font(element, ctx.properties.unitsFont, ctx.properties.unitsColor);\n ctx.api.text(element, ctx.properties.units);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "value", |
|||
"stateRenderFunction": "if (ctx.properties.value) {\n element.show();\n ctx.api.font(element, ctx.properties.valueFont, ctx.properties.valueColor);\n ctx.api.text(element, ctx.api.formatValue(ctx.values.value, ctx.properties.valueDecimals, null, ctx.properties.valueDecimals));\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueArrowPosition", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateX: offset});\n}\n", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valuePointer", |
|||
"stateRenderFunction": "element.fill(ctx.properties.arrowColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueTextPositon", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateX: offset});\n}\n", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"hint": "{i18n:scada.symbol.value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "temperature" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "highCriticalState", |
|||
"name": "{i18n:scada.symbol.high-critical-state}", |
|||
"hint": "{i18n:scada.symbol.high-critical-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 85, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "highCriticalState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "highWarningState", |
|||
"name": "{i18n:scada.symbol.high-warning-state}", |
|||
"hint": "{i18n:scada.symbol.high-warning-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 70, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "highWarningState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "lowWarningState", |
|||
"name": "{i18n:scada.symbol.low-warning-state}", |
|||
"hint": "{i18n:scada.symbol.low-warning-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 30, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "lowWarningState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "lowCriticalState", |
|||
"name": "{i18n:scada.symbol.low-critical-state}", |
|||
"hint": "{i18n:scada.symbol.low-critical-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 15, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "lowCriticalState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "targetValue", |
|||
"name": "{i18n:scada.symbol.target-value}", |
|||
"hint": "{i18n:scada.symbol.target-value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "target" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "minMaxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.min-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "maxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 100, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.max-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueDecimals", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "Decimals", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 10, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "valueFont", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 60, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "400", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueColor", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "color", |
|||
"default": "#002878", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "label", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelText", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "text", |
|||
"default": "Outdoor", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelFont", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelColor", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showUnits", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "units", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "units", |
|||
"default": "°C", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsFont", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 40, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsColor", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showTarget", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "targetColor", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "color", |
|||
"default": "#DEDEDE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showTarget", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showHighCriticalScale", |
|||
"name": "{i18n:scada.symbol.show-high-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showHighWarningScale", |
|||
"name": "{i18n:scada.symbol.show-high-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showLowWarningScale", |
|||
"name": "{i18n:scada.symbol.show-low-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showLowCriticalScale", |
|||
"name": "{i18n:scada.symbol.show-low-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scaleColor", |
|||
"name": "{i18n:scada.symbol.scale-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<text x="409.16602" y="97.234375" fill="#000000" font-family="Roboto" font-size="56px" font-weight="400" text-anchor="middle" tb:tag="label" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">Outdoor</tspan></text><text x="401.15625" y="345.75" fill="#000000" font-family="Roboto" font-size="40px" font-weight="400" text-anchor="middle" tb:tag="units" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">°C</tspan></text><g fill="#666" font-family="Roboto" font-size="32px" font-weight="500" text-anchor="middle" style="display: none;" tb:tag="minMaxValue"> |
|||
<text x="88.070312" y="268" tb:tag="minValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">0</tspan></text> |
|||
<text x="705.02344" y="268" tb:tag="maxValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">100</tspan></text> |
|||
</g><g transform="translate(180)" tb:tag="valueArrowPosition"> |
|||
<path d="m80 179 24-42h-48z" fill="#666" tb:tag="valuePointer"/> |
|||
</g><g transform="translate(180)" tb:tag="valueTextPositon"> |
|||
<text x="79.779297" y="273.125" fill="#002878" font-family="Roboto" font-size="60px" font-weight="400" text-anchor="middle" tb:tag="value" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">26</tspan></text> |
|||
</g><g stroke="#000" tb:tag="scale"> |
|||
<rect x="80.5" y="183.5" width="652" height="41" fill="#c8dff7" tb:tag="scaleBackground"/> |
|||
<rect x="80.5" y="183.5" width="164" height="41" fill="#ebebeb" tb:tag="lowWarningScale"/> |
|||
<rect x="80.5" y="183.5" width="81" height="41" fill="#666" tb:tag="lowCriticalScale"/> |
|||
<rect transform="scale(-1,1)" x="-732.5" y="183.5" width="164" height="41" fill="#ebebeb" tb:tag="highWarningScale"/> |
|||
<rect transform="scale(-1,1)" x="-732.5" y="183.5" width="81" height="41" fill="#666" tb:tag="highCriticalScale"/> |
|||
</g><g transform="translate(400)" style="display: none;" tb:tag="target"> |
|||
<rect transform="rotate(45)" x="201.8" y="64.66" width="22" height="22" fill="#dedede" stroke="#000" stroke-width="2" tb:tag="targetBackground" style=""/> |
|||
</g><path d="m269.06 0s-269.06 0-269.06 67v328.36c0 2.6512 7.1634 4.6404 16 4.6404h768c8.836 0 16-1.9892 16-4.6404v-328.36c0-67-264.28-67-264.28-67h-135.72zm268.28 81.2c-5.1546 0-9.3334 1.2536-9.3334 2.8v300.4c0 1.5464 4.1786 2.8 9.3334 2.8h58.666c5.1546 0 9.3334-1.2536 9.3334-2.8v-300.4c0-1.5464-4.1786-2.8-9.3334-2.8z" fill="#000" fill-opacity="0" style="stroke-width:.7303" tb:tag="clickArea"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 29 KiB |
@ -0,0 +1,795 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="400" height="800" fill="none" version="1.1" viewBox="0 0 400 800"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Dynamic vertical scale", |
|||
"description": "Dynamic vertical scale with current volume value and dynamically configurable warning and critical scale.", |
|||
"searchTags": [ |
|||
"scale" |
|||
], |
|||
"widgetSizeX": 2, |
|||
"widgetSizeY": 4, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "highCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar highCriticalState = ctx.values.highCriticalState;\nif (showHighCriticalScale && highCriticalState !== null) {\n element.show();\n var offset = calculateOffset(highCriticalState, minValue, maxValue);\n element.height(653-offset);\n} else {\n element.hide();\n}\n\nif (showHighCriticalScale && value !== null && highCriticalState !== null) {\n if (value >= highCriticalState) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "highWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar showHighWarningScale = ctx.properties.showHighWarningScale;\nvar highWarningState = ctx.values.highWarningState;\nvar highCriticalState = ctx.values.highCriticalState;\nif (showHighWarningScale && highWarningState !== null) {\n element.show();\n var offset = calculateOffset(highWarningState, minValue, maxValue);\n element.height(653-offset);\n} else {\n element.hide();\n}\nif (showHighWarningScale && value !== null) {\n if (!showHighCriticalScale) {\n highCriticalState = Number.MAX_SAFE_INTEGER;\n }\n if (highWarningState !== null && highCriticalState !== null) {\n if (value < highCriticalState && value >= highWarningState) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "label", |
|||
"stateRenderFunction": "if (ctx.properties.label) {\n element.show();\n ctx.api.font(element, ctx.properties.labelFont, ctx.properties.labelColor);\n ctx.api.text(element, ctx.properties.labelText);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowCriticalValue = ctx.values.lowCriticalState;\n\nif (showLowCriticalScale && lowCriticalValue !== null) {\n element.show();\n var offset = calculateOffset(lowCriticalValue, minValue, maxValue);\n element.height(offset);\n} else {\n element.hide();\n}\nif (showLowCriticalScale && value !== null) {\n var lowCriticalScale = ctx.values.lowCriticalState;\n if (value <= lowCriticalScale) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowWarningScale = ctx.properties.showLowWarningScale;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowWarningState = ctx.values.lowWarningState;\nvar lowCriticalState = ctx.values.lowCriticalState;\nif (showLowWarningScale && lowWarningState !== null) {\n element.show();\n var offset = calculateOffset(lowWarningState, minValue, maxValue);\n element.height(offset);\n} else {\n element.hide();\n}\nif (showLowWarningScale && value !== null) {\n if (!showLowCriticalScale) {\n lowCriticalState = Number.MIN_SAFE_INTEGER;\n }\n if (lowCriticalState !== null && lowWarningState !== null) {\n if (value > lowCriticalState && value <= lowWarningState) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "maxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.maxValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minMaxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n element.show();\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.minValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scaleBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.scaleColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "target", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showTarget = ctx.properties.showTarget;\nvar targetValue = ctx.values.targetValue;\n\nif (showTarget && targetValue !== null) {\n element.show();\n var offset = calculateOffset(targetValue, minValue, maxValue);\n element.transform({translateY: -Math.min(Math.max(offset-17, 0), 619)});\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "targetBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.targetColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "units", |
|||
"stateRenderFunction": "if (ctx.properties.showUnits) {\n element.show();\n ctx.api.font(element, ctx.properties.unitsFont, ctx.properties.unitsColor);\n ctx.api.text(element, ctx.properties.units);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "value", |
|||
"stateRenderFunction": "if (ctx.properties.value) {\n element.show();\n ctx.api.font(element, ctx.properties.valueFont, ctx.properties.valueColor);\n ctx.api.text(element, ctx.api.formatValue(ctx.values.value, ctx.properties.valueDecimals, null, ctx.properties.valueDecimals));\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueArrowPosition", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateY: -offset});\n}\n", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valuePointer", |
|||
"stateRenderFunction": "element.fill(ctx.properties.arrowColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueTextPositon", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateY: -offset});\n}\n", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"hint": "{i18n:scada.symbol.value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "temperature" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "highCriticalState", |
|||
"name": "{i18n:scada.symbol.high-critical-state}", |
|||
"hint": "{i18n:scada.symbol.high-critical-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 85, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "highCriticalState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "highWarningState", |
|||
"name": "{i18n:scada.symbol.high-warning-state}", |
|||
"hint": "{i18n:scada.symbol.high-warning-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 70, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "highWarningState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "lowWarningState", |
|||
"name": "{i18n:scada.symbol.low-warning-state}", |
|||
"hint": "{i18n:scada.symbol.low-warning-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 30, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "lowWarningState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "lowCriticalState", |
|||
"name": "{i18n:scada.symbol.low-critical-state}", |
|||
"hint": "{i18n:scada.symbol.low-critical-state-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": 15, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "lowCriticalState" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "targetValue", |
|||
"name": "{i18n:scada.symbol.target-value}", |
|||
"hint": "{i18n:scada.symbol.target-value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "target" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "minMaxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.min-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "maxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 100, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.max-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueDecimals", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "Decimals", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 10, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "valueFont", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 60, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "400", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueColor", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "color", |
|||
"default": "#002878", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "label", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelText", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "text", |
|||
"default": "Outdoor", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelFont", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelColor", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showUnits", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "units", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "units", |
|||
"default": "°C", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsFont", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsColor", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showTarget", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "targetColor", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "color", |
|||
"default": "#DEDEDE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showTarget", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showHighCriticalScale", |
|||
"name": "{i18n:scada.symbol.show-high-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showHighWarningScale", |
|||
"name": "{i18n:scada.symbol.show-high-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showLowWarningScale", |
|||
"name": "{i18n:scada.symbol.show-low-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showLowCriticalScale", |
|||
"name": "{i18n:scada.symbol.show-low-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scaleColor", |
|||
"name": "{i18n:scada.symbol.scale-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<text x="206.16602" y="43.234375" fill="#000000" font-family="Roboto" font-size="56px" font-weight="400" text-anchor="middle" tb:tag="label" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">Outdoor</tspan></text><text x="195.21875" y="784.75" fill="#000000" font-family="Roboto" font-size="40px" font-weight="400" text-anchor="middle" tb:tag="units" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">°C</tspan></text><g stroke="#000" tb:tag="scale"> |
|||
<rect x="176.5" y="83" width="41" height="652" fill="#c8dff7" tb:tag="scaleBackground"/> |
|||
<rect transform="scale(1,-1)" x="176.5" y="-735" width="41" height="164" fill="#ebebeb" tb:tag="lowWarningScale"/> |
|||
<rect x="176.5" y="83.5" width="41" height="164" fill="#ebebeb" tb:tag="highWarningScale"/> |
|||
<rect transform="scale(1,-1)" x="176.5" y="-735" width="41" height="81" fill="#666" tb:tag="lowCriticalScale"/> |
|||
<rect x="176.5" y="83.5" width="41" height="81" fill="#666" tb:tag="highCriticalScale"/> |
|||
</g><g fill="#666" font-family="Roboto" font-size="32px" font-weight="500" style="display: none;" tb:tag="minMaxValue"> |
|||
<text x="237.48438" y="97" tb:tag="maxValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">100</tspan></text> |
|||
<text x="238.89062" y="727" tb:tag="minValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">0</tspan></text> |
|||
</g><g transform="translate(0,-180)" tb:tag="valueArrowPosition"> |
|||
<path d="m168 735-42-24v48z" fill="#666" tb:tag="valuePointer"/> |
|||
</g><g transform="translate(0,-180)" tb:tag="valueTextPositon"> |
|||
<text x="223.60547" y="739.125" fill="#002878" font-family="Roboto" font-size="60px" font-weight="400" tb:tag="value" xml:space="preserve"><tspan dominant-baseline="middle">26</tspan></text> |
|||
</g><g transform="translate(0,-400)" style="display: none;" tb:tag="target"> |
|||
<rect transform="rotate(-45)" x="-379.76" y="636.31" width="22" height="22" fill="#dedede" stroke="#000" stroke-width="2" tb:tag="targetBackground" style=""/> |
|||
</g><path d="m134.53 0s-134.53 0-134.53 134v656.72c0 5.3024 3.5817 9.2808 8 9.2808h384c4.418 0 8-3.9784 8-9.2808v-656.72c0-134-132.14-134-132.14-134h-67.86zm134.14 162.4c-2.5773 0-4.6667 2.5072-4.6667 5.6v600.8c0 3.0928 2.0893 5.6 4.6667 5.6h29.333c2.5773 0 4.6667-2.5072 4.6667-5.6v-600.8c0-3.0928-2.0893-5.6-4.6667-5.6z" fill="#000" fill-opacity="0" style="stroke-width:.7303" tb:tag="clickArea"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 36 KiB |
@ -0,0 +1,282 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="400" fill="none" version="1.1" viewBox="0 0 200 400"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Filter", |
|||
"description": "Filter", |
|||
"searchTags": [ |
|||
"filter" |
|||
], |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 2, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "runningColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.running}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m18.383 177.21c-0.0635-1.09-0.5693-2.106-1.4002-2.815l-9.0297-7.696c-4.2584-3.63-6.8043-8.844-6.9791-14.436-0.65043-20.804-1.9643-74.241 0.29843-110.76 0.77895-12.572 2.4293-30.36 3.1494-37.9 0.19581-2.0502 1.9178-3.6002 3.9773-3.6002h183.2c2.059 0 3.781 1.5501 3.977 3.6002 0.72 7.5392 2.371 25.328 3.15 37.9 2.262 36.518 0.948 89.955 0.298 110.76-0.175 5.592-2.721 10.806-6.979 14.436l-9.03 7.696c-0.831 0.709-1.336 1.725-1.4 2.815l-8.57 147.01c-0.605 10.385-5.508 20.049-13.531 26.67-34.554 28.516-84.478 28.516-119.03 0-8.0233-6.621-12.926-16.285-13.532-26.67z" fill="#fff"/><path d="m19.382 177.15c-0.0794-1.362-0.71139-2.633-1.7498-3.518l-9.0296-7.697c-4.0474-3.45-6.4624-8.4-6.6282-13.706-0.65056-20.807-1.9624-74.2 0.297-110.67 0.77777-12.553 2.4266-30.326 3.1467-37.866 0.1463-1.5318 1.4324-2.6953 2.9818-2.6953h183.2c1.549 0 2.835 1.1635 2.982 2.6953 0.71999 7.5402 2.369 25.314 3.146 37.866 2.26 36.465 0.94799 89.858 0.297 110.67-0.165 5.306-2.58 10.256-6.6279 13.706l-9.0289 7.697c-1.039 0.885-1.671 2.156-1.75 3.518l-8.5699 147.01c-0.589 10.108-5.361 19.513-13.17 25.958-34.184 28.21-83.573 28.21-117.76 0-7.8087-6.445-12.581-15.85-13.17-25.958z" stroke="#000" stroke-opacity=".87" stroke-width="2"/><path d="m67.264 0s-67.264 0-67.264 67v328.36c0 2.6512 1.7909 4.6404 4 4.6404h192c2.209 0 4-1.9892 4-4.6404v-328.36c0-67-66.07-67-66.07-67h-33.929zm67.07 81.2c-1.2887 0-2.3333 1.2536-2.3333 2.8v300.4c0 1.5464 1.0447 2.8 2.3333 2.8h14.666c1.2887 0 2.3333-1.2536 2.3333-2.8v-300.4c0-1.5464-1.0447-2.8-2.3333-2.8z" fill="#000" fill-opacity="0" style="stroke-width:1.4142" tb:tag="clickArea"/><g transform="translate(0,316)" fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0,316)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 12 KiB |
@ -0,0 +1,613 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="800" height="600" fill="none" version="1.1" viewBox="0 0 800 600"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Heat pump", |
|||
"description": "Heat pump", |
|||
"searchTags": [ |
|||
"pump", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 4, |
|||
"widgetSizeY": 3, |
|||
"stateRenderFunction": "var levelUpButton = ctx.tags.levelUpButton;\nvar levelDownButton = ctx.tags.levelDownButton;\n\nvar enabledColor = ctx.properties.runningColor;\nvar disabledColor = ctx.properties.stoppedColor;\n\nvar temperature = ctx.values.temperature;\nvar running = ctx.values.running;\nvar minTemperature = ctx.properties.minTemperature;\nvar maxTemperature = ctx.properties.maxTemperature;\n\nvar levelUpEnabled = running && temperature < maxTemperature;\nvar levelDownEnabled = running && temperature > minTemperature;\n\nif (levelUpEnabled) {\n ctx.api.enable(levelUpButton);\n levelUpButton[0].attr({fill: enabledColor});\n} else {\n ctx.api.disable(levelUpButton);\n levelUpButton[0].attr({fill: disabledColor});\n}\n \nif (levelDownEnabled) {\n ctx.api.enable(levelDownButton);\n levelDownButton[0].attr({fill: enabledColor});\n} else {\n ctx.api.disable(levelDownButton);\n levelDownButton[0].attr({fill: disabledColor});\n}", |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "var color = ctx.properties.stoppedColor;\nif (ctx.values.running) {\n color = ctx.properties.runningColor;\n}\nelement.attr({fill: color});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "circle-background", |
|||
"stateRenderFunction": "var color = ctx.properties.stoppedColor;\nif (ctx.values.running) {\n color = '#cccccc';\n}\nelement.attr({fill: color});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "levelDownButton", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "if (ctx.values.running) {\n var temperature = ctx.values.temperature; \n var minTemperature = ctx.properties.minTemperature;\n var step = ctx.properties.temperatureStep;\n \n var newTemperature = Math.max(minTemperature, temperature - step);\n ctx.api.setValue('temperature', newTemperature);\n ctx.api.callAction(event, 'updateTemperatureState', newTemperature, {\n error: () => {\n ctx.api.setValue('temperature', temperature);\n }\n });\n}" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "levelUpButton", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "if (ctx.values.running) {\n var temperature = ctx.values.temperature; \n var temperature = ctx.values.temperature; \n var maxTemperature = ctx.properties.maxTemperature;\n var minTemperature = ctx.properties.minTemperature;\n var step = ctx.properties.temperatureStep;\n var newTemperature = temperature || minTemperature === 0 ? Math.min(maxTemperature, temperature + step) : minTemperature;\n ctx.api.setValue('temperature', newTemperature);\n ctx.api.callAction(event, 'updateTemperatureState', newTemperature, {\n error: () => {\n ctx.api.setValue('temperature', temperature);\n }\n });\n}" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "value-box-background", |
|||
"stateRenderFunction": "if (ctx.values.running) {\n var color = ctx.properties.valueBoxBackground;\n element.attr({fill: color});\n} else {\n var color = ctx.properties.stoppedColor;\n element.attr({fill: color});\n}\n", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "value-text", |
|||
"stateRenderFunction": "var valueTextFont = ctx.properties.valueTextFont;\nvar valueTextColor = ctx.properties.valueTextColor;\nvar units = ctx.properties.valueUnits ? ctx.properties.units : null;\nvar currentVolume = ctx.values.temperature;\nvar decimals = Math.floor(ctx.properties.temperatureStep) === ctx.properties.temperatureStep;\nvar valueText = ctx.api.formatValue(currentVolume, decimals ? 0 : 1, units, !decimals);\nctx.api.font(element, valueTextFont, valueTextColor);\nctx.api.text(element, valueText);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "running", |
|||
"name": "{i18n:scada.symbol.running}", |
|||
"hint": "{i18n:scada.symbol.running-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.running}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "running" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "temperature", |
|||
"name": "{i18n:scada.symbol.temperature}", |
|||
"hint": "{i18n:scada.symbol.temperature-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "temperature" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "updateTemperatureState", |
|||
"name": "{i18n:scada.symbol.update-temperature}", |
|||
"hint": "{i18n:scada.symbol.update-temperature-hint}", |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "ADD_TIME_SERIES", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "state" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "temperature" |
|||
}, |
|||
"valueToData": { |
|||
"type": "VALUE", |
|||
"constantValue": false, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "runningColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.running}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "stoppedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.stopped}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minTemperature", |
|||
"name": "{i18n:scada.symbol.temperature}", |
|||
"type": "number", |
|||
"default": 10, |
|||
"required": null, |
|||
"subLabel": "Min", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "column-xs", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "maxTemperature", |
|||
"name": "{i18n:scada.symbol.temperature}", |
|||
"type": "number", |
|||
"default": 45, |
|||
"required": true, |
|||
"subLabel": "Max", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "temperatureStep", |
|||
"name": "{i18n:scada.symbol.temperature-step}", |
|||
"type": "number", |
|||
"default": 1, |
|||
"required": true, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 0.5 |
|||
}, |
|||
{ |
|||
"id": "valueTextColor", |
|||
"name": "{i18n:scada.symbol.value-text}", |
|||
"type": "color", |
|||
"default": "#002878", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueTextFont", |
|||
"name": "{i18n:scada.symbol.value-text}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 40, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueUnits", |
|||
"name": "{i18n:scada.symbol.value-units}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "units", |
|||
"name": "{i18n:scada.symbol.value-units}", |
|||
"type": "units", |
|||
"default": "°C", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueBoxBackground", |
|||
"name": "{i18n:scada.symbol.value-box-background}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g fill="#fff" tb:tag="background"> |
|||
<rect x="250" y="571" width="300" height="29" rx="6.9964"/> |
|||
<rect x="251" y="572" width="298" height="27" rx="5.9964" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m303 542h194l32 31h-258l32-31z"/> |
|||
<path d="m273.47 572 29.936-29h193.19l29.936 29h-253.06z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<rect width="800" height="544" rx="32"/> |
|||
<rect x="1" y="1" width="798" height="542" rx="31" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<rect x="80" y="72.001" width="180" height="128" rx="8"/> |
|||
<rect x="81" y="73.001" width="178" height="126" rx="7" stroke="#000" stroke-opacity=".87" stroke-width="2" tb:tag="value-box-background"/> |
|||
<text x="170.51953" y="139.75" dominant-baseline="middle" fill="#002878" font-family="Roboto" font-size="40px" font-weight="500" text-anchor="middle" tb:tag="value-text" xml:space="preserve"><tspan>27</tspan></text> |
|||
<ellipse cx="542" cy="284" rx="180" ry="180" fill="#fff"/> |
|||
<path d="m720.5 284c0 98.583-79.918 178.5-178.5 178.5s-178.5-79.918-178.5-178.5 79.918-178.5 178.5-178.5 178.5 79.918 178.5 178.5z" stroke="#000" stroke-opacity=".12" stroke-width="2.9985"/> |
|||
<g clip-path="url(#clip1_3215_7169)"> |
|||
<path d="m536.11 171.46c-13.585-34.892-30.132-50.233-39.494-62.425l-51.598 1.357-36.438 43.78c2.989-3.245 18.831-0.165 58.282 38.122 39.45 38.287 53.558 73.174 55.681 85.832l27.713-18.525c0-27.204-0.561-53.25-14.146-88.141z" stroke="#727171" stroke-width="3.2645"/> |
|||
<path d="m643.04 226.16c24.624-28.208 30.551-49.979 37.016-63.926l-25.114-45.094-55.681-12.001c4.261 1.145 8.873 16.611-6.773 69.312s-40.023 81.37-50.256 89.117l29.258 15.973c24.107-12.607 46.927-25.174 71.55-53.381z" stroke="#727171" stroke-width="3.2645"/> |
|||
<path d="m660.17 341.98c37.249 3.809 58.446-3.928 73.565-6.705l22.307-46.547-22.363-52.386c1.526 4.14-8.436 16.837-60.494 34.504-52.059 17.666-89.542 14.325-101.78 10.446l-6.364 30.727c24.215 12.398 57.877 26.152 95.125 29.961z" stroke="#727171" stroke-width="3.2645"/> |
|||
<path d="m445.68 341.28c-26.207 26.744-42.114 48.43-49.371 61.981l22.476 46.466 54.898 15.186c-4.188-1.389-7.902-17.095 10.752-68.808 18.653-51.713 44.64-78.931 55.302-86.076l-22.551-16.939c-24.793 11.199-45.3 21.447-71.506 48.19z" stroke="#727171" stroke-width="3.2645"/> |
|||
<path d="m547.19 393.22c12.328 35.356 26.698 53.295 35.619 65.814l51.613 0.49 37.982-42.448c-3.104 3.137-25.248-0.317-63.303-39.991s-48.728-61.258-50.396-73.984l-21.661 6.423c-0.974 27.187-2.182 48.341 10.146 83.696z" stroke="#727171" stroke-width="3.2645"/> |
|||
<path d="m442.58 235.02c-36.583-7.982-58.516-2.683-73.851-1.627l-27.411 43.736 16.318 54.573c-1.05-4.286 10.279-15.78 63.997-27.467 53.718-11.688 97.403-14.454 109.12-9.221l-3.176-23.132c-22.664-15.048-48.417-28.88-84.999-36.862z" stroke="#727171" stroke-width="3.2645"/> |
|||
<circle cx="542" cy="284" r="37.241" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<circle cx="542" cy="284" r="18.621" fill="#727171"/> |
|||
</g> |
|||
<mask id="path-29-inside-1_3215_7169" fill="white"> |
|||
<path d="m722 284c0 99.411-80.589 180-180 180s-180-80.589-180-180 80.589-180 180-180 180 80.589 180 180zm-331.96 0c0 83.926 68.035 151.96 151.96 151.96s151.96-68.035 151.96-151.96-68.035-151.96-151.96-151.96-151.96 68.035-151.96 151.96z"/> |
|||
</mask> |
|||
<path d="m722 284c0 99.411-80.589 180-180 180s-180-80.589-180-180 80.589-180 180-180 180 80.589 180 180zm-331.96 0c0 83.926 68.035 151.96 151.96 151.96s151.96-68.035 151.96-151.96-68.035-151.96-151.96-151.96-151.96 68.035-151.96 151.96z" fill="#DEDEDE" mask="url(#path-29-inside-1_3215_7169)" stroke="#000" stroke-opacity=".87" stroke-width="4" tb:tag="circle-background"/> |
|||
</g><path d="m269.06 0s-269.06 0-269.06 100.5v492.54c0 3.9768 7.1636 6.9606 16 6.9606h768c8.836 0 16-2.9838 16-6.9606v-492.54c0-100.5-264.28-100.5-264.28-100.5h-135.72zm268.28 121.8c-5.1548 0-9.3332 1.8804-9.3332 4.2v450.6c0 2.3196 4.1788 4.2 9.3332 4.2h58.664c5.1548 0 9.3332-1.8804 9.3332-4.2v-450.6c0-2.3196-4.1788-4.2-9.3332-4.2z" fill="#000" fill-opacity="0" style="stroke-width:2.4495" tb:tag="clickArea"/><g tb:tag="levelUpButton"> |
|||
<path d="m164 290.19c0 5.42-4.394 9.814-9.815 9.814h-68.371c-5.4203 0-9.8143-4.394-9.8143-9.814v-68.373c0-5.421 4.394-9.815 9.8143-9.815h68.371c5.421 0 9.815 4.394 9.815 9.815z"/> |
|||
<path d="m163 290.19c0 4.868-3.947 8.814-8.815 8.814h-68.371c-4.868 0-8.8143-3.946-8.8143-8.814v-68.373c0-4.868 3.9463-8.815 8.8143-8.815h68.371c4.868 0 8.815 3.947 8.815 8.815z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m135.92 263.33c0.89 0 1.336-1.077 0.707-1.706l-15.921-15.921c-0.39-0.39-1.023-0.39-1.413 0l-15.921 15.921c-0.629 0.629-0.183 1.706 0.707 1.706z" fill="#000" fill-opacity=".87"/> |
|||
</g><g tb:tag="levelDownButton"> |
|||
<path d="m264.96 221.82c0-5.42-4.394-9.814-9.814-9.814h-69.327c-5.42 0-9.814 4.394-9.814 9.814v68.372c0 5.42 4.394 9.814 9.814 9.814h69.327c5.42 0 9.814-4.394 9.814-9.814z"/> |
|||
<path d="m263.96 221.82c0-4.868-3.946-8.814-8.814-8.814h-69.327c-4.868 0-8.814 3.946-8.814 8.814v68.372c0 4.868 3.946 8.814 8.814 8.814h69.327c4.868 0 8.814-3.946 8.814-8.814z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m236.58 248.67c0.893 0 1.338 1.082 0.703 1.711l-16.101 15.927c-0.389 0.386-1.016 0.386-1.406 0l-16.1-15.927c-0.635-0.629-0.191-1.711 0.703-1.711z" fill="#000" fill-opacity=".87"/> |
|||
</g><g transform="translate(0,516)" fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0,516)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><defs> |
|||
<clipPath id="clip1_3215_7169"> |
|||
<rect x="362" y="104" width="360" height="360" rx="180" fill="#fff"/> |
|||
</clipPath> |
|||
</defs> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 26 KiB |
@ -0,0 +1,97 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "Horizontal broken pipe", |
|||
"description": "Horizontal broken pipe.", |
|||
"searchTags": [ |
|||
"pipe", |
|||
"horizontal pipe", |
|||
"broken pipe" |
|||
], |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "pipe-background", |
|||
"stateRenderFunction": "var color = ctx.properties.pipeColor;\nelement.attr({fill: color});", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "pipeColor", |
|||
"name": "{i18n:scada.symbol.pipe-color}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g tb:tag="clickArea"> |
|||
<path d="m14 64s53.5 0.2293 60.5 0 17-6.5 17-6.5l-14.5 21.5 14.5 6.5-10.5 9 14.5 11-18.5 6.5 10 6-2.5 11.5 7 14s-10-7.5-17-7.5h-60.5v-72z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m14 64s53.5 0.2293 60.5 0 17-6.5 17-6.5l-14.5 21.5 14.5 6.5-10.5 9 14.5 11-18.5 6.5 10 6-2.5 11.5 7 14s-10-7.5-17-7.5h-60.5v-72z" fill="url(#paint0_linear_2474_252376)"/> |
|||
<path d="m86.266 62.02c0.1879-0.0889 0.3731-0.1777 0.5555-0.2661l-12.062 17.886 13.968 6.2614-8.7036 7.4602-1.4118 1.2101 13.759 10.438-15.869 5.576-3.0127 1.058 2.7382 1.643 9.0774 5.447-2.2715 10.448-0.1123 0.517 0.2365 0.473 4.5114 9.023c-0.4206-0.249-0.8606-0.502-1.3163-0.755-3.3898-1.883-7.9357-3.939-11.854-3.939h-59v-68.994l0.8066 0.0033c1.4767 0.0058 3.5942 0.0139 6.1569 0.0228 5.1255 0.0179 12.032 0.0394 19.158 0.0538 14.23 0.0286 29.393 0.0289 32.927-0.0868 3.8302-0.1255 8.3197-1.8722 11.717-3.4792z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<path d="m105.5 56.5s13.5 7.395 18.5 7.5 62 0 62 0v72s-54.5-0.086-62 0-18.5 4.5-18.5 4.5l6-13.5-15-14 16.5-5-7.5-6 6-13-18-13 19.5-4.5-7.5-15z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m105.5 56.5s13.5 7.395 18.5 7.5 62 0 62 0v72s-54.5-0.086-62 0-18.5 4.5-18.5 4.5l6-13.5-15-14 16.5-5-7.5-6 6-13-18-13 19.5-4.5-7.5-15z" fill="url(#paint1_linear_2474_252376)"/> |
|||
<path d="m184.5 65.503v68.995l-0.854-2e-3c-1.505-2e-3 -3.663-5e-3 -6.277-8e-3 -5.227-7e-3 -12.274-0.015-19.555-0.02-14.556-0.011-30.069-0.011-33.831 0.032-3.973 0.046-8.768 1.225-12.479 2.346-1.18 0.357-2.264 0.712-3.197 1.031l4.564-10.268 0.434-0.976-0.782-0.73-13.096-12.223 14.008-4.244 2.727-0.827-2.225-1.78-6.583-5.267 5.508-11.933 0.518-1.1215-1.002-0.7231-15.321-11.065 16.28-3.757 1.857-0.4284-0.852-1.704-5.435-10.87c1.009 0.5039 2.144 1.0566 3.335 1.611 2.02 0.9404 4.222 1.8953 6.25 2.6248 1.981 0.7123 3.962 1.2726 5.476 1.3044 2.522 0.0529 18.049 0.0528 32.908 0.0397 7.438-0.0066 14.72-0.0164 20.142-0.0246 2.711-0.0041 4.957-0.0078 6.526-0.0105l0.956-0.0017z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<rect x="187.5" y="51.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
<rect x="1.5" y="51.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
</g><defs> |
|||
<linearGradient id="paint0_linear_2474_252376" x1="32.98" x2="32.532" y1="64" y2="136" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
<linearGradient id="paint1_linear_2474_252376" x1="129.76" x2="129.33" y1="64" y2="136" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
</defs> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.1 KiB |
@ -0,0 +1,174 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Horizontal connector", |
|||
"description": "Horizontal connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "arrow", |
|||
"stateRenderFunction": "var arrow = ctx.values.arrow;\nif (arrow) {\n element.show();\n var arrowDirection = ctx.values.arrowDirection;\n var direticon = element.remember('direticon');\n var angle = arrowDirection ? 0 : 180;\n if (!direticon) {\n element.transform({rotate: angle});\n } else {\n ctx.api.transform({rotate: angle, originY: 100});\n element.remember('direticon', false);\n }\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "arrow", |
|||
"name": "{i18n:scada.symbol.arrow-presence}", |
|||
"hint": "{i18n:scada.symbol.arrow-presence-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.present}", |
|||
"falseLabel": "{i18n:scada.symbol.absent}", |
|||
"stateLabel": "{i18n:scada.symbol.arrow-present}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "arrowDirection", |
|||
"name": "{i18n:scada.symbol.arrow-direction}", |
|||
"hint": "{i18n:scada.symbol.arrow-direction-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.forward}", |
|||
"falseLabel": "{i18n:scada.symbol.reverse}", |
|||
"stateLabel": "{i18n:scada.symbol.forward}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M0 100H200" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/><path d="M129 100L71 129V71L129 100Z" fill="#1A1A1A" tb:tag="arrow"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 77 KiB |
@ -0,0 +1,552 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="1e3" height="600" fill="none" version="1.1" viewBox="0 0 1e3 600"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Horizontal tank", |
|||
"description": "Horizontal tank with level visualizations.", |
|||
"searchTags": [ |
|||
"horizontal tank", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 5, |
|||
"widgetSizeY": 3, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.tankColor});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "fluid-background", |
|||
"stateRenderFunction": " var color = ctx.properties.fluidColor;\n element.attr({fill: color, 'fill-opacity': 1});\n \n var valueSet = element.remember('valueSet');\n if (!valueSet) {\n element.remember('valueSet', true);\n element.attr({height: 0});\n }\n \n var currentVolume = ctx.values.currentVolume; \n var tankCapacity = ctx.values.tankCapacity; \n\n var height = currentVolume / tankCapacity;\n height = Math.max(0, Math.min(1, height))*592; \n \n var elementHeight = element.remember('height');\n if (height !== elementHeight) {\n element.remember('height', height);\n element.attr({height: height});\n }", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scale", |
|||
"stateRenderFunction": "if (!ctx.properties.scale) {\n element.hide();\n} else {\n var scaleSet = element.remember('scaleSet');\n if (!scaleSet) {\n element.remember('scaleSet', true);\n element.clear();\n \n var majorIntervals = ctx.properties.majorIntervals;\n var minorIntervals = ctx.properties.minorIntervals;\n \n var start = 3;\n var majorIntervalLength = 592 / majorIntervals;\n var minorIntervalLength = majorIntervalLength / minorIntervals;\n for (var i = 0; i < majorIntervals + 1; i++) {\n var y = start + i * majorIntervalLength;\n var line = ctx.svg.line(208, y, 240, y).stroke({ width: 3 }).attr({class: 'majorTick'});\n element.add(line);\n var majorText = (100 - i * (100/majorIntervals)).toFixed(0);\n var majorTickText = ctx.svg.text(majorText);\n if (i === 0) {\n majorTickText.attr({x: 198, y: y + 10, 'text-anchor': 'end', class: 'majorTickText'});\n } else if (i === majorIntervals) {\n majorTickText.attr({x: 198, y: y - 5, 'text-anchor': 'end', class: 'majorTickText'});\n } else {\n majorTickText.attr({x: 198, y: y + 2, 'text-anchor': 'end', class: 'majorTickText'});\n }\n majorTickText.first().attr({'dominant-baseline': 'middle'});\n element.add(majorTickText);\n if (i < majorIntervals) {\n drawMinorTicks(y, minorIntervals, minorIntervalLength);\n }\n }\n }\n \n var majorFont = ctx.properties.majorFont;\n var majorColor = ctx.properties.majorColor;\n var minorColor = ctx.properties.minorColor;\n \n var majorTicks = element.find('line.majorTick');\n majorTicks.forEach(t => t.attr({stroke: majorColor}));\n \n var majorTicksText = element.find('text.majorTickText');\n ctx.api.font(majorTicksText, majorFont, majorColor);\n \n var minorTicks = element.find('line.minorTick');\n minorTicks.forEach(t => t.attr({stroke: minorColor}));\n}\n\nfunction drawMinorTicks(start, minorIntervals, minorIntervalLength) {\n for (var i = 1; i < minorIntervals; i++) {\n var minorY = start + i * minorIntervalLength;\n var minorLine = ctx.svg.line(220, minorY, 240, minorY).stroke({ width: 3 }).attr({class: 'minorTick'});\n element.add(minorLine);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "tankCapacity", |
|||
"name": "{i18n:scada.symbol.tank-capacity}", |
|||
"hint": "{i18n:scada.symbol.tank-capacity-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "tankCapacity" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "currentVolume", |
|||
"name": "{i18n:scada.symbol.current-volume}", |
|||
"hint": "{i18n:scada.symbol.current-volume-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "liquidVolume" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "tankColor", |
|||
"name": "{i18n:scada.symbol.tank-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "fluidColor", |
|||
"name": "{i18n:scada.symbol.fluid-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scale", |
|||
"name": "{i18n:scada.symbol.scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorIntervals", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "number", |
|||
"default": 10, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": false, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "majorFont", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 24, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorColor", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "color", |
|||
"default": "#00000061", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorIntervals", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "number", |
|||
"default": 5, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorColor", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "color", |
|||
"default": "#0000001F", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m174 600c-174 0-174-151.63-174-239 4.9551e-6 -1.386 9.6938e-6 -2.741 1.4223e-5 -4.065 1.18e-8 -4e-3 -1.4223e-5 -113.93-1.4223e-5 -113.94 0-87.373-8.3346e-7 -243 174-243h653.5c173 0 172.5 156.06 172.5 243v118c0 86.939 0 239-172.5 239h-653.5z" fill="#EBEBEB" tb:tag="background"/><path d="m174 599c-43.353 0-75.782-9.444-100.06-24.9-24.272-15.456-40.469-36.971-51.28-61.242-21.649-48.601-21.664-108.13-21.663-151.86l2e-5 -4.065-2e-5 -113.94c0-43.727 0.0143-104.26 21.666-153.86 10.814-24.774 27.013-46.788 51.286-62.616 24.274-15.828 56.7-25.52 100.05-25.52h653.5c43.097 0 75.302 9.7177 99.388 25.578 24.085 15.86 40.129 37.914 50.819 62.716 21.294 49.406 21.294 109.58 21.293 153.04v118.67c0 43.512-0.015 103.04-21.477 151.7-10.719 24.299-26.776 45.854-50.838 61.342-24.063 15.489-56.209 24.959-99.185 24.959h-653.5z" stroke="#000" stroke-opacity=".87" stroke-width="2"/><mask id="mask0_3610_178965" x="2" y="2" width="996" height="596" style="mask-type:alpha" maskUnits="userSpaceOnUse"> |
|||
<path d="m175.3 598c-173.3 0-173.3-150.62-173.3-237.41 1e-5 -1.377 1e-5 -2.723 1e-5 -4.038 1e-5 -3e-3 -1e-5 -113.17-1e-5 -113.18 0-86.79 0-241.38 173.3-241.38h650.89c172.31 0 171.81 155.02 171.81 241.38v117.21c0 86.36 0 237.41-171.81 237.41h-650.89z" fill="#EBEBEB"/> |
|||
<path d="m175.3 597c-43.18 0-75.478-9.381-99.655-24.734-24.175-15.352-40.305-36.723-51.073-60.831-21.561-48.274-21.576-107.4-21.576-150.84l2e-5 -4.038-2e-5 -113.18c0-43.436 0.01436-103.56 21.579-152.84 10.77-24.608 26.904-46.474 51.079-62.196 24.176-15.722 56.471-25.349 99.646-25.349h650.89c42.925 0 75 9.653 98.989 25.407 23.988 15.754 39.967 37.659 50.614 62.295 21.208 49.075 21.208 108.84 21.207 152.01v117.88c0 43.222-0.015 102.35-21.391 150.68-10.675 24.136-26.667 45.547-50.631 60.931-23.967 15.385-55.984 24.792-98.788 24.792h-650.89z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
</mask><g mask="url(#mask0_3610_178965)"> |
|||
<rect transform="scale(1,-1)" x="2" y="-596" width="996" height="419" fill="#c8dff7" tb:tag="fluid-background"/> |
|||
</g><g tb:tag="scale"> |
|||
<line x1="208" x2="240" y1="3.5" y2="3.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="15.359" y2="15.359" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="27.221" y2="27.221" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="39.08" y2="39.08" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="50.939" y2="50.939" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="62.801" y2="62.801" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="74.66" y2="74.66" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="86.52" y2="86.52" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="98.381" y2="98.381" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="110.24" y2="110.24" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="122.1" y2="122.1" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="133.96" y2="133.96" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="145.82" y2="145.82" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="157.68" y2="157.68" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="169.54" y2="169.54" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="181.4" y2="181.4" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="193.26" y2="193.26" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="205.12" y2="205.12" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="216.98" y2="216.98" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="228.84" y2="228.84" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="240.7" y2="240.7" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="252.56" y2="252.56" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="264.42" y2="264.42" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="276.28" y2="276.28" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="288.14" y2="288.14" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="300" y2="300" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="311.86" y2="311.86" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="323.72" y2="323.72" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="335.58" y2="335.58" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="347.44" y2="347.44" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="359.3" y2="359.3" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="371.16" y2="371.16" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="383.02" y2="383.02" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="394.88" y2="394.88" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="406.74" y2="406.74" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="418.6" y2="418.6" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="430.46" y2="430.46" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="442.32" y2="442.32" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="454.18" y2="454.18" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="466.04" y2="466.04" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="477.9" y2="477.9" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="489.76" y2="489.76" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="501.62" y2="501.62" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="513.48" y2="513.48" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="525.34" y2="525.34" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="537.2" y2="537.2" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="549.06" y2="549.06" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="560.92" y2="560.92" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="572.78" y2="572.78" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="220" x2="240" y1="584.64" y2="584.64" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="208" x2="240" y1="596.5" y2="596.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<path d="m167.58 4.8789v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.4375zm17.301 7.1602v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.257 0.9375-0.632 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.441 0.4102-2.285 0.4102-0.672 0-1.297-0.086-1.875-0.2578-0.571-0.1719-1.086-0.4414-1.547-0.8086s-0.856-0.8399-1.184-1.418c-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.257-1.7539-0.257-2.8242v-2.789c0-1.3438 0.132-2.4766 0.398-3.3985 0.266-0.92968 0.644-1.6836 1.137-2.2617 0.492-0.58594 1.078-1.0117 1.757-1.2774 0.688-0.26562 1.454-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.852 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80464 0.258 1.7422 0.258 2.8125zm-2.824 3.1875v-3.6094c0-0.6797-0.039-1.2774-0.117-1.793-0.079-0.52344-0.196-0.96484-0.352-1.3242-0.148-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.613-0.16406-0.973-0.16406-0.437 0-0.828 0.08593-1.172 0.25781-0.343 0.16406-0.632 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59378-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.118 1.8164 0.078 0.5234 0.195 0.9726 0.351 1.3476 0.156 0.3672 0.344 0.6719 0.563 0.9141 0.226 0.2344 0.484 0.4062 0.773 0.5156 0.297 0.1094 0.621 0.1641 0.973 0.1641 0.445 0 0.84-0.086 1.183-0.2578 0.344-0.1719 0.633-0.4454 0.868-0.8204 0.234-0.3828 0.41-0.8789 0.527-1.4882 0.117-0.6094 0.176-1.3399 0.176-2.1914zm16.715-3.1875v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4414-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.258-1.7539-0.258-2.8242v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.92968 0.644-1.6836 1.136-2.2617 0.492-0.58594 1.078-1.0117 1.758-1.2774 0.688-0.26562 1.453-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.851 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80464 0.258 1.7422 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.6797-0.039-1.2774-0.117-1.793-0.078-0.52344-0.195-0.96484-0.351-1.3242-0.149-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.614-0.16406-0.973-0.16406-0.438 0-0.828 0.08593-1.172 0.25781-0.344 0.16406-0.633 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59378-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4454 0.867-0.8204 0.235-0.3828 0.41-0.8789 0.528-1.4882 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m176.03 77.174h0.235c1.078 0 1.976-0.1406 2.695-0.4218 0.727-0.2891 1.305-0.6875 1.734-1.1954 0.43-0.5078 0.739-1.1054 0.926-1.7929 0.188-0.6875 0.281-1.4336 0.281-2.2383v-2.9414c0-0.6953-0.074-1.3047-0.222-1.8281-0.141-0.5313-0.344-0.9727-0.61-1.3243-0.258-0.3593-0.558-0.6289-0.902-0.8086-0.336-0.1796-0.699-0.2695-1.09-0.2695-0.43 0-0.816 0.0977-1.16 0.293-0.336 0.1875-0.621 0.4492-0.856 0.7851-0.226 0.3282-0.402 0.7149-0.527 1.1602-0.117 0.4375-0.176 0.9062-0.176 1.4062 0 0.4688 0.055 0.9219 0.164 1.3594 0.118 0.4297 0.289 0.8125 0.516 1.1485 0.227 0.3359 0.512 0.6015 0.856 0.7968 0.343 0.1953 0.746 0.293 1.207 0.293 0.437 0 0.839-0.082 1.207-0.2461 0.367-0.1719 0.687-0.4023 0.961-0.6914 0.273-0.2891 0.488-0.6133 0.644-0.9727 0.156-0.3593 0.242-0.7265 0.258-1.1015l1.078 0.3281c0 0.5938-0.125 1.1797-0.375 1.7578-0.242 0.5703-0.582 1.0938-1.02 1.5703-0.429 0.4688-0.933 0.8438-1.511 1.125-0.571 0.2813-1.192 0.4219-1.864 0.4219-0.812 0-1.531-0.1523-2.156-0.457-0.617-0.3125-1.133-0.7344-1.547-1.2656-0.406-0.5313-0.711-1.1407-0.914-1.8282s-0.304-1.4101-0.304-2.1679c0-0.8204 0.125-1.5899 0.375-2.3086 0.25-0.7188 0.613-1.3516 1.089-1.8985 0.477-0.5547 1.055-0.9843 1.735-1.289 0.687-0.3125 1.465-0.4688 2.332-0.4688 0.922 0 1.73 0.1797 2.426 0.5391 0.695 0.3594 1.281 0.8554 1.757 1.4883 0.477 0.6328 0.836 1.3671 1.079 2.2031 0.242 0.8359 0.363 1.7344 0.363 2.6953v0.9961c0 1.0078-0.09 1.9805-0.27 2.918-0.179 0.9296-0.472 1.7929-0.879 2.5898-0.398 0.7891-0.925 1.4844-1.582 2.0859-0.648 0.5938-1.445 1.0586-2.39 1.3946-0.938 0.3281-2.039 0.4922-3.305 0.4922h-0.258zm22.739-7.7343v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2851-0.492 0.586-1.082 1.0157-1.769 1.2891-0.68 0.2734-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4415-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.258-1.7539-0.258-2.8242v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.9297 0.644-1.6836 1.136-2.2617 0.492-0.5859 1.078-1.0117 1.758-1.2773 0.688-0.2657 1.453-0.3985 2.297-0.3985 0.68 0 1.305 0.086 1.875 0.2578 0.578 0.1641 1.094 0.4258 1.547 0.7852 0.461 0.3594 0.851 0.8281 1.172 1.4062 0.328 0.5703 0.578 1.2618 0.75 2.0743 0.172 0.8046 0.258 1.7421 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.6797-0.039-1.2774-0.117-1.793-0.078-0.5234-0.195-0.9648-0.351-1.3242-0.149-0.3672-0.336-0.6641-0.563-0.8906-0.226-0.2344-0.484-0.4024-0.773-0.5039-0.289-0.1094-0.614-0.1641-0.973-0.1641-0.438 0-0.828 0.0859-1.172 0.2578-0.344 0.1641-0.633 0.4297-0.867 0.7969s-0.414 0.8515-0.539 1.4531c-0.117 0.5938-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4454 0.867-0.8204 0.235-0.3828 0.41-0.8789 0.528-1.4882 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m184.91 132.15c0 1.063-0.246 1.957-0.738 2.684s-1.164 1.277-2.016 1.652c-0.844 0.368-1.797 0.551-2.859 0.551-1.063 0-2.02-0.183-2.871-0.551-0.852-0.375-1.524-0.925-2.016-1.652s-0.738-1.621-0.738-2.684c0-0.703 0.136-1.339 0.41-1.91 0.273-0.578 0.66-1.074 1.16-1.488 0.508-0.422 1.102-0.746 1.781-0.973 0.688-0.226 1.438-0.339 2.25-0.339 1.078 0 2.043 0.199 2.895 0.597 0.851 0.399 1.519 0.949 2.004 1.653 0.492 0.703 0.738 1.523 0.738 2.46zm-2.836-0.14c0-0.57-0.117-1.07-0.351-1.5-0.235-0.43-0.563-0.762-0.985-0.996-0.422-0.235-0.91-0.352-1.465-0.352-0.562 0-1.05 0.117-1.465 0.352-0.414 0.234-0.738 0.566-0.972 0.996-0.227 0.43-0.34 0.93-0.34 1.5 0 0.578 0.113 1.078 0.34 1.5 0.226 0.414 0.551 0.73 0.972 0.949 0.422 0.219 0.918 0.328 1.489 0.328 0.57 0 1.062-0.109 1.476-0.328s0.735-0.535 0.961-0.949c0.227-0.422 0.34-0.922 0.34-1.5zm2.449-7.781c0 0.851-0.226 1.609-0.679 2.273-0.446 0.664-1.063 1.188-1.852 1.57-0.789 0.375-1.687 0.563-2.695 0.563-1.016 0-1.922-0.188-2.719-0.563-0.789-0.382-1.41-0.906-1.863-1.57-0.446-0.664-0.668-1.422-0.668-2.273 0-1.016 0.222-1.872 0.668-2.567 0.453-0.703 1.074-1.238 1.863-1.605s1.691-0.551 2.707-0.551 1.918 0.184 2.707 0.551 1.406 0.902 1.852 1.605c0.453 0.695 0.679 1.551 0.679 2.567zm-2.824 0.093c0-0.508-0.101-0.953-0.305-1.336-0.195-0.39-0.472-0.695-0.832-0.914-0.359-0.218-0.785-0.328-1.277-0.328s-0.918 0.106-1.277 0.317c-0.36 0.211-0.637 0.507-0.832 0.89-0.196 0.383-0.293 0.84-0.293 1.371 0 0.524 0.097 0.981 0.293 1.371 0.195 0.383 0.472 0.684 0.832 0.903 0.367 0.218 0.797 0.328 1.289 0.328s0.918-0.11 1.277-0.328c0.36-0.219 0.637-0.52 0.832-0.903 0.195-0.39 0.293-0.847 0.293-1.371zm17.067 2.52v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m185.09 177.14v1.547l-6.82 15.515h-2.977l6.809-14.812h-8.836v-2.25zm13.68 7.101v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m182.29 234.43h0.352v2.308h-0.2c-1.007 0-1.879 0.156-2.613 0.469-0.726 0.312-1.324 0.742-1.793 1.289s-0.82 1.188-1.055 1.922c-0.226 0.726-0.339 1.5-0.339 2.32v2.684c0 0.68 0.074 1.281 0.222 1.805 0.149 0.515 0.356 0.949 0.621 1.3 0.274 0.344 0.586 0.606 0.938 0.785 0.351 0.18 0.73 0.27 1.137 0.27 0.421 0 0.804-0.086 1.148-0.258 0.344-0.18 0.637-0.426 0.879-0.738 0.242-0.313 0.426-0.684 0.551-1.113 0.125-0.43 0.187-0.899 0.187-1.407 0-0.484-0.062-0.937-0.187-1.359-0.117-0.43-0.293-0.805-0.528-1.125-0.234-0.328-0.527-0.582-0.879-0.762-0.343-0.187-0.742-0.281-1.195-0.281-0.562 0-1.074 0.133-1.535 0.398-0.453 0.266-0.82 0.614-1.102 1.043-0.273 0.422-0.421 0.872-0.445 1.348l-1.078-0.351c0.063-0.727 0.223-1.379 0.48-1.958 0.266-0.578 0.614-1.07 1.043-1.476 0.43-0.406 0.926-0.715 1.489-0.926 0.57-0.219 1.195-0.328 1.875-0.328 0.828 0 1.547 0.156 2.156 0.469 0.609 0.312 1.113 0.738 1.512 1.277 0.406 0.531 0.707 1.141 0.902 1.828 0.203 0.68 0.305 1.391 0.305 2.133 0 0.82-0.125 1.586-0.375 2.297-0.25 0.703-0.617 1.32-1.102 1.851-0.476 0.532-1.058 0.946-1.746 1.243-0.68 0.297-1.453 0.445-2.32 0.445-0.914 0-1.731-0.176-2.449-0.527-0.711-0.352-1.317-0.836-1.817-1.453-0.492-0.618-0.867-1.329-1.125-2.133-0.258-0.805-0.387-1.657-0.387-2.555v-1.172c0-1.297 0.164-2.519 0.493-3.668 0.328-1.156 0.832-2.176 1.511-3.058 0.688-0.883 1.567-1.575 2.637-2.075 1.07-0.507 2.348-0.761 3.832-0.761zm16.481 7.207v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m176.72 301.07-2.25-0.55 0.925-8.578h9.2v2.39h-6.856l-0.469 4.184c0.266-0.157 0.633-0.309 1.102-0.457 0.469-0.157 1.004-0.235 1.605-0.235 0.805 0 1.524 0.133 2.157 0.399 0.64 0.258 1.183 0.636 1.629 1.136 0.445 0.493 0.785 1.094 1.019 1.805 0.235 0.703 0.352 1.496 0.352 2.379 0 0.789-0.117 1.527-0.352 2.215-0.226 0.687-0.57 1.293-1.031 1.816-0.461 0.524-1.043 0.934-1.746 1.231-0.696 0.289-1.52 0.433-2.473 0.433-0.711 0-1.394-0.101-2.051-0.304-0.648-0.211-1.23-0.52-1.746-0.926-0.515-0.414-0.929-0.922-1.242-1.524-0.312-0.609-0.492-1.308-0.539-2.097h2.766c0.07 0.555 0.222 1.027 0.457 1.418 0.242 0.383 0.562 0.676 0.961 0.879 0.398 0.203 0.859 0.304 1.382 0.304 0.477 0 0.887-0.082 1.231-0.246 0.344-0.172 0.629-0.414 0.855-0.726 0.235-0.321 0.407-0.696 0.516-1.125 0.117-0.43 0.176-0.907 0.176-1.43 0-0.5-0.067-0.957-0.199-1.371-0.125-0.414-0.317-0.774-0.575-1.078-0.25-0.305-0.566-0.539-0.949-0.703-0.383-0.172-0.824-0.258-1.324-0.258-0.672 0-1.188 0.098-1.547 0.293-0.352 0.195-0.68 0.437-0.984 0.726zm22.047-2.027v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m185.51 360.32v2.25h-12.305l-0.094-1.699 7.36-11.531h2.261l-2.449 4.195-4.23 6.785zm-2.133-10.98v17.062h-2.824v-17.062zm15.391 7.101v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m177.07 413.99h1.688c0.656 0 1.199-0.113 1.629-0.34 0.437-0.226 0.761-0.539 0.972-0.937 0.211-0.399 0.317-0.856 0.317-1.371 0-0.539-0.098-1-0.293-1.383-0.188-0.391-0.477-0.691-0.867-0.902-0.383-0.211-0.872-0.317-1.465-0.317-0.5 0-0.953 0.102-1.36 0.305-0.398 0.195-0.715 0.476-0.949 0.844-0.234 0.359-0.351 0.789-0.351 1.289h-2.836c0-0.907 0.238-1.711 0.714-2.414 0.477-0.704 1.125-1.254 1.946-1.653 0.828-0.406 1.758-0.609 2.789-0.609 1.101 0 2.062 0.184 2.883 0.551 0.828 0.359 1.472 0.898 1.933 1.617s0.692 1.609 0.692 2.672c0 0.484-0.114 0.976-0.34 1.476-0.227 0.5-0.563 0.957-1.008 1.371-0.445 0.407-1 0.739-1.664 0.997-0.664 0.25-1.434 0.374-2.309 0.374h-2.121zm0 2.203v-1.547h2.121c1 0 1.852 0.118 2.555 0.352 0.711 0.234 1.289 0.559 1.734 0.973 0.446 0.406 0.77 0.871 0.973 1.394 0.211 0.524 0.316 1.078 0.316 1.664 0 0.797-0.144 1.508-0.433 2.133-0.281 0.617-0.684 1.141-1.207 1.57-0.524 0.43-1.137 0.754-1.84 0.973-0.695 0.219-1.453 0.328-2.273 0.328-0.735 0-1.438-0.101-2.11-0.305-0.672-0.203-1.273-0.503-1.805-0.902-0.531-0.406-0.953-0.91-1.265-1.512-0.305-0.609-0.457-1.312-0.457-2.109h2.824c0 0.508 0.117 0.957 0.352 1.348 0.242 0.383 0.578 0.683 1.007 0.902 0.438 0.219 0.938 0.328 1.5 0.328 0.594 0 1.106-0.105 1.536-0.316 0.429-0.211 0.757-0.524 0.984-0.938 0.234-0.414 0.352-0.914 0.352-1.5 0-0.664-0.129-1.203-0.387-1.617s-0.625-0.719-1.102-0.914c-0.476-0.203-1.039-0.305-1.687-0.305zm21.696-2.355v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m185.2 478.95v2.25h-11.437v-1.933l5.554-6.059c0.61-0.687 1.09-1.281 1.442-1.781 0.351-0.5 0.598-0.949 0.738-1.348 0.149-0.406 0.223-0.801 0.223-1.183 0-0.54-0.102-1.012-0.305-1.418-0.195-0.415-0.484-0.739-0.867-0.973-0.383-0.242-0.848-0.363-1.395-0.363-0.632 0-1.164 0.136-1.593 0.41-0.43 0.273-0.754 0.652-0.973 1.137-0.219 0.476-0.328 1.023-0.328 1.64h-2.824c0-0.992 0.226-1.898 0.679-2.719 0.453-0.828 1.11-1.484 1.969-1.968 0.86-0.493 1.895-0.739 3.106-0.739 1.14 0 2.109 0.192 2.906 0.575 0.797 0.382 1.402 0.925 1.816 1.628 0.422 0.704 0.633 1.536 0.633 2.497 0 0.531-0.086 1.058-0.258 1.582-0.172 0.523-0.418 1.046-0.738 1.57-0.313 0.516-0.684 1.035-1.113 1.558-0.43 0.516-0.903 1.04-1.418 1.571l-3.692 4.066zm13.575-7.711v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m181.47 521.48v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.437zm17.301 7.16v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m198.77 586.04v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
</g><path d="m336.32 0s-336.32 0-336.32 100.5v492.54c0 3.9768 8.9546 6.9606 20 6.9606h960c11.045 0 20-2.9838 20-6.9606v-492.54c0-100.5-330.35-100.5-330.35-100.5h-169.65zm335.35 121.8c-6.4433 0-11.667 1.8804-11.667 4.2v450.6c0 2.3196 5.2233 4.2 11.667 4.2h73.329c6.4433 0 11.667-1.8804 11.667-4.2v-450.6c0-2.3196-5.2233-4.2-11.667-4.2z" fill="#000" fill-opacity="0" style="stroke-width:.55902" tb:tag="clickArea"/><g fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0,-4.9442)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 115 KiB |
@ -0,0 +1,392 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Horizontal valve", |
|||
"description": "Horizontal valve with various states.", |
|||
"searchTags": [ |
|||
"valve", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "var color = ctx.properties.closedColor;\nif (ctx.values.opened) {\n color = ctx.properties.openedColor;\n}\nelement.attr({fill: color});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "var opened = ctx.values.opened;\nvar action = opened ? 'close' : 'open';\n\nctx.api.callAction(event, action, undefined, {\n next: () => {\n ctx.api.setValue('opened', !opened);\n }\n});" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "opened", |
|||
"name": "{i18n:scada.symbol.opened}", |
|||
"hint": "{i18n:scada.symbol.opened-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.opened}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "open" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "open", |
|||
"name": "{i18n:scada.symbol.open}", |
|||
"hint": "{i18n:scada.symbol.open-hint}", |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "open" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "CONSTANT", |
|||
"constantValue": true, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "close", |
|||
"name": "{i18n:scada.symbol.close}", |
|||
"hint": "{i18n:scada.symbol.close-hint}", |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "open" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "CONSTANT", |
|||
"constantValue": false, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "openedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.opened}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "closedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.closed-mode}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": false, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M100 100V47" stroke="#000" stroke-opacity=".87" stroke-width="2"/><g fill="#fff" tb:tag="background"> |
|||
<path d="m101 100-101-58v116l101-58z"/> |
|||
<path d="m0.99999 156.27 97.992-56.273-97.992-56.273v112.55z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="M99 100L200 42V158L99 100Z"/> |
|||
<path d="M199 156.273L101.008 100L199 43.7274V156.273Z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
</g><rect transform="rotate(-90 52 48)" x="52" y="48" width="48" height="96"/><rect transform="rotate(-90 53 47)" x="53" y="47" width="46" height="94" stroke="#000" stroke-opacity=".87" stroke-width="2"/><path d="m67.264 0s-67.264 0-67.264 33.5v164.18c0 1.3256 1.7909 2.3202 4 2.3202h192c2.209 0 4-0.99459 4-2.3202v-164.18c0-33.5-66.07-33.5-66.07-33.5h-33.929zm67.07 40.6c-1.2887 0-2.3333 0.6268-2.3333 1.4v150.2c0 0.7732 1.0447 1.4 2.3333 1.4h14.666c1.2887 0 2.3333-0.6268 2.3333-1.4v-150.2c0-0.7732-1.0447-1.4-2.3333-1.4z" fill="#000" fill-opacity="0" tb:tag="clickArea"/><g transform="translate(0,116)" fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0,116)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 85 KiB |
|
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 113 KiB |
|
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 121 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 114 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 57 KiB |
@ -0,0 +1,82 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Left bottom elbow connector", |
|||
"description": "Left bottom elbow connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M100 200L100 131C100 113.879 86.1208 100 69 100L0 100" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
@ -0,0 +1,87 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Left tee connector", |
|||
"description": "Left tee connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line-color", |
|||
"stateRenderFunction": "element.fill(ctx.properties.lineColor);\nelement.stroke(ctx.properties.lineColor);", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M100 0V200" stroke="#1A1A1A" stroke-width="6" id="path6" tb:tag="line"/><path d="M100 113V87C100 87 100 100 86 100C100 100 100 113 100 113Z" fill="#1A1A1A" stroke="#1A1A1A" stroke-width="2" id="path8" tb:tag="line-color"/><path d="M0 100H85C93.2843 100 100 93.2843 100 85V0" stroke="#1A1A1A" stroke-width="6" id="path4" tb:tag="line"/><path d="M0 100H85C93.2843 100 100 106.716 100 115V200" stroke="#1A1A1A" stroke-width="6" id="path2" tb:tag="line"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.7 KiB |
@ -0,0 +1,82 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Left top elbow connector", |
|||
"description": "Left top elbow connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M0 100H69C86.1208 100 100 86.1208 100 69V0" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.2 KiB |
@ -0,0 +1,97 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="400" height="200" fill="none" version="1.1" viewBox="0 0 400 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "Long horizontal broken pipe", |
|||
"description": "Long horizontal broken pipe.", |
|||
"searchTags": [ |
|||
"long pipe", |
|||
"horizontal pipe", |
|||
"broken pipe" |
|||
], |
|||
"widgetSizeX": 2, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "pipe-background", |
|||
"stateRenderFunction": "var color = ctx.properties.pipeColor;\nelement.attr({fill: color});", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "pipeColor", |
|||
"name": "{i18n:scada.symbol.pipe-color}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g tb:tag="clickArea"> |
|||
<path d="m14 64s158.08 0.2293 165.06 0c6.982-0.2293 16.955-6 16.955-6l-14.461 21 14.461 6.5-10.472 9 14.461 11-18.45 6.5 9.973 6-2.494 11.5 6.982 14.5s-9.973-8-16.955-8h-165.06v-72z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m14 64s158.08 0.2293 165.06 0c6.982-0.2293 16.955-6 16.955-6l-14.461 21 14.461 6.5-10.472 9 14.461 11-18.45 6.5 9.973 6-2.494 11.5 6.982 14.5s-9.973-8-16.955-8h-165.06v-72z" fill="url(#paint0_linear_2474_252377)"/> |
|||
<path d="m190.75 62.288c0.237-0.1035 0.47-0.2069 0.698-0.3097l-11.136 16.171-1.02 1.4814 1.641 0.7374 12.308 5.5325-8.682 7.4618-1.406 1.2087 13.723 10.439-15.827 5.575-3.004 1.058 11.782 7.089-2.265 10.45-0.11 0.504 0.224 0.465 4.49 9.325c-0.401-0.252-0.818-0.509-1.25-0.766-3.376-2.005-7.926-4.21-11.862-4.21h-163.56v-68.998l0.2749 4e-4 5.029 0.0069c4.3361 0.0058 10.538 0.0139 18.003 0.0228 14.929 0.018 34.907 0.0394 55.103 0.0538 40.363 0.0286 81.673 0.0289 85.197-0.0868 3.794-0.1246 8.256-1.7286 11.646-3.2108z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<path d="m218 57s13.5 6.895 18.5 7 149.5 0 149.5 0v72s-142-0.086-149.5 0-18.5 5-18.5 5l6-14-15-14 16.5-5-7.5-6 6-13-18-13 19.5-4.5-7.5-14.5z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m218 57s13.5 6.895 18.5 7 149.5 0 149.5 0v72s-142-0.086-149.5 0-18.5 5-18.5 5l6-14-15-14 16.5-5-7.5-6 6-13-18-13 19.5-4.5-7.5-14.5z" fill="url(#paint1_linear_2474_252377)"/> |
|||
<path d="m384.5 65.501v68.998h-0.096l-4.519-3e-3c-3.898-2e-3 -9.474-5e-3 -16.189-8e-3 -13.43-7e-3 -31.414-0.015-49.633-0.02-36.428-0.011-73.818-0.011-77.58 0.032-3.999 0.046-8.811 1.363-12.523 2.61-1.157 0.389-2.223 0.777-3.144 1.127l4.563-10.646 0.415-0.969-0.771-0.719-13.096-12.223 14.008-4.244 2.727-0.827-2.225-1.78-6.583-5.267 5.508-11.933 0.518-1.1215-1.002-0.7231-15.321-11.065 16.28-3.757 1.883-0.4345-0.888-1.7162-5.428-10.495c1.018 0.4748 2.167 0.9969 3.374 1.5206 2.019 0.877 4.219 1.7672 6.244 2.4474 1.982 0.6654 3.95 1.1843 5.446 1.2158 2.522 0.0529 39.926 0.0528 76.658 0.0397 18.375-0.0066 36.594-0.0164 50.219-0.0246 6.812-0.0041 12.476-0.0078 16.437-0.0105l4.595-0.0031 0.123-1e-4z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<rect x="1.5" y="51.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
<rect x="387.5" y="51.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
</g><defs> |
|||
<linearGradient id="paint0_linear_2474_252377" x1="32.929" x2="32.48" y1="64" y2="136" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
<linearGradient id="paint1_linear_2474_252377" x1="329.76" x2="329.33" y1="64" y2="136" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
</defs> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.2 KiB |
@ -0,0 +1,176 @@ |
|||
<svg width="400" height="200" fill="none" version="1.1" viewBox="0 0 400 200" xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg"> |
|||
<tb:metadata><![CDATA[{ |
|||
"title": "HP Long horizontal connector", |
|||
"description": "Long horizontal connector", |
|||
"widgetSizeX": 2, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "arrow", |
|||
"stateRenderFunction": "var arrow = ctx.values.arrow;\nif (arrow) {\n element.show();\n var arrowDirection = ctx.values.arrowDirection;\n var direticon = element.remember('direticon');\n var angle = arrowDirection ? 0 : 180;\n if (!direticon) {\n element.transform({rotate: angle});\n } else {\n ctx.api.transform({rotate: angle, originY: 100});\n element.remember('direticon', false);\n }\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "arrow", |
|||
"name": "{i18n:scada.symbol.arrow-presence}", |
|||
"hint": "{i18n:scada.symbol.arrow-presence-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.present}", |
|||
"falseLabel": "{i18n:scada.symbol.absent}", |
|||
"stateLabel": "{i18n:scada.symbol.arrow-present}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "arrowDirection", |
|||
"name": "{i18n:scada.symbol.arrow-direction}", |
|||
"hint": "{i18n:scada.symbol.arrow-direction-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.forward}", |
|||
"falseLabel": "{i18n:scada.symbol.reverse}", |
|||
"stateLabel": "{i18n:scada.symbol.forward}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m0 100h400" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/> |
|||
<path d="m229 100-58 29v-58z" fill="#1a1a1a" tb:tag="arrow"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.2 KiB |
@ -0,0 +1,97 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="400" fill="none" version="1.1" viewBox="0 0 200 400"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "Long vertical broken pipe", |
|||
"description": "Long vertical broken pipe.", |
|||
"searchTags": [ |
|||
"long pipe", |
|||
"vertical pipe", |
|||
"broken pipe" |
|||
], |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 2, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "pipe-background", |
|||
"stateRenderFunction": "var color = ctx.properties.pipeColor;\nelement.attr({fill: color});", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "pipeColor", |
|||
"name": "{i18n:scada.symbol.pipe-color}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g tb:tag="clickArea"> |
|||
<path d="m64 386s0.2293-158.08 0-165.06c-0.2293-6.982-6-16.955-6-16.955l21 14.461 6.5-14.461 9 10.472 11-14.461 6.5 18.45 6-9.973 11.5 2.494 14.5-6.982s-8 9.973-8 16.955v165.06h-72z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m64 386s0.2293-158.08 0-165.06c-0.2293-6.982-6-16.955-6-16.955l21 14.461 6.5-14.461 9 10.472 11-14.461 6.5 18.45 6-9.973 11.5 2.494 14.5-6.982s-8 9.973-8 16.955v165.06h-72z" fill="url(#paint0_linear_2474_252379)"/> |
|||
<path d="m62.288 209.25c-0.1035-0.237-0.2069-0.47-0.3097-0.698l16.171 11.136 1.4814 1.02 0.7374-1.641 5.5325-12.308 7.4618 8.682 1.2087 1.406 10.439-13.723 5.575 15.827 1.058 3.004 7.089-11.782 10.45 2.265 0.504 0.11 0.465-0.224 9.325-4.49c-0.252 0.401-0.509 0.818-0.766 1.25-2.005 3.376-4.21 7.926-4.21 11.862v163.56h-68.998l4e-4 -0.275 0.0069-5.029c0.0058-4.336 0.0139-10.538 0.0228-18.003 0.018-14.928 0.0394-34.906 0.0538-55.102 0.0286-40.363 0.0289-81.673-0.0868-85.197-0.1246-3.794-1.7286-8.256-3.2108-11.646z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<path d="m57 182s6.895-13.5 7-18.5 0-149.5 0-149.5h72s-0.086 142 0 149.5 5 18.5 5 18.5l-14-6-14 15-5-16.5-6 7.5-13-6-13 18-4.5-19.5-14.5 7.5z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m57 182s6.895-13.5 7-18.5 0-149.5 0-149.5h72s-0.086 142 0 149.5 5 18.5 5 18.5l-14-6-14 15-5-16.5-6 7.5-13-6-13 18-4.5-19.5-14.5 7.5z" fill="url(#paint1_linear_2474_252379)"/> |
|||
<path d="m65.501 15.5h68.998v0.0957l-3e-3 4.5197c-2e-3 3.8974-5e-3 9.4736-8e-3 16.188-7e-3 13.43-0.015 31.414-0.02 49.633-0.011 36.428-0.011 73.818 0.032 77.58 0.046 3.999 1.363 8.811 2.61 12.523 0.389 1.157 0.777 2.223 1.127 3.144l-10.646-4.563-0.969-0.415-0.719 0.771-12.223 13.096-4.244-14.008-0.827-2.727-1.78 2.225-5.267 6.583-11.933-5.508-1.1215-0.518-0.7231 1.002-11.065 15.321-3.757-16.28-0.4345-1.883-1.7162 0.888-10.495 5.428c0.4748-1.018 0.9969-2.167 1.5206-3.374 0.877-2.019 1.7672-4.219 2.4474-6.244 0.6654-1.982 1.1843-3.95 1.2158-5.446 0.0529-2.522 0.0528-39.926 0.0397-76.658-0.0066-18.375-0.0164-36.594-0.0246-50.219-0.0041-6.8125-0.0078-12.477-0.0105-16.438l-0.0031-4.5947-1e-4 -0.123z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<rect transform="rotate(-90 51.5 398.5)" x="51.5" y="398.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
<rect transform="rotate(-90 51.5 12.5)" x="51.5" y="12.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
</g><defs> |
|||
<linearGradient id="paint0_linear_2474_252379" x1="64" x2="136" y1="367.07" y2="367.52" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
<linearGradient id="paint1_linear_2474_252379" x1="64" x2="136" y1="70.24" y2="70.67" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
</defs> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.3 KiB |
@ -0,0 +1,174 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="400" fill="none" version="1.1" viewBox="0 0 200 400"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Long vertical connector", |
|||
"description": "Long vertical connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 2, |
|||
"tags": [ |
|||
{ |
|||
"tag": "arrow", |
|||
"stateRenderFunction": "var arrow = ctx.values.arrow;\nif (arrow) {\n element.show();\n var arrowDirection = ctx.values.arrowDirection;\n var direticon = element.remember('direticon');\n var angle = arrowDirection ? 0 : 180;\n if (!direticon) {\n element.transform({rotate: angle});\n } else {\n ctx.api.transform({rotate: angle, originY: 100});\n element.remember('direticon', false);\n }\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "arrow", |
|||
"name": "{i18n:scada.symbol.arrow-presence}", |
|||
"hint": "{i18n:scada.symbol.arrow-presence-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.present}", |
|||
"falseLabel": "{i18n:scada.symbol.absent}", |
|||
"stateLabel": "{i18n:scada.symbol.arrow-present}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "arrowDirection", |
|||
"name": "{i18n:scada.symbol.arrow-direction}", |
|||
"hint": "{i18n:scada.symbol.arrow-direction-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.forward}", |
|||
"falseLabel": "{i18n:scada.symbol.reverse}", |
|||
"stateLabel": "{i18n:scada.symbol.forward}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m100 400v-400" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/><path d="m100 171 29 58h-58l29-58z" fill="#1A1A1A" tb:tag="arrow"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.2 KiB |
@ -0,0 +1,551 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="2400" height="800" fill="none" version="1.1" viewBox="0 0 2400 800"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Pool", |
|||
"description": "Pool with level visualizations.", |
|||
"searchTags": [ |
|||
"pool", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 12, |
|||
"widgetSizeY": 4, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.tankColor});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "fluid-background", |
|||
"stateRenderFunction": " var color = ctx.properties.fluidColor;\n element.attr({fill: color, 'fill-opacity': 1});\n \n var valueSet = element.remember('valueSet');\n if (!valueSet) {\n element.remember('valueSet', true);\n element.attr({height: 0});\n }\n \n var currentVolume = ctx.values.currentVolume; \n var tankCapacity = ctx.values.tankCapacity; \n\n var height = currentVolume / tankCapacity;\n height = Math.max(0, Math.min(1, height))*792; \n \n var elementHeight = element.remember('height');\n if (height !== elementHeight) {\n element.remember('height', height);\n element.attr({height: height});\n }", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scale", |
|||
"stateRenderFunction": "if (!ctx.properties.scale) {\n element.hide();\n} else {\n var scaleSet = element.remember('scaleSet');\n if (!scaleSet) {\n element.remember('scaleSet', true);\n element.clear();\n \n var majorIntervals = ctx.properties.majorIntervals;\n var minorIntervals = ctx.properties.minorIntervals;\n \n var start = 3;\n var majorIntervalLength = 792 / majorIntervals;\n var minorIntervalLength = majorIntervalLength / minorIntervals;\n for (var i = 0; i < majorIntervals + 1; i++) {\n var y = start + i * majorIntervalLength;\n var line = ctx.svg.line(298, y, 330, y).stroke({ width: 3 }).attr({class: 'majorTick'});\n element.add(line);\n var majorText = (100 - i * (100/majorIntervals)).toFixed(0);\n var majorTickText = ctx.svg.text(majorText);\n if (i === 0) {\n majorTickText.attr({x: 288, y: y + 10, 'text-anchor': 'end', class: 'majorTickText'});\n } else if (i === majorIntervals) {\n majorTickText.attr({x: 288, y: y - 5, 'text-anchor': 'end', class: 'majorTickText'});\n } else {\n majorTickText.attr({x: 288, y: y + 2, 'text-anchor': 'end', class: 'majorTickText'});\n }\n majorTickText.first().attr({'dominant-baseline': 'middle'});\n element.add(majorTickText);\n if (i < majorIntervals) {\n drawMinorTicks(y, minorIntervals, minorIntervalLength);\n }\n }\n }\n \n var majorFont = ctx.properties.majorFont;\n var majorColor = ctx.properties.majorColor;\n var minorColor = ctx.properties.minorColor;\n \n var majorTicks = element.find('line.majorTick');\n majorTicks.forEach(t => t.attr({stroke: majorColor}));\n \n var majorTicksText = element.find('text.majorTickText');\n ctx.api.font(majorTicksText, majorFont, majorColor);\n \n var minorTicks = element.find('line.minorTick');\n minorTicks.forEach(t => t.attr({stroke: minorColor}));\n}\n\nfunction drawMinorTicks(start, minorIntervals, minorIntervalLength) {\n for (var i = 1; i < minorIntervals; i++) {\n var minorY = start + i * minorIntervalLength;\n var minorLine = ctx.svg.line(310, minorY, 330, minorY).stroke({ width: 3 }).attr({class: 'minorTick'});\n element.add(minorLine);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "tankCapacity", |
|||
"name": "{i18n:scada.symbol.tank-capacity}", |
|||
"hint": "{i18n:scada.symbol.tank-capacity-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "tankCapacity" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "currentVolume", |
|||
"name": "{i18n:scada.symbol.current-volume}", |
|||
"hint": "{i18n:scada.symbol.current-volume-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "liquidVolume" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "tankColor", |
|||
"name": "{i18n:scada.symbol.tank-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "fluidColor", |
|||
"name": "{i18n:scada.symbol.fluid-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scale", |
|||
"name": "{i18n:scada.symbol.scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorIntervals", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "number", |
|||
"default": 10, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": false, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "majorFont", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 24, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorColor", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "color", |
|||
"default": "#00000061", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorIntervals", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "number", |
|||
"default": 5, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorColor", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "color", |
|||
"default": "#0000001F", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m0 14.714c0-8.1263 6.5877-14.714 14.714-14.714h2370.6c8.12 0 14.71 6.5877 14.71 14.714v770.57c0 8.126-6.59 14.714-14.71 14.714h-2370.6c-8.1263 0-14.714-6.588-14.714-14.714v-770.57z" fill="#EBEBEB" tb:tag="background"/><path d="m1 14.714c0-7.574 6.14-13.714 13.714-13.714h2370.6c7.57 0 13.71 6.14 13.71 13.714v770.57c0 7.574-6.14 13.714-13.71 13.714h-2370.6c-7.574 0-13.714-6.14-13.714-13.714v-770.57z" stroke="#000" stroke-opacity=".87" stroke-width="2"/><mask id="mask0_3600_177361" x="2" y="2" width="2396" height="796" style="mask-type:alpha" maskUnits="userSpaceOnUse"> |
|||
<path d="m2386 2c6.63 0 12 5.3726 12 12v772c0 6.627-5.37 12-12 12h-2372c-6.6274 0-12-5.373-12-12v-772c0-6.6274 5.3726-12 12-12h2372z" fill="#C8DFF7"/> |
|||
</mask><g mask="url(#mask0_3600_177361)"> |
|||
<rect transform="scale(1,-1)" x="2" y="-798" width="2396" height="615" fill="#c8dff7" style="stroke-width:3.1235" tb:tag="fluid-background"/> |
|||
</g><g tb:tag="scale"> |
|||
<line x1="298" x2="330" y1="3.5" y2="3.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="19.36" y2="19.36" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="35.22" y2="35.22" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="51.08" y2="51.08" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="66.94" y2="66.94" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="82.8" y2="82.8" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="98.66" y2="98.66" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="114.52" y2="114.52" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="130.38" y2="130.38" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="146.24" y2="146.24" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="162.1" y2="162.1" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="177.96" y2="177.96" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="193.82" y2="193.82" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="209.68" y2="209.68" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="225.54" y2="225.54" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="241.4" y2="241.4" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="257.26" y2="257.26" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="273.12" y2="273.12" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="288.98" y2="288.98" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="304.84" y2="304.84" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="320.7" y2="320.7" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="336.56" y2="336.56" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="352.42" y2="352.42" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="368.28" y2="368.28" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="384.14" y2="384.14" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="400" y2="400" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="415.86" y2="415.86" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="431.72" y2="431.72" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="447.58" y2="447.58" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="463.44" y2="463.44" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="479.3" y2="479.3" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="495.16" y2="495.16" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="511.02" y2="511.02" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="526.88" y2="526.88" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="542.74" y2="542.74" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="558.6" y2="558.6" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="574.46" y2="574.46" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="590.32" y2="590.32" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="606.18" y2="606.18" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="622.04" y2="622.04" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="637.9" y2="637.9" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="653.76" y2="653.76" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="669.62" y2="669.62" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="685.48" y2="685.48" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="701.34" y2="701.34" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="717.2" y2="717.2" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="733.06" y2="733.06" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="748.92" y2="748.92" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="764.78" y2="764.78" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="310" x2="330" y1="780.64" y2="780.64" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="298" x2="330" y1="796.5" y2="796.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<path d="m257.58 2.8789v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.4375zm17.301 7.1602v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.257 0.9375-0.632 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.441 0.4102-2.285 0.4102-0.672 0-1.297-0.086-1.875-0.2578-0.571-0.1719-1.086-0.4414-1.547-0.8086s-0.856-0.8399-1.184-1.418c-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.257-1.7539-0.257-2.8242v-2.789c0-1.3438 0.132-2.4766 0.398-3.3985 0.266-0.92968 0.644-1.6836 1.137-2.2617 0.492-0.58594 1.078-1.0117 1.757-1.2774 0.688-0.26562 1.454-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.852 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80469 0.258 1.7422 0.258 2.8125zm-2.824 3.1875v-3.6094c0-0.67969-0.039-1.2774-0.117-1.793-0.079-0.52344-0.196-0.96484-0.352-1.3242-0.148-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.613-0.16406-0.973-0.16406-0.437 0-0.828 0.08593-1.172 0.25781-0.343 0.16406-0.632 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59375-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.118 1.8164 0.078 0.5234 0.195 0.9726 0.351 1.3476 0.156 0.3672 0.344 0.6719 0.563 0.9141 0.226 0.2344 0.484 0.4062 0.773 0.5156 0.297 0.1094 0.621 0.1641 0.973 0.1641 0.445 0 0.84-0.086 1.183-0.2578 0.344-0.1719 0.633-0.4454 0.868-0.8204 0.234-0.3828 0.41-0.8789 0.527-1.4882 0.117-0.6094 0.176-1.3399 0.176-2.1914zm16.715-3.1875v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4414-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.258-1.7539-0.258-2.8242v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.92968 0.644-1.6836 1.136-2.2617 0.492-0.58594 1.078-1.0117 1.758-1.2774 0.688-0.26562 1.453-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.851 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80469 0.258 1.7422 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.67969-0.039-1.2774-0.117-1.793-0.078-0.52344-0.195-0.96484-0.351-1.3242-0.149-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.614-0.16406-0.973-0.16406-0.438 0-0.828 0.08593-1.172 0.25781-0.344 0.16406-0.633 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59375-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4454 0.867-0.8204 0.235-0.3828 0.41-0.8789 0.528-1.4882 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m266.03 95.474h0.235c1.078 0 1.976-0.1406 2.695-0.4218 0.727-0.2891 1.305-0.6875 1.734-1.1954 0.43-0.5078 0.739-1.1054 0.926-1.7929 0.188-0.6875 0.281-1.4336 0.281-2.2383v-2.9414c0-0.6953-0.074-1.3047-0.222-1.8281-0.141-0.5313-0.344-0.9727-0.61-1.3243-0.258-0.3593-0.558-0.6289-0.902-0.8085-0.336-0.1797-0.699-0.2696-1.09-0.2696-0.43 0-0.816 0.0977-1.16 0.293-0.336 0.1875-0.621 0.4492-0.856 0.7851-0.226 0.3282-0.402 0.7149-0.527 1.1602-0.117 0.4375-0.176 0.9063-0.176 1.4063 0 0.4687 0.055 0.9218 0.164 1.3593 0.118 0.4297 0.289 0.8125 0.516 1.1485 0.227 0.3359 0.512 0.6015 0.856 0.7968 0.343 0.1954 0.746 0.293 1.207 0.293 0.437 0 0.839-0.082 1.207-0.2461 0.367-0.1719 0.687-0.4023 0.961-0.6914 0.273-0.2891 0.488-0.6133 0.644-0.9726 0.156-0.3594 0.242-0.7266 0.258-1.1016l1.078 0.3281c0 0.5938-0.125 1.1797-0.375 1.7578-0.242 0.5703-0.582 1.0938-1.02 1.5703-0.429 0.4688-0.933 0.8438-1.511 1.125-0.571 0.2813-1.192 0.4219-1.864 0.4219-0.812 0-1.531-0.1523-2.156-0.457-0.617-0.3125-1.133-0.7344-1.547-1.2656-0.406-0.5313-0.711-1.1407-0.914-1.8282s-0.304-1.4101-0.304-2.1679c0-0.8203 0.125-1.5899 0.375-2.3086 0.25-0.7188 0.613-1.3516 1.089-1.8985 0.477-0.5547 1.055-0.9843 1.735-1.289 0.687-0.3125 1.465-0.4688 2.332-0.4688 0.922 0 1.73 0.1797 2.426 0.5391 0.695 0.3594 1.281 0.8555 1.757 1.4883 0.477 0.6328 0.836 1.3672 1.079 2.2031 0.242 0.8359 0.363 1.7344 0.363 2.6953v0.9961c0 1.0078-0.09 1.9805-0.27 2.918-0.179 0.9297-0.472 1.7929-0.879 2.5898-0.398 0.7891-0.925 1.4844-1.582 2.0859-0.648 0.5938-1.445 1.0586-2.39 1.3946-0.938 0.3281-2.039 0.4922-3.305 0.4922h-0.258zm22.739-7.7343v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4414-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.258-1.7539-0.258-2.8242v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.9297 0.644-1.6836 1.136-2.2617 0.492-0.5859 1.078-1.0117 1.758-1.2773 0.688-0.2657 1.453-0.3985 2.297-0.3985 0.68 0 1.305 0.086 1.875 0.2578 0.578 0.1641 1.094 0.4258 1.547 0.7852 0.461 0.3594 0.851 0.8281 1.172 1.4062 0.328 0.5704 0.578 1.2618 0.75 2.0743 0.172 0.8046 0.258 1.7421 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.6797-0.039-1.2774-0.117-1.793-0.078-0.5234-0.195-0.9648-0.351-1.3242-0.149-0.3672-0.336-0.6641-0.563-0.8906-0.226-0.2344-0.484-0.4024-0.773-0.5039-0.289-0.1094-0.614-0.1641-0.973-0.1641-0.438 0-0.828 0.0859-1.172 0.2578-0.344 0.1641-0.633 0.4297-0.867 0.7969s-0.414 0.8516-0.539 1.4531c-0.117 0.5938-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4454 0.867-0.8204 0.235-0.3828 0.41-0.8789 0.528-1.4882 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m274.91 170.75c0 1.063-0.246 1.957-0.738 2.684-0.492 0.726-1.164 1.277-2.016 1.652-0.844 0.367-1.797 0.551-2.859 0.551-1.063 0-2.02-0.184-2.871-0.551-0.852-0.375-1.524-0.926-2.016-1.652-0.492-0.727-0.738-1.621-0.738-2.684 0-0.703 0.136-1.34 0.41-1.91 0.273-0.578 0.66-1.074 1.16-1.488 0.508-0.422 1.102-0.746 1.781-0.973 0.688-0.227 1.438-0.34 2.25-0.34 1.078 0 2.043 0.199 2.895 0.598 0.851 0.398 1.519 0.949 2.004 1.652 0.492 0.703 0.738 1.524 0.738 2.461zm-2.836-0.141c0-0.57-0.117-1.07-0.351-1.5-0.235-0.429-0.563-0.761-0.985-0.996-0.422-0.234-0.91-0.351-1.465-0.351-0.562 0-1.05 0.117-1.465 0.351-0.414 0.235-0.738 0.567-0.972 0.996-0.227 0.43-0.34 0.93-0.34 1.5 0 0.579 0.113 1.079 0.34 1.5 0.226 0.414 0.551 0.731 0.972 0.95 0.422 0.218 0.918 0.328 1.489 0.328 0.57 0 1.062-0.11 1.476-0.328 0.414-0.219 0.735-0.536 0.961-0.95 0.227-0.421 0.34-0.921 0.34-1.5zm2.449-7.781c0 0.852-0.226 1.61-0.679 2.274-0.446 0.664-1.063 1.187-1.852 1.57-0.789 0.375-1.687 0.562-2.695 0.562-1.016 0-1.922-0.187-2.719-0.562-0.789-0.383-1.41-0.906-1.863-1.57-0.446-0.664-0.668-1.422-0.668-2.274 0-1.015 0.222-1.871 0.668-2.566 0.453-0.703 1.074-1.239 1.863-1.606s1.691-0.55 2.707-0.55 1.918 0.183 2.707 0.55 1.406 0.903 1.852 1.606c0.453 0.695 0.679 1.551 0.679 2.566zm-2.824 0.094c0-0.508-0.101-0.953-0.305-1.336-0.195-0.391-0.472-0.695-0.832-0.914-0.359-0.219-0.785-0.328-1.277-0.328s-0.918 0.105-1.277 0.316c-0.36 0.211-0.637 0.508-0.832 0.891-0.196 0.383-0.293 0.84-0.293 1.371 0 0.523 0.097 0.98 0.293 1.371 0.195 0.383 0.472 0.684 0.832 0.902 0.367 0.219 0.797 0.328 1.289 0.328s0.918-0.109 1.277-0.328c0.36-0.218 0.637-0.519 0.832-0.902 0.195-0.391 0.293-0.848 0.293-1.371zm17.067 2.519v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m275.09 236.04v1.547l-6.82 15.516h-2.977l6.809-14.813h-8.836v-2.25zm13.68 7.102v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m272.29 313.63h0.352v2.308h-0.2c-1.007 0-1.879 0.157-2.613 0.469-0.726 0.313-1.324 0.742-1.793 1.289s-0.82 1.188-1.055 1.922c-0.226 0.727-0.339 1.5-0.339 2.32v2.684c0 0.68 0.074 1.281 0.222 1.805 0.149 0.515 0.356 0.949 0.621 1.3 0.274 0.344 0.586 0.606 0.938 0.786 0.351 0.179 0.73 0.269 1.137 0.269 0.421 0 0.804-0.086 1.148-0.258 0.344-0.179 0.637-0.425 0.879-0.738 0.242-0.312 0.426-0.684 0.551-1.113 0.125-0.43 0.187-0.899 0.187-1.406 0-0.485-0.062-0.938-0.187-1.36-0.117-0.43-0.293-0.805-0.528-1.125-0.234-0.328-0.527-0.582-0.879-0.762-0.343-0.187-0.742-0.281-1.195-0.281-0.562 0-1.074 0.133-1.535 0.399-0.453 0.265-0.82 0.613-1.102 1.043-0.273 0.421-0.421 0.871-0.445 1.347l-1.078-0.351c0.063-0.727 0.223-1.379 0.48-1.957 0.266-0.578 0.614-1.071 1.043-1.477 0.43-0.406 0.926-0.715 1.489-0.926 0.57-0.218 1.195-0.328 1.875-0.328 0.828 0 1.547 0.156 2.156 0.469 0.609 0.312 1.113 0.738 1.512 1.277 0.406 0.532 0.707 1.141 0.902 1.828 0.203 0.68 0.305 1.391 0.305 2.133 0 0.821-0.125 1.586-0.375 2.297-0.25 0.703-0.617 1.32-1.102 1.852-0.476 0.531-1.058 0.945-1.746 1.242-0.68 0.297-1.453 0.445-2.32 0.445-0.914 0-1.731-0.176-2.449-0.527-0.711-0.352-1.317-0.836-1.817-1.453-0.492-0.617-0.867-1.328-1.125-2.133s-0.387-1.656-0.387-2.555v-1.172c0-1.297 0.164-2.519 0.493-3.668 0.328-1.156 0.832-2.175 1.511-3.058 0.688-0.883 1.567-1.574 2.637-2.074 1.07-0.508 2.348-0.762 3.832-0.762zm16.481 7.207v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m266.72 400.57-2.25-0.55 0.925-8.578h9.2v2.39h-6.856l-0.469 4.184c0.266-0.157 0.633-0.309 1.102-0.457 0.469-0.157 1.004-0.235 1.605-0.235 0.805 0 1.524 0.133 2.157 0.399 0.64 0.258 1.183 0.636 1.629 1.136 0.445 0.493 0.785 1.094 1.019 1.805 0.235 0.703 0.352 1.496 0.352 2.379 0 0.789-0.117 1.527-0.352 2.215-0.226 0.687-0.57 1.293-1.031 1.816-0.461 0.524-1.043 0.934-1.746 1.231-0.696 0.289-1.52 0.433-2.473 0.433-0.711 0-1.394-0.101-2.051-0.304-0.648-0.211-1.23-0.52-1.746-0.926-0.515-0.414-0.929-0.922-1.242-1.524-0.312-0.609-0.492-1.308-0.539-2.097h2.766c0.07 0.555 0.222 1.027 0.457 1.418 0.242 0.383 0.562 0.676 0.961 0.879 0.398 0.203 0.859 0.304 1.382 0.304 0.477 0 0.887-0.082 1.231-0.246 0.344-0.172 0.629-0.414 0.855-0.726 0.235-0.321 0.407-0.696 0.516-1.125 0.117-0.43 0.176-0.907 0.176-1.43 0-0.5-0.067-0.957-0.199-1.371-0.125-0.414-0.317-0.774-0.575-1.078-0.25-0.305-0.566-0.539-0.949-0.703-0.383-0.172-0.824-0.258-1.324-0.258-0.672 0-1.188 0.098-1.547 0.293-0.352 0.195-0.68 0.437-0.984 0.726zm22.047-2.027v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m275.51 480.12v2.25h-12.305l-0.094-1.699 7.36-11.531h2.261l-2.449 4.195-4.23 6.785zm-2.133-10.98v17.062h-2.824v-17.062zm15.391 7.101v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m267.07 554.09h1.688c0.656 0 1.199-0.113 1.629-0.34 0.437-0.227 0.761-0.539 0.972-0.938 0.211-0.398 0.317-0.855 0.317-1.371 0-0.539-0.098-1-0.293-1.382-0.188-0.391-0.477-0.692-0.867-0.903-0.383-0.211-0.872-0.316-1.465-0.316-0.5 0-0.953 0.101-1.36 0.304-0.398 0.196-0.715 0.477-0.949 0.844-0.234 0.36-0.351 0.789-0.351 1.289h-2.836c0-0.906 0.238-1.711 0.714-2.414 0.477-0.703 1.125-1.254 1.946-1.652 0.828-0.406 1.758-0.609 2.789-0.609 1.101 0 2.062 0.183 2.883 0.55 0.828 0.36 1.472 0.899 1.933 1.617 0.461 0.719 0.692 1.61 0.692 2.672 0 0.485-0.114 0.977-0.34 1.477-0.227 0.5-0.563 0.957-1.008 1.371-0.445 0.406-1 0.738-1.664 0.996-0.664 0.25-1.434 0.375-2.309 0.375h-2.121zm0 2.203v-1.547h2.121c1 0 1.852 0.117 2.555 0.352 0.711 0.234 1.289 0.558 1.734 0.972 0.446 0.407 0.77 0.871 0.973 1.395 0.211 0.523 0.316 1.078 0.316 1.664 0 0.797-0.144 1.508-0.433 2.133-0.281 0.617-0.684 1.14-1.207 1.57-0.524 0.43-1.137 0.754-1.84 0.973-0.695 0.218-1.453 0.328-2.273 0.328-0.735 0-1.438-0.102-2.11-0.305s-1.273-0.504-1.805-0.902c-0.531-0.407-0.953-0.91-1.265-1.512-0.305-0.609-0.457-1.312-0.457-2.109h2.824c0 0.507 0.117 0.957 0.352 1.347 0.242 0.383 0.578 0.684 1.007 0.903 0.438 0.218 0.938 0.328 1.5 0.328 0.594 0 1.106-0.106 1.536-0.317 0.429-0.211 0.757-0.523 0.984-0.937 0.234-0.414 0.352-0.914 0.352-1.5 0-0.664-0.129-1.203-0.387-1.617s-0.625-0.719-1.102-0.914c-0.476-0.204-1.039-0.305-1.687-0.305zm21.696-2.356v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m275.2 639.35v2.25h-11.437v-1.934l5.554-6.059c0.61-0.687 1.09-1.281 1.442-1.781 0.351-0.5 0.598-0.949 0.738-1.347 0.149-0.407 0.223-0.801 0.223-1.184 0-0.539-0.102-1.012-0.305-1.418-0.195-0.414-0.484-0.738-0.867-0.973-0.383-0.242-0.848-0.363-1.395-0.363-0.632 0-1.164 0.137-1.593 0.41-0.43 0.274-0.754 0.653-0.973 1.137-0.219 0.476-0.328 1.023-0.328 1.641h-2.824c0-0.993 0.226-1.899 0.679-2.719 0.453-0.828 1.11-1.485 1.969-1.969 0.86-0.492 1.895-0.738 3.106-0.738 1.14 0 2.109 0.191 2.906 0.574s1.402 0.926 1.816 1.629c0.422 0.703 0.633 1.535 0.633 2.496 0 0.531-0.086 1.059-0.258 1.582s-0.418 1.047-0.738 1.57c-0.313 0.516-0.684 1.035-1.113 1.559-0.43 0.516-0.903 1.039-1.418 1.57l-3.692 4.067zm13.575-7.711v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m271.47 702.18v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.437zm17.301 7.16v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m288.77 787.04v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
</g><path d="m807.17 0s-807.17 0-807.17 134v656.72c0 5.3024 21.491 9.2808 48 9.2808h2304c26.508 0 48-3.9784 48-9.2808v-656.72c0-134-792.84-134-792.84-134h-407.15zm804.84 162.4c-15.464 0-28 2.5072-28 5.6v600.8c0 3.0928 12.536 5.6 28 5.6h175.99c15.464 0 28-2.5072 28-5.6v-600.8c0-3.0928-12.536-5.6-28-5.6z" fill="#000" fill-opacity="0" style="stroke-width:6.9281" tb:tag="clickArea"/><g fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0 -4.9442)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 48 KiB |
@ -0,0 +1,368 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="400" height="400" fill="none" version="1.1" viewBox="0 0 400 400"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Centrifugal pump", |
|||
"description": "Centrifugal pump with configurable connectors and various states.", |
|||
"searchTags": [ |
|||
"pump", |
|||
"centrifugal", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 2, |
|||
"widgetSizeY": 2, |
|||
"stateRenderFunction": "\n", |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "var color = ctx.properties.stoppedColor;\nif (ctx.values.running) {\n color = ctx.properties.runningColor;\n}\nelement.attr({fill: color});", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "circle-background", |
|||
"stateRenderFunction": "var color = ctx.properties.stoppedColor;\nif (ctx.values.running) {\n color = '#cccccc';\n}\nelement.attr({fill: color});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "running", |
|||
"name": "{i18n:scada.symbol.running}", |
|||
"hint": "{i18n:scada.symbol.running-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.running}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "running" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "runningColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.running}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "stoppedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.stopped}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "Critical", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g fill="#fff" tb:tag="background"> |
|||
<path d="m114.5 309h144.33l51.173 66h-247l51.497-66z"/> |
|||
<path d="m65.041 374 49.942-64.008h143.36l49.628 64.008h-242.93z" stroke="#000" stroke-opacity=".87" stroke-width="1.9925"/> |
|||
<rect x="23.77" y="373.35" width="325.82" height="26.648" rx="4.6492"/> |
|||
<rect x="24.766" y="374.35" width="323.82" height="24.656" rx="3.6529" stroke="#000" stroke-opacity=".87" stroke-width="1.9925"/> |
|||
<rect x="175" width="225" height="133.67"/> |
|||
<rect x="176.34" y="1.3357" width="222.33" height="130.99" stroke="#000" stroke-opacity=".87" stroke-width="2.6715"/> |
|||
<circle cx="186.5" cy="186.5" r="186.5"/> |
|||
<circle cx="186.5" cy="186.5" r="185.16" stroke="#000" stroke-opacity=".87" stroke-width="2.6715"/> |
|||
<ellipse cx="186.69" cy="186.82" rx="120.18" ry="119.92"/> |
|||
<path d="m305.86 186.82c0 65.672-53.356 118.91-119.18 118.91-65.821 0-119.18-53.242-119.18-118.91 0-65.673 53.356-118.92 119.18-118.92 65.822 0 119.18 53.242 119.18 118.92z" stroke="#000" stroke-opacity=".12" stroke-width="2.0026"/> |
|||
<g clip-path="url(#clip0_3214_60796)"> |
|||
<path d="m182.79 111.96c-9.073-23.303-20.123-33.549-26.376-41.692l-34.461 0.9063-24.336 29.24c1.9967-2.1678 12.577-0.11 38.925 25.46 26.347 25.571 35.77 48.871 37.187 57.324l18.509-12.372c0-18.168-0.375-35.563-9.448-58.866z" stroke="#727171" stroke-width="2.1802"/> |
|||
<path d="m254.2 148.49c16.446-18.838 20.404-33.379 24.722-42.693l-16.773-30.117-37.188-8.0152c2.847 0.765 5.926 11.094-4.523 46.292-10.449 35.197-26.73 54.344-33.564 59.518l19.54 10.668c16.101-8.42 31.341-16.813 47.786-35.652z" stroke="#727171" stroke-width="2.1802"/> |
|||
<path d="m265.64 225.84c24.877 2.544 39.033-2.623 49.131-4.478l14.898-31.087-14.935-34.987c1.019 2.765-5.634 11.245-40.402 23.044-34.769 11.799-59.802 9.567-67.973 6.976l-4.25 20.522c16.172 8.28 38.654 17.466 63.531 20.01z" stroke="#727171" stroke-width="2.1802"/> |
|||
<path d="m122.4 225.38c-17.502 17.861-28.126 32.344-32.973 41.394l15.011 31.033 36.665 10.143c-2.797-0.928-5.278-11.417 7.18-45.955 12.459-34.537 29.814-52.715 36.935-57.487l-15.061-11.313c-16.558 7.479-30.255 14.324-47.757 32.185z" stroke="#727171" stroke-width="2.1802"/> |
|||
<path d="m190.19 260.06c8.234 23.613 17.831 35.594 23.789 43.955l34.471 0.327 25.366-28.349c-2.073 2.094-16.862-0.212-42.278-26.709-25.415-26.497-32.543-40.913-33.657-49.412l-14.467 4.29c-0.65 18.157-1.457 32.286 6.776 55.898z" stroke="#727171" stroke-width="2.1802"/> |
|||
<path d="m120.32 154.41c-24.432-5.331-39.08-1.792-49.323-1.087l-18.306 29.211 10.898 36.447c-0.7013-2.863 6.8652-10.539 42.741-18.345 35.877-7.805 65.052-9.653 72.879-6.158l-2.121-15.449c-15.136-10.05-32.336-19.288-56.768-24.619z" stroke="#727171" stroke-width="2.1802"/> |
|||
<circle cx="186.72" cy="187.12" r="24.872" fill="#ccc" stroke="#000" stroke-opacity=".87" stroke-width="2.1802" tb:tag="circle-background"/> |
|||
<circle cx="186.72" cy="187.12" r="12.436" fill="#727171"/> |
|||
</g> |
|||
</g><mask id="path-20-inside-1_3214_60796" fill="white"> |
|||
<path d="m306.86 186.82c0 66.227-53.806 119.92-120.18 119.92-66.372 0-120.18-53.689-120.18-119.92 0-66.228 53.806-119.92 120.18-119.92 66.373 0 120.18 53.689 120.18 119.92zm-221.64 0c0 55.911 45.424 101.24 101.46 101.24 56.034 0 101.46-45.325 101.46-101.24 0-55.912-45.424-101.24-101.46-101.24-56.033 0-101.46 45.325-101.46 101.24z"/> |
|||
</mask><path d="m306.86 186.82c0 66.227-53.806 119.92-120.18 119.92-66.372 0-120.18-53.689-120.18-119.92 0-66.228 53.806-119.92 120.18-119.92 66.373 0 120.18 53.689 120.18 119.92zm-221.64 0c0 55.911 45.424 101.24 101.46 101.24 56.034 0 101.46-45.325 101.46-101.24 0-55.912-45.424-101.24-101.46-101.24-56.033 0-101.46 45.325-101.46 101.24z" fill="#ccc" mask="url(#path-20-inside-1_3214_60796)" stroke="#000" stroke-width="5.3402" tb:tag="circle-background"/><g fill="#D12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059h4.9805zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><defs> |
|||
<clipPath id="clip0_3214_60796"> |
|||
<rect x="66.508" y="66.9" width="240.36" height="239.83" rx="119.92" fill="#fff"/> |
|||
</clipPath> |
|||
</defs> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
@ -0,0 +1,87 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Right tee connector", |
|||
"description": "Right tee connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line-color", |
|||
"stateRenderFunction": "element.fill(ctx.properties.lineColor);\nelement.stroke(ctx.properties.lineColor);", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M200 100H115C106.716 100 100 106.716 100 115V200" stroke="#1A1A1A" stroke-width="6" id="path2" tb:tag="line"/><path d="M200 100H115C106.716 100 100 93.2843 100 85V0" stroke="#1A1A1A" stroke-width="6" id="path4" tb:tag="line"/><path d="M100 0V200" stroke="#1A1A1A" stroke-width="6" id="path6" tb:tag="line"/><path d="M100 113V87C100 87 100 100 114 100C100 100 100 113 100 113Z" fill="#1A1A1A" stroke="#1A1A1A" stroke-width="2" id="path8" tb:tag="line-color"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.7 KiB |
@ -0,0 +1,652 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="600" height="1e3" fill="none" version="1.1" viewBox="0 0 600 1e3"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Sand filter", |
|||
"description": "Sand filter with configurable filtration mode option and various states.", |
|||
"searchTags": [ |
|||
"filter", |
|||
"sand", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 3, |
|||
"widgetSizeY": 5, |
|||
"stateRenderFunction": "var running = ctx.values.running;\nif (running) {\n ctx.api.enable(ctx.tags.filterMode);\n} else {\n ctx.api.disable(ctx.tags.filterMode);\n}", |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "var color = ctx.properties.stoppedColor;\nif (ctx.values.running) {\n color = ctx.properties.runningColor;\n}\nelement.attr({fill: color});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "filterMode", |
|||
"stateRenderFunction": "var defaultBorderColor = ctx.properties.defaultBorderColor;\nvar activeBorderColor = ctx.properties.activeBorderColor;\nvar defaultLabelColor = ctx.properties.defaultLabelColor;\nvar activeLabelColor = ctx.properties.activeLabelColor;\nvar activeBoxBackground = ctx.properties.activeBoxBackground;\nvar defaultBoxBackground = ctx.properties.defaultBoxBackground;\n\nvar running = ctx.values.running;\nvar filtrationMode = ctx.values.filtrationMode;\n\nvar runningColor = ctx.properties.stoppedColor;\n\nif (running) {\n runningColor = ctx.properties.runningColor;\n}\nelement.children().forEach((value) => {\n value.children()[0].fill(runningColor);\n});\n\nvar filtrationMap = {};\nvar bottomShift = 104;\nvar rightShift = 226;\nvar middleShift = 121;\n\nvar filterModeSet = element.remember('filterModeSet');\n\nvar i = 0;\nif (ctx.properties.filtrationMode) {\n i++;\n filtrationMap[i] = 'filter';\n}\nif (ctx.properties.wasteMode) {\n i++;\n filtrationMap[i] = 'waste';\n}\nif (ctx.properties.backwashMode) {\n i++;\n filtrationMap[i] = 'backwash';\n}\nif (ctx.properties.recirculateMode) {\n i++;\n filtrationMap[i] = 'recirculate';\n}\nif (ctx.properties.rinseMode) {\n i++;\n filtrationMap[i] = 'rinse';\n}\nif (ctx.properties.closedMode) {\n i++;\n filtrationMap[i] = 'closed';\n}\n\nif (!filterModeSet) {\n element.remember('filterModeSet', true);\n var clone = element.children()[0];\n setFilterModeColors(clone);\n element.clear();\n \n var filterMode = Object.values(filtrationMap);\n var lastToMiddle = filterMode.length % 2;\n \n filterMode.forEach((mode, index, arr) => {\n var template = clone.clone();\n var x = (index % 2) * rightShift;\n var y = Math.floor((index % filterMode.length) / 2) * bottomShift;\n if (index === filterMode.length-1 && lastToMiddle) {\n x = middleShift;\n }\n template.attr({'class': mode}).css('cursor', 'pointer').translate(x, y);\n ctx.api.text(template.findOne('text'), capitalizeFirstLetter(mode));\n template.click((event) => click(event, getFilterModeKey(mode)));\n element.add(template);\n })\n}\n\nif (isFinite(filtrationMode)) {\n if (element.findOne('.active')) {\n setFilterModeColors(element.findOne('.active'));\n }\n setFilterModeColorsByMap(filtrationMode, running);\n}\n\nfunction click(event, index) {\n var filtrationMode = ctx.values.filtrationMode;\n if (ctx.values.running && isFinite(filtrationMode)) {\n ctx.api.disable(element.children());\n var newValue = +index;\n if (newValue === filtrationMode) {\n newValue = 0;\n } else {\n setFilterModeColorsByMap(filtrationMode);\n }\n ctx.api.setValue('filtrationMode', newValue);\n ctx.api.callAction(event, 'filtrationModeUpdateState', newValue, {\n next: () => {\n setFilterModeColorsByMap(newValue ? newValue: filtrationMode, newValue);\n ctx.api.enable(element.children());\n },\n error: () => {\n setFilterModeColorsByMap(newValue);\n ctx.api.setValue('filtrationMode', filtrationMode);\n ctx.api.enable(element.children());\n }\n });\n }\n}\n\nfunction getFilterModeKey(value) {\n return Object.keys(filtrationMap).find(key => filtrationMap[key] === value);\n}\n\nfunction setFilterModeColorsByMap(mode, active = false) {\n var filterBox = element.findOne('g.'+filtrationMap[mode])\n if (filterBox) {\n return setFilterModeColors(filterBox, active);\n }\n}\n\nfunction setFilterModeColors(filterBox, active = false) {\n if (filterBox) {\n if (active) {\n filterBox.addClass('active');\n } else {\n filterBox.removeClass('active');\n }\n var borderColor = active ? activeBorderColor : defaultBorderColor;\n var labelColor = active ? activeLabelColor : defaultLabelColor;\n var boxColor = active ? activeBoxBackground : defaultBoxBackground;\n if (running) {\n filterBox.children()[0].fill(boxColor);\n }\n filterBox.children()[1].stroke(borderColor);\n ctx.api.font(filterBox.findOne('text'), null, labelColor);\n }\n}\n\nfunction capitalizeFirstLetter(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "running", |
|||
"name": "{i18n:scada.symbol.running}", |
|||
"hint": "{i18n:scada.symbol.running-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.running}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "running" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "filtrationMode", |
|||
"name": "{i18n:scada.symbol.filtration-mode}", |
|||
"hint": "{i18n:scada.symbol.filtration-mode-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "INTEGER", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": 0, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "filtrationMode" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "filtrationModeUpdateState", |
|||
"name": "{i18n:scada.symbol.filtration-mode-update}", |
|||
"hint": "{i18n:scada.symbol.filtration-mode-update-hint}", |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "INTEGER", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "filtrationMode" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "VALUE", |
|||
"constantValue": false, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "filtrationMode", |
|||
"name": "{i18n:scada.symbol.filter-mode}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "wasteMode", |
|||
"name": "{i18n:scada.symbol.waste-mode}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "backwashMode", |
|||
"name": "{i18n:scada.symbol.backwash-mode}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "recirculateMode", |
|||
"name": "{i18n:scada.symbol.recirculate-mode}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "rinseMode", |
|||
"name": "{i18n:scada.symbol.rinse-mode}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "closedMode", |
|||
"name": "{i18n:scada.symbol.closed-mode}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "runningColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.running}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "stoppedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.stopped}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeBoxBackground", |
|||
"name": "{i18n:scada.symbol.mode-box-background}", |
|||
"type": "color", |
|||
"default": "#999999", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "column-xs", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultBoxBackground", |
|||
"name": "{i18n:scada.symbol.mode-box-background}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "column-xs", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeBorderColor", |
|||
"name": "{i18n:scada.symbol.border-color}", |
|||
"type": "color", |
|||
"default": "#999999", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "column-xs", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultBorderColor", |
|||
"name": "{i18n:scada.symbol.border-color}", |
|||
"type": "color", |
|||
"default": "#0000001F", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": false, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeLabelColor", |
|||
"name": "{i18n:scada.symbol.label-color}", |
|||
"type": "color", |
|||
"default": "#000000C2", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "column-xs", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultLabelColor", |
|||
"name": "{i18n:scada.symbol.label-color}", |
|||
"type": "color", |
|||
"default": "#00000061", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g fill="#fff" tb:tag="background"> |
|||
<path d="m137.58 946h324.84l53.581 24h-432l53.581-24z"/> |
|||
<path d="m88.679 969 49.116-22h324.41l49.116 22h-422.64z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m0 388c0-99.411 80.588-180 180-180h240c99.411 0 180 80.589 180 180v412c0 81.738-66.262 148-148 148h-304c-81.738 0-148-66.262-148-148z"/> |
|||
<path d="m1 388c0-98.859 80.14-179 179-179h240c98.858 0 179 80.141 179 179v412c0 81.186-65.814 147-147 147h-304c-81.186 0-147-65.814-147-147z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<rect x="80" y="968" width="440" height="32" rx="6.9621"/> |
|||
<rect x="81" y="969" width="438" height="30" rx="5.9621" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m216 209c0 0.552 0.448 1 1 1h166c0.552 0 1-0.448 1-1v-75c0-0.552-0.448-1-1-1h-166c-0.552 0-1 0.448-1 1z"/> |
|||
<path d="m217 209h166v-75h-166z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m216 66c0 0.5523 0.448 1 1 1l166 2e-4c0.552 0 1-0.4477 1-1v-64c0-1.1046-0.895-2-2-2h-164c-1.105 0-2 0.89543-2 2v64z"/> |
|||
<path d="m217 66 166 2e-4v-64c0-0.55228-0.448-1-1-1h-164c-0.552 0-1 0.44772-1 1v64z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="m427.98 136.02h-46.554v72.008h42.554c2.209 0 4 1.791 4 4v60.008s0 30.002 16.001 46.004c18.004 18.004 44.006 18.004 44.006 18.004h112.01v-72.009h-108.01c-2.209 0-4-1.791-4-4v-56.007s0-30.004-12.002-46.006c-16.502-22.002-48.005-22.002-48.005-22.002z"/> |
|||
<path d="m428.98 272.03v-60.008c0-2.761-2.239-5-5-5h-41.554v-70.008h45.633c0.057 1e-3 0.142 2e-3 0.255 5e-3 0.227 5e-3 0.565 0.015 1.003 0.036 0.877 0.043 2.152 0.127 3.736 0.297 3.17 0.339 7.569 1.018 12.475 2.376 9.827 2.719 21.591 8.133 29.657 18.888 5.849 7.798 8.82 19.097 10.314 28.56 0.744 4.712 1.116 8.93 1.302 11.969 0.093 1.519 0.14 2.742 0.163 3.584 0.011 0.421 0.017 0.746 0.02 0.965 1e-3 0.11 2e-3 0.193 3e-3 0.248v56.087c0 2.762 2.238 5 5 5h107.01v70.009h-111.08c-0.046-1e-3 -0.116-2e-3 -0.21-4e-3 -0.187-4e-3 -0.467-0.013-0.831-0.03-0.73-0.034-1.797-0.103-3.136-0.242-2.68-0.277-6.443-0.832-10.761-1.943-8.647-2.223-19.463-6.659-28.296-15.492-7.797-7.797-11.745-19.07-13.731-28.501-0.989-4.701-1.484-8.908-1.732-11.939-0.123-1.515-0.185-2.735-0.216-3.573-0.015-0.419-0.023-0.743-0.027-0.96-2e-3 -0.109-3e-3 -0.191-3e-3 -0.246v-0.078z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<rect y="64" width="600" height="72"/> |
|||
<rect x="1" y="65" width="598" height="70" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
</g><path d="m201.79 0s-201.79 0-201.79 167.5v820.9c0 6.628 5.3726 11.601 12 11.601h576c6.6269 0 12-4.9729 12-11.601v-820.9c0-167.5-198.21-167.5-198.21-167.5h-101.79zm201.21 203c-3.866 0-7 3.134-7 7v751.01c0 3.866 3.134 7 7 7h43.999c3.866 0 7-3.134 7-7v-751.01c0-3.866-3.134-7-7-7z" fill="#000" fill-opacity="0" tb:tag="clickArea"/><g fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g tb:tag="filterMode"> |
|||
<g tb:tag="filter"> |
|||
<rect x="75" y="410" width="208.86" height="96.012" rx="9.8143" fill="#999"/> |
|||
<path d="m76 419.81c0-4.868 3.9463-8.814 8.8143-8.814h189.24c4.868 0 8.814 3.946 8.814 8.814v76.383c0 4.868-3.946 8.815-8.814 8.815h-189.24c-4.868 0-8.8143-3.947-8.8143-8.815z" stroke="#999" stroke-width="2"/> |
|||
<text x="180.79984" y="460.00018" fill="#000000" font-family="Roboto" font-size="28px" font-weight="500" text-anchor="middle" xml:space="preserve"><tspan dominant-baseline="middle">Filter</tspan></text> |
|||
</g> |
|||
<g tb:tag="backwash"> |
|||
<path d="m75 539.7c0-5.42 4.394-9.814 9.8143-9.814h189.24c5.42 0 9.814 4.394 9.814 9.814v76.383c0 5.421-4.394 9.815-9.814 9.815h-189.24c-5.4203 0-9.8143-4.394-9.8143-9.815z" fill="#fff"/> |
|||
<path d="m76 539.7c0-4.868 3.9463-8.814 8.8143-8.814h189.24c4.868 0 8.814 3.946 8.814 8.814v76.383c0 4.868-3.946 8.815-8.814 8.815h-189.24c-4.868 0-8.8143-3.947-8.8143-8.815z" stroke="#999" stroke-width="2"/> |
|||
<text x="183.43652" y="579.61719" fill="#000000" font-family="Roboto" font-size="28px" font-weight="500" text-anchor="middle" xml:space="preserve"><tspan dominant-baseline="middle">Backwash</tspan></text> |
|||
</g> |
|||
<g tb:tag="rinse"> |
|||
<path d="m75 659.58c0-5.42 4.394-9.814 9.8143-9.814h189.24c5.42 0 9.814 4.394 9.814 9.814v76.384c0 5.42-4.394 9.814-9.814 9.814h-189.24c-5.4203 0-9.8143-4.394-9.8143-9.814z" fill="#fff"/> |
|||
<path d="m76 659.58c0-4.868 3.9463-8.814 8.8143-8.814h189.24c4.868 0 8.814 3.946 8.814 8.814v76.384c0 4.868-3.946 8.814-8.814 8.814h-189.24c-4.868 0-8.8143-3.946-8.8143-8.814z" stroke="#999" stroke-width="2"/> |
|||
<text x="181.64941" y="699.61719" fill="#000000" font-family="Roboto" font-size="28px" font-weight="500" text-anchor="middle" xml:space="preserve"><tspan dominant-baseline="middle">Rinse</tspan></text> |
|||
</g> |
|||
<g tb:tag="waste"> |
|||
<path d="m315.69 419.81c0-5.42 4.394-9.814 9.814-9.814h189.24c5.42 0 9.815 4.394 9.815 9.814v76.383c0 5.421-4.395 9.815-9.815 9.815h-189.24c-5.42 0-9.814-4.394-9.814-9.814z" fill="#fff"/> |
|||
<path d="m316.69 419.81c0-4.868 3.946-8.814 8.814-8.814h189.24c4.868 0 8.815 3.946 8.815 8.814v76.383c0 4.869-3.947 8.815-8.815 8.815h-189.24c-4.868 0-8.814-3.946-8.814-8.814z" stroke="#999" stroke-width="2"/> |
|||
<text x="421.99316" y="459.75586" fill="#000000" font-family="Roboto" font-size="28px" font-weight="500" text-anchor="middle" xml:space="preserve"><tspan dominant-baseline="middle">Waste</tspan></text> |
|||
</g> |
|||
<g tb:tag="recirculate"> |
|||
<path d="m315.69 539.7c0-5.42 4.394-9.814 9.815-9.814h189.24c5.42 0 9.814 4.394 9.814 9.814v76.383c0 5.421-4.394 9.815-9.814 9.815h-189.24c-5.421 0-9.815-4.394-9.815-9.815z" fill="#fff"/> |
|||
<path d="m316.69 539.7c0-4.868 3.947-8.814 8.815-8.814h189.24c4.868 0 8.814 3.946 8.814 8.814v76.383c0 4.868-3.946 8.815-8.814 8.815h-189.24c-4.868 0-8.815-3.947-8.815-8.815z" stroke="#999" stroke-width="2"/> |
|||
<text x="425.14062" y="579.61719" fill="#000000" font-family="Roboto" font-size="28px" font-weight="500" text-anchor="middle" xml:space="preserve"><tspan dominant-baseline="middle">Recirculate</tspan></text> |
|||
</g> |
|||
<g tb:tag="closed"> |
|||
<path d="m315.69 659.58c0-5.42 4.394-9.814 9.815-9.814h189.24c5.42 0 9.814 4.394 9.814 9.814v76.383c0 5.42-4.394 9.814-9.814 9.814h-189.24c-5.421 0-9.815-4.394-9.815-9.814z" fill="#fff"/> |
|||
<path d="m316.69 659.58c0-4.868 3.947-8.814 8.815-8.814h189.24c4.868 0 8.814 3.946 8.814 8.814v76.383c0 4.868-3.946 8.814-8.814 8.814h-189.24c-4.868 0-8.815-3.946-8.815-8.814z" stroke="#999" stroke-width="2"/> |
|||
<text x="422.45215" y="699.61719" fill="#000000" font-family="Roboto" font-size="28px" font-weight="500" text-anchor="middle" xml:space="preserve"><tspan dominant-baseline="middle">Closed</tspan></text> |
|||
</g> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
@ -0,0 +1,552 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="600" height="600" fill="none" version="1.1" viewBox="0 0 600 600"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Short vertical tank", |
|||
"description": "Short vertical tank with level visualizations.", |
|||
"searchTags": [ |
|||
"short tank", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 3, |
|||
"widgetSizeY": 3, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.tankColor});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "fluid-background", |
|||
"stateRenderFunction": " var color = ctx.properties.fluidColor;\n element.attr({fill: color, 'fill-opacity': 1});\n \n var valueSet = element.remember('valueSet');\n if (!valueSet) {\n element.remember('valueSet', true);\n element.attr({height: 0});\n }\n \n var currentVolume = ctx.values.currentVolume; \n var tankCapacity = ctx.values.tankCapacity; \n\n var height = currentVolume / tankCapacity;\n height = Math.max(0, Math.min(1, height))*594; \n \n var elementHeight = element.remember('height');\n if (height !== elementHeight) {\n element.remember('height', height);\n element.attr({height: height});\n }", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scale", |
|||
"stateRenderFunction": "if (!ctx.properties.scale) {\n element.hide();\n} else {\n var scaleSet = element.remember('scaleSet');\n if (!scaleSet) {\n element.remember('scaleSet', true);\n element.clear();\n \n var majorIntervals = ctx.properties.majorIntervals;\n var minorIntervals = ctx.properties.minorIntervals;\n \n var start = 3;\n var majorIntervalLength = 594 / majorIntervals;\n var minorIntervalLength = majorIntervalLength / minorIntervals;\n for (var i = 0; i < majorIntervals + 1; i++) {\n var y = start + i * majorIntervalLength;\n var line = ctx.svg.line(170, y, 202, y).stroke({ width: 3 }).attr({class: 'majorTick'});\n element.add(line);\n var majorText = (100 - i * (100/majorIntervals)).toFixed(0);\n var majorTickText = ctx.svg.text(majorText);\n if (i === 0) {\n majorTickText.attr({x: 160, y: y + 10, 'text-anchor': 'end', class: 'majorTickText'});\n } else if (i === majorIntervals) {\n majorTickText.attr({x: 160, y: y - 5, 'text-anchor': 'end', class: 'majorTickText'});\n } else {\n majorTickText.attr({x: 160, y: y + 2, 'text-anchor': 'end', class: 'majorTickText'});\n }\n majorTickText.first().attr({'dominant-baseline': 'middle'});\n element.add(majorTickText);\n if (i < majorIntervals) {\n drawMinorTicks(y, minorIntervals, minorIntervalLength);\n }\n }\n }\n \n var majorFont = ctx.properties.majorFont;\n var majorColor = ctx.properties.majorColor;\n var minorColor = ctx.properties.minorColor;\n \n var majorTicks = element.find('line.majorTick');\n majorTicks.forEach(t => t.attr({stroke: majorColor}));\n \n var majorTicksText = element.find('text.majorTickText');\n ctx.api.font(majorTicksText, majorFont, majorColor);\n \n var minorTicks = element.find('line.minorTick');\n minorTicks.forEach(t => t.attr({stroke: minorColor}));\n}\n\nfunction drawMinorTicks(start, minorIntervals, minorIntervalLength) {\n for (var i = 1; i < minorIntervals; i++) {\n var minorY = start + i * minorIntervalLength;\n var minorLine = ctx.svg.line(182, minorY, 202, minorY).stroke({ width: 3 }).attr({class: 'minorTick'});\n element.add(minorLine);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "tankCapacity", |
|||
"name": "{i18n:scada.symbol.tank-capacity}", |
|||
"hint": "{i18n:scada.symbol.tank-capacity-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "tankCapacity" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "currentVolume", |
|||
"name": "{i18n:scada.symbol.current-volume}", |
|||
"hint": "{i18n:scada.symbol.current-volume-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "liquidVolume" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "tankColor", |
|||
"name": "{i18n:scada.symbol.tank-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "fluidColor", |
|||
"name": "{i18n:scada.symbol.fluid-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scale", |
|||
"name": "{i18n:scada.symbol.scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorIntervals", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "number", |
|||
"default": 10, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": false, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "majorFont", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 24, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorColor", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "color", |
|||
"default": "#00000061", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorIntervals", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "number", |
|||
"default": 5, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorColor", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "color", |
|||
"default": "#0000001F", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m0 120s0-120 140-120c124.5-5.6458e-4 194.5 2.7873e-4 320 0 140-3.1093e-4 140 120 140 120v360s0 120-140 120h-320c-140 0-140-120-140-120v-360z" fill="#EBEBEB" tb:tag="background"/><path d="m0.936 120h0.064l1e-5 -3e-3 5e-5 -0.014 4.3e-4 -0.061c5.1e-4 -0.054 0.00153-0.137 0.00361-0.247 0.00415-0.221 0.0125-0.551 0.02932-0.984 0.03365-0.865 0.10115-2.139 0.23656-3.764 0.27086-3.25 0.81325-7.901 1.8991-13.486 2.1725-11.173 6.5161-26.059 15.195-40.937 17.319-29.69 51.988-59.504 121.64-59.504 68.61-3.13e-4 120.67-2e-4 174.59-8e-5 43.92 1e-4 89.074 2e-4 145.41 8e-5 69.648-1.6e-4 104.32 29.814 121.64 59.504 8.679 14.878 13.022 29.764 15.195 40.937 1.086 5.585 1.628 10.236 1.899 13.486 0.135 1.625 0.203 2.899 0.237 3.764 6e-3 0.169 0.011 0.321 0.016 0.458 6e-3 0.215 0.01 0.391 0.013 0.526 2e-3 0.11 3e-3 0.193 4e-3 0.247v0.078h0.051-0.051v360h0.064-0.064v0.078c-1e-3 0.054-2e-3 0.137-4e-3 0.248-4e-3 0.22-0.013 0.55-0.029 0.983-0.034 0.865-0.102 2.139-0.237 3.764-0.271 3.251-0.813 7.902-1.899 13.486-2.173 11.173-6.516 26.06-15.195 40.937-17.319 29.69-51.988 59.504-121.64 59.504h-320c-69.648 0-104.32-29.814-121.64-59.504-8.6786-14.877-13.022-29.764-15.195-40.937-1.0859-5.584-1.6283-10.235-1.8991-13.486-0.13541-1.625-0.20291-2.899-0.23656-3.764-0.01682-0.433-0.02517-0.763-0.02932-0.983-0.00208-0.111-0.0031-0.194-0.00361-0.248l-4.3e-4 -0.061-5e-5 -0.014-1e-5 -3e-3h-0.064 0.064v-360h-0.064z" stroke="#000" stroke-opacity=".87" stroke-width="2"/><mask id="mask0_3610_179735" x="2" y="2" width="596" height="596" style="mask-type:alpha" maskUnits="userSpaceOnUse"> |
|||
<path d="m2 121.2s0-119.2 139.07-119.2c123.67-5.6e-4 193.2 2.7e-4 317.87 0 139.07-3.1e-4 139.07 119.2 139.07 119.2v357.6s0 119.2-139.07 119.2h-317.87c-139.07 0-139.07-119.2-139.07-119.2v-357.6z" fill="#EBEBEB"/> |
|||
<path d="m2.9398 121.2h0.06019l1e-5 -3e-3 5e-5 -0.014 4.3e-4 -0.06c5e-4 -0.054 0.00152-0.136 0.00358-0.246 0.00412-0.219 0.01242-0.547 0.02913-0.977 0.03341-0.859 0.10046-2.125 0.23496-3.739 0.26903-3.228 0.80778-7.848 1.8864-13.395 2.1579-11.098 6.4724-25.884 15.093-40.662 17.202-29.49 51.638-59.104 120.82-59.104 68.154-3.1e-4 119.87-2e-4 173.43-8e-5 43.627 1e-4 88.479 2e-4 144.44 8e-5 69.181-1.6e-4 103.62 29.614 120.82 59.104 8.62 14.778 12.935 29.564 15.092 40.662 1.079 5.547 1.618 10.167 1.887 13.395 0.134 1.614 0.201 2.88 0.235 3.739 0.017 0.43 0.025 0.758 0.029 0.977 2e-3 0.11 3e-3 0.192 4e-3 0.246v0.077h0.06-0.06v357.6h0.05-0.05v0.077c-1e-3 0.054-2e-3 0.137-4e-3 0.246-4e-3 0.219-0.012 0.547-0.029 0.977-0.034 0.859-0.101 2.125-0.235 3.739-0.269 3.228-0.808 7.848-1.887 13.395-2.157 11.098-6.472 25.885-15.092 40.662-17.203 29.49-51.639 59.104-120.82 59.104h-317.87c-69.181 0-103.62-29.614-120.82-59.104-8.6202-14.777-12.935-29.564-15.093-40.662-1.0786-5.547-1.6173-10.167-1.8864-13.395-0.1345-1.614-0.20155-2.88-0.23496-3.739-0.01671-0.43-0.02501-0.758-0.02913-0.977-0.00206-0.109-0.00308-0.192-0.00358-0.246l-4.3e-4 -0.06-5e-5 -0.014-1e-5 -3e-3h-0.05001 0.05001v-357.6h-0.06019z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
</mask><g mask="url(#mask0_3610_179735)"> |
|||
<rect transform="scale(1,-1)" x="2" y="-596" width="600" height="419" fill="#c8dff7" tb:tag="fluid-background"/> |
|||
</g><g tb:tag="scale"> |
|||
<line x1="168" x2="200" y1="2.5" y2="2.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="14.381" y2="14.381" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="26.26" y2="26.26" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="38.141" y2="38.141" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="50.02" y2="50.02" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="61.9" y2="61.9" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="73.779" y2="73.779" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="85.66" y2="85.66" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="97.539" y2="97.539" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="109.42" y2="109.42" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="121.3" y2="121.3" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="133.18" y2="133.18" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="145.06" y2="145.06" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="156.94" y2="156.94" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="168.82" y2="168.82" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="180.7" y2="180.7" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="192.58" y2="192.58" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="204.46" y2="204.46" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="216.34" y2="216.34" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="228.22" y2="228.22" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="240.1" y2="240.1" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="251.98" y2="251.98" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="263.86" y2="263.86" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="275.74" y2="275.74" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="287.62" y2="287.62" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="299.5" y2="299.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="311.38" y2="311.38" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="323.26" y2="323.26" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="335.14" y2="335.14" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="347.02" y2="347.02" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="358.9" y2="358.9" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="370.78" y2="370.78" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="382.66" y2="382.66" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="394.54" y2="394.54" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="406.42" y2="406.42" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="418.3" y2="418.3" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="430.18" y2="430.18" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="442.06" y2="442.06" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="453.94" y2="453.94" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="465.82" y2="465.82" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="477.7" y2="477.7" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="489.58" y2="489.58" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="501.46" y2="501.46" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="513.34" y2="513.34" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="525.22" y2="525.22" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="537.1" y2="537.1" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="548.98" y2="548.98" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="560.86" y2="560.86" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="572.74" y2="572.74" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="180" x2="200" y1="584.62" y2="584.62" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="168" x2="200" y1="596.5" y2="596.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<path d="m127.58 2.8789v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.4375zm17.301 7.1602v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.257 0.9375-0.632 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.441 0.4102-2.285 0.4102-0.672 0-1.297-0.086-1.875-0.2578-0.571-0.1719-1.086-0.4414-1.547-0.8086s-0.856-0.8399-1.184-1.418c-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.257-1.7539-0.257-2.8242v-2.789c0-1.3438 0.132-2.4766 0.398-3.3985 0.266-0.92968 0.644-1.6836 1.137-2.2617 0.492-0.58594 1.078-1.0117 1.757-1.2774 0.688-0.26562 1.454-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.852 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80469 0.258 1.7422 0.258 2.8125zm-2.824 3.1875v-3.6094c0-0.67969-0.039-1.2774-0.117-1.793-0.079-0.52344-0.196-0.96484-0.352-1.3242-0.148-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.613-0.16406-0.973-0.16406-0.437 0-0.828 0.08593-1.172 0.25781-0.343 0.16406-0.632 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59375-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.118 1.8164 0.078 0.5234 0.195 0.9726 0.351 1.3476 0.156 0.3672 0.344 0.6719 0.563 0.9141 0.226 0.2344 0.484 0.4062 0.773 0.5156 0.297 0.1094 0.621 0.1641 0.973 0.1641 0.445 0 0.84-0.086 1.183-0.2578 0.344-0.1719 0.633-0.4454 0.868-0.8204 0.234-0.3828 0.41-0.8789 0.527-1.4882 0.117-0.6094 0.176-1.3399 0.176-2.1914zm16.715-3.1875v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4414-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.258-1.7539-0.258-2.8242v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.92968 0.644-1.6836 1.136-2.2617 0.492-0.58594 1.078-1.0117 1.758-1.2774 0.688-0.26562 1.453-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.851 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80469 0.258 1.7422 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.67969-0.039-1.2774-0.117-1.793-0.078-0.52344-0.195-0.96484-0.351-1.3242-0.149-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.614-0.16406-0.973-0.16406-0.438 0-0.828 0.08593-1.172 0.25781-0.344 0.16406-0.633 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59375-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4454 0.867-0.8204 0.235-0.3828 0.41-0.8789 0.528-1.4882 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m136.03 75.373h0.235c1.078 0 1.976-0.1406 2.695-0.4218 0.727-0.2891 1.305-0.6875 1.734-1.1953 0.43-0.5079 0.739-1.1055 0.926-1.793 0.188-0.6875 0.281-1.4336 0.281-2.2383v-2.9414c0-0.6953-0.074-1.3047-0.222-1.8281-0.141-0.5313-0.344-0.9727-0.61-1.3242-0.258-0.3594-0.558-0.6289-0.902-0.8086-0.336-0.1797-0.699-0.2696-1.09-0.2696-0.43 0-0.816 0.0977-1.16 0.293-0.336 0.1875-0.621 0.4492-0.856 0.7852-0.226 0.3281-0.402 0.7148-0.527 1.1601-0.117 0.4375-0.176 0.9063-0.176 1.4063 0 0.4687 0.055 0.9218 0.164 1.3593 0.118 0.4297 0.289 0.8125 0.516 1.1485 0.227 0.3359 0.512 0.6015 0.856 0.7969 0.343 0.1953 0.746 0.2929 1.207 0.2929 0.437 0 0.839-0.082 1.207-0.2461 0.367-0.1718 0.687-0.4023 0.961-0.6914 0.273-0.289 0.488-0.6133 0.644-0.9726 0.156-0.3594 0.242-0.7266 0.258-1.1016l1.078 0.3281c0 0.5938-0.125 1.1797-0.375 1.7578-0.242 0.5704-0.582 1.0938-1.02 1.5704-0.429 0.4687-0.933 0.8437-1.511 1.125-0.571 0.2812-1.192 0.4218-1.864 0.4218-0.812 0-1.531-0.1523-2.156-0.457-0.617-0.3125-1.133-0.7344-1.547-1.2656-0.406-0.5313-0.711-1.1407-0.914-1.8282s-0.304-1.4101-0.304-2.1679c0-0.8203 0.125-1.5899 0.375-2.3086 0.25-0.7188 0.613-1.3516 1.089-1.8985 0.477-0.5546 1.055-0.9843 1.735-1.289 0.687-0.3125 1.465-0.4688 2.332-0.4688 0.922 0 1.73 0.1797 2.426 0.5391 0.695 0.3594 1.281 0.8555 1.757 1.4883 0.477 0.6328 0.836 1.3672 1.079 2.2031 0.242 0.8359 0.363 1.7344 0.363 2.6953v0.9961c0 1.0078-0.09 1.9805-0.27 2.918-0.179 0.9297-0.472 1.7929-0.879 2.5898-0.398 0.7891-0.925 1.4844-1.582 2.086-0.648 0.5937-1.445 1.0586-2.39 1.3945-0.938 0.3281-2.039 0.4922-3.305 0.4922h-0.258zm22.739-7.7343v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4414-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2851-0.75-2.0976-0.172-0.8125-0.258-1.754-0.258-2.8243v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.9297 0.644-1.6836 1.136-2.2617 0.492-0.5859 1.078-1.0117 1.758-1.2773 0.688-0.2657 1.453-0.3985 2.297-0.3985 0.68 0 1.305 0.086 1.875 0.2578 0.578 0.1641 1.094 0.4258 1.547 0.7852 0.461 0.3594 0.851 0.8281 1.172 1.4063 0.328 0.5703 0.578 1.2617 0.75 2.0742 0.172 0.8047 0.258 1.7422 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.6797-0.039-1.2773-0.117-1.793-0.078-0.5234-0.195-0.9648-0.351-1.3242-0.149-0.3672-0.336-0.6641-0.563-0.8906-0.226-0.2344-0.484-0.4024-0.773-0.5039-0.289-0.1094-0.614-0.1641-0.973-0.1641-0.438 0-0.828 0.086-1.172 0.2578-0.344 0.1641-0.633 0.4297-0.867 0.7969s-0.414 0.8516-0.539 1.4531c-0.117 0.5938-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4453 0.867-0.8203 0.235-0.3829 0.41-0.8789 0.528-1.4883 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m144.91 130.55c0 1.062-0.246 1.957-0.738 2.683-0.492 0.727-1.164 1.278-2.016 1.653-0.844 0.367-1.797 0.551-2.859 0.551-1.063 0-2.02-0.184-2.871-0.551-0.852-0.375-1.524-0.926-2.016-1.653-0.492-0.726-0.738-1.621-0.738-2.683 0-0.703 0.136-1.34 0.41-1.91 0.273-0.578 0.66-1.075 1.16-1.489 0.508-0.421 1.102-0.746 1.781-0.972 0.688-0.227 1.438-0.34 2.25-0.34 1.078 0 2.043 0.199 2.895 0.598 0.851 0.398 1.519 0.949 2.004 1.652 0.492 0.703 0.738 1.523 0.738 2.461zm-2.836-0.141c0-0.57-0.117-1.07-0.351-1.5-0.235-0.429-0.563-0.761-0.985-0.996-0.422-0.234-0.91-0.351-1.465-0.351-0.562 0-1.05 0.117-1.465 0.351-0.414 0.235-0.738 0.567-0.972 0.996-0.227 0.43-0.34 0.93-0.34 1.5 0 0.578 0.113 1.078 0.34 1.5 0.226 0.414 0.551 0.731 0.972 0.949 0.422 0.219 0.918 0.329 1.489 0.329 0.57 0 1.062-0.11 1.476-0.329 0.414-0.218 0.735-0.535 0.961-0.949 0.227-0.422 0.34-0.922 0.34-1.5zm2.449-7.781c0 0.852-0.226 1.609-0.679 2.273-0.446 0.664-1.063 1.188-1.852 1.571-0.789 0.375-1.687 0.562-2.695 0.562-1.016 0-1.922-0.187-2.719-0.562-0.789-0.383-1.41-0.907-1.863-1.571-0.446-0.664-0.668-1.421-0.668-2.273 0-1.016 0.222-1.871 0.668-2.566 0.453-0.704 1.074-1.239 1.863-1.606s1.691-0.551 2.707-0.551 1.918 0.184 2.707 0.551 1.406 0.902 1.852 1.606c0.453 0.695 0.679 1.55 0.679 2.566zm-2.824 0.094c0-0.508-0.101-0.953-0.305-1.336-0.195-0.391-0.472-0.695-0.832-0.914-0.359-0.219-0.785-0.328-1.277-0.328s-0.918 0.105-1.277 0.316c-0.36 0.211-0.637 0.508-0.832 0.891-0.196 0.382-0.293 0.84-0.293 1.371 0 0.523 0.097 0.98 0.293 1.371 0.195 0.383 0.472 0.683 0.832 0.902 0.367 0.219 0.797 0.328 1.289 0.328s0.918-0.109 1.277-0.328c0.36-0.219 0.637-0.519 0.832-0.902 0.195-0.391 0.293-0.848 0.293-1.371zm17.067 2.519v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m145.09 175.74v1.547l-6.82 15.516h-2.977l6.809-14.813h-8.836v-2.25zm13.68 7.102v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m142.29 233.23h0.352v2.309h-0.2c-1.007 0-1.879 0.156-2.613 0.469-0.726 0.312-1.324 0.742-1.793 1.289s-0.82 1.187-1.055 1.922c-0.226 0.726-0.339 1.5-0.339 2.32v2.684c0 0.679 0.074 1.281 0.222 1.804 0.149 0.516 0.356 0.95 0.621 1.301 0.274 0.344 0.586 0.606 0.938 0.785 0.351 0.18 0.73 0.27 1.137 0.27 0.421 0 0.804-0.086 1.148-0.258 0.344-0.18 0.637-0.426 0.879-0.738 0.242-0.313 0.426-0.684 0.551-1.114 0.125-0.429 0.187-0.898 0.187-1.406 0-0.484-0.062-0.937-0.187-1.359-0.117-0.43-0.293-0.805-0.528-1.125-0.234-0.328-0.527-0.582-0.879-0.762-0.343-0.187-0.742-0.281-1.195-0.281-0.562 0-1.074 0.133-1.535 0.398-0.453 0.266-0.82 0.614-1.102 1.043-0.273 0.422-0.421 0.871-0.445 1.348l-1.078-0.352c0.063-0.726 0.223-1.379 0.48-1.957 0.266-0.578 0.614-1.07 1.043-1.476 0.43-0.407 0.926-0.715 1.489-0.926 0.57-0.219 1.195-0.328 1.875-0.328 0.828 0 1.547 0.156 2.156 0.469 0.609 0.312 1.113 0.738 1.512 1.277 0.406 0.531 0.707 1.141 0.902 1.828 0.203 0.68 0.305 1.391 0.305 2.133 0 0.82-0.125 1.586-0.375 2.297-0.25 0.703-0.617 1.32-1.102 1.851-0.476 0.532-1.058 0.946-1.746 1.242-0.68 0.297-1.453 0.446-2.32 0.446-0.914 0-1.731-0.176-2.449-0.528-0.711-0.351-1.317-0.836-1.817-1.453-0.492-0.617-0.867-1.328-1.125-2.133-0.258-0.804-0.387-1.656-0.387-2.554v-1.172c0-1.297 0.164-2.52 0.493-3.668 0.328-1.156 0.832-2.176 1.511-3.059 0.688-0.882 1.567-1.574 2.637-2.074 1.07-0.508 2.348-0.762 3.832-0.762zm16.481 7.207v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m136.72 300.07-2.25-0.55 0.925-8.578h9.2v2.39h-6.856l-0.469 4.184c0.266-0.157 0.633-0.309 1.102-0.457 0.469-0.157 1.004-0.235 1.605-0.235 0.805 0 1.524 0.133 2.157 0.399 0.64 0.258 1.183 0.636 1.629 1.136 0.445 0.493 0.785 1.094 1.019 1.805 0.235 0.703 0.352 1.496 0.352 2.379 0 0.789-0.117 1.527-0.352 2.215-0.226 0.687-0.57 1.293-1.031 1.816-0.461 0.524-1.043 0.934-1.746 1.231-0.696 0.289-1.52 0.433-2.473 0.433-0.711 0-1.394-0.101-2.051-0.304-0.648-0.211-1.23-0.52-1.746-0.926-0.515-0.414-0.929-0.922-1.242-1.524-0.312-0.609-0.492-1.308-0.539-2.097h2.766c0.07 0.555 0.222 1.027 0.457 1.418 0.242 0.383 0.562 0.676 0.961 0.879 0.398 0.203 0.859 0.304 1.382 0.304 0.477 0 0.887-0.082 1.231-0.246 0.344-0.172 0.629-0.414 0.855-0.726 0.235-0.321 0.407-0.696 0.516-1.125 0.117-0.43 0.176-0.907 0.176-1.43 0-0.5-0.067-0.957-0.199-1.371-0.125-0.414-0.317-0.774-0.575-1.078-0.25-0.305-0.566-0.539-0.949-0.703-0.383-0.172-0.824-0.258-1.324-0.258-0.672 0-1.188 0.098-1.547 0.293-0.352 0.195-0.68 0.437-0.984 0.726zm22.047-2.027v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m145.51 359.52v2.25h-12.305l-0.094-1.7 7.36-11.531h2.261l-2.449 4.195-4.23 6.786zm-2.133-10.981v17.063h-2.824v-17.063zm15.391 7.102v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m137.07 413.39h1.688c0.656 0 1.199-0.114 1.629-0.34 0.437-0.227 0.761-0.539 0.972-0.938 0.211-0.398 0.317-0.855 0.317-1.371 0-0.539-0.098-1-0.293-1.383-0.188-0.39-0.477-0.691-0.867-0.902-0.383-0.211-0.872-0.316-1.465-0.316-0.5 0-0.953 0.101-1.36 0.304-0.398 0.196-0.715 0.477-0.949 0.844-0.234 0.359-0.351 0.789-0.351 1.289h-2.836c0-0.906 0.238-1.711 0.714-2.414 0.477-0.703 1.125-1.254 1.946-1.652 0.828-0.407 1.758-0.61 2.789-0.61 1.101 0 2.062 0.184 2.883 0.551 0.828 0.359 1.472 0.899 1.933 1.617 0.461 0.719 0.692 1.61 0.692 2.672 0 0.485-0.114 0.977-0.34 1.477-0.227 0.5-0.563 0.957-1.008 1.371-0.445 0.406-1 0.738-1.664 0.996-0.664 0.25-1.434 0.375-2.309 0.375h-2.121zm0 2.203v-1.547h2.121c1 0 1.852 0.117 2.555 0.351 0.711 0.235 1.289 0.559 1.734 0.973 0.446 0.406 0.77 0.871 0.973 1.395 0.211 0.523 0.316 1.078 0.316 1.664 0 0.797-0.144 1.508-0.433 2.132-0.281 0.618-0.684 1.141-1.207 1.571-0.524 0.429-1.137 0.754-1.84 0.972-0.695 0.219-1.453 0.329-2.273 0.329-0.735 0-1.438-0.102-2.11-0.305s-1.273-0.504-1.805-0.902c-0.531-0.407-0.953-0.911-1.265-1.512-0.305-0.61-0.457-1.313-0.457-2.11h2.824c0 0.508 0.117 0.957 0.352 1.348 0.242 0.383 0.578 0.684 1.007 0.902 0.438 0.219 0.938 0.329 1.5 0.329 0.594 0 1.106-0.106 1.536-0.317 0.429-0.211 0.757-0.523 0.984-0.937 0.234-0.414 0.352-0.914 0.352-1.5 0-0.664-0.129-1.203-0.387-1.618-0.258-0.414-0.625-0.718-1.102-0.914-0.476-0.203-1.039-0.304-1.687-0.304zm21.696-2.356v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m145.2 478.55v2.25h-11.437v-1.934l5.554-6.058c0.61-0.688 1.09-1.282 1.442-1.782 0.351-0.5 0.598-0.949 0.738-1.347 0.149-0.407 0.223-0.801 0.223-1.184 0-0.539-0.102-1.012-0.305-1.418-0.195-0.414-0.484-0.738-0.867-0.973-0.383-0.242-0.848-0.363-1.395-0.363-0.632 0-1.164 0.137-1.593 0.41-0.43 0.274-0.754 0.653-0.973 1.137-0.219 0.477-0.328 1.023-0.328 1.641h-2.824c0-0.992 0.226-1.899 0.679-2.719 0.453-0.828 1.11-1.484 1.969-1.969 0.86-0.492 1.895-0.738 3.106-0.738 1.14 0 2.109 0.191 2.906 0.574s1.402 0.926 1.816 1.629c0.422 0.703 0.633 1.535 0.633 2.496 0 0.531-0.086 1.059-0.258 1.582-0.172 0.524-0.418 1.047-0.738 1.57-0.313 0.516-0.684 1.036-1.113 1.559-0.43 0.516-0.903 1.039-1.418 1.57l-3.692 4.067zm13.575-7.711v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m141.47 521.28v17.121h-2.824v-13.769l-4.184 1.418v-2.332l6.668-2.438zm17.301 7.16v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m158.77 586.04v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
</g><path d="m201.79 0s-201.79 0-201.79 100.5v492.54c0 3.9768 5.3727 6.9606 12 6.9606h576c6.627 0 12-2.9838 12-6.9606v-492.54c0-100.5-198.21-100.5-198.21-100.5h-101.79zm201.21 121.8c-3.866 0-7 1.8804-7 4.2v450.6c0 2.3196 3.134 4.2 7 4.2h43.998c3.866 0 7-1.8804 7-4.2v-450.6c0-2.3196-3.134-4.2-7-4.2z" fill="#000" fill-opacity="0" style="stroke-width:.43301" tb:tag="clickArea"/><g fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0 -4.9442)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 51 KiB |
@ -0,0 +1,723 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="800" height="400" fill="none" version="1.1" viewBox="0 0 800 400"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Simple horizontal scale", |
|||
"description": "Simple horizontal scale with current volume value and configurable warning and critical scale.", |
|||
"searchTags": [ |
|||
"scale" |
|||
], |
|||
"widgetSizeX": 4, |
|||
"widgetSizeY": 2, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "highCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar highCriticalValue = ctx.properties.highCriticalScale;\nvar value = ctx.values.value;\n\nif (showHighCriticalScale) {\n element.show();\n var offset = calculateOffset(highCriticalValue, minValue, maxValue);\n element.width(653-offset);\n} else {\n element.hide();\n}\nif (showHighCriticalScale && value !== null) {\n var highCriticalScale = ctx.properties.highCriticalScale;\n if (value >= highCriticalScale) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "highWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighWarningScale = ctx.properties.showHighWarningScale;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar highWarningValue = ctx.properties.highWarningScale;\nvar value = ctx.values.value;\n\nif (showHighWarningScale) {\n element.show();\n var offset = calculateOffset(highWarningValue, minValue, maxValue);\n element.width(653-offset);\n} else {\n element.hide();\n}\n\nif (showHighWarningScale && value !== null) {\n var highCriticalScale = ctx.properties.highCriticalScale;\n if (!showHighCriticalScale) {\n highCriticalScale = Number.MAX_SAFE_INTEGER;\n }\n var highWarningScale = ctx.properties.highWarningScale;\n if (value < highCriticalScale && value >= highWarningScale) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "label", |
|||
"stateRenderFunction": "if (ctx.properties.label) {\n element.show();\n ctx.api.font(element, ctx.properties.labelFont, ctx.properties.labelColor);\n ctx.api.text(element, ctx.properties.labelText);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowCriticalScale = ctx.properties.lowCriticalScale;\n\nif (showLowCriticalScale) {\n element.show();\n var offset = calculateOffset(lowCriticalScale, minValue, maxValue);\n var childrenElement = element.children();\n element.width(offset);\n} else {\n element.hide();\n}\n\nif (showLowCriticalScale && value !== null) {\n if (value <= lowCriticalScale) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowWarningScale = ctx.properties.showLowWarningScale;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowWarningScale = ctx.properties.lowWarningScale;\nif (showLowWarningScale) {\n element.show();\n var offset = calculateOffset(lowWarningScale, minValue, maxValue);\n element.width(offset);\n} else {\n element.hide();\n}\n\nif (showLowWarningScale && value !== null) {\n var lowCriticalScale = ctx.properties.lowCriticalScale;\n if (!showLowCriticalScale) {\n lowCriticalScale = Number.MIN_SAFE_INTEGER;\n }\n if (value > lowCriticalScale && value <= lowWarningScale) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "maxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.maxValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minMaxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n element.show();\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.minValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scaleBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.scaleColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "target", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showTarget = ctx.properties.showTarget;\nvar targetValue = ctx.values.targetValue;\n\nif (showTarget && targetValue !== null) {\n element.show();\n var offset = calculateOffset(targetValue, minValue, maxValue);\n element.transform({translateX: Math.min(Math.max(offset-17, 0), 619)});\n} else {\n element.hide();\n}\n\n", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "targetBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.targetColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "units", |
|||
"stateRenderFunction": "if (ctx.properties.showUnits) {\n element.show();\n ctx.api.font(element, ctx.properties.unitsFont, ctx.properties.unitsColor);\n ctx.api.text(element, ctx.properties.units);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "value", |
|||
"stateRenderFunction": "if (ctx.properties.value) {\n element.show();\n ctx.api.font(element, ctx.properties.valueFont, ctx.properties.valueColor);\n ctx.api.text(element, ctx.api.formatValue(ctx.values.value, ctx.properties.valueDecimals, null, ctx.properties.valueDecimals));\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueArrowPosition", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateX: offset});\n}\n", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valuePointer", |
|||
"stateRenderFunction": "element.fill(ctx.properties.arrowColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueTextPositon", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateX: offset});\n}\n", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"hint": "{i18n:scada.symbol.value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "temperature" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "targetValue", |
|||
"name": "{i18n:scada.symbol.target-value}", |
|||
"hint": "{i18n:scada.symbol.target-value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "target" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "minMaxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.min-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "maxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 100, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.max-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showHighCriticalScale", |
|||
"name": "{i18n:scada.symbol.high-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "highCriticalScale", |
|||
"name": "{i18n:scada.symbol.high-critical-scale}", |
|||
"type": "number", |
|||
"default": 85, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showHighCriticalScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showHighWarningScale", |
|||
"name": "{i18n:scada.symbol.high-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "highWarningScale", |
|||
"name": "{i18n:scada.symbol.high-warning-scale}", |
|||
"type": "number", |
|||
"default": 70, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showHighWarningScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showLowWarningScale", |
|||
"name": "{i18n:scada.symbol.low-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "lowWarningScale", |
|||
"name": "{i18n:scada.symbol.low-warning-scale}", |
|||
"type": "number", |
|||
"default": 30, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showLowWarningScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showLowCriticalScale", |
|||
"name": "{i18n:scada.symbol.low-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "lowCriticalScale", |
|||
"name": "{i18n:scada.symbol.low-critical-scale}", |
|||
"type": "number", |
|||
"default": 15, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showLowCriticalScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueDecimals", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "Decimals", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 10, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "valueFont", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 60, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "400", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueColor", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "color", |
|||
"default": "#002878", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "label", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelText", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "text", |
|||
"default": "Outdoor", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelFont", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelColor", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showUnits", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "units", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "units", |
|||
"default": "°C", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsFont", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsColor", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showTarget", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "targetColor", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "color", |
|||
"default": "#DEDEDE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showTarget", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scaleColor", |
|||
"name": "{i18n:scada.symbol.scale-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<text x="409.16602" y="97.234375" fill="#000000" font-family="Roboto" font-size="56px" font-weight="400" text-anchor="middle" tb:tag="label" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">Outdoor</tspan></text><text x="401.15625" y="345.75" fill="#000000" font-family="Roboto" font-size="40px" font-weight="400" text-anchor="middle" tb:tag="units" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">°C</tspan></text><g fill="#666" font-family="Roboto" font-size="32px" font-weight="500" text-anchor="middle" style="display: none;" tb:tag="minMaxValue"> |
|||
<text x="88.070312" y="268" tb:tag="minValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">0</tspan></text> |
|||
<text x="705.02344" y="268" tb:tag="maxValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">100</tspan></text> |
|||
</g><g transform="translate(180)" tb:tag="valueArrowPosition"> |
|||
<path d="m80 179 24-42h-48z" fill="#666" tb:tag="valuePointer"/> |
|||
</g><g transform="translate(180)" tb:tag="valueTextPositon"> |
|||
<text x="79.779297" y="273.125" fill="#002878" font-family="Roboto" font-size="60px" font-weight="400" text-anchor="middle" tb:tag="value" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">26</tspan></text> |
|||
</g><g stroke="#000" tb:tag="scale"> |
|||
<rect x="80.5" y="183.5" width="652" height="41" fill="#c8dff7" tb:tag="scaleBackground"/> |
|||
<rect x="80.5" y="183.5" width="164" height="41" fill="#ebebeb" tb:tag="lowWarningScale"/> |
|||
<rect x="80.5" y="183.5" width="81" height="41" fill="#666" tb:tag="lowCriticalScale"/> |
|||
<rect transform="scale(-1,1)" x="-732.5" y="183.5" width="164" height="41" fill="#ebebeb" tb:tag="highWarningScale"/> |
|||
<rect transform="scale(-1,1)" x="-732.5" y="183.5" width="81" height="41" fill="#666" tb:tag="highCriticalScale"/> |
|||
</g><g transform="translate(400)" style="display: none;" tb:tag="target"> |
|||
<rect transform="rotate(45)" x="201.8" y="64.66" width="22" height="22" fill="#dedede" stroke="#000" stroke-width="2" tb:tag="targetBackground" style=""/> |
|||
</g><path d="m269.06 0s-269.06 0-269.06 67v328.36c0 2.6512 7.1634 4.6404 16 4.6404h768c8.836 0 16-1.9892 16-4.6404v-328.36c0-67-264.28-67-264.28-67h-135.72zm268.28 81.2c-5.1546 0-9.3334 1.2536-9.3334 2.8v300.4c0 1.5464 4.1786 2.8 9.3334 2.8h58.666c5.1546 0 9.3334-1.2536 9.3334-2.8v-300.4c0-1.5464-4.1786-2.8-9.3334-2.8z" fill="#000" fill-opacity="0" style="stroke-width:.7303" tb:tag="clickArea"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 26 KiB |
@ -0,0 +1,723 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="400" height="800" fill="none" version="1.1" viewBox="0 0 400 800"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Simple vertical scale", |
|||
"description": "Simple vertical scale with current volume value and configurable warning and critical scale.", |
|||
"searchTags": [ |
|||
"scale" |
|||
], |
|||
"widgetSizeX": 2, |
|||
"widgetSizeY": 4, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "highCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar highCriticalScale = ctx.properties.highCriticalScale;\n\nif (showHighCriticalScale) {\n element.show();\n var offset = calculateOffset(highCriticalScale, minValue, maxValue);\n element.height(653-offset);\n} else {\n element.hide();\n}\n\nif (showHighCriticalScale && value !== null) {\n var highCriticalScale = ctx.properties.highCriticalScale;\n if (value >= highCriticalScale) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "highWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showHighWarningScale = ctx.properties.showHighWarningScale;\nvar showHighCriticalScale = ctx.properties.showHighCriticalScale;\nvar highWarningValue = ctx.properties.highWarningScale;\nif (showHighWarningScale) {\n element.show();\n var offset = calculateOffset(highWarningValue, minValue, maxValue);\n element.height(653-offset);\n} else {\n element.hide();\n}\nif (showHighWarningScale && value !== null) {\n var highCriticalScale = ctx.properties.highCriticalScale;\n if (!showHighCriticalScale) {\n highCriticalScale = Number.MAX_SAFE_INTEGER;\n }\n var highWarningScale = ctx.properties.highWarningScale;\n if (value < highCriticalScale && value >= highWarningScale) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "label", |
|||
"stateRenderFunction": "if (ctx.properties.label) {\n element.show();\n ctx.api.font(element, ctx.properties.labelFont, ctx.properties.labelColor);\n ctx.api.text(element, ctx.properties.labelText);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowCriticalScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowCriticalScale = ctx.properties.lowCriticalScale;\nif (showLowCriticalScale) {\n element.show();\n var offset = calculateOffset(lowCriticalScale, minValue, maxValue);\n element.height(offset);\n} else {\n element.hide();\n}\n\nif (showLowCriticalScale && value !== null) {\n if (value <= lowCriticalScale) {\n element.fill(ctx.properties.activeCriticalScaleColor);\n } else {\n element.fill(ctx.properties.defaultCriticalScaleColor)\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "lowWarningScale", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar value = ctx.values.value;\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showLowWarningScale = ctx.properties.showLowWarningScale;\nvar showLowCriticalScale = ctx.properties.showLowCriticalScale;\nvar lowWarningScale = ctx.properties.lowWarningScale;\nif (showLowWarningScale) {\n element.show();\n var offset = calculateOffset(lowWarningScale, minValue, maxValue);\n element.height(offset);\n} else {\n element.hide();\n}\nif (showLowWarningScale && value !== null) {\n var lowCriticalScale = ctx.properties.lowCriticalScale;\n if (!showLowCriticalScale) {\n lowCriticalScale = Number.MIN_SAFE_INTEGER;\n }\n if (value > lowCriticalScale && value <= lowWarningScale) {\n element.fill(ctx.properties.activeWarningScaleColor);\n } else {\n element.fill(ctx.properties.defaultWarningScaleColor);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "maxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.maxValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minMaxValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n element.show();\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "minValue", |
|||
"stateRenderFunction": "if (ctx.properties.minMaxValue) {\n ctx.api.text(element, ctx.properties.minValue);\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scaleBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.scaleColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "target", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar showTarget = ctx.properties.showTarget;\nvar targetValue = ctx.values.targetValue;\n\nif (showTarget && targetValue !== null) {\n element.show();\n var offset = calculateOffset(targetValue, minValue, maxValue);\n element.transform({translateY: -Math.min(Math.max(offset-17, 0), 619)});\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "targetBackground", |
|||
"stateRenderFunction": "element.fill(ctx.properties.targetColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "units", |
|||
"stateRenderFunction": "if (ctx.properties.showUnits) {\n element.show();\n ctx.api.font(element, ctx.properties.unitsFont, ctx.properties.unitsColor);\n ctx.api.text(element, ctx.properties.units);\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "value", |
|||
"stateRenderFunction": "if (ctx.properties.value) {\n element.show();\n ctx.api.font(element, ctx.properties.valueFont, ctx.properties.valueColor);\n ctx.api.text(element, ctx.api.formatValue(ctx.values.value, ctx.properties.valueDecimals, null, ctx.properties.valueDecimals));\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueArrowPosition", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateY: -offset});\n}\n", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valuePointer", |
|||
"stateRenderFunction": "element.fill(ctx.properties.arrowColor);", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "valueTextPositon", |
|||
"stateRenderFunction": "function calculateOffset(value, minValue, maxValue) {\n var clampedValue = Math.max(minValue, Math.min(value, maxValue));\n var normalizedValue = (clampedValue - minValue) / (maxValue - minValue);\n var offset = normalizedValue * 653;\n return offset;\n}\n\nvar minValue = ctx.properties.minValue;\nvar maxValue = ctx.properties.maxValue;\nvar value = ctx.values.value;\n\nif (value !== null) {\n var offset = calculateOffset(value, minValue, maxValue);\n element.transform({translateY: -offset});\n}\n", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"hint": "{i18n:scada.symbol.value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "temperature" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "targetValue", |
|||
"name": "{i18n:scada.symbol.target-value}", |
|||
"hint": "{i18n:scada.symbol.target-value-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "target" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "minMaxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.min-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "maxValue", |
|||
"name": "{i18n:scada.symbol.min-max-value}", |
|||
"type": "number", |
|||
"default": 100, |
|||
"required": true, |
|||
"subLabel": "{i18n:scada.symbol.max-value}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showHighCriticalScale", |
|||
"name": "{i18n:scada.symbol.high-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "highCriticalScale", |
|||
"name": "{i18n:scada.symbol.high-critical-scale}", |
|||
"type": "number", |
|||
"default": 85, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showHighCriticalScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showHighWarningScale", |
|||
"name": "{i18n:scada.symbol.high-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "highWarningScale", |
|||
"name": "{i18n:scada.symbol.high-warning-scale}", |
|||
"type": "number", |
|||
"default": 70, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showHighWarningScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showLowWarningScale", |
|||
"name": "{i18n:scada.symbol.low-warning-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "lowWarningScale", |
|||
"name": "{i18n:scada.symbol.low-warning-scale}", |
|||
"type": "number", |
|||
"default": 30, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showLowWarningScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "showLowCriticalScale", |
|||
"name": "{i18n:scada.symbol.low-critical-scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "lowCriticalScale", |
|||
"name": "{i18n:scada.symbol.low-critical-scale}", |
|||
"type": "number", |
|||
"default": 15, |
|||
"required": null, |
|||
"subLabel": "", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showLowCriticalScale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "value", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueDecimals", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "number", |
|||
"default": 0, |
|||
"required": true, |
|||
"subLabel": "Decimals", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 10, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "valueFont", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 60, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "400", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "valueColor", |
|||
"name": "{i18n:scada.symbol.value}", |
|||
"type": "color", |
|||
"default": "#002878", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "value", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "label", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelText", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "text", |
|||
"default": "Outdoor", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "flex", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelFont", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "labelColor", |
|||
"name": "{i18n:scada.symbol.label}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "label", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showUnits", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "units", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "units", |
|||
"default": "°C", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsFont", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 56, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "unitsColor", |
|||
"name": "{i18n:scada.symbol.units}", |
|||
"type": "color", |
|||
"default": "#000000DE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showUnits", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "showTarget", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "switch", |
|||
"default": false, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "targetColor", |
|||
"name": "{i18n:scada.symbol.target}", |
|||
"type": "color", |
|||
"default": "#DEDEDE", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "showTarget", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scaleColor", |
|||
"name": "{i18n:scada.symbol.scale-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeWarningScaleColor", |
|||
"name": "{i18n:scada.symbol.warning-scale-color}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "defaultCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "Default", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "activeCriticalScaleColor", |
|||
"name": "{i18n:scada.symbol.critical-scale-color}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "Active", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<text x="206.16602" y="43.234375" fill="#000000" font-family="Roboto" font-size="56px" font-weight="400" text-anchor="middle" tb:tag="label" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">Outdoor</tspan></text><text x="195.21875" y="786.75" fill="#000000" font-family="Roboto" font-size="40px" font-weight="400" text-anchor="middle" tb:tag="units" xml:space="preserve"><tspan transform="translate(0,-144)" dominant-baseline="middle">°C</tspan></text><g stroke="#000" tb:tag="scale"> |
|||
<rect x="176.5" y="83" width="41" height="652" fill="#c8dff7" tb:tag="scaleBackground"/> |
|||
<rect transform="scale(1,-1)" x="176.5" y="-735" width="41" height="164" fill="#ebebeb" tb:tag="lowWarningScale"/> |
|||
<rect x="176.5" y="83.5" width="41" height="164" fill="#ebebeb" tb:tag="highWarningScale"/> |
|||
<rect transform="scale(1,-1)" x="176.5" y="-735" width="41" height="81" fill="#666" tb:tag="lowCriticalScale"/> |
|||
<rect x="176.5" y="83.5" width="41" height="81" fill="#666" tb:tag="highCriticalScale"/> |
|||
</g><g fill="#666" font-family="Roboto" font-size="32px" font-weight="500" style="display: none;" tb:tag="minMaxValue"> |
|||
<text x="237.48438" y="97" tb:tag="maxValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">100</tspan></text> |
|||
<text x="238.89062" y="727" tb:tag="minValue" xml:space="preserve" style=""><tspan dominant-baseline="middle">0</tspan></text> |
|||
</g><g transform="translate(0,-180)" tb:tag="valueArrowPosition"> |
|||
<path d="m168 735-42-24v48z" fill="#666" tb:tag="valuePointer"/> |
|||
</g><g transform="translate(0,-180)" tb:tag="valueTextPositon"> |
|||
<text x="223.60547" y="739.125" fill="#002878" font-family="Roboto" font-size="60px" font-weight="400" tb:tag="value" xml:space="preserve"><tspan dominant-baseline="middle">26</tspan></text> |
|||
</g><g transform="translate(0,-400)" style="display: none;" tb:tag="target"> |
|||
<rect transform="rotate(-45)" x="-379.76" y="636.31" width="22" height="22" fill="#dedede" stroke="#000" stroke-width="2" tb:tag="targetBackground" style=""/> |
|||
</g><path d="m134.53 0s-134.53 0-134.53 134v656.72c0 5.3024 3.5817 9.2808 8 9.2808h384c4.418 0 8-3.9784 8-9.2808v-656.72c0-134-132.14-134-132.14-134h-67.86zm134.14 162.4c-2.5773 0-4.6667 2.5072-4.6667 5.6v600.8c0 3.0928 2.0893 5.6 4.6667 5.6h29.333c2.5773 0 4.6667-2.5072 4.6667-5.6v-600.8c0-3.0928-2.0893-5.6-4.6667-5.6z" fill="#000" fill-opacity="0" style="stroke-width:.7303" tb:tag="clickArea"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 101 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 105 KiB |
|
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 118 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 122 KiB |
|
Before Width: | Height: | Size: 108 KiB After Width: | Height: | Size: 108 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 73 KiB |
@ -0,0 +1,82 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Top right elbow connector", |
|||
"description": "Top right elbow connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M100 0V69C100 86.1208 113.879 100 131 100H200" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.2 KiB |
@ -0,0 +1,87 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Top tee connector", |
|||
"description": "Top tee connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line-color", |
|||
"stateRenderFunction": "element.fill(ctx.properties.lineColor);\nelement.stroke(ctx.properties.lineColor);", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M200 100H115C106.716 100 100 93.2843 100 85V0" stroke="#1A1A1A" stroke-width="6" id="path2" tb:tag="line"/><path d="M0 100H85C93.2843 100 100 93.2843 100 85V0" stroke="#1A1A1A" stroke-width="6" id="path4" tb:tag="line"/><path d="M0 100L200 100" stroke="#1A1A1A" stroke-width="6" id="path6" tb:tag="line"/><path d="M87 100H113C113 100 100 100 100 86C100 100 87 100 87 100Z" fill="#1A1A1A" stroke="#1A1A1A" stroke-width="2" id="path8" tb:tag="line-color"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 2.7 KiB |
@ -0,0 +1,97 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "Vertical broken pipe", |
|||
"description": "Vertical broken pipe.", |
|||
"searchTags": [ |
|||
"pipe", |
|||
"vertical pipe", |
|||
"broken pipe" |
|||
], |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "pipe-background", |
|||
"stateRenderFunction": "var color = ctx.properties.pipeColor;\nelement.attr({fill: color});", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "pipeColor", |
|||
"name": "{i18n:scada.symbol.pipe-color}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<g tb:tag="clickArea"> |
|||
<path d="m63.5 186.5s0.2293-53.5 0-60.5-6.5-17-6.5-17l21.5 14.5 6.5-14.5 9 10.5 11-14.5 6.5 18.5 6-10 11.5 2.5 14-7s-7.5 10-7.5 17v60.5h-72z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m63.5 186.5s0.2293-53.5 0-60.5-6.5-17-6.5-17l21.5 14.5 6.5-14.5 9 10.5 11-14.5 6.5 18.5 6-10 11.5 2.5 14-7s-7.5 10-7.5 17v60.5h-72z" fill="url(#paint0_linear_2474_252378)"/> |
|||
<path d="m61.52 114.23c-0.0889-0.188-0.1777-0.374-0.2661-0.556l16.407 11.066 1.4782 0.997 0.7293-1.627 5.5321-12.341 7.4602 8.703 1.2101 1.412 1.1238-1.481 9.314-12.278 5.576 15.868 1.058 3.013 1.643-2.738 5.447-9.078 10.448 2.272 0.517 0.112 0.473-0.236 9.023-4.512c-0.249 0.421-0.502 0.861-0.755 1.317-1.883 3.389-3.939 7.935-3.939 11.853v59h-68.994l0.0033-0.807c0.0058-1.476 0.0139-3.594 0.0228-6.157 0.0179-5.125 0.0394-12.032 0.0538-19.158 0.0286-14.23 0.0289-29.393-0.0868-32.927-0.1255-3.83-1.8722-8.32-3.4792-11.717z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<path d="m58 94.5s7.395-13.5 7.5-18.5 0-62 0-62h72s-0.086 54.5 0 62 4.5 18.5 4.5 18.5l-13.5-6-14 15-5-16.5-6 7.5-13-6-13 18-4.5-19.5-15 7.5z" fill="#fff" tb:tag="pipe-background"/> |
|||
<path d="m58 94.5s7.395-13.5 7.5-18.5 0-62 0-62h72s-0.086 54.5 0 62 4.5 18.5 4.5 18.5l-13.5-6-14 15-5-16.5-6 7.5-13-6-13 18-4.5-19.5-15 7.5z" fill="url(#paint1_linear_2474_252378)"/> |
|||
<path d="m67.003 15.5h68.995l-2e-3 0.8543c-2e-3 1.5049-5e-3 3.6632-8e-3 6.2766-7e-3 5.2267-0.015 12.274-0.02 19.555-0.011 14.556-0.011 30.069 0.032 33.831 0.046 3.9731 1.225 8.7675 2.346 12.479 0.357 1.1792 0.712 2.2636 1.031 3.1964l-10.268-4.5635-0.976-0.4341-0.73 0.7813-12.223 13.096-4.244-14.008-0.827-2.7275-1.78 2.2255-5.267 6.5829-13.055-6.0254-0.7231 1.0013-11.065 15.321-3.757-16.28-0.4284-1.8563-12.574 6.2868c0.5039-1.009 1.0566-2.1442 1.611-3.3352 0.9404-2.0204 1.8953-4.222 2.6248-6.2504 0.7123-1.9804 1.2726-3.9616 1.3044-5.4761 0.0529-2.5216 0.0528-18.048 0.0397-32.908-0.0066-7.4379-0.0164-14.72-0.0246-20.142-0.0041-2.711-0.0078-4.9572-0.0105-6.5257l-0.0017-0.9564z" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<rect transform="rotate(-90 51.5 198.5)" x="51.5" y="198.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
<rect transform="rotate(-90 51.5 12.5)" x="51.5" y="12.5" width="11" height="97" rx="5.5" fill="#D9D9D9" stroke="#727171" stroke-width="3"/> |
|||
</g><defs> |
|||
<linearGradient id="paint0_linear_2474_252378" x1="63.5" x2="135.5" y1="167.52" y2="167.97" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
<linearGradient id="paint1_linear_2474_252378" x1="65.5" x2="137.5" y1="70.24" y2="70.67" gradientUnits="userSpaceOnUse"> |
|||
<stop stop-color="#727171" offset="0"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".26388"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".41759"/> |
|||
<stop stop-color="#fff" stop-opacity="0" offset=".49829"/> |
|||
<stop stop-color="#727171" stop-opacity=".1" offset=".58094"/> |
|||
<stop stop-color="#727171" stop-opacity=".35" offset=".71855"/> |
|||
<stop stop-color="#727171" offset="1"/> |
|||
</linearGradient> |
|||
</defs> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.2 KiB |
@ -0,0 +1,174 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Vertical connector", |
|||
"description": "Vertical connector", |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "arrow", |
|||
"stateRenderFunction": "var arrow = ctx.values.arrow;\nif (arrow) {\n element.show();\n var arrowDirection = ctx.values.arrowDirection;\n var direticon = element.remember('direticon');\n var angle = arrowDirection ? 0 : 180;\n if (!direticon) {\n element.transform({rotate: angle});\n } else {\n ctx.api.transform({rotate: angle, originY: 100});\n element.remember('direticon', false);\n }\n} else {\n element.hide();\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "line", |
|||
"stateRenderFunction": "element.stroke(ctx.properties.lineColor);\nif (ctx.properties.mainLine) {\n element.attr({'stroke-width': ctx.properties.mainLineSize});\n} else {\n element.attr({'stroke-width': ctx.properties.secondaryLineSize});\n}", |
|||
"actions": null |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "arrow", |
|||
"name": "{i18n:scada.symbol.arrow-presence}", |
|||
"hint": "{i18n:scada.symbol.arrow-presence-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.present}", |
|||
"falseLabel": "{i18n:scada.symbol.absent}", |
|||
"stateLabel": "{i18n:scada.symbol.arrow-present}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "arrowDirection", |
|||
"name": "{i18n:scada.symbol.arrow-direction}", |
|||
"hint": "{i18n:scada.symbol.arrow-direction-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": "{i18n:scada.symbol.forward}", |
|||
"falseLabel": "{i18n:scada.symbol.reverse}", |
|||
"stateLabel": "{i18n:scada.symbol.forward}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": true, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "mainLine", |
|||
"name": "{i18n:scada.symbol.main-line}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "mainLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 6, |
|||
"required": true, |
|||
"subLabel": "Main", |
|||
"divider": true, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "secondaryLineSize", |
|||
"name": "{i18n:scada.symbol.line}", |
|||
"type": "number", |
|||
"default": 2, |
|||
"required": true, |
|||
"subLabel": "Secondary", |
|||
"divider": null, |
|||
"fieldSuffix": "px", |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 0, |
|||
"max": 99, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "lineColor", |
|||
"name": "{i18n:scada.symbol.line-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "arrowColor", |
|||
"name": "{i18n:scada.symbol.arrow-color}", |
|||
"type": "color", |
|||
"default": "#1A1A1A", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="M100 200L100 0" stroke="#1A1A1A" stroke-width="6" tb:tag="line"/><path d="M100 71L129 129H71L100 71Z" fill="#1A1A1A" tb:tag="arrow"/> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
|
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 101 KiB |
@ -0,0 +1,552 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="600" height="1e3" fill="none" version="1.1" viewBox="0 0 600 1e3"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Vertical tank", |
|||
"description": "Vertical tank with level visualizations.", |
|||
"searchTags": [ |
|||
"vertical tank", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 3, |
|||
"widgetSizeY": 5, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.tankColor});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'click');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "fluid-background", |
|||
"stateRenderFunction": " var color = ctx.properties.fluidColor;\n element.attr({fill: color, 'fill-opacity': 1});\n \n var valueSet = element.remember('valueSet');\n if (!valueSet) {\n element.remember('valueSet', true);\n element.attr({height: 0});\n }\n \n var currentVolume = ctx.values.currentVolume; \n var tankCapacity = ctx.values.tankCapacity; \n\n var height = currentVolume / tankCapacity;\n height = Math.max(0, Math.min(1, height))*994; \n \n var elementHeight = element.remember('height');\n if (height !== elementHeight) {\n element.remember('height', height);\n element.attr({height: height});\n }", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "scale", |
|||
"stateRenderFunction": "if (!ctx.properties.scale) {\n element.hide();\n} else {\n var scaleSet = element.remember('scaleSet');\n if (!scaleSet) {\n element.remember('scaleSet', true);\n element.clear();\n \n var majorIntervals = ctx.properties.majorIntervals;\n var minorIntervals = ctx.properties.minorIntervals;\n \n var start = 3;\n var majorIntervalLength = 994 / majorIntervals;\n var minorIntervalLength = majorIntervalLength / minorIntervals;\n for (var i = 0; i < majorIntervals + 1; i++) {\n var y = start + i * majorIntervalLength;\n var line = ctx.svg.line(160, y, 192, y).stroke({ width: 3 }).attr({class: 'majorTick'});\n element.add(line);\n var majorText = (100 - i * (100/majorIntervals)).toFixed(0);\n var majorTickText = ctx.svg.text(majorText);\n if (i === 0) {\n majorTickText.attr({x: 150, y: y + 10, 'text-anchor': 'end', class: 'majorTickText'});\n } else if (i === majorIntervals) {\n majorTickText.attr({x: 150, y: y - 5, 'text-anchor': 'end', class: 'majorTickText'});\n } else {\n majorTickText.attr({x: 150, y: y + 2, 'text-anchor': 'end', class: 'majorTickText'});\n }\n majorTickText.first().attr({'dominant-baseline': 'middle'});\n element.add(majorTickText);\n if (i < majorIntervals) {\n drawMinorTicks(y, minorIntervals, minorIntervalLength);\n }\n }\n }\n \n var majorFont = ctx.properties.majorFont;\n var majorColor = ctx.properties.majorColor;\n var minorColor = ctx.properties.minorColor;\n \n var majorTicks = element.find('line.majorTick');\n majorTicks.forEach(t => t.attr({stroke: majorColor}));\n \n var majorTicksText = element.find('text.majorTickText');\n ctx.api.font(majorTicksText, majorFont, majorColor);\n \n var minorTicks = element.find('line.minorTick');\n minorTicks.forEach(t => t.attr({stroke: minorColor}));\n}\n\nfunction drawMinorTicks(start, minorIntervals, minorIntervalLength) {\n for (var i = 1; i < minorIntervals; i++) {\n var minorY = start + i * minorIntervalLength;\n var minorLine = ctx.svg.line(172, minorY, 192, minorY).stroke({ width: 3 }).attr({class: 'minorTick'});\n element.add(minorLine);\n }\n}", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "tankCapacity", |
|||
"name": "{i18n:scada.symbol.tank-capacity}", |
|||
"hint": "{i18n:scada.symbol.tank-capacity-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "tankCapacity" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "currentVolume", |
|||
"name": "{i18n:scada.symbol.current-volume}", |
|||
"hint": "{i18n:scada.symbol.current-volume-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "DOUBLE", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_TIME_SERIES", |
|||
"defaultValue": null, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "liquidVolume" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "click", |
|||
"name": "{i18n:scada.symbol.on-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": null, |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "tankColor", |
|||
"name": "{i18n:scada.symbol.tank-color}", |
|||
"type": "color", |
|||
"default": "#EBEBEB", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "fluidColor", |
|||
"name": "{i18n:scada.symbol.fluid-color}", |
|||
"type": "color", |
|||
"default": "#C8DFF7", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "scale", |
|||
"name": "{i18n:scada.symbol.scale}", |
|||
"type": "switch", |
|||
"default": true, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorIntervals", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "number", |
|||
"default": 10, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": false, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": 1 |
|||
}, |
|||
{ |
|||
"id": "majorFont", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "font", |
|||
"default": { |
|||
"size": 24, |
|||
"sizeUnit": "px", |
|||
"family": "Roboto", |
|||
"weight": "500", |
|||
"style": "normal" |
|||
}, |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "majorColor", |
|||
"name": "{i18n:scada.symbol.major-ticks}", |
|||
"type": "color", |
|||
"default": "#00000061", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorIntervals", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "number", |
|||
"default": 5, |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.intervals}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": 1, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "minorColor", |
|||
"name": "{i18n:scada.symbol.minor-ticks}", |
|||
"type": "color", |
|||
"default": "#0000001F", |
|||
"required": null, |
|||
"subLabel": null, |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": "scale", |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m0 120s0-120 140-120c129 3.4657e-5 200.5-1.0591e-4 320 0 140 1.2408e-4 140 120 140 120v760s0 120-140 120h-320c-140 0-140-120-140-120v-760z" fill="#EBEBEB" tb:tag="background"/><path d="m0.936 120h0.064l1e-5 -3e-3 5e-5 -0.014 4.3e-4 -0.061c5.1e-4 -0.054 0.00153-0.137 0.00361-0.247 0.00415-0.221 0.0125-0.551 0.02932-0.984 0.03365-0.865 0.10115-2.139 0.23656-3.764 0.27086-3.25 0.81325-7.902 1.8991-13.486 2.1725-11.173 6.5161-26.06 15.195-40.937 17.319-29.69 51.988-59.504 121.64-59.504l141.99-2e-5 178.01 2e-5c69.648 6e-5 104.32 29.814 121.64 59.504 8.679 14.878 13.022 29.764 15.195 40.937 1.086 5.585 1.628 10.236 1.899 13.486 0.135 1.625 0.203 2.899 0.237 3.764 0.016 0.433 0.025 0.763 0.029 0.984 1e-3 0.047 1e-3 0.09 2e-3 0.127 1e-3 0.049 1e-3 0.089 2e-3 0.12v0.078h0.064-0.064v760h0.064-0.064v0.078c-1e-3 0.054-2e-3 0.137-4e-3 0.247-4e-3 0.221-0.013 0.551-0.029 0.984-0.034 0.865-0.102 2.139-0.237 3.764-0.271 3.25-0.813 7.902-1.899 13.486-2.173 11.173-6.516 26.06-15.195 40.937-17.319 29.69-51.988 59.504-121.64 59.504h-320c-69.648 0-104.32-29.814-121.64-59.504-8.6786-14.877-13.022-29.764-15.195-40.937-1.0859-5.584-1.6283-10.236-1.8991-13.486-0.13541-1.625-0.20291-2.899-0.23656-3.764-0.01682-0.433-0.02517-0.763-0.02932-0.984-0.00208-0.11-0.0031-0.193-0.00361-0.247l-4.3e-4 -0.061-5e-5 -0.014-1e-5 -3e-3h-0.064 0.064v-760h-0.064z" stroke="#000" stroke-opacity=".87" stroke-width="2"/><mask id="mask0_3610_179351" x="2" y="2" width="596" height="996" style="mask-type:alpha" maskUnits="userSpaceOnUse"> |
|||
<path d="m2 121.52s0-119.52 139.07-119.52c128.14 3e-5 199.16-1.1e-4 317.87 0 139.07 1.2e-4 139.07 119.52 139.07 119.52v756.96s0 119.52-139.07 119.52h-317.87c-139.07 0-139.07-119.52-139.07-119.52v-756.96z" fill="#EBEBEB"/> |
|||
<path d="m2.936 121.52h0.064l1e-5 -3e-3 5e-5 -0.014 4.3e-4 -0.06c5e-4 -0.055 0.00152-0.137 0.00358-0.247 0.00412-0.22 0.01242-0.549 0.02913-0.979 0.03342-0.862 0.10047-2.131 0.23498-3.75 0.26905-3.237 0.80781-7.869 1.8864-13.432 2.158-11.128 6.4726-25.954 15.093-40.772 17.203-29.57 51.639-59.263 120.82-59.263l141.05-2e-5 176.82 2e-5c69.18 6e-5 103.62 29.693 120.82 59.263 8.621 14.818 12.935 29.644 15.093 40.772 1.079 5.563 1.618 10.195 1.887 13.432 0.134 1.619 0.201 2.888 0.235 3.75 0.017 0.43 0.025 0.759 0.029 0.979 2e-3 0.11 3e-3 0.192 4e-3 0.247v0.077h0.064-0.064v756.96h0.122-0.122v0.077c-1e-3 0.055-2e-3 0.137-4e-3 0.247-4e-3 0.22-0.012 0.549-0.029 0.979-0.034 0.862-0.101 2.131-0.235 3.75-0.269 3.237-0.808 7.869-1.887 13.432-2.158 11.128-6.472 25.954-15.093 40.772-17.203 29.57-51.639 59.263-120.82 59.263h-317.87c-69.18 0-103.62-29.693-120.82-59.263-8.6205-14.818-12.935-29.644-15.093-40.772-1.0786-5.563-1.6174-10.195-1.8864-13.432-0.13451-1.619-0.20156-2.888-0.23498-3.75-0.01671-0.43-0.02501-0.759-0.02913-0.979-0.00206-0.11-0.00308-0.192-0.00358-0.247l-4.3e-4 -0.06-5e-5 -0.014-1e-5 -3e-3h-0.064 0.064v-756.96h-0.064z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
</mask><g mask="url(#mask0_3610_179351)"> |
|||
<rect transform="scale(1,-1)" x="2" y="-995" width="600" height="419" fill="#c8dff7" tb:tag="fluid-background"/> |
|||
</g><g tb:tag="scale"> |
|||
<line x1="162" x2="194" y1="3.5" y2="3.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="23.359" y2="23.359" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="43.221" y2="43.221" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="63.08" y2="63.08" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="82.939" y2="82.939" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="102.8" y2="102.8" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="122.66" y2="122.66" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="142.52" y2="142.52" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="162.38" y2="162.38" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="182.24" y2="182.24" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="202.1" y2="202.1" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="221.96" y2="221.96" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="241.82" y2="241.82" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="261.68" y2="261.68" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="281.54" y2="281.54" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="301.4" y2="301.4" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="321.26" y2="321.26" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="341.12" y2="341.12" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="360.98" y2="360.98" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="380.84" y2="380.84" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="400.7" y2="400.7" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="420.56" y2="420.56" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="440.42" y2="440.42" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="460.28" y2="460.28" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="480.14" y2="480.14" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="500" y2="500" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="519.86" y2="519.86" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="539.72" y2="539.72" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="559.58" y2="559.58" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="579.44" y2="579.44" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="599.3" y2="599.3" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="619.16" y2="619.16" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="639.02" y2="639.02" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="658.88" y2="658.88" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="678.74" y2="678.74" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="698.6" y2="698.6" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="718.46" y2="718.46" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="738.32" y2="738.32" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="758.18" y2="758.18" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="778.04" y2="778.04" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="797.9" y2="797.9" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="817.76" y2="817.76" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="837.62" y2="837.62" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="857.48" y2="857.48" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="877.34" y2="877.34" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="897.2" y2="897.2" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="917.06" y2="917.06" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="936.92" y2="936.92" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="956.78" y2="956.78" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="174" x2="194" y1="976.64" y2="976.64" stroke="#000" stroke-opacity=".12" stroke-width="3"/> |
|||
<line x1="162" x2="194" y1="996.5" y2="996.5" stroke="#000" stroke-opacity=".38" stroke-width="3"/> |
|||
<path d="m121.58 4.8789v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.4375zm17.301 7.1602v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.257 0.9375-0.632 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.441 0.4102-2.285 0.4102-0.672 0-1.297-0.086-1.875-0.2578-0.571-0.1719-1.086-0.4414-1.547-0.8086s-0.856-0.8399-1.184-1.418c-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.257-1.7539-0.257-2.8242v-2.789c0-1.3438 0.132-2.4766 0.398-3.3985 0.266-0.92968 0.644-1.6836 1.137-2.2617 0.492-0.58594 1.078-1.0117 1.757-1.2774 0.688-0.26562 1.454-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.852 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80464 0.258 1.7422 0.258 2.8125zm-2.824 3.1875v-3.6094c0-0.6797-0.039-1.2774-0.117-1.793-0.079-0.52344-0.196-0.96484-0.352-1.3242-0.148-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.613-0.16406-0.973-0.16406-0.437 0-0.828 0.08593-1.172 0.25781-0.343 0.16406-0.632 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59378-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.118 1.8164 0.078 0.5234 0.195 0.9726 0.351 1.3476 0.156 0.3672 0.344 0.6719 0.563 0.9141 0.226 0.2344 0.484 0.4062 0.773 0.5156 0.297 0.1094 0.621 0.1641 0.973 0.1641 0.445 0 0.84-0.086 1.183-0.2578 0.344-0.1719 0.633-0.4454 0.868-0.8204 0.234-0.3828 0.41-0.8789 0.527-1.4882 0.117-0.6094 0.176-1.3399 0.176-2.1914zm16.715-3.1875v2.789c0 1.336-0.133 2.4766-0.399 3.4219-0.258 0.9375-0.633 1.6992-1.125 2.2852-0.492 0.5859-1.082 1.0156-1.769 1.289-0.68 0.2735-1.442 0.4102-2.286 0.4102-0.671 0-1.296-0.086-1.875-0.2578-0.57-0.1719-1.086-0.4414-1.546-0.8086-0.461-0.3672-0.856-0.8399-1.184-1.418-0.32-0.5859-0.57-1.2852-0.75-2.0977-0.172-0.8125-0.258-1.7539-0.258-2.8242v-2.789c0-1.3438 0.133-2.4766 0.399-3.3985 0.265-0.92968 0.644-1.6836 1.136-2.2617 0.492-0.58594 1.078-1.0117 1.758-1.2774 0.688-0.26562 1.453-0.39844 2.297-0.39844 0.68 0 1.305 0.08594 1.875 0.25782 0.578 0.16406 1.094 0.42578 1.547 0.78515 0.461 0.35938 0.851 0.82813 1.172 1.4062 0.328 0.57032 0.578 1.2617 0.75 2.0742 0.172 0.80464 0.258 1.7422 0.258 2.8125zm-2.825 3.1875v-3.6094c0-0.6797-0.039-1.2774-0.117-1.793-0.078-0.52344-0.195-0.96484-0.351-1.3242-0.149-0.36719-0.336-0.66406-0.563-0.89062-0.226-0.23438-0.484-0.40235-0.773-0.50391-0.289-0.10938-0.614-0.16406-0.973-0.16406-0.438 0-0.828 0.08593-1.172 0.25781-0.344 0.16406-0.633 0.42969-0.867 0.79687-0.234 0.36719-0.414 0.85157-0.539 1.4531-0.117 0.59378-0.176 1.3164-0.176 2.168v3.6094c0 0.6875 0.039 1.2929 0.117 1.8164 0.078 0.5234 0.196 0.9726 0.352 1.3476 0.156 0.3672 0.344 0.6719 0.562 0.9141 0.227 0.2344 0.485 0.4062 0.774 0.5156 0.297 0.1094 0.621 0.1641 0.972 0.1641 0.446 0 0.84-0.086 1.184-0.2578 0.344-0.1719 0.633-0.4454 0.867-0.8204 0.235-0.3828 0.41-0.8789 0.528-1.4882 0.117-0.6094 0.175-1.3399 0.175-2.1914z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m130.03 117.17h0.235c1.078 0 1.976-0.141 2.695-0.422 0.727-0.289 1.305-0.688 1.734-1.195 0.43-0.508 0.739-1.106 0.926-1.793 0.188-0.688 0.281-1.434 0.281-2.239v-2.941c0-0.695-0.074-1.305-0.222-1.828-0.141-0.531-0.344-0.973-0.61-1.324-0.258-0.36-0.558-0.629-0.902-0.809-0.336-0.18-0.699-0.269-1.09-0.269-0.43 0-0.816 0.097-1.16 0.292-0.336 0.188-0.621 0.45-0.856 0.786-0.226 0.328-0.402 0.714-0.527 1.16-0.117 0.437-0.176 0.906-0.176 1.406 0 0.469 0.055 0.922 0.164 1.359 0.118 0.43 0.289 0.813 0.516 1.149s0.512 0.601 0.856 0.797c0.343 0.195 0.746 0.293 1.207 0.293 0.437 0 0.839-0.082 1.207-0.246 0.367-0.172 0.687-0.403 0.961-0.692 0.273-0.289 0.488-0.613 0.644-0.972 0.156-0.36 0.242-0.727 0.258-1.102l1.078 0.328c0 0.594-0.125 1.18-0.375 1.758-0.242 0.57-0.582 1.094-1.02 1.57-0.429 0.469-0.933 0.844-1.511 1.125-0.571 0.281-1.192 0.422-1.864 0.422-0.812 0-1.531-0.152-2.156-0.457-0.617-0.312-1.133-0.734-1.547-1.266-0.406-0.531-0.711-1.14-0.914-1.828-0.203-0.687-0.304-1.41-0.304-2.168 0-0.82 0.125-1.589 0.375-2.308s0.613-1.352 1.089-1.899c0.477-0.554 1.055-0.984 1.735-1.289 0.687-0.312 1.465-0.468 2.332-0.468 0.922 0 1.73 0.179 2.426 0.539 0.695 0.359 1.281 0.855 1.757 1.488 0.477 0.633 0.836 1.367 1.079 2.203 0.242 0.836 0.363 1.734 0.363 2.695v0.996c0 1.008-0.09 1.981-0.27 2.918-0.179 0.93-0.472 1.793-0.879 2.59-0.398 0.789-0.925 1.485-1.582 2.086-0.648 0.594-1.445 1.059-2.39 1.395-0.938 0.328-2.039 0.492-3.305 0.492h-0.258zm22.739-7.735v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m138.91 212.15c0 1.063-0.246 1.957-0.738 2.684s-1.164 1.277-2.016 1.652c-0.844 0.368-1.797 0.551-2.859 0.551-1.063 0-2.02-0.183-2.871-0.551-0.852-0.375-1.524-0.925-2.016-1.652s-0.738-1.621-0.738-2.684c0-0.703 0.136-1.339 0.41-1.91 0.273-0.578 0.66-1.074 1.16-1.488 0.508-0.422 1.102-0.746 1.781-0.973 0.688-0.226 1.438-0.339 2.25-0.339 1.078 0 2.043 0.199 2.895 0.597 0.851 0.399 1.519 0.949 2.004 1.653 0.492 0.703 0.738 1.523 0.738 2.46zm-2.836-0.14c0-0.57-0.117-1.07-0.351-1.5-0.235-0.43-0.563-0.762-0.985-0.996-0.422-0.235-0.91-0.352-1.465-0.352-0.562 0-1.05 0.117-1.465 0.352-0.414 0.234-0.738 0.566-0.972 0.996-0.227 0.43-0.34 0.93-0.34 1.5 0 0.578 0.113 1.078 0.34 1.5 0.226 0.414 0.551 0.73 0.972 0.949 0.422 0.219 0.918 0.328 1.489 0.328 0.57 0 1.062-0.109 1.476-0.328s0.735-0.535 0.961-0.949c0.227-0.422 0.34-0.922 0.34-1.5zm2.449-7.781c0 0.851-0.226 1.609-0.679 2.273-0.446 0.664-1.063 1.188-1.852 1.57-0.789 0.375-1.687 0.563-2.695 0.563-1.016 0-1.922-0.188-2.719-0.563-0.789-0.382-1.41-0.906-1.863-1.57-0.446-0.664-0.668-1.422-0.668-2.273 0-1.016 0.222-1.872 0.668-2.567 0.453-0.703 1.074-1.238 1.863-1.605s1.691-0.551 2.707-0.551 1.918 0.184 2.707 0.551 1.406 0.902 1.852 1.605c0.453 0.695 0.679 1.551 0.679 2.567zm-2.824 0.093c0-0.508-0.101-0.953-0.305-1.336-0.195-0.39-0.472-0.695-0.832-0.914-0.359-0.218-0.785-0.328-1.277-0.328s-0.918 0.106-1.277 0.317c-0.36 0.211-0.637 0.507-0.832 0.89-0.196 0.383-0.293 0.84-0.293 1.371 0 0.524 0.097 0.981 0.293 1.371 0.195 0.383 0.472 0.684 0.832 0.903 0.367 0.218 0.797 0.328 1.289 0.328s0.918-0.11 1.277-0.328c0.36-0.219 0.637-0.52 0.832-0.903 0.195-0.39 0.293-0.847 0.293-1.371zm17.067 2.52v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m139.09 297.14v1.547l-6.82 15.515h-2.977l6.809-14.812h-8.836v-2.25zm13.68 7.101v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m136.29 394.43h0.352v2.308h-0.2c-1.007 0-1.879 0.156-2.613 0.469-0.726 0.312-1.324 0.742-1.793 1.289s-0.82 1.188-1.055 1.922c-0.226 0.726-0.339 1.5-0.339 2.32v2.684c0 0.68 0.074 1.281 0.222 1.805 0.149 0.515 0.356 0.949 0.621 1.3 0.274 0.344 0.586 0.606 0.938 0.785 0.351 0.18 0.73 0.27 1.137 0.27 0.421 0 0.804-0.086 1.148-0.258 0.344-0.18 0.637-0.426 0.879-0.738 0.242-0.313 0.426-0.684 0.551-1.113 0.125-0.43 0.187-0.899 0.187-1.407 0-0.484-0.062-0.937-0.187-1.359-0.117-0.43-0.293-0.805-0.528-1.125-0.234-0.328-0.527-0.582-0.879-0.762-0.343-0.187-0.742-0.281-1.195-0.281-0.562 0-1.074 0.133-1.535 0.398-0.453 0.266-0.82 0.614-1.102 1.043-0.273 0.422-0.421 0.872-0.445 1.348l-1.078-0.351c0.063-0.727 0.223-1.379 0.48-1.958 0.266-0.578 0.614-1.07 1.043-1.476 0.43-0.406 0.926-0.715 1.489-0.926 0.57-0.219 1.195-0.328 1.875-0.328 0.828 0 1.547 0.156 2.156 0.469 0.609 0.312 1.113 0.738 1.512 1.277 0.406 0.531 0.707 1.141 0.902 1.828 0.203 0.68 0.305 1.391 0.305 2.133 0 0.82-0.125 1.586-0.375 2.297-0.25 0.703-0.617 1.32-1.102 1.851-0.476 0.532-1.058 0.946-1.746 1.243-0.68 0.297-1.453 0.445-2.32 0.445-0.914 0-1.731-0.176-2.449-0.527-0.711-0.352-1.317-0.836-1.817-1.453-0.492-0.618-0.867-1.329-1.125-2.133-0.258-0.805-0.387-1.657-0.387-2.555v-1.172c0-1.297 0.164-2.519 0.493-3.668 0.328-1.156 0.832-2.176 1.511-3.058 0.688-0.883 1.567-1.575 2.637-2.075 1.07-0.507 2.348-0.761 3.832-0.761zm16.481 7.207v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m130.72 501.07-2.25-0.55 0.925-8.578h9.2v2.39h-6.856l-0.469 4.184c0.266-0.157 0.633-0.309 1.102-0.457 0.469-0.157 1.004-0.235 1.605-0.235 0.805 0 1.524 0.133 2.157 0.399 0.64 0.258 1.183 0.636 1.629 1.136 0.445 0.493 0.785 1.094 1.019 1.805 0.235 0.703 0.352 1.496 0.352 2.379 0 0.789-0.117 1.527-0.352 2.215-0.226 0.687-0.57 1.293-1.031 1.816-0.461 0.524-1.043 0.934-1.746 1.231-0.696 0.289-1.52 0.433-2.473 0.433-0.711 0-1.394-0.101-2.051-0.304-0.648-0.211-1.23-0.52-1.746-0.926-0.515-0.414-0.929-0.922-1.242-1.524-0.312-0.609-0.492-1.308-0.539-2.097h2.766c0.07 0.555 0.222 1.027 0.457 1.418 0.242 0.383 0.562 0.676 0.961 0.879 0.398 0.203 0.859 0.304 1.382 0.304 0.477 0 0.887-0.082 1.231-0.246 0.344-0.172 0.629-0.414 0.855-0.726 0.235-0.321 0.407-0.696 0.516-1.125 0.117-0.43 0.176-0.907 0.176-1.43 0-0.5-0.067-0.957-0.199-1.371-0.125-0.414-0.317-0.774-0.575-1.078-0.25-0.305-0.566-0.539-0.949-0.703-0.383-0.172-0.824-0.258-1.324-0.258-0.672 0-1.188 0.098-1.547 0.293-0.352 0.195-0.68 0.437-0.984 0.726zm22.047-2.027v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m139.51 600.32v2.25h-12.305l-0.094-1.699 7.36-11.531h2.261l-2.449 4.195-4.23 6.785zm-2.133-10.98v17.062h-2.824v-17.062zm15.391 7.101v2.79c0 1.335-0.133 2.476-0.399 3.421-0.258 0.938-0.633 1.7-1.125 2.286-0.492 0.585-1.082 1.015-1.769 1.289-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.809-0.461-0.367-0.856-0.839-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.824v-2.79c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.011 1.758-1.277 0.688-0.266 1.453-0.398 2.297-0.398 0.68 0 1.305 0.085 1.875 0.257 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.829 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.325-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.429-0.867 0.796-0.234 0.368-0.414 0.852-0.539 1.454-0.117 0.593-0.176 1.316-0.176 2.168v3.609c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.489 0.117-0.609 0.175-1.339 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m131.07 693.99h1.688c0.656 0 1.199-0.113 1.629-0.34 0.437-0.226 0.761-0.539 0.972-0.937 0.211-0.399 0.317-0.856 0.317-1.371 0-0.539-0.098-1-0.293-1.383-0.188-0.391-0.477-0.691-0.867-0.902-0.383-0.211-0.872-0.317-1.465-0.317-0.5 0-0.953 0.102-1.36 0.305-0.398 0.195-0.715 0.476-0.949 0.844-0.234 0.359-0.351 0.789-0.351 1.289h-2.836c0-0.907 0.238-1.711 0.714-2.414 0.477-0.704 1.125-1.254 1.946-1.653 0.828-0.406 1.758-0.609 2.789-0.609 1.101 0 2.062 0.184 2.883 0.551 0.828 0.359 1.472 0.898 1.933 1.617s0.692 1.609 0.692 2.672c0 0.484-0.114 0.976-0.34 1.476-0.227 0.5-0.563 0.957-1.008 1.371-0.445 0.407-1 0.739-1.664 0.997-0.664 0.25-1.434 0.374-2.309 0.374h-2.121zm0 2.203v-1.547h2.121c1 0 1.852 0.118 2.555 0.352 0.711 0.234 1.289 0.559 1.734 0.973 0.446 0.406 0.77 0.871 0.973 1.394 0.211 0.524 0.316 1.078 0.316 1.664 0 0.797-0.144 1.508-0.433 2.133-0.281 0.617-0.684 1.141-1.207 1.57-0.524 0.43-1.137 0.754-1.84 0.973-0.695 0.219-1.453 0.328-2.273 0.328-0.735 0-1.438-0.101-2.11-0.305-0.672-0.203-1.273-0.503-1.805-0.902-0.531-0.406-0.953-0.91-1.265-1.512-0.305-0.609-0.457-1.312-0.457-2.109h2.824c0 0.508 0.117 0.957 0.352 1.348 0.242 0.383 0.578 0.683 1.007 0.902 0.438 0.219 0.938 0.328 1.5 0.328 0.594 0 1.106-0.105 1.536-0.316 0.429-0.211 0.757-0.524 0.984-0.938 0.234-0.414 0.352-0.914 0.352-1.5 0-0.664-0.129-1.203-0.387-1.617s-0.625-0.719-1.102-0.914c-0.476-0.203-1.039-0.305-1.687-0.305zm21.696-2.355v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.743 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.368 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m139.2 798.95v2.25h-11.437v-1.933l5.554-6.059c0.61-0.687 1.09-1.281 1.442-1.781 0.351-0.5 0.598-0.949 0.738-1.348 0.149-0.406 0.223-0.801 0.223-1.183 0-0.54-0.102-1.012-0.305-1.418-0.195-0.415-0.484-0.739-0.867-0.973-0.383-0.242-0.848-0.363-1.395-0.363-0.632 0-1.164 0.136-1.593 0.41-0.43 0.273-0.754 0.652-0.973 1.137-0.219 0.476-0.328 1.023-0.328 1.64h-2.824c0-0.992 0.226-1.898 0.679-2.719 0.453-0.828 1.11-1.484 1.969-1.968 0.86-0.493 1.895-0.739 3.106-0.739 1.14 0 2.109 0.192 2.906 0.575 0.797 0.382 1.402 0.925 1.816 1.628 0.422 0.704 0.633 1.536 0.633 2.497 0 0.531-0.086 1.058-0.258 1.582-0.172 0.523-0.418 1.046-0.738 1.57-0.313 0.516-0.684 1.035-1.113 1.558-0.43 0.516-0.903 1.04-1.418 1.571l-3.692 4.066zm13.575-7.711v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.411-2.286 0.411-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.097-0.172-0.813-0.258-1.754-0.258-2.825v-2.789c0-1.343 0.133-2.476 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.36 0.851 0.828 1.172 1.407 0.328 0.57 0.578 1.261 0.75 2.074 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.964-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.89-0.226-0.235-0.484-0.403-0.773-0.504-0.289-0.11-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.257-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816 0.078 0.524 0.196 0.973 0.352 1.348 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.446 0.867-0.821c0.235-0.382 0.41-0.878 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m135.47 881.48v17.121h-2.824v-13.77l-4.184 1.418v-2.332l6.668-2.437zm17.301 7.16v2.789c0 1.336-0.133 2.476-0.399 3.422-0.258 0.937-0.633 1.699-1.125 2.285s-1.082 1.015-1.769 1.289c-0.68 0.273-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.258-0.57-0.172-1.086-0.441-1.546-0.808-0.461-0.368-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.286-0.75-2.098-0.172-0.813-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.399 0.265-0.929 0.644-1.683 1.136-2.261 0.492-0.586 1.078-1.012 1.758-1.278 0.688-0.265 1.453-0.398 2.297-0.398 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.425 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.57 0.578 1.262 0.75 2.074 0.172 0.805 0.258 1.742 0.258 2.813zm-2.825 3.187v-3.609c0-0.68-0.039-1.278-0.117-1.793-0.078-0.524-0.195-0.965-0.351-1.324-0.149-0.368-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.851-0.539 1.453c-0.117 0.594-0.176 1.316-0.176 2.168v3.609c0 0.688 0.039 1.293 0.117 1.817 0.078 0.523 0.196 0.972 0.352 1.347 0.156 0.367 0.344 0.672 0.562 0.914 0.227 0.235 0.485 0.407 0.774 0.516 0.297 0.109 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.258s0.633-0.445 0.867-0.82c0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.61 0.175-1.34 0.175-2.192z" fill="#000" fill-opacity=".38"/> |
|||
<path d="m152.77 986.04v2.789c0 1.336-0.133 2.477-0.399 3.422-0.258 0.938-0.633 1.699-1.125 2.285s-1.082 1.016-1.769 1.289c-0.68 0.274-1.442 0.41-2.286 0.41-0.671 0-1.296-0.086-1.875-0.257-0.57-0.172-1.086-0.442-1.546-0.809-0.461-0.367-0.856-0.84-1.184-1.418-0.32-0.586-0.57-1.285-0.75-2.098-0.172-0.812-0.258-1.754-0.258-2.824v-2.789c0-1.344 0.133-2.477 0.399-3.398 0.265-0.93 0.644-1.684 1.136-2.262 0.492-0.586 1.078-1.012 1.758-1.277 0.688-0.266 1.453-0.399 2.297-0.399 0.68 0 1.305 0.086 1.875 0.258 0.578 0.164 1.094 0.426 1.547 0.785 0.461 0.359 0.851 0.828 1.172 1.406 0.328 0.571 0.578 1.262 0.75 2.075 0.172 0.804 0.258 1.742 0.258 2.812zm-2.825 3.188v-3.61c0-0.679-0.039-1.277-0.117-1.793-0.078-0.523-0.195-0.965-0.351-1.324-0.149-0.367-0.336-0.664-0.563-0.891-0.226-0.234-0.484-0.402-0.773-0.504-0.289-0.109-0.614-0.164-0.973-0.164-0.438 0-0.828 0.086-1.172 0.258-0.344 0.164-0.633 0.43-0.867 0.797s-0.414 0.852-0.539 1.453c-0.117 0.594-0.176 1.317-0.176 2.168v3.61c0 0.687 0.039 1.293 0.117 1.816s0.196 0.973 0.352 1.348c0.156 0.367 0.344 0.671 0.562 0.914 0.227 0.234 0.485 0.406 0.774 0.515 0.297 0.11 0.621 0.164 0.972 0.164 0.446 0 0.84-0.086 1.184-0.257 0.344-0.172 0.633-0.446 0.867-0.821 0.235-0.383 0.41-0.879 0.528-1.488 0.117-0.609 0.175-1.34 0.175-2.191z" fill="#000" fill-opacity=".38"/> |
|||
</g><path d="m201.79 0s-201.79 0-201.79 167.5v820.9c0 6.628 5.3727 11.601 12 11.601h576c6.627 0 12-4.973 12-11.601v-820.9c0-167.5-198.21-167.5-198.21-167.5h-101.79zm201.21 203c-3.866 0-7 3.134-7 7v751c0 3.866 3.134 7 7 7h43.998c3.866 0 7-3.134 7-7v-751c0-3.866-3.134-7-7-7z" fill="#000" fill-opacity="0" style="stroke-width:.55902" tb:tag="clickArea"/><g fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0,-4.9442)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 113 KiB |
@ -0,0 +1,392 @@ |
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:tb="https://thingsboard.io/svg" width="200" height="200" fill="none" version="1.1" viewBox="0 0 200 200"><tb:metadata xmlns=""><![CDATA[{ |
|||
"title": "HP Vertical valve", |
|||
"description": "Vertical valve with various states.", |
|||
"searchTags": [ |
|||
"valve", |
|||
"high performance" |
|||
], |
|||
"widgetSizeX": 1, |
|||
"widgetSizeY": 1, |
|||
"tags": [ |
|||
{ |
|||
"tag": "background", |
|||
"stateRenderFunction": "var color = ctx.properties.closedColor;\nif (ctx.values.opened) {\n color = ctx.properties.openedColor;\n}\nelement.attr({fill: color});", |
|||
"actions": null |
|||
}, |
|||
{ |
|||
"tag": "clickArea", |
|||
"stateRenderFunction": null, |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "var opened = ctx.values.opened;\nvar action = opened ? 'close' : 'open';\n\nctx.api.callAction(event, action, undefined, {\n next: () => {\n ctx.api.setValue('opened', !opened);\n }\n});" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "critical", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.criticalColor});\nif (ctx.values.critical) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = ctx.values.critical && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'criticalClick');" |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
"tag": "warning", |
|||
"stateRenderFunction": "element.attr({fill: ctx.properties.warningColor});\nvar warning = ctx.values.warning && !(ctx.values.warning && ctx.values.critical)\nif (warning) {\n element.show();\n} else {\n element.hide();\n}\n\nvar elementCriticalAnimation = element.remember('criticalAnimation');\nvar criticalAnimation = warning && ctx.values.criticalAnimation;\n\nif (elementCriticalAnimation !== criticalAnimation) {\n element.remember('criticalAnimation', criticalAnimation);\n if (criticalAnimation) {\n ctx.api.cssAnimate(element, 500).attr({opacity: 0.15}).loop(0, true);\n } else {\n ctx.api.resetCssAnimation(element);\n }\n}\n", |
|||
"actions": { |
|||
"click": { |
|||
"actionFunction": "ctx.api.callAction(event, 'warningClick');" |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"behavior": [ |
|||
{ |
|||
"id": "opened", |
|||
"name": "{i18n:scada.symbol.opened}", |
|||
"hint": "{i18n:scada.symbol.opened-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.opened}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ATTRIBUTE", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": "SERVER_SCOPE", |
|||
"key": "open" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "open", |
|||
"name": "{i18n:scada.symbol.open}", |
|||
"hint": "{i18n:scada.symbol.open-hint}", |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "open" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "CONSTANT", |
|||
"constantValue": true, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "close", |
|||
"name": "{i18n:scada.symbol.close}", |
|||
"hint": "{i18n:scada.symbol.close-hint}", |
|||
"group": null, |
|||
"type": "action", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": { |
|||
"action": "SET_ATTRIBUTE", |
|||
"executeRpc": { |
|||
"method": "setState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"setAttribute": { |
|||
"scope": "SHARED_SCOPE", |
|||
"key": "open" |
|||
}, |
|||
"putTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"valueToData": { |
|||
"type": "CONSTANT", |
|||
"constantValue": false, |
|||
"valueToDataFunction": "/* Convert input boolean value to RPC parameters or attribute/time-series value */\nreturn value;" |
|||
} |
|||
}, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warning", |
|||
"name": "{i18n:scada.symbol.warning}", |
|||
"hint": "{i18n:scada.symbol.warning-state-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.warning}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"MAJOR", |
|||
"MINOR", |
|||
"WARNING", |
|||
"INDETERMINATE" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "warningClick", |
|||
"name": "{i18n:scada.symbol.warning-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.warning-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "critical", |
|||
"name": "{i18n:scada.symbol.critical}", |
|||
"hint": "{i18n:scada.symbol.critical-state-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.critical}", |
|||
"defaultGetValueSettings": { |
|||
"action": "GET_ALARM_STATUS", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"scope": null, |
|||
"key": "state" |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"getAlarmStatus": { |
|||
"severityList": [ |
|||
"CRITICAL" |
|||
], |
|||
"typeList": null |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;", |
|||
"compareToValue": true |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
}, |
|||
{ |
|||
"id": "criticalClick", |
|||
"name": "{i18n:scada.symbol.critical-click}", |
|||
"hint": "{i18n:scada.symbol.on-click-hint}", |
|||
"group": "{i18n:scada.symbol.critical-state}", |
|||
"type": "widgetAction", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": null, |
|||
"defaultGetValueSettings": null, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": { |
|||
"type": "doNothing", |
|||
"targetDashboardStateId": null, |
|||
"openRightLayout": false, |
|||
"setEntityId": false, |
|||
"stateEntityParamName": null |
|||
} |
|||
}, |
|||
{ |
|||
"id": "criticalAnimation", |
|||
"name": "{i18n:scada.symbol.warning-critical-state-animation}", |
|||
"hint": "{i18n:scada.symbol.warning-critical-state-animation-hint}", |
|||
"group": null, |
|||
"type": "value", |
|||
"valueType": "BOOLEAN", |
|||
"trueLabel": null, |
|||
"falseLabel": null, |
|||
"stateLabel": "{i18n:scada.symbol.animation}", |
|||
"defaultGetValueSettings": { |
|||
"action": "DO_NOTHING", |
|||
"defaultValue": false, |
|||
"executeRpc": { |
|||
"method": "getState", |
|||
"requestTimeout": 5000, |
|||
"requestPersistent": false, |
|||
"persistentPollingInterval": 1000 |
|||
}, |
|||
"getAttribute": { |
|||
"key": "state", |
|||
"scope": null |
|||
}, |
|||
"getTimeSeries": { |
|||
"key": "state" |
|||
}, |
|||
"dataToValue": { |
|||
"type": "NONE", |
|||
"compareToValue": true, |
|||
"dataToValueFunction": "/* Should return boolean value */\nreturn data;" |
|||
} |
|||
}, |
|||
"defaultSetValueSettings": null, |
|||
"defaultWidgetActionSettings": null |
|||
} |
|||
], |
|||
"properties": [ |
|||
{ |
|||
"id": "openedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#FFFFFF", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.opened}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "closedColor", |
|||
"name": "{i18n:scada.symbol.colors}", |
|||
"type": "color", |
|||
"default": "#666666", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.closed-mode}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "warningColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#FAA405", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.warning}", |
|||
"divider": true, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
}, |
|||
{ |
|||
"id": "criticalColor", |
|||
"name": "{i18n:scada.symbol.alarm-colors}", |
|||
"type": "color", |
|||
"default": "#D12730", |
|||
"required": null, |
|||
"subLabel": "{i18n:scada.symbol.critical}", |
|||
"divider": null, |
|||
"fieldSuffix": null, |
|||
"disableOnProperty": null, |
|||
"rowClass": "", |
|||
"fieldClass": "", |
|||
"min": null, |
|||
"max": null, |
|||
"step": null |
|||
} |
|||
] |
|||
}]]></tb:metadata> |
|||
<path d="m100 100h51.83" stroke="#000" stroke-opacity=".87" stroke-width="1.9797"/><g fill="#fff" tb:tag="background"> |
|||
<path d="m100 101 58-101h-116z" fill="#fff"/> |
|||
<path d="m43.727 0.99999 56.273 97.992 56.273-97.992z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
<path d="M100 99L158 200H42L100 99Z" fill="#fff"/> |
|||
<path d="M43.7274 199L100 101.008L156.273 199H43.7274Z" stroke="#000" stroke-opacity=".87" stroke-width="2"/> |
|||
</g><rect x="151.83" y="52.185" width="48.169" height="96.338"/><rect x="152.8" y="53.185" width="46.169" height="94.338" stroke="#000" stroke-opacity=".87" stroke-width="2"/><path d="m67.648-1e-4s-67.264 0-67.264 33.5v164.18c0 1.3256 1.7909 2.3202 4 2.3202h192c2.209 0 4-0.99459 4-2.3202v-164.18c0-33.5-66.07-33.5-66.07-33.5h-33.929zm67.07 40.6c-1.2887 0-2.3333 0.6268-2.3333 1.4v150.2c0 0.7732 1.0447 1.4 2.3333 1.4h14.666c1.2887 0 2.3333-0.6268 2.3333-1.4v-150.2c0-0.7732-1.0447-1.4-2.3333-1.4z" fill="#000" fill-opacity="0" tb:tag="clickArea"/><g transform="translate(0,116)" fill="#d12730" style="display: none;" tb:tag="critical"> |
|||
<rect width="84" height="84" rx="4" fill="#fff" style=""/> |
|||
<rect width="84" height="84" rx="4" style=""/> |
|||
<rect x="2" y="2" width="80" height="80" rx="2" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 27.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g><g transform="translate(0,116)" fill="#faa405" style="display: none;" tb:tag="warning"> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" fill="#fff" style=""/> |
|||
<path d="m38.422 7.1554c1.4741-2.9482 5.6813-2.9482 7.1554 0l35.528 71.056c1.3298 2.6596-0.6042 5.7889-3.5777 5.7889h-71.056c-2.9735 0-4.9075-3.1292-3.5777-5.7889z" style=""/> |
|||
<path d="m40.211 8.0498c0.7371-1.4741 2.8407-1.4741 3.5778-1e-5l35.528 71.056c0.6649 1.3298-0.3021 2.8944-1.7888 2.8944h-71.056c-1.4868 0-2.4538-1.5646-1.7889-2.8944z" stroke="#000" stroke-opacity=".87" stroke-width="4" style=""/> |
|||
<path d="m44.559 37.562-0.4688 20.059h-4.0234l-0.4883-20.059zm-5.1172 26.211c0-0.7161 0.2344-1.3151 0.7031-1.7968 0.4818-0.4948 1.1459-0.7422 1.9922-0.7422 0.8334 0 1.4909 0.2474 1.9727 0.7422 0.4817 0.4817 0.7226 1.0807 0.7226 1.7968 0 0.6901-0.2409 1.2826-0.7226 1.7774-0.4818 0.4818-1.1393 0.7226-1.9727 0.7226-0.8463 0-1.5104-0.2408-1.9922-0.7226-0.4687-0.4948-0.7031-1.0873-0.7031-1.7774z" fill="#000" fill-opacity=".87" style=""/> |
|||
</g> |
|||
</svg> |
|||
|
After Width: | Height: | Size: 15 KiB |
@ -0,0 +1,31 @@ |
|||
{ |
|||
"widgetsBundle": { |
|||
"alias": "general_high_performance_scada_symbol", |
|||
"title": "General high-performance SCADA symbols", |
|||
"image": "tb-image:aHBfc2NhZGFfZ2VuZXJhbF9zeW1ib2xzX3N5c3RlbV9idW5kbGVfaW1hZ2UucG5n:IkdlbmVyYWwgaGlnaC1wZXJmb3JtYW5jZSBTQ0FEQSBzdW1ib2xzIiBzeXN0ZW0gYnVuZGxlIGltYWdl:SU1BR0U=;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAACgCAMAAAB+IdObAAAA8FBMVEXe3t7f39/f39/X19cAAADf39/e3t7d3d3e3t6VlZXI3/eZmZlmZmbGxsbr6+vc3Nytra3Y2Nikrri3xtZ9fX0aGho1NTW5ubnS0tKUlJS/v7+urq6zs7Pa2tqJiYm0tLR5eXnPz8/b29t8fHyhoaJxcXImJia+vr5WVlZjY2NNTU0wMDCpqamzx9zCx9GxsbGEhIRZWVlubm7Q09jJycmLmbhvg6tBQUG3ydvR0dEbPoW90+qzu8spSosNM3+nsMWZpb6TlpkAKHhhZWpfX19UVFRGRkbU1NR9jrKmpqZTbJ43VZFdZm5qampFYZh4foRgw9f8AAAACHRSTlPvvyAgAK+wr43PeosAAAVgSURBVHja7d1pV9pAGIZhuj9TMw1t02RiZawkYYlKRSm21qWb3Zf//286Y8RCgBgIlBecWwkh+sHrvIF45hyldPfOrRKWvXt37pbuLD9DpRgPsBKtwGmVVFoVCAyEWjcWsreftAdiTQp5YSU5IJaBgFgGAmIZCIhlICCWgWDSBJ9hYnEQyWbboiD8OWZayNFruSFlAzEQopCd9aSdohAh9NHFQbYeJW0UhVgMgIv+IrHMEMFCACHjCGtSS8pltS9CIBTcC0OhH+odshDJOXfBY2ZJRFHoiucJxI3kof4KXM4OWVRzpAu9E1OFxJZluXAc7ikOLx8+h8uRTEnKS4iFqx24gigkObWstuNIRBZz+yDMGQGJOWmIjACOGvBvIgIWEy5Q64O01Q7VUyuBIIpjCcc9jEPImOtj8WF8cbh/Iq7lSqKQsbkYjll0X35XH7JsF0QDoQKxbegPfX+5kxzVx5cI8uXbWkbfHkMlvPWMNr9QgNgv1zLzbAAeMvNmA3nyOunJNBDb3smGbEBJ1pHZ5mwgTx8mTQXBtRDbtpcAYg9ORH7+LFOQl2mI/8tH53zTiShB7BRkW0rX3/8kMyAbEZwd/1f9fJMYpNoPqalPue1sZ0BkiB3Hj+rn9XlAdn++nQqCFGRbQz4rTx+kqiB9P7TvY0duSHzCHCC778XHt7OYSCOOG2mIPQgRn/zzzpwgu+8BJZkKUlWQvl44a75cczImgo66/okO6nOA/IGK/yx4aqVLQ9IRm0gOSHX0dYTSc8SGgpSvn4jt/a8L4m70duqX33o2ZN1WdbaQUaez8OsIFKTCvfHVOxUNwdambuNis6Fv+rNXx6YBqTzOqFK1dehlA7Yq2VxFAZIlqVQqVQUBbPTXUxCDXEiuMMlepefoDcQecCRbOpAQl5JqtaI0A1Wr6qbSCsDGUIQmAnaVPz6WO4lFQZLs60LeFgyBrS1pD3r3SwS5tOhN8uDKhjyRggxVCEEKck0GMj4DKZSBjM9ACmUg41tRyMFZCxe1sPjyQR4jaQDSPf1+1AXw9fTkAAsvH8QPkdQHaZ220PpwgFdHFAaSE7JnRS+h6occvAOgID9eteYh4Zik/BDL2tsahOi634HTk5OjLmZesO0jf/khOn8rBXmnz6oP73BweoxZFzx7lp8yIcSKvAHI8UkLCtKCOr1QrDfldM1nzzSlPBRHYcjeOvohrZNjQCHOgKOzYoyoIVmqtobUApZONpuiGGT/ZerJfvS72+2eqfPr6/cTFKrpY6hAM95gRKxZBLIfPkYK8kp3DBx3vx6gSLyJERDFGOfm00PkFpCCzK6QYThvHANgDKlyQxRjjhDGCn8/jV8aDURlIAZiIAYyPwhjBmIgBmIgBmIgU0I4Y80mY2LpIaJ2sSzCMZwMMFFNb5EQBBoSYETbNYEJ8hpYKETUxgzEV778611h0OazgBzvJoWYuGDcQNTCj8i93sXKwCwg6yLpG6YYybiBjBGi6SNnRf4QZvKCaMxAkpFkr3dRgjCG4XgQNBpB4F273kUdknXcQAzEQAzEQAzEQAzkhkG8etIarlpOyIj/r2UgNwMytHy0rJCh5SNCEC/KXKfKXj6iBEHDG+lr5Fk+IgXhjWbWOlX28hElCFBmQ5VzLx9RgkxUECFvtCFkryOXGUhGBmIgKgPJ6CZDGkkBpo4GhGw3FSJCDsBjZVBrQojF2oBz6FiuAK0mhLTDNrhGtCVoNSGEMw7Z1jsctCph4hxyb9kxLSQCwaaAhDEASW0sU0DgSlF2V+A5Am7F7ecg1k29stPNQKhlINRamTfWLd3CSnS/dHslRqIYd2/fw7JXunX77l/CoXsjeoRJ3gAAAABJRU5ErkJggg==", |
|||
"scada": true, |
|||
"description": "Bundle with high-performance SCADA symbols", |
|||
"order": 9400, |
|||
"name": "General high-performance SCADA symbols" |
|||
}, |
|||
"widgetTypeFqns": [ |
|||
"hp_control_panel", |
|||
"hp_simple_horizontal_scale", |
|||
"hp_dynamic_horizontal_scale", |
|||
"hp_simple_vertical_scale", |
|||
"hp_dynamic_vertical_scale", |
|||
"hp_long_horizontal_connector", |
|||
"hp_long_vertical_connector", |
|||
"hp_horizontal_connector", |
|||
"hp_vertical_connector", |
|||
"hp_top_right_elbow_connector", |
|||
"hp_left_bottom_elbow_connector", |
|||
"hp_bottom_right_elbow_connector", |
|||
"hp_left_top_elbow_connector", |
|||
"hp_cross_connector", |
|||
"hp_bottom_tee_connector", |
|||
"hp_right_tee_connector", |
|||
"hp_left_tee_connector", |
|||
"hp_top_tee_connector" |
|||
] |
|||
} |
|||