ngx-tethys 18.1.0-next.0 → 18.1.0-next.1
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/CHANGELOG.md +9 -0
- package/action/action.component.d.ts +1 -2
- package/affix/affix.component.d.ts +2 -4
- package/anchor/anchor-link.component.d.ts +2 -4
- package/anchor/anchor.component.d.ts +1 -4
- package/arrow-switcher/arrow-switcher.component.d.ts +1 -2
- package/autocomplete/autocomplete.component.d.ts +1 -2
- package/autocomplete/autocomplete.trigger.directive.d.ts +3 -5
- package/autocomplete/overlay/autocomplete-container.component.d.ts +4 -4
- package/autocomplete/overlay/autocomplete.service.d.ts +3 -5
- package/avatar/avatar.component.d.ts +1 -3
- package/avatar/avatar.pipe.d.ts +0 -2
- package/back-top/back-top.component.d.ts +2 -4
- package/badge/badge.component.d.ts +5 -14
- package/breadcrumb/breadcrumb-item.component.d.ts +1 -2
- package/breadcrumb/breadcrumb.component.d.ts +1 -2
- package/button/button.component.d.ts +1 -2
- package/calendar/calendar-header.component.d.ts +1 -2
- package/calendar/calendar.component.d.ts +1 -2
- package/carousel/carousel-item.directive.d.ts +1 -2
- package/carousel/carousel.component.d.ts +1 -4
- package/carousel/carousel.service.d.ts +1 -2
- package/cascader/cascader.component.d.ts +4 -4
- package/checkbox/checkbox.component.d.ts +0 -2
- package/collapse/collapse-item.component.d.ts +2 -4
- package/color-picker/color-picker-panel.component.d.ts +2 -3
- package/color-picker/color-picker.component.d.ts +2 -4
- package/color-picker/coordinates.directive.d.ts +1 -2
- package/color-picker/parts/alpha/alpha.component.d.ts +1 -2
- package/color-picker/parts/hue/hue.component.d.ts +1 -2
- package/color-picker/parts/saturation/saturation.component.d.ts +1 -2
- package/copy/copy.directive.d.ts +0 -2
- package/core/click-positioner.d.ts +0 -2
- package/core/scroll.d.ts +1 -2
- package/core/update-host-class.service.d.ts +1 -2
- package/date-picker/abstract-picker.component.d.ts +1 -1
- package/date-picker/abstract-picker.directive.d.ts +2 -3
- package/date-picker/base-picker.component.d.ts +2 -3
- package/date-picker/date-picker.component.d.ts +2 -2
- package/date-picker/date-picker.directive.d.ts +1 -3
- package/date-picker/date-picker.service.d.ts +2 -2
- package/date-picker/lib/calendar/calendar-footer.component.d.ts +1 -2
- package/date-picker/lib/calendar/calendar-header.component.d.ts +0 -1
- package/date-picker/lib/date/date-header.component.d.ts +0 -3
- package/date-picker/lib/date/date-table.component.d.ts +1 -3
- package/date-picker/lib/date-carousel/date-carousel.component.d.ts +1 -2
- package/date-picker/lib/decade/decade-header.component.d.ts +1 -1
- package/date-picker/lib/month/month-header.component.d.ts +0 -3
- package/date-picker/lib/month/month-table.component.d.ts +1 -2
- package/date-picker/lib/popups/date-popup.component.d.ts +1 -3
- package/date-picker/lib/popups/inner-popup.component.d.ts +1 -4
- package/date-picker/lib/quarter/quarter-table.component.d.ts +1 -2
- package/date-picker/lib/year/year-header.component.d.ts +0 -1
- package/date-picker/month-picker.component.d.ts +2 -2
- package/date-picker/picker.component.d.ts +1 -3
- package/date-picker/picker.pipes.d.ts +0 -3
- package/date-picker/quarter-picker.component.d.ts +2 -2
- package/date-picker/range-picker.component.d.ts +2 -2
- package/date-picker/range-picker.directive.d.ts +2 -3
- package/date-picker/week-picker.component.d.ts +2 -2
- package/date-picker/year-picker.component.d.ts +2 -2
- package/date-range/date-range.component.d.ts +1 -3
- package/date-range/optional-dates/optional-dates.component.d.ts +0 -2
- package/dialog/body/dialog-body.component.d.ts +0 -2
- package/dialog/confirm/confirm.component.d.ts +2 -3
- package/dialog/dialog-container.component.d.ts +4 -5
- package/dialog/dialog.service.d.ts +4 -4
- package/dialog/footer/dialog-footer.component.d.ts +2 -2
- package/dialog/header/dialog-header.component.d.ts +2 -6
- package/dot/dot.component.d.ts +1 -2
- package/drag-drop/drag-content.directive.d.ts +2 -3
- package/drag-drop/drag-handle.directive.d.ts +2 -3
- package/drag-drop/drag.directive.d.ts +4 -5
- package/drag-drop/drop-container.directive.d.ts +6 -3
- package/dropdown/dropdown-active.directive.d.ts +3 -4
- package/dropdown/dropdown-menu-item.directive.d.ts +1 -2
- package/dropdown/dropdown-submenu.component.d.ts +1 -3
- package/dropdown/dropdown.directive.d.ts +3 -5
- package/empty/empty.component.d.ts +6 -6
- package/esm2022/action/action.component.mjs +18 -18
- package/esm2022/affix/affix.component.mjs +11 -14
- package/esm2022/anchor/anchor-link.component.mjs +9 -10
- package/esm2022/anchor/anchor.component.mjs +11 -16
- package/esm2022/arrow-switcher/arrow-switcher.component.mjs +22 -22
- package/esm2022/autocomplete/autocomplete.component.mjs +7 -7
- package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +30 -37
- package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +11 -15
- package/esm2022/autocomplete/overlay/autocomplete.service.mjs +14 -21
- package/esm2022/avatar/avatar.component.mjs +24 -25
- package/esm2022/avatar/avatar.pipe.mjs +6 -7
- package/esm2022/back-top/back-top.component.mjs +11 -15
- package/esm2022/badge/badge.component.mjs +6 -6
- package/esm2022/breadcrumb/breadcrumb-item.component.mjs +7 -7
- package/esm2022/breadcrumb/breadcrumb.component.mjs +12 -12
- package/esm2022/button/button.component.mjs +12 -12
- package/esm2022/calendar/calendar-header.component.mjs +12 -12
- package/esm2022/calendar/calendar.component.mjs +12 -12
- package/esm2022/carousel/carousel-item.directive.mjs +7 -6
- package/esm2022/carousel/carousel.component.mjs +10 -12
- package/esm2022/carousel/carousel.service.mjs +7 -9
- package/esm2022/cascader/cascader.component.mjs +11 -16
- package/esm2022/checkbox/checkbox.component.mjs +7 -9
- package/esm2022/collapse/collapse-item.component.mjs +18 -21
- package/esm2022/color-picker/color-picker-panel.component.mjs +11 -12
- package/esm2022/color-picker/color-picker.component.mjs +10 -11
- package/esm2022/color-picker/coordinates.directive.mjs +10 -10
- package/esm2022/color-picker/parts/alpha/alpha.component.mjs +6 -6
- package/esm2022/color-picker/parts/hue/hue.component.mjs +6 -6
- package/esm2022/color-picker/parts/saturation/saturation.component.mjs +9 -9
- package/esm2022/copy/copy.directive.mjs +8 -12
- package/esm2022/core/click-positioner.mjs +6 -7
- package/esm2022/core/scroll.mjs +7 -9
- package/esm2022/core/store/store.mjs +1 -1
- package/esm2022/core/update-host-class.service.mjs +6 -6
- package/esm2022/date-picker/abstract-picker.component.mjs +5 -5
- package/esm2022/date-picker/abstract-picker.directive.mjs +42 -44
- package/esm2022/date-picker/base-picker.component.mjs +26 -26
- package/esm2022/date-picker/date-picker.component.mjs +6 -6
- package/esm2022/date-picker/date-picker.directive.mjs +6 -8
- package/esm2022/date-picker/date-picker.service.mjs +6 -10
- package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +5 -5
- package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +6 -7
- package/esm2022/date-picker/lib/date/date-header.component.mjs +3 -9
- package/esm2022/date-picker/lib/date/date-table.component.mjs +7 -9
- package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +12 -12
- package/esm2022/date-picker/lib/decade/decade-header.component.mjs +5 -8
- package/esm2022/date-picker/lib/month/month-header.component.mjs +3 -9
- package/esm2022/date-picker/lib/month/month-table.component.mjs +6 -7
- package/esm2022/date-picker/lib/popups/date-popup.component.mjs +12 -13
- package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +12 -13
- package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +6 -7
- package/esm2022/date-picker/lib/year/year-header.component.mjs +3 -9
- package/esm2022/date-picker/month-picker.component.mjs +6 -7
- package/esm2022/date-picker/picker.component.mjs +21 -22
- package/esm2022/date-picker/picker.pipes.mjs +10 -11
- package/esm2022/date-picker/quarter-picker.component.mjs +6 -7
- package/esm2022/date-picker/range-picker.component.mjs +6 -7
- package/esm2022/date-picker/range-picker.directive.mjs +6 -8
- package/esm2022/date-picker/week-picker.component.mjs +6 -7
- package/esm2022/date-picker/year-picker.component.mjs +6 -7
- package/esm2022/date-range/date-range.component.mjs +14 -15
- package/esm2022/date-range/optional-dates/optional-dates.component.mjs +8 -9
- package/esm2022/dialog/body/dialog-body.component.mjs +11 -12
- package/esm2022/dialog/confirm/confirm.component.mjs +10 -14
- package/esm2022/dialog/dialog-container.component.mjs +13 -18
- package/esm2022/dialog/dialog.service.mjs +10 -17
- package/esm2022/dialog/footer/dialog-footer.component.mjs +7 -11
- package/esm2022/dialog/header/dialog-header.component.mjs +14 -19
- package/esm2022/dot/dot.component.mjs +7 -7
- package/esm2022/drag-drop/drag-content.directive.mjs +7 -9
- package/esm2022/drag-drop/drag-handle.directive.mjs +7 -9
- package/esm2022/drag-drop/drag.directive.mjs +13 -16
- package/esm2022/drag-drop/drop-container.directive.mjs +13 -13
- package/esm2022/dropdown/dropdown-active.directive.mjs +9 -12
- package/esm2022/dropdown/dropdown-menu-item.directive.mjs +12 -12
- package/esm2022/dropdown/dropdown-submenu.component.mjs +9 -10
- package/esm2022/dropdown/dropdown.directive.mjs +12 -10
- package/esm2022/empty/empty.component.mjs +14 -17
- package/esm2022/flexible-text/flexible-text.component.mjs +16 -17
- package/esm2022/form/form-group-error/form-group-error.component.mjs +9 -12
- package/esm2022/form/form-group-label.directive.mjs +9 -10
- package/esm2022/form/form-group.component.mjs +15 -19
- package/esm2022/form/form-submit.directive.mjs +6 -7
- package/esm2022/form/form-validator-loader.mjs +1 -1
- package/esm2022/form/form-validator.service.mjs +12 -13
- package/esm2022/form/form.directive.mjs +11 -16
- package/esm2022/form/from-group-footer/form-group-footer.component.mjs +10 -16
- package/esm2022/form/validator/unique-validator.directive.mjs +7 -10
- package/esm2022/fullscreen/fullscreen.component.mjs +10 -11
- package/esm2022/fullscreen/fullscreen.service.mjs +7 -10
- package/esm2022/grid/thy-col.directive.mjs +9 -14
- package/esm2022/grid/thy-grid-item.component.mjs +8 -14
- package/esm2022/grid/thy-grid.component.mjs +7 -8
- package/esm2022/guider/guider.directive.mjs +8 -9
- package/esm2022/guider/guider.service.mjs +12 -19
- package/esm2022/icon/icon-registry.mjs +11 -16
- package/esm2022/icon/icon.component.mjs +8 -9
- package/esm2022/image/image-group.component.mjs +7 -7
- package/esm2022/image/image.directive.mjs +11 -12
- package/esm2022/image/image.service.mjs +8 -14
- package/esm2022/image/preview/image-preview.component.mjs +34 -38
- package/esm2022/input/input-count.component.mjs +7 -10
- package/esm2022/input/input-group.component.mjs +12 -13
- package/esm2022/input/input-search.component.mjs +7 -7
- package/esm2022/input/input.component.mjs +14 -14
- package/esm2022/input/input.directive.mjs +12 -17
- package/esm2022/input-number/input-number.component.mjs +6 -6
- package/esm2022/layout/sidebar.component.mjs +45 -51
- package/esm2022/list/selection/selection-list.mjs +25 -25
- package/esm2022/loading/loading.component.mjs +8 -8
- package/esm2022/mention/mention.directive.mjs +9 -14
- package/esm2022/mention/suggestions/suggestions.component.mjs +8 -9
- package/esm2022/menu/group/menu-group.component.mjs +34 -35
- package/esm2022/menu/item/action/menu-item-action.component.mjs +15 -16
- package/esm2022/menu/item/menu-item.component.mjs +6 -6
- package/esm2022/message/abstract/abstract-message-container.component.mjs +5 -5
- package/esm2022/message/abstract/abstract-message.component.mjs +6 -6
- package/esm2022/message/message-container.component.mjs +9 -11
- package/esm2022/message/message-queue.service.mjs +6 -8
- package/esm2022/message/message.component.mjs +7 -7
- package/esm2022/message/message.service.mjs +10 -11
- package/esm2022/nav/icon-nav/icon-nav.component.mjs +6 -6
- package/esm2022/nav/nav-ink-bar.directive.mjs +9 -14
- package/esm2022/nav/nav-item.directive.mjs +8 -11
- package/esm2022/nav/nav.component.mjs +32 -33
- package/esm2022/nav/nav.pipe.mjs +6 -7
- package/esm2022/notify/notify-container.component.mjs +8 -11
- package/esm2022/notify/notify-queue.service.mjs +6 -8
- package/esm2022/notify/notify.component.mjs +7 -7
- package/esm2022/notify/notify.service.mjs +11 -12
- package/esm2022/pagination/pagination.component.mjs +38 -43
- package/esm2022/pagination/pagination.pipe.mjs +6 -7
- package/esm2022/popover/header/popover-header.component.mjs +12 -14
- package/esm2022/popover/popover-container.component.mjs +11 -13
- package/esm2022/popover/popover.directive.mjs +13 -12
- package/esm2022/popover/popover.service.mjs +14 -26
- package/esm2022/progress/progress-strip.component.mjs +10 -13
- package/esm2022/property/property-item.component.mjs +10 -13
- package/esm2022/property-operation/property-operation.component.mjs +24 -25
- package/esm2022/radio/button/radio-button.component.mjs +9 -15
- package/esm2022/radio/group/radio-group.component.mjs +17 -17
- package/esm2022/radio/radio.component.mjs +8 -14
- package/esm2022/rate/rate.component.mjs +6 -6
- package/esm2022/resizable/resizable.directive.mjs +10 -12
- package/esm2022/resizable/resizable.service.mjs +7 -9
- package/esm2022/resizable/resize-handle.component.mjs +7 -8
- package/esm2022/segment/segment-item.component.mjs +12 -15
- package/esm2022/segment/segment.component.mjs +26 -26
- package/esm2022/select/custom-select/custom-select.component.mjs +14 -28
- package/esm2022/select/native-select/native-select.component.mjs +6 -6
- package/esm2022/shared/base-form-check.component.mjs +7 -8
- package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +7 -7
- package/esm2022/shared/directives/thy-autofocus.directive.mjs +10 -10
- package/esm2022/shared/directives/thy-contextmenu.directive.mjs +8 -8
- package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +8 -8
- package/esm2022/shared/directives/thy-enter.directive.mjs +8 -8
- package/esm2022/shared/directives/thy-scroll.directive.mjs +21 -21
- package/esm2022/shared/directives/thy-show.mjs +11 -11
- package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +7 -5
- package/esm2022/shared/directives/view-outlet.directive.mjs +7 -7
- package/esm2022/shared/ng-transclude.directive.mjs +6 -5
- package/esm2022/shared/option/group/option-group.component.mjs +10 -10
- package/esm2022/shared/option/list-option/list-option.component.mjs +12 -19
- package/esm2022/shared/option/option.component.mjs +9 -19
- package/esm2022/shared/select/select-control/select-control.component.mjs +23 -23
- package/esm2022/skeleton/skeleton-circle.component.mjs +7 -15
- package/esm2022/skeleton/skeleton-rectangle.component.mjs +7 -15
- package/esm2022/slide/drawer/drawer-container.directive.mjs +6 -6
- package/esm2022/slide/slide-container.component.mjs +12 -16
- package/esm2022/slide/slide-header/slide-header.component.mjs +10 -11
- package/esm2022/slide/slide-ref.service.mjs +1 -1
- package/esm2022/slide/slide.service.mjs +8 -12
- package/esm2022/slider/slider.component.mjs +8 -8
- package/esm2022/space/space.component.mjs +13 -13
- package/esm2022/statistic/statistic.component.mjs +20 -20
- package/esm2022/stepper/step.component.mjs +6 -11
- package/esm2022/stepper/stepper-button.directive.mjs +10 -11
- package/esm2022/strength/strength.component.mjs +11 -12
- package/esm2022/switch/switch.component.mjs +6 -6
- package/esm2022/table/table-column.component.mjs +58 -63
- package/esm2022/table/table-skeleton.component.mjs +32 -32
- package/esm2022/table/table.component.mjs +16 -24
- package/esm2022/tabs/tabs.component.mjs +19 -19
- package/esm2022/tag/tag.component.mjs +22 -22
- package/esm2022/time-picker/inner/inner-time-picker.component.mjs +10 -9
- package/esm2022/time-picker/time-picker-panel.component.mjs +27 -27
- package/esm2022/time-picker/time-picker.component.mjs +29 -29
- package/esm2022/timeline/timeline-item.component.mjs +12 -13
- package/esm2022/timeline/timeline.component.mjs +7 -8
- package/esm2022/tooltip/tooltip.component.mjs +14 -14
- package/esm2022/tooltip/tooltip.directive.mjs +11 -10
- package/esm2022/tooltip/tooltip.service.mjs +9 -13
- package/esm2022/transfer/transfer-list.component.mjs +6 -6
- package/esm2022/tree/tree-node.component.mjs +13 -17
- package/esm2022/tree/tree.component.mjs +86 -90
- package/esm2022/tree-select/tree-select.component.mjs +22 -27
- package/esm2022/typography/bg-color.directive.mjs +9 -9
- package/esm2022/typography/text-color.directive.mjs +9 -9
- package/esm2022/upload/file-drop.directive.mjs +1 -1
- package/esm2022/upload/file-select-base.mjs +5 -6
- package/esm2022/upload/file-select.component.mjs +4 -3
- package/esm2022/upload/upload.service.mjs +6 -7
- package/esm2022/version.mjs +2 -2
- package/esm2022/watermark/watermark.directive.mjs +12 -12
- package/fesm2022/ngx-tethys-action.mjs +17 -17
- package/fesm2022/ngx-tethys-action.mjs.map +1 -1
- package/fesm2022/ngx-tethys-affix.mjs +12 -14
- package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
- package/fesm2022/ngx-tethys-anchor.mjs +19 -22
- package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
- package/fesm2022/ngx-tethys-arrow-switcher.mjs +21 -21
- package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
- package/fesm2022/ngx-tethys-autocomplete.mjs +59 -71
- package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
- package/fesm2022/ngx-tethys-avatar.mjs +27 -27
- package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
- package/fesm2022/ngx-tethys-back-top.mjs +12 -15
- package/fesm2022/ngx-tethys-back-top.mjs.map +1 -1
- package/fesm2022/ngx-tethys-badge.mjs +5 -5
- package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
- package/fesm2022/ngx-tethys-breadcrumb.mjs +16 -16
- package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
- package/fesm2022/ngx-tethys-button.mjs +11 -11
- package/fesm2022/ngx-tethys-button.mjs.map +1 -1
- package/fesm2022/ngx-tethys-calendar.mjs +21 -21
- package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
- package/fesm2022/ngx-tethys-carousel.mjs +20 -21
- package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
- package/fesm2022/ngx-tethys-cascader.mjs +11 -15
- package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
- package/fesm2022/ngx-tethys-checkbox.mjs +6 -7
- package/fesm2022/ngx-tethys-checkbox.mjs.map +1 -1
- package/fesm2022/ngx-tethys-collapse.mjs +17 -19
- package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
- package/fesm2022/ngx-tethys-color-picker.mjs +44 -42
- package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-copy.mjs +8 -12
- package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
- package/fesm2022/ngx-tethys-core.mjs +14 -16
- package/fesm2022/ngx-tethys-core.mjs.map +1 -1
- package/fesm2022/ngx-tethys-date-picker.mjs +192 -216
- package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-date-range.mjs +20 -20
- package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dialog.mjs +56 -72
- package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dot.mjs +6 -6
- package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
- package/fesm2022/ngx-tethys-drag-drop.mjs +33 -37
- package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dropdown.mjs +39 -37
- package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
- package/fesm2022/ngx-tethys-empty.mjs +15 -15
- package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
- package/fesm2022/ngx-tethys-flexible-text.mjs +16 -17
- package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
- package/fesm2022/ngx-tethys-form.mjs +67 -82
- package/fesm2022/ngx-tethys-form.mjs.map +1 -1
- package/fesm2022/ngx-tethys-fullscreen.mjs +14 -17
- package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
- package/fesm2022/ngx-tethys-grid.mjs +20 -29
- package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
- package/fesm2022/ngx-tethys-guider.mjs +17 -23
- package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-icon.mjs +18 -22
- package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
- package/fesm2022/ngx-tethys-image.mjs +57 -62
- package/fesm2022/ngx-tethys-image.mjs.map +1 -1
- package/fesm2022/ngx-tethys-input-number.mjs +5 -5
- package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
- package/fesm2022/ngx-tethys-input.mjs +46 -53
- package/fesm2022/ngx-tethys-input.mjs.map +1 -1
- package/fesm2022/ngx-tethys-layout.mjs +45 -50
- package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
- package/fesm2022/ngx-tethys-list.mjs +24 -24
- package/fesm2022/ngx-tethys-list.mjs.map +1 -1
- package/fesm2022/ngx-tethys-loading.mjs +7 -7
- package/fesm2022/ngx-tethys-loading.mjs.map +1 -1
- package/fesm2022/ngx-tethys-mention.mjs +16 -21
- package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
- package/fesm2022/ngx-tethys-menu.mjs +51 -52
- package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
- package/fesm2022/ngx-tethys-message.mjs +33 -35
- package/fesm2022/ngx-tethys-message.mjs.map +1 -1
- package/fesm2022/ngx-tethys-nav.mjs +55 -64
- package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
- package/fesm2022/ngx-tethys-notify.mjs +26 -29
- package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
- package/fesm2022/ngx-tethys-pagination.mjs +44 -49
- package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
- package/fesm2022/ngx-tethys-popover.mjs +48 -54
- package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
- package/fesm2022/ngx-tethys-progress.mjs +9 -12
- package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
- package/fesm2022/ngx-tethys-property-operation.mjs +24 -24
- package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
- package/fesm2022/ngx-tethys-property.mjs +11 -11
- package/fesm2022/ngx-tethys-property.mjs.map +1 -1
- package/fesm2022/ngx-tethys-radio.mjs +29 -35
- package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
- package/fesm2022/ngx-tethys-rate.mjs +5 -5
- package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
- package/fesm2022/ngx-tethys-resizable.mjs +22 -25
- package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
- package/fesm2022/ngx-tethys-segment.mjs +35 -38
- package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
- package/fesm2022/ngx-tethys-select.mjs +20 -34
- package/fesm2022/ngx-tethys-select.mjs.map +1 -1
- package/fesm2022/ngx-tethys-shared.mjs +128 -143
- package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
- package/fesm2022/ngx-tethys-skeleton.mjs +11 -25
- package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
- package/fesm2022/ngx-tethys-slide.mjs +30 -34
- package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
- package/fesm2022/ngx-tethys-slider.mjs +7 -7
- package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-space.mjs +13 -13
- package/fesm2022/ngx-tethys-space.mjs.map +1 -1
- package/fesm2022/ngx-tethys-statistic.mjs +19 -19
- package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
- package/fesm2022/ngx-tethys-stepper.mjs +13 -18
- package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
- package/fesm2022/ngx-tethys-strength.mjs +11 -11
- package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
- package/fesm2022/ngx-tethys-switch.mjs +5 -5
- package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
- package/fesm2022/ngx-tethys-table.mjs +103 -115
- package/fesm2022/ngx-tethys-table.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tabs.mjs +19 -19
- package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tag.mjs +21 -21
- package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
- package/fesm2022/ngx-tethys-time-picker.mjs +61 -58
- package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-timeline.mjs +16 -16
- package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tooltip.mjs +32 -33
- package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
- package/fesm2022/ngx-tethys-transfer.mjs +5 -5
- package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tree-select.mjs +23 -28
- package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tree.mjs +96 -102
- package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
- package/fesm2022/ngx-tethys-typography.mjs +15 -15
- package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
- package/fesm2022/ngx-tethys-upload.mjs +11 -12
- package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
- package/fesm2022/ngx-tethys-watermark.mjs +12 -12
- package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
- package/fesm2022/ngx-tethys.mjs +1 -1
- package/fesm2022/ngx-tethys.mjs.map +1 -1
- package/flexible-text/flexible-text.component.d.ts +1 -3
- package/form/form-group-error/form-group-error.component.d.ts +1 -3
- package/form/form-group-label.directive.d.ts +0 -2
- package/form/form-group.component.d.ts +1 -4
- package/form/form-submit.directive.d.ts +0 -2
- package/form/form-validator.service.d.ts +0 -2
- package/form/form.directive.d.ts +4 -4
- package/form/from-group-footer/form-group-footer.component.d.ts +2 -4
- package/form/validator/unique-validator.directive.d.ts +1 -4
- package/fullscreen/fullscreen.component.d.ts +0 -2
- package/fullscreen/fullscreen.service.d.ts +0 -2
- package/grid/thy-col.directive.d.ts +1 -2
- package/grid/thy-grid-item.component.d.ts +2 -4
- package/grid/thy-grid.component.d.ts +1 -3
- package/guider/guider.directive.d.ts +1 -3
- package/guider/guider.service.d.ts +0 -7
- package/icon/icon-registry.d.ts +1 -3
- package/icon/icon.component.d.ts +1 -3
- package/image/image-group.component.d.ts +1 -2
- package/image/image.directive.d.ts +1 -3
- package/image/image.service.d.ts +2 -2
- package/image/preview/image-preview.component.d.ts +1 -4
- package/input/input-count.component.d.ts +3 -4
- package/input/input-group.component.d.ts +1 -3
- package/input/input-search.component.d.ts +2 -2
- package/input/input.component.d.ts +1 -2
- package/input/input.directive.d.ts +2 -3
- package/input-number/input-number.component.d.ts +2 -2
- package/layout/sidebar.component.d.ts +44 -13
- package/list/selection/selection-list.d.ts +1 -2
- package/loading/loading.component.d.ts +0 -2
- package/loading/styles/loading.scss +3 -1
- package/mention/mention.directive.d.ts +4 -5
- package/mention/suggestions/suggestions.component.d.ts +2 -3
- package/menu/group/menu-group.component.d.ts +12 -26
- package/menu/item/action/menu-item-action.component.d.ts +2 -3
- package/menu/item/menu-item.component.d.ts +1 -2
- package/message/abstract/abstract-message-container.component.d.ts +1 -2
- package/message/abstract/abstract-message.component.d.ts +2 -2
- package/message/message-container.component.d.ts +1 -3
- package/message/message-queue.service.d.ts +1 -2
- package/message/message.component.d.ts +1 -3
- package/message/message.service.d.ts +3 -5
- package/nav/icon-nav/icon-nav.component.d.ts +2 -2
- package/nav/nav-ink-bar.directive.d.ts +2 -4
- package/nav/nav-item.directive.d.ts +3 -4
- package/nav/nav.component.d.ts +1 -3
- package/nav/nav.pipe.d.ts +0 -2
- package/notify/notify-container.component.d.ts +1 -3
- package/notify/notify-queue.service.d.ts +1 -2
- package/notify/notify.component.d.ts +2 -3
- package/notify/notify.service.d.ts +1 -4
- package/package.json +1 -1
- package/pagination/pagination.component.d.ts +7 -19
- package/pagination/pagination.pipe.d.ts +0 -2
- package/popover/header/popover-header.component.d.ts +0 -3
- package/popover/popover-container.component.d.ts +3 -4
- package/popover/popover.directive.d.ts +2 -5
- package/popover/popover.service.d.ts +4 -6
- package/progress/progress-strip.component.d.ts +0 -1
- package/property/property-item.component.d.ts +6 -6
- package/property-operation/property-operation.component.d.ts +1 -3
- package/radio/button/radio-button.component.d.ts +2 -5
- package/radio/group/radio-group.component.d.ts +1 -2
- package/radio/radio.component.d.ts +2 -3
- package/rate/rate.component.d.ts +2 -2
- package/resizable/resizable.directive.d.ts +2 -4
- package/resizable/resizable.service.d.ts +2 -2
- package/resizable/resize-handle.component.d.ts +1 -3
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
- package/segment/segment-item.component.d.ts +4 -5
- package/segment/segment.component.d.ts +1 -2
- package/select/custom-select/custom-select.component.d.ts +5 -5
- package/select/native-select/native-select.component.d.ts +1 -1
- package/shared/base-form-check.component.d.ts +1 -1
- package/shared/directives/string-or-template-outlet.directive.d.ts +1 -2
- package/shared/directives/thy-autofocus.directive.d.ts +0 -2
- package/shared/directives/thy-contextmenu.directive.d.ts +1 -2
- package/shared/directives/thy-ctrl-enter.directive.d.ts +1 -2
- package/shared/directives/thy-enter.directive.d.ts +1 -2
- package/shared/directives/thy-scroll.directive.d.ts +1 -2
- package/shared/directives/thy-show.d.ts +1 -2
- package/shared/directives/thy-stop-propagation.directive.d.ts +2 -2
- package/shared/directives/view-outlet.directive.d.ts +1 -2
- package/shared/ng-transclude.directive.d.ts +1 -1
- package/shared/option/group/option-group.component.d.ts +1 -2
- package/shared/option/list-option/list-option.component.d.ts +5 -10
- package/shared/option/option.component.d.ts +5 -5
- package/shared/select/select-control/select-control.component.d.ts +1 -2
- package/skeleton/skeleton-circle.component.d.ts +1 -4
- package/skeleton/skeleton-rectangle.component.d.ts +5 -5
- package/slide/drawer/drawer-container.directive.d.ts +1 -2
- package/slide/slide-container.component.d.ts +3 -4
- package/slide/slide-header/slide-header.component.d.ts +0 -2
- package/slide/slide.service.d.ts +3 -3
- package/slider/slider.component.d.ts +2 -2
- package/space/space.component.d.ts +1 -2
- package/statistic/statistic.component.d.ts +1 -2
- package/stepper/step.component.d.ts +1 -2
- package/stepper/stepper-button.directive.d.ts +0 -3
- package/strength/strength.component.d.ts +0 -1
- package/switch/switch.component.d.ts +1 -1
- package/table/table-column.component.d.ts +32 -8
- package/table/table-skeleton.component.d.ts +3 -12
- package/table/table.component.d.ts +3 -5
- package/tabs/tabs.component.d.ts +1 -2
- package/tag/tag.component.d.ts +7 -3
- package/time-picker/inner/inner-time-picker.component.d.ts +2 -4
- package/time-picker/time-picker-panel.component.d.ts +1 -2
- package/time-picker/time-picker.component.d.ts +1 -2
- package/timeline/timeline-item.component.d.ts +1 -3
- package/timeline/timeline.component.d.ts +1 -3
- package/tooltip/tooltip.component.d.ts +1 -2
- package/tooltip/tooltip.directive.d.ts +6 -9
- package/tooltip/tooltip.service.d.ts +2 -4
- package/transfer/transfer-list.component.d.ts +1 -2
- package/tree/tree-node.component.d.ts +5 -21
- package/tree/tree.component.d.ts +1 -2
- package/tree-select/tree-select.component.d.ts +5 -6
- package/typography/bg-color.directive.d.ts +0 -2
- package/typography/text-color.directive.d.ts +1 -2
- package/upload/file-select-base.d.ts +2 -3
- package/upload/file-select.component.d.ts +1 -0
- package/upload/upload.service.d.ts +0 -2
- package/watermark/watermark.directive.d.ts +1 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, numberAttribute, forwardRef, Component, HostBinding, Input, ViewChild, Output, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, ChangeDetectorRef, NgZone, ElementRef, EventEmitter, numberAttribute, forwardRef, Component, HostBinding, Input, ViewChild, Output, NgModule } from '@angular/core';
|
|
3
3
|
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
4
4
|
import { fromEvent } from 'rxjs';
|
|
5
5
|
import { clamp, coerceBooleanProperty } from 'ngx-tethys/util';
|
|
@@ -52,11 +52,11 @@ class ThySlider extends TabIndexDisabledControlValueAccessorMixin {
|
|
|
52
52
|
this.sizeClassName = `thy-slider-${size}`;
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
-
constructor(
|
|
55
|
+
constructor() {
|
|
56
56
|
super();
|
|
57
|
-
this.cdr =
|
|
58
|
-
this.ngZone =
|
|
59
|
-
this.ref =
|
|
57
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
58
|
+
this.ngZone = inject(NgZone);
|
|
59
|
+
this.ref = inject(ElementRef);
|
|
60
60
|
/**
|
|
61
61
|
* 是否切换为纵轴模式
|
|
62
62
|
*/
|
|
@@ -264,7 +264,7 @@ class ThySlider extends TabIndexDisabledControlValueAccessorMixin {
|
|
|
264
264
|
const integerLength = valueString.indexOf('.') + 1;
|
|
265
265
|
return integerLength >= 0 ? valueString.length - integerLength : 0;
|
|
266
266
|
}
|
|
267
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThySlider, deps: [
|
|
267
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThySlider, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
268
268
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThySlider, isStandalone: true, selector: "thy-slider", inputs: { thyVertical: ["thyVertical", "thyVertical", coerceBooleanProperty], thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty], thyMax: ["thyMax", "thyMax", numberAttribute], thyMin: ["thyMin", "thyMin", numberAttribute], thyStep: ["thyStep", "thyStep", numberAttribute], thyType: "thyType", thyColor: "thyColor", thySize: "thySize" }, outputs: { thyAfterChange: "thyAfterChange" }, host: { properties: { "attr.tabindex": "tabIndex", "class.slider-vertical": "this.thyVertical", "class.slider-disabled": "this.thyDisabled", "class.thy-slider": "this._thySlider", "class.cursor-pointer": "this._pointer" } }, providers: [
|
|
269
269
|
{
|
|
270
270
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -284,7 +284,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
284
284
|
], host: {
|
|
285
285
|
'[attr.tabindex]': `tabIndex`
|
|
286
286
|
}, standalone: true, imports: [NgStyle], template: "<div class=\"thy-slider-rail\" #sliderRail>\n <div class=\"thy-slider-track\" #sliderTrack [ngStyle]=\"{ 'background-color': thyColor }\"></div>\n <div class=\"thy-slider-pointer\" #sliderPointer [ngStyle]=\"{ 'border-color': thyColor }\"></div>\n</div>\n" }]
|
|
287
|
-
}], ctorParameters: () => [
|
|
287
|
+
}], ctorParameters: () => [], propDecorators: { thyVertical: [{
|
|
288
288
|
type: HostBinding,
|
|
289
289
|
args: ['class.slider-vertical']
|
|
290
290
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-slider.mjs","sources":["../../../src/slider/slider.component.ts","../../../src/slider/slider.component.html","../../../src/slider/slider.module.ts","../../../src/slider/ngx-tethys-slider.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n OnChanges,\n OnDestroy,\n AfterViewInit,\n SimpleChanges,\n forwardRef,\n Input,\n EventEmitter,\n ChangeDetectorRef,\n ViewChild,\n ElementRef,\n HostBinding,\n Output,\n NgZone,\n numberAttribute\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Observable, Subscription, fromEvent } from 'rxjs';\nimport { clamp, coerceBooleanProperty } from 'ngx-tethys/util';\nimport { tap, pluck, map, distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { TabIndexDisabledControlValueAccessorMixin } from 'ngx-tethys/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { NgStyle } from '@angular/common';\n\nexport type ThySliderType = 'primary' | 'success' | 'info' | 'warning' | 'danger';\n\nexport type ThySliderSize = 'sm' | 'md' | 'lg';\n\n/**\n * 滑动输入条组件\n * @name thy-slider\n * @order 10\n */\n@Component({\n selector: 'thy-slider',\n templateUrl: './slider.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ThySlider),\n multi: true\n }\n ],\n host: {\n '[attr.tabindex]': `tabIndex`\n },\n standalone: true,\n imports: [NgStyle]\n})\nexport class ThySlider\n extends TabIndexDisabledControlValueAccessorMixin\n implements OnInit, AfterViewInit, OnDestroy, OnChanges, ControlValueAccessor\n{\n /**\n * 是否切换为纵轴模式\n */\n @HostBinding('class.slider-vertical')\n @Input({ transform: coerceBooleanProperty })\n thyVertical = false;\n\n /**\n * 是否禁用\n */\n @HostBinding('class.slider-disabled')\n @Input({ transform: coerceBooleanProperty })\n override set thyDisabled(value: boolean) {\n this.disabled = value;\n this.toggleDisabled();\n }\n override get thyDisabled(): boolean {\n return this.disabled;\n }\n\n disabled = false;\n\n @HostBinding('class.thy-slider') _thySlider = true;\n\n @HostBinding('class.cursor-pointer') _pointer = true;\n\n @ViewChild('sliderRail', { static: true }) sliderRail: ElementRef;\n\n @ViewChild('sliderTrack', { static: true }) sliderTrack: ElementRef;\n\n @ViewChild('sliderPointer', { static: true }) sliderPointer: ElementRef;\n\n /**\n * 最大值\n */\n @Input({ transform: numberAttribute }) thyMax = 100;\n\n /**\n * 最小值\n */\n @Input({ transform: numberAttribute }) thyMin = 0;\n\n /**\n * 步长,需要被 thyMax - thyMin 的差值整除。\n */\n @Input({ transform: numberAttribute }) thyStep = 1;\n\n /**\n * 切换主题类型\n * @type primary | success | info | warning | danger\n * @default success\n */\n @Input() set thyType(type: ThySliderType) {\n if (type) {\n if (this.typeClassName) {\n this.hostRenderer.removeClass(this.typeClassName);\n }\n this.hostRenderer.addClass(type ? `thy-slider-${type}` : '');\n this.typeClassName = `thy-slider-${type}`;\n }\n }\n\n /**\n * 通过变量设置颜色\n */\n @Input() thyColor: string;\n\n /**\n * 滑动输入条大小\n * @type sm | md | lg\n * @default sm\n */\n @Input() set thySize(size: ThySliderSize) {\n if (size) {\n if (this.sizeClassName) {\n this.hostRenderer.removeClass(this.sizeClassName);\n }\n this.hostRenderer.addClass(size ? `thy-slider-${size}` : '');\n this.sizeClassName = `thy-slider-${size}`;\n }\n }\n\n /**\n * 移动结束后的回调,参数为当前值\n */\n @Output() thyAfterChange = new EventEmitter<{ value: number }>();\n\n public value: number;\n\n private typeClassName = '';\n\n private sizeClassName = '';\n\n private dragStartListener: Observable<number>;\n\n private dragMoveListener: Observable<number>;\n\n private dragEndListener: Observable<Event>;\n\n private dragStartHandler: Subscription | null;\n\n private dragMoveHandler: Subscription | null;\n\n private dragEndHandler: Subscription | null;\n\n private hostRenderer = useHostRenderer();\n\n private onChangeCallback = (v: any) => {};\n\n private onTouchedCallback = (v: any) => {};\n\n constructor(\n private cdr: ChangeDetectorRef,\n private ngZone: NgZone,\n private ref: ElementRef\n ) {\n super();\n }\n\n ngOnInit() {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n verifyMinAndMax(this);\n verifyStepValues(this);\n }\n\n this.toggleDisabled();\n if (this.value === null || this.value === undefined) {\n this.setValue(this.ensureValueInRange(null));\n }\n }\n\n ngAfterViewInit() {\n this.registerMouseEventsListeners();\n this.toggleDisabled();\n }\n\n writeValue(newValue: number) {\n this.setValue(this.ensureValueInRange(newValue));\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (changes.hasOwnProperty('thyMin') || changes.hasOwnProperty('thyMax') || changes.hasOwnProperty('thyStep')) {\n verifyMinAndMax(this);\n verifyStepValues(this);\n }\n }\n }\n\n ngOnDestroy() {\n this.unsubscribeMouseListeners();\n }\n\n private toggleDisabled() {\n if (this.thyDisabled) {\n this.unsubscribeMouseListeners();\n } else {\n this.subscribeMouseListeners(['start']);\n }\n }\n\n private setValue(value: number) {\n if (this.value !== value) {\n this.value = value;\n this.updateTrackAndPointer();\n }\n this.onChangeCallback(this.value);\n }\n\n private ensureValueInRange(value: number): number {\n if (!this.valueMustBeValid(value)) {\n return this.thyMin;\n }\n return clamp(value, this.thyMin, this.thyMax);\n }\n\n private valueMustBeValid(value: number): boolean {\n return !isNaN(typeof value !== 'number' ? parseFloat(value) : value);\n }\n\n private updateTrackAndPointer() {\n const offset = this.valueToOffset(this.value);\n this.updateStyle(offset / 100);\n this.cdr.markForCheck();\n }\n\n private valueToOffset(value: number): number {\n return ((value - this.thyMin) * 100) / (this.thyMax - this.thyMin);\n }\n\n private updateStyle(offsetPercentage: number) {\n const percentage = Math.min(1, Math.max(0, offsetPercentage));\n const orientFields: string[] = this.thyVertical ? ['height', 'bottom'] : ['width', 'left'];\n this.sliderTrack.nativeElement.style[orientFields[0]] = `${percentage * 100}%`;\n this.sliderPointer.nativeElement.style[orientFields[1]] = `${percentage * 100}%`;\n }\n\n private unsubscribeMouseListeners(actions: string[] = ['start', 'move', 'end']) {\n if (actions.includes('start') && this.dragStartHandler) {\n this.dragStartHandler.unsubscribe();\n this.dragStartHandler = null;\n }\n if (actions.includes('move') && this.dragMoveHandler) {\n this.dragMoveHandler.unsubscribe();\n this.dragMoveHandler = null;\n }\n if (actions.includes('end') && this.dragEndHandler) {\n this.dragEndHandler.unsubscribe();\n this.dragEndHandler = null;\n }\n }\n\n private subscribeMouseListeners(actions: string[] = ['start', 'move', 'end']) {\n if (actions.includes('start') && this.dragStartListener && !this.dragStartHandler) {\n this.dragStartHandler = this.dragStartListener.subscribe(this.mouseStartMoving.bind(this));\n }\n\n if (actions.includes('move') && this.dragMoveListener && !this.dragMoveHandler) {\n this.dragMoveHandler = this.dragMoveListener.subscribe(this.mouseMoving.bind(this));\n }\n\n if (actions.includes('end') && this.dragEndListener && !this.dragEndHandler) {\n this.dragEndHandler = this.dragEndListener.subscribe(this.mouseStopMoving.bind(this));\n }\n }\n\n private mouseStartMoving(value: number) {\n this.pointerController(true);\n this.setValue(value);\n }\n\n private mouseMoving(value: number) {\n this.setValue(this.ensureValueInRange(value));\n this.cdr.markForCheck();\n }\n\n private mouseStopMoving(): void {\n this.pointerController(false);\n this.cdr.markForCheck();\n this.thyAfterChange.emit({ value: this.value });\n }\n\n private pointerController(movable: boolean) {\n if (movable) {\n this.subscribeMouseListeners(['move', 'end']);\n } else {\n this.unsubscribeMouseListeners(['move', 'end']);\n }\n }\n private registerMouseEventsListeners() {\n const orientField = this.thyVertical ? 'pageY' : 'pageX';\n\n this.dragStartListener = this.ngZone.runOutsideAngular(() => {\n return fromEvent(this.ref.nativeElement, 'mousedown').pipe(\n pluck(orientField),\n map((position: number, index) => this.mousePositionToAdaptiveValue(position))\n );\n });\n\n this.dragEndListener = this.ngZone.runOutsideAngular(() => {\n return fromEvent(document, 'mouseup');\n });\n\n this.dragMoveListener = this.ngZone.runOutsideAngular(() => {\n return fromEvent(document, 'mousemove').pipe(\n tap((e: Event) => {\n e.stopPropagation();\n e.preventDefault();\n }),\n pluck(orientField),\n distinctUntilChanged(),\n map((position: number) => this.mousePositionToAdaptiveValue(position)),\n distinctUntilChanged(),\n takeUntil(this.dragEndListener)\n );\n });\n }\n\n private mousePositionToAdaptiveValue(position: number): number {\n const sliderStartPosition = this.getSliderPagePosition();\n const sliderLength = this.getRailLength();\n if (!sliderLength) {\n return this.value;\n }\n const ratio = this.convertPointerPositionToRatio(position, sliderStartPosition, sliderLength);\n const value = this.ratioToValue(ratio);\n return parseFloat(value.toFixed(this.getDecimals(this.thyStep)));\n }\n\n private getSliderPagePosition(): number {\n const rect = this.ref.nativeElement.getBoundingClientRect();\n const window = this.ref.nativeElement.ownerDocument.defaultView;\n const orientFields: string[] = this.thyVertical ? ['bottom', 'pageYOffset'] : ['left', 'pageXOffset'];\n return rect[orientFields[0]] + window[orientFields[1]];\n }\n\n private getRailLength() {\n const orientFiled = this.thyVertical ? 'clientHeight' : 'clientWidth';\n\n return this.sliderRail.nativeElement[orientFiled];\n }\n\n private convertPointerPositionToRatio(pointerPosition: number, startPosition: number, totalLength: number) {\n if (this.thyVertical) {\n return clamp((startPosition - pointerPosition) / totalLength, 0, 1);\n }\n return clamp((pointerPosition - startPosition) / totalLength, 0, 1);\n }\n\n private ratioToValue(ratio: number) {\n let value = (this.thyMax - this.thyMin) * ratio + this.thyMin;\n const step = this.thyStep;\n if (ratio === 0) {\n value = this.thyMin;\n } else if (ratio === 1) {\n value = this.thyMax;\n } else {\n value = Math.round(value / step) * step;\n }\n return clamp(value, this.thyMin, this.thyMax);\n }\n\n private getDecimals(value: number): number {\n const valueString = value.toString();\n const integerLength = valueString.indexOf('.') + 1;\n return integerLength >= 0 ? valueString.length - integerLength : 0;\n }\n}\n\n// Note: keep `verifyMinAndMax` and `verifyStepValues` as separate functions (not as class properties)\n// so they're tree-shakable in production mode.\n\nfunction verifyMinAndMax(ctx: ThySlider): void | never {\n if (ctx.thyMin >= ctx.thyMax) {\n throw new Error('min value must less than max value.');\n }\n}\n\nfunction verifyStepValues(ctx: ThySlider): void | never {\n if (ctx.thyStep <= 0 || !ctx.thyStep) {\n throw new Error('step value must be greater than 0.');\n } else if (Number.isInteger(ctx.thyStep) && (ctx.thyMax - ctx.thyMin) % ctx.thyStep) {\n throw new Error('(max - min) must be divisible by step.');\n }\n}\n","<div class=\"thy-slider-rail\" #sliderRail>\n <div class=\"thy-slider-track\" #sliderTrack [ngStyle]=\"{ 'background-color': thyColor }\"></div>\n <div class=\"thy-slider-pointer\" #sliderPointer [ngStyle]=\"{ 'border-color': thyColor }\"></div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { ThySlider } from './slider.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, ThySlider],\n exports: [ThySlider],\n providers: []\n})\nexport class ThySliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-tethys-slider.mjs","sources":["../../../src/slider/slider.component.ts","../../../src/slider/slider.component.html","../../../src/slider/slider.module.ts","../../../src/slider/ngx-tethys-slider.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n OnChanges,\n OnDestroy,\n AfterViewInit,\n SimpleChanges,\n forwardRef,\n Input,\n EventEmitter,\n ChangeDetectorRef,\n ViewChild,\n ElementRef,\n HostBinding,\n Output,\n NgZone,\n numberAttribute,\n inject\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Observable, Subscription, fromEvent } from 'rxjs';\nimport { clamp, coerceBooleanProperty } from 'ngx-tethys/util';\nimport { tap, pluck, map, distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { TabIndexDisabledControlValueAccessorMixin } from 'ngx-tethys/core';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { NgStyle } from '@angular/common';\n\nexport type ThySliderType = 'primary' | 'success' | 'info' | 'warning' | 'danger';\n\nexport type ThySliderSize = 'sm' | 'md' | 'lg';\n\n/**\n * 滑动输入条组件\n * @name thy-slider\n * @order 10\n */\n@Component({\n selector: 'thy-slider',\n templateUrl: './slider.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ThySlider),\n multi: true\n }\n ],\n host: {\n '[attr.tabindex]': `tabIndex`\n },\n standalone: true,\n imports: [NgStyle]\n})\nexport class ThySlider\n extends TabIndexDisabledControlValueAccessorMixin\n implements OnInit, AfterViewInit, OnDestroy, OnChanges, ControlValueAccessor\n{\n private cdr = inject(ChangeDetectorRef);\n private ngZone = inject(NgZone);\n private ref = inject(ElementRef);\n\n /**\n * 是否切换为纵轴模式\n */\n @HostBinding('class.slider-vertical')\n @Input({ transform: coerceBooleanProperty })\n thyVertical = false;\n\n /**\n * 是否禁用\n */\n @HostBinding('class.slider-disabled')\n @Input({ transform: coerceBooleanProperty })\n override set thyDisabled(value: boolean) {\n this.disabled = value;\n this.toggleDisabled();\n }\n override get thyDisabled(): boolean {\n return this.disabled;\n }\n\n disabled = false;\n\n @HostBinding('class.thy-slider') _thySlider = true;\n\n @HostBinding('class.cursor-pointer') _pointer = true;\n\n @ViewChild('sliderRail', { static: true }) sliderRail: ElementRef;\n\n @ViewChild('sliderTrack', { static: true }) sliderTrack: ElementRef;\n\n @ViewChild('sliderPointer', { static: true }) sliderPointer: ElementRef;\n\n /**\n * 最大值\n */\n @Input({ transform: numberAttribute }) thyMax = 100;\n\n /**\n * 最小值\n */\n @Input({ transform: numberAttribute }) thyMin = 0;\n\n /**\n * 步长,需要被 thyMax - thyMin 的差值整除。\n */\n @Input({ transform: numberAttribute }) thyStep = 1;\n\n /**\n * 切换主题类型\n * @type primary | success | info | warning | danger\n * @default success\n */\n @Input() set thyType(type: ThySliderType) {\n if (type) {\n if (this.typeClassName) {\n this.hostRenderer.removeClass(this.typeClassName);\n }\n this.hostRenderer.addClass(type ? `thy-slider-${type}` : '');\n this.typeClassName = `thy-slider-${type}`;\n }\n }\n\n /**\n * 通过变量设置颜色\n */\n @Input() thyColor: string;\n\n /**\n * 滑动输入条大小\n * @type sm | md | lg\n * @default sm\n */\n @Input() set thySize(size: ThySliderSize) {\n if (size) {\n if (this.sizeClassName) {\n this.hostRenderer.removeClass(this.sizeClassName);\n }\n this.hostRenderer.addClass(size ? `thy-slider-${size}` : '');\n this.sizeClassName = `thy-slider-${size}`;\n }\n }\n\n /**\n * 移动结束后的回调,参数为当前值\n */\n @Output() thyAfterChange = new EventEmitter<{ value: number }>();\n\n public value: number;\n\n private typeClassName = '';\n\n private sizeClassName = '';\n\n private dragStartListener: Observable<number>;\n\n private dragMoveListener: Observable<number>;\n\n private dragEndListener: Observable<Event>;\n\n private dragStartHandler: Subscription | null;\n\n private dragMoveHandler: Subscription | null;\n\n private dragEndHandler: Subscription | null;\n\n private hostRenderer = useHostRenderer();\n\n private onChangeCallback = (v: any) => {};\n\n private onTouchedCallback = (v: any) => {};\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n verifyMinAndMax(this);\n verifyStepValues(this);\n }\n\n this.toggleDisabled();\n if (this.value === null || this.value === undefined) {\n this.setValue(this.ensureValueInRange(null));\n }\n }\n\n ngAfterViewInit() {\n this.registerMouseEventsListeners();\n this.toggleDisabled();\n }\n\n writeValue(newValue: number) {\n this.setValue(this.ensureValueInRange(newValue));\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (changes.hasOwnProperty('thyMin') || changes.hasOwnProperty('thyMax') || changes.hasOwnProperty('thyStep')) {\n verifyMinAndMax(this);\n verifyStepValues(this);\n }\n }\n }\n\n ngOnDestroy() {\n this.unsubscribeMouseListeners();\n }\n\n private toggleDisabled() {\n if (this.thyDisabled) {\n this.unsubscribeMouseListeners();\n } else {\n this.subscribeMouseListeners(['start']);\n }\n }\n\n private setValue(value: number) {\n if (this.value !== value) {\n this.value = value;\n this.updateTrackAndPointer();\n }\n this.onChangeCallback(this.value);\n }\n\n private ensureValueInRange(value: number): number {\n if (!this.valueMustBeValid(value)) {\n return this.thyMin;\n }\n return clamp(value, this.thyMin, this.thyMax);\n }\n\n private valueMustBeValid(value: number): boolean {\n return !isNaN(typeof value !== 'number' ? parseFloat(value) : value);\n }\n\n private updateTrackAndPointer() {\n const offset = this.valueToOffset(this.value);\n this.updateStyle(offset / 100);\n this.cdr.markForCheck();\n }\n\n private valueToOffset(value: number): number {\n return ((value - this.thyMin) * 100) / (this.thyMax - this.thyMin);\n }\n\n private updateStyle(offsetPercentage: number) {\n const percentage = Math.min(1, Math.max(0, offsetPercentage));\n const orientFields: string[] = this.thyVertical ? ['height', 'bottom'] : ['width', 'left'];\n this.sliderTrack.nativeElement.style[orientFields[0]] = `${percentage * 100}%`;\n this.sliderPointer.nativeElement.style[orientFields[1]] = `${percentage * 100}%`;\n }\n\n private unsubscribeMouseListeners(actions: string[] = ['start', 'move', 'end']) {\n if (actions.includes('start') && this.dragStartHandler) {\n this.dragStartHandler.unsubscribe();\n this.dragStartHandler = null;\n }\n if (actions.includes('move') && this.dragMoveHandler) {\n this.dragMoveHandler.unsubscribe();\n this.dragMoveHandler = null;\n }\n if (actions.includes('end') && this.dragEndHandler) {\n this.dragEndHandler.unsubscribe();\n this.dragEndHandler = null;\n }\n }\n\n private subscribeMouseListeners(actions: string[] = ['start', 'move', 'end']) {\n if (actions.includes('start') && this.dragStartListener && !this.dragStartHandler) {\n this.dragStartHandler = this.dragStartListener.subscribe(this.mouseStartMoving.bind(this));\n }\n\n if (actions.includes('move') && this.dragMoveListener && !this.dragMoveHandler) {\n this.dragMoveHandler = this.dragMoveListener.subscribe(this.mouseMoving.bind(this));\n }\n\n if (actions.includes('end') && this.dragEndListener && !this.dragEndHandler) {\n this.dragEndHandler = this.dragEndListener.subscribe(this.mouseStopMoving.bind(this));\n }\n }\n\n private mouseStartMoving(value: number) {\n this.pointerController(true);\n this.setValue(value);\n }\n\n private mouseMoving(value: number) {\n this.setValue(this.ensureValueInRange(value));\n this.cdr.markForCheck();\n }\n\n private mouseStopMoving(): void {\n this.pointerController(false);\n this.cdr.markForCheck();\n this.thyAfterChange.emit({ value: this.value });\n }\n\n private pointerController(movable: boolean) {\n if (movable) {\n this.subscribeMouseListeners(['move', 'end']);\n } else {\n this.unsubscribeMouseListeners(['move', 'end']);\n }\n }\n private registerMouseEventsListeners() {\n const orientField = this.thyVertical ? 'pageY' : 'pageX';\n\n this.dragStartListener = this.ngZone.runOutsideAngular(() => {\n return fromEvent(this.ref.nativeElement, 'mousedown').pipe(\n pluck(orientField),\n map((position: number, index) => this.mousePositionToAdaptiveValue(position))\n );\n });\n\n this.dragEndListener = this.ngZone.runOutsideAngular(() => {\n return fromEvent(document, 'mouseup');\n });\n\n this.dragMoveListener = this.ngZone.runOutsideAngular(() => {\n return fromEvent(document, 'mousemove').pipe(\n tap((e: Event) => {\n e.stopPropagation();\n e.preventDefault();\n }),\n pluck(orientField),\n distinctUntilChanged(),\n map((position: number) => this.mousePositionToAdaptiveValue(position)),\n distinctUntilChanged(),\n takeUntil(this.dragEndListener)\n );\n });\n }\n\n private mousePositionToAdaptiveValue(position: number): number {\n const sliderStartPosition = this.getSliderPagePosition();\n const sliderLength = this.getRailLength();\n if (!sliderLength) {\n return this.value;\n }\n const ratio = this.convertPointerPositionToRatio(position, sliderStartPosition, sliderLength);\n const value = this.ratioToValue(ratio);\n return parseFloat(value.toFixed(this.getDecimals(this.thyStep)));\n }\n\n private getSliderPagePosition(): number {\n const rect = this.ref.nativeElement.getBoundingClientRect();\n const window = this.ref.nativeElement.ownerDocument.defaultView;\n const orientFields: string[] = this.thyVertical ? ['bottom', 'pageYOffset'] : ['left', 'pageXOffset'];\n return rect[orientFields[0]] + window[orientFields[1]];\n }\n\n private getRailLength() {\n const orientFiled = this.thyVertical ? 'clientHeight' : 'clientWidth';\n\n return this.sliderRail.nativeElement[orientFiled];\n }\n\n private convertPointerPositionToRatio(pointerPosition: number, startPosition: number, totalLength: number) {\n if (this.thyVertical) {\n return clamp((startPosition - pointerPosition) / totalLength, 0, 1);\n }\n return clamp((pointerPosition - startPosition) / totalLength, 0, 1);\n }\n\n private ratioToValue(ratio: number) {\n let value = (this.thyMax - this.thyMin) * ratio + this.thyMin;\n const step = this.thyStep;\n if (ratio === 0) {\n value = this.thyMin;\n } else if (ratio === 1) {\n value = this.thyMax;\n } else {\n value = Math.round(value / step) * step;\n }\n return clamp(value, this.thyMin, this.thyMax);\n }\n\n private getDecimals(value: number): number {\n const valueString = value.toString();\n const integerLength = valueString.indexOf('.') + 1;\n return integerLength >= 0 ? valueString.length - integerLength : 0;\n }\n}\n\n// Note: keep `verifyMinAndMax` and `verifyStepValues` as separate functions (not as class properties)\n// so they're tree-shakable in production mode.\n\nfunction verifyMinAndMax(ctx: ThySlider): void | never {\n if (ctx.thyMin >= ctx.thyMax) {\n throw new Error('min value must less than max value.');\n }\n}\n\nfunction verifyStepValues(ctx: ThySlider): void | never {\n if (ctx.thyStep <= 0 || !ctx.thyStep) {\n throw new Error('step value must be greater than 0.');\n } else if (Number.isInteger(ctx.thyStep) && (ctx.thyMax - ctx.thyMin) % ctx.thyStep) {\n throw new Error('(max - min) must be divisible by step.');\n }\n}\n","<div class=\"thy-slider-rail\" #sliderRail>\n <div class=\"thy-slider-track\" #sliderTrack [ngStyle]=\"{ 'background-color': thyColor }\"></div>\n <div class=\"thy-slider-pointer\" #sliderPointer [ngStyle]=\"{ 'border-color': thyColor }\"></div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { ThySlider } from './slider.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, ThySlider],\n exports: [ThySlider],\n providers: []\n})\nexport class ThySliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NgTemplateOutlet, CommonModule } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Directive, inject, DestroyRef, TemplateRef, Component, ChangeDetectionStrategy, Input, HostBinding, ContentChildren, NgModule } from '@angular/core';
|
|
3
|
+
import { Directive, inject, ChangeDetectorRef, DestroyRef, TemplateRef, Component, ChangeDetectionStrategy, Input, HostBinding, ContentChildren, NgModule } from '@angular/core';
|
|
4
4
|
import { useHostRenderer } from '@tethys/cdk/dom';
|
|
5
5
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
6
|
import { getNumericSize } from 'ngx-tethys/core';
|
|
@@ -34,6 +34,16 @@ const DEFAULT_SIZE = 'md';
|
|
|
34
34
|
* @order 10
|
|
35
35
|
*/
|
|
36
36
|
class ThySpace {
|
|
37
|
+
constructor() {
|
|
38
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
39
|
+
this.destroyRef = inject(DestroyRef);
|
|
40
|
+
this.space = getNumericSize(DEFAULT_SIZE);
|
|
41
|
+
this.hostRenderer = useHostRenderer();
|
|
42
|
+
/**
|
|
43
|
+
* 间距垂直方向,默认是水平方向
|
|
44
|
+
*/
|
|
45
|
+
this.thyVertical = false;
|
|
46
|
+
}
|
|
37
47
|
/**
|
|
38
48
|
* 大小,支持 `zero` | `xxs` | `xs` | `sm` | `md` | `lg` | `xlg` 和自定义数字大小
|
|
39
49
|
* @type string | number
|
|
@@ -48,23 +58,13 @@ class ThySpace {
|
|
|
48
58
|
set thyAlign(align) {
|
|
49
59
|
this.hostRenderer.updateClass(align ? [`align-items-${align}`] : []);
|
|
50
60
|
}
|
|
51
|
-
constructor(cdr) {
|
|
52
|
-
this.cdr = cdr;
|
|
53
|
-
this.destroyRef = inject(DestroyRef);
|
|
54
|
-
this.space = getNumericSize(DEFAULT_SIZE);
|
|
55
|
-
this.hostRenderer = useHostRenderer();
|
|
56
|
-
/**
|
|
57
|
-
* 间距垂直方向,默认是水平方向
|
|
58
|
-
*/
|
|
59
|
-
this.thyVertical = false;
|
|
60
|
-
}
|
|
61
61
|
ngOnInit() { }
|
|
62
62
|
ngAfterContentInit() {
|
|
63
63
|
this.items.changes.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {
|
|
64
64
|
this.cdr.markForCheck();
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThySpace, deps: [
|
|
67
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThySpace, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
68
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThySpace, isStandalone: true, selector: "thy-space", inputs: { thySize: "thySize", thyVertical: ["thyVertical", "thyVertical", coerceBooleanProperty], thyAlign: "thyAlign" }, host: { properties: { "class.thy-space-vertical": "this.thyVertical" }, classAttribute: "thy-space" }, queries: [{ propertyName: "items", predicate: ThySpaceItemDirective, read: TemplateRef }], ngImport: i0, template: "<ng-content></ng-content>\n\n@for (item of items; track $index; let last = $last; let index = $index) {\n <div class=\"thy-space-item\" [style.margin-right.px]=\"last ? null : space\">\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </div>\n}\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
69
69
|
}
|
|
70
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThySpace, decorators: [{
|
|
@@ -72,7 +72,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
72
72
|
args: [{ selector: 'thy-space', changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
73
73
|
class: 'thy-space'
|
|
74
74
|
}, standalone: true, imports: [NgTemplateOutlet], template: "<ng-content></ng-content>\n\n@for (item of items; track $index; let last = $last; let index = $index) {\n <div class=\"thy-space-item\" [style.margin-right.px]=\"last ? null : space\">\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </div>\n}\n" }]
|
|
75
|
-
}],
|
|
75
|
+
}], propDecorators: { thySize: [{
|
|
76
76
|
type: Input
|
|
77
77
|
}], thyVertical: [{
|
|
78
78
|
type: HostBinding,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-space.mjs","sources":["../../../src/space/space.component.ts","../../../src/space/space.component.html","../../../src/space/space.module.ts","../../../src/space/ngx-tethys-space.ts"],"sourcesContent":["import { useHostRenderer } from '@tethys/cdk/dom';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n Directive,\n HostBinding,\n inject,\n Input,\n OnInit,\n QueryList,\n TemplateRef\n} from '@angular/core';\nimport { ThySpacingSize, getNumericSize } from 'ngx-tethys/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 间距组件项,使用结构性指令 *thySpaceItem 传入模板\n * @name thySpaceItem\n * @order 20\n */\n@Directive({\n selector: '[thySpaceItem]',\n host: {\n class: 'thy-space-item'\n },\n standalone: true\n})\nexport class ThySpaceItemDirective implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n\nconst DEFAULT_SIZE: ThySpacingSize = 'md';\n\n/**\n * 间距组件\n * @name thy-space\n * @order 10\n */\n@Component({\n selector: 'thy-space',\n templateUrl: './space.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-space'\n },\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class ThySpace implements OnInit, AfterContentInit {\n private readonly destroyRef = inject(DestroyRef);\n\n public space: number = getNumericSize(DEFAULT_SIZE);\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 大小,支持 `zero` | `xxs` | `xs` | `sm` | `md` | `lg` | `xlg` 和自定义数字大小\n * @type string | number\n */\n @Input() set thySize(size: ThySpacingSize) {\n this.space = getNumericSize(size, DEFAULT_SIZE);\n }\n\n /**\n * 间距垂直方向,默认是水平方向\n */\n @HostBinding(`class.thy-space-vertical`)\n @Input({ transform: coerceBooleanProperty })\n thyVertical: boolean = false;\n\n // @ClassBinding(`align-items-{{value}}`)\n /**\n * 对齐方式,可选择 `start` | `end` | `baseline` | `center`\n */\n @Input()\n set thyAlign(align: string) {\n this.hostRenderer.updateClass(align ? [`align-items-${align}`] : []);\n }\n\n @ContentChildren(ThySpaceItemDirective, { read: TemplateRef }) items!: QueryList<TemplateRef<HTMLElement>>;\n\n
|
|
1
|
+
{"version":3,"file":"ngx-tethys-space.mjs","sources":["../../../src/space/space.component.ts","../../../src/space/space.component.html","../../../src/space/space.module.ts","../../../src/space/ngx-tethys-space.ts"],"sourcesContent":["import { useHostRenderer } from '@tethys/cdk/dom';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n Directive,\n HostBinding,\n inject,\n Input,\n OnInit,\n QueryList,\n TemplateRef\n} from '@angular/core';\nimport { ThySpacingSize, getNumericSize } from 'ngx-tethys/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 间距组件项,使用结构性指令 *thySpaceItem 传入模板\n * @name thySpaceItem\n * @order 20\n */\n@Directive({\n selector: '[thySpaceItem]',\n host: {\n class: 'thy-space-item'\n },\n standalone: true\n})\nexport class ThySpaceItemDirective implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n\nconst DEFAULT_SIZE: ThySpacingSize = 'md';\n\n/**\n * 间距组件\n * @name thy-space\n * @order 10\n */\n@Component({\n selector: 'thy-space',\n templateUrl: './space.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-space'\n },\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class ThySpace implements OnInit, AfterContentInit {\n private cdr = inject(ChangeDetectorRef);\n\n private readonly destroyRef = inject(DestroyRef);\n\n public space: number = getNumericSize(DEFAULT_SIZE);\n\n private hostRenderer = useHostRenderer();\n\n /**\n * 大小,支持 `zero` | `xxs` | `xs` | `sm` | `md` | `lg` | `xlg` 和自定义数字大小\n * @type string | number\n */\n @Input() set thySize(size: ThySpacingSize) {\n this.space = getNumericSize(size, DEFAULT_SIZE);\n }\n\n /**\n * 间距垂直方向,默认是水平方向\n */\n @HostBinding(`class.thy-space-vertical`)\n @Input({ transform: coerceBooleanProperty })\n thyVertical: boolean = false;\n\n // @ClassBinding(`align-items-{{value}}`)\n /**\n * 对齐方式,可选择 `start` | `end` | `baseline` | `center`\n */\n @Input()\n set thyAlign(align: string) {\n this.hostRenderer.updateClass(align ? [`align-items-${align}`] : []);\n }\n\n @ContentChildren(ThySpaceItemDirective, { read: TemplateRef }) items!: QueryList<TemplateRef<HTMLElement>>;\n\n ngOnInit(): void {}\n\n ngAfterContentInit(): void {\n this.items.changes.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.cdr.markForCheck();\n });\n }\n}\n","<ng-content></ng-content>\n\n@for (item of items; track $index; let last = $last; let index = $index) {\n <div class=\"thy-space-item\" [style.margin-right.px]=\"last ? null : space\">\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </div>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ThySpace, ThySpaceItemDirective } from './space.component';\n\n@NgModule({\n imports: [CommonModule, ThySpace, ThySpaceItemDirective],\n exports: [ThySpace, ThySpaceItemDirective]\n})\nexport class ThySpaceModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NgTemplateOutlet, NgStyle, CommonModule } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Component, HostBinding, Input, ContentChild, NgModule } from '@angular/core';
|
|
3
|
+
import { inject, ElementRef, Component, HostBinding, Input, ContentChild, NgModule } from '@angular/core';
|
|
4
4
|
import { ThySharedModule } from 'ngx-tethys/shared';
|
|
5
5
|
import { hexToRgb } from 'ngx-tethys/util';
|
|
6
6
|
import { useHostRenderer } from '@tethys/cdk/dom';
|
|
@@ -11,6 +11,22 @@ import { ThyIconModule } from 'ngx-tethys/icon';
|
|
|
11
11
|
* @name thy-statistic
|
|
12
12
|
*/
|
|
13
13
|
class ThyStatistic {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.elementRef = inject(ElementRef);
|
|
16
|
+
this._initialized = false;
|
|
17
|
+
this.hostRenderer = useHostRenderer();
|
|
18
|
+
this.class = true;
|
|
19
|
+
/**
|
|
20
|
+
* @description 展示数据的 css 样式
|
|
21
|
+
* @type { [key: string]: string; }
|
|
22
|
+
*/
|
|
23
|
+
this.thyValueStyle = {};
|
|
24
|
+
/**
|
|
25
|
+
* @description 展示数据标题的位置,可设置 `top`|`bottom`
|
|
26
|
+
* @type ThyStatisticTitlePosition
|
|
27
|
+
*/
|
|
28
|
+
this.thyTitlePosition = 'bottom';
|
|
29
|
+
}
|
|
14
30
|
/**
|
|
15
31
|
* @description 展示形状
|
|
16
32
|
* @type ThyStatisticShape
|
|
@@ -89,22 +105,6 @@ class ThyStatistic {
|
|
|
89
105
|
set suffix(value) {
|
|
90
106
|
this.suffixTemplate = value;
|
|
91
107
|
}
|
|
92
|
-
constructor(elementRef) {
|
|
93
|
-
this.elementRef = elementRef;
|
|
94
|
-
this._initialized = false;
|
|
95
|
-
this.hostRenderer = useHostRenderer();
|
|
96
|
-
this.class = true;
|
|
97
|
-
/**
|
|
98
|
-
* @description 展示数据的 css 样式
|
|
99
|
-
* @type { [key: string]: string; }
|
|
100
|
-
*/
|
|
101
|
-
this.thyValueStyle = {};
|
|
102
|
-
/**
|
|
103
|
-
* @description 展示数据标题的位置,可设置 `top`|`bottom`
|
|
104
|
-
* @type ThyStatisticTitlePosition
|
|
105
|
-
*/
|
|
106
|
-
this.thyTitlePosition = 'bottom';
|
|
107
|
-
}
|
|
108
108
|
ngOnInit() {
|
|
109
109
|
this._setClassesByType();
|
|
110
110
|
this._initialized = true;
|
|
@@ -136,13 +136,13 @@ class ThyStatistic {
|
|
|
136
136
|
this.hostRenderer.setStyle('font-size', this.thySize);
|
|
137
137
|
this.hostRenderer.updateClass(classNames);
|
|
138
138
|
}
|
|
139
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStatistic, deps: [
|
|
139
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStatistic, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
140
140
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyStatistic, isStandalone: true, selector: "thy-statistic", inputs: { thyValue: "thyValue", thyValueStyle: "thyValueStyle", thyPrefix: "thyPrefix", thySuffix: "thySuffix", thyTitle: "thyTitle", thyTitlePosition: "thyTitlePosition", thyShape: "thyShape", thyColor: "thyColor", thySize: "thySize", thyValueTemplate: "thyValueTemplate", thyTitleTemplate: "thyTitleTemplate", thyPrefixTemplate: "thyPrefixTemplate", thySuffixTemplate: "thySuffixTemplate" }, host: { properties: { "class.thy-statistic": "this.class" } }, queries: [{ propertyName: "value", first: true, predicate: ["value"], descendants: true, static: true }, { propertyName: "title", first: true, predicate: ["title"], descendants: true, static: true }, { propertyName: "prefix", first: true, predicate: ["prefix"], descendants: true, static: true }, { propertyName: "suffix", first: true, predicate: ["suffix"], descendants: true, static: true }], ngImport: i0, template: "@if ((thyTitle || titleTemplate) && thyTitlePosition === 'top') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n<div class=\"thy-statistic-content\" [ngStyle]=\"thyValueStyle\">\n @if (thyPrefix || prefixTemplate) {\n <span class=\"thy-statistic-content-prefix\">\n @if (thyPrefix) {\n <span>{{ thyPrefix }}</span>\n }\n @if (prefixTemplate) {\n <ng-container [ngTemplateOutlet]=\"prefixTemplate\"></ng-container>\n }\n </span>\n }\n\n <span class=\"thy-statistic-content-value\">\n @if (!valueTemplate) {\n <span>{{ thyValue }}</span>\n }\n @if (valueTemplate) {\n <ng-container [ngTemplateOutlet]=\"valueTemplate\"></ng-container>\n }\n </span>\n\n @if (thySuffix || suffixTemplate) {\n <span class=\"thy-statistic-content-suffix\">\n @if (thySuffix) {\n <span>{{ thySuffix }}</span>\n }\n @if (suffixTemplate) {\n <ng-container [ngTemplateOutlet]=\"suffixTemplate\"></ng-container>\n }\n </span>\n }\n</div>\n@if ((thyTitle || titleTemplate) && thyTitlePosition === 'bottom') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n\n<ng-template #title>\n <div class=\"thy-statistic-title\">\n @if (thyTitle) {\n <span>{{ thyTitle }}</span>\n }\n <ng-container [ngTemplateOutlet]=\"titleTemplate\"></ng-container>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
141
141
|
}
|
|
142
142
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStatistic, decorators: [{
|
|
143
143
|
type: Component,
|
|
144
144
|
args: [{ selector: 'thy-statistic', standalone: true, imports: [NgTemplateOutlet, NgStyle], template: "@if ((thyTitle || titleTemplate) && thyTitlePosition === 'top') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n<div class=\"thy-statistic-content\" [ngStyle]=\"thyValueStyle\">\n @if (thyPrefix || prefixTemplate) {\n <span class=\"thy-statistic-content-prefix\">\n @if (thyPrefix) {\n <span>{{ thyPrefix }}</span>\n }\n @if (prefixTemplate) {\n <ng-container [ngTemplateOutlet]=\"prefixTemplate\"></ng-container>\n }\n </span>\n }\n\n <span class=\"thy-statistic-content-value\">\n @if (!valueTemplate) {\n <span>{{ thyValue }}</span>\n }\n @if (valueTemplate) {\n <ng-container [ngTemplateOutlet]=\"valueTemplate\"></ng-container>\n }\n </span>\n\n @if (thySuffix || suffixTemplate) {\n <span class=\"thy-statistic-content-suffix\">\n @if (thySuffix) {\n <span>{{ thySuffix }}</span>\n }\n @if (suffixTemplate) {\n <ng-container [ngTemplateOutlet]=\"suffixTemplate\"></ng-container>\n }\n </span>\n }\n</div>\n@if ((thyTitle || titleTemplate) && thyTitlePosition === 'bottom') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n\n<ng-template #title>\n <div class=\"thy-statistic-title\">\n @if (thyTitle) {\n <span>{{ thyTitle }}</span>\n }\n <ng-container [ngTemplateOutlet]=\"titleTemplate\"></ng-container>\n </div>\n</ng-template>\n" }]
|
|
145
|
-
}],
|
|
145
|
+
}], propDecorators: { class: [{
|
|
146
146
|
type: HostBinding,
|
|
147
147
|
args: [`class.thy-statistic`]
|
|
148
148
|
}], thyValue: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-statistic.mjs","sources":["../../../src/statistic/statistic.component.ts","../../../src/statistic/statistic.component.html","../../../src/statistic/statistic.module.ts","../../../src/statistic/ngx-tethys-statistic.ts"],"sourcesContent":["import { OnInit, Component, Input, HostBinding, ElementRef, TemplateRef, ContentChild } from '@angular/core';\nimport { hexToRgb } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { NgTemplateOutlet, NgStyle } from '@angular/common';\n\nexport type ThyStatisticColorType = 'primary' | 'success' | 'warning' | 'danger' | 'info';\n\nexport type ThyStatisticShape = 'card';\n\nexport type ThyStatisticSizes = 'default';\n\nexport type ThyStatisticTitlePosition = 'top' | 'bottom';\n\n/**\n * 用于展示数据统计\n * @name thy-statistic\n */\n@Component({\n selector: 'thy-statistic',\n templateUrl: './statistic.component.html',\n standalone: true,\n imports: [NgTemplateOutlet, NgStyle]\n})\nexport class ThyStatistic implements OnInit {\n _shape: ThyStatisticShape;\n\n _initialized = false;\n\n _size: ThyStatisticSizes;\n\n prefixTemplate: TemplateRef<void>;\n\n suffixTemplate: TemplateRef<void>;\n\n valueTemplate: TemplateRef<void>;\n\n titleTemplate: TemplateRef<void>;\n\n private hostRenderer = useHostRenderer();\n\n @HostBinding(`class.thy-statistic`) class = true;\n\n /**\n * @description 展示数据\n * @type number | string\n */\n @Input() thyValue: number | string;\n\n /**\n * @description 展示数据的 css 样式\n * @type { [key: string]: string; }\n */\n @Input() thyValueStyle: { [key: string]: string } = {};\n\n /**\n * @description 展示数据的前缀\n * @type string\n */\n @Input() thyPrefix: string;\n\n /**\n * @description 展示数据的后缀\n * @type string\n */\n @Input() thySuffix: string;\n\n /**\n * @description 展示数据的标题\n * @type string\n */\n @Input() thyTitle: string;\n\n /**\n * @description 展示数据标题的位置,可设置 `top`|`bottom`\n * @type ThyStatisticTitlePosition\n */\n @Input() thyTitlePosition: ThyStatisticTitlePosition = 'bottom';\n\n /**\n * @description 展示形状\n * @type ThyStatisticShape\n * @default card\n */\n @Input()\n set thyShape(value: ThyStatisticShape) {\n this._shape = value;\n if (this._initialized) {\n this._setClassesByType();\n }\n }\n\n /**\n * @description 主题颜色,可以使用提供的主题色,也可以自定义颜色。 `ThyStatisticColorType` 中包含 `primary` | `success` | `warning` | `danger` | `info`\n * @type ThyStatisticColorType | string\n */\n @Input() thyColor: string | ThyStatisticColorType;\n\n /**\n * @description 前缀和展示数据字体大小\n * @type ThyStatisticSizes\n * @default default\n */\n @Input()\n set thySize(value: ThyStatisticSizes) {\n this._size = value;\n if (this._initialized) {\n this._setClassesByType();\n }\n }\n\n /**\n * @description 自定义展示数据模板\n * @type TemplateRef<void>\n */\n @Input() set thyValueTemplate(value: TemplateRef<void>) {\n this.valueTemplate = value;\n }\n\n /**\n * @description 自定义展示数据模板\n * @type TemplateRef<void>\n */\n @ContentChild('value', { static: true }) set value(value: TemplateRef<void>) {\n this.valueTemplate = value;\n }\n\n /**\n * @description 自定义标题模板\n * @type TemplateRef<void>\n */\n @Input() set thyTitleTemplate(value: TemplateRef<void>) {\n this.titleTemplate = value;\n }\n\n /**\n * @description 自定义标题模板\n * @type TemplateRef<void>\n */\n @ContentChild('title', { static: true }) set title(value: TemplateRef<void>) {\n this.titleTemplate = value;\n }\n\n /**\n * @description 自定义前缀模板\n * @type TemplateRef<void>\n */\n @Input() set thyPrefixTemplate(value: TemplateRef<void>) {\n this.prefixTemplate = value;\n }\n\n /**\n * @description 自定义前缀模板\n * @type TemplateRef<void>\n */\n @ContentChild('prefix', { static: true }) set prefix(value: TemplateRef<void>) {\n this.prefixTemplate = value;\n }\n\n /**\n * @description 自定义后缀模板\n * @type TemplateRef<void>\n */\n @Input() set thySuffixTemplate(value: TemplateRef<void>) {\n this.suffixTemplate = value;\n }\n /**\n * @description 自定义后缀模板\n * @type TemplateRef<void>\n */\n @ContentChild('suffix', { static: true }) set suffix(value: TemplateRef<void>) {\n this.suffixTemplate = value;\n }\n\n constructor(private elementRef: ElementRef) {}\n\n ngOnInit() {\n this._setClassesByType();\n this._initialized = true;\n }\n\n setColor(color: string) {\n this.hostRenderer.setStyle('color', color);\n if (this._shape === 'card') {\n this.hostRenderer.setStyle('border-color', color);\n this.hostRenderer.setStyle('background-color', hexToRgb(color, 0.05));\n }\n }\n\n _setClassesByType() {\n const classNames = [];\n if (this.thyColor) {\n if (RegExp(/^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/).test(this.thyColor)) {\n this.setColor(this.thyColor);\n } else {\n classNames.push(`thy-statistic-${this.thyColor}`);\n }\n }\n if (this._shape) {\n classNames.push(`thy-statistic-${this._shape}`);\n }\n if (!this._size) {\n this._size = 'default';\n }\n classNames.push(`thy-statistic-${this._size}`);\n\n this.hostRenderer.setStyle('font-size', this.thySize);\n this.hostRenderer.updateClass(classNames);\n }\n}\n","@if ((thyTitle || titleTemplate) && thyTitlePosition === 'top') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n<div class=\"thy-statistic-content\" [ngStyle]=\"thyValueStyle\">\n @if (thyPrefix || prefixTemplate) {\n <span class=\"thy-statistic-content-prefix\">\n @if (thyPrefix) {\n <span>{{ thyPrefix }}</span>\n }\n @if (prefixTemplate) {\n <ng-container [ngTemplateOutlet]=\"prefixTemplate\"></ng-container>\n }\n </span>\n }\n\n <span class=\"thy-statistic-content-value\">\n @if (!valueTemplate) {\n <span>{{ thyValue }}</span>\n }\n @if (valueTemplate) {\n <ng-container [ngTemplateOutlet]=\"valueTemplate\"></ng-container>\n }\n </span>\n\n @if (thySuffix || suffixTemplate) {\n <span class=\"thy-statistic-content-suffix\">\n @if (thySuffix) {\n <span>{{ thySuffix }}</span>\n }\n @if (suffixTemplate) {\n <ng-container [ngTemplateOutlet]=\"suffixTemplate\"></ng-container>\n }\n </span>\n }\n</div>\n@if ((thyTitle || titleTemplate) && thyTitlePosition === 'bottom') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n\n<ng-template #title>\n <div class=\"thy-statistic-title\">\n @if (thyTitle) {\n <span>{{ thyTitle }}</span>\n }\n <ng-container [ngTemplateOutlet]=\"titleTemplate\"></ng-container>\n </div>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyStatistic } from './statistic.component';\nimport { ThyIconModule } from 'ngx-tethys/icon';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, ThyIconModule, ThyStatistic],\n exports: [ThyStatistic],\n providers: []\n})\nexport class ThyStatisticModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-tethys-statistic.mjs","sources":["../../../src/statistic/statistic.component.ts","../../../src/statistic/statistic.component.html","../../../src/statistic/statistic.module.ts","../../../src/statistic/ngx-tethys-statistic.ts"],"sourcesContent":["import { OnInit, Component, Input, HostBinding, ElementRef, TemplateRef, ContentChild, inject } from '@angular/core';\nimport { hexToRgb } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\nimport { NgTemplateOutlet, NgStyle } from '@angular/common';\n\nexport type ThyStatisticColorType = 'primary' | 'success' | 'warning' | 'danger' | 'info';\n\nexport type ThyStatisticShape = 'card';\n\nexport type ThyStatisticSizes = 'default';\n\nexport type ThyStatisticTitlePosition = 'top' | 'bottom';\n\n/**\n * 用于展示数据统计\n * @name thy-statistic\n */\n@Component({\n selector: 'thy-statistic',\n templateUrl: './statistic.component.html',\n standalone: true,\n imports: [NgTemplateOutlet, NgStyle]\n})\nexport class ThyStatistic implements OnInit {\n private elementRef = inject(ElementRef);\n\n _shape: ThyStatisticShape;\n\n _initialized = false;\n\n _size: ThyStatisticSizes;\n\n prefixTemplate: TemplateRef<void>;\n\n suffixTemplate: TemplateRef<void>;\n\n valueTemplate: TemplateRef<void>;\n\n titleTemplate: TemplateRef<void>;\n\n private hostRenderer = useHostRenderer();\n\n @HostBinding(`class.thy-statistic`) class = true;\n\n /**\n * @description 展示数据\n * @type number | string\n */\n @Input() thyValue: number | string;\n\n /**\n * @description 展示数据的 css 样式\n * @type { [key: string]: string; }\n */\n @Input() thyValueStyle: { [key: string]: string } = {};\n\n /**\n * @description 展示数据的前缀\n * @type string\n */\n @Input() thyPrefix: string;\n\n /**\n * @description 展示数据的后缀\n * @type string\n */\n @Input() thySuffix: string;\n\n /**\n * @description 展示数据的标题\n * @type string\n */\n @Input() thyTitle: string;\n\n /**\n * @description 展示数据标题的位置,可设置 `top`|`bottom`\n * @type ThyStatisticTitlePosition\n */\n @Input() thyTitlePosition: ThyStatisticTitlePosition = 'bottom';\n\n /**\n * @description 展示形状\n * @type ThyStatisticShape\n * @default card\n */\n @Input()\n set thyShape(value: ThyStatisticShape) {\n this._shape = value;\n if (this._initialized) {\n this._setClassesByType();\n }\n }\n\n /**\n * @description 主题颜色,可以使用提供的主题色,也可以自定义颜色。 `ThyStatisticColorType` 中包含 `primary` | `success` | `warning` | `danger` | `info`\n * @type ThyStatisticColorType | string\n */\n @Input() thyColor: string | ThyStatisticColorType;\n\n /**\n * @description 前缀和展示数据字体大小\n * @type ThyStatisticSizes\n * @default default\n */\n @Input()\n set thySize(value: ThyStatisticSizes) {\n this._size = value;\n if (this._initialized) {\n this._setClassesByType();\n }\n }\n\n /**\n * @description 自定义展示数据模板\n * @type TemplateRef<void>\n */\n @Input() set thyValueTemplate(value: TemplateRef<void>) {\n this.valueTemplate = value;\n }\n\n /**\n * @description 自定义展示数据模板\n * @type TemplateRef<void>\n */\n @ContentChild('value', { static: true }) set value(value: TemplateRef<void>) {\n this.valueTemplate = value;\n }\n\n /**\n * @description 自定义标题模板\n * @type TemplateRef<void>\n */\n @Input() set thyTitleTemplate(value: TemplateRef<void>) {\n this.titleTemplate = value;\n }\n\n /**\n * @description 自定义标题模板\n * @type TemplateRef<void>\n */\n @ContentChild('title', { static: true }) set title(value: TemplateRef<void>) {\n this.titleTemplate = value;\n }\n\n /**\n * @description 自定义前缀模板\n * @type TemplateRef<void>\n */\n @Input() set thyPrefixTemplate(value: TemplateRef<void>) {\n this.prefixTemplate = value;\n }\n\n /**\n * @description 自定义前缀模板\n * @type TemplateRef<void>\n */\n @ContentChild('prefix', { static: true }) set prefix(value: TemplateRef<void>) {\n this.prefixTemplate = value;\n }\n\n /**\n * @description 自定义后缀模板\n * @type TemplateRef<void>\n */\n @Input() set thySuffixTemplate(value: TemplateRef<void>) {\n this.suffixTemplate = value;\n }\n /**\n * @description 自定义后缀模板\n * @type TemplateRef<void>\n */\n @ContentChild('suffix', { static: true }) set suffix(value: TemplateRef<void>) {\n this.suffixTemplate = value;\n }\n\n ngOnInit() {\n this._setClassesByType();\n this._initialized = true;\n }\n\n setColor(color: string) {\n this.hostRenderer.setStyle('color', color);\n if (this._shape === 'card') {\n this.hostRenderer.setStyle('border-color', color);\n this.hostRenderer.setStyle('background-color', hexToRgb(color, 0.05));\n }\n }\n\n _setClassesByType() {\n const classNames = [];\n if (this.thyColor) {\n if (RegExp(/^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/).test(this.thyColor)) {\n this.setColor(this.thyColor);\n } else {\n classNames.push(`thy-statistic-${this.thyColor}`);\n }\n }\n if (this._shape) {\n classNames.push(`thy-statistic-${this._shape}`);\n }\n if (!this._size) {\n this._size = 'default';\n }\n classNames.push(`thy-statistic-${this._size}`);\n\n this.hostRenderer.setStyle('font-size', this.thySize);\n this.hostRenderer.updateClass(classNames);\n }\n}\n","@if ((thyTitle || titleTemplate) && thyTitlePosition === 'top') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n<div class=\"thy-statistic-content\" [ngStyle]=\"thyValueStyle\">\n @if (thyPrefix || prefixTemplate) {\n <span class=\"thy-statistic-content-prefix\">\n @if (thyPrefix) {\n <span>{{ thyPrefix }}</span>\n }\n @if (prefixTemplate) {\n <ng-container [ngTemplateOutlet]=\"prefixTemplate\"></ng-container>\n }\n </span>\n }\n\n <span class=\"thy-statistic-content-value\">\n @if (!valueTemplate) {\n <span>{{ thyValue }}</span>\n }\n @if (valueTemplate) {\n <ng-container [ngTemplateOutlet]=\"valueTemplate\"></ng-container>\n }\n </span>\n\n @if (thySuffix || suffixTemplate) {\n <span class=\"thy-statistic-content-suffix\">\n @if (thySuffix) {\n <span>{{ thySuffix }}</span>\n }\n @if (suffixTemplate) {\n <ng-container [ngTemplateOutlet]=\"suffixTemplate\"></ng-container>\n }\n </span>\n }\n</div>\n@if ((thyTitle || titleTemplate) && thyTitlePosition === 'bottom') {\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n}\n\n<ng-template #title>\n <div class=\"thy-statistic-title\">\n @if (thyTitle) {\n <span>{{ thyTitle }}</span>\n }\n <ng-container [ngTemplateOutlet]=\"titleTemplate\"></ng-container>\n </div>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyStatistic } from './statistic.component';\nimport { ThyIconModule } from 'ngx-tethys/icon';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, ThyIconModule, ThyStatistic],\n exports: [ThyStatistic],\n providers: []\n})\nexport class ThyStatisticModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { numberAttribute, Component, Input, HostBinding, InjectionToken,
|
|
2
|
+
import { numberAttribute, Component, Input, HostBinding, InjectionToken, inject, TemplateRef, ViewChild, EventEmitter, Output, ViewChildren, ContentChildren, Directive, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import { NgTemplateOutlet, CommonModule } from '@angular/common';
|
|
4
4
|
import { ThyIcon } from 'ngx-tethys/icon';
|
|
5
5
|
import { coerceBooleanProperty } from 'ngx-tethys/util';
|
|
@@ -47,24 +47,19 @@ const THY_STEPPER_COMPONENT = new InjectionToken('THY_STEPPER_COMPONENT');
|
|
|
47
47
|
* @order 20
|
|
48
48
|
*/
|
|
49
49
|
class ThyStep {
|
|
50
|
-
constructor(
|
|
51
|
-
this.stepper =
|
|
50
|
+
constructor() {
|
|
51
|
+
this.stepper = inject(THY_STEPPER_COMPONENT, { optional: true });
|
|
52
52
|
}
|
|
53
53
|
select() {
|
|
54
54
|
this.stepper.selected = this;
|
|
55
55
|
}
|
|
56
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStep, deps: [
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStep, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
57
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: ThyStep, isStandalone: true, selector: "thy-step", inputs: { label: "label", thyLabel: "thyLabel", thyIcon: "thyIcon" }, viewQueries: [{ propertyName: "content", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: "<ng-template><ng-content></ng-content></ng-template>\n" }); }
|
|
58
58
|
}
|
|
59
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStep, decorators: [{
|
|
60
60
|
type: Component,
|
|
61
61
|
args: [{ selector: 'thy-step', standalone: true, template: "<ng-template><ng-content></ng-content></ng-template>\n" }]
|
|
62
|
-
}],
|
|
63
|
-
type: Optional
|
|
64
|
-
}, {
|
|
65
|
-
type: Inject,
|
|
66
|
-
args: [THY_STEPPER_COMPONENT]
|
|
67
|
-
}] }], propDecorators: { content: [{
|
|
62
|
+
}], propDecorators: { content: [{
|
|
68
63
|
type: ViewChild,
|
|
69
64
|
args: [TemplateRef, { static: true }]
|
|
70
65
|
}], label: [{
|
|
@@ -181,13 +176,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
181
176
|
* @order 40
|
|
182
177
|
*/
|
|
183
178
|
class ThyStepperNextDirective {
|
|
184
|
-
constructor(
|
|
185
|
-
this.stepper =
|
|
179
|
+
constructor() {
|
|
180
|
+
this.stepper = inject(ThyStepper);
|
|
186
181
|
}
|
|
187
182
|
click($event) {
|
|
188
183
|
this.stepper.next();
|
|
189
184
|
}
|
|
190
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStepperNextDirective, deps: [
|
|
185
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStepperNextDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
191
186
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: ThyStepperNextDirective, isStandalone: true, selector: "[thyStepperNext]", host: { listeners: { "click": "click($event)" } }, ngImport: i0 }); }
|
|
192
187
|
}
|
|
193
188
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStepperNextDirective, decorators: [{
|
|
@@ -196,7 +191,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
196
191
|
selector: '[thyStepperNext]',
|
|
197
192
|
standalone: true
|
|
198
193
|
}]
|
|
199
|
-
}],
|
|
194
|
+
}], propDecorators: { click: [{
|
|
200
195
|
type: HostListener,
|
|
201
196
|
args: ['click', ['$event']]
|
|
202
197
|
}] } });
|
|
@@ -207,13 +202,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
207
202
|
* @order 30
|
|
208
203
|
*/
|
|
209
204
|
class ThyStepperPreviousDirective {
|
|
210
|
-
constructor(
|
|
211
|
-
this.stepper =
|
|
205
|
+
constructor() {
|
|
206
|
+
this.stepper = inject(ThyStepper);
|
|
212
207
|
}
|
|
213
208
|
click($event) {
|
|
214
209
|
this.stepper.previous();
|
|
215
210
|
}
|
|
216
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStepperPreviousDirective, deps: [
|
|
211
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStepperPreviousDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
217
212
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: ThyStepperPreviousDirective, isStandalone: true, selector: "[thyStepperPrevious]", host: { listeners: { "click": "click($event)" } }, ngImport: i0 }); }
|
|
218
213
|
}
|
|
219
214
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyStepperPreviousDirective, decorators: [{
|
|
@@ -222,7 +217,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
222
217
|
selector: '[thyStepperPrevious]',
|
|
223
218
|
standalone: true
|
|
224
219
|
}]
|
|
225
|
-
}],
|
|
220
|
+
}], propDecorators: { click: [{
|
|
226
221
|
type: HostListener,
|
|
227
222
|
args: ['click', ['$event']]
|
|
228
223
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-stepper.mjs","sources":["../../../src/stepper/step-header.component.ts","../../../src/stepper/step-header.component.html","../../../src/stepper/step.component.ts","../../../src/stepper/step.component.html","../../../src/stepper/stepper.component.ts","../../../src/stepper/stepper.component.html","../../../src/stepper/stepper-button.directive.ts","../../../src/stepper/stepper.module.ts","../../../src/stepper/ngx-tethys-stepper.ts"],"sourcesContent":["import { ThyIcon } from 'ngx-tethys/icon';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nimport { Component, HostBinding, Input, numberAttribute } from '@angular/core';\n\n/**\n * 步骤条头部组件\n * @name thy-step-header\n * @order 25\n */\n@Component({\n selector: 'thy-step-header',\n templateUrl: './step-header.component.html',\n standalone: true,\n imports: [ThyIcon]\n})\nexport class ThyStepHeader {\n @Input() label: string;\n\n @Input() icon: string;\n\n @Input({ transform: numberAttribute }) index: number;\n\n @HostBinding('class.thy-stepper-header-selected')\n @Input({ transform: coerceBooleanProperty })\n selected: boolean;\n\n @Input({ transform: coerceBooleanProperty }) active: boolean;\n\n @HostBinding('class.thy-stepper-header') thyStepHeader = true;\n}\n","<div class=\"thy-step-number\">\n <span>{{ index + 1 }}</span>\n</div>\n<thy-icon class=\"thy-step-icon\" [thyIconName]=\"icon || 'check-circle'\"></thy-icon>\n<div class=\"thy-step-label\">{{ label }}</div>\n","import { Component, Inject, InjectionToken, Input, Optional, TemplateRef, ViewChild } from '@angular/core';\n\nexport interface IThyStepperComponent {\n selected: ThyStep;\n}\n\nexport const THY_STEPPER_COMPONENT = new InjectionToken<IThyStepperComponent>('THY_STEPPER_COMPONENT');\n\n/**\n * 步骤项组件\n * @name thy-step\n * @order 20\n */\n@Component({\n selector: 'thy-step',\n templateUrl: './step.component.html',\n standalone: true\n})\nexport class ThyStep {\n @ViewChild(TemplateRef, { static: true }) content: TemplateRef<any>;\n\n @Input() label: string;\n\n /**\n * 步骤条中每个步骤的label文本\n */\n @Input() thyLabel: string;\n\n /**\n * 步骤条中每个步骤完成的图标\n * @default check-circle\n */\n @Input() thyIcon: string;\n\n constructor(@Optional() @Inject(THY_STEPPER_COMPONENT) public stepper: IThyStepperComponent) {}\n\n select() {\n this.stepper.selected = this;\n }\n}\n","<ng-template><ng-content></ng-content></ng-template>\n","import {\n Component,\n ViewChildren,\n ContentChildren,\n QueryList,\n HostBinding,\n Input,\n Output,\n EventEmitter,\n numberAttribute\n} from '@angular/core';\nimport { ThyStep, IThyStepperComponent, THY_STEPPER_COMPONENT } from './step.component';\nimport { ThyStepHeader } from './step-header.component';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 步骤条组件\n * @name thy-stepper\n * @order 10\n */\n@Component({\n selector: 'thy-stepper',\n templateUrl: 'stepper.component.html',\n providers: [\n {\n provide: THY_STEPPER_COMPONENT,\n useExisting: ThyStepper\n }\n ],\n standalone: true,\n imports: [ThyStepHeader, NgTemplateOutlet]\n})\nexport class ThyStepper implements IThyStepperComponent {\n /**\n * 当前处于激活状态的步骤index\n * @default 0\n */\n @Input({ transform: numberAttribute })\n set thySelectedIndex(value: number) {\n this.selectedIndex = value;\n }\n\n @Input()\n set thySelected(value: ThyStep) {\n this.selected = value;\n }\n\n /**\n * 步骤条导航是否展示,默认展示\n */\n @Input({ transform: coerceBooleanProperty }) thyShowStepHeader = true;\n\n private _selectedIndex = 0;\n\n public set selected(step: ThyStep) {\n this.selectedIndex = this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n\n public get selected() {\n return this.steps ? this.steps.toArray()[this.selectedIndex] : null;\n }\n\n set selectedIndex(index: number) {\n if (this.steps) {\n this._updateSelectedItemIndex(index);\n } else {\n this._selectedIndex = index;\n }\n }\n\n get selectedIndex() {\n return this._selectedIndex;\n }\n\n @Output() selectionChange: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChildren(ThyStepHeader) stepHeaders: QueryList<ThyStepHeader>;\n\n @ContentChildren(ThyStep) steps: QueryList<ThyStep>;\n\n @HostBinding('class.thy-stepper') thyStepper = true;\n\n private _updateSelectedItemIndex(newIndex: number): void {\n const stepsArray = this.steps.toArray();\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: this._selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[this._selectedIndex]\n });\n this._selectedIndex = newIndex;\n }\n\n to(index: number): void {\n this.selectedIndex = Math.min(index, this.steps.length - 1);\n }\n\n next(): void {\n this.selectedIndex = Math.min(this._selectedIndex + 1, this.steps.length - 1);\n }\n\n /** Selects and focuses the previous step in list. */\n previous(): void {\n this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n}\n","@if (thyShowStepHeader) {\n <div class=\"thy-stepper-header-container\">\n @for (step of steps; track $index; let i = $index; let isLast = $last) {\n <thy-step-header\n [index]=\"i\"\n [label]=\"step.thyLabel || step.label\"\n [icon]=\"step.thyIcon\"\n [selected]=\"selectedIndex === i\"\n [class.thy-stepper-header-active]=\"i <= selectedIndex\"\n [active]=\"i <= selectedIndex\">\n </thy-step-header>\n @if (!isLast) {\n <div class=\"thy-stepper-line\" [class.thy-stepper-line-active]=\"i < selectedIndex\"></div>\n }\n }\n </div>\n}\n\n<div class=\"thy-stepper-content-container\">\n <ng-container [ngTemplateOutlet]=\"selected?.content\"></ng-container>\n</div>\n","import { Directive, HostListener } from '@angular/core';\nimport { ThyStepper } from './stepper.component';\n\n/**\n * 在步进工作流中移动到下一个步骤的按钮\n * @description.en-us Button that moves to the next step in a stepper workflow.\n * @name thyStepperNext\n * @order 40\n */\n@Directive({\n selector: '[thyStepperNext]',\n standalone: true\n})\nexport class ThyStepperNextDirective {\n constructor(private stepper: ThyStepper) {}\n\n @HostListener('click', ['$event'])\n click($event: any) {\n this.stepper.next();\n }\n}\n\n/**\n * 在步进工作流中移动到上一个步骤的按钮\n * @description.en-us Button that moves to the previous step in a stepper workflow.\n * @name thyStepperPrevious\n * @order 30\n */\n@Directive({\n selector: '[thyStepperPrevious]',\n standalone: true\n})\nexport class ThyStepperPreviousDirective {\n constructor(private stepper: ThyStepper) {}\n\n @HostListener('click', ['$event'])\n click($event: any) {\n this.stepper.previous();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyStepHeader } from './step-header.component';\nimport { ThyStep } from './step.component';\nimport { ThyStepper } from './stepper.component';\nimport { ThyStepperNextDirective, ThyStepperPreviousDirective } from './stepper-button.directive';\n\n@NgModule({\n imports: [CommonModule, ThyStepHeader, ThyStepper, ThyStep, ThyStepperNextDirective, ThyStepperPreviousDirective],\n exports: [ThyStepper, ThyStep, ThyStepHeader, ThyStepperNextDirective, ThyStepperPreviousDirective],\n providers: []\n})\nexport class ThyStepperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ThyStepper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-tethys-stepper.mjs","sources":["../../../src/stepper/step-header.component.ts","../../../src/stepper/step-header.component.html","../../../src/stepper/step.component.ts","../../../src/stepper/step.component.html","../../../src/stepper/stepper.component.ts","../../../src/stepper/stepper.component.html","../../../src/stepper/stepper-button.directive.ts","../../../src/stepper/stepper.module.ts","../../../src/stepper/ngx-tethys-stepper.ts"],"sourcesContent":["import { ThyIcon } from 'ngx-tethys/icon';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nimport { Component, HostBinding, Input, numberAttribute } from '@angular/core';\n\n/**\n * 步骤条头部组件\n * @name thy-step-header\n * @order 25\n */\n@Component({\n selector: 'thy-step-header',\n templateUrl: './step-header.component.html',\n standalone: true,\n imports: [ThyIcon]\n})\nexport class ThyStepHeader {\n @Input() label: string;\n\n @Input() icon: string;\n\n @Input({ transform: numberAttribute }) index: number;\n\n @HostBinding('class.thy-stepper-header-selected')\n @Input({ transform: coerceBooleanProperty })\n selected: boolean;\n\n @Input({ transform: coerceBooleanProperty }) active: boolean;\n\n @HostBinding('class.thy-stepper-header') thyStepHeader = true;\n}\n","<div class=\"thy-step-number\">\n <span>{{ index + 1 }}</span>\n</div>\n<thy-icon class=\"thy-step-icon\" [thyIconName]=\"icon || 'check-circle'\"></thy-icon>\n<div class=\"thy-step-label\">{{ label }}</div>\n","import { Component, InjectionToken, Input, TemplateRef, ViewChild, inject } from '@angular/core';\n\nexport interface IThyStepperComponent {\n selected: ThyStep;\n}\n\nexport const THY_STEPPER_COMPONENT = new InjectionToken<IThyStepperComponent>('THY_STEPPER_COMPONENT');\n\n/**\n * 步骤项组件\n * @name thy-step\n * @order 20\n */\n@Component({\n selector: 'thy-step',\n templateUrl: './step.component.html',\n standalone: true\n})\nexport class ThyStep {\n stepper = inject(THY_STEPPER_COMPONENT, { optional: true })!;\n\n @ViewChild(TemplateRef, { static: true }) content: TemplateRef<any>;\n\n @Input() label: string;\n\n /**\n * 步骤条中每个步骤的label文本\n */\n @Input() thyLabel: string;\n\n /**\n * 步骤条中每个步骤完成的图标\n * @default check-circle\n */\n @Input() thyIcon: string;\n\n select() {\n this.stepper.selected = this;\n }\n}\n","<ng-template><ng-content></ng-content></ng-template>\n","import {\n Component,\n ViewChildren,\n ContentChildren,\n QueryList,\n HostBinding,\n Input,\n Output,\n EventEmitter,\n numberAttribute\n} from '@angular/core';\nimport { ThyStep, IThyStepperComponent, THY_STEPPER_COMPONENT } from './step.component';\nimport { ThyStepHeader } from './step-header.component';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 步骤条组件\n * @name thy-stepper\n * @order 10\n */\n@Component({\n selector: 'thy-stepper',\n templateUrl: 'stepper.component.html',\n providers: [\n {\n provide: THY_STEPPER_COMPONENT,\n useExisting: ThyStepper\n }\n ],\n standalone: true,\n imports: [ThyStepHeader, NgTemplateOutlet]\n})\nexport class ThyStepper implements IThyStepperComponent {\n /**\n * 当前处于激活状态的步骤index\n * @default 0\n */\n @Input({ transform: numberAttribute })\n set thySelectedIndex(value: number) {\n this.selectedIndex = value;\n }\n\n @Input()\n set thySelected(value: ThyStep) {\n this.selected = value;\n }\n\n /**\n * 步骤条导航是否展示,默认展示\n */\n @Input({ transform: coerceBooleanProperty }) thyShowStepHeader = true;\n\n private _selectedIndex = 0;\n\n public set selected(step: ThyStep) {\n this.selectedIndex = this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n\n public get selected() {\n return this.steps ? this.steps.toArray()[this.selectedIndex] : null;\n }\n\n set selectedIndex(index: number) {\n if (this.steps) {\n this._updateSelectedItemIndex(index);\n } else {\n this._selectedIndex = index;\n }\n }\n\n get selectedIndex() {\n return this._selectedIndex;\n }\n\n @Output() selectionChange: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChildren(ThyStepHeader) stepHeaders: QueryList<ThyStepHeader>;\n\n @ContentChildren(ThyStep) steps: QueryList<ThyStep>;\n\n @HostBinding('class.thy-stepper') thyStepper = true;\n\n private _updateSelectedItemIndex(newIndex: number): void {\n const stepsArray = this.steps.toArray();\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: this._selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[this._selectedIndex]\n });\n this._selectedIndex = newIndex;\n }\n\n to(index: number): void {\n this.selectedIndex = Math.min(index, this.steps.length - 1);\n }\n\n next(): void {\n this.selectedIndex = Math.min(this._selectedIndex + 1, this.steps.length - 1);\n }\n\n /** Selects and focuses the previous step in list. */\n previous(): void {\n this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n}\n","@if (thyShowStepHeader) {\n <div class=\"thy-stepper-header-container\">\n @for (step of steps; track $index; let i = $index; let isLast = $last) {\n <thy-step-header\n [index]=\"i\"\n [label]=\"step.thyLabel || step.label\"\n [icon]=\"step.thyIcon\"\n [selected]=\"selectedIndex === i\"\n [class.thy-stepper-header-active]=\"i <= selectedIndex\"\n [active]=\"i <= selectedIndex\">\n </thy-step-header>\n @if (!isLast) {\n <div class=\"thy-stepper-line\" [class.thy-stepper-line-active]=\"i < selectedIndex\"></div>\n }\n }\n </div>\n}\n\n<div class=\"thy-stepper-content-container\">\n <ng-container [ngTemplateOutlet]=\"selected?.content\"></ng-container>\n</div>\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { ThyStepper } from './stepper.component';\n\n/**\n * 在步进工作流中移动到下一个步骤的按钮\n * @description.en-us Button that moves to the next step in a stepper workflow.\n * @name thyStepperNext\n * @order 40\n */\n@Directive({\n selector: '[thyStepperNext]',\n standalone: true\n})\nexport class ThyStepperNextDirective {\n private stepper = inject(ThyStepper);\n\n @HostListener('click', ['$event'])\n click($event: any) {\n this.stepper.next();\n }\n}\n\n/**\n * 在步进工作流中移动到上一个步骤的按钮\n * @description.en-us Button that moves to the previous step in a stepper workflow.\n * @name thyStepperPrevious\n * @order 30\n */\n@Directive({\n selector: '[thyStepperPrevious]',\n standalone: true\n})\nexport class ThyStepperPreviousDirective {\n private stepper = inject(ThyStepper);\n\n @HostListener('click', ['$event'])\n click($event: any) {\n this.stepper.previous();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyStepHeader } from './step-header.component';\nimport { ThyStep } from './step.component';\nimport { ThyStepper } from './stepper.component';\nimport { ThyStepperNextDirective, ThyStepperPreviousDirective } from './stepper-button.directive';\n\n@NgModule({\n imports: [CommonModule, ThyStepHeader, ThyStepper, ThyStep, ThyStepperNextDirective, ThyStepperPreviousDirective],\n exports: [ThyStepper, ThyStep, ThyStepHeader, ThyStepperNextDirective, ThyStepperPreviousDirective],\n providers: []\n})\nexport class ThyStepperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|