@ng-nest/ui 13.1.8 → 14.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/affix/affix.component.d.ts +1 -1
- package/affix/affix.property.d.ts +1 -1
- package/affix/{ng-nest-ui-affix.d.ts → index.d.ts} +0 -0
- package/alert/alert.component.d.ts +1 -1
- package/alert/alert.property.d.ts +1 -1
- package/alert/{ng-nest-ui-alert.d.ts → index.d.ts} +0 -0
- package/anchor/anchor.component.d.ts +1 -1
- package/anchor/anchor.property.d.ts +1 -1
- package/anchor/{ng-nest-ui-anchor.d.ts → index.d.ts} +0 -0
- package/api/api.component.d.ts +1 -1
- package/api/{ng-nest-ui-api.d.ts → index.d.ts} +0 -0
- package/auto-complete/auto-complete-portal.component.d.ts +1 -1
- package/auto-complete/auto-complete.component.d.ts +1 -1
- package/auto-complete/auto-complete.property.d.ts +1 -1
- package/auto-complete/{ng-nest-ui-auto-complete.d.ts → index.d.ts} +0 -0
- package/avatar/avatar.component.d.ts +1 -1
- package/avatar/avatar.property.d.ts +1 -1
- package/avatar/{ng-nest-ui-avatar.d.ts → index.d.ts} +0 -0
- package/back-top/back-top.component.d.ts +1 -1
- package/back-top/back-top.property.d.ts +1 -1
- package/back-top/{ng-nest-ui-back-top.d.ts → index.d.ts} +0 -0
- package/badge/badge.component.d.ts +1 -1
- package/badge/badge.property.d.ts +1 -1
- package/badge/{ng-nest-ui-badge.d.ts → index.d.ts} +0 -0
- package/base-form/base-form.component.d.ts +1 -1
- package/base-form/base-form.property.d.ts +1 -1
- package/base-form/{ng-nest-ui-base-form.d.ts → index.d.ts} +0 -0
- package/border/border.component.d.ts +1 -1
- package/border/{ng-nest-ui-border.d.ts → index.d.ts} +0 -0
- package/button/button.component.d.ts +1 -1
- package/button/button.property.d.ts +2 -2
- package/button/buttons.component.d.ts +1 -1
- package/button/{ng-nest-ui-button.d.ts → index.d.ts} +0 -0
- package/calendar/calendar.component.d.ts +1 -1
- package/calendar/calendar.property.d.ts +1 -1
- package/calendar/{ng-nest-ui-calendar.d.ts → index.d.ts} +0 -0
- package/card/card.component.d.ts +1 -1
- package/card/card.property.d.ts +1 -1
- package/card/{ng-nest-ui-card.d.ts → index.d.ts} +0 -0
- package/carousel/carousel-panel.component.d.ts +1 -1
- package/carousel/carousel.component.d.ts +1 -1
- package/carousel/carousel.property.d.ts +2 -2
- package/carousel/{ng-nest-ui-carousel.d.ts → index.d.ts} +0 -0
- package/cascade/cascade-portal.component.d.ts +1 -1
- package/cascade/cascade.component.d.ts +2 -3
- package/cascade/cascade.property.d.ts +1 -1
- package/cascade/{ng-nest-ui-cascade.d.ts → index.d.ts} +0 -0
- package/checkbox/checkbox.component.d.ts +1 -1
- package/checkbox/checkbox.property.d.ts +1 -1
- package/checkbox/{ng-nest-ui-checkbox.d.ts → index.d.ts} +0 -0
- package/collapse/collapse-panel.component.d.ts +1 -1
- package/collapse/collapse.component.d.ts +1 -1
- package/collapse/collapse.property.d.ts +2 -2
- package/collapse/{ng-nest-ui-collapse.d.ts → index.d.ts} +0 -0
- package/color/color.component.d.ts +1 -1
- package/color/color.property.d.ts +1 -1
- package/color/{ng-nest-ui-color.d.ts → index.d.ts} +0 -0
- package/color-picker/color-picker-portal.component.d.ts +1 -1
- package/color-picker/color-picker.component.d.ts +1 -1
- package/color-picker/color-picker.property.d.ts +1 -1
- package/color-picker/{ng-nest-ui-color-picker.d.ts → index.d.ts} +0 -0
- package/comment/comment-reply.component.d.ts +1 -1
- package/comment/comment.component.d.ts +1 -1
- package/comment/comment.property.d.ts +2 -2
- package/comment/{ng-nest-ui-comment.d.ts → index.d.ts} +0 -0
- package/container/aside.component.d.ts +1 -1
- package/container/container.component.d.ts +1 -1
- package/container/container.property.d.ts +4 -4
- package/container/footer.component.d.ts +1 -1
- package/container/header.component.d.ts +1 -1
- package/container/{ng-nest-ui-container.d.ts → index.d.ts} +0 -0
- package/container/main.component.d.ts +1 -1
- package/core/animation/opacity.d.ts +2 -0
- package/core/animation/public-api.d.ts +1 -0
- package/core/config/config.d.ts +2 -0
- package/core/config/config.service.d.ts +1 -1
- package/core/{ng-nest-ui-core.d.ts → index.d.ts} +0 -0
- package/crumb/crumb.component.d.ts +1 -1
- package/crumb/crumb.property.d.ts +1 -1
- package/crumb/{ng-nest-ui-crumb.d.ts → index.d.ts} +0 -0
- package/date-picker/date-picker-portal.component.d.ts +1 -1
- package/date-picker/date-picker.component.d.ts +1 -1
- package/date-picker/date-picker.property.d.ts +5 -5
- package/date-picker/date-range-portal.component.d.ts +1 -1
- package/date-picker/date-range.component.d.ts +1 -1
- package/date-picker/{ng-nest-ui-date-picker.d.ts → index.d.ts} +0 -0
- package/date-picker/picker-date.component.d.ts +1 -1
- package/date-picker/picker-month.component.d.ts +1 -1
- package/date-picker/picker-year.component.d.ts +1 -1
- package/description/description-item.component.d.ts +1 -1
- package/description/description.component.d.ts +1 -1
- package/description/description.property.d.ts +2 -2
- package/description/{ng-nest-ui-description.d.ts → index.d.ts} +0 -0
- package/dialog/dialog-container.component.d.ts +8 -0
- package/dialog/dialog-portal.component.d.ts +1 -1
- package/dialog/dialog-portal.directives.d.ts +6 -6
- package/dialog/dialog.component.d.ts +11 -3
- package/dialog/dialog.module.d.ts +15 -14
- package/dialog/dialog.property.d.ts +17 -3
- package/dialog/examples/en_US/default/container/README.md +6 -0
- package/dialog/examples/en_US/default/resizable/README.md +6 -0
- package/dialog/examples/zh_CN/default/container/README.md +6 -0
- package/dialog/{ng-nest-ui-dialog.d.ts → index.d.ts} +0 -0
- package/dialog/public-api.d.ts +1 -0
- package/doc/doc.component.d.ts +1 -1
- package/doc/{ng-nest-ui-doc.d.ts → index.d.ts} +0 -0
- package/drawer/drawer-container.component.d.ts +1 -1
- package/drawer/drawer-portal.component.d.ts +1 -1
- package/drawer/drawer-portal.directives.d.ts +3 -3
- package/drawer/drawer.component.d.ts +1 -1
- package/drawer/drawer.property.d.ts +2 -2
- package/drawer/{ng-nest-ui-drawer.d.ts → index.d.ts} +0 -0
- package/dropdown/dropdown-portal.component.d.ts +1 -1
- package/dropdown/dropdown.component.d.ts +1 -1
- package/dropdown/dropdown.property.d.ts +1 -1
- package/dropdown/{ng-nest-ui-dropdown.d.ts → index.d.ts} +0 -0
- package/empty/empty.component.d.ts +1 -1
- package/empty/empty.property.d.ts +1 -1
- package/empty/{ng-nest-ui-empty.d.ts → index.d.ts} +0 -0
- 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 +10 -10
- package/esm2020/alert/alert.module.mjs +5 -5
- package/esm2020/alert/alert.property.mjs +4 -4
- package/esm2020/anchor/anchor.component.mjs +7 -7
- 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 +7 -7
- package/esm2020/auto-complete/auto-complete.module.mjs +5 -5
- package/esm2020/auto-complete/auto-complete.property.mjs +4 -4
- package/esm2020/avatar/avatar.component.mjs +7 -7
- package/esm2020/avatar/avatar.module.mjs +5 -5
- package/esm2020/avatar/avatar.property.mjs +4 -4
- package/esm2020/back-top/back-top.component.mjs +6 -6
- 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 +7 -7
- 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 +10 -10
- 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 +7 -7
- package/esm2020/carousel/carousel.module.mjs +5 -5
- package/esm2020/carousel/carousel.property.mjs +7 -7
- package/esm2020/cascade/cascade-portal.component.mjs +7 -7
- package/esm2020/cascade/cascade.component.mjs +10 -12
- package/esm2020/cascade/cascade.module.mjs +5 -5
- package/esm2020/cascade/cascade.property.mjs +4 -4
- package/esm2020/checkbox/checkbox.component.mjs +6 -6
- package/esm2020/checkbox/checkbox.module.mjs +5 -5
- package/esm2020/checkbox/checkbox.property.mjs +4 -4
- package/esm2020/collapse/collapse-panel.component.mjs +7 -7
- 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 +10 -10
- package/esm2020/color-picker/color-picker.component.mjs +7 -7
- package/esm2020/color-picker/color-picker.module.mjs +13 -15
- package/esm2020/color-picker/color-picker.property.mjs +4 -4
- package/esm2020/comment/comment-reply.component.mjs +7 -7
- package/esm2020/comment/comment.component.mjs +8 -8
- package/esm2020/comment/comment.module.mjs +13 -15
- 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/animation/opacity.mjs +9 -0
- package/esm2020/core/animation/public-api.mjs +2 -1
- package/esm2020/core/config/config.mjs +1 -1
- 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 +6 -6
- 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 +8 -8
- package/esm2020/date-picker/date-picker.component.mjs +7 -7
- package/esm2020/date-picker/date-picker.module.mjs +14 -16
- package/esm2020/date-picker/date-picker.property.mjs +16 -16
- package/esm2020/date-picker/date-range-portal.component.mjs +6 -6
- package/esm2020/date-picker/date-range.component.mjs +7 -7
- 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 +29 -0
- package/esm2020/dialog/dialog-portal.component.mjs +6 -6
- package/esm2020/dialog/dialog-portal.directives.mjs +19 -19
- package/esm2020/dialog/dialog.component.mjs +70 -18
- package/esm2020/dialog/dialog.module.mjs +25 -20
- package/esm2020/dialog/dialog.property.mjs +24 -6
- package/esm2020/dialog/dialog.service.mjs +4 -4
- package/esm2020/dialog/public-api.mjs +2 -1
- 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 +7 -7
- 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 +7 -7
- 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 +12 -12
- package/esm2020/find/find.module.mjs +16 -18
- package/esm2020/find/find.property.mjs +4 -4
- package/esm2020/form/control.component.mjs +25 -24
- package/esm2020/form/form.component.mjs +11 -10
- package/esm2020/form/form.module.mjs +5 -5
- package/esm2020/form/form.property.mjs +10 -10
- 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 +5 -5
- package/esm2020/icon/icon.property.mjs +4 -4
- package/esm2020/icon/icon.service.mjs +4 -4
- 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 +9 -9
- package/esm2020/input/input.module.mjs +5 -5
- package/esm2020/input/input.property.mjs +7 -7
- package/esm2020/input-number/input-number.component.mjs +9 -9
- package/esm2020/input-number/input-number.module.mjs +5 -5
- package/esm2020/input-number/input-number.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 +6 -6
- package/esm2020/link/link.module.mjs +5 -5
- package/esm2020/link/link.property.mjs +4 -4
- package/esm2020/list/list-option.component.mjs +6 -6
- package/esm2020/list/list.component.mjs +11 -11
- package/esm2020/list/list.module.mjs +14 -16
- package/esm2020/list/list.property.mjs +7 -7
- package/esm2020/loading/loading.component.mjs +6 -6
- package/esm2020/loading/loading.module.mjs +5 -5
- package/esm2020/loading/loading.property.mjs +4 -4
- package/esm2020/menu/menu-node.component.mjs +7 -7
- package/esm2020/menu/menu.component.mjs +7 -7
- package/esm2020/menu/menu.module.mjs +5 -5
- package/esm2020/menu/menu.property.mjs +7 -7
- package/esm2020/message/message.component.mjs +6 -6
- package/esm2020/message/message.module.mjs +5 -5
- package/esm2020/message/message.service.mjs +4 -4
- package/esm2020/message-box/message-box.component.mjs +13 -13
- package/esm2020/message-box/message-box.module.mjs +13 -15
- package/esm2020/message-box/message-box.service.mjs +4 -4
- package/esm2020/notification/notification.component.mjs +6 -6
- 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 +6 -6
- 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 +10 -10
- 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 +9 -9
- 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 +39 -12
- package/esm2020/progress/progress.component.mjs +6 -6
- package/esm2020/progress/progress.module.mjs +5 -5
- package/esm2020/progress/progress.property.mjs +4 -4
- package/esm2020/radio/radio.component.mjs +6 -6
- package/esm2020/radio/radio.module.mjs +5 -5
- package/esm2020/radio/radio.property.mjs +4 -4
- package/esm2020/rate/rate.component.mjs +6 -6
- 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 +6 -6
- 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 +24 -9
- package/esm2020/select/select.component.mjs +28 -10
- package/esm2020/select/select.module.mjs +5 -5
- package/esm2020/select/select.property.mjs +16 -4
- package/esm2020/skeleton/skeleton.component.mjs +6 -6
- package/esm2020/skeleton/skeleton.module.mjs +5 -5
- package/esm2020/skeleton/skeleton.property.mjs +4 -4
- package/esm2020/slider/slider.component.mjs +6 -6
- package/esm2020/slider/slider.module.mjs +5 -5
- package/esm2020/slider/slider.property.mjs +4 -4
- package/esm2020/slider-select/slider-select.component.mjs +5 -5
- 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 +5 -5
- package/esm2020/statistic/statistic.component.mjs +6 -6
- package/esm2020/statistic/statistic.module.mjs +5 -5
- package/esm2020/statistic/statistic.property.mjs +7 -7
- package/esm2020/steps/steps.component.mjs +6 -6
- 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 +11 -11
- package/esm2020/table/table-foot.component.mjs +4 -4
- package/esm2020/table/table-head.component.mjs +10 -10
- package/esm2020/table/table.component.mjs +10 -10
- package/esm2020/table/table.module.mjs +14 -16
- package/esm2020/table/table.property.mjs +13 -13
- package/esm2020/tabs/tab-content.component.mjs +4 -4
- package/esm2020/tabs/tab.component.mjs +4 -4
- package/esm2020/tabs/tabs.component.mjs +7 -7
- package/esm2020/tabs/tabs.module.mjs +5 -5
- package/esm2020/tabs/tabs.property.mjs +7 -7
- package/esm2020/tag/tag.component.mjs +6 -6
- package/esm2020/tag/tag.module.mjs +5 -5
- package/esm2020/tag/tag.property.mjs +4 -4
- package/esm2020/text-retract/text-retract.component.mjs +6 -6
- 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 +8 -8
- package/esm2020/textarea/textarea.module.mjs +5 -5
- package/esm2020/textarea/textarea.property.mjs +4 -4
- package/esm2020/theme/theme.component.mjs +12 -12
- package/esm2020/theme/theme.module.mjs +13 -15
- 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 +6 -6
- package/esm2020/time-picker/time-picker-portal.component.mjs +4 -4
- package/esm2020/time-picker/time-picker.component.mjs +7 -7
- package/esm2020/time-picker/time-picker.module.mjs +13 -15
- 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 +7 -7
- 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 +9 -9
- package/esm2020/transfer/transfer.module.mjs +5 -5
- package/esm2020/transfer/transfer.property.mjs +4 -4
- package/esm2020/tree/tree-node.component.mjs +10 -10
- package/esm2020/tree/tree.component.mjs +8 -8
- package/esm2020/tree/tree.module.mjs +5 -5
- package/esm2020/tree/tree.property.mjs +7 -7
- package/esm2020/tree-file/tree-file.component.mjs +8 -8
- package/esm2020/tree-file/tree-file.module.mjs +5 -5
- package/esm2020/tree-file/tree-file.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 +5 -5
- package/esm2020/upload/upload.component.mjs +8 -8
- package/esm2020/upload/upload.module.mjs +14 -16
- package/esm2020/upload/upload.property.mjs +4 -4
- package/examples/examples.component.d.ts +1 -1
- package/examples/{ng-nest-ui-examples.d.ts → index.d.ts} +0 -0
- 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 +19 -19
- package/fesm2015/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-anchor.mjs +13 -13
- 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 +17 -17
- package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-avatar.mjs +14 -14
- package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-back-top.mjs +12 -12
- 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 +20 -20
- package/fesm2015/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-calendar.mjs +20 -20
- 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 +20 -20
- package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-cascade.mjs +22 -24
- package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-checkbox.mjs +13 -13
- package/fesm2015/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-collapse.mjs +20 -20
- package/fesm2015/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-color-picker.mjs +32 -34
- 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 +34 -36
- 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 +23 -16
- package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-crumb.mjs +13 -13
- package/fesm2015/ng-nest-ui-crumb.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-date-picker.mjs +56 -58
- 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 +161 -68
- 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 +37 -37
- 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 +14 -14
- 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 +35 -37
- package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-form.mjs +47 -45
- 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 +13 -13
- package/fesm2015/ng-nest-ui-icon.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 +18 -18
- package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input.mjs +23 -23
- package/fesm2015/ng-nest-ui-input.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 +13 -13
- package/fesm2015/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-list.mjs +33 -35
- package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-loading.mjs +13 -13
- package/fesm2015/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-menu.mjs +23 -23
- package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message-box.mjs +29 -31
- package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message.mjs +13 -13
- package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-notification.mjs +13 -13
- 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 +13 -13
- package/fesm2015/ng-nest-ui-page-header.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-pagination.mjs +19 -19
- 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 +18 -18
- 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 +42 -15
- package/fesm2015/ng-nest-ui-portal.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-progress.mjs +13 -13
- package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-radio.mjs +13 -13
- package/fesm2015/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-rate.mjs +13 -13
- 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 +13 -13
- 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 +70 -25
- package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-skeleton.mjs +13 -13
- package/fesm2015/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider-select.mjs +11 -11
- package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider.mjs +13 -13
- package/fesm2015/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-statistic.mjs +20 -20
- package/fesm2015/ng-nest-ui-statistic.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-steps.mjs +13 -13
- 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 +55 -57
- package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tabs.mjs +21 -21
- package/fesm2015/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tag.mjs +13 -13
- package/fesm2015/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-text-retract.mjs +13 -13
- package/fesm2015/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-textarea.mjs +15 -15
- package/fesm2015/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-theme.mjs +28 -30
- 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 +32 -34
- 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 +14 -14
- 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 +17 -17
- package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-file.mjs +16 -16
- package/fesm2015/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree.mjs +28 -28
- 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 -29
- 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 +19 -19
- package/fesm2020/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-anchor.mjs +13 -13
- 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 +17 -17
- package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-avatar.mjs +14 -14
- package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-back-top.mjs +12 -12
- 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 +20 -20
- package/fesm2020/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-calendar.mjs +20 -20
- 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 +20 -20
- package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-cascade.mjs +22 -24
- package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-checkbox.mjs +13 -13
- package/fesm2020/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-collapse.mjs +20 -20
- package/fesm2020/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-color-picker.mjs +32 -34
- 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 +34 -36
- 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 +23 -16
- package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-crumb.mjs +13 -13
- package/fesm2020/ng-nest-ui-crumb.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-date-picker.mjs +56 -58
- 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 +166 -68
- 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 +37 -37
- 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 +14 -14
- 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 +35 -37
- package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-form.mjs +47 -45
- 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 +13 -13
- package/fesm2020/ng-nest-ui-icon.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 +18 -18
- package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input.mjs +23 -23
- package/fesm2020/ng-nest-ui-input.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 +13 -13
- package/fesm2020/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-list.mjs +33 -35
- package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-loading.mjs +13 -13
- package/fesm2020/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-menu.mjs +23 -23
- package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message-box.mjs +29 -31
- package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message.mjs +13 -13
- package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-notification.mjs +13 -13
- 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 +13 -13
- package/fesm2020/ng-nest-ui-page-header.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-pagination.mjs +19 -19
- 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 +18 -18
- 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 +42 -15
- package/fesm2020/ng-nest-ui-portal.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-progress.mjs +13 -13
- package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-radio.mjs +13 -13
- package/fesm2020/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-rate.mjs +13 -13
- 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 +13 -13
- 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 +70 -25
- package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-skeleton.mjs +13 -13
- package/fesm2020/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider-select.mjs +11 -11
- package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider.mjs +13 -13
- package/fesm2020/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-statistic.mjs +20 -20
- package/fesm2020/ng-nest-ui-statistic.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-steps.mjs +13 -13
- 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 +55 -57
- package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tabs.mjs +21 -21
- package/fesm2020/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tag.mjs +13 -13
- package/fesm2020/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-text-retract.mjs +13 -13
- package/fesm2020/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-textarea.mjs +15 -15
- package/fesm2020/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-theme.mjs +28 -30
- 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 +32 -34
- 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 +14 -14
- 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 +17 -17
- package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-file.mjs +16 -16
- package/fesm2020/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree.mjs +28 -28
- 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 +27 -29
- package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
- package/find/find.component.d.ts +1 -1
- package/find/find.property.d.ts +1 -1
- package/find/{ng-nest-ui-find.d.ts → index.d.ts} +0 -0
- package/form/control.component.d.ts +1 -1
- package/form/form.component.d.ts +2 -1
- package/form/form.property.d.ts +5 -5
- package/form/{ng-nest-ui-form.d.ts → index.d.ts} +0 -0
- package/highlight/highlight.component.d.ts +1 -1
- package/highlight/highlight.property.d.ts +1 -1
- package/highlight/{ng-nest-ui-highlight.d.ts → index.d.ts} +0 -0
- package/i18n/i18n.directive.d.ts +1 -1
- package/i18n/i18n.pipe.d.ts +1 -1
- package/i18n/{ng-nest-ui-i18n.d.ts → index.d.ts} +0 -0
- package/icon/icon.component.d.ts +1 -1
- package/icon/icon.property.d.ts +1 -1
- package/icon/{ng-nest-ui-icon.d.ts → index.d.ts} +0 -0
- package/inner/{ng-nest-ui-inner.d.ts → index.d.ts} +0 -0
- package/inner/inner.component.d.ts +1 -1
- package/inner/inner.property.d.ts +1 -1
- package/input/{ng-nest-ui-input.d.ts → index.d.ts} +0 -0
- package/input/input-group.component.d.ts +1 -1
- package/input/input.component.d.ts +1 -1
- package/input/input.property.d.ts +2 -2
- package/input-number/{ng-nest-ui-input-number.d.ts → index.d.ts} +0 -0
- package/input-number/input-number.component.d.ts +1 -1
- package/input-number/input-number.property.d.ts +1 -1
- package/layout/col.component.d.ts +1 -1
- package/layout/{ng-nest-ui-layout.d.ts → index.d.ts} +0 -0
- package/layout/layout.property.d.ts +2 -2
- package/layout/row.component.d.ts +1 -1
- package/link/{ng-nest-ui-link.d.ts → index.d.ts} +0 -0
- package/link/link.component.d.ts +1 -1
- package/link/link.property.d.ts +1 -1
- package/list/{ng-nest-ui-list.d.ts → index.d.ts} +0 -0
- package/list/list-option.component.d.ts +1 -1
- package/list/list.component.d.ts +1 -1
- package/list/list.property.d.ts +2 -2
- package/loading/{ng-nest-ui-loading.d.ts → index.d.ts} +0 -0
- package/loading/loading.component.d.ts +1 -1
- package/loading/loading.property.d.ts +1 -1
- package/menu/{ng-nest-ui-menu.d.ts → index.d.ts} +0 -0
- package/menu/menu-node.component.d.ts +1 -1
- package/menu/menu.component.d.ts +1 -1
- package/menu/menu.property.d.ts +2 -2
- package/message/{ng-nest-ui-message.d.ts → index.d.ts} +0 -0
- package/message/message.component.d.ts +1 -1
- package/message-box/{ng-nest-ui-message-box.d.ts → index.d.ts} +0 -0
- package/message-box/message-box.component.d.ts +3 -3
- package/notification/{ng-nest-ui-notification.d.ts → index.d.ts} +0 -0
- package/notification/notification.component.d.ts +1 -1
- package/outlet/{ng-nest-ui-outlet.d.ts → index.d.ts} +0 -0
- package/outlet/outlet.directive.d.ts +1 -1
- package/package.json +91 -91
- package/page-header/{ng-nest-ui-page-header.d.ts → index.d.ts} +0 -0
- package/page-header/page-header.component.d.ts +1 -1
- package/page-header/page-header.property.d.ts +1 -1
- package/pagination/{ng-nest-ui-pagination.d.ts → index.d.ts} +0 -0
- package/pagination/pagination.component.d.ts +1 -1
- package/pagination/pagination.property.d.ts +1 -1
- package/pattern/{ng-nest-ui-pattern.d.ts → index.d.ts} +0 -0
- package/pattern/pattern.component.d.ts +1 -1
- package/popconfirm/{ng-nest-ui-popconfirm.d.ts → index.d.ts} +0 -0
- package/popconfirm/popconfirm.component.d.ts +1 -1
- package/popconfirm/popconfirm.property.d.ts +1 -1
- package/popover/{ng-nest-ui-popover.d.ts → index.d.ts} +0 -0
- package/popover/popover-portal.component.d.ts +1 -1
- package/popover/popover.directive.d.ts +1 -1
- package/popover/popover.property.d.ts +1 -1
- package/portal/{ng-nest-ui-portal.d.ts → index.d.ts} +0 -0
- package/portal/portal.service.d.ts +47 -0
- package/progress/{ng-nest-ui-progress.d.ts → index.d.ts} +0 -0
- package/progress/progress.component.d.ts +1 -1
- package/progress/progress.property.d.ts +1 -1
- package/radio/{ng-nest-ui-radio.d.ts → index.d.ts} +0 -0
- package/radio/radio.component.d.ts +1 -1
- package/radio/radio.property.d.ts +1 -1
- package/rate/{ng-nest-ui-rate.d.ts → index.d.ts} +0 -0
- package/rate/rate.component.d.ts +1 -1
- package/rate/rate.property.d.ts +1 -1
- package/resizable/{ng-nest-ui-resizable.d.ts → index.d.ts} +0 -0
- package/resizable/resizable.directive.d.ts +1 -1
- package/resizable/resizable.property.d.ts +1 -1
- package/result/{ng-nest-ui-result.d.ts → index.d.ts} +0 -0
- package/result/result.component.d.ts +1 -1
- package/result/result.property.d.ts +1 -1
- package/ripple/{ng-nest-ui-ripple.d.ts → index.d.ts} +0 -0
- package/ripple/ripple.directive.d.ts +1 -1
- package/ripple/ripple.property.d.ts +1 -1
- package/select/examples/en_US/default/search/README.md +6 -0
- package/select/examples/zh_CN/default/search/README.md +6 -0
- package/select/{ng-nest-ui-select.d.ts → index.d.ts} +0 -0
- package/select/select-portal.component.d.ts +7 -2
- package/select/select.component.d.ts +5 -2
- package/select/select.property.d.ts +46 -1
- package/skeleton/{ng-nest-ui-skeleton.d.ts → index.d.ts} +0 -0
- package/skeleton/skeleton.component.d.ts +1 -1
- package/skeleton/skeleton.property.d.ts +1 -1
- package/slider/{ng-nest-ui-slider.d.ts → index.d.ts} +0 -0
- package/slider/slider.component.d.ts +1 -1
- package/slider/slider.property.d.ts +1 -1
- package/slider-select/{ng-nest-ui-slider-select.d.ts → index.d.ts} +0 -0
- package/slider-select/slider-select.component.d.ts +1 -1
- package/slider-select/slider-select.property.d.ts +1 -1
- package/statistic/countdown.component.d.ts +1 -1
- package/statistic/{ng-nest-ui-statistic.d.ts → index.d.ts} +0 -0
- package/statistic/statistic.component.d.ts +1 -1
- package/statistic/statistic.property.d.ts +2 -2
- package/steps/{ng-nest-ui-steps.d.ts → index.d.ts} +0 -0
- package/steps/steps.component.d.ts +1 -1
- package/steps/steps.property.d.ts +1 -1
- package/switch/{ng-nest-ui-switch.d.ts → index.d.ts} +0 -0
- package/switch/switch.component.d.ts +1 -1
- package/switch/switch.property.d.ts +1 -1
- package/table/drag.directive.d.ts +1 -1
- package/table/{ng-nest-ui-table.d.ts → index.d.ts} +0 -0
- package/table/table-body.component.d.ts +1 -1
- package/table/table-foot.component.d.ts +1 -1
- package/table/table-head.component.d.ts +1 -1
- package/table/table.component.d.ts +1 -1
- package/table/table.property.d.ts +4 -4
- package/tabs/{ng-nest-ui-tabs.d.ts → index.d.ts} +0 -0
- package/tabs/tab-content.component.d.ts +1 -1
- package/tabs/tab.component.d.ts +1 -1
- package/tabs/tabs.component.d.ts +1 -1
- package/tabs/tabs.property.d.ts +2 -2
- package/tag/{ng-nest-ui-tag.d.ts → index.d.ts} +0 -0
- package/tag/tag.component.d.ts +1 -1
- package/tag/tag.property.d.ts +1 -1
- package/text-retract/{ng-nest-ui-text-retract.d.ts → index.d.ts} +0 -0
- package/text-retract/text-retract.component.d.ts +1 -1
- package/text-retract/text-retract.property.d.ts +1 -1
- package/textarea/{ng-nest-ui-textarea.d.ts → index.d.ts} +0 -0
- package/textarea/textarea.component.d.ts +1 -1
- package/textarea/textarea.property.d.ts +1 -1
- package/theme/{ng-nest-ui-theme.d.ts → index.d.ts} +0 -0
- package/theme/theme.component.d.ts +3 -3
- package/theme/theme.property.d.ts +1 -1
- package/time-ago/{ng-nest-ui-time-ago.d.ts → index.d.ts} +0 -0
- package/time-ago/time-ago.pipe.d.ts +1 -1
- package/time-picker/{ng-nest-ui-time-picker.d.ts → index.d.ts} +0 -0
- package/time-picker/time-picker-frame.component.d.ts +1 -1
- package/time-picker/time-picker-portal.component.d.ts +1 -1
- package/time-picker/time-picker.component.d.ts +1 -1
- package/time-picker/time-picker.property.d.ts +1 -1
- package/time-range/{ng-nest-ui-time-range.d.ts → index.d.ts} +0 -0
- package/time-range/time-range.pipe.d.ts +1 -1
- package/timeline/{ng-nest-ui-timeline.d.ts → index.d.ts} +0 -0
- package/timeline/timeline.component.d.ts +1 -1
- package/timeline/timeline.property.d.ts +1 -1
- package/tooltip/{ng-nest-ui-tooltip.d.ts → index.d.ts} +0 -0
- package/tooltip/tooltip-portal.component.d.ts +1 -1
- package/tooltip/tooltip.directive.d.ts +1 -1
- package/tooltip/tooltip.property.d.ts +1 -1
- package/transfer/{ng-nest-ui-transfer.d.ts → index.d.ts} +0 -0
- package/transfer/transfer.component.d.ts +1 -1
- package/transfer/transfer.property.d.ts +1 -1
- package/tree/{ng-nest-ui-tree.d.ts → index.d.ts} +0 -0
- package/tree/tree-node.component.d.ts +1 -1
- package/tree/tree.component.d.ts +1 -1
- package/tree/tree.property.d.ts +2 -2
- package/tree-file/{ng-nest-ui-tree-file.d.ts → index.d.ts} +0 -0
- package/tree-file/tree-file.component.d.ts +1 -1
- package/tree-file/tree-file.property.d.ts +1 -1
- package/typography/{ng-nest-ui-typography.d.ts → index.d.ts} +0 -0
- package/typography/typography.component.d.ts +1 -1
- package/typography/typography.property.d.ts +1 -1
- package/upload/{ng-nest-ui-upload.d.ts → index.d.ts} +0 -0
- package/upload/upload-portal.component.d.ts +1 -1
- package/upload/upload.component.d.ts +1 -1
- package/upload/upload.property.d.ts +1 -1
- package/affix/package.json +0 -10
- package/alert/package.json +0 -10
- package/anchor/package.json +0 -10
- package/api/package.json +0 -10
- package/auto-complete/package.json +0 -10
- package/avatar/package.json +0 -10
- package/back-top/package.json +0 -10
- package/badge/package.json +0 -10
- package/base-form/package.json +0 -10
- package/border/package.json +0 -10
- package/button/package.json +0 -10
- package/calendar/package.json +0 -10
- package/card/package.json +0 -10
- package/carousel/package.json +0 -10
- package/cascade/package.json +0 -10
- package/checkbox/package.json +0 -10
- package/collapse/package.json +0 -10
- package/color/package.json +0 -10
- package/color-picker/package.json +0 -10
- package/comment/package.json +0 -10
- package/container/package.json +0 -10
- package/core/package.json +0 -10
- package/crumb/package.json +0 -10
- package/date-picker/package.json +0 -10
- package/description/package.json +0 -10
- package/dialog/package.json +0 -10
- package/doc/package.json +0 -10
- package/drawer/package.json +0 -10
- package/dropdown/package.json +0 -10
- package/empty/package.json +0 -10
- package/examples/package.json +0 -10
- package/find/package.json +0 -10
- package/form/package.json +0 -10
- package/highlight/package.json +0 -10
- package/i18n/package.json +0 -10
- package/icon/package.json +0 -10
- package/inner/package.json +0 -10
- package/input/package.json +0 -10
- package/input-number/package.json +0 -10
- package/layout/package.json +0 -10
- package/link/package.json +0 -10
- package/list/package.json +0 -10
- package/loading/package.json +0 -10
- package/menu/package.json +0 -10
- package/message/package.json +0 -10
- package/message-box/package.json +0 -10
- package/ng-nest-ui.d.ts +0 -5
- package/notification/package.json +0 -10
- package/outlet/package.json +0 -10
- package/page-header/package.json +0 -10
- package/pagination/package.json +0 -10
- package/pattern/package.json +0 -10
- package/popconfirm/package.json +0 -10
- package/popover/package.json +0 -10
- package/portal/package.json +0 -10
- package/progress/package.json +0 -10
- package/radio/package.json +0 -10
- package/rate/package.json +0 -10
- package/resizable/package.json +0 -10
- package/result/package.json +0 -10
- package/ripple/package.json +0 -10
- package/select/package.json +0 -10
- package/skeleton/package.json +0 -10
- package/slider/package.json +0 -10
- package/slider-select/package.json +0 -10
- package/statistic/package.json +0 -10
- package/steps/package.json +0 -10
- package/switch/package.json +0 -10
- package/table/package.json +0 -10
- package/tabs/package.json +0 -10
- package/tag/package.json +0 -10
- package/text-retract/package.json +0 -10
- package/textarea/package.json +0 -10
- package/theme/package.json +0 -10
- package/time-ago/package.json +0 -10
- package/time-picker/package.json +0 -10
- package/time-range/package.json +0 -10
- package/timeline/package.json +0 -10
- package/tooltip/package.json +0 -10
- package/transfer/package.json +0 -10
- package/tree/package.json +0 -10
- package/tree-file/package.json +0 -10
- package/typography/package.json +0 -10
- package/upload/package.json +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-menu.mjs","sources":["../../../../lib/ng-nest/ui/menu/menu.property.ts","../../../../lib/ng-nest/ui/menu/menu-node.component.ts","../../../../lib/ng-nest/ui/menu/menu-node.component.html","../../../../lib/ng-nest/ui/menu/menu.component.ts","../../../../lib/ng-nest/ui/menu/menu.component.html","../../../../lib/ng-nest/ui/menu/menu.module.ts","../../../../lib/ng-nest/ui/menu/ng-nest-ui-menu.ts"],"sourcesContent":["import {\r\n XParentIdentityProperty,\r\n XData,\r\n XSize,\r\n XProperty,\r\n XDataConvert,\r\n XInputNumber,\r\n XNumber,\r\n XInputBoolean,\r\n XBoolean,\r\n XWithConfig,\r\n XTrigger\r\n} from '@ng-nest/ui/core';\r\nimport { TemplateRef, Input, Output, EventEmitter, Component } from '@angular/core';\r\n\r\n/**\r\n * Menu\r\n * @selector x-menu\r\n * @decorator component\r\n */\r\nexport const XMenuPrefix = 'x-menu';\r\nconst X_CONFIG_NAME = 'menu';\r\n\r\n/**\r\n * Menu Property\r\n */\r\n@Component({ template: '' })\r\nexport class XMenuProperty extends XProperty {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() @XDataConvert() data: XData<XMenuNode> = [];\r\n /**\r\n * @zh_CN 布局方向\r\n * @en_US Layout direction\r\n */\r\n @Input() layout: XMenuLayout = 'row';\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 宽度,只有布局 layout 为 'column' 生效\r\n * @en_US Width, only layout layout is the 'column'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '12rem') width!: string;\r\n /**\r\n * @zh_CN 缩起菜单\r\n * @en_US Shrink menu\r\n */\r\n @Input() @XInputBoolean() collapsed: XBoolean = false;\r\n /**\r\n * @zh_CN 触发方式,只针对横向布局\r\n * @en_US Trigger mode, only for horizontal layout\r\n */\r\n @Input() @XWithConfig<XMenuTrigger>(X_CONFIG_NAME, 'hover') trigger!: XMenuTrigger;\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 展开的所有层级,只对 layout 布局为 'column' 的生效\r\n * @en_US All expanded levels are only effective for the layout of'column'\r\n */\r\n @Input() @XInputBoolean() expandedAll?: XBoolean;\r\n /**\r\n * @zh_CN 默认展开的层级,只对 layout 布局为 'column' 的生效\r\n * @en_US The level expanded by default is only valid for the layout of'column'\r\n */\r\n @Input() @XInputNumber() expandedLevel: XNumber = -1;\r\n /**\r\n * @zh_CN 当前激活的节点 id\r\n * @en_US Currently active node id\r\n */\r\n @Input() activatedId: any;\r\n /**\r\n * @zh_CN 滚动容器\r\n * @en_US Rolling container\r\n */\r\n @Input() target?: string | HTMLElement;\r\n /**\r\n * @zh_CN 弹框的最小宽度\r\n * @en_US Portal min-width\r\n */\r\n @Input() portalMinWidth?: string | number;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeClick = new EventEmitter<XMenuNode>();\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() activatedIdChange = new EventEmitter<any>();\r\n}\r\n\r\n/**\r\n * @zh_CN MenuNode 节点数据\r\n * @en_US MenuNode node data\r\n */\r\nexport interface XMenuNode extends XParentIdentityProperty<XMenuNode> {\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 展开\r\n * @en_US Unfold\r\n */\r\n open?: boolean;\r\n /**\r\n * @zh_CN 子节点已加载过\r\n * @en_US Child node has been loaded\r\n */\r\n childrenLoaded?: boolean;\r\n /**\r\n * @zh_CN 分类显示,设置值后节点显示成分类样式\r\n * @en_US Category display, after setting the value, the node is displayed in a category style\r\n */\r\n category?: string;\r\n /**\r\n * @zh_CN 分类节点,通过内部计算\r\n * @en_US Classification node, through internal calculation\r\n */\r\n categoryNode?: boolean;\r\n /**\r\n * @zh_CN 检查更新\r\n * @en_US Check for updates\r\n */\r\n change?: Function;\r\n /**\r\n * @zh_CN 路由\r\n * @en_US Router\r\n */\r\n routerLink?: string | any[];\r\n}\r\n\r\n/**\r\n * @zh_CN 布局方式\r\n * @en_US Layout\r\n */\r\nexport type XMenuLayout = 'row' | 'column';\r\n\r\n/**\r\n * @zh_CN 触发方式\r\n * @en_US Trigger method\r\n */\r\nexport type XMenuTrigger = XTrigger;\r\n\r\n/**\r\n * Menu Node\r\n * @selector x-menu-node\r\n * @decorator component\r\n */\r\nexport const XMenuNodePrefix = 'x-menu-node';\r\n\r\n/**\r\n * Menu Node Property\r\n */\r\n@Component({ template: '' })\r\nexport class XMenuNodeProperty extends XProperty {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() node!: XMenuNode;\r\n}\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, ChangeDetectorRef, ElementRef, Input } from '@angular/core';\r\nimport { XMenuNodeProperty, XMenuNodePrefix } from './menu.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XMenuNodePrefix}`,\r\n templateUrl: './menu-node.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XMenuNodeComponent extends XMenuNodeProperty {\r\n @Input() menu: any;\r\n constructor(\r\n // @Host() @Optional() public menu: XMenuComponent,\r\n public cdr: ChangeDetectorRef,\r\n public elementRef: ElementRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n ngOnInit() {\r\n if (this.menu?.activatedId == this.node.id) {\r\n this.menu.activatedElementRef = this.elementRef;\r\n }\r\n this.node.change = () => {\r\n this.cdr.detectChanges();\r\n };\r\n }\r\n}\r\n","<a *ngIf=\"node.routerLink && !node.leaf; else menuTpl\" [routerLink]=\"node.routerLink\">\r\n <ng-container *ngTemplateOutlet=\"menuTpl\"></ng-container>\r\n</a>\r\n\r\n<ng-template #menuTpl>\r\n <x-icon class=\"x-menu-icon\" *ngIf=\"node.icon\" [type]=\"node.icon\"></x-icon>\r\n <span class=\"x-menu-text\" *ngIf=\"node.label\">{{ node.label }}</span>\r\n <x-icon class=\"x-menu-arrow\" *ngIf=\"node.leaf\" [class.is-open]=\"node.open\" type=\"fto-chevron-down\"></x-icon>\r\n</ng-template>\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n OnDestroy,\r\n AfterViewInit,\r\n Inject\r\n} from '@angular/core';\r\nimport { XMenuPrefix, XMenuNode, XMenuProperty } from './menu.property';\r\nimport { XClassMap, XIsChange, XIsEmpty, XSetData, groupBy, XConfigService } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XMenuPrefix}`,\r\n templateUrl: './menu.component.html',\r\n styleUrls: ['./menu.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XMenuComponent extends XMenuProperty implements OnInit, OnChanges, OnDestroy, AfterViewInit {\r\n showCategory = false;\r\n get scroll(): HTMLElement {\r\n return this._target;\r\n }\r\n nodeClassMap: XClassMap = {};\r\n datas: XMenuNode[] = [];\r\n nodes: XMenuNode[] = [];\r\n rootIndex: number = 0;\r\n activated!: XMenuNode;\r\n activatedElementRef!: ElementRef;\r\n expanded: any[] = [];\r\n private _unSubject = new Subject<void>();\r\n private _target!: HTMLElement;\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n @Inject(DOCUMENT) public doc: any,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n const { data, activatedId, collapsed, target } = changes;\r\n XIsChange(data) && this.setData();\r\n XIsChange(activatedId) && this.setActivatedNode(this.datas);\r\n XIsChange(collapsed) && this.setClassMap();\r\n if (XIsChange(target)) {\r\n this._target = typeof this.target === 'string' ? this.doc.querySelector(this.target) : this.target;\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.activatedElementRef && this.scroll) {\r\n const nodeRect: DOMRect = this.activatedElementRef.nativeElement.getBoundingClientRect();\r\n const scrollRect: DOMRect = this.scroll.getBoundingClientRect();\r\n let scrollTop = nodeRect.top - scrollRect.top - scrollRect.height;\r\n if (scrollTop > 0) {\r\n let offset = 0;\r\n while (offset < scrollRect.height / 2) {\r\n offset = offset + nodeRect.height;\r\n }\r\n this.scroll.scrollTop = scrollTop + offset;\r\n }\r\n }\r\n }\r\n\r\n onNodeClick(node: XMenuNode) {\r\n if (!this.collapsed) {\r\n this.rootIndex = this.nodes.indexOf(this.getRoot(node));\r\n this.activatedId = node.id;\r\n this.activated = node;\r\n this.nodeClick.emit(node);\r\n this.activatedIdChange.emit(node.id);\r\n this.cdr.detectChanges();\r\n } else {\r\n this.onToggle(null, node, true);\r\n }\r\n }\r\n\r\n rootIndexChange(index: number) {\r\n this.rootIndex = index;\r\n let node = this.nodes[index];\r\n this.activatedId = node.id;\r\n this.activated = node;\r\n this.nodeClick.emit(node);\r\n this.activatedIdChange.emit(node.id);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onToggle(event: Event | null, node: XMenuNode, isDropdown = false) {\r\n if ((this.collapsed && !isDropdown) || node.categoryNode) return;\r\n if (!node.leaf) {\r\n this.activated = node;\r\n } else {\r\n event?.stopPropagation();\r\n node.open = !node.open;\r\n if (node.open && !node.childrenLoaded) {\r\n node.childrenLoaded = true;\r\n }\r\n }\r\n this.nodeClick.emit(node);\r\n node.change && node.change();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XMenuPrefix}-${this.layout}`] = this.layout ? true : false;\r\n this.classMap[`${XMenuPrefix}-collapsed`] = Boolean(this.collapsed);\r\n this.nodeClassMap[`x-size-${this.size}`] = this.size ? true : false;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private setData() {\r\n XSetData<XMenuNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.setDataChange(x);\r\n });\r\n }\r\n\r\n private setDataChange(value: XMenuNode[]) {\r\n !XIsEmpty(this.activatedId) && this.setActivatedNode(value);\r\n let handlerDatas: XMenuNode[] = [];\r\n const getChildren = (node: XMenuNode, level: number) => {\r\n node.level = level;\r\n node.children = value.filter((y) => y.pid === node.id);\r\n node.leaf = node.children?.length > 0;\r\n if (node.leaf) {\r\n node.open = Boolean(this.expandedAll) || level <= this.expandedLevel || this.expanded.indexOf(node.id) >= 0;\r\n node.childrenLoaded = node.open;\r\n node.children.map((y) => getChildren(y, level + 1));\r\n node.children = this.setCategory(node.children);\r\n }\r\n handlerDatas = [...handlerDatas, node];\r\n return node;\r\n };\r\n\r\n this.nodes = this.setCategory(value.filter((x) => XIsEmpty(x.pid))).map((x) => getChildren(x, 0));\r\n this.datas = handlerDatas;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private getRoot(value: XMenuNode) {\r\n let root = value;\r\n const getParent = (node: XMenuNode) => {\r\n const parent = this.datas.find((x) => node.pid === x.id) as XMenuNode;\r\n if (XIsEmpty(parent?.pid)) root = parent;\r\n else getParent(parent);\r\n };\r\n if (!XIsEmpty(value.pid)) getParent(value);\r\n return root;\r\n }\r\n\r\n setCategory(nodes: XMenuNode[]) {\r\n const group = groupBy(nodes as XMenuNode[], 'category');\r\n for (let list of group) {\r\n const first = list[0];\r\n if (first.category) {\r\n list.unshift({\r\n id: `${first.pid}__${first.category}`,\r\n pid: first.pid,\r\n label: first.category,\r\n level: first.level,\r\n categoryNode: true\r\n });\r\n }\r\n }\r\n let con: XMenuNode[] = [];\r\n group.map((x) => {\r\n con = con.concat(x);\r\n });\r\n return con;\r\n }\r\n\r\n setActivatedNode(nodes: XMenuNode[]) {\r\n this.activated = nodes.find((x) => x.id == this.activatedId) as XMenuNode;\r\n this.rootIndex = nodes.findIndex((x) => x.id == this.activatedId && !x.pid);\r\n if (this.activated) {\r\n this.setParentOpen(nodes, this.activated);\r\n }\r\n }\r\n\r\n setParentOpen(nodes: XMenuNode[], node: XMenuNode) {\r\n const getParent = (child: XMenuNode) => {\r\n if (XIsEmpty(child.pid)) return;\r\n const parent = nodes.find((x) => x.id === child.pid) as XMenuNode;\r\n if (!XIsEmpty(parent)) {\r\n this.expanded = [...this.expanded, parent.id];\r\n getParent(parent);\r\n }\r\n };\r\n getParent(node);\r\n }\r\n\r\n trackByNode(_index: number, item: XMenuNode) {\r\n return item.id;\r\n }\r\n}\r\n","<div #menu class=\"x-menu\" [ngClass]=\"classMap\" [style.width]=\"layout === 'column' ? width : ''\">\r\n <div class=\"x-menu-nodes\" *ngIf=\"layout === 'column'\">\r\n <ng-container *ngFor=\"let node of nodes; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: node, $children: true }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <x-slider\r\n *ngIf=\"layout === 'row'\"\r\n [data]=\"nodes\"\r\n [size]=\"size\"\r\n [nodeTpl]=\"nodeRowTpl\"\r\n [nodeJustify]=\"'center'\"\r\n [activatedIndex]=\"rootIndex\"\r\n (indexChange)=\"rootIndexChange($event)\"\r\n ></x-slider>\r\n</div>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n <x-dropdown\r\n *ngIf=\"node.level === 0 && collapsed\"\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n placement=\"right-start\"\r\n [(activatedId)]=\"activatedId\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <x-menu-node [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n </x-dropdown>\r\n <x-menu-node *ngIf=\"!collapsed\" [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n</ng-template>\r\n\r\n<ng-template #nodeRowTpl let-node=\"$node\">\r\n <x-dropdown\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n [(activatedId)]=\"activatedId\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <div class=\"x-menu-node\" [ngClass]=\"nodeClassMap\">\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n </x-dropdown>\r\n</ng-template>\r\n\r\n<ng-template #nodeColumnTpl let-node=\"$node\">\r\n <div\r\n class=\"x-menu-node\"\r\n [class.x-activated]=\"activated?.id === node.id\"\r\n [class.x-menu-category]=\"node.categoryNode\"\r\n [ngClass]=\"nodeClassMap\"\r\n (click)=\"onToggle($event, node)\"\r\n [style.padding-left.rem]=\"(node.level + 1) * 0.875\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n <div class=\"x-menu-nodes\" *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <ng-container *ngFor=\"let child of node.children; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: child }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XMenuComponent } from './menu.component';\r\nimport { XMenuNodeComponent } from './menu-node.component';\r\nimport { XDropdownModule } from '@ng-nest/ui/dropdown';\r\nimport { XSliderModule } from '@ng-nest/ui/slider';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XMenuProperty, XMenuNodeProperty } from './menu.property';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n@NgModule({\r\n declarations: [XMenuComponent, XMenuNodeComponent, XMenuProperty, XMenuNodeProperty],\r\n exports: [XMenuComponent, XMenuNodeComponent],\r\n imports: [CommonModule, RouterModule, XDropdownModule, XSliderModule, XIconModule]\r\n})\r\nexport class XMenuModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i2","i4.XMenuNodeComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-menu.mjs","sources":["../../../../lib/ng-nest/ui/menu/menu.property.ts","../../../../lib/ng-nest/ui/menu/menu-node.component.ts","../../../../lib/ng-nest/ui/menu/menu-node.component.html","../../../../lib/ng-nest/ui/menu/menu.component.ts","../../../../lib/ng-nest/ui/menu/menu.component.html","../../../../lib/ng-nest/ui/menu/menu.module.ts","../../../../lib/ng-nest/ui/menu/ng-nest-ui-menu.ts"],"sourcesContent":["import {\r\n XParentIdentityProperty,\r\n XData,\r\n XSize,\r\n XProperty,\r\n XDataConvert,\r\n XInputNumber,\r\n XNumber,\r\n XInputBoolean,\r\n XBoolean,\r\n XWithConfig,\r\n XTrigger\r\n} from '@ng-nest/ui/core';\r\nimport { TemplateRef, Input, Output, EventEmitter, Component } from '@angular/core';\r\n\r\n/**\r\n * Menu\r\n * @selector x-menu\r\n * @decorator component\r\n */\r\nexport const XMenuPrefix = 'x-menu';\r\nconst X_CONFIG_NAME = 'menu';\r\n\r\n/**\r\n * Menu Property\r\n */\r\n@Component({ template: '' })\r\nexport class XMenuProperty extends XProperty {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() @XDataConvert() data: XData<XMenuNode> = [];\r\n /**\r\n * @zh_CN 布局方向\r\n * @en_US Layout direction\r\n */\r\n @Input() layout: XMenuLayout = 'row';\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 宽度,只有布局 layout 为 'column' 生效\r\n * @en_US Width, only layout layout is the 'column'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '12rem') width!: string;\r\n /**\r\n * @zh_CN 缩起菜单\r\n * @en_US Shrink menu\r\n */\r\n @Input() @XInputBoolean() collapsed: XBoolean = false;\r\n /**\r\n * @zh_CN 触发方式,只针对横向布局\r\n * @en_US Trigger mode, only for horizontal layout\r\n */\r\n @Input() @XWithConfig<XMenuTrigger>(X_CONFIG_NAME, 'hover') trigger!: XMenuTrigger;\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 展开的所有层级,只对 layout 布局为 'column' 的生效\r\n * @en_US All expanded levels are only effective for the layout of'column'\r\n */\r\n @Input() @XInputBoolean() expandedAll?: XBoolean;\r\n /**\r\n * @zh_CN 默认展开的层级,只对 layout 布局为 'column' 的生效\r\n * @en_US The level expanded by default is only valid for the layout of'column'\r\n */\r\n @Input() @XInputNumber() expandedLevel: XNumber = -1;\r\n /**\r\n * @zh_CN 当前激活的节点 id\r\n * @en_US Currently active node id\r\n */\r\n @Input() activatedId: any;\r\n /**\r\n * @zh_CN 滚动容器\r\n * @en_US Rolling container\r\n */\r\n @Input() target?: string | HTMLElement;\r\n /**\r\n * @zh_CN 弹框的最小宽度\r\n * @en_US Portal min-width\r\n */\r\n @Input() portalMinWidth?: string | number;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeClick = new EventEmitter<XMenuNode>();\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() activatedIdChange = new EventEmitter<any>();\r\n}\r\n\r\n/**\r\n * @zh_CN MenuNode 节点数据\r\n * @en_US MenuNode node data\r\n */\r\nexport interface XMenuNode extends XParentIdentityProperty<XMenuNode> {\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 展开\r\n * @en_US Unfold\r\n */\r\n open?: boolean;\r\n /**\r\n * @zh_CN 子节点已加载过\r\n * @en_US Child node has been loaded\r\n */\r\n childrenLoaded?: boolean;\r\n /**\r\n * @zh_CN 分类显示,设置值后节点显示成分类样式\r\n * @en_US Category display, after setting the value, the node is displayed in a category style\r\n */\r\n category?: string;\r\n /**\r\n * @zh_CN 分类节点,通过内部计算\r\n * @en_US Classification node, through internal calculation\r\n */\r\n categoryNode?: boolean;\r\n /**\r\n * @zh_CN 检查更新\r\n * @en_US Check for updates\r\n */\r\n change?: Function;\r\n /**\r\n * @zh_CN 路由\r\n * @en_US Router\r\n */\r\n routerLink?: string | any[];\r\n}\r\n\r\n/**\r\n * @zh_CN 布局方式\r\n * @en_US Layout\r\n */\r\nexport type XMenuLayout = 'row' | 'column';\r\n\r\n/**\r\n * @zh_CN 触发方式\r\n * @en_US Trigger method\r\n */\r\nexport type XMenuTrigger = XTrigger;\r\n\r\n/**\r\n * Menu Node\r\n * @selector x-menu-node\r\n * @decorator component\r\n */\r\nexport const XMenuNodePrefix = 'x-menu-node';\r\n\r\n/**\r\n * Menu Node Property\r\n */\r\n@Component({ template: '' })\r\nexport class XMenuNodeProperty extends XProperty {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() node!: XMenuNode;\r\n}\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, ChangeDetectorRef, ElementRef, Input } from '@angular/core';\r\nimport { XMenuNodeProperty, XMenuNodePrefix } from './menu.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XMenuNodePrefix}`,\r\n templateUrl: './menu-node.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XMenuNodeComponent extends XMenuNodeProperty {\r\n @Input() menu: any;\r\n constructor(\r\n // @Host() @Optional() public menu: XMenuComponent,\r\n public cdr: ChangeDetectorRef,\r\n public elementRef: ElementRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n ngOnInit() {\r\n if (this.menu?.activatedId == this.node.id) {\r\n this.menu.activatedElementRef = this.elementRef;\r\n }\r\n this.node.change = () => {\r\n this.cdr.detectChanges();\r\n };\r\n }\r\n}\r\n","<a *ngIf=\"node.routerLink && !node.leaf; else menuTpl\" [routerLink]=\"node.routerLink\">\r\n <ng-container *ngTemplateOutlet=\"menuTpl\"></ng-container>\r\n</a>\r\n\r\n<ng-template #menuTpl>\r\n <x-icon class=\"x-menu-icon\" *ngIf=\"node.icon\" [type]=\"node.icon\"></x-icon>\r\n <span class=\"x-menu-text\" *ngIf=\"node.label\">{{ node.label }}</span>\r\n <x-icon class=\"x-menu-arrow\" *ngIf=\"node.leaf\" [class.is-open]=\"node.open\" type=\"fto-chevron-down\"></x-icon>\r\n</ng-template>\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n OnDestroy,\r\n AfterViewInit,\r\n Inject\r\n} from '@angular/core';\r\nimport { XMenuPrefix, XMenuNode, XMenuProperty } from './menu.property';\r\nimport { XClassMap, XIsChange, XIsEmpty, XSetData, groupBy, XConfigService } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XMenuPrefix}`,\r\n templateUrl: './menu.component.html',\r\n styleUrls: ['./menu.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XMenuComponent extends XMenuProperty implements OnInit, OnChanges, OnDestroy, AfterViewInit {\r\n showCategory = false;\r\n get scroll(): HTMLElement {\r\n return this._target;\r\n }\r\n nodeClassMap: XClassMap = {};\r\n datas: XMenuNode[] = [];\r\n nodes: XMenuNode[] = [];\r\n rootIndex: number = 0;\r\n activated!: XMenuNode;\r\n activatedElementRef!: ElementRef;\r\n expanded: any[] = [];\r\n private _unSubject = new Subject<void>();\r\n private _target!: HTMLElement;\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n @Inject(DOCUMENT) public doc: any,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n const { data, activatedId, collapsed, target } = changes;\r\n XIsChange(data) && this.setData();\r\n XIsChange(activatedId) && this.setActivatedNode(this.datas);\r\n XIsChange(collapsed) && this.setClassMap();\r\n if (XIsChange(target)) {\r\n this._target = typeof this.target === 'string' ? this.doc.querySelector(this.target) : this.target;\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.activatedElementRef && this.scroll) {\r\n const nodeRect: DOMRect = this.activatedElementRef.nativeElement.getBoundingClientRect();\r\n const scrollRect: DOMRect = this.scroll.getBoundingClientRect();\r\n let scrollTop = nodeRect.top - scrollRect.top - scrollRect.height;\r\n if (scrollTop > 0) {\r\n let offset = 0;\r\n while (offset < scrollRect.height / 2) {\r\n offset = offset + nodeRect.height;\r\n }\r\n this.scroll.scrollTop = scrollTop + offset;\r\n }\r\n }\r\n }\r\n\r\n onNodeClick(node: XMenuNode) {\r\n if (!this.collapsed) {\r\n this.rootIndex = this.nodes.indexOf(this.getRoot(node));\r\n this.activatedId = node.id;\r\n this.activated = node;\r\n this.nodeClick.emit(node);\r\n this.activatedIdChange.emit(node.id);\r\n this.cdr.detectChanges();\r\n } else {\r\n this.onToggle(null, node, true);\r\n }\r\n }\r\n\r\n rootIndexChange(index: number) {\r\n this.rootIndex = index;\r\n let node = this.nodes[index];\r\n this.activatedId = node.id;\r\n this.activated = node;\r\n this.nodeClick.emit(node);\r\n this.activatedIdChange.emit(node.id);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onToggle(event: Event | null, node: XMenuNode, isDropdown = false) {\r\n if ((this.collapsed && !isDropdown) || node.categoryNode) return;\r\n if (!node.leaf) {\r\n this.activated = node;\r\n } else {\r\n event?.stopPropagation();\r\n node.open = !node.open;\r\n if (node.open && !node.childrenLoaded) {\r\n node.childrenLoaded = true;\r\n }\r\n }\r\n this.nodeClick.emit(node);\r\n node.change && node.change();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XMenuPrefix}-${this.layout}`] = this.layout ? true : false;\r\n this.classMap[`${XMenuPrefix}-collapsed`] = Boolean(this.collapsed);\r\n this.nodeClassMap[`x-size-${this.size}`] = this.size ? true : false;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private setData() {\r\n XSetData<XMenuNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.setDataChange(x);\r\n });\r\n }\r\n\r\n private setDataChange(value: XMenuNode[]) {\r\n !XIsEmpty(this.activatedId) && this.setActivatedNode(value);\r\n let handlerDatas: XMenuNode[] = [];\r\n const getChildren = (node: XMenuNode, level: number) => {\r\n node.level = level;\r\n node.children = value.filter((y) => y.pid === node.id);\r\n node.leaf = node.children?.length > 0;\r\n if (node.leaf) {\r\n node.open = Boolean(this.expandedAll) || level <= this.expandedLevel || this.expanded.indexOf(node.id) >= 0;\r\n node.childrenLoaded = node.open;\r\n node.children.map((y) => getChildren(y, level + 1));\r\n node.children = this.setCategory(node.children);\r\n }\r\n handlerDatas = [...handlerDatas, node];\r\n return node;\r\n };\r\n\r\n this.nodes = this.setCategory(value.filter((x) => XIsEmpty(x.pid))).map((x) => getChildren(x, 0));\r\n this.datas = handlerDatas;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private getRoot(value: XMenuNode) {\r\n let root = value;\r\n const getParent = (node: XMenuNode) => {\r\n const parent = this.datas.find((x) => node.pid === x.id) as XMenuNode;\r\n if (XIsEmpty(parent?.pid)) root = parent;\r\n else getParent(parent);\r\n };\r\n if (!XIsEmpty(value.pid)) getParent(value);\r\n return root;\r\n }\r\n\r\n setCategory(nodes: XMenuNode[]) {\r\n const group = groupBy(nodes as XMenuNode[], 'category');\r\n for (let list of group) {\r\n const first = list[0];\r\n if (first.category) {\r\n list.unshift({\r\n id: `${first.pid}__${first.category}`,\r\n pid: first.pid,\r\n label: first.category,\r\n level: first.level,\r\n categoryNode: true\r\n });\r\n }\r\n }\r\n let con: XMenuNode[] = [];\r\n group.map((x) => {\r\n con = con.concat(x);\r\n });\r\n return con;\r\n }\r\n\r\n setActivatedNode(nodes: XMenuNode[]) {\r\n this.activated = nodes.find((x) => x.id == this.activatedId) as XMenuNode;\r\n this.rootIndex = nodes.findIndex((x) => x.id == this.activatedId && !x.pid);\r\n if (this.activated) {\r\n this.setParentOpen(nodes, this.activated);\r\n }\r\n }\r\n\r\n setParentOpen(nodes: XMenuNode[], node: XMenuNode) {\r\n const getParent = (child: XMenuNode) => {\r\n if (XIsEmpty(child.pid)) return;\r\n const parent = nodes.find((x) => x.id === child.pid) as XMenuNode;\r\n if (!XIsEmpty(parent)) {\r\n this.expanded = [...this.expanded, parent.id];\r\n getParent(parent);\r\n }\r\n };\r\n getParent(node);\r\n }\r\n\r\n trackByNode(_index: number, item: XMenuNode) {\r\n return item.id;\r\n }\r\n}\r\n","<div #menu class=\"x-menu\" [ngClass]=\"classMap\" [style.width]=\"layout === 'column' ? width : ''\">\r\n <div class=\"x-menu-nodes\" *ngIf=\"layout === 'column'\">\r\n <ng-container *ngFor=\"let node of nodes; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: node, $children: true }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <x-slider\r\n *ngIf=\"layout === 'row'\"\r\n [data]=\"nodes\"\r\n [size]=\"size\"\r\n [nodeTpl]=\"nodeRowTpl\"\r\n [nodeJustify]=\"'center'\"\r\n [activatedIndex]=\"rootIndex\"\r\n (indexChange)=\"rootIndexChange($event)\"\r\n ></x-slider>\r\n</div>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n <x-dropdown\r\n *ngIf=\"node.level === 0 && collapsed\"\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n placement=\"right-start\"\r\n [(activatedId)]=\"activatedId\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <x-menu-node [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n </x-dropdown>\r\n <x-menu-node *ngIf=\"!collapsed\" [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n</ng-template>\r\n\r\n<ng-template #nodeRowTpl let-node=\"$node\">\r\n <x-dropdown\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n [(activatedId)]=\"activatedId\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <div class=\"x-menu-node\" [ngClass]=\"nodeClassMap\">\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n </x-dropdown>\r\n</ng-template>\r\n\r\n<ng-template #nodeColumnTpl let-node=\"$node\">\r\n <div\r\n class=\"x-menu-node\"\r\n [class.x-activated]=\"activated?.id === node.id\"\r\n [class.x-menu-category]=\"node.categoryNode\"\r\n [ngClass]=\"nodeClassMap\"\r\n (click)=\"onToggle($event, node)\"\r\n [style.padding-left.rem]=\"(node.level + 1) * 0.875\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n <div class=\"x-menu-nodes\" *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <ng-container *ngFor=\"let child of node.children; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: child }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XMenuComponent } from './menu.component';\r\nimport { XMenuNodeComponent } from './menu-node.component';\r\nimport { XDropdownModule } from '@ng-nest/ui/dropdown';\r\nimport { XSliderModule } from '@ng-nest/ui/slider';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XMenuProperty, XMenuNodeProperty } from './menu.property';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n@NgModule({\r\n declarations: [XMenuComponent, XMenuNodeComponent, XMenuProperty, XMenuNodeProperty],\r\n exports: [XMenuComponent, XMenuNodeComponent],\r\n imports: [CommonModule, RouterModule, XDropdownModule, XSliderModule, XIconModule]\r\n})\r\nexport class XMenuModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i5.XMenuNodeComponent"],"mappings":"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"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Component, ViewEncapsulation, ChangeDetectionStrategy, Injectable, NgModule } from '@angular/core';
|
|
3
3
|
import { XMoveBoxAnimation, XIsString, XIsXTemplate, fillDefault } from '@ng-nest/ui/core';
|
|
4
|
-
import * as
|
|
5
|
-
import {
|
|
6
|
-
import * as i1 from '@
|
|
7
|
-
import {
|
|
8
|
-
import * as
|
|
4
|
+
import * as i2 from '@angular/forms';
|
|
5
|
+
import { UntypedFormGroup, UntypedFormControl, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import * as i1 from '@angular/common';
|
|
7
|
+
import { CommonModule } from '@angular/common';
|
|
8
|
+
import * as i3 from '@ng-nest/ui/input';
|
|
9
9
|
import { XInputModule } from '@ng-nest/ui/input';
|
|
10
|
-
import * as
|
|
10
|
+
import * as i4 from '@ng-nest/ui/button';
|
|
11
11
|
import { XButtonModule } from '@ng-nest/ui/button';
|
|
12
|
-
import * as
|
|
13
|
-
import {
|
|
14
|
-
import * as
|
|
12
|
+
import * as i5 from '@ng-nest/ui/alert';
|
|
13
|
+
import { XAlertModule } from '@ng-nest/ui/alert';
|
|
14
|
+
import * as i6 from '@ng-nest/ui/outlet';
|
|
15
15
|
import { XOutletModule } from '@ng-nest/ui/outlet';
|
|
16
16
|
import * as i1$1 from '@ng-nest/ui/portal';
|
|
17
17
|
import { XPortalModule } from '@ng-nest/ui/portal';
|
|
@@ -33,7 +33,7 @@ class XMessageBoxComponent {
|
|
|
33
33
|
this.cdr = cdr;
|
|
34
34
|
this.messageBox = {};
|
|
35
35
|
this.action = 'close';
|
|
36
|
-
this.formGroup = new
|
|
36
|
+
this.formGroup = new UntypedFormGroup({});
|
|
37
37
|
}
|
|
38
38
|
get msgInput() {
|
|
39
39
|
return this.messageBox.input;
|
|
@@ -81,12 +81,12 @@ class XMessageBoxComponent {
|
|
|
81
81
|
return (_a = this.formGroup.controls['inputValue']) === null || _a === void 0 ? void 0 : _a.value;
|
|
82
82
|
}
|
|
83
83
|
createFormGroup() {
|
|
84
|
-
this.formGroup.addControl('inputValue', new
|
|
84
|
+
this.formGroup.addControl('inputValue', new UntypedFormControl(this.msgInput.inputValue, [Validators.required, Validators.pattern(this.msgInput.inputPattern)]));
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
/** @nocollapse */
|
|
88
|
-
/** @nocollapse */
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
87
|
+
/** @nocollapse */ XMessageBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
88
|
+
/** @nocollapse */ XMessageBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XMessageBoxComponent, selector: "x-message-box", ngImport: i0, template: "<div\r\n class=\"x-message-box\"\r\n *ngIf=\"!messageBox?.input?.hide\"\r\n [@x-move-box-animation]=\"messageBox.input?.placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n>\r\n <x-alert\r\n (close)=\"onClose()\"\r\n [title]=\"messageBox.input?.title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"messageBox.input?.type\"\r\n [effect]=\"messageBox.input?.effect\"\r\n [hideClose]=\"messageBox.input?.hideClose\"\r\n [closeText]=\"messageBox.input?.closeText\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n <ng-template #contentTpl let-iconTpl=\"$iconTpl\">\r\n <div class=\"x-message-box-inner\">\r\n <div class=\"x-message-box-content\">\r\n <ng-container *ngIf=\"!messageBox.input?.showInput; else inputTpl\">\r\n <ng-container *ngIf=\"messageBox.input?.showIcon\">\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n </ng-container>\r\n <ng-container *xOutlet=\"messageBox.input?.content\">\r\n {{ messageBox.input?.content }}\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #inputTpl>\r\n <form [formGroup]=\"formGroup\">\r\n <x-input\r\n formControlName=\"inputValue\"\r\n [type]=\"messageBox.input?.inputType\"\r\n [label]=\"getLabel\"\r\n [placeholder]=\"messageBox.input?.inputPlaceholder\"\r\n [pattern]=\"getPattern\"\r\n [message]=\"messageBox.input?.inputInvalidMessage\"\r\n ></x-input>\r\n </form>\r\n </ng-template>\r\n </div>\r\n <x-buttons space=\"1\">\r\n <x-button *ngIf=\"messageBox.input?.showCancel\" (click)=\"onCancel()\">{{ messageBox.input?.cancelText }}</x-button>\r\n <x-button type=\"primary\" (click)=\"onConfirm()\" [disabled]=\"formGroup?.invalid\">{{ messageBox.input?.confirmText }}</x-button>\r\n </x-buttons>\r\n </div>\r\n </ng-template>\r\n</div>\r\n", styles: [".x-message-box{margin:0;padding:0}.x-message-box-inner{display:flex;flex-direction:column;margin:.5rem 0}.x-message-box-inner>x-buttons{margin-top:1rem;align-self:flex-end}.x-message-box-content{display:inline-flex}.x-message-box-content>form{width:100%}.x-message-box-content>form>x-input{width:100%}.x-message-box-portal x-message-box{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.XInputComponent, selector: "x-input" }, { kind: "component", type: i4.XButtonComponent, selector: "x-button" }, { kind: "component", type: i4.XButtonsComponent, selector: "x-buttons" }, { kind: "component", type: i5.XAlertComponent, selector: "x-alert" }, { kind: "directive", type: i6.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], animations: [XMoveBoxAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxComponent, decorators: [{
|
|
90
90
|
type: Component,
|
|
91
91
|
args: [{ selector: `${XMessageBoxPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XMoveBoxAnimation], template: "<div\r\n class=\"x-message-box\"\r\n *ngIf=\"!messageBox?.input?.hide\"\r\n [@x-move-box-animation]=\"messageBox.input?.placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n>\r\n <x-alert\r\n (close)=\"onClose()\"\r\n [title]=\"messageBox.input?.title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"messageBox.input?.type\"\r\n [effect]=\"messageBox.input?.effect\"\r\n [hideClose]=\"messageBox.input?.hideClose\"\r\n [closeText]=\"messageBox.input?.closeText\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n <ng-template #contentTpl let-iconTpl=\"$iconTpl\">\r\n <div class=\"x-message-box-inner\">\r\n <div class=\"x-message-box-content\">\r\n <ng-container *ngIf=\"!messageBox.input?.showInput; else inputTpl\">\r\n <ng-container *ngIf=\"messageBox.input?.showIcon\">\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n </ng-container>\r\n <ng-container *xOutlet=\"messageBox.input?.content\">\r\n {{ messageBox.input?.content }}\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #inputTpl>\r\n <form [formGroup]=\"formGroup\">\r\n <x-input\r\n formControlName=\"inputValue\"\r\n [type]=\"messageBox.input?.inputType\"\r\n [label]=\"getLabel\"\r\n [placeholder]=\"messageBox.input?.inputPlaceholder\"\r\n [pattern]=\"getPattern\"\r\n [message]=\"messageBox.input?.inputInvalidMessage\"\r\n ></x-input>\r\n </form>\r\n </ng-template>\r\n </div>\r\n <x-buttons space=\"1\">\r\n <x-button *ngIf=\"messageBox.input?.showCancel\" (click)=\"onCancel()\">{{ messageBox.input?.cancelText }}</x-button>\r\n <x-button type=\"primary\" (click)=\"onConfirm()\" [disabled]=\"formGroup?.invalid\">{{ messageBox.input?.confirmText }}</x-button>\r\n </x-buttons>\r\n </div>\r\n </ng-template>\r\n</div>\r\n", styles: [".x-message-box{margin:0;padding:0}.x-message-box-inner{display:flex;flex-direction:column;margin:.5rem 0}.x-message-box-inner>x-buttons{margin-top:1rem;align-self:flex-end}.x-message-box-content{display:inline-flex}.x-message-box-content>form{width:100%}.x-message-box-content>form>x-input{width:100%}.x-message-box-portal x-message-box{width:100%}\n"] }]
|
|
92
92
|
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
|
|
@@ -160,16 +160,16 @@ class XMessageBoxService {
|
|
|
160
160
|
this.default = Object.assign(Object.assign({}, this.default), messageBoxLocale);
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
|
-
/** @nocollapse */
|
|
164
|
-
/** @nocollapse */
|
|
165
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
163
|
+
/** @nocollapse */ XMessageBoxService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxService, deps: [{ token: i1$1.XPortalService }, { token: i2$1.XI18nService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
164
|
+
/** @nocollapse */ XMessageBoxService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxService });
|
|
165
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxService, decorators: [{
|
|
166
166
|
type: Injectable
|
|
167
167
|
}], ctorParameters: function () { return [{ type: i1$1.XPortalService }, { type: i2$1.XI18nService }]; } });
|
|
168
168
|
|
|
169
169
|
class XMessageBoxModule {
|
|
170
170
|
}
|
|
171
|
-
/** @nocollapse */
|
|
172
|
-
/** @nocollapse */
|
|
171
|
+
/** @nocollapse */ XMessageBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
172
|
+
/** @nocollapse */ XMessageBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxModule, declarations: [XMessageBoxComponent], imports: [CommonModule,
|
|
173
173
|
FormsModule,
|
|
174
174
|
ReactiveFormsModule,
|
|
175
175
|
XPortalModule,
|
|
@@ -178,18 +178,16 @@ class XMessageBoxModule {
|
|
|
178
178
|
XIconModule,
|
|
179
179
|
XAlertModule,
|
|
180
180
|
XOutletModule], exports: [XMessageBoxComponent] });
|
|
181
|
-
/** @nocollapse */
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
]] });
|
|
192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XMessageBoxModule, decorators: [{
|
|
181
|
+
/** @nocollapse */ XMessageBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxModule, providers: [XMessageBoxService], imports: [CommonModule,
|
|
182
|
+
FormsModule,
|
|
183
|
+
ReactiveFormsModule,
|
|
184
|
+
XPortalModule,
|
|
185
|
+
XInputModule,
|
|
186
|
+
XButtonModule,
|
|
187
|
+
XIconModule,
|
|
188
|
+
XAlertModule,
|
|
189
|
+
XOutletModule] });
|
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageBoxModule, decorators: [{
|
|
193
191
|
type: NgModule,
|
|
194
192
|
args: [{
|
|
195
193
|
declarations: [XMessageBoxComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-message-box.mjs","sources":["../../../../lib/ng-nest/ui/message-box/message-box.property.ts","../../../../lib/ng-nest/ui/message-box/message-box.component.ts","../../../../lib/ng-nest/ui/message-box/message-box.component.html","../../../../lib/ng-nest/ui/message-box/message-box.service.ts","../../../../lib/ng-nest/ui/message-box/message-box.module.ts","../../../../lib/ng-nest/ui/message-box/ng-nest-ui-message-box.ts"],"sourcesContent":["import { XStatus, XPlace } from '@ng-nest/ui/core';\r\nimport { XAlertOption } from '@ng-nest/ui/alert';\r\nimport { XMessageBoxComponent } from './message-box.component';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XInputType } from '@ng-nest/ui/input';\r\n\r\n/**\r\n * MessageBox\r\n * @selector x-message-box\r\n * @decorator component\r\n */\r\nexport const XMessageBoxPrefix = 'x-message-box';\r\n\r\nexport const XMessageBoxPortal = 'x-message-box-portal';\r\n\r\n/**\r\n * MessageBox Option\r\n */\r\nexport interface XMessageBoxOption extends XAlertOption {\r\n /**\r\n * @zh_CN 方位,九宫格\r\n * @en_US Direction, nine grid\r\n * @default 'top'\r\n */\r\n placement?: XPlace;\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n * @default '2rem'\r\n */\r\n offset?: string | string[];\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n * @default 'info'\r\n */\r\n type?: XMessageBoxType;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n * @default '16rem'\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n * @default true\r\n */\r\n hideClose?: boolean;\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @default true\r\n */\r\n showIcon?: boolean;\r\n /**\r\n * @zh_CN 显示取消按钮\r\n * @en_US Show cancel button\r\n */\r\n showCancel?: boolean;\r\n /**\r\n * @zh_CN 关闭事件\r\n * @en_US Close event\r\n */\r\n callback?: XMessageBoxCallback;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n * @default false\r\n */\r\n backdropClose?: boolean;\r\n /**\r\n * @zh_CN 确认按钮文字\r\n * @en_US Confirm button text\r\n * @default '确定'\r\n */\r\n confirmText?: string;\r\n /**\r\n * @zh_CN 取消按钮文字\r\n * @en_US Cancel button text\r\n * @default '取消'\r\n */\r\n cancelText?: string;\r\n /**\r\n * @zh_CN 是否显示输入框\r\n * @en_US Whether to show the input box\r\n */\r\n showInput?: boolean;\r\n /**\r\n * @zh_CN 匹配规则\r\n * @en_US Matching rules\r\n */\r\n inputPattern?: RegExp | RegExp[];\r\n /**\r\n * @zh_CN 匹配失败的信息提示\r\n * @en_US Information prompt for matching failure\r\n */\r\n inputInvalidMessage?: string;\r\n /**\r\n * @zh_CN 输入框的占位符\r\n * @en_US Placeholder for input box\r\n */\r\n inputPlaceholder?: string;\r\n /**\r\n * @zh_CN 输入框的类型\r\n * @en_US Type of input box\r\n */\r\n inputType?: XInputType;\r\n /**\r\n * @zh_CN 输入框的值\r\n * @en_US Value of input box\r\n */\r\n inputValue?: string;\r\n /**\r\n * @zh_CN 输入框的验证函数\r\n * @en_US Validation function of input box\r\n */\r\n inputValidator?: Function;\r\n}\r\n\r\nexport interface XMessageBoxCallback {\r\n (action: XMessageBoxAction, message?: string): void;\r\n}\r\n\r\nexport type XMessageBoxAction = 'confirm' | 'cancel' | 'close';\r\n\r\n/**\r\n * @zh_CN 创建的消息对象\r\n * @en_US Message object created\r\n */\r\nexport interface XMessageBoxOverlayRef extends XPortalOverlayRef<XMessageBoxComponent> {}\r\n\r\nexport interface XMessageBoxRef {\r\n ref?: XMessageBoxOverlayRef;\r\n input?: XMessageBoxOption;\r\n}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\nexport type XMessageBoxType = XStatus;\r\n","import { Component, ViewEncapsulation, Renderer2, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy, OnInit } from '@angular/core';\r\nimport { XMoveBoxAnimation } from '@ng-nest/ui/core';\r\nimport { XMessageBoxPrefix, XMessageBoxRef, XMessageBoxAction, XMessageBoxOption } from './message-box.property';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XMessageBoxPrefix}`,\r\n templateUrl: './message-box.component.html',\r\n styleUrls: ['./message-box.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveBoxAnimation]\r\n})\r\nexport class XMessageBoxComponent implements OnInit {\r\n messageBox: XMessageBoxRef = {};\r\n action: XMessageBoxAction = 'close';\r\n formGroup: FormGroup = new FormGroup({});\r\n constructor(public renderer: Renderer2, public elementRef: ElementRef, public cdr: ChangeDetectorRef) {}\r\n\r\n get msgInput(): XMessageBoxOption {\r\n return this.messageBox.input as XMessageBoxOption;\r\n }\r\n\r\n get getLabel() {\r\n return this.msgInput.content as string;\r\n }\r\n\r\n get getPattern() {\r\n return this.msgInput.inputPattern as RegExp;\r\n }\r\n\r\n ngOnInit() {\r\n this.msgInput.showInput && this.createFormGroup();\r\n }\r\n\r\n onClose() {\r\n this.action = 'close';\r\n this.hideBox();\r\n }\r\n\r\n onCancel() {\r\n this.action = 'cancel';\r\n this.hideBox();\r\n }\r\n\r\n hideBox() {\r\n if (this.msgInput.hide && this.msgInput.hide !== true) {\r\n this.msgInput.hide = true;\r\n }\r\n this.messageBox.ref?.overlayRef?.detach();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onConfirm() {\r\n if (!this.msgInput.showInput || (this.msgInput.showInput && this.formGroup.valid)) {\r\n this.action = 'confirm';\r\n this.hideBox();\r\n }\r\n }\r\n\r\n moveDone($event: { toState: string }) {\r\n if ($event.toState === 'void') {\r\n this.msgInput.callback && this.msgInput.callback(this.action, this.getInputValue());\r\n\r\n this.messageBox.ref?.overlayRef?.dispose();\r\n }\r\n }\r\n\r\n getInputValue() {\r\n return this.formGroup.controls['inputValue']?.value;\r\n }\r\n\r\n createFormGroup() {\r\n this.formGroup.addControl(\r\n 'inputValue',\r\n new FormControl(this.msgInput.inputValue, [Validators.required, Validators.pattern(this.msgInput.inputPattern as RegExp)])\r\n );\r\n }\r\n}\r\n","<div\r\n class=\"x-message-box\"\r\n *ngIf=\"!messageBox?.input?.hide\"\r\n [@x-move-box-animation]=\"messageBox.input?.placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n>\r\n <x-alert\r\n (close)=\"onClose()\"\r\n [title]=\"messageBox.input?.title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"messageBox.input?.type\"\r\n [effect]=\"messageBox.input?.effect\"\r\n [hideClose]=\"messageBox.input?.hideClose\"\r\n [closeText]=\"messageBox.input?.closeText\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n <ng-template #contentTpl let-iconTpl=\"$iconTpl\">\r\n <div class=\"x-message-box-inner\">\r\n <div class=\"x-message-box-content\">\r\n <ng-container *ngIf=\"!messageBox.input?.showInput; else inputTpl\">\r\n <ng-container *ngIf=\"messageBox.input?.showIcon\">\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n </ng-container>\r\n <ng-container *xOutlet=\"messageBox.input?.content\">\r\n {{ messageBox.input?.content }}\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #inputTpl>\r\n <form [formGroup]=\"formGroup\">\r\n <x-input\r\n formControlName=\"inputValue\"\r\n [type]=\"messageBox.input?.inputType\"\r\n [label]=\"getLabel\"\r\n [placeholder]=\"messageBox.input?.inputPlaceholder\"\r\n [pattern]=\"getPattern\"\r\n [message]=\"messageBox.input?.inputInvalidMessage\"\r\n ></x-input>\r\n </form>\r\n </ng-template>\r\n </div>\r\n <x-buttons space=\"1\">\r\n <x-button *ngIf=\"messageBox.input?.showCancel\" (click)=\"onCancel()\">{{ messageBox.input?.cancelText }}</x-button>\r\n <x-button type=\"primary\" (click)=\"onConfirm()\" [disabled]=\"formGroup?.invalid\">{{ messageBox.input?.confirmText }}</x-button>\r\n </x-buttons>\r\n </div>\r\n </ng-template>\r\n</div>\r\n","import { ComponentRef, Injectable } from '@angular/core';\r\nimport { XTemplate, XIsXTemplate, fillDefault, XIsString } from '@ng-nest/ui/core';\r\nimport { XMessageBoxOption, XMessageBoxOverlayRef, XMessageBoxRef, XMessageBoxPortal } from './message-box.property';\r\nimport { XMessageBoxComponent } from './message-box.component';\r\nimport { XPortalService } from '@ng-nest/ui/portal';\r\nimport { XI18nService } from '@ng-nest/ui/i18n';\r\n\r\n@Injectable()\r\nexport class XMessageBoxService {\r\n default: XMessageBoxOption = {\r\n type: 'info',\r\n width: '20rem',\r\n placement: 'center',\r\n offset: '2rem',\r\n effect: 'white',\r\n duration: 3000,\r\n showIcon: false,\r\n showInput: false,\r\n backdropClose: false,\r\n cancelText: '取消',\r\n confirmText: '确认',\r\n inputPlaceholder: '',\r\n hide: false\r\n };\r\n\r\n constructor(public portal: XPortalService, public i18n: XI18nService) {}\r\n\r\n alert(option: XTemplate | XMessageBoxOption): XMessageBoxRef {\r\n return this.createMessageBox(option, { showIcon: false, showCancel: false, showInput: false });\r\n }\r\n\r\n confirm(option: XTemplate | XMessageBoxOption): XMessageBoxRef {\r\n return this.createMessageBox(option, { showIcon: true, showCancel: true, showInput: false });\r\n }\r\n\r\n prompt(option: XTemplate | XMessageBoxOption): XMessageBoxRef {\r\n return this.createMessageBox(option, { showIcon: false, showCancel: true, showInput: true });\r\n }\r\n\r\n create(option: XMessageBoxOption): XMessageBoxOverlayRef {\r\n const offset = XIsString(option.offset) ? [option.offset as string] : (option.offset as string[]);\r\n return this.portal.attach({\r\n content: XMessageBoxComponent,\r\n overlayConfig: {\r\n panelClass: XMessageBoxPortal,\r\n hasBackdrop: true,\r\n width: option.width,\r\n height: option.height,\r\n positionStrategy: this.portal.setPlace(option.placement, ...offset)\r\n }\r\n });\r\n }\r\n\r\n private createMessageBox(option: XTemplate | XMessageBoxOption, def: XMessageBoxOption): XMessageBoxRef {\r\n let opt: XMessageBoxOption;\r\n if (XIsXTemplate(option)) {\r\n opt = { title: option as XTemplate };\r\n } else {\r\n opt = option as XMessageBoxOption;\r\n }\r\n this.setLocal();\r\n fillDefault(opt, Object.assign(this.default, def));\r\n return this.createMessageBoxPlacement(opt);\r\n }\r\n\r\n private createMessageBoxPlacement(option: XMessageBoxOption): XMessageBoxRef {\r\n let result = { ref: this.create(option), input: option };\r\n const { overlayRef, componentRef } = result.ref;\r\n const { instance } = componentRef as ComponentRef<XMessageBoxComponent>;\r\n instance.messageBox = result;\r\n if (option.backdropClose && overlayRef) {\r\n overlayRef.backdropClick().subscribe(() => instance.onClose());\r\n }\r\n return result;\r\n }\r\n\r\n private setLocal() {\r\n const messageBoxLocale = this.i18n.getLocale().messageBox;\r\n this.default = { ...this.default, ...messageBoxLocale };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XMessageBoxComponent } from './message-box.component';\r\nimport { XAlertModule } from '@ng-nest/ui/alert';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XMessageBoxService } from './message-box.service';\r\n\r\n@NgModule({\r\n declarations: [XMessageBoxComponent],\r\n exports: [XMessageBoxComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XPortalModule,\r\n XInputModule,\r\n XButtonModule,\r\n XIconModule,\r\n XAlertModule,\r\n XOutletModule\r\n ],\r\n providers: [XMessageBoxService]\r\n})\r\nexport class XMessageBoxModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-message-box.mjs","sources":["../../../../lib/ng-nest/ui/message-box/message-box.property.ts","../../../../lib/ng-nest/ui/message-box/message-box.component.ts","../../../../lib/ng-nest/ui/message-box/message-box.component.html","../../../../lib/ng-nest/ui/message-box/message-box.service.ts","../../../../lib/ng-nest/ui/message-box/message-box.module.ts","../../../../lib/ng-nest/ui/message-box/ng-nest-ui-message-box.ts"],"sourcesContent":["import { XStatus, XPlace } from '@ng-nest/ui/core';\r\nimport { XAlertOption } from '@ng-nest/ui/alert';\r\nimport { XMessageBoxComponent } from './message-box.component';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XInputType } from '@ng-nest/ui/input';\r\n\r\n/**\r\n * MessageBox\r\n * @selector x-message-box\r\n * @decorator component\r\n */\r\nexport const XMessageBoxPrefix = 'x-message-box';\r\n\r\nexport const XMessageBoxPortal = 'x-message-box-portal';\r\n\r\n/**\r\n * MessageBox Option\r\n */\r\nexport interface XMessageBoxOption extends XAlertOption {\r\n /**\r\n * @zh_CN 方位,九宫格\r\n * @en_US Direction, nine grid\r\n * @default 'top'\r\n */\r\n placement?: XPlace;\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n * @default '2rem'\r\n */\r\n offset?: string | string[];\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n * @default 'info'\r\n */\r\n type?: XMessageBoxType;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n * @default '16rem'\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n * @default true\r\n */\r\n hideClose?: boolean;\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @default true\r\n */\r\n showIcon?: boolean;\r\n /**\r\n * @zh_CN 显示取消按钮\r\n * @en_US Show cancel button\r\n */\r\n showCancel?: boolean;\r\n /**\r\n * @zh_CN 关闭事件\r\n * @en_US Close event\r\n */\r\n callback?: XMessageBoxCallback;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n * @default false\r\n */\r\n backdropClose?: boolean;\r\n /**\r\n * @zh_CN 确认按钮文字\r\n * @en_US Confirm button text\r\n * @default '确定'\r\n */\r\n confirmText?: string;\r\n /**\r\n * @zh_CN 取消按钮文字\r\n * @en_US Cancel button text\r\n * @default '取消'\r\n */\r\n cancelText?: string;\r\n /**\r\n * @zh_CN 是否显示输入框\r\n * @en_US Whether to show the input box\r\n */\r\n showInput?: boolean;\r\n /**\r\n * @zh_CN 匹配规则\r\n * @en_US Matching rules\r\n */\r\n inputPattern?: RegExp | RegExp[];\r\n /**\r\n * @zh_CN 匹配失败的信息提示\r\n * @en_US Information prompt for matching failure\r\n */\r\n inputInvalidMessage?: string;\r\n /**\r\n * @zh_CN 输入框的占位符\r\n * @en_US Placeholder for input box\r\n */\r\n inputPlaceholder?: string;\r\n /**\r\n * @zh_CN 输入框的类型\r\n * @en_US Type of input box\r\n */\r\n inputType?: XInputType;\r\n /**\r\n * @zh_CN 输入框的值\r\n * @en_US Value of input box\r\n */\r\n inputValue?: string;\r\n /**\r\n * @zh_CN 输入框的验证函数\r\n * @en_US Validation function of input box\r\n */\r\n inputValidator?: Function;\r\n}\r\n\r\nexport interface XMessageBoxCallback {\r\n (action: XMessageBoxAction, message?: string): void;\r\n}\r\n\r\nexport type XMessageBoxAction = 'confirm' | 'cancel' | 'close';\r\n\r\n/**\r\n * @zh_CN 创建的消息对象\r\n * @en_US Message object created\r\n */\r\nexport interface XMessageBoxOverlayRef extends XPortalOverlayRef<XMessageBoxComponent> {}\r\n\r\nexport interface XMessageBoxRef {\r\n ref?: XMessageBoxOverlayRef;\r\n input?: XMessageBoxOption;\r\n}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\nexport type XMessageBoxType = XStatus;\r\n","import { Component, ViewEncapsulation, Renderer2, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy, OnInit } from '@angular/core';\r\nimport { XMoveBoxAnimation } from '@ng-nest/ui/core';\r\nimport { XMessageBoxPrefix, XMessageBoxRef, XMessageBoxAction, XMessageBoxOption } from './message-box.property';\r\nimport { UntypedFormGroup, UntypedFormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XMessageBoxPrefix}`,\r\n templateUrl: './message-box.component.html',\r\n styleUrls: ['./message-box.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveBoxAnimation]\r\n})\r\nexport class XMessageBoxComponent implements OnInit {\r\n messageBox: XMessageBoxRef = {};\r\n action: XMessageBoxAction = 'close';\r\n formGroup: UntypedFormGroup = new UntypedFormGroup({});\r\n constructor(public renderer: Renderer2, public elementRef: ElementRef, public cdr: ChangeDetectorRef) {}\r\n\r\n get msgInput(): XMessageBoxOption {\r\n return this.messageBox.input as XMessageBoxOption;\r\n }\r\n\r\n get getLabel() {\r\n return this.msgInput.content as string;\r\n }\r\n\r\n get getPattern() {\r\n return this.msgInput.inputPattern as RegExp;\r\n }\r\n\r\n ngOnInit() {\r\n this.msgInput.showInput && this.createFormGroup();\r\n }\r\n\r\n onClose() {\r\n this.action = 'close';\r\n this.hideBox();\r\n }\r\n\r\n onCancel() {\r\n this.action = 'cancel';\r\n this.hideBox();\r\n }\r\n\r\n hideBox() {\r\n if (this.msgInput.hide && this.msgInput.hide !== true) {\r\n this.msgInput.hide = true;\r\n }\r\n this.messageBox.ref?.overlayRef?.detach();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onConfirm() {\r\n if (!this.msgInput.showInput || (this.msgInput.showInput && this.formGroup.valid)) {\r\n this.action = 'confirm';\r\n this.hideBox();\r\n }\r\n }\r\n\r\n moveDone($event: { toState: string }) {\r\n if ($event.toState === 'void') {\r\n this.msgInput.callback && this.msgInput.callback(this.action, this.getInputValue());\r\n\r\n this.messageBox.ref?.overlayRef?.dispose();\r\n }\r\n }\r\n\r\n getInputValue() {\r\n return this.formGroup.controls['inputValue']?.value;\r\n }\r\n\r\n createFormGroup() {\r\n this.formGroup.addControl(\r\n 'inputValue',\r\n new UntypedFormControl(this.msgInput.inputValue, [Validators.required, Validators.pattern(this.msgInput.inputPattern as RegExp)])\r\n );\r\n }\r\n}\r\n","<div\r\n class=\"x-message-box\"\r\n *ngIf=\"!messageBox?.input?.hide\"\r\n [@x-move-box-animation]=\"messageBox.input?.placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n>\r\n <x-alert\r\n (close)=\"onClose()\"\r\n [title]=\"messageBox.input?.title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"messageBox.input?.type\"\r\n [effect]=\"messageBox.input?.effect\"\r\n [hideClose]=\"messageBox.input?.hideClose\"\r\n [closeText]=\"messageBox.input?.closeText\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n <ng-template #contentTpl let-iconTpl=\"$iconTpl\">\r\n <div class=\"x-message-box-inner\">\r\n <div class=\"x-message-box-content\">\r\n <ng-container *ngIf=\"!messageBox.input?.showInput; else inputTpl\">\r\n <ng-container *ngIf=\"messageBox.input?.showIcon\">\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n </ng-container>\r\n <ng-container *xOutlet=\"messageBox.input?.content\">\r\n {{ messageBox.input?.content }}\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #inputTpl>\r\n <form [formGroup]=\"formGroup\">\r\n <x-input\r\n formControlName=\"inputValue\"\r\n [type]=\"messageBox.input?.inputType\"\r\n [label]=\"getLabel\"\r\n [placeholder]=\"messageBox.input?.inputPlaceholder\"\r\n [pattern]=\"getPattern\"\r\n [message]=\"messageBox.input?.inputInvalidMessage\"\r\n ></x-input>\r\n </form>\r\n </ng-template>\r\n </div>\r\n <x-buttons space=\"1\">\r\n <x-button *ngIf=\"messageBox.input?.showCancel\" (click)=\"onCancel()\">{{ messageBox.input?.cancelText }}</x-button>\r\n <x-button type=\"primary\" (click)=\"onConfirm()\" [disabled]=\"formGroup?.invalid\">{{ messageBox.input?.confirmText }}</x-button>\r\n </x-buttons>\r\n </div>\r\n </ng-template>\r\n</div>\r\n","import { ComponentRef, Injectable } from '@angular/core';\r\nimport { XTemplate, XIsXTemplate, fillDefault, XIsString } from '@ng-nest/ui/core';\r\nimport { XMessageBoxOption, XMessageBoxOverlayRef, XMessageBoxRef, XMessageBoxPortal } from './message-box.property';\r\nimport { XMessageBoxComponent } from './message-box.component';\r\nimport { XPortalService } from '@ng-nest/ui/portal';\r\nimport { XI18nService } from '@ng-nest/ui/i18n';\r\n\r\n@Injectable()\r\nexport class XMessageBoxService {\r\n default: XMessageBoxOption = {\r\n type: 'info',\r\n width: '20rem',\r\n placement: 'center',\r\n offset: '2rem',\r\n effect: 'white',\r\n duration: 3000,\r\n showIcon: false,\r\n showInput: false,\r\n backdropClose: false,\r\n cancelText: '取消',\r\n confirmText: '确认',\r\n inputPlaceholder: '',\r\n hide: false\r\n };\r\n\r\n constructor(public portal: XPortalService, public i18n: XI18nService) {}\r\n\r\n alert(option: XTemplate | XMessageBoxOption): XMessageBoxRef {\r\n return this.createMessageBox(option, { showIcon: false, showCancel: false, showInput: false });\r\n }\r\n\r\n confirm(option: XTemplate | XMessageBoxOption): XMessageBoxRef {\r\n return this.createMessageBox(option, { showIcon: true, showCancel: true, showInput: false });\r\n }\r\n\r\n prompt(option: XTemplate | XMessageBoxOption): XMessageBoxRef {\r\n return this.createMessageBox(option, { showIcon: false, showCancel: true, showInput: true });\r\n }\r\n\r\n create(option: XMessageBoxOption): XMessageBoxOverlayRef {\r\n const offset = XIsString(option.offset) ? [option.offset as string] : (option.offset as string[]);\r\n return this.portal.attach({\r\n content: XMessageBoxComponent,\r\n overlayConfig: {\r\n panelClass: XMessageBoxPortal,\r\n hasBackdrop: true,\r\n width: option.width,\r\n height: option.height,\r\n positionStrategy: this.portal.setPlace(option.placement, ...offset)\r\n }\r\n });\r\n }\r\n\r\n private createMessageBox(option: XTemplate | XMessageBoxOption, def: XMessageBoxOption): XMessageBoxRef {\r\n let opt: XMessageBoxOption;\r\n if (XIsXTemplate(option)) {\r\n opt = { title: option as XTemplate };\r\n } else {\r\n opt = option as XMessageBoxOption;\r\n }\r\n this.setLocal();\r\n fillDefault(opt, Object.assign(this.default, def));\r\n return this.createMessageBoxPlacement(opt);\r\n }\r\n\r\n private createMessageBoxPlacement(option: XMessageBoxOption): XMessageBoxRef {\r\n let result = { ref: this.create(option), input: option };\r\n const { overlayRef, componentRef } = result.ref;\r\n const { instance } = componentRef as ComponentRef<XMessageBoxComponent>;\r\n instance.messageBox = result;\r\n if (option.backdropClose && overlayRef) {\r\n overlayRef.backdropClick().subscribe(() => instance.onClose());\r\n }\r\n return result;\r\n }\r\n\r\n private setLocal() {\r\n const messageBoxLocale = this.i18n.getLocale().messageBox;\r\n this.default = { ...this.default, ...messageBoxLocale };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XMessageBoxComponent } from './message-box.component';\r\nimport { XAlertModule } from '@ng-nest/ui/alert';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\nimport { XMessageBoxService } from './message-box.service';\r\n\r\n@NgModule({\r\n declarations: [XMessageBoxComponent],\r\n exports: [XMessageBoxComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XPortalModule,\r\n XInputModule,\r\n XButtonModule,\r\n XIconModule,\r\n XAlertModule,\r\n XOutletModule\r\n ],\r\n providers: [XMessageBoxService]\r\n})\r\nexport class XMessageBoxModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":";;;;;;;;;;;;;;;;;;;;AAMA;;;;AAIG;AACI,MAAM,iBAAiB,GAAG,gBAAgB;AAE1C,MAAM,iBAAiB,GAAG;;MCApB,oBAAoB,CAAA;AAI/B,IAAA,WAAA,CAAmB,QAAmB,EAAS,UAAsB,EAAS,GAAsB,EAAA;AAAjF,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;AAAS,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;AAAS,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AAHpG,QAAA,IAAU,CAAA,UAAA,GAAmB,EAAE,CAAC;AAChC,QAAA,IAAM,CAAA,MAAA,GAAsB,OAAO,CAAC;QACpC,IAAA,CAAA,SAAS,GAAqB,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC;KACiD;AAExG,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,KAA0B,CAAC;KACnD;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAiB,CAAC;KACxC;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAsB,CAAC;KAC7C;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;KACnD;IAED,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACvB,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;IAED,OAAO,GAAA;;AACL,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE;AACrD,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;AAC3B,SAAA;QACD,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,CAAC,GAAG,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,EAAE,CAAC;AAC1C,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,SAAS,GAAA;QACP,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;AACjF,YAAA,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,OAAO,EAAE,CAAC;AAChB,SAAA;KACF;AAED,IAAA,QAAQ,CAAC,MAA2B,EAAA;;AAClC,QAAA,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE;YAC7B,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAEpF,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,CAAC,GAAG,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,EAAE,CAAC;AAC5C,SAAA;KACF;IAED,aAAa,GAAA;;QACX,OAAO,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,CAAC;KACrD;IAED,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CACvB,YAAY,EACZ,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAsB,CAAC,CAAC,CAAC,CAClI,CAAC;KACH;;oIAhEU,oBAAoB,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,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,mBAAA,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,ECbjC,QAAA,EAAA,eAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,ghEAkDA,EDvCc,MAAA,EAAA,CAAA,gWAAA,CAAA,EAAA,YAAA,EAAA,CAAA,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,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,sEAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAC,iBAAiB,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAEpB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBARhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,GAAG,iBAAiB,CAAA,CAAE,EAGjB,aAAA,EAAA,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,ghEAAA,EAAA,MAAA,EAAA,CAAA,gWAAA,CAAA,EAAA,CAAA;;;MEHpB,kBAAkB,CAAA;IAiB7B,WAAmB,CAAA,MAAsB,EAAS,IAAkB,EAAA;AAAjD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAgB;AAAS,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAc;QAhBpE,IAAA,CAAA,OAAO,GAAsB;AAC3B,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,SAAS,EAAE,QAAQ;AACnB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,gBAAgB,EAAE,EAAE;AACpB,YAAA,IAAI,EAAE,KAAK;SACZ,CAAC;KAEsE;AAExE,IAAA,KAAK,CAAC,MAAqC,EAAA;QACzC,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;KAChG;AAED,IAAA,OAAO,CAAC,MAAqC,EAAA;QAC3C,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;KAC9F;AAED,IAAA,MAAM,CAAC,MAAqC,EAAA;QAC1C,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KAC9F;AAED,IAAA,MAAM,CAAC,MAAyB,EAAA;QAC9B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAgB,CAAC,GAAI,MAAM,CAAC,MAAmB,CAAC;AAClG,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;AACxB,YAAA,OAAO,EAAE,oBAAoB;AAC7B,YAAA,aAAa,EAAE;AACb,gBAAA,UAAU,EAAE,iBAAiB;AAC7B,gBAAA,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;AACrB,gBAAA,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC;AACpE,aAAA;AACF,SAAA,CAAC,CAAC;KACJ;IAEO,gBAAgB,CAAC,MAAqC,EAAE,GAAsB,EAAA;AACpF,QAAA,IAAI,GAAsB,CAAC;AAC3B,QAAA,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;AACxB,YAAA,GAAG,GAAG,EAAE,KAAK,EAAE,MAAmB,EAAE,CAAC;AACtC,SAAA;AAAM,aAAA;YACL,GAAG,GAAG,MAA2B,CAAC;AACnC,SAAA;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChB,QAAA,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;AACnD,QAAA,OAAO,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;KAC5C;AAEO,IAAA,yBAAyB,CAAC,MAAyB,EAAA;AACzD,QAAA,IAAI,MAAM,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QACzD,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;AAChD,QAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,YAAkD,CAAC;AACxE,QAAA,QAAQ,CAAC,UAAU,GAAG,MAAM,CAAC;AAC7B,QAAA,IAAI,MAAM,CAAC,aAAa,IAAI,UAAU,EAAE;AACtC,YAAA,UAAU,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;AAChE,SAAA;AACD,QAAA,OAAO,MAAM,CAAC;KACf;IAEO,QAAQ,GAAA;QACd,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,OAAO,CAAA,EAAK,gBAAgB,CAAE,CAAC;KACzD;;kIAvEU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sIAAlB,kBAAkB,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;;;MCqBE,iBAAiB,CAAA;;iIAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;kIAAjB,iBAAiB,EAAA,YAAA,EAAA,CAfb,oBAAoB,CAAA,EAAA,OAAA,EAAA,CAGjC,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,aAAa;QACb,YAAY;QACZ,aAAa;QACb,WAAW;QACX,YAAY;QACZ,aAAa,aAVL,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAcnB,mBAAA,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EAFjB,SAAA,EAAA,CAAC,kBAAkB,CAAC,YAV7B,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,aAAa;QACb,YAAY;QACZ,aAAa;QACb,WAAW;QACX,YAAY;QACZ,aAAa,CAAA,EAAA,CAAA,CAAA;2FAIJ,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAhB7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,oBAAoB,CAAC;oBACpC,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAC/B,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,aAAa;wBACb,YAAY;wBACZ,aAAa;wBACb,WAAW;wBACX,YAAY;wBACZ,aAAa;AACd,qBAAA;oBACD,SAAS,EAAE,CAAC,kBAAkB,CAAC;iBAChC,CAAA;;;AC3BD;;AAEG;;;;"}
|
|
@@ -4,10 +4,10 @@ import * as i2$1 from '@ng-nest/ui/core';
|
|
|
4
4
|
import { XIsEmpty, XMoveAnimation, XIsString, XIsXTemplate, fillDefault, XIsUndefined } from '@ng-nest/ui/core';
|
|
5
5
|
import { of } from 'rxjs';
|
|
6
6
|
import { delay } from 'rxjs/operators';
|
|
7
|
-
import * as i1 from '@
|
|
8
|
-
import { XAlertModule } from '@ng-nest/ui/alert';
|
|
9
|
-
import * as i2 from '@angular/common';
|
|
7
|
+
import * as i1 from '@angular/common';
|
|
10
8
|
import { CommonModule } from '@angular/common';
|
|
9
|
+
import * as i2 from '@ng-nest/ui/alert';
|
|
10
|
+
import { XAlertModule } from '@ng-nest/ui/alert';
|
|
11
11
|
import * as i1$1 from '@ng-nest/ui/portal';
|
|
12
12
|
import { XPortalModule } from '@ng-nest/ui/portal';
|
|
13
13
|
|
|
@@ -54,9 +54,9 @@ class XMessageComponent {
|
|
|
54
54
|
return item.id;
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
/** @nocollapse */
|
|
58
|
-
/** @nocollapse */
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
57
|
+
/** @nocollapse */ XMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
/** @nocollapse */ XMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XMessageComponent, selector: "x-message", ngImport: i0, template: "<div class=\"x-message\">\r\n <ng-container *ngFor=\"let item of message.list; trackBy: trackByNode\">\r\n <x-alert\r\n [@x-move-animation]=\"item.placement\"\r\n (@x-move-animation.done)=\"moveDone($event)\"\r\n (mouseenter)=\"onEnter(item)\"\r\n (mouseleave)=\"onLeave(item)\"\r\n (close)=\"onClose(item)\"\r\n [hide]=\"item.hide\"\r\n [title]=\"item.title\"\r\n [content]=\"item.content\"\r\n [type]=\"item.type\"\r\n [effect]=\"item.effect\"\r\n [hideClose]=\"item.hideClose\"\r\n [closeText]=\"item.closeText\"\r\n [showIcon]=\"item.showIcon\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </ng-container>\r\n</div>\r\n", styles: [".x-message{margin:0;padding:0}.x-message>x-alert{padding:.25rem 0}.x-message>x-alert>.x-alert{box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-message-portal x-message{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.XAlertComponent, selector: "x-alert" }], animations: [XMoveAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageComponent, decorators: [{
|
|
60
60
|
type: Component,
|
|
61
61
|
args: [{ selector: `${XMessagePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XMoveAnimation], template: "<div class=\"x-message\">\r\n <ng-container *ngFor=\"let item of message.list; trackBy: trackByNode\">\r\n <x-alert\r\n [@x-move-animation]=\"item.placement\"\r\n (@x-move-animation.done)=\"moveDone($event)\"\r\n (mouseenter)=\"onEnter(item)\"\r\n (mouseleave)=\"onLeave(item)\"\r\n (close)=\"onClose(item)\"\r\n [hide]=\"item.hide\"\r\n [title]=\"item.title\"\r\n [content]=\"item.content\"\r\n [type]=\"item.type\"\r\n [effect]=\"item.effect\"\r\n [hideClose]=\"item.hideClose\"\r\n [closeText]=\"item.closeText\"\r\n [showIcon]=\"item.showIcon\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </ng-container>\r\n</div>\r\n", styles: [".x-message{margin:0;padding:0}.x-message>x-alert{padding:.25rem 0}.x-message>x-alert>.x-alert{box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-message-portal x-message{width:100%}\n"] }]
|
|
62
62
|
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
|
|
@@ -205,18 +205,18 @@ class XMessageService {
|
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
|
-
/** @nocollapse */
|
|
209
|
-
/** @nocollapse */
|
|
210
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
208
|
+
/** @nocollapse */ XMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageService, deps: [{ token: i1$1.XPortalService }, { token: i2$1.XConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
209
|
+
/** @nocollapse */ XMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageService });
|
|
210
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageService, decorators: [{
|
|
211
211
|
type: Injectable
|
|
212
212
|
}], ctorParameters: function () { return [{ type: i1$1.XPortalService }, { type: i2$1.XConfigService }]; } });
|
|
213
213
|
|
|
214
214
|
class XMessageModule {
|
|
215
215
|
}
|
|
216
|
-
/** @nocollapse */
|
|
217
|
-
/** @nocollapse */
|
|
218
|
-
/** @nocollapse */
|
|
219
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
216
|
+
/** @nocollapse */ XMessageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
217
|
+
/** @nocollapse */ XMessageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: XMessageModule, declarations: [XMessageComponent], imports: [CommonModule, XPortalModule, XAlertModule], exports: [XMessageComponent] });
|
|
218
|
+
/** @nocollapse */ XMessageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageModule, providers: [XMessageService], imports: [CommonModule, XPortalModule, XAlertModule] });
|
|
219
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XMessageModule, decorators: [{
|
|
220
220
|
type: NgModule,
|
|
221
221
|
args: [{
|
|
222
222
|
declarations: [XMessageComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-message.mjs","sources":["../../../../lib/ng-nest/ui/message/message.property.ts","../../../../lib/ng-nest/ui/message/message.component.ts","../../../../lib/ng-nest/ui/message/message.component.html","../../../../lib/ng-nest/ui/message/message-ref.ts","../../../../lib/ng-nest/ui/message/message.service.ts","../../../../lib/ng-nest/ui/message/message.module.ts","../../../../lib/ng-nest/ui/message/ng-nest-ui-message.ts"],"sourcesContent":["import { XStatus, XPlace } from '@ng-nest/ui/core';\r\nimport { XAlertOption } from '@ng-nest/ui/alert';\r\nimport { Subscription, Subject } from 'rxjs';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XMessageComponent } from './message.component';\r\n\r\n/**\r\n * Message\r\n * @selector x-message\r\n * @decorator component\r\n */\r\nexport const XMessagePrefix = 'x-message';\r\nexport const XMessagePortal = 'x-message-portal';\r\nexport const X_MESSAGE_CONFIG_NAME = 'message';\r\n\r\n/**\r\n * Message Option\r\n */\r\nexport interface XMessageOption extends XAlertOption {\r\n /**\r\n * @zh_CN 消息框的 id\r\n * @en_US Message id\r\n */\r\n id?: string;\r\n /**\r\n * @zh_CN 方位,九宫格\r\n * @en_US Direction, nine grid\r\n * @default 'top'\r\n * @withConfig true\r\n */\r\n placement?: XPlace;\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n * @default '2rem'\r\n * @withConfig true\r\n */\r\n offset?: string | string[];\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n * @default 'info'\r\n * @withConfig true\r\n */\r\n type?: XMessageType;\r\n /**\r\n * @zh_CN 多个消息的时候,显示类型\r\n * @en_US When multiple messages, the display type\r\n * @default 'list'\r\n * @withConfig true\r\n */\r\n displayType?: XMessageDisplayType;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n * @default '16rem'\r\n * @withConfig true\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 延迟关闭时间\r\n * @en_US Delay off time\r\n * @default 3000\r\n * @withConfig true\r\n */\r\n duration?: number;\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n * @default true\r\n * @withConfig true\r\n */\r\n hideClose?: boolean;\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @default true\r\n * @withConfig true\r\n */\r\n showIcon?: boolean;\r\n /**\r\n * @zh_CN 延迟关闭订阅后的对象,用来释放或取消\r\n * @en_US Delayed closing the subscribed object, used to release or cancel\r\n */\r\n duration$?: Subscription | null;\r\n /**\r\n * @zh_CN 延迟关闭订阅对象\r\n * @en_US Delay in closing the subscription object\r\n */\r\n durationSub?: Subject<any>;\r\n}\r\n\r\n/**\r\n * @zh_CN 创建的消息对象\r\n * @en_US Message object created\r\n */\r\nexport interface XMessageOverlayRef extends XPortalOverlayRef<XMessageComponent> {}\r\n\r\n/**\r\n * @zh_CN 九宫格中的消息对象\r\n * @en_US Message object in Jiugongge\r\n */\r\nexport interface XMessagePlacement {\r\n [property: string]: XMessagePlacementRef;\r\n}\r\n\r\n/**\r\n * @zh_CN 九宫格中的消息对象\r\n * @en_US Message object in Jiugongge\r\n */\r\nexport interface XMessagePlacementRef {\r\n /**\r\n * @zh_CN 方位对应的 overlayRef\r\n * @en_US Placement overlayRef\r\n */\r\n ref: XMessageOverlayRef;\r\n /**\r\n * @zh_CN 对应的消息 list 数据\r\n * @en_US Corresponding message list data\r\n */\r\n list: XMessageOption[];\r\n /**\r\n * @zh_CN 关闭所有数据\r\n * @en_US Close all data\r\n */\r\n closeAll: () => void;\r\n}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\nexport type XMessageType = XStatus;\r\n\r\n/**\r\n * @zh_CN 多个消息的时候,显示类型\r\n * @en_US When multiple messages, the display type\r\n */\r\nexport type XMessageDisplayType = 'list' | 'single';\r\n","import { Component, ViewEncapsulation, Renderer2, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XMoveAnimation, XIsEmpty } from '@ng-nest/ui/core';\r\nimport { XMessagePrefix, XMessageOption, XMessagePlacementRef } from './message.property';\r\nimport { of } from 'rxjs';\r\nimport { delay } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: `${XMessagePrefix}`,\r\n templateUrl: './message.component.html',\r\n styleUrls: ['./message.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveAnimation]\r\n})\r\nexport class XMessageComponent {\r\n message: XMessagePlacementRef = { ref: {}, list: [], closeAll: () => {} };\r\n\r\n constructor(public renderer: Renderer2, public elementRef: ElementRef, public cdr: ChangeDetectorRef) {}\r\n\r\n onClose(item: XMessageOption) {\r\n this.message.list?.splice(this.message.list.indexOf(item), 1);\r\n item.duration$?.unsubscribe();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n moveDone($event: { toState: string }) {\r\n if ($event.toState === 'void' && XIsEmpty(this.message.list)) {\r\n this.message.ref?.overlayRef?.detach();\r\n }\r\n }\r\n\r\n onEnter(item: XMessageOption) {\r\n item.duration$?.unsubscribe();\r\n }\r\n\r\n onLeave(item: XMessageOption) {\r\n if (item.duration) {\r\n item.duration$ = of(true)\r\n .pipe(delay(item.duration))\r\n .subscribe(() => this.onClose(item));\r\n }\r\n }\r\n\r\n trackByNode(_index: number, item: XMessageOption) {\r\n return item.id;\r\n }\r\n}\r\n","<div class=\"x-message\">\r\n <ng-container *ngFor=\"let item of message.list; trackBy: trackByNode\">\r\n <x-alert\r\n [@x-move-animation]=\"item.placement\"\r\n (@x-move-animation.done)=\"moveDone($event)\"\r\n (mouseenter)=\"onEnter(item)\"\r\n (mouseleave)=\"onLeave(item)\"\r\n (close)=\"onClose(item)\"\r\n [hide]=\"item.hide\"\r\n [title]=\"item.title\"\r\n [content]=\"item.content\"\r\n [type]=\"item.type\"\r\n [effect]=\"item.effect\"\r\n [hideClose]=\"item.hideClose\"\r\n [closeText]=\"item.closeText\"\r\n [showIcon]=\"item.showIcon\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </ng-container>\r\n</div>\r\n","import { XMessageOption } from './message.property';\r\n\r\n// TODO: add more function\r\nexport class XMessageRef {\r\n option: XMessageOption;\r\n constructor(option: XMessageOption) {\r\n if (!option.id) option.id = `${new Date().getTime()}`;\r\n this.option = option;\r\n }\r\n close = () => {};\r\n closeAll = () => {};\r\n update = (_option: XMessageOption) => {};\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { XTemplate, XIsXTemplate, XIsEmpty, fillDefault, XIsString, XConfigService, XMessageConfig, XIsUndefined } from '@ng-nest/ui/core';\r\nimport {\r\n XMessageOverlayRef,\r\n XMessageType,\r\n XMessagePlacement,\r\n XMessagePortal,\r\n XMessageOption,\r\n X_MESSAGE_CONFIG_NAME,\r\n XMessagePlacementRef\r\n} from './message.property';\r\nimport { XMessageComponent } from './message.component';\r\nimport { of } from 'rxjs';\r\nimport { delay } from 'rxjs/operators';\r\nimport { XPortalService } from '@ng-nest/ui/portal';\r\nimport { XMessageRef } from './message-ref';\r\n\r\n@Injectable()\r\nexport class XMessageService {\r\n messages: XMessagePlacement = {};\r\n\r\n default: XMessageOption = {\r\n type: 'info',\r\n width: '16rem',\r\n placement: 'top',\r\n offset: '2rem',\r\n effect: 'white',\r\n displayType: 'list',\r\n duration: 3000,\r\n hideClose: true,\r\n showIcon: true,\r\n hide: false\r\n };\r\n\r\n configDefault?: XMessageConfig;\r\n\r\n constructor(public portal: XPortalService, public configService: XConfigService) {\r\n this.configDefault = this.configService.getConfigForComponent(X_MESSAGE_CONFIG_NAME);\r\n Object.assign(this.default, this.configDefault);\r\n }\r\n\r\n info(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'info');\r\n }\r\n\r\n success(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'success');\r\n }\r\n\r\n warning(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'warning');\r\n }\r\n\r\n error(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'error');\r\n }\r\n\r\n loading(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'loading');\r\n }\r\n\r\n create(option: XMessageOption): XMessageOverlayRef {\r\n const offset = XIsString(option.offset) ? [option.offset as string] : (option.offset as string[]);\r\n return this.portal.attach({\r\n content: XMessageComponent,\r\n overlayConfig: {\r\n panelClass: XMessagePortal,\r\n width: option.width,\r\n height: option.height,\r\n positionStrategy: this.portal.setPlace(option.placement, ...offset)\r\n }\r\n });\r\n }\r\n\r\n private createMessage(option: XTemplate | XMessageOption, type: XMessageType): XMessageRef {\r\n let opt: XMessageOption;\r\n if (XIsXTemplate(option)) {\r\n opt = { title: option as XTemplate, type: type };\r\n } else {\r\n opt = option as XMessageOption;\r\n opt.type = type;\r\n }\r\n fillDefault(opt, this.default);\r\n const ref = new XMessageRef(opt);\r\n if (XIsUndefined(opt.placement)) {\r\n return ref;\r\n }\r\n ref.close = () => {\r\n this.removeMessage(opt);\r\n };\r\n ref.closeAll = () => {\r\n this.closeAll();\r\n };\r\n ref.update = (_opt) => {\r\n this.updateMessage(_opt, opt);\r\n };\r\n this.setDuration(opt);\r\n this.createMessagePlacement(opt);\r\n\r\n return ref;\r\n }\r\n\r\n private closeAll(excludeOption?: XMessageOption) {\r\n for (let key in this.messages) {\r\n for (let option of this.messages[key].list) {\r\n option !== excludeOption && this.removeMessage(option);\r\n }\r\n }\r\n }\r\n\r\n private createMessagePlacement(option: XMessageOption) {\r\n let msgPlacement = this.messages[option.placement!];\r\n if (XIsEmpty(msgPlacement) || !msgPlacement.ref?.overlayRef?.hasAttached()) {\r\n this.messages[option.placement!] = {\r\n ref: this.create(option),\r\n list: [option],\r\n closeAll: () => {\r\n this.closeAll();\r\n }\r\n };\r\n msgPlacement = this.messages[option.placement!];\r\n } else {\r\n msgPlacement.list = [...(this.messages[option.placement!].list as XMessageOption[]), option];\r\n }\r\n this.messageChange(msgPlacement);\r\n\r\n option.displayType === 'single' && this.closeAll(option);\r\n }\r\n\r\n private messageChange(message: XMessagePlacementRef) {\r\n if (!message.ref?.overlayRef?.hasAttached() || !message?.ref?.componentRef?.instance) return;\r\n message.ref.componentRef.instance.message = message;\r\n message.ref.componentRef.instance.cdr.detectChanges();\r\n }\r\n\r\n private setDuration(option: XMessageOption) {\r\n if (option.duration && option.type !== 'loading') {\r\n option.duration$ = of(true)\r\n .pipe(delay(option.duration))\r\n .subscribe(() => {\r\n this.removeMessage(option);\r\n });\r\n }\r\n }\r\n\r\n private removeMessage(option: XMessageOption) {\r\n if (typeof option.placement === 'undefined') return;\r\n this.messages[option.placement].ref?.componentRef?.instance.onClose(option);\r\n }\r\n\r\n private updateMessage(newOption: XMessageOption, oldOption: XMessageOption) {\r\n Object.assign(oldOption, newOption);\r\n this.setDuration(oldOption);\r\n const refs = this.messages[oldOption.placement!];\r\n if (refs) {\r\n refs.ref.componentRef?.instance.cdr.detectChanges();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XMessageComponent } from './message.component';\r\nimport { XAlertModule } from '@ng-nest/ui/alert';\r\nimport { XMessageService } from './message.service';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\n\r\n@NgModule({\r\n declarations: [XMessageComponent],\r\n exports: [XMessageComponent],\r\n imports: [CommonModule, XPortalModule, XAlertModule],\r\n providers: [XMessageService]\r\n})\r\nexport class XMessageModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-message.mjs","sources":["../../../../lib/ng-nest/ui/message/message.property.ts","../../../../lib/ng-nest/ui/message/message.component.ts","../../../../lib/ng-nest/ui/message/message.component.html","../../../../lib/ng-nest/ui/message/message-ref.ts","../../../../lib/ng-nest/ui/message/message.service.ts","../../../../lib/ng-nest/ui/message/message.module.ts","../../../../lib/ng-nest/ui/message/ng-nest-ui-message.ts"],"sourcesContent":["import { XStatus, XPlace } from '@ng-nest/ui/core';\r\nimport { XAlertOption } from '@ng-nest/ui/alert';\r\nimport { Subscription, Subject } from 'rxjs';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XMessageComponent } from './message.component';\r\n\r\n/**\r\n * Message\r\n * @selector x-message\r\n * @decorator component\r\n */\r\nexport const XMessagePrefix = 'x-message';\r\nexport const XMessagePortal = 'x-message-portal';\r\nexport const X_MESSAGE_CONFIG_NAME = 'message';\r\n\r\n/**\r\n * Message Option\r\n */\r\nexport interface XMessageOption extends XAlertOption {\r\n /**\r\n * @zh_CN 消息框的 id\r\n * @en_US Message id\r\n */\r\n id?: string;\r\n /**\r\n * @zh_CN 方位,九宫格\r\n * @en_US Direction, nine grid\r\n * @default 'top'\r\n * @withConfig true\r\n */\r\n placement?: XPlace;\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n * @default '2rem'\r\n * @withConfig true\r\n */\r\n offset?: string | string[];\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n * @default 'info'\r\n * @withConfig true\r\n */\r\n type?: XMessageType;\r\n /**\r\n * @zh_CN 多个消息的时候,显示类型\r\n * @en_US When multiple messages, the display type\r\n * @default 'list'\r\n * @withConfig true\r\n */\r\n displayType?: XMessageDisplayType;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n * @default '16rem'\r\n * @withConfig true\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 延迟关闭时间\r\n * @en_US Delay off time\r\n * @default 3000\r\n * @withConfig true\r\n */\r\n duration?: number;\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n * @default true\r\n * @withConfig true\r\n */\r\n hideClose?: boolean;\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @default true\r\n * @withConfig true\r\n */\r\n showIcon?: boolean;\r\n /**\r\n * @zh_CN 延迟关闭订阅后的对象,用来释放或取消\r\n * @en_US Delayed closing the subscribed object, used to release or cancel\r\n */\r\n duration$?: Subscription | null;\r\n /**\r\n * @zh_CN 延迟关闭订阅对象\r\n * @en_US Delay in closing the subscription object\r\n */\r\n durationSub?: Subject<any>;\r\n}\r\n\r\n/**\r\n * @zh_CN 创建的消息对象\r\n * @en_US Message object created\r\n */\r\nexport interface XMessageOverlayRef extends XPortalOverlayRef<XMessageComponent> {}\r\n\r\n/**\r\n * @zh_CN 九宫格中的消息对象\r\n * @en_US Message object in Jiugongge\r\n */\r\nexport interface XMessagePlacement {\r\n [property: string]: XMessagePlacementRef;\r\n}\r\n\r\n/**\r\n * @zh_CN 九宫格中的消息对象\r\n * @en_US Message object in Jiugongge\r\n */\r\nexport interface XMessagePlacementRef {\r\n /**\r\n * @zh_CN 方位对应的 overlayRef\r\n * @en_US Placement overlayRef\r\n */\r\n ref: XMessageOverlayRef;\r\n /**\r\n * @zh_CN 对应的消息 list 数据\r\n * @en_US Corresponding message list data\r\n */\r\n list: XMessageOption[];\r\n /**\r\n * @zh_CN 关闭所有数据\r\n * @en_US Close all data\r\n */\r\n closeAll: () => void;\r\n}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\nexport type XMessageType = XStatus;\r\n\r\n/**\r\n * @zh_CN 多个消息的时候,显示类型\r\n * @en_US When multiple messages, the display type\r\n */\r\nexport type XMessageDisplayType = 'list' | 'single';\r\n","import { Component, ViewEncapsulation, Renderer2, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XMoveAnimation, XIsEmpty } from '@ng-nest/ui/core';\r\nimport { XMessagePrefix, XMessageOption, XMessagePlacementRef } from './message.property';\r\nimport { of } from 'rxjs';\r\nimport { delay } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: `${XMessagePrefix}`,\r\n templateUrl: './message.component.html',\r\n styleUrls: ['./message.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveAnimation]\r\n})\r\nexport class XMessageComponent {\r\n message: XMessagePlacementRef = { ref: {}, list: [], closeAll: () => {} };\r\n\r\n constructor(public renderer: Renderer2, public elementRef: ElementRef, public cdr: ChangeDetectorRef) {}\r\n\r\n onClose(item: XMessageOption) {\r\n this.message.list?.splice(this.message.list.indexOf(item), 1);\r\n item.duration$?.unsubscribe();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n moveDone($event: { toState: string }) {\r\n if ($event.toState === 'void' && XIsEmpty(this.message.list)) {\r\n this.message.ref?.overlayRef?.detach();\r\n }\r\n }\r\n\r\n onEnter(item: XMessageOption) {\r\n item.duration$?.unsubscribe();\r\n }\r\n\r\n onLeave(item: XMessageOption) {\r\n if (item.duration) {\r\n item.duration$ = of(true)\r\n .pipe(delay(item.duration))\r\n .subscribe(() => this.onClose(item));\r\n }\r\n }\r\n\r\n trackByNode(_index: number, item: XMessageOption) {\r\n return item.id;\r\n }\r\n}\r\n","<div class=\"x-message\">\r\n <ng-container *ngFor=\"let item of message.list; trackBy: trackByNode\">\r\n <x-alert\r\n [@x-move-animation]=\"item.placement\"\r\n (@x-move-animation.done)=\"moveDone($event)\"\r\n (mouseenter)=\"onEnter(item)\"\r\n (mouseleave)=\"onLeave(item)\"\r\n (close)=\"onClose(item)\"\r\n [hide]=\"item.hide\"\r\n [title]=\"item.title\"\r\n [content]=\"item.content\"\r\n [type]=\"item.type\"\r\n [effect]=\"item.effect\"\r\n [hideClose]=\"item.hideClose\"\r\n [closeText]=\"item.closeText\"\r\n [showIcon]=\"item.showIcon\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </ng-container>\r\n</div>\r\n","import { XMessageOption } from './message.property';\r\n\r\n// TODO: add more function\r\nexport class XMessageRef {\r\n option: XMessageOption;\r\n constructor(option: XMessageOption) {\r\n if (!option.id) option.id = `${new Date().getTime()}`;\r\n this.option = option;\r\n }\r\n close = () => {};\r\n closeAll = () => {};\r\n update = (_option: XMessageOption) => {};\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { XTemplate, XIsXTemplate, XIsEmpty, fillDefault, XIsString, XConfigService, XMessageConfig, XIsUndefined } from '@ng-nest/ui/core';\r\nimport {\r\n XMessageOverlayRef,\r\n XMessageType,\r\n XMessagePlacement,\r\n XMessagePortal,\r\n XMessageOption,\r\n X_MESSAGE_CONFIG_NAME,\r\n XMessagePlacementRef\r\n} from './message.property';\r\nimport { XMessageComponent } from './message.component';\r\nimport { of } from 'rxjs';\r\nimport { delay } from 'rxjs/operators';\r\nimport { XPortalService } from '@ng-nest/ui/portal';\r\nimport { XMessageRef } from './message-ref';\r\n\r\n@Injectable()\r\nexport class XMessageService {\r\n messages: XMessagePlacement = {};\r\n\r\n default: XMessageOption = {\r\n type: 'info',\r\n width: '16rem',\r\n placement: 'top',\r\n offset: '2rem',\r\n effect: 'white',\r\n displayType: 'list',\r\n duration: 3000,\r\n hideClose: true,\r\n showIcon: true,\r\n hide: false\r\n };\r\n\r\n configDefault?: XMessageConfig;\r\n\r\n constructor(public portal: XPortalService, public configService: XConfigService) {\r\n this.configDefault = this.configService.getConfigForComponent(X_MESSAGE_CONFIG_NAME);\r\n Object.assign(this.default, this.configDefault);\r\n }\r\n\r\n info(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'info');\r\n }\r\n\r\n success(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'success');\r\n }\r\n\r\n warning(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'warning');\r\n }\r\n\r\n error(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'error');\r\n }\r\n\r\n loading(option: XTemplate | XMessageOption): XMessageRef {\r\n return this.createMessage(option, 'loading');\r\n }\r\n\r\n create(option: XMessageOption): XMessageOverlayRef {\r\n const offset = XIsString(option.offset) ? [option.offset as string] : (option.offset as string[]);\r\n return this.portal.attach({\r\n content: XMessageComponent,\r\n overlayConfig: {\r\n panelClass: XMessagePortal,\r\n width: option.width,\r\n height: option.height,\r\n positionStrategy: this.portal.setPlace(option.placement, ...offset)\r\n }\r\n });\r\n }\r\n\r\n private createMessage(option: XTemplate | XMessageOption, type: XMessageType): XMessageRef {\r\n let opt: XMessageOption;\r\n if (XIsXTemplate(option)) {\r\n opt = { title: option as XTemplate, type: type };\r\n } else {\r\n opt = option as XMessageOption;\r\n opt.type = type;\r\n }\r\n fillDefault(opt, this.default);\r\n const ref = new XMessageRef(opt);\r\n if (XIsUndefined(opt.placement)) {\r\n return ref;\r\n }\r\n ref.close = () => {\r\n this.removeMessage(opt);\r\n };\r\n ref.closeAll = () => {\r\n this.closeAll();\r\n };\r\n ref.update = (_opt) => {\r\n this.updateMessage(_opt, opt);\r\n };\r\n this.setDuration(opt);\r\n this.createMessagePlacement(opt);\r\n\r\n return ref;\r\n }\r\n\r\n private closeAll(excludeOption?: XMessageOption) {\r\n for (let key in this.messages) {\r\n for (let option of this.messages[key].list) {\r\n option !== excludeOption && this.removeMessage(option);\r\n }\r\n }\r\n }\r\n\r\n private createMessagePlacement(option: XMessageOption) {\r\n let msgPlacement = this.messages[option.placement!];\r\n if (XIsEmpty(msgPlacement) || !msgPlacement.ref?.overlayRef?.hasAttached()) {\r\n this.messages[option.placement!] = {\r\n ref: this.create(option),\r\n list: [option],\r\n closeAll: () => {\r\n this.closeAll();\r\n }\r\n };\r\n msgPlacement = this.messages[option.placement!];\r\n } else {\r\n msgPlacement.list = [...(this.messages[option.placement!].list as XMessageOption[]), option];\r\n }\r\n this.messageChange(msgPlacement);\r\n\r\n option.displayType === 'single' && this.closeAll(option);\r\n }\r\n\r\n private messageChange(message: XMessagePlacementRef) {\r\n if (!message.ref?.overlayRef?.hasAttached() || !message?.ref?.componentRef?.instance) return;\r\n message.ref.componentRef.instance.message = message;\r\n message.ref.componentRef.instance.cdr.detectChanges();\r\n }\r\n\r\n private setDuration(option: XMessageOption) {\r\n if (option.duration && option.type !== 'loading') {\r\n option.duration$ = of(true)\r\n .pipe(delay(option.duration))\r\n .subscribe(() => {\r\n this.removeMessage(option);\r\n });\r\n }\r\n }\r\n\r\n private removeMessage(option: XMessageOption) {\r\n if (typeof option.placement === 'undefined') return;\r\n this.messages[option.placement].ref?.componentRef?.instance.onClose(option);\r\n }\r\n\r\n private updateMessage(newOption: XMessageOption, oldOption: XMessageOption) {\r\n Object.assign(oldOption, newOption);\r\n this.setDuration(oldOption);\r\n const refs = this.messages[oldOption.placement!];\r\n if (refs) {\r\n refs.ref.componentRef?.instance.cdr.detectChanges();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XMessageComponent } from './message.component';\r\nimport { XAlertModule } from '@ng-nest/ui/alert';\r\nimport { XMessageService } from './message.service';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\n\r\n@NgModule({\r\n declarations: [XMessageComponent],\r\n exports: [XMessageComponent],\r\n imports: [CommonModule, XPortalModule, XAlertModule],\r\n providers: [XMessageService]\r\n})\r\nexport class XMessageModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}
|