@ind-ds/core 0.1.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 (347) hide show
  1. package/README.md +41 -0
  2. package/dist/cjs/ind-alarm.cjs.entry.js +35 -0
  3. package/dist/cjs/ind-alarm.cjs.entry.js.map +1 -0
  4. package/dist/cjs/ind-app-header.cjs.entry.js +42 -0
  5. package/dist/cjs/ind-app-header.cjs.entry.js.map +1 -0
  6. package/dist/cjs/ind-button.cjs.entry.js +79 -0
  7. package/dist/cjs/ind-button.cjs.entry.js.map +1 -0
  8. package/dist/cjs/ind-checkbox.cjs.entry.js +49 -0
  9. package/dist/cjs/ind-checkbox.cjs.entry.js.map +1 -0
  10. package/dist/cjs/ind-dialog.cjs.entry.js +101 -0
  11. package/dist/cjs/ind-dialog.cjs.entry.js.map +1 -0
  12. package/dist/cjs/ind-divider.cjs.entry.js +21 -0
  13. package/dist/cjs/ind-divider.cjs.entry.js.map +1 -0
  14. package/dist/cjs/ind-ds.cjs.js +27 -0
  15. package/dist/cjs/ind-ds.cjs.js.map +1 -0
  16. package/dist/cjs/ind-fill-row.cjs.entry.js +34 -0
  17. package/dist/cjs/ind-fill-row.cjs.entry.js.map +1 -0
  18. package/dist/cjs/ind-health-card.cjs.entry.js +38 -0
  19. package/dist/cjs/ind-health-card.cjs.entry.js.map +1 -0
  20. package/dist/cjs/ind-input.cjs.entry.js +57 -0
  21. package/dist/cjs/ind-input.cjs.entry.js.map +1 -0
  22. package/dist/cjs/ind-led.cjs.entry.js +29 -0
  23. package/dist/cjs/ind-led.cjs.entry.js.map +1 -0
  24. package/dist/cjs/ind-mqtt-monitor.cjs.entry.js +75 -0
  25. package/dist/cjs/ind-mqtt-monitor.cjs.entry.js.map +1 -0
  26. package/dist/cjs/ind-nav-item.cjs.entry.js +48 -0
  27. package/dist/cjs/ind-nav-item.cjs.entry.js.map +1 -0
  28. package/dist/cjs/ind-progress.cjs.entry.js +48 -0
  29. package/dist/cjs/ind-progress.cjs.entry.js.map +1 -0
  30. package/dist/cjs/ind-scara-canvas.cjs.entry.js +57 -0
  31. package/dist/cjs/ind-scara-canvas.cjs.entry.js.map +1 -0
  32. package/dist/cjs/ind-select.cjs.entry.js +55 -0
  33. package/dist/cjs/ind-select.cjs.entry.js.map +1 -0
  34. package/dist/cjs/ind-shelf-canvas.cjs.entry.js +88 -0
  35. package/dist/cjs/ind-shelf-canvas.cjs.entry.js.map +1 -0
  36. package/dist/cjs/ind-sidebar-nav.cjs.entry.js +20 -0
  37. package/dist/cjs/ind-sidebar-nav.cjs.entry.js.map +1 -0
  38. package/dist/cjs/ind-status-bar.cjs.entry.js +22 -0
  39. package/dist/cjs/ind-status-bar.cjs.entry.js.map +1 -0
  40. package/dist/cjs/ind-status-dot.cjs.entry.js +31 -0
  41. package/dist/cjs/ind-status-dot.cjs.entry.js.map +1 -0
  42. package/dist/cjs/ind-textarea.cjs.entry.js +66 -0
  43. package/dist/cjs/ind-textarea.cjs.entry.js.map +1 -0
  44. package/dist/cjs/ind-toolbar-action.cjs.entry.js +23 -0
  45. package/dist/cjs/ind-toolbar-action.cjs.entry.js.map +1 -0
  46. package/dist/cjs/ind-value.cjs.entry.js +47 -0
  47. package/dist/cjs/ind-value.cjs.entry.js.map +1 -0
  48. package/dist/cjs/ind-valve.cjs.entry.js +31 -0
  49. package/dist/cjs/ind-valve.cjs.entry.js.map +1 -0
  50. package/dist/cjs/index-ph7ZTjuY.js +1638 -0
  51. package/dist/cjs/index-ph7ZTjuY.js.map +1 -0
  52. package/dist/cjs/index.cjs.js +5 -0
  53. package/dist/cjs/index.cjs.js.map +1 -0
  54. package/dist/cjs/loader.cjs.js +15 -0
  55. package/dist/cjs/loader.cjs.js.map +1 -0
  56. package/dist/collection/collection-manifest.json +35 -0
  57. package/dist/collection/components/atoms/alarm/alarm.css +87 -0
  58. package/dist/collection/components/atoms/alarm/alarm.js +122 -0
  59. package/dist/collection/components/atoms/alarm/alarm.js.map +1 -0
  60. package/dist/collection/components/atoms/button/button.css +110 -0
  61. package/dist/collection/components/atoms/button/button.js +215 -0
  62. package/dist/collection/components/atoms/button/button.js.map +1 -0
  63. package/dist/collection/components/atoms/checkbox/checkbox.css +92 -0
  64. package/dist/collection/components/atoms/checkbox/checkbox.js +214 -0
  65. package/dist/collection/components/atoms/checkbox/checkbox.js.map +1 -0
  66. package/dist/collection/components/atoms/dialog/dialog.css +85 -0
  67. package/dist/collection/components/atoms/dialog/dialog.js +265 -0
  68. package/dist/collection/components/atoms/dialog/dialog.js.map +1 -0
  69. package/dist/collection/components/atoms/divider/divider.css +16 -0
  70. package/dist/collection/components/atoms/divider/divider.js +50 -0
  71. package/dist/collection/components/atoms/divider/divider.js.map +1 -0
  72. package/dist/collection/components/atoms/input/input.css +92 -0
  73. package/dist/collection/components/atoms/input/input.js +427 -0
  74. package/dist/collection/components/atoms/input/input.js.map +1 -0
  75. package/dist/collection/components/atoms/led/led.css +91 -0
  76. package/dist/collection/components/atoms/led/led.js +123 -0
  77. package/dist/collection/components/atoms/led/led.js.map +1 -0
  78. package/dist/collection/components/atoms/progress/progress.css +69 -0
  79. package/dist/collection/components/atoms/progress/progress.js +221 -0
  80. package/dist/collection/components/atoms/progress/progress.js.map +1 -0
  81. package/dist/collection/components/atoms/scara-canvas/scara-canvas.css +100 -0
  82. package/dist/collection/components/atoms/scara-canvas/scara-canvas.js +138 -0
  83. package/dist/collection/components/atoms/scara-canvas/scara-canvas.js.map +1 -0
  84. package/dist/collection/components/atoms/select/select.css +88 -0
  85. package/dist/collection/components/atoms/select/select.js +244 -0
  86. package/dist/collection/components/atoms/select/select.js.map +1 -0
  87. package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.css +67 -0
  88. package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.js +184 -0
  89. package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.js.map +1 -0
  90. package/dist/collection/components/atoms/status-dot/status-dot.css +69 -0
  91. package/dist/collection/components/atoms/status-dot/status-dot.js +125 -0
  92. package/dist/collection/components/atoms/status-dot/status-dot.js.map +1 -0
  93. package/dist/collection/components/atoms/textarea/textarea.css +74 -0
  94. package/dist/collection/components/atoms/textarea/textarea.js +331 -0
  95. package/dist/collection/components/atoms/textarea/textarea.js.map +1 -0
  96. package/dist/collection/components/atoms/value/value.css +115 -0
  97. package/dist/collection/components/atoms/value/value.js +223 -0
  98. package/dist/collection/components/atoms/value/value.js.map +1 -0
  99. package/dist/collection/components/atoms/valve/valve.css +101 -0
  100. package/dist/collection/components/atoms/valve/valve.js +150 -0
  101. package/dist/collection/components/atoms/valve/valve.js.map +1 -0
  102. package/dist/collection/components/molecules/fill-row/fill-row.css +70 -0
  103. package/dist/collection/components/molecules/fill-row/fill-row.js +181 -0
  104. package/dist/collection/components/molecules/fill-row/fill-row.js.map +1 -0
  105. package/dist/collection/components/molecules/health-card/health-card.css +53 -0
  106. package/dist/collection/components/molecules/health-card/health-card.js +124 -0
  107. package/dist/collection/components/molecules/health-card/health-card.js.map +1 -0
  108. package/dist/collection/components/molecules/nav-item/nav-item.css +82 -0
  109. package/dist/collection/components/molecules/nav-item/nav-item.js +165 -0
  110. package/dist/collection/components/molecules/nav-item/nav-item.js.map +1 -0
  111. package/dist/collection/components/molecules/toolbar-action/toolbar-action.css +36 -0
  112. package/dist/collection/components/molecules/toolbar-action/toolbar-action.js +45 -0
  113. package/dist/collection/components/molecules/toolbar-action/toolbar-action.js.map +1 -0
  114. package/dist/collection/components/organisms/app-header/app-header.css +127 -0
  115. package/dist/collection/components/organisms/app-header/app-header.js +256 -0
  116. package/dist/collection/components/organisms/app-header/app-header.js.map +1 -0
  117. package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.css +96 -0
  118. package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.js +205 -0
  119. package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.js.map +1 -0
  120. package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.css +39 -0
  121. package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.js +26 -0
  122. package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.js.map +1 -0
  123. package/dist/collection/components/organisms/status-bar/status-bar.css +34 -0
  124. package/dist/collection/components/organisms/status-bar/status-bar.js +76 -0
  125. package/dist/collection/components/organisms/status-bar/status-bar.js.map +1 -0
  126. package/dist/collection/index.js +2 -0
  127. package/dist/collection/index.js.map +1 -0
  128. package/dist/components/ind-alarm.d.ts +11 -0
  129. package/dist/components/ind-alarm.js +2 -0
  130. package/dist/components/ind-alarm.js.map +1 -0
  131. package/dist/components/ind-app-header.d.ts +11 -0
  132. package/dist/components/ind-app-header.js +2 -0
  133. package/dist/components/ind-app-header.js.map +1 -0
  134. package/dist/components/ind-button.d.ts +11 -0
  135. package/dist/components/ind-button.js +2 -0
  136. package/dist/components/ind-button.js.map +1 -0
  137. package/dist/components/ind-checkbox.d.ts +11 -0
  138. package/dist/components/ind-checkbox.js +2 -0
  139. package/dist/components/ind-checkbox.js.map +1 -0
  140. package/dist/components/ind-dialog.d.ts +11 -0
  141. package/dist/components/ind-dialog.js +2 -0
  142. package/dist/components/ind-dialog.js.map +1 -0
  143. package/dist/components/ind-divider.d.ts +11 -0
  144. package/dist/components/ind-divider.js +2 -0
  145. package/dist/components/ind-divider.js.map +1 -0
  146. package/dist/components/ind-fill-row.d.ts +11 -0
  147. package/dist/components/ind-fill-row.js +2 -0
  148. package/dist/components/ind-fill-row.js.map +1 -0
  149. package/dist/components/ind-health-card.d.ts +11 -0
  150. package/dist/components/ind-health-card.js +2 -0
  151. package/dist/components/ind-health-card.js.map +1 -0
  152. package/dist/components/ind-input.d.ts +11 -0
  153. package/dist/components/ind-input.js +2 -0
  154. package/dist/components/ind-input.js.map +1 -0
  155. package/dist/components/ind-led.d.ts +11 -0
  156. package/dist/components/ind-led.js +2 -0
  157. package/dist/components/ind-led.js.map +1 -0
  158. package/dist/components/ind-mqtt-monitor.d.ts +11 -0
  159. package/dist/components/ind-mqtt-monitor.js +2 -0
  160. package/dist/components/ind-mqtt-monitor.js.map +1 -0
  161. package/dist/components/ind-nav-item.d.ts +11 -0
  162. package/dist/components/ind-nav-item.js +2 -0
  163. package/dist/components/ind-nav-item.js.map +1 -0
  164. package/dist/components/ind-progress.d.ts +11 -0
  165. package/dist/components/ind-progress.js +2 -0
  166. package/dist/components/ind-progress.js.map +1 -0
  167. package/dist/components/ind-scara-canvas.d.ts +11 -0
  168. package/dist/components/ind-scara-canvas.js +2 -0
  169. package/dist/components/ind-scara-canvas.js.map +1 -0
  170. package/dist/components/ind-select.d.ts +11 -0
  171. package/dist/components/ind-select.js +2 -0
  172. package/dist/components/ind-select.js.map +1 -0
  173. package/dist/components/ind-shelf-canvas.d.ts +11 -0
  174. package/dist/components/ind-shelf-canvas.js +2 -0
  175. package/dist/components/ind-shelf-canvas.js.map +1 -0
  176. package/dist/components/ind-sidebar-nav.d.ts +11 -0
  177. package/dist/components/ind-sidebar-nav.js +2 -0
  178. package/dist/components/ind-sidebar-nav.js.map +1 -0
  179. package/dist/components/ind-status-bar.d.ts +11 -0
  180. package/dist/components/ind-status-bar.js +2 -0
  181. package/dist/components/ind-status-bar.js.map +1 -0
  182. package/dist/components/ind-status-dot.d.ts +11 -0
  183. package/dist/components/ind-status-dot.js +2 -0
  184. package/dist/components/ind-status-dot.js.map +1 -0
  185. package/dist/components/ind-textarea.d.ts +11 -0
  186. package/dist/components/ind-textarea.js +2 -0
  187. package/dist/components/ind-textarea.js.map +1 -0
  188. package/dist/components/ind-toolbar-action.d.ts +11 -0
  189. package/dist/components/ind-toolbar-action.js +2 -0
  190. package/dist/components/ind-toolbar-action.js.map +1 -0
  191. package/dist/components/ind-value.d.ts +11 -0
  192. package/dist/components/ind-value.js +2 -0
  193. package/dist/components/ind-value.js.map +1 -0
  194. package/dist/components/ind-valve.d.ts +11 -0
  195. package/dist/components/ind-valve.js +2 -0
  196. package/dist/components/ind-valve.js.map +1 -0
  197. package/dist/components/index.d.ts +35 -0
  198. package/dist/components/index.js +2 -0
  199. package/dist/components/index.js.map +1 -0
  200. package/dist/components/p-D-FsSjAC.js +2 -0
  201. package/dist/components/p-D-FsSjAC.js.map +1 -0
  202. package/dist/components/p-acsAzrRn.js +2 -0
  203. package/dist/components/p-acsAzrRn.js.map +1 -0
  204. package/dist/docs.d.ts +480 -0
  205. package/dist/docs.json +5360 -0
  206. package/dist/esm/ind-alarm.entry.js +33 -0
  207. package/dist/esm/ind-alarm.entry.js.map +1 -0
  208. package/dist/esm/ind-app-header.entry.js +40 -0
  209. package/dist/esm/ind-app-header.entry.js.map +1 -0
  210. package/dist/esm/ind-button.entry.js +77 -0
  211. package/dist/esm/ind-button.entry.js.map +1 -0
  212. package/dist/esm/ind-checkbox.entry.js +47 -0
  213. package/dist/esm/ind-checkbox.entry.js.map +1 -0
  214. package/dist/esm/ind-dialog.entry.js +99 -0
  215. package/dist/esm/ind-dialog.entry.js.map +1 -0
  216. package/dist/esm/ind-divider.entry.js +19 -0
  217. package/dist/esm/ind-divider.entry.js.map +1 -0
  218. package/dist/esm/ind-ds.js +23 -0
  219. package/dist/esm/ind-ds.js.map +1 -0
  220. package/dist/esm/ind-fill-row.entry.js +32 -0
  221. package/dist/esm/ind-fill-row.entry.js.map +1 -0
  222. package/dist/esm/ind-health-card.entry.js +36 -0
  223. package/dist/esm/ind-health-card.entry.js.map +1 -0
  224. package/dist/esm/ind-input.entry.js +55 -0
  225. package/dist/esm/ind-input.entry.js.map +1 -0
  226. package/dist/esm/ind-led.entry.js +27 -0
  227. package/dist/esm/ind-led.entry.js.map +1 -0
  228. package/dist/esm/ind-mqtt-monitor.entry.js +73 -0
  229. package/dist/esm/ind-mqtt-monitor.entry.js.map +1 -0
  230. package/dist/esm/ind-nav-item.entry.js +46 -0
  231. package/dist/esm/ind-nav-item.entry.js.map +1 -0
  232. package/dist/esm/ind-progress.entry.js +46 -0
  233. package/dist/esm/ind-progress.entry.js.map +1 -0
  234. package/dist/esm/ind-scara-canvas.entry.js +55 -0
  235. package/dist/esm/ind-scara-canvas.entry.js.map +1 -0
  236. package/dist/esm/ind-select.entry.js +53 -0
  237. package/dist/esm/ind-select.entry.js.map +1 -0
  238. package/dist/esm/ind-shelf-canvas.entry.js +86 -0
  239. package/dist/esm/ind-shelf-canvas.entry.js.map +1 -0
  240. package/dist/esm/ind-sidebar-nav.entry.js +18 -0
  241. package/dist/esm/ind-sidebar-nav.entry.js.map +1 -0
  242. package/dist/esm/ind-status-bar.entry.js +20 -0
  243. package/dist/esm/ind-status-bar.entry.js.map +1 -0
  244. package/dist/esm/ind-status-dot.entry.js +29 -0
  245. package/dist/esm/ind-status-dot.entry.js.map +1 -0
  246. package/dist/esm/ind-textarea.entry.js +64 -0
  247. package/dist/esm/ind-textarea.entry.js.map +1 -0
  248. package/dist/esm/ind-toolbar-action.entry.js +21 -0
  249. package/dist/esm/ind-toolbar-action.entry.js.map +1 -0
  250. package/dist/esm/ind-value.entry.js +45 -0
  251. package/dist/esm/ind-value.entry.js.map +1 -0
  252. package/dist/esm/ind-valve.entry.js +29 -0
  253. package/dist/esm/ind-valve.entry.js.map +1 -0
  254. package/dist/esm/index-D2yNiL0d.js +1628 -0
  255. package/dist/esm/index-D2yNiL0d.js.map +1 -0
  256. package/dist/esm/index.js +4 -0
  257. package/dist/esm/index.js.map +1 -0
  258. package/dist/esm/loader.js +13 -0
  259. package/dist/esm/loader.js.map +1 -0
  260. package/dist/ind-ds/ind-ds.css +1 -0
  261. package/dist/ind-ds/ind-ds.esm.js +2 -0
  262. package/dist/ind-ds/ind-ds.esm.js.map +1 -0
  263. package/dist/ind-ds/index.esm.js +2 -0
  264. package/dist/ind-ds/index.esm.js.map +1 -0
  265. package/dist/ind-ds/p-0840007d.entry.js +2 -0
  266. package/dist/ind-ds/p-0840007d.entry.js.map +1 -0
  267. package/dist/ind-ds/p-1727b403.entry.js +2 -0
  268. package/dist/ind-ds/p-1727b403.entry.js.map +1 -0
  269. package/dist/ind-ds/p-1d871f3f.entry.js +2 -0
  270. package/dist/ind-ds/p-1d871f3f.entry.js.map +1 -0
  271. package/dist/ind-ds/p-296b0c55.entry.js +2 -0
  272. package/dist/ind-ds/p-296b0c55.entry.js.map +1 -0
  273. package/dist/ind-ds/p-459405b6.entry.js +2 -0
  274. package/dist/ind-ds/p-459405b6.entry.js.map +1 -0
  275. package/dist/ind-ds/p-4a4811ab.entry.js +2 -0
  276. package/dist/ind-ds/p-4a4811ab.entry.js.map +1 -0
  277. package/dist/ind-ds/p-52b18003.entry.js +2 -0
  278. package/dist/ind-ds/p-52b18003.entry.js.map +1 -0
  279. package/dist/ind-ds/p-5369d63a.entry.js +2 -0
  280. package/dist/ind-ds/p-5369d63a.entry.js.map +1 -0
  281. package/dist/ind-ds/p-595ccdce.entry.js +2 -0
  282. package/dist/ind-ds/p-595ccdce.entry.js.map +1 -0
  283. package/dist/ind-ds/p-6c5c8053.entry.js +2 -0
  284. package/dist/ind-ds/p-6c5c8053.entry.js.map +1 -0
  285. package/dist/ind-ds/p-6c8f4bbd.entry.js +2 -0
  286. package/dist/ind-ds/p-6c8f4bbd.entry.js.map +1 -0
  287. package/dist/ind-ds/p-781e21df.entry.js +2 -0
  288. package/dist/ind-ds/p-781e21df.entry.js.map +1 -0
  289. package/dist/ind-ds/p-8817625a.entry.js +2 -0
  290. package/dist/ind-ds/p-8817625a.entry.js.map +1 -0
  291. package/dist/ind-ds/p-99f55d2a.entry.js +2 -0
  292. package/dist/ind-ds/p-99f55d2a.entry.js.map +1 -0
  293. package/dist/ind-ds/p-9b93fb09.entry.js +2 -0
  294. package/dist/ind-ds/p-9b93fb09.entry.js.map +1 -0
  295. package/dist/ind-ds/p-D2yNiL0d.js +3 -0
  296. package/dist/ind-ds/p-D2yNiL0d.js.map +1 -0
  297. package/dist/ind-ds/p-c8de42e9.entry.js +2 -0
  298. package/dist/ind-ds/p-c8de42e9.entry.js.map +1 -0
  299. package/dist/ind-ds/p-c9f752e6.entry.js +2 -0
  300. package/dist/ind-ds/p-c9f752e6.entry.js.map +1 -0
  301. package/dist/ind-ds/p-cee8bf2b.entry.js +2 -0
  302. package/dist/ind-ds/p-cee8bf2b.entry.js.map +1 -0
  303. package/dist/ind-ds/p-cf07b580.entry.js +2 -0
  304. package/dist/ind-ds/p-cf07b580.entry.js.map +1 -0
  305. package/dist/ind-ds/p-d1edc052.entry.js +2 -0
  306. package/dist/ind-ds/p-d1edc052.entry.js.map +1 -0
  307. package/dist/ind-ds/p-ea24a59d.entry.js +2 -0
  308. package/dist/ind-ds/p-ea24a59d.entry.js.map +1 -0
  309. package/dist/ind-ds/p-ec0b3785.entry.js +2 -0
  310. package/dist/ind-ds/p-ec0b3785.entry.js.map +1 -0
  311. package/dist/ind-ds/p-ee453874.entry.js +2 -0
  312. package/dist/ind-ds/p-ee453874.entry.js.map +1 -0
  313. package/dist/index.cjs.js +1 -0
  314. package/dist/index.js +1 -0
  315. package/dist/types/components/atoms/alarm/alarm.d.ts +13 -0
  316. package/dist/types/components/atoms/button/button.d.ts +31 -0
  317. package/dist/types/components/atoms/checkbox/checkbox.d.ts +18 -0
  318. package/dist/types/components/atoms/dialog/dialog.d.ts +29 -0
  319. package/dist/types/components/atoms/divider/divider.d.ts +6 -0
  320. package/dist/types/components/atoms/input/input.d.ts +34 -0
  321. package/dist/types/components/atoms/led/led.d.ts +14 -0
  322. package/dist/types/components/atoms/progress/progress.d.ts +24 -0
  323. package/dist/types/components/atoms/scara-canvas/scara-canvas.d.ts +21 -0
  324. package/dist/types/components/atoms/select/select.d.ts +27 -0
  325. package/dist/types/components/atoms/shelf-canvas/shelf-canvas.d.ts +29 -0
  326. package/dist/types/components/atoms/status-dot/status-dot.d.ts +14 -0
  327. package/dist/types/components/atoms/textarea/textarea.d.ts +28 -0
  328. package/dist/types/components/atoms/value/value.d.ts +24 -0
  329. package/dist/types/components/atoms/valve/valve.d.ts +17 -0
  330. package/dist/types/components/molecules/fill-row/fill-row.d.ts +19 -0
  331. package/dist/types/components/molecules/health-card/health-card.d.ts +13 -0
  332. package/dist/types/components/molecules/nav-item/nav-item.d.ts +17 -0
  333. package/dist/types/components/molecules/toolbar-action/toolbar-action.d.ts +6 -0
  334. package/dist/types/components/organisms/app-header/app-header.d.ts +26 -0
  335. package/dist/types/components/organisms/mqtt-monitor/mqtt-monitor.d.ts +23 -0
  336. package/dist/types/components/organisms/sidebar-nav/sidebar-nav.d.ts +11 -0
  337. package/dist/types/components/organisms/status-bar/status-bar.d.ts +13 -0
  338. package/dist/types/components.d.ts +1775 -0
  339. package/dist/types/index.d.ts +21 -0
  340. package/dist/types/stencil-public-runtime.d.ts +1861 -0
  341. package/loader/cdn.js +1 -0
  342. package/loader/index.cjs.js +1 -0
  343. package/loader/index.d.ts +24 -0
  344. package/loader/index.es2017.js +1 -0
  345. package/loader/index.js +2 -0
  346. package/package.json +87 -0
  347. package/utilities.css +324 -0
@@ -0,0 +1,91 @@
1
+ :host {
2
+ display: inline-flex;
3
+ align-items: center;
4
+ gap: var(--ind-spacing-3, 6px);
5
+ font-family: var(--ind-font-family-sans, system-ui, sans-serif);
6
+ font-size: var(--ind-font-size-base, 12px);
7
+ font-weight: var(--ind-font-weight-medium, 500);
8
+ line-height: var(--ind-font-line-height-tight, 1.1);
9
+ /* `light-dark()` makes the label readable even if the LED lands on a surface
10
+ * whose theme doesn't match the loaded tokens (Storybook autodocs, embedded
11
+ * widget on a third-party site, etc.). */
12
+ color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
13
+ font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
14
+ }
15
+
16
+ .led {
17
+ --_size: var(--ind-led-size, 12px);
18
+ --_bg: var(--ind-state-stopped-bg, #5a6776);
19
+ --_border: var(--ind-state-stopped-border, #8390a0);
20
+ --_glow: var(--ind-state-stopped-glow, rgba(131, 144, 160, 0.35));
21
+
22
+ display: inline-block;
23
+ width: var(--_size);
24
+ height: var(--_size);
25
+ border-radius: 50%;
26
+ background: radial-gradient(
27
+ circle at 30% 30%,
28
+ color-mix(in srgb, var(--_bg) 65%, white),
29
+ var(--_bg) 70%
30
+ );
31
+ border: 1px solid var(--_border);
32
+ box-shadow:
33
+ 0 0 0 1px color-mix(in srgb, var(--_bg) 25%, transparent),
34
+ 0 0 8px var(--_glow),
35
+ inset 0 1px 2px rgba(0, 0, 0, 0.45);
36
+ transition: background-color var(--ind-motion-duration-base, 200ms) var(--ind-motion-easing-standard, ease);
37
+ }
38
+
39
+ :host([size="sm"]) .led { --_size: 8px; }
40
+ :host([size="md"]) .led { --_size: 12px; }
41
+ :host([size="lg"]) .led { --_size: 18px; }
42
+
43
+ /* Each state ships hard-coded fallbacks so the component stays visible even
44
+ * if tokens fail to load (build-order glitch, sandbox without CSS imports).
45
+ */
46
+ :host([state="running"]) .led {
47
+ --_bg: var(--ind-state-running-bg, #16a34a);
48
+ --_border: var(--ind-state-running-border, #4ade80);
49
+ --_glow: var(--ind-state-running-glow, rgba(34, 197, 94, 0.6));
50
+ }
51
+ :host([state="stopped"]) .led {
52
+ --_bg: var(--ind-state-stopped-bg, #5a6776);
53
+ --_border: var(--ind-state-stopped-border, #8390a0);
54
+ --_glow: var(--ind-state-stopped-glow, rgba(131, 144, 160, 0.35));
55
+ }
56
+ :host([state="fault"]) .led {
57
+ --_bg: var(--ind-state-fault-bg, #dc2626);
58
+ --_border: var(--ind-state-fault-border, #f87171);
59
+ --_glow: var(--ind-state-fault-glow, rgba(220, 38, 38, 0.7));
60
+ }
61
+ :host([state="warning"]) .led {
62
+ --_bg: var(--ind-state-warning-bg, #f59e0b);
63
+ --_border: var(--ind-state-warning-border, #fcd34d);
64
+ --_glow: var(--ind-state-warning-glow, rgba(245, 158, 11, 0.6));
65
+ }
66
+ :host([state="maintenance"]) .led {
67
+ --_bg: var(--ind-state-maintenance-bg, #2563eb);
68
+ --_border: var(--ind-state-maintenance-border, #60a5fa);
69
+ --_glow: var(--ind-state-maintenance-glow, rgba(37, 99, 235, 0.6));
70
+ }
71
+
72
+ :host([blinking]) .led {
73
+ animation: ind-led-blink var(--ind-motion-blink-fast, 400ms) steps(2, end) infinite;
74
+ }
75
+ :host([blinking][state="fault"]) .led {
76
+ animation-duration: var(--ind-motion-blink-urgent, 200ms);
77
+ }
78
+
79
+ @keyframes ind-led-blink {
80
+ 50% { opacity: 0.2; box-shadow: none; }
81
+ }
82
+
83
+ @media (prefers-reduced-motion: reduce) {
84
+ :host([blinking]) .led {
85
+ animation: none;
86
+ opacity: 1;
87
+ /* Substitute: a solid outline ring so the alarm condition is still visible without motion. */
88
+ outline: 2px solid var(--_border);
89
+ outline-offset: 2px;
90
+ }
91
+ }
@@ -0,0 +1,123 @@
1
+ import { h, Host } from "@stencil/core";
2
+ export class IndLed {
3
+ /** Process state driving the LED color and ARIA live politeness. */
4
+ state = 'stopped';
5
+ /** Visual size. */
6
+ size = 'md';
7
+ /** Blink. For SCADA, fast blink = unacknowledged condition. Stops respecting prefers-reduced-motion. */
8
+ blinking = false;
9
+ /** Optional visible label rendered next to the LED. Always becomes the accessible name. */
10
+ label;
11
+ render() {
12
+ const accessibleName = this.label ?? `${this.state} indicator`;
13
+ return (h(Host, { key: 'babe0b6e1a80181397c53ec0234ce3ff8d5741b4', role: "status", "aria-label": accessibleName, "aria-live": this.state === 'fault' ? 'assertive' : 'polite' }, h("span", { key: 'd7ca8697299f70715fdbe101d541c3313508e434', class: "led", part: "led", "aria-hidden": "true" }), this.label && h("span", { key: 'f39a9b21eabd4380db866e9bfb2591bcaeac3ce4', class: "label", part: "label" }, this.label)));
14
+ }
15
+ static get is() { return "ind-led"; }
16
+ static get encapsulation() { return "shadow"; }
17
+ static get originalStyleUrls() {
18
+ return {
19
+ "$": ["led.css"]
20
+ };
21
+ }
22
+ static get styleUrls() {
23
+ return {
24
+ "$": ["led.css"]
25
+ };
26
+ }
27
+ static get properties() {
28
+ return {
29
+ "state": {
30
+ "type": "string",
31
+ "mutable": false,
32
+ "complexType": {
33
+ "original": "LedState",
34
+ "resolved": "\"fault\" | \"maintenance\" | \"running\" | \"stopped\" | \"warning\"",
35
+ "references": {
36
+ "LedState": {
37
+ "location": "local",
38
+ "path": "C:/www/ind-ds/packages/core/src/components/atoms/led/led.tsx",
39
+ "id": "src/components/atoms/led/led.tsx::LedState"
40
+ }
41
+ }
42
+ },
43
+ "required": false,
44
+ "optional": false,
45
+ "docs": {
46
+ "tags": [],
47
+ "text": "Process state driving the LED color and ARIA live politeness."
48
+ },
49
+ "getter": false,
50
+ "setter": false,
51
+ "reflect": true,
52
+ "attribute": "state",
53
+ "defaultValue": "'stopped'"
54
+ },
55
+ "size": {
56
+ "type": "string",
57
+ "mutable": false,
58
+ "complexType": {
59
+ "original": "LedSize",
60
+ "resolved": "\"lg\" | \"md\" | \"sm\"",
61
+ "references": {
62
+ "LedSize": {
63
+ "location": "local",
64
+ "path": "C:/www/ind-ds/packages/core/src/components/atoms/led/led.tsx",
65
+ "id": "src/components/atoms/led/led.tsx::LedSize"
66
+ }
67
+ }
68
+ },
69
+ "required": false,
70
+ "optional": false,
71
+ "docs": {
72
+ "tags": [],
73
+ "text": "Visual size."
74
+ },
75
+ "getter": false,
76
+ "setter": false,
77
+ "reflect": true,
78
+ "attribute": "size",
79
+ "defaultValue": "'md'"
80
+ },
81
+ "blinking": {
82
+ "type": "boolean",
83
+ "mutable": false,
84
+ "complexType": {
85
+ "original": "boolean",
86
+ "resolved": "boolean",
87
+ "references": {}
88
+ },
89
+ "required": false,
90
+ "optional": false,
91
+ "docs": {
92
+ "tags": [],
93
+ "text": "Blink. For SCADA, fast blink = unacknowledged condition. Stops respecting prefers-reduced-motion."
94
+ },
95
+ "getter": false,
96
+ "setter": false,
97
+ "reflect": true,
98
+ "attribute": "blinking",
99
+ "defaultValue": "false"
100
+ },
101
+ "label": {
102
+ "type": "string",
103
+ "mutable": false,
104
+ "complexType": {
105
+ "original": "string",
106
+ "resolved": "string | undefined",
107
+ "references": {}
108
+ },
109
+ "required": false,
110
+ "optional": true,
111
+ "docs": {
112
+ "tags": [],
113
+ "text": "Optional visible label rendered next to the LED. Always becomes the accessible name."
114
+ },
115
+ "getter": false,
116
+ "setter": false,
117
+ "reflect": false,
118
+ "attribute": "label"
119
+ }
120
+ };
121
+ }
122
+ }
123
+ //# sourceMappingURL=led.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"led.js","sourceRoot":"","sources":["../../../../src/components/atoms/led/led.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAUzD,MAAM,OAAO,MAAM;IACjB,oEAAoE;IAC3C,KAAK,GAAa,SAAS,CAAC;IAErD,mBAAmB;IACM,IAAI,GAAY,IAAI,CAAC;IAE9C,wGAAwG;IAC/E,QAAQ,GAAY,KAAK,CAAC;IAEnD,2FAA2F;IACnF,KAAK,CAAU;IAEvB,MAAM;QACJ,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC,KAAK,YAAY,CAAC;QAC/D,OAAO,CACL,EAAC,IAAI,qDACH,IAAI,EAAC,QAAQ,gBACD,cAAc,eACf,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;YAE1D,6DAAM,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,KAAK,iBAAa,MAAM,GAAG;YACjD,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC9D,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type LedState = 'running' | 'stopped' | 'fault' | 'warning' | 'maintenance';\nexport type LedSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-led',\n styleUrl: 'led.css',\n shadow: true,\n})\nexport class IndLed {\n /** Process state driving the LED color and ARIA live politeness. */\n @Prop({ reflect: true }) state: LedState = 'stopped';\n\n /** Visual size. */\n @Prop({ reflect: true }) size: LedSize = 'md';\n\n /** Blink. For SCADA, fast blink = unacknowledged condition. Stops respecting prefers-reduced-motion. */\n @Prop({ reflect: true }) blinking: boolean = false;\n\n /** Optional visible label rendered next to the LED. Always becomes the accessible name. */\n @Prop() label?: string;\n\n render() {\n const accessibleName = this.label ?? `${this.state} indicator`;\n return (\n <Host\n role=\"status\"\n aria-label={accessibleName}\n aria-live={this.state === 'fault' ? 'assertive' : 'polite'}\n >\n <span class=\"led\" part=\"led\" aria-hidden=\"true\" />\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,69 @@
1
+ :host {
2
+ display: block;
3
+ font-family: var(--ind-font-family-sans);
4
+ font-size: var(--ind-font-size-sm, 11px);
5
+ color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
6
+ --_h: 8px;
7
+ --_fill: var(--ind-button-primary-bg, #2563eb);
8
+ }
9
+
10
+ :host([size="sm"]) { --_h: 4px; }
11
+ :host([size="md"]) { --_h: 8px; }
12
+ :host([size="lg"]) { --_h: 12px; }
13
+
14
+ :host([variant="success"]) { --_fill: var(--ind-feedback-success-bg, #16a34a); }
15
+ :host([variant="warning"]) { --_fill: var(--ind-feedback-warning-bg, #f59e0b); }
16
+ :host([variant="error"]) { --_fill: var(--ind-feedback-error-bg, #dc2626); }
17
+
18
+ .header {
19
+ display: flex;
20
+ justify-content: space-between;
21
+ align-items: baseline;
22
+ gap: var(--ind-spacing-3, 6px);
23
+ margin-bottom: var(--ind-spacing-2, 4px);
24
+ }
25
+
26
+ .label {
27
+ color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
28
+ }
29
+
30
+ .value {
31
+ font-family: var(--ind-font-family-mono);
32
+ font-weight: var(--ind-font-weight-semibold, 600);
33
+ font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
34
+ }
35
+
36
+ .track {
37
+ position: relative;
38
+ width: 100%;
39
+ height: var(--_h);
40
+ background: var(--ind-surface-sunken, light-dark(#ffffff, #000000));
41
+ border: 1px solid var(--ind-surface-border-default, #2a3340);
42
+ border-radius: var(--ind-radius-sm, 2px);
43
+ overflow: hidden;
44
+ }
45
+
46
+ .fill {
47
+ display: block;
48
+ height: 100%;
49
+ background: var(--_fill);
50
+ transition: width var(--ind-motion-duration-base, 200ms) var(--ind-motion-easing-standard, ease);
51
+ }
52
+
53
+ :host([indeterminate]) .fill {
54
+ width: 30%;
55
+ animation: ind-progress-march 1.4s ease-in-out infinite;
56
+ }
57
+
58
+ @keyframes ind-progress-march {
59
+ 0% { margin-left: -30%; }
60
+ 100% { margin-left: 100%; }
61
+ }
62
+
63
+ @media (prefers-reduced-motion: reduce) {
64
+ :host([indeterminate]) .fill {
65
+ animation: none;
66
+ width: 100%;
67
+ opacity: 0.5;
68
+ }
69
+ }
@@ -0,0 +1,221 @@
1
+ import { h, Host } from "@stencil/core";
2
+ export class IndProgress {
3
+ /** Current value (0–`max`). */
4
+ value = 0;
5
+ /** Max value. */
6
+ max = 100;
7
+ /** Visual variant. Use `warning` / `error` for low / critical fill levels. */
8
+ variant = 'default';
9
+ /** Size. */
10
+ size = 'md';
11
+ /** Optional label rendered above the bar. */
12
+ label;
13
+ /** Show numeric value next to the label. */
14
+ showValue = false;
15
+ /** Unit suffix for the displayed value. */
16
+ unit;
17
+ /** Indeterminate (animated bar, no value). */
18
+ indeterminate = false;
19
+ percent() {
20
+ if (this.max <= 0)
21
+ return 0;
22
+ return Math.min(100, Math.max(0, (this.value / this.max) * 100));
23
+ }
24
+ valueLabel() {
25
+ if (this.unit === '%' || (this.max === 100 && !this.unit)) {
26
+ return `${Math.round(this.percent())} %`;
27
+ }
28
+ return `${this.value}${this.unit ? ' ' + this.unit : ''} / ${this.max}`;
29
+ }
30
+ render() {
31
+ const pct = this.percent();
32
+ return (h(Host, { key: '0e74d2952b1fe8b2356927e0e38adbcb72d863c6', role: "progressbar", "aria-valuenow": this.indeterminate ? undefined : this.value, "aria-valuemin": 0, "aria-valuemax": this.max, "aria-label": this.label }, (this.label || this.showValue) && (h("div", { key: '1fbeb6fed63ac3fb1cb830408d6ee851ec9fe989', class: "header", part: "header" }, this.label && h("span", { key: '1a2a0e6bb58c4e69b5b19587906e7c53720587cb', class: "label", part: "label" }, this.label), this.showValue && !this.indeterminate && (h("span", { key: '7fa1c9ce1e0ec68abc1b478cfb373af8266467a3', class: "value", part: "value" }, this.valueLabel())))), h("div", { key: 'e821a5f203432e33199d111ba807eb6106068b14', class: "track", part: "track" }, h("div", { key: '88e1e2728d12adea9220b3cf8f68072e85bdc1dd', class: "fill", part: "fill", style: this.indeterminate ? undefined : { width: `${pct}%` } }))));
33
+ }
34
+ static get is() { return "ind-progress"; }
35
+ static get encapsulation() { return "shadow"; }
36
+ static get originalStyleUrls() {
37
+ return {
38
+ "$": ["progress.css"]
39
+ };
40
+ }
41
+ static get styleUrls() {
42
+ return {
43
+ "$": ["progress.css"]
44
+ };
45
+ }
46
+ static get properties() {
47
+ return {
48
+ "value": {
49
+ "type": "number",
50
+ "mutable": false,
51
+ "complexType": {
52
+ "original": "number",
53
+ "resolved": "number",
54
+ "references": {}
55
+ },
56
+ "required": false,
57
+ "optional": false,
58
+ "docs": {
59
+ "tags": [],
60
+ "text": "Current value (0\u2013`max`)."
61
+ },
62
+ "getter": false,
63
+ "setter": false,
64
+ "reflect": false,
65
+ "attribute": "value",
66
+ "defaultValue": "0"
67
+ },
68
+ "max": {
69
+ "type": "number",
70
+ "mutable": false,
71
+ "complexType": {
72
+ "original": "number",
73
+ "resolved": "number",
74
+ "references": {}
75
+ },
76
+ "required": false,
77
+ "optional": false,
78
+ "docs": {
79
+ "tags": [],
80
+ "text": "Max value."
81
+ },
82
+ "getter": false,
83
+ "setter": false,
84
+ "reflect": false,
85
+ "attribute": "max",
86
+ "defaultValue": "100"
87
+ },
88
+ "variant": {
89
+ "type": "string",
90
+ "mutable": false,
91
+ "complexType": {
92
+ "original": "ProgressVariant",
93
+ "resolved": "\"default\" | \"error\" | \"success\" | \"warning\"",
94
+ "references": {
95
+ "ProgressVariant": {
96
+ "location": "local",
97
+ "path": "C:/www/ind-ds/packages/core/src/components/atoms/progress/progress.tsx",
98
+ "id": "src/components/atoms/progress/progress.tsx::ProgressVariant"
99
+ }
100
+ }
101
+ },
102
+ "required": false,
103
+ "optional": false,
104
+ "docs": {
105
+ "tags": [],
106
+ "text": "Visual variant. Use `warning` / `error` for low / critical fill levels."
107
+ },
108
+ "getter": false,
109
+ "setter": false,
110
+ "reflect": true,
111
+ "attribute": "variant",
112
+ "defaultValue": "'default'"
113
+ },
114
+ "size": {
115
+ "type": "string",
116
+ "mutable": false,
117
+ "complexType": {
118
+ "original": "ProgressSize",
119
+ "resolved": "\"lg\" | \"md\" | \"sm\"",
120
+ "references": {
121
+ "ProgressSize": {
122
+ "location": "local",
123
+ "path": "C:/www/ind-ds/packages/core/src/components/atoms/progress/progress.tsx",
124
+ "id": "src/components/atoms/progress/progress.tsx::ProgressSize"
125
+ }
126
+ }
127
+ },
128
+ "required": false,
129
+ "optional": false,
130
+ "docs": {
131
+ "tags": [],
132
+ "text": "Size."
133
+ },
134
+ "getter": false,
135
+ "setter": false,
136
+ "reflect": true,
137
+ "attribute": "size",
138
+ "defaultValue": "'md'"
139
+ },
140
+ "label": {
141
+ "type": "string",
142
+ "mutable": false,
143
+ "complexType": {
144
+ "original": "string",
145
+ "resolved": "string | undefined",
146
+ "references": {}
147
+ },
148
+ "required": false,
149
+ "optional": true,
150
+ "docs": {
151
+ "tags": [],
152
+ "text": "Optional label rendered above the bar."
153
+ },
154
+ "getter": false,
155
+ "setter": false,
156
+ "reflect": false,
157
+ "attribute": "label"
158
+ },
159
+ "showValue": {
160
+ "type": "boolean",
161
+ "mutable": false,
162
+ "complexType": {
163
+ "original": "boolean",
164
+ "resolved": "boolean",
165
+ "references": {}
166
+ },
167
+ "required": false,
168
+ "optional": false,
169
+ "docs": {
170
+ "tags": [],
171
+ "text": "Show numeric value next to the label."
172
+ },
173
+ "getter": false,
174
+ "setter": false,
175
+ "reflect": false,
176
+ "attribute": "show-value",
177
+ "defaultValue": "false"
178
+ },
179
+ "unit": {
180
+ "type": "string",
181
+ "mutable": false,
182
+ "complexType": {
183
+ "original": "string",
184
+ "resolved": "string | undefined",
185
+ "references": {}
186
+ },
187
+ "required": false,
188
+ "optional": true,
189
+ "docs": {
190
+ "tags": [],
191
+ "text": "Unit suffix for the displayed value."
192
+ },
193
+ "getter": false,
194
+ "setter": false,
195
+ "reflect": false,
196
+ "attribute": "unit"
197
+ },
198
+ "indeterminate": {
199
+ "type": "boolean",
200
+ "mutable": false,
201
+ "complexType": {
202
+ "original": "boolean",
203
+ "resolved": "boolean",
204
+ "references": {}
205
+ },
206
+ "required": false,
207
+ "optional": false,
208
+ "docs": {
209
+ "tags": [],
210
+ "text": "Indeterminate (animated bar, no value)."
211
+ },
212
+ "getter": false,
213
+ "setter": false,
214
+ "reflect": true,
215
+ "attribute": "indeterminate",
216
+ "defaultValue": "false"
217
+ }
218
+ };
219
+ }
220
+ }
221
+ //# sourceMappingURL=progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../../../src/components/atoms/progress/progress.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAUzD,MAAM,OAAO,WAAW;IACtB,+BAA+B;IACvB,KAAK,GAAW,CAAC,CAAC;IAC1B,iBAAiB;IACT,GAAG,GAAW,GAAG,CAAC;IAC1B,8EAA8E;IACrD,OAAO,GAAoB,SAAS,CAAC;IAC9D,YAAY;IACa,IAAI,GAAiB,IAAI,CAAC;IACnD,6CAA6C;IACrC,KAAK,CAAU;IACvB,4CAA4C;IACpC,SAAS,GAAY,KAAK,CAAC;IACnC,2CAA2C;IACnC,IAAI,CAAU;IACtB,8CAA8C;IACrB,aAAa,GAAY,KAAK,CAAC;IAEhD,OAAO;QACb,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC;IAEO,UAAU;QAChB,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAC3C,CAAC;QACD,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;IAC1E,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,CACL,EAAC,IAAI,qDACH,IAAI,EAAC,aAAa,mBACH,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,mBAC3C,CAAC,mBACD,IAAI,CAAC,GAAG,gBACX,IAAI,CAAC,KAAK;YAErB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CACjC,4DAAK,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ;gBAC9B,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ;gBAClE,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CACxC,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,UAAU,EAAE,CAAQ,CAC5D,CACG,CACP;YACD,4DAAK,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO;gBAC7B,4DACE,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,GAC5D,CACE,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type ProgressVariant = 'default' | 'success' | 'warning' | 'error';\nexport type ProgressSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-progress',\n styleUrl: 'progress.css',\n shadow: true,\n})\nexport class IndProgress {\n /** Current value (0–`max`). */\n @Prop() value: number = 0;\n /** Max value. */\n @Prop() max: number = 100;\n /** Visual variant. Use `warning` / `error` for low / critical fill levels. */\n @Prop({ reflect: true }) variant: ProgressVariant = 'default';\n /** Size. */\n @Prop({ reflect: true }) size: ProgressSize = 'md';\n /** Optional label rendered above the bar. */\n @Prop() label?: string;\n /** Show numeric value next to the label. */\n @Prop() showValue: boolean = false;\n /** Unit suffix for the displayed value. */\n @Prop() unit?: string;\n /** Indeterminate (animated bar, no value). */\n @Prop({ reflect: true }) indeterminate: boolean = false;\n\n private percent(): number {\n if (this.max <= 0) return 0;\n return Math.min(100, Math.max(0, (this.value / this.max) * 100));\n }\n\n private valueLabel(): string {\n if (this.unit === '%' || (this.max === 100 && !this.unit)) {\n return `${Math.round(this.percent())} %`;\n }\n return `${this.value}${this.unit ? ' ' + this.unit : ''} / ${this.max}`;\n }\n\n render() {\n const pct = this.percent();\n return (\n <Host\n role=\"progressbar\"\n aria-valuenow={this.indeterminate ? undefined : this.value}\n aria-valuemin={0}\n aria-valuemax={this.max}\n aria-label={this.label}\n >\n {(this.label || this.showValue) && (\n <div class=\"header\" part=\"header\">\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n {this.showValue && !this.indeterminate && (\n <span class=\"value\" part=\"value\">{this.valueLabel()}</span>\n )}\n </div>\n )}\n <div class=\"track\" part=\"track\">\n <div\n class=\"fill\"\n part=\"fill\"\n style={this.indeterminate ? undefined : { width: `${pct}%` }}\n />\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,100 @@
1
+ :host {
2
+ display: block;
3
+ width: var(--ind-size-canvas-robot-width, 320px);
4
+ height: var(--ind-size-canvas-robot-height, 220px);
5
+ font-family: var(--ind-font-family-mono);
6
+ }
7
+
8
+ svg {
9
+ display: block;
10
+ width: 100%;
11
+ height: 100%;
12
+ background: var(--ind-surface-sunken, light-dark(#ffffff, #000000));
13
+ border: 1px solid var(--ind-surface-border-default);
14
+ border-radius: var(--ind-radius-md, 3px);
15
+ }
16
+
17
+ .envelope {
18
+ fill: none;
19
+ stroke: var(--ind-surface-border-subtle);
20
+ stroke-dasharray: 2 4;
21
+ }
22
+
23
+ .envelope-inner {
24
+ stroke-dasharray: 1 3;
25
+ opacity: 0.6;
26
+ }
27
+
28
+ .axis {
29
+ stroke: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
30
+ stroke-width: 1;
31
+ }
32
+
33
+ .axis-label {
34
+ font-family: var(--ind-font-family-mono);
35
+ font-size: 9px;
36
+ fill: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
37
+ }
38
+
39
+ .link {
40
+ stroke-width: 5;
41
+ stroke-linecap: round;
42
+ transition: stroke 240ms;
43
+ }
44
+ .link-1 { stroke: var(--ind-state-running-bg, #16a34a); }
45
+ .link-2 { stroke: var(--ind-state-running-border, #4ade80); }
46
+
47
+ .wrist {
48
+ stroke: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
49
+ stroke-width: 2;
50
+ stroke-linecap: round;
51
+ }
52
+
53
+ .joint {
54
+ fill: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
55
+ stroke: var(--ind-surface-border-strong);
56
+ stroke-width: 1;
57
+ }
58
+
59
+ .joint.base {
60
+ fill: var(--ind-state-stopped-bg, #5a6776);
61
+ stroke: var(--ind-state-stopped-border, #8390a0);
62
+ }
63
+
64
+ .joint.effector {
65
+ fill: var(--ind-state-warning-bg, #f59e0b);
66
+ stroke: var(--ind-state-warning-border, #fcd34d);
67
+ }
68
+
69
+ .readout text {
70
+ font-size: 9px;
71
+ fill: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
72
+ font-feature-settings: "tnum" 1;
73
+ }
74
+ .readout tspan {
75
+ fill: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
76
+ font-weight: 700;
77
+ }
78
+
79
+ :host([state="moving"]) .link {
80
+ stroke-dasharray: 4 2;
81
+ animation: ind-scara-move 1.2s linear infinite;
82
+ }
83
+
84
+ :host([state="fault"]) .link,
85
+ :host([state="fault"]) .wrist {
86
+ stroke: var(--ind-state-fault-bg, #dc2626);
87
+ }
88
+ :host([state="fault"]) .joint {
89
+ stroke: var(--ind-state-fault-border, #f87171);
90
+ }
91
+
92
+ @keyframes ind-scara-move {
93
+ to { stroke-dashoffset: -12; }
94
+ }
95
+
96
+ @media (prefers-reduced-motion: reduce) {
97
+ :host([state="moving"]) .link {
98
+ animation: none;
99
+ }
100
+ }