@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,124 @@
1
+ import { h, Host } from "@stencil/core";
2
+ const DEFAULT_LABEL = {
3
+ running: 'OK',
4
+ stopped: 'Stopped',
5
+ fault: 'Fault',
6
+ warning: 'Warning',
7
+ maintenance: 'Maintenance',
8
+ unknown: '—',
9
+ };
10
+ export class IndHealthCard {
11
+ /** Subsystem name (e.g. "PLC", "Dispense robot", "Washer"). */
12
+ heading;
13
+ /** Process state — drives the dot color and the prominent text color. */
14
+ state = 'unknown';
15
+ /** Override the default label (e.g. show "RUN 24 h" instead of "OK"). */
16
+ stateLabel;
17
+ /** Optional sub-line for context (timestamp, last error, etc.). */
18
+ detail;
19
+ render() {
20
+ const label = this.stateLabel ?? DEFAULT_LABEL[this.state];
21
+ const dotState = this.state === 'unknown' ? 'neutral' : this.state;
22
+ 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)));
23
+ }
24
+ static get is() { return "ind-health-card"; }
25
+ static get encapsulation() { return "shadow"; }
26
+ static get originalStyleUrls() {
27
+ return {
28
+ "$": ["health-card.css"]
29
+ };
30
+ }
31
+ static get styleUrls() {
32
+ return {
33
+ "$": ["health-card.css"]
34
+ };
35
+ }
36
+ static get properties() {
37
+ return {
38
+ "heading": {
39
+ "type": "string",
40
+ "mutable": false,
41
+ "complexType": {
42
+ "original": "string",
43
+ "resolved": "string",
44
+ "references": {}
45
+ },
46
+ "required": true,
47
+ "optional": false,
48
+ "docs": {
49
+ "tags": [],
50
+ "text": "Subsystem name (e.g. \"PLC\", \"Dispense robot\", \"Washer\")."
51
+ },
52
+ "getter": false,
53
+ "setter": false,
54
+ "reflect": false,
55
+ "attribute": "heading"
56
+ },
57
+ "state": {
58
+ "type": "string",
59
+ "mutable": false,
60
+ "complexType": {
61
+ "original": "HealthState",
62
+ "resolved": "\"fault\" | \"maintenance\" | \"running\" | \"stopped\" | \"unknown\" | \"warning\"",
63
+ "references": {
64
+ "HealthState": {
65
+ "location": "local",
66
+ "path": "C:/www/ind-ds/packages/core/src/components/molecules/health-card/health-card.tsx",
67
+ "id": "src/components/molecules/health-card/health-card.tsx::HealthState"
68
+ }
69
+ }
70
+ },
71
+ "required": false,
72
+ "optional": false,
73
+ "docs": {
74
+ "tags": [],
75
+ "text": "Process state \u2014 drives the dot color and the prominent text color."
76
+ },
77
+ "getter": false,
78
+ "setter": false,
79
+ "reflect": true,
80
+ "attribute": "state",
81
+ "defaultValue": "'unknown'"
82
+ },
83
+ "stateLabel": {
84
+ "type": "string",
85
+ "mutable": false,
86
+ "complexType": {
87
+ "original": "string",
88
+ "resolved": "string | undefined",
89
+ "references": {}
90
+ },
91
+ "required": false,
92
+ "optional": true,
93
+ "docs": {
94
+ "tags": [],
95
+ "text": "Override the default label (e.g. show \"RUN 24 h\" instead of \"OK\")."
96
+ },
97
+ "getter": false,
98
+ "setter": false,
99
+ "reflect": false,
100
+ "attribute": "state-label"
101
+ },
102
+ "detail": {
103
+ "type": "string",
104
+ "mutable": false,
105
+ "complexType": {
106
+ "original": "string",
107
+ "resolved": "string | undefined",
108
+ "references": {}
109
+ },
110
+ "required": false,
111
+ "optional": true,
112
+ "docs": {
113
+ "tags": [],
114
+ "text": "Optional sub-line for context (timestamp, last error, etc.)."
115
+ },
116
+ "getter": false,
117
+ "setter": false,
118
+ "reflect": false,
119
+ "attribute": "detail"
120
+ }
121
+ };
122
+ }
123
+ }
124
+ //# sourceMappingURL=health-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health-card.js","sourceRoot":"","sources":["../../../../src/components/molecules/health-card/health-card.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAUzD,MAAM,aAAa,GAAgC;IACjD,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,GAAG;CACb,CAAC;AAOF,MAAM,OAAO,aAAa;IACxB,+DAA+D;IACvD,OAAO,CAAU;IACzB,yEAAyE;IAChD,KAAK,GAAgB,SAAS,CAAC;IACxD,yEAAyE;IACjE,UAAU,CAAU;IAC5B,mEAAmE;IAC3D,MAAM,CAAU;IAExB,MAAM;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACnE,OAAO,CACL,EAAC,IAAI,qDACH,IAAI,EAAC,OAAO,gBACA,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,eAC5B,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;YAE1D,4DAAK,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,OAAO,CAAO;YACpD,4DAAK,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ;gBAC/B,uEAAgB,KAAK,EAAE,QAAmF,EAAE,IAAI,EAAC,IAAI,GAAG;gBACxH,6DAAM,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,aAAa,IAAE,KAAK,CAAQ,CACvD;YACL,IAAI,CAAC,MAAM,IAAI,4DAAK,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,IAAE,IAAI,CAAC,MAAM,CAAO,CAChE,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type HealthState =\n | 'running'\n | 'stopped'\n | 'fault'\n | 'warning'\n | 'maintenance'\n | 'unknown';\n\nconst DEFAULT_LABEL: Record<HealthState, string> = {\n running: 'OK',\n stopped: 'Stopped',\n fault: 'Fault',\n warning: 'Warning',\n maintenance: 'Maintenance',\n unknown: '—',\n};\n\n@Component({\n tag: 'ind-health-card',\n styleUrl: 'health-card.css',\n shadow: true,\n})\nexport class IndHealthCard {\n /** Subsystem name (e.g. \"PLC\", \"Dispense robot\", \"Washer\"). */\n @Prop() heading!: string;\n /** Process state — drives the dot color and the prominent text color. */\n @Prop({ reflect: true }) state: HealthState = 'unknown';\n /** Override the default label (e.g. show \"RUN 24 h\" instead of \"OK\"). */\n @Prop() stateLabel?: string;\n /** Optional sub-line for context (timestamp, last error, etc.). */\n @Prop() detail?: string;\n\n render() {\n const label = this.stateLabel ?? DEFAULT_LABEL[this.state];\n const dotState = 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=\"title\" part=\"title\">{this.heading}</div>\n <div class=\"status\" part=\"status\">\n <ind-status-dot state={dotState as 'running' | 'stopped' | 'fault' | 'warning' | 'maintenance' | 'neutral'} size=\"md\" />\n <span class=\"state-label\" part=\"state-label\">{label}</span>\n </div>\n {this.detail && <div class=\"detail\" part=\"detail\">{this.detail}</div>}\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,82 @@
1
+ :host {
2
+ display: block;
3
+ font-family: var(--ind-font-family-sans);
4
+ }
5
+
6
+ .item {
7
+ position: relative;
8
+ display: flex;
9
+ align-items: center;
10
+ gap: var(--ind-spacing-3, 6px);
11
+ width: 100%;
12
+ height: var(--ind-nav-item-height, 38px);
13
+ padding: 0 var(--ind-spacing-5, 12px);
14
+ background: transparent;
15
+ border: none;
16
+ color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
17
+ font: inherit;
18
+ font-size: var(--ind-font-size-base, 12px);
19
+ text-align: left;
20
+ text-decoration: none;
21
+ cursor: pointer;
22
+ user-select: none;
23
+ box-sizing: border-box;
24
+ transition:
25
+ background-color var(--ind-motion-duration-fast, 120ms),
26
+ color var(--ind-motion-duration-fast, 120ms);
27
+ }
28
+
29
+ .indicator {
30
+ width: 10px;
31
+ font-size: 9px;
32
+ color: var(--ind-feedback-info-bg, #0891b2);
33
+ opacity: 0;
34
+ transition: opacity var(--ind-motion-duration-fast, 120ms);
35
+ text-align: center;
36
+ }
37
+
38
+ .content {
39
+ flex: 1;
40
+ overflow: hidden;
41
+ text-overflow: ellipsis;
42
+ white-space: nowrap;
43
+ }
44
+
45
+ .badge {
46
+ font-size: var(--ind-font-size-xs, 10px);
47
+ font-family: var(--ind-font-family-mono);
48
+ font-weight: var(--ind-font-weight-bold, 700);
49
+ font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
50
+ padding: 1px var(--ind-spacing-2, 4px);
51
+ min-width: 16px;
52
+ text-align: center;
53
+ border-radius: var(--ind-radius-sm, 2px);
54
+ background: var(--ind-feedback-error-bg, #dc2626);
55
+ color: var(--ind-feedback-error-fg, #ffffff);
56
+ line-height: 1.2;
57
+ }
58
+
59
+ .item:hover:not(:disabled):not([aria-disabled="true"]) {
60
+ background: var(--ind-surface-raised);
61
+ color: var(--ind-surface-text-primary);
62
+ }
63
+
64
+ .item:focus-visible {
65
+ outline: 2px solid var(--ind-surface-focus-ring, #22d3ee);
66
+ outline-offset: -2px;
67
+ }
68
+
69
+ :host([active]) .item {
70
+ background: var(--ind-surface-raised);
71
+ color: var(--ind-surface-text-primary);
72
+ font-weight: var(--ind-font-weight-semibold, 600);
73
+ }
74
+
75
+ :host([active]) .indicator {
76
+ opacity: 1;
77
+ }
78
+
79
+ :host([disabled]) {
80
+ opacity: 0.4;
81
+ pointer-events: none;
82
+ }
@@ -0,0 +1,165 @@
1
+ import { h, Host } from "@stencil/core";
2
+ export class IndNavItem {
3
+ /** Current page indicator — gets the ▶ prefix and active styling. */
4
+ active = false;
5
+ disabled = false;
6
+ /** Label text. Falls back to slotted content. */
7
+ label;
8
+ /** Optional href. When set, renders as `<a>` so middle-click / right-click open in new tab. */
9
+ href;
10
+ /** Optional badge — alarm count, unread messages, etc. */
11
+ badge;
12
+ /** Fires on click (or Enter / Space). Use this to drive client-side routers. */
13
+ indSelect;
14
+ onClick = (e) => {
15
+ if (this.disabled) {
16
+ e.preventDefault();
17
+ return;
18
+ }
19
+ if (!this.href)
20
+ e.preventDefault();
21
+ this.indSelect.emit();
22
+ };
23
+ render() {
24
+ const ariaCurrent = this.active ? 'page' : undefined;
25
+ const showBadge = this.badge !== undefined && this.badge !== '' && this.badge !== null;
26
+ const inner = [
27
+ h("span", { key: 'ad9e90d0aab88711ff9e5f5db2cd988a76520c3c', class: "indicator", part: "indicator", "aria-hidden": "true" }, "\u25B6"),
28
+ h("span", { key: '33fa94a1e111cfc992dbd20ec1c8cfc9a30b18c5', class: "content", part: "content" }, h("slot", { key: 'bfc5072816f07d0fc276d67621efa09d4ce421f4' }, this.label)),
29
+ showBadge ? h("span", { class: "badge", part: "badge" }, this.badge) : null,
30
+ ];
31
+ return (h(Host, { key: '895afdd6a1a347adadb7213e4b42ece2d3e32c65' }, this.href ? (h("a", { class: "item", part: "item", href: this.href, "aria-current": ariaCurrent, "aria-disabled": this.disabled ? 'true' : undefined, onClick: this.onClick }, inner)) : (h("button", { type: "button", class: "item", part: "item", disabled: this.disabled, "aria-current": ariaCurrent, onClick: this.onClick }, inner))));
32
+ }
33
+ static get is() { return "ind-nav-item"; }
34
+ static get encapsulation() { return "shadow"; }
35
+ static get originalStyleUrls() {
36
+ return {
37
+ "$": ["nav-item.css"]
38
+ };
39
+ }
40
+ static get styleUrls() {
41
+ return {
42
+ "$": ["nav-item.css"]
43
+ };
44
+ }
45
+ static get properties() {
46
+ return {
47
+ "active": {
48
+ "type": "boolean",
49
+ "mutable": false,
50
+ "complexType": {
51
+ "original": "boolean",
52
+ "resolved": "boolean",
53
+ "references": {}
54
+ },
55
+ "required": false,
56
+ "optional": false,
57
+ "docs": {
58
+ "tags": [],
59
+ "text": "Current page indicator \u2014 gets the \u25B6 prefix and active styling."
60
+ },
61
+ "getter": false,
62
+ "setter": false,
63
+ "reflect": true,
64
+ "attribute": "active",
65
+ "defaultValue": "false"
66
+ },
67
+ "disabled": {
68
+ "type": "boolean",
69
+ "mutable": false,
70
+ "complexType": {
71
+ "original": "boolean",
72
+ "resolved": "boolean",
73
+ "references": {}
74
+ },
75
+ "required": false,
76
+ "optional": false,
77
+ "docs": {
78
+ "tags": [],
79
+ "text": ""
80
+ },
81
+ "getter": false,
82
+ "setter": false,
83
+ "reflect": true,
84
+ "attribute": "disabled",
85
+ "defaultValue": "false"
86
+ },
87
+ "label": {
88
+ "type": "string",
89
+ "mutable": false,
90
+ "complexType": {
91
+ "original": "string",
92
+ "resolved": "string | undefined",
93
+ "references": {}
94
+ },
95
+ "required": false,
96
+ "optional": true,
97
+ "docs": {
98
+ "tags": [],
99
+ "text": "Label text. Falls back to slotted content."
100
+ },
101
+ "getter": false,
102
+ "setter": false,
103
+ "reflect": false,
104
+ "attribute": "label"
105
+ },
106
+ "href": {
107
+ "type": "string",
108
+ "mutable": false,
109
+ "complexType": {
110
+ "original": "string",
111
+ "resolved": "string | undefined",
112
+ "references": {}
113
+ },
114
+ "required": false,
115
+ "optional": true,
116
+ "docs": {
117
+ "tags": [],
118
+ "text": "Optional href. When set, renders as `<a>` so middle-click / right-click open in new tab."
119
+ },
120
+ "getter": false,
121
+ "setter": false,
122
+ "reflect": false,
123
+ "attribute": "href"
124
+ },
125
+ "badge": {
126
+ "type": "any",
127
+ "mutable": false,
128
+ "complexType": {
129
+ "original": "string | number",
130
+ "resolved": "number | string | undefined",
131
+ "references": {}
132
+ },
133
+ "required": false,
134
+ "optional": true,
135
+ "docs": {
136
+ "tags": [],
137
+ "text": "Optional badge \u2014 alarm count, unread messages, etc."
138
+ },
139
+ "getter": false,
140
+ "setter": false,
141
+ "reflect": false,
142
+ "attribute": "badge"
143
+ }
144
+ };
145
+ }
146
+ static get events() {
147
+ return [{
148
+ "method": "indSelect",
149
+ "name": "indSelect",
150
+ "bubbles": true,
151
+ "cancelable": true,
152
+ "composed": true,
153
+ "docs": {
154
+ "tags": [],
155
+ "text": "Fires on click (or Enter / Space). Use this to drive client-side routers."
156
+ },
157
+ "complexType": {
158
+ "original": "void",
159
+ "resolved": "void",
160
+ "references": {}
161
+ }
162
+ }];
163
+ }
164
+ }
165
+ //# sourceMappingURL=nav-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nav-item.js","sourceRoot":"","sources":["../../../../src/components/molecules/nav-item/nav-item.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAO9E,MAAM,OAAO,UAAU;IACrB,qEAAqE;IAC5C,MAAM,GAAY,KAAK,CAAC;IACxB,QAAQ,GAAY,KAAK,CAAC;IACnD,iDAAiD;IACzC,KAAK,CAAU;IACvB,+FAA+F;IACvF,IAAI,CAAU;IACtB,0DAA0D;IAClD,KAAK,CAAmB;IAEhC,gFAAgF;IACvE,SAAS,CAAsB;IAEhC,OAAO,GAAG,CAAC,CAAa,EAAE,EAAE;QAClC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,CAAC,CAAC,cAAc,EAAE,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM;QACJ,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;QAEvF,MAAM,KAAK,GAAG;YACZ,6DAAM,KAAK,EAAC,WAAW,EAAC,IAAI,EAAC,WAAW,iBAAa,MAAM,aAAS;YACpE,6DAAM,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS;gBAAC,+DAAO,IAAI,CAAC,KAAK,CAAQ,CAAO;YACrE,SAAS,CAAC,CAAC,CAAC,YAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAAC,CAAC,CAAC,IAAI;SACxE,CAAC;QAEF,OAAO,CACL,EAAC,IAAI,uDACF,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,SACE,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,CAAC,IAAI,kBACD,WAAW,mBACV,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EACjD,OAAO,EAAE,IAAI,CAAC,OAAO,IAEpB,KAAK,CACJ,CACL,CAAC,CAAC,CAAC,CACF,cACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,kBACT,WAAW,EACzB,OAAO,EAAE,IAAI,CAAC,OAAO,IAEpB,KAAK,CACC,CACV,CACI,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ind-nav-item',\n styleUrl: 'nav-item.css',\n shadow: true,\n})\nexport class IndNavItem {\n /** Current page indicator — gets the ▶ prefix and active styling. */\n @Prop({ reflect: true }) active: boolean = false;\n @Prop({ reflect: true }) disabled: boolean = false;\n /** Label text. Falls back to slotted content. */\n @Prop() label?: string;\n /** Optional href. When set, renders as `<a>` so middle-click / right-click open in new tab. */\n @Prop() href?: string;\n /** Optional badge — alarm count, unread messages, etc. */\n @Prop() badge?: string | number;\n\n /** Fires on click (or Enter / Space). Use this to drive client-side routers. */\n @Event() indSelect!: EventEmitter<void>;\n\n private onClick = (e: MouseEvent) => {\n if (this.disabled) {\n e.preventDefault();\n return;\n }\n if (!this.href) e.preventDefault();\n this.indSelect.emit();\n };\n\n render() {\n const ariaCurrent = this.active ? 'page' : undefined;\n const showBadge = this.badge !== undefined && this.badge !== '' && this.badge !== null;\n\n const inner = [\n <span class=\"indicator\" part=\"indicator\" aria-hidden=\"true\">▶</span>,\n <span class=\"content\" part=\"content\"><slot>{this.label}</slot></span>,\n showBadge ? <span class=\"badge\" part=\"badge\">{this.badge}</span> : null,\n ];\n\n return (\n <Host>\n {this.href ? (\n <a\n class=\"item\"\n part=\"item\"\n href={this.href}\n aria-current={ariaCurrent}\n aria-disabled={this.disabled ? 'true' : undefined}\n onClick={this.onClick}\n >\n {inner}\n </a>\n ) : (\n <button\n type=\"button\"\n class=\"item\"\n part=\"item\"\n disabled={this.disabled}\n aria-current={ariaCurrent}\n onClick={this.onClick}\n >\n {inner}\n </button>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,36 @@
1
+ :host {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: var(--ind-spacing-4, 8px);
5
+ padding: var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);
6
+ background: var(--ind-surface-panel);
7
+ border-bottom: 1px solid var(--ind-surface-border-default);
8
+ font-family: var(--ind-font-family-sans);
9
+ color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
10
+ flex-wrap: wrap;
11
+ }
12
+
13
+ .filter ::slotted(*) {
14
+ min-width: 200px;
15
+ }
16
+
17
+ .flags {
18
+ display: flex;
19
+ align-items: center;
20
+ gap: var(--ind-spacing-4, 8px);
21
+ }
22
+
23
+ .spacer { flex: 1; }
24
+
25
+ .counter {
26
+ font-family: var(--ind-font-family-mono);
27
+ font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
28
+ color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
29
+ font-size: var(--ind-font-size-sm, 11px);
30
+ white-space: nowrap;
31
+ }
32
+
33
+ .actions {
34
+ display: flex;
35
+ gap: var(--ind-spacing-3, 6px);
36
+ }
@@ -0,0 +1,45 @@
1
+ import { h, Host } from "@stencil/core";
2
+ export class IndToolbarAction {
3
+ /** Counter rendered before the actions (e.g. "1 248 messages"). */
4
+ counter;
5
+ render() {
6
+ const hasCounter = this.counter !== undefined && this.counter !== '' && this.counter !== null;
7
+ return (h(Host, { key: '335b711876377ee50cfeaac4635c2794d5c038eb' }, h("span", { key: '69cf5e6ca388c2bef9004cddd515db9c1d34f2f9', class: "filter", part: "filter" }, h("slot", { key: '6a5d72136095b2531214ea2e28a39a795e8b7e2d', name: "filter" })), h("span", { key: '614f12f7432752c3deef9cca8174a503d7048878', class: "flags", part: "flags" }, h("slot", { key: 'db14ea5398c70574cb0b690db2e0578aafa6a545', name: "flags" })), h("span", { key: '07ff837c88d3228666b7bcd36ae52f9efa5b081d', class: "spacer" }), hasCounter && h("span", { key: 'ee9220383a9a4c9c471f4945da3c28f67dada3ee', class: "counter", part: "counter" }, this.counter), h("span", { key: '53bc247add97382c56d4447b30c9b73e663fbe96', class: "actions", part: "actions" }, h("slot", { key: 'da6c78e96a87a412f44d620356268ef1a746fc99', name: "actions" }))));
8
+ }
9
+ static get is() { return "ind-toolbar-action"; }
10
+ static get encapsulation() { return "shadow"; }
11
+ static get originalStyleUrls() {
12
+ return {
13
+ "$": ["toolbar-action.css"]
14
+ };
15
+ }
16
+ static get styleUrls() {
17
+ return {
18
+ "$": ["toolbar-action.css"]
19
+ };
20
+ }
21
+ static get properties() {
22
+ return {
23
+ "counter": {
24
+ "type": "any",
25
+ "mutable": false,
26
+ "complexType": {
27
+ "original": "string | number",
28
+ "resolved": "number | string | undefined",
29
+ "references": {}
30
+ },
31
+ "required": false,
32
+ "optional": true,
33
+ "docs": {
34
+ "tags": [],
35
+ "text": "Counter rendered before the actions (e.g. \"1 248 messages\")."
36
+ },
37
+ "getter": false,
38
+ "setter": false,
39
+ "reflect": false,
40
+ "attribute": "counter"
41
+ }
42
+ };
43
+ }
44
+ }
45
+ //# sourceMappingURL=toolbar-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar-action.js","sourceRoot":"","sources":["../../../../src/components/molecules/toolbar-action/toolbar-action.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOzD,MAAM,OAAO,gBAAgB;IAC3B,mEAAmE;IAC3D,OAAO,CAAmB;IAElC,MAAM;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,EAAE,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;QAC9F,OAAO,CACL,EAAC,IAAI;YACH,6DAAM,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ;gBAAC,6DAAM,IAAI,EAAC,QAAQ,GAAG,CAAO;YAChE,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO;gBAAC,6DAAM,IAAI,EAAC,OAAO,GAAG,CAAO;YAC7D,6DAAM,KAAK,EAAC,QAAQ,GAAG;YACtB,UAAU,IAAI,6DAAM,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,IAAE,IAAI,CAAC,OAAO,CAAQ;YACzE,6DAAM,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS;gBAAC,6DAAM,IAAI,EAAC,SAAS,GAAG,CAAO,CAC9D,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\n@Component({\n tag: 'ind-toolbar-action',\n styleUrl: 'toolbar-action.css',\n shadow: true,\n})\nexport class IndToolbarAction {\n /** Counter rendered before the actions (e.g. \"1 248 messages\"). */\n @Prop() counter?: string | number;\n\n render() {\n const hasCounter = this.counter !== undefined && this.counter !== '' && this.counter !== null;\n return (\n <Host>\n <span class=\"filter\" part=\"filter\"><slot name=\"filter\" /></span>\n <span class=\"flags\" part=\"flags\"><slot name=\"flags\" /></span>\n <span class=\"spacer\" />\n {hasCounter && <span class=\"counter\" part=\"counter\">{this.counter}</span>}\n <span class=\"actions\" part=\"actions\"><slot name=\"actions\" /></span>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,127 @@
1
+ :host {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: var(--ind-spacing-6, 16px);
5
+ padding: var(--ind-spacing-3, 6px) var(--ind-spacing-6, 16px);
6
+ background: var(--ind-surface-panel);
7
+ border-bottom: 1px solid var(--ind-surface-border-default);
8
+ color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
9
+ font-family: var(--ind-font-family-sans);
10
+ min-height: 56px;
11
+ font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
12
+ }
13
+
14
+ .brand {
15
+ display: flex;
16
+ align-items: center;
17
+ gap: var(--ind-spacing-3, 6px);
18
+ }
19
+
20
+ .brand-logo {
21
+ font-size: 26px;
22
+ line-height: 1;
23
+ color: var(--ind-button-primary-bg);
24
+ }
25
+
26
+ .brand-text {
27
+ display: flex;
28
+ flex-direction: column;
29
+ line-height: 1.1;
30
+ }
31
+
32
+ .brand-name {
33
+ font-size: var(--ind-font-size-lg, 14px);
34
+ font-weight: var(--ind-font-weight-bold, 700);
35
+ letter-spacing: 0.05em;
36
+ text-transform: uppercase;
37
+ }
38
+
39
+ .brand-sub {
40
+ font-size: var(--ind-font-size-xs, 10px);
41
+ color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
42
+ text-transform: uppercase;
43
+ letter-spacing: 0.08em;
44
+ }
45
+
46
+ .machine {
47
+ display: flex;
48
+ flex-direction: column;
49
+ line-height: 1.1;
50
+ padding-left: var(--ind-spacing-5, 12px);
51
+ border-left: 1px solid var(--ind-surface-border-subtle);
52
+ }
53
+
54
+ .machine-label {
55
+ font-size: var(--ind-font-size-xs, 10px);
56
+ color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
57
+ text-transform: uppercase;
58
+ letter-spacing: 0.08em;
59
+ }
60
+
61
+ .machine-id {
62
+ font-family: var(--ind-font-family-mono);
63
+ font-size: var(--ind-font-size-md, 13px);
64
+ font-weight: var(--ind-font-weight-semibold, 600);
65
+ }
66
+
67
+ .mqtt {
68
+ display: flex;
69
+ align-items: center;
70
+ gap: var(--ind-spacing-3, 6px);
71
+ }
72
+
73
+ .mqtt-label {
74
+ font-size: var(--ind-font-size-sm, 11px);
75
+ color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
76
+ }
77
+
78
+ .spacer { flex: 1; }
79
+
80
+ .meta {
81
+ display: flex;
82
+ align-items: center;
83
+ gap: var(--ind-spacing-4, 8px);
84
+ font-size: var(--ind-font-size-sm, 11px);
85
+ }
86
+
87
+ .version {
88
+ font-family: var(--ind-font-family-mono);
89
+ color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
90
+ }
91
+
92
+ .docs {
93
+ color: var(--ind-feedback-info-bg);
94
+ text-decoration: underline;
95
+ text-underline-offset: 2px;
96
+ }
97
+ .docs:hover { text-decoration-thickness: 2px; }
98
+
99
+ .actions {
100
+ display: flex;
101
+ gap: var(--ind-spacing-3, 6px);
102
+ }
103
+
104
+ .action {
105
+ height: var(--ind-size-button-sm, 26px);
106
+ padding: 0 var(--ind-spacing-4, 8px);
107
+ background: var(--ind-button-default-bg);
108
+ color: var(--ind-button-default-fg);
109
+ border: 1px solid var(--ind-button-default-border);
110
+ border-radius: var(--ind-radius-md, 3px);
111
+ font-family: inherit;
112
+ font-size: var(--ind-font-size-sm, 11px);
113
+ font-weight: var(--ind-font-weight-semibold, 600);
114
+ cursor: pointer;
115
+ transition: background var(--ind-motion-duration-fast, 120ms);
116
+ }
117
+ .action:hover { background: var(--ind-button-default-bg-hover); }
118
+
119
+ .action--danger {
120
+ background: transparent;
121
+ color: var(--ind-feedback-error-bg);
122
+ border-color: var(--ind-feedback-error-border);
123
+ }
124
+ .action--danger:hover {
125
+ background: var(--ind-feedback-error-bg);
126
+ color: var(--ind-feedback-error-fg);
127
+ }