@semantic-components/ui-lab 0.63.0 → 0.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/semantic-components-ui-lab.mjs +36276 -0
- package/fesm2022/semantic-components-ui-lab.mjs.map +1 -0
- package/package.json +17 -3
- package/types/semantic-components-ui-lab.d.ts +7454 -0
- package/eslint.config.mjs +0 -39
- package/ng-package.json +0 -7
- package/project.json +0 -28
- package/src/index.ts +0 -2
- package/src/lib/components/accordion/README.md +0 -269
- package/src/lib/components/accordion/TODO.md +0 -58
- package/src/lib/components/accordion/accordion-content.ts +0 -31
- package/src/lib/components/accordion/accordion-header.ts +0 -15
- package/src/lib/components/accordion/accordion-item.ts +0 -17
- package/src/lib/components/accordion/accordion-panel.ts +0 -42
- package/src/lib/components/accordion/accordion-trigger-icon.ts +0 -27
- package/src/lib/components/accordion/accordion-trigger.ts +0 -46
- package/src/lib/components/accordion/accordion.ts +0 -35
- package/src/lib/components/accordion/index.ts +0 -7
- package/src/lib/components/alert/README.md +0 -117
- package/src/lib/components/alert/alert-action.ts +0 -17
- package/src/lib/components/alert/alert-description.ts +0 -20
- package/src/lib/components/alert/alert-title.ts +0 -20
- package/src/lib/components/alert/alert.ts +0 -39
- package/src/lib/components/alert/index.ts +0 -4
- package/src/lib/components/alert-dialog/ARCHITECTURE.md +0 -808
- package/src/lib/components/alert-dialog/README.md +0 -215
- package/src/lib/components/alert-dialog/alert-dialog-action.ts +0 -32
- package/src/lib/components/alert-dialog/alert-dialog-cancel.ts +0 -32
- package/src/lib/components/alert-dialog/alert-dialog-description.ts +0 -24
- package/src/lib/components/alert-dialog/alert-dialog-footer.ts +0 -21
- package/src/lib/components/alert-dialog/alert-dialog-header.ts +0 -23
- package/src/lib/components/alert-dialog/alert-dialog-media.ts +0 -22
- package/src/lib/components/alert-dialog/alert-dialog-portal.ts +0 -8
- package/src/lib/components/alert-dialog/alert-dialog-provider.ts +0 -135
- package/src/lib/components/alert-dialog/alert-dialog-title.ts +0 -20
- package/src/lib/components/alert-dialog/alert-dialog-trigger.ts +0 -25
- package/src/lib/components/alert-dialog/alert-dialog.ts +0 -77
- package/src/lib/components/alert-dialog/index.ts +0 -11
- package/src/lib/components/animated-counter/README.md +0 -102
- package/src/lib/components/animated-counter/animated-counter-types.ts +0 -23
- package/src/lib/components/animated-counter/animated-counter.ts +0 -143
- package/src/lib/components/animated-counter/index.ts +0 -6
- package/src/lib/components/aspect-ratio/README.md +0 -97
- package/src/lib/components/aspect-ratio/aspect-ratio.ts +0 -19
- package/src/lib/components/aspect-ratio/index.ts +0 -1
- package/src/lib/components/audio-player/README.md +0 -252
- package/src/lib/components/audio-player/audio-player-audio.ts +0 -32
- package/src/lib/components/audio-player/audio-player-cover.ts +0 -39
- package/src/lib/components/audio-player/audio-player-info.ts +0 -40
- package/src/lib/components/audio-player/audio-player-next.ts +0 -40
- package/src/lib/components/audio-player/audio-player-play-button.ts +0 -39
- package/src/lib/components/audio-player/audio-player-previous.ts +0 -40
- package/src/lib/components/audio-player/audio-player-progress.ts +0 -77
- package/src/lib/components/audio-player/audio-player-repeat.ts +0 -38
- package/src/lib/components/audio-player/audio-player-shuffle.ts +0 -39
- package/src/lib/components/audio-player/audio-player-volume.ts +0 -91
- package/src/lib/components/audio-player/audio-player.ts +0 -246
- package/src/lib/components/audio-player/index.ts +0 -11
- package/src/lib/components/avatar/README.md +0 -117
- package/src/lib/components/avatar/avatar-fallback.ts +0 -25
- package/src/lib/components/avatar/avatar-image.ts +0 -39
- package/src/lib/components/avatar/avatar.ts +0 -25
- package/src/lib/components/avatar/index.ts +0 -3
- package/src/lib/components/avatar-group/README.md +0 -94
- package/src/lib/components/avatar-group/avatar-group-types.ts +0 -9
- package/src/lib/components/avatar-group/avatar-group.ts +0 -181
- package/src/lib/components/avatar-group/index.ts +0 -2
- package/src/lib/components/backdrop/backdrop.ts +0 -75
- package/src/lib/components/backdrop/index.ts +0 -1
- package/src/lib/components/badge/README.md +0 -66
- package/src/lib/components/badge/badge.ts +0 -43
- package/src/lib/components/badge/index.ts +0 -1
- package/src/lib/components/barcode-scanner/README.md +0 -144
- package/src/lib/components/barcode-scanner/barcode-scanner-simple.ts +0 -36
- package/src/lib/components/barcode-scanner/barcode-scanner.ts +0 -460
- package/src/lib/components/barcode-scanner/index.ts +0 -3
- package/src/lib/components/breadcrumb/README.md +0 -80
- package/src/lib/components/breadcrumb/breadcrumb-ellipsis.ts +0 -46
- package/src/lib/components/breadcrumb/breadcrumb-item.ts +0 -17
- package/src/lib/components/breadcrumb/breadcrumb-link.ts +0 -17
- package/src/lib/components/breadcrumb/breadcrumb-list.ts +0 -20
- package/src/lib/components/breadcrumb/breadcrumb-page.ts +0 -20
- package/src/lib/components/breadcrumb/breadcrumb-separator.ts +0 -45
- package/src/lib/components/breadcrumb/breadcrumb.ts +0 -10
- package/src/lib/components/breadcrumb/index.ts +0 -7
- package/src/lib/components/button-group/button-group-separator.ts +0 -26
- package/src/lib/components/button-group/button-group-text.ts +0 -20
- package/src/lib/components/button-group/button-group.ts +0 -43
- package/src/lib/components/button-group/index.ts +0 -10
- package/src/lib/components/calendar/CALENDAR-VIEWS.md +0 -443
- package/src/lib/components/calendar/README.md +0 -227
- package/src/lib/components/calendar/calendar-day-view.ts +0 -310
- package/src/lib/components/calendar/calendar-header.ts +0 -58
- package/src/lib/components/calendar/calendar-month-view.ts +0 -176
- package/src/lib/components/calendar/calendar-year-view.ts +0 -167
- package/src/lib/components/calendar/calendar.ts +0 -273
- package/src/lib/components/calendar/index.ts +0 -1
- package/src/lib/components/card/README.md +0 -86
- package/src/lib/components/card/card-content.ts +0 -15
- package/src/lib/components/card/card-description.ts +0 -17
- package/src/lib/components/card/card-footer.ts +0 -17
- package/src/lib/components/card/card-header.ts +0 -17
- package/src/lib/components/card/card-title.ts +0 -17
- package/src/lib/components/card/card.ts +0 -20
- package/src/lib/components/card/index.ts +0 -6
- package/src/lib/components/chart/README.md +0 -220
- package/src/lib/components/chart/bar-chart.ts +0 -186
- package/src/lib/components/chart/chart-container.ts +0 -33
- package/src/lib/components/chart/chart-legend.ts +0 -42
- package/src/lib/components/chart/chart-tooltip.ts +0 -42
- package/src/lib/components/chart/chart-types.ts +0 -21
- package/src/lib/components/chart/donut-chart.ts +0 -35
- package/src/lib/components/chart/index.ts +0 -9
- package/src/lib/components/chart/line-chart.ts +0 -223
- package/src/lib/components/chart/pie-chart.ts +0 -186
- package/src/lib/components/checkbox/README.md +0 -293
- package/src/lib/components/checkbox/checkbox-field.ts +0 -78
- package/src/lib/components/checkbox/checkbox-indicator.ts +0 -27
- package/src/lib/components/checkbox/checkbox-types.ts +0 -15
- package/src/lib/components/checkbox/checkbox.ts +0 -74
- package/src/lib/components/checkbox/index.ts +0 -5
- package/src/lib/components/checkbox/visual-checkbox.ts +0 -47
- package/src/lib/components/collapsible/README.md +0 -191
- package/src/lib/components/collapsible/collapsible-content.ts +0 -28
- package/src/lib/components/collapsible/collapsible-panel.ts +0 -42
- package/src/lib/components/collapsible/collapsible-trigger.ts +0 -48
- package/src/lib/components/collapsible/collapsible.ts +0 -33
- package/src/lib/components/collapsible/index.ts +0 -4
- package/src/lib/components/color-picker/README.md +0 -218
- package/src/lib/components/color-picker/color-picker-area.ts +0 -107
- package/src/lib/components/color-picker/color-picker-eyedropper.ts +0 -76
- package/src/lib/components/color-picker/color-picker-hue.ts +0 -92
- package/src/lib/components/color-picker/color-picker-input.ts +0 -70
- package/src/lib/components/color-picker/color-picker-preview.ts +0 -21
- package/src/lib/components/color-picker/color-picker-swatches.ts +0 -60
- package/src/lib/components/color-picker/color-picker.ts +0 -227
- package/src/lib/components/color-picker/index.ts +0 -8
- package/src/lib/components/combobox/README.md +0 -166
- package/src/lib/components/combobox/combobox-empty.ts +0 -17
- package/src/lib/components/combobox/combobox-icon.ts +0 -20
- package/src/lib/components/combobox/combobox-input.ts +0 -32
- package/src/lib/components/combobox/combobox-item-indicator.ts +0 -20
- package/src/lib/components/combobox/combobox-item.ts +0 -49
- package/src/lib/components/combobox/combobox-list.ts +0 -40
- package/src/lib/components/combobox/combobox-portal.ts +0 -111
- package/src/lib/components/combobox/combobox-trigger.ts +0 -20
- package/src/lib/components/combobox/combobox.ts +0 -42
- package/src/lib/components/combobox/index.ts +0 -9
- package/src/lib/components/command/README.md +0 -161
- package/src/lib/components/command/command-empty.ts +0 -17
- package/src/lib/components/command/command-group-heading.ts +0 -20
- package/src/lib/components/command/command-group.ts +0 -23
- package/src/lib/components/command/command-input.ts +0 -67
- package/src/lib/components/command/command-item.ts +0 -61
- package/src/lib/components/command/command-list.ts +0 -19
- package/src/lib/components/command/command-separator.ts +0 -18
- package/src/lib/components/command/command-shortcut.ts +0 -20
- package/src/lib/components/command/command.ts +0 -35
- package/src/lib/components/command/index.ts +0 -9
- package/src/lib/components/confetti/README.md +0 -103
- package/src/lib/components/confetti/confetti-types.ts +0 -47
- package/src/lib/components/confetti/confetti.ts +0 -220
- package/src/lib/components/confetti/index.ts +0 -7
- package/src/lib/components/context-menu/README.md +0 -149
- package/src/lib/components/context-menu/context-menu-content.ts +0 -46
- package/src/lib/components/context-menu/context-menu-item.ts +0 -44
- package/src/lib/components/context-menu/context-menu-label.ts +0 -22
- package/src/lib/components/context-menu/context-menu-separator.ts +0 -18
- package/src/lib/components/context-menu/context-menu-shortcut.ts +0 -20
- package/src/lib/components/context-menu/context-menu-sub-content.ts +0 -83
- package/src/lib/components/context-menu/context-menu-sub-trigger.ts +0 -91
- package/src/lib/components/context-menu/context-menu-sub.ts +0 -38
- package/src/lib/components/context-menu/context-menu-trigger.ts +0 -40
- package/src/lib/components/context-menu/context-menu.ts +0 -106
- package/src/lib/components/context-menu/index.ts +0 -10
- package/src/lib/components/copy-button/README.md +0 -211
- package/src/lib/components/copy-button/copy-button-with-text.ts +0 -53
- package/src/lib/components/copy-button/copy-button.ts +0 -137
- package/src/lib/components/copy-button/copy-code.ts +0 -42
- package/src/lib/components/copy-button/copy-input.ts +0 -54
- package/src/lib/components/copy-button/index.ts +0 -4
- package/src/lib/components/countdown/README.md +0 -168
- package/src/lib/components/countdown/countdown-simple.ts +0 -118
- package/src/lib/components/countdown/countdown.ts +0 -235
- package/src/lib/components/countdown/index.ts +0 -3
- package/src/lib/components/data-table/README.md +0 -330
- package/src/lib/components/data-table/data-table-body.ts +0 -28
- package/src/lib/components/data-table/data-table-cell.ts +0 -20
- package/src/lib/components/data-table/data-table-column-toggle.ts +0 -96
- package/src/lib/components/data-table/data-table-filter.ts +0 -45
- package/src/lib/components/data-table/data-table-head.ts +0 -96
- package/src/lib/components/data-table/data-table-header.ts +0 -28
- package/src/lib/components/data-table/data-table-pagination.ts +0 -152
- package/src/lib/components/data-table/data-table-row.ts +0 -23
- package/src/lib/components/data-table/data-table.ts +0 -181
- package/src/lib/components/data-table/index.ts +0 -15
- package/src/lib/components/date-picker/README.md +0 -101
- package/src/lib/components/date-picker/date-picker.ts +0 -175
- package/src/lib/components/date-picker/index.ts +0 -1
- package/src/lib/components/date-range-picker/README.md +0 -148
- package/src/lib/components/date-range-picker/date-range-picker.ts +0 -348
- package/src/lib/components/date-range-picker/index.ts +0 -3
- package/src/lib/components/dialog/ARCHITECTURE.md +0 -792
- package/src/lib/components/dialog/README.md +0 -208
- package/src/lib/components/dialog/dialog-close.ts +0 -33
- package/src/lib/components/dialog/dialog-description.ts +0 -23
- package/src/lib/components/dialog/dialog-footer.ts +0 -20
- package/src/lib/components/dialog/dialog-header.ts +0 -17
- package/src/lib/components/dialog/dialog-portal.ts +0 -8
- package/src/lib/components/dialog/dialog-provider.ts +0 -175
- package/src/lib/components/dialog/dialog-title.ts +0 -20
- package/src/lib/components/dialog/dialog-trigger.ts +0 -25
- package/src/lib/components/dialog/dialog.ts +0 -79
- package/src/lib/components/dialog/index.ts +0 -9
- package/src/lib/components/diff-viewer/README.md +0 -172
- package/src/lib/components/diff-viewer/diff-algorithm.ts +0 -337
- package/src/lib/components/diff-viewer/diff-viewer.ts +0 -369
- package/src/lib/components/diff-viewer/index.ts +0 -8
- package/src/lib/components/dock/README.md +0 -204
- package/src/lib/components/dock/dock-badge.ts +0 -36
- package/src/lib/components/dock/dock-item.ts +0 -76
- package/src/lib/components/dock/dock-items.ts +0 -31
- package/src/lib/components/dock/dock-types.ts +0 -25
- package/src/lib/components/dock/dock.ts +0 -101
- package/src/lib/components/dock/index.ts +0 -11
- package/src/lib/components/drawer/ARCHITECTURE.md +0 -972
- package/src/lib/components/drawer/README.md +0 -205
- package/src/lib/components/drawer/drawer-close.ts +0 -18
- package/src/lib/components/drawer/drawer-description.ts +0 -17
- package/src/lib/components/drawer/drawer-footer.ts +0 -17
- package/src/lib/components/drawer/drawer-handle.ts +0 -17
- package/src/lib/components/drawer/drawer-header.ts +0 -17
- package/src/lib/components/drawer/drawer-portal.ts +0 -8
- package/src/lib/components/drawer/drawer-provider.ts +0 -142
- package/src/lib/components/drawer/drawer-title.ts +0 -17
- package/src/lib/components/drawer/drawer-trigger.ts +0 -24
- package/src/lib/components/drawer/drawer.ts +0 -77
- package/src/lib/components/drawer/index.ts +0 -11
- package/src/lib/components/emoji-picker/README.md +0 -151
- package/src/lib/components/emoji-picker/emoji-picker-trigger.ts +0 -48
- package/src/lib/components/emoji-picker/emoji-picker.ts +0 -666
- package/src/lib/components/emoji-picker/index.ts +0 -3
- package/src/lib/components/empty/README.md +0 -72
- package/src/lib/components/empty/empty-content.ts +0 -20
- package/src/lib/components/empty/empty-description.ts +0 -20
- package/src/lib/components/empty/empty-header.ts +0 -17
- package/src/lib/components/empty/empty-media.ts +0 -29
- package/src/lib/components/empty/empty-title.ts +0 -17
- package/src/lib/components/empty/empty.ts +0 -20
- package/src/lib/components/empty/index.ts +0 -6
- package/src/lib/components/field/README.md +0 -326
- package/src/lib/components/field/field-content.ts +0 -20
- package/src/lib/components/field/field-description.ts +0 -22
- package/src/lib/components/field/field-error.ts +0 -18
- package/src/lib/components/field/field-group.ts +0 -20
- package/src/lib/components/field/field-legend.ts +0 -24
- package/src/lib/components/field/field-separator.ts +0 -20
- package/src/lib/components/field/field-set.ts +0 -20
- package/src/lib/components/field/field-title.ts +0 -20
- package/src/lib/components/field/field.ts +0 -89
- package/src/lib/components/field/index.ts +0 -9
- package/src/lib/components/file-upload/README.md +0 -256
- package/src/lib/components/file-upload/file-upload-dropzone.ts +0 -100
- package/src/lib/components/file-upload/file-upload-item-delete.ts +0 -59
- package/src/lib/components/file-upload/file-upload-item-name.ts +0 -17
- package/src/lib/components/file-upload/file-upload-item-preview.ts +0 -52
- package/src/lib/components/file-upload/file-upload-item-progress.ts +0 -33
- package/src/lib/components/file-upload/file-upload-item-size.ts +0 -39
- package/src/lib/components/file-upload/file-upload-item.ts +0 -35
- package/src/lib/components/file-upload/file-upload-list.ts +0 -17
- package/src/lib/components/file-upload/file-upload-trigger.ts +0 -70
- package/src/lib/components/file-upload/file-upload.ts +0 -156
- package/src/lib/components/file-upload/index.ts +0 -11
- package/src/lib/components/hover-card/ARCHITECTURE.md +0 -341
- package/src/lib/components/hover-card/README.md +0 -118
- package/src/lib/components/hover-card/hover-card-portal.ts +0 -142
- package/src/lib/components/hover-card/hover-card-provider.ts +0 -85
- package/src/lib/components/hover-card/hover-card-trigger.ts +0 -75
- package/src/lib/components/hover-card/hover-card.ts +0 -97
- package/src/lib/components/hover-card/index.ts +0 -5
- package/src/lib/components/image-annotator/README.md +0 -132
- package/src/lib/components/image-annotator/image-annotator-types.ts +0 -29
- package/src/lib/components/image-annotator/image-annotator.ts +0 -549
- package/src/lib/components/image-annotator/index.ts +0 -7
- package/src/lib/components/image-compare/README.md +0 -239
- package/src/lib/components/image-compare/image-compare-after.ts +0 -39
- package/src/lib/components/image-compare/image-compare-before.ts +0 -30
- package/src/lib/components/image-compare/image-compare-container.ts +0 -119
- package/src/lib/components/image-compare/image-compare-label.ts +0 -34
- package/src/lib/components/image-compare/image-compare-slider.ts +0 -103
- package/src/lib/components/image-compare/image-compare.ts +0 -79
- package/src/lib/components/image-compare/index.ts +0 -10
- package/src/lib/components/image-cropper/README.md +0 -322
- package/src/lib/components/image-cropper/image-cropper-aspect-ratio.ts +0 -65
- package/src/lib/components/image-cropper/image-cropper-container.ts +0 -294
- package/src/lib/components/image-cropper/image-cropper-controls.ts +0 -95
- package/src/lib/components/image-cropper/image-cropper-preview.ts +0 -66
- package/src/lib/components/image-cropper/image-cropper.ts +0 -459
- package/src/lib/components/image-cropper/index.ts +0 -10
- package/src/lib/components/index.ts +0 -106
- package/src/lib/components/infinite-scroll/README.md +0 -134
- package/src/lib/components/infinite-scroll/index.ts +0 -4
- package/src/lib/components/infinite-scroll/infinite-scroll-end.ts +0 -9
- package/src/lib/components/infinite-scroll/infinite-scroll-loader.ts +0 -9
- package/src/lib/components/infinite-scroll/infinite-scroll.ts +0 -199
- package/src/lib/components/infinite-scroll/virtual-scroll.ts +0 -83
- package/src/lib/components/input/README.md +0 -93
- package/src/lib/components/input/index.ts +0 -1
- package/src/lib/components/input/input.ts +0 -41
- package/src/lib/components/input-group/README.md +0 -60
- package/src/lib/components/input-group/index.ts +0 -6
- package/src/lib/components/input-group/input-group-addon.ts +0 -46
- package/src/lib/components/input-group/input-group-button.ts +0 -49
- package/src/lib/components/input-group/input-group-input.ts +0 -20
- package/src/lib/components/input-group/input-group-text.ts +0 -20
- package/src/lib/components/input-group/input-group-textarea.ts +0 -20
- package/src/lib/components/input-group/input-group.ts +0 -21
- package/src/lib/components/kanban-board/README.md +0 -238
- package/src/lib/components/kanban-board/index.ts +0 -12
- package/src/lib/components/kanban-board/kanban-board.ts +0 -281
- package/src/lib/components/kanban-board/kanban-card.ts +0 -241
- package/src/lib/components/kanban-board/kanban-column.ts +0 -371
- package/src/lib/components/kanban-board/kanban-types.ts +0 -52
- package/src/lib/components/kbd/README.md +0 -58
- package/src/lib/components/kbd/index.ts +0 -2
- package/src/lib/components/kbd/kbd-group.ts +0 -17
- package/src/lib/components/kbd/kbd.ts +0 -20
- package/src/lib/components/label/README.md +0 -90
- package/src/lib/components/label/index.ts +0 -1
- package/src/lib/components/label/label.ts +0 -32
- package/src/lib/components/language-switcher/index.ts +0 -4
- package/src/lib/components/language-switcher/language-button.ts +0 -98
- package/src/lib/components/language-switcher/language-select.ts +0 -65
- package/src/lib/components/language-switcher/language-toggle.ts +0 -98
- package/src/lib/components/language-switcher/language.service.ts +0 -239
- package/src/lib/components/language-switcher/styles.ts +0 -16
- package/src/lib/components/lightbox/README.md +0 -387
- package/src/lib/components/lightbox/index.ts +0 -9
- package/src/lib/components/lightbox/lightbox-container.ts +0 -338
- package/src/lib/components/lightbox/lightbox-gallery.ts +0 -81
- package/src/lib/components/lightbox/lightbox-trigger.ts +0 -19
- package/src/lib/components/lightbox/lightbox.ts +0 -210
- package/src/lib/components/lightbox/lightbox.types.ts +0 -7
- package/src/lib/components/marquee/README.md +0 -183
- package/src/lib/components/marquee/auto-marquee.ts +0 -73
- package/src/lib/components/marquee/index.ts +0 -6
- package/src/lib/components/marquee/marquee-clone.ts +0 -17
- package/src/lib/components/marquee/marquee-fade.ts +0 -53
- package/src/lib/components/marquee/marquee-item.ts +0 -17
- package/src/lib/components/marquee/marquee-text.ts +0 -80
- package/src/lib/components/marquee/marquee.ts +0 -96
- package/src/lib/components/masonry-grid/README.md +0 -204
- package/src/lib/components/masonry-grid/index.ts +0 -4
- package/src/lib/components/masonry-grid/masonry-grid.ts +0 -178
- package/src/lib/components/masonry-grid/masonry-item.ts +0 -66
- package/src/lib/components/masonry-grid/masonry-types.ts +0 -24
- package/src/lib/components/mention-input/README.md +0 -122
- package/src/lib/components/mention-input/index.ts +0 -2
- package/src/lib/components/mention-input/mention-input.ts +0 -279
- package/src/lib/components/menu/README.md +0 -176
- package/src/lib/components/menu/index.ts +0 -11
- package/src/lib/components/menu/menu-item.ts +0 -32
- package/src/lib/components/menu/menu-portal.ts +0 -53
- package/src/lib/components/menu/menu-provider.ts +0 -50
- package/src/lib/components/menu/menu-separator.ts +0 -19
- package/src/lib/components/menu/menu-sub-icon.ts +0 -18
- package/src/lib/components/menu/menu-sub-portal.ts +0 -53
- package/src/lib/components/menu/menu-sub-provider.ts +0 -52
- package/src/lib/components/menu/menu-sub-trigger.ts +0 -34
- package/src/lib/components/menu/menu-sub.ts +0 -41
- package/src/lib/components/menu/menu-trigger.ts +0 -27
- package/src/lib/components/menu/menu.ts +0 -41
- package/src/lib/components/multi-select/README.md +0 -155
- package/src/lib/components/multi-select/index.ts +0 -2
- package/src/lib/components/multi-select/multi-select.ts +0 -394
- package/src/lib/components/native-checkbox/README.md +0 -113
- package/src/lib/components/native-checkbox/index.ts +0 -1
- package/src/lib/components/native-checkbox/native-checkbox.ts +0 -116
- package/src/lib/components/navbar/ARCHITECTURE.md +0 -605
- package/src/lib/components/navbar/README.md +0 -246
- package/src/lib/components/navbar/index.ts +0 -9
- package/src/lib/components/navbar/navbar-actions.ts +0 -28
- package/src/lib/components/navbar/navbar-brand.ts +0 -24
- package/src/lib/components/navbar/navbar-group.ts +0 -28
- package/src/lib/components/navbar/navbar-mobile-link.ts +0 -28
- package/src/lib/components/navbar/navbar-mobile-menu.ts +0 -71
- package/src/lib/components/navbar/navbar-mobile-portal.ts +0 -118
- package/src/lib/components/navbar/navbar-mobile-trigger.ts +0 -51
- package/src/lib/components/navbar/navbar-provider.ts +0 -85
- package/src/lib/components/navbar/navbar.ts +0 -40
- package/src/lib/components/navigation-menu/README.md +0 -135
- package/src/lib/components/navigation-menu/index.ts +0 -8
- package/src/lib/components/navigation-menu/navigation-menu-content.ts +0 -80
- package/src/lib/components/navigation-menu/navigation-menu-indicator.ts +0 -35
- package/src/lib/components/navigation-menu/navigation-menu-item.ts +0 -88
- package/src/lib/components/navigation-menu/navigation-menu-link.ts +0 -29
- package/src/lib/components/navigation-menu/navigation-menu-list.ts +0 -20
- package/src/lib/components/navigation-menu/navigation-menu-trigger.ts +0 -52
- package/src/lib/components/navigation-menu/navigation-menu-viewport.ts +0 -35
- package/src/lib/components/navigation-menu/navigation-menu.ts +0 -39
- package/src/lib/components/notification-center/README.md +0 -365
- package/src/lib/components/notification-center/index.ts +0 -20
- package/src/lib/components/notification-center/notification-center-container.ts +0 -226
- package/src/lib/components/notification-center/notification-center.ts +0 -157
- package/src/lib/components/notification-center/notification-group.ts +0 -198
- package/src/lib/components/notification-center/notification-item.ts +0 -214
- package/src/lib/components/notification-center/notification-types.ts +0 -52
- package/src/lib/components/number-field/README.md +0 -369
- package/src/lib/components/number-field/index.ts +0 -6
- package/src/lib/components/number-field/number-field-decrement.ts +0 -57
- package/src/lib/components/number-field/number-field-increment.ts +0 -58
- package/src/lib/components/number-field/number-field-input-group.ts +0 -37
- package/src/lib/components/number-field/number-field-input.ts +0 -87
- package/src/lib/components/number-field/number-field-scrub-area.ts +0 -74
- package/src/lib/components/number-field/number-field.ts +0 -143
- package/src/lib/components/opt-field/index.ts +0 -7
- package/src/lib/components/opt-field/opt-field-separator.ts +0 -18
- package/src/lib/components/opt-field/opt-field-slot-caret.ts +0 -31
- package/src/lib/components/opt-field/opt-field-slot-char.ts +0 -19
- package/src/lib/components/opt-field/opt-field-slot-group.ts +0 -17
- package/src/lib/components/opt-field/opt-field-slot-input.ts +0 -60
- package/src/lib/components/opt-field/opt-field-slot.ts +0 -111
- package/src/lib/components/opt-field/opt-field.ts +0 -113
- package/src/lib/components/org-chart/README.md +0 -265
- package/src/lib/components/org-chart/index.ts +0 -8
- package/src/lib/components/org-chart/org-chart-node.ts +0 -253
- package/src/lib/components/org-chart/org-chart-types.ts +0 -22
- package/src/lib/components/org-chart/org-chart.ts +0 -67
- package/src/lib/components/pagination/ACCESSIBILITY_REVIEW.md +0 -530
- package/src/lib/components/pagination/KEYBOARD-NAVIGATION.md +0 -356
- package/src/lib/components/pagination/README.md +0 -359
- package/src/lib/components/pagination/REVIEW_SUMMARY.md +0 -55
- package/src/lib/components/pagination/SMART-PAGINATION.md +0 -345
- package/src/lib/components/pagination/index.ts +0 -11
- package/src/lib/components/pagination/pagination-ellipsis.ts +0 -32
- package/src/lib/components/pagination/pagination-first.ts +0 -75
- package/src/lib/components/pagination/pagination-item.ts +0 -15
- package/src/lib/components/pagination/pagination-last.ts +0 -77
- package/src/lib/components/pagination/pagination-link.ts +0 -70
- package/src/lib/components/pagination/pagination-list.ts +0 -17
- package/src/lib/components/pagination/pagination-next.ts +0 -78
- package/src/lib/components/pagination/pagination-page-size-select.ts +0 -44
- package/src/lib/components/pagination/pagination-previous.ts +0 -78
- package/src/lib/components/pagination/pagination.ts +0 -190
- package/src/lib/components/password-field/README.md +0 -247
- package/src/lib/components/password-field/index.ts +0 -7
- package/src/lib/components/password-field/password-field-input-group.ts +0 -32
- package/src/lib/components/password-field/password-field-input.ts +0 -55
- package/src/lib/components/password-field/password-field-requirements.ts +0 -90
- package/src/lib/components/password-field/password-field-strength-bar.ts +0 -64
- package/src/lib/components/password-field/password-field-strength.ts +0 -91
- package/src/lib/components/password-field/password-field-toggle.ts +0 -86
- package/src/lib/components/password-field/password-field.ts +0 -95
- package/src/lib/components/pdf-viewer/README.md +0 -221
- package/src/lib/components/pdf-viewer/index.ts +0 -47
- package/src/lib/components/pdf-viewer/pdf-viewer-container.ts +0 -54
- package/src/lib/components/pdf-viewer/pdf-viewer-content.ts +0 -60
- package/src/lib/components/pdf-viewer/pdf-viewer-download.ts +0 -34
- package/src/lib/components/pdf-viewer/pdf-viewer-empty.ts +0 -62
- package/src/lib/components/pdf-viewer/pdf-viewer-error.ts +0 -73
- package/src/lib/components/pdf-viewer/pdf-viewer-fullscreen.ts +0 -36
- package/src/lib/components/pdf-viewer/pdf-viewer-loading.ts +0 -44
- package/src/lib/components/pdf-viewer/pdf-viewer-nav.ts +0 -30
- package/src/lib/components/pdf-viewer/pdf-viewer-next-page.ts +0 -38
- package/src/lib/components/pdf-viewer/pdf-viewer-page-info.ts +0 -53
- package/src/lib/components/pdf-viewer/pdf-viewer-prev-page.ts +0 -38
- package/src/lib/components/pdf-viewer/pdf-viewer-print.ts +0 -34
- package/src/lib/components/pdf-viewer/pdf-viewer-retry.ts +0 -36
- package/src/lib/components/pdf-viewer/pdf-viewer-root.ts +0 -239
- package/src/lib/components/pdf-viewer/pdf-viewer-rotate-left.ts +0 -34
- package/src/lib/components/pdf-viewer/pdf-viewer-rotate-right.ts +0 -34
- package/src/lib/components/pdf-viewer/pdf-viewer-separator.ts +0 -28
- package/src/lib/components/pdf-viewer/pdf-viewer-spacer.ts +0 -24
- package/src/lib/components/pdf-viewer/pdf-viewer-toolbar-base.ts +0 -34
- package/src/lib/components/pdf-viewer/pdf-viewer-toolbar.ts +0 -391
- package/src/lib/components/pdf-viewer/pdf-viewer-types.ts +0 -52
- package/src/lib/components/pdf-viewer/pdf-viewer-zoom-in.ts +0 -37
- package/src/lib/components/pdf-viewer/pdf-viewer-zoom-out.ts +0 -37
- package/src/lib/components/pdf-viewer/pdf-viewer-zoom-select.ts +0 -61
- package/src/lib/components/pdf-viewer/pdf-viewer-zoom.ts +0 -30
- package/src/lib/components/pdf-viewer/pdf-viewer.ts +0 -417
- package/src/lib/components/phone-input/README.md +0 -173
- package/src/lib/components/phone-input/countries.ts +0 -69
- package/src/lib/components/phone-input/index.ts +0 -4
- package/src/lib/components/phone-input/phone-input-simple.ts +0 -141
- package/src/lib/components/phone-input/phone-input.ts +0 -304
- package/src/lib/components/popover/ARCHITECTURE.md +0 -569
- package/src/lib/components/popover/README.md +0 -247
- package/src/lib/components/popover/index.ts +0 -6
- package/src/lib/components/popover/popover-close.ts +0 -29
- package/src/lib/components/popover/popover-portal.ts +0 -161
- package/src/lib/components/popover/popover-provider.ts +0 -82
- package/src/lib/components/popover/popover-trigger.ts +0 -27
- package/src/lib/components/popover/popover.ts +0 -66
- package/src/lib/components/progress/README.md +0 -75
- package/src/lib/components/progress/index.ts +0 -1
- package/src/lib/components/progress/progress.ts +0 -62
- package/src/lib/components/qr-code/README.md +0 -124
- package/src/lib/components/qr-code/index.ts +0 -3
- package/src/lib/components/qr-code/qr-code-download.ts +0 -105
- package/src/lib/components/qr-code/qr-code.ts +0 -121
- package/src/lib/components/qr-code/qr-generator.ts +0 -479
- package/src/lib/components/radio-group/README.md +0 -273
- package/src/lib/components/radio-group/index.ts +0 -3
- package/src/lib/components/radio-group/radio-field.ts +0 -43
- package/src/lib/components/radio-group/radio-group.ts +0 -18
- package/src/lib/components/radio-group/radio.ts +0 -30
- package/src/lib/components/range-slider/README.md +0 -118
- package/src/lib/components/range-slider/index.ts +0 -1
- package/src/lib/components/range-slider/range-slider.ts +0 -304
- package/src/lib/components/rating-field/README.md +0 -150
- package/src/lib/components/rating-field/index.ts +0 -3
- package/src/lib/components/rating-field/rating-field.ts +0 -87
- package/src/lib/components/rating-field/rating-item-group.ts +0 -73
- package/src/lib/components/rating-field/rating-item.ts +0 -89
- package/src/lib/components/resizable/README.md +0 -133
- package/src/lib/components/resizable/index.ts +0 -4
- package/src/lib/components/resizable/resizable-handle.ts +0 -160
- package/src/lib/components/resizable/resizable-panel-group.ts +0 -38
- package/src/lib/components/resizable/resizable-panel.ts +0 -51
- package/src/lib/components/resizable/resizable.types.ts +0 -1
- package/src/lib/components/scroll-area/README.md +0 -76
- package/src/lib/components/scroll-area/index.ts +0 -2
- package/src/lib/components/scroll-area/scroll-area.ts +0 -87
- package/src/lib/components/scroll-area/scroll-bar.ts +0 -207
- package/src/lib/components/search-input/README.md +0 -99
- package/src/lib/components/search-input/index.ts +0 -6
- package/src/lib/components/search-input/search-input-types.ts +0 -21
- package/src/lib/components/search-input/search-input.ts +0 -302
- package/src/lib/components/select/README.md +0 -175
- package/src/lib/components/select/index.ts +0 -9
- package/src/lib/components/select/select-icon.ts +0 -20
- package/src/lib/components/select/select-input.ts +0 -32
- package/src/lib/components/select/select-item-indicator.ts +0 -20
- package/src/lib/components/select/select-item.ts +0 -48
- package/src/lib/components/select/select-list.ts +0 -42
- package/src/lib/components/select/select-portal.ts +0 -48
- package/src/lib/components/select/select-trigger.ts +0 -36
- package/src/lib/components/select/select-value.ts +0 -32
- package/src/lib/components/select/select.ts +0 -57
- package/src/lib/components/separator/README.md +0 -59
- package/src/lib/components/separator/index.ts +0 -1
- package/src/lib/components/separator/separator.ts +0 -29
- package/src/lib/components/sheet/ARCHITECTURE.md +0 -915
- package/src/lib/components/sheet/README.md +0 -248
- package/src/lib/components/sheet/index.ts +0 -10
- package/src/lib/components/sheet/sheet-close.ts +0 -32
- package/src/lib/components/sheet/sheet-description.ts +0 -20
- package/src/lib/components/sheet/sheet-footer.ts +0 -20
- package/src/lib/components/sheet/sheet-header.ts +0 -17
- package/src/lib/components/sheet/sheet-portal.ts +0 -8
- package/src/lib/components/sheet/sheet-provider.ts +0 -142
- package/src/lib/components/sheet/sheet-title.ts +0 -20
- package/src/lib/components/sheet/sheet-trigger.ts +0 -24
- package/src/lib/components/sheet/sheet.ts +0 -92
- package/src/lib/components/sidebar/README.md +0 -254
- package/src/lib/components/sidebar/index.ts +0 -24
- package/src/lib/components/sidebar/sidebar-content.ts +0 -20
- package/src/lib/components/sidebar/sidebar-footer.ts +0 -17
- package/src/lib/components/sidebar/sidebar-group-action.ts +0 -24
- package/src/lib/components/sidebar/sidebar-group-content.ts +0 -17
- package/src/lib/components/sidebar/sidebar-group-label.ts +0 -23
- package/src/lib/components/sidebar/sidebar-group.ts +0 -17
- package/src/lib/components/sidebar/sidebar-header.ts +0 -17
- package/src/lib/components/sidebar/sidebar-input.ts +0 -20
- package/src/lib/components/sidebar/sidebar-inset.ts +0 -21
- package/src/lib/components/sidebar/sidebar-menu-action.ts +0 -31
- package/src/lib/components/sidebar/sidebar-menu-badge.ts +0 -25
- package/src/lib/components/sidebar/sidebar-menu-button.ts +0 -55
- package/src/lib/components/sidebar/sidebar-menu-item.ts +0 -17
- package/src/lib/components/sidebar/sidebar-menu-skeleton.ts +0 -40
- package/src/lib/components/sidebar/sidebar-menu-sub-button.ts +0 -33
- package/src/lib/components/sidebar/sidebar-menu-sub-item.ts +0 -15
- package/src/lib/components/sidebar/sidebar-menu-sub.ts +0 -21
- package/src/lib/components/sidebar/sidebar-menu.ts +0 -17
- package/src/lib/components/sidebar/sidebar-provider.ts +0 -128
- package/src/lib/components/sidebar/sidebar-rail.ts +0 -39
- package/src/lib/components/sidebar/sidebar-separator.ts +0 -21
- package/src/lib/components/sidebar/sidebar-state.service.ts +0 -33
- package/src/lib/components/sidebar/sidebar-trigger.ts +0 -38
- package/src/lib/components/sidebar/sidebar.ts +0 -120
- package/src/lib/components/signature-pad/README.md +0 -236
- package/src/lib/components/signature-pad/index.ts +0 -8
- package/src/lib/components/signature-pad/signature-pad-canvas.ts +0 -228
- package/src/lib/components/signature-pad/signature-pad-clear-button.ts +0 -48
- package/src/lib/components/signature-pad/signature-pad-color-button.ts +0 -50
- package/src/lib/components/signature-pad/signature-pad-controls.ts +0 -26
- package/src/lib/components/signature-pad/signature-pad-toolbar.ts +0 -25
- package/src/lib/components/signature-pad/signature-pad-undo-button.ts +0 -48
- package/src/lib/components/signature-pad/signature-pad-width-button.ts +0 -50
- package/src/lib/components/signature-pad/signature-pad.ts +0 -97
- package/src/lib/components/skeleton/README.md +0 -80
- package/src/lib/components/skeleton/index.ts +0 -1
- package/src/lib/components/skeleton/skeleton.ts +0 -17
- package/src/lib/components/slider/README.md +0 -106
- package/src/lib/components/slider/index.ts +0 -4
- package/src/lib/components/slider/slider-range.ts +0 -28
- package/src/lib/components/slider/slider-thumb.ts +0 -73
- package/src/lib/components/slider/slider-track.ts +0 -31
- package/src/lib/components/slider/slider.ts +0 -185
- package/src/lib/components/sortable-list/README.md +0 -229
- package/src/lib/components/sortable-list/index.ts +0 -4
- package/src/lib/components/sortable-list/sortable-handle.ts +0 -72
- package/src/lib/components/sortable-list/sortable-item.ts +0 -162
- package/src/lib/components/sortable-list/sortable-list.ts +0 -127
- package/src/lib/components/sortable-list/sortable-overlay.ts +0 -31
- package/src/lib/components/speed-dial/README.md +0 -259
- package/src/lib/components/speed-dial/index.ts +0 -7
- package/src/lib/components/speed-dial/speed-dial-action.ts +0 -99
- package/src/lib/components/speed-dial/speed-dial-types.ts +0 -14
- package/src/lib/components/speed-dial/speed-dial.ts +0 -224
- package/src/lib/components/spinner/README.md +0 -41
- package/src/lib/components/spinner/index.ts +0 -1
- package/src/lib/components/spinner/spinner.ts +0 -20
- package/src/lib/components/split-button/README.md +0 -99
- package/src/lib/components/split-button/index.ts +0 -6
- package/src/lib/components/split-button/split-button-types.ts +0 -14
- package/src/lib/components/split-button/split-button.ts +0 -240
- package/src/lib/components/spotlight/README.md +0 -136
- package/src/lib/components/spotlight/index.ts +0 -5
- package/src/lib/components/spotlight/spotlight-actions.ts +0 -24
- package/src/lib/components/spotlight/spotlight-description.ts +0 -24
- package/src/lib/components/spotlight/spotlight-title.ts +0 -24
- package/src/lib/components/spotlight/spotlight.ts +0 -367
- package/src/lib/components/stat-card/README.md +0 -319
- package/src/lib/components/stat-card/REFACTORING-COMPLETE.md +0 -250
- package/src/lib/components/stat-card/REFACTORING-PLAN.md +0 -471
- package/src/lib/components/stat-card/index.ts +0 -11
- package/src/lib/components/stat-card/stat-card-change.ts +0 -27
- package/src/lib/components/stat-card/stat-card-description.ts +0 -17
- package/src/lib/components/stat-card/stat-card-icon.ts +0 -28
- package/src/lib/components/stat-card/stat-card-label.ts +0 -27
- package/src/lib/components/stat-card/stat-card-types.ts +0 -3
- package/src/lib/components/stat-card/stat-card-value.ts +0 -27
- package/src/lib/components/stat-card/stat-card.ts +0 -34
- package/src/lib/components/stepper/README.md +0 -250
- package/src/lib/components/stepper/index.ts +0 -12
- package/src/lib/components/stepper/stepper-content.ts +0 -25
- package/src/lib/components/stepper/stepper-description.ts +0 -17
- package/src/lib/components/stepper/stepper-item.ts +0 -35
- package/src/lib/components/stepper/stepper-list.ts +0 -26
- package/src/lib/components/stepper/stepper-next.ts +0 -41
- package/src/lib/components/stepper/stepper-previous.ts +0 -42
- package/src/lib/components/stepper/stepper-separator.ts +0 -35
- package/src/lib/components/stepper/stepper-title.ts +0 -17
- package/src/lib/components/stepper/stepper-trigger.ts +0 -67
- package/src/lib/components/stepper/stepper-types.ts +0 -10
- package/src/lib/components/stepper/stepper.ts +0 -46
- package/src/lib/components/switch/README.md +0 -99
- package/src/lib/components/switch/index.ts +0 -1
- package/src/lib/components/switch/switch.ts +0 -56
- package/src/lib/components/table/README.md +0 -105
- package/src/lib/components/table/index.ts +0 -8
- package/src/lib/components/table/table-body.ts +0 -17
- package/src/lib/components/table/table-caption.ts +0 -17
- package/src/lib/components/table/table-cell.ts +0 -17
- package/src/lib/components/table/table-footer.ts +0 -20
- package/src/lib/components/table/table-header-cell.ts +0 -20
- package/src/lib/components/table/table-header.ts +0 -17
- package/src/lib/components/table/table-row.ts +0 -20
- package/src/lib/components/table/table.ts +0 -17
- package/src/lib/components/tabs/README.md +0 -169
- package/src/lib/components/tabs/index.ts +0 -4
- package/src/lib/components/tabs/tab-list.ts +0 -38
- package/src/lib/components/tabs/tab-panel.ts +0 -45
- package/src/lib/components/tabs/tab.ts +0 -45
- package/src/lib/components/tabs/tabs.ts +0 -28
- package/src/lib/components/tag-input/README.md +0 -271
- package/src/lib/components/tag-input/index.ts +0 -5
- package/src/lib/components/tag-input/tag-input-clear.ts +0 -60
- package/src/lib/components/tag-input/tag-input-count.ts +0 -42
- package/src/lib/components/tag-input/tag-input-field.ts +0 -121
- package/src/lib/components/tag-input/tag-input-tag.ts +0 -70
- package/src/lib/components/tag-input/tag-input.ts +0 -118
- package/src/lib/components/textarea/README.md +0 -80
- package/src/lib/components/textarea/index.ts +0 -1
- package/src/lib/components/textarea/textarea.ts +0 -41
- package/src/lib/components/theme-toggle/README.md +0 -258
- package/src/lib/components/theme-toggle/index.ts +0 -4
- package/src/lib/components/theme-toggle/theme-field.ts +0 -40
- package/src/lib/components/theme-toggle/theme-select.ts +0 -56
- package/src/lib/components/theme-toggle/theme-toggle.ts +0 -76
- package/src/lib/components/theme-toggle/theme.service.ts +0 -81
- package/src/lib/components/time-picker/README.md +0 -188
- package/src/lib/components/time-picker/index.ts +0 -5
- package/src/lib/components/time-picker/time-picker-clock.ts +0 -195
- package/src/lib/components/time-picker/time-picker-input.ts +0 -174
- package/src/lib/components/time-picker/time-picker-period.ts +0 -89
- package/src/lib/components/time-picker/time-picker-separator.ts +0 -20
- package/src/lib/components/time-picker/time-picker.ts +0 -87
- package/src/lib/components/timeline/README.md +0 -177
- package/src/lib/components/timeline/index.ts +0 -8
- package/src/lib/components/timeline/timeline-connector.ts +0 -29
- package/src/lib/components/timeline/timeline-content.ts +0 -26
- package/src/lib/components/timeline/timeline-description.ts +0 -17
- package/src/lib/components/timeline/timeline-dot.ts +0 -45
- package/src/lib/components/timeline/timeline-item.ts +0 -28
- package/src/lib/components/timeline/timeline-time.ts +0 -17
- package/src/lib/components/timeline/timeline-title.ts +0 -17
- package/src/lib/components/timeline/timeline.ts +0 -17
- package/src/lib/components/timezone/index.ts +0 -5
- package/src/lib/components/timezone/timezone-badge.ts +0 -85
- package/src/lib/components/timezone/timezone-button.ts +0 -104
- package/src/lib/components/timezone/timezone-display.ts +0 -105
- package/src/lib/components/timezone/timezone-select.ts +0 -87
- package/src/lib/components/timezone/timezone.service.ts +0 -233
- package/src/lib/components/toast/README.md +0 -151
- package/src/lib/components/toast/index.ts +0 -8
- package/src/lib/components/toast/toast-action.ts +0 -27
- package/src/lib/components/toast/toast-close.ts +0 -29
- package/src/lib/components/toast/toast-description.ts +0 -17
- package/src/lib/components/toast/toast-stack.ts +0 -95
- package/src/lib/components/toast/toast-title.ts +0 -17
- package/src/lib/components/toast/toast.ts +0 -64
- package/src/lib/components/toast/toast.types.ts +0 -24
- package/src/lib/components/toast/toaster.ts +0 -67
- package/src/lib/components/toggle/README.md +0 -72
- package/src/lib/components/toggle/index.ts +0 -1
- package/src/lib/components/toggle/toggle.ts +0 -53
- package/src/lib/components/toggle-group/README.md +0 -101
- package/src/lib/components/toggle-group/index.ts +0 -2
- package/src/lib/components/toggle-group/toggle-group-item.ts +0 -62
- package/src/lib/components/toggle-group/toggle-group.ts +0 -53
- package/src/lib/components/toolbar/README.md +0 -76
- package/src/lib/components/toolbar/index.ts +0 -4
- package/src/lib/components/toolbar/toolbar-separator.ts +0 -32
- package/src/lib/components/toolbar/toolbar-widget-group.ts +0 -35
- package/src/lib/components/toolbar/toolbar-widget.ts +0 -48
- package/src/lib/components/toolbar/toolbar.ts +0 -44
- package/src/lib/components/tooltip/ANIMATIONS.md +0 -274
- package/src/lib/components/tooltip/README.md +0 -100
- package/src/lib/components/tooltip/index.ts +0 -3
- package/src/lib/components/tooltip/tooltip-manager.ts +0 -194
- package/src/lib/components/tooltip/tooltip-trigger.ts +0 -148
- package/src/lib/components/tooltip/tooltip.ts +0 -72
- package/src/lib/components/tour-guide/README.md +0 -158
- package/src/lib/components/tour-guide/index.ts +0 -2
- package/src/lib/components/tour-guide/tour-guide.ts +0 -492
- package/src/lib/components/transfer-list/README.md +0 -98
- package/src/lib/components/transfer-list/index.ts +0 -5
- package/src/lib/components/transfer-list/transfer-list-types.ts +0 -11
- package/src/lib/components/transfer-list/transfer-list.ts +0 -434
- package/src/lib/components/tree/README.md +0 -358
- package/src/lib/components/tree/TODO.md +0 -94
- package/src/lib/components/tree/index.ts +0 -6
- package/src/lib/components/tree/tree-item-group.ts +0 -40
- package/src/lib/components/tree/tree-item-icon.ts +0 -17
- package/src/lib/components/tree/tree-item-trigger-icon.ts +0 -26
- package/src/lib/components/tree/tree-item-trigger.ts +0 -51
- package/src/lib/components/tree/tree-item.ts +0 -64
- package/src/lib/components/tree/tree.ts +0 -21
- package/src/lib/components/video-player/README.md +0 -275
- package/src/lib/components/video-player/index.ts +0 -14
- package/src/lib/components/video-player/video-player-big-play-button.ts +0 -35
- package/src/lib/components/video-player/video-player-buffering.ts +0 -36
- package/src/lib/components/video-player/video-player-controls.ts +0 -28
- package/src/lib/components/video-player/video-player-fullscreen-button.ts +0 -38
- package/src/lib/components/video-player/video-player-pip-button.ts +0 -37
- package/src/lib/components/video-player/video-player-play-button.ts +0 -37
- package/src/lib/components/video-player/video-player-progress.ts +0 -56
- package/src/lib/components/video-player/video-player-skip-button.ts +0 -44
- package/src/lib/components/video-player/video-player-speed-button.ts +0 -74
- package/src/lib/components/video-player/video-player-time.ts +0 -31
- package/src/lib/components/video-player/video-player-types.ts +0 -13
- package/src/lib/components/video-player/video-player-video.ts +0 -127
- package/src/lib/components/video-player/video-player-volume.ts +0 -61
- package/src/lib/components/video-player/video-player.ts +0 -139
- package/src/lib/components/virtual-list/README.md +0 -120
- package/src/lib/components/virtual-list/index.ts +0 -2
- package/src/lib/components/virtual-list/virtual-list-types.ts +0 -9
- package/src/lib/components/virtual-list/virtual-list.ts +0 -174
- package/src/lib/layouts/auth-layout.ts +0 -30
- package/src/lib/layouts/index.ts +0 -3
- package/src/lib/layouts/sidebar-layout.ts +0 -37
- package/src/lib/layouts/stacked-layout/README.md +0 -84
- package/src/lib/layouts/stacked-layout/index.ts +0 -1
- package/src/lib/layouts/stacked-layout/stacked-layout.ts +0 -39
- package/tsconfig.json +0 -28
- package/tsconfig.lib.json +0 -12
- package/tsconfig.lib.prod.json +0 -9
|
@@ -1,356 +0,0 @@
|
|
|
1
|
-
# Keyboard Navigation
|
|
2
|
-
|
|
3
|
-
This document describes the keyboard navigation patterns for pagination components, ensuring full keyboard accessibility.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
All pagination components support full keyboard navigation following WAI-ARIA best practices. Users can navigate through pagination controls using standard keyboard interactions without requiring a mouse.
|
|
8
|
-
|
|
9
|
-
## Supported Keys
|
|
10
|
-
|
|
11
|
-
### Tab Navigation
|
|
12
|
-
|
|
13
|
-
- **Tab** - Move focus to the next interactive element in the pagination
|
|
14
|
-
- **Shift + Tab** - Move focus to the previous interactive element
|
|
15
|
-
|
|
16
|
-
### Activation
|
|
17
|
-
|
|
18
|
-
- **Enter** - Activate focused pagination control (links or buttons)
|
|
19
|
-
- **Space** - Activate focused pagination control (buttons only)
|
|
20
|
-
|
|
21
|
-
### Page Size Selector
|
|
22
|
-
|
|
23
|
-
- **Arrow Up/Down** - Navigate through page size options (when select is focused)
|
|
24
|
-
- **Enter/Space** - Open the dropdown (when select is focused)
|
|
25
|
-
- **Escape** - Close the dropdown without changing selection
|
|
26
|
-
|
|
27
|
-
## Component Keyboard Behavior
|
|
28
|
-
|
|
29
|
-
### ScPaginationLink
|
|
30
|
-
|
|
31
|
-
**Element**: Button or anchor
|
|
32
|
-
|
|
33
|
-
**Keys**:
|
|
34
|
-
|
|
35
|
-
- **Tab** - Focus the page link
|
|
36
|
-
- **Enter** - Navigate to the page
|
|
37
|
-
- **Space** - Navigate to the page (button only)
|
|
38
|
-
|
|
39
|
-
**Focus indicator**: Visible focus ring using `focus-visible:ring-2`
|
|
40
|
-
|
|
41
|
-
```html
|
|
42
|
-
<button sc-pagination-link [page]="2">2</button>
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
### ScPaginationPrevious / ScPaginationNext
|
|
46
|
-
|
|
47
|
-
**Element**: Button or anchor
|
|
48
|
-
|
|
49
|
-
**Keys**:
|
|
50
|
-
|
|
51
|
-
- **Tab** - Focus the navigation control
|
|
52
|
-
- **Enter** - Navigate to previous/next page
|
|
53
|
-
- **Space** - Navigate to previous/next page (button only)
|
|
54
|
-
|
|
55
|
-
**Disabled state**: When disabled, element is focusable but activation does nothing
|
|
56
|
-
|
|
57
|
-
```html
|
|
58
|
-
<button sc-pagination-previous [disabled]="currentPage() === 1">Previous</button>
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### ScPaginationFirst / ScPaginationLast
|
|
62
|
-
|
|
63
|
-
**Element**: Button or anchor
|
|
64
|
-
|
|
65
|
-
**Keys**:
|
|
66
|
-
|
|
67
|
-
- **Tab** - Focus the navigation control
|
|
68
|
-
- **Enter** - Navigate to first/last page
|
|
69
|
-
- **Space** - Navigate to first/last page (button only)
|
|
70
|
-
|
|
71
|
-
**Disabled state**: When disabled, element is focusable but activation does nothing
|
|
72
|
-
|
|
73
|
-
```html
|
|
74
|
-
<button sc-pagination-first [disabled]="currentPage() === 1">First</button>
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
### ScPaginationPageSizeSelect
|
|
78
|
-
|
|
79
|
-
**Element**: Select element
|
|
80
|
-
|
|
81
|
-
**Keys**:
|
|
82
|
-
|
|
83
|
-
- **Tab** - Focus the select
|
|
84
|
-
- **Enter/Space** - Open dropdown
|
|
85
|
-
- **Arrow Up** - Select previous option
|
|
86
|
-
- **Arrow Down** - Select next option
|
|
87
|
-
- **Home** - Jump to first option
|
|
88
|
-
- **End** - Jump to last option
|
|
89
|
-
- **Escape** - Close dropdown without change
|
|
90
|
-
|
|
91
|
-
**Focus indicator**: Visible focus ring using `focus-visible:ring-2`
|
|
92
|
-
|
|
93
|
-
```html
|
|
94
|
-
<select sc-pagination-page-size-select></select>
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
## Focus Management
|
|
98
|
-
|
|
99
|
-
### Focus Order
|
|
100
|
-
|
|
101
|
-
The natural tab order follows the visual layout:
|
|
102
|
-
|
|
103
|
-
1. Page size selector (if present)
|
|
104
|
-
2. First page button (if present)
|
|
105
|
-
3. Previous page button
|
|
106
|
-
4. Page number links/buttons
|
|
107
|
-
5. Next page button
|
|
108
|
-
6. Last page button (if present)
|
|
109
|
-
|
|
110
|
-
### Focus Indicators
|
|
111
|
-
|
|
112
|
-
All interactive elements have visible focus indicators:
|
|
113
|
-
|
|
114
|
-
```css
|
|
115
|
-
focus-visible:outline-none
|
|
116
|
-
focus-visible:ring-2
|
|
117
|
-
focus-visible:ring-ring
|
|
118
|
-
focus-visible:ring-offset-2
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
### Disabled State Focus
|
|
122
|
-
|
|
123
|
-
Disabled controls remain in the tab order with `aria-disabled="true"` but do not perform actions when activated. This maintains consistent focus order regardless of pagination state.
|
|
124
|
-
|
|
125
|
-
## ARIA Attributes
|
|
126
|
-
|
|
127
|
-
### Navigation Container
|
|
128
|
-
|
|
129
|
-
```html
|
|
130
|
-
<nav sc-pagination role="navigation" aria-label="pagination"></nav>
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
- **role="navigation"** - Identifies the pagination region
|
|
134
|
-
- **aria-label="pagination"** - Provides accessible name
|
|
135
|
-
|
|
136
|
-
### Active Page
|
|
137
|
-
|
|
138
|
-
```html
|
|
139
|
-
<button sc-pagination-link [isActive]="true" aria-current="page">2</button>
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
- **aria-current="page"** - Indicates the current page
|
|
143
|
-
|
|
144
|
-
### Navigation Buttons
|
|
145
|
-
|
|
146
|
-
```html
|
|
147
|
-
<button sc-pagination-previous aria-label="Go to previous page">Previous</button>
|
|
148
|
-
|
|
149
|
-
<button sc-pagination-next aria-label="Go to next page">Next</button>
|
|
150
|
-
|
|
151
|
-
<button sc-pagination-first aria-label="Go to first page">First</button>
|
|
152
|
-
|
|
153
|
-
<button sc-pagination-last aria-label="Go to last page">Last</button>
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
- **aria-label** - Provides clear button purpose for screen readers
|
|
157
|
-
|
|
158
|
-
### Disabled Controls
|
|
159
|
-
|
|
160
|
-
```html
|
|
161
|
-
<button sc-pagination-previous [disabled]="true" aria-disabled="true">Previous</button>
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
- **aria-disabled="true"** - Announces disabled state to screen readers
|
|
165
|
-
- Element remains focusable but activation is prevented
|
|
166
|
-
|
|
167
|
-
### Ellipsis (Non-interactive)
|
|
168
|
-
|
|
169
|
-
```html
|
|
170
|
-
<span sc-pagination-ellipsis aria-hidden="true">
|
|
171
|
-
<svg><!-- dots icon --></svg>
|
|
172
|
-
<span class="sr-only">More pages</span>
|
|
173
|
-
</span>
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
- **aria-hidden="true"** - Hides decorative ellipsis from screen readers
|
|
177
|
-
- **.sr-only** - Provides screen reader text without visual display
|
|
178
|
-
|
|
179
|
-
## Best Practices
|
|
180
|
-
|
|
181
|
-
### Use Semantic HTML
|
|
182
|
-
|
|
183
|
-
Prefer `<button>` over `<a>` for client-side navigation:
|
|
184
|
-
|
|
185
|
-
```html
|
|
186
|
-
<!-- Good: Button for client-side navigation -->
|
|
187
|
-
<button sc-pagination-link [page]="2">2</button>
|
|
188
|
-
|
|
189
|
-
<!-- Also good: Anchor for server-side navigation -->
|
|
190
|
-
<a sc-pagination-link href="/page/2">2</a>
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
### Provide Clear Labels
|
|
194
|
-
|
|
195
|
-
Always provide text labels for navigation controls:
|
|
196
|
-
|
|
197
|
-
```html
|
|
198
|
-
<!-- Good: Text label provided -->
|
|
199
|
-
<button sc-pagination-previous>
|
|
200
|
-
<svg><!-- icon --></svg>
|
|
201
|
-
<span>Previous</span>
|
|
202
|
-
</button>
|
|
203
|
-
|
|
204
|
-
<!-- Avoid: Icon only -->
|
|
205
|
-
<button sc-pagination-previous>
|
|
206
|
-
<svg><!-- icon --></svg>
|
|
207
|
-
</button>
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
If you must use icon-only, add `aria-label`:
|
|
211
|
-
|
|
212
|
-
```html
|
|
213
|
-
<button sc-pagination-previous aria-label="Go to previous page">
|
|
214
|
-
<svg><!-- icon --></svg>
|
|
215
|
-
</button>
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
### Maintain Focus Context
|
|
219
|
-
|
|
220
|
-
When page changes, consider where to move focus:
|
|
221
|
-
|
|
222
|
-
```typescript
|
|
223
|
-
export class MyComponent {
|
|
224
|
-
readonly currentPage = signal(1);
|
|
225
|
-
|
|
226
|
-
onPageChange(newPage: number): void {
|
|
227
|
-
this.currentPage.set(newPage);
|
|
228
|
-
|
|
229
|
-
// Option 1: Announce page change
|
|
230
|
-
// Screen readers will announce the new active page
|
|
231
|
-
|
|
232
|
-
// Option 2: Move focus to main content
|
|
233
|
-
// document.querySelector('[role="main"]')?.focus();
|
|
234
|
-
|
|
235
|
-
// Option 3: Keep focus on pagination
|
|
236
|
-
// Natural behavior - focus stays on clicked control
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
```
|
|
240
|
-
|
|
241
|
-
### Page Size Selector Accessibility
|
|
242
|
-
|
|
243
|
-
Wrap the select with a visible label:
|
|
244
|
-
|
|
245
|
-
```html
|
|
246
|
-
<!-- Good: Visible label associated -->
|
|
247
|
-
<div class="flex items-center gap-2">
|
|
248
|
-
<span class="text-sm text-muted-foreground">Items per page:</span>
|
|
249
|
-
<sc-pagination-page-size-select />
|
|
250
|
-
</div>
|
|
251
|
-
|
|
252
|
-
<!-- Better: Using label element -->
|
|
253
|
-
<label class="flex items-center gap-2">
|
|
254
|
-
<span class="text-sm text-muted-foreground">Items per page:</span>
|
|
255
|
-
<sc-pagination-page-size-select />
|
|
256
|
-
</label>
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
### Loading States
|
|
260
|
-
|
|
261
|
-
When loading new page data, provide feedback:
|
|
262
|
-
|
|
263
|
-
```typescript
|
|
264
|
-
export class MyComponent {
|
|
265
|
-
readonly loading = signal(false);
|
|
266
|
-
readonly currentPage = signal(1);
|
|
267
|
-
|
|
268
|
-
async onPageChange(newPage: number): Promise<void> {
|
|
269
|
-
this.loading.set(true);
|
|
270
|
-
try {
|
|
271
|
-
await this.loadData(newPage);
|
|
272
|
-
this.currentPage.set(newPage);
|
|
273
|
-
} finally {
|
|
274
|
-
this.loading.set(false);
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
```
|
|
279
|
-
|
|
280
|
-
```html
|
|
281
|
-
<nav sc-pagination [attr.aria-busy]="loading()" [currentPage]="currentPage()" (pageChange)="onPageChange($event)">
|
|
282
|
-
<!-- pagination content -->
|
|
283
|
-
</nav>
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
## Testing Keyboard Navigation
|
|
287
|
-
|
|
288
|
-
### Manual Testing Checklist
|
|
289
|
-
|
|
290
|
-
1. ✅ All controls are reachable via Tab key
|
|
291
|
-
2. ✅ Focus indicators are clearly visible
|
|
292
|
-
3. ✅ Enter/Space keys activate controls
|
|
293
|
-
4. ✅ Disabled controls don't perform actions
|
|
294
|
-
5. ✅ Page size select works with arrow keys
|
|
295
|
-
6. ✅ Active page is announced by screen readers
|
|
296
|
-
7. ✅ Tab order matches visual layout
|
|
297
|
-
8. ✅ No keyboard traps
|
|
298
|
-
|
|
299
|
-
### Automated Testing
|
|
300
|
-
|
|
301
|
-
Use Playwright or similar tools to test keyboard interactions:
|
|
302
|
-
|
|
303
|
-
```typescript
|
|
304
|
-
test('pagination keyboard navigation', async ({ page }) => {
|
|
305
|
-
await page.goto('/demos/pagination/page-size-pagination-demo');
|
|
306
|
-
|
|
307
|
-
// Test Tab navigation
|
|
308
|
-
await page.keyboard.press('Tab');
|
|
309
|
-
await expect(page.locator('[sc-pagination-previous]')).toBeFocused();
|
|
310
|
-
|
|
311
|
-
// Test Enter activation
|
|
312
|
-
await page.keyboard.press('Enter');
|
|
313
|
-
|
|
314
|
-
// Test focus indicators
|
|
315
|
-
const focused = page.locator(':focus');
|
|
316
|
-
await expect(focused).toHaveCSS('outline', expect.stringContaining('ring'));
|
|
317
|
-
});
|
|
318
|
-
```
|
|
319
|
-
|
|
320
|
-
## Common Issues and Solutions
|
|
321
|
-
|
|
322
|
-
### Issue: Focus Ring Not Visible
|
|
323
|
-
|
|
324
|
-
**Problem**: Custom styles override focus indicators
|
|
325
|
-
|
|
326
|
-
**Solution**: Use `focus-visible` instead of `focus`:
|
|
327
|
-
|
|
328
|
-
```css
|
|
329
|
-
/* Avoid */
|
|
330
|
-
.button:focus {
|
|
331
|
-
outline: none;
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
/* Prefer */
|
|
335
|
-
.button:focus-visible {
|
|
336
|
-
outline: 2px solid blue;
|
|
337
|
-
}
|
|
338
|
-
```
|
|
339
|
-
|
|
340
|
-
### Issue: Disabled Controls Skip in Tab Order
|
|
341
|
-
|
|
342
|
-
**Problem**: Using `disabled` attribute removes controls from tab order
|
|
343
|
-
|
|
344
|
-
**Solution**: The component handles this correctly with `aria-disabled` while keeping controls focusable.
|
|
345
|
-
|
|
346
|
-
### Issue: Select Opens on Space
|
|
347
|
-
|
|
348
|
-
**Problem**: Native select behavior may vary across browsers
|
|
349
|
-
|
|
350
|
-
**Solution**: This is standard behavior and should be maintained. Don't override native select interactions.
|
|
351
|
-
|
|
352
|
-
## Resources
|
|
353
|
-
|
|
354
|
-
- [WAI-ARIA Authoring Practices - Pagination](https://www.w3.org/WAI/ARIA/apg/patterns/)
|
|
355
|
-
- [WebAIM - Keyboard Accessibility](https://webaim.org/techniques/keyboard/)
|
|
356
|
-
- [WCAG 2.1 - Keyboard Accessible](https://www.w3.org/WAI/WCAG21/quickref/#keyboard-accessible)
|
|
@@ -1,359 +0,0 @@
|
|
|
1
|
-
# Pagination
|
|
2
|
-
|
|
3
|
-
Pagination with page navigation, next and previous links. Supports both manual and smart automatic page generation.
|
|
4
|
-
|
|
5
|
-
## Components
|
|
6
|
-
|
|
7
|
-
- `ScPagination` - Navigation container with optional smart pagination logic
|
|
8
|
-
- `ScPaginationList` - List container (ul)
|
|
9
|
-
- `ScPaginationItem` - List item (li)
|
|
10
|
-
- `ScPaginationLink` - Page number link/button
|
|
11
|
-
- `ScPaginationPrevious` - Previous page link/button
|
|
12
|
-
- `ScPaginationNext` - Next page link/button
|
|
13
|
-
- `ScPaginationFirst` - First page link/button
|
|
14
|
-
- `ScPaginationLast` - Last page link/button
|
|
15
|
-
- `ScPaginationEllipsis` - Ellipsis indicator
|
|
16
|
-
- `ScPaginationPageSizeSelect` - Page size selector (select dropdown)
|
|
17
|
-
|
|
18
|
-
## Features
|
|
19
|
-
|
|
20
|
-
- **Manual Mode**: Full control over pagination items (basic usage)
|
|
21
|
-
- **Smart Mode**: Automatic page number and ellipsis generation (always returns 7 items when totalPages > 7)
|
|
22
|
-
- Automatic calculation of total pages
|
|
23
|
-
- Disabled state support for navigation buttons
|
|
24
|
-
- **Internal state management**: Components handle state internally with automatic input syncing
|
|
25
|
-
- **Unified change event**: Single event for both page and page size changes
|
|
26
|
-
- **Auto-sized icons**: SVG icons automatically sized via `[&_svg]:size-4`
|
|
27
|
-
|
|
28
|
-
## Usage
|
|
29
|
-
|
|
30
|
-
### Basic Example
|
|
31
|
-
|
|
32
|
-
```html
|
|
33
|
-
<nav sc-pagination>
|
|
34
|
-
<ul sc-pagination-list>
|
|
35
|
-
<li sc-pagination-item>
|
|
36
|
-
<button sc-pagination-previous>
|
|
37
|
-
<svg si-chevron-left-icon></svg>
|
|
38
|
-
<span>Previous</span>
|
|
39
|
-
</button>
|
|
40
|
-
</li>
|
|
41
|
-
<li sc-pagination-item>
|
|
42
|
-
<button sc-pagination-link [page]="1">1</button>
|
|
43
|
-
</li>
|
|
44
|
-
<li sc-pagination-item>
|
|
45
|
-
<button sc-pagination-link [page]="2">2</button>
|
|
46
|
-
</li>
|
|
47
|
-
<li sc-pagination-item>
|
|
48
|
-
<button sc-pagination-link [page]="3">3</button>
|
|
49
|
-
</li>
|
|
50
|
-
<li sc-pagination-item>
|
|
51
|
-
<button sc-pagination-next>
|
|
52
|
-
<span>Next</span>
|
|
53
|
-
<svg si-chevron-right-icon></svg>
|
|
54
|
-
</button>
|
|
55
|
-
</li>
|
|
56
|
-
</ul>
|
|
57
|
-
</nav>
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
### With Icons (Lucide)
|
|
61
|
-
|
|
62
|
-
```typescript
|
|
63
|
-
import {
|
|
64
|
-
SiChevronLeftIcon,
|
|
65
|
-
SiChevronRightIcon,
|
|
66
|
-
SiEllipsisIcon,
|
|
67
|
-
} from '@semantic-icons/lucide-icons';
|
|
68
|
-
|
|
69
|
-
@Component({
|
|
70
|
-
imports: [
|
|
71
|
-
ScPagination,
|
|
72
|
-
ScPaginationList,
|
|
73
|
-
ScPaginationItem,
|
|
74
|
-
ScPaginationLink,
|
|
75
|
-
ScPaginationPrevious,
|
|
76
|
-
ScPaginationNext,
|
|
77
|
-
ScPaginationEllipsis,
|
|
78
|
-
SiChevronLeftIcon,
|
|
79
|
-
SiChevronRightIcon,
|
|
80
|
-
SiEllipsisIcon,
|
|
81
|
-
],
|
|
82
|
-
template: `
|
|
83
|
-
<nav sc-pagination>
|
|
84
|
-
<ul sc-pagination-list>
|
|
85
|
-
<li sc-pagination-item>
|
|
86
|
-
<button sc-pagination-previous>
|
|
87
|
-
<svg si-chevron-left-icon></svg>
|
|
88
|
-
<span>Previous</span>
|
|
89
|
-
</button>
|
|
90
|
-
</li>
|
|
91
|
-
<!-- Page items here -->
|
|
92
|
-
<li sc-pagination-item>
|
|
93
|
-
<button sc-pagination-next>
|
|
94
|
-
<span>Next</span>
|
|
95
|
-
<svg si-chevron-right-icon></svg>
|
|
96
|
-
</button>
|
|
97
|
-
</li>
|
|
98
|
-
</ul>
|
|
99
|
-
</nav>
|
|
100
|
-
`,
|
|
101
|
-
})
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
**Note**: Icons are automatically sized via `[&_svg]:size-4`. No need to add `class="size-4"` manually.
|
|
105
|
-
|
|
106
|
-
## Smart Pagination (Automatic Page Generation)
|
|
107
|
-
|
|
108
|
-
The pagination component can automatically calculate and generate page numbers with ellipses:
|
|
109
|
-
|
|
110
|
-
```typescript
|
|
111
|
-
import { Component, signal } from '@angular/core';
|
|
112
|
-
import { ScPaginationChange } from '@semantic-components/ui-lab';
|
|
113
|
-
|
|
114
|
-
@Component({
|
|
115
|
-
template: `
|
|
116
|
-
<nav sc-pagination #pagination="scPagination" [currentPage]="currentPage()" [pageSize]="10" [totalItems]="100" (change)="onPaginationChange($event)">
|
|
117
|
-
<ul sc-pagination-list>
|
|
118
|
-
<li sc-pagination-item>
|
|
119
|
-
<button sc-pagination-previous>
|
|
120
|
-
<svg si-chevron-left-icon></svg>
|
|
121
|
-
<span>Previous</span>
|
|
122
|
-
</button>
|
|
123
|
-
</li>
|
|
124
|
-
|
|
125
|
-
@for (page of pagination.pages(); track page.value) {
|
|
126
|
-
<li sc-pagination-item>
|
|
127
|
-
@if (page.type === 'ellipsis') {
|
|
128
|
-
<span sc-pagination-ellipsis>
|
|
129
|
-
<svg si-ellipsis-icon></svg>
|
|
130
|
-
<span class="sr-only">More pages</span>
|
|
131
|
-
</span>
|
|
132
|
-
} @else {
|
|
133
|
-
<button sc-pagination-link [page]="page.value">
|
|
134
|
-
{{ page.value }}
|
|
135
|
-
</button>
|
|
136
|
-
}
|
|
137
|
-
</li>
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
<li sc-pagination-item>
|
|
141
|
-
<button sc-pagination-next>
|
|
142
|
-
<span>Next</span>
|
|
143
|
-
<svg si-chevron-right-icon></svg>
|
|
144
|
-
</button>
|
|
145
|
-
</li>
|
|
146
|
-
</ul>
|
|
147
|
-
</nav>
|
|
148
|
-
`,
|
|
149
|
-
})
|
|
150
|
-
export class MyComponent {
|
|
151
|
-
readonly currentPage = signal(1);
|
|
152
|
-
|
|
153
|
-
onPaginationChange(event: ScPaginationChange): void {
|
|
154
|
-
this.currentPage.set(event.page);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
### Smart Pagination Features
|
|
160
|
-
|
|
161
|
-
- Automatically generates page numbers based on `currentPage`, `pageSize`, and `totalItems`
|
|
162
|
-
- **Always returns exactly 7 items** when `totalPages > 7`
|
|
163
|
-
- Intelligently places ellipses when there are many pages
|
|
164
|
-
- Exposes `pagination.pages()` array for iteration
|
|
165
|
-
- Exposes `pagination.totalPages()` for total page count
|
|
166
|
-
- Each item in `pages()` has type `ScPaginationPage`: `{ type: 'page' | 'ellipsis', value: number | string }`
|
|
167
|
-
- Active state is automatically computed for pagination links
|
|
168
|
-
|
|
169
|
-
## Disabled State
|
|
170
|
-
|
|
171
|
-
Navigation buttons (Previous, Next, First, Last) automatically disable themselves based on the current page:
|
|
172
|
-
|
|
173
|
-
- **Previous** and **First**: Auto-disabled when on page 1
|
|
174
|
-
- **Next** and **Last**: Auto-disabled when on the last page
|
|
175
|
-
|
|
176
|
-
You can also manually disable any button:
|
|
177
|
-
|
|
178
|
-
```html
|
|
179
|
-
<!-- Manually disabled -->
|
|
180
|
-
<button sc-pagination-previous [disabled]="true">
|
|
181
|
-
<!-- content -->
|
|
182
|
-
</button>
|
|
183
|
-
|
|
184
|
-
<!-- Disabled link -->
|
|
185
|
-
<button sc-pagination-link [disabled]="true">1</button>
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
## First and Last Page Navigation
|
|
189
|
-
|
|
190
|
-
Use `ScPaginationFirst` and `ScPaginationLast` for quick navigation to the first and last pages:
|
|
191
|
-
|
|
192
|
-
```html
|
|
193
|
-
<nav sc-pagination #pagination="scPagination" [currentPage]="currentPage()" [pageSize]="10" [totalItems]="100" (change)="onPaginationChange($event)">
|
|
194
|
-
<ul sc-pagination-list>
|
|
195
|
-
<li sc-pagination-item>
|
|
196
|
-
<button sc-pagination-first>
|
|
197
|
-
<svg si-chevrons-left-icon></svg>
|
|
198
|
-
<span>First</span>
|
|
199
|
-
</button>
|
|
200
|
-
</li>
|
|
201
|
-
<li sc-pagination-item>
|
|
202
|
-
<button sc-pagination-previous>
|
|
203
|
-
<svg si-chevron-left-icon></svg>
|
|
204
|
-
<span>Previous</span>
|
|
205
|
-
</button>
|
|
206
|
-
</li>
|
|
207
|
-
|
|
208
|
-
<!-- Page numbers here -->
|
|
209
|
-
|
|
210
|
-
<li sc-pagination-item>
|
|
211
|
-
<button sc-pagination-next>
|
|
212
|
-
<span>Next</span>
|
|
213
|
-
<svg si-chevron-right-icon></svg>
|
|
214
|
-
</button>
|
|
215
|
-
</li>
|
|
216
|
-
<li sc-pagination-item>
|
|
217
|
-
<button sc-pagination-last>
|
|
218
|
-
<span>Last</span>
|
|
219
|
-
<svg si-chevrons-right-icon></svg>
|
|
220
|
-
</button>
|
|
221
|
-
</li>
|
|
222
|
-
</ul>
|
|
223
|
-
</nav>
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
## Page Size Selector
|
|
227
|
-
|
|
228
|
-
Use `ScPaginationPageSizeSelect` to allow users to change the number of items displayed per page:
|
|
229
|
-
|
|
230
|
-
```typescript
|
|
231
|
-
import { Component, signal } from '@angular/core';
|
|
232
|
-
import { ScPaginationChange } from '@semantic-components/ui-lab';
|
|
233
|
-
|
|
234
|
-
@Component({
|
|
235
|
-
template: `
|
|
236
|
-
<nav sc-pagination #pagination="scPagination" [currentPage]="currentPage()" [pageSize]="pageSize()" [totalItems]="totalItems()" [pageSizes]="[10, 25, 50, 100]" (change)="onPaginationChange($event)">
|
|
237
|
-
<div class="flex items-center gap-2">
|
|
238
|
-
<span class="text-sm text-muted-foreground">Items per page:</span>
|
|
239
|
-
<sc-pagination-page-size-select />
|
|
240
|
-
</div>
|
|
241
|
-
|
|
242
|
-
<ul sc-pagination-list>
|
|
243
|
-
<!-- Pagination items here -->
|
|
244
|
-
</ul>
|
|
245
|
-
</nav>
|
|
246
|
-
`,
|
|
247
|
-
})
|
|
248
|
-
export class MyComponent {
|
|
249
|
-
readonly currentPage = signal(1);
|
|
250
|
-
readonly pageSize = signal(10);
|
|
251
|
-
readonly totalItems = signal(250);
|
|
252
|
-
|
|
253
|
-
onPaginationChange(event: ScPaginationChange): void {
|
|
254
|
-
this.currentPage.set(event.page);
|
|
255
|
-
this.pageSize.set(event.pageSize);
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
Key points:
|
|
261
|
-
|
|
262
|
-
- `ScPaginationPageSizeSelect` renders only the select element
|
|
263
|
-
- Wrap it with a label or other elements as needed in your template
|
|
264
|
-
- Must be a child of `<nav sc-pagination>` to access pagination context
|
|
265
|
-
- Configure available options via `[pageSizes]` on the parent `ScPagination`
|
|
266
|
-
- Listen to `(change)` to receive both page and pageSize updates
|
|
267
|
-
- The component automatically resets to page 1 when page size changes
|
|
268
|
-
|
|
269
|
-
## Inputs & Outputs
|
|
270
|
-
|
|
271
|
-
### ScPagination
|
|
272
|
-
|
|
273
|
-
| Input | Type | Default | Description |
|
|
274
|
-
| ------------- | ---------- | ------------------- | -------------------------------------- |
|
|
275
|
-
| `currentPage` | `number` | `1` | Current active page (1-based) |
|
|
276
|
-
| `pageSize` | `number` | `10` | Number of items per page |
|
|
277
|
-
| `totalItems` | `number` | `0` | Total number of items across all pages |
|
|
278
|
-
| `pageSizes` | `number[]` | `[10, 25, 50, 100]` | Available page size options |
|
|
279
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
280
|
-
|
|
281
|
-
| Output | Type | Description |
|
|
282
|
-
| -------- | -------------------- | ------------------------------------- |
|
|
283
|
-
| `change` | `ScPaginationChange` | Emitted when page or pageSize changes |
|
|
284
|
-
|
|
285
|
-
**ScPaginationChange interface:**
|
|
286
|
-
|
|
287
|
-
```typescript
|
|
288
|
-
interface ScPaginationChange {
|
|
289
|
-
page: number;
|
|
290
|
-
pageSize: number;
|
|
291
|
-
}
|
|
292
|
-
```
|
|
293
|
-
|
|
294
|
-
### ScPaginationLink
|
|
295
|
-
|
|
296
|
-
| Input | Type | Default | Description |
|
|
297
|
-
| ---------- | ------------------------------------- | -------- | -------------------------------- |
|
|
298
|
-
| `page` | `number` | - | Page number this link represents |
|
|
299
|
-
| `size` | `'default' \| 'sm' \| 'lg' \| 'icon'` | `'icon'` | Button size |
|
|
300
|
-
| `disabled` | `boolean` | `false` | Disabled state |
|
|
301
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
302
|
-
|
|
303
|
-
**Note**: The active state is automatically computed by comparing the `page` input with the parent pagination's `currentPage`.
|
|
304
|
-
|
|
305
|
-
### ScPaginationPrevious
|
|
306
|
-
|
|
307
|
-
| Input | Type | Default | Description |
|
|
308
|
-
| ---------- | --------- | ------- | ---------------------- |
|
|
309
|
-
| `disabled` | `boolean` | `false` | Disabled state |
|
|
310
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
311
|
-
|
|
312
|
-
### ScPaginationNext
|
|
313
|
-
|
|
314
|
-
| Input | Type | Default | Description |
|
|
315
|
-
| ---------- | --------- | ------- | ---------------------- |
|
|
316
|
-
| `disabled` | `boolean` | `false` | Disabled state |
|
|
317
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
318
|
-
|
|
319
|
-
### ScPaginationFirst
|
|
320
|
-
|
|
321
|
-
| Input | Type | Default | Description |
|
|
322
|
-
| ---------- | --------- | ------- | ---------------------- |
|
|
323
|
-
| `disabled` | `boolean` | `false` | Disabled state |
|
|
324
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
325
|
-
|
|
326
|
-
### ScPaginationLast
|
|
327
|
-
|
|
328
|
-
| Input | Type | Default | Description |
|
|
329
|
-
| ---------- | --------- | ------- | ---------------------- |
|
|
330
|
-
| `disabled` | `boolean` | `false` | Disabled state |
|
|
331
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
332
|
-
|
|
333
|
-
### ScPaginationPageSizeSelect
|
|
334
|
-
|
|
335
|
-
| Input | Type | Default | Description |
|
|
336
|
-
| ------- | -------- | ------- | ---------------------- |
|
|
337
|
-
| `class` | `string` | `''` | Additional CSS classes |
|
|
338
|
-
|
|
339
|
-
**Note**: This component renders only the select element. The page size options are configured via the `pageSizes` input on the parent `ScPagination` component.
|
|
340
|
-
|
|
341
|
-
## Accessibility
|
|
342
|
-
|
|
343
|
-
- Uses `role="navigation"` with `aria-label="pagination"`
|
|
344
|
-
- Active page has `aria-current="page"`
|
|
345
|
-
- Previous/Next/First/Last have `aria-label` for screen readers
|
|
346
|
-
- Disabled state uses `aria-disabled` attribute with automatic styling
|
|
347
|
-
- Ellipsis is `aria-hidden` with `.sr-only` text
|
|
348
|
-
- Focus ring for keyboard navigation
|
|
349
|
-
|
|
350
|
-
## Internal State Management
|
|
351
|
-
|
|
352
|
-
The pagination component uses internal signals with effects to manage state:
|
|
353
|
-
|
|
354
|
-
- Accepts `currentPage` and `pageSize` as inputs
|
|
355
|
-
- Maintains internal state that syncs with inputs
|
|
356
|
-
- Updates internal state when user interacts (clicks links, changes page size)
|
|
357
|
-
- Emits `change` event with both page and pageSize
|
|
358
|
-
- Parent can optionally update inputs in response to the event
|
|
359
|
-
- Works in both controlled and semi-controlled modes
|