@ng-nest/ui 14.0.12 → 14.0.14
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/checkbox/checkbox.component.d.ts +2 -0
- package/checkbox/checkbox.property.d.ts +21 -1
- package/esm2020/affix/affix.component.mjs +4 -4
- package/esm2020/affix/affix.module.mjs +5 -5
- package/esm2020/affix/affix.property.mjs +4 -4
- package/esm2020/alert/alert.component.mjs +4 -4
- package/esm2020/alert/alert.module.mjs +5 -5
- package/esm2020/alert/alert.property.mjs +4 -4
- package/esm2020/anchor/anchor.component.mjs +4 -5
- package/esm2020/anchor/anchor.module.mjs +5 -5
- package/esm2020/anchor/anchor.property.mjs +4 -4
- package/esm2020/api/api.component.mjs +4 -4
- package/esm2020/api/api.module.mjs +5 -5
- package/esm2020/auto-complete/auto-complete-portal.component.mjs +4 -4
- package/esm2020/auto-complete/auto-complete.component.mjs +4 -4
- package/esm2020/auto-complete/auto-complete.module.mjs +5 -5
- package/esm2020/auto-complete/auto-complete.property.mjs +4 -4
- package/esm2020/avatar/avatar-group.component.mjs +4 -4
- package/esm2020/avatar/avatar.component.mjs +4 -4
- package/esm2020/avatar/avatar.module.mjs +5 -5
- package/esm2020/avatar/avatar.property.mjs +7 -7
- package/esm2020/back-top/back-top.component.mjs +4 -4
- package/esm2020/back-top/back-top.module.mjs +5 -5
- package/esm2020/back-top/back-top.property.mjs +4 -4
- package/esm2020/badge/badge.component.mjs +4 -4
- package/esm2020/badge/badge.module.mjs +5 -5
- package/esm2020/badge/badge.property.mjs +4 -4
- package/esm2020/base-form/base-form.component.mjs +4 -4
- package/esm2020/base-form/base-form.module.mjs +5 -5
- package/esm2020/base-form/base-form.property.mjs +4 -4
- package/esm2020/border/border.component.mjs +4 -4
- package/esm2020/border/border.module.mjs +5 -5
- package/esm2020/button/button.component.mjs +4 -4
- package/esm2020/button/button.module.mjs +5 -5
- package/esm2020/button/button.property.mjs +7 -7
- package/esm2020/button/buttons.component.mjs +4 -4
- package/esm2020/calendar/calendar.component.mjs +4 -4
- package/esm2020/calendar/calendar.module.mjs +5 -5
- package/esm2020/calendar/calendar.property.mjs +4 -4
- package/esm2020/card/card.component.mjs +4 -4
- package/esm2020/card/card.module.mjs +5 -5
- package/esm2020/card/card.property.mjs +4 -4
- package/esm2020/carousel/carousel-panel.component.mjs +4 -4
- package/esm2020/carousel/carousel.component.mjs +4 -4
- package/esm2020/carousel/carousel.module.mjs +5 -5
- package/esm2020/carousel/carousel.property.mjs +7 -7
- package/esm2020/cascade/cascade-portal.component.mjs +4 -4
- package/esm2020/cascade/cascade.component.mjs +4 -4
- package/esm2020/cascade/cascade.module.mjs +5 -5
- package/esm2020/cascade/cascade.property.mjs +4 -4
- package/esm2020/checkbox/checkbox.component.mjs +12 -6
- package/esm2020/checkbox/checkbox.module.mjs +5 -5
- package/esm2020/checkbox/checkbox.property.mjs +8 -4
- package/esm2020/collapse/collapse-panel.component.mjs +4 -4
- package/esm2020/collapse/collapse.component.mjs +4 -4
- package/esm2020/collapse/collapse.module.mjs +5 -5
- package/esm2020/collapse/collapse.property.mjs +7 -7
- package/esm2020/color/color.component.mjs +4 -4
- package/esm2020/color/color.module.mjs +5 -5
- package/esm2020/color/color.property.mjs +4 -4
- package/esm2020/color-picker/color-picker-portal.component.mjs +5 -5
- package/esm2020/color-picker/color-picker.component.mjs +4 -4
- package/esm2020/color-picker/color-picker.module.mjs +5 -5
- package/esm2020/color-picker/color-picker.property.mjs +4 -4
- package/esm2020/comment/comment-reply.component.mjs +4 -4
- package/esm2020/comment/comment.component.mjs +4 -4
- package/esm2020/comment/comment.module.mjs +5 -5
- package/esm2020/comment/comment.property.mjs +7 -7
- package/esm2020/container/aside.component.mjs +4 -4
- package/esm2020/container/container.component.mjs +4 -4
- package/esm2020/container/container.module.mjs +5 -5
- package/esm2020/container/container.property.mjs +13 -13
- package/esm2020/container/footer.component.mjs +4 -4
- package/esm2020/container/header.component.mjs +4 -4
- package/esm2020/container/main.component.mjs +4 -4
- package/esm2020/core/config/config.service.mjs +4 -4
- package/esm2020/core/services/http.service.mjs +4 -4
- package/esm2020/core/services/preloading-strategy.service.mjs +4 -4
- package/esm2020/core/services/storage.service.mjs +4 -4
- package/esm2020/core/theme/theme.service.mjs +4 -4
- package/esm2020/crumb/crumb.component.mjs +4 -4
- package/esm2020/crumb/crumb.module.mjs +5 -5
- package/esm2020/crumb/crumb.property.mjs +4 -4
- package/esm2020/date-picker/date-picker-portal.component.mjs +4 -4
- package/esm2020/date-picker/date-picker.component.mjs +4 -4
- package/esm2020/date-picker/date-picker.module.mjs +5 -5
- package/esm2020/date-picker/date-picker.property.mjs +16 -16
- package/esm2020/date-picker/date-range-portal.component.mjs +4 -4
- package/esm2020/date-picker/date-range.component.mjs +4 -4
- package/esm2020/date-picker/picker-date.component.mjs +4 -4
- package/esm2020/date-picker/picker-month.component.mjs +4 -4
- package/esm2020/date-picker/picker-year.component.mjs +4 -4
- package/esm2020/description/description-item.component.mjs +4 -4
- package/esm2020/description/description.component.mjs +4 -4
- package/esm2020/description/description.module.mjs +5 -5
- package/esm2020/description/description.property.mjs +7 -7
- package/esm2020/dialog/dialog-container.component.mjs +6 -6
- package/esm2020/dialog/dialog-portal.component.mjs +4 -4
- package/esm2020/dialog/dialog-portal.directives.mjs +19 -19
- package/esm2020/dialog/dialog.component.mjs +4 -4
- package/esm2020/dialog/dialog.module.mjs +5 -5
- package/esm2020/dialog/dialog.property.mjs +7 -7
- package/esm2020/dialog/dialog.service.mjs +4 -4
- package/esm2020/doc/doc.component.mjs +4 -4
- package/esm2020/doc/doc.module.mjs +5 -5
- package/esm2020/drawer/drawer-container.component.mjs +6 -6
- package/esm2020/drawer/drawer-portal.component.mjs +4 -4
- package/esm2020/drawer/drawer-portal.directives.mjs +10 -10
- package/esm2020/drawer/drawer.component.mjs +4 -4
- package/esm2020/drawer/drawer.module.mjs +5 -5
- package/esm2020/drawer/drawer.property.mjs +7 -7
- package/esm2020/drawer/drawer.service.mjs +4 -4
- package/esm2020/dropdown/dropdown-portal.component.mjs +4 -4
- package/esm2020/dropdown/dropdown.component.mjs +4 -4
- package/esm2020/dropdown/dropdown.module.mjs +5 -5
- package/esm2020/dropdown/dropdown.property.mjs +4 -4
- package/esm2020/empty/empty.component.mjs +4 -4
- package/esm2020/empty/empty.module.mjs +5 -5
- package/esm2020/empty/empty.property.mjs +4 -4
- package/esm2020/examples/examples.component.mjs +4 -4
- package/esm2020/examples/examples.module.mjs +5 -5
- package/esm2020/find/find.component.mjs +4 -4
- package/esm2020/find/find.module.mjs +5 -5
- package/esm2020/find/find.property.mjs +4 -4
- package/esm2020/form/control.component.mjs +4 -4
- package/esm2020/form/form.component.mjs +4 -4
- package/esm2020/form/form.module.mjs +5 -5
- package/esm2020/form/form.property.mjs +7 -7
- package/esm2020/highlight/highlight.component.mjs +4 -4
- package/esm2020/highlight/highlight.module.mjs +5 -5
- package/esm2020/highlight/highlight.property.mjs +4 -4
- package/esm2020/i18n/i18n.directive.mjs +4 -4
- package/esm2020/i18n/i18n.module.mjs +5 -5
- package/esm2020/i18n/i18n.pipe.mjs +4 -4
- package/esm2020/i18n/i18n.service.mjs +4 -4
- package/esm2020/icon/icon.component.mjs +4 -4
- package/esm2020/icon/icon.module.mjs +6 -7
- package/esm2020/icon/icon.property.mjs +4 -4
- package/esm2020/icon/icon.service.mjs +12 -6
- package/esm2020/image/image-group.component.mjs +4 -4
- package/esm2020/image/image-preview.component.mjs +4 -4
- package/esm2020/image/image.component.mjs +4 -4
- package/esm2020/image/image.module.mjs +5 -5
- package/esm2020/image/image.property.mjs +7 -7
- package/esm2020/inner/inner.component.mjs +4 -4
- package/esm2020/inner/inner.module.mjs +5 -5
- package/esm2020/inner/inner.property.mjs +4 -4
- package/esm2020/input/input-group.component.mjs +4 -4
- package/esm2020/input/input.component.mjs +4 -4
- package/esm2020/input/input.module.mjs +5 -5
- package/esm2020/input/input.property.mjs +11 -7
- package/esm2020/input-number/input-number.component.mjs +4 -4
- package/esm2020/input-number/input-number.module.mjs +5 -5
- package/esm2020/input-number/input-number.property.mjs +4 -4
- package/esm2020/keyword/keyword.directive.mjs +4 -4
- package/esm2020/keyword/keyword.module.mjs +5 -5
- package/esm2020/keyword/keyword.property.mjs +4 -4
- package/esm2020/layout/col.component.mjs +4 -4
- package/esm2020/layout/layout.module.mjs +5 -5
- package/esm2020/layout/layout.property.mjs +7 -7
- package/esm2020/layout/row.component.mjs +4 -4
- package/esm2020/link/link.component.mjs +4 -4
- package/esm2020/link/link.module.mjs +5 -5
- package/esm2020/link/link.property.mjs +4 -4
- package/esm2020/list/list-drop-group.directive.mjs +4 -4
- package/esm2020/list/list-option.component.mjs +4 -4
- package/esm2020/list/list.component.mjs +4 -4
- package/esm2020/list/list.module.mjs +5 -5
- package/esm2020/list/list.property.mjs +7 -7
- package/esm2020/loading/loading.component.mjs +5 -5
- package/esm2020/loading/loading.module.mjs +5 -5
- package/esm2020/loading/loading.property.mjs +4 -4
- package/esm2020/menu/menu-node.component.mjs +4 -4
- package/esm2020/menu/menu.component.mjs +4 -4
- package/esm2020/menu/menu.module.mjs +5 -5
- package/esm2020/menu/menu.property.mjs +7 -7
- package/esm2020/message/message.component.mjs +4 -4
- package/esm2020/message/message.module.mjs +5 -5
- package/esm2020/message/message.service.mjs +4 -4
- package/esm2020/message-box/message-box.component.mjs +4 -4
- package/esm2020/message-box/message-box.module.mjs +5 -5
- package/esm2020/message-box/message-box.service.mjs +4 -4
- package/esm2020/notification/notification.component.mjs +4 -4
- package/esm2020/notification/notification.module.mjs +5 -5
- package/esm2020/notification/notification.service.mjs +4 -4
- package/esm2020/outlet/outlet.directive.mjs +4 -4
- package/esm2020/outlet/outlet.module.mjs +5 -5
- package/esm2020/page-header/page-header.component.mjs +4 -4
- package/esm2020/page-header/page-header.module.mjs +5 -5
- package/esm2020/page-header/page-header.property.mjs +4 -4
- package/esm2020/pagination/pagination.component.mjs +4 -4
- package/esm2020/pagination/pagination.module.mjs +5 -5
- package/esm2020/pagination/pagination.property.mjs +4 -4
- package/esm2020/pattern/pattern.component.mjs +4 -4
- package/esm2020/pattern/pattern.module.mjs +5 -5
- package/esm2020/popconfirm/popconfirm.component.mjs +4 -4
- package/esm2020/popconfirm/popconfirm.module.mjs +5 -5
- package/esm2020/popconfirm/popconfirm.property.mjs +4 -4
- package/esm2020/popover/popover-portal.component.mjs +4 -4
- package/esm2020/popover/popover.directive.mjs +4 -4
- package/esm2020/popover/popover.module.mjs +5 -5
- package/esm2020/popover/popover.property.mjs +4 -4
- package/esm2020/portal/portal.module.mjs +5 -5
- package/esm2020/portal/portal.service.mjs +4 -4
- package/esm2020/progress/progress.component.mjs +5 -5
- package/esm2020/progress/progress.module.mjs +5 -5
- package/esm2020/progress/progress.property.mjs +4 -4
- package/esm2020/radio/radio.component.mjs +13 -6
- package/esm2020/radio/radio.module.mjs +7 -6
- package/esm2020/radio/radio.property.mjs +8 -4
- package/esm2020/rate/rate.component.mjs +4 -4
- package/esm2020/rate/rate.module.mjs +5 -5
- package/esm2020/rate/rate.property.mjs +4 -4
- package/esm2020/resizable/resizable.directive.mjs +4 -4
- package/esm2020/resizable/resizable.module.mjs +5 -5
- package/esm2020/resizable/resizable.property.mjs +4 -4
- package/esm2020/result/result.component.mjs +4 -4
- package/esm2020/result/result.module.mjs +5 -5
- package/esm2020/result/result.property.mjs +4 -4
- package/esm2020/ripple/ripple.directive.mjs +4 -4
- package/esm2020/ripple/ripple.module.mjs +5 -5
- package/esm2020/ripple/ripple.property.mjs +4 -4
- package/esm2020/select/select-portal.component.mjs +4 -4
- package/esm2020/select/select.component.mjs +4 -4
- package/esm2020/select/select.module.mjs +5 -5
- package/esm2020/select/select.property.mjs +4 -4
- package/esm2020/skeleton/skeleton.component.mjs +5 -5
- package/esm2020/skeleton/skeleton.module.mjs +5 -5
- package/esm2020/skeleton/skeleton.property.mjs +4 -4
- package/esm2020/slider/slider.component.mjs +4 -4
- package/esm2020/slider/slider.module.mjs +5 -5
- package/esm2020/slider/slider.property.mjs +4 -4
- package/esm2020/slider-select/slider-select.component.mjs +4 -4
- package/esm2020/slider-select/slider-select.module.mjs +5 -5
- package/esm2020/slider-select/slider-select.property.mjs +4 -4
- package/esm2020/statistic/countdown.component.mjs +4 -4
- package/esm2020/statistic/statistic.component.mjs +4 -4
- package/esm2020/statistic/statistic.module.mjs +5 -5
- package/esm2020/statistic/statistic.property.mjs +7 -7
- package/esm2020/steps/steps.component.mjs +4 -4
- package/esm2020/steps/steps.module.mjs +5 -5
- package/esm2020/steps/steps.property.mjs +4 -4
- package/esm2020/switch/switch.component.mjs +4 -4
- package/esm2020/switch/switch.module.mjs +5 -5
- package/esm2020/switch/switch.property.mjs +4 -4
- package/esm2020/table/drag.directive.mjs +4 -4
- package/esm2020/table/table-body.component.mjs +4 -4
- package/esm2020/table/table-foot.component.mjs +4 -4
- package/esm2020/table/table-head.component.mjs +4 -4
- package/esm2020/table/table.component.mjs +4 -4
- package/esm2020/table/table.module.mjs +5 -5
- package/esm2020/table/table.property.mjs +13 -13
- package/esm2020/tabs/tab-content.component.mjs +4 -4
- package/esm2020/tabs/tab-link.directive.mjs +8 -8
- package/esm2020/tabs/tab.component.mjs +4 -4
- package/esm2020/tabs/tabs.component.mjs +4 -4
- package/esm2020/tabs/tabs.module.mjs +5 -5
- package/esm2020/tabs/tabs.property.mjs +7 -7
- package/esm2020/tag/tag.component.mjs +4 -4
- package/esm2020/tag/tag.module.mjs +5 -5
- package/esm2020/tag/tag.property.mjs +4 -4
- package/esm2020/text-retract/text-retract.component.mjs +4 -4
- package/esm2020/text-retract/text-retract.module.mjs +5 -5
- package/esm2020/text-retract/text-retract.property.mjs +4 -4
- package/esm2020/textarea/textarea.component.mjs +4 -4
- package/esm2020/textarea/textarea.module.mjs +5 -5
- package/esm2020/textarea/textarea.property.mjs +4 -4
- package/esm2020/theme/theme.component.mjs +5 -5
- package/esm2020/theme/theme.module.mjs +5 -5
- package/esm2020/theme/theme.property.mjs +4 -4
- package/esm2020/time-ago/time-ago.module.mjs +5 -5
- package/esm2020/time-ago/time-ago.pipe.mjs +4 -4
- package/esm2020/time-picker/time-picker-frame.component.mjs +4 -4
- package/esm2020/time-picker/time-picker-portal.component.mjs +4 -4
- package/esm2020/time-picker/time-picker.component.mjs +4 -4
- package/esm2020/time-picker/time-picker.module.mjs +5 -5
- package/esm2020/time-picker/time-picker.property.mjs +4 -4
- package/esm2020/time-range/time-range.module.mjs +5 -5
- package/esm2020/time-range/time-range.pipe.mjs +4 -4
- package/esm2020/timeline/timeline.component.mjs +4 -4
- package/esm2020/timeline/timeline.module.mjs +5 -5
- package/esm2020/timeline/timeline.property.mjs +4 -4
- package/esm2020/tooltip/tooltip-portal.component.mjs +4 -4
- package/esm2020/tooltip/tooltip.directive.mjs +4 -4
- package/esm2020/tooltip/tooltip.module.mjs +5 -5
- package/esm2020/tooltip/tooltip.property.mjs +4 -4
- package/esm2020/transfer/transfer.component.mjs +4 -4
- package/esm2020/transfer/transfer.module.mjs +5 -5
- package/esm2020/transfer/transfer.property.mjs +4 -4
- package/esm2020/tree/tree-node.component.mjs +4 -4
- package/esm2020/tree/tree.component.mjs +4 -4
- package/esm2020/tree/tree.module.mjs +5 -5
- package/esm2020/tree/tree.property.mjs +7 -7
- package/esm2020/tree-file/tree-file.component.mjs +11 -6
- package/esm2020/tree-file/tree-file.module.mjs +6 -7
- package/esm2020/tree-file/tree-file.property.mjs +4 -4
- package/esm2020/tree-select/tree-select-portal.component.mjs +4 -4
- package/esm2020/tree-select/tree-select.component.mjs +4 -4
- package/esm2020/tree-select/tree-select.module.mjs +5 -5
- package/esm2020/tree-select/tree-select.property.mjs +4 -4
- package/esm2020/typography/typography.component.mjs +4 -4
- package/esm2020/typography/typography.module.mjs +5 -5
- package/esm2020/typography/typography.property.mjs +4 -4
- package/esm2020/upload/upload-portal.component.mjs +7 -7
- package/esm2020/upload/upload.component.mjs +11 -6
- package/esm2020/upload/upload.module.mjs +5 -5
- package/esm2020/upload/upload.property.mjs +4 -4
- package/fesm2015/ng-nest-ui-affix.mjs +10 -10
- package/fesm2015/ng-nest-ui-affix.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-alert.mjs +10 -10
- package/fesm2015/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-anchor.mjs +10 -11
- package/fesm2015/ng-nest-ui-anchor.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-api.mjs +7 -7
- package/fesm2015/ng-nest-ui-api.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-auto-complete.mjs +13 -13
- package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-avatar.mjs +16 -16
- package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-back-top.mjs +10 -10
- package/fesm2015/ng-nest-ui-back-top.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-badge.mjs +10 -10
- package/fesm2015/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-base-form.mjs +10 -10
- package/fesm2015/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-border.mjs +7 -7
- package/fesm2015/ng-nest-ui-border.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-button.mjs +16 -16
- package/fesm2015/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-calendar.mjs +10 -10
- package/fesm2015/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-card.mjs +10 -10
- package/fesm2015/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-carousel.mjs +16 -16
- package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-cascade.mjs +13 -13
- package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-checkbox.mjs +22 -12
- package/fesm2015/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-collapse.mjs +16 -16
- package/fesm2015/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-color-picker.mjs +14 -14
- package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-color.mjs +10 -10
- package/fesm2015/ng-nest-ui-color.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-comment.mjs +16 -16
- package/fesm2015/ng-nest-ui-comment.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-container.mjs +31 -31
- package/fesm2015/ng-nest-ui-container.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-core.mjs +15 -15
- package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-crumb.mjs +10 -10
- package/fesm2015/ng-nest-ui-crumb.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-date-picker.mjs +40 -40
- package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-description.mjs +16 -16
- package/fesm2015/ng-nest-ui-description.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-dialog.mjs +42 -42
- package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-doc.mjs +7 -7
- package/fesm2015/ng-nest-ui-doc.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-drawer.mjs +33 -33
- package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-dropdown.mjs +13 -13
- package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-empty.mjs +10 -10
- package/fesm2015/ng-nest-ui-empty.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-examples.mjs +7 -7
- package/fesm2015/ng-nest-ui-examples.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-find.mjs +10 -10
- package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-form.mjs +16 -16
- package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-highlight.mjs +10 -10
- package/fesm2015/ng-nest-ui-highlight.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-i18n.mjs +13 -13
- package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-icon.mjs +23 -17
- package/fesm2015/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-image.mjs +19 -19
- package/fesm2015/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-inner.mjs +10 -10
- package/fesm2015/ng-nest-ui-inner.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input-number.mjs +10 -10
- package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input.mjs +20 -16
- package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-keyword.mjs +10 -10
- package/fesm2015/ng-nest-ui-keyword.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-layout.mjs +16 -16
- package/fesm2015/ng-nest-ui-layout.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-link.mjs +10 -10
- package/fesm2015/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-list.mjs +19 -19
- package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-loading.mjs +11 -11
- package/fesm2015/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-menu.mjs +16 -16
- package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message-box.mjs +10 -10
- package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message.mjs +10 -10
- package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-notification.mjs +10 -10
- package/fesm2015/ng-nest-ui-notification.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-outlet.mjs +7 -7
- package/fesm2015/ng-nest-ui-outlet.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-page-header.mjs +10 -10
- package/fesm2015/ng-nest-ui-page-header.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-pagination.mjs +10 -10
- package/fesm2015/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-pattern.mjs +7 -7
- package/fesm2015/ng-nest-ui-pattern.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-popconfirm.mjs +10 -10
- package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-popover.mjs +13 -13
- package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-portal.mjs +7 -7
- package/fesm2015/ng-nest-ui-portal.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-progress.mjs +11 -11
- package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-radio.mjs +25 -13
- package/fesm2015/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-rate.mjs +10 -10
- package/fesm2015/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-resizable.mjs +10 -10
- package/fesm2015/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-result.mjs +10 -10
- package/fesm2015/ng-nest-ui-result.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-ripple.mjs +10 -10
- package/fesm2015/ng-nest-ui-ripple.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-select.mjs +13 -13
- package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-skeleton.mjs +11 -11
- package/fesm2015/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider-select.mjs +10 -10
- package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider.mjs +10 -10
- package/fesm2015/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-statistic.mjs +16 -16
- package/fesm2015/ng-nest-ui-statistic.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-steps.mjs +10 -10
- package/fesm2015/ng-nest-ui-steps.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-switch.mjs +10 -10
- package/fesm2015/ng-nest-ui-switch.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-table.mjs +31 -31
- package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tabs.mjs +26 -26
- package/fesm2015/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tag.mjs +10 -10
- package/fesm2015/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-text-retract.mjs +10 -10
- package/fesm2015/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-textarea.mjs +10 -10
- package/fesm2015/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-theme.mjs +11 -11
- package/fesm2015/ng-nest-ui-theme.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-time-ago.mjs +7 -7
- package/fesm2015/ng-nest-ui-time-ago.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-time-picker.mjs +16 -16
- package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-time-range.mjs +7 -7
- package/fesm2015/ng-nest-ui-time-range.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-timeline.mjs +10 -10
- package/fesm2015/ng-nest-ui-timeline.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tooltip.mjs +13 -13
- package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-transfer.mjs +10 -10
- package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-file.mjs +20 -14
- package/fesm2015/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-select.mjs +13 -13
- package/fesm2015/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree.mjs +16 -16
- package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-typography.mjs +10 -10
- package/fesm2015/ng-nest-ui-typography.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-upload.mjs +27 -18
- package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-affix.mjs +10 -10
- package/fesm2020/ng-nest-ui-affix.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-alert.mjs +10 -10
- package/fesm2020/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-anchor.mjs +10 -11
- package/fesm2020/ng-nest-ui-anchor.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-api.mjs +7 -7
- package/fesm2020/ng-nest-ui-api.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-auto-complete.mjs +13 -13
- package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-avatar.mjs +16 -16
- package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-back-top.mjs +10 -10
- package/fesm2020/ng-nest-ui-back-top.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-badge.mjs +10 -10
- package/fesm2020/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-base-form.mjs +10 -10
- package/fesm2020/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-border.mjs +7 -7
- package/fesm2020/ng-nest-ui-border.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-button.mjs +16 -16
- package/fesm2020/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-calendar.mjs +10 -10
- package/fesm2020/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-card.mjs +10 -10
- package/fesm2020/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-carousel.mjs +16 -16
- package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-cascade.mjs +13 -13
- package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-checkbox.mjs +22 -12
- package/fesm2020/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-collapse.mjs +16 -16
- package/fesm2020/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-color-picker.mjs +14 -14
- package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-color.mjs +10 -10
- package/fesm2020/ng-nest-ui-color.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-comment.mjs +16 -16
- package/fesm2020/ng-nest-ui-comment.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-container.mjs +31 -31
- package/fesm2020/ng-nest-ui-container.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-core.mjs +15 -15
- package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-crumb.mjs +10 -10
- package/fesm2020/ng-nest-ui-crumb.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-date-picker.mjs +40 -40
- package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-description.mjs +16 -16
- package/fesm2020/ng-nest-ui-description.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-dialog.mjs +42 -42
- package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-doc.mjs +7 -7
- package/fesm2020/ng-nest-ui-doc.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-drawer.mjs +33 -33
- package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-dropdown.mjs +13 -13
- package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-empty.mjs +10 -10
- package/fesm2020/ng-nest-ui-empty.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-examples.mjs +7 -7
- package/fesm2020/ng-nest-ui-examples.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-find.mjs +10 -10
- package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-form.mjs +16 -16
- package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-highlight.mjs +10 -10
- package/fesm2020/ng-nest-ui-highlight.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-i18n.mjs +13 -13
- package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-icon.mjs +21 -17
- package/fesm2020/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-image.mjs +19 -19
- package/fesm2020/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-inner.mjs +10 -10
- package/fesm2020/ng-nest-ui-inner.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input-number.mjs +10 -10
- package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input.mjs +20 -16
- package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-keyword.mjs +10 -10
- package/fesm2020/ng-nest-ui-keyword.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-layout.mjs +16 -16
- package/fesm2020/ng-nest-ui-layout.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-link.mjs +10 -10
- package/fesm2020/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-list.mjs +19 -19
- package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-loading.mjs +11 -11
- package/fesm2020/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-menu.mjs +16 -16
- package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message-box.mjs +10 -10
- package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message.mjs +10 -10
- package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-notification.mjs +10 -10
- package/fesm2020/ng-nest-ui-notification.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-outlet.mjs +7 -7
- package/fesm2020/ng-nest-ui-outlet.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-page-header.mjs +10 -10
- package/fesm2020/ng-nest-ui-page-header.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-pagination.mjs +10 -10
- package/fesm2020/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-pattern.mjs +7 -7
- package/fesm2020/ng-nest-ui-pattern.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-popconfirm.mjs +10 -10
- package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-popover.mjs +13 -13
- package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-portal.mjs +7 -7
- package/fesm2020/ng-nest-ui-portal.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-progress.mjs +11 -11
- package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-radio.mjs +25 -13
- package/fesm2020/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-rate.mjs +10 -10
- package/fesm2020/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-resizable.mjs +10 -10
- package/fesm2020/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-result.mjs +10 -10
- package/fesm2020/ng-nest-ui-result.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-ripple.mjs +10 -10
- package/fesm2020/ng-nest-ui-ripple.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-select.mjs +13 -13
- package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-skeleton.mjs +11 -11
- package/fesm2020/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider-select.mjs +10 -10
- package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider.mjs +10 -10
- package/fesm2020/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-statistic.mjs +16 -16
- package/fesm2020/ng-nest-ui-statistic.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-steps.mjs +10 -10
- package/fesm2020/ng-nest-ui-steps.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-switch.mjs +10 -10
- package/fesm2020/ng-nest-ui-switch.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-table.mjs +31 -31
- package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tabs.mjs +26 -26
- package/fesm2020/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tag.mjs +10 -10
- package/fesm2020/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-text-retract.mjs +10 -10
- package/fesm2020/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-textarea.mjs +10 -10
- package/fesm2020/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-theme.mjs +11 -11
- package/fesm2020/ng-nest-ui-theme.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-time-ago.mjs +7 -7
- package/fesm2020/ng-nest-ui-time-ago.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-time-picker.mjs +16 -16
- package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-time-range.mjs +7 -7
- package/fesm2020/ng-nest-ui-time-range.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-timeline.mjs +10 -10
- package/fesm2020/ng-nest-ui-timeline.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tooltip.mjs +13 -13
- package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-transfer.mjs +10 -10
- package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-file.mjs +18 -14
- package/fesm2020/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-select.mjs +13 -13
- package/fesm2020/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree.mjs +16 -16
- package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-typography.mjs +10 -10
- package/fesm2020/ng-nest-ui-typography.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-upload.mjs +23 -18
- package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
- package/icon/icon.module.d.ts +1 -2
- package/icon/icon.service.d.ts +1 -1
- package/input/input.property.d.ts +11 -1
- package/menu/menu.component.d.ts +1 -1
- package/package.json +1 -1
- package/radio/radio.component.d.ts +2 -0
- package/radio/radio.module.d.ts +3 -2
- package/radio/radio.property.d.ts +22 -2
- package/tabs/tab-link.directive.d.ts +3 -3
- package/tabs/tabs.component.d.ts +2 -2
- package/tree-file/tree-file.component.d.ts +2 -2
- package/tree-file/tree-file.module.d.ts +7 -8
- package/upload/upload-portal.component.d.ts +1 -1
- package/upload/upload.component.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-link.mjs","sources":["../../../../lib/ng-nest/ui/link/link.property.ts","../../../../lib/ng-nest/ui/link/link.component.ts","../../../../lib/ng-nest/ui/link/link.component.html","../../../../lib/ng-nest/ui/link/link.module.ts","../../../../lib/ng-nest/ui/link/ng-nest-ui-link.ts"],"sourcesContent":["import { XProperty, XInputBoolean, XBoolean, XWithConfig, XType } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Link\r\n * @selector x-link\r\n * @decorator component\r\n */\r\nexport const XLinkPrefix = 'x-link';\r\nconst X_CONFIG_NAME = 'link';\r\n\r\n/**\r\n * Link Property\r\n */\r\n@Component({ template: '' })\r\nexport class XLinkProperty extends XProperty {\r\n /**\r\n * @zh_CN 链接\r\n * @en_US Link\r\n */\r\n @Input() href?: string;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * @zh_CN 下划线\r\n * @en_US Underscore\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() underline?: XBoolean;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n @Input() @XInputBoolean() disabled?: XBoolean;\r\n /**\r\n * @zh_CN 图标靠右对齐\r\n * @en_US Icons are aligned to the right\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() iconRight?: XBoolean;\r\n /**\r\n * @zh_CN 链接类型\r\n * @en_US Link type\r\n */\r\n @Input() type?: XLinkType;\r\n /**\r\n * @zh_CN 打开方式\r\n * @en_US Open method\r\n */\r\n @Input() target?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 链接类型\r\n * @en_US Link type\r\n */\r\nexport type XLinkType = XType;\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 HostListener\r\n} from '@angular/core';\r\nimport { XLinkPrefix, XLinkProperty } from './link.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XLinkPrefix}`,\r\n templateUrl: './link.component.html',\r\n styleUrls: ['./link.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XLinkComponent extends XLinkProperty implements OnInit {\r\n hover: boolean = false;\r\n\r\n @HostListener('mouseenter') mouseenter() {\r\n this.hover = true;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave() {\r\n this.hover = false;\r\n this.cdr.detectChanges();\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.setClassMap();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XLinkPrefix}-${this.type}`] = this.type ? true : false;\r\n }\r\n}\r\n","<a\r\n class=\"x-link\"\r\n [ngClass]=\"classMap\"\r\n [class.x-link-disabled]=\"disabled\"\r\n [class.x-link-underline]=\"underline && !disabled\"\r\n [class.x-link-icon-right]=\"iconRight\"\r\n [class.x-link-only-icon]=\"icon && !content.innerHTML.trim()\"\r\n [attr.href]=\"href\"\r\n [attr.target]=\"target\"\r\n>\r\n <x-icon *ngIf=\"icon\" [type]=\"icon\"></x-icon>\r\n <span #content><ng-content></ng-content></span>\r\n</a>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XLinkComponent } from './link.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XLinkProperty } from './link.property';\r\nimport { XRippleModule } from '@ng-nest/ui/ripple';\r\n\r\n@NgModule({\r\n declarations: [XLinkComponent, XLinkProperty],\r\n exports: [XLinkComponent],\r\n imports: [CommonModule, XIconModule, XOutletModule, XRippleModule]\r\n})\r\nexport class XLinkModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;AAGA;;;;AAIG;AACI,MAAM,WAAW,GAAG,SAAS;AACpC,MAAM,aAAa,GAAG,MAAM,CAAC;AAE7B;;AAEG;AAEG,MAAO,aAAc,SAAQ,SAAS,CAAA;;
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-link.mjs","sources":["../../../../lib/ng-nest/ui/link/link.property.ts","../../../../lib/ng-nest/ui/link/link.component.ts","../../../../lib/ng-nest/ui/link/link.component.html","../../../../lib/ng-nest/ui/link/link.module.ts","../../../../lib/ng-nest/ui/link/ng-nest-ui-link.ts"],"sourcesContent":["import { XProperty, XInputBoolean, XBoolean, XWithConfig, XType } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Link\r\n * @selector x-link\r\n * @decorator component\r\n */\r\nexport const XLinkPrefix = 'x-link';\r\nconst X_CONFIG_NAME = 'link';\r\n\r\n/**\r\n * Link Property\r\n */\r\n@Component({ template: '' })\r\nexport class XLinkProperty extends XProperty {\r\n /**\r\n * @zh_CN 链接\r\n * @en_US Link\r\n */\r\n @Input() href?: string;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * @zh_CN 下划线\r\n * @en_US Underscore\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() underline?: XBoolean;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n @Input() @XInputBoolean() disabled?: XBoolean;\r\n /**\r\n * @zh_CN 图标靠右对齐\r\n * @en_US Icons are aligned to the right\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() iconRight?: XBoolean;\r\n /**\r\n * @zh_CN 链接类型\r\n * @en_US Link type\r\n */\r\n @Input() type?: XLinkType;\r\n /**\r\n * @zh_CN 打开方式\r\n * @en_US Open method\r\n */\r\n @Input() target?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 链接类型\r\n * @en_US Link type\r\n */\r\nexport type XLinkType = XType;\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 HostListener\r\n} from '@angular/core';\r\nimport { XLinkPrefix, XLinkProperty } from './link.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XLinkPrefix}`,\r\n templateUrl: './link.component.html',\r\n styleUrls: ['./link.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XLinkComponent extends XLinkProperty implements OnInit {\r\n hover: boolean = false;\r\n\r\n @HostListener('mouseenter') mouseenter() {\r\n this.hover = true;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave() {\r\n this.hover = false;\r\n this.cdr.detectChanges();\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.setClassMap();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XLinkPrefix}-${this.type}`] = this.type ? true : false;\r\n }\r\n}\r\n","<a\r\n class=\"x-link\"\r\n [ngClass]=\"classMap\"\r\n [class.x-link-disabled]=\"disabled\"\r\n [class.x-link-underline]=\"underline && !disabled\"\r\n [class.x-link-icon-right]=\"iconRight\"\r\n [class.x-link-only-icon]=\"icon && !content.innerHTML.trim()\"\r\n [attr.href]=\"href\"\r\n [attr.target]=\"target\"\r\n>\r\n <x-icon *ngIf=\"icon\" [type]=\"icon\"></x-icon>\r\n <span #content><ng-content></ng-content></span>\r\n</a>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XLinkComponent } from './link.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XLinkProperty } from './link.property';\r\nimport { XRippleModule } from '@ng-nest/ui/ripple';\r\n\r\n@NgModule({\r\n declarations: [XLinkComponent, XLinkProperty],\r\n exports: [XLinkComponent],\r\n imports: [CommonModule, XIconModule, XOutletModule, XRippleModule]\r\n})\r\nexport class XLinkModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;AAGA;;;;AAIG;AACI,MAAM,WAAW,GAAG,SAAS;AACpC,MAAM,aAAa,GAAG,MAAM,CAAC;AAE7B;;AAEG;AAEG,MAAO,aAAc,SAAQ,SAAS,CAAA;;8HAA/B,aAAa,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,mBAAA,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,yNADH,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;IAgBb,WAAW,CAAW,aAAa,CAAC;AAAE,IAAA,aAAa,EAAE;CAAsB,EAAA,aAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;;AAK3E,IAAA,aAAa,EAAE;CAAqB,EAAA,aAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA,CAAA;;IAKpC,WAAW,CAAW,aAAa,CAAC;AAAE,IAAA,aAAa,EAAE;CAAsB,EAAA,aAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAzB1E,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB,SAAS;mBAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;8BAMhB,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAK0D,SAAS,EAAA,CAAA;sBAAxE,KAAK;gBAKoB,QAAQ,EAAA,CAAA;sBAAjC,KAAK;gBAK0D,SAAS,EAAA,CAAA;sBAAxE,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,MAAM,EAAA,CAAA;sBAAd,KAAK;;;AC9BF,MAAO,cAAe,SAAQ,aAAa,CAAA;AAa/C,IAAA,WAAA,CACS,QAAmB,EACnB,UAAsB,EACtB,GAAsB,EACtB,aAA6B,EAAA;AAEpC,QAAA,KAAK,EAAE,CAAC;AALD,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;AACnB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;AACtB,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AACtB,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;AAhBtC,QAAA,IAAK,CAAA,KAAA,GAAY,KAAK,CAAC;KAmBtB;IAjB2B,UAAU,GAAA;AACpC,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAE2B,UAAU,GAAA;AACpC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAWD,QAAQ,GAAA;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW,GAAA;QACT,IAAI,CAAC,QAAQ,CAAC,CAAA,EAAG,WAAW,CAAI,CAAA,EAAA,IAAI,CAAC,IAAI,CAAE,CAAA,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;KACzE;;+HA5BU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,mBAAA,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,0JCpB3B,8bAaA,EAAA,MAAA,EAAA,CAAA,41FAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4FDOa,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,SAAS;+BACE,CAAA,EAAG,WAAW,CAAA,CAAE,EAGX,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,8bAAA,EAAA,MAAA,EAAA,CAAA,41FAAA,CAAA,EAAA,CAAA;sLAKnB,UAAU,EAAA,CAAA;sBAArC,YAAY;uBAAC,YAAY,CAAA;gBAKE,UAAU,EAAA,CAAA;sBAArC,YAAY;uBAAC,YAAY,CAAA;;;MEff,WAAW,CAAA;;4HAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,mBAAA,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAJP,YAAA,EAAA,CAAA,cAAc,EAAE,aAAa,CAElC,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,aADvD,cAAc,CAAA,EAAA,CAAA,CAAA;AAGb,mBAAA,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,YAFZ,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAA,EAAA,CAAA,CAAA;4FAEtD,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC;oBAC7C,OAAO,EAAE,CAAC,cAAc,CAAC;oBACzB,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC;iBACnE,CAAA;;;ACZD;;AAEG;;;;"}
|
|
@@ -97,8 +97,8 @@ class XListProperty extends XControlValueAccessor {
|
|
|
97
97
|
this.keyManagerChange = new EventEmitter();
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
|
-
/** @nocollapse */ XListProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
101
|
-
/** @nocollapse */ XListProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
100
|
+
/** @nocollapse */ XListProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
101
|
+
/** @nocollapse */ XListProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: XListProperty, selector: "ng-component", inputs: { data: "data", multiple: "multiple", selectAll: "selectAll", selectAllText: "selectAllText", checked: "checked", drag: "drag", objectArray: "objectArray", nodeTpl: "nodeTpl", header: "header", footer: "footer", scrollElement: "scrollElement", size: "size", loadMore: "loadMore", loadMoreText: "loadMoreText", loadingMoreText: "loadingMoreText", virtualScroll: "virtualScroll", scrollHeight: "scrollHeight", heightAdaption: "heightAdaption", minBufferPx: "minBufferPx", maxBufferPx: "maxBufferPx", keywordText: "keywordText", caseSensitive: "caseSensitive" }, outputs: { onSelectAll: "onSelectAll", nodeMouseenter: "nodeMouseenter", nodeMouseleave: "nodeMouseleave", nodeClick: "nodeClick", dropListDropped: "dropListDropped", keyManagerTabOut: "keyManagerTabOut", keyManagerChange: "keyManagerChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
102
102
|
__decorate([
|
|
103
103
|
XDataConvert()
|
|
104
104
|
], XListProperty.prototype, "data", void 0);
|
|
@@ -144,7 +144,7 @@ __decorate([
|
|
|
144
144
|
XInputBoolean(),
|
|
145
145
|
XWithConfig(X_CONFIG_NAME, true)
|
|
146
146
|
], XListProperty.prototype, "caseSensitive", void 0);
|
|
147
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
147
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListProperty, decorators: [{
|
|
148
148
|
type: Component,
|
|
149
149
|
args: [{ template: '' }]
|
|
150
150
|
}], propDecorators: { data: [{
|
|
@@ -224,8 +224,8 @@ class XListOptionProperty {
|
|
|
224
224
|
this.activeChange = new EventEmitter();
|
|
225
225
|
}
|
|
226
226
|
}
|
|
227
|
-
/** @nocollapse */ XListOptionProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
228
|
-
/** @nocollapse */ XListOptionProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
227
|
+
/** @nocollapse */ XListOptionProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListOptionProperty, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
228
|
+
/** @nocollapse */ XListOptionProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: XListOptionProperty, selector: "ng-component", inputs: { node: "node", checked: "checked", nodeTpl: "nodeTpl", selected: "selected", disabled: "disabled", active: "active", icon: "icon", divided: "divided", label: "label", leaf: "leaf", size: "size", keywordText: "keywordText", caseSensitive: "caseSensitive" }, outputs: { activeChange: "activeChange" }, ngImport: i0, template: '', isInline: true });
|
|
229
229
|
__decorate([
|
|
230
230
|
XInputBoolean()
|
|
231
231
|
], XListOptionProperty.prototype, "checked", void 0);
|
|
@@ -248,7 +248,7 @@ __decorate([
|
|
|
248
248
|
XInputBoolean(),
|
|
249
249
|
XWithConfig(X_CONFIG_NAME, true)
|
|
250
250
|
], XListOptionProperty.prototype, "caseSensitive", void 0);
|
|
251
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
251
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListOptionProperty, decorators: [{
|
|
252
252
|
type: Component,
|
|
253
253
|
args: [{ template: '' }]
|
|
254
254
|
}], propDecorators: { node: [{
|
|
@@ -312,9 +312,9 @@ class XListOptionComponent extends XListOptionProperty {
|
|
|
312
312
|
return this.label;
|
|
313
313
|
}
|
|
314
314
|
}
|
|
315
|
-
/** @nocollapse */ XListOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
316
|
-
/** @nocollapse */ XListOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
317
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
315
|
+
/** @nocollapse */ XListOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListOptionComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
|
|
316
|
+
/** @nocollapse */ XListOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: XListOptionComponent, selector: "x-list-option", host: { properties: { "attr.role": "this.role" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"x-list-option\"\r\n [ngClass]=\"classMap\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <div class=\"x-list-option-content\">\r\n <ng-container *ngIf=\"!nodeTpl\">\r\n <x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon>\r\n <span x-keyword [text]=\"keywordText\" [caseSensitive]=\"caseSensitive\">{{ label }}</span>\r\n </ng-container>\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-list-option{display:block}.x-list-option{border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-list-option-content{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none;display:inline-block}.x-list-option:not(:first-child){margin-top:var(--x-border-width)}.x-list-option:hover,.x-list-option.x-active{background-color:var(--x-background-a200)}.x-list-option.x-list-divided{margin-top:.8125rem}.x-list-option.x-list-divided:before{content:\" \";position:absolute;top:0;left:0;width:100%;margin-top:-.5rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-list-option.x-selected{background-color:var(--x-background-a400);color:var(--x-primary)}.x-list-option.x-selected>x-icon{color:var(--x-primary)}.x-list-option.x-disabled{color:var(--x-text-500);cursor:not-allowed}.x-list-option.x-disabled:hover{background-color:inherit}.x-list-option.x-disabled>span x-icon{color:var(--x-text-500)}.x-list-option-big{padding:0 var(--x-padding-big);height:var(--x-height-big);line-height:var(--x-height-big)}.x-list-option-large{padding:0 var(--x-padding-large);height:var(--x-height-large);line-height:var(--x-height-large)}.x-list-option-medium{padding:0 var(--x-padding-medium);height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-list-option-small{padding:0 var(--x-padding-small);height:var(--x-height-small);line-height:var(--x-height-small)}.x-list-option-mini{padding:0 var(--x-padding-mini);height:var(--x-height-mini);line-height:var(--x-height-mini)}body>x-list-option{display:block}body>x-list-option.cdk-drag-preview .x-list-option{border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>x-list-option.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.XIconComponent, selector: "x-icon" }, { kind: "directive", type: i4.XKeywordDirective, selector: "[x-keyword]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
317
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListOptionComponent, decorators: [{
|
|
318
318
|
type: Component,
|
|
319
319
|
args: [{ selector: `${XListOptionPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-list-option\"\r\n [ngClass]=\"classMap\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <div class=\"x-list-option-content\">\r\n <ng-container *ngIf=\"!nodeTpl\">\r\n <x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon>\r\n <span x-keyword [text]=\"keywordText\" [caseSensitive]=\"caseSensitive\">{{ label }}</span>\r\n </ng-container>\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-list-option{display:block}.x-list-option{border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-list-option-content{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none;display:inline-block}.x-list-option:not(:first-child){margin-top:var(--x-border-width)}.x-list-option:hover,.x-list-option.x-active{background-color:var(--x-background-a200)}.x-list-option.x-list-divided{margin-top:.8125rem}.x-list-option.x-list-divided:before{content:\" \";position:absolute;top:0;left:0;width:100%;margin-top:-.5rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-list-option.x-selected{background-color:var(--x-background-a400);color:var(--x-primary)}.x-list-option.x-selected>x-icon{color:var(--x-primary)}.x-list-option.x-disabled{color:var(--x-text-500);cursor:not-allowed}.x-list-option.x-disabled:hover{background-color:inherit}.x-list-option.x-disabled>span x-icon{color:var(--x-text-500)}.x-list-option-big{padding:0 var(--x-padding-big);height:var(--x-height-big);line-height:var(--x-height-big)}.x-list-option-large{padding:0 var(--x-padding-large);height:var(--x-height-large);line-height:var(--x-height-large)}.x-list-option-medium{padding:0 var(--x-padding-medium);height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-list-option-small{padding:0 var(--x-padding-small);height:var(--x-height-small);line-height:var(--x-height-small)}.x-list-option-mini{padding:0 var(--x-padding-mini);height:var(--x-height-mini);line-height:var(--x-height-mini)}body>x-list-option{display:block}body>x-list-option.cdk-drag-preview .x-list-option{border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>x-list-option.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"] }]
|
|
320
320
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { role: [{
|
|
@@ -353,9 +353,9 @@ class XListDropGroup {
|
|
|
353
353
|
this.dropLists.clear();
|
|
354
354
|
}
|
|
355
355
|
}
|
|
356
|
-
/** @nocollapse */ XListDropGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
357
|
-
/** @nocollapse */ XListDropGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.
|
|
358
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
356
|
+
/** @nocollapse */ XListDropGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListDropGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
357
|
+
/** @nocollapse */ XListDropGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: XListDropGroup, selector: "[xListDropGroup]", inputs: { disabled: ["xListDropGroupDisabled", "disabled"] }, providers: [{ provide: X_LIST_DROP_GROUP, useExisting: XListDropGroup }], ngImport: i0 });
|
|
358
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListDropGroup, decorators: [{
|
|
359
359
|
type: Directive,
|
|
360
360
|
args: [{
|
|
361
361
|
selector: '[xListDropGroup]',
|
|
@@ -693,9 +693,9 @@ class XListComponent extends XListProperty {
|
|
|
693
693
|
this.nodes[num].active = false;
|
|
694
694
|
}
|
|
695
695
|
}
|
|
696
|
-
/** @nocollapse */ XListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
697
|
-
/** @nocollapse */ XListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
698
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
696
|
+
/** @nocollapse */ XListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.XConfigService }, { token: i2$1.XI18nService }, { token: X_LIST_DROP_GROUP, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
697
|
+
/** @nocollapse */ XListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: XListComponent, selector: "x-list", host: { listeners: { "keydown": "keydown($event)" }, properties: { "attr.role": "this.role", "attr.tabindex": "this.tabindex" } }, providers: [XValueAccessor(XListComponent)], viewQueries: [{ propertyName: "headerRef", first: true, predicate: ["headerRef"], descendants: true }, { propertyName: "footerRef", first: true, predicate: ["footerRef"], descendants: true }, { propertyName: "selectAllRef", first: true, predicate: ["selectAllRef"], descendants: true }, { propertyName: "loadMoreRef", first: true, predicate: ["loadMoreRef"], descendants: true }, { propertyName: "virtualBody", first: true, predicate: ["virtualBody"], descendants: true }, { propertyName: "dropList", first: true, predicate: CdkDropList, descendants: true }, { propertyName: "listItems", first: true, predicate: ["listItems"], descendants: true }, { propertyName: "options", predicate: XListOptionComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-list\">\r\n <ng-container *ngIf=\"header\">\r\n <div #headerRef class=\"x-list-header\" *xOutlet=\"header\">{{ header }}</div>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectAll && multiple === 0\">\r\n <div #selectAllRef class=\"x-list-select-all\">\r\n <x-list-option\r\n [size]=\"size\"\r\n [label]=\"getSelectAllText\"\r\n [checked]=\"true\"\r\n [selected]=\"isSelectAll\"\r\n (click)=\"onSelectAllNodes()\"\r\n ></x-list-option>\r\n </div>\r\n </ng-container>\r\n <cdk-virtual-scroll-viewport\r\n #virtualBody\r\n *ngIf=\"virtualScroll; else contentTpl\"\r\n [itemSize]=\"getItemSize\"\r\n [minBufferPx]=\"minBufferPx\"\r\n [maxBufferPx]=\"maxBufferPx\"\r\n class=\"x-list-content\"\r\n [style.height.px]=\"getVirtualScrollHeight\"\r\n [hidden]=\"isEmpty\"\r\n >\r\n <x-list-option\r\n *cdkVirtualFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </cdk-virtual-scroll-viewport>\r\n\r\n <ng-container *ngIf=\"loadMore && !isEmpty\">\r\n <div #loadMoreRef class=\"x-list-load-more\">\r\n <x-list-option [size]=\"size\" [nodeTpl]=\"loadMoreTpl\" (click)=\"onLoadMore()\"></x-list-option>\r\n </div>\r\n <ng-template #loadMoreTpl>\r\n <x-icon *ngIf=\"icon && iconSpin\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n {{ icon && iconSpin ? getLoadingMoreText : getLoadMoreText }}\r\n </ng-template>\r\n </ng-container>\r\n <x-empty *ngIf=\"isEmpty\"></x-empty>\r\n <ng-container *ngIf=\"footer\">\r\n <div #footerRef class=\"x-list-footer\" *xOutlet=\"footer\">{{ footer }}</div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #contentTpl>\r\n <div\r\n class=\"x-list-content\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n [cdkDropListData]=\"nodes\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <x-list-option\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n cdkDrag\r\n [cdkDragDisabled]=\"node.disabled\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </div>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";x-list{width:100%}x-list:focus{outline:none}.x-list{margin:0;padding:0;width:100%}.x-list:focus{outline:none}.x-list-select-all{cursor:pointer;font-weight:700}.x-list-load-more,.x-list-content{cursor:pointer}.x-list-content.cdk-drop-list-dragging>x-list-option:hover{background-color:transparent}.x-list-content.cdk-drop-list-dragging>x-list-option.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-list-content.cdk-drop-list-dragging>x-list-option:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-list-header,.x-list-footer{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);font-weight:700}.x-list-leaf,.x-list-checked{right:0;margin-left:.4rem;color:var(--x-text-400)}.x-list-icon>span x-icon{color:var(--x-text-300);margin-right:.25rem}.x-list>x-empty{margin:1rem;display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4$1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.XIconComponent, selector: "x-icon" }, { kind: "component", type: i6.XEmptyComponent, selector: "x-empty" }, { kind: "directive", type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "directive", type: i8.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i8.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i8.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: XListOptionComponent, selector: "x-list-option" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
698
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListComponent, decorators: [{
|
|
699
699
|
type: Component,
|
|
700
700
|
args: [{ selector: `${XListPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XListComponent)], template: "<div class=\"x-list\">\r\n <ng-container *ngIf=\"header\">\r\n <div #headerRef class=\"x-list-header\" *xOutlet=\"header\">{{ header }}</div>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectAll && multiple === 0\">\r\n <div #selectAllRef class=\"x-list-select-all\">\r\n <x-list-option\r\n [size]=\"size\"\r\n [label]=\"getSelectAllText\"\r\n [checked]=\"true\"\r\n [selected]=\"isSelectAll\"\r\n (click)=\"onSelectAllNodes()\"\r\n ></x-list-option>\r\n </div>\r\n </ng-container>\r\n <cdk-virtual-scroll-viewport\r\n #virtualBody\r\n *ngIf=\"virtualScroll; else contentTpl\"\r\n [itemSize]=\"getItemSize\"\r\n [minBufferPx]=\"minBufferPx\"\r\n [maxBufferPx]=\"maxBufferPx\"\r\n class=\"x-list-content\"\r\n [style.height.px]=\"getVirtualScrollHeight\"\r\n [hidden]=\"isEmpty\"\r\n >\r\n <x-list-option\r\n *cdkVirtualFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </cdk-virtual-scroll-viewport>\r\n\r\n <ng-container *ngIf=\"loadMore && !isEmpty\">\r\n <div #loadMoreRef class=\"x-list-load-more\">\r\n <x-list-option [size]=\"size\" [nodeTpl]=\"loadMoreTpl\" (click)=\"onLoadMore()\"></x-list-option>\r\n </div>\r\n <ng-template #loadMoreTpl>\r\n <x-icon *ngIf=\"icon && iconSpin\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n {{ icon && iconSpin ? getLoadingMoreText : getLoadMoreText }}\r\n </ng-template>\r\n </ng-container>\r\n <x-empty *ngIf=\"isEmpty\"></x-empty>\r\n <ng-container *ngIf=\"footer\">\r\n <div #footerRef class=\"x-list-footer\" *xOutlet=\"footer\">{{ footer }}</div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #contentTpl>\r\n <div\r\n class=\"x-list-content\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n [cdkDropListData]=\"nodes\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <x-list-option\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n cdkDrag\r\n [cdkDragDisabled]=\"node.disabled\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </div>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";x-list{width:100%}x-list:focus{outline:none}.x-list{margin:0;padding:0;width:100%}.x-list:focus{outline:none}.x-list-select-all{cursor:pointer;font-weight:700}.x-list-load-more,.x-list-content{cursor:pointer}.x-list-content.cdk-drop-list-dragging>x-list-option:hover{background-color:transparent}.x-list-content.cdk-drop-list-dragging>x-list-option.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-list-content.cdk-drop-list-dragging>x-list-option:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-list-header,.x-list-footer{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);font-weight:700}.x-list-leaf,.x-list-checked{right:0;margin-left:.4rem;color:var(--x-text-400)}.x-list-icon>span x-icon{color:var(--x-text-300);margin-right:.25rem}.x-list>x-empty{margin:1rem;display:block}\n"] }]
|
|
701
701
|
}], ctorParameters: function () {
|
|
@@ -744,8 +744,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
744
744
|
|
|
745
745
|
class XListModule {
|
|
746
746
|
}
|
|
747
|
-
/** @nocollapse */ XListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
748
|
-
/** @nocollapse */ XListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.
|
|
747
|
+
/** @nocollapse */ XListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
748
|
+
/** @nocollapse */ XListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: XListModule, declarations: [XListComponent, XListDropGroup, XListOptionComponent, XListProperty, XListOptionProperty], imports: [CommonModule,
|
|
749
749
|
FormsModule,
|
|
750
750
|
ReactiveFormsModule,
|
|
751
751
|
DragDropModule,
|
|
@@ -757,7 +757,7 @@ class XListModule {
|
|
|
757
757
|
XOutletModule,
|
|
758
758
|
ScrollingModule,
|
|
759
759
|
XKeywordModule], exports: [XListComponent, XListDropGroup, XListOptionComponent] });
|
|
760
|
-
/** @nocollapse */ XListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.
|
|
760
|
+
/** @nocollapse */ XListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListModule, imports: [CommonModule,
|
|
761
761
|
FormsModule,
|
|
762
762
|
ReactiveFormsModule,
|
|
763
763
|
DragDropModule,
|
|
@@ -769,7 +769,7 @@ class XListModule {
|
|
|
769
769
|
XOutletModule,
|
|
770
770
|
ScrollingModule,
|
|
771
771
|
XKeywordModule] });
|
|
772
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
772
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: XListModule, decorators: [{
|
|
773
773
|
type: NgModule,
|
|
774
774
|
args: [{
|
|
775
775
|
declarations: [XListComponent, XListDropGroup, XListOptionComponent, XListProperty, XListOptionProperty],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-list.mjs","sources":["../../../../lib/ng-nest/ui/list/list.property.ts","../../../../lib/ng-nest/ui/list/list-option.component.ts","../../../../lib/ng-nest/ui/list/list-option.component.html","../../../../lib/ng-nest/ui/list/list-drop-group.directive.ts","../../../../lib/ng-nest/ui/list/list.component.ts","../../../../lib/ng-nest/ui/list/list.component.html","../../../../lib/ng-nest/ui/list/list.module.ts","../../../../lib/ng-nest/ui/list/ng-nest-ui-list.ts"],"sourcesContent":["import {\r\n XData,\r\n XParentIdentityProperty,\r\n XDataConvert,\r\n XInputNumber,\r\n XInputBoolean,\r\n XNumber,\r\n XBoolean,\r\n XTemplate,\r\n XWithConfig,\r\n XSize\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component, TemplateRef, ElementRef } from '@angular/core';\r\nimport { XControlValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { CdkDragDrop } from '@angular/cdk/drag-drop';\r\n\r\n/**\r\n * List\r\n * @selector x-list\r\n * @decorator component\r\n */\r\nexport const XListPrefix = 'x-list';\r\nconst X_CONFIG_NAME = 'list';\r\n\r\n/**\r\n * List Property\r\n */\r\n@Component({ template: '' })\r\nexport class XListProperty extends XControlValueAccessor<any> {\r\n /**\r\n * @zh_CN 列表数据\r\n * @en_US List data\r\n */\r\n @Input() @XDataConvert() data: XData<XListNode> = [];\r\n /**\r\n * @zh_CN 多选个数,设置为0,不限制选择个数\r\n * @en_US Multiple choice\r\n */\r\n @Input() @XInputNumber() multiple: XNumber = 1;\r\n /**\r\n * @zh_CN 多选添加全选功能,适用于 multiple=0\r\n * @en_US Multi choice to add full selection function\r\n */\r\n @Input() @XInputBoolean() selectAll?: XBoolean;\r\n /**\r\n * @zh_CN 全选的文字\r\n * @en_US Selected all text\r\n * @default '全选'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) selectAllText?: string;\r\n /**\r\n * @zh_CN 选中\r\n * @en_US Selected\r\n */\r\n @Input() @XInputBoolean() checked?: XBoolean;\r\n /**\r\n * @zh_CN 拖动\r\n * @en_US Drag\r\n */\r\n @Input() @XInputBoolean() drag?: XBoolean;\r\n /**\r\n * @zh_CN 当开启多选的时候,ngModel 的值为对象数组\r\n * @en_US When multiple selection is enabled, the value of ngmodel is an array of objects\r\n */\r\n @Input() @XInputBoolean() objectArray?: 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 * @zh_CN 列表头部\r\n * @en_US List header\r\n */\r\n @Input() header?: XTemplate;\r\n /**\r\n * @zh_CN 列表底部\r\n * @en_US List footer\r\n */\r\n @Input() footer?: XTemplate;\r\n /**\r\n * @zh_CN 滚动区域元素\r\n * @en_US Rolling area element\r\n */\r\n @Input() scrollElement?: HTMLElement;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') override size!: XSize;\r\n /**\r\n * @zh_CN 加载更多\r\n * @en_US load more\r\n */\r\n @Input() @XInputBoolean() loadMore!: XBoolean;\r\n /**\r\n * @zh_CN 加载更多的文字\r\n * @en_US Load more text\r\n * @default '加载更多'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) loadMoreText?: string;\r\n /**\r\n * @zh_CN 正在加载中的文字\r\n * @en_US Loading\r\n * @default '正在加载中'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) loadingMoreText?: string;\r\n /**\r\n * @zh_CN 开启虚拟滚动,不支持节点拖动功能\r\n * @en_US Turn on virtual scrolling\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() virtualScroll!: XBoolean;\r\n /**\r\n * @zh_CN 虚拟滚动高度, 实际会去掉头尾、全选、更多的高度\r\n * @en_US The virtual rolling height will actually remove the head and end, the full selection, more height\r\n */\r\n @Input() @XWithConfig<XNumber>(X_CONFIG_NAME, 400) @XInputNumber() scrollHeight!: XNumber;\r\n /**\r\n * @zh_CN 虚拟滚动高度自适应指定元素\r\n * @en_US virtual rolling height follows the specified object\r\n */\r\n @Input() heightAdaption!: ElementRef<HTMLElement> | HTMLElement;\r\n /**\r\n * @zh_CN 超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数\r\n * @en_US Exceed the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() minBufferPx: number = 100;\r\n /**\r\n * @zh_CN 渲染新数据缓冲区的像素,对应 cdk scroll 中的参数\r\n * @en_US Render the pixels of the new data buffer, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() maxBufferPx: number = 200;\r\n /**\r\n * @zh_CN 关键字高亮\r\n * @en_US Keyword highlighting\r\n */\r\n @Input() keywordText!: string | string[];\r\n /**\r\n * @zh_CN 匹配关键字区分大小写\r\n * @en_US Case-sensitive\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) caseSensitive!: XBoolean;\r\n /**\r\n * @zh_CN Full event\r\n * @en_US 全选事件\r\n */\r\n @Output() onSelectAll = new EventEmitter<boolean>();\r\n /**\r\n * @zh_CN 节点 mouseenter 事件\r\n * @en_US Node mouseenter event\r\n */\r\n @Output() nodeMouseenter = new EventEmitter<XListNode>();\r\n /**\r\n * @zh_CN 节点 mouseleave 事件\r\n * @en_US Node mouseleave event\r\n */\r\n @Output() nodeMouseleave = new EventEmitter<XListNode>();\r\n /**\r\n * @zh_CN 节点点击事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeClick = new EventEmitter<XListNode>();\r\n /**\r\n * @zh_CN 拖动结束事件\r\n * @en_US Drag the end\r\n */\r\n @Output() dropListDropped = new EventEmitter<XListDragDrop>();\r\n /**\r\n * @zh_CN Tab out 事件\r\n * @en_US Tab Out event\r\n */\r\n @Output() keyManagerTabOut = new EventEmitter<void>();\r\n /**\r\n * @zh_CN Tab out 事件\r\n * @en_US Tab Out event\r\n */\r\n @Output() keyManagerChange = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * @zh_CN List 数据对象\r\n * @en_US List data object\r\n */\r\nexport interface XListNode extends XParentIdentityProperty<XListNode> {\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Iicon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 分割线\r\n * @en_US Split line\r\n */\r\n divided?: boolean;\r\n /**\r\n * @zh_CN 事件\r\n * @en_US Event\r\n */\r\n event?: Event;\r\n /**\r\n * @zh_CN 悬停\r\n * @en_US Hover\r\n */\r\n hover?: boolean;\r\n /**\r\n * @zh_CN 激活\r\n * @en_US Active\r\n */\r\n active?: boolean;\r\n}\r\n\r\n/**\r\n * List Option\r\n * @selector x-list-option\r\n * @decorator component\r\n */\r\nexport const XListOptionPrefix = 'x-list-option';\r\n\r\n/**\r\n * List Option Property\r\n */\r\n@Component({ template: '' })\r\nexport class XListOptionProperty {\r\n /**\r\n * @zh_CN 节点参数\r\n * @en_US Node param\r\n */\r\n @Input() node?: XListNode;\r\n /**\r\n * @zh_CN 选中\r\n * @en_US Selected\r\n */\r\n @Input() @XInputBoolean() checked?: 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 * @zh_CN 选中\r\n * @en_US selected\r\n */\r\n @Input() @XInputBoolean() selected?: boolean;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US disabled\r\n */\r\n @Input() @XInputBoolean() disabled?: boolean;\r\n /**\r\n * @zh_CN 激活\r\n * @en_US active\r\n */\r\n @Input() @XInputBoolean() active?: boolean;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US icon\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * @zh_CN 分割线\r\n * @en_US Split line\r\n */\r\n @Input() divided?: boolean;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US label\r\n */\r\n @Input() label?: string;\r\n /**\r\n * @zh_CN 有子节点\r\n * @en_US leaf\r\n */\r\n @Input() @XInputBoolean() leaf?: boolean;\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 Keyword highlighting\r\n */\r\n @Input() keywordText!: string | string[];\r\n /**\r\n * @zh_CN 匹配关键字区分大小写\r\n * @en_US Case-sensitive\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) caseSensitive!: XBoolean;\r\n /**\r\n * @zh_CN 有子节点\r\n * @en_US leaf\r\n */\r\n @Output() activeChange = new EventEmitter<boolean>();\r\n}\r\n\r\n/**\r\n * @zh_CN 拖动相关的数据\r\n * @en_US Drag related data\r\n */\r\nexport type XListDragDrop = { data: XListNode[]; current: XListNode; currentIndex: number; event: CdkDragDrop<XListNode[]> };\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n HostBinding,\r\n SimpleChanges,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport { XListOptionPrefix, XListOptionProperty } from './list.property';\r\nimport { Highlightable } from '@angular/cdk/a11y';\r\nimport { XClassMap, XClearClass, XConfigService, XIsChange } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XListOptionPrefix}`,\r\n templateUrl: './list-option.component.html',\r\n styleUrls: ['./list-option.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XListOptionComponent extends XListOptionProperty implements Highlightable {\r\n @HostBinding('attr.role') role = 'option';\r\n classMap: XClassMap = {};\r\n constructor(public elementRef: ElementRef, private cdr: ChangeDetectorRef, public configService: XConfigService) {\r\n super();\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { size } = changes;\r\n XIsChange(size) && this.setClassMap();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.classMap);\r\n this.classMap[`${XListOptionPrefix}-${this.size}`] = this.size ? true : false;\r\n }\r\n\r\n setActiveStyles(): void {\r\n this.active = true;\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n setInactiveStyles(): void {\r\n this.active = false;\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n getLabel() {\r\n return this.label as string;\r\n }\r\n}\r\n","<div\r\n class=\"x-list-option\"\r\n [ngClass]=\"classMap\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <div class=\"x-list-option-content\">\r\n <ng-container *ngIf=\"!nodeTpl\">\r\n <x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon>\r\n <span x-keyword [text]=\"keywordText\" [caseSensitive]=\"caseSensitive\">{{ label }}</span>\r\n </ng-container>\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n","import { BooleanInput, coerceArray, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { CdkDropList } from '@angular/cdk/drag-drop';\r\nimport { Directive, InjectionToken, Input, OnDestroy } from '@angular/core';\r\n\r\nexport const X_LIST_DROP_GROUP = new InjectionToken<XListDropGroup>('XListDropGroup');\r\n\r\n@Directive({\r\n selector: '[xListDropGroup]',\r\n providers: [{ provide: X_LIST_DROP_GROUP, useExisting: XListDropGroup }]\r\n})\r\nexport class XListDropGroup implements OnDestroy {\r\n readonly dropLists = new Set<CdkDropList>();\r\n\r\n @Input('xListDropGroupDisabled')\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: BooleanInput) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n private _disabled = false;\r\n\r\n setConnectedTo() {\r\n this.dropLists.forEach((x) => {\r\n this.dropLists.forEach((y) => {\r\n if (!y.connectedTo) {\r\n y.connectedTo = [x];\r\n } else {\r\n if (!coerceArray(y.connectedTo).includes(x)) {\r\n coerceArray(y.connectedTo).push(x);\r\n }\r\n }\r\n });\r\n });\r\n console.log(this.dropLists);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.dropLists.clear();\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 SimpleChanges,\r\n OnChanges,\r\n QueryList,\r\n ElementRef,\r\n ViewChild,\r\n HostBinding,\r\n HostListener,\r\n ViewChildren,\r\n Optional,\r\n Inject,\r\n SkipSelf\r\n} from '@angular/core';\r\nimport { XListPrefix, XListNode, XListProperty } from './list.property';\r\nimport { XIsChange, XSetData, XConfigService, XIsEmpty, XIsUndefined, XIsNull, XResize } from '@ng-nest/ui/core';\r\nimport { CdkDrag, CdkDragDrop, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { XListOptionComponent } from './list-option.component';\r\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\r\nimport { ENTER } from '@angular/cdk/keycodes';\r\nimport { map, takeUntil, debounceTime } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XI18nList, XI18nService } from '@ng-nest/ui/i18n';\r\nimport { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\r\nimport { XListDropGroup, X_LIST_DROP_GROUP } from './list-drop-group.directive';\r\n\r\n@Component({\r\n selector: `${XListPrefix}`,\r\n templateUrl: './list.component.html',\r\n styleUrls: ['./list.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XListComponent)]\r\n})\r\nexport class XListComponent extends XListProperty implements OnInit, OnChanges {\r\n nodes: XListNode[] = [];\r\n selectedNodes: XListNode[] = [];\r\n @ViewChild('headerRef') headerRef!: ElementRef;\r\n @ViewChild('footerRef') footerRef!: ElementRef;\r\n @ViewChild('selectAllRef') selectAllRef!: ElementRef;\r\n @ViewChild('loadMoreRef') loadMoreRef!: ElementRef;\r\n @ViewChild('virtualBody') virtualBody!: CdkVirtualScrollViewport;\r\n @ViewChild(CdkDropList, { static: false }) dropList!: CdkDropList;\r\n @ViewChild('listItems') listItems!: ElementRef;\r\n @ViewChildren(XListOptionComponent)\r\n options!: QueryList<XListOptionComponent>;\r\n keyManager!: ActiveDescendantKeyManager<XListOptionComponent>;\r\n isSelectAll = false;\r\n locale: XI18nList = {};\r\n loadMoreIndex = 0;\r\n icon: string = '';\r\n iconSpin: boolean = false;\r\n private _resizeObserver!: ResizeObserver;\r\n\r\n @HostBinding('attr.role') role = 'listbox';\r\n @HostBinding('attr.tabindex') tabindex = -1;\r\n\r\n @HostListener('keydown', ['$event']) keydown($event: KeyboardEvent) {\r\n this.keyManager.onKeydown($event);\r\n const activeIndex = this.keyManager.activeItemIndex as number;\r\n if ($event.keyCode === ENTER && !XIsUndefined(activeIndex)) {\r\n this.setUnActive(activeIndex);\r\n this.onNodeClick($event, this.nodes[activeIndex]);\r\n }\r\n }\r\n\r\n itemSizeMap: { [key: string]: number } = {\r\n mini: 22,\r\n small: 24,\r\n medium: 28,\r\n large: 32,\r\n big: 36\r\n };\r\n\r\n get getItemSize() {\r\n return this.itemSizeMap[this.size];\r\n }\r\n\r\n get isEmpty() {\r\n return XIsEmpty(this.nodes);\r\n }\r\n\r\n get getSelectAllText() {\r\n return this.selectAllText || this.locale.selectAllText;\r\n }\r\n\r\n get getLoadMoreText() {\r\n return this.loadMoreText || this.locale.loadMoreText;\r\n }\r\n\r\n get getLoadingMoreText() {\r\n return this.loadingMoreText || this.locale.loadingMoreText;\r\n }\r\n\r\n get getVirtualScrollHeight() {\r\n let headerH = 0,\r\n footerH = 0,\r\n selectAllH = 0,\r\n loadMoreH = 0;\r\n if (this.headerRef) headerH = this.headerRef.nativeElement.clientHeight;\r\n if (this.footerRef) footerH = this.footerRef.nativeElement.clientHeight;\r\n if (this.selectAllRef) selectAllH = this.selectAllRef.nativeElement.clientHeight;\r\n if (this.loadMoreRef) loadMoreH = this.loadMoreRef.nativeElement.clientHeight;\r\n\r\n return Number(this.scrollHeight) - headerH - footerH - selectAllH - loadMoreH;\r\n }\r\n\r\n override writeValue(value: any): void {\r\n this.value = value;\r\n this.setSelected();\r\n this.setKeyManager();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public override cdr: ChangeDetectorRef,\r\n public elementRef: ElementRef,\r\n public configService: XConfigService,\r\n private i18n: XI18nService,\r\n @Optional()\r\n @Inject(X_LIST_DROP_GROUP)\r\n @SkipSelf()\r\n private group?: XListDropGroup\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.list as XI18nList),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { data } = changes;\r\n XIsChange(data) && this.setData();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initKeyManager();\r\n if (this.virtualScroll && this.heightAdaption) {\r\n this.setVirtualScrollHeight();\r\n XResize(this.heightAdaption as HTMLElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this._resizeObserver = x.resizeObserver;\r\n this.setVirtualScrollHeight();\r\n });\r\n }\r\n if (this.group && this.dropList) {\r\n this.group.dropLists.add(this.dropList);\r\n this.group.setConnectedTo();\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 this.group?.dropLists.delete(this.dropList);\r\n }\r\n\r\n private setVirtualScrollHeight() {\r\n this.scrollHeight = (this.heightAdaption as HTMLElement).clientHeight;\r\n this.minBufferPx = this.getVirtualScrollHeight;\r\n this.maxBufferPx = this.getVirtualScrollHeight * 1.2;\r\n this.virtualBody['_scrollStrategy']['_minBufferPx'] = this.minBufferPx;\r\n this.virtualBody['_scrollStrategy']['_maxBufferPx'] = this.maxBufferPx;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private setData() {\r\n if (this.loadMore) {\r\n this.icon = 'fto-loader';\r\n this.iconSpin = true;\r\n }\r\n XSetData<XListNode>(this.data, this._unSubject, true, this.loadMoreIndex).subscribe((x) => {\r\n if (this.loadMore) {\r\n this.nodes = [...this.nodes, ...x];\r\n this.icon = '';\r\n this.iconSpin = false;\r\n } else {\r\n this.nodes = x;\r\n }\r\n this.setSelected();\r\n this.setKeyManager();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n private initKeyManager() {\r\n this.keyManager = new ActiveDescendantKeyManager<XListOptionComponent>(this.options).withWrap();\r\n\r\n this.keyManager.tabOut.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.setUnActive(this.keyManager.activeItemIndex as number);\r\n this.keyManagerTabOut.emit();\r\n });\r\n\r\n this.keyManager.change.pipe(takeUntil(this._unSubject)).subscribe((num: number) => {\r\n this.setScorllTop(num);\r\n this.keyManagerChange.emit(num);\r\n });\r\n }\r\n\r\n setScorllTop(_num: number) {\r\n if (!this.scrollElement || !this.keyManager.activeItem) return;\r\n let ele = this.keyManager.activeItem!.elementRef.nativeElement as HTMLElement;\r\n let list = this.scrollElement;\r\n let min = list.scrollTop;\r\n let max = list.scrollTop + list.clientHeight;\r\n if (ele.offsetTop + ele.clientHeight > max) {\r\n let scrollTop = ele.offsetTop + ele.clientHeight - list.clientHeight;\r\n list.scrollTop = scrollTop;\r\n }\r\n if (ele.offsetTop < min) {\r\n list.scrollTop = ele.offsetTop;\r\n }\r\n }\r\n\r\n setSelected() {\r\n if (this.nodes.length > 0) {\r\n this.nodes\r\n .filter((x) => x.selected)\r\n .map((x) => {\r\n x.selected = false;\r\n });\r\n let valArry: any[] = [];\r\n if (this.value instanceof Array) {\r\n valArry = this.value;\r\n if (valArry.length === this.nodes.length) {\r\n this.isSelectAll = true;\r\n }\r\n } else {\r\n valArry = [this.value];\r\n }\r\n\r\n let ids = [];\r\n let selectedNodes = [];\r\n if (this.objectArray) {\r\n ids = valArry.filter((x) => !XIsUndefined(x) && !XIsNull(x)).map((x) => x.id);\r\n } else {\r\n ids = valArry;\r\n }\r\n for (let id of ids) {\r\n let node = this.nodes.find((x) => x.id === id);\r\n if (node) {\r\n node.selected = true;\r\n selectedNodes.push(node);\r\n }\r\n }\r\n this.selectedNodes = selectedNodes;\r\n }\r\n }\r\n\r\n setKeyManager() {\r\n if (XIsUndefined(this.keyManager) || XIsUndefined(this.nodes) || this.nodes.length === 0) return;\r\n let activeIndex = 0;\r\n if (XIsEmpty(this.value)) {\r\n this.keyManager.updateActiveItem(activeIndex);\r\n return;\r\n }\r\n let valArry: any[] = [];\r\n if (this.value instanceof Array) {\r\n valArry = this.value;\r\n } else {\r\n valArry = [this.value];\r\n }\r\n const first = valArry[0];\r\n if (this.objectArray) {\r\n activeIndex = this.nodes.findIndex((x) => x.id === first.id);\r\n } else {\r\n activeIndex = this.nodes.findIndex((x) => x.id === first);\r\n }\r\n this.keyManager.updateActiveItem(activeIndex);\r\n this.setScorllTop(activeIndex);\r\n }\r\n\r\n onNodeClick(event: Event, node: XListNode) {\r\n if (XIsUndefined(node) || node.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n if (node.disabled) return;\r\n if (node.selected && this.multiple === 1) {\r\n node.event = event;\r\n this.nodeClick.emit(node);\r\n return;\r\n }\r\n const selected = !node.selected;\r\n if (selected) {\r\n if (this.selectedNodes.length < this.multiple || this.multiple === 0) {\r\n node.selected = selected;\r\n this.selectedNodes = [...this.selectedNodes, node];\r\n if (this.selectedNodes.length === this.nodes.length) {\r\n this.isSelectAll = true;\r\n }\r\n this.cdr.detectChanges();\r\n } else if (this.multiple === 1 && this.selectedNodes.length === 1) {\r\n node.selected = selected;\r\n this.selectedNodes[0].selected = false;\r\n this.selectedNodes[0] = node;\r\n this.cdr.detectChanges();\r\n } else {\r\n return;\r\n }\r\n } else {\r\n node.selected = selected;\r\n this.selectedNodes.splice(\r\n this.selectedNodes.findIndex((x) => x.id == node.id),\r\n 1\r\n );\r\n this.isSelectAll = false;\r\n }\r\n if (this.multiple === 1 && this.selectedNodes.length === 1) {\r\n this.value = this.objectArray ? this.selectedNodes[0] : this.selectedNodes[0].id;\r\n } else {\r\n this.value = this.objectArray ? this.selectedNodes : this.selectedNodes.map((x) => x.id);\r\n }\r\n if (this.onChange) this.onChange(this.value);\r\n this.cdr.detectChanges();\r\n node.event = event;\r\n this.nodeClick.emit(node);\r\n }\r\n\r\n onMouseenter(event: Event, node: XListNode) {\r\n if (node.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n node.event = event;\r\n this.nodeMouseenter.emit(node);\r\n }\r\n\r\n onMouseleave(event: Event, node: XListNode) {\r\n if (node.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n node.event = event;\r\n this.nodeMouseleave.emit(node);\r\n }\r\n\r\n dropCdk(event: CdkDragDrop<XListNode[]>) {\r\n moveItemInArray(this.nodes, event.previousIndex, event.currentIndex);\r\n this.dropListDropped.emit({\r\n data: this.nodes,\r\n current: this.nodes[event.currentIndex],\r\n currentIndex: event.currentIndex,\r\n event: event\r\n });\r\n this.cdr.detectChanges();\r\n }\r\n\r\n predicate(_drag: CdkDrag<XListNode>, _drop: CdkDropList<XListNode>) {\r\n return true;\r\n }\r\n\r\n onSelectAllNodes() {\r\n this.isSelectAll = !this.isSelectAll;\r\n if (this.isSelectAll) {\r\n this.nodes.map((x) => {\r\n x.selected = true;\r\n return x;\r\n });\r\n this.selectedNodes = [...this.nodes];\r\n } else {\r\n this.nodes.map((x) => {\r\n x.selected = false;\r\n return x;\r\n });\r\n this.selectedNodes = [];\r\n }\r\n this.value = this.objectArray ? this.selectedNodes : this.selectedNodes.map((x) => x.id);\r\n if (this.onChange) this.onChange(this.value);\r\n this.onSelectAll.emit(this.isSelectAll);\r\n }\r\n\r\n onLoadMore() {\r\n this.loadMoreIndex++;\r\n this.setData();\r\n }\r\n\r\n trackByNode(_index: number, item: XListNode) {\r\n return item.id;\r\n }\r\n\r\n setUnActive(num: number) {\r\n if (num > -1) this.nodes[num].active = false;\r\n }\r\n}\r\n","<div class=\"x-list\">\r\n <ng-container *ngIf=\"header\">\r\n <div #headerRef class=\"x-list-header\" *xOutlet=\"header\">{{ header }}</div>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectAll && multiple === 0\">\r\n <div #selectAllRef class=\"x-list-select-all\">\r\n <x-list-option\r\n [size]=\"size\"\r\n [label]=\"getSelectAllText\"\r\n [checked]=\"true\"\r\n [selected]=\"isSelectAll\"\r\n (click)=\"onSelectAllNodes()\"\r\n ></x-list-option>\r\n </div>\r\n </ng-container>\r\n <cdk-virtual-scroll-viewport\r\n #virtualBody\r\n *ngIf=\"virtualScroll; else contentTpl\"\r\n [itemSize]=\"getItemSize\"\r\n [minBufferPx]=\"minBufferPx\"\r\n [maxBufferPx]=\"maxBufferPx\"\r\n class=\"x-list-content\"\r\n [style.height.px]=\"getVirtualScrollHeight\"\r\n [hidden]=\"isEmpty\"\r\n >\r\n <x-list-option\r\n *cdkVirtualFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </cdk-virtual-scroll-viewport>\r\n\r\n <ng-container *ngIf=\"loadMore && !isEmpty\">\r\n <div #loadMoreRef class=\"x-list-load-more\">\r\n <x-list-option [size]=\"size\" [nodeTpl]=\"loadMoreTpl\" (click)=\"onLoadMore()\"></x-list-option>\r\n </div>\r\n <ng-template #loadMoreTpl>\r\n <x-icon *ngIf=\"icon && iconSpin\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n {{ icon && iconSpin ? getLoadingMoreText : getLoadMoreText }}\r\n </ng-template>\r\n </ng-container>\r\n <x-empty *ngIf=\"isEmpty\"></x-empty>\r\n <ng-container *ngIf=\"footer\">\r\n <div #footerRef class=\"x-list-footer\" *xOutlet=\"footer\">{{ footer }}</div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #contentTpl>\r\n <div\r\n class=\"x-list-content\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n [cdkDropListData]=\"nodes\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <x-list-option\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n cdkDrag\r\n [cdkDragDisabled]=\"node.disabled\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XListComponent } from './list.component';\r\nimport { XListOptionComponent } from './list-option.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XListOptionProperty, XListProperty } from './list.property';\r\nimport { XEmptyModule } from '@ng-nest/ui/empty';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XI18nModule } from '@ng-nest/ui/i18n';\r\nimport { ScrollingModule } from '@angular/cdk/scrolling';\r\nimport { XKeywordModule } from '@ng-nest/ui/keyword';\r\nimport { XListDropGroup } from './list-drop-group.directive';\r\n\r\n@NgModule({\r\n declarations: [XListComponent, XListDropGroup, XListOptionComponent, XListProperty, XListOptionProperty],\r\n exports: [XListComponent, XListDropGroup, XListOptionComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DragDropModule,\r\n A11yModule,\r\n XIconModule,\r\n XEmptyModule,\r\n XBaseFormModule,\r\n XI18nModule,\r\n XOutletModule,\r\n ScrollingModule,\r\n XKeywordModule\r\n ]\r\n})\r\nexport class XListModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i5","i9.XListOptionComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-list.mjs","sources":["../../../../lib/ng-nest/ui/list/list.property.ts","../../../../lib/ng-nest/ui/list/list-option.component.ts","../../../../lib/ng-nest/ui/list/list-option.component.html","../../../../lib/ng-nest/ui/list/list-drop-group.directive.ts","../../../../lib/ng-nest/ui/list/list.component.ts","../../../../lib/ng-nest/ui/list/list.component.html","../../../../lib/ng-nest/ui/list/list.module.ts","../../../../lib/ng-nest/ui/list/ng-nest-ui-list.ts"],"sourcesContent":["import {\r\n XData,\r\n XParentIdentityProperty,\r\n XDataConvert,\r\n XInputNumber,\r\n XInputBoolean,\r\n XNumber,\r\n XBoolean,\r\n XTemplate,\r\n XWithConfig,\r\n XSize\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component, TemplateRef, ElementRef } from '@angular/core';\r\nimport { XControlValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { CdkDragDrop } from '@angular/cdk/drag-drop';\r\n\r\n/**\r\n * List\r\n * @selector x-list\r\n * @decorator component\r\n */\r\nexport const XListPrefix = 'x-list';\r\nconst X_CONFIG_NAME = 'list';\r\n\r\n/**\r\n * List Property\r\n */\r\n@Component({ template: '' })\r\nexport class XListProperty extends XControlValueAccessor<any> {\r\n /**\r\n * @zh_CN 列表数据\r\n * @en_US List data\r\n */\r\n @Input() @XDataConvert() data: XData<XListNode> = [];\r\n /**\r\n * @zh_CN 多选个数,设置为0,不限制选择个数\r\n * @en_US Multiple choice\r\n */\r\n @Input() @XInputNumber() multiple: XNumber = 1;\r\n /**\r\n * @zh_CN 多选添加全选功能,适用于 multiple=0\r\n * @en_US Multi choice to add full selection function\r\n */\r\n @Input() @XInputBoolean() selectAll?: XBoolean;\r\n /**\r\n * @zh_CN 全选的文字\r\n * @en_US Selected all text\r\n * @default '全选'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) selectAllText?: string;\r\n /**\r\n * @zh_CN 选中\r\n * @en_US Selected\r\n */\r\n @Input() @XInputBoolean() checked?: XBoolean;\r\n /**\r\n * @zh_CN 拖动\r\n * @en_US Drag\r\n */\r\n @Input() @XInputBoolean() drag?: XBoolean;\r\n /**\r\n * @zh_CN 当开启多选的时候,ngModel 的值为对象数组\r\n * @en_US When multiple selection is enabled, the value of ngmodel is an array of objects\r\n */\r\n @Input() @XInputBoolean() objectArray?: 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 * @zh_CN 列表头部\r\n * @en_US List header\r\n */\r\n @Input() header?: XTemplate;\r\n /**\r\n * @zh_CN 列表底部\r\n * @en_US List footer\r\n */\r\n @Input() footer?: XTemplate;\r\n /**\r\n * @zh_CN 滚动区域元素\r\n * @en_US Rolling area element\r\n */\r\n @Input() scrollElement?: HTMLElement;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') override size!: XSize;\r\n /**\r\n * @zh_CN 加载更多\r\n * @en_US load more\r\n */\r\n @Input() @XInputBoolean() loadMore!: XBoolean;\r\n /**\r\n * @zh_CN 加载更多的文字\r\n * @en_US Load more text\r\n * @default '加载更多'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) loadMoreText?: string;\r\n /**\r\n * @zh_CN 正在加载中的文字\r\n * @en_US Loading\r\n * @default '正在加载中'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) loadingMoreText?: string;\r\n /**\r\n * @zh_CN 开启虚拟滚动,不支持节点拖动功能\r\n * @en_US Turn on virtual scrolling\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() virtualScroll!: XBoolean;\r\n /**\r\n * @zh_CN 虚拟滚动高度, 实际会去掉头尾、全选、更多的高度\r\n * @en_US The virtual rolling height will actually remove the head and end, the full selection, more height\r\n */\r\n @Input() @XWithConfig<XNumber>(X_CONFIG_NAME, 400) @XInputNumber() scrollHeight!: XNumber;\r\n /**\r\n * @zh_CN 虚拟滚动高度自适应指定元素\r\n * @en_US virtual rolling height follows the specified object\r\n */\r\n @Input() heightAdaption!: ElementRef<HTMLElement> | HTMLElement;\r\n /**\r\n * @zh_CN 超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数\r\n * @en_US Exceed the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() minBufferPx: number = 100;\r\n /**\r\n * @zh_CN 渲染新数据缓冲区的像素,对应 cdk scroll 中的参数\r\n * @en_US Render the pixels of the new data buffer, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() maxBufferPx: number = 200;\r\n /**\r\n * @zh_CN 关键字高亮\r\n * @en_US Keyword highlighting\r\n */\r\n @Input() keywordText!: string | string[];\r\n /**\r\n * @zh_CN 匹配关键字区分大小写\r\n * @en_US Case-sensitive\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) caseSensitive!: XBoolean;\r\n /**\r\n * @zh_CN Full event\r\n * @en_US 全选事件\r\n */\r\n @Output() onSelectAll = new EventEmitter<boolean>();\r\n /**\r\n * @zh_CN 节点 mouseenter 事件\r\n * @en_US Node mouseenter event\r\n */\r\n @Output() nodeMouseenter = new EventEmitter<XListNode>();\r\n /**\r\n * @zh_CN 节点 mouseleave 事件\r\n * @en_US Node mouseleave event\r\n */\r\n @Output() nodeMouseleave = new EventEmitter<XListNode>();\r\n /**\r\n * @zh_CN 节点点击事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeClick = new EventEmitter<XListNode>();\r\n /**\r\n * @zh_CN 拖动结束事件\r\n * @en_US Drag the end\r\n */\r\n @Output() dropListDropped = new EventEmitter<XListDragDrop>();\r\n /**\r\n * @zh_CN Tab out 事件\r\n * @en_US Tab Out event\r\n */\r\n @Output() keyManagerTabOut = new EventEmitter<void>();\r\n /**\r\n * @zh_CN Tab out 事件\r\n * @en_US Tab Out event\r\n */\r\n @Output() keyManagerChange = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * @zh_CN List 数据对象\r\n * @en_US List data object\r\n */\r\nexport interface XListNode extends XParentIdentityProperty<XListNode> {\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Iicon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 分割线\r\n * @en_US Split line\r\n */\r\n divided?: boolean;\r\n /**\r\n * @zh_CN 事件\r\n * @en_US Event\r\n */\r\n event?: Event;\r\n /**\r\n * @zh_CN 悬停\r\n * @en_US Hover\r\n */\r\n hover?: boolean;\r\n /**\r\n * @zh_CN 激活\r\n * @en_US Active\r\n */\r\n active?: boolean;\r\n}\r\n\r\n/**\r\n * List Option\r\n * @selector x-list-option\r\n * @decorator component\r\n */\r\nexport const XListOptionPrefix = 'x-list-option';\r\n\r\n/**\r\n * List Option Property\r\n */\r\n@Component({ template: '' })\r\nexport class XListOptionProperty {\r\n /**\r\n * @zh_CN 节点参数\r\n * @en_US Node param\r\n */\r\n @Input() node?: XListNode;\r\n /**\r\n * @zh_CN 选中\r\n * @en_US Selected\r\n */\r\n @Input() @XInputBoolean() checked?: 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 * @zh_CN 选中\r\n * @en_US selected\r\n */\r\n @Input() @XInputBoolean() selected?: boolean;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US disabled\r\n */\r\n @Input() @XInputBoolean() disabled?: boolean;\r\n /**\r\n * @zh_CN 激活\r\n * @en_US active\r\n */\r\n @Input() @XInputBoolean() active?: boolean;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US icon\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * @zh_CN 分割线\r\n * @en_US Split line\r\n */\r\n @Input() divided?: boolean;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US label\r\n */\r\n @Input() label?: string;\r\n /**\r\n * @zh_CN 有子节点\r\n * @en_US leaf\r\n */\r\n @Input() @XInputBoolean() leaf?: boolean;\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 Keyword highlighting\r\n */\r\n @Input() keywordText!: string | string[];\r\n /**\r\n * @zh_CN 匹配关键字区分大小写\r\n * @en_US Case-sensitive\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) caseSensitive!: XBoolean;\r\n /**\r\n * @zh_CN 有子节点\r\n * @en_US leaf\r\n */\r\n @Output() activeChange = new EventEmitter<boolean>();\r\n}\r\n\r\n/**\r\n * @zh_CN 拖动相关的数据\r\n * @en_US Drag related data\r\n */\r\nexport type XListDragDrop = { data: XListNode[]; current: XListNode; currentIndex: number; event: CdkDragDrop<XListNode[]> };\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n HostBinding,\r\n SimpleChanges,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport { XListOptionPrefix, XListOptionProperty } from './list.property';\r\nimport { Highlightable } from '@angular/cdk/a11y';\r\nimport { XClassMap, XClearClass, XConfigService, XIsChange } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XListOptionPrefix}`,\r\n templateUrl: './list-option.component.html',\r\n styleUrls: ['./list-option.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XListOptionComponent extends XListOptionProperty implements Highlightable {\r\n @HostBinding('attr.role') role = 'option';\r\n classMap: XClassMap = {};\r\n constructor(public elementRef: ElementRef, private cdr: ChangeDetectorRef, public configService: XConfigService) {\r\n super();\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { size } = changes;\r\n XIsChange(size) && this.setClassMap();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.classMap);\r\n this.classMap[`${XListOptionPrefix}-${this.size}`] = this.size ? true : false;\r\n }\r\n\r\n setActiveStyles(): void {\r\n this.active = true;\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n setInactiveStyles(): void {\r\n this.active = false;\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n getLabel() {\r\n return this.label as string;\r\n }\r\n}\r\n","<div\r\n class=\"x-list-option\"\r\n [ngClass]=\"classMap\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <div class=\"x-list-option-content\">\r\n <ng-container *ngIf=\"!nodeTpl\">\r\n <x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon>\r\n <span x-keyword [text]=\"keywordText\" [caseSensitive]=\"caseSensitive\">{{ label }}</span>\r\n </ng-container>\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n","import { BooleanInput, coerceArray, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { CdkDropList } from '@angular/cdk/drag-drop';\r\nimport { Directive, InjectionToken, Input, OnDestroy } from '@angular/core';\r\n\r\nexport const X_LIST_DROP_GROUP = new InjectionToken<XListDropGroup>('XListDropGroup');\r\n\r\n@Directive({\r\n selector: '[xListDropGroup]',\r\n providers: [{ provide: X_LIST_DROP_GROUP, useExisting: XListDropGroup }]\r\n})\r\nexport class XListDropGroup implements OnDestroy {\r\n readonly dropLists = new Set<CdkDropList>();\r\n\r\n @Input('xListDropGroupDisabled')\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: BooleanInput) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n private _disabled = false;\r\n\r\n setConnectedTo() {\r\n this.dropLists.forEach((x) => {\r\n this.dropLists.forEach((y) => {\r\n if (!y.connectedTo) {\r\n y.connectedTo = [x];\r\n } else {\r\n if (!coerceArray(y.connectedTo).includes(x)) {\r\n coerceArray(y.connectedTo).push(x);\r\n }\r\n }\r\n });\r\n });\r\n console.log(this.dropLists);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.dropLists.clear();\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 SimpleChanges,\r\n OnChanges,\r\n QueryList,\r\n ElementRef,\r\n ViewChild,\r\n HostBinding,\r\n HostListener,\r\n ViewChildren,\r\n Optional,\r\n Inject,\r\n SkipSelf\r\n} from '@angular/core';\r\nimport { XListPrefix, XListNode, XListProperty } from './list.property';\r\nimport { XIsChange, XSetData, XConfigService, XIsEmpty, XIsUndefined, XIsNull, XResize } from '@ng-nest/ui/core';\r\nimport { CdkDrag, CdkDragDrop, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { XListOptionComponent } from './list-option.component';\r\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\r\nimport { ENTER } from '@angular/cdk/keycodes';\r\nimport { map, takeUntil, debounceTime } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XI18nList, XI18nService } from '@ng-nest/ui/i18n';\r\nimport { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\r\nimport { XListDropGroup, X_LIST_DROP_GROUP } from './list-drop-group.directive';\r\n\r\n@Component({\r\n selector: `${XListPrefix}`,\r\n templateUrl: './list.component.html',\r\n styleUrls: ['./list.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XListComponent)]\r\n})\r\nexport class XListComponent extends XListProperty implements OnInit, OnChanges {\r\n nodes: XListNode[] = [];\r\n selectedNodes: XListNode[] = [];\r\n @ViewChild('headerRef') headerRef!: ElementRef;\r\n @ViewChild('footerRef') footerRef!: ElementRef;\r\n @ViewChild('selectAllRef') selectAllRef!: ElementRef;\r\n @ViewChild('loadMoreRef') loadMoreRef!: ElementRef;\r\n @ViewChild('virtualBody') virtualBody!: CdkVirtualScrollViewport;\r\n @ViewChild(CdkDropList, { static: false }) dropList!: CdkDropList;\r\n @ViewChild('listItems') listItems!: ElementRef;\r\n @ViewChildren(XListOptionComponent)\r\n options!: QueryList<XListOptionComponent>;\r\n keyManager!: ActiveDescendantKeyManager<XListOptionComponent>;\r\n isSelectAll = false;\r\n locale: XI18nList = {};\r\n loadMoreIndex = 0;\r\n icon: string = '';\r\n iconSpin: boolean = false;\r\n private _resizeObserver!: ResizeObserver;\r\n\r\n @HostBinding('attr.role') role = 'listbox';\r\n @HostBinding('attr.tabindex') tabindex = -1;\r\n\r\n @HostListener('keydown', ['$event']) keydown($event: KeyboardEvent) {\r\n this.keyManager.onKeydown($event);\r\n const activeIndex = this.keyManager.activeItemIndex as number;\r\n if ($event.keyCode === ENTER && !XIsUndefined(activeIndex)) {\r\n this.setUnActive(activeIndex);\r\n this.onNodeClick($event, this.nodes[activeIndex]);\r\n }\r\n }\r\n\r\n itemSizeMap: { [key: string]: number } = {\r\n mini: 22,\r\n small: 24,\r\n medium: 28,\r\n large: 32,\r\n big: 36\r\n };\r\n\r\n get getItemSize() {\r\n return this.itemSizeMap[this.size];\r\n }\r\n\r\n get isEmpty() {\r\n return XIsEmpty(this.nodes);\r\n }\r\n\r\n get getSelectAllText() {\r\n return this.selectAllText || this.locale.selectAllText;\r\n }\r\n\r\n get getLoadMoreText() {\r\n return this.loadMoreText || this.locale.loadMoreText;\r\n }\r\n\r\n get getLoadingMoreText() {\r\n return this.loadingMoreText || this.locale.loadingMoreText;\r\n }\r\n\r\n get getVirtualScrollHeight() {\r\n let headerH = 0,\r\n footerH = 0,\r\n selectAllH = 0,\r\n loadMoreH = 0;\r\n if (this.headerRef) headerH = this.headerRef.nativeElement.clientHeight;\r\n if (this.footerRef) footerH = this.footerRef.nativeElement.clientHeight;\r\n if (this.selectAllRef) selectAllH = this.selectAllRef.nativeElement.clientHeight;\r\n if (this.loadMoreRef) loadMoreH = this.loadMoreRef.nativeElement.clientHeight;\r\n\r\n return Number(this.scrollHeight) - headerH - footerH - selectAllH - loadMoreH;\r\n }\r\n\r\n override writeValue(value: any): void {\r\n this.value = value;\r\n this.setSelected();\r\n this.setKeyManager();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public override cdr: ChangeDetectorRef,\r\n public elementRef: ElementRef,\r\n public configService: XConfigService,\r\n private i18n: XI18nService,\r\n @Optional()\r\n @Inject(X_LIST_DROP_GROUP)\r\n @SkipSelf()\r\n private group?: XListDropGroup\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.list as XI18nList),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { data } = changes;\r\n XIsChange(data) && this.setData();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initKeyManager();\r\n if (this.virtualScroll && this.heightAdaption) {\r\n this.setVirtualScrollHeight();\r\n XResize(this.heightAdaption as HTMLElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this._resizeObserver = x.resizeObserver;\r\n this.setVirtualScrollHeight();\r\n });\r\n }\r\n if (this.group && this.dropList) {\r\n this.group.dropLists.add(this.dropList);\r\n this.group.setConnectedTo();\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 this.group?.dropLists.delete(this.dropList);\r\n }\r\n\r\n private setVirtualScrollHeight() {\r\n this.scrollHeight = (this.heightAdaption as HTMLElement).clientHeight;\r\n this.minBufferPx = this.getVirtualScrollHeight;\r\n this.maxBufferPx = this.getVirtualScrollHeight * 1.2;\r\n this.virtualBody['_scrollStrategy']['_minBufferPx'] = this.minBufferPx;\r\n this.virtualBody['_scrollStrategy']['_maxBufferPx'] = this.maxBufferPx;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private setData() {\r\n if (this.loadMore) {\r\n this.icon = 'fto-loader';\r\n this.iconSpin = true;\r\n }\r\n XSetData<XListNode>(this.data, this._unSubject, true, this.loadMoreIndex).subscribe((x) => {\r\n if (this.loadMore) {\r\n this.nodes = [...this.nodes, ...x];\r\n this.icon = '';\r\n this.iconSpin = false;\r\n } else {\r\n this.nodes = x;\r\n }\r\n this.setSelected();\r\n this.setKeyManager();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n private initKeyManager() {\r\n this.keyManager = new ActiveDescendantKeyManager<XListOptionComponent>(this.options).withWrap();\r\n\r\n this.keyManager.tabOut.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.setUnActive(this.keyManager.activeItemIndex as number);\r\n this.keyManagerTabOut.emit();\r\n });\r\n\r\n this.keyManager.change.pipe(takeUntil(this._unSubject)).subscribe((num: number) => {\r\n this.setScorllTop(num);\r\n this.keyManagerChange.emit(num);\r\n });\r\n }\r\n\r\n setScorllTop(_num: number) {\r\n if (!this.scrollElement || !this.keyManager.activeItem) return;\r\n let ele = this.keyManager.activeItem!.elementRef.nativeElement as HTMLElement;\r\n let list = this.scrollElement;\r\n let min = list.scrollTop;\r\n let max = list.scrollTop + list.clientHeight;\r\n if (ele.offsetTop + ele.clientHeight > max) {\r\n let scrollTop = ele.offsetTop + ele.clientHeight - list.clientHeight;\r\n list.scrollTop = scrollTop;\r\n }\r\n if (ele.offsetTop < min) {\r\n list.scrollTop = ele.offsetTop;\r\n }\r\n }\r\n\r\n setSelected() {\r\n if (this.nodes.length > 0) {\r\n this.nodes\r\n .filter((x) => x.selected)\r\n .map((x) => {\r\n x.selected = false;\r\n });\r\n let valArry: any[] = [];\r\n if (this.value instanceof Array) {\r\n valArry = this.value;\r\n if (valArry.length === this.nodes.length) {\r\n this.isSelectAll = true;\r\n }\r\n } else {\r\n valArry = [this.value];\r\n }\r\n\r\n let ids = [];\r\n let selectedNodes = [];\r\n if (this.objectArray) {\r\n ids = valArry.filter((x) => !XIsUndefined(x) && !XIsNull(x)).map((x) => x.id);\r\n } else {\r\n ids = valArry;\r\n }\r\n for (let id of ids) {\r\n let node = this.nodes.find((x) => x.id === id);\r\n if (node) {\r\n node.selected = true;\r\n selectedNodes.push(node);\r\n }\r\n }\r\n this.selectedNodes = selectedNodes;\r\n }\r\n }\r\n\r\n setKeyManager() {\r\n if (XIsUndefined(this.keyManager) || XIsUndefined(this.nodes) || this.nodes.length === 0) return;\r\n let activeIndex = 0;\r\n if (XIsEmpty(this.value)) {\r\n this.keyManager.updateActiveItem(activeIndex);\r\n return;\r\n }\r\n let valArry: any[] = [];\r\n if (this.value instanceof Array) {\r\n valArry = this.value;\r\n } else {\r\n valArry = [this.value];\r\n }\r\n const first = valArry[0];\r\n if (this.objectArray) {\r\n activeIndex = this.nodes.findIndex((x) => x.id === first.id);\r\n } else {\r\n activeIndex = this.nodes.findIndex((x) => x.id === first);\r\n }\r\n this.keyManager.updateActiveItem(activeIndex);\r\n this.setScorllTop(activeIndex);\r\n }\r\n\r\n onNodeClick(event: Event, node: XListNode) {\r\n if (XIsUndefined(node) || node.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n if (node.disabled) return;\r\n if (node.selected && this.multiple === 1) {\r\n node.event = event;\r\n this.nodeClick.emit(node);\r\n return;\r\n }\r\n const selected = !node.selected;\r\n if (selected) {\r\n if (this.selectedNodes.length < this.multiple || this.multiple === 0) {\r\n node.selected = selected;\r\n this.selectedNodes = [...this.selectedNodes, node];\r\n if (this.selectedNodes.length === this.nodes.length) {\r\n this.isSelectAll = true;\r\n }\r\n this.cdr.detectChanges();\r\n } else if (this.multiple === 1 && this.selectedNodes.length === 1) {\r\n node.selected = selected;\r\n this.selectedNodes[0].selected = false;\r\n this.selectedNodes[0] = node;\r\n this.cdr.detectChanges();\r\n } else {\r\n return;\r\n }\r\n } else {\r\n node.selected = selected;\r\n this.selectedNodes.splice(\r\n this.selectedNodes.findIndex((x) => x.id == node.id),\r\n 1\r\n );\r\n this.isSelectAll = false;\r\n }\r\n if (this.multiple === 1 && this.selectedNodes.length === 1) {\r\n this.value = this.objectArray ? this.selectedNodes[0] : this.selectedNodes[0].id;\r\n } else {\r\n this.value = this.objectArray ? this.selectedNodes : this.selectedNodes.map((x) => x.id);\r\n }\r\n if (this.onChange) this.onChange(this.value);\r\n this.cdr.detectChanges();\r\n node.event = event;\r\n this.nodeClick.emit(node);\r\n }\r\n\r\n onMouseenter(event: Event, node: XListNode) {\r\n if (node.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n node.event = event;\r\n this.nodeMouseenter.emit(node);\r\n }\r\n\r\n onMouseleave(event: Event, node: XListNode) {\r\n if (node.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n node.event = event;\r\n this.nodeMouseleave.emit(node);\r\n }\r\n\r\n dropCdk(event: CdkDragDrop<XListNode[]>) {\r\n moveItemInArray(this.nodes, event.previousIndex, event.currentIndex);\r\n this.dropListDropped.emit({\r\n data: this.nodes,\r\n current: this.nodes[event.currentIndex],\r\n currentIndex: event.currentIndex,\r\n event: event\r\n });\r\n this.cdr.detectChanges();\r\n }\r\n\r\n predicate(_drag: CdkDrag<XListNode>, _drop: CdkDropList<XListNode>) {\r\n return true;\r\n }\r\n\r\n onSelectAllNodes() {\r\n this.isSelectAll = !this.isSelectAll;\r\n if (this.isSelectAll) {\r\n this.nodes.map((x) => {\r\n x.selected = true;\r\n return x;\r\n });\r\n this.selectedNodes = [...this.nodes];\r\n } else {\r\n this.nodes.map((x) => {\r\n x.selected = false;\r\n return x;\r\n });\r\n this.selectedNodes = [];\r\n }\r\n this.value = this.objectArray ? this.selectedNodes : this.selectedNodes.map((x) => x.id);\r\n if (this.onChange) this.onChange(this.value);\r\n this.onSelectAll.emit(this.isSelectAll);\r\n }\r\n\r\n onLoadMore() {\r\n this.loadMoreIndex++;\r\n this.setData();\r\n }\r\n\r\n trackByNode(_index: number, item: XListNode) {\r\n return item.id;\r\n }\r\n\r\n setUnActive(num: number) {\r\n if (num > -1) this.nodes[num].active = false;\r\n }\r\n}\r\n","<div class=\"x-list\">\r\n <ng-container *ngIf=\"header\">\r\n <div #headerRef class=\"x-list-header\" *xOutlet=\"header\">{{ header }}</div>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectAll && multiple === 0\">\r\n <div #selectAllRef class=\"x-list-select-all\">\r\n <x-list-option\r\n [size]=\"size\"\r\n [label]=\"getSelectAllText\"\r\n [checked]=\"true\"\r\n [selected]=\"isSelectAll\"\r\n (click)=\"onSelectAllNodes()\"\r\n ></x-list-option>\r\n </div>\r\n </ng-container>\r\n <cdk-virtual-scroll-viewport\r\n #virtualBody\r\n *ngIf=\"virtualScroll; else contentTpl\"\r\n [itemSize]=\"getItemSize\"\r\n [minBufferPx]=\"minBufferPx\"\r\n [maxBufferPx]=\"maxBufferPx\"\r\n class=\"x-list-content\"\r\n [style.height.px]=\"getVirtualScrollHeight\"\r\n [hidden]=\"isEmpty\"\r\n >\r\n <x-list-option\r\n *cdkVirtualFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </cdk-virtual-scroll-viewport>\r\n\r\n <ng-container *ngIf=\"loadMore && !isEmpty\">\r\n <div #loadMoreRef class=\"x-list-load-more\">\r\n <x-list-option [size]=\"size\" [nodeTpl]=\"loadMoreTpl\" (click)=\"onLoadMore()\"></x-list-option>\r\n </div>\r\n <ng-template #loadMoreTpl>\r\n <x-icon *ngIf=\"icon && iconSpin\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n {{ icon && iconSpin ? getLoadingMoreText : getLoadMoreText }}\r\n </ng-template>\r\n </ng-container>\r\n <x-empty *ngIf=\"isEmpty\"></x-empty>\r\n <ng-container *ngIf=\"footer\">\r\n <div #footerRef class=\"x-list-footer\" *xOutlet=\"footer\">{{ footer }}</div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #contentTpl>\r\n <div\r\n class=\"x-list-content\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n [cdkDropListData]=\"nodes\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <x-list-option\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n cdkDrag\r\n [cdkDragDisabled]=\"node.disabled\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n [size]=\"size\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XListComponent } from './list.component';\r\nimport { XListOptionComponent } from './list-option.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XListOptionProperty, XListProperty } from './list.property';\r\nimport { XEmptyModule } from '@ng-nest/ui/empty';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XI18nModule } from '@ng-nest/ui/i18n';\r\nimport { ScrollingModule } from '@angular/cdk/scrolling';\r\nimport { XKeywordModule } from '@ng-nest/ui/keyword';\r\nimport { XListDropGroup } from './list-drop-group.directive';\r\n\r\n@NgModule({\r\n declarations: [XListComponent, XListDropGroup, XListOptionComponent, XListProperty, XListOptionProperty],\r\n exports: [XListComponent, XListDropGroup, XListOptionComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DragDropModule,\r\n A11yModule,\r\n XIconModule,\r\n XEmptyModule,\r\n XBaseFormModule,\r\n XI18nModule,\r\n XOutletModule,\r\n ScrollingModule,\r\n XKeywordModule\r\n ]\r\n})\r\nexport class XListModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i5","i9.XListOptionComponent"],"mappings":"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"}
|