@slotted/angular 0.0.0-stage → 0.1.0-beta.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/LICENSE +21 -0
- package/README.md +51 -2
- package/docs/AGENTS.snippet.md +10 -0
- package/docs/accordion.json +345 -0
- package/docs/accordion.md +207 -0
- package/docs/action-bar.json +421 -0
- package/docs/action-bar.md +364 -0
- package/docs/action-sheet.json +210 -0
- package/docs/action-sheet.md +19 -0
- package/docs/alert.json +407 -0
- package/docs/alert.md +239 -0
- package/docs/app-shell.examples.md +349 -0
- package/docs/app-shell.json +835 -0
- package/docs/app-shell.md +214 -0
- package/docs/aspect-ratio.json +159 -0
- package/docs/aspect-ratio.md +134 -0
- package/docs/attachment.json +486 -0
- package/docs/attachment.md +253 -0
- package/docs/avatar-group.json +208 -0
- package/docs/avatar-group.md +130 -0
- package/docs/avatar.json +342 -0
- package/docs/avatar.md +142 -0
- package/docs/badge.json +334 -0
- package/docs/badge.md +138 -0
- package/docs/breadcrumb.json +368 -0
- package/docs/breadcrumb.md +237 -0
- package/docs/button-group.json +158 -0
- package/docs/button-group.md +72 -0
- package/docs/button.examples.md +621 -0
- package/docs/button.json +977 -0
- package/docs/button.md +200 -0
- package/docs/calendar.json +592 -0
- package/docs/calendar.md +242 -0
- package/docs/card.json +283 -0
- package/docs/card.md +130 -0
- package/docs/carousel.json +560 -0
- package/docs/carousel.md +357 -0
- package/docs/cascader.json +933 -0
- package/docs/cascader.md +379 -0
- package/docs/chart.examples.md +582 -0
- package/docs/chart.json +1359 -0
- package/docs/chart.md +187 -0
- package/docs/checkbox-group.examples.md +612 -0
- package/docs/checkbox-group.json +395 -0
- package/docs/checkbox-group.md +106 -0
- package/docs/checkbox.examples.md +546 -0
- package/docs/checkbox.json +506 -0
- package/docs/checkbox.md +104 -0
- package/docs/code-block.json +616 -0
- package/docs/code-block.md +303 -0
- package/docs/collapsible.json +456 -0
- package/docs/collapsible.md +261 -0
- package/docs/color-picker.json +523 -0
- package/docs/color-picker.md +201 -0
- package/docs/column-manager.json +486 -0
- package/docs/column-manager.md +277 -0
- package/docs/combobox.examples.md +1732 -0
- package/docs/combobox.json +1250 -0
- package/docs/combobox.md +209 -0
- package/docs/command-palette.json +800 -0
- package/docs/command-palette.md +419 -0
- package/docs/container.json +156 -0
- package/docs/container.md +92 -0
- package/docs/context-menu.json +231 -0
- package/docs/context-menu.md +176 -0
- package/docs/currency-field.examples.md +321 -0
- package/docs/currency-field.json +649 -0
- package/docs/currency-field.md +128 -0
- package/docs/dashboard-grid.json +680 -0
- package/docs/dashboard-grid.md +265 -0
- package/docs/data-grid.examples.md +3064 -0
- package/docs/data-grid.json +1577 -0
- package/docs/data-grid.md +237 -0
- package/docs/data-grid.props.md +81 -0
- package/docs/data-list.json +685 -0
- package/docs/data-list.md +327 -0
- package/docs/date-field.json +490 -0
- package/docs/date-field.md +235 -0
- package/docs/date-picker.examples.md +1226 -0
- package/docs/date-picker.json +696 -0
- package/docs/date-picker.md +121 -0
- package/docs/date-range-picker.examples.md +1300 -0
- package/docs/date-range-picker.json +903 -0
- package/docs/date-range-picker.md +142 -0
- package/docs/datetime-field.json +665 -0
- package/docs/datetime-field.md +337 -0
- package/docs/datetime-picker.examples.md +1269 -0
- package/docs/datetime-picker.json +928 -0
- package/docs/datetime-picker.md +150 -0
- package/docs/datetime-range-picker.examples.md +225 -0
- package/docs/datetime-range-picker.json +1015 -0
- package/docs/datetime-range-picker.md +162 -0
- package/docs/description-list.json +471 -0
- package/docs/description-list.md +268 -0
- package/docs/detail-panel.json +530 -0
- package/docs/detail-panel.md +361 -0
- package/docs/dialog.examples.md +2467 -0
- package/docs/dialog.json +1141 -0
- package/docs/dialog.md +217 -0
- package/docs/dialog.props.md +63 -0
- package/docs/divider.json +148 -0
- package/docs/divider.md +83 -0
- package/docs/drawer.examples.md +1929 -0
- package/docs/drawer.json +753 -0
- package/docs/drawer.md +199 -0
- package/docs/entity-picker.json +946 -0
- package/docs/entity-picker.md +365 -0
- package/docs/event-calendar.examples.md +308 -0
- package/docs/event-calendar.json +1202 -0
- package/docs/event-calendar.md +201 -0
- package/docs/field-group.json +333 -0
- package/docs/field-group.md +181 -0
- package/docs/field.examples.md +676 -0
- package/docs/field.json +528 -0
- package/docs/field.md +127 -0
- package/docs/filter-bar.json +817 -0
- package/docs/filter-bar.md +380 -0
- package/docs/form.json +378 -0
- package/docs/form.md +235 -0
- package/docs/fullscreen.json +395 -0
- package/docs/fullscreen.md +225 -0
- package/docs/grid.json +176 -0
- package/docs/grid.md +74 -0
- package/docs/highlight.json +279 -0
- package/docs/highlight.md +210 -0
- package/docs/hover-card.json +254 -0
- package/docs/hover-card.md +213 -0
- package/docs/icon.json +173 -0
- package/docs/icon.md +101 -0
- package/docs/image.json +476 -0
- package/docs/image.md +254 -0
- package/docs/import-export-center.json +836 -0
- package/docs/import-export-center.md +345 -0
- package/docs/index.md +141 -0
- package/docs/inline-message.json +312 -0
- package/docs/inline-message.md +191 -0
- package/docs/inline.json +149 -0
- package/docs/inline.md +72 -0
- package/docs/kbd.json +350 -0
- package/docs/kbd.md +210 -0
- package/docs/link.json +264 -0
- package/docs/link.md +167 -0
- package/docs/list-item.json +463 -0
- package/docs/list-item.md +236 -0
- package/docs/list.json +321 -0
- package/docs/list.md +185 -0
- package/docs/listbox.json +807 -0
- package/docs/listbox.md +413 -0
- package/docs/loading-overlay.json +440 -0
- package/docs/loading-overlay.md +248 -0
- package/docs/markdown.json +461 -0
- package/docs/markdown.md +266 -0
- package/docs/menu.examples.md +1651 -0
- package/docs/menu.json +922 -0
- package/docs/menu.md +155 -0
- package/docs/menubar.json +292 -0
- package/docs/menubar.md +173 -0
- package/docs/message-scroller.json +401 -0
- package/docs/message-scroller.md +212 -0
- package/docs/message.json +862 -0
- package/docs/message.md +473 -0
- package/docs/multi-select.examples.md +1922 -0
- package/docs/multi-select.json +1314 -0
- package/docs/multi-select.md +213 -0
- package/docs/navigation-menu.json +529 -0
- package/docs/navigation-menu.md +329 -0
- package/docs/notification-center.json +664 -0
- package/docs/notification-center.md +372 -0
- package/docs/number-field.examples.md +1078 -0
- package/docs/number-field.json +668 -0
- package/docs/number-field.md +137 -0
- package/docs/otp-input.json +479 -0
- package/docs/otp-input.md +291 -0
- package/docs/page-header.json +574 -0
- package/docs/page-header.md +338 -0
- package/docs/page.json +332 -0
- package/docs/page.md +184 -0
- package/docs/pagination.json +434 -0
- package/docs/pagination.md +238 -0
- package/docs/popover.examples.md +1235 -0
- package/docs/popover.json +656 -0
- package/docs/popover.md +199 -0
- package/docs/progress-indicator.json +501 -0
- package/docs/progress-indicator.md +329 -0
- package/docs/prompt-composer.json +498 -0
- package/docs/prompt-composer.md +278 -0
- package/docs/prose.json +357 -0
- package/docs/prose.md +226 -0
- package/docs/radio-group.examples.md +626 -0
- package/docs/radio-group.json +541 -0
- package/docs/radio-group.md +112 -0
- package/docs/rating.json +1053 -0
- package/docs/rating.md +435 -0
- package/docs/result-state.json +376 -0
- package/docs/result-state.md +286 -0
- package/docs/saved-views.json +384 -0
- package/docs/saved-views.md +242 -0
- package/docs/scroll-area.json +120 -0
- package/docs/scroll-area.md +8 -0
- package/docs/section.json +344 -0
- package/docs/section.md +208 -0
- package/docs/segmented-control.json +429 -0
- package/docs/segmented-control.md +240 -0
- package/docs/select.examples.md +1214 -0
- package/docs/select.json +1147 -0
- package/docs/select.md +199 -0
- package/docs/side-navigation.json +632 -0
- package/docs/side-navigation.md +430 -0
- package/docs/skeleton.json +358 -0
- package/docs/skeleton.md +223 -0
- package/docs/slider.json +522 -0
- package/docs/slider.md +261 -0
- package/docs/sparkline.json +426 -0
- package/docs/sparkline.md +206 -0
- package/docs/split-button.json +361 -0
- package/docs/split-button.md +275 -0
- package/docs/splitter.json +142 -0
- package/docs/splitter.md +14 -0
- package/docs/stack.json +135 -0
- package/docs/stack.md +74 -0
- package/docs/stat-card.json +529 -0
- package/docs/stat-card.md +270 -0
- package/docs/status-indicator.json +314 -0
- package/docs/status-indicator.md +197 -0
- package/docs/stepper.json +451 -0
- package/docs/stepper.md +250 -0
- package/docs/switch.json +451 -0
- package/docs/switch.md +508 -0
- package/docs/table-of-contents.json +553 -0
- package/docs/table-of-contents.md +289 -0
- package/docs/table.examples.md +1981 -0
- package/docs/table.json +1059 -0
- package/docs/table.md +290 -0
- package/docs/tabs.examples.md +1370 -0
- package/docs/tabs.json +661 -0
- package/docs/tabs.md +211 -0
- package/docs/tag.json +813 -0
- package/docs/tag.md +241 -0
- package/docs/tags-input.json +771 -0
- package/docs/tags-input.md +361 -0
- package/docs/text-field.examples.md +821 -0
- package/docs/text-field.json +604 -0
- package/docs/text-field.md +125 -0
- package/docs/textarea.examples.md +612 -0
- package/docs/textarea.json +440 -0
- package/docs/textarea.md +98 -0
- package/docs/time-field.json +584 -0
- package/docs/time-field.md +291 -0
- package/docs/time-picker.json +679 -0
- package/docs/time-picker.md +315 -0
- package/docs/time-range-picker.examples.md +191 -0
- package/docs/time-range-picker.json +924 -0
- package/docs/time-range-picker.md +152 -0
- package/docs/timeline.json +839 -0
- package/docs/timeline.md +401 -0
- package/docs/toast.json +642 -0
- package/docs/toast.md +311 -0
- package/docs/toggle-group.json +417 -0
- package/docs/toggle-group.md +255 -0
- package/docs/toggle.json +326 -0
- package/docs/toggle.md +222 -0
- package/docs/toolbar.json +380 -0
- package/docs/toolbar.md +240 -0
- package/docs/tooltip.examples.md +664 -0
- package/docs/tooltip.json +604 -0
- package/docs/tooltip.md +146 -0
- package/docs/top-navigation.examples.md +287 -0
- package/docs/top-navigation.json +648 -0
- package/docs/top-navigation.md +138 -0
- package/docs/tour.json +759 -0
- package/docs/tour.md +337 -0
- package/docs/transfer.json +746 -0
- package/docs/transfer.md +273 -0
- package/docs/tree.json +918 -0
- package/docs/tree.md +397 -0
- package/docs/typography.json +317 -0
- package/docs/typography.md +107 -0
- package/docs/upload.examples.md +358 -0
- package/docs/upload.json +1103 -0
- package/docs/upload.md +166 -0
- package/docs/visually-hidden.json +71 -0
- package/docs/visually-hidden.md +42 -0
- package/docs/wizard.json +724 -0
- package/docs/wizard.md +295 -0
- package/fesm2022/slotted-angular-accordion.mjs +247 -0
- package/fesm2022/slotted-angular-accordion.mjs.map +1 -0
- package/fesm2022/slotted-angular-action-bar.mjs +639 -0
- package/fesm2022/slotted-angular-action-bar.mjs.map +1 -0
- package/fesm2022/slotted-angular-action-sheet.mjs +749 -0
- package/fesm2022/slotted-angular-action-sheet.mjs.map +1 -0
- package/fesm2022/slotted-angular-alert.mjs +427 -0
- package/fesm2022/slotted-angular-alert.mjs.map +1 -0
- package/fesm2022/slotted-angular-app-shell.mjs +1334 -0
- package/fesm2022/slotted-angular-app-shell.mjs.map +1 -0
- package/fesm2022/slotted-angular-aspect-ratio.mjs +63 -0
- package/fesm2022/slotted-angular-aspect-ratio.mjs.map +1 -0
- package/fesm2022/slotted-angular-attachment.mjs +595 -0
- package/fesm2022/slotted-angular-attachment.mjs.map +1 -0
- package/fesm2022/slotted-angular-avatar-group.mjs +230 -0
- package/fesm2022/slotted-angular-avatar-group.mjs.map +1 -0
- package/fesm2022/slotted-angular-avatar.mjs +330 -0
- package/fesm2022/slotted-angular-avatar.mjs.map +1 -0
- package/fesm2022/slotted-angular-badge.mjs +255 -0
- package/fesm2022/slotted-angular-badge.mjs.map +1 -0
- package/fesm2022/slotted-angular-breadcrumb.mjs +544 -0
- package/fesm2022/slotted-angular-breadcrumb.mjs.map +1 -0
- package/fesm2022/slotted-angular-button-group.mjs +146 -0
- package/fesm2022/slotted-angular-button-group.mjs.map +1 -0
- package/fesm2022/slotted-angular-button.mjs +692 -0
- package/fesm2022/slotted-angular-button.mjs.map +1 -0
- package/fesm2022/slotted-angular-calendar.mjs +916 -0
- package/fesm2022/slotted-angular-calendar.mjs.map +1 -0
- package/fesm2022/slotted-angular-card.mjs +225 -0
- package/fesm2022/slotted-angular-card.mjs.map +1 -0
- package/fesm2022/slotted-angular-carousel.mjs +840 -0
- package/fesm2022/slotted-angular-carousel.mjs.map +1 -0
- package/fesm2022/slotted-angular-cascader.mjs +1839 -0
- package/fesm2022/slotted-angular-cascader.mjs.map +1 -0
- package/fesm2022/slotted-angular-chart.mjs +974 -0
- package/fesm2022/slotted-angular-chart.mjs.map +1 -0
- package/fesm2022/slotted-angular-checkbox-group.mjs +283 -0
- package/fesm2022/slotted-angular-checkbox-group.mjs.map +1 -0
- package/fesm2022/slotted-angular-checkbox.mjs +468 -0
- package/fesm2022/slotted-angular-checkbox.mjs.map +1 -0
- package/fesm2022/slotted-angular-code-block.mjs +476 -0
- package/fesm2022/slotted-angular-code-block.mjs.map +1 -0
- package/fesm2022/slotted-angular-collapsible.mjs +479 -0
- package/fesm2022/slotted-angular-collapsible.mjs.map +1 -0
- package/fesm2022/slotted-angular-color-picker.mjs +910 -0
- package/fesm2022/slotted-angular-color-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-column-manager.mjs +1037 -0
- package/fesm2022/slotted-angular-column-manager.mjs.map +1 -0
- package/fesm2022/slotted-angular-combobox.mjs +1480 -0
- package/fesm2022/slotted-angular-combobox.mjs.map +1 -0
- package/fesm2022/slotted-angular-command-palette.mjs +1283 -0
- package/fesm2022/slotted-angular-command-palette.mjs.map +1 -0
- package/fesm2022/slotted-angular-container.mjs +105 -0
- package/fesm2022/slotted-angular-container.mjs.map +1 -0
- package/fesm2022/slotted-angular-context-menu.mjs +221 -0
- package/fesm2022/slotted-angular-context-menu.mjs.map +1 -0
- package/fesm2022/slotted-angular-currency-field.mjs +1131 -0
- package/fesm2022/slotted-angular-currency-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-dashboard-grid.mjs +1928 -0
- package/fesm2022/slotted-angular-dashboard-grid.mjs.map +1 -0
- package/fesm2022/slotted-angular-data-grid.mjs +6697 -0
- package/fesm2022/slotted-angular-data-grid.mjs.map +1 -0
- package/fesm2022/slotted-angular-data-list.mjs +1418 -0
- package/fesm2022/slotted-angular-data-list.mjs.map +1 -0
- package/fesm2022/slotted-angular-date-field.mjs +772 -0
- package/fesm2022/slotted-angular-date-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-date-picker.mjs +690 -0
- package/fesm2022/slotted-angular-date-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-date-range-picker.mjs +1150 -0
- package/fesm2022/slotted-angular-date-range-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-datetime-field.mjs +1058 -0
- package/fesm2022/slotted-angular-datetime-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-datetime-picker.mjs +1362 -0
- package/fesm2022/slotted-angular-datetime-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-datetime-range-picker.mjs +1872 -0
- package/fesm2022/slotted-angular-datetime-range-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-description-list.mjs +545 -0
- package/fesm2022/slotted-angular-description-list.mjs.map +1 -0
- package/fesm2022/slotted-angular-detail-panel.mjs +754 -0
- package/fesm2022/slotted-angular-detail-panel.mjs.map +1 -0
- package/fesm2022/slotted-angular-dialog.mjs +980 -0
- package/fesm2022/slotted-angular-dialog.mjs.map +1 -0
- package/fesm2022/slotted-angular-divider.mjs +76 -0
- package/fesm2022/slotted-angular-divider.mjs.map +1 -0
- package/fesm2022/slotted-angular-drawer.mjs +1397 -0
- package/fesm2022/slotted-angular-drawer.mjs.map +1 -0
- package/fesm2022/slotted-angular-entity-picker.mjs +1987 -0
- package/fesm2022/slotted-angular-entity-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-event-calendar.mjs +2934 -0
- package/fesm2022/slotted-angular-event-calendar.mjs.map +1 -0
- package/fesm2022/slotted-angular-field-group.mjs +301 -0
- package/fesm2022/slotted-angular-field-group.mjs.map +1 -0
- package/fesm2022/slotted-angular-field.mjs +928 -0
- package/fesm2022/slotted-angular-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-filter-bar.mjs +3107 -0
- package/fesm2022/slotted-angular-filter-bar.mjs.map +1 -0
- package/fesm2022/slotted-angular-form.mjs +592 -0
- package/fesm2022/slotted-angular-form.mjs.map +1 -0
- package/fesm2022/slotted-angular-fullscreen.mjs +314 -0
- package/fesm2022/slotted-angular-fullscreen.mjs.map +1 -0
- package/fesm2022/slotted-angular-grid.mjs +58 -0
- package/fesm2022/slotted-angular-grid.mjs.map +1 -0
- package/fesm2022/slotted-angular-highlight.mjs +123 -0
- package/fesm2022/slotted-angular-highlight.mjs.map +1 -0
- package/fesm2022/slotted-angular-hover-card.mjs +326 -0
- package/fesm2022/slotted-angular-hover-card.mjs.map +1 -0
- package/fesm2022/slotted-angular-i18n.mjs +75 -0
- package/fesm2022/slotted-angular-i18n.mjs.map +1 -0
- package/fesm2022/slotted-angular-icon.mjs +232 -0
- package/fesm2022/slotted-angular-icon.mjs.map +1 -0
- package/fesm2022/slotted-angular-image.mjs +442 -0
- package/fesm2022/slotted-angular-image.mjs.map +1 -0
- package/fesm2022/slotted-angular-import-export-center.mjs +1792 -0
- package/fesm2022/slotted-angular-import-export-center.mjs.map +1 -0
- package/fesm2022/slotted-angular-inline-message.mjs +280 -0
- package/fesm2022/slotted-angular-inline-message.mjs.map +1 -0
- package/fesm2022/slotted-angular-inline.mjs +52 -0
- package/fesm2022/slotted-angular-inline.mjs.map +1 -0
- package/fesm2022/slotted-angular-kbd.mjs +284 -0
- package/fesm2022/slotted-angular-kbd.mjs.map +1 -0
- package/fesm2022/slotted-angular-link.mjs +182 -0
- package/fesm2022/slotted-angular-link.mjs.map +1 -0
- package/fesm2022/slotted-angular-list-item.mjs +367 -0
- package/fesm2022/slotted-angular-list-item.mjs.map +1 -0
- package/fesm2022/slotted-angular-list.mjs +256 -0
- package/fesm2022/slotted-angular-list.mjs.map +1 -0
- package/fesm2022/slotted-angular-listbox.mjs +1274 -0
- package/fesm2022/slotted-angular-listbox.mjs.map +1 -0
- package/fesm2022/slotted-angular-loading-overlay.mjs +451 -0
- package/fesm2022/slotted-angular-loading-overlay.mjs.map +1 -0
- package/fesm2022/slotted-angular-markdown.mjs +914 -0
- package/fesm2022/slotted-angular-markdown.mjs.map +1 -0
- package/fesm2022/slotted-angular-menu.mjs +1211 -0
- package/fesm2022/slotted-angular-menu.mjs.map +1 -0
- package/fesm2022/slotted-angular-menubar.mjs +230 -0
- package/fesm2022/slotted-angular-menubar.mjs.map +1 -0
- package/fesm2022/slotted-angular-message-scroller.mjs +378 -0
- package/fesm2022/slotted-angular-message-scroller.mjs.map +1 -0
- package/fesm2022/slotted-angular-message.mjs +866 -0
- package/fesm2022/slotted-angular-message.mjs.map +1 -0
- package/fesm2022/slotted-angular-multi-select.mjs +1939 -0
- package/fesm2022/slotted-angular-multi-select.mjs.map +1 -0
- package/fesm2022/slotted-angular-navigation-menu.mjs +770 -0
- package/fesm2022/slotted-angular-navigation-menu.mjs.map +1 -0
- package/fesm2022/slotted-angular-notification-center.mjs +1172 -0
- package/fesm2022/slotted-angular-notification-center.mjs.map +1 -0
- package/fesm2022/slotted-angular-number-field.mjs +966 -0
- package/fesm2022/slotted-angular-number-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-otp-input.mjs +629 -0
- package/fesm2022/slotted-angular-otp-input.mjs.map +1 -0
- package/fesm2022/slotted-angular-page-header.mjs +788 -0
- package/fesm2022/slotted-angular-page-header.mjs.map +1 -0
- package/fesm2022/slotted-angular-page.mjs +255 -0
- package/fesm2022/slotted-angular-page.mjs.map +1 -0
- package/fesm2022/slotted-angular-pagination.mjs +562 -0
- package/fesm2022/slotted-angular-pagination.mjs.map +1 -0
- package/fesm2022/slotted-angular-popover.mjs +799 -0
- package/fesm2022/slotted-angular-popover.mjs.map +1 -0
- package/fesm2022/slotted-angular-progress-indicator.mjs +572 -0
- package/fesm2022/slotted-angular-progress-indicator.mjs.map +1 -0
- package/fesm2022/slotted-angular-prompt-composer.mjs +596 -0
- package/fesm2022/slotted-angular-prompt-composer.mjs.map +1 -0
- package/fesm2022/slotted-angular-prose.mjs +314 -0
- package/fesm2022/slotted-angular-prose.mjs.map +1 -0
- package/fesm2022/slotted-angular-radio-group.mjs +469 -0
- package/fesm2022/slotted-angular-radio-group.mjs.map +1 -0
- package/fesm2022/slotted-angular-rating.mjs +1174 -0
- package/fesm2022/slotted-angular-rating.mjs.map +1 -0
- package/fesm2022/slotted-angular-result-state.mjs +330 -0
- package/fesm2022/slotted-angular-result-state.mjs.map +1 -0
- package/fesm2022/slotted-angular-saved-views.mjs +877 -0
- package/fesm2022/slotted-angular-saved-views.mjs.map +1 -0
- package/fesm2022/slotted-angular-scroll-area.mjs +294 -0
- package/fesm2022/slotted-angular-scroll-area.mjs.map +1 -0
- package/fesm2022/slotted-angular-section.mjs +266 -0
- package/fesm2022/slotted-angular-section.mjs.map +1 -0
- package/fesm2022/slotted-angular-segmented-control.mjs +454 -0
- package/fesm2022/slotted-angular-segmented-control.mjs.map +1 -0
- package/fesm2022/slotted-angular-select.mjs +1899 -0
- package/fesm2022/slotted-angular-select.mjs.map +1 -0
- package/fesm2022/slotted-angular-side-navigation.mjs +1042 -0
- package/fesm2022/slotted-angular-side-navigation.mjs.map +1 -0
- package/fesm2022/slotted-angular-skeleton.mjs +316 -0
- package/fesm2022/slotted-angular-skeleton.mjs.map +1 -0
- package/fesm2022/slotted-angular-slider.mjs +586 -0
- package/fesm2022/slotted-angular-slider.mjs.map +1 -0
- package/fesm2022/slotted-angular-sparkline.mjs +235 -0
- package/fesm2022/slotted-angular-sparkline.mjs.map +1 -0
- package/fesm2022/slotted-angular-split-button.mjs +331 -0
- package/fesm2022/slotted-angular-split-button.mjs.map +1 -0
- package/fesm2022/slotted-angular-splitter.mjs +516 -0
- package/fesm2022/slotted-angular-splitter.mjs.map +1 -0
- package/fesm2022/slotted-angular-stack.mjs +48 -0
- package/fesm2022/slotted-angular-stack.mjs.map +1 -0
- package/fesm2022/slotted-angular-stat-card.mjs +478 -0
- package/fesm2022/slotted-angular-stat-card.mjs.map +1 -0
- package/fesm2022/slotted-angular-status-indicator.mjs +155 -0
- package/fesm2022/slotted-angular-status-indicator.mjs.map +1 -0
- package/fesm2022/slotted-angular-stepper.mjs +536 -0
- package/fesm2022/slotted-angular-stepper.mjs.map +1 -0
- package/fesm2022/slotted-angular-switch.mjs +447 -0
- package/fesm2022/slotted-angular-switch.mjs.map +1 -0
- package/fesm2022/slotted-angular-table-of-contents.mjs +750 -0
- package/fesm2022/slotted-angular-table-of-contents.mjs.map +1 -0
- package/fesm2022/slotted-angular-table.mjs +2518 -0
- package/fesm2022/slotted-angular-table.mjs.map +1 -0
- package/fesm2022/slotted-angular-tabs.mjs +829 -0
- package/fesm2022/slotted-angular-tabs.mjs.map +1 -0
- package/fesm2022/slotted-angular-tag.mjs +595 -0
- package/fesm2022/slotted-angular-tag.mjs.map +1 -0
- package/fesm2022/slotted-angular-tags-input.mjs +1211 -0
- package/fesm2022/slotted-angular-tags-input.mjs.map +1 -0
- package/fesm2022/slotted-angular-text-field.mjs +674 -0
- package/fesm2022/slotted-angular-text-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-textarea.mjs +275 -0
- package/fesm2022/slotted-angular-textarea.mjs.map +1 -0
- package/fesm2022/slotted-angular-theme.mjs +45 -0
- package/fesm2022/slotted-angular-theme.mjs.map +1 -0
- package/fesm2022/slotted-angular-time-field.mjs +895 -0
- package/fesm2022/slotted-angular-time-field.mjs.map +1 -0
- package/fesm2022/slotted-angular-time-picker.mjs +856 -0
- package/fesm2022/slotted-angular-time-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-time-range-picker.mjs +1534 -0
- package/fesm2022/slotted-angular-time-range-picker.mjs.map +1 -0
- package/fesm2022/slotted-angular-timeline.mjs +928 -0
- package/fesm2022/slotted-angular-timeline.mjs.map +1 -0
- package/fesm2022/slotted-angular-toast.mjs +917 -0
- package/fesm2022/slotted-angular-toast.mjs.map +1 -0
- package/fesm2022/slotted-angular-toggle-group.mjs +311 -0
- package/fesm2022/slotted-angular-toggle-group.mjs.map +1 -0
- package/fesm2022/slotted-angular-toggle.mjs +162 -0
- package/fesm2022/slotted-angular-toggle.mjs.map +1 -0
- package/fesm2022/slotted-angular-toolbar.mjs +536 -0
- package/fesm2022/slotted-angular-toolbar.mjs.map +1 -0
- package/fesm2022/slotted-angular-tooltip.mjs +798 -0
- package/fesm2022/slotted-angular-tooltip.mjs.map +1 -0
- package/fesm2022/slotted-angular-top-navigation.mjs +1308 -0
- package/fesm2022/slotted-angular-top-navigation.mjs.map +1 -0
- package/fesm2022/slotted-angular-tour.mjs +1330 -0
- package/fesm2022/slotted-angular-tour.mjs.map +1 -0
- package/fesm2022/slotted-angular-transfer.mjs +1406 -0
- package/fesm2022/slotted-angular-transfer.mjs.map +1 -0
- package/fesm2022/slotted-angular-tree.mjs +1448 -0
- package/fesm2022/slotted-angular-tree.mjs.map +1 -0
- package/fesm2022/slotted-angular-typography.mjs +184 -0
- package/fesm2022/slotted-angular-typography.mjs.map +1 -0
- package/fesm2022/slotted-angular-upload.mjs +1523 -0
- package/fesm2022/slotted-angular-upload.mjs.map +1 -0
- package/fesm2022/slotted-angular-visually-hidden.mjs +32 -0
- package/fesm2022/slotted-angular-visually-hidden.mjs.map +1 -0
- package/fesm2022/slotted-angular-wizard.mjs +1715 -0
- package/fesm2022/slotted-angular-wizard.mjs.map +1 -0
- package/fesm2022/slotted-angular.mjs +4 -0
- package/fesm2022/slotted-angular.mjs.map +1 -0
- package/package.json +537 -3
- package/types/slotted-angular-accordion.d.ts +156 -0
- package/types/slotted-angular-accordion.d.ts.map +1 -0
- package/types/slotted-angular-action-bar.d.ts +291 -0
- package/types/slotted-angular-action-bar.d.ts.map +1 -0
- package/types/slotted-angular-action-sheet.d.ts +294 -0
- package/types/slotted-angular-action-sheet.d.ts.map +1 -0
- package/types/slotted-angular-alert.d.ts +214 -0
- package/types/slotted-angular-alert.d.ts.map +1 -0
- package/types/slotted-angular-app-shell.d.ts +549 -0
- package/types/slotted-angular-app-shell.d.ts.map +1 -0
- package/types/slotted-angular-aspect-ratio.d.ts +57 -0
- package/types/slotted-angular-aspect-ratio.d.ts.map +1 -0
- package/types/slotted-angular-attachment.d.ts +294 -0
- package/types/slotted-angular-attachment.d.ts.map +1 -0
- package/types/slotted-angular-avatar-group.d.ts +119 -0
- package/types/slotted-angular-avatar-group.d.ts.map +1 -0
- package/types/slotted-angular-avatar.d.ts +202 -0
- package/types/slotted-angular-avatar.d.ts.map +1 -0
- package/types/slotted-angular-badge.d.ts +166 -0
- package/types/slotted-angular-badge.d.ts.map +1 -0
- package/types/slotted-angular-breadcrumb.d.ts +251 -0
- package/types/slotted-angular-breadcrumb.d.ts.map +1 -0
- package/types/slotted-angular-button-group.d.ts +89 -0
- package/types/slotted-angular-button-group.d.ts.map +1 -0
- package/types/slotted-angular-button.d.ts +390 -0
- package/types/slotted-angular-button.d.ts.map +1 -0
- package/types/slotted-angular-calendar.d.ts +280 -0
- package/types/slotted-angular-calendar.d.ts.map +1 -0
- package/types/slotted-angular-card.d.ts +140 -0
- package/types/slotted-angular-card.d.ts.map +1 -0
- package/types/slotted-angular-carousel.d.ts +288 -0
- package/types/slotted-angular-carousel.d.ts.map +1 -0
- package/types/slotted-angular-cascader.d.ts +351 -0
- package/types/slotted-angular-cascader.d.ts.map +1 -0
- package/types/slotted-angular-chart.d.ts +319 -0
- package/types/slotted-angular-chart.d.ts.map +1 -0
- package/types/slotted-angular-checkbox-group.d.ts +156 -0
- package/types/slotted-angular-checkbox-group.d.ts.map +1 -0
- package/types/slotted-angular-checkbox.d.ts +197 -0
- package/types/slotted-angular-checkbox.d.ts.map +1 -0
- package/types/slotted-angular-code-block.d.ts +158 -0
- package/types/slotted-angular-code-block.d.ts.map +1 -0
- package/types/slotted-angular-collapsible.d.ts +272 -0
- package/types/slotted-angular-collapsible.d.ts.map +1 -0
- package/types/slotted-angular-color-picker.d.ts +181 -0
- package/types/slotted-angular-color-picker.d.ts.map +1 -0
- package/types/slotted-angular-column-manager.d.ts +200 -0
- package/types/slotted-angular-column-manager.d.ts.map +1 -0
- package/types/slotted-angular-combobox.d.ts +449 -0
- package/types/slotted-angular-combobox.d.ts.map +1 -0
- package/types/slotted-angular-command-palette.d.ts +256 -0
- package/types/slotted-angular-command-palette.d.ts.map +1 -0
- package/types/slotted-angular-container.d.ts +84 -0
- package/types/slotted-angular-container.d.ts.map +1 -0
- package/types/slotted-angular-context-menu.d.ts +84 -0
- package/types/slotted-angular-context-menu.d.ts.map +1 -0
- package/types/slotted-angular-currency-field.d.ts +480 -0
- package/types/slotted-angular-currency-field.d.ts.map +1 -0
- package/types/slotted-angular-dashboard-grid.d.ts +341 -0
- package/types/slotted-angular-dashboard-grid.d.ts.map +1 -0
- package/types/slotted-angular-data-grid.d.ts +1077 -0
- package/types/slotted-angular-data-grid.d.ts.map +1 -0
- package/types/slotted-angular-data-list.d.ts +272 -0
- package/types/slotted-angular-data-list.d.ts.map +1 -0
- package/types/slotted-angular-date-field.d.ts +320 -0
- package/types/slotted-angular-date-field.d.ts.map +1 -0
- package/types/slotted-angular-date-picker.d.ts +224 -0
- package/types/slotted-angular-date-picker.d.ts.map +1 -0
- package/types/slotted-angular-date-range-picker.d.ts +310 -0
- package/types/slotted-angular-date-range-picker.d.ts.map +1 -0
- package/types/slotted-angular-datetime-field.d.ts +362 -0
- package/types/slotted-angular-datetime-field.d.ts.map +1 -0
- package/types/slotted-angular-datetime-picker.d.ts +370 -0
- package/types/slotted-angular-datetime-picker.d.ts.map +1 -0
- package/types/slotted-angular-datetime-range-picker.d.ts +459 -0
- package/types/slotted-angular-datetime-range-picker.d.ts.map +1 -0
- package/types/slotted-angular-description-list.d.ts +281 -0
- package/types/slotted-angular-description-list.d.ts.map +1 -0
- package/types/slotted-angular-detail-panel.d.ts +240 -0
- package/types/slotted-angular-detail-panel.d.ts.map +1 -0
- package/types/slotted-angular-dialog.d.ts +497 -0
- package/types/slotted-angular-dialog.d.ts.map +1 -0
- package/types/slotted-angular-divider.d.ts +40 -0
- package/types/slotted-angular-divider.d.ts.map +1 -0
- package/types/slotted-angular-drawer.d.ts +532 -0
- package/types/slotted-angular-drawer.d.ts.map +1 -0
- package/types/slotted-angular-entity-picker.d.ts +338 -0
- package/types/slotted-angular-entity-picker.d.ts.map +1 -0
- package/types/slotted-angular-event-calendar.d.ts +574 -0
- package/types/slotted-angular-event-calendar.d.ts.map +1 -0
- package/types/slotted-angular-field-group.d.ts +152 -0
- package/types/slotted-angular-field-group.d.ts.map +1 -0
- package/types/slotted-angular-field.d.ts +535 -0
- package/types/slotted-angular-field.d.ts.map +1 -0
- package/types/slotted-angular-filter-bar.d.ts +573 -0
- package/types/slotted-angular-filter-bar.d.ts.map +1 -0
- package/types/slotted-angular-form.d.ts +298 -0
- package/types/slotted-angular-form.d.ts.map +1 -0
- package/types/slotted-angular-fullscreen.d.ts +145 -0
- package/types/slotted-angular-fullscreen.d.ts.map +1 -0
- package/types/slotted-angular-grid.d.ts +50 -0
- package/types/slotted-angular-grid.d.ts.map +1 -0
- package/types/slotted-angular-highlight.d.ts +93 -0
- package/types/slotted-angular-highlight.d.ts.map +1 -0
- package/types/slotted-angular-hover-card.d.ts +140 -0
- package/types/slotted-angular-hover-card.d.ts.map +1 -0
- package/types/slotted-angular-i18n.d.ts +46 -0
- package/types/slotted-angular-i18n.d.ts.map +1 -0
- package/types/slotted-angular-icon.d.ts +94 -0
- package/types/slotted-angular-icon.d.ts.map +1 -0
- package/types/slotted-angular-image.d.ts +251 -0
- package/types/slotted-angular-image.d.ts.map +1 -0
- package/types/slotted-angular-import-export-center.d.ts +351 -0
- package/types/slotted-angular-import-export-center.d.ts.map +1 -0
- package/types/slotted-angular-inline-message.d.ts +195 -0
- package/types/slotted-angular-inline-message.d.ts.map +1 -0
- package/types/slotted-angular-inline.d.ts +41 -0
- package/types/slotted-angular-inline.d.ts.map +1 -0
- package/types/slotted-angular-kbd.d.ts +174 -0
- package/types/slotted-angular-kbd.d.ts.map +1 -0
- package/types/slotted-angular-link.d.ts +94 -0
- package/types/slotted-angular-link.d.ts.map +1 -0
- package/types/slotted-angular-list-item.d.ts +210 -0
- package/types/slotted-angular-list-item.d.ts.map +1 -0
- package/types/slotted-angular-list.d.ts +176 -0
- package/types/slotted-angular-list.d.ts.map +1 -0
- package/types/slotted-angular-listbox.d.ts +470 -0
- package/types/slotted-angular-listbox.d.ts.map +1 -0
- package/types/slotted-angular-loading-overlay.d.ts +219 -0
- package/types/slotted-angular-loading-overlay.d.ts.map +1 -0
- package/types/slotted-angular-markdown.d.ts +172 -0
- package/types/slotted-angular-markdown.d.ts.map +1 -0
- package/types/slotted-angular-menu.d.ts +448 -0
- package/types/slotted-angular-menu.d.ts.map +1 -0
- package/types/slotted-angular-menubar.d.ts +90 -0
- package/types/slotted-angular-menubar.d.ts.map +1 -0
- package/types/slotted-angular-message-scroller.d.ts +151 -0
- package/types/slotted-angular-message-scroller.d.ts.map +1 -0
- package/types/slotted-angular-message.d.ts +348 -0
- package/types/slotted-angular-message.d.ts.map +1 -0
- package/types/slotted-angular-multi-select.d.ts +462 -0
- package/types/slotted-angular-multi-select.d.ts.map +1 -0
- package/types/slotted-angular-navigation-menu.d.ts +309 -0
- package/types/slotted-angular-navigation-menu.d.ts.map +1 -0
- package/types/slotted-angular-notification-center.d.ts +318 -0
- package/types/slotted-angular-notification-center.d.ts.map +1 -0
- package/types/slotted-angular-number-field.d.ts +402 -0
- package/types/slotted-angular-number-field.d.ts.map +1 -0
- package/types/slotted-angular-otp-input.d.ts +286 -0
- package/types/slotted-angular-otp-input.d.ts.map +1 -0
- package/types/slotted-angular-page-header.d.ts +334 -0
- package/types/slotted-angular-page-header.d.ts.map +1 -0
- package/types/slotted-angular-page.d.ts +141 -0
- package/types/slotted-angular-page.d.ts.map +1 -0
- package/types/slotted-angular-pagination.d.ts +213 -0
- package/types/slotted-angular-pagination.d.ts.map +1 -0
- package/types/slotted-angular-popover.d.ts +366 -0
- package/types/slotted-angular-popover.d.ts.map +1 -0
- package/types/slotted-angular-progress-indicator.d.ts +312 -0
- package/types/slotted-angular-progress-indicator.d.ts.map +1 -0
- package/types/slotted-angular-prompt-composer.d.ts +242 -0
- package/types/slotted-angular-prompt-composer.d.ts.map +1 -0
- package/types/slotted-angular-prose.d.ts +171 -0
- package/types/slotted-angular-prose.d.ts.map +1 -0
- package/types/slotted-angular-radio-group.d.ts +268 -0
- package/types/slotted-angular-radio-group.d.ts.map +1 -0
- package/types/slotted-angular-rating.d.ts +374 -0
- package/types/slotted-angular-rating.d.ts.map +1 -0
- package/types/slotted-angular-result-state.d.ts +217 -0
- package/types/slotted-angular-result-state.d.ts.map +1 -0
- package/types/slotted-angular-saved-views.d.ts +198 -0
- package/types/slotted-angular-saved-views.d.ts.map +1 -0
- package/types/slotted-angular-scroll-area.d.ts +186 -0
- package/types/slotted-angular-scroll-area.d.ts.map +1 -0
- package/types/slotted-angular-section.d.ts +143 -0
- package/types/slotted-angular-section.d.ts.map +1 -0
- package/types/slotted-angular-segmented-control.d.ts +251 -0
- package/types/slotted-angular-segmented-control.d.ts.map +1 -0
- package/types/slotted-angular-select.d.ts +507 -0
- package/types/slotted-angular-select.d.ts.map +1 -0
- package/types/slotted-angular-side-navigation.d.ts +373 -0
- package/types/slotted-angular-side-navigation.d.ts.map +1 -0
- package/types/slotted-angular-skeleton.d.ts +198 -0
- package/types/slotted-angular-skeleton.d.ts.map +1 -0
- package/types/slotted-angular-slider.d.ts +216 -0
- package/types/slotted-angular-slider.d.ts.map +1 -0
- package/types/slotted-angular-sparkline.d.ts +106 -0
- package/types/slotted-angular-sparkline.d.ts.map +1 -0
- package/types/slotted-angular-split-button.d.ts +180 -0
- package/types/slotted-angular-split-button.d.ts.map +1 -0
- package/types/slotted-angular-splitter.d.ts +206 -0
- package/types/slotted-angular-splitter.d.ts.map +1 -0
- package/types/slotted-angular-stack.d.ts +38 -0
- package/types/slotted-angular-stack.d.ts.map +1 -0
- package/types/slotted-angular-stat-card.d.ts +232 -0
- package/types/slotted-angular-stat-card.d.ts.map +1 -0
- package/types/slotted-angular-status-indicator.d.ts +106 -0
- package/types/slotted-angular-status-indicator.d.ts.map +1 -0
- package/types/slotted-angular-stepper.d.ts +198 -0
- package/types/slotted-angular-stepper.d.ts.map +1 -0
- package/types/slotted-angular-switch.d.ts +243 -0
- package/types/slotted-angular-switch.d.ts.map +1 -0
- package/types/slotted-angular-table-of-contents.d.ts +210 -0
- package/types/slotted-angular-table-of-contents.d.ts.map +1 -0
- package/types/slotted-angular-table.d.ts +888 -0
- package/types/slotted-angular-table.d.ts.map +1 -0
- package/types/slotted-angular-tabs.d.ts +340 -0
- package/types/slotted-angular-tabs.d.ts.map +1 -0
- package/types/slotted-angular-tag.d.ts +279 -0
- package/types/slotted-angular-tag.d.ts.map +1 -0
- package/types/slotted-angular-tags-input.d.ts +302 -0
- package/types/slotted-angular-tags-input.d.ts.map +1 -0
- package/types/slotted-angular-text-field.d.ts +334 -0
- package/types/slotted-angular-text-field.d.ts.map +1 -0
- package/types/slotted-angular-textarea.d.ts +150 -0
- package/types/slotted-angular-textarea.d.ts.map +1 -0
- package/types/slotted-angular-theme.d.ts +26 -0
- package/types/slotted-angular-theme.d.ts.map +1 -0
- package/types/slotted-angular-time-field.d.ts +300 -0
- package/types/slotted-angular-time-field.d.ts.map +1 -0
- package/types/slotted-angular-time-picker.d.ts +260 -0
- package/types/slotted-angular-time-picker.d.ts.map +1 -0
- package/types/slotted-angular-time-range-picker.d.ts +401 -0
- package/types/slotted-angular-time-range-picker.d.ts.map +1 -0
- package/types/slotted-angular-timeline.d.ts +329 -0
- package/types/slotted-angular-timeline.d.ts.map +1 -0
- package/types/slotted-angular-toast.d.ts +340 -0
- package/types/slotted-angular-toast.d.ts.map +1 -0
- package/types/slotted-angular-toggle-group.d.ts +167 -0
- package/types/slotted-angular-toggle-group.d.ts.map +1 -0
- package/types/slotted-angular-toggle.d.ts +106 -0
- package/types/slotted-angular-toggle.d.ts.map +1 -0
- package/types/slotted-angular-toolbar.d.ts +252 -0
- package/types/slotted-angular-toolbar.d.ts.map +1 -0
- package/types/slotted-angular-tooltip.d.ts +388 -0
- package/types/slotted-angular-tooltip.d.ts.map +1 -0
- package/types/slotted-angular-top-navigation.d.ts +442 -0
- package/types/slotted-angular-top-navigation.d.ts.map +1 -0
- package/types/slotted-angular-tour.d.ts +440 -0
- package/types/slotted-angular-tour.d.ts.map +1 -0
- package/types/slotted-angular-transfer.d.ts +296 -0
- package/types/slotted-angular-transfer.d.ts.map +1 -0
- package/types/slotted-angular-tree.d.ts +499 -0
- package/types/slotted-angular-tree.d.ts.map +1 -0
- package/types/slotted-angular-typography.d.ts +89 -0
- package/types/slotted-angular-typography.d.ts.map +1 -0
- package/types/slotted-angular-upload.d.ts +365 -0
- package/types/slotted-angular-upload.d.ts.map +1 -0
- package/types/slotted-angular-visually-hidden.d.ts +19 -0
- package/types/slotted-angular-visually-hidden.d.ts.map +1 -0
- package/types/slotted-angular-wizard.d.ts +441 -0
- package/types/slotted-angular-wizard.d.ts.map +1 -0
- package/types/slotted-angular.d.ts +3 -0
- package/types/slotted-angular.d.ts.map +1 -0
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
<!-- index: ./index.md -->
|
|
2
|
+
# status-indicator
|
|
3
|
+
|
|
4
|
+
`data-ui="status-indicator"` · Colored mark and label for a status.
|
|
5
|
+
|
|
6
|
+
## Import
|
|
7
|
+
|
|
8
|
+
```ts
|
|
9
|
+
import {
|
|
10
|
+
SlStatusIndicator,
|
|
11
|
+
provideStatusIndicatorDefaults,
|
|
12
|
+
} from '@slotted/angular/status-indicator';
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Selector: `[slStatusIndicator]` · exportAs: `slStatusIndicator`
|
|
16
|
+
|
|
17
|
+
## Minimal example
|
|
18
|
+
|
|
19
|
+
Excerpt — not a complete module
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<span slStatusIndicator status="success">Healthy</span>
|
|
23
|
+
|
|
24
|
+
<!-- With nothing projected, the status names itself. -->
|
|
25
|
+
<span slStatusIndicator status="success"></span>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Anatomy
|
|
29
|
+
|
|
30
|
+
| Part | Element | Required |
|
|
31
|
+
| --- | --- | --- |
|
|
32
|
+
| `root` | the consumer’s element | yes |
|
|
33
|
+
| `mark` | span | yes |
|
|
34
|
+
| `label` | span | yes |
|
|
35
|
+
| `announcement` | span | no |
|
|
36
|
+
|
|
37
|
+
## Props
|
|
38
|
+
|
|
39
|
+
| Name | Type | Default | Applies to | Description |
|
|
40
|
+
| --- | --- | --- | --- | --- |
|
|
41
|
+
| `status` | `'neutral' \| 'info' \| 'success' \| 'warning' \| 'danger' \| 'unknown'` | neutral | SlStatusIndicator | The operational state. Each value owns a tone and a glyph; the vocabulary is closed, so a domain status maps onto one of the six and projects its own words |
|
|
42
|
+
| `mark` | `'dot' \| 'icon'` | dot | SlStatusIndicator | dot is the compact chromatic mark; icon carries a distinct silhouette per status and is the alternative that does not depend on colour |
|
|
43
|
+
| `size` | `'sm' \| 'md' \| 'lg'` | md | SlStatusIndicator | Reads the control type and glyph scales, so all three steps answer density |
|
|
44
|
+
| `live` | `'off' \| 'polite' \| 'assertive'` | off | SlStatusIndicator | Whether a change is announced. polite writes role="status"; assertive writes role="alert" and interrupts. A role written on the host is read first and never replaced |
|
|
45
|
+
| `pulse` | `boolean` | false | SlStatusIndicator | A wave leaving the dot, for a change happening now. Not drawn on an icon mark, and withdrawn under reduced motion and under forced colours, so it is never the only carrier |
|
|
46
|
+
| `label` | `string` | — | SlStatusIndicator | What a reader hears when nothing is projected. Ignored when something is. Falls back to the status’s word in the catalog |
|
|
47
|
+
| `messages` | `Partial<StatusIndicatorMessages>` | — | SlStatusIndicator | Words laid over the language in force, key by key: the word each status is heard as when nothing is projected (neutral, info, success, warning, danger, unknown) |
|
|
48
|
+
| `ng-content` | `projected content` | — | SlStatusIndicator | The visible words, which are also the accessible name. Its fallback content is the clipped word, so the template itself decides which of the two a reader gets |
|
|
49
|
+
| `host element` | `any` | — | SlStatusIndicator | The selector is a bare attribute, so the element stays the consumer’s: a td, an anchor, a list item. Its own attributes and events are untouched |
|
|
50
|
+
| `exportAs` | `'slStatusIndicator'` | — | SlStatusIndicator | Reaches the instance from a template — name(), markValue(), sizeValue() and liveValue() are the resolved values after the provider |
|
|
51
|
+
| `provideStatusIndicatorDefaults` | `{ mark, size, live }` | — | an injector | Sets the three once for an application or a route. An explicit input still wins |
|
|
52
|
+
| `outputs` | `none` | — | SlStatusIndicator | The family emits nothing. status is the application’s fact about a system this component cannot see, so there is no value for it to request and no reason to carry |
|
|
53
|
+
|
|
54
|
+
## Axes and defaults
|
|
55
|
+
|
|
56
|
+
| Axis | Values | Default |
|
|
57
|
+
| --- | --- | --- |
|
|
58
|
+
| `status` | `neutral`, `info`, `success`, `warning`, `danger`, `unknown` | `neutral` |
|
|
59
|
+
| `mark` | `dot`, `icon` | `dot` |
|
|
60
|
+
| `size` | `sm`, `md`, `lg` | `md` |
|
|
61
|
+
| `live` | `off`, `polite`, `assertive` | `off` |
|
|
62
|
+
|
|
63
|
+
## Rules
|
|
64
|
+
|
|
65
|
+
- There is no status-indicator pattern in the WAI-ARIA Authoring Practices: the pattern index carries thirty entries and none of them is this family. The applicable guidance is the ARIA status role, WCAG 2.2 1.4.1 Use of Color and 1.4.11 Non-text Contrast, and each is answered below.
|
|
66
|
+
- The name is always real text in the document — the projected content, or the status’s own word clipped by visually-hidden. role="img" with an aria-label, which is Fluent’s answer, is deliberately not used: text is what lets a live region announce its own contents, lets an aria-labelledby elsewhere point at it, and lets a page search find the word.
|
|
67
|
+
- Colour is never the only carrier. Every indicator has words, and mark="icon" adds a distinct silhouette per status — six circles — so the six survive greyscale, the high-contrast scheme, and the operating system’s forced colours, where every author colour is replaced and the glyph is all that is left.
|
|
68
|
+
- Every dot fill clears the 3:1 that WCAG 2.2 1.4.11 asks of a graphic against the surface in the light and dark schemes, except warning, whose yellow is 1.53:1 on white; that dot alone is rimmed in the warning border role, 2.94:1. The word beside the dot carries the status, so the dot is never the only carrier.
|
|
69
|
+
- live="polite" writes role="status", which the platform gives an implicit aria-live="polite" and aria-atomic="true", so the mark and its word are announced as one thing rather than as two events. live="assertive" writes role="alert" and interrupts, which the APG reserves for a message needing immediate attention. A role written on the host element is read once through HostAttributeToken and kept.
|
|
70
|
+
- The pulse is withdrawn under prefers-reduced-motion rather than shortened, because an endless animation has to stop; a wave frozen halfway through an expansion is a rendering fault rather than a state. Nothing is lost, since the tone, the glyph and the word were already carrying the status.
|
|
71
|
+
- Nothing in the family is focusable on its own and no key is bound. The focus ring is painted for the case a consumer creates — the directive on their own anchor or button — so the ring is never missing where focus can land.
|
|
72
|
+
|
|
73
|
+
## Tokens
|
|
74
|
+
|
|
75
|
+
`--slotted-border-strong`, `--slotted-border-width-thick`, `--slotted-border-width-thin`, `--slotted-control-font-family`, `--slotted-control-font-size-lg`, `--slotted-control-font-size-md`, `--slotted-control-font-size-sm`, `--slotted-control-icon-size-lg`, `--slotted-control-icon-size-md`, `--slotted-control-icon-size-sm`, `--slotted-duration-loop-slow`, `--slotted-duration-short`, `--slotted-easing-enter`, `--slotted-easing-standard`, `--slotted-focus-ring-color`, `--slotted-focus-ring-offset`, `--slotted-focus-ring-width`, `--slotted-line-height-md`, `--slotted-radius-full`, `--slotted-space-1`, `--slotted-space-3`, `--slotted-space-4`, `--slotted-status-indicator-font-family`, `--slotted-status-indicator-mark-border-color`, `--slotted-status-indicator-mark-border-width`, `--slotted-text-muted`, `--slotted-tone-accent-solid`, `--slotted-tone-accent-text`, `--slotted-tone-danger-solid`, `--slotted-tone-danger-text`, `--slotted-tone-secondary-text`, `--slotted-tone-success-solid`, `--slotted-tone-success-text`, `--slotted-tone-warning-border`, `--slotted-tone-warning-solid`, `--slotted-tone-warning-text`
|
|
76
|
+
|
|
77
|
+
## Examples
|
|
78
|
+
|
|
79
|
+
### The six operational states
|
|
80
|
+
|
|
81
|
+
Each maps onto one of the library’s five tones and owns one glyph. neutral and unknown share a tone, so the mark is what tells “nothing is happening” from “nobody knows”.
|
|
82
|
+
|
|
83
|
+
Excerpt — not a complete module
|
|
84
|
+
|
|
85
|
+
```html
|
|
86
|
+
<span slStatusIndicator status="neutral">Draft</span>
|
|
87
|
+
<span slStatusIndicator status="info">Live</span>
|
|
88
|
+
<span slStatusIndicator status="success">Healthy</span>
|
|
89
|
+
<span slStatusIndicator status="warning">Degraded</span>
|
|
90
|
+
<span slStatusIndicator status="danger">Failed</span>
|
|
91
|
+
<span slStatusIndicator status="unknown">No data</span>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### The dot, and the mark that does not need colour
|
|
95
|
+
|
|
96
|
+
A dot is compact and chromatic, so the words beside it carry the meaning. An icon carries a distinct silhouette per status, which is what WCAG 2.2 1.4.1 asks for where the words cannot be shown.
|
|
97
|
+
|
|
98
|
+
Excerpt — not a complete module
|
|
99
|
+
|
|
100
|
+
```html
|
|
101
|
+
<span slStatusIndicator status="warning">Degraded</span>
|
|
102
|
+
<span slStatusIndicator status="warning" mark="icon">Degraded</span>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### How large the indicator is
|
|
106
|
+
|
|
107
|
+
Type and glyph read the control scales, the only ones the theme restates per density, so a status shrinks with the table row it sits in rather than pushing that row taller.
|
|
108
|
+
|
|
109
|
+
Excerpt — not a complete module
|
|
110
|
+
|
|
111
|
+
```html
|
|
112
|
+
<span slStatusIndicator status="success" size="sm">Healthy</span>
|
|
113
|
+
<span slStatusIndicator status="success" size="lg">Healthy</span>
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### A change happening now
|
|
117
|
+
|
|
118
|
+
A wave leaves the dot and fades, then rests before the next beat. An icon mark does not pulse. It is for a value moving while the reader watches — a deploy, a reindex, an error rate climbing — and never decoration on a status that settled a week ago.
|
|
119
|
+
|
|
120
|
+
Excerpt — not a complete module
|
|
121
|
+
|
|
122
|
+
```html
|
|
123
|
+
<span slStatusIndicator status="info" pulse>Deploying to production</span>
|
|
124
|
+
|
|
125
|
+
<!-- Not this: nothing is changing. -->
|
|
126
|
+
<span slStatusIndicator status="success" pulse>Healthy since Tuesday</span>
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### What a screen reader hears when the status changes
|
|
130
|
+
|
|
131
|
+
off by default, because a status already on the page when it loaded is not news. polite waits for a pause; assertive interrupts, and belongs to something a reader has to act on now.
|
|
132
|
+
|
|
133
|
+
Excerpt — not a complete module
|
|
134
|
+
|
|
135
|
+
```html
|
|
136
|
+
<span slStatusIndicator status="success">Healthy</span>
|
|
137
|
+
|
|
138
|
+
<span slStatusIndicator status="info" live="polite">Deploying</span>
|
|
139
|
+
|
|
140
|
+
<span slStatusIndicator status="danger" live="assertive">Region offline</span>
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Where a status actually lives
|
|
144
|
+
|
|
145
|
+
A column of services, and a header where one status stands for a whole page. The words take the page’s own colour, so the status column reads as easily as the one beside it.
|
|
146
|
+
|
|
147
|
+
Excerpt — not a complete module
|
|
148
|
+
|
|
149
|
+
```html
|
|
150
|
+
<tr>
|
|
151
|
+
<td>checkout-api</td>
|
|
152
|
+
<td slStatusIndicator status="success" size="sm">Healthy</td>
|
|
153
|
+
</tr>
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Content the family did not choose
|
|
157
|
+
|
|
158
|
+
A status that is a sentence, a container digest with nothing to break on, and a German label: the label wraps, the token breaks, and the mark stays on the first line of all three.
|
|
159
|
+
|
|
160
|
+
Excerpt — not a complete module
|
|
161
|
+
|
|
162
|
+
```html
|
|
163
|
+
<span slStatusIndicator status="warning" mark="icon">
|
|
164
|
+
Waiting for approval from the security review board
|
|
165
|
+
</span>
|
|
166
|
+
|
|
167
|
+
<span slStatusIndicator status="danger">sha256:9f2b7c1de4a80b35c7f9a1e6d2408baf5c31</span>
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### Composition and escape hatches
|
|
171
|
+
|
|
172
|
+
The provider decides for a whole application, the host element stays the consumer’s, and a mark on the corner of an avatar is badge’s anchor rather than a second answer here.
|
|
173
|
+
|
|
174
|
+
Excerpt — not a complete module
|
|
175
|
+
|
|
176
|
+
```ts
|
|
177
|
+
bootstrapApplication(App, {
|
|
178
|
+
providers: [provideStatusIndicatorDefaults({ mark: 'icon', size: 'sm' })],
|
|
179
|
+
});
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### What a reader hears
|
|
183
|
+
|
|
184
|
+
A mark with nothing projected still carries its own word, clipped rather than absent — so it is announced, findable by a page search, and available to an aria-labelledby elsewhere.
|
|
185
|
+
|
|
186
|
+
Excerpt — not a complete module
|
|
187
|
+
|
|
188
|
+
```html
|
|
189
|
+
<!-- “Error”, from the family’s own table. -->
|
|
190
|
+
<span slStatusIndicator status="danger"></span>
|
|
191
|
+
|
|
192
|
+
<!-- “Deploy failed”, from the application. -->
|
|
193
|
+
<span slStatusIndicator status="danger" label="Deploy failed"></span>
|
|
194
|
+
|
|
195
|
+
<!-- “Build 4821 failed”, from the words on the page. -->
|
|
196
|
+
<span slStatusIndicator status="danger">Build 4821 failed</span>
|
|
197
|
+
```
|
|
@@ -0,0 +1,451 @@
|
|
|
1
|
+
{
|
|
2
|
+
"family": "stepper",
|
|
3
|
+
"ui": "stepper",
|
|
4
|
+
"binding": "angular",
|
|
5
|
+
"catalog": {
|
|
6
|
+
"group": "Navigation",
|
|
7
|
+
"summary": "Shows progress through ordered steps."
|
|
8
|
+
},
|
|
9
|
+
"axes": {
|
|
10
|
+
"orientation": [
|
|
11
|
+
"horizontal",
|
|
12
|
+
"vertical"
|
|
13
|
+
],
|
|
14
|
+
"labelPlacement": [
|
|
15
|
+
"end",
|
|
16
|
+
"bottom"
|
|
17
|
+
],
|
|
18
|
+
"navigation": [
|
|
19
|
+
"button",
|
|
20
|
+
"link",
|
|
21
|
+
"none"
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
"members": {
|
|
25
|
+
"stepper": {
|
|
26
|
+
"nativeElement": "div",
|
|
27
|
+
"defaults": {
|
|
28
|
+
"defaultStep": 0,
|
|
29
|
+
"orientation": "horizontal",
|
|
30
|
+
"labelPlacement": "end",
|
|
31
|
+
"navigation": "button",
|
|
32
|
+
"linear": false,
|
|
33
|
+
"autoComplete": false,
|
|
34
|
+
"disabled": false,
|
|
35
|
+
"loading": false,
|
|
36
|
+
"invalid": false
|
|
37
|
+
},
|
|
38
|
+
"capabilities": [
|
|
39
|
+
"current",
|
|
40
|
+
"orientation",
|
|
41
|
+
"placement",
|
|
42
|
+
"disabled",
|
|
43
|
+
"loading",
|
|
44
|
+
"invalid",
|
|
45
|
+
"wiring"
|
|
46
|
+
],
|
|
47
|
+
"states": [
|
|
48
|
+
"default",
|
|
49
|
+
"hover",
|
|
50
|
+
"active",
|
|
51
|
+
"focus-visible",
|
|
52
|
+
"disabled",
|
|
53
|
+
"loading",
|
|
54
|
+
"invalid",
|
|
55
|
+
"current",
|
|
56
|
+
"complete"
|
|
57
|
+
],
|
|
58
|
+
"parts": [
|
|
59
|
+
"root",
|
|
60
|
+
"list",
|
|
61
|
+
"item",
|
|
62
|
+
"trigger",
|
|
63
|
+
"marker",
|
|
64
|
+
"label",
|
|
65
|
+
"description",
|
|
66
|
+
"status",
|
|
67
|
+
"separator",
|
|
68
|
+
"panel"
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"docs": {
|
|
73
|
+
"stepper": {
|
|
74
|
+
"imports": {
|
|
75
|
+
"source": "import {\n SlStepper,\n SlStepperList,\n SlStepperNext,\n SlStepperPanel,\n SlStepperPrevious,\n SlStepperStep,\n provideStepperDefaults,\n} from '@slotted/angular/stepper';",
|
|
76
|
+
"selector": "[slStepper], ol[slStepperList], li[slStepperStep], [slStepperPanel], button[slStepperNext], button[slStepperPrevious]",
|
|
77
|
+
"exportAs": "slStepper, slStepperList, slStepperStep, slStepperPanel, slStepperNext, slStepperPrevious"
|
|
78
|
+
},
|
|
79
|
+
"anatomy": [
|
|
80
|
+
{
|
|
81
|
+
"part": "root",
|
|
82
|
+
"element": "div",
|
|
83
|
+
"required": true,
|
|
84
|
+
"purpose": "The consumer’s own element, carrying data-ui=\"stepper\" and the three axes as data attributes. It owns the step, the count and the container the reflow measures, and it claims no landmark: a second navigation region on a page whose main navigation is elsewhere is noise."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"part": "list",
|
|
88
|
+
"element": "ol",
|
|
89
|
+
"required": true,
|
|
90
|
+
"purpose": "The ordered list, which is what carries the sequence and the set size without a single ARIA attribute. It holds the accessible name of the flow and handles the arrow keys, because only the list knows every header."
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"part": "item",
|
|
94
|
+
"element": "li",
|
|
95
|
+
"required": true,
|
|
96
|
+
"purpose": "One step, and the element every state attribute lands on: data-current, data-complete, data-invalid, data-disabled and data-loading. The marker, the label and the connector are all styled from here."
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"part": "trigger",
|
|
100
|
+
"element": "button, a or span",
|
|
101
|
+
"required": true,
|
|
102
|
+
"purpose": "The step header. navigation decides which of the three it is, and a span is the read-only progress indicator the field ships as a separate component. Carries aria-current=\"step\" and, in a linear flow it has not opened, aria-disabled."
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"part": "marker",
|
|
106
|
+
"element": "span",
|
|
107
|
+
"required": true,
|
|
108
|
+
"purpose": "The circle holding the step’s number, replaced by a check when the step is complete and by a cross when it failed. Hidden from assistive technology, because the status part already says all of it in words."
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"part": "label",
|
|
112
|
+
"element": "span",
|
|
113
|
+
"required": true,
|
|
114
|
+
"purpose": "The step’s name, and the block the description renders inside — a marker sits against the whole text block rather than against its first line."
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"part": "description",
|
|
118
|
+
"element": "span",
|
|
119
|
+
"required": false,
|
|
120
|
+
"purpose": "The second line under the step’s name. It renders inside label rather than beside it, so a two-line step still lines its marker up with both lines."
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"part": "status",
|
|
124
|
+
"element": "span",
|
|
125
|
+
"required": true,
|
|
126
|
+
"purpose": "The visually hidden run that turns \"2\" into \"Cart, Step 2 of 4, current\". It is rendered with the visually-hidden family and prefixed with a comma, because nothing separates two elements’ text when the accessible name is computed."
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"part": "separator",
|
|
130
|
+
"element": "span",
|
|
131
|
+
"required": false,
|
|
132
|
+
"purpose": "The connector between two markers, drawn after every step but the last and never announced. It fills for a step the reader has walked past, which is distance travelled rather than work completed."
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"part": "panel",
|
|
136
|
+
"element": "div",
|
|
137
|
+
"required": false,
|
|
138
|
+
"purpose": "The content of the step it is written inside, shown only while that step is current. A group labelled by its own trigger rather than a tabpanel, and focusable so a consumer moving focus after a step change has somewhere to put it."
|
|
139
|
+
}
|
|
140
|
+
],
|
|
141
|
+
"api": [
|
|
142
|
+
{
|
|
143
|
+
"name": "step",
|
|
144
|
+
"type": "number",
|
|
145
|
+
"defaultValue": "—",
|
|
146
|
+
"appliesTo": "slStepper",
|
|
147
|
+
"description": "Present means controlled, for the life of the component. The family then only asks to move."
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"name": "defaultStep",
|
|
151
|
+
"type": "number",
|
|
152
|
+
"defaultValue": "0",
|
|
153
|
+
"appliesTo": "slStepper",
|
|
154
|
+
"description": "What an uncontrolled stepper starts from, read once, and where reset() returns to"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"name": "orientation",
|
|
158
|
+
"type": "'horizontal' | 'vertical'",
|
|
159
|
+
"defaultValue": "horizontal",
|
|
160
|
+
"appliesTo": "slStepper",
|
|
161
|
+
"description": "Which way the flow runs. A horizontal one still becomes a column below its own breakpoint."
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"name": "labelPlacement",
|
|
165
|
+
"type": "'end' | 'bottom'",
|
|
166
|
+
"defaultValue": "end",
|
|
167
|
+
"appliesTo": "slStepper",
|
|
168
|
+
"description": "The name beside the marker, or under it"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"name": "navigation",
|
|
172
|
+
"type": "'button' | 'link' | 'none'",
|
|
173
|
+
"defaultValue": "button",
|
|
174
|
+
"appliesTo": "slStepper",
|
|
175
|
+
"description": "What a header is. none renders a span, which is a read-only progress indicator."
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"name": "linear",
|
|
179
|
+
"type": "boolean",
|
|
180
|
+
"defaultValue": "false",
|
|
181
|
+
"appliesTo": "slStepper",
|
|
182
|
+
"description": "Requires every earlier step to be complete before a later one can be reached"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"name": "autoComplete",
|
|
186
|
+
"type": "boolean",
|
|
187
|
+
"defaultValue": "false",
|
|
188
|
+
"appliesTo": "slStepper",
|
|
189
|
+
"description": "Treats every step before the current one as complete. Off, because walking past a step is not finishing it."
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"name": "messages",
|
|
193
|
+
"type": "PartialMessages<StepperMessages>",
|
|
194
|
+
"defaultValue": "—",
|
|
195
|
+
"appliesTo": "slStepper",
|
|
196
|
+
"description": "Words laid over the language in force, key by key: the name of the sequence announced on the list (label), the position, and the five statuses a step announces"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"name": "complete",
|
|
200
|
+
"type": "boolean",
|
|
201
|
+
"defaultValue": "—",
|
|
202
|
+
"appliesTo": "li[slStepperStep]",
|
|
203
|
+
"description": "Whether the consumer says the work on this step is done. Unstated defers to autoComplete."
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"name": "disabled",
|
|
207
|
+
"type": "boolean",
|
|
208
|
+
"defaultValue": "false",
|
|
209
|
+
"appliesTo": "li[slStepperStep]",
|
|
210
|
+
"description": "Takes the header out of reach, in a linear flow or outside one. It keeps its tab stop."
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"name": "loading",
|
|
214
|
+
"type": "boolean",
|
|
215
|
+
"defaultValue": "false",
|
|
216
|
+
"appliesTo": "li[slStepperStep]",
|
|
217
|
+
"description": "The step is waiting on something: the header stops answering and the status says so"
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
"name": "invalid",
|
|
221
|
+
"type": "boolean",
|
|
222
|
+
"defaultValue": "false",
|
|
223
|
+
"appliesTo": "li[slStepperStep]",
|
|
224
|
+
"description": "The work on this step failed. It outranks complete in the marker and in the announcement."
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"name": "description",
|
|
228
|
+
"type": "string",
|
|
229
|
+
"defaultValue": "—",
|
|
230
|
+
"appliesTo": "li[slStepperStep]",
|
|
231
|
+
"description": "The second line under the step’s name"
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
"name": "href",
|
|
235
|
+
"type": "string",
|
|
236
|
+
"defaultValue": "—",
|
|
237
|
+
"appliesTo": "li[slStepperStep]",
|
|
238
|
+
"description": "The destination, used only when navigation is link"
|
|
239
|
+
}
|
|
240
|
+
],
|
|
241
|
+
"composition": [
|
|
242
|
+
{
|
|
243
|
+
"name": "provideStepperDefaults",
|
|
244
|
+
"type": "labelPlacement | linear | navigation | orientation",
|
|
245
|
+
"defaultValue": "—",
|
|
246
|
+
"appliesTo": "Application",
|
|
247
|
+
"description": "Sets those six once for the whole injector; an input on the stepper still wins"
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"name": "exportAs=\"slStepper\"",
|
|
251
|
+
"type": "template reference",
|
|
252
|
+
"defaultValue": "—",
|
|
253
|
+
"appliesTo": "Template",
|
|
254
|
+
"description": "Reaches the instance: step(), count(), percent(), canGoNext(), goToStep(), next(), previous() and reset()"
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"name": "slStepperNext, slStepperPrevious",
|
|
258
|
+
"type": "directive",
|
|
259
|
+
"defaultValue": "—",
|
|
260
|
+
"appliesTo": "The consumer’s button",
|
|
261
|
+
"description": "Moving one step is a handler on a button you styled, the shape matStepperNext already taught Angular consumers. The directive disables the button at each bound and never paints it."
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
"name": "ng-content",
|
|
265
|
+
"type": "projection",
|
|
266
|
+
"defaultValue": "—",
|
|
267
|
+
"appliesTo": "li[slStepperStep]",
|
|
268
|
+
"description": "Whatever a step should carry beyond its header — a panel, a form, a summary — projected after the trigger and before the connector"
|
|
269
|
+
}
|
|
270
|
+
],
|
|
271
|
+
"events": [
|
|
272
|
+
{
|
|
273
|
+
"name": "stepChange",
|
|
274
|
+
"payload": "ChangeRequest<number>",
|
|
275
|
+
"when": "Before the step moves. The request carries the value it replaces, the reason — pointer, keyboard or programmatic — and the originating event. Calling request.cancel() commits nothing, which is how a consumer refuses a move and the reason this family ships no isStepValid and no onStepInvalid."
|
|
276
|
+
}
|
|
277
|
+
],
|
|
278
|
+
"accessibility": [
|
|
279
|
+
"The family refuses role=\"tablist\". Angular Material gives a horizontal stepper that role and section 7 of docs/component-features.md forbids it in the Tabs entry itself: tabs are for peer views in one context, not for the steps of a process. What replaces it is ol and li for the sequence and the set size, a name on the list, and a status inside every header — the cost is that a screen reader will not announce \"tab 2 of 5\" or offer tab-specific navigation.",
|
|
280
|
+
"The current step carries aria-current=\"step\" on its trigger, which is the value the ARIA specification names for a link inside a step indicator. The item mirrors it as data-current, because the marker, the label and the connector are styled from the item and none of them is the trigger.",
|
|
281
|
+
"A step a linear flow has not opened carries aria-disabled rather than disabled, so it keeps its tab stop: a reader can find out the step exists and that it is not yet available, instead of finding nothing at all.",
|
|
282
|
+
"Every header carries a visually hidden status, so what a reader hears is \"Cart, Step 2 of 4, current\" rather than \"2\". The marker itself is aria-hidden, because it would otherwise announce the number twice, and the status is prefixed with a comma because nothing separates two elements’ text when a name is computed.",
|
|
283
|
+
"A panel is a group labelled by its own trigger and given tabindex=\"-1\", so a consumer who moves focus after a step change has somewhere to put it. It is not a tabpanel, for the same reason the root is not a tablist.",
|
|
284
|
+
"The arrows reach every header, exactly where Tab reaches — they were added on top of the tab sequence rather than replacing it with a roving tab stop, and they follow the reading direction, so ArrowRight moves to the previous step in a right-to-left document. Home and End go to the ends, and the block arrows answer only a vertical flow.",
|
|
285
|
+
"No status depends on colour alone: a complete step fills its disc and shows a check, a failed one fills and shows a cross, the current one is a ring and a pending one an outline. Section 7 of the feature guide asks for exactly that."
|
|
286
|
+
]
|
|
287
|
+
}
|
|
288
|
+
},
|
|
289
|
+
"tokens": [
|
|
290
|
+
"--slotted-border-subtle",
|
|
291
|
+
"--slotted-border-width-thick",
|
|
292
|
+
"--slotted-control-border-color",
|
|
293
|
+
"--slotted-control-font-size-md",
|
|
294
|
+
"--slotted-control-gap-md",
|
|
295
|
+
"--slotted-control-height-md",
|
|
296
|
+
"--slotted-control-icon-size-md",
|
|
297
|
+
"--slotted-control-radius",
|
|
298
|
+
"--slotted-control-transition-duration",
|
|
299
|
+
"--slotted-control-transition-easing",
|
|
300
|
+
"--slotted-disabled-border",
|
|
301
|
+
"--slotted-disabled-foreground",
|
|
302
|
+
"--slotted-focus-ring-color",
|
|
303
|
+
"--slotted-focus-ring-offset",
|
|
304
|
+
"--slotted-focus-ring-width",
|
|
305
|
+
"--slotted-font-family-sans",
|
|
306
|
+
"--slotted-font-size-xs",
|
|
307
|
+
"--slotted-font-weight-medium",
|
|
308
|
+
"--slotted-font-weight-semibold",
|
|
309
|
+
"--slotted-line-height-sm",
|
|
310
|
+
"--slotted-radius-full",
|
|
311
|
+
"--slotted-space-1",
|
|
312
|
+
"--slotted-space-2",
|
|
313
|
+
"--slotted-space-3",
|
|
314
|
+
"--slotted-space-4",
|
|
315
|
+
"--slotted-space-5",
|
|
316
|
+
"--slotted-space-6",
|
|
317
|
+
"--slotted-space-8",
|
|
318
|
+
"--slotted-stepper-color",
|
|
319
|
+
"--slotted-stepper-color-muted",
|
|
320
|
+
"--slotted-stepper-column-inset",
|
|
321
|
+
"--slotted-stepper-connector-color",
|
|
322
|
+
"--slotted-stepper-connector-color-complete",
|
|
323
|
+
"--slotted-stepper-connector-gap",
|
|
324
|
+
"--slotted-stepper-connector-thickness",
|
|
325
|
+
"--slotted-stepper-description-font-size",
|
|
326
|
+
"--slotted-stepper-description-gap",
|
|
327
|
+
"--slotted-stepper-font-family",
|
|
328
|
+
"--slotted-stepper-font-size",
|
|
329
|
+
"--slotted-stepper-gap",
|
|
330
|
+
"--slotted-stepper-glyph-size",
|
|
331
|
+
"--slotted-stepper-label-color-invalid",
|
|
332
|
+
"--slotted-stepper-label-gap",
|
|
333
|
+
"--slotted-stepper-label-weight",
|
|
334
|
+
"--slotted-stepper-line-height",
|
|
335
|
+
"--slotted-stepper-marker-border",
|
|
336
|
+
"--slotted-stepper-marker-border-current",
|
|
337
|
+
"--slotted-stepper-marker-color-complete",
|
|
338
|
+
"--slotted-stepper-marker-color-current",
|
|
339
|
+
"--slotted-stepper-marker-color-invalid",
|
|
340
|
+
"--slotted-stepper-marker-press-strength",
|
|
341
|
+
"--slotted-stepper-marker-size",
|
|
342
|
+
"--slotted-stepper-marker-surface",
|
|
343
|
+
"--slotted-stepper-marker-surface-complete",
|
|
344
|
+
"--slotted-stepper-marker-surface-invalid",
|
|
345
|
+
"--slotted-stepper-marker-weight",
|
|
346
|
+
"--slotted-stepper-panel-gap",
|
|
347
|
+
"--slotted-stepper-radius",
|
|
348
|
+
"--slotted-stepper-step-gap",
|
|
349
|
+
"--slotted-stepper-track-gap",
|
|
350
|
+
"--slotted-stepper-track-min",
|
|
351
|
+
"--slotted-stepper-underline-offset",
|
|
352
|
+
"--slotted-text",
|
|
353
|
+
"--slotted-text-muted",
|
|
354
|
+
"--slotted-tone-accent-on-solid",
|
|
355
|
+
"--slotted-tone-accent-solid",
|
|
356
|
+
"--slotted-tone-accent-text",
|
|
357
|
+
"--slotted-tone-danger-on-solid",
|
|
358
|
+
"--slotted-tone-danger-solid",
|
|
359
|
+
"--slotted-tone-danger-text"
|
|
360
|
+
],
|
|
361
|
+
"examples": [
|
|
362
|
+
{
|
|
363
|
+
"id": "playground",
|
|
364
|
+
"title": "Playground",
|
|
365
|
+
"note": "Every input on one flow, driven by the controls below the canvas. Turn linear on and watch which headers stop being reachable while staying in the tab sequence.",
|
|
366
|
+
"language": "html",
|
|
367
|
+
"source": "<div slStepper [defaultStep]=\"1\" label=\"Checkout\">\n <ol slStepperList>\n <li slStepperStep label=\"Cart\" [complete]=\"true\"></li>\n <li slStepperStep label=\"Address\"></li>\n <li slStepperStep label=\"Payment\"></li>\n <li slStepperStep label=\"Review\"></li>\n </ol>\n</div>\n",
|
|
368
|
+
"verdict": "excerpt"
|
|
369
|
+
},
|
|
370
|
+
{
|
|
371
|
+
"id": "orientation",
|
|
372
|
+
"title": "Which way the flow runs",
|
|
373
|
+
"note": "Horizontal divides the width into equal columns so five markers line up however long their labels are; vertical runs the connector down the marker’s own centre line.",
|
|
374
|
+
"language": "html",
|
|
375
|
+
"source": "<div slStepper orientation=\"horizontal\">\n <ol slStepperList>\n …\n </ol>\n</div>\n\n<div slStepper orientation=\"vertical\">\n <ol slStepperList>\n …\n </ol>\n</div>\n",
|
|
376
|
+
"verdict": "excerpt"
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
"id": "statuses",
|
|
380
|
+
"title": "The four statuses, and the fifth that is not one",
|
|
381
|
+
"note": "Each is a fill and an edge rather than a colour alone: an outline for pending, a ring for current, a filled disc with a check for complete, a filled disc with a cross for a failure.",
|
|
382
|
+
"language": "html",
|
|
383
|
+
"source": "<li slStepperStep label=\"Complete\" [complete]=\"true\"></li>\n<li slStepperStep label=\"Failed\" invalid></li>\n<li slStepperStep label=\"Current\"></li>\n<li slStepperStep label=\"Pending\"></li>\n<li slStepperStep label=\"Closed\" [disabled]=\"true\"></li>\n",
|
|
384
|
+
"verdict": "excerpt"
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
"id": "linear",
|
|
388
|
+
"title": "A flow that has to be taken in order",
|
|
389
|
+
"note": "linear reaches backwards freely and forwards only as far as the first step whose predecessors are complete. Everything further carries aria-disabled and stays reachable by Tab.",
|
|
390
|
+
"language": "html",
|
|
391
|
+
"source": "<div slStepper linear (stepChange)=\"onStepChange($event)\">\n <ol slStepperList>\n …\n </ol>\n</div>\n",
|
|
392
|
+
"verdict": "excerpt"
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
"id": "navigation",
|
|
396
|
+
"title": "What a header is",
|
|
397
|
+
"note": "A button moves the step, a link carries a destination of its own, and none is a read-only progress indicator — one family covering what the field ships as two components.",
|
|
398
|
+
"language": "html",
|
|
399
|
+
"source": "<div slStepper navigation=\"button\">…</div>\n<div slStepper navigation=\"link\">\n <ol slStepperList>\n <li slStepperStep label=\"Cart\" href=\"/cart\"></li>\n </ol>\n</div>\n<div slStepper navigation=\"none\">…</div>\n",
|
|
400
|
+
"verdict": "excerpt"
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
"id": "placement",
|
|
404
|
+
"title": "Where the label sits",
|
|
405
|
+
"note": "end puts the name beside the marker and gives the connector whatever the label leaves; bottom centres the marker over its own label, which is what a row of five names needs.",
|
|
406
|
+
"language": "html",
|
|
407
|
+
"source": "<div slStepper labelPlacement=\"end\">…</div>\n<div slStepper labelPlacement=\"bottom\">…</div>\n",
|
|
408
|
+
"verdict": "excerpt"
|
|
409
|
+
},
|
|
410
|
+
{
|
|
411
|
+
"id": "panels",
|
|
412
|
+
"title": "The content of the step you are on",
|
|
413
|
+
"note": "A panel is a group labelled by its own header, shown only while that step is current, and the two buttons that move it are the consumer’s own with a directive on them.",
|
|
414
|
+
"language": "html",
|
|
415
|
+
"source": "<li slStepperStep label=\"Recipient\">\n <div slStepperPanel>The account number is being checked.</div>\n</li>\n\n<button slStepperPrevious type=\"button\">Back</button>\n<button slStepperNext type=\"button\">Continue</button>\n",
|
|
416
|
+
"verdict": "excerpt"
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
"id": "compact",
|
|
420
|
+
"title": "A row that runs out of width",
|
|
421
|
+
"note": "Below thirty rems of its own inline size a horizontal flow becomes a column, because five labels at 320 pixels are five columns two characters wide. Drag the stage edge to cross it.",
|
|
422
|
+
"language": "css",
|
|
423
|
+
"source": "/* The family declares its own container, so a stepper in a narrow panel\n reflows while the same stepper on a full page does not. */\n[data-ui='stepper'] {\n container-name: slotted-stepper;\n container-type: inline-size;\n}\n",
|
|
424
|
+
"verdict": "excerpt"
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
"id": "content",
|
|
428
|
+
"title": "Names the flow did not choose",
|
|
429
|
+
"note": "Six steps, a forty-character German compound and a second line under each name. The label wraps inside its own column and the markers stay on one line.",
|
|
430
|
+
"language": "html",
|
|
431
|
+
"source": "<li\n slStepperStep\n label=\"Zahlungsabwicklungseinstellungen\"\n description=\"Zuletzt geprüft am 14. August\"\n></li>\n",
|
|
432
|
+
"verdict": "excerpt"
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
"id": "composition",
|
|
436
|
+
"title": "Composition",
|
|
437
|
+
"note": "provideStepperDefaults decides for a whole injector, exportAs reaches the instance from a template, and the two advance directives sit on buttons the consumer styled themselves.",
|
|
438
|
+
"language": "ts",
|
|
439
|
+
"source": "bootstrapApplication(App, {\n providers: [provideStepperDefaults({ labelPlacement: 'bottom', linear: true })],\n});\n",
|
|
440
|
+
"verdict": "excerpt"
|
|
441
|
+
},
|
|
442
|
+
{
|
|
443
|
+
"id": "keyboard",
|
|
444
|
+
"title": "Keyboard and announcement",
|
|
445
|
+
"note": "Tab reaches every header, the arrows reach exactly the same ones, Home and End go to the ends, and Enter or Space moves to the focused step when the flow allows it.",
|
|
446
|
+
"language": "html",
|
|
447
|
+
"source": "<!-- \"Cart, Step 1 of 4, completed\" — the marker is hidden and the\n status part says the position and the state in words. -->\n<div slStepper [messages]=\"{ label: 'Checkout' }\" [defaultStep]=\"1\">\n <ol slStepperList>\n …\n </ol>\n</div>\n",
|
|
448
|
+
"verdict": "excerpt"
|
|
449
|
+
}
|
|
450
|
+
]
|
|
451
|
+
}
|