@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,91 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: var(--ind-spacing-3, 6px);
|
|
5
|
+
font-family: var(--ind-font-family-sans, system-ui, sans-serif);
|
|
6
|
+
font-size: var(--ind-font-size-base, 12px);
|
|
7
|
+
font-weight: var(--ind-font-weight-medium, 500);
|
|
8
|
+
line-height: var(--ind-font-line-height-tight, 1.1);
|
|
9
|
+
/* `light-dark()` makes the label readable even if the LED lands on a surface
|
|
10
|
+
* whose theme doesn't match the loaded tokens (Storybook autodocs, embedded
|
|
11
|
+
* widget on a third-party site, etc.). */
|
|
12
|
+
color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
13
|
+
font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.led {
|
|
17
|
+
--_size: var(--ind-led-size, 12px);
|
|
18
|
+
--_bg: var(--ind-state-stopped-bg, #5a6776);
|
|
19
|
+
--_border: var(--ind-state-stopped-border, #8390a0);
|
|
20
|
+
--_glow: var(--ind-state-stopped-glow, rgba(131, 144, 160, 0.35));
|
|
21
|
+
|
|
22
|
+
display: inline-block;
|
|
23
|
+
width: var(--_size);
|
|
24
|
+
height: var(--_size);
|
|
25
|
+
border-radius: 50%;
|
|
26
|
+
background: radial-gradient(
|
|
27
|
+
circle at 30% 30%,
|
|
28
|
+
color-mix(in srgb, var(--_bg) 65%, white),
|
|
29
|
+
var(--_bg) 70%
|
|
30
|
+
);
|
|
31
|
+
border: 1px solid var(--_border);
|
|
32
|
+
box-shadow:
|
|
33
|
+
0 0 0 1px color-mix(in srgb, var(--_bg) 25%, transparent),
|
|
34
|
+
0 0 8px var(--_glow),
|
|
35
|
+
inset 0 1px 2px rgba(0, 0, 0, 0.45);
|
|
36
|
+
transition: background-color var(--ind-motion-duration-base, 200ms) var(--ind-motion-easing-standard, ease);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
:host([size="sm"]) .led { --_size: 8px; }
|
|
40
|
+
:host([size="md"]) .led { --_size: 12px; }
|
|
41
|
+
:host([size="lg"]) .led { --_size: 18px; }
|
|
42
|
+
|
|
43
|
+
/* Each state ships hard-coded fallbacks so the component stays visible even
|
|
44
|
+
* if tokens fail to load (build-order glitch, sandbox without CSS imports).
|
|
45
|
+
*/
|
|
46
|
+
:host([state="running"]) .led {
|
|
47
|
+
--_bg: var(--ind-state-running-bg, #16a34a);
|
|
48
|
+
--_border: var(--ind-state-running-border, #4ade80);
|
|
49
|
+
--_glow: var(--ind-state-running-glow, rgba(34, 197, 94, 0.6));
|
|
50
|
+
}
|
|
51
|
+
:host([state="stopped"]) .led {
|
|
52
|
+
--_bg: var(--ind-state-stopped-bg, #5a6776);
|
|
53
|
+
--_border: var(--ind-state-stopped-border, #8390a0);
|
|
54
|
+
--_glow: var(--ind-state-stopped-glow, rgba(131, 144, 160, 0.35));
|
|
55
|
+
}
|
|
56
|
+
:host([state="fault"]) .led {
|
|
57
|
+
--_bg: var(--ind-state-fault-bg, #dc2626);
|
|
58
|
+
--_border: var(--ind-state-fault-border, #f87171);
|
|
59
|
+
--_glow: var(--ind-state-fault-glow, rgba(220, 38, 38, 0.7));
|
|
60
|
+
}
|
|
61
|
+
:host([state="warning"]) .led {
|
|
62
|
+
--_bg: var(--ind-state-warning-bg, #f59e0b);
|
|
63
|
+
--_border: var(--ind-state-warning-border, #fcd34d);
|
|
64
|
+
--_glow: var(--ind-state-warning-glow, rgba(245, 158, 11, 0.6));
|
|
65
|
+
}
|
|
66
|
+
:host([state="maintenance"]) .led {
|
|
67
|
+
--_bg: var(--ind-state-maintenance-bg, #2563eb);
|
|
68
|
+
--_border: var(--ind-state-maintenance-border, #60a5fa);
|
|
69
|
+
--_glow: var(--ind-state-maintenance-glow, rgba(37, 99, 235, 0.6));
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
:host([blinking]) .led {
|
|
73
|
+
animation: ind-led-blink var(--ind-motion-blink-fast, 400ms) steps(2, end) infinite;
|
|
74
|
+
}
|
|
75
|
+
:host([blinking][state="fault"]) .led {
|
|
76
|
+
animation-duration: var(--ind-motion-blink-urgent, 200ms);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@keyframes ind-led-blink {
|
|
80
|
+
50% { opacity: 0.2; box-shadow: none; }
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
@media (prefers-reduced-motion: reduce) {
|
|
84
|
+
:host([blinking]) .led {
|
|
85
|
+
animation: none;
|
|
86
|
+
opacity: 1;
|
|
87
|
+
/* Substitute: a solid outline ring so the alarm condition is still visible without motion. */
|
|
88
|
+
outline: 2px solid var(--_border);
|
|
89
|
+
outline-offset: 2px;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class IndLed {
|
|
3
|
+
/** Process state driving the LED color and ARIA live politeness. */
|
|
4
|
+
state = 'stopped';
|
|
5
|
+
/** Visual size. */
|
|
6
|
+
size = 'md';
|
|
7
|
+
/** Blink. For SCADA, fast blink = unacknowledged condition. Stops respecting prefers-reduced-motion. */
|
|
8
|
+
blinking = false;
|
|
9
|
+
/** Optional visible label rendered next to the LED. Always becomes the accessible name. */
|
|
10
|
+
label;
|
|
11
|
+
render() {
|
|
12
|
+
const accessibleName = this.label ?? `${this.state} indicator`;
|
|
13
|
+
return (h(Host, { key: 'babe0b6e1a80181397c53ec0234ce3ff8d5741b4', role: "status", "aria-label": accessibleName, "aria-live": this.state === 'fault' ? 'assertive' : 'polite' }, h("span", { key: 'd7ca8697299f70715fdbe101d541c3313508e434', class: "led", part: "led", "aria-hidden": "true" }), this.label && h("span", { key: 'f39a9b21eabd4380db866e9bfb2591bcaeac3ce4', class: "label", part: "label" }, this.label)));
|
|
14
|
+
}
|
|
15
|
+
static get is() { return "ind-led"; }
|
|
16
|
+
static get encapsulation() { return "shadow"; }
|
|
17
|
+
static get originalStyleUrls() {
|
|
18
|
+
return {
|
|
19
|
+
"$": ["led.css"]
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
static get styleUrls() {
|
|
23
|
+
return {
|
|
24
|
+
"$": ["led.css"]
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static get properties() {
|
|
28
|
+
return {
|
|
29
|
+
"state": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"mutable": false,
|
|
32
|
+
"complexType": {
|
|
33
|
+
"original": "LedState",
|
|
34
|
+
"resolved": "\"fault\" | \"maintenance\" | \"running\" | \"stopped\" | \"warning\"",
|
|
35
|
+
"references": {
|
|
36
|
+
"LedState": {
|
|
37
|
+
"location": "local",
|
|
38
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/led/led.tsx",
|
|
39
|
+
"id": "src/components/atoms/led/led.tsx::LedState"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"required": false,
|
|
44
|
+
"optional": false,
|
|
45
|
+
"docs": {
|
|
46
|
+
"tags": [],
|
|
47
|
+
"text": "Process state driving the LED color and ARIA live politeness."
|
|
48
|
+
},
|
|
49
|
+
"getter": false,
|
|
50
|
+
"setter": false,
|
|
51
|
+
"reflect": true,
|
|
52
|
+
"attribute": "state",
|
|
53
|
+
"defaultValue": "'stopped'"
|
|
54
|
+
},
|
|
55
|
+
"size": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"mutable": false,
|
|
58
|
+
"complexType": {
|
|
59
|
+
"original": "LedSize",
|
|
60
|
+
"resolved": "\"lg\" | \"md\" | \"sm\"",
|
|
61
|
+
"references": {
|
|
62
|
+
"LedSize": {
|
|
63
|
+
"location": "local",
|
|
64
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/led/led.tsx",
|
|
65
|
+
"id": "src/components/atoms/led/led.tsx::LedSize"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"required": false,
|
|
70
|
+
"optional": false,
|
|
71
|
+
"docs": {
|
|
72
|
+
"tags": [],
|
|
73
|
+
"text": "Visual size."
|
|
74
|
+
},
|
|
75
|
+
"getter": false,
|
|
76
|
+
"setter": false,
|
|
77
|
+
"reflect": true,
|
|
78
|
+
"attribute": "size",
|
|
79
|
+
"defaultValue": "'md'"
|
|
80
|
+
},
|
|
81
|
+
"blinking": {
|
|
82
|
+
"type": "boolean",
|
|
83
|
+
"mutable": false,
|
|
84
|
+
"complexType": {
|
|
85
|
+
"original": "boolean",
|
|
86
|
+
"resolved": "boolean",
|
|
87
|
+
"references": {}
|
|
88
|
+
},
|
|
89
|
+
"required": false,
|
|
90
|
+
"optional": false,
|
|
91
|
+
"docs": {
|
|
92
|
+
"tags": [],
|
|
93
|
+
"text": "Blink. For SCADA, fast blink = unacknowledged condition. Stops respecting prefers-reduced-motion."
|
|
94
|
+
},
|
|
95
|
+
"getter": false,
|
|
96
|
+
"setter": false,
|
|
97
|
+
"reflect": true,
|
|
98
|
+
"attribute": "blinking",
|
|
99
|
+
"defaultValue": "false"
|
|
100
|
+
},
|
|
101
|
+
"label": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"mutable": false,
|
|
104
|
+
"complexType": {
|
|
105
|
+
"original": "string",
|
|
106
|
+
"resolved": "string | undefined",
|
|
107
|
+
"references": {}
|
|
108
|
+
},
|
|
109
|
+
"required": false,
|
|
110
|
+
"optional": true,
|
|
111
|
+
"docs": {
|
|
112
|
+
"tags": [],
|
|
113
|
+
"text": "Optional visible label rendered next to the LED. Always becomes the accessible name."
|
|
114
|
+
},
|
|
115
|
+
"getter": false,
|
|
116
|
+
"setter": false,
|
|
117
|
+
"reflect": false,
|
|
118
|
+
"attribute": "label"
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=led.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"led.js","sourceRoot":"","sources":["../../../../src/components/atoms/led/led.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAUzD,MAAM,OAAO,MAAM;IACjB,oEAAoE;IAC3C,KAAK,GAAa,SAAS,CAAC;IAErD,mBAAmB;IACM,IAAI,GAAY,IAAI,CAAC;IAE9C,wGAAwG;IAC/E,QAAQ,GAAY,KAAK,CAAC;IAEnD,2FAA2F;IACnF,KAAK,CAAU;IAEvB,MAAM;QACJ,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC,KAAK,YAAY,CAAC;QAC/D,OAAO,CACL,EAAC,IAAI,qDACH,IAAI,EAAC,QAAQ,gBACD,cAAc,eACf,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;YAE1D,6DAAM,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,KAAK,iBAAa,MAAM,GAAG;YACjD,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC9D,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type LedState = 'running' | 'stopped' | 'fault' | 'warning' | 'maintenance';\nexport type LedSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-led',\n styleUrl: 'led.css',\n shadow: true,\n})\nexport class IndLed {\n /** Process state driving the LED color and ARIA live politeness. */\n @Prop({ reflect: true }) state: LedState = 'stopped';\n\n /** Visual size. */\n @Prop({ reflect: true }) size: LedSize = 'md';\n\n /** Blink. For SCADA, fast blink = unacknowledged condition. Stops respecting prefers-reduced-motion. */\n @Prop({ reflect: true }) blinking: boolean = false;\n\n /** Optional visible label rendered next to the LED. Always becomes the accessible name. */\n @Prop() label?: string;\n\n render() {\n const accessibleName = this.label ?? `${this.state} indicator`;\n return (\n <Host\n role=\"status\"\n aria-label={accessibleName}\n aria-live={this.state === 'fault' ? 'assertive' : 'polite'}\n >\n <span class=\"led\" part=\"led\" aria-hidden=\"true\" />\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n </Host>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: block;
|
|
3
|
+
font-family: var(--ind-font-family-sans);
|
|
4
|
+
font-size: var(--ind-font-size-sm, 11px);
|
|
5
|
+
color: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
6
|
+
--_h: 8px;
|
|
7
|
+
--_fill: var(--ind-button-primary-bg, #2563eb);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
:host([size="sm"]) { --_h: 4px; }
|
|
11
|
+
:host([size="md"]) { --_h: 8px; }
|
|
12
|
+
:host([size="lg"]) { --_h: 12px; }
|
|
13
|
+
|
|
14
|
+
:host([variant="success"]) { --_fill: var(--ind-feedback-success-bg, #16a34a); }
|
|
15
|
+
:host([variant="warning"]) { --_fill: var(--ind-feedback-warning-bg, #f59e0b); }
|
|
16
|
+
:host([variant="error"]) { --_fill: var(--ind-feedback-error-bg, #dc2626); }
|
|
17
|
+
|
|
18
|
+
.header {
|
|
19
|
+
display: flex;
|
|
20
|
+
justify-content: space-between;
|
|
21
|
+
align-items: baseline;
|
|
22
|
+
gap: var(--ind-spacing-3, 6px);
|
|
23
|
+
margin-bottom: var(--ind-spacing-2, 4px);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.label {
|
|
27
|
+
color: var(--ind-surface-text-secondary, light-dark(#2a3340, #aab5c2));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.value {
|
|
31
|
+
font-family: var(--ind-font-family-mono);
|
|
32
|
+
font-weight: var(--ind-font-weight-semibold, 600);
|
|
33
|
+
font-feature-settings: var(--ind-font-feature-tabular, "tnum" 1);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.track {
|
|
37
|
+
position: relative;
|
|
38
|
+
width: 100%;
|
|
39
|
+
height: var(--_h);
|
|
40
|
+
background: var(--ind-surface-sunken, light-dark(#ffffff, #000000));
|
|
41
|
+
border: 1px solid var(--ind-surface-border-default, #2a3340);
|
|
42
|
+
border-radius: var(--ind-radius-sm, 2px);
|
|
43
|
+
overflow: hidden;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.fill {
|
|
47
|
+
display: block;
|
|
48
|
+
height: 100%;
|
|
49
|
+
background: var(--_fill);
|
|
50
|
+
transition: width var(--ind-motion-duration-base, 200ms) var(--ind-motion-easing-standard, ease);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
:host([indeterminate]) .fill {
|
|
54
|
+
width: 30%;
|
|
55
|
+
animation: ind-progress-march 1.4s ease-in-out infinite;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
@keyframes ind-progress-march {
|
|
59
|
+
0% { margin-left: -30%; }
|
|
60
|
+
100% { margin-left: 100%; }
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@media (prefers-reduced-motion: reduce) {
|
|
64
|
+
:host([indeterminate]) .fill {
|
|
65
|
+
animation: none;
|
|
66
|
+
width: 100%;
|
|
67
|
+
opacity: 0.5;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class IndProgress {
|
|
3
|
+
/** Current value (0–`max`). */
|
|
4
|
+
value = 0;
|
|
5
|
+
/** Max value. */
|
|
6
|
+
max = 100;
|
|
7
|
+
/** Visual variant. Use `warning` / `error` for low / critical fill levels. */
|
|
8
|
+
variant = 'default';
|
|
9
|
+
/** Size. */
|
|
10
|
+
size = 'md';
|
|
11
|
+
/** Optional label rendered above the bar. */
|
|
12
|
+
label;
|
|
13
|
+
/** Show numeric value next to the label. */
|
|
14
|
+
showValue = false;
|
|
15
|
+
/** Unit suffix for the displayed value. */
|
|
16
|
+
unit;
|
|
17
|
+
/** Indeterminate (animated bar, no value). */
|
|
18
|
+
indeterminate = false;
|
|
19
|
+
percent() {
|
|
20
|
+
if (this.max <= 0)
|
|
21
|
+
return 0;
|
|
22
|
+
return Math.min(100, Math.max(0, (this.value / this.max) * 100));
|
|
23
|
+
}
|
|
24
|
+
valueLabel() {
|
|
25
|
+
if (this.unit === '%' || (this.max === 100 && !this.unit)) {
|
|
26
|
+
return `${Math.round(this.percent())} %`;
|
|
27
|
+
}
|
|
28
|
+
return `${this.value}${this.unit ? ' ' + this.unit : ''} / ${this.max}`;
|
|
29
|
+
}
|
|
30
|
+
render() {
|
|
31
|
+
const pct = this.percent();
|
|
32
|
+
return (h(Host, { key: '0e74d2952b1fe8b2356927e0e38adbcb72d863c6', role: "progressbar", "aria-valuenow": this.indeterminate ? undefined : this.value, "aria-valuemin": 0, "aria-valuemax": this.max, "aria-label": this.label }, (this.label || this.showValue) && (h("div", { key: '1fbeb6fed63ac3fb1cb830408d6ee851ec9fe989', class: "header", part: "header" }, this.label && h("span", { key: '1a2a0e6bb58c4e69b5b19587906e7c53720587cb', class: "label", part: "label" }, this.label), this.showValue && !this.indeterminate && (h("span", { key: '7fa1c9ce1e0ec68abc1b478cfb373af8266467a3', class: "value", part: "value" }, this.valueLabel())))), h("div", { key: 'e821a5f203432e33199d111ba807eb6106068b14', class: "track", part: "track" }, h("div", { key: '88e1e2728d12adea9220b3cf8f68072e85bdc1dd', class: "fill", part: "fill", style: this.indeterminate ? undefined : { width: `${pct}%` } }))));
|
|
33
|
+
}
|
|
34
|
+
static get is() { return "ind-progress"; }
|
|
35
|
+
static get encapsulation() { return "shadow"; }
|
|
36
|
+
static get originalStyleUrls() {
|
|
37
|
+
return {
|
|
38
|
+
"$": ["progress.css"]
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
static get styleUrls() {
|
|
42
|
+
return {
|
|
43
|
+
"$": ["progress.css"]
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
static get properties() {
|
|
47
|
+
return {
|
|
48
|
+
"value": {
|
|
49
|
+
"type": "number",
|
|
50
|
+
"mutable": false,
|
|
51
|
+
"complexType": {
|
|
52
|
+
"original": "number",
|
|
53
|
+
"resolved": "number",
|
|
54
|
+
"references": {}
|
|
55
|
+
},
|
|
56
|
+
"required": false,
|
|
57
|
+
"optional": false,
|
|
58
|
+
"docs": {
|
|
59
|
+
"tags": [],
|
|
60
|
+
"text": "Current value (0\u2013`max`)."
|
|
61
|
+
},
|
|
62
|
+
"getter": false,
|
|
63
|
+
"setter": false,
|
|
64
|
+
"reflect": false,
|
|
65
|
+
"attribute": "value",
|
|
66
|
+
"defaultValue": "0"
|
|
67
|
+
},
|
|
68
|
+
"max": {
|
|
69
|
+
"type": "number",
|
|
70
|
+
"mutable": false,
|
|
71
|
+
"complexType": {
|
|
72
|
+
"original": "number",
|
|
73
|
+
"resolved": "number",
|
|
74
|
+
"references": {}
|
|
75
|
+
},
|
|
76
|
+
"required": false,
|
|
77
|
+
"optional": false,
|
|
78
|
+
"docs": {
|
|
79
|
+
"tags": [],
|
|
80
|
+
"text": "Max value."
|
|
81
|
+
},
|
|
82
|
+
"getter": false,
|
|
83
|
+
"setter": false,
|
|
84
|
+
"reflect": false,
|
|
85
|
+
"attribute": "max",
|
|
86
|
+
"defaultValue": "100"
|
|
87
|
+
},
|
|
88
|
+
"variant": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"mutable": false,
|
|
91
|
+
"complexType": {
|
|
92
|
+
"original": "ProgressVariant",
|
|
93
|
+
"resolved": "\"default\" | \"error\" | \"success\" | \"warning\"",
|
|
94
|
+
"references": {
|
|
95
|
+
"ProgressVariant": {
|
|
96
|
+
"location": "local",
|
|
97
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/progress/progress.tsx",
|
|
98
|
+
"id": "src/components/atoms/progress/progress.tsx::ProgressVariant"
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
"required": false,
|
|
103
|
+
"optional": false,
|
|
104
|
+
"docs": {
|
|
105
|
+
"tags": [],
|
|
106
|
+
"text": "Visual variant. Use `warning` / `error` for low / critical fill levels."
|
|
107
|
+
},
|
|
108
|
+
"getter": false,
|
|
109
|
+
"setter": false,
|
|
110
|
+
"reflect": true,
|
|
111
|
+
"attribute": "variant",
|
|
112
|
+
"defaultValue": "'default'"
|
|
113
|
+
},
|
|
114
|
+
"size": {
|
|
115
|
+
"type": "string",
|
|
116
|
+
"mutable": false,
|
|
117
|
+
"complexType": {
|
|
118
|
+
"original": "ProgressSize",
|
|
119
|
+
"resolved": "\"lg\" | \"md\" | \"sm\"",
|
|
120
|
+
"references": {
|
|
121
|
+
"ProgressSize": {
|
|
122
|
+
"location": "local",
|
|
123
|
+
"path": "C:/www/ind-ds/packages/core/src/components/atoms/progress/progress.tsx",
|
|
124
|
+
"id": "src/components/atoms/progress/progress.tsx::ProgressSize"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"required": false,
|
|
129
|
+
"optional": false,
|
|
130
|
+
"docs": {
|
|
131
|
+
"tags": [],
|
|
132
|
+
"text": "Size."
|
|
133
|
+
},
|
|
134
|
+
"getter": false,
|
|
135
|
+
"setter": false,
|
|
136
|
+
"reflect": true,
|
|
137
|
+
"attribute": "size",
|
|
138
|
+
"defaultValue": "'md'"
|
|
139
|
+
},
|
|
140
|
+
"label": {
|
|
141
|
+
"type": "string",
|
|
142
|
+
"mutable": false,
|
|
143
|
+
"complexType": {
|
|
144
|
+
"original": "string",
|
|
145
|
+
"resolved": "string | undefined",
|
|
146
|
+
"references": {}
|
|
147
|
+
},
|
|
148
|
+
"required": false,
|
|
149
|
+
"optional": true,
|
|
150
|
+
"docs": {
|
|
151
|
+
"tags": [],
|
|
152
|
+
"text": "Optional label rendered above the bar."
|
|
153
|
+
},
|
|
154
|
+
"getter": false,
|
|
155
|
+
"setter": false,
|
|
156
|
+
"reflect": false,
|
|
157
|
+
"attribute": "label"
|
|
158
|
+
},
|
|
159
|
+
"showValue": {
|
|
160
|
+
"type": "boolean",
|
|
161
|
+
"mutable": false,
|
|
162
|
+
"complexType": {
|
|
163
|
+
"original": "boolean",
|
|
164
|
+
"resolved": "boolean",
|
|
165
|
+
"references": {}
|
|
166
|
+
},
|
|
167
|
+
"required": false,
|
|
168
|
+
"optional": false,
|
|
169
|
+
"docs": {
|
|
170
|
+
"tags": [],
|
|
171
|
+
"text": "Show numeric value next to the label."
|
|
172
|
+
},
|
|
173
|
+
"getter": false,
|
|
174
|
+
"setter": false,
|
|
175
|
+
"reflect": false,
|
|
176
|
+
"attribute": "show-value",
|
|
177
|
+
"defaultValue": "false"
|
|
178
|
+
},
|
|
179
|
+
"unit": {
|
|
180
|
+
"type": "string",
|
|
181
|
+
"mutable": false,
|
|
182
|
+
"complexType": {
|
|
183
|
+
"original": "string",
|
|
184
|
+
"resolved": "string | undefined",
|
|
185
|
+
"references": {}
|
|
186
|
+
},
|
|
187
|
+
"required": false,
|
|
188
|
+
"optional": true,
|
|
189
|
+
"docs": {
|
|
190
|
+
"tags": [],
|
|
191
|
+
"text": "Unit suffix for the displayed value."
|
|
192
|
+
},
|
|
193
|
+
"getter": false,
|
|
194
|
+
"setter": false,
|
|
195
|
+
"reflect": false,
|
|
196
|
+
"attribute": "unit"
|
|
197
|
+
},
|
|
198
|
+
"indeterminate": {
|
|
199
|
+
"type": "boolean",
|
|
200
|
+
"mutable": false,
|
|
201
|
+
"complexType": {
|
|
202
|
+
"original": "boolean",
|
|
203
|
+
"resolved": "boolean",
|
|
204
|
+
"references": {}
|
|
205
|
+
},
|
|
206
|
+
"required": false,
|
|
207
|
+
"optional": false,
|
|
208
|
+
"docs": {
|
|
209
|
+
"tags": [],
|
|
210
|
+
"text": "Indeterminate (animated bar, no value)."
|
|
211
|
+
},
|
|
212
|
+
"getter": false,
|
|
213
|
+
"setter": false,
|
|
214
|
+
"reflect": true,
|
|
215
|
+
"attribute": "indeterminate",
|
|
216
|
+
"defaultValue": "false"
|
|
217
|
+
}
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
//# sourceMappingURL=progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../../../../src/components/atoms/progress/progress.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAUzD,MAAM,OAAO,WAAW;IACtB,+BAA+B;IACvB,KAAK,GAAW,CAAC,CAAC;IAC1B,iBAAiB;IACT,GAAG,GAAW,GAAG,CAAC;IAC1B,8EAA8E;IACrD,OAAO,GAAoB,SAAS,CAAC;IAC9D,YAAY;IACa,IAAI,GAAiB,IAAI,CAAC;IACnD,6CAA6C;IACrC,KAAK,CAAU;IACvB,4CAA4C;IACpC,SAAS,GAAY,KAAK,CAAC;IACnC,2CAA2C;IACnC,IAAI,CAAU;IACtB,8CAA8C;IACrB,aAAa,GAAY,KAAK,CAAC;IAEhD,OAAO;QACb,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC;IAEO,UAAU;QAChB,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAC3C,CAAC;QACD,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;IAC1E,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,CACL,EAAC,IAAI,qDACH,IAAI,EAAC,aAAa,mBACH,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,mBAC3C,CAAC,mBACD,IAAI,CAAC,GAAG,gBACX,IAAI,CAAC,KAAK;YAErB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CACjC,4DAAK,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ;gBAC9B,IAAI,CAAC,KAAK,IAAI,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ;gBAClE,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CACxC,6DAAM,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,IAAE,IAAI,CAAC,UAAU,EAAE,CAAQ,CAC5D,CACG,CACP;YACD,4DAAK,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO;gBAC7B,4DACE,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,GAC5D,CACE,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from '@stencil/core';\n\nexport type ProgressVariant = 'default' | 'success' | 'warning' | 'error';\nexport type ProgressSize = 'sm' | 'md' | 'lg';\n\n@Component({\n tag: 'ind-progress',\n styleUrl: 'progress.css',\n shadow: true,\n})\nexport class IndProgress {\n /** Current value (0–`max`). */\n @Prop() value: number = 0;\n /** Max value. */\n @Prop() max: number = 100;\n /** Visual variant. Use `warning` / `error` for low / critical fill levels. */\n @Prop({ reflect: true }) variant: ProgressVariant = 'default';\n /** Size. */\n @Prop({ reflect: true }) size: ProgressSize = 'md';\n /** Optional label rendered above the bar. */\n @Prop() label?: string;\n /** Show numeric value next to the label. */\n @Prop() showValue: boolean = false;\n /** Unit suffix for the displayed value. */\n @Prop() unit?: string;\n /** Indeterminate (animated bar, no value). */\n @Prop({ reflect: true }) indeterminate: boolean = false;\n\n private percent(): number {\n if (this.max <= 0) return 0;\n return Math.min(100, Math.max(0, (this.value / this.max) * 100));\n }\n\n private valueLabel(): string {\n if (this.unit === '%' || (this.max === 100 && !this.unit)) {\n return `${Math.round(this.percent())} %`;\n }\n return `${this.value}${this.unit ? ' ' + this.unit : ''} / ${this.max}`;\n }\n\n render() {\n const pct = this.percent();\n return (\n <Host\n role=\"progressbar\"\n aria-valuenow={this.indeterminate ? undefined : this.value}\n aria-valuemin={0}\n aria-valuemax={this.max}\n aria-label={this.label}\n >\n {(this.label || this.showValue) && (\n <div class=\"header\" part=\"header\">\n {this.label && <span class=\"label\" part=\"label\">{this.label}</span>}\n {this.showValue && !this.indeterminate && (\n <span class=\"value\" part=\"value\">{this.valueLabel()}</span>\n )}\n </div>\n )}\n <div class=\"track\" part=\"track\">\n <div\n class=\"fill\"\n part=\"fill\"\n style={this.indeterminate ? undefined : { width: `${pct}%` }}\n />\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: block;
|
|
3
|
+
width: var(--ind-size-canvas-robot-width, 320px);
|
|
4
|
+
height: var(--ind-size-canvas-robot-height, 220px);
|
|
5
|
+
font-family: var(--ind-font-family-mono);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
svg {
|
|
9
|
+
display: block;
|
|
10
|
+
width: 100%;
|
|
11
|
+
height: 100%;
|
|
12
|
+
background: var(--ind-surface-sunken, light-dark(#ffffff, #000000));
|
|
13
|
+
border: 1px solid var(--ind-surface-border-default);
|
|
14
|
+
border-radius: var(--ind-radius-md, 3px);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.envelope {
|
|
18
|
+
fill: none;
|
|
19
|
+
stroke: var(--ind-surface-border-subtle);
|
|
20
|
+
stroke-dasharray: 2 4;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.envelope-inner {
|
|
24
|
+
stroke-dasharray: 1 3;
|
|
25
|
+
opacity: 0.6;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.axis {
|
|
29
|
+
stroke: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
|
|
30
|
+
stroke-width: 1;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.axis-label {
|
|
34
|
+
font-family: var(--ind-font-family-mono);
|
|
35
|
+
font-size: 9px;
|
|
36
|
+
fill: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.link {
|
|
40
|
+
stroke-width: 5;
|
|
41
|
+
stroke-linecap: round;
|
|
42
|
+
transition: stroke 240ms;
|
|
43
|
+
}
|
|
44
|
+
.link-1 { stroke: var(--ind-state-running-bg, #16a34a); }
|
|
45
|
+
.link-2 { stroke: var(--ind-state-running-border, #4ade80); }
|
|
46
|
+
|
|
47
|
+
.wrist {
|
|
48
|
+
stroke: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
49
|
+
stroke-width: 2;
|
|
50
|
+
stroke-linecap: round;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.joint {
|
|
54
|
+
fill: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
55
|
+
stroke: var(--ind-surface-border-strong);
|
|
56
|
+
stroke-width: 1;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.joint.base {
|
|
60
|
+
fill: var(--ind-state-stopped-bg, #5a6776);
|
|
61
|
+
stroke: var(--ind-state-stopped-border, #8390a0);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.joint.effector {
|
|
65
|
+
fill: var(--ind-state-warning-bg, #f59e0b);
|
|
66
|
+
stroke: var(--ind-state-warning-border, #fcd34d);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.readout text {
|
|
70
|
+
font-size: 9px;
|
|
71
|
+
fill: var(--ind-surface-text-muted, light-dark(#5a6776, #8390a0));
|
|
72
|
+
font-feature-settings: "tnum" 1;
|
|
73
|
+
}
|
|
74
|
+
.readout tspan {
|
|
75
|
+
fill: var(--ind-surface-text-primary, light-dark(#11161c, #eef1f5));
|
|
76
|
+
font-weight: 700;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
:host([state="moving"]) .link {
|
|
80
|
+
stroke-dasharray: 4 2;
|
|
81
|
+
animation: ind-scara-move 1.2s linear infinite;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
:host([state="fault"]) .link,
|
|
85
|
+
:host([state="fault"]) .wrist {
|
|
86
|
+
stroke: var(--ind-state-fault-bg, #dc2626);
|
|
87
|
+
}
|
|
88
|
+
:host([state="fault"]) .joint {
|
|
89
|
+
stroke: var(--ind-state-fault-border, #f87171);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
@keyframes ind-scara-move {
|
|
93
|
+
to { stroke-dashoffset: -12; }
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
@media (prefers-reduced-motion: reduce) {
|
|
97
|
+
:host([state="moving"]) .link {
|
|
98
|
+
animation: none;
|
|
99
|
+
}
|
|
100
|
+
}
|