@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.
- package/README.md +41 -0
- package/dist/cjs/ind-alarm.cjs.entry.js +35 -0
- package/dist/cjs/ind-alarm.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-app-header.cjs.entry.js +42 -0
- package/dist/cjs/ind-app-header.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-button.cjs.entry.js +79 -0
- package/dist/cjs/ind-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-checkbox.cjs.entry.js +49 -0
- package/dist/cjs/ind-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-dialog.cjs.entry.js +101 -0
- package/dist/cjs/ind-dialog.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-divider.cjs.entry.js +21 -0
- package/dist/cjs/ind-divider.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-ds.cjs.js +27 -0
- package/dist/cjs/ind-ds.cjs.js.map +1 -0
- package/dist/cjs/ind-fill-row.cjs.entry.js +34 -0
- package/dist/cjs/ind-fill-row.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-health-card.cjs.entry.js +38 -0
- package/dist/cjs/ind-health-card.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-input.cjs.entry.js +57 -0
- package/dist/cjs/ind-input.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-led.cjs.entry.js +29 -0
- package/dist/cjs/ind-led.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-mqtt-monitor.cjs.entry.js +75 -0
- package/dist/cjs/ind-mqtt-monitor.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-nav-item.cjs.entry.js +48 -0
- package/dist/cjs/ind-nav-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-progress.cjs.entry.js +48 -0
- package/dist/cjs/ind-progress.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-scara-canvas.cjs.entry.js +57 -0
- package/dist/cjs/ind-scara-canvas.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-select.cjs.entry.js +55 -0
- package/dist/cjs/ind-select.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-shelf-canvas.cjs.entry.js +88 -0
- package/dist/cjs/ind-shelf-canvas.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-sidebar-nav.cjs.entry.js +20 -0
- package/dist/cjs/ind-sidebar-nav.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-status-bar.cjs.entry.js +22 -0
- package/dist/cjs/ind-status-bar.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-status-dot.cjs.entry.js +31 -0
- package/dist/cjs/ind-status-dot.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-textarea.cjs.entry.js +66 -0
- package/dist/cjs/ind-textarea.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-toolbar-action.cjs.entry.js +23 -0
- package/dist/cjs/ind-toolbar-action.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-value.cjs.entry.js +47 -0
- package/dist/cjs/ind-value.cjs.entry.js.map +1 -0
- package/dist/cjs/ind-valve.cjs.entry.js +31 -0
- package/dist/cjs/ind-valve.cjs.entry.js.map +1 -0
- package/dist/cjs/index-ph7ZTjuY.js +1638 -0
- package/dist/cjs/index-ph7ZTjuY.js.map +1 -0
- package/dist/cjs/index.cjs.js +5 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +15 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/collection/collection-manifest.json +35 -0
- package/dist/collection/components/atoms/alarm/alarm.css +87 -0
- package/dist/collection/components/atoms/alarm/alarm.js +122 -0
- package/dist/collection/components/atoms/alarm/alarm.js.map +1 -0
- package/dist/collection/components/atoms/button/button.css +110 -0
- package/dist/collection/components/atoms/button/button.js +215 -0
- package/dist/collection/components/atoms/button/button.js.map +1 -0
- package/dist/collection/components/atoms/checkbox/checkbox.css +92 -0
- package/dist/collection/components/atoms/checkbox/checkbox.js +214 -0
- package/dist/collection/components/atoms/checkbox/checkbox.js.map +1 -0
- package/dist/collection/components/atoms/dialog/dialog.css +85 -0
- package/dist/collection/components/atoms/dialog/dialog.js +265 -0
- package/dist/collection/components/atoms/dialog/dialog.js.map +1 -0
- package/dist/collection/components/atoms/divider/divider.css +16 -0
- package/dist/collection/components/atoms/divider/divider.js +50 -0
- package/dist/collection/components/atoms/divider/divider.js.map +1 -0
- package/dist/collection/components/atoms/input/input.css +92 -0
- package/dist/collection/components/atoms/input/input.js +427 -0
- package/dist/collection/components/atoms/input/input.js.map +1 -0
- package/dist/collection/components/atoms/led/led.css +91 -0
- package/dist/collection/components/atoms/led/led.js +123 -0
- package/dist/collection/components/atoms/led/led.js.map +1 -0
- package/dist/collection/components/atoms/progress/progress.css +69 -0
- package/dist/collection/components/atoms/progress/progress.js +221 -0
- package/dist/collection/components/atoms/progress/progress.js.map +1 -0
- package/dist/collection/components/atoms/scara-canvas/scara-canvas.css +100 -0
- package/dist/collection/components/atoms/scara-canvas/scara-canvas.js +138 -0
- package/dist/collection/components/atoms/scara-canvas/scara-canvas.js.map +1 -0
- package/dist/collection/components/atoms/select/select.css +88 -0
- package/dist/collection/components/atoms/select/select.js +244 -0
- package/dist/collection/components/atoms/select/select.js.map +1 -0
- package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.css +67 -0
- package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.js +184 -0
- package/dist/collection/components/atoms/shelf-canvas/shelf-canvas.js.map +1 -0
- package/dist/collection/components/atoms/status-dot/status-dot.css +69 -0
- package/dist/collection/components/atoms/status-dot/status-dot.js +125 -0
- package/dist/collection/components/atoms/status-dot/status-dot.js.map +1 -0
- package/dist/collection/components/atoms/textarea/textarea.css +74 -0
- package/dist/collection/components/atoms/textarea/textarea.js +331 -0
- package/dist/collection/components/atoms/textarea/textarea.js.map +1 -0
- package/dist/collection/components/atoms/value/value.css +115 -0
- package/dist/collection/components/atoms/value/value.js +223 -0
- package/dist/collection/components/atoms/value/value.js.map +1 -0
- package/dist/collection/components/atoms/valve/valve.css +101 -0
- package/dist/collection/components/atoms/valve/valve.js +150 -0
- package/dist/collection/components/atoms/valve/valve.js.map +1 -0
- package/dist/collection/components/molecules/fill-row/fill-row.css +70 -0
- package/dist/collection/components/molecules/fill-row/fill-row.js +181 -0
- package/dist/collection/components/molecules/fill-row/fill-row.js.map +1 -0
- package/dist/collection/components/molecules/health-card/health-card.css +53 -0
- package/dist/collection/components/molecules/health-card/health-card.js +124 -0
- package/dist/collection/components/molecules/health-card/health-card.js.map +1 -0
- package/dist/collection/components/molecules/nav-item/nav-item.css +82 -0
- package/dist/collection/components/molecules/nav-item/nav-item.js +165 -0
- package/dist/collection/components/molecules/nav-item/nav-item.js.map +1 -0
- package/dist/collection/components/molecules/toolbar-action/toolbar-action.css +36 -0
- package/dist/collection/components/molecules/toolbar-action/toolbar-action.js +45 -0
- package/dist/collection/components/molecules/toolbar-action/toolbar-action.js.map +1 -0
- package/dist/collection/components/organisms/app-header/app-header.css +127 -0
- package/dist/collection/components/organisms/app-header/app-header.js +256 -0
- package/dist/collection/components/organisms/app-header/app-header.js.map +1 -0
- package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.css +96 -0
- package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.js +205 -0
- package/dist/collection/components/organisms/mqtt-monitor/mqtt-monitor.js.map +1 -0
- package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.css +39 -0
- package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.js +26 -0
- package/dist/collection/components/organisms/sidebar-nav/sidebar-nav.js.map +1 -0
- package/dist/collection/components/organisms/status-bar/status-bar.css +34 -0
- package/dist/collection/components/organisms/status-bar/status-bar.js +76 -0
- package/dist/collection/components/organisms/status-bar/status-bar.js.map +1 -0
- package/dist/collection/index.js +2 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/components/ind-alarm.d.ts +11 -0
- package/dist/components/ind-alarm.js +2 -0
- package/dist/components/ind-alarm.js.map +1 -0
- package/dist/components/ind-app-header.d.ts +11 -0
- package/dist/components/ind-app-header.js +2 -0
- package/dist/components/ind-app-header.js.map +1 -0
- package/dist/components/ind-button.d.ts +11 -0
- package/dist/components/ind-button.js +2 -0
- package/dist/components/ind-button.js.map +1 -0
- package/dist/components/ind-checkbox.d.ts +11 -0
- package/dist/components/ind-checkbox.js +2 -0
- package/dist/components/ind-checkbox.js.map +1 -0
- package/dist/components/ind-dialog.d.ts +11 -0
- package/dist/components/ind-dialog.js +2 -0
- package/dist/components/ind-dialog.js.map +1 -0
- package/dist/components/ind-divider.d.ts +11 -0
- package/dist/components/ind-divider.js +2 -0
- package/dist/components/ind-divider.js.map +1 -0
- package/dist/components/ind-fill-row.d.ts +11 -0
- package/dist/components/ind-fill-row.js +2 -0
- package/dist/components/ind-fill-row.js.map +1 -0
- package/dist/components/ind-health-card.d.ts +11 -0
- package/dist/components/ind-health-card.js +2 -0
- package/dist/components/ind-health-card.js.map +1 -0
- package/dist/components/ind-input.d.ts +11 -0
- package/dist/components/ind-input.js +2 -0
- package/dist/components/ind-input.js.map +1 -0
- package/dist/components/ind-led.d.ts +11 -0
- package/dist/components/ind-led.js +2 -0
- package/dist/components/ind-led.js.map +1 -0
- package/dist/components/ind-mqtt-monitor.d.ts +11 -0
- package/dist/components/ind-mqtt-monitor.js +2 -0
- package/dist/components/ind-mqtt-monitor.js.map +1 -0
- package/dist/components/ind-nav-item.d.ts +11 -0
- package/dist/components/ind-nav-item.js +2 -0
- package/dist/components/ind-nav-item.js.map +1 -0
- package/dist/components/ind-progress.d.ts +11 -0
- package/dist/components/ind-progress.js +2 -0
- package/dist/components/ind-progress.js.map +1 -0
- package/dist/components/ind-scara-canvas.d.ts +11 -0
- package/dist/components/ind-scara-canvas.js +2 -0
- package/dist/components/ind-scara-canvas.js.map +1 -0
- package/dist/components/ind-select.d.ts +11 -0
- package/dist/components/ind-select.js +2 -0
- package/dist/components/ind-select.js.map +1 -0
- package/dist/components/ind-shelf-canvas.d.ts +11 -0
- package/dist/components/ind-shelf-canvas.js +2 -0
- package/dist/components/ind-shelf-canvas.js.map +1 -0
- package/dist/components/ind-sidebar-nav.d.ts +11 -0
- package/dist/components/ind-sidebar-nav.js +2 -0
- package/dist/components/ind-sidebar-nav.js.map +1 -0
- package/dist/components/ind-status-bar.d.ts +11 -0
- package/dist/components/ind-status-bar.js +2 -0
- package/dist/components/ind-status-bar.js.map +1 -0
- package/dist/components/ind-status-dot.d.ts +11 -0
- package/dist/components/ind-status-dot.js +2 -0
- package/dist/components/ind-status-dot.js.map +1 -0
- package/dist/components/ind-textarea.d.ts +11 -0
- package/dist/components/ind-textarea.js +2 -0
- package/dist/components/ind-textarea.js.map +1 -0
- package/dist/components/ind-toolbar-action.d.ts +11 -0
- package/dist/components/ind-toolbar-action.js +2 -0
- package/dist/components/ind-toolbar-action.js.map +1 -0
- package/dist/components/ind-value.d.ts +11 -0
- package/dist/components/ind-value.js +2 -0
- package/dist/components/ind-value.js.map +1 -0
- package/dist/components/ind-valve.d.ts +11 -0
- package/dist/components/ind-valve.js +2 -0
- package/dist/components/ind-valve.js.map +1 -0
- package/dist/components/index.d.ts +35 -0
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/p-D-FsSjAC.js +2 -0
- package/dist/components/p-D-FsSjAC.js.map +1 -0
- package/dist/components/p-acsAzrRn.js +2 -0
- package/dist/components/p-acsAzrRn.js.map +1 -0
- package/dist/docs.d.ts +480 -0
- package/dist/docs.json +5360 -0
- package/dist/esm/ind-alarm.entry.js +33 -0
- package/dist/esm/ind-alarm.entry.js.map +1 -0
- package/dist/esm/ind-app-header.entry.js +40 -0
- package/dist/esm/ind-app-header.entry.js.map +1 -0
- package/dist/esm/ind-button.entry.js +77 -0
- package/dist/esm/ind-button.entry.js.map +1 -0
- package/dist/esm/ind-checkbox.entry.js +47 -0
- package/dist/esm/ind-checkbox.entry.js.map +1 -0
- package/dist/esm/ind-dialog.entry.js +99 -0
- package/dist/esm/ind-dialog.entry.js.map +1 -0
- package/dist/esm/ind-divider.entry.js +19 -0
- package/dist/esm/ind-divider.entry.js.map +1 -0
- package/dist/esm/ind-ds.js +23 -0
- package/dist/esm/ind-ds.js.map +1 -0
- package/dist/esm/ind-fill-row.entry.js +32 -0
- package/dist/esm/ind-fill-row.entry.js.map +1 -0
- package/dist/esm/ind-health-card.entry.js +36 -0
- package/dist/esm/ind-health-card.entry.js.map +1 -0
- package/dist/esm/ind-input.entry.js +55 -0
- package/dist/esm/ind-input.entry.js.map +1 -0
- package/dist/esm/ind-led.entry.js +27 -0
- package/dist/esm/ind-led.entry.js.map +1 -0
- package/dist/esm/ind-mqtt-monitor.entry.js +73 -0
- package/dist/esm/ind-mqtt-monitor.entry.js.map +1 -0
- package/dist/esm/ind-nav-item.entry.js +46 -0
- package/dist/esm/ind-nav-item.entry.js.map +1 -0
- package/dist/esm/ind-progress.entry.js +46 -0
- package/dist/esm/ind-progress.entry.js.map +1 -0
- package/dist/esm/ind-scara-canvas.entry.js +55 -0
- package/dist/esm/ind-scara-canvas.entry.js.map +1 -0
- package/dist/esm/ind-select.entry.js +53 -0
- package/dist/esm/ind-select.entry.js.map +1 -0
- package/dist/esm/ind-shelf-canvas.entry.js +86 -0
- package/dist/esm/ind-shelf-canvas.entry.js.map +1 -0
- package/dist/esm/ind-sidebar-nav.entry.js +18 -0
- package/dist/esm/ind-sidebar-nav.entry.js.map +1 -0
- package/dist/esm/ind-status-bar.entry.js +20 -0
- package/dist/esm/ind-status-bar.entry.js.map +1 -0
- package/dist/esm/ind-status-dot.entry.js +29 -0
- package/dist/esm/ind-status-dot.entry.js.map +1 -0
- package/dist/esm/ind-textarea.entry.js +64 -0
- package/dist/esm/ind-textarea.entry.js.map +1 -0
- package/dist/esm/ind-toolbar-action.entry.js +21 -0
- package/dist/esm/ind-toolbar-action.entry.js.map +1 -0
- package/dist/esm/ind-value.entry.js +45 -0
- package/dist/esm/ind-value.entry.js.map +1 -0
- package/dist/esm/ind-valve.entry.js +29 -0
- package/dist/esm/ind-valve.entry.js.map +1 -0
- package/dist/esm/index-D2yNiL0d.js +1628 -0
- package/dist/esm/index-D2yNiL0d.js.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +13 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/ind-ds/ind-ds.css +1 -0
- package/dist/ind-ds/ind-ds.esm.js +2 -0
- package/dist/ind-ds/ind-ds.esm.js.map +1 -0
- package/dist/ind-ds/index.esm.js +2 -0
- package/dist/ind-ds/index.esm.js.map +1 -0
- package/dist/ind-ds/p-0840007d.entry.js +2 -0
- package/dist/ind-ds/p-0840007d.entry.js.map +1 -0
- package/dist/ind-ds/p-1727b403.entry.js +2 -0
- package/dist/ind-ds/p-1727b403.entry.js.map +1 -0
- package/dist/ind-ds/p-1d871f3f.entry.js +2 -0
- package/dist/ind-ds/p-1d871f3f.entry.js.map +1 -0
- package/dist/ind-ds/p-296b0c55.entry.js +2 -0
- package/dist/ind-ds/p-296b0c55.entry.js.map +1 -0
- package/dist/ind-ds/p-459405b6.entry.js +2 -0
- package/dist/ind-ds/p-459405b6.entry.js.map +1 -0
- package/dist/ind-ds/p-4a4811ab.entry.js +2 -0
- package/dist/ind-ds/p-4a4811ab.entry.js.map +1 -0
- package/dist/ind-ds/p-52b18003.entry.js +2 -0
- package/dist/ind-ds/p-52b18003.entry.js.map +1 -0
- package/dist/ind-ds/p-5369d63a.entry.js +2 -0
- package/dist/ind-ds/p-5369d63a.entry.js.map +1 -0
- package/dist/ind-ds/p-595ccdce.entry.js +2 -0
- package/dist/ind-ds/p-595ccdce.entry.js.map +1 -0
- package/dist/ind-ds/p-6c5c8053.entry.js +2 -0
- package/dist/ind-ds/p-6c5c8053.entry.js.map +1 -0
- package/dist/ind-ds/p-6c8f4bbd.entry.js +2 -0
- package/dist/ind-ds/p-6c8f4bbd.entry.js.map +1 -0
- package/dist/ind-ds/p-781e21df.entry.js +2 -0
- package/dist/ind-ds/p-781e21df.entry.js.map +1 -0
- package/dist/ind-ds/p-8817625a.entry.js +2 -0
- package/dist/ind-ds/p-8817625a.entry.js.map +1 -0
- package/dist/ind-ds/p-99f55d2a.entry.js +2 -0
- package/dist/ind-ds/p-99f55d2a.entry.js.map +1 -0
- package/dist/ind-ds/p-9b93fb09.entry.js +2 -0
- package/dist/ind-ds/p-9b93fb09.entry.js.map +1 -0
- package/dist/ind-ds/p-D2yNiL0d.js +3 -0
- package/dist/ind-ds/p-D2yNiL0d.js.map +1 -0
- package/dist/ind-ds/p-c8de42e9.entry.js +2 -0
- package/dist/ind-ds/p-c8de42e9.entry.js.map +1 -0
- package/dist/ind-ds/p-c9f752e6.entry.js +2 -0
- package/dist/ind-ds/p-c9f752e6.entry.js.map +1 -0
- package/dist/ind-ds/p-cee8bf2b.entry.js +2 -0
- package/dist/ind-ds/p-cee8bf2b.entry.js.map +1 -0
- package/dist/ind-ds/p-cf07b580.entry.js +2 -0
- package/dist/ind-ds/p-cf07b580.entry.js.map +1 -0
- package/dist/ind-ds/p-d1edc052.entry.js +2 -0
- package/dist/ind-ds/p-d1edc052.entry.js.map +1 -0
- package/dist/ind-ds/p-ea24a59d.entry.js +2 -0
- package/dist/ind-ds/p-ea24a59d.entry.js.map +1 -0
- package/dist/ind-ds/p-ec0b3785.entry.js +2 -0
- package/dist/ind-ds/p-ec0b3785.entry.js.map +1 -0
- package/dist/ind-ds/p-ee453874.entry.js +2 -0
- package/dist/ind-ds/p-ee453874.entry.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/types/components/atoms/alarm/alarm.d.ts +13 -0
- package/dist/types/components/atoms/button/button.d.ts +31 -0
- package/dist/types/components/atoms/checkbox/checkbox.d.ts +18 -0
- package/dist/types/components/atoms/dialog/dialog.d.ts +29 -0
- package/dist/types/components/atoms/divider/divider.d.ts +6 -0
- package/dist/types/components/atoms/input/input.d.ts +34 -0
- package/dist/types/components/atoms/led/led.d.ts +14 -0
- package/dist/types/components/atoms/progress/progress.d.ts +24 -0
- package/dist/types/components/atoms/scara-canvas/scara-canvas.d.ts +21 -0
- package/dist/types/components/atoms/select/select.d.ts +27 -0
- package/dist/types/components/atoms/shelf-canvas/shelf-canvas.d.ts +29 -0
- package/dist/types/components/atoms/status-dot/status-dot.d.ts +14 -0
- package/dist/types/components/atoms/textarea/textarea.d.ts +28 -0
- package/dist/types/components/atoms/value/value.d.ts +24 -0
- package/dist/types/components/atoms/valve/valve.d.ts +17 -0
- package/dist/types/components/molecules/fill-row/fill-row.d.ts +19 -0
- package/dist/types/components/molecules/health-card/health-card.d.ts +13 -0
- package/dist/types/components/molecules/nav-item/nav-item.d.ts +17 -0
- package/dist/types/components/molecules/toolbar-action/toolbar-action.d.ts +6 -0
- package/dist/types/components/organisms/app-header/app-header.d.ts +26 -0
- package/dist/types/components/organisms/mqtt-monitor/mqtt-monitor.d.ts +23 -0
- package/dist/types/components/organisms/sidebar-nav/sidebar-nav.d.ts +11 -0
- package/dist/types/components/organisms/status-bar/status-bar.d.ts +13 -0
- package/dist/types/components.d.ts +1775 -0
- package/dist/types/index.d.ts +21 -0
- package/dist/types/stencil-public-runtime.d.ts +1861 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/package.json +87 -0
- package/utilities.css +324 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../src/components/atoms/value/value.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type ValueAlarm = 'none' | 'low-low' | 'low' | 'high' | 'high-high';\nexport type ValueTrend = 'none' | 'up' | 'down' | 'stable';\nexport type ValueSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-value',\n styleUrl: 'value.css',\n shadow: true,\n})\nexport class IndValue {\n /** Raw value to display. Numeric values are formatted with `precision`. */\n @Prop() value!: number | string;\n\n /** Engineering unit shown after the number (e.g. \"bar\", \"°C\", \"m³/h\"). */\n @Prop() unit?: string;\n\n /** Decimal places when `value` is numeric. Default: as-is. */\n @Prop() precision?: number;\n\n /** Active alarm priority. Highlights the readout with the ISA-18.2 color. */\n @Prop({ reflect: true }) alarm: ValueAlarm = 'none';\n\n /** Process trend direction. Renders a small arrow next to the unit. */\n @Prop({ reflect: true }) trend: ValueTrend = 'none';\n\n /** Readout size — `lg` is appropriate for primary KPIs (uses the 3xl font). */\n @Prop({ reflect: true }) size: ValueSize = 'md';\n\n /** Human label shown above the number (e.g. \"Discharge pressure\"). */\n @Prop() label?: string;\n\n /** Equipment tag shown above the number (e.g. \"PT-101\"). */\n @Prop() tag?: string;\n\n private formatted(): string {\n if (typeof this.value === 'string') return this.value;\n if (!Number.isFinite(this.value)) return '--';\n if (this.precision !== undefined) return this.value.toFixed(this.precision);\n return String(this.value);\n }\n\n render() {\n const accessibleName = this.label ?? this.tag ?? 'process value';\n const alarmSuffix = this.alarm !== 'none' ? `, alarm ${this.alarm}` : '';\n return (\n <Host\n role=\"group\"\n aria-label={`${accessibleName}: ${this.formatted()}${this.unit ? ' ' + this.unit : ''}${alarmSuffix}`}\n aria-live={this.alarm === 'high-high' ? 'assertive' : 'polite'}\n >\n {(this.tag || this.label) && (\n <div class=\"header\" part=\"header\">\n {this.tag && <span class=\"tag\" part=\"tag\">{this.tag}</span>}\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n </div>\n )}\n <div class=\"readout\" part=\"readout\">\n <span class=\"number\" part=\"number\">{this.formatted()}</span>\n {this.unit && <span class=\"unit\" part=\"unit\">{this.unit}</span>}\n {this.trend !== 'none' && (\n <span class=\"trend\" part=\"trend\" aria-hidden=\"true\">\n {this.trend === 'up' ? '▲' : this.trend === 'down' ? '▼' : '◆'}\n </span>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
align-items: center;
|
|
5
|
+
gap: var(--ind-spacing-2, 4px);
|
|
6
|
+
font-family: var(--ind-font-family-sans);
|
|
7
|
+
font-size: var(--ind-font-size-base, 12px);
|
|
8
|
+
/* `light-dark()` makes the fallback adapt to the page's color-scheme so the
|
|
9
|
+
* caption stays readable even if the atom lands on a surface whose theme
|
|
10
|
+
* doesn't match the loaded tokens (e.g. Storybook autodocs on white). */
|
|
11
|
+
color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
12
|
+
font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.symbol {
|
|
16
|
+
--_w: var(--ind-valve-width, 48px);
|
|
17
|
+
--_fill: var(--ind-state-stopped-bg, #5a6776);
|
|
18
|
+
--_stroke: var(--ind-state-stopped-border, #8390a0);
|
|
19
|
+
|
|
20
|
+
width: var(--_w);
|
|
21
|
+
height: calc(var(--_w) / 2);
|
|
22
|
+
display: block;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
:host([orientation="vertical"]) .symbol {
|
|
26
|
+
transform: rotate(90deg);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
:host([size="sm"]) .symbol { --_w: 32px; }
|
|
30
|
+
:host([size="md"]) .symbol { --_w: 48px; }
|
|
31
|
+
:host([size="lg"]) .symbol { --_w: 72px; }
|
|
32
|
+
|
|
33
|
+
.left,
|
|
34
|
+
.right {
|
|
35
|
+
fill: var(--_fill);
|
|
36
|
+
stroke: var(--_stroke);
|
|
37
|
+
stroke-width: 1.25;
|
|
38
|
+
stroke-linejoin: round;
|
|
39
|
+
transition:
|
|
40
|
+
fill var(--ind-motion-duration-base, 200ms),
|
|
41
|
+
stroke var(--ind-motion-duration-base, 200ms);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.stem {
|
|
45
|
+
stroke: var(--_stroke);
|
|
46
|
+
stroke-width: 2;
|
|
47
|
+
stroke-linecap: round;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
:host([state="open"]) .symbol {
|
|
51
|
+
--_fill: var(--ind-state-running-bg, #16a34a);
|
|
52
|
+
--_stroke: var(--ind-state-running-border, #4ade80);
|
|
53
|
+
}
|
|
54
|
+
:host([state="closed"]) .symbol {
|
|
55
|
+
--_fill: var(--ind-state-stopped-bg, #5a6776);
|
|
56
|
+
--_stroke: var(--ind-state-stopped-border, #8390a0);
|
|
57
|
+
}
|
|
58
|
+
:host([state="fault"]) .symbol {
|
|
59
|
+
--_fill: var(--ind-state-fault-bg, #dc2626);
|
|
60
|
+
--_stroke: var(--ind-state-fault-border, #f87171);
|
|
61
|
+
}
|
|
62
|
+
:host([state="transit"]) .symbol {
|
|
63
|
+
--_fill: var(--ind-state-warning-bg, #f59e0b);
|
|
64
|
+
--_stroke: var(--ind-state-warning-border, #fcd34d);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/* Transit: marching ants on the perimeter — universally read as
|
|
68
|
+
* "in motion / transitioning" by control room operators. */
|
|
69
|
+
:host([state="transit"]) .left,
|
|
70
|
+
:host([state="transit"]) .right {
|
|
71
|
+
stroke-dasharray: 4 2;
|
|
72
|
+
animation: ind-valve-march var(--ind-motion-blink-slow, 1000ms) linear infinite;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
@keyframes ind-valve-march {
|
|
76
|
+
to { stroke-dashoffset: -6; }
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.caption {
|
|
80
|
+
display: flex;
|
|
81
|
+
gap: var(--ind-spacing-3, 6px);
|
|
82
|
+
align-items: baseline;
|
|
83
|
+
font-size: var(--ind-font-size-sm, 11px);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.tag {
|
|
87
|
+
font-family: var(--ind-font-family-mono);
|
|
88
|
+
font-weight: var(--ind-font-weight-semibold, 600);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.label {
|
|
92
|
+
color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
@media (prefers-reduced-motion: reduce) {
|
|
96
|
+
:host([state="transit"]) .left,
|
|
97
|
+
:host([state="transit"]) .right {
|
|
98
|
+
animation: none;
|
|
99
|
+
stroke-dasharray: 4 2;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class IndValve {
|
|
3
|
+
/** Valve state. `transit` is mid-stroke (transitioning between open and closed). */
|
|
4
|
+
state = 'closed';
|
|
5
|
+
/** Render the symbol along the flow direction. */
|
|
6
|
+
orientation = 'horizontal';
|
|
7
|
+
/** Visual size. */
|
|
8
|
+
size = 'md';
|
|
9
|
+
/** Human label rendered as caption (e.g. "Discharge valve"). */
|
|
10
|
+
label;
|
|
11
|
+
/** Equipment tag rendered as caption (e.g. "V-12"). */
|
|
12
|
+
tag;
|
|
13
|
+
render() {
|
|
14
|
+
const name = this.label ?? this.tag ?? 'valve';
|
|
15
|
+
return (h(Host, { key: 'f0a9a4f7a1401c7ffc091bb10e52d13854e0fd42', role: "img", "aria-label": `${name} — ${this.state}` }, h("svg", { key: '1ba7a6466df31802d8ca141016670c6c301bc066', class: "symbol", part: "symbol", viewBox: "0 0 32 16", "aria-hidden": "true" }, h("polygon", { key: '89f77217a84e53606ce38e126c8ce87358fafb8b', class: "left", part: "left", points: "2,2 2,14 16,8" }), h("polygon", { key: '12ca5cd5ad1c117c48cc54275fe98509daba3267', class: "right", part: "right", points: "30,2 30,14 16,8" }), h("line", { key: '24510448beca41c7ab421b61c06de63840bddf99', class: "stem", part: "stem", x1: "16", y1: "2", x2: "16", y2: "14" })), (this.tag || this.label) && (h("div", { key: '18b6f7a60c0fdb8b5b7a688d5f6151811a9d587b', class: "caption", part: "caption" }, this.tag && h("span", { key: '7a8eb4c486380e3cb1a92e1ab3bdcbd2689cbd50', class: "tag", part: "tag" }, this.tag), this.label && h("span", { key: '6281ca7b4ae18e455a28b18890d28c58f38c14c1', class: "label", part: "label" }, this.label)))));
|
|
16
|
+
}
|
|
17
|
+
static get is() { return "ind-valve"; }
|
|
18
|
+
static get encapsulation() { return "shadow"; }
|
|
19
|
+
static get originalStyleUrls() {
|
|
20
|
+
return {
|
|
21
|
+
"$": ["valve.css"]
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
static get styleUrls() {
|
|
25
|
+
return {
|
|
26
|
+
"$": ["valve.css"]
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
static get properties() {
|
|
30
|
+
return {
|
|
31
|
+
"state": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"mutable": false,
|
|
34
|
+
"complexType": {
|
|
35
|
+
"original": "ValveState",
|
|
36
|
+
"resolved": "\"closed\" | \"fault\" | \"open\" | \"transit\"",
|
|
37
|
+
"references": {
|
|
38
|
+
"ValveState": {
|
|
39
|
+
"location": "local",
|
|
40
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/valve/valve.tsx",
|
|
41
|
+
"id": "src/components/atoms/valve/valve.tsx::ValveState"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"required": false,
|
|
46
|
+
"optional": false,
|
|
47
|
+
"docs": {
|
|
48
|
+
"tags": [],
|
|
49
|
+
"text": "Valve state. `transit` is mid-stroke (transitioning between open and closed)."
|
|
50
|
+
},
|
|
51
|
+
"getter": false,
|
|
52
|
+
"setter": false,
|
|
53
|
+
"reflect": true,
|
|
54
|
+
"attribute": "state",
|
|
55
|
+
"defaultValue": "'closed'"
|
|
56
|
+
},
|
|
57
|
+
"orientation": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"mutable": false,
|
|
60
|
+
"complexType": {
|
|
61
|
+
"original": "ValveOrientation",
|
|
62
|
+
"resolved": "\"horizontal\" | \"vertical\"",
|
|
63
|
+
"references": {
|
|
64
|
+
"ValveOrientation": {
|
|
65
|
+
"location": "local",
|
|
66
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/valve/valve.tsx",
|
|
67
|
+
"id": "src/components/atoms/valve/valve.tsx::ValveOrientation"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"required": false,
|
|
72
|
+
"optional": false,
|
|
73
|
+
"docs": {
|
|
74
|
+
"tags": [],
|
|
75
|
+
"text": "Render the symbol along the flow direction."
|
|
76
|
+
},
|
|
77
|
+
"getter": false,
|
|
78
|
+
"setter": false,
|
|
79
|
+
"reflect": true,
|
|
80
|
+
"attribute": "orientation",
|
|
81
|
+
"defaultValue": "'horizontal'"
|
|
82
|
+
},
|
|
83
|
+
"size": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"mutable": false,
|
|
86
|
+
"complexType": {
|
|
87
|
+
"original": "ValveSize",
|
|
88
|
+
"resolved": "\"lg\" | \"md\" | \"sm\"",
|
|
89
|
+
"references": {
|
|
90
|
+
"ValveSize": {
|
|
91
|
+
"location": "local",
|
|
92
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/valve/valve.tsx",
|
|
93
|
+
"id": "src/components/atoms/valve/valve.tsx::ValveSize"
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"required": false,
|
|
98
|
+
"optional": false,
|
|
99
|
+
"docs": {
|
|
100
|
+
"tags": [],
|
|
101
|
+
"text": "Visual size."
|
|
102
|
+
},
|
|
103
|
+
"getter": false,
|
|
104
|
+
"setter": false,
|
|
105
|
+
"reflect": true,
|
|
106
|
+
"attribute": "size",
|
|
107
|
+
"defaultValue": "'md'"
|
|
108
|
+
},
|
|
109
|
+
"label": {
|
|
110
|
+
"type": "string",
|
|
111
|
+
"mutable": false,
|
|
112
|
+
"complexType": {
|
|
113
|
+
"original": "string",
|
|
114
|
+
"resolved": "string | undefined",
|
|
115
|
+
"references": {}
|
|
116
|
+
},
|
|
117
|
+
"required": false,
|
|
118
|
+
"optional": true,
|
|
119
|
+
"docs": {
|
|
120
|
+
"tags": [],
|
|
121
|
+
"text": "Human label rendered as caption (e.g. \"Discharge valve\")."
|
|
122
|
+
},
|
|
123
|
+
"getter": false,
|
|
124
|
+
"setter": false,
|
|
125
|
+
"reflect": false,
|
|
126
|
+
"attribute": "label"
|
|
127
|
+
},
|
|
128
|
+
"tag": {
|
|
129
|
+
"type": "string",
|
|
130
|
+
"mutable": false,
|
|
131
|
+
"complexType": {
|
|
132
|
+
"original": "string",
|
|
133
|
+
"resolved": "string | undefined",
|
|
134
|
+
"references": {}
|
|
135
|
+
},
|
|
136
|
+
"required": false,
|
|
137
|
+
"optional": true,
|
|
138
|
+
"docs": {
|
|
139
|
+
"tags": [],
|
|
140
|
+
"text": "Equipment tag rendered as caption (e.g. \"V-12\")."
|
|
141
|
+
},
|
|
142
|
+
"getter": false,
|
|
143
|
+
"setter": false,
|
|
144
|
+
"reflect": false,
|
|
145
|
+
"attribute": "tag"
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=valve.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"valve.js","sourceRoot":"","sources":["../../../../src/components/atoms/valve/valve.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAWzD,MAAM,OAAO,QAAQ;IACnB,oFAAoF;IAC3D,KAAK,GAAe,QAAQ,CAAC;IAEtD,kDAAkD;IACzB,WAAW,GAAqB,YAAY,CAAC;IAEtE,mBAAmB;IACM,IAAI,GAAc,IAAI,CAAC;IAEhD,gEAAgE;IACxD,KAAK,CAAU;IAEvB,uDAAuD;IAC/C,GAAG,CAAU;IAErB,MAAM;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC;QAC/C,OAAO,CACL,EAAC,IAAI,qDACH,IAAI,EAAC,KAAK,gBACE,GAAG,IAAI,MAAM,IAAI,CAAC,KAAK,EAAE;YAGrC,4DAAK,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,iBAAa,MAAM;gBACtE,gEAAS,KAAK,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,EAAE,MAAM,EAAC,eAAe,GAAG;gBAC7D,gEAAS,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,MAAM,EAAC,iBAAiB,GAAG;gBAC/D,6DAAS,KAAK,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,EAAE,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,GAAG,CACjE;YACL,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAC3B,4DAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS;gBAChC,IAAI,CAAC,GAAG,IAAI,6DAAM,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,KAAK,IAAE,IAAI,CAAC,GAAG,CAAQ;gBAC1D,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC/D,CACP,CACI,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type ValveState = 'open' | 'closed' | 'transit' | 'fault';\nexport type ValveOrientation = 'horizontal' | 'vertical';\nexport type ValveSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-valve',\n styleUrl: 'valve.css',\n shadow: true,\n})\nexport class IndValve {\n /** Valve state. `transit` is mid-stroke (transitioning between open and closed). */\n @Prop({ reflect: true }) state: ValveState = 'closed';\n\n /** Render the symbol along the flow direction. */\n @Prop({ reflect: true }) orientation: ValveOrientation = 'horizontal';\n\n /** Visual size. */\n @Prop({ reflect: true }) size: ValveSize = 'md';\n\n /** Human label rendered as caption (e.g. \"Discharge valve\"). */\n @Prop() label?: string;\n\n /** Equipment tag rendered as caption (e.g. \"V-12\"). */\n @Prop() tag?: string;\n\n render() {\n const name = this.label ?? this.tag ?? 'valve';\n return (\n <Host\n role=\"img\"\n aria-label={`${name} — ${this.state}`}\n >\n {/* ISA-5.1 bowtie symbol. ViewBox is 32×16 so the natural ratio is 2:1. */}\n <svg class=\"symbol\" part=\"symbol\" viewBox=\"0 0 32 16\" aria-hidden=\"true\">\n <polygon class=\"left\" part=\"left\" points=\"2,2 2,14 16,8\" />\n <polygon class=\"right\" part=\"right\" points=\"30,2 30,14 16,8\" />\n <line class=\"stem\" part=\"stem\" x1=\"16\" y1=\"2\" x2=\"16\" y2=\"14\" />\n </svg>\n {(this.tag || this.label) && (\n <div class=\"caption\" part=\"caption\">\n {this.tag && <span class=\"tag\" part=\"tag\">{this.tag}</span>}\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: grid;
|
|
3
|
+
grid-template-columns: max-content minmax(80px, 1.2fr) minmax(160px, 2fr) max-content max-content auto;
|
|
4
|
+
gap: var(--ind-spacing-4, 8px);
|
|
5
|
+
align-items: center;
|
|
6
|
+
padding: var(--ind-spacing-3, 6px) var(--ind-spacing-5, 12px);
|
|
7
|
+
background: var(--ind-surface-panel);
|
|
8
|
+
border: 1px solid var(--ind-surface-border-default);
|
|
9
|
+
border-radius: var(--ind-radius-md, 3px);
|
|
10
|
+
font-family: var(--ind-font-family-sans);
|
|
11
|
+
color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
12
|
+
font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.tag {
|
|
16
|
+
font-family: var(--ind-font-family-mono);
|
|
17
|
+
font-weight: var(--ind-font-weight-semibold, 600);
|
|
18
|
+
font-size: var(--ind-font-size-sm, 11px);
|
|
19
|
+
color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
|
|
20
|
+
letter-spacing: 0.04em;
|
|
21
|
+
min-width: 32px;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.label {
|
|
25
|
+
font-size: var(--ind-font-size-base, 12px);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.progress {
|
|
29
|
+
display: block;
|
|
30
|
+
width: 100%;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.value {
|
|
34
|
+
font-family: var(--ind-font-family-mono);
|
|
35
|
+
font-weight: var(--ind-font-weight-semibold, 600);
|
|
36
|
+
font-size: var(--ind-font-size-md, 13px);
|
|
37
|
+
min-width: 52px;
|
|
38
|
+
text-align: right;
|
|
39
|
+
white-space: nowrap;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.severity {
|
|
43
|
+
font-size: var(--ind-font-size-md, 13px);
|
|
44
|
+
width: 16px;
|
|
45
|
+
text-align: center;
|
|
46
|
+
color: var(--ind-feedback-warning-bg, #f59e0b);
|
|
47
|
+
line-height: 1;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
:host([variant="error"]) .severity {
|
|
51
|
+
color: var(--ind-feedback-error-bg, #dc2626);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.actions {
|
|
55
|
+
display: flex;
|
|
56
|
+
gap: var(--ind-spacing-2, 4px);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
::slotted(*) {
|
|
60
|
+
flex-shrink: 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@media (max-width: 640px) {
|
|
64
|
+
:host {
|
|
65
|
+
grid-template-columns: max-content 1fr;
|
|
66
|
+
grid-template-rows: auto auto auto;
|
|
67
|
+
}
|
|
68
|
+
.progress { grid-column: 1 / -1; }
|
|
69
|
+
.value, .severity, .actions { grid-column: 1 / -1; }
|
|
70
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class IndFillRow {
|
|
3
|
+
/** Short ID rendered in mono (e.g. "F1", "TK-101"). */
|
|
4
|
+
tag;
|
|
5
|
+
/** Human description. */
|
|
6
|
+
label;
|
|
7
|
+
/** Current level. */
|
|
8
|
+
value = 0;
|
|
9
|
+
/** Max value. Default 100. */
|
|
10
|
+
max = 100;
|
|
11
|
+
/** Unit suffix on the numeric value (default `%`). */
|
|
12
|
+
unit = '%';
|
|
13
|
+
/** Drives the progress color and the severity glyph. */
|
|
14
|
+
variant = 'default';
|
|
15
|
+
/** Render the severity glyph between the value and the actions. */
|
|
16
|
+
severity = false;
|
|
17
|
+
render() {
|
|
18
|
+
return (h(Host, { key: '58a3405e85cdc048d8efe47d3f4c1c010bc94318' }, this.tag && h("span", { key: 'afe363e1253cbf40db6e9a61001a5654d2b3dfcd', class: "tag", part: "tag" }, this.tag), h("span", { key: '8854993e5011b07756acb62914e3cd8c16e17ea8', class: "label", part: "label" }, this.label), h("ind-progress", { key: '67b5c4f3d210cbf1df3dd3765b9293482e47d040', class: "progress", part: "progress", value: this.value, max: this.max, variant: this.variant, size: "sm" }), h("span", { key: '4bfde6d18d08e3bd8ede25a769b2776a8720a80b', class: "value", part: "value" }, Math.round(this.value), this.unit ? ' ' + this.unit : ''), this.severity && (h("span", { key: 'fd0cf71dd4cae3e5c4404da29e0232e42e6e3642', class: "severity", part: "severity", "aria-hidden": "true" }, "\u26A0")), h("span", { key: '663240206f948685c4235fbb9057450bc0874c0f', class: "actions", part: "actions" }, h("slot", { key: '7c924c36ed5e348bc7262a7c50c0673ce102b8ae' }))));
|
|
19
|
+
}
|
|
20
|
+
static get is() { return "ind-fill-row"; }
|
|
21
|
+
static get encapsulation() { return "shadow"; }
|
|
22
|
+
static get originalStyleUrls() {
|
|
23
|
+
return {
|
|
24
|
+
"$": ["fill-row.css"]
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static get styleUrls() {
|
|
28
|
+
return {
|
|
29
|
+
"$": ["fill-row.css"]
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
static get properties() {
|
|
33
|
+
return {
|
|
34
|
+
"tag": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"mutable": false,
|
|
37
|
+
"complexType": {
|
|
38
|
+
"original": "string",
|
|
39
|
+
"resolved": "string | undefined",
|
|
40
|
+
"references": {}
|
|
41
|
+
},
|
|
42
|
+
"required": false,
|
|
43
|
+
"optional": true,
|
|
44
|
+
"docs": {
|
|
45
|
+
"tags": [],
|
|
46
|
+
"text": "Short ID rendered in mono (e.g. \"F1\", \"TK-101\")."
|
|
47
|
+
},
|
|
48
|
+
"getter": false,
|
|
49
|
+
"setter": false,
|
|
50
|
+
"reflect": false,
|
|
51
|
+
"attribute": "tag"
|
|
52
|
+
},
|
|
53
|
+
"label": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"mutable": false,
|
|
56
|
+
"complexType": {
|
|
57
|
+
"original": "string",
|
|
58
|
+
"resolved": "string",
|
|
59
|
+
"references": {}
|
|
60
|
+
},
|
|
61
|
+
"required": true,
|
|
62
|
+
"optional": false,
|
|
63
|
+
"docs": {
|
|
64
|
+
"tags": [],
|
|
65
|
+
"text": "Human description."
|
|
66
|
+
},
|
|
67
|
+
"getter": false,
|
|
68
|
+
"setter": false,
|
|
69
|
+
"reflect": false,
|
|
70
|
+
"attribute": "label"
|
|
71
|
+
},
|
|
72
|
+
"value": {
|
|
73
|
+
"type": "number",
|
|
74
|
+
"mutable": false,
|
|
75
|
+
"complexType": {
|
|
76
|
+
"original": "number",
|
|
77
|
+
"resolved": "number",
|
|
78
|
+
"references": {}
|
|
79
|
+
},
|
|
80
|
+
"required": false,
|
|
81
|
+
"optional": false,
|
|
82
|
+
"docs": {
|
|
83
|
+
"tags": [],
|
|
84
|
+
"text": "Current level."
|
|
85
|
+
},
|
|
86
|
+
"getter": false,
|
|
87
|
+
"setter": false,
|
|
88
|
+
"reflect": false,
|
|
89
|
+
"attribute": "value",
|
|
90
|
+
"defaultValue": "0"
|
|
91
|
+
},
|
|
92
|
+
"max": {
|
|
93
|
+
"type": "number",
|
|
94
|
+
"mutable": false,
|
|
95
|
+
"complexType": {
|
|
96
|
+
"original": "number",
|
|
97
|
+
"resolved": "number",
|
|
98
|
+
"references": {}
|
|
99
|
+
},
|
|
100
|
+
"required": false,
|
|
101
|
+
"optional": false,
|
|
102
|
+
"docs": {
|
|
103
|
+
"tags": [],
|
|
104
|
+
"text": "Max value. Default 100."
|
|
105
|
+
},
|
|
106
|
+
"getter": false,
|
|
107
|
+
"setter": false,
|
|
108
|
+
"reflect": false,
|
|
109
|
+
"attribute": "max",
|
|
110
|
+
"defaultValue": "100"
|
|
111
|
+
},
|
|
112
|
+
"unit": {
|
|
113
|
+
"type": "string",
|
|
114
|
+
"mutable": false,
|
|
115
|
+
"complexType": {
|
|
116
|
+
"original": "string",
|
|
117
|
+
"resolved": "string",
|
|
118
|
+
"references": {}
|
|
119
|
+
},
|
|
120
|
+
"required": false,
|
|
121
|
+
"optional": false,
|
|
122
|
+
"docs": {
|
|
123
|
+
"tags": [],
|
|
124
|
+
"text": "Unit suffix on the numeric value (default `%`)."
|
|
125
|
+
},
|
|
126
|
+
"getter": false,
|
|
127
|
+
"setter": false,
|
|
128
|
+
"reflect": false,
|
|
129
|
+
"attribute": "unit",
|
|
130
|
+
"defaultValue": "'%'"
|
|
131
|
+
},
|
|
132
|
+
"variant": {
|
|
133
|
+
"type": "string",
|
|
134
|
+
"mutable": false,
|
|
135
|
+
"complexType": {
|
|
136
|
+
"original": "FillRowVariant",
|
|
137
|
+
"resolved": "\"default\" | \"error\" | \"success\" | \"warning\"",
|
|
138
|
+
"references": {
|
|
139
|
+
"FillRowVariant": {
|
|
140
|
+
"location": "local",
|
|
141
|
+
"path": "C:/www/ind-ds/packages/core/src/components/molecules/fill-row/fill-row.tsx",
|
|
142
|
+
"id": "src/components/molecules/fill-row/fill-row.tsx::FillRowVariant"
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"required": false,
|
|
147
|
+
"optional": false,
|
|
148
|
+
"docs": {
|
|
149
|
+
"tags": [],
|
|
150
|
+
"text": "Drives the progress color and the severity glyph."
|
|
151
|
+
},
|
|
152
|
+
"getter": false,
|
|
153
|
+
"setter": false,
|
|
154
|
+
"reflect": true,
|
|
155
|
+
"attribute": "variant",
|
|
156
|
+
"defaultValue": "'default'"
|
|
157
|
+
},
|
|
158
|
+
"severity": {
|
|
159
|
+
"type": "boolean",
|
|
160
|
+
"mutable": false,
|
|
161
|
+
"complexType": {
|
|
162
|
+
"original": "boolean",
|
|
163
|
+
"resolved": "boolean",
|
|
164
|
+
"references": {}
|
|
165
|
+
},
|
|
166
|
+
"required": false,
|
|
167
|
+
"optional": false,
|
|
168
|
+
"docs": {
|
|
169
|
+
"tags": [],
|
|
170
|
+
"text": "Render the severity glyph between the value and the actions."
|
|
171
|
+
},
|
|
172
|
+
"getter": false,
|
|
173
|
+
"setter": false,
|
|
174
|
+
"reflect": false,
|
|
175
|
+
"attribute": "severity",
|
|
176
|
+
"defaultValue": "false"
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
//# sourceMappingURL=fill-row.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fill-row.js","sourceRoot":"","sources":["../../../../src/components/molecules/fill-row/fill-row.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AASzD,MAAM,OAAO,UAAU;IACrB,uDAAuD;IAC/C,GAAG,CAAU;IACrB,yBAAyB;IACjB,KAAK,CAAU;IACvB,qBAAqB;IACb,KAAK,GAAW,CAAC,CAAC;IAC1B,8BAA8B;IACtB,GAAG,GAAW,GAAG,CAAC;IAC1B,sDAAsD;IAC9C,IAAI,GAAW,GAAG,CAAC;IAC3B,wDAAwD;IAC/B,OAAO,GAAmB,SAAS,CAAC;IAC7D,mEAAmE;IAC3D,QAAQ,GAAY,KAAK,CAAC;IAElC,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACF,IAAI,CAAC,GAAG,IAAI,6DAAM,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,KAAK,IAAE,IAAI,CAAC,GAAG,CAAQ;YAC3D,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ;YACpD,qEACE,KAAK,EAAC,UAAU,EAChB,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,OAAO,EAAE,IAAI,CAAC,OAAsD,EACpE,IAAI,EAAC,IAAI,GACT;YACF,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO;gBAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACpD;YACN,IAAI,CAAC,QAAQ,IAAI,CAChB,6DAAM,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,UAAU,iBAAa,MAAM,aAAS,CACnE;YACD,6DAAM,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS;gBAClC,8DAAQ,CACH,CACF,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type FillRowVariant = 'default' | 'success' | 'warning' | 'error';\n\n@Component({\n tag: 'ind-fill-row',\n styleUrl: 'fill-row.css',\n shadow: true,\n})\nexport class IndFillRow {\n /** Short ID rendered in mono (e.g. \"F1\", \"TK-101\"). */\n @Prop() tag?: string;\n /** Human description. */\n @Prop() label!: string;\n /** Current level. */\n @Prop() value: number = 0;\n /** Max value. Default 100. */\n @Prop() max: number = 100;\n /** Unit suffix on the numeric value (default `%`). */\n @Prop() unit: string = '%';\n /** Drives the progress color and the severity glyph. */\n @Prop({ reflect: true }) variant: FillRowVariant = 'default';\n /** Render the severity glyph between the value and the actions. */\n @Prop() severity: boolean = false;\n\n render() {\n return (\n <Host>\n {this.tag && <span class=\"tag\" part=\"tag\">{this.tag}</span>}\n <span class=\"label\" part=\"label\">{this.label}</span>\n <ind-progress\n class=\"progress\"\n part=\"progress\"\n value={this.value}\n max={this.max}\n variant={this.variant as 'default' | 'success' | 'warning' | 'error'}\n size=\"sm\"\n />\n <span class=\"value\" part=\"value\">\n {Math.round(this.value)}{this.unit ? ' ' + this.unit : ''}\n </span>\n {this.severity && (\n <span class=\"severity\" part=\"severity\" aria-hidden=\"true\">⚠</span>\n )}\n <span class=\"actions\" part=\"actions\">\n <slot />\n </span>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
gap: var(--ind-spacing-3, 6px);
|
|
5
|
+
padding: var(--ind-spacing-5, 12px);
|
|
6
|
+
background: var(--ind-surface-panel);
|
|
7
|
+
border: 1px solid var(--ind-surface-border-default);
|
|
8
|
+
border-radius: var(--ind-radius-md, 3px);
|
|
9
|
+
font-family: var(--ind-font-family-sans);
|
|
10
|
+
color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
11
|
+
min-width: 160px;
|
|
12
|
+
font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.title {
|
|
16
|
+
font-size: var(--ind-font-size-xs, 10px);
|
|
17
|
+
font-weight: var(--ind-font-weight-bold, 700);
|
|
18
|
+
text-transform: uppercase;
|
|
19
|
+
letter-spacing: 0.08em;
|
|
20
|
+
color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.status {
|
|
24
|
+
display: flex;
|
|
25
|
+
align-items: center;
|
|
26
|
+
gap: var(--ind-spacing-3, 6px);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.state-label {
|
|
30
|
+
font-size: var(--ind-font-size-xl, 16px);
|
|
31
|
+
font-weight: var(--ind-font-weight-semibold, 600);
|
|
32
|
+
line-height: 1;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.detail {
|
|
36
|
+
font-size: var(--ind-font-size-sm, 11px);
|
|
37
|
+
color: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* Bold colored label per state — matches the dot color so the card
|
|
41
|
+
* reads at a glance across a 4-up grid. */
|
|
42
|
+
:host([state="running"]) .state-label { color: var(--ind-state-running-bg, #16a34a); }
|
|
43
|
+
:host([state="fault"]) .state-label { color: var(--ind-state-fault-bg, #dc2626); }
|
|
44
|
+
:host([state="warning"]) .state-label { color: var(--ind-state-warning-bg, #f59e0b); }
|
|
45
|
+
:host([state="maintenance"]) .state-label { color: var(--ind-state-maintenance-bg, #2563eb); }
|
|
46
|
+
:host([state="stopped"]) .state-label { color: var(--ind-surface-text-secondary); }
|
|
47
|
+
:host([state="unknown"]) .state-label { color: var(--ind-surface-text-muted); }
|
|
48
|
+
|
|
49
|
+
/* Fault card glows subtly as a visual cue, even without blinking. */
|
|
50
|
+
:host([state="fault"]) {
|
|
51
|
+
border-color: var(--ind-state-fault-bg, #dc2626);
|
|
52
|
+
box-shadow: 0 0 0 1px color-mix(in srgb, var(--ind-state-fault-bg, #dc2626) 30%, transparent);
|
|
53
|
+
}
|