@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,315 @@
|
|
|
1
|
+
<!-- index: ./index.md -->
|
|
2
|
+
# time-picker
|
|
3
|
+
|
|
4
|
+
`data-ui="time-picker"` · Time field with a picker popover.
|
|
5
|
+
|
|
6
|
+
## Import
|
|
7
|
+
|
|
8
|
+
```ts
|
|
9
|
+
import { SlTimePicker, SlTimePickerOption, SlTimePickerPresets, SlTimePickerFooter } from '@slotted/angular/time-picker';
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Selector: `[slTimePicker]` · exportAs: `slTimePicker`
|
|
13
|
+
|
|
14
|
+
## Minimal example
|
|
15
|
+
|
|
16
|
+
Excerpt — not a complete module
|
|
17
|
+
|
|
18
|
+
```html
|
|
19
|
+
<div slField>
|
|
20
|
+
<label slFieldLabel>Hora de início</label>
|
|
21
|
+
<div slTimePicker clearable locale="pt-BR" name="inicio" [step]="900"></div>
|
|
22
|
+
</div>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Anatomy
|
|
26
|
+
|
|
27
|
+
| Part | Element | Required |
|
|
28
|
+
| --- | --- | --- |
|
|
29
|
+
| `root` | div, or the element render returns | yes |
|
|
30
|
+
| `control` | div | yes |
|
|
31
|
+
| `trigger` | button | yes |
|
|
32
|
+
| `positioner` | div | no |
|
|
33
|
+
| `content` | div | no |
|
|
34
|
+
| `head` | div | no |
|
|
35
|
+
| `now` | button | no |
|
|
36
|
+
| `presets` | div | no |
|
|
37
|
+
| `list` | div | no |
|
|
38
|
+
| `option` | div | no |
|
|
39
|
+
| `empty` | div | no |
|
|
40
|
+
| `footer` | div | no |
|
|
41
|
+
|
|
42
|
+
## Props
|
|
43
|
+
|
|
44
|
+
| Name | Type | Default | Applies to | Description |
|
|
45
|
+
| --- | --- | --- | --- | --- |
|
|
46
|
+
| `value` | `PlainTime \| null` | — | SlTimePicker | Present means the consumer owns the value. |
|
|
47
|
+
| `defaultValue` | `PlainTime \| null` | — | SlTimePicker | The value the picker starts from when nobody else writes one. |
|
|
48
|
+
| `open` | `boolean` | — | SlTimePicker | Present means the consumer owns whether the surface is showing. |
|
|
49
|
+
| `defaultOpen` | `boolean` | false | SlTimePicker | Whether the surface starts open. |
|
|
50
|
+
| `highlightedValue` | `PlainTime \| null` | — | SlTimePicker | Where the reader is in the list. The highlight is not the value, and moving it moves nothing. |
|
|
51
|
+
| `defaultHighlightedValue` | `PlainTime \| null` | — | SlTimePicker | Where the highlight starts, before the panel places it on the chosen time. |
|
|
52
|
+
| `min` | `PlainTime` | — | SlTimePicker | The earliest time the list offers and the value accepts. |
|
|
53
|
+
| `max` | `PlainTime` | — | SlTimePicker | The latest time the list offers and the value accepts. |
|
|
54
|
+
| `isTimeUnavailable` | `(time: PlainTime) => boolean` | — | SlTimePicker | Refuses particular times. A refused row is disabled by default rather than dropped. |
|
|
55
|
+
| `step` | `number` | 900 | SlTimePicker | Seconds between two offered times, counting from min when it is stated and from midnight when it is not. Ignored when options states the list. |
|
|
56
|
+
| `options` | `readonly PlainTime[]` | — | SlTimePicker | The times to offer, stated rather than stepped, in the consumer’s own order. It is what makes an irregular list and a second-level set expressible. |
|
|
57
|
+
| `maxOptions` | `number` | 1440 | SlTimePicker | How many rows the list may reach — a whole day at a one-minute step. Beyond it the list is cut and data-truncated says so. |
|
|
58
|
+
| `unavailableOptions` | `'disable' \| 'hide'` | disable | SlTimePicker | What a refused row looks like. Disabling is the default because a list that drops rows is a list whose step nobody can infer. |
|
|
59
|
+
| `locale` | `string` | provideSlotted | SlTimePicker | BCP 47. Decides how every row is written. Unset, the language in force decides. |
|
|
60
|
+
| `timeZone` | `string` | runtime | SlTimePicker | Which zone answers "what time is it now", for the opening position and the now control. |
|
|
61
|
+
| `hourCycle` | `12 \| 24` | locale | SlTimePicker | The question a consumer asks about the clock, passed through to the field and the rows. |
|
|
62
|
+
| `granularity` | `'hour' \| 'minute' \| 'second'` | minute | SlTimePicker | The smallest unit the field draws and the rows carry. |
|
|
63
|
+
| `referenceTime` | `PlainTime` | now | SlTimePicker | What "now" means for the opening position, the now control and the field’s durations. |
|
|
64
|
+
| `size` | `'sm' \| 'md' \| 'lg'` | md | SlTimePicker | The type step, matching the field around it. |
|
|
65
|
+
| `variant` | `'outline' \| 'subtle' \| 'plain'` | outline | SlTimePicker | How much frame the control shows at rest. |
|
|
66
|
+
| `placement` | `'bottom-start' \| 'bottom' \| 'bottom-end' \| 'top-start' \| 'top' \| 'top-end'` | bottom-start | SlTimePicker | Where the surface starts, before the positioner reads the room. |
|
|
67
|
+
| `closeOnSelect` | `'auto' \| 'always' \| 'never'` | auto | SlTimePicker | Whether choosing closes the surface. auto closes, because one press chooses a whole time. |
|
|
68
|
+
| `disabled` | `boolean` | — | SlTimePicker | Unstated rather than false, so the picker defers to the field around it. |
|
|
69
|
+
| `readOnly` | `boolean` | — | SlTimePicker | Readable and focusable, and not changeable. |
|
|
70
|
+
| `invalid` | `boolean` | — | SlTimePicker | Unstated rather than false. Retargets the focus ring. |
|
|
71
|
+
| `required` | `boolean` | — | SlTimePicker | Unstated rather than false. |
|
|
72
|
+
| `clearable` | `boolean` | false | SlTimePicker | Draws the field’s own clear button. |
|
|
73
|
+
| `name` | `string` | — | SlTimePicker | The name the hidden input carries the HH:mm:ss string under. |
|
|
74
|
+
| `messages` | `Partial<TimePickerMessages>` | — | SlTimePicker | Words laid over the language in force, key by key: the trigger’s name while nothing is chosen (choose) and once a time is (change, with a {time} slot), the now control (now), the empty panel (empty) and the description of a list cut short (truncated). |
|
|
75
|
+
| `slTimePickerPresets` | `directive` | — | SlTimePickerPresets | The consumer’s own shortcuts, in a column beside the list. |
|
|
76
|
+
| `slTimePickerFooter` | `directive` | — | SlTimePickerFooter | The consumer’s own actions, under the list. |
|
|
77
|
+
| `provideTimePickerDefaults` | `provider` | — | application | Sets step, maxOptions, unavailableOptions, placement, closeOnSelect, timeZone, hourCycle, granularity, size and variant once for everything under it. The locale and the words come from provideSlotted. |
|
|
78
|
+
| `slTimePickerOption` | `ng-template` | — | SlTimePicker | Draws what is inside one row, with the time as $implicit and label, selected, current and unavailable in the context. It is a template rather than a projected slot because it is re-rendered once per option — the case NgTemplateOutlet exists for. |
|
|
79
|
+
| `exportAs` | `slTimePicker` | — | SlTimePicker | A template reaches the instance for focus(), openSurface() and closeSurface(). |
|
|
80
|
+
| `ng-content` | `slot` | — | SlTimePicker | The presets and the footer are projected content on the consumer’s own elements, so nothing loses its semantics. |
|
|
81
|
+
| `(keydown)` | `EventListener` | — | SlTimePicker | The chord that opens the panel is handled on the control, so a consumer’s own listener on the same element runs first. |
|
|
82
|
+
|
|
83
|
+
## Events
|
|
84
|
+
|
|
85
|
+
| Name | Payload | When |
|
|
86
|
+
| --- | --- | --- |
|
|
87
|
+
| `valueChange` | `TimeFieldChangeRequest \| ChangeRequest<PlainTime \| null>` | Before the value moves, and cancellable. It arrives from the field when a typed run ends, and from the panel when a row is chosen — with reason "select" there. A request that comes through the field carries the segments and whether a duration crossed midnight. |
|
|
88
|
+
| `openChange` | `ChangeRequest<boolean>` | Before the surface opens or closes, and cancellable. The reason says which of pointer, keyboard, escape, outsidePress or select moved it — a boolean cannot, and a consumer who has to guess writes the wrong handler. |
|
|
89
|
+
| `highlightedValueChange` | `ChangeRequest<PlainTime \| null>` | Before the highlight moves. Selection does not follow focus here: a reader arrowing through ninety-six quarter-hours would otherwise emit ninety-six value requests. |
|
|
90
|
+
|
|
91
|
+
## Axes and defaults
|
|
92
|
+
|
|
93
|
+
| Axis | Values | Default |
|
|
94
|
+
| --- | --- | --- |
|
|
95
|
+
| `size` | `sm`, `md`, `lg` | `md` |
|
|
96
|
+
| `variant` | `outline`, `subtle`, `plain` | `outline` |
|
|
97
|
+
| `placement` | `bottom-start`, `bottom`, `bottom-end`, `top-start`, `top`, `top-end` | `bottom-start` |
|
|
98
|
+
| `closeOnSelect` | `auto`, `always`, `never` | `auto` |
|
|
99
|
+
| `unavailableOptions` | `disable`, `hide` | `disable` |
|
|
100
|
+
| `hourCycle` | `12`, `24` | — |
|
|
101
|
+
| `granularity` | `hour`, `minute`, `second` | `minute` |
|
|
102
|
+
|
|
103
|
+
## Rules
|
|
104
|
+
|
|
105
|
+
- The panel is one role="listbox" in every configuration the family has, so the trigger says aria-haspopup="listbox" everywhere and there is no second role a reader has to learn. A column per unit was drawn and withdrawn, and with it the dialog role a popup of several listboxes would have needed.
|
|
106
|
+
- Focus is real inside the list — a roving tabindex, not aria-activedescendant — because the reader is inside the list rather than typing into a control that must keep focus. The pattern’s own rule for where focus lands is taken whole: the selected option, or the first when none is selected.
|
|
107
|
+
- Selection does not follow focus. The listbox pattern lists it as optional and warns it can degrade accessibility, and here it would emit one value request per option as a reader arrows through ninety-six quarter-hours.
|
|
108
|
+
- The trigger’s accessible name carries the chosen time, because focus returns to it when the surface closes — which is where a reader is told what was chosen, and what the APG names as an accessibility feature of its own example.
|
|
109
|
+
- A list cut at maxOptions says so twice: data-truncated in the DOM for a stylesheet, and the panel’s accessible description for a reader, naming that the remaining times are typed into the field rather than listed.
|
|
110
|
+
|
|
111
|
+
## Tokens
|
|
112
|
+
|
|
113
|
+
`--slotted-border-subtle`, `--slotted-border-width-thin`, `--slotted-control-border-width`, `--slotted-control-height-lg`, `--slotted-control-height-md`, `--slotted-control-height-sm`, `--slotted-control-icon-size-lg`, `--slotted-control-icon-size-md`, `--slotted-control-icon-size-sm`, `--slotted-control-radius`, `--slotted-control-transition-duration`, `--slotted-control-transition-easing`, `--slotted-disabled-foreground`, `--slotted-duration-medium`, `--slotted-duration-short`, `--slotted-easing-enter`, `--slotted-easing-exit`, `--slotted-focus-ring-color`, `--slotted-focus-ring-color-invalid`, `--slotted-focus-ring-offset`, `--slotted-focus-ring-width`, `--slotted-radius-lg`, `--slotted-radius-sm`, `--slotted-shadow-md`, `--slotted-space-1`, `--slotted-space-2`, `--slotted-space-3`, `--slotted-space-4`, `--slotted-space-9`, `--slotted-surface-raised`, `--slotted-target-comfortable`, `--slotted-target-min`, `--slotted-text`, `--slotted-text-muted`, `--slotted-time-picker-content-border-color`, `--slotted-time-picker-content-color`, `--slotted-time-picker-content-min-inline-size`, `--slotted-time-picker-content-padding`, `--slotted-time-picker-content-radius`, `--slotted-time-picker-content-shadow`, `--slotted-time-picker-invalid-focus-ring-color`, `--slotted-time-picker-label-color`, `--slotted-time-picker-list-block-size`, `--slotted-time-picker-now-color`, `--slotted-time-picker-option-current-background`, `--slotted-time-picker-option-hover-background`, `--slotted-time-picker-option-radius`, `--slotted-time-picker-option-selected-background`, `--slotted-time-picker-option-selected-color`, `--slotted-time-picker-option-selected-hover-background`, `--slotted-time-picker-radius`, `--slotted-time-picker-sheet-inline-size`, `--slotted-time-picker-surface`, `--slotted-time-picker-trigger-active-background`, `--slotted-time-picker-trigger-color`, `--slotted-time-picker-trigger-hover-background`, `--slotted-time-picker-trigger-size`, `--slotted-tone-accent-on-solid`, `--slotted-tone-accent-solid`, `--slotted-tone-accent-solid-hover`, `--slotted-tone-accent-text`, `--slotted-tone-secondary-subtle-active`, `--slotted-tone-secondary-subtle-hover`, `--slotted-z-index-popover`
|
|
114
|
+
|
|
115
|
+
## Examples
|
|
116
|
+
|
|
117
|
+
### One panel shape
|
|
118
|
+
|
|
119
|
+
A listbox of whole times, at every step. 09:15 is legible at a glance where a 15 in a column of minutes is legible only beside the column next to it — and one axis is what makes Home, End, type-ahead and the arrows all mean something.
|
|
120
|
+
|
|
121
|
+
Excerpt — not a complete module
|
|
122
|
+
|
|
123
|
+
```html
|
|
124
|
+
<div slTimePicker defaultOpen locale="pt-BR" [step]="1800"></div>
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### The times a consumer states
|
|
128
|
+
|
|
129
|
+
No step describes a clinic open at 09:00, 09:20, 11:40 and 13:45, and a predicate only subtracts from times that fall on one. options hands the panel exactly the times it should offer, in the order it should offer them — and it is half the answer to why this family needs no column panel.
|
|
130
|
+
|
|
131
|
+
Excerpt — not a complete module
|
|
132
|
+
|
|
133
|
+
```html
|
|
134
|
+
<div slTimePicker locale="pt-BR" [options]="clinicHours"></div>
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Seconds, chosen from a surface
|
|
138
|
+
|
|
139
|
+
The other half of the same answer. A day at a one-second step is 86 400 rows and not a list; a stated set of marks is four. The field beside the panel types any second the list does not offer.
|
|
140
|
+
|
|
141
|
+
Excerpt — not a complete module
|
|
142
|
+
|
|
143
|
+
```html
|
|
144
|
+
<div slTimePicker granularity="second" locale="pt-BR" [options]="marks"></div>
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### The step, and where it counts from
|
|
148
|
+
|
|
149
|
+
A step in seconds, counting from min when it is stated and from midnight when it is not — the platform’s own rule for input[type=time], and one no surveyed panel states. A value off the step is not invalid: the field still types 09:15 when the panel offers 09:07.
|
|
150
|
+
|
|
151
|
+
Excerpt — not a complete module
|
|
152
|
+
|
|
153
|
+
```html
|
|
154
|
+
<div slTimePicker [step]="3600"></div>
|
|
155
|
+
<div slTimePicker [step]="1800"></div>
|
|
156
|
+
<div slTimePicker [min]="opensAt" [step]="900"></div>
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Bounds
|
|
160
|
+
|
|
161
|
+
min and max fence both the list and the value. The panel offers nothing outside them, and a value outside them is invalid whatever the field around the picker says.
|
|
162
|
+
|
|
163
|
+
Excerpt — not a complete module
|
|
164
|
+
|
|
165
|
+
```html
|
|
166
|
+
<div slTimePicker [min]="opens" [max]="closes"></div>
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Times the product refuses
|
|
170
|
+
|
|
171
|
+
isTimeUnavailable answers a lunch break or a booked slot. By default the row stays and is disabled — a list that drops rows is a list whose step nobody can infer — and unavailableOptions="hide" is the consumer’s choice to drop it anyway.
|
|
172
|
+
|
|
173
|
+
Excerpt — not a complete module
|
|
174
|
+
|
|
175
|
+
```html
|
|
176
|
+
<div slTimePicker [isTimeUnavailable]="isLunch"></div>
|
|
177
|
+
<div slTimePicker unavailableOptions="hide" [isTimeUnavailable]="isLunch"></div>
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### The current time, in one press
|
|
181
|
+
|
|
182
|
+
The control at the head of the panel writes the time it is now. It is the zero case of the field’s relative expression, drawn as a labelled press so a reader who never discovers + still has it.
|
|
183
|
+
|
|
184
|
+
Excerpt — not a complete module
|
|
185
|
+
|
|
186
|
+
```html
|
|
187
|
+
<div slTimePicker [messages]="{ now: 'Agora' }" [referenceTime]="now"></div>
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### The field keeps every key it had
|
|
191
|
+
|
|
192
|
+
The panel complements the typing and never replaces it, which is what docs/component-features.md §6 asks for. Alt+ArrowDown opens the panel and leaves focus in the segments; + still opens a duration; and the highlight follows what is typed.
|
|
193
|
+
|
|
194
|
+
Excerpt — not a complete module
|
|
195
|
+
|
|
196
|
+
```html
|
|
197
|
+
<div slTimePicker defaultOpen [referenceTime]="afternoon"></div>
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Shortcuts and actions
|
|
201
|
+
|
|
202
|
+
Two slots the family ships empty: a column of the consumer’s own shortcuts beside the list, and a row of their own actions under it. The surface stops being the anchor’s width when the shortcuts are there, so the times keep a column worth reading.
|
|
203
|
+
|
|
204
|
+
Excerpt — not a complete module
|
|
205
|
+
|
|
206
|
+
```html
|
|
207
|
+
<div slTimePicker>
|
|
208
|
+
<div slTimePickerPresets>
|
|
209
|
+
<button type="button">Início do turno</button>
|
|
210
|
+
</div>
|
|
211
|
+
<div slTimePickerFooter>
|
|
212
|
+
<button type="button">Aplicar</button>
|
|
213
|
+
</div>
|
|
214
|
+
</div>
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### Size
|
|
218
|
+
|
|
219
|
+
The three steps the control can be, and the panel answers each: the row height and the eight-and-a-half-row cap are counted in the same unit, so a dense panel shows the same number of times in less room.
|
|
220
|
+
|
|
221
|
+
Excerpt — not a complete module
|
|
222
|
+
|
|
223
|
+
```html
|
|
224
|
+
<div slTimePicker size="sm"></div>
|
|
225
|
+
<div slTimePicker size="md"></div>
|
|
226
|
+
<div slTimePicker size="lg"></div>
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### Variant
|
|
230
|
+
|
|
231
|
+
How much frame the control shows at rest. The panel does not change with it: a surface floating over the page has its own ground whatever the control below it looks like.
|
|
232
|
+
|
|
233
|
+
Excerpt — not a complete module
|
|
234
|
+
|
|
235
|
+
```html
|
|
236
|
+
<div slTimePicker variant="outline"></div>
|
|
237
|
+
<div slTimePicker variant="subtle"></div>
|
|
238
|
+
<div slTimePicker variant="plain"></div>
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### Where it opens
|
|
242
|
+
|
|
243
|
+
The side and alignment the surface starts from, before the positioner reads the room and moves it. What the engine resolved is written back as data-placement, so a stylesheet can answer the side it actually landed on.
|
|
244
|
+
|
|
245
|
+
Excerpt — not a complete module
|
|
246
|
+
|
|
247
|
+
```html
|
|
248
|
+
<div slTimePicker placement="bottom-start"></div>
|
|
249
|
+
<div slTimePicker placement="top-end"></div>
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### States
|
|
253
|
+
|
|
254
|
+
Read-only keeps the value readable and the panel shut; disabled answers no press at all; invalid retargets the ring on the control and on the trigger together. The row of options has its own four, and the chosen row answers the pointer in its own tone rather than turning grey.
|
|
255
|
+
|
|
256
|
+
Excerpt — not a complete module
|
|
257
|
+
|
|
258
|
+
```html
|
|
259
|
+
<div slTimePicker readOnly></div>
|
|
260
|
+
<div slTimePicker invalid></div>
|
|
261
|
+
<div slTimePicker disabled></div>
|
|
262
|
+
<div slTimePicker required></div>
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
### In a form
|
|
266
|
+
|
|
267
|
+
The value reaches a plain form post as an HH:mm:ss string through the field’s hidden input, so a server reads it without any JavaScript touching the control.
|
|
268
|
+
|
|
269
|
+
Excerpt — not a complete module
|
|
270
|
+
|
|
271
|
+
```html
|
|
272
|
+
<form [formGroup]="form">
|
|
273
|
+
<div slField>
|
|
274
|
+
<label slFieldLabel>Hora de início</label>
|
|
275
|
+
<div slTimePicker formControlName="inicio" required></div>
|
|
276
|
+
</div>
|
|
277
|
+
</form>
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### Narrow
|
|
281
|
+
|
|
282
|
+
The panel takes the anchor’s width, floored so a narrow field never produces a column too tight to read a time in and capped so a wide form never stretches one column of times across a page. Below 480 pixels on a finger it becomes a sheet, and the DOM says which it is.
|
|
283
|
+
|
|
284
|
+
Excerpt — not a complete module
|
|
285
|
+
|
|
286
|
+
```html
|
|
287
|
+
<div class="slotted-demo-measure">
|
|
288
|
+
<div slTimePicker locale="pt-BR"></div>
|
|
289
|
+
</div>
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
### Composition and escape hatches
|
|
293
|
+
|
|
294
|
+
The provider sets the step and the labels once; renderOption draws the row without owning it; render substitutes the frame; and the ref carries focus(), open() and close().
|
|
295
|
+
|
|
296
|
+
Excerpt — not a complete module
|
|
297
|
+
|
|
298
|
+
```html
|
|
299
|
+
<div slTimePicker #hora="slTimePicker" locale="pt-BR">
|
|
300
|
+
<ng-template slTimePickerOption let-time let-label="label">
|
|
301
|
+
<span>{{ label }}</span>
|
|
302
|
+
</ng-template>
|
|
303
|
+
</div>
|
|
304
|
+
<button type="button" (click)="hora.openSurface()">Abrir</button>
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
### The keyboard
|
|
308
|
+
|
|
309
|
+
Alt+ArrowDown opens the panel from the field and leaves focus there; the trigger’s ArrowDown moves focus into the list; inside it the arrows walk, Home and End reach the ends, PageUp and PageDown cross one hour boundary each, digits jump, and Enter chooses. Escape closes and puts focus back on the trigger.
|
|
310
|
+
|
|
311
|
+
Excerpt — not a complete module
|
|
312
|
+
|
|
313
|
+
```html
|
|
314
|
+
<div slTimePicker (keydown)="onKeyDown($event)"></div>
|
|
315
|
+
```
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
<!-- index: ./index.md -->
|
|
2
|
+
# time-range-picker
|
|
3
|
+
|
|
4
|
+
`data-ui="time-range-picker"` · Start and end times with a picker.
|
|
5
|
+
|
|
6
|
+
## Examples
|
|
7
|
+
|
|
8
|
+
### One end at a time
|
|
9
|
+
|
|
10
|
+
Open it: two tabs say the two ends, and the panel shows the one being chosen. The start is 14:00, so the end tab is current and its list strikes every time before 14:00, writing the duration beside every other. Press one: the meeting is whole and the surface closes.
|
|
11
|
+
|
|
12
|
+
Excerpt — not a complete module
|
|
13
|
+
|
|
14
|
+
```html
|
|
15
|
+
<div slTimeRangePicker defaultOpen locale="pt-BR" [defaultValue]="open"></div>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
### The duration, while the run is drawn
|
|
19
|
+
|
|
20
|
+
Move along the end list with the pointer or the arrows: the band says "1 hr", "1 hr 15 min", "1 hr 30 min" for the row under you, and every row says it beside its time. lengthLabel writes it in the product’s own words.
|
|
21
|
+
|
|
22
|
+
Excerpt — not a complete module
|
|
23
|
+
|
|
24
|
+
```html
|
|
25
|
+
<div slTimeRangePicker locale="pt-BR" [defaultValue]="open" [lengthLabel]="minutes"></div>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### Limits, explained
|
|
29
|
+
|
|
30
|
+
A room is booked for thirty minutes to four hours. With a start chosen, the end list refuses the times that would break the rule and the band says the rule; typed past it, the frame goes invalid. minLength and maxLength are seconds, the unit step is written in.
|
|
31
|
+
|
|
32
|
+
Excerpt — not a complete module
|
|
33
|
+
|
|
34
|
+
```html
|
|
35
|
+
<div slTimeRangePicker [maxLength]="4 * 3600" [minLength]="30 * 60"></div>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Unavailable times
|
|
39
|
+
|
|
40
|
+
The room is cleaned from 12:00 to 13:00. Choose a start before it: the end list refuses everything past the first cleaning slot, because a booking is contiguous. [contiguous]="false" lets the run jump over it.
|
|
41
|
+
|
|
42
|
+
Excerpt — not a complete module
|
|
43
|
+
|
|
44
|
+
```html
|
|
45
|
+
<div slTimeRangePicker [isTimeUnavailable]="isCleaning"></div>
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### The step, the bounds, and a stated list
|
|
49
|
+
|
|
50
|
+
Office hours at half-hour slots: min, max and step shape both lists at once, and the fields still type any minute. options states an irregular list outright, for a room that only opens on the hour before noon.
|
|
51
|
+
|
|
52
|
+
Excerpt — not a complete module
|
|
53
|
+
|
|
54
|
+
```html
|
|
55
|
+
<div slTimeRangePicker [max]="closing" [min]="opening" [step]="1800"></div>
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Now
|
|
59
|
+
|
|
60
|
+
"Now" writes the current time into the current end and the focus rule takes over — with the other end missing, the tab moves to it and focus lands in its list. referenceTime fixes the clock for a story or a test.
|
|
61
|
+
|
|
62
|
+
Excerpt — not a complete module
|
|
63
|
+
|
|
64
|
+
```html
|
|
65
|
+
<div slTimeRangePicker [messages]="{ now: 'Agora' }" [referenceTime]="clock"></div>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Presets
|
|
69
|
+
|
|
70
|
+
The slots the office books by name. Each is a button with slTimeRangePickerPreset and its own range; pressing one writes the value and closes, and the one equal to the value is marked. The list is the product’s.
|
|
71
|
+
|
|
72
|
+
Excerpt — not a complete module
|
|
73
|
+
|
|
74
|
+
```html
|
|
75
|
+
<div slTimeRangePicker>
|
|
76
|
+
<div slTimeRangePickerPresets>
|
|
77
|
+
<button [slTimeRangePickerPreset]="morning">Manhã</button>
|
|
78
|
+
<button [slTimeRangePickerPreset]="nextHour">Próxima hora</button>
|
|
79
|
+
</div>
|
|
80
|
+
</div>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### One end only
|
|
84
|
+
|
|
85
|
+
A start and no end, written where the reader sees it. Open the surface: the end list is the one to finish, and its first press completes the work. The clear empties both ends at once.
|
|
86
|
+
|
|
87
|
+
Excerpt — not a complete module
|
|
88
|
+
|
|
89
|
+
```html
|
|
90
|
+
<div slTimeRangePicker clearable [defaultValue]="open"></div>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Size
|
|
94
|
+
|
|
95
|
+
The three steps the frame takes. Type, height, gutter and the clear’s box follow the control scales, so a booking in a dense table shrinks whole rather than in parts.
|
|
96
|
+
|
|
97
|
+
Excerpt — not a complete module
|
|
98
|
+
|
|
99
|
+
```html
|
|
100
|
+
<div slTimeRangePicker size="sm"></div>
|
|
101
|
+
<div slTimeRangePicker size="md"></div>
|
|
102
|
+
<div slTimeRangePicker size="lg"></div>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Variant
|
|
106
|
+
|
|
107
|
+
How much frame the control shows at rest. plain is for a box that belongs to something else — a table cell — and draws its ring inward.
|
|
108
|
+
|
|
109
|
+
Excerpt — not a complete module
|
|
110
|
+
|
|
111
|
+
```html
|
|
112
|
+
<div slTimeRangePicker variant="outline"></div>
|
|
113
|
+
<div slTimeRangePicker variant="subtle"></div>
|
|
114
|
+
<div slTimeRangePicker variant="plain"></div>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### States
|
|
118
|
+
|
|
119
|
+
Read-only, disabled, invalid from the family and invalid from the consumer. An end before its start is invalid on the end field and on the frame, and nothing is swapped.
|
|
120
|
+
|
|
121
|
+
Excerpt — not a complete module
|
|
122
|
+
|
|
123
|
+
```html
|
|
124
|
+
<div slTimeRangePicker readOnly [defaultValue]="booking"></div>
|
|
125
|
+
<div slTimeRangePicker disabled [defaultValue]="booking"></div>
|
|
126
|
+
<div slTimeRangePicker [defaultValue]="reversed"></div>
|
|
127
|
+
<div slTimeRangePicker invalid [defaultValue]="booking"></div>
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Forms
|
|
131
|
+
|
|
132
|
+
Two hidden inputs under startName and endName send HH:mm:ss with a plain form post, whether the reader typed the times or pressed them.
|
|
133
|
+
|
|
134
|
+
Excerpt — not a complete module
|
|
135
|
+
|
|
136
|
+
```html
|
|
137
|
+
<form [formGroup]="reservation" (ngSubmit)="reserve()">
|
|
138
|
+
<div slTimeRangePicker formControlName="slot" startName="inicio" endName="fim"></div>
|
|
139
|
+
<button type="submit">Reservar</button>
|
|
140
|
+
</form>
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Narrow
|
|
144
|
+
|
|
145
|
+
In a column narrower than the value the frame stays one line and the summary is cut with an ellipsis; the trigger’s name carries it whole. The surface keeps its own width.
|
|
146
|
+
|
|
147
|
+
Excerpt — not a complete module
|
|
148
|
+
|
|
149
|
+
```html
|
|
150
|
+
<div class="slotted-demo-measure">
|
|
151
|
+
<div slTimeRangePicker locale="pt-BR" [defaultValue]="booking"></div>
|
|
152
|
+
</div>
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### Composition
|
|
156
|
+
|
|
157
|
+
provideTimeRangePickerDefaults sets the step and how a duration is written once, provideSlotted the language and every word; the exported instance opens, closes and focuses; the slTimeRangePickerOption template replaces what a row draws; position — which tab — is the consumer’s to own.
|
|
158
|
+
|
|
159
|
+
Excerpt — not a complete module
|
|
160
|
+
|
|
161
|
+
```html
|
|
162
|
+
<div
|
|
163
|
+
slTimeRangePicker
|
|
164
|
+
#picker="slTimeRangePicker"
|
|
165
|
+
[position]="position"
|
|
166
|
+
(positionChange)="position = $event.value"
|
|
167
|
+
>
|
|
168
|
+
<ng-template slTimeRangePickerOption let-time let-duration="duration">
|
|
169
|
+
{{ time.hour }}h{{ time.minute }} <small>{{ duration }}</small>
|
|
170
|
+
</ng-template>
|
|
171
|
+
</div>
|
|
172
|
+
<button type="button" (click)="picker.openSurface()">Abrir</button>
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### Keyboard
|
|
176
|
+
|
|
177
|
+
Enter opens onto the field of the current end; ArrowDown opens onto its list. ArrowLeft and ArrowRight on a tab move to the other end. In the list, every arrow moves the pending end and the band says the duration; Enter writes the end and moves on to the one that is missing. Escape abandons the work.
|
|
178
|
+
|
|
179
|
+
Excerpt — not a complete module
|
|
180
|
+
|
|
181
|
+
```html
|
|
182
|
+
<!-- Enter, Space open onto the current end's field -->
|
|
183
|
+
<!-- ArrowDown, Alt+Down open onto the current end's list -->
|
|
184
|
+
<!-- ArrowLeft, Right on a tab: the other end, and its panel -->
|
|
185
|
+
<!-- Arrows, Home, End move the highlight; the band says the duration -->
|
|
186
|
+
<!-- PageUp, PageDown one hour -->
|
|
187
|
+
<!-- Enter, Space write this end, then the missing one -->
|
|
188
|
+
<!-- Escape close and abandon the work -->
|
|
189
|
+
<!-- Tab tabs, field, now, presets, list, footer, done -->
|
|
190
|
+
<div slTimeRangePicker></div>
|
|
191
|
+
```
|