@record-evolution/widget-scada 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. package/README.md +50 -0
  2. package/dist/scada_symbols/3-phase-voltage-relay-hp.svg +549 -0
  3. package/dist/scada_symbols/apartments-hp.svg +344 -0
  4. package/dist/scada_symbols/battery-hp.svg +473 -0
  5. package/dist/scada_symbols/bottom-flow-meter.svg +933 -0
  6. package/dist/scada_symbols/bottom-light-bulb-hp.svg +346 -0
  7. package/dist/scada_symbols/bottom-right-elbow-connector-hp.svg +233 -0
  8. package/dist/scada_symbols/bottom-right-elbow-pipe.svg +532 -0
  9. package/dist/scada_symbols/bottom-tee-connector-hp.svg +470 -0
  10. package/dist/scada_symbols/bottom-tee-pipe.svg +857 -0
  11. package/dist/scada_symbols/centrifugal-pump.svg +626 -0
  12. package/dist/scada_symbols/conical-tank.svg +1136 -0
  13. package/dist/scada_symbols/consumers-hp.svg +346 -0
  14. package/dist/scada_symbols/control-panel-hp.svg +332 -0
  15. package/dist/scada_symbols/crane-hp.svg +346 -0
  16. package/dist/scada_symbols/cross-connector-hp.svg +586 -0
  17. package/dist/scada_symbols/cross-pipe.svg +1051 -0
  18. package/dist/scada_symbols/curcuit-breaker-hp.svg +444 -0
  19. package/dist/scada_symbols/cylindrical-tank.svg +1332 -0
  20. package/dist/scada_symbols/drawwork-hp.svg +355 -0
  21. package/dist/scada_symbols/drill-hp.svg +354 -0
  22. package/dist/scada_symbols/drilling-line-hp.svg +361 -0
  23. package/dist/scada_symbols/drilling-rig-hp.svg +354 -0
  24. package/dist/scada_symbols/dynamic-horizontal-scale-hp.svg +605 -0
  25. package/dist/scada_symbols/dynamic-vertical-scale-hp.svg +598 -0
  26. package/dist/scada_symbols/electrical-distribution-board-hp.svg +332 -0
  27. package/dist/scada_symbols/electrical-engine-hp.svg +360 -0
  28. package/dist/scada_symbols/elevated-tank.svg +1564 -0
  29. package/dist/scada_symbols/energy-meter-hp.svg +488 -0
  30. package/dist/scada_symbols/extra-long-horizontal-pipe.svg +426 -0
  31. package/dist/scada_symbols/extra-long-vertical-pipe.svg +438 -0
  32. package/dist/scada_symbols/filter-hp.svg +287 -0
  33. package/dist/scada_symbols/four-rate-energy-meter-hp.svg +891 -0
  34. package/dist/scada_symbols/fuel-generator-hp.svg +359 -0
  35. package/dist/scada_symbols/gas-preventer-hp.svg +361 -0
  36. package/dist/scada_symbols/gas-wellhead-hp.svg +363 -0
  37. package/dist/scada_symbols/heat-exchanger-hp.svg +363 -0
  38. package/dist/scada_symbols/heat-pump-hp.svg +532 -0
  39. package/dist/scada_symbols/high-voltage-tower-hp.svg +297 -0
  40. package/dist/scada_symbols/hook-hp.svg +293 -0
  41. package/dist/scada_symbols/horizontal-ball-valve.svg +271 -0
  42. package/dist/scada_symbols/horizontal-broken-pipe.svg +97 -0
  43. package/dist/scada_symbols/horizontal-connector-hp.svg +268 -0
  44. package/dist/scada_symbols/horizontal-curcuit-breaker-hp.svg +439 -0
  45. package/dist/scada_symbols/horizontal-energy-system-controller-hp.svg +378 -0
  46. package/dist/scada_symbols/horizontal-inline-flow-meter.svg +913 -0
  47. package/dist/scada_symbols/horizontal-pipe.svg +422 -0
  48. package/dist/scada_symbols/horizontal-tank-hp.svg +524 -0
  49. package/dist/scada_symbols/horizontal-tank.svg +1343 -0
  50. package/dist/scada_symbols/horizontal-valve-hp.svg +392 -0
  51. package/dist/scada_symbols/horizontal-wheel-valve.svg +300 -0
  52. package/dist/scada_symbols/house-hp.svg +349 -0
  53. package/dist/scada_symbols/index.json +702 -0
  54. package/dist/scada_symbols/industrial-fuel-generator-hp.svg +358 -0
  55. package/dist/scada_symbols/inverter-hp.svg +578 -0
  56. package/dist/scada_symbols/large-conical-tank.svg +1146 -0
  57. package/dist/scada_symbols/large-cylindrical-tank.svg +1323 -0
  58. package/dist/scada_symbols/large-horizontal-separator-connector-hp.svg +342 -0
  59. package/dist/scada_symbols/large-horizontal-separator-hp.svg +350 -0
  60. package/dist/scada_symbols/large-inverter-hp.svg +578 -0
  61. package/dist/scada_symbols/large-stand-cylindrical-tank.svg +1384 -0
  62. package/dist/scada_symbols/large-stand-vertical-tank.svg +1386 -0
  63. package/dist/scada_symbols/large-vertical-separator-connector-hp.svg +350 -0
  64. package/dist/scada_symbols/large-vertical-separator-hp.svg +350 -0
  65. package/dist/scada_symbols/large-vertical-tank.svg +1325 -0
  66. package/dist/scada_symbols/leak-sensor.svg +158 -0
  67. package/dist/scada_symbols/left-analog-water-level-meter.svg +748 -0
  68. package/dist/scada_symbols/left-bottom-elbow-connector-hp.svg +233 -0
  69. package/dist/scada_symbols/left-bottom-elbow-pipe.svg +532 -0
  70. package/dist/scada_symbols/left-drain-pipe.svg +166 -0
  71. package/dist/scada_symbols/left-elbow-drain-pipe.svg +181 -0
  72. package/dist/scada_symbols/left-flow-meter.svg +911 -0
  73. package/dist/scada_symbols/left-heat-pump.svg +939 -0
  74. package/dist/scada_symbols/left-motor-pump.svg +541 -0
  75. package/dist/scada_symbols/left-tee-connector-hp.svg +470 -0
  76. package/dist/scada_symbols/left-tee-pipe.svg +869 -0
  77. package/dist/scada_symbols/left-top-elbow-connector-hp.svg +233 -0
  78. package/dist/scada_symbols/left-top-elbow-pipe.svg +532 -0
  79. package/dist/scada_symbols/long-bottom-filter.svg +88 -0
  80. package/dist/scada_symbols/long-horizontal-broken-pipe.svg +97 -0
  81. package/dist/scada_symbols/long-horizontal-connector-hp.svg +269 -0
  82. package/dist/scada_symbols/long-horizontal-pipe.svg +488 -0
  83. package/dist/scada_symbols/long-top-filter.svg +88 -0
  84. package/dist/scada_symbols/long-vertical-broken-pipe.svg +97 -0
  85. package/dist/scada_symbols/long-vertical-connector-hp.svg +267 -0
  86. package/dist/scada_symbols/long-vertical-pipe.svg +485 -0
  87. package/dist/scada_symbols/low-voltage-tower-hp.svg +278 -0
  88. package/dist/scada_symbols/low-voltage-transformer-tower-hp.svg +334 -0
  89. package/dist/scada_symbols/manufacture-hp.svg +344 -0
  90. package/dist/scada_symbols/meter.svg +751 -0
  91. package/dist/scada_symbols/oil-pump-hp.svg +357 -0
  92. package/dist/scada_symbols/platform-hp.svg +267 -0
  93. package/dist/scada_symbols/pool-hp.svg +523 -0
  94. package/dist/scada_symbols/pool.svg +998 -0
  95. package/dist/scada_symbols/power-socket-hp.svg +371 -0
  96. package/dist/scada_symbols/power-transformer-hp.svg +359 -0
  97. package/dist/scada_symbols/preventer-hp.svg +343 -0
  98. package/dist/scada_symbols/pump-hp.svg +368 -0
  99. package/dist/scada_symbols/right-analog-water-level-meter.svg +748 -0
  100. package/dist/scada_symbols/right-drain-pipe.svg +167 -0
  101. package/dist/scada_symbols/right-elbow-drain-pipe.svg +178 -0
  102. package/dist/scada_symbols/right-flow-meter.svg +911 -0
  103. package/dist/scada_symbols/right-heat-pump.svg +948 -0
  104. package/dist/scada_symbols/right-motor-pump.svg +541 -0
  105. package/dist/scada_symbols/right-tee-connector-hp.svg +470 -0
  106. package/dist/scada_symbols/right-tee-pipe.svg +857 -0
  107. package/dist/scada_symbols/rotor-hp.svg +346 -0
  108. package/dist/scada_symbols/sand-filter-hp.svg +652 -0
  109. package/dist/scada_symbols/sand-filter.svg +704 -0
  110. package/dist/scada_symbols/short-bottom-filter.svg +88 -0
  111. package/dist/scada_symbols/short-left-drain-pipe.svg +160 -0
  112. package/dist/scada_symbols/short-right-drain-pipe.svg +160 -0
  113. package/dist/scada_symbols/short-top-filter.svg +88 -0
  114. package/dist/scada_symbols/short-vertical-tank-hp.svg +522 -0
  115. package/dist/scada_symbols/simple-horizontal-scale-hp.svg +509 -0
  116. package/dist/scada_symbols/simple-vertical-scale-hp.svg +509 -0
  117. package/dist/scada_symbols/single-key-switch-hp.svg +373 -0
  118. package/dist/scada_symbols/small-cylindrical-tank.svg +1306 -0
  119. package/dist/scada_symbols/small-horizontal-separator-connector-hp.svg +342 -0
  120. package/dist/scada_symbols/small-horizontal-separator-hp.svg +342 -0
  121. package/dist/scada_symbols/small-left-meter.svg +725 -0
  122. package/dist/scada_symbols/small-left-motor-pump.svg +443 -0
  123. package/dist/scada_symbols/small-meter.svg +694 -0
  124. package/dist/scada_symbols/small-power-transformer-hp.svg +359 -0
  125. package/dist/scada_symbols/small-right-center.svg +725 -0
  126. package/dist/scada_symbols/small-right-motor-pump.svg +443 -0
  127. package/dist/scada_symbols/small-spherical-tank.svg +1362 -0
  128. package/dist/scada_symbols/small-vertical-separator-connector-hp.svg +342 -0
  129. package/dist/scada_symbols/small-vertical-separator-hp.svg +342 -0
  130. package/dist/scada_symbols/solar-panel-hp.svg +353 -0
  131. package/dist/scada_symbols/spherical-tank.svg +1392 -0
  132. package/dist/scada_symbols/stand-cylindrical-tank.svg +1393 -0
  133. package/dist/scada_symbols/stand-horizontal-tank.svg +1404 -0
  134. package/dist/scada_symbols/stand-solar-panel-hp.svg +357 -0
  135. package/dist/scada_symbols/stand-vertical-short-tank.svg +1366 -0
  136. package/dist/scada_symbols/stand-vertical-tank.svg +1386 -0
  137. package/dist/scada_symbols/three-rate-energy-meter-hp.svg +759 -0
  138. package/dist/scada_symbols/top-flow-meter.svg +927 -0
  139. package/dist/scada_symbols/top-light-bulb-hp.svg +346 -0
  140. package/dist/scada_symbols/top-right-elbow-connector-hp.svg +233 -0
  141. package/dist/scada_symbols/top-right-elbow-pipe.svg +532 -0
  142. package/dist/scada_symbols/top-tee-connector-hp.svg +470 -0
  143. package/dist/scada_symbols/top-tee-pipe.svg +857 -0
  144. package/dist/scada_symbols/turbine-hp.svg +377 -0
  145. package/dist/scada_symbols/two-key-switch-hp.svg +489 -0
  146. package/dist/scada_symbols/two-rate-energy-meter-hp.svg +627 -0
  147. package/dist/scada_symbols/vertical-ball-valve.svg +271 -0
  148. package/dist/scada_symbols/vertical-broken-pipe.svg +97 -0
  149. package/dist/scada_symbols/vertical-connector-hp.svg +269 -0
  150. package/dist/scada_symbols/vertical-energy-system-controller-hp.svg +378 -0
  151. package/dist/scada_symbols/vertical-inline-flow-meter.svg +913 -0
  152. package/dist/scada_symbols/vertical-pipe.svg +422 -0
  153. package/dist/scada_symbols/vertical-short-tank.svg +1305 -0
  154. package/dist/scada_symbols/vertical-tank-hp.svg +524 -0
  155. package/dist/scada_symbols/vertical-tank.svg +1326 -0
  156. package/dist/scada_symbols/vertical-valve-hp.svg +392 -0
  157. package/dist/scada_symbols/vertical-wheel-valve.svg +300 -0
  158. package/dist/scada_symbols/voltage-relay-hp.svg +440 -0
  159. package/dist/scada_symbols/voltage-stabilizer-hp.svg +584 -0
  160. package/dist/scada_symbols/waterstop.svg +276 -0
  161. package/dist/scada_symbols/wind-turbine-cluster-hp.svg +370 -0
  162. package/dist/scada_symbols/wind-turbine-hp.svg +360 -0
  163. package/dist/widget-scada.js +1331 -0
  164. package/dist/widget-scada.js.map +1 -0
  165. package/package.json +61 -0
  166. package/scada_symbols/3-phase-voltage-relay-hp.svg +549 -0
  167. package/scada_symbols/apartments-hp.svg +344 -0
  168. package/scada_symbols/battery-hp.svg +473 -0
  169. package/scada_symbols/bottom-flow-meter.svg +933 -0
  170. package/scada_symbols/bottom-light-bulb-hp.svg +346 -0
  171. package/scada_symbols/bottom-right-elbow-connector-hp.svg +233 -0
  172. package/scada_symbols/bottom-right-elbow-pipe.svg +532 -0
  173. package/scada_symbols/bottom-tee-connector-hp.svg +470 -0
  174. package/scada_symbols/bottom-tee-pipe.svg +857 -0
  175. package/scada_symbols/centrifugal-pump.svg +626 -0
  176. package/scada_symbols/conical-tank.svg +1136 -0
  177. package/scada_symbols/consumers-hp.svg +346 -0
  178. package/scada_symbols/control-panel-hp.svg +332 -0
  179. package/scada_symbols/crane-hp.svg +346 -0
  180. package/scada_symbols/cross-connector-hp.svg +586 -0
  181. package/scada_symbols/cross-pipe.svg +1051 -0
  182. package/scada_symbols/curcuit-breaker-hp.svg +444 -0
  183. package/scada_symbols/cylindrical-tank.svg +1332 -0
  184. package/scada_symbols/drawwork-hp.svg +355 -0
  185. package/scada_symbols/drill-hp.svg +354 -0
  186. package/scada_symbols/drilling-line-hp.svg +361 -0
  187. package/scada_symbols/drilling-rig-hp.svg +354 -0
  188. package/scada_symbols/dynamic-horizontal-scale-hp.svg +605 -0
  189. package/scada_symbols/dynamic-vertical-scale-hp.svg +598 -0
  190. package/scada_symbols/electrical-distribution-board-hp.svg +332 -0
  191. package/scada_symbols/electrical-engine-hp.svg +360 -0
  192. package/scada_symbols/elevated-tank.svg +1564 -0
  193. package/scada_symbols/energy-meter-hp.svg +488 -0
  194. package/scada_symbols/extra-long-horizontal-pipe.svg +426 -0
  195. package/scada_symbols/extra-long-vertical-pipe.svg +438 -0
  196. package/scada_symbols/filter-hp.svg +287 -0
  197. package/scada_symbols/four-rate-energy-meter-hp.svg +891 -0
  198. package/scada_symbols/fuel-generator-hp.svg +359 -0
  199. package/scada_symbols/gas-preventer-hp.svg +361 -0
  200. package/scada_symbols/gas-wellhead-hp.svg +363 -0
  201. package/scada_symbols/heat-exchanger-hp.svg +363 -0
  202. package/scada_symbols/heat-pump-hp.svg +532 -0
  203. package/scada_symbols/high-voltage-tower-hp.svg +297 -0
  204. package/scada_symbols/hook-hp.svg +293 -0
  205. package/scada_symbols/horizontal-ball-valve.svg +271 -0
  206. package/scada_symbols/horizontal-broken-pipe.svg +97 -0
  207. package/scada_symbols/horizontal-connector-hp.svg +268 -0
  208. package/scada_symbols/horizontal-curcuit-breaker-hp.svg +439 -0
  209. package/scada_symbols/horizontal-energy-system-controller-hp.svg +378 -0
  210. package/scada_symbols/horizontal-inline-flow-meter.svg +913 -0
  211. package/scada_symbols/horizontal-pipe.svg +422 -0
  212. package/scada_symbols/horizontal-tank-hp.svg +524 -0
  213. package/scada_symbols/horizontal-tank.svg +1343 -0
  214. package/scada_symbols/horizontal-valve-hp.svg +392 -0
  215. package/scada_symbols/horizontal-wheel-valve.svg +300 -0
  216. package/scada_symbols/house-hp.svg +349 -0
  217. package/scada_symbols/index.json +702 -0
  218. package/scada_symbols/industrial-fuel-generator-hp.svg +358 -0
  219. package/scada_symbols/inverter-hp.svg +578 -0
  220. package/scada_symbols/large-conical-tank.svg +1146 -0
  221. package/scada_symbols/large-cylindrical-tank.svg +1323 -0
  222. package/scada_symbols/large-horizontal-separator-connector-hp.svg +342 -0
  223. package/scada_symbols/large-horizontal-separator-hp.svg +350 -0
  224. package/scada_symbols/large-inverter-hp.svg +578 -0
  225. package/scada_symbols/large-stand-cylindrical-tank.svg +1384 -0
  226. package/scada_symbols/large-stand-vertical-tank.svg +1386 -0
  227. package/scada_symbols/large-vertical-separator-connector-hp.svg +350 -0
  228. package/scada_symbols/large-vertical-separator-hp.svg +350 -0
  229. package/scada_symbols/large-vertical-tank.svg +1325 -0
  230. package/scada_symbols/leak-sensor.svg +158 -0
  231. package/scada_symbols/left-analog-water-level-meter.svg +748 -0
  232. package/scada_symbols/left-bottom-elbow-connector-hp.svg +233 -0
  233. package/scada_symbols/left-bottom-elbow-pipe.svg +532 -0
  234. package/scada_symbols/left-drain-pipe.svg +166 -0
  235. package/scada_symbols/left-elbow-drain-pipe.svg +181 -0
  236. package/scada_symbols/left-flow-meter.svg +911 -0
  237. package/scada_symbols/left-heat-pump.svg +939 -0
  238. package/scada_symbols/left-motor-pump.svg +541 -0
  239. package/scada_symbols/left-tee-connector-hp.svg +470 -0
  240. package/scada_symbols/left-tee-pipe.svg +869 -0
  241. package/scada_symbols/left-top-elbow-connector-hp.svg +233 -0
  242. package/scada_symbols/left-top-elbow-pipe.svg +532 -0
  243. package/scada_symbols/long-bottom-filter.svg +88 -0
  244. package/scada_symbols/long-horizontal-broken-pipe.svg +97 -0
  245. package/scada_symbols/long-horizontal-connector-hp.svg +269 -0
  246. package/scada_symbols/long-horizontal-pipe.svg +488 -0
  247. package/scada_symbols/long-top-filter.svg +88 -0
  248. package/scada_symbols/long-vertical-broken-pipe.svg +97 -0
  249. package/scada_symbols/long-vertical-connector-hp.svg +267 -0
  250. package/scada_symbols/long-vertical-pipe.svg +485 -0
  251. package/scada_symbols/low-voltage-tower-hp.svg +278 -0
  252. package/scada_symbols/low-voltage-transformer-tower-hp.svg +334 -0
  253. package/scada_symbols/manufacture-hp.svg +344 -0
  254. package/scada_symbols/meter.svg +751 -0
  255. package/scada_symbols/oil-pump-hp.svg +357 -0
  256. package/scada_symbols/platform-hp.svg +267 -0
  257. package/scada_symbols/pool-hp.svg +523 -0
  258. package/scada_symbols/pool.svg +998 -0
  259. package/scada_symbols/power-socket-hp.svg +371 -0
  260. package/scada_symbols/power-transformer-hp.svg +359 -0
  261. package/scada_symbols/preventer-hp.svg +343 -0
  262. package/scada_symbols/pump-hp.svg +368 -0
  263. package/scada_symbols/right-analog-water-level-meter.svg +748 -0
  264. package/scada_symbols/right-drain-pipe.svg +167 -0
  265. package/scada_symbols/right-elbow-drain-pipe.svg +178 -0
  266. package/scada_symbols/right-flow-meter.svg +911 -0
  267. package/scada_symbols/right-heat-pump.svg +948 -0
  268. package/scada_symbols/right-motor-pump.svg +541 -0
  269. package/scada_symbols/right-tee-connector-hp.svg +470 -0
  270. package/scada_symbols/right-tee-pipe.svg +857 -0
  271. package/scada_symbols/rotor-hp.svg +346 -0
  272. package/scada_symbols/sand-filter-hp.svg +652 -0
  273. package/scada_symbols/sand-filter.svg +704 -0
  274. package/scada_symbols/short-bottom-filter.svg +88 -0
  275. package/scada_symbols/short-left-drain-pipe.svg +160 -0
  276. package/scada_symbols/short-right-drain-pipe.svg +160 -0
  277. package/scada_symbols/short-top-filter.svg +88 -0
  278. package/scada_symbols/short-vertical-tank-hp.svg +522 -0
  279. package/scada_symbols/simple-horizontal-scale-hp.svg +509 -0
  280. package/scada_symbols/simple-vertical-scale-hp.svg +509 -0
  281. package/scada_symbols/single-key-switch-hp.svg +373 -0
  282. package/scada_symbols/small-cylindrical-tank.svg +1306 -0
  283. package/scada_symbols/small-horizontal-separator-connector-hp.svg +342 -0
  284. package/scada_symbols/small-horizontal-separator-hp.svg +342 -0
  285. package/scada_symbols/small-left-meter.svg +725 -0
  286. package/scada_symbols/small-left-motor-pump.svg +443 -0
  287. package/scada_symbols/small-meter.svg +694 -0
  288. package/scada_symbols/small-power-transformer-hp.svg +359 -0
  289. package/scada_symbols/small-right-center.svg +725 -0
  290. package/scada_symbols/small-right-motor-pump.svg +443 -0
  291. package/scada_symbols/small-spherical-tank.svg +1362 -0
  292. package/scada_symbols/small-vertical-separator-connector-hp.svg +342 -0
  293. package/scada_symbols/small-vertical-separator-hp.svg +342 -0
  294. package/scada_symbols/solar-panel-hp.svg +353 -0
  295. package/scada_symbols/spherical-tank.svg +1392 -0
  296. package/scada_symbols/stand-cylindrical-tank.svg +1393 -0
  297. package/scada_symbols/stand-horizontal-tank.svg +1404 -0
  298. package/scada_symbols/stand-solar-panel-hp.svg +357 -0
  299. package/scada_symbols/stand-vertical-short-tank.svg +1366 -0
  300. package/scada_symbols/stand-vertical-tank.svg +1386 -0
  301. package/scada_symbols/three-rate-energy-meter-hp.svg +759 -0
  302. package/scada_symbols/top-flow-meter.svg +927 -0
  303. package/scada_symbols/top-light-bulb-hp.svg +346 -0
  304. package/scada_symbols/top-right-elbow-connector-hp.svg +233 -0
  305. package/scada_symbols/top-right-elbow-pipe.svg +532 -0
  306. package/scada_symbols/top-tee-connector-hp.svg +470 -0
  307. package/scada_symbols/top-tee-pipe.svg +857 -0
  308. package/scada_symbols/turbine-hp.svg +377 -0
  309. package/scada_symbols/two-key-switch-hp.svg +489 -0
  310. package/scada_symbols/two-rate-energy-meter-hp.svg +627 -0
  311. package/scada_symbols/vertical-ball-valve.svg +271 -0
  312. package/scada_symbols/vertical-broken-pipe.svg +97 -0
  313. package/scada_symbols/vertical-connector-hp.svg +269 -0
  314. package/scada_symbols/vertical-energy-system-controller-hp.svg +378 -0
  315. package/scada_symbols/vertical-inline-flow-meter.svg +913 -0
  316. package/scada_symbols/vertical-pipe.svg +422 -0
  317. package/scada_symbols/vertical-short-tank.svg +1305 -0
  318. package/scada_symbols/vertical-tank-hp.svg +524 -0
  319. package/scada_symbols/vertical-tank.svg +1326 -0
  320. package/scada_symbols/vertical-valve-hp.svg +392 -0
  321. package/scada_symbols/vertical-wheel-valve.svg +300 -0
  322. package/scada_symbols/voltage-relay-hp.svg +440 -0
  323. package/scada_symbols/voltage-stabilizer-hp.svg +584 -0
  324. package/scada_symbols/waterstop.svg +276 -0
  325. package/scada_symbols/wind-turbine-cluster-hp.svg +370 -0
  326. package/scada_symbols/wind-turbine-hp.svg +360 -0
  327. package/src/default-data.json +18 -0
  328. package/src/definition-schema.d.ts +1521 -0
  329. package/src/definition-schema.json +5228 -0
  330. package/src/scada-runtime.ts +1290 -0
  331. package/src/widget-scada.ts +269 -0
  332. package/thumbnail.png +0 -0
@@ -0,0 +1,269 @@
1
+ import { html, css, LitElement, PropertyValues, nothing } from 'lit'
2
+ import { customElement, property, state, query } from 'lit/decorators.js'
3
+ import { unsafeSVG } from 'lit/directives/unsafe-svg.js'
4
+ import { InputData } from './definition-schema.js'
5
+ import {
6
+ SymbolMetadata,
7
+ ScadaContext,
8
+ ScadaCallbacks,
9
+ buildContext,
10
+ renderAllTags,
11
+ attachActions,
12
+ getSymbolDefaults
13
+ } from './scada-runtime.js'
14
+
15
+ type Theme = {
16
+ theme_name: string
17
+ theme_object: any
18
+ }
19
+
20
+ @customElement('widget-scada-versionplaceholder')
21
+ export class WidgetScada extends LitElement {
22
+ @property({ type: Object })
23
+ inputData?: InputData
24
+
25
+ @property({ type: Object })
26
+ theme?: Theme
27
+
28
+ @state() private svgContent: string = ''
29
+ @state() private metadata?: SymbolMetadata
30
+ @state() private themeBgColor?: string
31
+
32
+ @query('.svg-container')
33
+ svgContainer?: HTMLDivElement
34
+
35
+ version: string = 'versionplaceholder'
36
+ private currentSymbol?: string
37
+ private resizeObserver: ResizeObserver
38
+ private svgModules = new Map<string, { svg: string; metadata: SymbolMetadata }>()
39
+ private actionCleanups: Array<() => void> = []
40
+ private ctx?: ScadaContext
41
+
42
+ constructor() {
43
+ super()
44
+ this.resizeObserver = new ResizeObserver(() => this.requestUpdate())
45
+ this.resizeObserver.observe(this)
46
+ }
47
+
48
+ disconnectedCallback() {
49
+ super.disconnectedCallback()
50
+ this.resizeObserver?.disconnect()
51
+ this.cleanupActions()
52
+ }
53
+
54
+ private cleanupActions() {
55
+ for (const cleanup of this.actionCleanups) cleanup()
56
+ this.actionCleanups = []
57
+ }
58
+
59
+ /**
60
+ * Returns the default property values from the currently loaded SVG metadata.
61
+ */
62
+ getDefaults(): Record<string, any> | undefined {
63
+ if (!this.metadata) return undefined
64
+ return getSymbolDefaults(this.metadata)
65
+ }
66
+
67
+ private dispatchDefaults() {
68
+ if (!this.metadata) return
69
+ this.dispatchEvent(
70
+ new CustomEvent('widget-defaults', {
71
+ detail: getSymbolDefaults(this.metadata),
72
+ bubbles: true,
73
+ composed: true
74
+ })
75
+ )
76
+ }
77
+
78
+ protected updated(changedProperties: PropertyValues) {
79
+ if (changedProperties.has('inputData')) {
80
+ const newSymbol = this.inputData?.symbol
81
+ if (newSymbol && newSymbol !== this.currentSymbol) {
82
+ this.currentSymbol = newSymbol
83
+ this.loadSymbol(newSymbol)
84
+ } else if (newSymbol === this.currentSymbol) {
85
+ this.applyState()
86
+ }
87
+ }
88
+ if (changedProperties.has('theme')) {
89
+ this.registerTheme()
90
+ }
91
+ }
92
+
93
+ private registerTheme() {
94
+ const cssBgColor = getComputedStyle(this).getPropertyValue('--re-tile-background-color').trim()
95
+ this.themeBgColor = cssBgColor || this.theme?.theme_object?.backgroundColor
96
+ }
97
+
98
+ private getSymbolUrl(symbolId: string): string {
99
+ // Build URL at runtime without triggering Vite's static asset analysis
100
+ // import.meta.url points to the module's own URL
101
+ const base = import.meta.url
102
+ const segments = base.split('/')
103
+ segments.pop() // remove current filename
104
+ segments.pop() // go up from src/
105
+ return segments.join('/') + '/scada_symbols/' + symbolId + '.svg'
106
+ }
107
+
108
+ private async loadSymbol(symbolId: string) {
109
+ const cached = this.svgModules.get(symbolId)
110
+ if (cached) {
111
+ this.svgContent = cached.svg
112
+ this.metadata = cached.metadata
113
+ await this.updateComplete
114
+ this.applyState()
115
+ this.dispatchDefaults()
116
+ return
117
+ }
118
+
119
+ try {
120
+ const url = this.getSymbolUrl(symbolId)
121
+ const resp = await fetch(url)
122
+ if (!resp.ok) {
123
+ this.svgContent = ''
124
+ this.metadata = undefined
125
+ return
126
+ }
127
+ const text = await resp.text()
128
+
129
+ const metaMatch = text.match(/<tb:metadata[^>]*><!\[CDATA\[([\s\S]*?)\]\]>/)
130
+ let metadata: SymbolMetadata | undefined
131
+ if (metaMatch) {
132
+ try {
133
+ metadata = JSON.parse(metaMatch[1])
134
+ } catch {
135
+ /* skip */
136
+ }
137
+ }
138
+
139
+ const cleanSvg = text.replace(/<tb:metadata[\s\S]*?<\/tb:metadata>/, '')
140
+ this.svgModules.set(symbolId, { svg: cleanSvg, metadata: metadata! })
141
+ this.svgContent = cleanSvg
142
+ this.metadata = metadata
143
+ await this.updateComplete
144
+ this.applyState()
145
+ } catch {
146
+ this.svgContent = ''
147
+ this.metadata = undefined
148
+ }
149
+ this.dispatchDefaults()
150
+ }
151
+
152
+ private applyState() {
153
+ if (!this.metadata || !this.inputData || !this.svgContainer) return
154
+
155
+ requestAnimationFrame(() => {
156
+ const svgEl = this.svgContainer?.querySelector('svg')
157
+ if (!svgEl) return
158
+
159
+ // Build values from bindings
160
+ const values: Record<string, any> = {}
161
+ const bindings = (this.inputData as any)?.bindings ?? {}
162
+ for (const [key, val] of Object.entries(bindings)) {
163
+ values[key] = val
164
+ }
165
+
166
+ // Build properties: symbol defaults → top-level props → flattened styling
167
+ const data = this.inputData as any
168
+ const symbolDefaults = getSymbolDefaults(this.metadata!)
169
+ const { styling: defaultStyling, bindings: _defaultBindings, ...defaultProps } = symbolDefaults
170
+ const properties: Record<string, any> = { ...defaultProps, ...data }
171
+ delete properties.symbol
172
+ delete properties.bindings
173
+ delete properties.actions
174
+ delete properties.styling
175
+ Object.assign(properties, defaultStyling ?? {}, data?.styling ?? {})
176
+
177
+ // Action callbacks
178
+ const callbacks: ScadaCallbacks = {
179
+ onAction: (event, actionName, args, _opts) => {
180
+ this.dispatchEvent(
181
+ new CustomEvent('action-submit', {
182
+ detail: {
183
+ actionName,
184
+ args,
185
+ actionApp: data?.actions?.actionApp,
186
+ actionDevice: data?.actions?.actionDevice,
187
+ actionTopic: data?.actions?.actionTopic
188
+ },
189
+ bubbles: false,
190
+ composed: false
191
+ })
192
+ )
193
+ },
194
+ onSetValue: (key, value) => {
195
+ // Update the binding value and re-render
196
+ if (this.ctx) this.ctx.values[key] = value
197
+ this.applyState()
198
+ }
199
+ }
200
+
201
+ // Build context and execute all stateRenderFunctions
202
+ this.ctx = buildContext(svgEl, this.metadata!, values, properties, callbacks)
203
+
204
+ // Cleanup old action handlers and attach new ones
205
+ this.cleanupActions()
206
+ renderAllTags(svgEl, this.metadata!, this.ctx)
207
+ this.actionCleanups = attachActions(svgEl, this.metadata!, this.ctx)
208
+ })
209
+ }
210
+
211
+ static styles = css`
212
+ :host {
213
+ display: block;
214
+ box-sizing: border-box;
215
+ position: relative;
216
+ margin: auto;
217
+ overflow: hidden;
218
+ width: 100%;
219
+ height: 100%;
220
+ }
221
+
222
+ .wrapper {
223
+ display: flex;
224
+ align-items: center;
225
+ justify-content: center;
226
+ height: 100%;
227
+ width: 100%;
228
+ box-sizing: border-box;
229
+ }
230
+
231
+ .svg-container {
232
+ width: 100%;
233
+ height: 100%;
234
+ display: flex;
235
+ justify-content: center;
236
+ }
237
+
238
+ .svg-container svg {
239
+ max-width: 100%;
240
+ max-height: 100%;
241
+ width: auto;
242
+ height: auto;
243
+ }
244
+
245
+ .no-symbol {
246
+ font-size: 16px;
247
+ color: #999;
248
+ display: flex;
249
+ height: 100%;
250
+ width: 100%;
251
+ text-align: center;
252
+ align-items: center;
253
+ justify-content: center;
254
+ font-family: sans-serif;
255
+ }
256
+ `
257
+
258
+ render() {
259
+ return html`
260
+ <div class="wrapper" style="background-color: ${this.themeBgColor ?? ''}">
261
+ ${this.svgContent
262
+ ? html`<div class="svg-container">${unsafeSVG(this.svgContent)}</div>`
263
+ : html`<div class="no-symbol">
264
+ ${this.inputData?.symbol ? 'Loading...' : 'Select a SCADA symbol'}
265
+ </div>`}
266
+ </div>
267
+ `
268
+ }
269
+ }
package/thumbnail.png ADDED
Binary file