@ng-nest/ui 11.2.9 → 11.2.13
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/affix/affix.property.d.ts +2 -2
- package/alert/alert.property.d.ts +22 -12
- package/alert/ng-nest-ui-alert.metadata.json +1 -1
- package/auto-complete/auto-complete.property.d.ts +3 -3
- package/avatar/avatar.property.d.ts +6 -6
- package/back-top/back-top.property.d.ts +4 -4
- package/badge/badge.property.d.ts +3 -3
- package/base-form/base-form.component.d.ts +1 -1
- package/base-form/base-form.property.d.ts +10 -10
- package/border/ng-nest-ui-border.metadata.json +1 -1
- package/bundles/ng-nest-ui-affix.umd.js +10 -4
- package/bundles/ng-nest-ui-affix.umd.js.map +1 -1
- package/bundles/ng-nest-ui-affix.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-alert.umd.js +26 -12
- package/bundles/ng-nest-ui-alert.umd.js.map +1 -1
- package/bundles/ng-nest-ui-alert.umd.min.js +2 -2
- package/bundles/ng-nest-ui-alert.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-anchor.umd.js +10 -4
- package/bundles/ng-nest-ui-anchor.umd.js.map +1 -1
- package/bundles/ng-nest-ui-anchor.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-auto-complete.umd.js +15 -8
- package/bundles/ng-nest-ui-auto-complete.umd.js.map +1 -1
- package/bundles/ng-nest-ui-auto-complete.umd.min.js +2 -2
- package/bundles/ng-nest-ui-auto-complete.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-avatar.umd.js +10 -4
- package/bundles/ng-nest-ui-avatar.umd.js.map +1 -1
- package/bundles/ng-nest-ui-avatar.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-back-top.umd.js +10 -4
- package/bundles/ng-nest-ui-back-top.umd.js.map +1 -1
- package/bundles/ng-nest-ui-back-top.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-badge.umd.js +10 -4
- package/bundles/ng-nest-ui-badge.umd.js.map +1 -1
- package/bundles/ng-nest-ui-badge.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-base-form.umd.js +10 -4
- package/bundles/ng-nest-ui-base-form.umd.js.map +1 -1
- package/bundles/ng-nest-ui-base-form.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-border.umd.js +1 -1
- package/bundles/ng-nest-ui-border.umd.js.map +1 -1
- package/bundles/ng-nest-ui-border.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-button.umd.js +11 -5
- package/bundles/ng-nest-ui-button.umd.js.map +1 -1
- package/bundles/ng-nest-ui-button.umd.min.js +1 -1
- package/bundles/ng-nest-ui-button.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-calendar.umd.js +16 -6
- package/bundles/ng-nest-ui-calendar.umd.js.map +1 -1
- package/bundles/ng-nest-ui-calendar.umd.min.js +1 -1
- package/bundles/ng-nest-ui-calendar.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-card.umd.js +10 -4
- package/bundles/ng-nest-ui-card.umd.js.map +1 -1
- package/bundles/ng-nest-ui-card.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-carousel.umd.js +10 -4
- package/bundles/ng-nest-ui-carousel.umd.js.map +1 -1
- package/bundles/ng-nest-ui-carousel.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-cascade.umd.js +10 -4
- package/bundles/ng-nest-ui-cascade.umd.js.map +1 -1
- package/bundles/ng-nest-ui-cascade.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-checkbox.umd.js +16 -9
- package/bundles/ng-nest-ui-checkbox.umd.js.map +1 -1
- package/bundles/ng-nest-ui-checkbox.umd.min.js +2 -2
- package/bundles/ng-nest-ui-checkbox.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-collapse.umd.js +10 -4
- package/bundles/ng-nest-ui-collapse.umd.js.map +1 -1
- package/bundles/ng-nest-ui-collapse.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-color-picker.umd.js +10 -4
- package/bundles/ng-nest-ui-color-picker.umd.js.map +1 -1
- package/bundles/ng-nest-ui-color-picker.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-color.umd.js +10 -4
- package/bundles/ng-nest-ui-color.umd.js.map +1 -1
- package/bundles/ng-nest-ui-color.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-comment.umd.js +16 -6
- package/bundles/ng-nest-ui-comment.umd.js.map +1 -1
- package/bundles/ng-nest-ui-comment.umd.min.js +2 -2
- package/bundles/ng-nest-ui-comment.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-container.umd.js +10 -4
- package/bundles/ng-nest-ui-container.umd.js.map +1 -1
- package/bundles/ng-nest-ui-container.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-core.umd.js +30 -8
- package/bundles/ng-nest-ui-core.umd.js.map +1 -1
- package/bundles/ng-nest-ui-core.umd.min.js +2 -2
- package/bundles/ng-nest-ui-core.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-crumb.umd.js +10 -4
- package/bundles/ng-nest-ui-crumb.umd.js.map +1 -1
- package/bundles/ng-nest-ui-crumb.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-date-picker.umd.js +16 -7
- package/bundles/ng-nest-ui-date-picker.umd.js.map +1 -1
- package/bundles/ng-nest-ui-date-picker.umd.min.js +1 -1
- package/bundles/ng-nest-ui-date-picker.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-dialog.umd.js +25 -12
- package/bundles/ng-nest-ui-dialog.umd.js.map +1 -1
- package/bundles/ng-nest-ui-dialog.umd.min.js +2 -2
- package/bundles/ng-nest-ui-dialog.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-drawer.umd.js +10 -4
- package/bundles/ng-nest-ui-drawer.umd.js.map +1 -1
- package/bundles/ng-nest-ui-drawer.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-dropdown.umd.js +10 -4
- package/bundles/ng-nest-ui-dropdown.umd.js.map +1 -1
- package/bundles/ng-nest-ui-dropdown.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-empty.umd.js +10 -4
- package/bundles/ng-nest-ui-empty.umd.js.map +1 -1
- package/bundles/ng-nest-ui-empty.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-find.umd.js +79 -12
- package/bundles/ng-nest-ui-find.umd.js.map +1 -1
- package/bundles/ng-nest-ui-find.umd.min.js +2 -2
- package/bundles/ng-nest-ui-find.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-form.umd.js +16 -9
- package/bundles/ng-nest-ui-form.umd.js.map +1 -1
- package/bundles/ng-nest-ui-form.umd.min.js +1 -1
- package/bundles/ng-nest-ui-form.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-highlight.umd.js +10 -4
- package/bundles/ng-nest-ui-highlight.umd.js.map +1 -1
- package/bundles/ng-nest-ui-highlight.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-i18n.umd.js +1 -1
- package/bundles/ng-nest-ui-i18n.umd.js.map +1 -1
- package/bundles/ng-nest-ui-i18n.umd.min.js +1 -1
- package/bundles/ng-nest-ui-i18n.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-icon.umd.js +10 -4
- package/bundles/ng-nest-ui-icon.umd.js.map +1 -1
- package/bundles/ng-nest-ui-icon.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-inner.umd.js +10 -4
- package/bundles/ng-nest-ui-inner.umd.js.map +1 -1
- package/bundles/ng-nest-ui-inner.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-input-number.umd.js +10 -4
- package/bundles/ng-nest-ui-input-number.umd.js.map +1 -1
- package/bundles/ng-nest-ui-input-number.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-input.umd.js +10 -4
- package/bundles/ng-nest-ui-input.umd.js.map +1 -1
- package/bundles/ng-nest-ui-input.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-layout.umd.js +10 -4
- package/bundles/ng-nest-ui-layout.umd.js.map +1 -1
- package/bundles/ng-nest-ui-layout.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-link.umd.js +10 -4
- package/bundles/ng-nest-ui-link.umd.js.map +1 -1
- package/bundles/ng-nest-ui-link.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-list.umd.js +10 -4
- package/bundles/ng-nest-ui-list.umd.js.map +1 -1
- package/bundles/ng-nest-ui-list.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-loading.umd.js +10 -4
- package/bundles/ng-nest-ui-loading.umd.js.map +1 -1
- package/bundles/ng-nest-ui-loading.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-menu.umd.js +22 -11
- package/bundles/ng-nest-ui-menu.umd.js.map +1 -1
- package/bundles/ng-nest-ui-menu.umd.min.js +2 -2
- package/bundles/ng-nest-ui-menu.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-message-box.umd.js +37 -10
- package/bundles/ng-nest-ui-message-box.umd.js.map +1 -1
- package/bundles/ng-nest-ui-message-box.umd.min.js +1 -1
- package/bundles/ng-nest-ui-message-box.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-message.umd.js +10 -4
- package/bundles/ng-nest-ui-message.umd.js.map +1 -1
- package/bundles/ng-nest-ui-message.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-notification.umd.js +10 -4
- package/bundles/ng-nest-ui-notification.umd.js.map +1 -1
- package/bundles/ng-nest-ui-notification.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-outlet.umd.js +10 -4
- package/bundles/ng-nest-ui-outlet.umd.js.map +1 -1
- package/bundles/ng-nest-ui-outlet.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-page-header.umd.js +10 -4
- package/bundles/ng-nest-ui-page-header.umd.js.map +1 -1
- package/bundles/ng-nest-ui-page-header.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-pagination.umd.js +10 -4
- package/bundles/ng-nest-ui-pagination.umd.js.map +1 -1
- package/bundles/ng-nest-ui-pagination.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-popconfirm.umd.js +11 -5
- package/bundles/ng-nest-ui-popconfirm.umd.js.map +1 -1
- package/bundles/ng-nest-ui-popconfirm.umd.min.js +2 -2
- package/bundles/ng-nest-ui-popconfirm.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-popover.umd.js +10 -4
- package/bundles/ng-nest-ui-popover.umd.js.map +1 -1
- package/bundles/ng-nest-ui-popover.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-portal.umd.js +10 -4
- package/bundles/ng-nest-ui-portal.umd.js.map +1 -1
- package/bundles/ng-nest-ui-portal.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-progress.umd.js +10 -4
- package/bundles/ng-nest-ui-progress.umd.js.map +1 -1
- package/bundles/ng-nest-ui-progress.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-radio.umd.js +11 -5
- package/bundles/ng-nest-ui-radio.umd.js.map +1 -1
- package/bundles/ng-nest-ui-radio.umd.min.js +1 -1
- package/bundles/ng-nest-ui-radio.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-rate.umd.js +10 -4
- package/bundles/ng-nest-ui-rate.umd.js.map +1 -1
- package/bundles/ng-nest-ui-rate.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-result.umd.js +18 -5
- package/bundles/ng-nest-ui-result.umd.js.map +1 -1
- package/bundles/ng-nest-ui-result.umd.min.js +1 -1
- package/bundles/ng-nest-ui-result.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-ripple.umd.js +11 -5
- package/bundles/ng-nest-ui-ripple.umd.js.map +1 -1
- package/bundles/ng-nest-ui-ripple.umd.min.js +2 -2
- package/bundles/ng-nest-ui-ripple.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-select.umd.js +12 -6
- package/bundles/ng-nest-ui-select.umd.js.map +1 -1
- package/bundles/ng-nest-ui-select.umd.min.js +1 -1
- package/bundles/ng-nest-ui-select.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-skeleton.umd.js +11 -5
- package/bundles/ng-nest-ui-skeleton.umd.js.map +1 -1
- package/bundles/ng-nest-ui-skeleton.umd.min.js +1 -1
- package/bundles/ng-nest-ui-skeleton.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-slider-select.umd.js +10 -4
- package/bundles/ng-nest-ui-slider-select.umd.js.map +1 -1
- package/bundles/ng-nest-ui-slider-select.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-slider.umd.js +10 -4
- package/bundles/ng-nest-ui-slider.umd.js.map +1 -1
- package/bundles/ng-nest-ui-slider.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-statistic.umd.js +10 -4
- package/bundles/ng-nest-ui-statistic.umd.js.map +1 -1
- package/bundles/ng-nest-ui-statistic.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-steps.umd.js +10 -4
- package/bundles/ng-nest-ui-steps.umd.js.map +1 -1
- package/bundles/ng-nest-ui-steps.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-switch.umd.js +10 -4
- package/bundles/ng-nest-ui-switch.umd.js.map +1 -1
- package/bundles/ng-nest-ui-switch.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-table.umd.js +78 -26
- package/bundles/ng-nest-ui-table.umd.js.map +1 -1
- package/bundles/ng-nest-ui-table.umd.min.js +2 -2
- package/bundles/ng-nest-ui-table.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-tabs.umd.js +12 -6
- package/bundles/ng-nest-ui-tabs.umd.js.map +1 -1
- package/bundles/ng-nest-ui-tabs.umd.min.js +1 -1
- package/bundles/ng-nest-ui-tabs.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-tag.umd.js +10 -4
- package/bundles/ng-nest-ui-tag.umd.js.map +1 -1
- package/bundles/ng-nest-ui-tag.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-text-retract.umd.js +10 -4
- package/bundles/ng-nest-ui-text-retract.umd.js.map +1 -1
- package/bundles/ng-nest-ui-text-retract.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-textarea.umd.js +10 -4
- package/bundles/ng-nest-ui-textarea.umd.js.map +1 -1
- package/bundles/ng-nest-ui-textarea.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-theme.umd.js +10 -4
- package/bundles/ng-nest-ui-theme.umd.js.map +1 -1
- package/bundles/ng-nest-ui-theme.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-time-ago.umd.js +2 -0
- package/bundles/ng-nest-ui-time-ago.umd.js.map +1 -1
- package/bundles/ng-nest-ui-time-ago.umd.min.js +1 -1
- package/bundles/ng-nest-ui-time-ago.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-time-picker.umd.js +10 -4
- package/bundles/ng-nest-ui-time-picker.umd.js.map +1 -1
- package/bundles/ng-nest-ui-time-picker.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-time-range.umd.js +10 -4
- package/bundles/ng-nest-ui-time-range.umd.js.map +1 -1
- package/bundles/ng-nest-ui-time-range.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-timeline.umd.js +10 -4
- package/bundles/ng-nest-ui-timeline.umd.js.map +1 -1
- package/bundles/ng-nest-ui-timeline.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-tooltip.umd.js +10 -4
- package/bundles/ng-nest-ui-tooltip.umd.js.map +1 -1
- package/bundles/ng-nest-ui-tooltip.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-transfer.umd.js +14 -7
- package/bundles/ng-nest-ui-transfer.umd.js.map +1 -1
- package/bundles/ng-nest-ui-transfer.umd.min.js +1 -1
- package/bundles/ng-nest-ui-transfer.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-tree-file.umd.js +27 -5
- package/bundles/ng-nest-ui-tree-file.umd.js.map +1 -1
- package/bundles/ng-nest-ui-tree-file.umd.min.js +1 -1
- package/bundles/ng-nest-ui-tree-file.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-tree.umd.js +27 -14
- package/bundles/ng-nest-ui-tree.umd.js.map +1 -1
- package/bundles/ng-nest-ui-tree.umd.min.js +1 -1
- package/bundles/ng-nest-ui-tree.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-typography.umd.js +11 -6
- package/bundles/ng-nest-ui-typography.umd.js.map +1 -1
- package/bundles/ng-nest-ui-typography.umd.min.js +1 -1
- package/bundles/ng-nest-ui-typography.umd.min.js.map +1 -1
- package/bundles/ng-nest-ui-upload.umd.js +10 -4
- package/bundles/ng-nest-ui-upload.umd.js.map +1 -1
- package/bundles/ng-nest-ui-upload.umd.min.js.map +1 -1
- package/button/button.property.d.ts +14 -14
- package/button/buttons.component.d.ts +2 -2
- package/button/ng-nest-ui-button.metadata.json +1 -1
- package/calendar/calendar.property.d.ts +1 -1
- package/card/card.property.d.ts +1 -1
- package/carousel/carousel.property.d.ts +7 -7
- package/cascade/cascade.property.d.ts +1 -1
- package/checkbox/checkbox.component.d.ts +1 -0
- package/checkbox/checkbox.property.d.ts +4 -4
- package/checkbox/ng-nest-ui-checkbox.metadata.json +1 -1
- package/collapse/collapse.property.d.ts +3 -3
- package/color/color.property.d.ts +2 -2
- package/color-picker/color-picker.property.d.ts +1 -1
- package/comment/comment.component.d.ts +1 -0
- package/comment/comment.property.d.ts +1 -1
- package/comment/ng-nest-ui-comment.metadata.json +1 -1
- package/container/aside.component.d.ts +1 -1
- package/container/container.property.d.ts +3 -3
- package/container/header.component.d.ts +1 -1
- package/core/config/config.d.ts +7 -0
- package/core/ng-nest-ui-core.metadata.json +1 -1
- package/core/util/html.d.ts +4 -0
- package/core/util/public-api.d.ts +1 -0
- package/core/util/resize.d.ts +1 -1
- package/crumb/crumb.property.d.ts +2 -2
- package/date-picker/date-picker.property.d.ts +8 -8
- package/date-picker/ng-nest-ui-date-picker.metadata.json +1 -1
- package/date-picker/picker-date.component.d.ts +3 -2
- package/dialog/dialog.property.d.ts +16 -6
- package/dialog/ng-nest-ui-dialog.metadata.json +1 -1
- package/drawer/drawer.property.d.ts +3 -3
- package/dropdown/dropdown.property.d.ts +4 -4
- package/esm2015/affix/affix.property.js +1 -1
- package/esm2015/alert/alert.component.js +5 -4
- package/esm2015/alert/alert.module.js +3 -2
- package/esm2015/alert/alert.property.js +8 -1
- package/esm2015/anchor/anchor.component.js +1 -1
- package/esm2015/anchor/anchor.property.js +1 -1
- package/esm2015/auto-complete/auto-complete-portal.component.js +1 -1
- package/esm2015/auto-complete/auto-complete.component.js +6 -5
- package/esm2015/auto-complete/auto-complete.property.js +1 -1
- package/esm2015/avatar/avatar.property.js +1 -1
- package/esm2015/back-top/back-top.component.js +1 -1
- package/esm2015/back-top/back-top.property.js +1 -1
- package/esm2015/badge/badge.property.js +1 -1
- package/esm2015/base-form/base-form.component.js +1 -1
- package/esm2015/base-form/base-form.property.js +1 -1
- package/esm2015/border/border.component.js +2 -2
- package/esm2015/button/button.property.js +1 -1
- package/esm2015/button/buttons.component.js +1 -1
- package/esm2015/calendar/calendar.component.js +7 -3
- package/esm2015/calendar/calendar.property.js +1 -1
- package/esm2015/card/card.property.js +1 -1
- package/esm2015/carousel/carousel-panel.component.js +1 -1
- package/esm2015/carousel/carousel.component.js +1 -1
- package/esm2015/carousel/carousel.property.js +1 -1
- package/esm2015/cascade/cascade-portal.component.js +1 -1
- package/esm2015/cascade/cascade.component.js +1 -1
- package/esm2015/cascade/cascade.property.js +1 -1
- package/esm2015/checkbox/checkbox.component.js +7 -6
- package/esm2015/checkbox/checkbox.property.js +1 -1
- package/esm2015/collapse/collapse-panel.component.js +1 -1
- package/esm2015/collapse/collapse.property.js +1 -1
- package/esm2015/color/color.component.js +1 -1
- package/esm2015/color/color.property.js +1 -1
- package/esm2015/color-picker/color-picker-portal.component.js +1 -1
- package/esm2015/color-picker/color-picker.component.js +1 -1
- package/esm2015/color-picker/color-picker.property.js +1 -1
- package/esm2015/comment/comment-reply.component.js +1 -1
- package/esm2015/comment/comment.component.js +6 -2
- package/esm2015/comment/comment.property.js +2 -2
- package/esm2015/container/container.property.js +1 -1
- package/esm2015/core/config/config.js +1 -1
- package/esm2015/core/config/config.service.js +1 -1
- package/esm2015/core/theme/theme.service.js +1 -1
- package/esm2015/core/util/html.js +11 -0
- package/esm2015/core/util/public-api.js +2 -1
- package/esm2015/core/util/resize.js +2 -2
- package/esm2015/crumb/crumb.property.js +1 -1
- package/esm2015/date-picker/date-picker-portal.component.js +1 -1
- package/esm2015/date-picker/date-picker.component.js +1 -1
- package/esm2015/date-picker/date-picker.property.js +1 -1
- package/esm2015/date-picker/picker-date.component.js +6 -3
- package/esm2015/date-picker/picker-month.component.js +2 -2
- package/esm2015/date-picker/picker-year.component.js +1 -1
- package/esm2015/dialog/dialog.component.js +3 -3
- package/esm2015/dialog/dialog.module.js +3 -1
- package/esm2015/dialog/dialog.property.js +8 -2
- package/esm2015/drawer/drawer.component.js +1 -1
- package/esm2015/drawer/drawer.property.js +1 -1
- package/esm2015/dropdown/dropdown-portal.component.js +1 -1
- package/esm2015/dropdown/dropdown.component.js +1 -1
- package/esm2015/dropdown/dropdown.property.js +1 -1
- package/esm2015/find/find.component.js +43 -4
- package/esm2015/find/find.module.js +3 -1
- package/esm2015/find/find.property.js +19 -2
- package/esm2015/form/control.component.js +7 -7
- package/esm2015/form/form.component.js +2 -2
- package/esm2015/form/form.property.js +1 -1
- package/esm2015/highlight/highlight.component.js +1 -1
- package/esm2015/highlight/highlight.property.js +1 -1
- package/esm2015/i18n/i18n.directive.js +1 -1
- package/esm2015/i18n/i18n.service.js +1 -1
- package/esm2015/i18n/ng-nest-ui-i18n.js +1 -2
- package/esm2015/i18n/public-api.js +2 -1
- package/esm2015/icon/icon.component.js +1 -1
- package/esm2015/icon/icon.property.js +1 -1
- package/esm2015/inner/inner.property.js +1 -1
- package/esm2015/input/input.component.js +1 -1
- package/esm2015/input/input.property.js +1 -1
- package/esm2015/input-number/input-number.component.js +1 -1
- package/esm2015/layout/layout.property.js +1 -1
- package/esm2015/link/link.property.js +1 -1
- package/esm2015/list/list.component.js +1 -1
- package/esm2015/list/list.property.js +1 -1
- package/esm2015/loading/loading.component.js +1 -1
- package/esm2015/loading/loading.property.js +1 -1
- package/esm2015/menu/menu-node.component.js +8 -6
- package/esm2015/menu/menu.component.js +2 -2
- package/esm2015/menu/menu.property.js +2 -2
- package/esm2015/message-box/message-box.component.js +20 -7
- package/esm2015/message-box/message-box.property.js +1 -1
- package/esm2015/outlet/outlet.directive.js +1 -1
- package/esm2015/page-header/page-header.property.js +1 -1
- package/esm2015/pagination/pagination.component.js +1 -1
- package/esm2015/pagination/pagination.property.js +1 -1
- package/esm2015/popconfirm/popconfirm.component.js +2 -2
- package/esm2015/popconfirm/popconfirm.property.js +1 -1
- package/esm2015/popover/popover-portal.component.js +1 -1
- package/esm2015/popover/popover.directive.js +1 -1
- package/esm2015/popover/popover.property.js +1 -1
- package/esm2015/progress/progress.component.js +1 -1
- package/esm2015/progress/progress.property.js +1 -1
- package/esm2015/radio/radio.component.js +2 -2
- package/esm2015/radio/radio.property.js +1 -1
- package/esm2015/rate/rate.component.js +1 -1
- package/esm2015/rate/rate.property.js +2 -2
- package/esm2015/result/result.component.js +5 -2
- package/esm2015/result/result.property.js +1 -1
- package/esm2015/ripple/ripple.directive.js +2 -2
- package/esm2015/ripple/ripple.property.js +1 -1
- package/esm2015/select/select-portal.component.js +1 -1
- package/esm2015/select/select.component.js +4 -4
- package/esm2015/select/select.property.js +1 -1
- package/esm2015/skeleton/skeleton.component.js +2 -2
- package/esm2015/skeleton/skeleton.property.js +1 -1
- package/esm2015/slider/slider.component.js +1 -1
- package/esm2015/slider/slider.property.js +1 -1
- package/esm2015/slider-select/slider-select.component.js +1 -1
- package/esm2015/slider-select/slider-select.property.js +1 -1
- package/esm2015/statistic/countdown.component.js +1 -1
- package/esm2015/statistic/statistic.property.js +1 -1
- package/esm2015/steps/steps.property.js +1 -1
- package/esm2015/switch/switch.component.js +1 -1
- package/esm2015/table/table-body.component.js +19 -9
- package/esm2015/table/table-foot.component.js +7 -7
- package/esm2015/table/table-head.component.js +13 -9
- package/esm2015/table/table.component.js +10 -3
- package/esm2015/table/table.property.js +8 -3
- package/esm2015/tabs/tab-content.component.js +1 -1
- package/esm2015/tabs/tab.component.js +1 -1
- package/esm2015/tabs/tabs.component.js +3 -3
- package/esm2015/tabs/tabs.property.js +1 -1
- package/esm2015/tag/tag.property.js +1 -1
- package/esm2015/text-retract/text-retract.component.js +1 -1
- package/esm2015/text-retract/text-retract.property.js +1 -1
- package/esm2015/textarea/textarea.component.js +1 -1
- package/esm2015/textarea/textarea.property.js +1 -1
- package/esm2015/theme/theme.property.js +1 -1
- package/esm2015/time-ago/time-ago.pipe.js +3 -1
- package/esm2015/time-picker/time-picker-frame.component.js +1 -1
- package/esm2015/time-picker/time-picker-portal.component.js +1 -1
- package/esm2015/time-picker/time-picker.component.js +2 -2
- package/esm2015/time-picker/time-picker.property.js +1 -1
- package/esm2015/timeline/timeline.property.js +1 -1
- package/esm2015/tooltip/tooltip-portal.component.js +1 -1
- package/esm2015/tooltip/tooltip.directive.js +1 -1
- package/esm2015/tooltip/tooltip.property.js +1 -1
- package/esm2015/transfer/transfer.component.js +5 -4
- package/esm2015/transfer/transfer.property.js +1 -1
- package/esm2015/tree/tree-node.component.js +10 -7
- package/esm2015/tree/tree.component.js +2 -2
- package/esm2015/tree/tree.property.js +3 -2
- package/esm2015/tree-file/tree-file.component.js +10 -2
- package/esm2015/tree-file/tree-file.property.js +1 -1
- package/esm2015/typography/typography.component.js +2 -3
- package/esm2015/typography/typography.property.js +1 -1
- package/esm2015/upload/upload-portal.component.js +1 -1
- package/esm2015/upload/upload.component.js +1 -1
- package/esm2015/upload/upload.property.js +1 -1
- package/fesm2015/ng-nest-ui-affix.js.map +1 -1
- package/fesm2015/ng-nest-ui-alert.js +14 -5
- package/fesm2015/ng-nest-ui-alert.js.map +1 -1
- package/fesm2015/ng-nest-ui-anchor.js.map +1 -1
- package/fesm2015/ng-nest-ui-auto-complete.js +5 -4
- package/fesm2015/ng-nest-ui-auto-complete.js.map +1 -1
- package/fesm2015/ng-nest-ui-avatar.js.map +1 -1
- package/fesm2015/ng-nest-ui-back-top.js.map +1 -1
- package/fesm2015/ng-nest-ui-badge.js.map +1 -1
- package/fesm2015/ng-nest-ui-base-form.js.map +1 -1
- package/fesm2015/ng-nest-ui-border.js +1 -1
- package/fesm2015/ng-nest-ui-border.js.map +1 -1
- package/fesm2015/ng-nest-ui-button.js +1 -1
- package/fesm2015/ng-nest-ui-button.js.map +1 -1
- package/fesm2015/ng-nest-ui-calendar.js +6 -2
- package/fesm2015/ng-nest-ui-calendar.js.map +1 -1
- package/fesm2015/ng-nest-ui-card.js.map +1 -1
- package/fesm2015/ng-nest-ui-carousel.js.map +1 -1
- package/fesm2015/ng-nest-ui-cascade.js.map +1 -1
- package/fesm2015/ng-nest-ui-checkbox.js +6 -5
- package/fesm2015/ng-nest-ui-checkbox.js.map +1 -1
- package/fesm2015/ng-nest-ui-collapse.js.map +1 -1
- package/fesm2015/ng-nest-ui-color-picker.js.map +1 -1
- package/fesm2015/ng-nest-ui-color.js.map +1 -1
- package/fesm2015/ng-nest-ui-comment.js +6 -2
- package/fesm2015/ng-nest-ui-comment.js.map +1 -1
- package/fesm2015/ng-nest-ui-container.js.map +1 -1
- package/fesm2015/ng-nest-ui-core.js +13 -2
- package/fesm2015/ng-nest-ui-core.js.map +1 -1
- package/fesm2015/ng-nest-ui-crumb.js.map +1 -1
- package/fesm2015/ng-nest-ui-date-picker.js +6 -3
- package/fesm2015/ng-nest-ui-date-picker.js.map +1 -1
- package/fesm2015/ng-nest-ui-dialog.js +12 -4
- package/fesm2015/ng-nest-ui-dialog.js.map +1 -1
- package/fesm2015/ng-nest-ui-drawer.js.map +1 -1
- package/fesm2015/ng-nest-ui-dropdown.js.map +1 -1
- package/fesm2015/ng-nest-ui-find.js +62 -4
- package/fesm2015/ng-nest-ui-find.js.map +1 -1
- package/fesm2015/ng-nest-ui-form.js +7 -6
- package/fesm2015/ng-nest-ui-form.js.map +1 -1
- package/fesm2015/ng-nest-ui-highlight.js.map +1 -1
- package/fesm2015/ng-nest-ui-i18n.js +1 -1
- package/fesm2015/ng-nest-ui-i18n.js.map +1 -1
- package/fesm2015/ng-nest-ui-icon.js.map +1 -1
- package/fesm2015/ng-nest-ui-inner.js.map +1 -1
- package/fesm2015/ng-nest-ui-input-number.js.map +1 -1
- package/fesm2015/ng-nest-ui-input.js.map +1 -1
- package/fesm2015/ng-nest-ui-layout.js.map +1 -1
- package/fesm2015/ng-nest-ui-link.js.map +1 -1
- package/fesm2015/ng-nest-ui-list.js.map +1 -1
- package/fesm2015/ng-nest-ui-loading.js.map +1 -1
- package/fesm2015/ng-nest-ui-menu.js +10 -7
- package/fesm2015/ng-nest-ui-menu.js.map +1 -1
- package/fesm2015/ng-nest-ui-message-box.js +19 -6
- package/fesm2015/ng-nest-ui-message-box.js.map +1 -1
- package/fesm2015/ng-nest-ui-outlet.js.map +1 -1
- package/fesm2015/ng-nest-ui-page-header.js.map +1 -1
- package/fesm2015/ng-nest-ui-pagination.js.map +1 -1
- package/fesm2015/ng-nest-ui-popconfirm.js +1 -1
- package/fesm2015/ng-nest-ui-popconfirm.js.map +1 -1
- package/fesm2015/ng-nest-ui-popover.js.map +1 -1
- package/fesm2015/ng-nest-ui-progress.js.map +1 -1
- package/fesm2015/ng-nest-ui-radio.js +1 -1
- package/fesm2015/ng-nest-ui-radio.js.map +1 -1
- package/fesm2015/ng-nest-ui-rate.js.map +1 -1
- package/fesm2015/ng-nest-ui-result.js +4 -1
- package/fesm2015/ng-nest-ui-result.js.map +1 -1
- package/fesm2015/ng-nest-ui-ripple.js +1 -1
- package/fesm2015/ng-nest-ui-ripple.js.map +1 -1
- package/fesm2015/ng-nest-ui-select.js +3 -3
- package/fesm2015/ng-nest-ui-select.js.map +1 -1
- package/fesm2015/ng-nest-ui-skeleton.js +1 -1
- package/fesm2015/ng-nest-ui-skeleton.js.map +1 -1
- package/fesm2015/ng-nest-ui-slider-select.js.map +1 -1
- package/fesm2015/ng-nest-ui-slider.js.map +1 -1
- package/fesm2015/ng-nest-ui-statistic.js.map +1 -1
- package/fesm2015/ng-nest-ui-steps.js.map +1 -1
- package/fesm2015/ng-nest-ui-switch.js.map +1 -1
- package/fesm2015/ng-nest-ui-table.js +50 -21
- package/fesm2015/ng-nest-ui-table.js.map +1 -1
- package/fesm2015/ng-nest-ui-tabs.js +2 -2
- package/fesm2015/ng-nest-ui-tabs.js.map +1 -1
- package/fesm2015/ng-nest-ui-tag.js.map +1 -1
- package/fesm2015/ng-nest-ui-text-retract.js.map +1 -1
- package/fesm2015/ng-nest-ui-textarea.js.map +1 -1
- package/fesm2015/ng-nest-ui-theme.js.map +1 -1
- package/fesm2015/ng-nest-ui-time-ago.js +2 -0
- package/fesm2015/ng-nest-ui-time-ago.js.map +1 -1
- package/fesm2015/ng-nest-ui-time-picker.js.map +1 -1
- package/fesm2015/ng-nest-ui-timeline.js.map +1 -1
- package/fesm2015/ng-nest-ui-tooltip.js.map +1 -1
- package/fesm2015/ng-nest-ui-transfer.js +4 -3
- package/fesm2015/ng-nest-ui-transfer.js.map +1 -1
- package/fesm2015/ng-nest-ui-tree-file.js +9 -1
- package/fesm2015/ng-nest-ui-tree-file.js.map +1 -1
- package/fesm2015/ng-nest-ui-tree.js +12 -7
- package/fesm2015/ng-nest-ui-tree.js.map +1 -1
- package/fesm2015/ng-nest-ui-typography.js +1 -2
- package/fesm2015/ng-nest-ui-typography.js.map +1 -1
- package/fesm2015/ng-nest-ui-upload.js.map +1 -1
- package/find/find.component.d.ts +3 -0
- package/find/find.property.d.ts +53 -9
- package/find/ng-nest-ui-find.metadata.json +1 -1
- package/form/control.component.d.ts +2 -3
- package/form/form.property.d.ts +5 -5
- package/form/ng-nest-ui-form.metadata.json +1 -1
- package/highlight/highlight.property.d.ts +2 -2
- package/i18n/ng-nest-ui-i18n.d.ts +0 -1
- package/i18n/ng-nest-ui-i18n.metadata.json +1 -1
- package/i18n/public-api.d.ts +1 -0
- package/icon/icon.component.d.ts +2 -2
- package/icon/icon.property.d.ts +6 -6
- package/inner/inner.property.d.ts +1 -1
- package/input/input.property.d.ts +4 -4
- package/layout/layout.property.d.ts +11 -11
- package/link/link.property.d.ts +3 -3
- package/list/list.property.d.ts +8 -8
- package/list/ng-nest-ui-list.metadata.json +1 -1
- package/loading/loading.property.d.ts +6 -6
- package/menu/menu-node.component.d.ts +2 -3
- package/menu/menu.property.d.ts +6 -6
- package/menu/ng-nest-ui-menu.metadata.json +1 -1
- package/message-box/message-box.component.d.ts +3 -0
- package/message-box/message-box.property.d.ts +4 -3
- package/message-box/ng-nest-ui-message-box.metadata.json +1 -1
- package/outlet/outlet.directive.d.ts +1 -1
- package/package.json +1 -1
- package/page-header/page-header.property.d.ts +4 -4
- package/pagination/pagination.property.d.ts +2 -2
- package/popconfirm/ng-nest-ui-popconfirm.metadata.json +1 -1
- package/popconfirm/popconfirm.component.d.ts +2 -2
- package/popconfirm/popconfirm.property.d.ts +7 -7
- package/popover/popover.property.d.ts +4 -4
- package/progress/progress.property.d.ts +2 -2
- package/radio/ng-nest-ui-radio.metadata.json +1 -1
- package/radio/radio.property.d.ts +3 -3
- package/rate/rate.property.d.ts +3 -2
- package/result/ng-nest-ui-result.metadata.json +1 -1
- package/result/result.component.d.ts +1 -0
- package/result/result.property.d.ts +3 -3
- package/ripple/ripple.property.d.ts +2 -2
- package/select/ng-nest-ui-select.metadata.json +1 -1
- package/select/select.property.d.ts +5 -5
- package/skeleton/ng-nest-ui-skeleton.metadata.json +1 -1
- package/skeleton/skeleton.property.d.ts +2 -2
- package/slider/slider.property.d.ts +6 -6
- package/slider-select/slider-select.property.d.ts +1 -1
- package/statistic/statistic.property.d.ts +1 -1
- package/steps/steps.property.d.ts +1 -1
- package/style/core/index.scss +1 -1
- package/style/directives/index.scss +2 -0
- package/style/directives/ripple/index.scss +6 -0
- package/style/directives/ripple/mixin.scss +37 -0
- package/style/directives/ripple/param.scss +3 -0
- package/table/ng-nest-ui-table.metadata.json +1 -1
- package/table/table-body.component.d.ts +6 -4
- package/table/table-foot.component.d.ts +2 -3
- package/table/table-head.component.d.ts +3 -3
- package/table/table.component.d.ts +1 -0
- package/table/table.property.d.ts +22 -12
- package/tabs/ng-nest-ui-tabs.metadata.json +1 -1
- package/tabs/tabs.property.d.ts +5 -5
- package/tag/tag.property.d.ts +3 -3
- package/text-retract/text-retract.property.d.ts +2 -2
- package/textarea/textarea.property.d.ts +2 -2
- package/theme/theme.property.d.ts +2 -2
- package/time-ago/time-ago.pipe.d.ts +1 -1
- package/time-picker/time-picker.property.d.ts +2 -2
- package/timeline/timeline.property.d.ts +5 -5
- package/tooltip/tooltip.property.d.ts +4 -4
- package/transfer/transfer.component.d.ts +1 -1
- package/transfer/transfer.property.d.ts +4 -4
- package/tree/ng-nest-ui-tree.metadata.json +1 -1
- package/tree/tree-node.component.d.ts +3 -3
- package/tree/tree.property.d.ts +12 -13
- package/tree-file/ng-nest-ui-tree-file.metadata.json +1 -1
- package/tree-file/tree-file.component.d.ts +3 -0
- package/tree-file/tree-file.property.d.ts +2 -2
- package/typography/typography.property.d.ts +1 -1
- package/upload/upload.property.d.ts +5 -5
- package/style/core/directive.scss +0 -1
|
@@ -119,7 +119,7 @@ XRadioComponent.decorators = [
|
|
|
119
119
|
encapsulation: ViewEncapsulation.None,
|
|
120
120
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
121
121
|
providers: [XValueAccessor(XRadioComponent)],
|
|
122
|
-
styles: [".x-radio{margin:0;padding:0;width:100%}.x-radio.x-flex{display:flex}.x-radio.x-justify-start{justify-content:flex-start}.x-radio.x-justify-center{justify-content:center}.x-radio.x-justify-end{justify-content:flex-end}.x-radio.x-justify-space-between{justify-content:space-between}.x-radio.x-justify-space-around{justify-content:space-around}.x-radio.x-align-start{align-items:flex-start}.x-radio.x-align-center{align-items:center}.x-radio.x-align-end{align-items:flex-end}.x-radio.x-direction-column{flex-direction:column}.x-radio.x-direction-column-reverse{flex-direction:column-reverse}.x-radio.x-direction-row{flex-direction:row}.x-radio.x-direction-row-reverse{flex-direction:row-reverse}.x-radio>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-radio>label.x-text-align-start{text-align:start}.x-radio>label.x-text-align-center{text-align:center}.x-radio>label.x-text-align-end{text-align:end}.x-radio-row{flex:1;
|
|
122
|
+
styles: [".x-radio{margin:0;padding:0;width:100%}.x-radio.x-flex{display:flex}.x-radio.x-justify-start{justify-content:flex-start}.x-radio.x-justify-center{justify-content:center}.x-radio.x-justify-end{justify-content:flex-end}.x-radio.x-justify-space-between{justify-content:space-between}.x-radio.x-justify-space-around{justify-content:space-around}.x-radio.x-align-start{align-items:flex-start}.x-radio.x-align-center{align-items:center}.x-radio.x-align-end{align-items:flex-end}.x-radio.x-direction-column{flex-direction:column}.x-radio.x-direction-column-reverse{flex-direction:column-reverse}.x-radio.x-direction-row{flex-direction:row}.x-radio.x-direction-row-reverse{flex-direction:row-reverse}.x-radio>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-radio>label.x-text-align-start{text-align:start}.x-radio>label.x-text-align-center{text-align:center}.x-radio>label.x-text-align-end{text-align:end}.x-radio-row{flex:1;line-height:calc(var(--x-font-size) + .875rem)}.x-radio-item,.x-radio-row{align-items:center;position:relative}.x-radio-item{display:inline-flex;white-space:nowrap;outline:none;margin-right:.875rem;font-size:.875rem;cursor:pointer;transition:all .3s}.x-radio-item:hover{color:var(--x-primary)}.x-radio-item:hover .x-radio-box{border-color:var(--x-primary)}.x-radio-item:last-child{margin-right:0}.x-radio-item.x-checked .x-radio-box{border-color:var(--x-primary)}.x-radio-item.x-checked .x-radio-box:after{transform:scale(1);opacity:1}.x-radio-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-radio-item.x-disabled .x-radio-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-radio-item.x-disabled .x-radio-box:after{background-color:var(--x-text-400)}.x-radio-box{border:.0625rem solid var(--x-border);border-radius:100%;width:1rem;height:1rem;background-color:var(--x-background-a100);position:relative;box-sizing:border-box;transition:all .3s;display:inline-flex;align-items:center;justify-content:center}.x-radio-box:hover{border-color:var(--x-primary)}.x-radio-box:after{position:absolute;display:inline-block;width:.5rem;height:.5rem;background-color:var(--x-primary);border-radius:1rem;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:\" \"}.x-radio-label{margin-left:.325rem}.x-radio.x-disabled .x-radio-item{color:var(--x-text-400);cursor:not-allowed}.x-radio.x-disabled .x-radio-item .x-radio-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-radio.x-disabled .x-radio-item .x-radio-box:after{background-color:var(--x-text-400)}.x-radio.x-invalid>label,.x-radio.x-required>label{color:var(--x-danger)}.x-radio.x-direction-row>label{padding:0 .5rem 0 0}.x-radio.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-radio.x-direction-column,.x-radio.x-direction-column-reverse{align-items:inherit}"]
|
|
123
123
|
},] }
|
|
124
124
|
];
|
|
125
125
|
/** @nocollapse */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-radio.js","sources":["../../../../lib/ng-nest/ui/radio/radio.property.ts","../../../../lib/ng-nest/ui/radio/radio.component.ts","../../../../lib/ng-nest/ui/radio/radio.module.ts","../../../../lib/ng-nest/ui/radio/ng-nest-ui-radio.ts"],"sourcesContent":["import {\r\n XData,\r\n XIdentityProperty,\r\n XDataConvert,\r\n XInputBoolean,\r\n XSize,\r\n XBoolean,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\nimport { XButtonType } from '@ng-nest/ui/button';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Radio\r\n * @selector x-radio\r\n * @decorator component\r\n */\r\nexport const XRadioPrefix = 'x-radio';\r\nconst X_CONFIG_NAME = 'radio';\r\n\r\n/**\r\n * Radio Property\r\n */\r\n@Component({ template: '' })\r\nexport class XRadioProperty extends XControlValueAccessor<any> implements XRadioOption {\r\n /**\r\n * @zh_CN 单选框数据\r\n * @en_US Radio data\r\n */\r\n @Input() @XDataConvert() data: XData<XRadioNode> = [];\r\n /**\r\n * @zh_CN 按钮样式\r\n * @en_US Button style\r\n */\r\n @Input() @XInputBoolean() button
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-radio.js","sources":["../../../../lib/ng-nest/ui/radio/radio.property.ts","../../../../lib/ng-nest/ui/radio/radio.component.ts","../../../../lib/ng-nest/ui/radio/radio.module.ts","../../../../lib/ng-nest/ui/radio/ng-nest-ui-radio.ts"],"sourcesContent":["import {\r\n XData,\r\n XIdentityProperty,\r\n XDataConvert,\r\n XInputBoolean,\r\n XSize,\r\n XBoolean,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\nimport { XButtonType } from '@ng-nest/ui/button';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Radio\r\n * @selector x-radio\r\n * @decorator component\r\n */\r\nexport const XRadioPrefix = 'x-radio';\r\nconst X_CONFIG_NAME = 'radio';\r\n\r\n/**\r\n * Radio Property\r\n */\r\n@Component({ template: '' })\r\nexport class XRadioProperty extends XControlValueAccessor<any> implements XRadioOption {\r\n /**\r\n * @zh_CN 单选框数据\r\n * @en_US Radio data\r\n */\r\n @Input() @XDataConvert() data: XData<XRadioNode> = [];\r\n /**\r\n * @zh_CN 按钮样式\r\n * @en_US Button style\r\n */\r\n @Input() @XInputBoolean() button?: XBoolean;\r\n /**\r\n * @zh_CN 图标样式\r\n * @en_US Icon style\r\n */\r\n @Input() @XInputBoolean() icon?: XBoolean;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') size?: XSize;\r\n /**\r\n * @zh_CN 按钮样式时生效\r\n * @en_US Take effect when button style\r\n */\r\n @Input() type: XButtonType = 'initial';\r\n}\r\n\r\n/**\r\n * Radio Option\r\n * @undocument true\r\n */\r\nexport interface XRadioOption extends XFormOption {\r\n /**\r\n * @zh_CN 单选框数据\r\n * @en_US Radio data\r\n */\r\n data?: XData<XRadioNode>;\r\n /**\r\n * @zh_CN 按钮样式\r\n * @en_US Button style\r\n */\r\n button?: XBoolean;\r\n /**\r\n * @zh_CN 图标样式\r\n * @en_US Icon style\r\n */\r\n icon?: XBoolean;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 按钮样式时生效\r\n * @en_US Take effect when button style\r\n */\r\n type?: XButtonType;\r\n}\r\n\r\n/**\r\n * @zh_CN Radio 数据对象\r\n * @en_US Radio data object\r\n */\r\nexport interface XRadioNode extends XIdentityProperty {\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 图标的提示信息\r\n * @en_US Icon message\r\n */\r\n title?: string;\r\n}\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnChanges,\r\n SimpleChanges,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XRadioPrefix, XRadioNode, XRadioProperty } from './radio.property';\r\nimport { Subject } from 'rxjs';\r\nimport { XIsChange, XSetData, XClearClass, XConfigService } from '@ng-nest/ui/core';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XRadioPrefix}`,\r\n templateUrl: './radio.component.html',\r\n styleUrls: ['./radio.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XRadioComponent)]\r\n})\r\nexport class XRadioComponent extends XRadioProperty implements OnChanges {\r\n @ViewChild('radio', { static: true }) radio!: ElementRef;\r\n nodes: XRadioNode[] = [];\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.radio.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n XIsChange(changes.data) && this.setData();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n writeValue(value: any) {\r\n this.value = value;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n radioClick(event: Event, node: XRadioNode) {\r\n event.preventDefault();\r\n if (this.disabled || node.disabled || node.id === this.value) return;\r\n this.value = node.id;\r\n this.cdr.detectChanges();\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n private setData() {\r\n XSetData<XRadioNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.nodes = x;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n trackByItem(index: number, item: XRadioNode) {\r\n return item.id;\r\n }\r\n\r\n formControlChanges() {\r\n this.setData();\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XRadioComponent } from './radio.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XRadioProperty } from './radio.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XRadioComponent, XRadioProperty],\r\n exports: [XRadioComponent],\r\n imports: [CommonModule, FormsModule, XButtonModule, XBaseFormModule]\r\n})\r\nexport class XRadioModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-rate.js","sources":["../../../../lib/ng-nest/ui/rate/rate.property.ts","../../../../lib/ng-nest/ui/rate/rate.component.ts","../../../../lib/ng-nest/ui/rate/rate.module.ts","../../../../lib/ng-nest/ui/rate/ng-nest-ui-rate.ts"],"sourcesContent":["import { XInputNumber, XNumber, XInputBoolean, XBoolean, XTemplate } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Rate\r\n * @selector x-rate\r\n * @decorator component\r\n */\r\nexport const XRatePrefix = 'x-rate';\r\n\r\n/**\r\n * Rate Property\r\n */\r\n@Component({ template: '' })\r\nexport class XRateProperty extends XControlValueAccessor<any> implements XRateOption {\r\n /**\r\n * @zh_CN 评分个数\r\n * @en_US Number of ratings\r\n */\r\n @Input() @XInputNumber() count: XNumber = 5;\r\n /**\r\n * @zh_CN 半星模式\r\n * @en_US Number of ratings\r\n */\r\n @Input() @XInputBoolean() half
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-rate.js","sources":["../../../../lib/ng-nest/ui/rate/rate.property.ts","../../../../lib/ng-nest/ui/rate/rate.component.ts","../../../../lib/ng-nest/ui/rate/rate.module.ts","../../../../lib/ng-nest/ui/rate/ng-nest-ui-rate.ts"],"sourcesContent":["import { XInputNumber, XNumber, XInputBoolean, XBoolean, XTemplate } from '@ng-nest/ui/core';\r\nimport { Input, Component, TemplateRef } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Rate\r\n * @selector x-rate\r\n * @decorator component\r\n */\r\nexport const XRatePrefix = 'x-rate';\r\n\r\n/**\r\n * Rate Property\r\n */\r\n@Component({ template: '' })\r\nexport class XRateProperty extends XControlValueAccessor<any> implements XRateOption {\r\n /**\r\n * @zh_CN 评分个数\r\n * @en_US Number of ratings\r\n */\r\n @Input() @XInputNumber() count: XNumber = 5;\r\n /**\r\n * @zh_CN 半星模式\r\n * @en_US Number of ratings\r\n */\r\n @Input() @XInputBoolean() half?: XBoolean;\r\n /**\r\n * @zh_CN 自定义模板\r\n * @en_US Custom template\r\n */\r\n @Input() customTemp!: TemplateRef<any>;\r\n}\r\n\r\n/**\r\n * Rate Option\r\n * @undocument true\r\n */\r\nexport interface XRateOption extends XFormOption {\r\n /**\r\n * @zh_CN 评分个数\r\n * @en_US Number of ratings\r\n */\r\n count?: XNumber;\r\n /**\r\n * @zh_CN 半星模式\r\n * @en_US Number of ratings\r\n */\r\n half?: XBoolean;\r\n /**\r\n * @zh_CN 自定义模板\r\n * @en_US Custom template\r\n */\r\n customTemp?: XTemplate;\r\n}\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XIsEmpty, XNumber, XClearClass, XConfigService } from '@ng-nest/ui/core';\r\nimport { XRatePrefix, XRateProperty } from './rate.property';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XRatePrefix}`,\r\n templateUrl: './rate.component.html',\r\n styleUrls: ['./rate.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XRateComponent)]\r\n})\r\nexport class XRateComponent extends XRateProperty {\r\n @ViewChild('rate', { static: true }) rate!: ElementRef;\r\n rates: number[] = [];\r\n\r\n hoverActivated = 0;\r\n hoverHalfActivated = 0;\r\n\r\n writeValue(value: any) {\r\n if (XIsEmpty(value)) value = 0;\r\n this.value = value;\r\n this.hoverActivated = value;\r\n this.hoverHalfActivated = Math.ceil(value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n rateNodes: any = [];\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setRates();\r\n this.setFlex(this.rate.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setRates() {\r\n this.rates = Array(this.count)\r\n .fill(0)\r\n .map((_, i) => i + 1);\r\n }\r\n\r\n rateHover(rate: number, event: MouseEvent) {\r\n if (this.disabled) return;\r\n this.hoverActivated = rate;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n leaveRates() {\r\n if (this.disabled) return;\r\n const activited = this.value;\r\n this.hoverActivated = activited;\r\n this.hoverHalfActivated = Math.ceil(activited);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n rateClick(rate: number, event: MouseEvent) {\r\n if (this.disabled) return;\r\n this.value = this.value === rate ? 0 : rate;\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n rateHalfHover(rate: number, event: MouseEvent) {\r\n if (this.disabled) return;\r\n this.hoverActivated = rate - 1;\r\n this.hoverHalfActivated = rate;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n rateHalfClick(rate: number, event: MouseEvent) {\r\n if (this.disabled) return;\r\n this.value = rate - 0.5;\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n trackByItem(index: number, item: number) {\r\n return item;\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XRateComponent } from './rate.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XRateProperty } from './rate.property';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XRateComponent, XRateProperty],\r\n exports: [XRateComponent],\r\n imports: [CommonModule, FormsModule, XButtonModule, XIconModule, XBaseFormModule]\r\n})\r\nexport class XRateModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,9 @@ class XResultComponent extends XResultProperty {
|
|
|
41
41
|
this.cdr = cdr;
|
|
42
42
|
this.configService = configService;
|
|
43
43
|
}
|
|
44
|
+
get strIcon() {
|
|
45
|
+
return this.icon;
|
|
46
|
+
}
|
|
44
47
|
ngOnInit() {
|
|
45
48
|
this.setClassMap();
|
|
46
49
|
}
|
|
@@ -51,7 +54,7 @@ class XResultComponent extends XResultProperty {
|
|
|
51
54
|
XResultComponent.decorators = [
|
|
52
55
|
{ type: Component, args: [{
|
|
53
56
|
selector: `${XResultPrefix}`,
|
|
54
|
-
template: "<div #result class=\"x-result\" [ngClass]=\"classMap\">\r\n <div class=\"x-result-icon\">\r\n <ng-container *ngIf=\"!icon; else iconTpl\" [ngSwitch]=\"status\">\r\n <x-icon *ngSwitchCase=\"'success'\" type=\"adf-check-circle\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'info'\" type=\"adf-info-circle\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'warning'\" type=\"adf-warning\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'error'\" type=\"adf-close-circle\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'403'\" type=\"fto-lock\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'404'\" type=\"fto-code\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'500'\" type=\"adf-close-circle\"></x-icon>\r\n </ng-container>\r\n <ng-template #iconTpl>\r\n <ng-container *xOutlet=\"icon\">\r\n <x-icon [type]=\"
|
|
57
|
+
template: "<div #result class=\"x-result\" [ngClass]=\"classMap\">\r\n <div class=\"x-result-icon\">\r\n <ng-container *ngIf=\"!icon; else iconTpl\" [ngSwitch]=\"status\">\r\n <x-icon *ngSwitchCase=\"'success'\" type=\"adf-check-circle\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'info'\" type=\"adf-info-circle\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'warning'\" type=\"adf-warning\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'error'\" type=\"adf-close-circle\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'403'\" type=\"fto-lock\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'404'\" type=\"fto-code\"></x-icon>\r\n <x-icon *ngSwitchCase=\"'500'\" type=\"adf-close-circle\"></x-icon>\r\n </ng-container>\r\n <ng-template #iconTpl>\r\n <ng-container *xOutlet=\"icon\">\r\n <x-icon [type]=\"strIcon\"></x-icon>\r\n </ng-container>\r\n </ng-template>\r\n </div>\r\n\r\n <div class=\"x-result-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <div class=\"x-result-subTitle\">\r\n <ng-container *xOutlet=\"subTitle\">{{ subTitle }}</ng-container>\r\n </div>\r\n <div class=\"x-result-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n",
|
|
55
58
|
encapsulation: ViewEncapsulation.None,
|
|
56
59
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
57
60
|
styles: [".x-result{margin:0;display:flex;flex-direction:column;align-items:center;padding:3rem 2rem}.x-result-icon{font-size:calc(var(--x-font-size) * 5);margin-bottom:var(--x-font-size-large)}.x-result-title{font-size:var(--x-font-size-large);line-height:calc(var(--x-font-size-large) * 1.5)}.x-result-subTitle{color:var(--x-text-400)}.x-result-content{margin-top:var(--x-font-size-large)}.x-result-success .x-result-icon{color:var(--x-success)}.x-result-info .x-result-icon{color:var(--x-info)}.x-result-warning .x-result-icon{color:var(--x-warning)}.x-result-error .x-result-icon{color:var(--x-danger)}.x-result-403 .x-result-icon,.x-result-404 .x-result-icon{color:var(--x-text-400)}.x-result-500 .x-result-icon{color:var(--x-danger)}"]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-result.js","sources":["../../../../lib/ng-nest/ui/result/result.property.ts","../../../../lib/ng-nest/ui/result/result.component.ts","../../../../lib/ng-nest/ui/result/result.module.ts","../../../../lib/ng-nest/ui/result/ng-nest-ui-result.ts"],"sourcesContent":["import { XStatus, XProperty, XTemplate } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Result\r\n * @selector x-result\r\n * @decorator component\r\n */\r\nexport const XResultPrefix = 'x-result';\r\n\r\n/**\r\n * Result Property\r\n */\r\n@Component({ template: '' })\r\nexport class XResultProperty extends XProperty {\r\n /**\r\n * @zh_CN 状态\r\n * @en_US Status\r\n */\r\n @Input() status: XResultStatus = 'info';\r\n /**\r\n * @zh_CN 标题,支持模板自定义\r\n * @en_US Title, support template customization\r\n */\r\n @Input() title
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-result.js","sources":["../../../../lib/ng-nest/ui/result/result.property.ts","../../../../lib/ng-nest/ui/result/result.component.ts","../../../../lib/ng-nest/ui/result/result.module.ts","../../../../lib/ng-nest/ui/result/ng-nest-ui-result.ts"],"sourcesContent":["import { XStatus, XProperty, XTemplate } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Result\r\n * @selector x-result\r\n * @decorator component\r\n */\r\nexport const XResultPrefix = 'x-result';\r\n\r\n/**\r\n * Result Property\r\n */\r\n@Component({ template: '' })\r\nexport class XResultProperty extends XProperty {\r\n /**\r\n * @zh_CN 状态\r\n * @en_US Status\r\n */\r\n @Input() status: XResultStatus = 'info';\r\n /**\r\n * @zh_CN 标题,支持模板自定义\r\n * @en_US Title, support template customization\r\n */\r\n @Input() title?: XTemplate;\r\n /**\r\n * @zh_CN 图标,支持模板自定义\r\n * @en_US Icon, support template customization\r\n */\r\n @Input() icon?: XTemplate;\r\n /**\r\n * @zh_CN 小标题,支持模板自定义\r\n * @en_US Subtitle, support template customization\r\n */\r\n @Input() subTitle?: XTemplate;\r\n}\r\n\r\n/**\r\n * @zh_CN 结果状态\r\n * @en_US Result status\r\n */\r\nexport type XResultStatus = XStatus | '403' | '404' | '500' | 'custom';\r\n","import { Component, OnInit, ViewEncapsulation, Renderer2, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XResultPrefix, XResultProperty } from './result.property';\r\nimport { XIsEmpty, XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XResultPrefix}`,\r\n templateUrl: './result.component.html',\r\n styleUrls: ['./result.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XResultComponent extends XResultProperty implements OnInit {\r\n get strIcon() {\r\n return this.icon as string;\r\n }\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XResultPrefix}-${this.status}`] = !XIsEmpty(this.status);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XResultComponent } from './result.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XResultProperty } from './result.property';\r\n\r\n@NgModule({\r\n declarations: [XResultComponent, XResultProperty],\r\n exports: [XResultComponent],\r\n imports: [CommonModule, XIconModule, XOutletModule]\r\n})\r\nexport class XResultModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAGA;;;;;MAKa,aAAa,GAAG,WAAW;AAExC;;;MAIa,eAAgB,SAAQ,SAAS;IAD9C;;;;;;QAMW,WAAM,GAAkB,MAAM,CAAC;KAgBzC;;;YAtBA,SAAS,SAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;;;qBAMxB,KAAK;oBAKL,KAAK;mBAKL,KAAK;uBAKL,KAAK;;;MCvBK,gBAAiB,SAAQ,eAAe;IAInD,YACS,QAAmB,EACnB,UAAsB,EACtB,GAAsB,EACtB,aAA6B;QAEpC,KAAK,EAAE,CAAC;QALD,aAAQ,GAAR,QAAQ,CAAW;QACnB,eAAU,GAAV,UAAU,CAAY;QACtB,QAAG,GAAH,GAAG,CAAmB;QACtB,kBAAa,GAAb,aAAa,CAAgB;KAGrC;IAVD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAc,CAAC;KAC5B;IAUD,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW;QACT,IAAI,CAAC,QAAQ,CAAC,GAAG,aAAa,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC3E;;;YA1BF,SAAS,SAAC;gBACT,QAAQ,EAAE,GAAG,aAAa,EAAE;gBAC5B,8tCAAsC;gBAEtC,aAAa,EAAE,iBAAiB,CAAC,IAAI;gBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;;aAChD;;;;YAV8C,SAAS;YAAE,UAAU;YAAE,iBAAiB;YAEpE,cAAc;;;MCUpB,aAAa;;;YALzB,QAAQ,SAAC;gBACR,YAAY,EAAE,CAAC,gBAAgB,EAAE,eAAe,CAAC;gBACjD,OAAO,EAAE,CAAC,gBAAgB,CAAC;gBAC3B,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,CAAC;aACpD;;;ACXD;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-ripple.js","sources":["../../../../lib/ng-nest/ui/ripple/ripple.property.ts","../../../../lib/ng-nest/ui/ripple/ripple.directive.ts","../../../../lib/ng-nest/ui/ripple/ripple.module.ts","../../../../lib/ng-nest/ui/ripple/ng-nest-ui-ripple.ts"],"sourcesContent":["import {\r\n XBoolean,\r\n XInputBoolean,\r\n XIsBoolean,\r\n XProperty,\r\n XType,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Directive } from '@angular/core';\r\n\r\n/**\r\n * Ripple\r\n * @selector x-ripple\r\n * @decorator directive\r\n */\r\nexport const XRipplePrefix = 'x-ripple';\r\nconst X_CONFIG_NAME = 'ripple';\r\n\r\n/**\r\n * Ripple Property\r\n */\r\n@Directive({ selector: '[x-ripple]' })\r\nexport class XRippleProperty extends XProperty {\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\n @Input() @XWithConfig<XRippleType>(X_CONFIG_NAME, 'initial') type
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-ripple.js","sources":["../../../../lib/ng-nest/ui/ripple/ripple.property.ts","../../../../lib/ng-nest/ui/ripple/ripple.directive.ts","../../../../lib/ng-nest/ui/ripple/ripple.module.ts","../../../../lib/ng-nest/ui/ripple/ng-nest-ui-ripple.ts"],"sourcesContent":["import {\r\n XBoolean,\r\n XInputBoolean,\r\n XIsBoolean,\r\n XProperty,\r\n XType,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Directive } from '@angular/core';\r\n\r\n/**\r\n * Ripple\r\n * @selector x-ripple\r\n * @decorator directive\r\n */\r\nexport const XRipplePrefix = 'x-ripple';\r\nconst X_CONFIG_NAME = 'ripple';\r\n\r\n/**\r\n * Ripple Property\r\n */\r\n@Directive({ selector: '[x-ripple]' })\r\nexport class XRippleProperty extends XProperty {\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\n @Input() @XWithConfig<XRippleType>(X_CONFIG_NAME, 'initial') type?: XRippleType;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disable\r\n */\r\n @Input() @XInputBoolean() disabled?: XBoolean;\r\n}\r\n\r\n/**\r\n * @zh_CN 波纹类型\r\n * @en_US Ripple type\r\n */\r\nexport type XRippleType = XType;\r\n","import { OnInit, Renderer2, ElementRef, Directive, OnDestroy } from '@angular/core';\r\nimport { fromEvent, of, Subject } from 'rxjs';\r\nimport { delay, takeUntil, tap } from 'rxjs/operators';\r\nimport { XRipplePrefix, XRippleProperty } from './ripple.property';\r\n\r\n@Directive({\r\n selector: '[x-ripple]'\r\n})\r\nexport class XRippleDirective extends XRippleProperty implements OnInit, OnDestroy {\r\n duration = 800;\r\n private _unSub = new Subject();\r\n\r\n constructor(private renderer: Renderer2, private elementRef: ElementRef) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.disabled) return;\r\n fromEvent<MouseEvent>(this.elementRef.nativeElement, 'mousedown')\r\n .pipe(takeUntil(this._unSub))\r\n .subscribe((event) => {\r\n const eleRect = this.elementRef.nativeElement.getBoundingClientRect();\r\n const radius = this.distanceToFurthestCorner(event.x, event.y, eleRect);\r\n const offsetX = event.x - eleRect.left;\r\n const offsetY = event.y - eleRect.top;\r\n const ripple = this.renderer.createElement('div');\r\n this.renderer.addClass(ripple, 'x-ripple-element');\r\n ripple.style.left = `${offsetX - radius}px`;\r\n ripple.style.top = `${offsetY - radius}px`;\r\n ripple.style.height = `${radius * 2}px`;\r\n ripple.style.width = `${radius * 2}px`;\r\n ripple.style.transitionDuration = `${this.duration}ms`;\r\n this.renderer.appendChild(this.elementRef.nativeElement, ripple);\r\n this.enforceStyleRecalculation(ripple);\r\n ripple.style.transform = 'scale(1)';\r\n ripple.style.opacity = '0';\r\n\r\n of(true)\r\n .pipe(\r\n delay(this.duration),\r\n tap(() => {\r\n this.renderer.removeChild(this.elementRef.nativeElement, ripple);\r\n }),\r\n takeUntil(this._unSub)\r\n )\r\n .subscribe();\r\n });\r\n this.setClassMap();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSub.next();\r\n this._unSub.complete();\r\n }\r\n\r\n setClassMap() {\r\n this.renderer.addClass(this.elementRef.nativeElement, XRipplePrefix);\r\n this.renderer.addClass(this.elementRef.nativeElement, `${XRipplePrefix}-${this.type}`);\r\n }\r\n\r\n distanceToFurthestCorner(x: number, y: number, rect: ClientRect) {\r\n const distX = Math.max(Math.abs(x - rect.left), Math.abs(x - rect.right));\r\n const distY = Math.max(Math.abs(y - rect.top), Math.abs(y - rect.bottom));\r\n return Math.sqrt(distX * distX + distY * distY);\r\n }\r\n\r\n enforceStyleRecalculation(element: HTMLElement) {\r\n window.getComputedStyle(element).getPropertyValue('opacity');\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XRippleDirective } from './ripple.directive';\r\nimport { XRippleProperty } from './ripple.property';\r\n\r\n@NgModule({\r\n declarations: [XRippleDirective, XRippleProperty],\r\n exports: [XRippleDirective],\r\n imports: [CommonModule]\r\n})\r\nexport class XRippleModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { XDataConvert, XWithConfig, XInputBoolean, XConnectBaseAnimation, XIsEmp
|
|
|
5
5
|
import { XControlValueAccessor, XValueAccessor, XBaseFormModule } from '@ng-nest/ui/base-form';
|
|
6
6
|
import { XPortalConnectedPosition, XPortalService, XPortalModule } from '@ng-nest/ui/portal';
|
|
7
7
|
import { XInputModule } from '@ng-nest/ui/input';
|
|
8
|
-
import { takeUntil, throttleTime
|
|
8
|
+
import { takeUntil, throttleTime } from 'rxjs/operators';
|
|
9
9
|
import { XListModule } from '@ng-nest/ui/list';
|
|
10
10
|
import { Overlay } from '@angular/cdk/overlay';
|
|
11
11
|
import { DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, MAC_ENTER, ESCAPE, TAB } from '@angular/cdk/keycodes';
|
|
@@ -211,10 +211,10 @@ class XSelectComponent extends XSelectProperty {
|
|
|
211
211
|
});
|
|
212
212
|
}
|
|
213
213
|
setSubject() {
|
|
214
|
-
this.closeSubject.pipe(
|
|
214
|
+
this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {
|
|
215
215
|
this.closePortal();
|
|
216
216
|
});
|
|
217
|
-
this.keydownSubject.pipe(throttleTime(
|
|
217
|
+
this.keydownSubject.pipe(throttleTime(10), takeUntil(this._unSubject)).subscribe((x) => {
|
|
218
218
|
const keyCode = x.keyCode;
|
|
219
219
|
if (!this.portalAttached() && [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, MAC_ENTER].includes(keyCode)) {
|
|
220
220
|
this.showPortal();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-select.js","sources":["../../../../lib/ng-nest/ui/select/select.property.ts","../../../../lib/ng-nest/ui/select/select-portal.component.ts","../../../../lib/ng-nest/ui/select/select.component.ts","../../../../lib/ng-nest/ui/select/select.module.ts","../../../../lib/ng-nest/ui/select/ng-nest-ui-select.ts"],"sourcesContent":["import {\r\n XParentIdentityProperty,\r\n XDataConvert,\r\n XInputBoolean,\r\n XData,\r\n XBoolean,\r\n XWithConfig,\r\n XPositionTopBottom\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Component, TemplateRef } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Select\r\n * @selector x-select\r\n * @decorator component\r\n */\r\nexport const XSelectPrefix = 'x-select';\r\nconst X_CONFIG_NAME = 'select';\r\n\r\n/**\r\n * Select Property\r\n */\r\n@Component({ template: '' })\r\nexport class XSelectProperty extends XControlValueAccessor<any> {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() @XDataConvert() data: XData<XSelectNode> = [];\r\n /**\r\n * @zh_CN 清除按钮\r\n * @en_US Clear button\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) @XInputBoolean() clearable: XBoolean;\r\n /**\r\n * @zh_CN 异步加载\r\n * @en_US Asynchronous loading\r\n */\r\n @Input() @XInputBoolean() async: XBoolean;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n @Input() @XWithConfig<XPositionTopBottom>(X_CONFIG_NAME, 'bottom') placement: XPositionTopBottom;\r\n /**\r\n * @zh_CN 多选功能\r\n * @en_US Multiple choice\r\n */\r\n @Input() @XInputBoolean() multiple: XBoolean;\r\n /**\r\n * @zh_CN 节点模板\r\n * @en_US Node template\r\n */\r\n @Input() nodeTpl: TemplateRef<any>;\r\n}\r\n\r\n/**\r\n * Select Option\r\n * @undocument true\r\n */\r\nexport interface XSelectOption extends XFormOption {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n data?: XData<XSelectNode>;\r\n /**\r\n * @zh_CN 异步加载\r\n * @en_US Asynchronous loading\r\n */\r\n async?: XBoolean;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XPositionTopBottom;\r\n /**\r\n * @zh_CN 多选功能\r\n * @en_US Multiple choice\r\n */\r\n multiple?: XBoolean;\r\n}\r\n\r\n/**\r\n * @zh_CN Select 数据对象\r\n * @en_US Select data object\r\n */\r\nexport interface XSelectNode extends XParentIdentityProperty<XSelectNode> {}\r\n\r\n/**\r\n * Select Portal\r\n * @selector x-select-portal\r\n * @decorator component\r\n */\r\nexport const XSelectPortalPrefix = 'x-select-portal';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnDestroy,\r\n Renderer2,\r\n HostBinding,\r\n HostListener,\r\n TemplateRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XSelectNode, XSelectPortalPrefix } from './select.property';\r\nimport { Subject } from 'rxjs';\r\nimport { XConnectBaseAnimation, XNumber, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XListComponent } from '@ng-nest/ui/list';\r\n\r\n@Component({\r\n selector: `${XSelectPortalPrefix}`,\r\n templateUrl: './select-portal.component.html',\r\n styleUrls: ['./select-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XSelectPortalComponent implements OnInit, OnDestroy {\r\n @HostBinding('@x-connect-base-animation') public placement: XPositionTopBottom;\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done(event: { toState: any }) {\r\n this.animating(false);\r\n event.toState === 'void' && this.destroyPortal();\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start(event: { toState: any }) {\r\n this.animating(true);\r\n }\r\n\r\n @ViewChild('list') list: XListComponent;\r\n\r\n data: XSelectNode[];\r\n value: any;\r\n valueChange: Subject<any>;\r\n positionChange: Subject<any>;\r\n animating: Function;\r\n activeChange: Function;\r\n destroyPortal: Function;\r\n closeSubject: Subject<void>;\r\n keydownSubject: Subject<KeyboardEvent>;\r\n nodeEmit: Function;\r\n multiple: XNumber = 1;\r\n nodeTpl: TemplateRef<any>;\r\n show: boolean = false;\r\n active: number = -1;\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(public renderer: Renderer2, public cdr: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.value = x;\r\n this.cdr.detectChanges();\r\n });\r\n this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.placement = x;\r\n this.cdr.detectChanges();\r\n });\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.list.setUnActive(this.active);\r\n });\r\n this.keydownSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.list.keydown(x);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n nodeClick(node: XSelectNode) {\r\n if (this.multiple === 0) this.nodeEmit(this.value);\r\n else this.nodeEmit(node);\r\n }\r\n\r\n onActive(num: number) {\r\n this.active = num;\r\n }\r\n\r\n onTabOut() {\r\n this.closeSubject.next();\r\n }\r\n}\r\n","import { Subject } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewContainerRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XSelectNode, XSelectProperty, XSelectPrefix } from './select.property';\r\nimport {\r\n XIsEmpty,\r\n XIsObservable,\r\n XIsChange,\r\n XSetData,\r\n XClearClass,\r\n XConfigService,\r\n XIsArray,\r\n XPositionTopBottom\r\n} from '@ng-nest/ui/core';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { XSelectPortalComponent } from './select-portal.component';\r\nimport { Overlay, FlexibleConnectedPositionStrategy, ConnectedOverlayPositionChange, OverlayConfig } from '@angular/cdk/overlay';\r\nimport { delay, takeUntil, throttleTime } from 'rxjs/operators';\r\nimport { DOWN_ARROW, UP_ARROW, ENTER, MAC_ENTER, TAB, ESCAPE, LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XSelectPrefix}`,\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XSelectComponent)]\r\n})\r\nexport class XSelectComponent extends XSelectProperty implements OnInit, OnChanges {\r\n @ViewChild('inputCom', { static: true }) inputCom: XInputComponent;\r\n @ViewChild('select', { static: true }) select: ElementRef;\r\n\r\n writeValue(value: any) {\r\n if (this.multiple && XIsEmpty(value)) {\r\n value = [];\r\n }\r\n this.value = value;\r\n this.setDisplayValue();\r\n this.valueChange.next(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n readonly = true;\r\n enter: boolean = false;\r\n showClearable: boolean = false;\r\n displayValue: any = '';\r\n nodes: XSelectNode[] = [];\r\n cloneNodes: XSelectNode[];\r\n portal: XPortalOverlayRef<XSelectPortalComponent>;\r\n icon: string = 'fto-chevron-down';\r\n iconSpin: boolean = false;\r\n box: DOMRect;\r\n protalHeight: number;\r\n maxNodes: number = 6;\r\n protalTobottom: boolean = true;\r\n asyncLoading = false;\r\n animating = false;\r\n valueTplContext: { $node: any; $isValue: boolean } = { $node: null, $isValue: true };\r\n valueChange: Subject<any> = new Subject();\r\n positionChange: Subject<any> = new Subject();\r\n closeSubject: Subject<void> = new Subject();\r\n keydownSubject: Subject<KeyboardEvent> = new Subject();\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n private cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n private overlay: Overlay,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.select.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n this.setSubject();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n XIsChange(changes.data) && this.setData();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setData() {\r\n if (this.async) return;\r\n XSetData<XSelectNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.nodes = x;\r\n this.setDisplayValue();\r\n this.setPortal();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(throttleTime(50), delay(50), takeUntil(this._unSubject)).subscribe((x) => {\r\n this.closePortal();\r\n });\r\n this.keydownSubject.pipe(throttleTime(50), takeUntil(this._unSubject)).subscribe((x) => {\r\n const keyCode = x.keyCode;\r\n if (!this.portalAttached() && [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, MAC_ENTER].includes(keyCode)) {\r\n this.showPortal();\r\n }\r\n if (this.portalAttached() && [ESCAPE].includes(keyCode)) {\r\n this.closeSubject.next();\r\n }\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled || !this.clearable) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.displayValue)) {\r\n this.icon = '';\r\n this.showClearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled || !this.clearable) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-chevron-down';\r\n this.showClearable = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value = '';\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n this.mleave();\r\n this.valueChange.next(this.value);\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n setDisplayValue() {\r\n if (this.nodes.length > 0) {\r\n if (this.multiple) {\r\n if (XIsEmpty(this.value)) {\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n } else {\r\n let nodes = this.nodes.filter((x) => !XIsEmpty(this.value.find((y: XSelectNode) => y.id === x.id)));\r\n this.displayValue = nodes.map((x) => x.label).join(',');\r\n this.valueTplContext.$node = [...nodes];\r\n }\r\n } else {\r\n let node = this.nodes.find((x) => x.id === this.value);\r\n if (node) {\r\n this.displayValue = node.label;\r\n this.valueTplContext.$node = node;\r\n } else {\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n }\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.cdr.detectChanges();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portal?.overlayRef?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabled || this.iconSpin) return;\r\n if (this.animating) return;\r\n if (this.async && XIsObservable(this.data) && this.nodes.length === 0) {\r\n this.icon = 'fto-loader';\r\n this.iconSpin = true;\r\n this.cdr.detectChanges();\r\n XSetData<XSelectNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.nodes = x;\r\n this.setDisplayValue();\r\n this.createPortal();\r\n this.icon = 'fto-chevron-down';\r\n this.iconSpin = false;\r\n this.cdr.detectChanges();\r\n });\r\n } else {\r\n this.createPortal();\r\n }\r\n this.inputCom.inputFocus();\r\n }\r\n\r\n createPortal() {\r\n this.nodes.filter((x) => x.selected).map((x) => (x.selected = false));\r\n this.box = this.inputCom.inputElement.nativeElement.getBoundingClientRect();\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n width: this.box.width,\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XSelectPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this._unSubject))\r\n .subscribe(() => {\r\n this.setDisplayValue();\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XPositionTopBottom;\r\n place !== this.placement && this.positionChange.next(place);\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal.componentRef;\r\n if (!componentRef) return;\r\n Object.assign(componentRef.instance, {\r\n data: this.nodes,\r\n value: this.value,\r\n placement: this.placement,\r\n multiple: this.multiple === true ? 0 : 1,\r\n nodeTpl: this.nodeTpl,\r\n valueChange: this.valueChange,\r\n positionChange: this.positionChange,\r\n closeSubject: this.closeSubject,\r\n keydownSubject: this.keydownSubject,\r\n destroyPortal: () => this.destroyPortal(),\r\n nodeEmit: (node: XSelectNode) => this.nodeClick(node),\r\n animating: (ing: boolean) => (this.animating = ing)\r\n });\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n nodeClick(node: XSelectNode | XSelectNode[]) {\r\n if (this.multiple && XIsArray(node)) {\r\n node = node as XSelectNode[];\r\n this.value = node;\r\n this.setDisplayValue();\r\n } else {\r\n node = node as XSelectNode;\r\n this.displayValue = node.label;\r\n this.valueTplContext.$node = node;\r\n this.value = node.id;\r\n this.closeSubject.next();\r\n }\r\n if (this.onChange) this.onChange(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom.inputElement,\r\n placement: [this.placement, 'bottom', 'top'],\r\n transformOriginOn: 'x-select-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n this.portalAttached() && this.portal?.overlayRef?.updatePositionStrategy(this.setPlacement());\r\n }\r\n\r\n formControlChanges() {\r\n this.setData();\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onKeydown($event: KeyboardEvent) {\r\n this.keydownSubject.next($event);\r\n if ($event.keyCode !== TAB) $event.preventDefault();\r\n }\r\n\r\n onFocus($event: Event) {\r\n this.inputCom.inputFocus();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XSelectComponent } from './select.component';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XListModule } from '@ng-nest/ui/list';\r\nimport { XSelectPortalComponent } from './select-portal.component';\r\nimport { XSelectProperty } from './select.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XSelectComponent, XSelectPortalComponent, XSelectProperty],\r\n exports: [XSelectComponent, XSelectPortalComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, XPortalModule, XInputModule, XListModule, XBaseFormModule],\r\n entryComponents: [XSelectPortalComponent]\r\n})\r\nexport class XSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-select.js","sources":["../../../../lib/ng-nest/ui/select/select.property.ts","../../../../lib/ng-nest/ui/select/select-portal.component.ts","../../../../lib/ng-nest/ui/select/select.component.ts","../../../../lib/ng-nest/ui/select/select.module.ts","../../../../lib/ng-nest/ui/select/ng-nest-ui-select.ts"],"sourcesContent":["import {\r\n XParentIdentityProperty,\r\n XDataConvert,\r\n XInputBoolean,\r\n XData,\r\n XBoolean,\r\n XWithConfig,\r\n XPositionTopBottom\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Component, TemplateRef } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Select\r\n * @selector x-select\r\n * @decorator component\r\n */\r\nexport const XSelectPrefix = 'x-select';\r\nconst X_CONFIG_NAME = 'select';\r\n\r\n/**\r\n * Select Property\r\n */\r\n@Component({ template: '' })\r\nexport class XSelectProperty extends XControlValueAccessor<any> {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() @XDataConvert() data: XData<XSelectNode> = [];\r\n /**\r\n * @zh_CN 清除按钮\r\n * @en_US Clear button\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) @XInputBoolean() clearable?: XBoolean;\r\n /**\r\n * @zh_CN 异步加载\r\n * @en_US Asynchronous loading\r\n */\r\n @Input() @XInputBoolean() async?: XBoolean;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n @Input() @XWithConfig<XPositionTopBottom>(X_CONFIG_NAME, 'bottom') placement?: XPositionTopBottom;\r\n /**\r\n * @zh_CN 多选功能\r\n * @en_US Multiple choice\r\n */\r\n @Input() @XInputBoolean() multiple?: XBoolean;\r\n /**\r\n * @zh_CN 节点模板\r\n * @en_US Node template\r\n */\r\n @Input() nodeTpl?: TemplateRef<any>;\r\n}\r\n\r\n/**\r\n * Select Option\r\n * @undocument true\r\n */\r\nexport interface XSelectOption extends XFormOption {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n data?: XData<XSelectNode>;\r\n /**\r\n * @zh_CN 异步加载\r\n * @en_US Asynchronous loading\r\n */\r\n async?: XBoolean;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XPositionTopBottom;\r\n /**\r\n * @zh_CN 多选功能\r\n * @en_US Multiple choice\r\n */\r\n multiple?: XBoolean;\r\n}\r\n\r\n/**\r\n * @zh_CN Select 数据对象\r\n * @en_US Select data object\r\n */\r\nexport interface XSelectNode extends XParentIdentityProperty<XSelectNode> {}\r\n\r\n/**\r\n * Select Portal\r\n * @selector x-select-portal\r\n * @decorator component\r\n */\r\nexport const XSelectPortalPrefix = 'x-select-portal';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnDestroy,\r\n Renderer2,\r\n HostBinding,\r\n HostListener,\r\n TemplateRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XSelectNode, XSelectPortalPrefix } from './select.property';\r\nimport { Subject } from 'rxjs';\r\nimport { XConnectBaseAnimation, XNumber, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XListComponent } from '@ng-nest/ui/list';\r\n\r\n@Component({\r\n selector: `${XSelectPortalPrefix}`,\r\n templateUrl: './select-portal.component.html',\r\n styleUrls: ['./select-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XSelectPortalComponent implements OnInit, OnDestroy {\r\n @HostBinding('@x-connect-base-animation') public placement!: XPositionTopBottom;\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done(event: { toState: any }) {\r\n this.animating(false);\r\n event.toState === 'void' && this.destroyPortal();\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start(event: { toState: any }) {\r\n this.animating(true);\r\n }\r\n\r\n @ViewChild('list') list!: XListComponent;\r\n\r\n data!: XSelectNode[];\r\n value: any;\r\n valueChange!: Subject<any>;\r\n positionChange!: Subject<any>;\r\n animating!: Function;\r\n activeChange!: Function;\r\n destroyPortal!: Function;\r\n closeSubject!: Subject<void>;\r\n keydownSubject!: Subject<KeyboardEvent>;\r\n nodeEmit!: Function;\r\n multiple: XNumber = 1;\r\n nodeTpl!: TemplateRef<any>;\r\n show: boolean = false;\r\n active: number = -1;\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(public renderer: Renderer2, public cdr: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.value = x;\r\n this.cdr.detectChanges();\r\n });\r\n this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.placement = x;\r\n this.cdr.detectChanges();\r\n });\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.list.setUnActive(this.active);\r\n });\r\n this.keydownSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.list.keydown(x);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n nodeClick(node: XSelectNode) {\r\n if (this.multiple === 0) this.nodeEmit(this.value);\r\n else this.nodeEmit(node);\r\n }\r\n\r\n onActive(num: number) {\r\n this.active = num;\r\n }\r\n\r\n onTabOut() {\r\n this.closeSubject.next();\r\n }\r\n}\r\n","import { Subject } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewContainerRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XSelectNode, XSelectProperty, XSelectPrefix } from './select.property';\r\nimport { XIsEmpty, XIsObservable, XIsChange, XSetData, XClearClass, XConfigService, XIsArray, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { XSelectPortalComponent } from './select-portal.component';\r\nimport { Overlay, FlexibleConnectedPositionStrategy, ConnectedOverlayPositionChange, OverlayConfig } from '@angular/cdk/overlay';\r\nimport { delay, takeUntil, throttleTime } from 'rxjs/operators';\r\nimport { DOWN_ARROW, UP_ARROW, ENTER, MAC_ENTER, TAB, ESCAPE, LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XSelectPrefix}`,\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XSelectComponent)]\r\n})\r\nexport class XSelectComponent extends XSelectProperty implements OnInit, OnChanges {\r\n @ViewChild('inputCom', { static: true }) inputCom!: XInputComponent;\r\n @ViewChild('select', { static: true }) select!: ElementRef;\r\n\r\n writeValue(value: any) {\r\n if (this.multiple && XIsEmpty(value)) {\r\n value = [];\r\n }\r\n this.value = value;\r\n this.setDisplayValue();\r\n this.valueChange.next(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n readonly = true;\r\n enter: boolean = false;\r\n showClearable: boolean = false;\r\n displayValue: any = '';\r\n nodes: XSelectNode[] = [];\r\n cloneNodes!: XSelectNode[];\r\n portal!: XPortalOverlayRef<XSelectPortalComponent>;\r\n icon: string = 'fto-chevron-down';\r\n iconSpin: boolean = false;\r\n box!: DOMRect;\r\n protalHeight!: number;\r\n maxNodes: number = 6;\r\n protalTobottom: boolean = true;\r\n asyncLoading = false;\r\n animating = false;\r\n valueTplContext: { $node: any; $isValue: boolean } = { $node: null, $isValue: true };\r\n valueChange: Subject<any> = new Subject();\r\n positionChange: Subject<any> = new Subject();\r\n closeSubject: Subject<void> = new Subject();\r\n keydownSubject: Subject<KeyboardEvent> = new Subject();\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n private cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n private overlay: Overlay,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.select.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n this.setSubject();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n XIsChange(changes.data) && this.setData();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setData() {\r\n if (this.async) return;\r\n XSetData<XSelectNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.nodes = x;\r\n this.setDisplayValue();\r\n this.setPortal();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.closePortal();\r\n });\r\n this.keydownSubject.pipe(throttleTime(10), takeUntil(this._unSubject)).subscribe((x) => {\r\n const keyCode = x.keyCode;\r\n if (!this.portalAttached() && [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, MAC_ENTER].includes(keyCode)) {\r\n this.showPortal();\r\n }\r\n if (this.portalAttached() && [ESCAPE].includes(keyCode)) {\r\n this.closeSubject.next();\r\n }\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled || !this.clearable) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.displayValue)) {\r\n this.icon = '';\r\n this.showClearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled || !this.clearable) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-chevron-down';\r\n this.showClearable = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value = '';\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n this.mleave();\r\n this.valueChange.next(this.value);\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n setDisplayValue() {\r\n if (this.nodes.length > 0) {\r\n if (this.multiple) {\r\n if (XIsEmpty(this.value)) {\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n } else {\r\n let nodes = this.nodes.filter((x) => !XIsEmpty(this.value.find((y: XSelectNode) => y.id === x.id)));\r\n this.displayValue = nodes.map((x) => x.label).join(',');\r\n this.valueTplContext.$node = [...nodes];\r\n }\r\n } else {\r\n let node = this.nodes.find((x) => x.id === this.value);\r\n if (node) {\r\n this.displayValue = node.label;\r\n this.valueTplContext.$node = node;\r\n } else {\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n }\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.cdr.detectChanges();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portal?.overlayRef?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabled || this.iconSpin) return;\r\n if (this.animating) return;\r\n if (this.async && XIsObservable(this.data) && this.nodes.length === 0) {\r\n this.icon = 'fto-loader';\r\n this.iconSpin = true;\r\n this.cdr.detectChanges();\r\n XSetData<XSelectNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.nodes = x;\r\n this.setDisplayValue();\r\n this.createPortal();\r\n this.icon = 'fto-chevron-down';\r\n this.iconSpin = false;\r\n this.cdr.detectChanges();\r\n });\r\n } else {\r\n this.createPortal();\r\n }\r\n this.inputCom.inputFocus();\r\n }\r\n\r\n createPortal() {\r\n this.nodes.filter((x) => x.selected).map((x) => (x.selected = false));\r\n this.box = this.inputCom.inputElement.nativeElement.getBoundingClientRect();\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n width: this.box.width,\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XSelectPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this._unSubject))\r\n .subscribe(() => {\r\n this.setDisplayValue();\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XPositionTopBottom;\r\n place !== this.placement && this.positionChange.next(place);\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal.componentRef;\r\n if (!componentRef) return;\r\n Object.assign(componentRef.instance, {\r\n data: this.nodes,\r\n value: this.value,\r\n placement: this.placement,\r\n multiple: this.multiple === true ? 0 : 1,\r\n nodeTpl: this.nodeTpl,\r\n valueChange: this.valueChange,\r\n positionChange: this.positionChange,\r\n closeSubject: this.closeSubject,\r\n keydownSubject: this.keydownSubject,\r\n destroyPortal: () => this.destroyPortal(),\r\n nodeEmit: (node: XSelectNode) => this.nodeClick(node),\r\n animating: (ing: boolean) => (this.animating = ing)\r\n });\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n nodeClick(node: XSelectNode | XSelectNode[]) {\r\n if (this.multiple && XIsArray(node)) {\r\n node = node as XSelectNode[];\r\n this.value = node;\r\n this.setDisplayValue();\r\n } else {\r\n node = node as XSelectNode;\r\n this.displayValue = node.label;\r\n this.valueTplContext.$node = node;\r\n this.value = node.id;\r\n this.closeSubject.next();\r\n }\r\n if (this.onChange) this.onChange(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom.inputElement,\r\n placement: [this.placement as XPositionTopBottom, 'bottom', 'top'],\r\n transformOriginOn: 'x-select-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n this.portalAttached() && this.portal?.overlayRef?.updatePositionStrategy(this.setPlacement());\r\n }\r\n\r\n formControlChanges() {\r\n this.setData();\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onKeydown($event: KeyboardEvent) {\r\n this.keydownSubject.next($event);\r\n if ($event.keyCode !== TAB) $event.preventDefault();\r\n }\r\n\r\n onFocus($event: Event) {\r\n this.inputCom.inputFocus();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XSelectComponent } from './select.component';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XListModule } from '@ng-nest/ui/list';\r\nimport { XSelectPortalComponent } from './select-portal.component';\r\nimport { XSelectProperty } from './select.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XSelectComponent, XSelectPortalComponent, XSelectProperty],\r\n exports: [XSelectComponent, XSelectPortalComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, XPortalModule, XInputModule, XListModule, XBaseFormModule],\r\n entryComponents: [XSelectPortalComponent]\r\n})\r\nexport class XSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAYA;;;;;MAKa,aAAa,GAAG,WAAW;AACxC,MAAM,aAAa,GAAG,QAAQ,CAAC;AAE/B;;;MAIa,eAAgB,SAAQ,qBAA0B;IAD/D;;;;;;QAM2B,SAAI,GAAuB,EAAE,CAAC;KA0BxD;;;YAhCA,SAAS,SAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;;;mBAMxB,KAAK;wBAKL,KAAK;oBAKL,KAAK;wBAKL,KAAK;uBAKL,KAAK;sBAKL,KAAK;;AAzBmB;IAAf,YAAY,EAAE;;6CAA+B;AAKe;IAA5D,WAAW,CAAW,aAAa,EAAE,IAAI,CAAC;IAAE,aAAa,EAAE;;kDAAsB;AAKjE;IAAhB,aAAa,EAAE;;8CAAkB;AAKwB;IAAzD,WAAW,CAAqB,aAAa,EAAE,QAAQ,CAAC;;kDAAgC;AAKxE;IAAhB,aAAa,EAAE;;iDAAqB;AAyChD;;;;;MAKa,mBAAmB,GAAG;;MCpEtB,sBAAsB;IA4BjC,YAAmB,QAAmB,EAAS,GAAsB;QAAlD,aAAQ,GAAR,QAAQ,CAAW;QAAS,QAAG,GAAH,GAAG,CAAmB;QANrE,aAAQ,GAAY,CAAC,CAAC;QAEtB,SAAI,GAAY,KAAK,CAAC;QACtB,WAAM,GAAW,CAAC,CAAC,CAAC;QACZ,eAAU,GAAG,IAAI,OAAO,EAAQ,CAAC;KAEgC;IA1Bb,IAAI,CAAC,KAAuB;QACtF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACtB,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;KAClD;IAC4D,KAAK,CAAC,KAAuB;QACxF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;KACtB;IAsBD,QAAQ;QACN,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACtB,CAAC,CAAC;KACJ;IAED,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;KAC/B;IAED,eAAe,CAAC,KAAY;QAC1B,KAAK,CAAC,eAAe,EAAE,CAAC;KACzB;IAED,SAAS,CAAC,IAAiB;QACzB,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;YAC9C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC1B;IAED,QAAQ,CAAC,GAAW;QAClB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;KACnB;IAED,QAAQ;QACN,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;;;YA3EF,SAAS,SAAC;gBACT,QAAQ,EAAE,GAAG,mBAAmB,EAAE;gBAClC,qeAA6C;gBAE7C,aAAa,EAAE,iBAAiB,CAAC,IAAI;gBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;gBAC/C,UAAU,EAAE,CAAC,qBAAqB,CAAC;;aACpC;;;;YAnBC,SAAS;YAHT,iBAAiB;;;wBAwBhB,WAAW,SAAC,2BAA2B;mBACvC,YAAY,SAAC,gCAAgC,EAAE,CAAC,QAAQ,CAAC;oBAIzD,YAAY,SAAC,iCAAiC,EAAE,CAAC,QAAQ,CAAC;mBAI1D,SAAS,SAAC,MAAM;;;MCLN,gBAAiB,SAAQ,eAAe;IAoCnD,YACS,QAAmB,EAClB,GAAsB,EACtB,aAA6B,EAC7B,gBAAkC,EAClC,OAAgB,EACjB,aAA6B;QAEpC,KAAK,EAAE,CAAC;QAPD,aAAQ,GAAR,QAAQ,CAAW;QAClB,QAAG,GAAH,GAAG,CAAmB;QACtB,kBAAa,GAAb,aAAa,CAAgB;QAC7B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,YAAO,GAAP,OAAO,CAAS;QACjB,kBAAa,GAAb,aAAa,CAAgB;QA5BtC,aAAQ,GAAG,IAAI,CAAC;QAChB,UAAK,GAAY,KAAK,CAAC;QACvB,kBAAa,GAAY,KAAK,CAAC;QAC/B,iBAAY,GAAQ,EAAE,CAAC;QACvB,UAAK,GAAkB,EAAE,CAAC;QAG1B,SAAI,GAAW,kBAAkB,CAAC;QAClC,aAAQ,GAAY,KAAK,CAAC;QAG1B,aAAQ,GAAW,CAAC,CAAC;QACrB,mBAAc,GAAY,IAAI,CAAC;QAC/B,iBAAY,GAAG,KAAK,CAAC;QACrB,cAAS,GAAG,KAAK,CAAC;QAClB,oBAAe,GAAsC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACrF,gBAAW,GAAiB,IAAI,OAAO,EAAE,CAAC;QAC1C,mBAAc,GAAiB,IAAI,OAAO,EAAE,CAAC;QAC7C,iBAAY,GAAkB,IAAI,OAAO,EAAE,CAAC;QAC5C,mBAAc,GAA2B,IAAI,OAAO,EAAE,CAAC;QAC/C,eAAU,GAAG,IAAI,OAAO,EAAQ,CAAC;KAWxC;IAzCD,UAAU,CAAC,KAAU;QACnB,IAAI,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACpC,KAAK,GAAG,EAAE,CAAC;SACZ;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAmCD,QAAQ;QACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAED,WAAW,CAAC,OAAsB;QAChC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;KAC3C;IAED,eAAe;QACb,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;IAED,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;KAC/B;IAED,WAAW;QACT,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,KAAK,CAAC;KACnF;IAED,OAAO;QACL,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO;QACvB,QAAQ,CAAc,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACf,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B,CAAC,CAAC;KACJ;IAED,UAAU;QACR,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACjF,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBACjH,IAAI,CAAC,UAAU,EAAE,CAAC;aACnB;YACD,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBACvD,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC,CAAC;KACJ;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC7C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAChC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC7C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;YAC/B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAED,SAAS;QACP,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC9C;IAED,eAAe;QACb,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACxB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;oBACvB,IAAI,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC;iBACnC;qBAAM;oBACL,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAc,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACpG,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACxD,IAAI,CAAC,eAAe,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;iBACzC;aACF;iBAAM;gBACL,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvD,IAAI,IAAI,EAAE;oBACR,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC;oBAC/B,IAAI,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC;iBACnC;qBAAM;oBACL,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;oBACvB,IAAI,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC;iBACnC;aACF;YACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAED,cAAc;;QACZ,mBAAO,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,WAAW,GAAG;KAC/C;IAED,WAAW;;QACT,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,YAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,MAAM,GAAG;YAClC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;KACd;IAED,aAAa;;QACX,YAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,OAAO,GAAG;KACpC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC3C,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,IAAI,CAAC,KAAK,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACrE,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;YACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,QAAQ,CAAc,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;gBACf,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;gBAC/B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;aAC1B,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,YAAY,EAAE,CAAC;SACrB;QACD,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;KAC5B;IAED,YAAY;;QACV,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;QAC5E,MAAM,MAAM,GAAkB;YAC5B,aAAa,EAAE,EAAE;YACjB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK;YACrB,gBAAgB,EAAE,IAAI,CAAC,YAAY,EAAE;YACrC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE;SAC3D,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;YACtC,OAAO,EAAE,sBAAsB;YAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,aAAa,EAAE,MAAM;SACtB,CAAC,CAAC;QACH,MAAA,IAAI,CAAC,MAAM,CAAC,UAAU,0CAClB,oBAAoB,GACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAC/B,SAAS,CAAC;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B,EAAE;QACL,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW,CAAC,MAAqB;QAC/B,IAAI,QAAQ,GAAG,MAAM,CAAC,gBAAqD,CAAC;QAC5E,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAmC;YACtG,MAAM,KAAK,GAAG,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,CAAuB,CAAC;YACrF,KAAK,KAAK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC7D,CAAC,CAAC;KACJ;IAED,WAAW;QACT,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE;YACnC,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC;YACxC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,aAAa,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE;YACzC,QAAQ,EAAE,CAAC,IAAiB,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YACrD,SAAS,EAAE,CAAC,GAAY,MAAM,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;SACpD,CAAC,CAAC;QACH,YAAY,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;KAChD;IAED,SAAS,CAAC,IAAiC;QACzC,IAAI,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;YACnC,IAAI,GAAG,IAAqB,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;aAAM;YACL,IAAI,GAAG,IAAmB,CAAC;YAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B;QACD,IAAI,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,YAAY;QACV,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;YACtC,SAAS,EAAE,CAAC,IAAI,CAAC,SAA+B,EAAE,QAAQ,EAAE,KAAK,CAAC;YAClE,iBAAiB,EAAE,iBAAiB;SACrC,CAAC,CAAC;KACJ;IAED,SAAS;;QACP,IAAI,CAAC,cAAc,EAAE,iBAAI,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,sBAAsB,CAAC,IAAI,CAAC,YAAY,EAAE,EAAC,CAAC;KAC/F;IAED,kBAAkB;QAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,SAAS,CAAC,MAAqB;QAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,OAAO,KAAK,GAAG;YAAE,MAAM,CAAC,cAAc,EAAE,CAAC;KACrD;IAED,OAAO,CAAC,MAAa;QACnB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;KAC5B;;;YAlSF,SAAS,SAAC;gBACT,QAAQ,EAAE,GAAG,aAAa,EAAE;gBAC5B,ohCAAsC;gBAEtC,aAAa,EAAE,iBAAiB,CAAC,IAAI;gBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;gBAC/C,SAAS,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;;aAC9C;;;;YAxBC,SAAS;YADT,iBAAiB;YAUV,cAAc;YALrB,gBAAgB;YAQT,OAAO;YAJoD,cAAc;;;uBAkB/E,SAAS,SAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;qBACtC,SAAS,SAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;MCjB1B,aAAa;;;YANzB,QAAQ,SAAC;gBACR,YAAY,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,eAAe,CAAC;gBACzE,OAAO,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;gBACnD,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,CAAC;gBACpH,eAAe,EAAE,CAAC,sBAAsB,CAAC;aAC1C;;;AChBD;;;;;;"}
|
|
@@ -75,7 +75,7 @@ class XSkeletonComponent extends XSkeletonProperty {
|
|
|
75
75
|
XSkeletonComponent.decorators = [
|
|
76
76
|
{ type: Component, args: [{
|
|
77
77
|
selector: `${XSkeletonPrefix}`,
|
|
78
|
-
template: "<ng-container *ngIf=\"!loading\">\r\n <ng-content></ng-content>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loading\">\r\n <div #skeleton class=\"x-skeleton\" [ngClass]=\"classMap\">\r\n <ng-container *ngTemplateOutlet=\"rowsTpl; context: { rows: data }\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-template #rowsTpl let-rows=\"rows\">\r\n <x-row *ngFor=\"let row of rows\" [space]=\"row.space\" [justify]=\"row.flex ? 'start' :
|
|
78
|
+
template: "<ng-container *ngIf=\"!loading\">\r\n <ng-content></ng-content>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loading\">\r\n <div #skeleton class=\"x-skeleton\" [ngClass]=\"classMap\">\r\n <ng-container *ngTemplateOutlet=\"rowsTpl; context: { rows: data }\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-template #rowsTpl let-rows=\"rows\">\r\n <x-row *ngFor=\"let row of rows\" [space]=\"row.space\" [justify]=\"row.flex ? 'start' : undefined\" [ngStyle]=\"row.style\">\r\n <x-col\r\n *ngFor=\"let col of row.cols\"\r\n [span]=\"col.span\"\r\n [inherit]=\"col.width || col.height ? true : false\"\r\n [ngStyle]=\"col.style\"\r\n [style.padding-top.rem]=\"border && row.space / 2\"\r\n [style.padding-bottom.rem]=\"border && row.space / 2\"\r\n [ngClass]=\"{\r\n title: col.type === 'title',\r\n img: col.type === 'img',\r\n avatar: col.type === 'avatar',\r\n transparent: col.type === 'transparent',\r\n 'has-child': col.rows\r\n }\"\r\n >\r\n <div [style.width]=\"col.width\" [style.height]=\"col.height\">\r\n <ng-container *ngIf=\"col.rows\">\r\n <ng-container *ngTemplateOutlet=\"rowsTpl; context: { rows: col.rows }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </x-col>\r\n </x-row>\r\n</ng-template>\r\n",
|
|
79
79
|
encapsulation: ViewEncapsulation.None,
|
|
80
80
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
81
81
|
styles: ["@keyframes skeleton-active{0%{width:0;opacity:.1}20%{width:0;opacity:.5}to{width:100%;opacity:0}}.x-skeleton{margin:0;padding:0}.x-skeleton x-col,.x-skeleton x-row{min-height:1rem}.x-skeleton x-row{background-color:var(--x-background)}.x-skeleton x-row:not(:first-child){margin-top:1rem}.x-skeleton x-col>div{width:100%;height:1rem;background-color:var(--x-info-800);border-radius:var(--x-border-radius);position:relative}.x-skeleton x-col.has-child>div{background-color:initial}.x-skeleton x-col.has-size{width:inherit}.x-skeleton x-col.avatar>div{border-radius:50%}.x-skeleton x-col.avatar>div,.x-skeleton x-col.img>div,.x-skeleton x-col.title>div{background-color:var(--x-info-700)}.x-skeleton x-col.transparent{padding:0!important}.x-skeleton x-col.transparent>div{background-color:initial}.x-skeleton-border x-row{margin:0!important}.x-skeleton-border x-row x-col{border-left:.0625rem solid var(--x-border);border-bottom:.0625rem solid var(--x-border)}.x-skeleton-border x-row x-col:last-child{border-right:.0625rem solid var(--x-border)}.x-skeleton-border x-row:first-child x-col{border-top:.0625rem solid var(--x-border)}.x-skeleton-active x-col:not(.has-child):not(.transparent)>div:before{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--x-background-100);border-radius:var(--x-border-radius);opacity:0;animation:skeleton-active 1.4s cubic-bezier(.23,1,.32,1) infinite;content:\"\"}"]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-skeleton.js","sources":["../../../../lib/ng-nest/ui/skeleton/skeleton.property.ts","../../../../lib/ng-nest/ui/skeleton/skeleton.component.ts","../../../../lib/ng-nest/ui/skeleton/skeleton.module.ts","../../../../lib/ng-nest/ui/skeleton/ng-nest-ui-skeleton.ts"],"sourcesContent":["import { XProperty, XInputBoolean, XStyle, XBoolean } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Skeleton\r\n * @selector x-skeleton\r\n * @decorator component\r\n */\r\nexport const XSkeletonPrefix = 'x-skeleton';\r\n\r\n/**\r\n * Skeleton Property\r\n */\r\n@Component({ template: '' })\r\nexport class XSkeletonProperty extends XProperty {\r\n /**\r\n * @zh_CN 骨架数据\r\n * @en_US Skeleton data\r\n */\r\n @Input() data: XSkeletonRow[] = [{ cols: [{ width: '10rem', type: 'title' }] }, { cols: [{}] }, { cols: [{}] }, { cols: [{ span: 16 }] }];\r\n /**\r\n * @zh_CN 加载中\r\n * @en_US Loading\r\n */\r\n @Input() @XInputBoolean() loading: XBoolean = true;\r\n /**\r\n * @zh_CN 激活动画\r\n * @en_US Activate animation\r\n */\r\n @Input() @XInputBoolean() active
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-skeleton.js","sources":["../../../../lib/ng-nest/ui/skeleton/skeleton.property.ts","../../../../lib/ng-nest/ui/skeleton/skeleton.component.ts","../../../../lib/ng-nest/ui/skeleton/skeleton.module.ts","../../../../lib/ng-nest/ui/skeleton/ng-nest-ui-skeleton.ts"],"sourcesContent":["import { XProperty, XInputBoolean, XStyle, XBoolean } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Skeleton\r\n * @selector x-skeleton\r\n * @decorator component\r\n */\r\nexport const XSkeletonPrefix = 'x-skeleton';\r\n\r\n/**\r\n * Skeleton Property\r\n */\r\n@Component({ template: '' })\r\nexport class XSkeletonProperty extends XProperty {\r\n /**\r\n * @zh_CN 骨架数据\r\n * @en_US Skeleton data\r\n */\r\n @Input() data: XSkeletonRow[] = [{ cols: [{ width: '10rem', type: 'title' }] }, { cols: [{}] }, { cols: [{}] }, { cols: [{ span: 16 }] }];\r\n /**\r\n * @zh_CN 加载中\r\n * @en_US Loading\r\n */\r\n @Input() @XInputBoolean() loading: XBoolean = true;\r\n /**\r\n * @zh_CN 激活动画\r\n * @en_US Activate animation\r\n */\r\n @Input() @XInputBoolean() active?: XBoolean;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Show border\r\n */\r\n @Input() @XInputBoolean() border?: XBoolean;\r\n}\r\n\r\n/**\r\n * @zh_CN 行\r\n * @en_US Row\r\n */\r\nexport interface XSkeletonRow {\r\n /**\r\n * @zh_CN 列\r\n * @en_US Column\r\n */\r\n cols?: XSkeletonCol[];\r\n /**\r\n * @zh_CN flex 布局\r\n * @en_US flex layout\r\n */\r\n flex?: boolean;\r\n /**\r\n * @zh_CN 列间距\r\n * @en_US Column spacing\r\n */\r\n space?: number;\r\n /**\r\n * @zh_CN 外边距\r\n * @en_US Margin\r\n */\r\n margin?: string;\r\n /**\r\n * @zh_CN 样式\r\n * @en_US Style\r\n */\r\n style?: XStyle;\r\n}\r\n\r\n/**\r\n * @zh_CN 列\r\n * @en_US Column\r\n */\r\nexport interface XSkeletonCol {\r\n /**\r\n * @zh_CN 24栅格布局,列占的宽度\r\n * @en_US 24 grid layout, column width\r\n */\r\n span?: number;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 列类型\r\n * @en_US Column type\r\n */\r\n type?: XSkeletonType;\r\n /**\r\n * @zh_CN 子集\r\n * @en_US Rows\r\n */\r\n rows?: XSkeletonRow[];\r\n /**\r\n * @zh_CN 样式\r\n * @en_US Style\r\n */\r\n style?: XStyle;\r\n}\r\n\r\n/**\r\n * @zh_CN 列类型\r\n * @en_US Column type\r\n */\r\nexport type XSkeletonType = 'title' | 'img' | 'avatar' | 'transparent';\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges\r\n} from '@angular/core';\r\nimport { XSkeletonPrefix, XSkeletonProperty } from './skeleton.property';\r\nimport { XIsChange, XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XSkeletonPrefix}`,\r\n templateUrl: './skeleton.component.html',\r\n styleUrls: ['./skeleton.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XSkeletonComponent extends XSkeletonProperty implements OnInit, OnChanges {\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n XIsChange(changes.loading) && this.cdr.markForCheck();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap = {\r\n [`${XSkeletonPrefix}-active`]: Boolean(this.active),\r\n [`${XSkeletonPrefix}-border`]: Boolean(this.border)\r\n };\r\n this.cdr.markForCheck();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XSkeletonComponent } from './skeleton.component';\r\nimport { XLayoutModule } from '@ng-nest/ui/layout';\r\nimport { XSkeletonProperty } from './skeleton.property';\r\n\r\n@NgModule({\r\n declarations: [XSkeletonComponent, XSkeletonProperty],\r\n exports: [XSkeletonComponent],\r\n imports: [CommonModule, XLayoutModule]\r\n})\r\nexport class XSkeletonModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAGA;;;;;MAKa,eAAe,GAAG,aAAa;AAE5C;;;MAIa,iBAAkB,SAAQ,SAAS;IADhD;;;;;;QAMW,SAAI,GAAmB,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;;;;;QAKhH,YAAO,GAAa,IAAI,CAAC;KAWpD;;;YAtBA,SAAS,SAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;;;mBAMxB,KAAK;sBAKL,KAAK;qBAKL,KAAK;qBAKL,KAAK;;AAVoB;IAAhB,aAAa,EAAE;;kDAA0B;AAKzB;IAAhB,aAAa,EAAE;;iDAAmB;AAKlB;IAAhB,aAAa,EAAE;;iDAAmB;;MCbjC,kBAAmB,SAAQ,iBAAiB;IACvD,YACS,QAAmB,EACnB,UAAsB,EACtB,GAAsB,EACtB,aAA6B;QAEpC,KAAK,EAAE,CAAC;QALD,aAAQ,GAAR,QAAQ,CAAW;QACnB,eAAU,GAAV,UAAU,CAAY;QACtB,QAAG,GAAH,GAAG,CAAmB;QACtB,kBAAa,GAAb,aAAa,CAAgB;KAGrC;IAED,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW,CAAC,OAAsB;QAChC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACvD;IAED,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG;YACd,CAAC,GAAG,eAAe,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACnD,CAAC,GAAG,eAAe,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SACpD,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;;;YA/BF,SAAS,SAAC;gBACT,QAAQ,EAAE,GAAG,eAAe,EAAE;gBAC9B,w1CAAwC;gBAExC,aAAa,EAAE,iBAAiB,CAAC,IAAI;gBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;;aAChD;;;;YAhBC,SAAS;YACT,UAAU;YACV,iBAAiB;YAMC,cAAc;;;MCDrB,eAAe;;;YAL3B,QAAQ,SAAC;gBACR,YAAY,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,CAAC;gBACrD,OAAO,EAAE,CAAC,kBAAkB,CAAC;gBAC7B,OAAO,EAAE,CAAC,YAAY,EAAE,aAAa,CAAC;aACvC;;;ACVD;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-slider-select.js","sources":["../../../../lib/ng-nest/ui/slider-select/slider-select.property.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.component.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.module.ts","../../../../lib/ng-nest/ui/slider-select/ng-nest-ui-slider-select.ts"],"sourcesContent":["import { XInputNumber, XNumber } from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\nimport { CdkDragStart, CdkDragMove, CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * SliderSelect\r\n * @selector x-slider-select\r\n * @decorator component\r\n */\r\nexport const XSliderSelectPrefix = 'x-slider-select';\r\n\r\n/**\r\n * SliderSelect Property\r\n */\r\n@Component({ template: '' })\r\nexport class XSliderSelectProperty extends XControlValueAccessor<number> implements XSliderSelectOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n @Input() @XInputNumber() min: XNumber = 0;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n @Input() @XInputNumber() max: XNumber = 100;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n @Input() @XInputNumber() step: XNumber = 1;\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n @Input() @XInputNumber() precision: XNumber;\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n @Output() dragStartEmit = new EventEmitter<CdkDragStart>();\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n @Output() dragMoveEmit = new EventEmitter<CdkDragMove>();\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n @Output() dragEndEmit = new EventEmitter<CdkDragEnd>();\r\n}\r\n\r\n/**\r\n * SliderSelect Option\r\n * @undocument true\r\n */\r\nexport interface XSliderSelectOption extends XFormOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n min?: XNumber;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n max?: XNumber;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n step?: XNumber;\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n precision?: XNumber;\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n dragStart?: (dragStart: CdkDragStart) => void;\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n dragMove?: (dragMove: CdkDragMove) => void;\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n dragEnd?: (dragEnd: CdkDragEnd) => void;\r\n}\r\n","import { XTooltipDirective } from '@ng-nest/ui/tooltip';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n ViewChild,\r\n OnDestroy,\r\n AfterViewInit\r\n} from '@angular/core';\r\nimport { XSliderSelectProperty, XSliderSelectPrefix } from './slider-select.property';\r\nimport { XIsEmpty, XIsUndefined, XResize, XClearClass, XConfigService } from '@ng-nest/ui/core';\r\nimport { CdkDragMove, CdkDragStart, CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XSliderSelectPrefix}`,\r\n templateUrl: './slider-select.component.html',\r\n styleUrls: ['./slider-select.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XSliderSelectComponent)]\r\n})\r\nexport class XSliderSelectComponent extends XSliderSelectProperty implements OnInit, OnDestroy, AfterViewInit {\r\n @ViewChild('sliderSelect', { static: true }) sliderSelect: ElementRef;\r\n @ViewChild('dragRef', { static: true }) dragRef: ElementRef;\r\n @ViewChild('railRef', { static: true }) railRef: ElementRef;\r\n @ViewChild('processRef', { static: true }) processRef: ElementRef;\r\n @ViewChild(XTooltipDirective, { static: true }) tooltip: XTooltipDirective;\r\n left: number = 0;\r\n visible: boolean = false;\r\n manual: boolean = false;\r\n start: number;\r\n value = 0;\r\n displayValue = '0';\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver: ResizeObserver;\r\n\r\n get getRequired() {\r\n return this.required && XIsEmpty(this.value);\r\n }\r\n\r\n writeValue(value: number) {\r\n if (value === null) value = 0;\r\n this.value = value;\r\n this.setLeft();\r\n this.setDisplayValue();\r\n }\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.sliderSelect.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setPrecision();\r\n this.setClassMap();\r\n }\r\n\r\n ngAfterViewInit() {\r\n XResize(this.sliderSelect.nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this._resizeObserver = x.resizeObserver;\r\n this.setLeft();\r\n this.setDisplayValue();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n change() {\r\n const val = Number(((Number(this.max) - Number(this.min)) * Number(this.left)) / 100 + Number(this.min)).toFixed(\r\n Number(this.precision)\r\n );\r\n this.value = parseFloat(val);\r\n this.setDisplayValue();\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setLeft() {\r\n this.left = Math.round(((this.value - Number(this.min)) * 100) / (Number(this.max) - Number(this.min)));\r\n const start = this.left;\r\n this.start = start;\r\n this.setDrag();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setDisplayValue() {\r\n this.displayValue = Number(this.value).toFixed(Number(this.precision));\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setPrecision() {\r\n if (XIsUndefined(this.precision) || !XIsEmpty(this.step)) {\r\n let stepStr = String(this.step);\r\n let indexpoint = stepStr.indexOf('.');\r\n if (indexpoint === -1) {\r\n this.precision = 0;\r\n } else {\r\n this.precision = stepStr.length - (indexpoint + 1);\r\n }\r\n }\r\n }\r\n\r\n started(drag: CdkDragStart) {\r\n const start = this.left;\r\n this.start = start;\r\n this.manual = true;\r\n this.visible = true;\r\n this.cdr.detectChanges();\r\n this.dragStartEmit.emit(drag);\r\n }\r\n\r\n moved(drag: CdkDragMove) {\r\n let transform = drag.source.getFreeDragPosition();\r\n this.setDrag(transform.x);\r\n drag.source.reset();\r\n this.tooltip.updatePortal();\r\n this.change();\r\n this.dragMoveEmit.emit(drag);\r\n }\r\n\r\n ended(drag: CdkDragEnd) {\r\n this.manual = false;\r\n this.visible = false;\r\n this.cdr.detectChanges();\r\n this.dragEndEmit.emit(drag);\r\n }\r\n\r\n setDrag(distance: number = 0) {\r\n let railBox = this.railRef.nativeElement.getBoundingClientRect();\r\n let stepWidth = railBox.width / ((Number(this.max) - Number(this.min)) / Number(this.step));\r\n let offset = Math.abs(distance % stepWidth);\r\n let dis =\r\n offset < stepWidth / 2\r\n ? distance > 0\r\n ? distance - offset\r\n : distance + offset\r\n : distance > 0\r\n ? distance + stepWidth - offset\r\n : distance - stepWidth + offset;\r\n let x = (this.start / 100) * railBox.width + dis;\r\n this.left = Math.round((x / railBox.width) * 100);\r\n this.renderer.setStyle(this.dragRef.nativeElement, 'left', `${this.left}%`);\r\n this.renderer.setStyle(this.processRef.nativeElement, 'width', `${this.left}%`);\r\n this.renderer.removeStyle(this.dragRef.nativeElement, 'transform');\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XSliderSelectComponent } from './slider-select.component';\r\nimport { XTooltipModule } from '@ng-nest/ui/tooltip';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XSliderSelectProperty } from './slider-select.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XSliderSelectComponent, XSliderSelectProperty],\r\n exports: [XSliderSelectComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule, XTooltipModule, XBaseFormModule]\r\n})\r\nexport class XSliderSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-slider-select.js","sources":["../../../../lib/ng-nest/ui/slider-select/slider-select.property.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.component.ts","../../../../lib/ng-nest/ui/slider-select/slider-select.module.ts","../../../../lib/ng-nest/ui/slider-select/ng-nest-ui-slider-select.ts"],"sourcesContent":["import { XInputNumber, XNumber } from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\nimport { CdkDragStart, CdkDragMove, CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * SliderSelect\r\n * @selector x-slider-select\r\n * @decorator component\r\n */\r\nexport const XSliderSelectPrefix = 'x-slider-select';\r\n\r\n/**\r\n * SliderSelect Property\r\n */\r\n@Component({ template: '' })\r\nexport class XSliderSelectProperty extends XControlValueAccessor<number> implements XSliderSelectOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n @Input() @XInputNumber() min: XNumber = 0;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n @Input() @XInputNumber() max: XNumber = 100;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n @Input() @XInputNumber() step: XNumber = 1;\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n @Input() @XInputNumber() precision?: XNumber;\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n @Output() dragStartEmit = new EventEmitter<CdkDragStart>();\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n @Output() dragMoveEmit = new EventEmitter<CdkDragMove>();\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n @Output() dragEndEmit = new EventEmitter<CdkDragEnd>();\r\n}\r\n\r\n/**\r\n * SliderSelect Option\r\n * @undocument true\r\n */\r\nexport interface XSliderSelectOption extends XFormOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n min?: XNumber;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n max?: XNumber;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n step?: XNumber;\r\n /**\r\n * @zh_CN 精度,默认根据步数来计算\r\n * @en_US Precision, calculated based on the number of steps by default\r\n */\r\n precision?: XNumber;\r\n /**\r\n * @zh_CN 开始拖动的事件\r\n * @en_US Start drag event\r\n */\r\n dragStart?: (dragStart: CdkDragStart) => void;\r\n /**\r\n * @zh_CN 按住移动中的事件\r\n * @en_US Hold down the moving event\r\n */\r\n dragMove?: (dragMove: CdkDragMove) => void;\r\n /**\r\n * @zh_CN 移动结束的事件\r\n * @en_US Mobile end event\r\n */\r\n dragEnd?: (dragEnd: CdkDragEnd) => void;\r\n}\r\n","import { XTooltipDirective } from '@ng-nest/ui/tooltip';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n ViewChild,\r\n OnDestroy,\r\n AfterViewInit\r\n} from '@angular/core';\r\nimport { XSliderSelectProperty, XSliderSelectPrefix } from './slider-select.property';\r\nimport { XIsEmpty, XIsUndefined, XResize, XClearClass, XConfigService } from '@ng-nest/ui/core';\r\nimport { CdkDragMove, CdkDragStart, CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XSliderSelectPrefix}`,\r\n templateUrl: './slider-select.component.html',\r\n styleUrls: ['./slider-select.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XSliderSelectComponent)]\r\n})\r\nexport class XSliderSelectComponent extends XSliderSelectProperty implements OnInit, OnDestroy, AfterViewInit {\r\n @ViewChild('sliderSelect', { static: true }) sliderSelect!: ElementRef;\r\n @ViewChild('dragRef', { static: true }) dragRef!: ElementRef;\r\n @ViewChild('railRef', { static: true }) railRef!: ElementRef;\r\n @ViewChild('processRef', { static: true }) processRef!: ElementRef;\r\n @ViewChild(XTooltipDirective, { static: true }) tooltip!: XTooltipDirective;\r\n left: number = 0;\r\n visible: boolean = false;\r\n manual: boolean = false;\r\n start!: number;\r\n value = 0;\r\n displayValue = '0';\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: ResizeObserver;\r\n\r\n get getRequired() {\r\n return this.required && XIsEmpty(this.value);\r\n }\r\n\r\n writeValue(value: number) {\r\n if (value === null) value = 0;\r\n this.value = value;\r\n this.setLeft();\r\n this.setDisplayValue();\r\n }\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.sliderSelect.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setPrecision();\r\n this.setClassMap();\r\n }\r\n\r\n ngAfterViewInit() {\r\n XResize(this.sliderSelect.nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this._resizeObserver = x.resizeObserver;\r\n this.setLeft();\r\n this.setDisplayValue();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n change() {\r\n const val = Number(((Number(this.max) - Number(this.min)) * Number(this.left)) / 100 + Number(this.min)).toFixed(\r\n Number(this.precision)\r\n );\r\n this.value = parseFloat(val);\r\n this.setDisplayValue();\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setLeft() {\r\n this.left = Math.round(((this.value - Number(this.min)) * 100) / (Number(this.max) - Number(this.min)));\r\n const start = this.left;\r\n this.start = start;\r\n this.setDrag();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setDisplayValue() {\r\n this.displayValue = Number(this.value).toFixed(Number(this.precision));\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setPrecision() {\r\n if (XIsUndefined(this.precision) || !XIsEmpty(this.step)) {\r\n let stepStr = String(this.step);\r\n let indexpoint = stepStr.indexOf('.');\r\n if (indexpoint === -1) {\r\n this.precision = 0;\r\n } else {\r\n this.precision = stepStr.length - (indexpoint + 1);\r\n }\r\n }\r\n }\r\n\r\n started(drag: CdkDragStart) {\r\n const start = this.left;\r\n this.start = start;\r\n this.manual = true;\r\n this.visible = true;\r\n this.cdr.detectChanges();\r\n this.dragStartEmit.emit(drag);\r\n }\r\n\r\n moved(drag: CdkDragMove) {\r\n let transform = drag.source.getFreeDragPosition();\r\n this.setDrag(transform.x);\r\n drag.source.reset();\r\n this.tooltip.updatePortal();\r\n this.change();\r\n this.dragMoveEmit.emit(drag);\r\n }\r\n\r\n ended(drag: CdkDragEnd) {\r\n this.manual = false;\r\n this.visible = false;\r\n this.cdr.detectChanges();\r\n this.dragEndEmit.emit(drag);\r\n }\r\n\r\n setDrag(distance: number = 0) {\r\n let railBox = this.railRef.nativeElement.getBoundingClientRect();\r\n let stepWidth = railBox.width / ((Number(this.max) - Number(this.min)) / Number(this.step));\r\n let offset = Math.abs(distance % stepWidth);\r\n let dis =\r\n offset < stepWidth / 2\r\n ? distance > 0\r\n ? distance - offset\r\n : distance + offset\r\n : distance > 0\r\n ? distance + stepWidth - offset\r\n : distance - stepWidth + offset;\r\n let x = (this.start / 100) * railBox.width + dis;\r\n this.left = Math.round((x / railBox.width) * 100);\r\n this.renderer.setStyle(this.dragRef.nativeElement, 'left', `${this.left}%`);\r\n this.renderer.setStyle(this.processRef.nativeElement, 'width', `${this.left}%`);\r\n this.renderer.removeStyle(this.dragRef.nativeElement, 'transform');\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XSliderSelectComponent } from './slider-select.component';\r\nimport { XTooltipModule } from '@ng-nest/ui/tooltip';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XSliderSelectProperty } from './slider-select.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XSliderSelectComponent, XSliderSelectProperty],\r\n exports: [XSliderSelectComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule, XTooltipModule, XBaseFormModule]\r\n})\r\nexport class XSliderSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|