@slotted/angular 0.1.0-beta.1 → 0.1.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/docs/AGENTS.snippet.md +12 -0
- package/docs/alert.json +7 -1
- package/docs/alert.md +3 -3
- package/docs/app-shell.examples.md +1 -1
- package/docs/app-shell.json +5 -5
- package/docs/app-shell.md +2 -2
- package/docs/avatar.json +22 -1
- package/docs/avatar.md +5 -3
- package/docs/badge.json +7 -1
- package/docs/badge.md +3 -3
- package/docs/button-group.json +2 -0
- package/docs/button-group.md +1 -1
- package/docs/button.json +51 -11
- package/docs/button.md +10 -6
- package/docs/calendar.json +8 -1
- package/docs/calendar.md +1 -0
- package/docs/cascader.json +1 -0
- package/docs/cascader.md +1 -1
- package/docs/chart.examples.md +1 -1
- package/docs/chart.json +10 -1
- package/docs/chart.md +3 -2
- package/docs/checkbox.json +7 -0
- package/docs/checkbox.md +1 -0
- package/docs/code-block.json +92 -92
- package/docs/code-block.md +69 -69
- package/docs/combobox.json +1 -0
- package/docs/combobox.md +1 -1
- package/docs/currency-field.json +40 -1
- package/docs/currency-field.md +5 -1
- package/docs/data-grid.examples.md +2 -2
- package/docs/data-grid.json +24 -7
- package/docs/data-grid.md +1 -1
- package/docs/data-grid.props.md +6 -4
- package/docs/data-list.json +2 -1
- package/docs/data-list.md +1 -1
- package/docs/date-field.json +9 -1
- package/docs/date-field.md +3 -2
- package/docs/date-picker.examples.md +36 -0
- package/docs/date-picker.json +20 -5
- package/docs/date-picker.md +5 -4
- package/docs/datetime-field.json +1 -0
- package/docs/datetime-field.md +1 -1
- package/docs/dialog.examples.md +158 -136
- package/docs/dialog.json +35 -11
- package/docs/dialog.md +4 -2
- package/docs/dialog.props.md +1 -1
- package/docs/drawer.json +5 -0
- package/docs/drawer.md +1 -0
- package/docs/entity-picker.json +19 -4
- package/docs/entity-picker.md +8 -6
- package/docs/event-calendar.json +7 -0
- package/docs/event-calendar.md +1 -0
- package/docs/filter-bar.json +118 -118
- package/docs/filter-bar.md +79 -79
- package/docs/form.json +2 -1
- package/docs/form.md +1 -1
- package/docs/guidelines/README.md +27 -0
- package/docs/guidelines/async-feedback.md +129 -0
- package/docs/guidelines/browsing.md +74 -0
- package/docs/guidelines/builders.md +97 -0
- package/docs/guidelines/composition.md +143 -0
- package/docs/guidelines/conversations.md +59 -0
- package/docs/guidelines/errors-and-conflicts.md +71 -0
- package/docs/guidelines/forms.md +202 -0
- package/docs/guidelines/index.md +129 -0
- package/docs/guidelines/layout-alignment.md +95 -0
- package/docs/guidelines/ledgers.md +45 -0
- package/docs/guidelines/list-pages.md +206 -0
- package/docs/guidelines/overviews.md +76 -0
- package/docs/guidelines/own-elements.md +115 -0
- package/docs/guidelines/reading-permissions.md +55 -0
- package/docs/guidelines/record-pages.md +178 -0
- package/docs/guidelines/reports.md +123 -0
- package/docs/guidelines/shell-composition.md +94 -0
- package/docs/guidelines/workspaces.md +46 -0
- package/docs/icon.json +3 -1
- package/docs/icon.md +3 -3
- package/docs/index.md +12 -0
- package/docs/inline-message.json +14 -2
- package/docs/inline-message.md +4 -3
- package/docs/list-item.json +9 -1
- package/docs/list-item.md +3 -3
- package/docs/list.json +19 -1
- package/docs/list.md +3 -1
- package/docs/markdown.json +79 -79
- package/docs/markdown.md +65 -65
- package/docs/menu.json +12 -0
- package/docs/menu.md +2 -0
- package/docs/message.json +7 -1
- package/docs/message.md +3 -3
- package/docs/multi-select.json +1 -0
- package/docs/multi-select.md +1 -1
- package/docs/notification-center.json +4 -0
- package/docs/notification-center.md +2 -2
- package/docs/number-field.json +1 -0
- package/docs/number-field.md +1 -1
- package/docs/otp-input.json +1 -0
- package/docs/otp-input.md +1 -1
- package/docs/page-header.json +4 -3
- package/docs/page-header.md +2 -2
- package/docs/page.json +1 -0
- package/docs/page.md +1 -0
- package/docs/popover.json +1 -1
- package/docs/progress-indicator.json +4 -3
- package/docs/progress-indicator.md +4 -4
- package/docs/prompt-composer.json +41 -1
- package/docs/prompt-composer.md +5 -1
- package/docs/rating.json +5 -3
- package/docs/rating.md +5 -5
- package/docs/section.json +27 -15
- package/docs/section.md +11 -9
- package/docs/segmented-control.json +36 -12
- package/docs/segmented-control.md +17 -1
- package/docs/select.json +1 -0
- package/docs/select.md +1 -1
- package/docs/side-navigation.json +1 -0
- package/docs/side-navigation.md +1 -1
- package/docs/skills/build-own-element/SKILL.md +90 -0
- package/docs/skills/compose-screen/SKILL.md +95 -0
- package/docs/skills/index.md +9 -0
- package/docs/skills/review-screen/SKILL.md +77 -0
- package/docs/skills/theme-app/SKILL.md +87 -0
- package/docs/skills/waiting-states/SKILL.md +143 -0
- package/docs/sparkline.json +5 -2
- package/docs/sparkline.md +4 -4
- package/docs/split-button.json +4 -1
- package/docs/split-button.md +3 -3
- package/docs/stat-card.json +5 -1
- package/docs/stat-card.md +3 -3
- package/docs/table.examples.md +3 -3
- package/docs/table.json +85 -3
- package/docs/table.md +12 -1
- package/docs/tabs.json +17 -7
- package/docs/tabs.md +3 -2
- package/docs/tag.json +14 -4
- package/docs/tag.md +6 -6
- package/docs/tags-input.json +29 -2
- package/docs/tags-input.md +4 -1
- package/docs/text-field.json +2 -1
- package/docs/text-field.md +2 -2
- package/docs/textarea.json +1 -0
- package/docs/textarea.md +1 -1
- package/docs/time-field.json +1 -0
- package/docs/time-field.md +1 -1
- package/docs/timeline.json +138 -132
- package/docs/timeline.md +125 -125
- package/docs/toast.json +7 -1
- package/docs/toast.md +3 -3
- package/docs/toggle-group.json +14 -3
- package/docs/toggle-group.md +3 -3
- package/docs/toggle.json +12 -3
- package/docs/toggle.md +3 -3
- package/docs/tokens.md +467 -0
- package/docs/tour.json +1 -1
- package/docs/typography.json +4 -2
- package/docs/typography.md +4 -4
- package/fesm2022/slotted-angular-accordion.mjs +4 -2
- package/fesm2022/slotted-angular-accordion.mjs.map +1 -1
- package/fesm2022/slotted-angular-action-bar.mjs +22 -11
- package/fesm2022/slotted-angular-action-bar.mjs.map +1 -1
- package/fesm2022/slotted-angular-action-sheet.mjs +42 -29
- package/fesm2022/slotted-angular-action-sheet.mjs.map +1 -1
- package/fesm2022/slotted-angular-alert.mjs +18 -11
- package/fesm2022/slotted-angular-alert.mjs.map +1 -1
- package/fesm2022/slotted-angular-app-shell.mjs +111 -61
- package/fesm2022/slotted-angular-app-shell.mjs.map +1 -1
- package/fesm2022/slotted-angular-aspect-ratio.mjs +4 -2
- package/fesm2022/slotted-angular-aspect-ratio.mjs.map +1 -1
- package/fesm2022/slotted-angular-attachment.mjs +31 -20
- package/fesm2022/slotted-angular-attachment.mjs.map +1 -1
- package/fesm2022/slotted-angular-avatar-group.mjs +9 -6
- package/fesm2022/slotted-angular-avatar-group.mjs.map +1 -1
- package/fesm2022/slotted-angular-avatar.mjs +14 -7
- package/fesm2022/slotted-angular-avatar.mjs.map +1 -1
- package/fesm2022/slotted-angular-badge.mjs +14 -10
- package/fesm2022/slotted-angular-badge.mjs.map +1 -1
- package/fesm2022/slotted-angular-breadcrumb.mjs +26 -18
- package/fesm2022/slotted-angular-breadcrumb.mjs.map +1 -1
- package/fesm2022/slotted-angular-button-group.mjs +7 -4
- package/fesm2022/slotted-angular-button-group.mjs.map +1 -1
- package/fesm2022/slotted-angular-button.mjs +90 -29
- package/fesm2022/slotted-angular-button.mjs.map +1 -1
- package/fesm2022/slotted-angular-calendar.mjs +235 -58
- package/fesm2022/slotted-angular-calendar.mjs.map +1 -1
- package/fesm2022/slotted-angular-card.mjs +18 -16
- package/fesm2022/slotted-angular-card.mjs.map +1 -1
- package/fesm2022/slotted-angular-carousel.mjs +22 -11
- package/fesm2022/slotted-angular-carousel.mjs.map +1 -1
- package/fesm2022/slotted-angular-cascader.mjs +166 -66
- package/fesm2022/slotted-angular-cascader.mjs.map +1 -1
- package/fesm2022/slotted-angular-chart.mjs +53 -20
- package/fesm2022/slotted-angular-chart.mjs.map +1 -1
- package/fesm2022/slotted-angular-checkbox-group.mjs +5 -3
- package/fesm2022/slotted-angular-checkbox-group.mjs.map +1 -1
- package/fesm2022/slotted-angular-checkbox.mjs +23 -9
- package/fesm2022/slotted-angular-checkbox.mjs.map +1 -1
- package/fesm2022/slotted-angular-code-block.mjs +29 -15
- package/fesm2022/slotted-angular-code-block.mjs.map +1 -1
- package/fesm2022/slotted-angular-collapsible.mjs +20 -15
- package/fesm2022/slotted-angular-collapsible.mjs.map +1 -1
- package/fesm2022/slotted-angular-color-picker.mjs +77 -22
- package/fesm2022/slotted-angular-color-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-column-manager.mjs +68 -31
- package/fesm2022/slotted-angular-column-manager.mjs.map +1 -1
- package/fesm2022/slotted-angular-combobox.mjs +112 -39
- package/fesm2022/slotted-angular-combobox.mjs.map +1 -1
- package/fesm2022/slotted-angular-command-palette.mjs +150 -54
- package/fesm2022/slotted-angular-command-palette.mjs.map +1 -1
- package/fesm2022/slotted-angular-container.mjs +6 -4
- package/fesm2022/slotted-angular-container.mjs.map +1 -1
- package/fesm2022/slotted-angular-context-menu.mjs +5 -4
- package/fesm2022/slotted-angular-context-menu.mjs.map +1 -1
- package/fesm2022/slotted-angular-currency-field.mjs +149 -32
- package/fesm2022/slotted-angular-currency-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-dashboard-grid.mjs +142 -63
- package/fesm2022/slotted-angular-dashboard-grid.mjs.map +1 -1
- package/fesm2022/slotted-angular-data-grid.mjs +354 -113
- package/fesm2022/slotted-angular-data-grid.mjs.map +1 -1
- package/fesm2022/slotted-angular-data-list.mjs +83 -50
- package/fesm2022/slotted-angular-data-list.mjs.map +1 -1
- package/fesm2022/slotted-angular-date-field.mjs +74 -25
- package/fesm2022/slotted-angular-date-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-date-picker.mjs +112 -40
- package/fesm2022/slotted-angular-date-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-date-range-picker.mjs +45 -22
- package/fesm2022/slotted-angular-date-range-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-datetime-field.mjs +48 -16
- package/fesm2022/slotted-angular-datetime-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-datetime-picker.mjs +41 -29
- package/fesm2022/slotted-angular-datetime-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-datetime-range-picker.mjs +115 -48
- package/fesm2022/slotted-angular-datetime-range-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-description-list.mjs +33 -19
- package/fesm2022/slotted-angular-description-list.mjs.map +1 -1
- package/fesm2022/slotted-angular-detail-panel.mjs +29 -18
- package/fesm2022/slotted-angular-detail-panel.mjs.map +1 -1
- package/fesm2022/slotted-angular-dialog.mjs +72 -30
- package/fesm2022/slotted-angular-dialog.mjs.map +1 -1
- package/fesm2022/slotted-angular-divider.mjs +7 -5
- package/fesm2022/slotted-angular-divider.mjs.map +1 -1
- package/fesm2022/slotted-angular-drawer.mjs +53 -29
- package/fesm2022/slotted-angular-drawer.mjs.map +1 -1
- package/fesm2022/slotted-angular-entity-picker.mjs +468 -75
- package/fesm2022/slotted-angular-entity-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-event-calendar.mjs +275 -108
- package/fesm2022/slotted-angular-event-calendar.mjs.map +1 -1
- package/fesm2022/slotted-angular-field-group.mjs +14 -7
- package/fesm2022/slotted-angular-field-group.mjs.map +1 -1
- package/fesm2022/slotted-angular-field.mjs +35 -15
- package/fesm2022/slotted-angular-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-filter-bar.mjs +112 -51
- package/fesm2022/slotted-angular-filter-bar.mjs.map +1 -1
- package/fesm2022/slotted-angular-form.mjs +18 -10
- package/fesm2022/slotted-angular-form.mjs.map +1 -1
- package/fesm2022/slotted-angular-fullscreen.mjs +14 -8
- package/fesm2022/slotted-angular-fullscreen.mjs.map +1 -1
- package/fesm2022/slotted-angular-grid.mjs +4 -2
- package/fesm2022/slotted-angular-grid.mjs.map +1 -1
- package/fesm2022/slotted-angular-highlight.mjs +5 -3
- package/fesm2022/slotted-angular-highlight.mjs.map +1 -1
- package/fesm2022/slotted-angular-hover-card.mjs +5 -4
- package/fesm2022/slotted-angular-hover-card.mjs.map +1 -1
- package/fesm2022/slotted-angular-icon.mjs +6 -3
- package/fesm2022/slotted-angular-icon.mjs.map +1 -1
- package/fesm2022/slotted-angular-image.mjs +13 -10
- package/fesm2022/slotted-angular-image.mjs.map +1 -1
- package/fesm2022/slotted-angular-import-export-center.mjs +167 -99
- package/fesm2022/slotted-angular-import-export-center.mjs.map +1 -1
- package/fesm2022/slotted-angular-inline-message.mjs +88 -13
- package/fesm2022/slotted-angular-inline-message.mjs.map +1 -1
- package/fesm2022/slotted-angular-inline.mjs +4 -2
- package/fesm2022/slotted-angular-inline.mjs.map +1 -1
- package/fesm2022/slotted-angular-kbd.mjs +11 -7
- package/fesm2022/slotted-angular-kbd.mjs.map +1 -1
- package/fesm2022/slotted-angular-link.mjs +5 -3
- package/fesm2022/slotted-angular-link.mjs.map +1 -1
- package/fesm2022/slotted-angular-list-item.mjs +21 -18
- package/fesm2022/slotted-angular-list-item.mjs.map +1 -1
- package/fesm2022/slotted-angular-list.mjs +37 -22
- package/fesm2022/slotted-angular-list.mjs.map +1 -1
- package/fesm2022/slotted-angular-listbox.mjs +39 -21
- package/fesm2022/slotted-angular-listbox.mjs.map +1 -1
- package/fesm2022/slotted-angular-loading-overlay.mjs +59 -22
- package/fesm2022/slotted-angular-loading-overlay.mjs.map +1 -1
- package/fesm2022/slotted-angular-markdown.mjs +31 -19
- package/fesm2022/slotted-angular-markdown.mjs.map +1 -1
- package/fesm2022/slotted-angular-menu.mjs +51 -29
- package/fesm2022/slotted-angular-menu.mjs.map +1 -1
- package/fesm2022/slotted-angular-menubar.mjs +4 -2
- package/fesm2022/slotted-angular-menubar.mjs.map +1 -1
- package/fesm2022/slotted-angular-message-scroller.mjs +28 -15
- package/fesm2022/slotted-angular-message-scroller.mjs.map +1 -1
- package/fesm2022/slotted-angular-message.mjs +113 -51
- package/fesm2022/slotted-angular-message.mjs.map +1 -1
- package/fesm2022/slotted-angular-multi-select.mjs +189 -87
- package/fesm2022/slotted-angular-multi-select.mjs.map +1 -1
- package/fesm2022/slotted-angular-navigation-menu.mjs +34 -26
- package/fesm2022/slotted-angular-navigation-menu.mjs.map +1 -1
- package/fesm2022/slotted-angular-notification-center.mjs +108 -65
- package/fesm2022/slotted-angular-notification-center.mjs.map +1 -1
- package/fesm2022/slotted-angular-number-field.mjs +23 -11
- package/fesm2022/slotted-angular-number-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-otp-input.mjs +13 -8
- package/fesm2022/slotted-angular-otp-input.mjs.map +1 -1
- package/fesm2022/slotted-angular-page-header.mjs +75 -45
- package/fesm2022/slotted-angular-page-header.mjs.map +1 -1
- package/fesm2022/slotted-angular-page.mjs +38 -10
- package/fesm2022/slotted-angular-page.mjs.map +1 -1
- package/fesm2022/slotted-angular-pagination.mjs +35 -22
- package/fesm2022/slotted-angular-pagination.mjs.map +1 -1
- package/fesm2022/slotted-angular-popover.mjs +32 -19
- package/fesm2022/slotted-angular-popover.mjs.map +1 -1
- package/fesm2022/slotted-angular-progress-indicator.mjs +236 -52
- package/fesm2022/slotted-angular-progress-indicator.mjs.map +1 -1
- package/fesm2022/slotted-angular-prompt-composer.mjs +41 -20
- package/fesm2022/slotted-angular-prompt-composer.mjs.map +1 -1
- package/fesm2022/slotted-angular-prose.mjs +14 -11
- package/fesm2022/slotted-angular-prose.mjs.map +1 -1
- package/fesm2022/slotted-angular-radio-group.mjs +15 -9
- package/fesm2022/slotted-angular-radio-group.mjs.map +1 -1
- package/fesm2022/slotted-angular-rating.mjs +138 -82
- package/fesm2022/slotted-angular-rating.mjs.map +1 -1
- package/fesm2022/slotted-angular-result-state.mjs +16 -12
- package/fesm2022/slotted-angular-result-state.mjs.map +1 -1
- package/fesm2022/slotted-angular-saved-views.mjs +43 -16
- package/fesm2022/slotted-angular-saved-views.mjs.map +1 -1
- package/fesm2022/slotted-angular-scroll-area.mjs +13 -5
- package/fesm2022/slotted-angular-scroll-area.mjs.map +1 -1
- package/fesm2022/slotted-angular-section.mjs +53 -18
- package/fesm2022/slotted-angular-section.mjs.map +1 -1
- package/fesm2022/slotted-angular-segmented-control.mjs +37 -11
- package/fesm2022/slotted-angular-segmented-control.mjs.map +1 -1
- package/fesm2022/slotted-angular-select.mjs +184 -94
- package/fesm2022/slotted-angular-select.mjs.map +1 -1
- package/fesm2022/slotted-angular-side-navigation.mjs +46 -35
- package/fesm2022/slotted-angular-side-navigation.mjs.map +1 -1
- package/fesm2022/slotted-angular-skeleton.mjs +32 -16
- package/fesm2022/slotted-angular-skeleton.mjs.map +1 -1
- package/fesm2022/slotted-angular-slider.mjs +31 -11
- package/fesm2022/slotted-angular-slider.mjs.map +1 -1
- package/fesm2022/slotted-angular-sparkline.mjs +41 -14
- package/fesm2022/slotted-angular-sparkline.mjs.map +1 -1
- package/fesm2022/slotted-angular-split-button.mjs +25 -11
- package/fesm2022/slotted-angular-split-button.mjs.map +1 -1
- package/fesm2022/slotted-angular-splitter.mjs +11 -9
- package/fesm2022/slotted-angular-splitter.mjs.map +1 -1
- package/fesm2022/slotted-angular-stack.mjs +4 -2
- package/fesm2022/slotted-angular-stack.mjs.map +1 -1
- package/fesm2022/slotted-angular-stat-card.mjs +35 -28
- package/fesm2022/slotted-angular-stat-card.mjs.map +1 -1
- package/fesm2022/slotted-angular-status-indicator.mjs +22 -8
- package/fesm2022/slotted-angular-status-indicator.mjs.map +1 -1
- package/fesm2022/slotted-angular-stepper.mjs +40 -15
- package/fesm2022/slotted-angular-stepper.mjs.map +1 -1
- package/fesm2022/slotted-angular-switch.mjs +15 -10
- package/fesm2022/slotted-angular-switch.mjs.map +1 -1
- package/fesm2022/slotted-angular-table-of-contents.mjs +29 -21
- package/fesm2022/slotted-angular-table-of-contents.mjs.map +1 -1
- package/fesm2022/slotted-angular-table.mjs +243 -73
- package/fesm2022/slotted-angular-table.mjs.map +1 -1
- package/fesm2022/slotted-angular-tabs.mjs +42 -18
- package/fesm2022/slotted-angular-tabs.mjs.map +1 -1
- package/fesm2022/slotted-angular-tag.mjs +19 -12
- package/fesm2022/slotted-angular-tag.mjs.map +1 -1
- package/fesm2022/slotted-angular-tags-input.mjs +253 -28
- package/fesm2022/slotted-angular-tags-input.mjs.map +1 -1
- package/fesm2022/slotted-angular-text-field.mjs +49 -15
- package/fesm2022/slotted-angular-text-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-textarea.mjs +5 -3
- package/fesm2022/slotted-angular-textarea.mjs.map +1 -1
- package/fesm2022/slotted-angular-time-field.mjs +48 -14
- package/fesm2022/slotted-angular-time-field.mjs.map +1 -1
- package/fesm2022/slotted-angular-time-picker.mjs +32 -20
- package/fesm2022/slotted-angular-time-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-time-range-picker.mjs +113 -46
- package/fesm2022/slotted-angular-time-range-picker.mjs.map +1 -1
- package/fesm2022/slotted-angular-timeline.mjs +135 -64
- package/fesm2022/slotted-angular-timeline.mjs.map +1 -1
- package/fesm2022/slotted-angular-toast.mjs +43 -31
- package/fesm2022/slotted-angular-toast.mjs.map +1 -1
- package/fesm2022/slotted-angular-toggle-group.mjs +25 -8
- package/fesm2022/slotted-angular-toggle-group.mjs.map +1 -1
- package/fesm2022/slotted-angular-toggle.mjs +9 -4
- package/fesm2022/slotted-angular-toggle.mjs.map +1 -1
- package/fesm2022/slotted-angular-toolbar.mjs +22 -11
- package/fesm2022/slotted-angular-toolbar.mjs.map +1 -1
- package/fesm2022/slotted-angular-tooltip.mjs +15 -6
- package/fesm2022/slotted-angular-tooltip.mjs.map +1 -1
- package/fesm2022/slotted-angular-top-navigation.mjs +64 -44
- package/fesm2022/slotted-angular-top-navigation.mjs.map +1 -1
- package/fesm2022/slotted-angular-tour.mjs +47 -22
- package/fesm2022/slotted-angular-tour.mjs.map +1 -1
- package/fesm2022/slotted-angular-transfer.mjs +69 -30
- package/fesm2022/slotted-angular-transfer.mjs.map +1 -1
- package/fesm2022/slotted-angular-tree.mjs +74 -26
- package/fesm2022/slotted-angular-tree.mjs.map +1 -1
- package/fesm2022/slotted-angular-typography.mjs +8 -4
- package/fesm2022/slotted-angular-typography.mjs.map +1 -1
- package/fesm2022/slotted-angular-upload.mjs +125 -57
- package/fesm2022/slotted-angular-upload.mjs.map +1 -1
- package/fesm2022/slotted-angular-visually-hidden.mjs +4 -2
- package/fesm2022/slotted-angular-visually-hidden.mjs.map +1 -1
- package/fesm2022/slotted-angular-wizard.mjs +163 -65
- package/fesm2022/slotted-angular-wizard.mjs.map +1 -1
- package/package.json +3 -3
- package/types/slotted-angular-accordion.d.ts.map +1 -1
- package/types/slotted-angular-action-bar.d.ts.map +1 -1
- package/types/slotted-angular-action-sheet.d.ts.map +1 -1
- package/types/slotted-angular-alert.d.ts +2 -2
- package/types/slotted-angular-alert.d.ts.map +1 -1
- package/types/slotted-angular-app-shell.d.ts +11 -3
- package/types/slotted-angular-app-shell.d.ts.map +1 -1
- package/types/slotted-angular-aspect-ratio.d.ts.map +1 -1
- package/types/slotted-angular-attachment.d.ts +1 -1
- package/types/slotted-angular-attachment.d.ts.map +1 -1
- package/types/slotted-angular-avatar-group.d.ts.map +1 -1
- package/types/slotted-angular-avatar.d.ts +11 -3
- package/types/slotted-angular-avatar.d.ts.map +1 -1
- package/types/slotted-angular-badge.d.ts +1 -1
- package/types/slotted-angular-badge.d.ts.map +1 -1
- package/types/slotted-angular-breadcrumb.d.ts.map +1 -1
- package/types/slotted-angular-button-group.d.ts +1 -1
- package/types/slotted-angular-button-group.d.ts.map +1 -1
- package/types/slotted-angular-button.d.ts +33 -13
- package/types/slotted-angular-button.d.ts.map +1 -1
- package/types/slotted-angular-calendar.d.ts +30 -2
- package/types/slotted-angular-calendar.d.ts.map +1 -1
- package/types/slotted-angular-card.d.ts.map +1 -1
- package/types/slotted-angular-carousel.d.ts.map +1 -1
- package/types/slotted-angular-cascader.d.ts.map +1 -1
- package/types/slotted-angular-chart.d.ts +10 -0
- package/types/slotted-angular-chart.d.ts.map +1 -1
- package/types/slotted-angular-checkbox-group.d.ts.map +1 -1
- package/types/slotted-angular-checkbox.d.ts +7 -1
- package/types/slotted-angular-checkbox.d.ts.map +1 -1
- package/types/slotted-angular-code-block.d.ts +1 -1
- package/types/slotted-angular-code-block.d.ts.map +1 -1
- package/types/slotted-angular-collapsible.d.ts +1 -1
- package/types/slotted-angular-collapsible.d.ts.map +1 -1
- package/types/slotted-angular-color-picker.d.ts.map +1 -1
- package/types/slotted-angular-column-manager.d.ts.map +1 -1
- package/types/slotted-angular-combobox.d.ts +5 -1
- package/types/slotted-angular-combobox.d.ts.map +1 -1
- package/types/slotted-angular-command-palette.d.ts +10 -1
- package/types/slotted-angular-command-palette.d.ts.map +1 -1
- package/types/slotted-angular-container.d.ts.map +1 -1
- package/types/slotted-angular-context-menu.d.ts.map +1 -1
- package/types/slotted-angular-currency-field.d.ts +63 -15
- package/types/slotted-angular-currency-field.d.ts.map +1 -1
- package/types/slotted-angular-dashboard-grid.d.ts.map +1 -1
- package/types/slotted-angular-data-grid.d.ts +49 -4
- package/types/slotted-angular-data-grid.d.ts.map +1 -1
- package/types/slotted-angular-data-list.d.ts.map +1 -1
- package/types/slotted-angular-date-field.d.ts +11 -1
- package/types/slotted-angular-date-field.d.ts.map +1 -1
- package/types/slotted-angular-date-picker.d.ts +38 -12
- package/types/slotted-angular-date-picker.d.ts.map +1 -1
- package/types/slotted-angular-date-range-picker.d.ts +0 -1
- package/types/slotted-angular-date-range-picker.d.ts.map +1 -1
- package/types/slotted-angular-datetime-field.d.ts.map +1 -1
- package/types/slotted-angular-datetime-picker.d.ts +0 -1
- package/types/slotted-angular-datetime-picker.d.ts.map +1 -1
- package/types/slotted-angular-datetime-range-picker.d.ts +0 -1
- package/types/slotted-angular-datetime-range-picker.d.ts.map +1 -1
- package/types/slotted-angular-description-list.d.ts.map +1 -1
- package/types/slotted-angular-detail-panel.d.ts.map +1 -1
- package/types/slotted-angular-dialog.d.ts +10 -3
- package/types/slotted-angular-dialog.d.ts.map +1 -1
- package/types/slotted-angular-divider.d.ts.map +1 -1
- package/types/slotted-angular-drawer.d.ts +7 -1
- package/types/slotted-angular-drawer.d.ts.map +1 -1
- package/types/slotted-angular-entity-picker.d.ts +63 -15
- package/types/slotted-angular-entity-picker.d.ts.map +1 -1
- package/types/slotted-angular-event-calendar.d.ts +9 -2
- package/types/slotted-angular-event-calendar.d.ts.map +1 -1
- package/types/slotted-angular-field-group.d.ts.map +1 -1
- package/types/slotted-angular-field.d.ts.map +1 -1
- package/types/slotted-angular-filter-bar.d.ts.map +1 -1
- package/types/slotted-angular-form.d.ts.map +1 -1
- package/types/slotted-angular-fullscreen.d.ts.map +1 -1
- package/types/slotted-angular-grid.d.ts.map +1 -1
- package/types/slotted-angular-highlight.d.ts.map +1 -1
- package/types/slotted-angular-hover-card.d.ts.map +1 -1
- package/types/slotted-angular-icon.d.ts +2 -2
- package/types/slotted-angular-icon.d.ts.map +1 -1
- package/types/slotted-angular-image.d.ts.map +1 -1
- package/types/slotted-angular-import-export-center.d.ts.map +1 -1
- package/types/slotted-angular-inline-message.d.ts +25 -25
- package/types/slotted-angular-inline-message.d.ts.map +1 -1
- package/types/slotted-angular-inline.d.ts.map +1 -1
- package/types/slotted-angular-kbd.d.ts.map +1 -1
- package/types/slotted-angular-link.d.ts.map +1 -1
- package/types/slotted-angular-list-item.d.ts +1 -1
- package/types/slotted-angular-list-item.d.ts.map +1 -1
- package/types/slotted-angular-list.d.ts +42 -27
- package/types/slotted-angular-list.d.ts.map +1 -1
- package/types/slotted-angular-listbox.d.ts.map +1 -1
- package/types/slotted-angular-loading-overlay.d.ts.map +1 -1
- package/types/slotted-angular-markdown.d.ts.map +1 -1
- package/types/slotted-angular-menu.d.ts +11 -2
- package/types/slotted-angular-menu.d.ts.map +1 -1
- package/types/slotted-angular-menubar.d.ts.map +1 -1
- package/types/slotted-angular-message-scroller.d.ts.map +1 -1
- package/types/slotted-angular-message.d.ts +1 -1
- package/types/slotted-angular-message.d.ts.map +1 -1
- package/types/slotted-angular-multi-select.d.ts +15 -1
- package/types/slotted-angular-multi-select.d.ts.map +1 -1
- package/types/slotted-angular-navigation-menu.d.ts.map +1 -1
- package/types/slotted-angular-notification-center.d.ts +1 -1
- package/types/slotted-angular-notification-center.d.ts.map +1 -1
- package/types/slotted-angular-number-field.d.ts.map +1 -1
- package/types/slotted-angular-otp-input.d.ts.map +1 -1
- package/types/slotted-angular-page-header.d.ts +4 -4
- package/types/slotted-angular-page-header.d.ts.map +1 -1
- package/types/slotted-angular-page.d.ts.map +1 -1
- package/types/slotted-angular-pagination.d.ts.map +1 -1
- package/types/slotted-angular-popover.d.ts.map +1 -1
- package/types/slotted-angular-progress-indicator.d.ts +8 -1
- package/types/slotted-angular-progress-indicator.d.ts.map +1 -1
- package/types/slotted-angular-prompt-composer.d.ts +11 -2
- package/types/slotted-angular-prompt-composer.d.ts.map +1 -1
- package/types/slotted-angular-prose.d.ts.map +1 -1
- package/types/slotted-angular-radio-group.d.ts.map +1 -1
- package/types/slotted-angular-rating.d.ts +1 -1
- package/types/slotted-angular-rating.d.ts.map +1 -1
- package/types/slotted-angular-result-state.d.ts.map +1 -1
- package/types/slotted-angular-saved-views.d.ts.map +1 -1
- package/types/slotted-angular-scroll-area.d.ts.map +1 -1
- package/types/slotted-angular-section.d.ts +11 -3
- package/types/slotted-angular-section.d.ts.map +1 -1
- package/types/slotted-angular-segmented-control.d.ts +15 -2
- package/types/slotted-angular-segmented-control.d.ts.map +1 -1
- package/types/slotted-angular-select.d.ts +12 -2
- package/types/slotted-angular-select.d.ts.map +1 -1
- package/types/slotted-angular-side-navigation.d.ts.map +1 -1
- package/types/slotted-angular-skeleton.d.ts.map +1 -1
- package/types/slotted-angular-slider.d.ts.map +1 -1
- package/types/slotted-angular-sparkline.d.ts +7 -1
- package/types/slotted-angular-sparkline.d.ts.map +1 -1
- package/types/slotted-angular-split-button.d.ts +2 -2
- package/types/slotted-angular-split-button.d.ts.map +1 -1
- package/types/slotted-angular-splitter.d.ts.map +1 -1
- package/types/slotted-angular-stack.d.ts.map +1 -1
- package/types/slotted-angular-stat-card.d.ts +1 -1
- package/types/slotted-angular-stat-card.d.ts.map +1 -1
- package/types/slotted-angular-status-indicator.d.ts +1 -1
- package/types/slotted-angular-status-indicator.d.ts.map +1 -1
- package/types/slotted-angular-stepper.d.ts +1 -1
- package/types/slotted-angular-stepper.d.ts.map +1 -1
- package/types/slotted-angular-switch.d.ts.map +1 -1
- package/types/slotted-angular-table-of-contents.d.ts.map +1 -1
- package/types/slotted-angular-table.d.ts +63 -6
- package/types/slotted-angular-table.d.ts.map +1 -1
- package/types/slotted-angular-tabs.d.ts +3 -4
- package/types/slotted-angular-tabs.d.ts.map +1 -1
- package/types/slotted-angular-tag.d.ts +1 -1
- package/types/slotted-angular-tag.d.ts.map +1 -1
- package/types/slotted-angular-tags-input.d.ts +33 -1
- package/types/slotted-angular-tags-input.d.ts.map +1 -1
- package/types/slotted-angular-text-field.d.ts.map +1 -1
- package/types/slotted-angular-textarea.d.ts.map +1 -1
- package/types/slotted-angular-theme.d.ts +1 -1
- package/types/slotted-angular-time-field.d.ts.map +1 -1
- package/types/slotted-angular-time-picker.d.ts +0 -1
- package/types/slotted-angular-time-picker.d.ts.map +1 -1
- package/types/slotted-angular-time-range-picker.d.ts +0 -1
- package/types/slotted-angular-time-range-picker.d.ts.map +1 -1
- package/types/slotted-angular-timeline.d.ts +1 -1
- package/types/slotted-angular-timeline.d.ts.map +1 -1
- package/types/slotted-angular-toast.d.ts +3 -3
- package/types/slotted-angular-toast.d.ts.map +1 -1
- package/types/slotted-angular-toggle-group.d.ts +8 -2
- package/types/slotted-angular-toggle-group.d.ts.map +1 -1
- package/types/slotted-angular-toggle.d.ts +1 -1
- package/types/slotted-angular-toggle.d.ts.map +1 -1
- package/types/slotted-angular-toolbar.d.ts.map +1 -1
- package/types/slotted-angular-tooltip.d.ts.map +1 -1
- package/types/slotted-angular-top-navigation.d.ts.map +1 -1
- package/types/slotted-angular-tour.d.ts.map +1 -1
- package/types/slotted-angular-transfer.d.ts.map +1 -1
- package/types/slotted-angular-tree.d.ts.map +1 -1
- package/types/slotted-angular-typography.d.ts +1 -1
- package/types/slotted-angular-typography.d.ts.map +1 -1
- package/types/slotted-angular-upload.d.ts +2 -2
- package/types/slotted-angular-upload.d.ts.map +1 -1
- package/types/slotted-angular-visually-hidden.d.ts.map +1 -1
- package/types/slotted-angular-wizard.d.ts.map +1 -1
|
@@ -125,27 +125,39 @@ class SlSkeletonRegion {
|
|
|
125
125
|
this.timer = setTimeout(() => this.settle(request), answer.wait);
|
|
126
126
|
}
|
|
127
127
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSkeletonRegion, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
128
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlSkeletonRegion, isStandalone: true, selector: "[slSkeletonRegion]", inputs: { loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, live: { classPropertyName: "live", publicName: "live", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null }, loadedLabel: { classPropertyName: "loadedLabel", publicName: "loadedLabel", isSignal: true, isRequired: false, transformFunction: null }, delay: { classPropertyName: "delay", publicName: "delay", isSignal: true, isRequired: false, transformFunction: null }, minDuration: { classPropertyName: "minDuration", publicName: "minDuration", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { reveal: "reveal" }, host: { attributes: { "data-ui": "skeleton", "data-part": "region" }, properties: { "attr.data-animation": "animationValue()", "attr.data-loading": "painted() ? \"\" : null", "attr.aria-busy": "painted() ? \"true\" : null" } }, exportAs: ["slSkeletonRegion"], ngImport: i0, template: `@if (liveValue() !== 'off') {
|
|
129
|
-
<span
|
|
130
|
-
announcement
|
|
131
|
-
|
|
128
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlSkeletonRegion, isStandalone: true, selector: "[slSkeletonRegion]", inputs: { loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, live: { classPropertyName: "live", publicName: "live", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null }, loadedLabel: { classPropertyName: "loadedLabel", publicName: "loadedLabel", isSignal: true, isRequired: false, transformFunction: null }, delay: { classPropertyName: "delay", publicName: "delay", isSignal: true, isRequired: false, transformFunction: null }, minDuration: { classPropertyName: "minDuration", publicName: "minDuration", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { reveal: "reveal" }, host: { attributes: { "data-ui": "skeleton", "data-ui-skeleton": "", "data-part": "region", "data-part-region": "" }, properties: { "attr.data-animation": "animationValue()", "attr.data-loading": "painted() ? \"\" : null", "attr.aria-busy": "painted() ? \"true\" : null" } }, exportAs: ["slSkeletonRegion"], ngImport: i0, template: `@if (liveValue() !== 'off') {
|
|
129
|
+
<span
|
|
130
|
+
data-part="announcement"
|
|
131
|
+
data-part-announcement=""
|
|
132
|
+
data-ui="visually-hidden"
|
|
133
|
+
data-ui-visually-hidden=""
|
|
134
|
+
role="status"
|
|
135
|
+
>{{ announcement() }}</span
|
|
136
|
+
>
|
|
132
137
|
}
|
|
133
|
-
<ng-content />`, isInline: true, styles: ["@layer slotted.components{[data-ui
|
|
138
|
+
<ng-content />`, isInline: true, styles: ["@layer slotted.components{[data-ui-skeleton][data-part-root][data-loading],[data-ui-skeleton][data-part-text][data-loading] [data-part-line]{--_fill: var( --slotted-skeleton-fill, color-mix( in oklab, var(--slotted-disabled-background, ButtonFace) 92%, var(--slotted-text, CanvasText) ) );--_edge: var(--slotted-skeleton-border-color, var(--slotted-border-subtle, ButtonBorder));--_highlight: var( --slotted-skeleton-highlight-color, color-mix(in oklab, var(--_fill) 86%, var(--slotted-text, CanvasText)) );--_trough: var( --slotted-skeleton-trough-color, color-mix(in oklab, var(--_fill) 60%, var(--slotted-surface-sunken, Canvas)) );background-color:var(--_fill);border:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px)) solid var(--_edge);box-sizing:border-box;-webkit-user-select:none;user-select:none}[data-ui-skeleton][data-part-root]{display:inline-block;min-block-size:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px))}[data-ui-skeleton][data-part-root][data-shape=text]{--_line: var(--slotted-skeleton-line-size, 1cap);block-size:var(--slotted-skeleton-block-size, var(--_line));border-radius:var(--slotted-radius-full, 9999px);inline-size:var(--slotted-skeleton-inline-size, 100%);vertical-align:calc(.5cap - .5 * var(--_line))}[data-ui-skeleton][data-part-root][data-shape=block]{block-size:var(--slotted-skeleton-block-size, auto);border-radius:var(--slotted-skeleton-radius, var(--slotted-radius-md, 6px));display:block;inline-size:var(--slotted-skeleton-inline-size, 100%);min-block-size:var(--slotted-skeleton-min-block-size, 1lh)}[data-ui-skeleton][data-part-root][data-shape=circle],[data-ui-skeleton][data-part-root][data-shape=square]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px));block-size:var(--slotted-skeleton-block-size, var(--_size));inline-size:var(--slotted-skeleton-inline-size, var(--_size))}[data-ui-skeleton][data-part-root][data-shape=circle]{border-radius:var(--slotted-radius-full, 9999px)}[data-ui-skeleton][data-part-root][data-shape=square]{border-radius:var(--slotted-skeleton-radius, calc(var(--_size) / 6))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xs],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xs]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xs, 24px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=sm],[data-ui-skeleton][data-part-root][data-shape=square][data-size=sm]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-sm, 28px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=md],[data-ui-skeleton][data-part-root][data-shape=square][data-size=md]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=lg],[data-ui-skeleton][data-part-root][data-shape=square][data-size=lg]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-lg, 48px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xl],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xl]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xl, 64px))}[data-ui-skeleton][data-part-root][data-loading]:not(:empty){block-size:var(--slotted-skeleton-block-size, auto);color:transparent;inline-size:var(--slotted-skeleton-inline-size, auto)}[data-ui-skeleton][data-part-root][data-loading]:not(:empty)>*{visibility:hidden}[data-ui-skeleton][data-part-text]{align-items:center;display:grid;grid-auto-rows:var(--slotted-skeleton-row-size, 1lh);inline-size:var(--slotted-skeleton-inline-size, 100%)}[data-ui-skeleton] [data-part-line]{block-size:var(--slotted-skeleton-line-size, 1cap);border-radius:var(--slotted-radius-full, 9999px);inline-size:100%}[data-ui-skeleton] [data-part-line]:last-child:not(:only-child){inline-size:var(--slotted-skeleton-last-line-size, 62%)}[data-ui-skeleton][data-part-root]:not([data-loading]),[data-ui-skeleton][data-part-text]:not([data-loading]){display:contents}[data-ui-skeleton][data-part-region]{inline-size:var(--slotted-skeleton-inline-size, 100%);min-inline-size:0}[data-ui-skeleton][data-part-root][data-loading]:not([data-animation=none]),[data-ui-skeleton][data-part-text][data-loading]:not([data-animation=none]) [data-part-line]{overflow:clip;position:relative}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-delay:calc(var(--slotted-skeleton-phase, 0) * var(--slotted-duration-loop-slow) * -1);animation-duration:var(--slotted-duration-loop-slow);animation-iteration-count:infinite;content:\"\";inset-block:0;inset-inline:0;pointer-events:none;position:absolute}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-timing-function:ease-in-out;background-color:var(--_trough);opacity:0}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-timing-function:linear;background-image:linear-gradient(90deg,transparent 14%,var(--_highlight) 50%,transparent 86%)}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:dir(rtl):after,[data-ui-skeleton][data-animation=shimmer][data-loading]:dir(rtl) [data-part-line]:after{animation-direction:reverse}@media(prefers-reduced-motion:no-preference){[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-pulse}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-sweep}}@keyframes slotted-skeleton-pulse{50%{opacity:1}}@keyframes slotted-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){[data-ui-skeleton]:after,[data-ui-skeleton] [data-part-line]:after{animation:none}}@media(forced-colors:active){[data-ui-skeleton][data-part-root][data-loading]:after,[data-ui-skeleton][data-part-text][data-loading] [data-part-line]:after{background-image:none}}}\n", "@layer slotted.components{[data-ui-visually-hidden]:not([data-focusable]:focus-within){block-size:1px;border:0;clip-path:inset(50%);inline-size:1px;inset-block-start:0;inset-inline-start:0;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
134
139
|
}
|
|
135
140
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSkeletonRegion, decorators: [{
|
|
136
141
|
type: Component,
|
|
137
142
|
args: [{ selector: '[slSkeletonRegion]', standalone: true, template: `@if (liveValue() !== 'off') {
|
|
138
|
-
<span
|
|
139
|
-
announcement
|
|
140
|
-
|
|
143
|
+
<span
|
|
144
|
+
data-part="announcement"
|
|
145
|
+
data-part-announcement=""
|
|
146
|
+
data-ui="visually-hidden"
|
|
147
|
+
data-ui-visually-hidden=""
|
|
148
|
+
role="status"
|
|
149
|
+
>{{ announcement() }}</span
|
|
150
|
+
>
|
|
141
151
|
}
|
|
142
152
|
<ng-content />`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, exportAs: 'slSkeletonRegion', host: {
|
|
143
153
|
'data-ui': 'skeleton',
|
|
154
|
+
'data-ui-skeleton': '',
|
|
144
155
|
'data-part': 'region',
|
|
156
|
+
'data-part-region': '',
|
|
145
157
|
'[attr.data-animation]': 'animationValue()',
|
|
146
158
|
'[attr.data-loading]': 'painted() ? "" : null',
|
|
147
159
|
'[attr.aria-busy]': 'painted() ? "true" : null',
|
|
148
|
-
}, styles: ["@layer slotted.components{[data-ui
|
|
160
|
+
}, styles: ["@layer slotted.components{[data-ui-skeleton][data-part-root][data-loading],[data-ui-skeleton][data-part-text][data-loading] [data-part-line]{--_fill: var( --slotted-skeleton-fill, color-mix( in oklab, var(--slotted-disabled-background, ButtonFace) 92%, var(--slotted-text, CanvasText) ) );--_edge: var(--slotted-skeleton-border-color, var(--slotted-border-subtle, ButtonBorder));--_highlight: var( --slotted-skeleton-highlight-color, color-mix(in oklab, var(--_fill) 86%, var(--slotted-text, CanvasText)) );--_trough: var( --slotted-skeleton-trough-color, color-mix(in oklab, var(--_fill) 60%, var(--slotted-surface-sunken, Canvas)) );background-color:var(--_fill);border:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px)) solid var(--_edge);box-sizing:border-box;-webkit-user-select:none;user-select:none}[data-ui-skeleton][data-part-root]{display:inline-block;min-block-size:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px))}[data-ui-skeleton][data-part-root][data-shape=text]{--_line: var(--slotted-skeleton-line-size, 1cap);block-size:var(--slotted-skeleton-block-size, var(--_line));border-radius:var(--slotted-radius-full, 9999px);inline-size:var(--slotted-skeleton-inline-size, 100%);vertical-align:calc(.5cap - .5 * var(--_line))}[data-ui-skeleton][data-part-root][data-shape=block]{block-size:var(--slotted-skeleton-block-size, auto);border-radius:var(--slotted-skeleton-radius, var(--slotted-radius-md, 6px));display:block;inline-size:var(--slotted-skeleton-inline-size, 100%);min-block-size:var(--slotted-skeleton-min-block-size, 1lh)}[data-ui-skeleton][data-part-root][data-shape=circle],[data-ui-skeleton][data-part-root][data-shape=square]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px));block-size:var(--slotted-skeleton-block-size, var(--_size));inline-size:var(--slotted-skeleton-inline-size, var(--_size))}[data-ui-skeleton][data-part-root][data-shape=circle]{border-radius:var(--slotted-radius-full, 9999px)}[data-ui-skeleton][data-part-root][data-shape=square]{border-radius:var(--slotted-skeleton-radius, calc(var(--_size) / 6))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xs],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xs]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xs, 24px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=sm],[data-ui-skeleton][data-part-root][data-shape=square][data-size=sm]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-sm, 28px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=md],[data-ui-skeleton][data-part-root][data-shape=square][data-size=md]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=lg],[data-ui-skeleton][data-part-root][data-shape=square][data-size=lg]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-lg, 48px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xl],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xl]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xl, 64px))}[data-ui-skeleton][data-part-root][data-loading]:not(:empty){block-size:var(--slotted-skeleton-block-size, auto);color:transparent;inline-size:var(--slotted-skeleton-inline-size, auto)}[data-ui-skeleton][data-part-root][data-loading]:not(:empty)>*{visibility:hidden}[data-ui-skeleton][data-part-text]{align-items:center;display:grid;grid-auto-rows:var(--slotted-skeleton-row-size, 1lh);inline-size:var(--slotted-skeleton-inline-size, 100%)}[data-ui-skeleton] [data-part-line]{block-size:var(--slotted-skeleton-line-size, 1cap);border-radius:var(--slotted-radius-full, 9999px);inline-size:100%}[data-ui-skeleton] [data-part-line]:last-child:not(:only-child){inline-size:var(--slotted-skeleton-last-line-size, 62%)}[data-ui-skeleton][data-part-root]:not([data-loading]),[data-ui-skeleton][data-part-text]:not([data-loading]){display:contents}[data-ui-skeleton][data-part-region]{inline-size:var(--slotted-skeleton-inline-size, 100%);min-inline-size:0}[data-ui-skeleton][data-part-root][data-loading]:not([data-animation=none]),[data-ui-skeleton][data-part-text][data-loading]:not([data-animation=none]) [data-part-line]{overflow:clip;position:relative}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-delay:calc(var(--slotted-skeleton-phase, 0) * var(--slotted-duration-loop-slow) * -1);animation-duration:var(--slotted-duration-loop-slow);animation-iteration-count:infinite;content:\"\";inset-block:0;inset-inline:0;pointer-events:none;position:absolute}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-timing-function:ease-in-out;background-color:var(--_trough);opacity:0}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-timing-function:linear;background-image:linear-gradient(90deg,transparent 14%,var(--_highlight) 50%,transparent 86%)}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:dir(rtl):after,[data-ui-skeleton][data-animation=shimmer][data-loading]:dir(rtl) [data-part-line]:after{animation-direction:reverse}@media(prefers-reduced-motion:no-preference){[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-pulse}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-sweep}}@keyframes slotted-skeleton-pulse{50%{opacity:1}}@keyframes slotted-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){[data-ui-skeleton]:after,[data-ui-skeleton] [data-part-line]:after{animation:none}}@media(forced-colors:active){[data-ui-skeleton][data-part-root][data-loading]:after,[data-ui-skeleton][data-part-text][data-loading] [data-part-line]:after{background-image:none}}}\n", "@layer slotted.components{[data-ui-visually-hidden]:not([data-focusable]:focus-within){block-size:1px;border:0;clip-path:inset(50%);inline-size:1px;inset-block-start:0;inset-inline-start:0;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap}}\n"] }]
|
|
149
161
|
}], ctorParameters: () => [], propDecorators: { loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], animation: [{ type: i0.Input, args: [{ isSignal: true, alias: "animation", required: false }] }], live: [{ type: i0.Input, args: [{ isSignal: true, alias: "live", required: false }] }], messages: [{ type: i0.Input, args: [{ isSignal: true, alias: "messages", required: false }] }], loadedLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedLabel", required: false }] }], delay: [{ type: i0.Input, args: [{ isSignal: true, alias: "delay", required: false }] }], minDuration: [{ type: i0.Input, args: [{ isSignal: true, alias: "minDuration", required: false }] }], reveal: [{ type: i0.Output, args: ["reveal"] }] } });
|
|
150
162
|
/**
|
|
151
163
|
* Absence has to survive the transform. `numberAttribute` maps an unset input
|
|
@@ -210,13 +222,15 @@ class SlSkeleton {
|
|
|
210
222
|
ariaHidden = computed(() => this.painted() ? (this.ownAriaHidden ?? 'true') : this.ownAriaHidden, /* @ts-ignore */
|
|
211
223
|
...(ngDevMode ? [{ debugName: "ariaHidden" }] : /* istanbul ignore next */ []));
|
|
212
224
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSkeleton, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
213
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.7", type: SlSkeleton, isStandalone: true, selector: "[slSkeleton]", inputs: { shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, inlineSize: { classPropertyName: "inlineSize", publicName: "inlineSize", isSignal: true, isRequired: false, transformFunction: null }, blockSize: { classPropertyName: "blockSize", publicName: "blockSize", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "skeleton", "data-part": "root" }, properties: { "attr.data-shape": "shape()", "attr.data-size": "size()", "attr.data-animation": "animationValue()", "attr.data-loading": "painted() ? \"\" : null", "attr.aria-hidden": "ariaHidden()", "attr.inert": "painted() ? \"\" : null", "style.--slotted-skeleton-inline-size": "inlineSize()", "style.--slotted-skeleton-block-size": "blockSize()" } }, exportAs: ["slSkeleton"], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer slotted.components{[data-ui
|
|
225
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.7", type: SlSkeleton, isStandalone: true, selector: "[slSkeleton]", inputs: { shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, inlineSize: { classPropertyName: "inlineSize", publicName: "inlineSize", isSignal: true, isRequired: false, transformFunction: null }, blockSize: { classPropertyName: "blockSize", publicName: "blockSize", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "skeleton", "data-ui-skeleton": "", "data-part": "root", "data-part-root": "" }, properties: { "attr.data-shape": "shape()", "attr.data-size": "size()", "attr.data-animation": "animationValue()", "attr.data-loading": "painted() ? \"\" : null", "attr.aria-hidden": "ariaHidden()", "attr.inert": "painted() ? \"\" : null", "style.--slotted-skeleton-inline-size": "inlineSize()", "style.--slotted-skeleton-block-size": "blockSize()" } }, exportAs: ["slSkeleton"], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer slotted.components{[data-ui-skeleton][data-part-root][data-loading],[data-ui-skeleton][data-part-text][data-loading] [data-part-line]{--_fill: var( --slotted-skeleton-fill, color-mix( in oklab, var(--slotted-disabled-background, ButtonFace) 92%, var(--slotted-text, CanvasText) ) );--_edge: var(--slotted-skeleton-border-color, var(--slotted-border-subtle, ButtonBorder));--_highlight: var( --slotted-skeleton-highlight-color, color-mix(in oklab, var(--_fill) 86%, var(--slotted-text, CanvasText)) );--_trough: var( --slotted-skeleton-trough-color, color-mix(in oklab, var(--_fill) 60%, var(--slotted-surface-sunken, Canvas)) );background-color:var(--_fill);border:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px)) solid var(--_edge);box-sizing:border-box;-webkit-user-select:none;user-select:none}[data-ui-skeleton][data-part-root]{display:inline-block;min-block-size:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px))}[data-ui-skeleton][data-part-root][data-shape=text]{--_line: var(--slotted-skeleton-line-size, 1cap);block-size:var(--slotted-skeleton-block-size, var(--_line));border-radius:var(--slotted-radius-full, 9999px);inline-size:var(--slotted-skeleton-inline-size, 100%);vertical-align:calc(.5cap - .5 * var(--_line))}[data-ui-skeleton][data-part-root][data-shape=block]{block-size:var(--slotted-skeleton-block-size, auto);border-radius:var(--slotted-skeleton-radius, var(--slotted-radius-md, 6px));display:block;inline-size:var(--slotted-skeleton-inline-size, 100%);min-block-size:var(--slotted-skeleton-min-block-size, 1lh)}[data-ui-skeleton][data-part-root][data-shape=circle],[data-ui-skeleton][data-part-root][data-shape=square]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px));block-size:var(--slotted-skeleton-block-size, var(--_size));inline-size:var(--slotted-skeleton-inline-size, var(--_size))}[data-ui-skeleton][data-part-root][data-shape=circle]{border-radius:var(--slotted-radius-full, 9999px)}[data-ui-skeleton][data-part-root][data-shape=square]{border-radius:var(--slotted-skeleton-radius, calc(var(--_size) / 6))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xs],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xs]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xs, 24px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=sm],[data-ui-skeleton][data-part-root][data-shape=square][data-size=sm]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-sm, 28px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=md],[data-ui-skeleton][data-part-root][data-shape=square][data-size=md]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=lg],[data-ui-skeleton][data-part-root][data-shape=square][data-size=lg]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-lg, 48px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xl],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xl]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xl, 64px))}[data-ui-skeleton][data-part-root][data-loading]:not(:empty){block-size:var(--slotted-skeleton-block-size, auto);color:transparent;inline-size:var(--slotted-skeleton-inline-size, auto)}[data-ui-skeleton][data-part-root][data-loading]:not(:empty)>*{visibility:hidden}[data-ui-skeleton][data-part-text]{align-items:center;display:grid;grid-auto-rows:var(--slotted-skeleton-row-size, 1lh);inline-size:var(--slotted-skeleton-inline-size, 100%)}[data-ui-skeleton] [data-part-line]{block-size:var(--slotted-skeleton-line-size, 1cap);border-radius:var(--slotted-radius-full, 9999px);inline-size:100%}[data-ui-skeleton] [data-part-line]:last-child:not(:only-child){inline-size:var(--slotted-skeleton-last-line-size, 62%)}[data-ui-skeleton][data-part-root]:not([data-loading]),[data-ui-skeleton][data-part-text]:not([data-loading]){display:contents}[data-ui-skeleton][data-part-region]{inline-size:var(--slotted-skeleton-inline-size, 100%);min-inline-size:0}[data-ui-skeleton][data-part-root][data-loading]:not([data-animation=none]),[data-ui-skeleton][data-part-text][data-loading]:not([data-animation=none]) [data-part-line]{overflow:clip;position:relative}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-delay:calc(var(--slotted-skeleton-phase, 0) * var(--slotted-duration-loop-slow) * -1);animation-duration:var(--slotted-duration-loop-slow);animation-iteration-count:infinite;content:\"\";inset-block:0;inset-inline:0;pointer-events:none;position:absolute}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-timing-function:ease-in-out;background-color:var(--_trough);opacity:0}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-timing-function:linear;background-image:linear-gradient(90deg,transparent 14%,var(--_highlight) 50%,transparent 86%)}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:dir(rtl):after,[data-ui-skeleton][data-animation=shimmer][data-loading]:dir(rtl) [data-part-line]:after{animation-direction:reverse}@media(prefers-reduced-motion:no-preference){[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-pulse}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-sweep}}@keyframes slotted-skeleton-pulse{50%{opacity:1}}@keyframes slotted-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){[data-ui-skeleton]:after,[data-ui-skeleton] [data-part-line]:after{animation:none}}@media(forced-colors:active){[data-ui-skeleton][data-part-root][data-loading]:after,[data-ui-skeleton][data-part-text][data-loading] [data-part-line]:after{background-image:none}}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
214
226
|
}
|
|
215
227
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSkeleton, decorators: [{
|
|
216
228
|
type: Component,
|
|
217
229
|
args: [{ selector: '[slSkeleton]', standalone: true, template: '<ng-content />', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, exportAs: 'slSkeleton', host: {
|
|
218
230
|
'data-ui': 'skeleton',
|
|
231
|
+
'data-ui-skeleton': '',
|
|
219
232
|
'data-part': 'root',
|
|
233
|
+
'data-part-root': '',
|
|
220
234
|
'[attr.data-shape]': 'shape()',
|
|
221
235
|
'[attr.data-size]': 'size()',
|
|
222
236
|
'[attr.data-animation]': 'animationValue()',
|
|
@@ -225,7 +239,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
|
|
|
225
239
|
'[attr.inert]': 'painted() ? "" : null',
|
|
226
240
|
'[style.--slotted-skeleton-inline-size]': 'inlineSize()',
|
|
227
241
|
'[style.--slotted-skeleton-block-size]': 'blockSize()',
|
|
228
|
-
}, styles: ["@layer slotted.components{[data-ui
|
|
242
|
+
}, styles: ["@layer slotted.components{[data-ui-skeleton][data-part-root][data-loading],[data-ui-skeleton][data-part-text][data-loading] [data-part-line]{--_fill: var( --slotted-skeleton-fill, color-mix( in oklab, var(--slotted-disabled-background, ButtonFace) 92%, var(--slotted-text, CanvasText) ) );--_edge: var(--slotted-skeleton-border-color, var(--slotted-border-subtle, ButtonBorder));--_highlight: var( --slotted-skeleton-highlight-color, color-mix(in oklab, var(--_fill) 86%, var(--slotted-text, CanvasText)) );--_trough: var( --slotted-skeleton-trough-color, color-mix(in oklab, var(--_fill) 60%, var(--slotted-surface-sunken, Canvas)) );background-color:var(--_fill);border:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px)) solid var(--_edge);box-sizing:border-box;-webkit-user-select:none;user-select:none}[data-ui-skeleton][data-part-root]{display:inline-block;min-block-size:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px))}[data-ui-skeleton][data-part-root][data-shape=text]{--_line: var(--slotted-skeleton-line-size, 1cap);block-size:var(--slotted-skeleton-block-size, var(--_line));border-radius:var(--slotted-radius-full, 9999px);inline-size:var(--slotted-skeleton-inline-size, 100%);vertical-align:calc(.5cap - .5 * var(--_line))}[data-ui-skeleton][data-part-root][data-shape=block]{block-size:var(--slotted-skeleton-block-size, auto);border-radius:var(--slotted-skeleton-radius, var(--slotted-radius-md, 6px));display:block;inline-size:var(--slotted-skeleton-inline-size, 100%);min-block-size:var(--slotted-skeleton-min-block-size, 1lh)}[data-ui-skeleton][data-part-root][data-shape=circle],[data-ui-skeleton][data-part-root][data-shape=square]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px));block-size:var(--slotted-skeleton-block-size, var(--_size));inline-size:var(--slotted-skeleton-inline-size, var(--_size))}[data-ui-skeleton][data-part-root][data-shape=circle]{border-radius:var(--slotted-radius-full, 9999px)}[data-ui-skeleton][data-part-root][data-shape=square]{border-radius:var(--slotted-skeleton-radius, calc(var(--_size) / 6))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xs],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xs]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xs, 24px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=sm],[data-ui-skeleton][data-part-root][data-shape=square][data-size=sm]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-sm, 28px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=md],[data-ui-skeleton][data-part-root][data-shape=square][data-size=md]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=lg],[data-ui-skeleton][data-part-root][data-shape=square][data-size=lg]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-lg, 48px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xl],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xl]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xl, 64px))}[data-ui-skeleton][data-part-root][data-loading]:not(:empty){block-size:var(--slotted-skeleton-block-size, auto);color:transparent;inline-size:var(--slotted-skeleton-inline-size, auto)}[data-ui-skeleton][data-part-root][data-loading]:not(:empty)>*{visibility:hidden}[data-ui-skeleton][data-part-text]{align-items:center;display:grid;grid-auto-rows:var(--slotted-skeleton-row-size, 1lh);inline-size:var(--slotted-skeleton-inline-size, 100%)}[data-ui-skeleton] [data-part-line]{block-size:var(--slotted-skeleton-line-size, 1cap);border-radius:var(--slotted-radius-full, 9999px);inline-size:100%}[data-ui-skeleton] [data-part-line]:last-child:not(:only-child){inline-size:var(--slotted-skeleton-last-line-size, 62%)}[data-ui-skeleton][data-part-root]:not([data-loading]),[data-ui-skeleton][data-part-text]:not([data-loading]){display:contents}[data-ui-skeleton][data-part-region]{inline-size:var(--slotted-skeleton-inline-size, 100%);min-inline-size:0}[data-ui-skeleton][data-part-root][data-loading]:not([data-animation=none]),[data-ui-skeleton][data-part-text][data-loading]:not([data-animation=none]) [data-part-line]{overflow:clip;position:relative}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-delay:calc(var(--slotted-skeleton-phase, 0) * var(--slotted-duration-loop-slow) * -1);animation-duration:var(--slotted-duration-loop-slow);animation-iteration-count:infinite;content:\"\";inset-block:0;inset-inline:0;pointer-events:none;position:absolute}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-timing-function:ease-in-out;background-color:var(--_trough);opacity:0}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-timing-function:linear;background-image:linear-gradient(90deg,transparent 14%,var(--_highlight) 50%,transparent 86%)}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:dir(rtl):after,[data-ui-skeleton][data-animation=shimmer][data-loading]:dir(rtl) [data-part-line]:after{animation-direction:reverse}@media(prefers-reduced-motion:no-preference){[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-pulse}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-sweep}}@keyframes slotted-skeleton-pulse{50%{opacity:1}}@keyframes slotted-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){[data-ui-skeleton]:after,[data-ui-skeleton] [data-part-line]:after{animation:none}}@media(forced-colors:active){[data-ui-skeleton][data-part-root][data-loading]:after,[data-ui-skeleton][data-part-text][data-loading] [data-part-line]:after{background-image:none}}}\n"] }]
|
|
229
243
|
}], propDecorators: { shape: [{ type: i0.Input, args: [{ isSignal: true, alias: "shape", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], animation: [{ type: i0.Input, args: [{ isSignal: true, alias: "animation", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], inlineSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "inlineSize", required: false }] }], blockSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "blockSize", required: false }] }] } });
|
|
230
244
|
/**
|
|
231
245
|
* Absence has to survive the transform. `booleanAttribute` maps an unset input
|
|
@@ -288,24 +302,26 @@ class SlSkeletonText {
|
|
|
288
302
|
}, /* @ts-ignore */
|
|
289
303
|
...(ngDevMode ? [{ debugName: "rows" }] : /* istanbul ignore next */ []));
|
|
290
304
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSkeletonText, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
291
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlSkeletonText, isStandalone: true, selector: "[slSkeletonText]", inputs: { lines: { classPropertyName: "lines", publicName: "lines", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, lastLineSize: { classPropertyName: "lastLineSize", publicName: "lastLineSize", isSignal: true, isRequired: false, transformFunction: null }, inlineSize: { classPropertyName: "inlineSize", publicName: "inlineSize", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "skeleton", "data-part": "text" }, properties: { "attr.data-animation": "animationValue()", "attr.data-loading": "painted() ? \"\" : null", "attr.aria-hidden": "painted() ? \"true\" : null", "attr.inert": "painted() ? \"\" : null", "style.--slotted-skeleton-inline-size": "inlineSize()", "style.--slotted-skeleton-last-line-size": "lastLineSizeValue()" } }, exportAs: ["slSkeletonText"], ngImport: i0, template: `@for (row of rows(); track row) {
|
|
292
|
-
<span data-part="line"></span>
|
|
293
|
-
}`, isInline: true, styles: ["@layer slotted.components{[data-ui
|
|
305
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlSkeletonText, isStandalone: true, selector: "[slSkeletonText]", inputs: { lines: { classPropertyName: "lines", publicName: "lines", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, lastLineSize: { classPropertyName: "lastLineSize", publicName: "lastLineSize", isSignal: true, isRequired: false, transformFunction: null }, inlineSize: { classPropertyName: "inlineSize", publicName: "inlineSize", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "skeleton", "data-ui-skeleton": "", "data-part": "text", "data-part-text": "" }, properties: { "attr.data-animation": "animationValue()", "attr.data-loading": "painted() ? \"\" : null", "attr.aria-hidden": "painted() ? \"true\" : null", "attr.inert": "painted() ? \"\" : null", "style.--slotted-skeleton-inline-size": "inlineSize()", "style.--slotted-skeleton-last-line-size": "lastLineSizeValue()" } }, exportAs: ["slSkeletonText"], ngImport: i0, template: `@for (row of rows(); track row) {
|
|
306
|
+
<span data-part="line" data-part-line=""></span>
|
|
307
|
+
}`, isInline: true, styles: ["@layer slotted.components{[data-ui-skeleton][data-part-root][data-loading],[data-ui-skeleton][data-part-text][data-loading] [data-part-line]{--_fill: var( --slotted-skeleton-fill, color-mix( in oklab, var(--slotted-disabled-background, ButtonFace) 92%, var(--slotted-text, CanvasText) ) );--_edge: var(--slotted-skeleton-border-color, var(--slotted-border-subtle, ButtonBorder));--_highlight: var( --slotted-skeleton-highlight-color, color-mix(in oklab, var(--_fill) 86%, var(--slotted-text, CanvasText)) );--_trough: var( --slotted-skeleton-trough-color, color-mix(in oklab, var(--_fill) 60%, var(--slotted-surface-sunken, Canvas)) );background-color:var(--_fill);border:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px)) solid var(--_edge);box-sizing:border-box;-webkit-user-select:none;user-select:none}[data-ui-skeleton][data-part-root]{display:inline-block;min-block-size:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px))}[data-ui-skeleton][data-part-root][data-shape=text]{--_line: var(--slotted-skeleton-line-size, 1cap);block-size:var(--slotted-skeleton-block-size, var(--_line));border-radius:var(--slotted-radius-full, 9999px);inline-size:var(--slotted-skeleton-inline-size, 100%);vertical-align:calc(.5cap - .5 * var(--_line))}[data-ui-skeleton][data-part-root][data-shape=block]{block-size:var(--slotted-skeleton-block-size, auto);border-radius:var(--slotted-skeleton-radius, var(--slotted-radius-md, 6px));display:block;inline-size:var(--slotted-skeleton-inline-size, 100%);min-block-size:var(--slotted-skeleton-min-block-size, 1lh)}[data-ui-skeleton][data-part-root][data-shape=circle],[data-ui-skeleton][data-part-root][data-shape=square]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px));block-size:var(--slotted-skeleton-block-size, var(--_size));inline-size:var(--slotted-skeleton-inline-size, var(--_size))}[data-ui-skeleton][data-part-root][data-shape=circle]{border-radius:var(--slotted-radius-full, 9999px)}[data-ui-skeleton][data-part-root][data-shape=square]{border-radius:var(--slotted-skeleton-radius, calc(var(--_size) / 6))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xs],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xs]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xs, 24px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=sm],[data-ui-skeleton][data-part-root][data-shape=square][data-size=sm]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-sm, 28px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=md],[data-ui-skeleton][data-part-root][data-shape=square][data-size=md]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=lg],[data-ui-skeleton][data-part-root][data-shape=square][data-size=lg]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-lg, 48px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xl],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xl]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xl, 64px))}[data-ui-skeleton][data-part-root][data-loading]:not(:empty){block-size:var(--slotted-skeleton-block-size, auto);color:transparent;inline-size:var(--slotted-skeleton-inline-size, auto)}[data-ui-skeleton][data-part-root][data-loading]:not(:empty)>*{visibility:hidden}[data-ui-skeleton][data-part-text]{align-items:center;display:grid;grid-auto-rows:var(--slotted-skeleton-row-size, 1lh);inline-size:var(--slotted-skeleton-inline-size, 100%)}[data-ui-skeleton] [data-part-line]{block-size:var(--slotted-skeleton-line-size, 1cap);border-radius:var(--slotted-radius-full, 9999px);inline-size:100%}[data-ui-skeleton] [data-part-line]:last-child:not(:only-child){inline-size:var(--slotted-skeleton-last-line-size, 62%)}[data-ui-skeleton][data-part-root]:not([data-loading]),[data-ui-skeleton][data-part-text]:not([data-loading]){display:contents}[data-ui-skeleton][data-part-region]{inline-size:var(--slotted-skeleton-inline-size, 100%);min-inline-size:0}[data-ui-skeleton][data-part-root][data-loading]:not([data-animation=none]),[data-ui-skeleton][data-part-text][data-loading]:not([data-animation=none]) [data-part-line]{overflow:clip;position:relative}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-delay:calc(var(--slotted-skeleton-phase, 0) * var(--slotted-duration-loop-slow) * -1);animation-duration:var(--slotted-duration-loop-slow);animation-iteration-count:infinite;content:\"\";inset-block:0;inset-inline:0;pointer-events:none;position:absolute}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-timing-function:ease-in-out;background-color:var(--_trough);opacity:0}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-timing-function:linear;background-image:linear-gradient(90deg,transparent 14%,var(--_highlight) 50%,transparent 86%)}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:dir(rtl):after,[data-ui-skeleton][data-animation=shimmer][data-loading]:dir(rtl) [data-part-line]:after{animation-direction:reverse}@media(prefers-reduced-motion:no-preference){[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-pulse}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-sweep}}@keyframes slotted-skeleton-pulse{50%{opacity:1}}@keyframes slotted-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){[data-ui-skeleton]:after,[data-ui-skeleton] [data-part-line]:after{animation:none}}@media(forced-colors:active){[data-ui-skeleton][data-part-root][data-loading]:after,[data-ui-skeleton][data-part-text][data-loading] [data-part-line]:after{background-image:none}}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
294
308
|
}
|
|
295
309
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSkeletonText, decorators: [{
|
|
296
310
|
type: Component,
|
|
297
311
|
args: [{ selector: '[slSkeletonText]', standalone: true, template: `@for (row of rows(); track row) {
|
|
298
|
-
<span data-part="line"></span>
|
|
312
|
+
<span data-part="line" data-part-line=""></span>
|
|
299
313
|
}`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, exportAs: 'slSkeletonText', host: {
|
|
300
314
|
'data-ui': 'skeleton',
|
|
315
|
+
'data-ui-skeleton': '',
|
|
301
316
|
'data-part': 'text',
|
|
317
|
+
'data-part-text': '',
|
|
302
318
|
'[attr.data-animation]': 'animationValue()',
|
|
303
319
|
'[attr.data-loading]': 'painted() ? "" : null',
|
|
304
320
|
'[attr.aria-hidden]': 'painted() ? "true" : null',
|
|
305
321
|
'[attr.inert]': 'painted() ? "" : null',
|
|
306
322
|
'[style.--slotted-skeleton-inline-size]': 'inlineSize()',
|
|
307
323
|
'[style.--slotted-skeleton-last-line-size]': 'lastLineSizeValue()',
|
|
308
|
-
}, styles: ["@layer slotted.components{[data-ui
|
|
324
|
+
}, styles: ["@layer slotted.components{[data-ui-skeleton][data-part-root][data-loading],[data-ui-skeleton][data-part-text][data-loading] [data-part-line]{--_fill: var( --slotted-skeleton-fill, color-mix( in oklab, var(--slotted-disabled-background, ButtonFace) 92%, var(--slotted-text, CanvasText) ) );--_edge: var(--slotted-skeleton-border-color, var(--slotted-border-subtle, ButtonBorder));--_highlight: var( --slotted-skeleton-highlight-color, color-mix(in oklab, var(--_fill) 86%, var(--slotted-text, CanvasText)) );--_trough: var( --slotted-skeleton-trough-color, color-mix(in oklab, var(--_fill) 60%, var(--slotted-surface-sunken, Canvas)) );background-color:var(--_fill);border:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px)) solid var(--_edge);box-sizing:border-box;-webkit-user-select:none;user-select:none}[data-ui-skeleton][data-part-root]{display:inline-block;min-block-size:var(--slotted-skeleton-border-width, var(--slotted-border-width-thin, 1px))}[data-ui-skeleton][data-part-root][data-shape=text]{--_line: var(--slotted-skeleton-line-size, 1cap);block-size:var(--slotted-skeleton-block-size, var(--_line));border-radius:var(--slotted-radius-full, 9999px);inline-size:var(--slotted-skeleton-inline-size, 100%);vertical-align:calc(.5cap - .5 * var(--_line))}[data-ui-skeleton][data-part-root][data-shape=block]{block-size:var(--slotted-skeleton-block-size, auto);border-radius:var(--slotted-skeleton-radius, var(--slotted-radius-md, 6px));display:block;inline-size:var(--slotted-skeleton-inline-size, 100%);min-block-size:var(--slotted-skeleton-min-block-size, 1lh)}[data-ui-skeleton][data-part-root][data-shape=circle],[data-ui-skeleton][data-part-root][data-shape=square]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px));block-size:var(--slotted-skeleton-block-size, var(--_size));inline-size:var(--slotted-skeleton-inline-size, var(--_size))}[data-ui-skeleton][data-part-root][data-shape=circle]{border-radius:var(--slotted-radius-full, 9999px)}[data-ui-skeleton][data-part-root][data-shape=square]{border-radius:var(--slotted-skeleton-radius, calc(var(--_size) / 6))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xs],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xs]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xs, 24px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=sm],[data-ui-skeleton][data-part-root][data-shape=square][data-size=sm]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-sm, 28px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=md],[data-ui-skeleton][data-part-root][data-shape=square][data-size=md]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-md, 36px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=lg],[data-ui-skeleton][data-part-root][data-shape=square][data-size=lg]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-lg, 48px))}[data-ui-skeleton][data-part-root][data-shape=circle][data-size=xl],[data-ui-skeleton][data-part-root][data-shape=square][data-size=xl]{--_size: var(--slotted-skeleton-size, var(--slotted-avatar-size-xl, 64px))}[data-ui-skeleton][data-part-root][data-loading]:not(:empty){block-size:var(--slotted-skeleton-block-size, auto);color:transparent;inline-size:var(--slotted-skeleton-inline-size, auto)}[data-ui-skeleton][data-part-root][data-loading]:not(:empty)>*{visibility:hidden}[data-ui-skeleton][data-part-text]{align-items:center;display:grid;grid-auto-rows:var(--slotted-skeleton-row-size, 1lh);inline-size:var(--slotted-skeleton-inline-size, 100%)}[data-ui-skeleton] [data-part-line]{block-size:var(--slotted-skeleton-line-size, 1cap);border-radius:var(--slotted-radius-full, 9999px);inline-size:100%}[data-ui-skeleton] [data-part-line]:last-child:not(:only-child){inline-size:var(--slotted-skeleton-last-line-size, 62%)}[data-ui-skeleton][data-part-root]:not([data-loading]),[data-ui-skeleton][data-part-text]:not([data-loading]){display:contents}[data-ui-skeleton][data-part-region]{inline-size:var(--slotted-skeleton-inline-size, 100%);min-inline-size:0}[data-ui-skeleton][data-part-root][data-loading]:not([data-animation=none]),[data-ui-skeleton][data-part-text][data-loading]:not([data-animation=none]) [data-part-line]{overflow:clip;position:relative}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-delay:calc(var(--slotted-skeleton-phase, 0) * var(--slotted-duration-loop-slow) * -1);animation-duration:var(--slotted-duration-loop-slow);animation-iteration-count:infinite;content:\"\";inset-block:0;inset-inline:0;pointer-events:none;position:absolute}[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-timing-function:ease-in-out;background-color:var(--_trough);opacity:0}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-timing-function:linear;background-image:linear-gradient(90deg,transparent 14%,var(--_highlight) 50%,transparent 86%)}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:dir(rtl):after,[data-ui-skeleton][data-animation=shimmer][data-loading]:dir(rtl) [data-part-line]:after{animation-direction:reverse}@media(prefers-reduced-motion:no-preference){[data-ui-skeleton][data-part-root][data-animation=pulse][data-loading]:after,[data-ui-skeleton][data-animation=pulse][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-pulse}[data-ui-skeleton][data-part-root][data-animation=shimmer][data-loading]:after,[data-ui-skeleton][data-animation=shimmer][data-loading] [data-part-line]:after{animation-name:slotted-skeleton-sweep}}@keyframes slotted-skeleton-pulse{50%{opacity:1}}@keyframes slotted-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){[data-ui-skeleton]:after,[data-ui-skeleton] [data-part-line]:after{animation:none}}@media(forced-colors:active){[data-ui-skeleton][data-part-root][data-loading]:after,[data-ui-skeleton][data-part-text][data-loading] [data-part-line]:after{background-image:none}}}\n"] }]
|
|
309
325
|
}], propDecorators: { lines: [{ type: i0.Input, args: [{ isSignal: true, alias: "lines", required: false }] }], animation: [{ type: i0.Input, args: [{ isSignal: true, alias: "animation", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], lastLineSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "lastLineSize", required: false }] }], inlineSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "inlineSize", required: false }] }] } });
|
|
310
326
|
|
|
311
327
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slotted-angular-skeleton.mjs","sources":["../../skeleton/src/skeleton-defaults.ts","../../skeleton/src/skeleton.constants.ts","../../skeleton/src/skeleton-region.ts","../../skeleton/src/skeleton.ts","../../skeleton/src/skeleton-text.ts","../../skeleton/src/slotted-angular-skeleton.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\n\nimport type { SkeletonAnimation, SkeletonLive } from './skeleton.constants';\n\n/**\n * What every placeholder in an application looks like, and how a load is\n * timed, before any of them states anything of its own. The two durations are\n * here rather than on a box because the policy is an application's: a team\n * decides once that a wait under two hundred milliseconds is not worth\n * reporting, and every region inherits it.\n */\nexport interface SkeletonDefaults {\n animation?: SkeletonAnimation;\n delay?: number;\n lastLineSize?: string;\n live?: SkeletonLive;\n loadedLabel?: string;\n minDuration?: number;\n}\n\nexport const SKELETON_DEFAULTS_TOKEN = new InjectionToken<SkeletonDefaults>(\n 'slotted skeleton defaults',\n { providedIn: 'root', factory: (): SkeletonDefaults => ({}) },\n);\n\n/**\n * An application decides once how its placeholders are animated, how long a\n * wait has to last before one appears, how long one is held once it has, and\n * what a screen reader hears when the content arrives. A region or a box that\n * states any of those still wins: an explicit input is never overridden by the\n * token. The words the family writes come from the language in force\n * (`provideSlotted`).\n */\nexport function provideSkeletonDefaults(defaults: SkeletonDefaults) {\n return { provide: SKELETON_DEFAULTS_TOKEN, useValue: defaults };\n}\n\nexport function injectSkeletonDefaults(): SkeletonDefaults {\n return inject(SKELETON_DEFAULTS_TOKEN);\n}\n","export type SkeletonShape = 'text' | 'block' | 'circle' | 'square';\nexport type SkeletonSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\nexport type SkeletonAnimation = 'shimmer' | 'pulse' | 'none';\nexport type SkeletonLive = 'polite' | 'off';\n\nexport const SKELETON_DEFAULT_ANIMATION: SkeletonAnimation = 'shimmer';\nexport const SKELETON_DEFAULT_SHAPE: SkeletonShape = 'text';\nexport const SKELETON_DEFAULT_SIZE: SkeletonSize = 'md';\nexport const SKELETON_DEFAULT_LIVE: SkeletonLive = 'polite';\nexport const SKELETON_DEFAULT_LINES = 3;\n","import { type PartialMessages, skeletonMessages, type SkeletonMessages } from '@slotted/core/i18n';\nimport { initialLoadingVisibility, nextLoadingVisibility } from '@slotted/core/loading';\nimport type { LoadingVisibilityState } from '@slotted/core/loading';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n effect,\n inject,\n input,\n numberAttribute,\n output,\n signal,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\nimport { injectMessages } from '@slotted/angular/i18n';\n\nimport { injectSkeletonDefaults } from './skeleton-defaults';\nimport {\n SKELETON_DEFAULT_ANIMATION,\n SKELETON_DEFAULT_LIVE,\n type SkeletonAnimation,\n type SkeletonLive,\n} from './skeleton.constants';\n\n/**\n * The thing that is loading, rather than the shapes drawn on it.\n *\n * It owns four facts the boxes inside it cannot own on their own. It carries\n * `aria-busy`, which is the platform's own answer — ARIA 1.2 asks an author to\n * set it \"on the container element before the first change\" and clear it \"when\n * the last change is complete\". It holds the one announcement: twelve\n * placeholders are one wait, and PatternFly, the only surveyed library that\n * announces at all, puts the text on each box and then has to warn its readers\n * to give every one of them different words. It takes its whole subtree out of\n * the tab order. And it drives the animation phase every placeholder inside it\n * reads, so a region pulses as one surface instead of as twelve blinks.\n *\n * The selector is a bare attribute, so the element stays the consumer's: a\n * region is whatever already wraps the content — a `section`, a `tbody`, a\n * list item — and wrapping it in a second element would change their layout to\n * carry an attribute.\n *\n * The region itself is never `inert`, and that is deliberate rather than an\n * omission: an inert subtree is not announced, so marking the region would\n * silence the one thing it has to say.\n */\n@Component({\n selector: '[slSkeletonRegion]',\n standalone: true,\n template: `@if (liveValue() !== 'off') {\n <span data-part=\"announcement\" data-ui=\"visually-hidden\" role=\"status\">{{\n announcement()\n }}</span>\n }\n <ng-content />`,\n styleUrls: [\n '../../../styles/src/skeleton/skeleton.css',\n '../../../styles/src/visually-hidden/visually-hidden.css',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSkeletonRegion',\n host: {\n 'data-ui': 'skeleton',\n 'data-part': 'region',\n '[attr.data-animation]': 'animationValue()',\n '[attr.data-loading]': 'painted() ? \"\" : null',\n '[attr.aria-busy]': 'painted() ? \"true\" : null',\n },\n})\nexport class SlSkeletonRegion {\n readonly loading = input(true, { transform: booleanAttribute });\n readonly animation = input<SkeletonAnimation | undefined>(undefined);\n readonly live = input<SkeletonLive | undefined>(undefined);\n /**\n * Words laid over the catalog of the language in force, key by key: what a\n * screen reader hears once, while the region is waiting (`label`).\n */\n readonly messages = input<PartialMessages<SkeletonMessages> | undefined>(undefined);\n readonly loadedLabel = input<string | undefined>(undefined);\n readonly delay = input<number | undefined, unknown>(undefined, { transform: optionalNumber });\n readonly minDuration = input<number | undefined, unknown>(undefined, {\n transform: optionalNumber,\n });\n\n /**\n * The moment the placeholders are actually withdrawn, which is later than\n * `loading` turning false whenever `minDuration` is holding them. An\n * application moving focus on the input alone would move it into\n * placeholders.\n */\n readonly reveal = output<void>();\n\n private readonly defaults = injectSkeletonDefaults();\n /** The family's words in the language in force, with this region's `messages` laid over them. */\n readonly t = injectMessages(skeletonMessages, this.messages);\n\n readonly animationValue = computed(\n () => this.animation() ?? this.defaults.animation ?? SKELETON_DEFAULT_ANIMATION,\n );\n readonly liveValue = computed(() => this.live() ?? this.defaults.live ?? SKELETON_DEFAULT_LIVE);\n private readonly delayValue = computed(() => this.delay() ?? this.defaults.delay ?? 0);\n private readonly holdValue = computed(() => this.minDuration() ?? this.defaults.minDuration ?? 0);\n\n /** Whether the placeholders are painted, which is not the `loading` input. */\n readonly painted = signal(false);\n\n /**\n * Emptying a live region announces nothing, which is what makes one load one\n * announcement rather than two. A completion message is opt-in for the same\n * reason: a page of six regions would otherwise say six things nobody asked\n * to hear.\n */\n readonly announcement = computed(() =>\n this.painted() ? this.t('label') : (this.loadedLabel() ?? this.defaults.loadedLabel ?? ''),\n );\n\n private machine: LoadingVisibilityState = initialLoadingVisibility;\n private timer: ReturnType<typeof setTimeout> | undefined;\n\n constructor() {\n inject(DestroyRef).onDestroy(() => clearTimeout(this.timer));\n\n effect(() => {\n const request = {\n loading: this.loading(),\n delay: this.delayValue(),\n minDuration: this.holdValue(),\n };\n untracked(() => this.settle(request));\n });\n }\n\n /**\n * One step of the shared machine, plus at most one timer. The rule lives in\n * `@slotted/core/loading` rather than here so React and Angular cannot\n * disagree about when a placeholder appears — a difference no test that\n * looked at either binding alone would report.\n */\n private settle(request: { loading: boolean; delay: number; minDuration: number }) {\n clearTimeout(this.timer);\n const answer = nextLoadingVisibility({ ...request, now: Date.now(), state: this.machine });\n this.machine = answer.state;\n\n const was = this.painted();\n this.painted.set(answer.state.visible);\n if (was && !answer.state.visible) this.reveal.emit();\n\n if (answer.wait === null) return;\n this.timer = setTimeout(() => this.settle(request), answer.wait);\n }\n}\n\n/**\n * Absence has to survive the transform. `numberAttribute` maps an unset input\n * to `NaN`, and `NaN` is a value: it would stop the application's own timing\n * decision from ever reaching a region that says nothing.\n */\nfunction optionalNumber(value: unknown): number | undefined {\n return value === undefined || value === null || value === '' ? undefined : numberAttribute(value);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n HostAttributeToken,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { injectSkeletonDefaults } from './skeleton-defaults';\nimport { SlSkeletonRegion } from './skeleton-region';\nimport {\n SKELETON_DEFAULT_ANIMATION,\n SKELETON_DEFAULT_SHAPE,\n SKELETON_DEFAULT_SIZE,\n type SkeletonAnimation,\n type SkeletonShape,\n type SkeletonSize,\n} from './skeleton.constants';\n\n/**\n * One placeholder box.\n *\n * With no projected content it draws the geometry `shape` and `size` describe.\n * With content it takes *that* content's geometry and covers it, which is the\n * only form in which the reserved space cannot disagree with what replaces it\n * — MUI infers the box from `children` and React Spectrum clones the child\n * with a skeleton class, and both arrive here. The stylesheet tells the two\n * apart with `:empty`, so nothing has to be declared about which one this is.\n *\n * Hidden from assistive technology and taken out of the tab order while it is\n * painted: reading out the absence of something is noise, and focus must not\n * fall into content that is not ready. An `aria-hidden` the consumer wrote on\n * their own element is read once through `HostAttributeToken` and kept, which\n * is the escape hatch this family established in August.\n *\n * The selector is a bare attribute, so the element stays the consumer's: a\n * placeholder standing in for a word belongs in a `span` and one standing in\n * for a card belongs in whatever the card is.\n */\n@Component({\n selector: '[slSkeleton]',\n standalone: true,\n template: '<ng-content />',\n styleUrl: '../../../styles/src/skeleton/skeleton.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSkeleton',\n host: {\n 'data-ui': 'skeleton',\n 'data-part': 'root',\n '[attr.data-shape]': 'shape()',\n '[attr.data-size]': 'size()',\n '[attr.data-animation]': 'animationValue()',\n '[attr.data-loading]': 'painted() ? \"\" : null',\n '[attr.aria-hidden]': 'ariaHidden()',\n '[attr.inert]': 'painted() ? \"\" : null',\n '[style.--slotted-skeleton-inline-size]': 'inlineSize()',\n '[style.--slotted-skeleton-block-size]': 'blockSize()',\n },\n})\nexport class SlSkeleton {\n readonly shape = input<SkeletonShape>(SKELETON_DEFAULT_SHAPE);\n readonly size = input<SkeletonSize>(SKELETON_DEFAULT_SIZE);\n readonly animation = input<SkeletonAnimation | undefined>(undefined);\n readonly loading = input<boolean | undefined, unknown>(undefined, { transform: optionalBoolean });\n /**\n * The geometry, named for the axes the layout is written in rather than for\n * the screen's. Every rule in this library is logical, and a `width` input\n * feeding an `inline-size` declaration would be one word lying about the\n * other.\n */\n readonly inlineSize = input<string | undefined>(undefined);\n readonly blockSize = input<string | undefined>(undefined);\n\n private readonly defaults = injectSkeletonDefaults();\n /** `null` outside a region, which is how \"nobody said\" differs from \"false\". */\n private readonly region = inject(SlSkeletonRegion, { optional: true, skipSelf: true });\n private readonly ownAriaHidden = inject(new HostAttributeToken('aria-hidden'), {\n optional: true,\n });\n\n readonly painted = computed(() => this.loading() ?? this.region?.painted() ?? true);\n readonly animationValue = computed(\n () =>\n this.animation() ??\n this.region?.animationValue() ??\n this.defaults.animation ??\n SKELETON_DEFAULT_ANIMATION,\n );\n\n readonly ariaHidden = computed(() =>\n this.painted() ? (this.ownAriaHidden ?? 'true') : this.ownAriaHidden,\n );\n}\n\n/**\n * Absence has to survive the transform. `booleanAttribute` maps an unset input\n * to `false`, and `false` is a value: it would stop the region's own answer\n * from ever reaching a placeholder that says nothing.\n */\nexport function optionalBoolean(value: unknown): boolean | undefined {\n return value === undefined ? undefined : booleanAttribute(value);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n numberAttribute,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { injectSkeletonDefaults } from './skeleton-defaults';\nimport { SlSkeletonRegion } from './skeleton-region';\nimport { optionalBoolean } from './skeleton';\nimport {\n SKELETON_DEFAULT_ANIMATION,\n SKELETON_DEFAULT_LINES,\n type SkeletonAnimation,\n} from './skeleton.constants';\n\n/**\n * The rows of a paragraph that has not arrived.\n *\n * Each row is exactly one line box and the bar inside it is one em, so `lines`\n * rows occupy exactly the `lines` lines of the paragraph they stand in — at\n * every type size and every density, because both come from the type the rows\n * are placed in rather than from a number typed here. Every implementation\n * surveyed while this family was rebuilt states a pixel height instead, and is\n * therefore right at one density and wrong at the others.\n *\n * The last row is drawn short, which is what makes a stack of bars read as\n * prose rather than as a barcode — and only when there is more than one, since\n * a lone row cut to 62% stands for a sentence that was never there. The widths\n * are fixed rather than random: Carbon randomises them, and a randomised width\n * is a hydration mismatch waiting for its first server-rendered page.\n */\n@Component({\n selector: '[slSkeletonText]',\n standalone: true,\n template: `@for (row of rows(); track row) {\n <span data-part=\"line\"></span>\n }`,\n styleUrl: '../../../styles/src/skeleton/skeleton.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSkeletonText',\n host: {\n 'data-ui': 'skeleton',\n 'data-part': 'text',\n '[attr.data-animation]': 'animationValue()',\n '[attr.data-loading]': 'painted() ? \"\" : null',\n '[attr.aria-hidden]': 'painted() ? \"true\" : null',\n '[attr.inert]': 'painted() ? \"\" : null',\n '[style.--slotted-skeleton-inline-size]': 'inlineSize()',\n '[style.--slotted-skeleton-last-line-size]': 'lastLineSizeValue()',\n },\n})\nexport class SlSkeletonText {\n readonly lines = input(SKELETON_DEFAULT_LINES, { transform: numberAttribute });\n readonly animation = input<SkeletonAnimation | undefined>(undefined);\n readonly loading = input<boolean | undefined, unknown>(undefined, { transform: optionalBoolean });\n readonly lastLineSize = input<string | undefined>(undefined);\n readonly inlineSize = input<string | undefined>(undefined);\n\n private readonly defaults = injectSkeletonDefaults();\n private readonly region = inject(SlSkeletonRegion, { optional: true, skipSelf: true });\n\n readonly painted = computed(() => this.loading() ?? this.region?.painted() ?? true);\n readonly animationValue = computed(\n () =>\n this.animation() ??\n this.region?.animationValue() ??\n this.defaults.animation ??\n SKELETON_DEFAULT_ANIMATION,\n );\n readonly lastLineSizeValue = computed(() => this.lastLineSize() ?? this.defaults.lastLineSize);\n\n /**\n * No rows at all once the paragraph has arrived. The element stays, and the\n * stylesheet takes it out of layout, so nothing the consumer wrote beside it\n * is remounted on the way through.\n *\n * A paragraph of no rows is not a paragraph, whatever arithmetic produced\n * the number, so the count never falls below one.\n */\n readonly rows = computed(() => {\n if (!this.painted()) return [];\n const count = Math.max(1, Math.trunc(this.lines()) || 1);\n return Array.from({ length: count }, (_, row) => row);\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slotted-angular-skeleton.mjs","sources":["../../skeleton/src/skeleton-defaults.ts","../../skeleton/src/skeleton.constants.ts","../../skeleton/src/skeleton-region.ts","../../skeleton/src/skeleton.ts","../../skeleton/src/skeleton-text.ts","../../skeleton/src/slotted-angular-skeleton.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\n\nimport type { SkeletonAnimation, SkeletonLive } from './skeleton.constants';\n\n/**\n * What every placeholder in an application looks like, and how a load is\n * timed, before any of them states anything of its own. The two durations are\n * here rather than on a box because the policy is an application's: a team\n * decides once that a wait under two hundred milliseconds is not worth\n * reporting, and every region inherits it.\n */\nexport interface SkeletonDefaults {\n animation?: SkeletonAnimation;\n delay?: number;\n lastLineSize?: string;\n live?: SkeletonLive;\n loadedLabel?: string;\n minDuration?: number;\n}\n\nexport const SKELETON_DEFAULTS_TOKEN = new InjectionToken<SkeletonDefaults>(\n 'slotted skeleton defaults',\n { providedIn: 'root', factory: (): SkeletonDefaults => ({}) },\n);\n\n/**\n * An application decides once how its placeholders are animated, how long a\n * wait has to last before one appears, how long one is held once it has, and\n * what a screen reader hears when the content arrives. A region or a box that\n * states any of those still wins: an explicit input is never overridden by the\n * token. The words the family writes come from the language in force\n * (`provideSlotted`).\n */\nexport function provideSkeletonDefaults(defaults: SkeletonDefaults) {\n return { provide: SKELETON_DEFAULTS_TOKEN, useValue: defaults };\n}\n\nexport function injectSkeletonDefaults(): SkeletonDefaults {\n return inject(SKELETON_DEFAULTS_TOKEN);\n}\n","export type SkeletonShape = 'text' | 'block' | 'circle' | 'square';\nexport type SkeletonSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\nexport type SkeletonAnimation = 'shimmer' | 'pulse' | 'none';\nexport type SkeletonLive = 'polite' | 'off';\n\nexport const SKELETON_DEFAULT_ANIMATION: SkeletonAnimation = 'shimmer';\nexport const SKELETON_DEFAULT_SHAPE: SkeletonShape = 'text';\nexport const SKELETON_DEFAULT_SIZE: SkeletonSize = 'md';\nexport const SKELETON_DEFAULT_LIVE: SkeletonLive = 'polite';\nexport const SKELETON_DEFAULT_LINES = 3;\n","import { type PartialMessages, skeletonMessages, type SkeletonMessages } from '@slotted/core/i18n';\nimport { initialLoadingVisibility, nextLoadingVisibility } from '@slotted/core/loading';\nimport type { LoadingVisibilityState } from '@slotted/core/loading';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n effect,\n inject,\n input,\n numberAttribute,\n output,\n signal,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\nimport { injectMessages } from '@slotted/angular/i18n';\n\nimport { injectSkeletonDefaults } from './skeleton-defaults';\nimport {\n SKELETON_DEFAULT_ANIMATION,\n SKELETON_DEFAULT_LIVE,\n type SkeletonAnimation,\n type SkeletonLive,\n} from './skeleton.constants';\n\n/**\n * The thing that is loading, rather than the shapes drawn on it.\n *\n * It owns four facts the boxes inside it cannot own on their own. It carries\n * `aria-busy`, which is the platform's own answer — ARIA 1.2 asks an author to\n * set it \"on the container element before the first change\" and clear it \"when\n * the last change is complete\". It holds the one announcement: twelve\n * placeholders are one wait, and PatternFly, the only surveyed library that\n * announces at all, puts the text on each box and then has to warn its readers\n * to give every one of them different words. It takes its whole subtree out of\n * the tab order. And it drives the animation phase every placeholder inside it\n * reads, so a region pulses as one surface instead of as twelve blinks.\n *\n * The selector is a bare attribute, so the element stays the consumer's: a\n * region is whatever already wraps the content — a `section`, a `tbody`, a\n * list item — and wrapping it in a second element would change their layout to\n * carry an attribute.\n *\n * The region itself is never `inert`, and that is deliberate rather than an\n * omission: an inert subtree is not announced, so marking the region would\n * silence the one thing it has to say.\n */\n@Component({\n selector: '[slSkeletonRegion]',\n standalone: true,\n template: `@if (liveValue() !== 'off') {\n <span\n data-part=\"announcement\"\n data-part-announcement=\"\"\n data-ui=\"visually-hidden\"\n data-ui-visually-hidden=\"\"\n role=\"status\"\n >{{ announcement() }}</span\n >\n }\n <ng-content />`,\n styleUrls: [\n '../../../styles/src/skeleton/skeleton.css',\n '../../../styles/src/visually-hidden/visually-hidden.css',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSkeletonRegion',\n host: {\n 'data-ui': 'skeleton',\n 'data-ui-skeleton': '',\n 'data-part': 'region',\n 'data-part-region': '',\n '[attr.data-animation]': 'animationValue()',\n '[attr.data-loading]': 'painted() ? \"\" : null',\n '[attr.aria-busy]': 'painted() ? \"true\" : null',\n },\n})\nexport class SlSkeletonRegion {\n readonly loading = input(true, { transform: booleanAttribute });\n readonly animation = input<SkeletonAnimation | undefined>(undefined);\n readonly live = input<SkeletonLive | undefined>(undefined);\n /**\n * Words laid over the catalog of the language in force, key by key: what a\n * screen reader hears once, while the region is waiting (`label`).\n */\n readonly messages = input<PartialMessages<SkeletonMessages> | undefined>(undefined);\n readonly loadedLabel = input<string | undefined>(undefined);\n readonly delay = input<number | undefined, unknown>(undefined, { transform: optionalNumber });\n readonly minDuration = input<number | undefined, unknown>(undefined, {\n transform: optionalNumber,\n });\n\n /**\n * The moment the placeholders are actually withdrawn, which is later than\n * `loading` turning false whenever `minDuration` is holding them. An\n * application moving focus on the input alone would move it into\n * placeholders.\n */\n readonly reveal = output<void>();\n\n private readonly defaults = injectSkeletonDefaults();\n /** The family's words in the language in force, with this region's `messages` laid over them. */\n readonly t = injectMessages(skeletonMessages, this.messages);\n\n readonly animationValue = computed(\n () => this.animation() ?? this.defaults.animation ?? SKELETON_DEFAULT_ANIMATION,\n );\n readonly liveValue = computed(() => this.live() ?? this.defaults.live ?? SKELETON_DEFAULT_LIVE);\n private readonly delayValue = computed(() => this.delay() ?? this.defaults.delay ?? 0);\n private readonly holdValue = computed(() => this.minDuration() ?? this.defaults.minDuration ?? 0);\n\n /** Whether the placeholders are painted, which is not the `loading` input. */\n readonly painted = signal(false);\n\n /**\n * Emptying a live region announces nothing, which is what makes one load one\n * announcement rather than two. A completion message is opt-in for the same\n * reason: a page of six regions would otherwise say six things nobody asked\n * to hear.\n */\n readonly announcement = computed(() =>\n this.painted() ? this.t('label') : (this.loadedLabel() ?? this.defaults.loadedLabel ?? ''),\n );\n\n private machine: LoadingVisibilityState = initialLoadingVisibility;\n private timer: ReturnType<typeof setTimeout> | undefined;\n\n constructor() {\n inject(DestroyRef).onDestroy(() => clearTimeout(this.timer));\n\n effect(() => {\n const request = {\n loading: this.loading(),\n delay: this.delayValue(),\n minDuration: this.holdValue(),\n };\n untracked(() => this.settle(request));\n });\n }\n\n /**\n * One step of the shared machine, plus at most one timer. The rule lives in\n * `@slotted/core/loading` rather than here so React and Angular cannot\n * disagree about when a placeholder appears — a difference no test that\n * looked at either binding alone would report.\n */\n private settle(request: { loading: boolean; delay: number; minDuration: number }) {\n clearTimeout(this.timer);\n const answer = nextLoadingVisibility({ ...request, now: Date.now(), state: this.machine });\n this.machine = answer.state;\n\n const was = this.painted();\n this.painted.set(answer.state.visible);\n if (was && !answer.state.visible) this.reveal.emit();\n\n if (answer.wait === null) return;\n this.timer = setTimeout(() => this.settle(request), answer.wait);\n }\n}\n\n/**\n * Absence has to survive the transform. `numberAttribute` maps an unset input\n * to `NaN`, and `NaN` is a value: it would stop the application's own timing\n * decision from ever reaching a region that says nothing.\n */\nfunction optionalNumber(value: unknown): number | undefined {\n return value === undefined || value === null || value === '' ? undefined : numberAttribute(value);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n HostAttributeToken,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { injectSkeletonDefaults } from './skeleton-defaults';\nimport { SlSkeletonRegion } from './skeleton-region';\nimport {\n SKELETON_DEFAULT_ANIMATION,\n SKELETON_DEFAULT_SHAPE,\n SKELETON_DEFAULT_SIZE,\n type SkeletonAnimation,\n type SkeletonShape,\n type SkeletonSize,\n} from './skeleton.constants';\n\n/**\n * One placeholder box.\n *\n * With no projected content it draws the geometry `shape` and `size` describe.\n * With content it takes *that* content's geometry and covers it, which is the\n * only form in which the reserved space cannot disagree with what replaces it\n * — MUI infers the box from `children` and React Spectrum clones the child\n * with a skeleton class, and both arrive here. The stylesheet tells the two\n * apart with `:empty`, so nothing has to be declared about which one this is.\n *\n * Hidden from assistive technology and taken out of the tab order while it is\n * painted: reading out the absence of something is noise, and focus must not\n * fall into content that is not ready. An `aria-hidden` the consumer wrote on\n * their own element is read once through `HostAttributeToken` and kept, which\n * is the escape hatch this family established in August.\n *\n * The selector is a bare attribute, so the element stays the consumer's: a\n * placeholder standing in for a word belongs in a `span` and one standing in\n * for a card belongs in whatever the card is.\n */\n@Component({\n selector: '[slSkeleton]',\n standalone: true,\n template: '<ng-content />',\n styleUrl: '../../../styles/src/skeleton/skeleton.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSkeleton',\n host: {\n 'data-ui': 'skeleton',\n 'data-ui-skeleton': '',\n 'data-part': 'root',\n 'data-part-root': '',\n '[attr.data-shape]': 'shape()',\n '[attr.data-size]': 'size()',\n '[attr.data-animation]': 'animationValue()',\n '[attr.data-loading]': 'painted() ? \"\" : null',\n '[attr.aria-hidden]': 'ariaHidden()',\n '[attr.inert]': 'painted() ? \"\" : null',\n '[style.--slotted-skeleton-inline-size]': 'inlineSize()',\n '[style.--slotted-skeleton-block-size]': 'blockSize()',\n },\n})\nexport class SlSkeleton {\n readonly shape = input<SkeletonShape>(SKELETON_DEFAULT_SHAPE);\n readonly size = input<SkeletonSize>(SKELETON_DEFAULT_SIZE);\n readonly animation = input<SkeletonAnimation | undefined>(undefined);\n readonly loading = input<boolean | undefined, unknown>(undefined, { transform: optionalBoolean });\n /**\n * The geometry, named for the axes the layout is written in rather than for\n * the screen's. Every rule in this library is logical, and a `width` input\n * feeding an `inline-size` declaration would be one word lying about the\n * other.\n */\n readonly inlineSize = input<string | undefined>(undefined);\n readonly blockSize = input<string | undefined>(undefined);\n\n private readonly defaults = injectSkeletonDefaults();\n /** `null` outside a region, which is how \"nobody said\" differs from \"false\". */\n private readonly region = inject(SlSkeletonRegion, { optional: true, skipSelf: true });\n private readonly ownAriaHidden = inject(new HostAttributeToken('aria-hidden'), {\n optional: true,\n });\n\n readonly painted = computed(() => this.loading() ?? this.region?.painted() ?? true);\n readonly animationValue = computed(\n () =>\n this.animation() ??\n this.region?.animationValue() ??\n this.defaults.animation ??\n SKELETON_DEFAULT_ANIMATION,\n );\n\n readonly ariaHidden = computed(() =>\n this.painted() ? (this.ownAriaHidden ?? 'true') : this.ownAriaHidden,\n );\n}\n\n/**\n * Absence has to survive the transform. `booleanAttribute` maps an unset input\n * to `false`, and `false` is a value: it would stop the region's own answer\n * from ever reaching a placeholder that says nothing.\n */\nexport function optionalBoolean(value: unknown): boolean | undefined {\n return value === undefined ? undefined : booleanAttribute(value);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n numberAttribute,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { injectSkeletonDefaults } from './skeleton-defaults';\nimport { SlSkeletonRegion } from './skeleton-region';\nimport { optionalBoolean } from './skeleton';\nimport {\n SKELETON_DEFAULT_ANIMATION,\n SKELETON_DEFAULT_LINES,\n type SkeletonAnimation,\n} from './skeleton.constants';\n\n/**\n * The rows of a paragraph that has not arrived.\n *\n * Each row is exactly one line box and the bar inside it is one em, so `lines`\n * rows occupy exactly the `lines` lines of the paragraph they stand in — at\n * every type size and every density, because both come from the type the rows\n * are placed in rather than from a number typed here. Every implementation\n * surveyed while this family was rebuilt states a pixel height instead, and is\n * therefore right at one density and wrong at the others.\n *\n * The last row is drawn short, which is what makes a stack of bars read as\n * prose rather than as a barcode — and only when there is more than one, since\n * a lone row cut to 62% stands for a sentence that was never there. The widths\n * are fixed rather than random: Carbon randomises them, and a randomised width\n * is a hydration mismatch waiting for its first server-rendered page.\n */\n@Component({\n selector: '[slSkeletonText]',\n standalone: true,\n template: `@for (row of rows(); track row) {\n <span data-part=\"line\" data-part-line=\"\"></span>\n }`,\n styleUrl: '../../../styles/src/skeleton/skeleton.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSkeletonText',\n host: {\n 'data-ui': 'skeleton',\n 'data-ui-skeleton': '',\n 'data-part': 'text',\n 'data-part-text': '',\n '[attr.data-animation]': 'animationValue()',\n '[attr.data-loading]': 'painted() ? \"\" : null',\n '[attr.aria-hidden]': 'painted() ? \"true\" : null',\n '[attr.inert]': 'painted() ? \"\" : null',\n '[style.--slotted-skeleton-inline-size]': 'inlineSize()',\n '[style.--slotted-skeleton-last-line-size]': 'lastLineSizeValue()',\n },\n})\nexport class SlSkeletonText {\n readonly lines = input(SKELETON_DEFAULT_LINES, { transform: numberAttribute });\n readonly animation = input<SkeletonAnimation | undefined>(undefined);\n readonly loading = input<boolean | undefined, unknown>(undefined, { transform: optionalBoolean });\n readonly lastLineSize = input<string | undefined>(undefined);\n readonly inlineSize = input<string | undefined>(undefined);\n\n private readonly defaults = injectSkeletonDefaults();\n private readonly region = inject(SlSkeletonRegion, { optional: true, skipSelf: true });\n\n readonly painted = computed(() => this.loading() ?? this.region?.painted() ?? true);\n readonly animationValue = computed(\n () =>\n this.animation() ??\n this.region?.animationValue() ??\n this.defaults.animation ??\n SKELETON_DEFAULT_ANIMATION,\n );\n readonly lastLineSizeValue = computed(() => this.lastLineSize() ?? this.defaults.lastLineSize);\n\n /**\n * No rows at all once the paragraph has arrived. The element stays, and the\n * stylesheet takes it out of layout, so nothing the consumer wrote beside it\n * is remounted on the way through.\n *\n * A paragraph of no rows is not a paragraph, whatever arithmetic produced\n * the number, so the count never falls below one.\n */\n readonly rows = computed(() => {\n if (!this.painted()) return [];\n const count = Math.max(1, Math.trunc(this.lines()) || 1);\n return Array.from({ length: count }, (_, row) => row);\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAoBO,MAAM,uBAAuB,GAAG,IAAI,cAAc,CACvD,2BAA2B,EAC3B,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAyB,EAAE,CAAC,EAAE;AAG/D;;;;;;;AAOG;AACG,SAAU,uBAAuB,CAAC,QAA0B,EAAA;IAChE,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACjE;SAEgB,sBAAsB,GAAA;AACpC,IAAA,OAAO,MAAM,CAAC,uBAAuB,CAAC;AACxC;;AClCO,MAAM,0BAA0B,GAAsB,SAAS;AAC/D,MAAM,sBAAsB,GAAkB,MAAM;AACpD,MAAM,qBAAqB,GAAiB,IAAI;AAChD,MAAM,qBAAqB,GAAiB,QAAQ;AACpD,MAAM,sBAAsB,GAAG,CAAC;;ACmBvC;;;;;;;;;;;;;;;;;;;;;AAqBG;MAgCU,gBAAgB,CAAA;IAClB,OAAO,GAAG,KAAK,CAAC,IAAI,+EAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;IACtD,SAAS,GAAG,KAAK,CAAgC,SAAS;kFAAC;IAC3D,IAAI,GAAG,KAAK,CAA2B,SAAS;6EAAC;AAC1D;;;AAGG;IACM,QAAQ,GAAG,KAAK,CAAgD,SAAS;iFAAC;IAC1E,WAAW,GAAG,KAAK,CAAqB,SAAS;oFAAC;IAClD,KAAK,GAAG,KAAK,CAA8B,SAAS,6EAAI,SAAS,EAAE,cAAc,EAAA,CAAG;IACpF,WAAW,GAAG,KAAK,CAA8B,SAAS,mFACjE,SAAS,EAAE,cAAc,EAAA,CACzB;AAEF;;;;;AAKG;IACM,MAAM,GAAG,MAAM,EAAQ;IAEf,QAAQ,GAAG,sBAAsB,EAAE;;IAE3C,CAAC,GAAG,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC;AAEnD,IAAA,cAAc,GAAG,QAAQ,CAChC,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,0BAA0B;uFAChF;AACQ,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,qBAAqB;kFAAC;AAC9E,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;mFAAC;AACrE,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC;kFAAC;;IAGxF,OAAO,GAAG,MAAM,CAAC,KAAK;gFAAC;AAEhC;;;;;AAKG;AACM,IAAA,YAAY,GAAG,QAAQ,CAAC,MAC/B,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC;qFAC3F;IAEO,OAAO,GAA2B,wBAAwB;AAC1D,IAAA,KAAK;AAEb,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE5D,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,OAAO,GAAG;AACd,gBAAA,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;AACvB,gBAAA,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;AACxB,gBAAA,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE;aAC9B;YACD,SAAS,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACvC,QAAA,CAAC,CAAC;IACJ;AAEA;;;;;AAKG;AACK,IAAA,MAAM,CAAC,OAAiE,EAAA;AAC9E,QAAA,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACxB,MAAM,MAAM,GAAG,qBAAqB,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;AAC1F,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK;AAE3B,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;AACtC,QAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAEpD,QAAA,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;YAAE;AAC1B,QAAA,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IAClE;uGAhFW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,gBAAA,EAAA,6BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5BjB,CAAA;;;;;;;;;;AAUO,kBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,y3MAAA,EAAA,6QAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAkBN,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBA/B5B,SAAS;+BACE,oBAAoB,EAAA,UAAA,EAClB,IAAI,EAAA,QAAA,EACN,CAAA;;;;;;;;;;mBAUO,EAAA,eAAA,EAKA,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,kBAAkB,EAAA,IAAA,EACtB;AACJ,wBAAA,SAAS,EAAE,UAAU;AACrB,wBAAA,kBAAkB,EAAE,EAAE;AACtB,wBAAA,WAAW,EAAE,QAAQ;AACrB,wBAAA,kBAAkB,EAAE,EAAE;AACtB,wBAAA,uBAAuB,EAAE,kBAAkB;AAC3C,wBAAA,qBAAqB,EAAE,uBAAuB;AAC9C,wBAAA,kBAAkB,EAAE,2BAA2B;AAChD,qBAAA,EAAA,MAAA,EAAA,CAAA,y3MAAA,EAAA,6QAAA,CAAA,EAAA;;AAqFH;;;;AAIG;AACH,SAAS,cAAc,CAAC,KAAc,EAAA;IACpC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,GAAG,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;AACnG;;ACrJA;;;;;;;;;;;;;;;;;;;AAmBG;MAwBU,UAAU,CAAA;IACZ,KAAK,GAAG,KAAK,CAAgB,sBAAsB;8EAAC;IACpD,IAAI,GAAG,KAAK,CAAe,qBAAqB;6EAAC;IACjD,SAAS,GAAG,KAAK,CAAgC,SAAS;kFAAC;IAC3D,OAAO,GAAG,KAAK,CAA+B,SAAS,+EAAI,SAAS,EAAE,eAAe,EAAA,CAAG;AACjG;;;;;AAKG;IACM,UAAU,GAAG,KAAK,CAAqB,SAAS;mFAAC;IACjD,SAAS,GAAG,KAAK,CAAqB,SAAS;kFAAC;IAExC,QAAQ,GAAG,sBAAsB,EAAE;;AAEnC,IAAA,MAAM,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACrE,aAAa,GAAG,MAAM,CAAC,IAAI,kBAAkB,CAAC,aAAa,CAAC,EAAE;AAC7E,QAAA,QAAQ,EAAE,IAAI;AACf,KAAA,CAAC;AAEO,IAAA,OAAO,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI;gFAAC;IAC1E,cAAc,GAAG,QAAQ,CAChC,MACE,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE;QAC7B,IAAI,CAAC,QAAQ,CAAC,SAAS;QACvB,0BAA0B;uFAC7B;IAEQ,UAAU,GAAG,QAAQ,CAAC,MAC7B,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,aAAa,IAAI,MAAM,IAAI,IAAI,CAAC,aAAa;mFACrE;uGAhCU,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAV,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAU,4zCApBX,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,y3MAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAoBf,UAAU,EAAA,UAAA,EAAA,CAAA;kBAvBtB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAAA,UAAA,EACZ,IAAI,EAAA,QAAA,EACN,gBAAgB,mBAET,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,YAAY,EAAA,IAAA,EAChB;AACJ,wBAAA,SAAS,EAAE,UAAU;AACrB,wBAAA,kBAAkB,EAAE,EAAE;AACtB,wBAAA,WAAW,EAAE,MAAM;AACnB,wBAAA,gBAAgB,EAAE,EAAE;AACpB,wBAAA,mBAAmB,EAAE,SAAS;AAC9B,wBAAA,kBAAkB,EAAE,QAAQ;AAC5B,wBAAA,uBAAuB,EAAE,kBAAkB;AAC3C,wBAAA,qBAAqB,EAAE,uBAAuB;AAC9C,wBAAA,oBAAoB,EAAE,cAAc;AACpC,wBAAA,cAAc,EAAE,uBAAuB;AACvC,wBAAA,wCAAwC,EAAE,cAAc;AACxD,wBAAA,uCAAuC,EAAE,aAAa;AACvD,qBAAA,EAAA,MAAA,EAAA,CAAA,y3MAAA,CAAA,EAAA;;AAqCH;;;;AAIG;AACG,SAAU,eAAe,CAAC,KAAc,EAAA;AAC5C,IAAA,OAAO,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC;AAClE;;ACxFA;;;;;;;;;;;;;;;AAeG;MAwBU,cAAc,CAAA;IAChB,KAAK,GAAG,KAAK,CAAC,sBAAsB,6EAAI,SAAS,EAAE,eAAe,EAAA,CAAG;IACrE,SAAS,GAAG,KAAK,CAAgC,SAAS;kFAAC;IAC3D,OAAO,GAAG,KAAK,CAA+B,SAAS,+EAAI,SAAS,EAAE,eAAe,EAAA,CAAG;IACxF,YAAY,GAAG,KAAK,CAAqB,SAAS;qFAAC;IACnD,UAAU,GAAG,KAAK,CAAqB,SAAS;mFAAC;IAEzC,QAAQ,GAAG,sBAAsB,EAAE;AACnC,IAAA,MAAM,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE7E,IAAA,OAAO,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI;gFAAC;IAC1E,cAAc,GAAG,QAAQ,CAChC,MACE,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE;QAC7B,IAAI,CAAC,QAAQ,CAAC,SAAS;QACvB,0BAA0B;uFAC7B;AACQ,IAAA,iBAAiB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY;0FAAC;AAE9F;;;;;;;AAOG;AACM,IAAA,IAAI,GAAG,QAAQ,CAAC,MAAK;AAC5B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAAE,YAAA,OAAO,EAAE;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;AACxD,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IACvD,CAAC;6EAAC;uGAhCS,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,MAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,kBAAA,EAAA,6BAAA,EAAA,YAAA,EAAA,yBAAA,EAAA,sCAAA,EAAA,cAAA,EAAA,yCAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBf,CAAA;;AAER,GAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,y3MAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAkBS,cAAc,EAAA,UAAA,EAAA,CAAA;kBAvB1B,SAAS;+BACE,kBAAkB,EAAA,UAAA,EAChB,IAAI,EAAA,QAAA,EACN,CAAA;;IAER,EAAA,eAAA,EAEe,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,gBAAgB,EAAA,IAAA,EACpB;AACJ,wBAAA,SAAS,EAAE,UAAU;AACrB,wBAAA,kBAAkB,EAAE,EAAE;AACtB,wBAAA,WAAW,EAAE,MAAM;AACnB,wBAAA,gBAAgB,EAAE,EAAE;AACpB,wBAAA,uBAAuB,EAAE,kBAAkB;AAC3C,wBAAA,qBAAqB,EAAE,uBAAuB;AAC9C,wBAAA,oBAAoB,EAAE,2BAA2B;AACjD,wBAAA,cAAc,EAAE,uBAAuB;AACvC,wBAAA,wCAAwC,EAAE,cAAc;AACxD,wBAAA,2CAA2C,EAAE,qBAAqB;AACnE,qBAAA,EAAA,MAAA,EAAA,CAAA,y3MAAA,CAAA,EAAA;;;ACxDH;;AAEG;;"}
|