@ind-ds/core 0.1.1 → 0.2.0

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 (1402) hide show
  1. package/dist/cjs/ind-alarm-badge-group.cjs.entry.js +41 -0
  2. package/dist/cjs/ind-alarm-badge-group.cjs.entry.js.map +1 -0
  3. package/dist/cjs/ind-alarm-count.cjs.entry.js +42 -0
  4. package/dist/cjs/ind-alarm-count.cjs.entry.js.map +1 -0
  5. package/dist/cjs/ind-alarm-panel.cjs.entry.js +51 -0
  6. package/dist/cjs/ind-alarm-panel.cjs.entry.js.map +1 -0
  7. package/dist/cjs/ind-alarm-row.cjs.entry.js +41 -0
  8. package/dist/cjs/ind-alarm-row.cjs.entry.js.map +1 -0
  9. package/dist/cjs/ind-alarm-summary.cjs.entry.js +32 -0
  10. package/dist/cjs/ind-alarm-summary.cjs.entry.js.map +1 -0
  11. package/dist/cjs/ind-alarm.cjs.entry.js +1 -1
  12. package/dist/cjs/ind-app-header.cjs.entry.js +2 -2
  13. package/dist/cjs/ind-asset-overview.cjs.entry.js +33 -0
  14. package/dist/cjs/ind-asset-overview.cjs.entry.js.map +1 -0
  15. package/dist/cjs/ind-audit-row.cjs.entry.js +30 -0
  16. package/dist/cjs/ind-audit-row.cjs.entry.js.map +1 -0
  17. package/dist/cjs/ind-badge.cjs.entry.js +26 -0
  18. package/dist/cjs/ind-badge.cjs.entry.js.map +1 -0
  19. package/dist/cjs/ind-batch-control-panel.cjs.entry.js +48 -0
  20. package/dist/cjs/ind-batch-control-panel.cjs.entry.js.map +1 -0
  21. package/dist/cjs/{ind-input.cjs.entry.js → ind-batch-parameter-row_2.cjs.entry.js} +50 -4
  22. package/dist/cjs/ind-batch-parameter-row_2.cjs.entry.js.map +1 -0
  23. package/dist/cjs/ind-breadcrumb-item.cjs.entry.js +37 -0
  24. package/dist/cjs/ind-breadcrumb-item.cjs.entry.js.map +1 -0
  25. package/dist/cjs/ind-button.cjs.entry.js +2 -2
  26. package/dist/cjs/ind-canvas-layer.cjs.entry.js +38 -0
  27. package/dist/cjs/ind-canvas-layer.cjs.entry.js.map +1 -0
  28. package/dist/cjs/ind-checkbox.cjs.entry.js +2 -2
  29. package/dist/cjs/ind-command-center.cjs.entry.js +25 -0
  30. package/dist/cjs/ind-command-center.cjs.entry.js.map +1 -0
  31. package/dist/cjs/ind-command-group.cjs.entry.js +26 -0
  32. package/dist/cjs/ind-command-group.cjs.entry.js.map +1 -0
  33. package/dist/cjs/ind-compressor.cjs.entry.js +31 -0
  34. package/dist/cjs/ind-compressor.cjs.entry.js.map +1 -0
  35. package/dist/cjs/ind-connection-indicator.cjs.entry.js +33 -0
  36. package/dist/cjs/ind-connection-indicator.cjs.entry.js.map +1 -0
  37. package/dist/cjs/ind-context-toolbar.cjs.entry.js +24 -0
  38. package/dist/cjs/ind-context-toolbar.cjs.entry.js.map +1 -0
  39. package/dist/cjs/ind-conveyor.cjs.entry.js +33 -0
  40. package/dist/cjs/ind-conveyor.cjs.entry.js.map +1 -0
  41. package/dist/cjs/ind-cooler.cjs.entry.js +31 -0
  42. package/dist/cjs/ind-cooler.cjs.entry.js.map +1 -0
  43. package/dist/cjs/ind-counter.cjs.entry.js +38 -0
  44. package/dist/cjs/ind-counter.cjs.entry.js.map +1 -0
  45. package/dist/cjs/ind-datetime-picker.cjs.entry.js +48 -0
  46. package/dist/cjs/ind-datetime-picker.cjs.entry.js.map +1 -0
  47. package/dist/cjs/ind-device-connection-card.cjs.entry.js +32 -0
  48. package/dist/cjs/ind-device-connection-card.cjs.entry.js.map +1 -0
  49. package/dist/cjs/ind-device-diagnostics-panel.cjs.entry.js +34 -0
  50. package/dist/cjs/ind-device-diagnostics-panel.cjs.entry.js.map +1 -0
  51. package/dist/cjs/ind-device-info-card.cjs.entry.js +48 -0
  52. package/dist/cjs/ind-device-info-card.cjs.entry.js.map +1 -0
  53. package/dist/cjs/ind-dialog.cjs.entry.js +2 -2
  54. package/dist/cjs/ind-divider.cjs.entry.js +2 -2
  55. package/dist/cjs/ind-ds.cjs.js +2 -2
  56. package/dist/cjs/ind-energy-card.cjs.entry.js +40 -0
  57. package/dist/cjs/ind-energy-card.cjs.entry.js.map +1 -0
  58. package/dist/cjs/ind-energy-dashboard.cjs.entry.js +31 -0
  59. package/dist/cjs/ind-energy-dashboard.cjs.entry.js.map +1 -0
  60. package/dist/cjs/ind-equipment-dashboard.cjs.entry.js +25 -0
  61. package/dist/cjs/ind-equipment-dashboard.cjs.entry.js.map +1 -0
  62. package/dist/cjs/ind-equipment-status-card.cjs.entry.js +42 -0
  63. package/dist/cjs/ind-equipment-status-card.cjs.entry.js.map +1 -0
  64. package/dist/cjs/ind-estop.cjs.entry.js +47 -0
  65. package/dist/cjs/ind-estop.cjs.entry.js.map +1 -0
  66. package/dist/cjs/ind-event-journal.cjs.entry.js +31 -0
  67. package/dist/cjs/ind-event-journal.cjs.entry.js.map +1 -0
  68. package/dist/cjs/ind-event-row.cjs.entry.js +30 -0
  69. package/dist/cjs/ind-event-row.cjs.entry.js.map +1 -0
  70. package/dist/cjs/ind-fan.cjs.entry.js +31 -0
  71. package/dist/cjs/ind-fan.cjs.entry.js.map +1 -0
  72. package/dist/cjs/ind-fill-row.cjs.entry.js +2 -2
  73. package/dist/cjs/ind-firmware-update-panel.cjs.entry.js +49 -0
  74. package/dist/cjs/ind-firmware-update-panel.cjs.entry.js.map +1 -0
  75. package/dist/cjs/ind-gauge.cjs.entry.js +67 -0
  76. package/dist/cjs/ind-gauge.cjs.entry.js.map +1 -0
  77. package/dist/cjs/ind-health-card.cjs.entry.js +2 -2
  78. package/dist/cjs/ind-heartbeat.cjs.entry.js +28 -0
  79. package/dist/cjs/ind-heartbeat.cjs.entry.js.map +1 -0
  80. package/dist/cjs/ind-heater.cjs.entry.js +31 -0
  81. package/dist/cjs/ind-heater.cjs.entry.js.map +1 -0
  82. package/dist/cjs/ind-historian-viewer.cjs.entry.js +38 -0
  83. package/dist/cjs/ind-historian-viewer.cjs.entry.js.map +1 -0
  84. package/dist/cjs/ind-historical-value-row.cjs.entry.js +46 -0
  85. package/dist/cjs/ind-historical-value-row.cjs.entry.js.map +1 -0
  86. package/dist/cjs/ind-icon.cjs.entry.js +46 -0
  87. package/dist/cjs/ind-icon.cjs.entry.js.map +1 -0
  88. package/dist/cjs/ind-knob_3.cjs.entry.js +198 -0
  89. package/dist/cjs/ind-knob_3.cjs.entry.js.map +1 -0
  90. package/dist/cjs/ind-kpi-card.cjs.entry.js +46 -0
  91. package/dist/cjs/ind-kpi-card.cjs.entry.js.map +1 -0
  92. package/dist/cjs/ind-label.cjs.entry.js +31 -0
  93. package/dist/cjs/ind-label.cjs.entry.js.map +1 -0
  94. package/dist/cjs/ind-led_4.cjs.entry.js +150 -0
  95. package/dist/cjs/ind-led_4.cjs.entry.js.map +1 -0
  96. package/dist/cjs/ind-linear-gauge_2.cjs.entry.js +100 -0
  97. package/dist/cjs/ind-linear-gauge_2.cjs.entry.js.map +1 -0
  98. package/dist/cjs/ind-machine-overview.cjs.entry.js +39 -0
  99. package/dist/cjs/ind-machine-overview.cjs.entry.js.map +1 -0
  100. package/dist/cjs/ind-maintenance-dashboard.cjs.entry.js +33 -0
  101. package/dist/cjs/ind-maintenance-dashboard.cjs.entry.js.map +1 -0
  102. package/dist/cjs/ind-motor-card.cjs.entry.js +37 -0
  103. package/dist/cjs/ind-motor-card.cjs.entry.js.map +1 -0
  104. package/dist/cjs/ind-motor-control-panel.cjs.entry.js +57 -0
  105. package/dist/cjs/ind-motor-control-panel.cjs.entry.js.map +1 -0
  106. package/dist/cjs/ind-motor.cjs.entry.js +31 -0
  107. package/dist/cjs/ind-motor.cjs.entry.js.map +1 -0
  108. package/dist/cjs/ind-mqtt-monitor.cjs.entry.js +2 -2
  109. package/dist/cjs/ind-mqtt-tag-binding.cjs.entry.js +39 -0
  110. package/dist/cjs/ind-mqtt-tag-binding.cjs.entry.js.map +1 -0
  111. package/dist/cjs/ind-nav-item.cjs.entry.js +4 -4
  112. package/dist/cjs/ind-network-status-card.cjs.entry.js +39 -0
  113. package/dist/cjs/ind-network-status-card.cjs.entry.js.map +1 -0
  114. package/dist/cjs/ind-oee-dashboard.cjs.entry.js +44 -0
  115. package/dist/cjs/ind-oee-dashboard.cjs.entry.js.map +1 -0
  116. package/dist/cjs/ind-opcua-tag-binding.cjs.entry.js +42 -0
  117. package/dist/cjs/ind-opcua-tag-binding.cjs.entry.js.map +1 -0
  118. package/dist/cjs/ind-pipe.cjs.entry.js +37 -0
  119. package/dist/cjs/ind-pipe.cjs.entry.js.map +1 -0
  120. package/dist/cjs/ind-process-control-panel.cjs.entry.js +57 -0
  121. package/dist/cjs/ind-process-control-panel.cjs.entry.js.map +1 -0
  122. package/dist/cjs/ind-process-symbol.cjs.entry.js +44 -0
  123. package/dist/cjs/ind-process-symbol.cjs.entry.js.map +1 -0
  124. package/dist/cjs/ind-production-cell.cjs.entry.js +30 -0
  125. package/dist/cjs/ind-production-cell.cjs.entry.js.map +1 -0
  126. package/dist/cjs/ind-production-dashboard.cjs.entry.js +27 -0
  127. package/dist/cjs/ind-production-dashboard.cjs.entry.js.map +1 -0
  128. package/dist/cjs/ind-production-line-overview.cjs.entry.js +27 -0
  129. package/dist/cjs/ind-production-line-overview.cjs.entry.js.map +1 -0
  130. package/dist/cjs/ind-progress-ring.cjs.entry.js +47 -0
  131. package/dist/cjs/ind-progress-ring.cjs.entry.js.map +1 -0
  132. package/dist/cjs/ind-progress.cjs.entry.js +2 -2
  133. package/dist/cjs/ind-pump-card.cjs.entry.js +39 -0
  134. package/dist/cjs/ind-pump-card.cjs.entry.js.map +1 -0
  135. package/dist/cjs/ind-pump-control-panel.cjs.entry.js +47 -0
  136. package/dist/cjs/ind-pump-control-panel.cjs.entry.js.map +1 -0
  137. package/dist/cjs/ind-pump.cjs.entry.js +31 -0
  138. package/dist/cjs/ind-pump.cjs.entry.js.map +1 -0
  139. package/dist/cjs/ind-recipe-management-panel.cjs.entry.js +48 -0
  140. package/dist/cjs/ind-recipe-management-panel.cjs.entry.js.map +1 -0
  141. package/dist/cjs/ind-recipe-selector.cjs.entry.js +46 -0
  142. package/dist/cjs/ind-recipe-selector.cjs.entry.js.map +1 -0
  143. package/dist/cjs/ind-scara-canvas.cjs.entry.js +2 -2
  144. package/dist/cjs/ind-select.cjs.entry.js +2 -2
  145. package/dist/cjs/ind-setpoint-control.cjs.entry.js +45 -0
  146. package/dist/cjs/ind-setpoint-control.cjs.entry.js.map +1 -0
  147. package/dist/cjs/ind-setpoint.cjs.entry.js +67 -0
  148. package/dist/cjs/ind-setpoint.cjs.entry.js.map +1 -0
  149. package/dist/cjs/ind-shelf-canvas.cjs.entry.js +2 -2
  150. package/dist/cjs/ind-sidebar-group.cjs.entry.js +34 -0
  151. package/dist/cjs/ind-sidebar-group.cjs.entry.js.map +1 -0
  152. package/dist/cjs/ind-sidebar-nav.cjs.entry.js +2 -2
  153. package/dist/cjs/ind-signal-quality.cjs.entry.js +41 -0
  154. package/dist/cjs/ind-signal-quality.cjs.entry.js.map +1 -0
  155. package/dist/cjs/ind-silo.cjs.entry.js +42 -0
  156. package/dist/cjs/ind-silo.cjs.entry.js.map +1 -0
  157. package/dist/cjs/ind-sparkline.cjs.entry.js +58 -0
  158. package/dist/cjs/ind-sparkline.cjs.entry.js.map +1 -0
  159. package/dist/cjs/ind-status-bar.cjs.entry.js +2 -2
  160. package/dist/cjs/ind-status-dot.cjs.entry.js +1 -1
  161. package/dist/cjs/ind-tab.cjs.entry.js +40 -0
  162. package/dist/cjs/ind-tab.cjs.entry.js.map +1 -0
  163. package/dist/cjs/ind-tag-card.cjs.entry.js +38 -0
  164. package/dist/cjs/ind-tag-card.cjs.entry.js.map +1 -0
  165. package/dist/cjs/ind-tag-name.cjs.entry.js +26 -0
  166. package/dist/cjs/ind-tag-name.cjs.entry.js.map +1 -0
  167. package/dist/cjs/ind-tank-level-card.cjs.entry.js +41 -0
  168. package/dist/cjs/ind-tank-level-card.cjs.entry.js.map +1 -0
  169. package/dist/cjs/ind-temperature-control.cjs.entry.js +49 -0
  170. package/dist/cjs/ind-temperature-control.cjs.entry.js.map +1 -0
  171. package/dist/cjs/ind-textarea.cjs.entry.js +2 -2
  172. package/dist/cjs/ind-timestamp.cjs.entry.js +74 -0
  173. package/dist/cjs/ind-timestamp.cjs.entry.js.map +1 -0
  174. package/dist/cjs/ind-toggle.cjs.entry.js +47 -0
  175. package/dist/cjs/ind-toggle.cjs.entry.js.map +1 -0
  176. package/dist/cjs/ind-toolbar-action.cjs.entry.js +2 -2
  177. package/dist/cjs/ind-tree-node.cjs.entry.js +60 -0
  178. package/dist/cjs/ind-tree-node.cjs.entry.js.map +1 -0
  179. package/dist/cjs/ind-trend-viewer.cjs.entry.js +31 -0
  180. package/dist/cjs/ind-trend-viewer.cjs.entry.js.map +1 -0
  181. package/dist/cjs/ind-trend-widget.cjs.entry.js +48 -0
  182. package/dist/cjs/ind-trend-widget.cjs.entry.js.map +1 -0
  183. package/dist/cjs/ind-unit-label.cjs.entry.js +24 -0
  184. package/dist/cjs/ind-unit-label.cjs.entry.js.map +1 -0
  185. package/dist/cjs/ind-value.cjs.entry.js +2 -2
  186. package/dist/cjs/ind-valve-card.cjs.entry.js +40 -0
  187. package/dist/cjs/ind-valve-card.cjs.entry.js.map +1 -0
  188. package/dist/cjs/ind-valve-control-panel.cjs.entry.js +46 -0
  189. package/dist/cjs/ind-valve-control-panel.cjs.entry.js.map +1 -0
  190. package/dist/cjs/ind-valve.cjs.entry.js +2 -2
  191. package/dist/cjs/ind-workstation-monitor.cjs.entry.js +38 -0
  192. package/dist/cjs/ind-workstation-monitor.cjs.entry.js.map +1 -0
  193. package/dist/cjs/ind-xy-point.cjs.entry.js +51 -0
  194. package/dist/cjs/ind-xy-point.cjs.entry.js.map +1 -0
  195. package/dist/cjs/{index-ph7ZTjuY.js → index-BLwLw5-d.js} +39 -2
  196. package/dist/cjs/index-BLwLw5-d.js.map +1 -0
  197. package/dist/cjs/loader.cjs.js +2 -2
  198. package/dist/collection/collection-manifest.json +93 -2
  199. package/dist/collection/components/atoms/_equipment/equipment.css +74 -0
  200. package/dist/collection/components/atoms/_equipment/types.js +2 -0
  201. package/dist/collection/components/atoms/_equipment/types.js.map +1 -0
  202. package/dist/collection/components/atoms/alarm-count/alarm-count.css +44 -0
  203. package/dist/collection/components/atoms/alarm-count/alarm-count.js +171 -0
  204. package/dist/collection/components/atoms/alarm-count/alarm-count.js.map +1 -0
  205. package/dist/collection/components/atoms/badge/badge.css +42 -0
  206. package/dist/collection/components/atoms/badge/badge.js +101 -0
  207. package/dist/collection/components/atoms/badge/badge.js.map +1 -0
  208. package/dist/collection/components/atoms/breadcrumb-item/breadcrumb-item.css +42 -0
  209. package/dist/collection/components/atoms/breadcrumb-item/breadcrumb-item.js +116 -0
  210. package/dist/collection/components/atoms/breadcrumb-item/breadcrumb-item.js.map +1 -0
  211. package/dist/collection/components/atoms/button/button.js +1 -1
  212. package/dist/collection/components/atoms/canvas-layer/canvas-layer.css +8 -0
  213. package/dist/collection/components/atoms/canvas-layer/canvas-layer.js +161 -0
  214. package/dist/collection/components/atoms/canvas-layer/canvas-layer.js.map +1 -0
  215. package/dist/collection/components/atoms/checkbox/checkbox.js +1 -1
  216. package/dist/collection/components/atoms/compressor/compressor.css +7 -0
  217. package/dist/collection/components/atoms/compressor/compressor.js +124 -0
  218. package/dist/collection/components/atoms/compressor/compressor.js.map +1 -0
  219. package/dist/collection/components/atoms/connection-indicator/connection-indicator.css +42 -0
  220. package/dist/collection/components/atoms/connection-indicator/connection-indicator.js +107 -0
  221. package/dist/collection/components/atoms/connection-indicator/connection-indicator.js.map +1 -0
  222. package/dist/collection/components/atoms/conveyor/conveyor.css +18 -0
  223. package/dist/collection/components/atoms/conveyor/conveyor.js +152 -0
  224. package/dist/collection/components/atoms/conveyor/conveyor.js.map +1 -0
  225. package/dist/collection/components/atoms/cooler/cooler.css +15 -0
  226. package/dist/collection/components/atoms/cooler/cooler.js +124 -0
  227. package/dist/collection/components/atoms/cooler/cooler.js.map +1 -0
  228. package/dist/collection/components/atoms/counter/counter.css +45 -0
  229. package/dist/collection/components/atoms/counter/counter.js +171 -0
  230. package/dist/collection/components/atoms/counter/counter.js.map +1 -0
  231. package/dist/collection/components/atoms/datetime-picker/datetime-picker.css +46 -0
  232. package/dist/collection/components/atoms/datetime-picker/datetime-picker.js +275 -0
  233. package/dist/collection/components/atoms/datetime-picker/datetime-picker.js.map +1 -0
  234. package/dist/collection/components/atoms/dialog/dialog.js +1 -1
  235. package/dist/collection/components/atoms/divider/divider.js +1 -1
  236. package/dist/collection/components/atoms/estop/estop.css +69 -0
  237. package/dist/collection/components/atoms/estop/estop.js +166 -0
  238. package/dist/collection/components/atoms/estop/estop.js.map +1 -0
  239. package/dist/collection/components/atoms/fan/fan.css +11 -0
  240. package/dist/collection/components/atoms/fan/fan.js +124 -0
  241. package/dist/collection/components/atoms/fan/fan.js.map +1 -0
  242. package/dist/collection/components/atoms/gauge/gauge.css +70 -0
  243. package/dist/collection/components/atoms/gauge/gauge.js +237 -0
  244. package/dist/collection/components/atoms/gauge/gauge.js.map +1 -0
  245. package/dist/collection/components/atoms/heartbeat/heartbeat.css +58 -0
  246. package/dist/collection/components/atoms/heartbeat/heartbeat.js +116 -0
  247. package/dist/collection/components/atoms/heartbeat/heartbeat.js.map +1 -0
  248. package/dist/collection/components/atoms/heater/heater.css +20 -0
  249. package/dist/collection/components/atoms/heater/heater.js +124 -0
  250. package/dist/collection/components/atoms/heater/heater.js.map +1 -0
  251. package/dist/collection/components/atoms/icon/icon.css +30 -0
  252. package/dist/collection/components/atoms/icon/icon.js +119 -0
  253. package/dist/collection/components/atoms/icon/icon.js.map +1 -0
  254. package/dist/collection/components/atoms/input/input.js +1 -1
  255. package/dist/collection/components/atoms/knob/knob.css +71 -0
  256. package/dist/collection/components/atoms/knob/knob.js +330 -0
  257. package/dist/collection/components/atoms/knob/knob.js.map +1 -0
  258. package/dist/collection/components/atoms/label/label.css +29 -0
  259. package/dist/collection/components/atoms/label/label.js +145 -0
  260. package/dist/collection/components/atoms/label/label.js.map +1 -0
  261. package/dist/collection/components/atoms/led/led.js +1 -1
  262. package/dist/collection/components/atoms/linear-gauge/linear-gauge.css +65 -0
  263. package/dist/collection/components/atoms/linear-gauge/linear-gauge.js +299 -0
  264. package/dist/collection/components/atoms/linear-gauge/linear-gauge.js.map +1 -0
  265. package/dist/collection/components/atoms/motor/motor.css +24 -0
  266. package/dist/collection/components/atoms/motor/motor.js +124 -0
  267. package/dist/collection/components/atoms/motor/motor.js.map +1 -0
  268. package/dist/collection/components/atoms/pipe/pipe.css +57 -0
  269. package/dist/collection/components/atoms/pipe/pipe.js +176 -0
  270. package/dist/collection/components/atoms/pipe/pipe.js.map +1 -0
  271. package/dist/collection/components/atoms/process-symbol/process-symbol.css +44 -0
  272. package/dist/collection/components/atoms/process-symbol/process-symbol.js +163 -0
  273. package/dist/collection/components/atoms/process-symbol/process-symbol.js.map +1 -0
  274. package/dist/collection/components/atoms/progress/progress.js +1 -1
  275. package/dist/collection/components/atoms/progress-ring/progress-ring.css +59 -0
  276. package/dist/collection/components/atoms/progress-ring/progress-ring.js +220 -0
  277. package/dist/collection/components/atoms/progress-ring/progress-ring.js.map +1 -0
  278. package/dist/collection/components/atoms/pump/pump.css +7 -0
  279. package/dist/collection/components/atoms/pump/pump.js +124 -0
  280. package/dist/collection/components/atoms/pump/pump.js.map +1 -0
  281. package/dist/collection/components/atoms/scara-canvas/scara-canvas.js +1 -1
  282. package/dist/collection/components/atoms/select/select.js +1 -1
  283. package/dist/collection/components/atoms/selector-switch/selector-switch.css +53 -0
  284. package/dist/collection/components/atoms/selector-switch/selector-switch.js +154 -0
  285. package/dist/collection/components/atoms/selector-switch/selector-switch.js.map +1 -0
  286. package/dist/collection/components/atoms/setpoint/setpoint.css +79 -0
  287. package/dist/collection/components/atoms/setpoint/setpoint.js +287 -0
  288. package/dist/collection/components/atoms/setpoint/setpoint.js.map +1 -0
  289. package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.js +1 -1
  290. package/dist/collection/components/atoms/signal-quality/signal-quality.css +41 -0
  291. package/dist/collection/components/atoms/signal-quality/signal-quality.js +129 -0
  292. package/dist/collection/components/atoms/signal-quality/signal-quality.js.map +1 -0
  293. package/dist/collection/components/atoms/silo/silo.css +12 -0
  294. package/dist/collection/components/atoms/silo/silo.js +195 -0
  295. package/dist/collection/components/atoms/silo/silo.js.map +1 -0
  296. package/dist/collection/components/atoms/slider/slider.css +87 -0
  297. package/dist/collection/components/atoms/slider/slider.js +274 -0
  298. package/dist/collection/components/atoms/slider/slider.js.map +1 -0
  299. package/dist/collection/components/atoms/sparkline/sparkline.css +37 -0
  300. package/dist/collection/components/atoms/sparkline/sparkline.js +202 -0
  301. package/dist/collection/components/atoms/sparkline/sparkline.js.map +1 -0
  302. package/dist/collection/components/atoms/tab/tab.css +39 -0
  303. package/dist/collection/components/atoms/tab/tab.js +119 -0
  304. package/dist/collection/components/atoms/tab/tab.js.map +1 -0
  305. package/dist/collection/components/atoms/tag-name/tag-name.css +25 -0
  306. package/dist/collection/components/atoms/tag-name/tag-name.js +94 -0
  307. package/dist/collection/components/atoms/tag-name/tag-name.js.map +1 -0
  308. package/dist/collection/components/atoms/tank/tank.css +12 -0
  309. package/dist/collection/components/atoms/tank/tank.js +196 -0
  310. package/dist/collection/components/atoms/tank/tank.js.map +1 -0
  311. package/dist/collection/components/atoms/textarea/textarea.js +1 -1
  312. package/dist/collection/components/atoms/timestamp/timestamp.css +15 -0
  313. package/dist/collection/components/atoms/timestamp/timestamp.js +161 -0
  314. package/dist/collection/components/atoms/timestamp/timestamp.js.map +1 -0
  315. package/dist/collection/components/atoms/toggle/toggle.css +78 -0
  316. package/dist/collection/components/atoms/toggle/toggle.js +190 -0
  317. package/dist/collection/components/atoms/toggle/toggle.js.map +1 -0
  318. package/dist/collection/components/atoms/tree-node/tree-node.css +65 -0
  319. package/dist/collection/components/atoms/tree-node/tree-node.js +193 -0
  320. package/dist/collection/components/atoms/tree-node/tree-node.js.map +1 -0
  321. package/dist/collection/components/atoms/unit-label/unit-label.css +16 -0
  322. package/dist/collection/components/atoms/unit-label/unit-label.js +72 -0
  323. package/dist/collection/components/atoms/unit-label/unit-label.js.map +1 -0
  324. package/dist/collection/components/atoms/value/value.js +1 -1
  325. package/dist/collection/components/atoms/valve/valve.js +1 -1
  326. package/dist/collection/components/atoms/xy-point/xy-point.css +49 -0
  327. package/dist/collection/components/atoms/xy-point/xy-point.js +237 -0
  328. package/dist/collection/components/atoms/xy-point/xy-point.js.map +1 -0
  329. package/dist/collection/components/molecules/_shared/binding.css +41 -0
  330. package/dist/collection/components/molecules/_shared/card.css +51 -0
  331. package/dist/collection/components/molecules/_shared/equipment-card.css +20 -0
  332. package/dist/collection/components/molecules/_shared/row.css +34 -0
  333. package/dist/collection/components/molecules/alarm-badge-group/alarm-badge-group.css +43 -0
  334. package/dist/collection/components/molecules/alarm-badge-group/alarm-badge-group.js +168 -0
  335. package/dist/collection/components/molecules/alarm-badge-group/alarm-badge-group.js.map +1 -0
  336. package/dist/collection/components/molecules/alarm-row/alarm-row.css +42 -0
  337. package/dist/collection/components/molecules/alarm-row/alarm-row.js +166 -0
  338. package/dist/collection/components/molecules/alarm-row/alarm-row.js.map +1 -0
  339. package/dist/collection/components/molecules/audit-row/audit-row.css +19 -0
  340. package/dist/collection/components/molecules/audit-row/audit-row.js +111 -0
  341. package/dist/collection/components/molecules/audit-row/audit-row.js.map +1 -0
  342. package/dist/collection/components/molecules/batch-parameter-row/batch-parameter-row.css +35 -0
  343. package/dist/collection/components/molecules/batch-parameter-row/batch-parameter-row.js +304 -0
  344. package/dist/collection/components/molecules/batch-parameter-row/batch-parameter-row.js.map +1 -0
  345. package/dist/collection/components/molecules/command-group/command-group.css +26 -0
  346. package/dist/collection/components/molecules/command-group/command-group.js +99 -0
  347. package/dist/collection/components/molecules/command-group/command-group.js.map +1 -0
  348. package/dist/collection/components/molecules/device-connection-card/device-connection-card.css +19 -0
  349. package/dist/collection/components/molecules/device-connection-card/device-connection-card.js +140 -0
  350. package/dist/collection/components/molecules/device-connection-card/device-connection-card.js.map +1 -0
  351. package/dist/collection/components/molecules/device-info-card/device-info-card.css +27 -0
  352. package/dist/collection/components/molecules/device-info-card/device-info-card.js +194 -0
  353. package/dist/collection/components/molecules/device-info-card/device-info-card.js.map +1 -0
  354. package/dist/collection/components/molecules/energy-card/energy-card.css +12 -0
  355. package/dist/collection/components/molecules/energy-card/energy-card.js +206 -0
  356. package/dist/collection/components/molecules/energy-card/energy-card.js.map +1 -0
  357. package/dist/collection/components/molecules/equipment-status-card/equipment-status-card.css +29 -0
  358. package/dist/collection/components/molecules/equipment-status-card/equipment-status-card.js +150 -0
  359. package/dist/collection/components/molecules/equipment-status-card/equipment-status-card.js.map +1 -0
  360. package/dist/collection/components/molecules/event-row/event-row.css +3 -0
  361. package/dist/collection/components/molecules/event-row/event-row.js +118 -0
  362. package/dist/collection/components/molecules/event-row/event-row.js.map +1 -0
  363. package/dist/collection/components/molecules/fill-row/fill-row.js +1 -1
  364. package/dist/collection/components/molecules/health-card/health-card.js +1 -1
  365. package/dist/collection/components/molecules/historical-value-row/historical-value-row.css +28 -0
  366. package/dist/collection/components/molecules/historical-value-row/historical-value-row.js +153 -0
  367. package/dist/collection/components/molecules/historical-value-row/historical-value-row.js.map +1 -0
  368. package/dist/collection/components/molecules/kpi-card/kpi-card.css +31 -0
  369. package/dist/collection/components/molecules/kpi-card/kpi-card.js +199 -0
  370. package/dist/collection/components/molecules/kpi-card/kpi-card.js.map +1 -0
  371. package/dist/collection/components/molecules/mode-selector/mode-selector.css +4 -0
  372. package/dist/collection/components/molecules/mode-selector/mode-selector.js +148 -0
  373. package/dist/collection/components/molecules/mode-selector/mode-selector.js.map +1 -0
  374. package/dist/collection/components/molecules/motor-card/motor-card.css +3 -0
  375. package/dist/collection/components/molecules/motor-card/motor-card.js +162 -0
  376. package/dist/collection/components/molecules/motor-card/motor-card.js.map +1 -0
  377. package/dist/collection/components/molecules/mqtt-tag-binding/mqtt-tag-binding.css +3 -0
  378. package/dist/collection/components/molecules/mqtt-tag-binding/mqtt-tag-binding.js +185 -0
  379. package/dist/collection/components/molecules/mqtt-tag-binding/mqtt-tag-binding.js.map +1 -0
  380. package/dist/collection/components/molecules/nav-item/nav-item.js +3 -3
  381. package/dist/collection/components/molecules/network-status-card/network-status-card.css +31 -0
  382. package/dist/collection/components/molecules/network-status-card/network-status-card.js +168 -0
  383. package/dist/collection/components/molecules/network-status-card/network-status-card.js.map +1 -0
  384. package/dist/collection/components/molecules/opcua-tag-binding/opcua-tag-binding.css +7 -0
  385. package/dist/collection/components/molecules/opcua-tag-binding/opcua-tag-binding.js +175 -0
  386. package/dist/collection/components/molecules/opcua-tag-binding/opcua-tag-binding.js.map +1 -0
  387. package/dist/collection/components/molecules/pump-card/pump-card.css +3 -0
  388. package/dist/collection/components/molecules/pump-card/pump-card.js +184 -0
  389. package/dist/collection/components/molecules/pump-card/pump-card.js.map +1 -0
  390. package/dist/collection/components/molecules/recipe-selector/recipe-selector.css +13 -0
  391. package/dist/collection/components/molecules/recipe-selector/recipe-selector.js +207 -0
  392. package/dist/collection/components/molecules/recipe-selector/recipe-selector.js.map +1 -0
  393. package/dist/collection/components/molecules/setpoint-control/setpoint-control.css +3 -0
  394. package/dist/collection/components/molecules/setpoint-control/setpoint-control.js +263 -0
  395. package/dist/collection/components/molecules/setpoint-control/setpoint-control.js.map +1 -0
  396. package/dist/collection/components/molecules/sidebar-group/sidebar-group.css +61 -0
  397. package/dist/collection/components/molecules/sidebar-group/sidebar-group.js +117 -0
  398. package/dist/collection/components/molecules/sidebar-group/sidebar-group.js.map +1 -0
  399. package/dist/collection/components/molecules/speed-control/speed-control.css +7 -0
  400. package/dist/collection/components/molecules/speed-control/speed-control.js +251 -0
  401. package/dist/collection/components/molecules/speed-control/speed-control.js.map +1 -0
  402. package/dist/collection/components/molecules/start-stop-control/start-stop-control.css +24 -0
  403. package/dist/collection/components/molecules/start-stop-control/start-stop-control.js +208 -0
  404. package/dist/collection/components/molecules/start-stop-control/start-stop-control.js.map +1 -0
  405. package/dist/collection/components/molecules/tag-card/tag-card.css +7 -0
  406. package/dist/collection/components/molecules/tag-card/tag-card.js +216 -0
  407. package/dist/collection/components/molecules/tag-card/tag-card.js.map +1 -0
  408. package/dist/collection/components/molecules/tank-level-card/tank-level-card.css +7 -0
  409. package/dist/collection/components/molecules/tank-level-card/tank-level-card.js +194 -0
  410. package/dist/collection/components/molecules/tank-level-card/tank-level-card.js.map +1 -0
  411. package/dist/collection/components/molecules/temperature-control/temperature-control.css +15 -0
  412. package/dist/collection/components/molecules/temperature-control/temperature-control.js +294 -0
  413. package/dist/collection/components/molecules/temperature-control/temperature-control.js.map +1 -0
  414. package/dist/collection/components/molecules/toolbar-action/toolbar-action.js +1 -1
  415. package/dist/collection/components/molecules/trend-widget/trend-widget.css +15 -0
  416. package/dist/collection/components/molecules/trend-widget/trend-widget.js +232 -0
  417. package/dist/collection/components/molecules/trend-widget/trend-widget.js.map +1 -0
  418. package/dist/collection/components/molecules/valve-card/valve-card.css +13 -0
  419. package/dist/collection/components/molecules/valve-card/valve-card.js +127 -0
  420. package/dist/collection/components/molecules/valve-card/valve-card.js.map +1 -0
  421. package/dist/collection/components/organisms/_shared/control-panel.css +15 -0
  422. package/dist/collection/components/organisms/_shared/panel.css +96 -0
  423. package/dist/collection/components/organisms/alarm-panel/alarm-panel.css +7 -0
  424. package/dist/collection/components/organisms/alarm-panel/alarm-panel.js +152 -0
  425. package/dist/collection/components/organisms/alarm-panel/alarm-panel.js.map +1 -0
  426. package/dist/collection/components/organisms/alarm-summary/alarm-summary.css +30 -0
  427. package/dist/collection/components/organisms/alarm-summary/alarm-summary.js +158 -0
  428. package/dist/collection/components/organisms/alarm-summary/alarm-summary.js.map +1 -0
  429. package/dist/collection/components/organisms/app-header/app-header.js +1 -1
  430. package/dist/collection/components/organisms/asset-overview/asset-overview.css +34 -0
  431. package/dist/collection/components/organisms/asset-overview/asset-overview.js +82 -0
  432. package/dist/collection/components/organisms/asset-overview/asset-overview.js.map +1 -0
  433. package/dist/collection/components/organisms/batch-control-panel/batch-control-panel.css +45 -0
  434. package/dist/collection/components/organisms/batch-control-panel/batch-control-panel.js +226 -0
  435. package/dist/collection/components/organisms/batch-control-panel/batch-control-panel.js.map +1 -0
  436. package/dist/collection/components/organisms/command-center/command-center.css +7 -0
  437. package/dist/collection/components/organisms/command-center/command-center.js +70 -0
  438. package/dist/collection/components/organisms/command-center/command-center.js.map +1 -0
  439. package/dist/collection/components/organisms/context-toolbar/context-toolbar.css +48 -0
  440. package/dist/collection/components/organisms/context-toolbar/context-toolbar.js +70 -0
  441. package/dist/collection/components/organisms/context-toolbar/context-toolbar.js.map +1 -0
  442. package/dist/collection/components/organisms/device-diagnostics-panel/device-diagnostics-panel.css +43 -0
  443. package/dist/collection/components/organisms/device-diagnostics-panel/device-diagnostics-panel.js +222 -0
  444. package/dist/collection/components/organisms/device-diagnostics-panel/device-diagnostics-panel.js.map +1 -0
  445. package/dist/collection/components/organisms/energy-dashboard/energy-dashboard.css +29 -0
  446. package/dist/collection/components/organisms/energy-dashboard/energy-dashboard.js +134 -0
  447. package/dist/collection/components/organisms/energy-dashboard/energy-dashboard.js.map +1 -0
  448. package/dist/collection/components/organisms/equipment-dashboard/equipment-dashboard.css +3 -0
  449. package/dist/collection/components/organisms/equipment-dashboard/equipment-dashboard.js +71 -0
  450. package/dist/collection/components/organisms/equipment-dashboard/equipment-dashboard.js.map +1 -0
  451. package/dist/collection/components/organisms/event-journal/event-journal.css +17 -0
  452. package/dist/collection/components/organisms/event-journal/event-journal.js +107 -0
  453. package/dist/collection/components/organisms/event-journal/event-journal.js.map +1 -0
  454. package/dist/collection/components/organisms/firmware-update-panel/firmware-update-panel.css +47 -0
  455. package/dist/collection/components/organisms/firmware-update-panel/firmware-update-panel.js +208 -0
  456. package/dist/collection/components/organisms/firmware-update-panel/firmware-update-panel.js.map +1 -0
  457. package/dist/collection/components/organisms/historian-viewer/historian-viewer.css +17 -0
  458. package/dist/collection/components/organisms/historian-viewer/historian-viewer.js +144 -0
  459. package/dist/collection/components/organisms/historian-viewer/historian-viewer.js.map +1 -0
  460. package/dist/collection/components/organisms/machine-overview/machine-overview.css +22 -0
  461. package/dist/collection/components/organisms/machine-overview/machine-overview.js +148 -0
  462. package/dist/collection/components/organisms/machine-overview/machine-overview.js.map +1 -0
  463. package/dist/collection/components/organisms/maintenance-dashboard/maintenance-dashboard.css +48 -0
  464. package/dist/collection/components/organisms/maintenance-dashboard/maintenance-dashboard.js +160 -0
  465. package/dist/collection/components/organisms/maintenance-dashboard/maintenance-dashboard.js.map +1 -0
  466. package/dist/collection/components/organisms/motor-control-panel/motor-control-panel.css +3 -0
  467. package/dist/collection/components/organisms/motor-control-panel/motor-control-panel.js +281 -0
  468. package/dist/collection/components/organisms/motor-control-panel/motor-control-panel.js.map +1 -0
  469. package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.js +1 -1
  470. package/dist/collection/components/organisms/oee-dashboard/oee-dashboard.css +30 -0
  471. package/dist/collection/components/organisms/oee-dashboard/oee-dashboard.js +167 -0
  472. package/dist/collection/components/organisms/oee-dashboard/oee-dashboard.js.map +1 -0
  473. package/dist/collection/components/organisms/process-control-panel/process-control-panel.css +13 -0
  474. package/dist/collection/components/organisms/process-control-panel/process-control-panel.js +344 -0
  475. package/dist/collection/components/organisms/process-control-panel/process-control-panel.js.map +1 -0
  476. package/dist/collection/components/organisms/production-cell/production-cell.css +7 -0
  477. package/dist/collection/components/organisms/production-cell/production-cell.js +121 -0
  478. package/dist/collection/components/organisms/production-cell/production-cell.js.map +1 -0
  479. package/dist/collection/components/organisms/production-dashboard/production-dashboard.css +3 -0
  480. package/dist/collection/components/organisms/production-dashboard/production-dashboard.js +91 -0
  481. package/dist/collection/components/organisms/production-dashboard/production-dashboard.js.map +1 -0
  482. package/dist/collection/components/organisms/production-line-overview/production-line-overview.css +57 -0
  483. package/dist/collection/components/organisms/production-line-overview/production-line-overview.js +76 -0
  484. package/dist/collection/components/organisms/production-line-overview/production-line-overview.js.map +1 -0
  485. package/dist/collection/components/organisms/pump-control-panel/pump-control-panel.css +3 -0
  486. package/dist/collection/components/organisms/pump-control-panel/pump-control-panel.js +217 -0
  487. package/dist/collection/components/organisms/pump-control-panel/pump-control-panel.js.map +1 -0
  488. package/dist/collection/components/organisms/recipe-management-panel/recipe-management-panel.css +10 -0
  489. package/dist/collection/components/organisms/recipe-management-panel/recipe-management-panel.js +205 -0
  490. package/dist/collection/components/organisms/recipe-management-panel/recipe-management-panel.js.map +1 -0
  491. package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.js +1 -1
  492. package/dist/collection/components/organisms/status-bar/status-bar.js +1 -1
  493. package/dist/collection/components/organisms/trend-viewer/trend-viewer.css +45 -0
  494. package/dist/collection/components/organisms/trend-viewer/trend-viewer.js +81 -0
  495. package/dist/collection/components/organisms/trend-viewer/trend-viewer.js.map +1 -0
  496. package/dist/collection/components/organisms/valve-control-panel/valve-control-panel.css +10 -0
  497. package/dist/collection/components/organisms/valve-control-panel/valve-control-panel.js +233 -0
  498. package/dist/collection/components/organisms/valve-control-panel/valve-control-panel.js.map +1 -0
  499. package/dist/collection/components/organisms/workstation-monitor/workstation-monitor.css +30 -0
  500. package/dist/collection/components/organisms/workstation-monitor/workstation-monitor.js +206 -0
  501. package/dist/collection/components/organisms/workstation-monitor/workstation-monitor.js.map +1 -0
  502. package/dist/collection/index.js.map +1 -1
  503. package/dist/components/ind-alarm-badge-group.d.ts +11 -0
  504. package/dist/components/ind-alarm-badge-group.js +2 -0
  505. package/dist/components/ind-alarm-badge-group.js.map +1 -0
  506. package/dist/components/ind-alarm-count.d.ts +11 -0
  507. package/dist/components/ind-alarm-count.js +2 -0
  508. package/dist/components/ind-alarm-count.js.map +1 -0
  509. package/dist/components/ind-alarm-panel.d.ts +11 -0
  510. package/dist/components/ind-alarm-panel.js +2 -0
  511. package/dist/components/ind-alarm-panel.js.map +1 -0
  512. package/dist/components/ind-alarm-row.d.ts +11 -0
  513. package/dist/components/ind-alarm-row.js +2 -0
  514. package/dist/components/ind-alarm-row.js.map +1 -0
  515. package/dist/components/ind-alarm-summary.d.ts +11 -0
  516. package/dist/components/ind-alarm-summary.js +2 -0
  517. package/dist/components/ind-alarm-summary.js.map +1 -0
  518. package/dist/components/ind-app-header.js +1 -1
  519. package/dist/components/ind-asset-overview.d.ts +11 -0
  520. package/dist/components/ind-asset-overview.js +2 -0
  521. package/dist/components/ind-asset-overview.js.map +1 -0
  522. package/dist/components/ind-audit-row.d.ts +11 -0
  523. package/dist/components/ind-audit-row.js +2 -0
  524. package/dist/components/ind-audit-row.js.map +1 -0
  525. package/dist/components/ind-badge.d.ts +11 -0
  526. package/dist/components/ind-badge.js +2 -0
  527. package/dist/components/ind-badge.js.map +1 -0
  528. package/dist/components/ind-batch-control-panel.d.ts +11 -0
  529. package/dist/components/ind-batch-control-panel.js +2 -0
  530. package/dist/components/ind-batch-control-panel.js.map +1 -0
  531. package/dist/components/ind-batch-parameter-row.d.ts +11 -0
  532. package/dist/components/ind-batch-parameter-row.js +2 -0
  533. package/dist/components/ind-batch-parameter-row.js.map +1 -0
  534. package/dist/components/ind-breadcrumb-item.d.ts +11 -0
  535. package/dist/components/ind-breadcrumb-item.js +2 -0
  536. package/dist/components/ind-breadcrumb-item.js.map +1 -0
  537. package/dist/components/ind-button.js +1 -1
  538. package/dist/components/ind-button.js.map +1 -1
  539. package/dist/components/ind-canvas-layer.d.ts +11 -0
  540. package/dist/components/ind-canvas-layer.js +2 -0
  541. package/dist/components/ind-canvas-layer.js.map +1 -0
  542. package/dist/components/ind-checkbox.js +1 -1
  543. package/dist/components/ind-command-center.d.ts +11 -0
  544. package/dist/components/ind-command-center.js +2 -0
  545. package/dist/components/ind-command-center.js.map +1 -0
  546. package/dist/components/ind-command-group.d.ts +11 -0
  547. package/dist/components/ind-command-group.js +2 -0
  548. package/dist/components/ind-command-group.js.map +1 -0
  549. package/dist/components/ind-compressor.d.ts +11 -0
  550. package/dist/components/ind-compressor.js +2 -0
  551. package/dist/components/ind-compressor.js.map +1 -0
  552. package/dist/components/ind-connection-indicator.d.ts +11 -0
  553. package/dist/components/ind-connection-indicator.js +2 -0
  554. package/dist/components/ind-connection-indicator.js.map +1 -0
  555. package/dist/components/ind-context-toolbar.d.ts +11 -0
  556. package/dist/components/ind-context-toolbar.js +2 -0
  557. package/dist/components/ind-context-toolbar.js.map +1 -0
  558. package/dist/components/ind-conveyor.d.ts +11 -0
  559. package/dist/components/ind-conveyor.js +2 -0
  560. package/dist/components/ind-conveyor.js.map +1 -0
  561. package/dist/components/ind-cooler.d.ts +11 -0
  562. package/dist/components/ind-cooler.js +2 -0
  563. package/dist/components/ind-cooler.js.map +1 -0
  564. package/dist/components/ind-counter.d.ts +11 -0
  565. package/dist/components/ind-counter.js +2 -0
  566. package/dist/components/ind-counter.js.map +1 -0
  567. package/dist/components/ind-datetime-picker.d.ts +11 -0
  568. package/dist/components/ind-datetime-picker.js +2 -0
  569. package/dist/components/ind-datetime-picker.js.map +1 -0
  570. package/dist/components/ind-device-connection-card.d.ts +11 -0
  571. package/dist/components/ind-device-connection-card.js +2 -0
  572. package/dist/components/ind-device-connection-card.js.map +1 -0
  573. package/dist/components/ind-device-diagnostics-panel.d.ts +11 -0
  574. package/dist/components/ind-device-diagnostics-panel.js +2 -0
  575. package/dist/components/ind-device-diagnostics-panel.js.map +1 -0
  576. package/dist/components/ind-device-info-card.d.ts +11 -0
  577. package/dist/components/ind-device-info-card.js +2 -0
  578. package/dist/components/ind-device-info-card.js.map +1 -0
  579. package/dist/components/ind-dialog.js +1 -1
  580. package/dist/components/ind-divider.js +1 -1
  581. package/dist/components/ind-energy-card.d.ts +11 -0
  582. package/dist/components/ind-energy-card.js +2 -0
  583. package/dist/components/ind-energy-card.js.map +1 -0
  584. package/dist/components/ind-energy-dashboard.d.ts +11 -0
  585. package/dist/components/ind-energy-dashboard.js +2 -0
  586. package/dist/components/ind-energy-dashboard.js.map +1 -0
  587. package/dist/components/ind-equipment-dashboard.d.ts +11 -0
  588. package/dist/components/ind-equipment-dashboard.js +2 -0
  589. package/dist/components/ind-equipment-dashboard.js.map +1 -0
  590. package/dist/components/ind-equipment-status-card.d.ts +11 -0
  591. package/dist/components/ind-equipment-status-card.js +2 -0
  592. package/dist/components/ind-equipment-status-card.js.map +1 -0
  593. package/dist/components/ind-estop.d.ts +11 -0
  594. package/dist/components/ind-estop.js +2 -0
  595. package/dist/components/ind-estop.js.map +1 -0
  596. package/dist/components/ind-event-journal.d.ts +11 -0
  597. package/dist/components/ind-event-journal.js +2 -0
  598. package/dist/components/ind-event-journal.js.map +1 -0
  599. package/dist/components/ind-event-row.d.ts +11 -0
  600. package/dist/components/ind-event-row.js +2 -0
  601. package/dist/components/ind-event-row.js.map +1 -0
  602. package/dist/components/ind-fan.d.ts +11 -0
  603. package/dist/components/ind-fan.js +2 -0
  604. package/dist/components/ind-fan.js.map +1 -0
  605. package/dist/components/ind-fill-row.js +1 -1
  606. package/dist/components/ind-firmware-update-panel.d.ts +11 -0
  607. package/dist/components/ind-firmware-update-panel.js +2 -0
  608. package/dist/components/ind-firmware-update-panel.js.map +1 -0
  609. package/dist/components/ind-gauge.d.ts +11 -0
  610. package/dist/components/ind-gauge.js +2 -0
  611. package/dist/components/ind-gauge.js.map +1 -0
  612. package/dist/components/ind-health-card.js +1 -1
  613. package/dist/components/ind-heartbeat.d.ts +11 -0
  614. package/dist/components/ind-heartbeat.js +2 -0
  615. package/dist/components/ind-heartbeat.js.map +1 -0
  616. package/dist/components/ind-heater.d.ts +11 -0
  617. package/dist/components/ind-heater.js +2 -0
  618. package/dist/components/ind-heater.js.map +1 -0
  619. package/dist/components/ind-historian-viewer.d.ts +11 -0
  620. package/dist/components/ind-historian-viewer.js +2 -0
  621. package/dist/components/ind-historian-viewer.js.map +1 -0
  622. package/dist/components/ind-historical-value-row.d.ts +11 -0
  623. package/dist/components/ind-historical-value-row.js +2 -0
  624. package/dist/components/ind-historical-value-row.js.map +1 -0
  625. package/dist/components/ind-icon.d.ts +11 -0
  626. package/dist/components/ind-icon.js +2 -0
  627. package/dist/components/ind-icon.js.map +1 -0
  628. package/dist/components/ind-input.js +1 -1
  629. package/dist/components/ind-input.js.map +1 -1
  630. package/dist/components/ind-knob.d.ts +11 -0
  631. package/dist/components/ind-knob.js +2 -0
  632. package/dist/components/ind-knob.js.map +1 -0
  633. package/dist/components/ind-kpi-card.d.ts +11 -0
  634. package/dist/components/ind-kpi-card.js +2 -0
  635. package/dist/components/ind-kpi-card.js.map +1 -0
  636. package/dist/components/ind-label.d.ts +11 -0
  637. package/dist/components/ind-label.js +2 -0
  638. package/dist/components/ind-label.js.map +1 -0
  639. package/dist/components/ind-led.js +1 -1
  640. package/dist/components/ind-led.js.map +1 -1
  641. package/dist/components/ind-linear-gauge.d.ts +11 -0
  642. package/dist/components/ind-linear-gauge.js +2 -0
  643. package/dist/components/ind-linear-gauge.js.map +1 -0
  644. package/dist/components/ind-machine-overview.d.ts +11 -0
  645. package/dist/components/ind-machine-overview.js +2 -0
  646. package/dist/components/ind-machine-overview.js.map +1 -0
  647. package/dist/components/ind-maintenance-dashboard.d.ts +11 -0
  648. package/dist/components/ind-maintenance-dashboard.js +2 -0
  649. package/dist/components/ind-maintenance-dashboard.js.map +1 -0
  650. package/dist/components/ind-mode-selector.d.ts +11 -0
  651. package/dist/components/ind-mode-selector.js +2 -0
  652. package/dist/components/ind-mode-selector.js.map +1 -0
  653. package/dist/components/ind-motor-card.d.ts +11 -0
  654. package/dist/components/ind-motor-card.js +2 -0
  655. package/dist/components/ind-motor-card.js.map +1 -0
  656. package/dist/components/ind-motor-control-panel.d.ts +11 -0
  657. package/dist/components/ind-motor-control-panel.js +2 -0
  658. package/dist/components/ind-motor-control-panel.js.map +1 -0
  659. package/dist/components/ind-motor.d.ts +11 -0
  660. package/dist/components/ind-motor.js +2 -0
  661. package/dist/components/ind-motor.js.map +1 -0
  662. package/dist/components/ind-mqtt-monitor.js +1 -1
  663. package/dist/components/ind-mqtt-tag-binding.d.ts +11 -0
  664. package/dist/components/ind-mqtt-tag-binding.js +2 -0
  665. package/dist/components/ind-mqtt-tag-binding.js.map +1 -0
  666. package/dist/components/ind-nav-item.js +1 -1
  667. package/dist/components/ind-network-status-card.d.ts +11 -0
  668. package/dist/components/ind-network-status-card.js +2 -0
  669. package/dist/components/ind-network-status-card.js.map +1 -0
  670. package/dist/components/ind-oee-dashboard.d.ts +11 -0
  671. package/dist/components/ind-oee-dashboard.js +2 -0
  672. package/dist/components/ind-oee-dashboard.js.map +1 -0
  673. package/dist/components/ind-opcua-tag-binding.d.ts +11 -0
  674. package/dist/components/ind-opcua-tag-binding.js +2 -0
  675. package/dist/components/ind-opcua-tag-binding.js.map +1 -0
  676. package/dist/components/ind-pipe.d.ts +11 -0
  677. package/dist/components/ind-pipe.js +2 -0
  678. package/dist/components/ind-pipe.js.map +1 -0
  679. package/dist/components/ind-process-control-panel.d.ts +11 -0
  680. package/dist/components/ind-process-control-panel.js +2 -0
  681. package/dist/components/ind-process-control-panel.js.map +1 -0
  682. package/dist/components/ind-process-symbol.d.ts +11 -0
  683. package/dist/components/ind-process-symbol.js +2 -0
  684. package/dist/components/ind-process-symbol.js.map +1 -0
  685. package/dist/components/ind-production-cell.d.ts +11 -0
  686. package/dist/components/ind-production-cell.js +2 -0
  687. package/dist/components/ind-production-cell.js.map +1 -0
  688. package/dist/components/ind-production-dashboard.d.ts +11 -0
  689. package/dist/components/ind-production-dashboard.js +2 -0
  690. package/dist/components/ind-production-dashboard.js.map +1 -0
  691. package/dist/components/ind-production-line-overview.d.ts +11 -0
  692. package/dist/components/ind-production-line-overview.js +2 -0
  693. package/dist/components/ind-production-line-overview.js.map +1 -0
  694. package/dist/components/ind-progress-ring.d.ts +11 -0
  695. package/dist/components/ind-progress-ring.js +2 -0
  696. package/dist/components/ind-progress-ring.js.map +1 -0
  697. package/dist/components/ind-progress.js +1 -1
  698. package/dist/components/ind-pump-card.d.ts +11 -0
  699. package/dist/components/ind-pump-card.js +2 -0
  700. package/dist/components/ind-pump-card.js.map +1 -0
  701. package/dist/components/ind-pump-control-panel.d.ts +11 -0
  702. package/dist/components/ind-pump-control-panel.js +2 -0
  703. package/dist/components/ind-pump-control-panel.js.map +1 -0
  704. package/dist/components/ind-pump.d.ts +11 -0
  705. package/dist/components/ind-pump.js +2 -0
  706. package/dist/components/ind-pump.js.map +1 -0
  707. package/dist/components/ind-recipe-management-panel.d.ts +11 -0
  708. package/dist/components/ind-recipe-management-panel.js +2 -0
  709. package/dist/components/ind-recipe-management-panel.js.map +1 -0
  710. package/dist/components/ind-recipe-selector.d.ts +11 -0
  711. package/dist/components/ind-recipe-selector.js +2 -0
  712. package/dist/components/ind-recipe-selector.js.map +1 -0
  713. package/dist/components/ind-scara-canvas.js +1 -1
  714. package/dist/components/ind-select.js +1 -1
  715. package/dist/components/ind-select.js.map +1 -1
  716. package/dist/components/ind-selector-switch.d.ts +11 -0
  717. package/dist/components/ind-selector-switch.js +2 -0
  718. package/dist/components/ind-selector-switch.js.map +1 -0
  719. package/dist/components/ind-setpoint-control.d.ts +11 -0
  720. package/dist/components/ind-setpoint-control.js +2 -0
  721. package/dist/components/ind-setpoint-control.js.map +1 -0
  722. package/dist/components/ind-setpoint.d.ts +11 -0
  723. package/dist/components/ind-setpoint.js +2 -0
  724. package/dist/components/ind-setpoint.js.map +1 -0
  725. package/dist/components/ind-shelf-canvas.js +1 -1
  726. package/dist/components/ind-sidebar-group.d.ts +11 -0
  727. package/dist/components/ind-sidebar-group.js +2 -0
  728. package/dist/components/ind-sidebar-group.js.map +1 -0
  729. package/dist/components/ind-sidebar-nav.js +1 -1
  730. package/dist/components/ind-signal-quality.d.ts +11 -0
  731. package/dist/components/ind-signal-quality.js +2 -0
  732. package/dist/components/ind-signal-quality.js.map +1 -0
  733. package/dist/components/ind-silo.d.ts +11 -0
  734. package/dist/components/ind-silo.js +2 -0
  735. package/dist/components/ind-silo.js.map +1 -0
  736. package/dist/components/ind-slider.d.ts +11 -0
  737. package/dist/components/ind-slider.js +2 -0
  738. package/dist/components/ind-slider.js.map +1 -0
  739. package/dist/components/ind-sparkline.d.ts +11 -0
  740. package/dist/components/ind-sparkline.js +2 -0
  741. package/dist/components/ind-sparkline.js.map +1 -0
  742. package/dist/components/ind-speed-control.d.ts +11 -0
  743. package/dist/components/ind-speed-control.js +2 -0
  744. package/dist/components/ind-speed-control.js.map +1 -0
  745. package/dist/components/ind-start-stop-control.d.ts +11 -0
  746. package/dist/components/ind-start-stop-control.js +2 -0
  747. package/dist/components/ind-start-stop-control.js.map +1 -0
  748. package/dist/components/ind-status-bar.js +1 -1
  749. package/dist/components/ind-status-bar.js.map +1 -1
  750. package/dist/components/ind-tab.d.ts +11 -0
  751. package/dist/components/ind-tab.js +2 -0
  752. package/dist/components/ind-tab.js.map +1 -0
  753. package/dist/components/ind-tag-card.d.ts +11 -0
  754. package/dist/components/ind-tag-card.js +2 -0
  755. package/dist/components/ind-tag-card.js.map +1 -0
  756. package/dist/components/ind-tag-name.d.ts +11 -0
  757. package/dist/components/ind-tag-name.js +2 -0
  758. package/dist/components/ind-tag-name.js.map +1 -0
  759. package/dist/components/ind-tank-level-card.d.ts +11 -0
  760. package/dist/components/ind-tank-level-card.js +2 -0
  761. package/dist/components/ind-tank-level-card.js.map +1 -0
  762. package/dist/components/ind-tank.d.ts +11 -0
  763. package/dist/components/ind-tank.js +2 -0
  764. package/dist/components/ind-tank.js.map +1 -0
  765. package/dist/components/ind-temperature-control.d.ts +11 -0
  766. package/dist/components/ind-temperature-control.js +2 -0
  767. package/dist/components/ind-temperature-control.js.map +1 -0
  768. package/dist/components/ind-textarea.js +1 -1
  769. package/dist/components/ind-timestamp.d.ts +11 -0
  770. package/dist/components/ind-timestamp.js +2 -0
  771. package/dist/components/ind-timestamp.js.map +1 -0
  772. package/dist/components/ind-toggle.d.ts +11 -0
  773. package/dist/components/ind-toggle.js +2 -0
  774. package/dist/components/ind-toggle.js.map +1 -0
  775. package/dist/components/ind-toolbar-action.js +1 -1
  776. package/dist/components/ind-tree-node.d.ts +11 -0
  777. package/dist/components/ind-tree-node.js +2 -0
  778. package/dist/components/ind-tree-node.js.map +1 -0
  779. package/dist/components/ind-trend-viewer.d.ts +11 -0
  780. package/dist/components/ind-trend-viewer.js +2 -0
  781. package/dist/components/ind-trend-viewer.js.map +1 -0
  782. package/dist/components/ind-trend-widget.d.ts +11 -0
  783. package/dist/components/ind-trend-widget.js +2 -0
  784. package/dist/components/ind-trend-widget.js.map +1 -0
  785. package/dist/components/ind-unit-label.d.ts +11 -0
  786. package/dist/components/ind-unit-label.js +2 -0
  787. package/dist/components/ind-unit-label.js.map +1 -0
  788. package/dist/components/ind-value.js +1 -1
  789. package/dist/components/ind-value.js.map +1 -1
  790. package/dist/components/ind-valve-card.d.ts +11 -0
  791. package/dist/components/ind-valve-card.js +2 -0
  792. package/dist/components/ind-valve-card.js.map +1 -0
  793. package/dist/components/ind-valve-control-panel.d.ts +11 -0
  794. package/dist/components/ind-valve-control-panel.js +2 -0
  795. package/dist/components/ind-valve-control-panel.js.map +1 -0
  796. package/dist/components/ind-valve.js +1 -1
  797. package/dist/components/ind-valve.js.map +1 -1
  798. package/dist/components/ind-workstation-monitor.d.ts +11 -0
  799. package/dist/components/ind-workstation-monitor.js +2 -0
  800. package/dist/components/ind-workstation-monitor.js.map +1 -0
  801. package/dist/components/ind-xy-point.d.ts +11 -0
  802. package/dist/components/ind-xy-point.js +2 -0
  803. package/dist/components/ind-xy-point.js.map +1 -0
  804. package/dist/components/index.js +1 -1
  805. package/dist/components/index.js.map +1 -1
  806. package/dist/components/p-5RlFcxee.js +2 -0
  807. package/dist/components/p-5RlFcxee.js.map +1 -0
  808. package/dist/components/p-6RTRR-qH.js +2 -0
  809. package/dist/components/p-6RTRR-qH.js.map +1 -0
  810. package/dist/components/p-B-KVhtvw.js +2 -0
  811. package/dist/components/p-B-KVhtvw.js.map +1 -0
  812. package/dist/components/p-B-dXQIRL.js +2 -0
  813. package/dist/components/p-B-dXQIRL.js.map +1 -0
  814. package/dist/components/p-B0kcsf9E.js +2 -0
  815. package/dist/components/p-B0kcsf9E.js.map +1 -0
  816. package/dist/components/p-B4gtNdKu.js +2 -0
  817. package/dist/components/p-B4gtNdKu.js.map +1 -0
  818. package/dist/components/p-BEmLi4hz.js +2 -0
  819. package/dist/components/p-BEmLi4hz.js.map +1 -0
  820. package/dist/components/p-BFESjyKK.js +2 -0
  821. package/dist/components/p-BFESjyKK.js.map +1 -0
  822. package/dist/components/p-BInyhy9s.js +2 -0
  823. package/dist/components/p-BInyhy9s.js.map +1 -0
  824. package/dist/components/p-BW8uYv_d.js +2 -0
  825. package/dist/components/p-BW8uYv_d.js.map +1 -0
  826. package/dist/components/p-BdjJnR7Z.js +2 -0
  827. package/dist/components/p-BdjJnR7Z.js.map +1 -0
  828. package/dist/components/p-BfWZu0jH.js +2 -0
  829. package/dist/components/p-BfWZu0jH.js.map +1 -0
  830. package/dist/components/p-Bo4OFmkA.js +2 -0
  831. package/dist/components/p-Bo4OFmkA.js.map +1 -0
  832. package/dist/components/p-CA0CnZe7.js +2 -0
  833. package/dist/components/p-CA0CnZe7.js.map +1 -0
  834. package/dist/components/p-CDXZCm5V.js +2 -0
  835. package/dist/components/p-CDXZCm5V.js.map +1 -0
  836. package/dist/components/p-CICnxqic.js +2 -0
  837. package/dist/components/p-CICnxqic.js.map +1 -0
  838. package/dist/components/p-CJi2bLBO.js +2 -0
  839. package/dist/components/p-CJi2bLBO.js.map +1 -0
  840. package/dist/components/p-CNo94Sf0.js +2 -0
  841. package/dist/components/p-CNo94Sf0.js.map +1 -0
  842. package/dist/components/p-CRSC4h1X.js +2 -0
  843. package/dist/components/p-CRSC4h1X.js.map +1 -0
  844. package/dist/components/p-CUfsFNIv.js +2 -0
  845. package/dist/components/p-CUfsFNIv.js.map +1 -0
  846. package/dist/components/p-CVo-n5Qd.js +2 -0
  847. package/dist/components/p-CVo-n5Qd.js.map +1 -0
  848. package/dist/components/p-Ca70rR-o.js +2 -0
  849. package/dist/components/p-Ca70rR-o.js.map +1 -0
  850. package/dist/components/p-Cvkpsp6g.js +2 -0
  851. package/dist/components/p-Cvkpsp6g.js.map +1 -0
  852. package/dist/components/p-D3gnEPFv.js +2 -0
  853. package/dist/components/p-D3gnEPFv.js.map +1 -0
  854. package/dist/components/{p-acsAzrRn.js → p-D79nNJVt.js} +2 -2
  855. package/dist/components/p-DA_BMXS3.js +2 -0
  856. package/dist/components/p-DA_BMXS3.js.map +1 -0
  857. package/dist/components/p-DC9NDak5.js +2 -0
  858. package/dist/components/p-DC9NDak5.js.map +1 -0
  859. package/dist/components/p-DGb-eiYo.js +2 -0
  860. package/dist/components/p-DGb-eiYo.js.map +1 -0
  861. package/dist/components/p-DGgGNwxv.js +2 -0
  862. package/dist/components/p-DGgGNwxv.js.map +1 -0
  863. package/dist/components/p-DZD3LczI.js +2 -0
  864. package/dist/components/p-DZD3LczI.js.map +1 -0
  865. package/dist/components/p-Dk2CwpEp.js +2 -0
  866. package/dist/components/p-Dk2CwpEp.js.map +1 -0
  867. package/dist/components/p-Dnxar2_f.js +2 -0
  868. package/dist/components/p-Dnxar2_f.js.map +1 -0
  869. package/dist/components/p-Dp1wiEsR.js +2 -0
  870. package/dist/components/p-Dp1wiEsR.js.map +1 -0
  871. package/dist/components/p-WD-5DMF4.js +2 -0
  872. package/dist/components/p-WD-5DMF4.js.map +1 -0
  873. package/dist/components/p-yllNHAkG.js +2 -0
  874. package/dist/components/p-yllNHAkG.js.map +1 -0
  875. package/dist/docs.json +23264 -2308
  876. package/dist/esm/ind-alarm-badge-group.entry.js +39 -0
  877. package/dist/esm/ind-alarm-badge-group.entry.js.map +1 -0
  878. package/dist/esm/ind-alarm-count.entry.js +40 -0
  879. package/dist/esm/ind-alarm-count.entry.js.map +1 -0
  880. package/dist/esm/ind-alarm-panel.entry.js +49 -0
  881. package/dist/esm/ind-alarm-panel.entry.js.map +1 -0
  882. package/dist/esm/ind-alarm-row.entry.js +39 -0
  883. package/dist/esm/ind-alarm-row.entry.js.map +1 -0
  884. package/dist/esm/ind-alarm-summary.entry.js +30 -0
  885. package/dist/esm/ind-alarm-summary.entry.js.map +1 -0
  886. package/dist/esm/ind-alarm.entry.js +1 -1
  887. package/dist/esm/ind-app-header.entry.js +2 -2
  888. package/dist/esm/ind-asset-overview.entry.js +31 -0
  889. package/dist/esm/ind-asset-overview.entry.js.map +1 -0
  890. package/dist/esm/ind-audit-row.entry.js +28 -0
  891. package/dist/esm/ind-audit-row.entry.js.map +1 -0
  892. package/dist/esm/ind-badge.entry.js +24 -0
  893. package/dist/esm/ind-badge.entry.js.map +1 -0
  894. package/dist/esm/ind-batch-control-panel.entry.js +46 -0
  895. package/dist/esm/ind-batch-control-panel.entry.js.map +1 -0
  896. package/dist/esm/{ind-input.entry.js → ind-batch-parameter-row_2.entry.js} +50 -5
  897. package/dist/esm/ind-batch-parameter-row_2.entry.js.map +1 -0
  898. package/dist/esm/ind-breadcrumb-item.entry.js +35 -0
  899. package/dist/esm/ind-breadcrumb-item.entry.js.map +1 -0
  900. package/dist/esm/ind-button.entry.js +2 -2
  901. package/dist/esm/ind-canvas-layer.entry.js +36 -0
  902. package/dist/esm/ind-canvas-layer.entry.js.map +1 -0
  903. package/dist/esm/ind-checkbox.entry.js +2 -2
  904. package/dist/esm/ind-command-center.entry.js +23 -0
  905. package/dist/esm/ind-command-center.entry.js.map +1 -0
  906. package/dist/esm/ind-command-group.entry.js +24 -0
  907. package/dist/esm/ind-command-group.entry.js.map +1 -0
  908. package/dist/esm/ind-compressor.entry.js +29 -0
  909. package/dist/esm/ind-compressor.entry.js.map +1 -0
  910. package/dist/esm/ind-connection-indicator.entry.js +31 -0
  911. package/dist/esm/ind-connection-indicator.entry.js.map +1 -0
  912. package/dist/esm/ind-context-toolbar.entry.js +22 -0
  913. package/dist/esm/ind-context-toolbar.entry.js.map +1 -0
  914. package/dist/esm/ind-conveyor.entry.js +31 -0
  915. package/dist/esm/ind-conveyor.entry.js.map +1 -0
  916. package/dist/esm/ind-cooler.entry.js +29 -0
  917. package/dist/esm/ind-cooler.entry.js.map +1 -0
  918. package/dist/esm/ind-counter.entry.js +36 -0
  919. package/dist/esm/ind-counter.entry.js.map +1 -0
  920. package/dist/esm/ind-datetime-picker.entry.js +46 -0
  921. package/dist/esm/ind-datetime-picker.entry.js.map +1 -0
  922. package/dist/esm/ind-device-connection-card.entry.js +30 -0
  923. package/dist/esm/ind-device-connection-card.entry.js.map +1 -0
  924. package/dist/esm/ind-device-diagnostics-panel.entry.js +32 -0
  925. package/dist/esm/ind-device-diagnostics-panel.entry.js.map +1 -0
  926. package/dist/esm/ind-device-info-card.entry.js +46 -0
  927. package/dist/esm/ind-device-info-card.entry.js.map +1 -0
  928. package/dist/esm/ind-dialog.entry.js +2 -2
  929. package/dist/esm/ind-divider.entry.js +2 -2
  930. package/dist/esm/ind-ds.js +3 -3
  931. package/dist/esm/ind-energy-card.entry.js +38 -0
  932. package/dist/esm/ind-energy-card.entry.js.map +1 -0
  933. package/dist/esm/ind-energy-dashboard.entry.js +29 -0
  934. package/dist/esm/ind-energy-dashboard.entry.js.map +1 -0
  935. package/dist/esm/ind-equipment-dashboard.entry.js +23 -0
  936. package/dist/esm/ind-equipment-dashboard.entry.js.map +1 -0
  937. package/dist/esm/ind-equipment-status-card.entry.js +40 -0
  938. package/dist/esm/ind-equipment-status-card.entry.js.map +1 -0
  939. package/dist/esm/ind-estop.entry.js +45 -0
  940. package/dist/esm/ind-estop.entry.js.map +1 -0
  941. package/dist/esm/ind-event-journal.entry.js +29 -0
  942. package/dist/esm/ind-event-journal.entry.js.map +1 -0
  943. package/dist/esm/ind-event-row.entry.js +28 -0
  944. package/dist/esm/ind-event-row.entry.js.map +1 -0
  945. package/dist/esm/ind-fan.entry.js +29 -0
  946. package/dist/esm/ind-fan.entry.js.map +1 -0
  947. package/dist/esm/ind-fill-row.entry.js +2 -2
  948. package/dist/esm/ind-firmware-update-panel.entry.js +47 -0
  949. package/dist/esm/ind-firmware-update-panel.entry.js.map +1 -0
  950. package/dist/esm/ind-gauge.entry.js +65 -0
  951. package/dist/esm/ind-gauge.entry.js.map +1 -0
  952. package/dist/esm/ind-health-card.entry.js +2 -2
  953. package/dist/esm/ind-heartbeat.entry.js +26 -0
  954. package/dist/esm/ind-heartbeat.entry.js.map +1 -0
  955. package/dist/esm/ind-heater.entry.js +29 -0
  956. package/dist/esm/ind-heater.entry.js.map +1 -0
  957. package/dist/esm/ind-historian-viewer.entry.js +36 -0
  958. package/dist/esm/ind-historian-viewer.entry.js.map +1 -0
  959. package/dist/esm/ind-historical-value-row.entry.js +44 -0
  960. package/dist/esm/ind-historical-value-row.entry.js.map +1 -0
  961. package/dist/esm/ind-icon.entry.js +44 -0
  962. package/dist/esm/ind-icon.entry.js.map +1 -0
  963. package/dist/esm/ind-knob_3.entry.js +194 -0
  964. package/dist/esm/ind-knob_3.entry.js.map +1 -0
  965. package/dist/esm/ind-kpi-card.entry.js +44 -0
  966. package/dist/esm/ind-kpi-card.entry.js.map +1 -0
  967. package/dist/esm/ind-label.entry.js +29 -0
  968. package/dist/esm/ind-label.entry.js.map +1 -0
  969. package/dist/esm/ind-led_4.entry.js +145 -0
  970. package/dist/esm/ind-led_4.entry.js.map +1 -0
  971. package/dist/esm/ind-linear-gauge_2.entry.js +97 -0
  972. package/dist/esm/ind-linear-gauge_2.entry.js.map +1 -0
  973. package/dist/esm/ind-machine-overview.entry.js +37 -0
  974. package/dist/esm/ind-machine-overview.entry.js.map +1 -0
  975. package/dist/esm/ind-maintenance-dashboard.entry.js +31 -0
  976. package/dist/esm/ind-maintenance-dashboard.entry.js.map +1 -0
  977. package/dist/esm/ind-motor-card.entry.js +35 -0
  978. package/dist/esm/ind-motor-card.entry.js.map +1 -0
  979. package/dist/esm/ind-motor-control-panel.entry.js +55 -0
  980. package/dist/esm/ind-motor-control-panel.entry.js.map +1 -0
  981. package/dist/esm/ind-motor.entry.js +29 -0
  982. package/dist/esm/ind-motor.entry.js.map +1 -0
  983. package/dist/esm/ind-mqtt-monitor.entry.js +2 -2
  984. package/dist/esm/ind-mqtt-tag-binding.entry.js +37 -0
  985. package/dist/esm/ind-mqtt-tag-binding.entry.js.map +1 -0
  986. package/dist/esm/ind-nav-item.entry.js +4 -4
  987. package/dist/esm/ind-network-status-card.entry.js +37 -0
  988. package/dist/esm/ind-network-status-card.entry.js.map +1 -0
  989. package/dist/esm/ind-oee-dashboard.entry.js +42 -0
  990. package/dist/esm/ind-oee-dashboard.entry.js.map +1 -0
  991. package/dist/esm/ind-opcua-tag-binding.entry.js +40 -0
  992. package/dist/esm/ind-opcua-tag-binding.entry.js.map +1 -0
  993. package/dist/esm/ind-pipe.entry.js +35 -0
  994. package/dist/esm/ind-pipe.entry.js.map +1 -0
  995. package/dist/esm/ind-process-control-panel.entry.js +55 -0
  996. package/dist/esm/ind-process-control-panel.entry.js.map +1 -0
  997. package/dist/esm/ind-process-symbol.entry.js +42 -0
  998. package/dist/esm/ind-process-symbol.entry.js.map +1 -0
  999. package/dist/esm/ind-production-cell.entry.js +28 -0
  1000. package/dist/esm/ind-production-cell.entry.js.map +1 -0
  1001. package/dist/esm/ind-production-dashboard.entry.js +25 -0
  1002. package/dist/esm/ind-production-dashboard.entry.js.map +1 -0
  1003. package/dist/esm/ind-production-line-overview.entry.js +25 -0
  1004. package/dist/esm/ind-production-line-overview.entry.js.map +1 -0
  1005. package/dist/esm/ind-progress-ring.entry.js +45 -0
  1006. package/dist/esm/ind-progress-ring.entry.js.map +1 -0
  1007. package/dist/esm/ind-progress.entry.js +2 -2
  1008. package/dist/esm/ind-pump-card.entry.js +37 -0
  1009. package/dist/esm/ind-pump-card.entry.js.map +1 -0
  1010. package/dist/esm/ind-pump-control-panel.entry.js +45 -0
  1011. package/dist/esm/ind-pump-control-panel.entry.js.map +1 -0
  1012. package/dist/esm/ind-pump.entry.js +29 -0
  1013. package/dist/esm/ind-pump.entry.js.map +1 -0
  1014. package/dist/esm/ind-recipe-management-panel.entry.js +46 -0
  1015. package/dist/esm/ind-recipe-management-panel.entry.js.map +1 -0
  1016. package/dist/esm/ind-recipe-selector.entry.js +44 -0
  1017. package/dist/esm/ind-recipe-selector.entry.js.map +1 -0
  1018. package/dist/esm/ind-scara-canvas.entry.js +2 -2
  1019. package/dist/esm/ind-select.entry.js +2 -2
  1020. package/dist/esm/ind-setpoint-control.entry.js +43 -0
  1021. package/dist/esm/ind-setpoint-control.entry.js.map +1 -0
  1022. package/dist/esm/ind-setpoint.entry.js +65 -0
  1023. package/dist/esm/ind-setpoint.entry.js.map +1 -0
  1024. package/dist/esm/ind-shelf-canvas.entry.js +2 -2
  1025. package/dist/esm/ind-sidebar-group.entry.js +32 -0
  1026. package/dist/esm/ind-sidebar-group.entry.js.map +1 -0
  1027. package/dist/esm/ind-sidebar-nav.entry.js +2 -2
  1028. package/dist/esm/ind-signal-quality.entry.js +39 -0
  1029. package/dist/esm/ind-signal-quality.entry.js.map +1 -0
  1030. package/dist/esm/ind-silo.entry.js +40 -0
  1031. package/dist/esm/ind-silo.entry.js.map +1 -0
  1032. package/dist/esm/ind-sparkline.entry.js +56 -0
  1033. package/dist/esm/ind-sparkline.entry.js.map +1 -0
  1034. package/dist/esm/ind-status-bar.entry.js +2 -2
  1035. package/dist/esm/ind-status-dot.entry.js +1 -1
  1036. package/dist/esm/ind-tab.entry.js +38 -0
  1037. package/dist/esm/ind-tab.entry.js.map +1 -0
  1038. package/dist/esm/ind-tag-card.entry.js +36 -0
  1039. package/dist/esm/ind-tag-card.entry.js.map +1 -0
  1040. package/dist/esm/ind-tag-name.entry.js +24 -0
  1041. package/dist/esm/ind-tag-name.entry.js.map +1 -0
  1042. package/dist/esm/ind-tank-level-card.entry.js +39 -0
  1043. package/dist/esm/ind-tank-level-card.entry.js.map +1 -0
  1044. package/dist/esm/ind-temperature-control.entry.js +47 -0
  1045. package/dist/esm/ind-temperature-control.entry.js.map +1 -0
  1046. package/dist/esm/ind-textarea.entry.js +2 -2
  1047. package/dist/esm/ind-timestamp.entry.js +72 -0
  1048. package/dist/esm/ind-timestamp.entry.js.map +1 -0
  1049. package/dist/esm/ind-toggle.entry.js +45 -0
  1050. package/dist/esm/ind-toggle.entry.js.map +1 -0
  1051. package/dist/esm/ind-toolbar-action.entry.js +2 -2
  1052. package/dist/esm/ind-tree-node.entry.js +58 -0
  1053. package/dist/esm/ind-tree-node.entry.js.map +1 -0
  1054. package/dist/esm/ind-trend-viewer.entry.js +29 -0
  1055. package/dist/esm/ind-trend-viewer.entry.js.map +1 -0
  1056. package/dist/esm/ind-trend-widget.entry.js +46 -0
  1057. package/dist/esm/ind-trend-widget.entry.js.map +1 -0
  1058. package/dist/esm/ind-unit-label.entry.js +22 -0
  1059. package/dist/esm/ind-unit-label.entry.js.map +1 -0
  1060. package/dist/esm/ind-value.entry.js +2 -2
  1061. package/dist/esm/ind-valve-card.entry.js +38 -0
  1062. package/dist/esm/ind-valve-card.entry.js.map +1 -0
  1063. package/dist/esm/ind-valve-control-panel.entry.js +44 -0
  1064. package/dist/esm/ind-valve-control-panel.entry.js.map +1 -0
  1065. package/dist/esm/ind-valve.entry.js +2 -2
  1066. package/dist/esm/ind-workstation-monitor.entry.js +36 -0
  1067. package/dist/esm/ind-workstation-monitor.entry.js.map +1 -0
  1068. package/dist/esm/ind-xy-point.entry.js +49 -0
  1069. package/dist/esm/ind-xy-point.entry.js.map +1 -0
  1070. package/dist/esm/{index-D2yNiL0d.js → index-Bls_NlWP.js} +39 -2
  1071. package/dist/esm/index-Bls_NlWP.js.map +1 -0
  1072. package/dist/esm/loader.js +3 -3
  1073. package/dist/ind-ds/ind-ds.esm.js +1 -1
  1074. package/dist/ind-ds/{p-ea24a59d.entry.js → p-00d22e4b.entry.js} +2 -2
  1075. package/dist/ind-ds/p-06c09435.entry.js +2 -0
  1076. package/dist/ind-ds/p-06c09435.entry.js.map +1 -0
  1077. package/dist/ind-ds/p-088010f1.entry.js +2 -0
  1078. package/dist/ind-ds/p-088010f1.entry.js.map +1 -0
  1079. package/dist/ind-ds/{p-8817625a.entry.js → p-094ac159.entry.js} +2 -2
  1080. package/dist/ind-ds/p-12242d8c.entry.js +2 -0
  1081. package/dist/ind-ds/p-12242d8c.entry.js.map +1 -0
  1082. package/dist/ind-ds/p-12a5951f.entry.js +2 -0
  1083. package/dist/ind-ds/p-12a5951f.entry.js.map +1 -0
  1084. package/dist/ind-ds/p-13be3eaf.entry.js +2 -0
  1085. package/dist/ind-ds/p-13be3eaf.entry.js.map +1 -0
  1086. package/dist/ind-ds/p-1459ada5.entry.js +2 -0
  1087. package/dist/ind-ds/p-1459ada5.entry.js.map +1 -0
  1088. package/dist/ind-ds/p-1685fd9c.entry.js +2 -0
  1089. package/dist/ind-ds/p-1685fd9c.entry.js.map +1 -0
  1090. package/dist/ind-ds/p-16d1f704.entry.js +2 -0
  1091. package/dist/ind-ds/p-16d1f704.entry.js.map +1 -0
  1092. package/dist/ind-ds/p-1be24214.entry.js +2 -0
  1093. package/dist/ind-ds/p-1be24214.entry.js.map +1 -0
  1094. package/dist/ind-ds/p-1ee08c0a.entry.js +2 -0
  1095. package/dist/ind-ds/p-1ee08c0a.entry.js.map +1 -0
  1096. package/dist/ind-ds/p-2fb287d2.entry.js +2 -0
  1097. package/dist/ind-ds/p-2fb287d2.entry.js.map +1 -0
  1098. package/dist/ind-ds/p-31111991.entry.js +2 -0
  1099. package/dist/ind-ds/p-31111991.entry.js.map +1 -0
  1100. package/dist/ind-ds/p-346ab1ad.entry.js +2 -0
  1101. package/dist/ind-ds/p-346ab1ad.entry.js.map +1 -0
  1102. package/dist/ind-ds/p-34b2f7e2.entry.js +2 -0
  1103. package/dist/ind-ds/p-34b2f7e2.entry.js.map +1 -0
  1104. package/dist/ind-ds/{p-c8de42e9.entry.js → p-36e43ec4.entry.js} +2 -2
  1105. package/dist/ind-ds/p-3701bd5b.entry.js +2 -0
  1106. package/dist/ind-ds/p-3701bd5b.entry.js.map +1 -0
  1107. package/dist/ind-ds/{p-cf07b580.entry.js → p-37d6486c.entry.js} +2 -2
  1108. package/dist/ind-ds/{p-0840007d.entry.js → p-381489a3.entry.js} +2 -2
  1109. package/dist/ind-ds/p-3819e686.entry.js +2 -0
  1110. package/dist/ind-ds/p-3819e686.entry.js.map +1 -0
  1111. package/dist/ind-ds/p-391657f6.entry.js +2 -0
  1112. package/dist/ind-ds/p-391657f6.entry.js.map +1 -0
  1113. package/dist/ind-ds/p-3cdcae06.entry.js +2 -0
  1114. package/dist/ind-ds/p-3cdcae06.entry.js.map +1 -0
  1115. package/dist/ind-ds/p-3dfc5d4e.entry.js +2 -0
  1116. package/dist/ind-ds/p-3dfc5d4e.entry.js.map +1 -0
  1117. package/dist/ind-ds/p-3ff919c2.entry.js +2 -0
  1118. package/dist/ind-ds/p-3ff919c2.entry.js.map +1 -0
  1119. package/dist/ind-ds/p-40502915.entry.js +2 -0
  1120. package/dist/ind-ds/p-40502915.entry.js.map +1 -0
  1121. package/dist/ind-ds/p-421d201d.entry.js +2 -0
  1122. package/dist/ind-ds/p-421d201d.entry.js.map +1 -0
  1123. package/dist/ind-ds/{p-1727b403.entry.js → p-45a62875.entry.js} +2 -2
  1124. package/dist/ind-ds/p-463fedff.entry.js +2 -0
  1125. package/dist/ind-ds/p-463fedff.entry.js.map +1 -0
  1126. package/dist/ind-ds/{p-cee8bf2b.entry.js → p-5119173c.entry.js} +2 -2
  1127. package/dist/ind-ds/p-5213a4f0.entry.js +2 -0
  1128. package/dist/ind-ds/p-5213a4f0.entry.js.map +1 -0
  1129. package/dist/ind-ds/p-52387956.entry.js +2 -0
  1130. package/dist/ind-ds/p-52387956.entry.js.map +1 -0
  1131. package/dist/ind-ds/p-531dcb46.entry.js +2 -0
  1132. package/dist/ind-ds/p-531dcb46.entry.js.map +1 -0
  1133. package/dist/ind-ds/p-53f0dc3a.entry.js +2 -0
  1134. package/dist/ind-ds/p-53f0dc3a.entry.js.map +1 -0
  1135. package/dist/ind-ds/p-548d7456.entry.js +2 -0
  1136. package/dist/ind-ds/p-548d7456.entry.js.map +1 -0
  1137. package/dist/ind-ds/p-585af84b.entry.js +2 -0
  1138. package/dist/ind-ds/p-585af84b.entry.js.map +1 -0
  1139. package/dist/ind-ds/{p-ee453874.entry.js → p-5a49aced.entry.js} +2 -2
  1140. package/dist/ind-ds/p-5d6cee7b.entry.js +2 -0
  1141. package/dist/ind-ds/p-5d6cee7b.entry.js.map +1 -0
  1142. package/dist/ind-ds/p-5d7bc819.entry.js +2 -0
  1143. package/dist/ind-ds/p-5d7bc819.entry.js.map +1 -0
  1144. package/dist/ind-ds/p-6054259d.entry.js +2 -0
  1145. package/dist/ind-ds/p-6054259d.entry.js.map +1 -0
  1146. package/dist/ind-ds/p-60585701.entry.js +2 -0
  1147. package/dist/ind-ds/p-60585701.entry.js.map +1 -0
  1148. package/dist/ind-ds/p-60751e04.entry.js +2 -0
  1149. package/dist/ind-ds/p-60751e04.entry.js.map +1 -0
  1150. package/dist/ind-ds/p-6135cdf0.entry.js +2 -0
  1151. package/dist/ind-ds/p-6135cdf0.entry.js.map +1 -0
  1152. package/dist/ind-ds/p-6963683d.entry.js +2 -0
  1153. package/dist/ind-ds/p-6963683d.entry.js.map +1 -0
  1154. package/dist/ind-ds/p-6dcfca81.entry.js +2 -0
  1155. package/dist/ind-ds/p-6dcfca81.entry.js.map +1 -0
  1156. package/dist/ind-ds/p-6ff4c77b.entry.js +2 -0
  1157. package/dist/ind-ds/p-6ff4c77b.entry.js.map +1 -0
  1158. package/dist/ind-ds/p-703709c2.entry.js +2 -0
  1159. package/dist/ind-ds/p-70894390.entry.js +2 -0
  1160. package/dist/ind-ds/p-7122fee8.entry.js +2 -0
  1161. package/dist/ind-ds/p-7122fee8.entry.js.map +1 -0
  1162. package/dist/ind-ds/p-73bf9023.entry.js +2 -0
  1163. package/dist/ind-ds/p-73bf9023.entry.js.map +1 -0
  1164. package/dist/ind-ds/{p-595ccdce.entry.js → p-74f4256f.entry.js} +2 -2
  1165. package/dist/ind-ds/p-7b2fbada.entry.js +2 -0
  1166. package/dist/ind-ds/p-7b2fbada.entry.js.map +1 -0
  1167. package/dist/ind-ds/p-7da4b557.entry.js +2 -0
  1168. package/dist/ind-ds/p-7da4b557.entry.js.map +1 -0
  1169. package/dist/ind-ds/p-7e337fb5.entry.js +2 -0
  1170. package/dist/ind-ds/p-7e337fb5.entry.js.map +1 -0
  1171. package/dist/ind-ds/p-7e5bc0c2.entry.js +2 -0
  1172. package/dist/ind-ds/p-7e5bc0c2.entry.js.map +1 -0
  1173. package/dist/ind-ds/p-81afebb1.entry.js +2 -0
  1174. package/dist/ind-ds/p-81afebb1.entry.js.map +1 -0
  1175. package/dist/ind-ds/p-8264f1cb.entry.js +2 -0
  1176. package/dist/ind-ds/p-8264f1cb.entry.js.map +1 -0
  1177. package/dist/ind-ds/p-82e30a2b.entry.js +2 -0
  1178. package/dist/ind-ds/p-82e30a2b.entry.js.map +1 -0
  1179. package/dist/ind-ds/p-83e5c6f2.entry.js +2 -0
  1180. package/dist/ind-ds/p-83e5c6f2.entry.js.map +1 -0
  1181. package/dist/ind-ds/p-866865be.entry.js +2 -0
  1182. package/dist/ind-ds/p-866865be.entry.js.map +1 -0
  1183. package/dist/ind-ds/p-872b2341.entry.js +2 -0
  1184. package/dist/ind-ds/p-872b2341.entry.js.map +1 -0
  1185. package/dist/ind-ds/{p-5369d63a.entry.js → p-880b7148.entry.js} +2 -2
  1186. package/dist/ind-ds/{p-781e21df.entry.js → p-8bae38f6.entry.js} +2 -2
  1187. package/dist/ind-ds/p-8ed6ec01.entry.js +2 -0
  1188. package/dist/ind-ds/p-8ed6ec01.entry.js.map +1 -0
  1189. package/dist/ind-ds/{p-52b18003.entry.js → p-91366917.entry.js} +2 -2
  1190. package/dist/ind-ds/p-93c934e3.entry.js +2 -0
  1191. package/dist/ind-ds/p-940221f7.entry.js +2 -0
  1192. package/dist/ind-ds/p-940221f7.entry.js.map +1 -0
  1193. package/dist/ind-ds/p-9da66a8c.entry.js +2 -0
  1194. package/dist/ind-ds/p-9da66a8c.entry.js.map +1 -0
  1195. package/dist/ind-ds/{p-c9f752e6.entry.js → p-9fbc8bc4.entry.js} +2 -2
  1196. package/dist/ind-ds/p-Bls_NlWP.js +3 -0
  1197. package/dist/ind-ds/p-Bls_NlWP.js.map +1 -0
  1198. package/dist/ind-ds/p-a2aa673c.entry.js +2 -0
  1199. package/dist/ind-ds/p-a2aa673c.entry.js.map +1 -0
  1200. package/dist/ind-ds/p-a7819f86.entry.js +2 -0
  1201. package/dist/ind-ds/p-a7819f86.entry.js.map +1 -0
  1202. package/dist/ind-ds/p-a9d0d040.entry.js +2 -0
  1203. package/dist/ind-ds/p-a9d0d040.entry.js.map +1 -0
  1204. package/dist/ind-ds/p-aa926eb9.entry.js +2 -0
  1205. package/dist/ind-ds/p-aa926eb9.entry.js.map +1 -0
  1206. package/dist/ind-ds/p-acf6c190.entry.js +2 -0
  1207. package/dist/ind-ds/p-acf6c190.entry.js.map +1 -0
  1208. package/dist/ind-ds/p-aed02606.entry.js +2 -0
  1209. package/dist/ind-ds/p-aed02606.entry.js.map +1 -0
  1210. package/dist/ind-ds/p-b1487a49.entry.js +2 -0
  1211. package/dist/ind-ds/p-b1487a49.entry.js.map +1 -0
  1212. package/dist/ind-ds/{p-6c5c8053.entry.js → p-b27c4d6b.entry.js} +2 -2
  1213. package/dist/ind-ds/p-b595aa1c.entry.js +2 -0
  1214. package/dist/ind-ds/p-b595aa1c.entry.js.map +1 -0
  1215. package/dist/ind-ds/{p-9b93fb09.entry.js → p-b5b6ceca.entry.js} +2 -2
  1216. package/dist/ind-ds/p-b8e77e43.entry.js +2 -0
  1217. package/dist/ind-ds/p-b8e77e43.entry.js.map +1 -0
  1218. package/dist/ind-ds/p-b9f36487.entry.js +2 -0
  1219. package/dist/ind-ds/p-b9f36487.entry.js.map +1 -0
  1220. package/dist/ind-ds/p-bb56a2b3.entry.js +2 -0
  1221. package/dist/ind-ds/p-bb56a2b3.entry.js.map +1 -0
  1222. package/dist/ind-ds/p-bbc9cf76.entry.js +2 -0
  1223. package/dist/ind-ds/p-bbc9cf76.entry.js.map +1 -0
  1224. package/dist/ind-ds/{p-459405b6.entry.js → p-c1714801.entry.js} +2 -2
  1225. package/dist/ind-ds/p-c30766d8.entry.js +2 -0
  1226. package/dist/ind-ds/p-c30766d8.entry.js.map +1 -0
  1227. package/dist/ind-ds/p-c6799bfc.entry.js +2 -0
  1228. package/dist/ind-ds/p-c6799bfc.entry.js.map +1 -0
  1229. package/dist/ind-ds/p-c857f789.entry.js +2 -0
  1230. package/dist/ind-ds/p-c857f789.entry.js.map +1 -0
  1231. package/dist/ind-ds/p-cc24e08a.entry.js +2 -0
  1232. package/dist/ind-ds/p-cc24e08a.entry.js.map +1 -0
  1233. package/dist/ind-ds/p-cf5b9e07.entry.js +2 -0
  1234. package/dist/ind-ds/p-cf5b9e07.entry.js.map +1 -0
  1235. package/dist/ind-ds/p-d0c6070b.entry.js +2 -0
  1236. package/dist/ind-ds/p-d0c6070b.entry.js.map +1 -0
  1237. package/dist/ind-ds/p-d454102f.entry.js +2 -0
  1238. package/dist/ind-ds/p-d454102f.entry.js.map +1 -0
  1239. package/dist/ind-ds/p-d760dc98.entry.js +2 -0
  1240. package/dist/ind-ds/p-d760dc98.entry.js.map +1 -0
  1241. package/dist/ind-ds/{p-99f55d2a.entry.js → p-ddbed251.entry.js} +2 -2
  1242. package/dist/ind-ds/p-ddc19668.entry.js +2 -0
  1243. package/dist/ind-ds/p-ddc19668.entry.js.map +1 -0
  1244. package/dist/ind-ds/p-de63cd36.entry.js +2 -0
  1245. package/dist/ind-ds/p-de63cd36.entry.js.map +1 -0
  1246. package/dist/ind-ds/p-e0644932.entry.js +2 -0
  1247. package/dist/ind-ds/p-e0644932.entry.js.map +1 -0
  1248. package/dist/ind-ds/{p-1d871f3f.entry.js → p-e314fa9b.entry.js} +2 -2
  1249. package/dist/ind-ds/p-e501fde9.entry.js +2 -0
  1250. package/dist/ind-ds/p-e501fde9.entry.js.map +1 -0
  1251. package/dist/ind-ds/p-e5295b8e.entry.js +2 -0
  1252. package/dist/ind-ds/p-e5295b8e.entry.js.map +1 -0
  1253. package/dist/ind-ds/p-eac22c88.entry.js +2 -0
  1254. package/dist/ind-ds/p-eac22c88.entry.js.map +1 -0
  1255. package/dist/ind-ds/p-eb5e6683.entry.js +2 -0
  1256. package/dist/ind-ds/p-eb5e6683.entry.js.map +1 -0
  1257. package/dist/ind-ds/p-ec65f7d2.entry.js +2 -0
  1258. package/dist/ind-ds/p-ec65f7d2.entry.js.map +1 -0
  1259. package/dist/ind-ds/p-f0674d4c.entry.js +2 -0
  1260. package/dist/ind-ds/p-f0674d4c.entry.js.map +1 -0
  1261. package/dist/ind-ds/p-f4182d11.entry.js +2 -0
  1262. package/dist/ind-ds/p-f4182d11.entry.js.map +1 -0
  1263. package/dist/ind-ds/p-f8613dc4.entry.js +2 -0
  1264. package/dist/ind-ds/p-f8613dc4.entry.js.map +1 -0
  1265. package/dist/ind-ds/p-fa004b8b.entry.js +2 -0
  1266. package/dist/ind-ds/p-fa004b8b.entry.js.map +1 -0
  1267. package/dist/ind-ds/p-fa391b29.entry.js +2 -0
  1268. package/dist/ind-ds/p-fa391b29.entry.js.map +1 -0
  1269. package/dist/types/components/atoms/_equipment/types.d.ts +5 -0
  1270. package/dist/types/components/atoms/alarm-count/alarm-count.d.ts +18 -0
  1271. package/dist/types/components/atoms/badge/badge.d.ts +12 -0
  1272. package/dist/types/components/atoms/breadcrumb-item/breadcrumb-item.d.ts +14 -0
  1273. package/dist/types/components/atoms/canvas-layer/canvas-layer.d.ts +16 -0
  1274. package/dist/types/components/atoms/compressor/compressor.d.ts +13 -0
  1275. package/dist/types/components/atoms/connection-indicator/connection-indicator.d.ts +12 -0
  1276. package/dist/types/components/atoms/conveyor/conveyor.d.ts +16 -0
  1277. package/dist/types/components/atoms/cooler/cooler.d.ts +13 -0
  1278. package/dist/types/components/atoms/counter/counter.d.ts +19 -0
  1279. package/dist/types/components/atoms/datetime-picker/datetime-picker.d.ts +30 -0
  1280. package/dist/types/components/atoms/estop/estop.d.ts +19 -0
  1281. package/dist/types/components/atoms/fan/fan.d.ts +13 -0
  1282. package/dist/types/components/atoms/gauge/gauge.d.ts +36 -0
  1283. package/dist/types/components/atoms/heartbeat/heartbeat.d.ts +13 -0
  1284. package/dist/types/components/atoms/heater/heater.d.ts +13 -0
  1285. package/dist/types/components/atoms/icon/icon.d.ts +12 -0
  1286. package/dist/types/components/atoms/knob/knob.d.ts +39 -0
  1287. package/dist/types/components/atoms/label/label.d.ts +16 -0
  1288. package/dist/types/components/atoms/linear-gauge/linear-gauge.d.ts +35 -0
  1289. package/dist/types/components/atoms/motor/motor.d.ts +13 -0
  1290. package/dist/types/components/atoms/pipe/pipe.d.ts +19 -0
  1291. package/dist/types/components/atoms/process-symbol/process-symbol.d.ts +18 -0
  1292. package/dist/types/components/atoms/progress-ring/progress-ring.d.ts +25 -0
  1293. package/dist/types/components/atoms/pump/pump.d.ts +13 -0
  1294. package/dist/types/components/atoms/selector-switch/selector-switch.d.ts +21 -0
  1295. package/dist/types/components/atoms/setpoint/setpoint.d.ts +32 -0
  1296. package/dist/types/components/atoms/signal-quality/signal-quality.d.ts +14 -0
  1297. package/dist/types/components/atoms/silo/silo.d.ts +19 -0
  1298. package/dist/types/components/atoms/slider/slider.d.ts +31 -0
  1299. package/dist/types/components/atoms/sparkline/sparkline.d.ts +23 -0
  1300. package/dist/types/components/atoms/tab/tab.d.ts +15 -0
  1301. package/dist/types/components/atoms/tag-name/tag-name.d.ts +11 -0
  1302. package/dist/types/components/atoms/tank/tank.d.ts +19 -0
  1303. package/dist/types/components/atoms/timestamp/timestamp.d.ts +16 -0
  1304. package/dist/types/components/atoms/toggle/toggle.d.ts +22 -0
  1305. package/dist/types/components/atoms/tree-node/tree-node.d.ts +22 -0
  1306. package/dist/types/components/atoms/unit-label/unit-label.d.ts +9 -0
  1307. package/dist/types/components/atoms/xy-point/xy-point.d.ts +25 -0
  1308. package/dist/types/components/molecules/alarm-badge-group/alarm-badge-group.d.ts +21 -0
  1309. package/dist/types/components/molecules/alarm-row/alarm-row.d.ts +22 -0
  1310. package/dist/types/components/molecules/audit-row/audit-row.d.ts +16 -0
  1311. package/dist/types/components/molecules/batch-parameter-row/batch-parameter-row.d.ts +33 -0
  1312. package/dist/types/components/molecules/command-group/command-group.d.ts +16 -0
  1313. package/dist/types/components/molecules/device-connection-card/device-connection-card.d.ts +19 -0
  1314. package/dist/types/components/molecules/device-info-card/device-info-card.d.ts +24 -0
  1315. package/dist/types/components/molecules/energy-card/energy-card.d.ts +25 -0
  1316. package/dist/types/components/molecules/equipment-status-card/equipment-status-card.d.ts +20 -0
  1317. package/dist/types/components/molecules/event-row/event-row.d.ts +17 -0
  1318. package/dist/types/components/molecules/historical-value-row/historical-value-row.d.ts +20 -0
  1319. package/dist/types/components/molecules/kpi-card/kpi-card.d.ts +26 -0
  1320. package/dist/types/components/molecules/mode-selector/mode-selector.d.ts +20 -0
  1321. package/dist/types/components/molecules/motor-card/motor-card.d.ts +21 -0
  1322. package/dist/types/components/molecules/mqtt-tag-binding/mqtt-tag-binding.d.ts +23 -0
  1323. package/dist/types/components/molecules/network-status-card/network-status-card.d.ts +22 -0
  1324. package/dist/types/components/molecules/opcua-tag-binding/opcua-tag-binding.d.ts +22 -0
  1325. package/dist/types/components/molecules/pump-card/pump-card.d.ts +22 -0
  1326. package/dist/types/components/molecules/recipe-selector/recipe-selector.d.ts +26 -0
  1327. package/dist/types/components/molecules/setpoint-control/setpoint-control.d.ts +27 -0
  1328. package/dist/types/components/molecules/sidebar-group/sidebar-group.d.ts +19 -0
  1329. package/dist/types/components/molecules/speed-control/speed-control.d.ts +28 -0
  1330. package/dist/types/components/molecules/start-stop-control/start-stop-control.d.ts +25 -0
  1331. package/dist/types/components/molecules/tag-card/tag-card.d.ts +27 -0
  1332. package/dist/types/components/molecules/tank-level-card/tank-level-card.d.ts +24 -0
  1333. package/dist/types/components/molecules/temperature-control/temperature-control.d.ts +30 -0
  1334. package/dist/types/components/molecules/trend-widget/trend-widget.d.ts +29 -0
  1335. package/dist/types/components/molecules/valve-card/valve-card.d.ts +17 -0
  1336. package/dist/types/components/organisms/alarm-panel/alarm-panel.d.ts +30 -0
  1337. package/dist/types/components/organisms/alarm-summary/alarm-summary.d.ts +17 -0
  1338. package/dist/types/components/organisms/asset-overview/asset-overview.d.ts +20 -0
  1339. package/dist/types/components/organisms/batch-control-panel/batch-control-panel.d.ts +30 -0
  1340. package/dist/types/components/organisms/command-center/command-center.d.ts +11 -0
  1341. package/dist/types/components/organisms/context-toolbar/context-toolbar.d.ts +13 -0
  1342. package/dist/types/components/organisms/device-diagnostics-panel/device-diagnostics-panel.d.ts +25 -0
  1343. package/dist/types/components/organisms/energy-dashboard/energy-dashboard.d.ts +17 -0
  1344. package/dist/types/components/organisms/equipment-dashboard/equipment-dashboard.d.ts +12 -0
  1345. package/dist/types/components/organisms/event-journal/event-journal.d.ts +21 -0
  1346. package/dist/types/components/organisms/firmware-update-panel/firmware-update-panel.d.ts +23 -0
  1347. package/dist/types/components/organisms/historian-viewer/historian-viewer.d.ts +24 -0
  1348. package/dist/types/components/organisms/machine-overview/machine-overview.d.ts +17 -0
  1349. package/dist/types/components/organisms/maintenance-dashboard/maintenance-dashboard.d.ts +25 -0
  1350. package/dist/types/components/organisms/motor-control-panel/motor-control-panel.d.ts +26 -0
  1351. package/dist/types/components/organisms/oee-dashboard/oee-dashboard.d.ts +20 -0
  1352. package/dist/types/components/organisms/process-control-panel/process-control-panel.d.ts +35 -0
  1353. package/dist/types/components/organisms/production-cell/production-cell.d.ts +17 -0
  1354. package/dist/types/components/organisms/production-dashboard/production-dashboard.d.ts +13 -0
  1355. package/dist/types/components/organisms/production-line-overview/production-line-overview.d.ts +19 -0
  1356. package/dist/types/components/organisms/pump-control-panel/pump-control-panel.d.ts +20 -0
  1357. package/dist/types/components/organisms/recipe-management-panel/recipe-management-panel.d.ts +25 -0
  1358. package/dist/types/components/organisms/trend-viewer/trend-viewer.d.ts +21 -0
  1359. package/dist/types/components/organisms/valve-control-panel/valve-control-panel.d.ts +24 -0
  1360. package/dist/types/components/organisms/workstation-monitor/workstation-monitor.d.ts +23 -0
  1361. package/dist/types/components.d.ts +8729 -879
  1362. package/dist/types/index.d.ts +50 -0
  1363. package/package.json +3 -2
  1364. package/dist/cjs/ind-input.cjs.entry.js.map +0 -1
  1365. package/dist/cjs/ind-led.cjs.entry.js +0 -29
  1366. package/dist/cjs/ind-led.cjs.entry.js.map +0 -1
  1367. package/dist/cjs/index-ph7ZTjuY.js.map +0 -1
  1368. package/dist/esm/ind-input.entry.js.map +0 -1
  1369. package/dist/esm/ind-led.entry.js +0 -27
  1370. package/dist/esm/ind-led.entry.js.map +0 -1
  1371. package/dist/esm/index-D2yNiL0d.js.map +0 -1
  1372. package/dist/ind-ds/p-296b0c55.entry.js +0 -2
  1373. package/dist/ind-ds/p-4a4811ab.entry.js +0 -2
  1374. package/dist/ind-ds/p-4a4811ab.entry.js.map +0 -1
  1375. package/dist/ind-ds/p-6c8f4bbd.entry.js +0 -2
  1376. package/dist/ind-ds/p-D2yNiL0d.js +0 -3
  1377. package/dist/ind-ds/p-D2yNiL0d.js.map +0 -1
  1378. package/dist/ind-ds/p-d1edc052.entry.js +0 -2
  1379. package/dist/ind-ds/p-d1edc052.entry.js.map +0 -1
  1380. package/dist/ind-ds/p-ec0b3785.entry.js +0 -2
  1381. /package/dist/components/{p-acsAzrRn.js.map → p-D79nNJVt.js.map} +0 -0
  1382. /package/dist/ind-ds/{p-ea24a59d.entry.js.map → p-00d22e4b.entry.js.map} +0 -0
  1383. /package/dist/ind-ds/{p-8817625a.entry.js.map → p-094ac159.entry.js.map} +0 -0
  1384. /package/dist/ind-ds/{p-c8de42e9.entry.js.map → p-36e43ec4.entry.js.map} +0 -0
  1385. /package/dist/ind-ds/{p-cf07b580.entry.js.map → p-37d6486c.entry.js.map} +0 -0
  1386. /package/dist/ind-ds/{p-0840007d.entry.js.map → p-381489a3.entry.js.map} +0 -0
  1387. /package/dist/ind-ds/{p-1727b403.entry.js.map → p-45a62875.entry.js.map} +0 -0
  1388. /package/dist/ind-ds/{p-cee8bf2b.entry.js.map → p-5119173c.entry.js.map} +0 -0
  1389. /package/dist/ind-ds/{p-ee453874.entry.js.map → p-5a49aced.entry.js.map} +0 -0
  1390. /package/dist/ind-ds/{p-ec0b3785.entry.js.map → p-703709c2.entry.js.map} +0 -0
  1391. /package/dist/ind-ds/{p-6c8f4bbd.entry.js.map → p-70894390.entry.js.map} +0 -0
  1392. /package/dist/ind-ds/{p-595ccdce.entry.js.map → p-74f4256f.entry.js.map} +0 -0
  1393. /package/dist/ind-ds/{p-5369d63a.entry.js.map → p-880b7148.entry.js.map} +0 -0
  1394. /package/dist/ind-ds/{p-781e21df.entry.js.map → p-8bae38f6.entry.js.map} +0 -0
  1395. /package/dist/ind-ds/{p-52b18003.entry.js.map → p-91366917.entry.js.map} +0 -0
  1396. /package/dist/ind-ds/{p-296b0c55.entry.js.map → p-93c934e3.entry.js.map} +0 -0
  1397. /package/dist/ind-ds/{p-c9f752e6.entry.js.map → p-9fbc8bc4.entry.js.map} +0 -0
  1398. /package/dist/ind-ds/{p-6c5c8053.entry.js.map → p-b27c4d6b.entry.js.map} +0 -0
  1399. /package/dist/ind-ds/{p-9b93fb09.entry.js.map → p-b5b6ceca.entry.js.map} +0 -0
  1400. /package/dist/ind-ds/{p-459405b6.entry.js.map → p-c1714801.entry.js.map} +0 -0
  1401. /package/dist/ind-ds/{p-99f55d2a.entry.js.map → p-ddbed251.entry.js.map} +0 -0
  1402. /package/dist/ind-ds/{p-1d871f3f.entry.js.map → p-e314fa9b.entry.js.map} +0 -0
@@ -0,0 +1,40 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const cardCss = () => `:host{display:flex;flex-direction:column;gap:var(--ind-spacing-3, 6px);padding:var(--ind-spacing-5, 12px);background:var(--ind-surface-panel);border:1px solid var(--ind-surface-border-default);border-radius:var(--ind-radius-md, 3px);font-family:var(--ind-font-family-sans);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1);box-sizing:border-box;min-width:160px}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ind-spacing-3, 6px)}.card-title{font-size:var(--ind-font-size-xs, 10px);font-weight:var(--ind-font-weight-bold, 700);text-transform:uppercase;letter-spacing:0.08em;color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2))}.card-tag{font-family:var(--ind-font-family-mono);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2))}.card-detail{font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0))}:host([state="fault"]){border-color:var(--ind-state-fault-bg, #dc2626);box-shadow:0 0 0 1px color-mix(in srgb, var(--ind-state-fault-bg, #dc2626) 30%, transparent)}:host([state="warning"]){border-color:color-mix(in srgb, var(--ind-state-warning-bg, #f59e0b) 60%, var(--ind-surface-border-default))}`;
4
+
5
+ const equipmentStatusCardCss = () => `.body{display:flex;align-items:center;gap:var(--ind-spacing-5, 12px)}.symbol{display:inline-flex;flex:0 0 auto}.status{display:flex;align-items:center;gap:var(--ind-spacing-3, 6px);margin-left:auto}.state-label{font-size:var(--ind-font-size-lg, 14px);font-weight:var(--ind-font-weight-semibold, 600)}:host([state="running"]) .state-label{color:var(--ind-state-running-bg, #16a34a)}:host([state="fault"]) .state-label{color:var(--ind-state-fault-bg, #dc2626)}:host([state="warning"]) .state-label{color:var(--ind-state-warning-bg, #f59e0b)}:host([state="maintenance"]) .state-label{color:var(--ind-state-maintenance-bg, #2563eb)}:host([state="stopped"]) .state-label{color:var(--ind-surface-text-secondary)}:host([state="unknown"]) .state-label{color:var(--ind-surface-text-muted)}`;
6
+
7
+ const DEFAULT_LABEL = {
8
+ running: 'Running',
9
+ stopped: 'Stopped',
10
+ fault: 'Fault',
11
+ warning: 'Warning',
12
+ maintenance: 'Maintenance',
13
+ unknown: '—',
14
+ };
15
+ const IndEquipmentStatusCard = class {
16
+ constructor(hostRef) {
17
+ registerInstance(this, hostRef);
18
+ }
19
+ /** Equipment name (e.g. "Feed pump"). */
20
+ heading;
21
+ /** Equipment tag (e.g. "P-101"). */
22
+ tag;
23
+ /** Process state — drives the badge color and fault chrome. */
24
+ state = 'unknown';
25
+ /** Override the default state label. */
26
+ stateLabel;
27
+ /** Sub-line for context (runtime, last fault, …). */
28
+ detail;
29
+ render() {
30
+ const label = this.stateLabel ?? DEFAULT_LABEL[this.state];
31
+ const dot = this.state === 'unknown' ? 'neutral' : this.state;
32
+ return (h(Host, { key: '50ef02041e1221b96bb57907725bf22cc5e0d609', role: "group", "aria-label": `${this.heading}: ${label}`, "aria-live": this.state === 'fault' ? 'assertive' : 'polite' }, h("div", { key: 'b173cac3ff0f2f10ff25e461aa1016ffe2952e2d', class: "card-head" }, h("span", { key: '53f425c3d75617add7807f77dd411f0ed1cd1b80', class: "card-title", part: "heading" }, this.heading), this.tag && h("span", { key: '1bcdbdaaaffc476ffb5f99a4d1c248b37f428c9a', class: "card-tag", part: "tag" }, this.tag)), h("div", { key: '75b94da1c391f16ebfa6ed3468f98d9a42b1be8d', class: "body", part: "body" }, h("span", { key: '684412e91904a96e24cce09c8003cf87b3b47fb1', class: "symbol", part: "symbol" }, h("slot", { key: '398342832c19ddd39cd59d3e30b8c057d939d7d1' })), h("div", { key: '6b26f6e32e85949ffa226c522be010693fcfa868', class: "status", part: "status" }, h("ind-status-dot", { key: '0c9e97b62ef0435e8ebe0889fdfde5822506eb4c', state: dot, size: "md" }), h("span", { key: '6a0506b7ab72f4b3f2b28c6bd5210062b77d9594', class: "state-label", part: "state-label" }, label))), this.detail && h("div", { key: 'e7993508dabe25207fc675182bac2034263f775b', class: "card-detail", part: "detail" }, this.detail)));
33
+ }
34
+ };
35
+ IndEquipmentStatusCard.style = cardCss() + equipmentStatusCardCss();
36
+
37
+ export { IndEquipmentStatusCard as ind_equipment_status_card };
38
+ //# sourceMappingURL=ind-equipment-status-card.entry.js.map
39
+
40
+ //# sourceMappingURL=ind-equipment-status-card.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-equipment-status-card.entry.js","sources":["src/components/molecules/_shared/card.css?tag=ind-equipment-status-card&encapsulation=shadow","src/components/molecules/equipment-status-card/equipment-status-card.css?tag=ind-equipment-status-card&encapsulation=shadow","src/components/molecules/equipment-status-card/equipment-status-card.tsx"],"sourcesContent":["/* Shared chrome for molecule \"card\" components. Pulled in first via\n * `styleUrls: ['../_shared/card.css', 'xxx.css']` so each card can override. */\n:host {\n display: flex;\n flex-direction: column;\n gap: var(--ind-spacing-3, 6px);\n padding: var(--ind-spacing-5, 12px);\n background: var(--ind-surface-panel);\n border: 1px solid var(--ind-surface-border-default);\n border-radius: var(--ind-radius-md, 3px);\n font-family: var(--ind-font-family-sans);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n box-sizing: border-box;\n min-width: 160px;\n}\n\n.card-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: var(--ind-spacing-3, 6px);\n}\n\n.card-title {\n font-size: var(--ind-font-size-xs, 10px);\n font-weight: var(--ind-font-weight-bold, 700);\n text-transform: uppercase;\n letter-spacing: 0.08em;\n color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));\n}\n\n.card-tag {\n font-family: var(--ind-font-family-mono);\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));\n}\n\n.card-detail {\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));\n}\n\n/* Fault chrome cue, opt-in by reflecting state=\"fault\" on the host. */\n:host([state=\"fault\"]) {\n border-color: var(--ind-state-fault-bg, #dc2626);\n box-shadow: 0 0 0 1px color-mix(in srgb, var(--ind-state-fault-bg, #dc2626) 30%, transparent);\n}\n:host([state=\"warning\"]) {\n border-color: color-mix(in srgb, var(--ind-state-warning-bg, #f59e0b) 60%, var(--ind-surface-border-default));\n}\n",".body {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-5, 12px);\n}\n\n.symbol {\n display: inline-flex;\n flex: 0 0 auto;\n}\n\n.status {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-3, 6px);\n margin-left: auto;\n}\n\n.state-label {\n font-size: var(--ind-font-size-lg, 14px);\n font-weight: var(--ind-font-weight-semibold, 600);\n}\n\n:host([state=\"running\"]) .state-label { color: var(--ind-state-running-bg, #16a34a); }\n:host([state=\"fault\"]) .state-label { color: var(--ind-state-fault-bg, #dc2626); }\n:host([state=\"warning\"]) .state-label { color: var(--ind-state-warning-bg, #f59e0b); }\n:host([state=\"maintenance\"]) .state-label { color: var(--ind-state-maintenance-bg, #2563eb); }\n:host([state=\"stopped\"]) .state-label { color: var(--ind-surface-text-secondary); }\n:host([state=\"unknown\"]) .state-label { color: var(--ind-surface-text-muted); }\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type EquipmentCardState =\n | 'running'\n | 'stopped'\n | 'fault'\n | 'warning'\n | 'maintenance'\n | 'unknown';\n\nconst DEFAULT_LABEL: Record<EquipmentCardState, string> = {\n running: 'Running',\n stopped: 'Stopped',\n fault: 'Fault',\n warning: 'Warning',\n maintenance: 'Maintenance',\n unknown: '—',\n};\n\n/**\n * Generic equipment status card. Slot a process symbol (`<ind-pump>`,\n * `<ind-motor>`, …) into the default slot; the card supplies the heading,\n * a state badge and an optional detail line.\n */\n@Component({\n tag: 'ind-equipment-status-card',\n styleUrls: ['../_shared/card.css', 'equipment-status-card.css'],\n shadow: true,\n})\nexport class IndEquipmentStatusCard {\n /** Equipment name (e.g. \"Feed pump\"). */\n @Prop() heading!: string;\n /** Equipment tag (e.g. \"P-101\"). */\n @Prop() tag?: string;\n /** Process state — drives the badge color and fault chrome. */\n @Prop({ reflect: true }) state: EquipmentCardState = 'unknown';\n /** Override the default state label. */\n @Prop() stateLabel?: string;\n /** Sub-line for context (runtime, last fault, …). */\n @Prop() detail?: string;\n\n render() {\n const label = this.stateLabel ?? DEFAULT_LABEL[this.state];\n const dot = this.state === 'unknown' ? 'neutral' : this.state;\n return (\n <Host\n role=\"group\"\n aria-label={`${this.heading}: ${label}`}\n aria-live={this.state === 'fault' ? 'assertive' : 'polite'}\n >\n <div class=\"card-head\">\n <span class=\"card-title\" part=\"heading\">{this.heading}</span>\n {this.tag && <span class=\"card-tag\" part=\"tag\">{this.tag}</span>}\n </div>\n <div class=\"body\" part=\"body\">\n <span class=\"symbol\" part=\"symbol\"><slot /></span>\n <div class=\"status\" part=\"status\">\n <ind-status-dot state={dot as any} size=\"md\" />\n <span class=\"state-label\" part=\"state-label\">{label}</span>\n </div>\n </div>\n {this.detail && <div class=\"card-detail\" part=\"detail\">{this.detail}</div>}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,OAAO,GAAG,MAAM,CAAC,2zCAA2zC,CAAC;;ACAn1C,MAAM,sBAAsB,GAAG,MAAM,CAAC,4wBAA4wB,CAAC;;ACUnzB,MAAM,aAAa,GAAuC;AACxD,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,WAAW,EAAE,aAAa;AAC1B,IAAA,OAAO,EAAE,GAAG;CACb;MAYY,sBAAsB,GAAA,MAAA;;;;;AAEzB,IAAA,OAAO;;AAEP,IAAA,GAAG;;IAEc,KAAK,GAAuB,SAAS;;AAEtD,IAAA,UAAU;;AAEV,IAAA,MAAM;IAEd,MAAM,GAAA;AACJ,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;AAC1D,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK;QAC7D,QACE,CAAA,CAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EACH,IAAI,EAAC,OAAO,EAAA,YAAA,EACA,CAAA,EAAG,IAAI,CAAC,OAAO,CAAA,EAAA,EAAK,KAAK,CAAA,CAAE,EAAA,WAAA,EAC5B,IAAI,CAAC,KAAK,KAAK,OAAO,GAAG,WAAW,GAAG,QAAQ,EAAA,EAE1D,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,WAAW,EAAA,EACpB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,SAAS,EAAA,EAAE,IAAI,CAAC,OAAO,CAAQ,EAC5D,IAAI,CAAC,GAAG,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,KAAK,EAAA,EAAE,IAAI,CAAC,GAAG,CAAQ,CAC5D,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAA,EAC3B,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAA,EAAC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAQ,CAAO,EAClD,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAA,EAC/B,CAAA,CAAA,gBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAgB,KAAK,EAAE,GAAU,EAAE,IAAI,EAAC,IAAI,EAAA,CAAG,EAC/C,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,aAAa,EAAA,EAAE,KAAK,CAAQ,CACvD,CACF,EACL,IAAI,CAAC,MAAM,IAAI,4DAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,QAAQ,IAAE,IAAI,CAAC,MAAM,CAAO,CACrE;;;;;;;"}
@@ -0,0 +1,45 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const estopCss = () => `:host{display:inline-flex;flex-direction:column;align-items:center;gap:var(--ind-spacing-2, 4px);font-family:var(--ind-font-family-sans, system-ui, sans-serif);--_size:56px}:host([size="sm"]){--_size:40px}:host([size="lg"]){--_size:80px}.btn{appearance:none;border:none;background:none;padding:0;cursor:pointer;line-height:0}.btn:disabled{cursor:not-allowed;opacity:0.5}.ring{display:inline-flex;align-items:center;justify-content:center;width:var(--_size);height:var(--_size);border-radius:50%;background:radial-gradient(circle at 50% 40%, #ffd400, #d9a900);box-shadow:0 2px 6px rgba(0, 0, 0, 0.5)}.mushroom{display:block;width:72%;height:72%;border-radius:50%;background:radial-gradient(circle at 35% 30%, #ff5a52, #c1121f 70%);box-shadow:inset 0 -3px 6px rgba(0, 0, 0, 0.5), inset 0 2px 4px rgba(255, 255, 255, 0.4);transition:transform var(--ind-motion-duration-fast, 120ms) ease, box-shadow var(--ind-motion-duration-fast, 120ms) ease}:host([engaged]) .mushroom{transform:scale(0.86);box-shadow:inset 0 -1px 3px rgba(0, 0, 0, 0.6), 0 0 0 3px color-mix(in srgb, #c1121f 50%, transparent)}.btn:focus-visible .ring{outline:3px solid var(--ind-surface-focus-ring, #67e8f9);outline-offset:3px}.caption{font-size:var(--ind-font-size-xs, 10px);font-weight:var(--ind-font-weight-bold, 700);letter-spacing:0.04em;color:var(--ind-state-fault-bg, #dc2626);text-align:center}@media (prefers-reduced-motion: reduce){.mushroom{transition:none}}`;
4
+
5
+ const IndEstop = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.indActivate = createEvent(this, "indActivate");
9
+ this.indReset = createEvent(this, "indReset");
10
+ }
11
+ /** Whether the mushroom button is latched (pressed/engaged). */
12
+ engaged = false;
13
+ /** Disabled. */
14
+ disabled = false;
15
+ /** Size. */
16
+ size = 'md';
17
+ /** Visible caption. Defaults to "EMERGENCY STOP". */
18
+ label;
19
+ /** Fires when pressed to engage the stop. */
20
+ indActivate;
21
+ /** Fires when reset (twist-release) from an engaged state. */
22
+ indReset;
23
+ press = () => {
24
+ if (this.disabled)
25
+ return;
26
+ if (this.engaged) {
27
+ this.engaged = false;
28
+ this.indReset.emit();
29
+ }
30
+ else {
31
+ this.engaged = true;
32
+ this.indActivate.emit();
33
+ }
34
+ };
35
+ render() {
36
+ const caption = this.label ?? 'EMERGENCY STOP';
37
+ return (h(Host, { key: '1d89daec6d582afdf9a80afab71bd74fa581b9fb' }, h("button", { key: 'e143f5cdcbf6128f14aa2be18d9e14484dc6848f', type: "button", class: "btn", part: "button", "aria-pressed": this.engaged ? 'true' : 'false', "aria-label": `${caption}${this.engaged ? ' — engaged' : ''}`, disabled: this.disabled, onClick: this.press }, h("span", { key: '4080a0c05c0c0519aace4f85c1855d873bd5e98e', class: "ring", part: "ring" }, h("span", { key: '74ee36092a5d05adceded87b76276b245c191010', class: "mushroom", part: "mushroom" }))), h("span", { key: '1e055f18d1b651c7ebb7a86085976f54ffbf2787', class: "caption", part: "caption" }, caption)));
38
+ }
39
+ };
40
+ IndEstop.style = estopCss();
41
+
42
+ export { IndEstop as ind_estop };
43
+ //# sourceMappingURL=ind-estop.entry.js.map
44
+
45
+ //# sourceMappingURL=ind-estop.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-estop.entry.js","sources":["src/components/atoms/estop/estop.css?tag=ind-estop&encapsulation=shadow","src/components/atoms/estop/estop.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n gap: var(--ind-spacing-2, 4px);\n font-family: var(--ind-font-family-sans, system-ui, sans-serif);\n --_size: 56px;\n}\n\n:host([size=\"sm\"]) { --_size: 40px; }\n:host([size=\"lg\"]) { --_size: 80px; }\n\n.btn {\n appearance: none;\n border: none;\n background: none;\n padding: 0;\n cursor: pointer;\n line-height: 0;\n}\n\n.btn:disabled { cursor: not-allowed; opacity: 0.5; }\n\n.ring {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--_size);\n height: var(--_size);\n border-radius: 50%;\n background: radial-gradient(circle at 50% 40%, #ffd400, #d9a900);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);\n}\n\n.mushroom {\n display: block;\n width: 72%;\n height: 72%;\n border-radius: 50%;\n background: radial-gradient(circle at 35% 30%, #ff5a52, #c1121f 70%);\n box-shadow:\n inset 0 -3px 6px rgba(0, 0, 0, 0.5),\n inset 0 2px 4px rgba(255, 255, 255, 0.4);\n transition: transform var(--ind-motion-duration-fast, 120ms) ease, box-shadow var(--ind-motion-duration-fast, 120ms) ease;\n}\n\n:host([engaged]) .mushroom {\n transform: scale(0.86);\n box-shadow:\n inset 0 -1px 3px rgba(0, 0, 0, 0.6),\n 0 0 0 3px color-mix(in srgb, #c1121f 50%, transparent);\n}\n\n.btn:focus-visible .ring {\n outline: 3px solid var(--ind-surface-focus-ring, #67e8f9);\n outline-offset: 3px;\n}\n\n.caption {\n font-size: var(--ind-font-size-xs, 10px);\n font-weight: var(--ind-font-weight-bold, 700);\n letter-spacing: 0.04em;\n color: var(--ind-state-fault-bg, #dc2626);\n text-align: center;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .mushroom { transition: none; }\n}\n","import { Component, Prop, Event, EventEmitter, h, Host } from '@stencil/core';\n\nexport type EstopSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-estop',\n styleUrl: 'estop.css',\n shadow: true,\n})\nexport class IndEstop {\n /** Whether the mushroom button is latched (pressed/engaged). */\n @Prop({ mutable: true, reflect: true }) engaged: boolean = false;\n /** Disabled. */\n @Prop({ reflect: true }) disabled: boolean = false;\n /** Size. */\n @Prop({ reflect: true }) size: EstopSize = 'md';\n /** Visible caption. Defaults to \"EMERGENCY STOP\". */\n @Prop() label?: string;\n\n /** Fires when pressed to engage the stop. */\n @Event() indActivate!: EventEmitter<void>;\n /** Fires when reset (twist-release) from an engaged state. */\n @Event() indReset!: EventEmitter<void>;\n\n private press = () => {\n if (this.disabled) return;\n if (this.engaged) {\n this.engaged = false;\n this.indReset.emit();\n } else {\n this.engaged = true;\n this.indActivate.emit();\n }\n };\n\n render() {\n const caption = this.label ?? 'EMERGENCY STOP';\n return (\n <Host>\n <button\n type=\"button\"\n class=\"btn\"\n part=\"button\"\n aria-pressed={this.engaged ? 'true' : 'false'}\n aria-label={`${caption}${this.engaged ? ' — engaged' : ''}`}\n disabled={this.disabled}\n onClick={this.press}\n >\n <span class=\"ring\" part=\"ring\">\n <span class=\"mushroom\" part=\"mushroom\" />\n </span>\n </button>\n <span class=\"caption\" part=\"caption\">{caption}</span>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,m6CAAm6C,CAAC;;MCS/6C,QAAQ,GAAA,MAAA;;;;;;;IAEqB,OAAO,GAAY,KAAK;;IAEvC,QAAQ,GAAY,KAAK;;IAEzB,IAAI,GAAc,IAAI;;AAEvC,IAAA,KAAK;;AAGJ,IAAA,WAAW;;AAEX,IAAA,QAAQ;IAET,KAAK,GAAG,MAAK;QACnB,IAAI,IAAI,CAAC,QAAQ;YAAE;AACnB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;;aACf;AACL,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AACnB,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;;AAE3B,KAAC;IAED,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,gBAAgB;AAC9C,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,KAAK,EACX,IAAI,EAAC,QAAQ,kBACC,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO,EAAA,YAAA,EACjC,GAAG,OAAO,CAAA,EAAG,IAAI,CAAC,OAAO,GAAG,YAAY,GAAG,EAAE,CAAA,CAAE,EAC3D,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,KAAK,EAAA,EAEnB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAA,EAC5B,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,UAAU,EAAA,CAAG,CACpC,CACA,EACT,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAA,EAAE,OAAO,CAAQ,CAChD;;;;;;;"}
@@ -0,0 +1,29 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const panelCss = () => `:host{display:flex;flex-direction:column;background:var(--ind-surface-panel);border:1px solid var(--ind-surface-border-default);border-radius:var(--ind-radius-md, 3px);font-family:var(--ind-font-family-sans);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));box-sizing:border-box;overflow:hidden;font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.panel-head{display:flex;align-items:center;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-4, 8px) var(--ind-spacing-5, 12px);border-bottom:1px solid var(--ind-surface-border-subtle);background:var(--ind-surface-raised);flex:0 0 auto}.panel-titles{display:flex;flex-direction:column;min-width:0}.panel-title{font-size:var(--ind-font-size-md, 13px);font-weight:var(--ind-font-weight-semibold, 600);line-height:1.2}.panel-subtitle{font-size:var(--ind-font-size-xs, 10px);text-transform:uppercase;letter-spacing:0.06em;color:var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0))}.panel-tag{font-family:var(--ind-font-family-mono);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-secondary)}.panel-actions{margin-left:auto;display:flex;align-items:center;gap:var(--ind-spacing-3, 6px)}.panel-body{display:flex;flex-direction:column;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-5, 12px);min-height:0}.panel-toolbar{display:flex;align-items:center;gap:var(--ind-spacing-3, 6px);padding:var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);border-bottom:1px solid var(--ind-surface-border-subtle);flex:0 0 auto}.panel-list{display:flex;flex-direction:column;overflow:auto}.panel-grid{display:grid;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-5, 12px)}.panel-empty{padding:var(--ind-spacing-7, 20px);text-align:center;color:var(--ind-surface-text-muted);font-size:var(--ind-font-size-sm, 11px)}.panel-spacer{flex:1 1 auto}`;
4
+
5
+ const eventJournalCss = () => `:host{min-width:420px}.panel-list{max-height:420px}.filter{font-family:var(--ind-font-family-sans);font-size:var(--ind-font-size-sm, 11px);background:var(--ind-surface-sunken);color:var(--ind-surface-text-primary);border:1px solid var(--ind-surface-border-default);border-radius:var(--ind-radius-sm, 2px);padding:3px 6px}`;
6
+
7
+ const IndEventJournal = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ }
11
+ heading = 'Event journal';
12
+ /** Events, most-recent first. */
13
+ events = [];
14
+ /** Active severity filter — `all` shows everything. */
15
+ filter = 'all';
16
+ onFilter = (e) => {
17
+ this.filter = e.target.value;
18
+ };
19
+ render() {
20
+ const rows = this.filter === 'all' ? this.events : this.events.filter((e) => e.severity === this.filter);
21
+ return (h(Host, { key: '929ed5552330cf00cd4d19d634d28084f620e45a' }, h("div", { key: 'cda7f696c5979c7d43bb5fe820e91bb906e4056f', class: "panel-head" }, h("span", { key: '5c60680f7f033917b8c39fa2c9735a0587632ead', class: "panel-title", part: "heading" }, this.heading), h("div", { key: 'de0dec2492782802de3b62a7542b34fa47d61a75', class: "panel-actions" }, h("select", { key: '6b9d2b537af2b4e5d8ed50ff0cd1242f29a20c6d', class: "filter", part: "filter", onChange: this.onFilter }, h("option", { key: 'b86227a678a5851e6dd859f2acb38c9a763c8c56', value: "all" }, "All severities"), h("option", { key: '7f2f904e5d13783b45d42a53d4df66ce07064913', value: "error" }, "Error"), h("option", { key: '545575b6488b207f90c2dc392cb6eb323e36dcdc', value: "warning" }, "Warning"), h("option", { key: 'de94ee66b3d5fc73d63ddea1f96e313a67fedbd9', value: "success" }, "Success"), h("option", { key: '25d7721fb074f259851800252eb5c1f5675a6ae5', value: "info" }, "Info")))), h("div", { key: 'e10810c54e731d3b99bf337134ac3775332d8055', class: "panel-list", part: "list" }, rows.length === 0 ? (h("div", { class: "panel-empty" }, "No events")) : (rows.map((e, i) => (h("ind-event-row", { key: i, time: e.time, severity: e.severity, source: e.source, message: e.message })))))));
22
+ }
23
+ };
24
+ IndEventJournal.style = panelCss() + eventJournalCss();
25
+
26
+ export { IndEventJournal as ind_event_journal };
27
+ //# sourceMappingURL=ind-event-journal.entry.js.map
28
+
29
+ //# sourceMappingURL=ind-event-journal.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-event-journal.entry.js","sources":["src/components/organisms/_shared/panel.css?tag=ind-event-journal&encapsulation=shadow","src/components/organisms/event-journal/event-journal.css?tag=ind-event-journal&encapsulation=shadow","src/components/organisms/event-journal/event-journal.tsx"],"sourcesContent":["/* Shared chrome for organism panels. Pulled in first via\n * `styleUrls: ['../_shared/panel.css', 'xxx.css']`. */\n:host {\n display: flex;\n flex-direction: column;\n background: var(--ind-surface-panel);\n border: 1px solid var(--ind-surface-border-default);\n border-radius: var(--ind-radius-md, 3px);\n font-family: var(--ind-font-family-sans);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n box-sizing: border-box;\n overflow: hidden;\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n}\n\n.panel-head {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-4, 8px) var(--ind-spacing-5, 12px);\n border-bottom: 1px solid var(--ind-surface-border-subtle);\n background: var(--ind-surface-raised);\n flex: 0 0 auto;\n}\n\n.panel-titles {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n\n.panel-title {\n font-size: var(--ind-font-size-md, 13px);\n font-weight: var(--ind-font-weight-semibold, 600);\n line-height: 1.2;\n}\n\n.panel-subtitle {\n font-size: var(--ind-font-size-xs, 10px);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));\n}\n\n.panel-tag {\n font-family: var(--ind-font-family-mono);\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-secondary);\n}\n\n.panel-actions {\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-3, 6px);\n}\n\n.panel-body {\n display: flex;\n flex-direction: column;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-5, 12px);\n min-height: 0;\n}\n\n.panel-toolbar {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-3, 6px);\n padding: var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);\n border-bottom: 1px solid var(--ind-surface-border-subtle);\n flex: 0 0 auto;\n}\n\n.panel-list {\n display: flex;\n flex-direction: column;\n overflow: auto;\n}\n\n.panel-grid {\n display: grid;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-5, 12px);\n}\n\n.panel-empty {\n padding: var(--ind-spacing-7, 20px);\n text-align: center;\n color: var(--ind-surface-text-muted);\n font-size: var(--ind-font-size-sm, 11px);\n}\n\n.panel-spacer {\n flex: 1 1 auto;\n}\n",":host {\n min-width: 420px;\n}\n\n.panel-list {\n max-height: 420px;\n}\n\n.filter {\n font-family: var(--ind-font-family-sans);\n font-size: var(--ind-font-size-sm, 11px);\n background: var(--ind-surface-sunken);\n color: var(--ind-surface-text-primary);\n border: 1px solid var(--ind-surface-border-default);\n border-radius: var(--ind-radius-sm, 2px);\n padding: 3px 6px;\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\nimport type { EventSeverity } from '../../molecules/event-row/event-row';\n\nexport interface EventJournalItem {\n time?: string;\n severity: EventSeverity;\n source?: string;\n message: string;\n}\n\n/**\n * Chronological event / system log built from `<ind-event-row>`s, with a\n * severity filter in the toolbar.\n */\n@Component({\n tag: 'ind-event-journal',\n styleUrls: ['../_shared/panel.css', 'event-journal.css'],\n shadow: true,\n})\nexport class IndEventJournal {\n @Prop() heading: string = 'Event journal';\n /** Events, most-recent first. */\n @Prop() events: EventJournalItem[] = [];\n /** Active severity filter — `all` shows everything. */\n @Prop({ mutable: true }) filter: 'all' | EventSeverity = 'all';\n\n private onFilter = (e: Event) => {\n this.filter = (e.target as HTMLSelectElement).value as 'all' | EventSeverity;\n };\n\n render() {\n const rows = this.filter === 'all' ? this.events : this.events.filter((e) => e.severity === this.filter);\n return (\n <Host>\n <div class=\"panel-head\">\n <span class=\"panel-title\" part=\"heading\">{this.heading}</span>\n <div class=\"panel-actions\">\n <select class=\"filter\" part=\"filter\" onChange={this.onFilter}>\n <option value=\"all\">All severities</option>\n <option value=\"error\">Error</option>\n <option value=\"warning\">Warning</option>\n <option value=\"success\">Success</option>\n <option value=\"info\">Info</option>\n </select>\n </div>\n </div>\n <div class=\"panel-list\" part=\"list\">\n {rows.length === 0 ? (\n <div class=\"panel-empty\">No events</div>\n ) : (\n rows.map((e, i) => (\n <ind-event-row\n key={i}\n time={e.time}\n severity={e.severity}\n source={e.source}\n message={e.message}\n />\n ))\n )}\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,yzDAAyzD,CAAC;;ACAl1D,MAAM,eAAe,GAAG,MAAM,CAAC,iUAAiU,CAAC;;MCmBpV,eAAe,GAAA,MAAA;;;;IAClB,OAAO,GAAW,eAAe;;IAEjC,MAAM,GAAuB,EAAE;;IAEd,MAAM,GAA0B,KAAK;AAEtD,IAAA,QAAQ,GAAG,CAAC,CAAQ,KAAI;QAC9B,IAAI,CAAC,MAAM,GAAI,CAAC,CAAC,MAA4B,CAAC,KAA8B;AAC9E,KAAC;IAED,MAAM,GAAA;AACJ,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC;AACxG,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAA,EACrB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,SAAS,EAAA,EAAE,IAAI,CAAC,OAAO,CAAQ,EAC9D,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,eAAe,EAAA,EACxB,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,EAC1D,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,KAAK,EAAA,EAAA,gBAAA,CAAwB,EAC3C,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,OAAO,EAAA,EAAA,OAAA,CAAe,EACpC,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,SAAS,EAAA,EAAA,SAAA,CAAiB,EACxC,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,SAAS,EAAA,EAAA,SAAA,CAAiB,EACxC,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,MAAM,EAAA,EAAA,MAAA,CAAc,CAC3B,CACL,CACF,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAA,EAChC,IAAI,CAAC,MAAM,KAAK,CAAC,IAChB,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,aAAa,EAAA,EAAA,WAAA,CAAgB,KAExC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MACZ,CAAA,CAAA,eAAA,EAAA,EACE,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,CAAC,CAAC,IAAI,EACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAChB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAA,CAClB,CACH,CAAC,CACH,CACG,CACD;;;;;;;"}
@@ -0,0 +1,28 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const rowCss = () => `:host{display:grid;align-items:center;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-3, 6px) var(--ind-spacing-4, 8px);font-family:var(--ind-font-family-sans);font-size:var(--ind-font-size-base, 12px);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));border-bottom:1px solid var(--ind-surface-border-subtle);box-sizing:border-box;font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.time{font-family:var(--ind-font-family-mono);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));white-space:nowrap}.tag{font-family:var(--ind-font-family-mono);color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));white-space:nowrap}.msg{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`;
4
+
5
+ const eventRowCss = () => `:host{grid-template-columns:auto 12px auto 1fr}`;
6
+
7
+ const IndEventRow = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ }
11
+ /** Pre-formatted timestamp. */
12
+ time;
13
+ /** Severity — drives the status dot color. */
14
+ severity = 'info';
15
+ /** Event source (subsystem, device, tag). */
16
+ source;
17
+ /** Event message. */
18
+ message;
19
+ render() {
20
+ return (h(Host, { key: 'f0c8397e9f18441b1720612d4413d7438174f41f', role: "row", "aria-label": `${this.severity} event ${this.message}` }, this.time && h("span", { key: '0abc4554ac569b3c654cb1d56a7892af1770a26e', class: "time", part: "time" }, this.time), h("ind-status-dot", { key: '0c0dd551e50498854cb05a4356581c734bf5b3cd', state: this.severity, size: "sm" }), this.source && h("span", { key: 'fdb8f001ee894c60c114bbb0c750d22057c1aaa0', class: "tag", part: "source" }, this.source), h("span", { key: '61f1b238ffe9bc9d0ac5911145b6b66691747a06', class: "msg", part: "message" }, this.message)));
21
+ }
22
+ };
23
+ IndEventRow.style = rowCss() + eventRowCss();
24
+
25
+ export { IndEventRow as ind_event_row };
26
+ //# sourceMappingURL=ind-event-row.entry.js.map
27
+
28
+ //# sourceMappingURL=ind-event-row.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-event-row.entry.js","sources":["src/components/molecules/_shared/row.css?tag=ind-event-row&encapsulation=shadow","src/components/molecules/event-row/event-row.css?tag=ind-event-row&encapsulation=shadow","src/components/molecules/event-row/event-row.tsx"],"sourcesContent":["/* Shared chrome for log-style molecule rows (alarm, event, audit, historical).\n * Each component sets its own grid-template-columns. */\n:host {\n display: grid;\n align-items: center;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-3, 6px) var(--ind-spacing-4, 8px);\n font-family: var(--ind-font-family-sans);\n font-size: var(--ind-font-size-base, 12px);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n border-bottom: 1px solid var(--ind-surface-border-subtle);\n box-sizing: border-box;\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n}\n\n.time {\n font-family: var(--ind-font-family-mono);\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));\n white-space: nowrap;\n}\n\n.tag {\n font-family: var(--ind-font-family-mono);\n color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));\n white-space: nowrap;\n}\n\n.msg {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n",":host {\n grid-template-columns: auto 12px auto 1fr;\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type EventSeverity = 'info' | 'success' | 'warning' | 'error';\n\n/**\n * One line in an event / system log: timestamp, severity dot, source and\n * message. Read-only.\n */\n@Component({\n tag: 'ind-event-row',\n styleUrls: ['../_shared/row.css', 'event-row.css'],\n shadow: true,\n})\nexport class IndEventRow {\n /** Pre-formatted timestamp. */\n @Prop() time?: string;\n /** Severity — drives the status dot color. */\n @Prop({ reflect: true }) severity: EventSeverity = 'info';\n /** Event source (subsystem, device, tag). */\n @Prop() source?: string;\n /** Event message. */\n @Prop() message!: string;\n\n render() {\n return (\n <Host role=\"row\" aria-label={`${this.severity} event ${this.message}`}>\n {this.time && <span class=\"time\" part=\"time\">{this.time}</span>}\n <ind-status-dot state={this.severity} size=\"sm\" />\n {this.source && <span class=\"tag\" part=\"source\">{this.source}</span>}\n <span class=\"msg\" part=\"message\">{this.message}</span>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,MAAM,GAAG,MAAM,CAAC,iyBAAiyB,CAAC;;ACAxzB,MAAM,WAAW,GAAG,MAAM,CAAC,+CAA+C,CAAC;;MCa9D,WAAW,GAAA,MAAA;;;;;AAEd,IAAA,IAAI;;IAEa,QAAQ,GAAkB,MAAM;;AAEjD,IAAA,MAAM;;AAEN,IAAA,OAAO;IAEf,MAAM,GAAA;AACJ,QAAA,QACE,CAAA,CAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,IAAI,EAAC,KAAK,EAAA,YAAA,EAAa,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAA,OAAA,EAAU,IAAI,CAAC,OAAO,CAAA,CAAE,EAAA,EAClE,IAAI,CAAC,IAAI,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAA,EAAE,IAAI,CAAC,IAAI,CAAQ,EAC/D,CAAA,CAAA,gBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAgB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,IAAI,EAAA,CAAG,EACjD,IAAI,CAAC,MAAM,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,QAAQ,EAAA,EAAE,IAAI,CAAC,MAAM,CAAQ,EACpE,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,EAAA,EAAE,IAAI,CAAC,OAAO,CAAQ,CACjD;;;;;;;"}
@@ -0,0 +1,29 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const equipmentCss = () => `:host{display:inline-flex;flex-direction:column;align-items:center;gap:var(--ind-spacing-2, 4px);font-family:var(--ind-font-family-sans, system-ui, sans-serif);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));--_w:48px;--_stroke:var(--ind-state-stopped-border, #8390a0);--_fill:var(--ind-state-stopped-bg, #5a6776);--_accent:var(--ind-state-stopped-bg, #5a6776)}:host([size="sm"]){--_w:32px}:host([size="md"]){--_w:48px}:host([size="lg"]){--_w:72px}:host([state="running"]){--_stroke:var(--ind-state-running-border, #4ade80);--_fill:var(--ind-state-running-bg, #16a34a);--_accent:var(--ind-state-running-bg, #16a34a)}:host([state="stopped"]){--_stroke:var(--ind-state-stopped-border, #8390a0);--_fill:var(--ind-state-stopped-bg, #5a6776);--_accent:var(--ind-state-stopped-bg, #5a6776)}:host([state="fault"]){--_stroke:var(--ind-state-fault-border, #f87171);--_fill:var(--ind-state-fault-bg, #dc2626);--_accent:var(--ind-state-fault-bg, #dc2626)}:host([state="warning"]){--_stroke:var(--ind-state-warning-border, #fcd34d);--_fill:var(--ind-state-warning-bg, #f59e0b);--_accent:var(--ind-state-warning-bg, #f59e0b)}:host([state="maintenance"]){--_stroke:var(--ind-state-maintenance-border, #60a5fa);--_fill:var(--ind-state-maintenance-bg, #2563eb);--_accent:var(--ind-state-maintenance-bg, #2563eb)}.symbol{display:block;width:var(--_w);height:auto;overflow:visible}.body{fill:color-mix(in srgb, var(--_fill) 22%, transparent);stroke:var(--_stroke);stroke-width:1.5;vector-effect:non-scaling-stroke}.accent{fill:var(--_accent);stroke:none}.stroke{fill:none;stroke:var(--_stroke);stroke-width:1.5;stroke-linecap:round;vector-effect:non-scaling-stroke}.caption{display:flex;flex-direction:column;align-items:center;line-height:var(--ind-font-line-height-tight, 1.1)}.tag{font-family:var(--ind-font-family-mono, ui-monospace, monospace);font-weight:var(--ind-font-weight-semibold, 600);font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.label{color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));font-size:var(--ind-font-size-xs, 10px)}@media (prefers-reduced-motion: reduce){.spin,.pulse{animation:none !important}}`;
4
+
5
+ const fanCss = () => `.hub{fill:var(--_stroke)}:host([state="running"]) .spin{animation:ind-fan-spin 0.9s linear infinite}@keyframes ind-fan-spin{to{transform:rotate(360deg)}}`;
6
+
7
+ const IndFan = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ }
11
+ /** Process state. `running` spins the blades. */
12
+ state = 'stopped';
13
+ /** Visual size. */
14
+ size = 'md';
15
+ /** Equipment tag (e.g. "FN-301"). */
16
+ tag;
17
+ /** Human label. */
18
+ label;
19
+ render() {
20
+ const name = this.label ?? this.tag ?? 'fan';
21
+ return (h(Host, { key: '05348b06294a71319dbf2ac7bcde6357b1f2ddda', role: "img", "aria-label": `${name} — ${this.state}` }, h("svg", { key: '8cd4aa8242c8aa5581ec910accf1bd6743307cf6', class: "symbol", viewBox: "0 0 48 48", "aria-hidden": "true" }, h("circle", { key: '992d9e08891850d4d68580b6c5abc575738b2e14', class: "body", cx: "24", cy: "24", r: "16" }), h("g", { key: '31c5fe5dbbf268482987e8f672853f1fe7d84e02', class: "spin", style: { transformOrigin: '24px 24px' } }, h("path", { key: '0563126793186c4757fbb48c44305a2037392d7c', class: "accent", d: "M24 24 C30 14, 34 18, 24 24 Z" }), h("path", { key: 'cb14c0e5f38f73ec35a2294ba6ebd8f4344645e3', class: "accent", d: "M24 24 C34 30, 30 34, 24 24 Z" }), h("path", { key: '8cc12dc34bd9123cb543fdcb6e78688493dc5bf2', class: "accent", d: "M24 24 C18 34, 14 30, 24 24 Z" }), h("path", { key: '43c40edef2152d78fb88d32044fa78b08d85c44e', class: "accent", d: "M24 24 C14 18, 18 14, 24 24 Z" })), h("circle", { key: '47925754f8e411ac8f4210d4293ee03350391f9a', class: "hub", cx: "24", cy: "24", r: "2.5" })), (this.tag || this.label) && (h("div", { key: '2da1231dc992891380181bcddceb289eeb9de7cc', class: "caption" }, this.tag && h("span", { key: 'c8638a92c2c5fbdc9956cf2055f8663815b49f74', class: "tag" }, this.tag), this.label && h("span", { key: '12766db2ca33e5d180dd23b1962d1bd12f9bcefa', class: "label" }, this.label)))));
22
+ }
23
+ };
24
+ IndFan.style = equipmentCss() + fanCss();
25
+
26
+ export { IndFan as ind_fan };
27
+ //# sourceMappingURL=ind-fan.entry.js.map
28
+
29
+ //# sourceMappingURL=ind-fan.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-fan.entry.js","sources":["src/components/atoms/_equipment/equipment.css?tag=ind-fan&encapsulation=shadow","src/components/atoms/fan/fan.css?tag=ind-fan&encapsulation=shadow","src/components/atoms/fan/fan.tsx"],"sourcesContent":["/* Shared base styles for ind-ds process-equipment symbols.\n * Referenced via styleUrls alongside each component's own CSS. */\n:host {\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n gap: var(--ind-spacing-2, 4px);\n font-family: var(--ind-font-family-sans, system-ui, sans-serif);\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n --_w: 48px;\n --_stroke: var(--ind-state-stopped-border, #8390a0);\n --_fill: var(--ind-state-stopped-bg, #5a6776);\n --_accent: var(--ind-state-stopped-bg, #5a6776);\n}\n\n:host([size=\"sm\"]) { --_w: 32px; }\n:host([size=\"md\"]) { --_w: 48px; }\n:host([size=\"lg\"]) { --_w: 72px; }\n\n:host([state=\"running\"]) { --_stroke: var(--ind-state-running-border, #4ade80); --_fill: var(--ind-state-running-bg, #16a34a); --_accent: var(--ind-state-running-bg, #16a34a); }\n:host([state=\"stopped\"]) { --_stroke: var(--ind-state-stopped-border, #8390a0); --_fill: var(--ind-state-stopped-bg, #5a6776); --_accent: var(--ind-state-stopped-bg, #5a6776); }\n:host([state=\"fault\"]) { --_stroke: var(--ind-state-fault-border, #f87171); --_fill: var(--ind-state-fault-bg, #dc2626); --_accent: var(--ind-state-fault-bg, #dc2626); }\n:host([state=\"warning\"]) { --_stroke: var(--ind-state-warning-border, #fcd34d); --_fill: var(--ind-state-warning-bg, #f59e0b); --_accent: var(--ind-state-warning-bg, #f59e0b); }\n:host([state=\"maintenance\"]) { --_stroke: var(--ind-state-maintenance-border, #60a5fa); --_fill: var(--ind-state-maintenance-bg, #2563eb); --_accent: var(--ind-state-maintenance-bg, #2563eb); }\n\n.symbol {\n display: block;\n width: var(--_w);\n height: auto;\n overflow: visible;\n}\n\n.body {\n fill: color-mix(in srgb, var(--_fill) 22%, transparent);\n stroke: var(--_stroke);\n stroke-width: 1.5;\n vector-effect: non-scaling-stroke;\n}\n\n.accent {\n fill: var(--_accent);\n stroke: none;\n}\n\n.stroke {\n fill: none;\n stroke: var(--_stroke);\n stroke-width: 1.5;\n stroke-linecap: round;\n vector-effect: non-scaling-stroke;\n}\n\n.caption {\n display: flex;\n flex-direction: column;\n align-items: center;\n line-height: var(--ind-font-line-height-tight, 1.1);\n}\n\n.tag {\n font-family: var(--ind-font-family-mono, ui-monospace, monospace);\n font-weight: var(--ind-font-weight-semibold, 600);\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n}\n\n.label {\n color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));\n font-size: var(--ind-font-size-xs, 10px);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spin, .pulse { animation: none !important; }\n}\n",".hub {\n fill: var(--_stroke);\n}\n\n:host([state=\"running\"]) .spin {\n animation: ind-fan-spin 0.9s linear infinite;\n}\n\n@keyframes ind-fan-spin {\n to { transform: rotate(360deg); }\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\nimport type { EquipmentState, EquipmentSize } from '../_equipment/types';\n\n@Component({\n tag: 'ind-fan',\n styleUrls: ['../_equipment/equipment.css', 'fan.css'],\n shadow: true,\n})\nexport class IndFan {\n /** Process state. `running` spins the blades. */\n @Prop({ reflect: true }) state: EquipmentState = 'stopped';\n /** Visual size. */\n @Prop({ reflect: true }) size: EquipmentSize = 'md';\n /** Equipment tag (e.g. \"FN-301\"). */\n @Prop() tag?: string;\n /** Human label. */\n @Prop() label?: string;\n\n render() {\n const name = this.label ?? this.tag ?? 'fan';\n return (\n <Host role=\"img\" aria-label={`${name} — ${this.state}`}>\n <svg class=\"symbol\" viewBox=\"0 0 48 48\" aria-hidden=\"true\">\n <circle class=\"body\" cx=\"24\" cy=\"24\" r=\"16\" />\n <g class=\"spin\" style={{ transformOrigin: '24px 24px' }}>\n <path class=\"accent\" d=\"M24 24 C30 14, 34 18, 24 24 Z\" />\n <path class=\"accent\" d=\"M24 24 C34 30, 30 34, 24 24 Z\" />\n <path class=\"accent\" d=\"M24 24 C18 34, 14 30, 24 24 Z\" />\n <path class=\"accent\" d=\"M24 24 C14 18, 18 14, 24 24 Z\" />\n </g>\n <circle class=\"hub\" cx=\"24\" cy=\"24\" r=\"2.5\" />\n </svg>\n {(this.tag || this.label) && (\n <div class=\"caption\">\n {this.tag && <span class=\"tag\">{this.tag}</span>}\n {this.label && <span class=\"label\">{this.label}</span>}\n </div>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,YAAY,GAAG,MAAM,CAAC,ypEAAypE,CAAC;;ACAtrE,MAAM,MAAM,GAAG,MAAM,CAAC,yJAAyJ,CAAC;;MCQnK,MAAM,GAAA,MAAA;;;;;IAEQ,KAAK,GAAmB,SAAS;;IAEjC,IAAI,GAAkB,IAAI;;AAE3C,IAAA,GAAG;;AAEH,IAAA,KAAK;IAEb,MAAM,GAAA;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,IAAI,KAAK;AAC5C,QAAA,QACE,CAAA,CAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,IAAI,EAAC,KAAK,EAAA,YAAA,EAAa,CAAA,EAAG,IAAI,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,EAAA,EACpD,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,iBAAa,MAAM,EAAA,EACxD,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,MAAM,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAA,CAAG,EAC9C,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAG,KAAK,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,EAAA,EACrD,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,CAAC,EAAC,+BAA+B,EAAA,CAAG,EACzD,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,CAAC,EAAC,+BAA+B,EAAA,CAAG,EACzD,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,CAAC,EAAC,+BAA+B,EAAA,CAAG,EACzD,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,CAAC,EAAC,+BAA+B,GAAG,CACvD,EACJ,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,GAAG,CAC1C,EACL,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,MACtB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAA,EACjB,IAAI,CAAC,GAAG,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,KAAK,EAAA,EAAE,IAAI,CAAC,GAAG,CAAQ,EAC/C,IAAI,CAAC,KAAK,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,OAAO,EAAA,EAAE,IAAI,CAAC,KAAK,CAAQ,CAClD,CACP,CACI;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-D2yNiL0d.js';
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
2
 
3
3
  const fillRowCss = () => `:host{display:grid;grid-template-columns:max-content minmax(80px, 1.2fr) minmax(160px, 2fr) max-content max-content auto;gap:var(--ind-spacing-4, 8px);align-items:center;padding:var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);background:var(--ind-surface-panel);border:1px solid var(--ind-surface-border-default);border-radius:var(--ind-radius-md, 3px);font-family:var(--ind-font-family-sans);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.tag{font-family:var(--ind-font-family-mono);font-weight:var(--ind-font-weight-semibold, 600);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));letter-spacing:0.04em;min-width:32px}.label{font-size:var(--ind-font-size-base, 12px)}.progress{display:block;width:100%}.value{font-family:var(--ind-font-family-mono);font-weight:var(--ind-font-weight-semibold, 600);font-size:var(--ind-font-size-md, 13px);min-width:52px;text-align:right;white-space:nowrap}.severity{font-size:var(--ind-font-size-md, 13px);width:16px;text-align:center;color:var(--ind-feedback-warning-bg, #f59e0b);line-height:1}:host([variant="error"]) .severity{color:var(--ind-feedback-error-bg, #dc2626)}.actions{display:flex;gap:var(--ind-spacing-2, 4px)}::slotted(*){flex-shrink:0}@media (max-width: 640px){:host{grid-template-columns:max-content 1fr;grid-template-rows:auto auto auto}.progress{grid-column:1 / -1}.value,.severity,.actions{grid-column:1 / -1}}`;
4
4
 
@@ -21,7 +21,7 @@ const IndFillRow = class {
21
21
  /** Render the severity glyph between the value and the actions. */
22
22
  severity = false;
23
23
  render() {
24
- return (h(Host, { key: '58a3405e85cdc048d8efe47d3f4c1c010bc94318' }, this.tag && h("span", { key: 'afe363e1253cbf40db6e9a61001a5654d2b3dfcd', class: "tag", part: "tag" }, this.tag), h("span", { key: '8854993e5011b07756acb62914e3cd8c16e17ea8', class: "label", part: "label" }, this.label), h("ind-progress", { key: '67b5c4f3d210cbf1df3dd3765b9293482e47d040', class: "progress", part: "progress", value: this.value, max: this.max, variant: this.variant, size: "sm" }), h("span", { key: '4bfde6d18d08e3bd8ede25a769b2776a8720a80b', class: "value", part: "value" }, Math.round(this.value), this.unit ? ' ' + this.unit : ''), this.severity && (h("span", { key: 'fd0cf71dd4cae3e5c4404da29e0232e42e6e3642', class: "severity", part: "severity", "aria-hidden": "true" }, "\u26A0")), h("span", { key: '663240206f948685c4235fbb9057450bc0874c0f', class: "actions", part: "actions" }, h("slot", { key: '7c924c36ed5e348bc7262a7c50c0673ce102b8ae' }))));
24
+ return (h(Host, { key: 'cb80dcf8705dc03c77b6e18541bff34d4d332f51' }, this.tag && h("span", { key: 'd891414706180ae57bf6851a2a0ecab41b645412', class: "tag", part: "tag" }, this.tag), h("span", { key: '956eae765526cf44507c26b3bb4106e807f83b10', class: "label", part: "label" }, this.label), h("ind-progress", { key: '512e89f8f4e0472222b89a17fcbc25537f7f0a30', class: "progress", part: "progress", value: this.value, max: this.max, variant: this.variant, size: "sm" }), h("span", { key: '75126140321428ea001d2ee7403dd539c67261ff', class: "value", part: "value" }, Math.round(this.value), this.unit ? ' ' + this.unit : ''), this.severity && (h("span", { key: '0c163111da1a1217141a17b6fae5798df43a8966', class: "severity", part: "severity", "aria-hidden": "true" }, "\u26A0")), h("span", { key: 'e7b13297ff9c092c13dc17d1fee1c72252571829', class: "actions", part: "actions" }, h("slot", { key: '689279b59b375558bff4032d6a2f60c928fa4744' }))));
25
25
  }
26
26
  };
27
27
  IndFillRow.style = fillRowCss();
@@ -0,0 +1,47 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const panelCss = () => `:host{display:flex;flex-direction:column;background:var(--ind-surface-panel);border:1px solid var(--ind-surface-border-default);border-radius:var(--ind-radius-md, 3px);font-family:var(--ind-font-family-sans);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));box-sizing:border-box;overflow:hidden;font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.panel-head{display:flex;align-items:center;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-4, 8px) var(--ind-spacing-5, 12px);border-bottom:1px solid var(--ind-surface-border-subtle);background:var(--ind-surface-raised);flex:0 0 auto}.panel-titles{display:flex;flex-direction:column;min-width:0}.panel-title{font-size:var(--ind-font-size-md, 13px);font-weight:var(--ind-font-weight-semibold, 600);line-height:1.2}.panel-subtitle{font-size:var(--ind-font-size-xs, 10px);text-transform:uppercase;letter-spacing:0.06em;color:var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0))}.panel-tag{font-family:var(--ind-font-family-mono);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-secondary)}.panel-actions{margin-left:auto;display:flex;align-items:center;gap:var(--ind-spacing-3, 6px)}.panel-body{display:flex;flex-direction:column;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-5, 12px);min-height:0}.panel-toolbar{display:flex;align-items:center;gap:var(--ind-spacing-3, 6px);padding:var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);border-bottom:1px solid var(--ind-surface-border-subtle);flex:0 0 auto}.panel-list{display:flex;flex-direction:column;overflow:auto}.panel-grid{display:grid;gap:var(--ind-spacing-4, 8px);padding:var(--ind-spacing-5, 12px)}.panel-empty{padding:var(--ind-spacing-7, 20px);text-align:center;color:var(--ind-surface-text-muted);font-size:var(--ind-font-size-sm, 11px)}.panel-spacer{flex:1 1 auto}`;
4
+
5
+ const firmwareUpdatePanelCss = () => `:host{min-width:300px}ind-progress{width:100%}.versions{display:flex;align-items:center;gap:var(--ind-spacing-5, 12px)}.ver{display:flex;flex-direction:column}.ver-label{font-size:var(--ind-font-size-xs, 10px);text-transform:uppercase;letter-spacing:0.06em;color:var(--ind-surface-text-muted)}.ver-value{font-family:var(--ind-font-family-mono);font-size:var(--ind-font-size-lg, 14px);font-weight:var(--ind-font-weight-semibold, 600)}.arrow{color:var(--ind-surface-text-muted)}.state{font-size:var(--ind-font-size-sm, 11px);font-weight:var(--ind-font-weight-bold, 700);padding:2px 8px;border-radius:var(--ind-radius-full, 9999px);background:var(--ind-surface-raised)}.state-available{color:var(--ind-state-warning-bg, #f59e0b)}.state-up-to-date{color:var(--ind-state-running-bg, #16a34a)}.state-error{color:var(--ind-state-fault-bg, #dc2626)}`;
6
+
7
+ const STATE_LABEL = {
8
+ idle: 'Idle',
9
+ checking: 'Checking…',
10
+ available: 'Update available',
11
+ downloading: 'Downloading…',
12
+ installing: 'Installing…',
13
+ 'up-to-date': 'Up to date',
14
+ error: 'Update failed',
15
+ };
16
+ const IndFirmwareUpdatePanel = class {
17
+ constructor(hostRef) {
18
+ registerInstance(this, hostRef);
19
+ this.indCheck = createEvent(this, "indCheck");
20
+ this.indInstall = createEvent(this, "indInstall");
21
+ }
22
+ heading = 'Firmware';
23
+ /** Device name. */
24
+ device;
25
+ /** Installed version. */
26
+ currentVersion;
27
+ /** Available / target version. */
28
+ targetVersion;
29
+ /** Update state. */
30
+ state = 'idle';
31
+ /** Progress 0–100 % while downloading / installing. */
32
+ progress = 0;
33
+ indCheck;
34
+ indInstall;
35
+ render() {
36
+ const busy = this.state === 'downloading' || this.state === 'installing' || this.state === 'checking';
37
+ const canInstall = this.state === 'available';
38
+ const progressVariant = this.state === 'error' ? 'error' : 'default';
39
+ return (h(Host, { key: 'c9cee9fc072636573cfa2119088ab8c602b91ddc' }, h("div", { key: 'b1defe4c2fef4b350cabd879bb68946c7ee90ace', class: "panel-head" }, h("div", { key: 'ce3e01440b4951b9ec350b6205af5dc1baf490c1', class: "panel-titles" }, h("span", { key: '6760bdf61cebbbeaade59e01e0cda543b09ab6d0', class: "panel-title", part: "heading" }, this.heading), this.device && h("span", { key: '0294ac7428cdf439fca758ef1f0ee5b961f87cf7', class: "panel-subtitle" }, this.device)), h("span", { key: 'dd966181fa4ef9272fc277cf9aa23e9f5bbd8d9c', class: `state state-${this.state}`, part: "state" }, STATE_LABEL[this.state])), h("div", { key: 'f19ef00c269639924aa1399ac7e5cf518a341e07', class: "panel-body" }, h("div", { key: '9b88a26c64eaf6b000b5d1a1b22b48869ecb57fc', class: "versions", part: "versions" }, h("div", { key: '29449a45053f0227faefc3d18ba90a1eb6f8d562', class: "ver" }, h("span", { key: 'c6b1baccacf71ccd6e632754ed3975d1813fede7', class: "ver-label" }, "Installed"), h("span", { key: '00a47da41568fad6230f1005c9abd16137850367', class: "ver-value" }, this.currentVersion)), h("span", { key: 'd542f90b0e28cb7f2b647804902f095db680c2de', class: "arrow", "aria-hidden": "true" }, "\u2192"), h("div", { key: 'dd4221c1edcd9cda6325a0c4446acc8f1dc60ba3', class: "ver" }, h("span", { key: 'f90cc2eb98028665402d87596a4f52bcac0eeddc', class: "ver-label" }, "Target"), h("span", { key: 'a2bdb73992f0ea490156679f2d0aca66eaf8ca28', class: "ver-value" }, this.targetVersion ?? '—'))), busy && (h("ind-progress", { key: '9653d04c3a041bf5d5840b80c6fe0fde2fd65551', value: this.progress, max: 100, variant: progressVariant, size: "md", "show-value": true, indeterminate: this.state === 'checking' })), h("ind-command-group", { key: '38daf75517ce16e6ab122c71e3134e5dac789770', label: "Firmware commands" }, h("ind-button", { key: '1027f80e79d2f3cd36eff6f780c7874d14986a06', variant: "default", size: "sm", label: "Check", disabled: busy, onIndActivate: () => this.indCheck.emit() }), h("ind-button", { key: 'e6623303064153b5e600446cc4bfdae9cb79ef01', variant: "primary", size: "sm", label: "Install", disabled: !canInstall, onIndActivate: () => this.indInstall.emit() })))));
40
+ }
41
+ };
42
+ IndFirmwareUpdatePanel.style = panelCss() + firmwareUpdatePanelCss();
43
+
44
+ export { IndFirmwareUpdatePanel as ind_firmware_update_panel };
45
+ //# sourceMappingURL=ind-firmware-update-panel.entry.js.map
46
+
47
+ //# sourceMappingURL=ind-firmware-update-panel.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-firmware-update-panel.entry.js","sources":["src/components/organisms/_shared/panel.css?tag=ind-firmware-update-panel&encapsulation=shadow","src/components/organisms/firmware-update-panel/firmware-update-panel.css?tag=ind-firmware-update-panel&encapsulation=shadow","src/components/organisms/firmware-update-panel/firmware-update-panel.tsx"],"sourcesContent":["/* Shared chrome for organism panels. Pulled in first via\n * `styleUrls: ['../_shared/panel.css', 'xxx.css']`. */\n:host {\n display: flex;\n flex-direction: column;\n background: var(--ind-surface-panel);\n border: 1px solid var(--ind-surface-border-default);\n border-radius: var(--ind-radius-md, 3px);\n font-family: var(--ind-font-family-sans);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n box-sizing: border-box;\n overflow: hidden;\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n}\n\n.panel-head {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-4, 8px) var(--ind-spacing-5, 12px);\n border-bottom: 1px solid var(--ind-surface-border-subtle);\n background: var(--ind-surface-raised);\n flex: 0 0 auto;\n}\n\n.panel-titles {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n\n.panel-title {\n font-size: var(--ind-font-size-md, 13px);\n font-weight: var(--ind-font-weight-semibold, 600);\n line-height: 1.2;\n}\n\n.panel-subtitle {\n font-size: var(--ind-font-size-xs, 10px);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));\n}\n\n.panel-tag {\n font-family: var(--ind-font-family-mono);\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-secondary);\n}\n\n.panel-actions {\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-3, 6px);\n}\n\n.panel-body {\n display: flex;\n flex-direction: column;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-5, 12px);\n min-height: 0;\n}\n\n.panel-toolbar {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-3, 6px);\n padding: var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);\n border-bottom: 1px solid var(--ind-surface-border-subtle);\n flex: 0 0 auto;\n}\n\n.panel-list {\n display: flex;\n flex-direction: column;\n overflow: auto;\n}\n\n.panel-grid {\n display: grid;\n gap: var(--ind-spacing-4, 8px);\n padding: var(--ind-spacing-5, 12px);\n}\n\n.panel-empty {\n padding: var(--ind-spacing-7, 20px);\n text-align: center;\n color: var(--ind-surface-text-muted);\n font-size: var(--ind-font-size-sm, 11px);\n}\n\n.panel-spacer {\n flex: 1 1 auto;\n}\n",":host {\n min-width: 300px;\n}\n\nind-progress {\n width: 100%;\n}\n\n.versions {\n display: flex;\n align-items: center;\n gap: var(--ind-spacing-5, 12px);\n}\n\n.ver {\n display: flex;\n flex-direction: column;\n}\n\n.ver-label {\n font-size: var(--ind-font-size-xs, 10px);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n color: var(--ind-surface-text-muted);\n}\n\n.ver-value {\n font-family: var(--ind-font-family-mono);\n font-size: var(--ind-font-size-lg, 14px);\n font-weight: var(--ind-font-weight-semibold, 600);\n}\n\n.arrow {\n color: var(--ind-surface-text-muted);\n}\n\n.state {\n font-size: var(--ind-font-size-sm, 11px);\n font-weight: var(--ind-font-weight-bold, 700);\n padding: 2px 8px;\n border-radius: var(--ind-radius-full, 9999px);\n background: var(--ind-surface-raised);\n}\n\n.state-available { color: var(--ind-state-warning-bg, #f59e0b); }\n.state-up-to-date { color: var(--ind-state-running-bg, #16a34a); }\n.state-error { color: var(--ind-state-fault-bg, #dc2626); }\n","import { Component, Prop, Event, EventEmitter, h, Host } from '@stencil/core';\n\nexport type FirmwareState =\n | 'idle'\n | 'checking'\n | 'available'\n | 'downloading'\n | 'installing'\n | 'up-to-date'\n | 'error';\n\nconst STATE_LABEL: Record<FirmwareState, string> = {\n idle: 'Idle',\n checking: 'Checking…',\n available: 'Update available',\n downloading: 'Downloading…',\n installing: 'Installing…',\n 'up-to-date': 'Up to date',\n error: 'Update failed',\n};\n\n/**\n * Firmware update panel: current vs target version, update progress and the\n * Check / Install commands. Emits `indCheck` and `indInstall`.\n */\n@Component({\n tag: 'ind-firmware-update-panel',\n styleUrls: ['../_shared/panel.css', 'firmware-update-panel.css'],\n shadow: true,\n})\nexport class IndFirmwareUpdatePanel {\n @Prop() heading: string = 'Firmware';\n /** Device name. */\n @Prop() device?: string;\n /** Installed version. */\n @Prop() currentVersion!: string;\n /** Available / target version. */\n @Prop() targetVersion?: string;\n /** Update state. */\n @Prop({ reflect: true }) state: FirmwareState = 'idle';\n /** Progress 0–100 % while downloading / installing. */\n @Prop() progress: number = 0;\n\n @Event() indCheck!: EventEmitter<void>;\n @Event() indInstall!: EventEmitter<void>;\n\n render() {\n const busy = this.state === 'downloading' || this.state === 'installing' || this.state === 'checking';\n const canInstall = this.state === 'available';\n const progressVariant = this.state === 'error' ? 'error' : 'default';\n return (\n <Host>\n <div class=\"panel-head\">\n <div class=\"panel-titles\">\n <span class=\"panel-title\" part=\"heading\">{this.heading}</span>\n {this.device && <span class=\"panel-subtitle\">{this.device}</span>}\n </div>\n <span class={`state state-${this.state}`} part=\"state\">{STATE_LABEL[this.state]}</span>\n </div>\n <div class=\"panel-body\">\n <div class=\"versions\" part=\"versions\">\n <div class=\"ver\">\n <span class=\"ver-label\">Installed</span>\n <span class=\"ver-value\">{this.currentVersion}</span>\n </div>\n <span class=\"arrow\" aria-hidden=\"true\">→</span>\n <div class=\"ver\">\n <span class=\"ver-label\">Target</span>\n <span class=\"ver-value\">{this.targetVersion ?? '—'}</span>\n </div>\n </div>\n {busy && (\n <ind-progress value={this.progress} max={100} variant={progressVariant} size=\"md\" show-value indeterminate={this.state === 'checking'}></ind-progress>\n )}\n <ind-command-group label=\"Firmware commands\">\n <ind-button variant=\"default\" size=\"sm\" label=\"Check\" disabled={busy} onIndActivate={() => this.indCheck.emit()} />\n <ind-button variant=\"primary\" size=\"sm\" label=\"Install\" disabled={!canInstall} onIndActivate={() => this.indInstall.emit()} />\n </ind-command-group>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,yzDAAyzD,CAAC;;ACAl1D,MAAM,sBAAsB,GAAG,MAAM,CAAC,y0BAAy0B,CAAC;;ACWh3B,MAAM,WAAW,GAAkC;AACjD,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,WAAW;AACrB,IAAA,SAAS,EAAE,kBAAkB;AAC7B,IAAA,WAAW,EAAE,cAAc;AAC3B,IAAA,UAAU,EAAE,aAAa;AACzB,IAAA,YAAY,EAAE,YAAY;AAC1B,IAAA,KAAK,EAAE,eAAe;CACvB;MAWY,sBAAsB,GAAA,MAAA;;;;;;IACzB,OAAO,GAAW,UAAU;;AAE5B,IAAA,MAAM;;AAEN,IAAA,cAAc;;AAEd,IAAA,aAAa;;IAEI,KAAK,GAAkB,MAAM;;IAE9C,QAAQ,GAAW,CAAC;AAEnB,IAAA,QAAQ;AACR,IAAA,UAAU;IAEnB,MAAM,GAAA;AACJ,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,KAAK,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,YAAY,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU;AACrG,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,KAAK,WAAW;AAC7C,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,KAAK,OAAO,GAAG,OAAO,GAAG,SAAS;QACpE,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAA,EACrB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,cAAc,EAAA,EACvB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,SAAS,EAAA,EAAE,IAAI,CAAC,OAAO,CAAQ,EAC7D,IAAI,CAAC,MAAM,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,gBAAgB,EAAA,EAAE,IAAI,CAAC,MAAM,CAAQ,CAC7D,EACN,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAE,CAAA,YAAA,EAAe,IAAI,CAAC,KAAK,CAAA,CAAE,EAAE,IAAI,EAAC,OAAO,EAAA,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAQ,CACnF,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAA,EACrB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,UAAU,EAAA,EACnC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,KAAK,EAAA,EACd,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,WAAW,EAAA,EAAA,WAAA,CAAiB,EACxC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,WAAW,EAAA,EAAE,IAAI,CAAC,cAAc,CAAQ,CAChD,EACN,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,OAAO,EAAA,aAAA,EAAa,MAAM,EAAA,EAAA,QAAA,CAAS,EAC/C,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,KAAK,EAAA,EACd,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,WAAW,EAAA,EAAA,QAAA,CAAc,EACrC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,WAAW,EAAA,EAAE,IAAI,CAAC,aAAa,IAAI,GAAG,CAAQ,CACtD,CACF,EACL,IAAI,KACH,CAAA,CAAA,cAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAc,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAC,IAAI,EAAA,YAAA,EAAA,IAAA,EAAY,aAAa,EAAE,IAAI,CAAC,KAAK,KAAK,UAAU,GAAiB,CACvJ,EACD,CAAA,CAAA,mBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAmB,KAAK,EAAC,mBAAmB,EAAA,EAC1C,CAAA,CAAA,YAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAY,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAA,CAAI,EACnH,CAAA,CAAA,YAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAY,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAA,CAAI,CAC5G,CAChB,CACD;;;;;;;"}
@@ -0,0 +1,65 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const gaugeCss = () => `:host{display:inline-flex;flex-direction:column;align-items:center;font-family:var(--ind-font-family-sans, system-ui, sans-serif);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));--_w:120px}:host([size="sm"]){--_w:84px}:host([size="md"]){--_w:120px}:host([size="lg"]){--_w:168px}.gauge{width:var(--_w);height:var(--_w);display:block}.track{fill:none;stroke:var(--ind-surface-border-default, #2a3340);stroke-width:8;stroke-linecap:round}.zone{fill:none;stroke-width:8;stroke-linecap:butt}.needle{stroke:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));stroke-width:2.5;stroke-linecap:round;transition:all var(--ind-motion-duration-base, 200ms) var(--ind-motion-easing-standard, ease)}.hub{fill:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5))}.readout{display:inline-flex;align-items:baseline;gap:3px;margin-top:-28%}.number{font-family:var(--ind-font-family-mono, ui-monospace, monospace);font-size:var(--ind-font-size-xl, 16px);font-weight:var(--ind-font-weight-semibold, 600);font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}:host([size="lg"]) .number{font-size:var(--ind-font-size-2xl, 20px)}.unit{font-size:var(--ind-font-size-xs, 10px);color:var(--ind-surface-text-muted, #7a8694)}.label{margin-top:var(--ind-spacing-2, 4px);font-size:var(--ind-font-size-xs, 10px);color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2))}@media (prefers-reduced-motion: reduce){.needle{transition:none}}`;
4
+
5
+ const IndGauge = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ }
9
+ /** Current value. */
10
+ value = 0;
11
+ /** Scale minimum. */
12
+ min = 0;
13
+ /** Scale maximum. */
14
+ max = 100;
15
+ /** Colored zones along the arc (e.g. green/amber/red bands). Pass as a property. */
16
+ zones = [];
17
+ /** Engineering unit. */
18
+ unit;
19
+ /** Label / tag rendered under the value. */
20
+ label;
21
+ /** Decimal places for the value. */
22
+ precision;
23
+ /** Size. */
24
+ size = 'md';
25
+ // 270° sweep from 135° (bottom-left) clockwise to 405°/45° (bottom-right).
26
+ startAngle = 135;
27
+ sweep = 270;
28
+ cx = 50;
29
+ cy = 50;
30
+ r = 40;
31
+ valueToAngle(v) {
32
+ const span = this.max - this.min || 1;
33
+ const ratio = Math.min(1, Math.max(0, (v - this.min) / span));
34
+ return this.startAngle + ratio * this.sweep;
35
+ }
36
+ polar(angleDeg, radius = this.r) {
37
+ const a = (angleDeg * Math.PI) / 180;
38
+ return { x: this.cx + radius * Math.cos(a), y: this.cy + radius * Math.sin(a) };
39
+ }
40
+ arc(fromV, toV, radius = this.r) {
41
+ const a0 = this.valueToAngle(fromV);
42
+ const a1 = this.valueToAngle(toV);
43
+ const p0 = this.polar(a0, radius);
44
+ const p1 = this.polar(a1, radius);
45
+ const large = a1 - a0 > 180 ? 1 : 0;
46
+ return `M ${p0.x.toFixed(2)} ${p0.y.toFixed(2)} A ${radius} ${radius} 0 ${large} 1 ${p1.x.toFixed(2)} ${p1.y.toFixed(2)}`;
47
+ }
48
+ formatted() {
49
+ if (!Number.isFinite(this.value))
50
+ return '--';
51
+ return this.precision !== undefined ? this.value.toFixed(this.precision) : String(this.value);
52
+ }
53
+ render() {
54
+ const needleAngle = this.valueToAngle(this.value);
55
+ const tip = this.polar(needleAngle, this.r - 6);
56
+ const name = this.label ?? 'gauge';
57
+ return (h(Host, { key: '1dcc7b4a14620e9e67f62b4bb839de1c73c9eb28', role: "meter", "aria-valuenow": this.value, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-label": `${name}: ${this.formatted()}${this.unit ? ' ' + this.unit : ''}` }, h("svg", { key: '835dadb8fe0ffcab0bd4f3dc62d7049a6a9d04dd', class: "gauge", part: "gauge", viewBox: "0 0 100 100", "aria-hidden": "true" }, h("path", { key: '440f32cf9718f31589b1c3320c3e5db538a5aaaf', class: "track", part: "track", d: this.arc(this.min, this.max) }), (this.zones ?? []).map((z) => (h("path", { class: "zone", d: this.arc(z.from, z.to), style: { stroke: z.color } }))), h("line", { key: 'd7d4f7fc4137c2763d3d51f2e33bd4f833e8f349', class: "needle", part: "needle", x1: this.cx, y1: this.cy, x2: tip.x, y2: tip.y }), h("circle", { key: 'f8e497fd70ab2f68f12d867efc41b45e8477ee7e', class: "hub", cx: this.cx, cy: this.cy, r: "3.5" })), h("div", { key: 'e71f4f120c4a8618c54a4287a47e292375a1acad', class: "readout", part: "readout" }, h("span", { key: '7cc72fe3205519521e18eb1cbc9d374101704d2d', class: "number", part: "number" }, this.formatted()), this.unit && h("span", { key: '2309b9b1c009a726af38381e8ad05aa8365f4109', class: "unit", part: "unit" }, this.unit)), this.label && h("span", { key: '2d7c584f453a5006f75d6b5f03af2d1e4a200a59', class: "label", part: "label" }, this.label)));
58
+ }
59
+ };
60
+ IndGauge.style = gaugeCss();
61
+
62
+ export { IndGauge as ind_gauge };
63
+ //# sourceMappingURL=ind-gauge.entry.js.map
64
+
65
+ //# sourceMappingURL=ind-gauge.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-gauge.entry.js","sources":["src/components/atoms/gauge/gauge.css?tag=ind-gauge&encapsulation=shadow","src/components/atoms/gauge/gauge.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n font-family: var(--ind-font-family-sans, system-ui, sans-serif);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n --_w: 120px;\n}\n\n:host([size=\"sm\"]) { --_w: 84px; }\n:host([size=\"md\"]) { --_w: 120px; }\n:host([size=\"lg\"]) { --_w: 168px; }\n\n.gauge {\n width: var(--_w);\n height: var(--_w);\n display: block;\n}\n\n.track {\n fill: none;\n stroke: var(--ind-surface-border-default, #2a3340);\n stroke-width: 8;\n stroke-linecap: round;\n}\n\n.zone {\n fill: none;\n stroke-width: 8;\n stroke-linecap: butt;\n}\n\n.needle {\n stroke: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n stroke-width: 2.5;\n stroke-linecap: round;\n transition: all var(--ind-motion-duration-base, 200ms) var(--ind-motion-easing-standard, ease);\n}\n\n.hub {\n fill: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n}\n\n.readout {\n display: inline-flex;\n align-items: baseline;\n gap: 3px;\n margin-top: -28%;\n}\n\n.number {\n font-family: var(--ind-font-family-mono, ui-monospace, monospace);\n font-size: var(--ind-font-size-xl, 16px);\n font-weight: var(--ind-font-weight-semibold, 600);\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n}\n\n:host([size=\"lg\"]) .number { font-size: var(--ind-font-size-2xl, 20px); }\n\n.unit { font-size: var(--ind-font-size-xs, 10px); color: var(--ind-surface-text-muted, #7a8694); }\n\n.label {\n margin-top: var(--ind-spacing-2, 4px);\n font-size: var(--ind-font-size-xs, 10px);\n color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));\n}\n\n@media (prefers-reduced-motion: reduce) {\n .needle { transition: none; }\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nexport interface GaugeZone {\n from: number;\n to: number;\n /** CSS color or a state keyword resolved to a token. */\n color: string;\n}\n\nexport type GaugeSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-gauge',\n styleUrl: 'gauge.css',\n shadow: true,\n})\nexport class IndGauge {\n /** Current value. */\n @Prop() value: number = 0;\n /** Scale minimum. */\n @Prop() min: number = 0;\n /** Scale maximum. */\n @Prop() max: number = 100;\n /** Colored zones along the arc (e.g. green/amber/red bands). Pass as a property. */\n @Prop() zones: GaugeZone[] = [];\n /** Engineering unit. */\n @Prop() unit?: string;\n /** Label / tag rendered under the value. */\n @Prop() label?: string;\n /** Decimal places for the value. */\n @Prop() precision?: number;\n /** Size. */\n @Prop({ reflect: true }) size: GaugeSize = 'md';\n\n // 270° sweep from 135° (bottom-left) clockwise to 405°/45° (bottom-right).\n private readonly startAngle = 135;\n private readonly sweep = 270;\n private readonly cx = 50;\n private readonly cy = 50;\n private readonly r = 40;\n\n private valueToAngle(v: number): number {\n const span = this.max - this.min || 1;\n const ratio = Math.min(1, Math.max(0, (v - this.min) / span));\n return this.startAngle + ratio * this.sweep;\n }\n\n private polar(angleDeg: number, radius = this.r): { x: number; y: number } {\n const a = (angleDeg * Math.PI) / 180;\n return { x: this.cx + radius * Math.cos(a), y: this.cy + radius * Math.sin(a) };\n }\n\n private arc(fromV: number, toV: number, radius = this.r): string {\n const a0 = this.valueToAngle(fromV);\n const a1 = this.valueToAngle(toV);\n const p0 = this.polar(a0, radius);\n const p1 = this.polar(a1, radius);\n const large = a1 - a0 > 180 ? 1 : 0;\n return `M ${p0.x.toFixed(2)} ${p0.y.toFixed(2)} A ${radius} ${radius} 0 ${large} 1 ${p1.x.toFixed(2)} ${p1.y.toFixed(2)}`;\n }\n\n private formatted(): string {\n if (!Number.isFinite(this.value)) return '--';\n return this.precision !== undefined ? this.value.toFixed(this.precision) : String(this.value);\n }\n\n render() {\n const needleAngle = this.valueToAngle(this.value);\n const tip = this.polar(needleAngle, this.r - 6);\n const name = this.label ?? 'gauge';\n return (\n <Host\n role=\"meter\"\n aria-valuenow={this.value}\n aria-valuemin={this.min}\n aria-valuemax={this.max}\n aria-label={`${name}: ${this.formatted()}${this.unit ? ' ' + this.unit : ''}`}\n >\n <svg class=\"gauge\" part=\"gauge\" viewBox=\"0 0 100 100\" aria-hidden=\"true\">\n <path class=\"track\" part=\"track\" d={this.arc(this.min, this.max)} />\n {(this.zones ?? []).map((z) => (\n <path class=\"zone\" d={this.arc(z.from, z.to)} style={{ stroke: z.color }} />\n ))}\n <line class=\"needle\" part=\"needle\" x1={this.cx} y1={this.cy} x2={tip.x} y2={tip.y} />\n <circle class=\"hub\" cx={this.cx} cy={this.cy} r=\"3.5\" />\n </svg>\n <div class=\"readout\" part=\"readout\">\n <span class=\"number\" part=\"number\">{this.formatted()}</span>\n {this.unit && <span class=\"unit\" part=\"unit\">{this.unit}</span>}\n </div>\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,y7CAAy7C,CAAC;;MCgBr8C,QAAQ,GAAA,MAAA;;;;;IAEX,KAAK,GAAW,CAAC;;IAEjB,GAAG,GAAW,CAAC;;IAEf,GAAG,GAAW,GAAG;;IAEjB,KAAK,GAAgB,EAAE;;AAEvB,IAAA,IAAI;;AAEJ,IAAA,KAAK;;AAEL,IAAA,SAAS;;IAEQ,IAAI,GAAc,IAAI;;IAG9B,UAAU,GAAG,GAAG;IAChB,KAAK,GAAG,GAAG;IACX,EAAE,GAAG,EAAE;IACP,EAAE,GAAG,EAAE;IACP,CAAC,GAAG,EAAE;AAEf,IAAA,YAAY,CAAC,CAAS,EAAA;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK;;AAGrC,IAAA,KAAK,CAAC,QAAgB,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,EAAA;QAC7C,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG;AACpC,QAAA,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;;IAGzE,GAAG,CAAC,KAAa,EAAE,GAAW,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,EAAA;QACrD,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;QACjC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC;QACjC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC;AACjC,QAAA,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;AACnC,QAAA,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,CAAA,CAAA,EAAI,MAAM,CAAA,GAAA,EAAM,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;;IAGnH,SAAS,GAAA;QACf,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,IAAI;QAC7C,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;;IAG/F,MAAM,GAAA;QACJ,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AACjD,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC/C,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO;AAClC,QAAA,QACE,CAAA,CAAC,IAAI,qDACH,IAAI,EAAC,OAAO,EAAA,eAAA,EACG,IAAI,CAAC,KAAK,EAAA,eAAA,EACV,IAAI,CAAC,GAAG,mBACR,IAAI,CAAC,GAAG,EAAA,YAAA,EACX,CAAA,EAAG,IAAI,CAAA,EAAA,EAAK,IAAI,CAAC,SAAS,EAAE,CAAA,EAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE,EAAE,EAAA,EAE7E,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,EAAA,aAAA,EAAa,MAAM,EAAA,EACtE,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,EAAA,CAAI,EACnE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,MACxB,CAAA,CAAA,MAAA,EAAA,EAAM,KAAK,EAAC,MAAM,EAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,EAAA,CAAI,CAC7E,CAAC,EACF,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAA,CAAI,EACrF,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,KAAK,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,EAAC,KAAK,GAAG,CACpD,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAA,EACjC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAA,EAAE,IAAI,CAAC,SAAS,EAAE,CAAQ,EAC3D,IAAI,CAAC,IAAI,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAA,EAAE,IAAI,CAAC,IAAI,CAAQ,CAC3D,EACL,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC9D;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-D2yNiL0d.js';
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
2
 
3
3
  const healthCardCss = () => `:host{display:flex;flex-direction:column;gap:var(--ind-spacing-3, 6px);padding:var(--ind-spacing-5, 12px);background:var(--ind-surface-panel);border:1px solid var(--ind-surface-border-default);border-radius:var(--ind-radius-md, 3px);font-family:var(--ind-font-family-sans);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));min-width:160px;font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.title{font-size:var(--ind-font-size-xs, 10px);font-weight:var(--ind-font-weight-bold, 700);text-transform:uppercase;letter-spacing:0.08em;color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2))}.status{display:flex;align-items:center;gap:var(--ind-spacing-3, 6px)}.state-label{font-size:var(--ind-font-size-xl, 16px);font-weight:var(--ind-font-weight-semibold, 600);line-height:1}.detail{font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0))}:host([state="running"]) .state-label{color:var(--ind-state-running-bg, #16a34a)}:host([state="fault"]) .state-label{color:var(--ind-state-fault-bg, #dc2626)}:host([state="warning"]) .state-label{color:var(--ind-state-warning-bg, #f59e0b)}:host([state="maintenance"]) .state-label{color:var(--ind-state-maintenance-bg, #2563eb)}:host([state="stopped"]) .state-label{color:var(--ind-surface-text-secondary)}:host([state="unknown"]) .state-label{color:var(--ind-surface-text-muted)}:host([state="fault"]){border-color:var(--ind-state-fault-bg, #dc2626);box-shadow:0 0 0 1px color-mix(in srgb, var(--ind-state-fault-bg, #dc2626) 30%, transparent)}`;
4
4
 
@@ -25,7 +25,7 @@ const IndHealthCard = class {
25
25
  render() {
26
26
  const label = this.stateLabel ?? DEFAULT_LABEL[this.state];
27
27
  const dotState = this.state === 'unknown' ? 'neutral' : this.state;
28
- return (h(Host, { key: '2bc1d2152325d8a40fb9399ec6c24b0134bde34a', role: "group", "aria-label": `${this.heading}: ${label}`, "aria-live": this.state === 'fault' ? 'assertive' : 'polite' }, h("div", { key: '7268095055dc03a742e97786a22dd4179f6e8ac3', class: "title", part: "title" }, this.heading), h("div", { key: '4069f5782516eb2b28bfafb4b0a59c3fe6133321', class: "status", part: "status" }, h("ind-status-dot", { key: '651976ae059c6b8faafd4bb4de7c1fa08fd6b86b', state: dotState, size: "md" }), h("span", { key: '18925ef8bb2c51789f315a2adf8cacc5a7ad4712', class: "state-label", part: "state-label" }, label)), this.detail && h("div", { key: '7f3c37bca74f5f5fb92633f9c7d85681c78bd677', class: "detail", part: "detail" }, this.detail)));
28
+ return (h(Host, { key: '8bcd20c7ae26a39c6627aa547ce01d12d53bdb8e', role: "group", "aria-label": `${this.heading}: ${label}`, "aria-live": this.state === 'fault' ? 'assertive' : 'polite' }, h("div", { key: 'eee5962658e3ddb193ad613083535b1101cc7770', class: "title", part: "title" }, this.heading), h("div", { key: '2ab1426acd7f2863bb4b2832847b68ff9d0e4d33', class: "status", part: "status" }, h("ind-status-dot", { key: 'b09a658e623532ee3a5b6f72f94e27d01849ef5c', state: dotState, size: "md" }), h("span", { key: '365c3e7a25f850174caa59a7efad2f4df9996946', class: "state-label", part: "state-label" }, label)), this.detail && h("div", { key: '7c35221f76e00d7d0223b3c3e89795ae9a3721ce', class: "detail", part: "detail" }, this.detail)));
29
29
  }
30
30
  };
31
31
  IndHealthCard.style = healthCardCss();
@@ -0,0 +1,26 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const heartbeatCss = () => `:host{display:inline-flex;align-items:center;gap:var(--ind-spacing-3, 6px);font-family:var(--ind-font-family-sans, system-ui, sans-serif);font-size:var(--ind-font-size-base, 12px);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));--_size:10px;--_color:var(--ind-state-running-bg, #16a34a);--_period:1000ms}:host([size="sm"]){--_size:8px}:host([size="lg"]){--_size:14px}:host(:not([alive])){--_color:var(--ind-state-fault-bg, #dc2626)}.pulse{position:relative;display:inline-flex;width:var(--_size);height:var(--_size);flex:none}.core{position:absolute;inset:0;margin:auto;width:var(--_size);height:var(--_size);border-radius:50%;background:var(--_color)}.ring{position:absolute;inset:0;border-radius:50%;background:var(--_color);opacity:0}:host([alive]) .ring{animation:ind-heartbeat var(--_period) ease-out infinite}@keyframes ind-heartbeat{0%{transform:scale(1);opacity:0.6}70%{transform:scale(2.6);opacity:0}100%{transform:scale(2.6);opacity:0}}.label{color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2))}@media (prefers-reduced-motion: reduce){.ring{animation:none !important}}`;
4
+
5
+ const IndHeartbeat = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ }
9
+ /** Whether the monitored source is alive. When false the pulse stops. */
10
+ alive = true;
11
+ /** Beat interval in milliseconds (drives the pulse animation period). */
12
+ interval = 1000;
13
+ /** Size. */
14
+ size = 'md';
15
+ /** Optional label rendered next to the pulse. */
16
+ label;
17
+ render() {
18
+ return (h(Host, { key: '57635f480aa687475404cc5078e5f2ad1bef3522', role: "status", "aria-live": "polite", "aria-label": this.label ?? (this.alive ? 'Heartbeat active' : 'Heartbeat lost'), style: { '--_period': `${Math.max(200, this.interval)}ms` } }, h("span", { key: 'c1a84671caebe2949acb923a666cd9f2318e95a7', class: "pulse", part: "pulse", "aria-hidden": "true" }, h("span", { key: '720ef97105a86565d5aced3d77ada332b6c1ded2', class: "core", part: "core" }), h("span", { key: 'f865735ce0515440a8b1148dbe9a506bbc891cc9', class: "ring", part: "ring" })), this.label && h("span", { key: 'b15159d02b971495987871841848d27c9f21e94c', class: "label", part: "label" }, this.label)));
19
+ }
20
+ };
21
+ IndHeartbeat.style = heartbeatCss();
22
+
23
+ export { IndHeartbeat as ind_heartbeat };
24
+ //# sourceMappingURL=ind-heartbeat.entry.js.map
25
+
26
+ //# sourceMappingURL=ind-heartbeat.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-heartbeat.entry.js","sources":["src/components/atoms/heartbeat/heartbeat.css?tag=ind-heartbeat&encapsulation=shadow","src/components/atoms/heartbeat/heartbeat.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n align-items: center;\n gap: var(--ind-spacing-3, 6px);\n font-family: var(--ind-font-family-sans, system-ui, sans-serif);\n font-size: var(--ind-font-size-base, 12px);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n --_size: 10px;\n --_color: var(--ind-state-running-bg, #16a34a);\n --_period: 1000ms;\n}\n\n:host([size=\"sm\"]) { --_size: 8px; }\n:host([size=\"lg\"]) { --_size: 14px; }\n\n:host(:not([alive])) { --_color: var(--ind-state-fault-bg, #dc2626); }\n\n.pulse {\n position: relative;\n display: inline-flex;\n width: var(--_size);\n height: var(--_size);\n flex: none;\n}\n\n.core {\n position: absolute;\n inset: 0;\n margin: auto;\n width: var(--_size);\n height: var(--_size);\n border-radius: 50%;\n background: var(--_color);\n}\n\n.ring {\n position: absolute;\n inset: 0;\n border-radius: 50%;\n background: var(--_color);\n opacity: 0;\n}\n\n:host([alive]) .ring {\n animation: ind-heartbeat var(--_period) ease-out infinite;\n}\n\n@keyframes ind-heartbeat {\n 0% { transform: scale(1); opacity: 0.6; }\n 70% { transform: scale(2.6); opacity: 0; }\n 100% { transform: scale(2.6); opacity: 0; }\n}\n\n.label { color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2)); }\n\n@media (prefers-reduced-motion: reduce) {\n .ring { animation: none !important; }\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type HeartbeatSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-heartbeat',\n styleUrl: 'heartbeat.css',\n shadow: true,\n})\nexport class IndHeartbeat {\n /** Whether the monitored source is alive. When false the pulse stops. */\n @Prop({ reflect: true }) alive: boolean = true;\n\n /** Beat interval in milliseconds (drives the pulse animation period). */\n @Prop() interval: number = 1000;\n\n /** Size. */\n @Prop({ reflect: true }) size: HeartbeatSize = 'md';\n\n /** Optional label rendered next to the pulse. */\n @Prop() label?: string;\n\n render() {\n return (\n <Host\n role=\"status\"\n aria-live=\"polite\"\n aria-label={this.label ?? (this.alive ? 'Heartbeat active' : 'Heartbeat lost')}\n style={{ '--_period': `${Math.max(200, this.interval)}ms` }}\n >\n <span class=\"pulse\" part=\"pulse\" aria-hidden=\"true\">\n <span class=\"core\" part=\"core\" />\n <span class=\"ring\" part=\"ring\" />\n </span>\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,YAAY,GAAG,MAAM,CAAC,4lCAA4lC,CAAC;;MCS5mC,YAAY,GAAA,MAAA;;;;;IAEE,KAAK,GAAY,IAAI;;IAGtC,QAAQ,GAAW,IAAI;;IAGN,IAAI,GAAkB,IAAI;;AAG3C,IAAA,KAAK;IAEb,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EACH,IAAI,EAAC,QAAQ,eACH,QAAQ,EAAA,YAAA,EACN,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG,kBAAkB,GAAG,gBAAgB,CAAC,EAC9E,KAAK,EAAE,EAAE,WAAW,EAAE,CAAA,EAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA,EAAA,CAAI,EAAE,EAAA,EAE3D,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,iBAAa,MAAM,EAAA,EACjD,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAA,CAAG,EACjC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,GAAG,CAC5B,EACN,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC9D;;;;;;;"}
@@ -0,0 +1,29 @@
1
+ import { r as registerInstance, h, H as Host } from './index-Bls_NlWP.js';
2
+
3
+ const equipmentCss = () => `:host{display:inline-flex;flex-direction:column;align-items:center;gap:var(--ind-spacing-2, 4px);font-family:var(--ind-font-family-sans, system-ui, sans-serif);font-size:var(--ind-font-size-sm, 11px);color:var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));--_w:48px;--_stroke:var(--ind-state-stopped-border, #8390a0);--_fill:var(--ind-state-stopped-bg, #5a6776);--_accent:var(--ind-state-stopped-bg, #5a6776)}:host([size="sm"]){--_w:32px}:host([size="md"]){--_w:48px}:host([size="lg"]){--_w:72px}:host([state="running"]){--_stroke:var(--ind-state-running-border, #4ade80);--_fill:var(--ind-state-running-bg, #16a34a);--_accent:var(--ind-state-running-bg, #16a34a)}:host([state="stopped"]){--_stroke:var(--ind-state-stopped-border, #8390a0);--_fill:var(--ind-state-stopped-bg, #5a6776);--_accent:var(--ind-state-stopped-bg, #5a6776)}:host([state="fault"]){--_stroke:var(--ind-state-fault-border, #f87171);--_fill:var(--ind-state-fault-bg, #dc2626);--_accent:var(--ind-state-fault-bg, #dc2626)}:host([state="warning"]){--_stroke:var(--ind-state-warning-border, #fcd34d);--_fill:var(--ind-state-warning-bg, #f59e0b);--_accent:var(--ind-state-warning-bg, #f59e0b)}:host([state="maintenance"]){--_stroke:var(--ind-state-maintenance-border, #60a5fa);--_fill:var(--ind-state-maintenance-bg, #2563eb);--_accent:var(--ind-state-maintenance-bg, #2563eb)}.symbol{display:block;width:var(--_w);height:auto;overflow:visible}.body{fill:color-mix(in srgb, var(--_fill) 22%, transparent);stroke:var(--_stroke);stroke-width:1.5;vector-effect:non-scaling-stroke}.accent{fill:var(--_accent);stroke:none}.stroke{fill:none;stroke:var(--_stroke);stroke-width:1.5;stroke-linecap:round;vector-effect:non-scaling-stroke}.caption{display:flex;flex-direction:column;align-items:center;line-height:var(--ind-font-line-height-tight, 1.1)}.tag{font-family:var(--ind-font-family-mono, ui-monospace, monospace);font-weight:var(--ind-font-weight-semibold, 600);font-feature-settings:var(--ind-font-feature-tabular, "tnum" 1)}.label{color:var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));font-size:var(--ind-font-size-xs, 10px)}@media (prefers-reduced-motion: reduce){.spin,.pulse{animation:none !important}}`;
4
+
5
+ const heaterCss = () => `.coil{fill:none;stroke:var(--_stroke);stroke-width:1.5;stroke-linecap:round;vector-effect:non-scaling-stroke}:host([state="running"]){--_stroke:var(--ind-state-warning-border, #fcd34d);--_fill:var(--ind-state-fault-bg, #dc2626)}:host([state="running"]) .coil{stroke:var(--ind-state-fault-bg, #ef4444);animation:ind-heater-glow 1.4s ease-in-out infinite}@keyframes ind-heater-glow{50%{stroke:var(--ind-state-warning-bg, #f59e0b)}}`;
6
+
7
+ const IndHeater = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ }
11
+ /** Process state. `running` glows the element. */
12
+ state = 'stopped';
13
+ /** Visual size. */
14
+ size = 'md';
15
+ /** Equipment tag (e.g. "EH-601"). */
16
+ tag;
17
+ /** Human label. */
18
+ label;
19
+ render() {
20
+ const name = this.label ?? this.tag ?? 'heater';
21
+ return (h(Host, { key: 'd89d4fd8c92b5d580e9a042645f044ad1a1ee292', role: "img", "aria-label": `${name} — ${this.state}` }, h("svg", { key: '03cd61a0fdcd116f4efa913301a1f16797f3b755', class: "symbol", viewBox: "0 0 48 48", "aria-hidden": "true" }, h("circle", { key: '1eb5b9ac742fbc70a137f46a98b036cc74b1a820', class: "body", cx: "24", cy: "24", r: "16" }), h("path", { key: '4e5f078661433f278f0ec6ec7ba9648021b9c237', class: "coil", d: "M14 18 q5 -6 10 0 t10 0 M14 24 q5 -6 10 0 t10 0 M14 30 q5 -6 10 0 t10 0" })), (this.tag || this.label) && (h("div", { key: '9cb689e0d55fe6744948e0c9c3f9d456d6aed084', class: "caption" }, this.tag && h("span", { key: '31ff37c274b8c107ce29982c21c2200bf93d6257', class: "tag" }, this.tag), this.label && h("span", { key: '4fd695b74a6bf03a43a0dd6ee90bb6a167556cc0', class: "label" }, this.label)))));
22
+ }
23
+ };
24
+ IndHeater.style = equipmentCss() + heaterCss();
25
+
26
+ export { IndHeater as ind_heater };
27
+ //# sourceMappingURL=ind-heater.entry.js.map
28
+
29
+ //# sourceMappingURL=ind-heater.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ind-heater.entry.js","sources":["src/components/atoms/_equipment/equipment.css?tag=ind-heater&encapsulation=shadow","src/components/atoms/heater/heater.css?tag=ind-heater&encapsulation=shadow","src/components/atoms/heater/heater.tsx"],"sourcesContent":["/* Shared base styles for ind-ds process-equipment symbols.\n * Referenced via styleUrls alongside each component's own CSS. */\n:host {\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n gap: var(--ind-spacing-2, 4px);\n font-family: var(--ind-font-family-sans, system-ui, sans-serif);\n font-size: var(--ind-font-size-sm, 11px);\n color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));\n --_w: 48px;\n --_stroke: var(--ind-state-stopped-border, #8390a0);\n --_fill: var(--ind-state-stopped-bg, #5a6776);\n --_accent: var(--ind-state-stopped-bg, #5a6776);\n}\n\n:host([size=\"sm\"]) { --_w: 32px; }\n:host([size=\"md\"]) { --_w: 48px; }\n:host([size=\"lg\"]) { --_w: 72px; }\n\n:host([state=\"running\"]) { --_stroke: var(--ind-state-running-border, #4ade80); --_fill: var(--ind-state-running-bg, #16a34a); --_accent: var(--ind-state-running-bg, #16a34a); }\n:host([state=\"stopped\"]) { --_stroke: var(--ind-state-stopped-border, #8390a0); --_fill: var(--ind-state-stopped-bg, #5a6776); --_accent: var(--ind-state-stopped-bg, #5a6776); }\n:host([state=\"fault\"]) { --_stroke: var(--ind-state-fault-border, #f87171); --_fill: var(--ind-state-fault-bg, #dc2626); --_accent: var(--ind-state-fault-bg, #dc2626); }\n:host([state=\"warning\"]) { --_stroke: var(--ind-state-warning-border, #fcd34d); --_fill: var(--ind-state-warning-bg, #f59e0b); --_accent: var(--ind-state-warning-bg, #f59e0b); }\n:host([state=\"maintenance\"]) { --_stroke: var(--ind-state-maintenance-border, #60a5fa); --_fill: var(--ind-state-maintenance-bg, #2563eb); --_accent: var(--ind-state-maintenance-bg, #2563eb); }\n\n.symbol {\n display: block;\n width: var(--_w);\n height: auto;\n overflow: visible;\n}\n\n.body {\n fill: color-mix(in srgb, var(--_fill) 22%, transparent);\n stroke: var(--_stroke);\n stroke-width: 1.5;\n vector-effect: non-scaling-stroke;\n}\n\n.accent {\n fill: var(--_accent);\n stroke: none;\n}\n\n.stroke {\n fill: none;\n stroke: var(--_stroke);\n stroke-width: 1.5;\n stroke-linecap: round;\n vector-effect: non-scaling-stroke;\n}\n\n.caption {\n display: flex;\n flex-direction: column;\n align-items: center;\n line-height: var(--ind-font-line-height-tight, 1.1);\n}\n\n.tag {\n font-family: var(--ind-font-family-mono, ui-monospace, monospace);\n font-weight: var(--ind-font-weight-semibold, 600);\n font-feature-settings: var(--ind-font-feature-tabular, \"tnum\" 1);\n}\n\n.label {\n color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));\n font-size: var(--ind-font-size-xs, 10px);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spin, .pulse { animation: none !important; }\n}\n",".coil {\n fill: none;\n stroke: var(--_stroke);\n stroke-width: 1.5;\n stroke-linecap: round;\n vector-effect: non-scaling-stroke;\n}\n\n:host([state=\"running\"]) {\n --_stroke: var(--ind-state-warning-border, #fcd34d);\n --_fill: var(--ind-state-fault-bg, #dc2626);\n}\n:host([state=\"running\"]) .coil {\n stroke: var(--ind-state-fault-bg, #ef4444);\n animation: ind-heater-glow 1.4s ease-in-out infinite;\n}\n\n@keyframes ind-heater-glow {\n 50% { stroke: var(--ind-state-warning-bg, #f59e0b); }\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\nimport type { EquipmentState, EquipmentSize } from '../_equipment/types';\n\n@Component({\n tag: 'ind-heater',\n styleUrls: ['../_equipment/equipment.css', 'heater.css'],\n shadow: true,\n})\nexport class IndHeater {\n /** Process state. `running` glows the element. */\n @Prop({ reflect: true }) state: EquipmentState = 'stopped';\n /** Visual size. */\n @Prop({ reflect: true }) size: EquipmentSize = 'md';\n /** Equipment tag (e.g. \"EH-601\"). */\n @Prop() tag?: string;\n /** Human label. */\n @Prop() label?: string;\n\n render() {\n const name = this.label ?? this.tag ?? 'heater';\n return (\n <Host role=\"img\" aria-label={`${name} — ${this.state}`}>\n {/* Heating element: circle with a resistive serpentine. */}\n <svg class=\"symbol\" viewBox=\"0 0 48 48\" aria-hidden=\"true\">\n <circle class=\"body\" cx=\"24\" cy=\"24\" r=\"16\" />\n <path class=\"coil\" d=\"M14 18 q5 -6 10 0 t10 0 M14 24 q5 -6 10 0 t10 0 M14 30 q5 -6 10 0 t10 0\" />\n </svg>\n {(this.tag || this.label) && (\n <div class=\"caption\">\n {this.tag && <span class=\"tag\">{this.tag}</span>}\n {this.label && <span class=\"label\">{this.label}</span>}\n </div>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,YAAY,GAAG,MAAM,CAAC,ypEAAypE,CAAC;;ACAtrE,MAAM,SAAS,GAAG,MAAM,CAAC,6aAA6a,CAAC;;MCQ1b,SAAS,GAAA,MAAA;;;;;IAEK,KAAK,GAAmB,SAAS;;IAEjC,IAAI,GAAkB,IAAI;;AAE3C,IAAA,GAAG;;AAEH,IAAA,KAAK;IAEb,MAAM,GAAA;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,IAAI,QAAQ;AAC/C,QAAA,QACE,CAAA,CAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,IAAI,EAAC,KAAK,EAAA,YAAA,EAAa,GAAG,IAAI,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,EAAA,EAEpD,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,iBAAa,MAAM,EAAA,EACxD,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,KAAK,EAAC,MAAM,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAA,CAAG,EAC9C,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,MAAM,EAAC,CAAC,EAAC,yEAAyE,GAAG,CAC7F,EACL,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,MACtB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAA,EACjB,IAAI,CAAC,GAAG,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,KAAK,EAAA,EAAE,IAAI,CAAC,GAAG,CAAQ,EAC/C,IAAI,CAAC,KAAK,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,OAAO,EAAA,EAAE,IAAI,CAAC,KAAK,CAAQ,CAClD,CACP,CACI;;;;;;;"}