@ng-nest/ui 18.0.6 → 18.0.8
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/core/config/config.d.ts +6 -0
- package/esm2022/affix/affix.component.mjs +4 -4
- package/esm2022/affix/affix.module.mjs +4 -4
- package/esm2022/affix/affix.property.mjs +3 -3
- package/esm2022/alert/alert.component.mjs +5 -5
- package/esm2022/alert/alert.module.mjs +4 -4
- package/esm2022/alert/alert.property.mjs +3 -3
- package/esm2022/anchor/anchor-inner.component.mjs +3 -3
- package/esm2022/anchor/anchor.component.mjs +5 -5
- package/esm2022/anchor/anchor.module.mjs +4 -4
- package/esm2022/anchor/anchor.property.mjs +6 -6
- package/esm2022/api/api.component.mjs +4 -4
- package/esm2022/api/api.module.mjs +4 -4
- package/esm2022/auto-complete/auto-complete-portal.component.mjs +3 -3
- package/esm2022/auto-complete/auto-complete.component.mjs +5 -5
- package/esm2022/auto-complete/auto-complete.module.mjs +4 -4
- package/esm2022/auto-complete/auto-complete.property.mjs +3 -3
- package/esm2022/avatar/avatar-group.component.mjs +3 -3
- package/esm2022/avatar/avatar.component.mjs +5 -5
- package/esm2022/avatar/avatar.module.mjs +4 -4
- package/esm2022/avatar/avatar.property.mjs +6 -6
- package/esm2022/back-top/back-top.component.mjs +5 -5
- package/esm2022/back-top/back-top.module.mjs +4 -4
- package/esm2022/back-top/back-top.property.mjs +3 -3
- package/esm2022/badge/badge.component.mjs +5 -5
- package/esm2022/badge/badge.module.mjs +4 -4
- package/esm2022/badge/badge.property.mjs +3 -3
- package/esm2022/base-form/base-form.module.mjs +4 -4
- package/esm2022/base-form/base-form.property.mjs +6 -6
- package/esm2022/button/button.component.mjs +5 -5
- package/esm2022/button/button.module.mjs +4 -4
- package/esm2022/button/button.property.mjs +6 -6
- package/esm2022/button/buttons.component.mjs +4 -4
- package/esm2022/calendar/calendar.component.mjs +5 -5
- package/esm2022/calendar/calendar.module.mjs +4 -4
- package/esm2022/calendar/calendar.property.mjs +3 -3
- package/esm2022/card/card.component.mjs +5 -5
- package/esm2022/card/card.module.mjs +4 -4
- package/esm2022/card/card.property.mjs +3 -3
- package/esm2022/carousel/carousel-panel.component.mjs +5 -5
- package/esm2022/carousel/carousel.component.mjs +5 -5
- package/esm2022/carousel/carousel.module.mjs +4 -4
- package/esm2022/carousel/carousel.property.mjs +6 -6
- package/esm2022/cascade/cascade-portal.component.mjs +3 -3
- package/esm2022/cascade/cascade.component.mjs +5 -5
- package/esm2022/cascade/cascade.module.mjs +4 -4
- package/esm2022/cascade/cascade.property.mjs +3 -3
- package/esm2022/checkbox/checkbox.component.mjs +5 -5
- package/esm2022/checkbox/checkbox.module.mjs +4 -4
- package/esm2022/checkbox/checkbox.property.mjs +3 -3
- package/esm2022/collapse/collapse-panel.component.mjs +5 -5
- package/esm2022/collapse/collapse.component.mjs +4 -4
- package/esm2022/collapse/collapse.module.mjs +4 -4
- package/esm2022/collapse/collapse.property.mjs +6 -6
- package/esm2022/color/color.component.mjs +4 -4
- package/esm2022/color/color.module.mjs +4 -4
- package/esm2022/color/color.property.mjs +3 -3
- package/esm2022/color-picker/color-picker-portal.component.mjs +4 -4
- package/esm2022/color-picker/color-picker.component.mjs +5 -5
- package/esm2022/color-picker/color-picker.module.mjs +4 -4
- package/esm2022/color-picker/color-picker.property.mjs +3 -3
- package/esm2022/comment/comment-reply.component.mjs +3 -3
- package/esm2022/comment/comment.component.mjs +5 -5
- package/esm2022/comment/comment.module.mjs +4 -4
- package/esm2022/comment/comment.property.mjs +6 -6
- package/esm2022/container/aside.component.mjs +4 -4
- package/esm2022/container/container.component.mjs +4 -4
- package/esm2022/container/container.module.mjs +4 -4
- package/esm2022/container/container.property.mjs +12 -12
- package/esm2022/container/footer.component.mjs +4 -4
- package/esm2022/container/header.component.mjs +4 -4
- package/esm2022/container/main.component.mjs +4 -4
- package/esm2022/core/config/config.mjs +1 -1
- package/esm2022/core/config/config.service.mjs +3 -3
- package/esm2022/core/services/http.service.mjs +3 -3
- package/esm2022/core/services/preloading-strategy.service.mjs +3 -3
- package/esm2022/core/services/storage.service.mjs +3 -3
- package/esm2022/core/theme/theme.service.mjs +3 -3
- package/esm2022/crumb/crumb.component.mjs +5 -5
- package/esm2022/crumb/crumb.module.mjs +4 -4
- package/esm2022/crumb/crumb.property.mjs +3 -3
- package/esm2022/date-picker/date-picker-portal.component.mjs +3 -3
- package/esm2022/date-picker/date-picker.component.mjs +5 -5
- package/esm2022/date-picker/date-picker.module.mjs +4 -4
- package/esm2022/date-picker/date-picker.property.mjs +18 -18
- package/esm2022/date-picker/date-quarter.pipe.mjs +3 -3
- package/esm2022/date-picker/date-range-portal.component.mjs +3 -3
- package/esm2022/date-picker/date-range.component.mjs +5 -5
- package/esm2022/date-picker/picker-date.component.mjs +3 -3
- package/esm2022/date-picker/picker-month.component.mjs +3 -3
- package/esm2022/date-picker/picker-quarter.component.mjs +3 -3
- package/esm2022/date-picker/picker-year.component.mjs +3 -3
- package/esm2022/description/description-item.component.mjs +3 -3
- package/esm2022/description/description.component.mjs +3 -3
- package/esm2022/description/description.module.mjs +4 -4
- package/esm2022/description/description.property.mjs +6 -6
- package/esm2022/dialog/dialog-container.component.mjs +5 -5
- package/esm2022/dialog/dialog-portal.component.mjs +5 -5
- package/esm2022/dialog/dialog-portal.directives.mjs +18 -18
- package/esm2022/dialog/dialog.component.mjs +5 -5
- package/esm2022/dialog/dialog.module.mjs +4 -4
- package/esm2022/dialog/dialog.property.mjs +6 -6
- package/esm2022/dialog/dialog.service.mjs +3 -3
- package/esm2022/doc/doc.component.mjs +4 -4
- package/esm2022/doc/doc.module.mjs +4 -4
- package/esm2022/drag/drag.directive.mjs +3 -3
- package/esm2022/drag/drag.module.mjs +4 -4
- package/esm2022/drag/drag.property.mjs +3 -3
- package/esm2022/drawer/drawer-container.component.mjs +5 -5
- package/esm2022/drawer/drawer-portal.component.mjs +5 -5
- package/esm2022/drawer/drawer-portal.directives.mjs +9 -9
- package/esm2022/drawer/drawer.component.mjs +5 -5
- package/esm2022/drawer/drawer.module.mjs +4 -4
- package/esm2022/drawer/drawer.property.mjs +6 -6
- package/esm2022/drawer/drawer.service.mjs +3 -3
- package/esm2022/dropdown/dropdown-portal.component.mjs +3 -3
- package/esm2022/dropdown/dropdown.component.mjs +4 -4
- package/esm2022/dropdown/dropdown.module.mjs +4 -4
- package/esm2022/dropdown/dropdown.property.mjs +3 -3
- package/esm2022/empty/empty.component.mjs +5 -5
- package/esm2022/empty/empty.module.mjs +4 -4
- package/esm2022/empty/empty.property.mjs +3 -3
- package/esm2022/examples/examples.component.mjs +4 -4
- package/esm2022/examples/examples.module.mjs +4 -4
- package/esm2022/find/find.component.mjs +5 -5
- package/esm2022/find/find.module.mjs +4 -4
- package/esm2022/find/find.property.mjs +3 -3
- package/esm2022/form/control.component.mjs +3 -3
- package/esm2022/form/form.component.mjs +5 -5
- package/esm2022/form/form.module.mjs +4 -4
- package/esm2022/form/form.property.mjs +6 -6
- package/esm2022/highlight/highlight.component.mjs +5 -5
- package/esm2022/highlight/highlight.module.mjs +4 -4
- package/esm2022/highlight/highlight.property.mjs +3 -3
- package/esm2022/highlight/highlight.service.mjs +3 -3
- package/esm2022/i18n/i18n.directive.mjs +3 -3
- package/esm2022/i18n/i18n.module.mjs +4 -4
- package/esm2022/i18n/i18n.pipe.mjs +3 -3
- package/esm2022/i18n/i18n.property.mjs +1 -1
- package/esm2022/i18n/i18n.service.mjs +3 -3
- package/esm2022/i18n/languages/ar_EG.mjs +8 -2
- package/esm2022/i18n/languages/bg_BG.mjs +8 -2
- package/esm2022/i18n/languages/ca_ES.mjs +8 -2
- package/esm2022/i18n/languages/cs_CZ.mjs +8 -2
- package/esm2022/i18n/languages/da_DK.mjs +8 -2
- package/esm2022/i18n/languages/de_DE.mjs +8 -2
- package/esm2022/i18n/languages/el_GR.mjs +8 -2
- package/esm2022/i18n/languages/en_GB.mjs +8 -2
- package/esm2022/i18n/languages/en_US.mjs +8 -2
- package/esm2022/i18n/languages/es_ES.mjs +8 -2
- package/esm2022/i18n/languages/et_EE.mjs +8 -2
- package/esm2022/i18n/languages/fa_IR.mjs +8 -2
- package/esm2022/i18n/languages/fi_FI.mjs +8 -2
- package/esm2022/i18n/languages/fr_BE.mjs +8 -2
- package/esm2022/i18n/languages/fr_FR.mjs +8 -2
- package/esm2022/i18n/languages/he_IL.mjs +8 -2
- package/esm2022/i18n/languages/hi_IN.mjs +8 -2
- package/esm2022/i18n/languages/hr_HR.mjs +8 -2
- package/esm2022/i18n/languages/hu_HU.mjs +8 -2
- package/esm2022/i18n/languages/hy_AM.mjs +8 -2
- package/esm2022/i18n/languages/id_ID.mjs +8 -2
- package/esm2022/i18n/languages/is_IS.mjs +8 -2
- package/esm2022/i18n/languages/it_IT.mjs +8 -2
- package/esm2022/i18n/languages/ja_JP.mjs +8 -2
- package/esm2022/i18n/languages/ka_GE.mjs +8 -2
- package/esm2022/i18n/languages/kn_IN.mjs +8 -2
- package/esm2022/i18n/languages/ko_KR.mjs +8 -2
- package/esm2022/i18n/languages/ku_IQ.mjs +8 -2
- package/esm2022/i18n/languages/lv_LV.mjs +8 -2
- package/esm2022/i18n/languages/mn_MN.mjs +8 -2
- package/esm2022/i18n/languages/ms_MY.mjs +8 -2
- package/esm2022/i18n/languages/nb_NO.mjs +8 -2
- package/esm2022/i18n/languages/ne_NP.mjs +8 -2
- package/esm2022/i18n/languages/nl_BE.mjs +8 -2
- package/esm2022/i18n/languages/nl_NL.mjs +8 -2
- package/esm2022/i18n/languages/pl_PL.mjs +8 -2
- package/esm2022/i18n/languages/pt_BR.mjs +8 -2
- package/esm2022/i18n/languages/pt_PT.mjs +8 -2
- package/esm2022/i18n/languages/ro_RO.mjs +8 -2
- package/esm2022/i18n/languages/ru_RU.mjs +8 -2
- package/esm2022/i18n/languages/sk_SK.mjs +8 -2
- package/esm2022/i18n/languages/sl_SI.mjs +8 -2
- package/esm2022/i18n/languages/sr_RS.mjs +8 -2
- package/esm2022/i18n/languages/sv_SE.mjs +8 -2
- package/esm2022/i18n/languages/ta_IN.mjs +8 -2
- package/esm2022/i18n/languages/th_TH.mjs +8 -2
- package/esm2022/i18n/languages/tr_TR.mjs +8 -2
- package/esm2022/i18n/languages/uk_UA.mjs +8 -2
- package/esm2022/i18n/languages/vi_VN.mjs +8 -2
- package/esm2022/i18n/languages/zh_CN.mjs +8 -2
- package/esm2022/i18n/languages/zh_TW.mjs +8 -2
- package/esm2022/icon/icon.component.mjs +4 -4
- package/esm2022/icon/icon.module.mjs +4 -4
- package/esm2022/icon/icon.property.mjs +3 -3
- package/esm2022/icon/icon.service.mjs +3 -3
- package/esm2022/image/image-group.component.mjs +3 -3
- package/esm2022/image/image-preview.component.mjs +5 -5
- package/esm2022/image/image.component.mjs +5 -5
- package/esm2022/image/image.module.mjs +4 -4
- package/esm2022/image/image.property.mjs +6 -6
- package/esm2022/inner/inner.component.mjs +4 -4
- package/esm2022/inner/inner.module.mjs +4 -4
- package/esm2022/inner/inner.property.mjs +3 -3
- package/esm2022/input/input-group.component.mjs +3 -3
- package/esm2022/input/input.component.mjs +5 -5
- package/esm2022/input/input.module.mjs +4 -4
- package/esm2022/input/input.property.mjs +6 -6
- package/esm2022/input-number/input-number.component.mjs +5 -5
- package/esm2022/input-number/input-number.module.mjs +4 -4
- package/esm2022/input-number/input-number.property.mjs +3 -3
- package/esm2022/keyword/keyword.directive.mjs +3 -3
- package/esm2022/keyword/keyword.module.mjs +4 -4
- package/esm2022/keyword/keyword.property.mjs +3 -3
- package/esm2022/layout/col.component.mjs +3 -3
- package/esm2022/layout/layout.module.mjs +4 -4
- package/esm2022/layout/layout.property.mjs +6 -6
- package/esm2022/layout/row.component.mjs +3 -3
- package/esm2022/link/link.component.mjs +5 -5
- package/esm2022/link/link.module.mjs +4 -4
- package/esm2022/link/link.property.mjs +3 -3
- package/esm2022/list/list-drop-group.directive.mjs +3 -3
- package/esm2022/list/list-option.component.mjs +3 -3
- package/esm2022/list/list.component.mjs +11 -11
- package/esm2022/list/list.module.mjs +4 -4
- package/esm2022/list/list.property.mjs +6 -6
- package/esm2022/loading/loading.component.mjs +5 -5
- package/esm2022/loading/loading.module.mjs +4 -4
- package/esm2022/loading/loading.property.mjs +3 -3
- package/esm2022/menu/menu-node.component.mjs +3 -3
- package/esm2022/menu/menu.component.mjs +3 -3
- package/esm2022/menu/menu.module.mjs +4 -4
- package/esm2022/menu/menu.property.mjs +6 -6
- package/esm2022/message/message.component.mjs +3 -3
- package/esm2022/message/message.module.mjs +4 -4
- package/esm2022/message/message.service.mjs +3 -3
- package/esm2022/message-box/message-box.component.mjs +3 -3
- package/esm2022/message-box/message-box.module.mjs +4 -4
- package/esm2022/message-box/message-box.service.mjs +3 -3
- package/esm2022/notification/notification.component.mjs +3 -3
- package/esm2022/notification/notification.module.mjs +4 -4
- package/esm2022/notification/notification.service.mjs +3 -3
- package/esm2022/outlet/outlet.directive.mjs +3 -3
- package/esm2022/outlet/outlet.module.mjs +4 -4
- package/esm2022/page-header/page-header.component.mjs +5 -5
- package/esm2022/page-header/page-header.module.mjs +4 -4
- package/esm2022/page-header/page-header.property.mjs +3 -3
- package/esm2022/pagination/pagination.component.mjs +96 -30
- package/esm2022/pagination/pagination.module.mjs +4 -4
- package/esm2022/pagination/pagination.property.mjs +23 -8
- package/esm2022/pattern/pattern.component.mjs +4 -4
- package/esm2022/pattern/pattern.module.mjs +4 -4
- package/esm2022/popconfirm/popconfirm.component.mjs +5 -5
- package/esm2022/popconfirm/popconfirm.module.mjs +4 -4
- package/esm2022/popconfirm/popconfirm.property.mjs +3 -3
- package/esm2022/popover/popover-portal.component.mjs +5 -5
- package/esm2022/popover/popover.directive.mjs +3 -3
- package/esm2022/popover/popover.module.mjs +4 -4
- package/esm2022/popover/popover.property.mjs +3 -3
- package/esm2022/portal/portal.module.mjs +4 -4
- package/esm2022/portal/portal.service.mjs +3 -3
- package/esm2022/progress/progress.component.mjs +5 -5
- package/esm2022/progress/progress.module.mjs +4 -4
- package/esm2022/progress/progress.property.mjs +3 -3
- package/esm2022/radio/radio.component.mjs +5 -5
- package/esm2022/radio/radio.module.mjs +4 -4
- package/esm2022/radio/radio.property.mjs +3 -3
- package/esm2022/rate/rate.component.mjs +5 -5
- package/esm2022/rate/rate.module.mjs +4 -4
- package/esm2022/rate/rate.property.mjs +3 -3
- package/esm2022/resizable/resizable.directive.mjs +3 -3
- package/esm2022/resizable/resizable.module.mjs +4 -4
- package/esm2022/resizable/resizable.property.mjs +3 -3
- package/esm2022/result/result.component.mjs +5 -5
- package/esm2022/result/result.module.mjs +4 -4
- package/esm2022/result/result.property.mjs +3 -3
- package/esm2022/ripple/ripple.directive.mjs +3 -3
- package/esm2022/ripple/ripple.module.mjs +4 -4
- package/esm2022/ripple/ripple.property.mjs +3 -3
- package/esm2022/select/select-portal.component.mjs +3 -3
- package/esm2022/select/select.component.mjs +5 -5
- package/esm2022/select/select.module.mjs +4 -4
- package/esm2022/select/select.property.mjs +3 -3
- package/esm2022/skeleton/skeleton.component.mjs +3 -3
- package/esm2022/skeleton/skeleton.module.mjs +4 -4
- package/esm2022/skeleton/skeleton.property.mjs +3 -3
- package/esm2022/slider/slider.component.mjs +5 -5
- package/esm2022/slider/slider.module.mjs +4 -4
- package/esm2022/slider/slider.property.mjs +3 -3
- package/esm2022/slider-select/slider-select.component.mjs +5 -5
- package/esm2022/slider-select/slider-select.module.mjs +4 -4
- package/esm2022/slider-select/slider-select.property.mjs +3 -3
- package/esm2022/statistic/countdown.component.mjs +3 -3
- package/esm2022/statistic/statistic.component.mjs +3 -3
- package/esm2022/statistic/statistic.module.mjs +4 -4
- package/esm2022/statistic/statistic.property.mjs +6 -6
- package/esm2022/steps/steps.component.mjs +5 -5
- package/esm2022/steps/steps.module.mjs +4 -4
- package/esm2022/steps/steps.property.mjs +3 -3
- package/esm2022/switch/switch.component.mjs +5 -5
- package/esm2022/switch/switch.module.mjs +4 -4
- package/esm2022/switch/switch.property.mjs +3 -3
- package/esm2022/table/table-body.component.mjs +3 -3
- package/esm2022/table/table-foot.component.mjs +3 -3
- package/esm2022/table/table-head.component.mjs +4 -4
- package/esm2022/table/table.component.mjs +5 -5
- package/esm2022/table/table.module.mjs +4 -4
- package/esm2022/table/table.property.mjs +28 -13
- package/esm2022/tabs/tab-content.component.mjs +3 -3
- package/esm2022/tabs/tab-link.directive.mjs +6 -6
- package/esm2022/tabs/tab.component.mjs +3 -3
- package/esm2022/tabs/tabs.component.mjs +5 -5
- package/esm2022/tabs/tabs.module.mjs +4 -4
- package/esm2022/tabs/tabs.property.mjs +6 -6
- package/esm2022/tag/tag.component.mjs +5 -5
- package/esm2022/tag/tag.module.mjs +4 -4
- package/esm2022/tag/tag.property.mjs +3 -3
- package/esm2022/text-retract/text-retract.component.mjs +5 -5
- package/esm2022/text-retract/text-retract.module.mjs +4 -4
- package/esm2022/text-retract/text-retract.property.mjs +3 -3
- package/esm2022/textarea/textarea.component.mjs +5 -5
- package/esm2022/textarea/textarea.module.mjs +4 -4
- package/esm2022/textarea/textarea.property.mjs +3 -3
- package/esm2022/theme/theme.component.mjs +5 -5
- package/esm2022/theme/theme.module.mjs +4 -4
- package/esm2022/theme/theme.property.mjs +3 -3
- package/esm2022/time-ago/time-ago.module.mjs +4 -4
- package/esm2022/time-ago/time-ago.pipe.mjs +3 -3
- package/esm2022/time-picker/time-picker-frame.component.mjs +5 -5
- package/esm2022/time-picker/time-picker-portal.component.mjs +3 -3
- package/esm2022/time-picker/time-picker.component.mjs +5 -5
- package/esm2022/time-picker/time-picker.module.mjs +4 -4
- package/esm2022/time-picker/time-picker.property.mjs +3 -3
- package/esm2022/time-range/time-range.module.mjs +4 -4
- package/esm2022/time-range/time-range.pipe.mjs +3 -3
- package/esm2022/timeline/timeline.component.mjs +5 -5
- package/esm2022/timeline/timeline.module.mjs +4 -4
- package/esm2022/timeline/timeline.property.mjs +3 -3
- package/esm2022/tooltip/tooltip-portal.component.mjs +5 -5
- package/esm2022/tooltip/tooltip.directive.mjs +3 -3
- package/esm2022/tooltip/tooltip.module.mjs +4 -4
- package/esm2022/tooltip/tooltip.property.mjs +3 -3
- package/esm2022/transfer/transfer.component.mjs +5 -5
- package/esm2022/transfer/transfer.module.mjs +4 -4
- package/esm2022/transfer/transfer.property.mjs +3 -3
- package/esm2022/tree/tree-node.component.mjs +5 -5
- package/esm2022/tree/tree.component.mjs +4 -4
- package/esm2022/tree/tree.module.mjs +4 -4
- package/esm2022/tree/tree.property.mjs +6 -6
- package/esm2022/tree/tree.service.mjs +3 -3
- package/esm2022/tree-file/tree-file.component.mjs +5 -5
- package/esm2022/tree-file/tree-file.module.mjs +4 -4
- package/esm2022/tree-file/tree-file.property.mjs +3 -3
- package/esm2022/tree-select/tree-select-portal.component.mjs +3 -3
- package/esm2022/tree-select/tree-select.component.mjs +5 -5
- package/esm2022/tree-select/tree-select.module.mjs +4 -4
- package/esm2022/tree-select/tree-select.property.mjs +3 -3
- package/esm2022/typography/typography.component.mjs +4 -4
- package/esm2022/typography/typography.module.mjs +4 -4
- package/esm2022/typography/typography.property.mjs +3 -3
- package/esm2022/upload/upload-portal.component.mjs +5 -5
- package/esm2022/upload/upload.component.mjs +5 -5
- package/esm2022/upload/upload.module.mjs +4 -4
- package/esm2022/upload/upload.property.mjs +3 -3
- package/fesm2022/ng-nest-ui-affix.mjs +11 -11
- package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-alert.mjs +11 -11
- package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-anchor.mjs +17 -17
- package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-api.mjs +8 -8
- package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-auto-complete.mjs +14 -14
- package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-avatar.mjs +17 -17
- package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-back-top.mjs +11 -11
- package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-badge.mjs +11 -11
- package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
- package/fesm2022/ng-nest-ui-button.mjs +18 -18
- package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-calendar.mjs +11 -11
- package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-card.mjs +11 -11
- package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-carousel.mjs +18 -18
- package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-cascade.mjs +14 -14
- package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-checkbox.mjs +11 -11
- package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-collapse.mjs +18 -18
- package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-color-picker.mjs +14 -14
- package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-color.mjs +11 -11
- package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-comment.mjs +17 -17
- package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-container.mjs +36 -36
- package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-core.mjs +15 -15
- package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-crumb.mjs +11 -11
- package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-date-picker.mjs +51 -51
- package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-description.mjs +16 -16
- package/fesm2022/ng-nest-ui-dialog.mjs +44 -44
- package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-doc.mjs +8 -8
- package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-drag.mjs +10 -10
- package/fesm2022/ng-nest-ui-drawer.mjs +35 -35
- package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-dropdown.mjs +14 -14
- package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-empty.mjs +11 -11
- package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-examples.mjs +8 -8
- package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-find.mjs +11 -11
- package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-form.mjs +17 -17
- package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-highlight.mjs +14 -14
- package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-i18n.mjs +370 -64
- package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-icon.mjs +14 -14
- package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-image.mjs +21 -21
- package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-inner.mjs +11 -11
- package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-input-number.mjs +11 -11
- package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-input.mjs +17 -17
- package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
- package/fesm2022/ng-nest-ui-layout.mjs +16 -16
- package/fesm2022/ng-nest-ui-link.mjs +11 -11
- package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-list.mjs +26 -26
- package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-loading.mjs +11 -11
- package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-menu.mjs +16 -16
- package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
- package/fesm2022/ng-nest-ui-message.mjs +10 -10
- package/fesm2022/ng-nest-ui-notification.mjs +10 -10
- package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
- package/fesm2022/ng-nest-ui-page-header.mjs +11 -11
- package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-pagination.mjs +121 -40
- package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-pattern.mjs +8 -8
- package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -11
- package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-popover.mjs +14 -14
- package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-portal.mjs +7 -7
- package/fesm2022/ng-nest-ui-progress.mjs +11 -11
- package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-radio.mjs +11 -11
- package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-rate.mjs +11 -11
- package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
- package/fesm2022/ng-nest-ui-result.mjs +11 -11
- package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
- package/fesm2022/ng-nest-ui-select.mjs +14 -14
- package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
- package/fesm2022/ng-nest-ui-slider-select.mjs +11 -11
- package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-slider.mjs +11 -11
- package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
- package/fesm2022/ng-nest-ui-steps.mjs +11 -11
- package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-switch.mjs +11 -11
- package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-table.mjs +44 -29
- package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tabs.mjs +26 -26
- package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tag.mjs +11 -11
- package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-text-retract.mjs +11 -11
- package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
- package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-theme.mjs +11 -11
- package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
- package/fesm2022/ng-nest-ui-time-picker.mjs +18 -18
- package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
- package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
- package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tooltip.mjs +14 -14
- package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-transfer.mjs +11 -11
- package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-file.mjs +11 -11
- package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-select.mjs +14 -14
- package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree.mjs +20 -20
- package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-typography.mjs +11 -11
- package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-upload.mjs +15 -15
- package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
- package/i18n/i18n.property.d.ts +6 -0
- package/i18n/languages/ar_EG.d.ts +6 -0
- package/i18n/languages/bg_BG.d.ts +6 -0
- package/i18n/languages/ca_ES.d.ts +6 -0
- package/i18n/languages/cs_CZ.d.ts +6 -0
- package/i18n/languages/da_DK.d.ts +6 -0
- package/i18n/languages/de_DE.d.ts +6 -0
- package/i18n/languages/el_GR.d.ts +6 -0
- package/i18n/languages/en_GB.d.ts +6 -0
- package/i18n/languages/en_US.d.ts +6 -0
- package/i18n/languages/es_ES.d.ts +6 -0
- package/i18n/languages/et_EE.d.ts +6 -0
- package/i18n/languages/fa_IR.d.ts +6 -0
- package/i18n/languages/fi_FI.d.ts +6 -0
- package/i18n/languages/fr_BE.d.ts +6 -0
- package/i18n/languages/fr_FR.d.ts +6 -0
- package/i18n/languages/he_IL.d.ts +6 -0
- package/i18n/languages/hi_IN.d.ts +6 -0
- package/i18n/languages/hr_HR.d.ts +6 -0
- package/i18n/languages/hu_HU.d.ts +6 -0
- package/i18n/languages/hy_AM.d.ts +6 -0
- package/i18n/languages/id_ID.d.ts +6 -0
- package/i18n/languages/is_IS.d.ts +6 -0
- package/i18n/languages/it_IT.d.ts +6 -0
- package/i18n/languages/ja_JP.d.ts +6 -0
- package/i18n/languages/ka_GE.d.ts +6 -0
- package/i18n/languages/kn_IN.d.ts +6 -0
- package/i18n/languages/ko_KR.d.ts +6 -0
- package/i18n/languages/ku_IQ.d.ts +6 -0
- package/i18n/languages/lv_LV.d.ts +6 -0
- package/i18n/languages/mn_MN.d.ts +6 -0
- package/i18n/languages/ms_MY.d.ts +6 -0
- package/i18n/languages/nb_NO.d.ts +6 -0
- package/i18n/languages/ne_NP.d.ts +6 -0
- package/i18n/languages/nl_BE.d.ts +6 -0
- package/i18n/languages/nl_NL.d.ts +6 -0
- package/i18n/languages/pl_PL.d.ts +6 -0
- package/i18n/languages/pt_BR.d.ts +6 -0
- package/i18n/languages/pt_PT.d.ts +6 -0
- package/i18n/languages/ro_RO.d.ts +6 -0
- package/i18n/languages/ru_RU.d.ts +6 -0
- package/i18n/languages/sk_SK.d.ts +6 -0
- package/i18n/languages/sl_SI.d.ts +6 -0
- package/i18n/languages/sr_RS.d.ts +6 -0
- package/i18n/languages/sv_SE.d.ts +6 -0
- package/i18n/languages/ta_IN.d.ts +6 -0
- package/i18n/languages/th_TH.d.ts +6 -0
- package/i18n/languages/tr_TR.d.ts +6 -0
- package/i18n/languages/uk_UA.d.ts +6 -0
- package/i18n/languages/vi_VN.d.ts +6 -0
- package/i18n/languages/zh_CN.d.ts +6 -0
- package/i18n/languages/zh_TW.d.ts +6 -0
- package/package.json +142 -142
- package/pagination/pagination.component.d.ts +26 -1
- package/pagination/pagination.property.d.ts +31 -5
- package/style/mixins/reset.scss +4 -2
- package/table/table.property.d.ts +17 -1
|
@@ -99,10 +99,10 @@ class XPopconfirmProperty extends XPropertyFunction(X_POPCONFIRM_CONFIG_NAME) {
|
|
|
99
99
|
*/
|
|
100
100
|
this.confirm = output();
|
|
101
101
|
}
|
|
102
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
103
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.
|
|
102
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XPopconfirmProperty, selector: "x-popconfirm-property", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, trigger: { classPropertyName: "trigger", publicName: "trigger", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: true, isRequired: false, transformFunction: null }, cancelText: { classPropertyName: "cancelText", publicName: "cancelText", isSignal: true, isRequired: false, transformFunction: null }, confirmText: { classPropertyName: "confirmText", publicName: "confirmText", isSignal: true, isRequired: false, transformFunction: null }, confirmAsync: { classPropertyName: "confirmAsync", publicName: "confirmAsync", isSignal: true, isRequired: false, transformFunction: null }, condition: { classPropertyName: "condition", publicName: "condition", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { cancel: "cancel", confirm: "confirm" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
104
104
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmProperty, decorators: [{
|
|
106
106
|
type: Component,
|
|
107
107
|
args: [{ selector: `${XPopconfirmPrefix}-property`, template: '' }]
|
|
108
108
|
}] });
|
|
@@ -147,20 +147,20 @@ class XPopconfirmComponent extends XPopconfirmProperty {
|
|
|
147
147
|
onClick(event) {
|
|
148
148
|
this.condition() && this.onConfirm(event);
|
|
149
149
|
}
|
|
150
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
151
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
150
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
151
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XPopconfirmComponent, isStandalone: true, selector: "x-popconfirm", usesInheritance: true, ngImport: i0, template: "<div\r\n #popconfirm\r\n class=\"x-popconfirm\"\r\n x-popover\r\n [title]=\"titleTpl\"\r\n [content]=\"content()\"\r\n [footer]=\"footerTpl\"\r\n [placement]=\"placement()\"\r\n [trigger]=\"trigger()\"\r\n [width]=\"width()\"\r\n [maxWidth]=\"maxWidth()\"\r\n [minWidth]=\"minWidth()\"\r\n [condition]=\"condition()\"\r\n [(visible)]=\"visible\"\r\n (click)=\"onClick($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #titleTpl>\r\n <div class=\"x-popconfirm-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n @if (icon()) {\r\n <x-icon [style.color]=\"iconColor()\" [type]=\"icon()\"></x-icon>\r\n }\r\n <span>{{ title() }}</span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #footerTpl>\r\n <div class=\"x-popconfirm-buttons\">\r\n <x-button (click)=\"onCancel($event)\" flat plain>{{ cancelTextSignal() }}</x-button>\r\n <x-button type=\"primary\" flat (click)=\"onConfirm($event)\" [loading]=\"loading()\">{{ confirmTextSignal() }}</x-button>\r\n </div>\r\n</ng-template>\r\n", styles: [".x-popconfirm{margin:0;padding:0}.x-popconfirm{display:inline-block}.x-popconfirm-buttons{display:flex;justify-content:flex-end}.x-popconfirm-buttons>x-button:not(:first-child){margin-left:.5rem}.x-popconfirm-title{display:flex;align-items:center}.x-popconfirm-title>.x-icon{margin-right:.325rem;font-size:1rem}\n"], dependencies: [{ kind: "directive", type: XPopoverDirective, selector: "[x-popover], x-popover" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
152
152
|
}
|
|
153
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
153
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmComponent, decorators: [{
|
|
154
154
|
type: Component,
|
|
155
|
-
args: [{ selector: `${XPopconfirmPrefix}`, standalone: true, imports: [XPopoverDirective, XButtonComponent, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #popconfirm\r\n class=\"x-popconfirm\"\r\n x-popover\r\n [title]=\"titleTpl\"\r\n [content]=\"content()\"\r\n [footer]=\"footerTpl\"\r\n [placement]=\"placement()\"\r\n [trigger]=\"trigger()\"\r\n [width]=\"width()\"\r\n [maxWidth]=\"maxWidth()\"\r\n [minWidth]=\"minWidth()\"\r\n [condition]=\"condition()\"\r\n [(visible)]=\"visible\"\r\n (click)=\"onClick($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #titleTpl>\r\n <div class=\"x-popconfirm-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n @if (icon()) {\r\n <x-icon [style.color]=\"iconColor()\" [type]=\"icon()\"></x-icon>\r\n }\r\n <span>{{ title() }}</span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #footerTpl>\r\n <div class=\"x-popconfirm-buttons\">\r\n <x-button (click)=\"onCancel($event)\" flat plain>{{ cancelTextSignal() }}</x-button>\r\n <x-button type=\"primary\" flat (click)=\"onConfirm($event)\" [loading]=\"loading()\">{{ confirmTextSignal() }}</x-button>\r\n </div>\r\n</ng-template>\r\n", styles: [".x-popconfirm{margin:0;padding:0
|
|
155
|
+
args: [{ selector: `${XPopconfirmPrefix}`, standalone: true, imports: [XPopoverDirective, XButtonComponent, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #popconfirm\r\n class=\"x-popconfirm\"\r\n x-popover\r\n [title]=\"titleTpl\"\r\n [content]=\"content()\"\r\n [footer]=\"footerTpl\"\r\n [placement]=\"placement()\"\r\n [trigger]=\"trigger()\"\r\n [width]=\"width()\"\r\n [maxWidth]=\"maxWidth()\"\r\n [minWidth]=\"minWidth()\"\r\n [condition]=\"condition()\"\r\n [(visible)]=\"visible\"\r\n (click)=\"onClick($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #titleTpl>\r\n <div class=\"x-popconfirm-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n @if (icon()) {\r\n <x-icon [style.color]=\"iconColor()\" [type]=\"icon()\"></x-icon>\r\n }\r\n <span>{{ title() }}</span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #footerTpl>\r\n <div class=\"x-popconfirm-buttons\">\r\n <x-button (click)=\"onCancel($event)\" flat plain>{{ cancelTextSignal() }}</x-button>\r\n <x-button type=\"primary\" flat (click)=\"onConfirm($event)\" [loading]=\"loading()\">{{ confirmTextSignal() }}</x-button>\r\n </div>\r\n</ng-template>\r\n", styles: [".x-popconfirm{margin:0;padding:0}.x-popconfirm{display:inline-block}.x-popconfirm-buttons{display:flex;justify-content:flex-end}.x-popconfirm-buttons>x-button:not(:first-child){margin-left:.5rem}.x-popconfirm-title{display:flex;align-items:center}.x-popconfirm-title>.x-icon{margin-right:.325rem;font-size:1rem}\n"] }]
|
|
156
156
|
}] });
|
|
157
157
|
|
|
158
158
|
class XPopconfirmModule {
|
|
159
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
160
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
161
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
159
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
160
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmModule, imports: [XPopconfirmComponent], exports: [XPopconfirmComponent] }); }
|
|
161
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmModule, imports: [XPopconfirmComponent] }); }
|
|
162
162
|
}
|
|
163
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopconfirmModule, decorators: [{
|
|
164
164
|
type: NgModule,
|
|
165
165
|
args: [{
|
|
166
166
|
exports: [XPopconfirmComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-popconfirm.mjs","sources":["../../../../lib/ng-nest/ui/popconfirm/popconfirm.property.ts","../../../../lib/ng-nest/ui/popconfirm/popconfirm.component.ts","../../../../lib/ng-nest/ui/popconfirm/popconfirm.component.html","../../../../lib/ng-nest/ui/popconfirm/popconfirm.module.ts","../../../../lib/ng-nest/ui/popconfirm/ng-nest-ui-popconfirm.ts"],"sourcesContent":["import { XPropertyFunction, XToCssPixelValue, XToBoolean } from '@ng-nest/ui/core';\r\nimport { Component, input, output } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport type { XPopoverTrigger } from '@ng-nest/ui/popover';\r\nimport type { XPlacement, XTemplate, XBoolean, XNumber } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Popconfirm\r\n * @selector x-popconfirm\r\n * @decorator component\r\n */\r\nexport const XPopconfirmPrefix = 'x-popconfirm';\r\nconst X_POPCONFIRM_CONFIG_NAME = 'popconfirm';\r\n\r\n/**\r\n * Popconfirm Property\r\n */\r\n@Component({ selector: `${XPopconfirmPrefix}-property`, template: '' })\r\nexport class XPopconfirmProperty extends XPropertyFunction(X_POPCONFIRM_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 标题,支持自定义模板\r\n * @en_US Title, support custom template\r\n */\r\n readonly title = input<XTemplate>('');\r\n /**\r\n * @zh_CN 内容,支持自定义模板\r\n * @en_US Content, support custom templates\r\n */\r\n readonly content = input<XTemplate>('');\r\n /**\r\n * @zh_CN 弹出的位置\r\n * @en_US Pop-up position\r\n */\r\n readonly placement = input<XPlacement>(this.config?.placement ?? 'bottom');\r\n /**\r\n * @zh_CN 激活方式\r\n * @en_US Activation method\r\n */\r\n readonly trigger = input<XPopoverTrigger>(this.config?.trigger ?? 'click');\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US width\r\n */\r\n readonly width = input<string, XNumber>(this.config?.width ?? '', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最大宽度\r\n * @en_US Max width\r\n */\r\n readonly maxWidth = input<string, XNumber>(this.config?.maxWidth ?? '15rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '15rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n readonly icon = input<string>(this.config?.icon ?? 'fto-help-circle');\r\n /**\r\n * @zh_CN 图标颜色\r\n * @en_US Icon color\r\n */\r\n readonly iconColor = input<string>(this.config?.iconColor ?? '#e6a23c');\r\n /**\r\n * @zh_CN 取消的文字\r\n * @en_US Canceled text\r\n */\r\n readonly cancelText = input<string>(this.config?.cancelText ?? '');\r\n /**\r\n * @zh_CN 确认的文字\r\n * @en_US Confirmed text\r\n */\r\n readonly confirmText = input<string>(this.config?.confirmText ?? '');\r\n /**\r\n * @zh_CN 确认异步 Observable\r\n * @en_US Confirm async\r\n */\r\n readonly confirmAsync = input<Observable<void>>();\r\n /**\r\n * @zh_CN 条件触发\r\n * @en_US condition trigger\r\n */\r\n readonly condition = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 取消的点击事件\r\n * @en_US Cancelled click event\r\n */\r\n readonly cancel = output<Event>();\r\n /**\r\n * @zh_CN 确认的点击事件\r\n * @en_US Confirmed click event\r\n */\r\n readonly confirm = output<Event>();\r\n}\r\n","import {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n OnDestroy,\r\n inject,\r\n computed,\r\n signal\r\n} from '@angular/core';\r\nimport { XPopconfirmProperty, XPopconfirmPrefix } from './popconfirm.property';\r\nimport { Subject } from 'rxjs';\r\nimport { XI18nService, XI18nPopconfirm, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { XPopoverDirective } from '@ng-nest/ui/popover';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: `${XPopconfirmPrefix}`,\r\n standalone: true,\r\n imports: [XPopoverDirective, XButtonComponent, XIconComponent, XOutletDirective],\r\n templateUrl: './popconfirm.component.html',\r\n styleUrls: ['./popconfirm.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XPopconfirmComponent extends XPopconfirmProperty implements OnDestroy {\r\n private i18n = inject(XI18nService);\r\n visible = signal(false);\r\n loading = signal(false);\r\n\r\n private asyncUnSub = new Subject<void>();\r\n\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.popconfirm as XI18nPopconfirm)), {\r\n initialValue: zh_CN.popconfirm\r\n });\r\n\r\n cancelTextSignal = computed(() => this.cancelText() || this.locale().cancelText);\r\n confirmTextSignal = computed(() => this.confirmText() || this.locale().confirmText);\r\n\r\n ngOnDestroy(): void {\r\n this.asyncUnSub.next();\r\n this.asyncUnSub.complete();\r\n }\r\n\r\n onCancel(event: Event) {\r\n this.visible.set(false);\r\n this.cancel.emit(event);\r\n }\r\n\r\n onConfirm(event: Event) {\r\n const confirmAsync = this.confirmAsync();\r\n if (confirmAsync) {\r\n this.loading.set(true);\r\n confirmAsync.pipe(takeUntil(this.asyncUnSub)).subscribe(() => {\r\n this.loading.set(false);\r\n this.visible.set(false);\r\n this.confirm.emit(event);\r\n this.asyncUnSub.next();\r\n });\r\n } else {\r\n this.visible.set(false);\r\n this.confirm.emit(event);\r\n }\r\n }\r\n\r\n onClick(event: Event) {\r\n this.condition() && this.onConfirm(event);\r\n }\r\n}\r\n","<div\r\n #popconfirm\r\n class=\"x-popconfirm\"\r\n x-popover\r\n [title]=\"titleTpl\"\r\n [content]=\"content()\"\r\n [footer]=\"footerTpl\"\r\n [placement]=\"placement()\"\r\n [trigger]=\"trigger()\"\r\n [width]=\"width()\"\r\n [maxWidth]=\"maxWidth()\"\r\n [minWidth]=\"minWidth()\"\r\n [condition]=\"condition()\"\r\n [(visible)]=\"visible\"\r\n (click)=\"onClick($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #titleTpl>\r\n <div class=\"x-popconfirm-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n @if (icon()) {\r\n <x-icon [style.color]=\"iconColor()\" [type]=\"icon()\"></x-icon>\r\n }\r\n <span>{{ title() }}</span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #footerTpl>\r\n <div class=\"x-popconfirm-buttons\">\r\n <x-button (click)=\"onCancel($event)\" flat plain>{{ cancelTextSignal() }}</x-button>\r\n <x-button type=\"primary\" flat (click)=\"onConfirm($event)\" [loading]=\"loading()\">{{ confirmTextSignal() }}</x-button>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { XPopconfirmComponent } from './popconfirm.component';\r\n\r\n@NgModule({\r\n exports: [XPopconfirmComponent],\r\n imports: [XPopconfirmComponent]\r\n})\r\nexport class XPopconfirmModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-popconfirm.mjs","sources":["../../../../lib/ng-nest/ui/popconfirm/popconfirm.property.ts","../../../../lib/ng-nest/ui/popconfirm/popconfirm.component.ts","../../../../lib/ng-nest/ui/popconfirm/popconfirm.component.html","../../../../lib/ng-nest/ui/popconfirm/popconfirm.module.ts","../../../../lib/ng-nest/ui/popconfirm/ng-nest-ui-popconfirm.ts"],"sourcesContent":["import { XPropertyFunction, XToCssPixelValue, XToBoolean } from '@ng-nest/ui/core';\r\nimport { Component, input, output } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport type { XPopoverTrigger } from '@ng-nest/ui/popover';\r\nimport type { XPlacement, XTemplate, XBoolean, XNumber } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Popconfirm\r\n * @selector x-popconfirm\r\n * @decorator component\r\n */\r\nexport const XPopconfirmPrefix = 'x-popconfirm';\r\nconst X_POPCONFIRM_CONFIG_NAME = 'popconfirm';\r\n\r\n/**\r\n * Popconfirm Property\r\n */\r\n@Component({ selector: `${XPopconfirmPrefix}-property`, template: '' })\r\nexport class XPopconfirmProperty extends XPropertyFunction(X_POPCONFIRM_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 标题,支持自定义模板\r\n * @en_US Title, support custom template\r\n */\r\n readonly title = input<XTemplate>('');\r\n /**\r\n * @zh_CN 内容,支持自定义模板\r\n * @en_US Content, support custom templates\r\n */\r\n readonly content = input<XTemplate>('');\r\n /**\r\n * @zh_CN 弹出的位置\r\n * @en_US Pop-up position\r\n */\r\n readonly placement = input<XPlacement>(this.config?.placement ?? 'bottom');\r\n /**\r\n * @zh_CN 激活方式\r\n * @en_US Activation method\r\n */\r\n readonly trigger = input<XPopoverTrigger>(this.config?.trigger ?? 'click');\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US width\r\n */\r\n readonly width = input<string, XNumber>(this.config?.width ?? '', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最大宽度\r\n * @en_US Max width\r\n */\r\n readonly maxWidth = input<string, XNumber>(this.config?.maxWidth ?? '15rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '15rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n readonly icon = input<string>(this.config?.icon ?? 'fto-help-circle');\r\n /**\r\n * @zh_CN 图标颜色\r\n * @en_US Icon color\r\n */\r\n readonly iconColor = input<string>(this.config?.iconColor ?? '#e6a23c');\r\n /**\r\n * @zh_CN 取消的文字\r\n * @en_US Canceled text\r\n */\r\n readonly cancelText = input<string>(this.config?.cancelText ?? '');\r\n /**\r\n * @zh_CN 确认的文字\r\n * @en_US Confirmed text\r\n */\r\n readonly confirmText = input<string>(this.config?.confirmText ?? '');\r\n /**\r\n * @zh_CN 确认异步 Observable\r\n * @en_US Confirm async\r\n */\r\n readonly confirmAsync = input<Observable<void>>();\r\n /**\r\n * @zh_CN 条件触发\r\n * @en_US condition trigger\r\n */\r\n readonly condition = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 取消的点击事件\r\n * @en_US Cancelled click event\r\n */\r\n readonly cancel = output<Event>();\r\n /**\r\n * @zh_CN 确认的点击事件\r\n * @en_US Confirmed click event\r\n */\r\n readonly confirm = output<Event>();\r\n}\r\n","import {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n OnDestroy,\r\n inject,\r\n computed,\r\n signal\r\n} from '@angular/core';\r\nimport { XPopconfirmProperty, XPopconfirmPrefix } from './popconfirm.property';\r\nimport { Subject } from 'rxjs';\r\nimport { XI18nService, XI18nPopconfirm, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { XPopoverDirective } from '@ng-nest/ui/popover';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: `${XPopconfirmPrefix}`,\r\n standalone: true,\r\n imports: [XPopoverDirective, XButtonComponent, XIconComponent, XOutletDirective],\r\n templateUrl: './popconfirm.component.html',\r\n styleUrls: ['./popconfirm.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XPopconfirmComponent extends XPopconfirmProperty implements OnDestroy {\r\n private i18n = inject(XI18nService);\r\n visible = signal(false);\r\n loading = signal(false);\r\n\r\n private asyncUnSub = new Subject<void>();\r\n\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.popconfirm as XI18nPopconfirm)), {\r\n initialValue: zh_CN.popconfirm\r\n });\r\n\r\n cancelTextSignal = computed(() => this.cancelText() || this.locale().cancelText);\r\n confirmTextSignal = computed(() => this.confirmText() || this.locale().confirmText);\r\n\r\n ngOnDestroy(): void {\r\n this.asyncUnSub.next();\r\n this.asyncUnSub.complete();\r\n }\r\n\r\n onCancel(event: Event) {\r\n this.visible.set(false);\r\n this.cancel.emit(event);\r\n }\r\n\r\n onConfirm(event: Event) {\r\n const confirmAsync = this.confirmAsync();\r\n if (confirmAsync) {\r\n this.loading.set(true);\r\n confirmAsync.pipe(takeUntil(this.asyncUnSub)).subscribe(() => {\r\n this.loading.set(false);\r\n this.visible.set(false);\r\n this.confirm.emit(event);\r\n this.asyncUnSub.next();\r\n });\r\n } else {\r\n this.visible.set(false);\r\n this.confirm.emit(event);\r\n }\r\n }\r\n\r\n onClick(event: Event) {\r\n this.condition() && this.onConfirm(event);\r\n }\r\n}\r\n","<div\r\n #popconfirm\r\n class=\"x-popconfirm\"\r\n x-popover\r\n [title]=\"titleTpl\"\r\n [content]=\"content()\"\r\n [footer]=\"footerTpl\"\r\n [placement]=\"placement()\"\r\n [trigger]=\"trigger()\"\r\n [width]=\"width()\"\r\n [maxWidth]=\"maxWidth()\"\r\n [minWidth]=\"minWidth()\"\r\n [condition]=\"condition()\"\r\n [(visible)]=\"visible\"\r\n (click)=\"onClick($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #titleTpl>\r\n <div class=\"x-popconfirm-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n @if (icon()) {\r\n <x-icon [style.color]=\"iconColor()\" [type]=\"icon()\"></x-icon>\r\n }\r\n <span>{{ title() }}</span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #footerTpl>\r\n <div class=\"x-popconfirm-buttons\">\r\n <x-button (click)=\"onCancel($event)\" flat plain>{{ cancelTextSignal() }}</x-button>\r\n <x-button type=\"primary\" flat (click)=\"onConfirm($event)\" [loading]=\"loading()\">{{ confirmTextSignal() }}</x-button>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { XPopconfirmComponent } from './popconfirm.component';\r\n\r\n@NgModule({\r\n exports: [XPopconfirmComponent],\r\n imports: [XPopconfirmComponent]\r\n})\r\nexport class XPopconfirmModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -92,10 +92,10 @@ class XPopoverProperty extends XPropertyFunction(X_POPOVER_CONFIG_NAME) {
|
|
|
92
92
|
*/
|
|
93
93
|
this.mouseLeaveDelay = input(100, { transform: XToNumber });
|
|
94
94
|
}
|
|
95
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
96
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.
|
|
95
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverProperty, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
96
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.2", type: XPopoverProperty, selector: "[x-popover], x-popover", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, footer: { classPropertyName: "footer", publicName: "footer", isSignal: true, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: "panelClass", publicName: "panelClass", isSignal: true, isRequired: false, transformFunction: null }, connectTo: { classPropertyName: "connectTo", publicName: "connectTo", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, trigger: { classPropertyName: "trigger", publicName: "trigger", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, condition: { classPropertyName: "condition", publicName: "condition", isSignal: true, isRequired: false, transformFunction: null }, mouseEnterDelay: { classPropertyName: "mouseEnterDelay", publicName: "mouseEnterDelay", isSignal: true, isRequired: false, transformFunction: null }, mouseLeaveDelay: { classPropertyName: "mouseLeaveDelay", publicName: "mouseLeaveDelay", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visible: "visibleChange" }, usesInheritance: true, ngImport: i0 }); }
|
|
97
97
|
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverProperty, decorators: [{
|
|
99
99
|
type: Directive,
|
|
100
100
|
args: [{ selector: `[${XPopoverPrefix}], ${XPopoverPrefix}` }]
|
|
101
101
|
}] });
|
|
@@ -135,12 +135,12 @@ class XPopoverPortalComponent {
|
|
|
135
135
|
stopPropagation(event) {
|
|
136
136
|
event.stopPropagation();
|
|
137
137
|
}
|
|
138
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
139
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
138
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
139
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XPopoverPortalComponent, isStandalone: true, selector: "x-popover-portal", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, footer: { classPropertyName: "footer", publicName: "footer", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, trigger: { classPropertyName: "trigger", publicName: "trigger", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { portalHover: "portalHover" }, host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, properties: { "@x-fade-animation": "this.animation" } }, ngImport: i0, template: "<div #popoverPortal class=\"x-popover-portal\" [ngClass]=\"classMap()\" (click)=\"stopPropagation($event)\">\r\n <div\r\n class=\"x-popover-portal-inner\"\r\n [style.width]=\"width()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.maxWidth]=\"maxWidth()\"\r\n >\r\n @if (title()) {\r\n <div class=\"x-popover-portal-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (content()) {\r\n <div class=\"x-popover-portal-content\">\r\n <ng-container *xOutlet=\"content()\">\r\n {{ content() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (footer()) {\r\n <div class=\"x-popover-portal-footer\">\r\n <ng-container *xOutlet=\"footer()\">\r\n {{ footer() }}\r\n </ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div #popoverArrow class=\"x-popover-portal-arrow\"></div>\r\n</div>\r\n", styles: ["x-popover{display:inline-block}.x-popover-portal{margin:0;padding:0}.x-popover-portal{display:inline-flex;position:relative;justify-content:center;align-items:center}.x-popover-portal>.x-popover-portal-inner{font-size:var(--x-font-size);background-color:var(--x-background-100);color:var(--x-text);padding:var(--x-font-size);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow)}.x-popover-portal .x-popover-portal-title{margin-bottom:calc(var(--x-font-size) - .5rem);font-weight:600;display:flex;align-items:center}.x-popover-portal .x-popover-portal-footer{margin-top:calc(var(--x-font-size) - .5rem)}.x-popover-portal .x-popover-portal-arrow,.x-popover-portal .x-popover-portal-arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.x-popover-portal-top,.x-popover-portal-top-start,.x-popover-portal-top-end{padding-bottom:.525rem}.x-popover-portal-top>.x-popover-portal-arrow,.x-popover-portal-top-start>.x-popover-portal-arrow,.x-popover-portal-top-end>.x-popover-portal-arrow{bottom:.1rem}.x-popover-portal-top .x-popover-portal-arrow:after,.x-popover-portal-top-start .x-popover-portal-arrow:after,.x-popover-portal-top-end .x-popover-portal-arrow:after{bottom:.1rem;margin-left:-.375rem}.x-popover-portal-left,.x-popover-portal-left-start,.x-popover-portal-left-end{padding-right:.525rem}.x-popover-portal-left>.x-popover-portal-arrow,.x-popover-portal-left-start>.x-popover-portal-arrow,.x-popover-portal-left-end>.x-popover-portal-arrow{right:.1rem}.x-popover-portal-left .x-popover-portal-arrow:after,.x-popover-portal-left-start .x-popover-portal-arrow:after,.x-popover-portal-left-end .x-popover-portal-arrow:after{right:.1rem;margin-top:-.375rem}.x-popover-portal-right,.x-popover-portal-right-start,.x-popover-portal-right-end{padding-left:.525rem}.x-popover-portal-right>.x-popover-portal-arrow,.x-popover-portal-right-start>.x-popover-portal-arrow,.x-popover-portal-right-end>.x-popover-portal-arrow{left:.1rem}.x-popover-portal-right .x-popover-portal-arrow:after,.x-popover-portal-right-start .x-popover-portal-arrow:after,.x-popover-portal-right-end .x-popover-portal-arrow:after{left:.1rem;margin-top:-.375rem}.x-popover-portal-bottom,.x-popover-portal-bottom-start,.x-popover-portal-bottom-end{padding-top:.525rem}.x-popover-portal-bottom .x-popover-portal-arrow,.x-popover-portal-bottom-start .x-popover-portal-arrow,.x-popover-portal-bottom-end .x-popover-portal-arrow{top:.1rem}.x-popover-portal-bottom .x-popover-portal-arrow:after,.x-popover-portal-bottom-start .x-popover-portal-arrow:after,.x-popover-portal-bottom-end .x-popover-portal-arrow:after{top:.1rem;margin-left:-.375rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], animations: [XFadeAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
140
140
|
}
|
|
141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
141
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverPortalComponent, decorators: [{
|
|
142
142
|
type: Component,
|
|
143
|
-
args: [{ selector: `${XPopoverPortalPrefix}`, standalone: true, imports: [NgClass, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XFadeAnimation], template: "<div #popoverPortal class=\"x-popover-portal\" [ngClass]=\"classMap()\" (click)=\"stopPropagation($event)\">\r\n <div\r\n class=\"x-popover-portal-inner\"\r\n [style.width]=\"width()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.maxWidth]=\"maxWidth()\"\r\n >\r\n @if (title()) {\r\n <div class=\"x-popover-portal-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (content()) {\r\n <div class=\"x-popover-portal-content\">\r\n <ng-container *xOutlet=\"content()\">\r\n {{ content() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (footer()) {\r\n <div class=\"x-popover-portal-footer\">\r\n <ng-container *xOutlet=\"footer()\">\r\n {{ footer() }}\r\n </ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div #popoverArrow class=\"x-popover-portal-arrow\"></div>\r\n</div>\r\n", styles: ["x-popover{display:inline-block}.x-popover-portal{margin:0;padding:0
|
|
143
|
+
args: [{ selector: `${XPopoverPortalPrefix}`, standalone: true, imports: [NgClass, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XFadeAnimation], template: "<div #popoverPortal class=\"x-popover-portal\" [ngClass]=\"classMap()\" (click)=\"stopPropagation($event)\">\r\n <div\r\n class=\"x-popover-portal-inner\"\r\n [style.width]=\"width()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.maxWidth]=\"maxWidth()\"\r\n >\r\n @if (title()) {\r\n <div class=\"x-popover-portal-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (content()) {\r\n <div class=\"x-popover-portal-content\">\r\n <ng-container *xOutlet=\"content()\">\r\n {{ content() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (footer()) {\r\n <div class=\"x-popover-portal-footer\">\r\n <ng-container *xOutlet=\"footer()\">\r\n {{ footer() }}\r\n </ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div #popoverArrow class=\"x-popover-portal-arrow\"></div>\r\n</div>\r\n", styles: ["x-popover{display:inline-block}.x-popover-portal{margin:0;padding:0}.x-popover-portal{display:inline-flex;position:relative;justify-content:center;align-items:center}.x-popover-portal>.x-popover-portal-inner{font-size:var(--x-font-size);background-color:var(--x-background-100);color:var(--x-text);padding:var(--x-font-size);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow)}.x-popover-portal .x-popover-portal-title{margin-bottom:calc(var(--x-font-size) - .5rem);font-weight:600;display:flex;align-items:center}.x-popover-portal .x-popover-portal-footer{margin-top:calc(var(--x-font-size) - .5rem)}.x-popover-portal .x-popover-portal-arrow,.x-popover-portal .x-popover-portal-arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.x-popover-portal-top,.x-popover-portal-top-start,.x-popover-portal-top-end{padding-bottom:.525rem}.x-popover-portal-top>.x-popover-portal-arrow,.x-popover-portal-top-start>.x-popover-portal-arrow,.x-popover-portal-top-end>.x-popover-portal-arrow{bottom:.1rem}.x-popover-portal-top .x-popover-portal-arrow:after,.x-popover-portal-top-start .x-popover-portal-arrow:after,.x-popover-portal-top-end .x-popover-portal-arrow:after{bottom:.1rem;margin-left:-.375rem}.x-popover-portal-left,.x-popover-portal-left-start,.x-popover-portal-left-end{padding-right:.525rem}.x-popover-portal-left>.x-popover-portal-arrow,.x-popover-portal-left-start>.x-popover-portal-arrow,.x-popover-portal-left-end>.x-popover-portal-arrow{right:.1rem}.x-popover-portal-left .x-popover-portal-arrow:after,.x-popover-portal-left-start .x-popover-portal-arrow:after,.x-popover-portal-left-end .x-popover-portal-arrow:after{right:.1rem;margin-top:-.375rem}.x-popover-portal-right,.x-popover-portal-right-start,.x-popover-portal-right-end{padding-left:.525rem}.x-popover-portal-right>.x-popover-portal-arrow,.x-popover-portal-right-start>.x-popover-portal-arrow,.x-popover-portal-right-end>.x-popover-portal-arrow{left:.1rem}.x-popover-portal-right .x-popover-portal-arrow:after,.x-popover-portal-right-start .x-popover-portal-arrow:after,.x-popover-portal-right-end .x-popover-portal-arrow:after{left:.1rem;margin-top:-.375rem}.x-popover-portal-bottom,.x-popover-portal-bottom-start,.x-popover-portal-bottom-end{padding-top:.525rem}.x-popover-portal-bottom .x-popover-portal-arrow,.x-popover-portal-bottom-start .x-popover-portal-arrow,.x-popover-portal-bottom-end .x-popover-portal-arrow{top:.1rem}.x-popover-portal-bottom .x-popover-portal-arrow:after,.x-popover-portal-bottom-start .x-popover-portal-arrow:after,.x-popover-portal-bottom-end .x-popover-portal-arrow:after{top:.1rem;margin-left:-.375rem}\n"] }]
|
|
144
144
|
}], propDecorators: { mouseenter: [{
|
|
145
145
|
type: HostListener,
|
|
146
146
|
args: ['mouseenter']
|
|
@@ -303,10 +303,10 @@ class XPopoverDirective extends XPopoverProperty {
|
|
|
303
303
|
}
|
|
304
304
|
});
|
|
305
305
|
}
|
|
306
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
307
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.
|
|
306
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
307
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: XPopoverDirective, isStandalone: true, selector: "[x-popover], x-popover", host: { listeners: { "click": "click()", "mouseenter": "mouseenter()", "mouseleave": "mouseleave()", "focus": "focus()", "blur": "blur()" }, properties: { "class.x-popover-show": "this._show" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
|
|
308
308
|
}
|
|
309
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverDirective, decorators: [{
|
|
310
310
|
type: Directive,
|
|
311
311
|
args: [{ selector: `[${XPopoverPrefix}], ${XPopoverPrefix}`, standalone: true }]
|
|
312
312
|
}], ctorParameters: () => [], propDecorators: { _show: [{
|
|
@@ -330,11 +330,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
|
|
|
330
330
|
}] } });
|
|
331
331
|
|
|
332
332
|
class XPopoverModule {
|
|
333
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
334
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
335
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
333
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
334
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XPopoverModule, imports: [XPopoverDirective], exports: [XPopoverDirective] }); }
|
|
335
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverModule }); }
|
|
336
336
|
}
|
|
337
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPopoverModule, decorators: [{
|
|
338
338
|
type: NgModule,
|
|
339
339
|
args: [{
|
|
340
340
|
exports: [XPopoverDirective],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-popover.mjs","sources":["../../../../lib/ng-nest/ui/popover/popover.property.ts","../../../../lib/ng-nest/ui/popover/popover-portal.component.ts","../../../../lib/ng-nest/ui/popover/popover-portal.component.html","../../../../lib/ng-nest/ui/popover/popover.directive.ts","../../../../lib/ng-nest/ui/popover/popover.module.ts","../../../../lib/ng-nest/ui/popover/ng-nest-ui-popover.ts"],"sourcesContent":["import { XPropertyFunction, XToCssPixelValue, XToBoolean, XToNumber } from '@ng-nest/ui/core';\r\nimport { Directive, ElementRef, input, model } from '@angular/core';\r\nimport type { XPlacement, XTemplate, XBoolean, XNumber } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Popover\r\n * @selector x-popover\r\n * @decorator directive\r\n */\r\nexport const XPopoverPrefix = 'x-popover';\r\nconst X_POPOVER_CONFIG_NAME = 'popover';\r\n\r\n/**\r\n * Popover Property\r\n */\r\n@Directive({ selector: `[${XPopoverPrefix}], ${XPopoverPrefix}` })\r\nexport class XPopoverProperty extends XPropertyFunction(X_POPOVER_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 标题,支持自定义模板\r\n * @en_US Title, support custom template\r\n */\r\n readonly title = input<XTemplate>('');\r\n /**\r\n * @zh_CN 内容,支持自定义模板\r\n * @en_US Content, support custom templates\r\n */\r\n readonly content = input<XTemplate>('');\r\n /**\r\n * @zh_CN 底部,支持自定义模板\r\n * @en_US At the bottom, support custom templates\r\n */\r\n readonly footer = input<XTemplate>('');\r\n /**\r\n * @zh_CN 内部样式\r\n * @en_US panel class\r\n */\r\n readonly panelClass = input<string | string[]>('');\r\n /**\r\n * @zh_CN 指定参考对象\r\n * @en_US specify reference object\r\n */\r\n readonly connectTo = input<ElementRef<HTMLElement> | HTMLElement>();\r\n /**\r\n * @zh_CN 弹出的位置\r\n * @en_US Pop-up position\r\n */\r\n readonly placement = input<XPlacement>(this.config?.placement ?? 'top');\r\n /**\r\n * @zh_CN 激活方式\r\n * @en_US Activation method\r\n */\r\n readonly trigger = input<XPopoverTrigger>(this.config?.trigger ?? 'hover');\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US width\r\n */\r\n readonly width = input<string, XNumber>(this.config?.width ?? '', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最大宽度\r\n * @en_US Max width\r\n */\r\n readonly maxWidth = input<string, XNumber>(this.config?.maxWidth ?? '10rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '10rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 显示/隐藏控制\r\n * @en_US Show/hide control\r\n */\r\n readonly visible = model<boolean>(false);\r\n /**\r\n * @zh_CN 条件触发\r\n * @en_US condition trigger\r\n */\r\n readonly condition = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 鼠标移入后延时多少才显示\r\n * @en_US How much is the mouse transfer after transfer\r\n */\r\n readonly mouseEnterDelay = input<number, XNumber>(150, { transform: XToNumber });\r\n /**\r\n * @zh_CN 鼠标移出后延时多少才隐藏\r\n * @en_US How much hidden is hidden after the mouse is removed\r\n */\r\n readonly mouseLeaveDelay = input<number, XNumber>(100, { transform: XToNumber });\r\n}\r\n\r\n/**\r\n * @zh_CN 激活方式\r\n * @en_US Activation method\r\n * @value \"hover\"\r\n * @value \"click\"\r\n */\r\nexport type XPopoverTrigger = 'hover' | 'click' | 'focus';\r\n\r\n/**\r\n * Popover Portal\r\n * @selector x-popover-portal\r\n * @decorator component\r\n */\r\nexport const XPopoverPortalPrefix = 'x-popover-portal';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n HostBinding,\r\n input,\r\n computed,\r\n output\r\n} from '@angular/core';\r\nimport { XPopoverPortalPrefix, XPopoverTrigger } from './popover.property';\r\nimport { XTemplate, XPlacement, XFadeAnimation, XIsEmpty } from '@ng-nest/ui/core';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XPopoverPortalPrefix}`,\r\n standalone: true,\r\n imports: [NgClass, XOutletDirective],\r\n templateUrl: './popover-portal.component.html',\r\n styleUrls: ['./popover-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XFadeAnimation]\r\n})\r\nexport class XPopoverPortalComponent {\r\n title = input<XTemplate>();\r\n content = input<XTemplate>();\r\n footer = input<XTemplate>();\r\n width = input<string>();\r\n minWidth = input<string>();\r\n maxWidth = input<string>();\r\n trigger = input<XPopoverTrigger>();\r\n placement = input<XPlacement>();\r\n portalHover = output<boolean>();\r\n\r\n @HostListener('mouseenter') mouseenter() {\r\n if (this.trigger() === 'hover') {\r\n this.portalHover.emit(true);\r\n }\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave() {\r\n if (this.trigger() === 'hover') {\r\n this.portalHover.emit(false);\r\n }\r\n }\r\n\r\n @HostBinding('@x-fade-animation') animation = true;\r\n\r\n classMap = computed(() => ({\r\n [`${XPopoverPortalPrefix}-${this.placement()}`]: !XIsEmpty(this.placement())\r\n }));\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n}\r\n","<div #popoverPortal class=\"x-popover-portal\" [ngClass]=\"classMap()\" (click)=\"stopPropagation($event)\">\r\n <div\r\n class=\"x-popover-portal-inner\"\r\n [style.width]=\"width()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.maxWidth]=\"maxWidth()\"\r\n >\r\n @if (title()) {\r\n <div class=\"x-popover-portal-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (content()) {\r\n <div class=\"x-popover-portal-content\">\r\n <ng-container *xOutlet=\"content()\">\r\n {{ content() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (footer()) {\r\n <div class=\"x-popover-portal-footer\">\r\n <ng-container *xOutlet=\"footer()\">\r\n {{ footer() }}\r\n </ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div #popoverArrow class=\"x-popover-portal-arrow\"></div>\r\n</div>\r\n","import {\r\n ElementRef,\r\n ViewContainerRef,\r\n Directive,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n OnDestroy,\r\n effect,\r\n ComponentRef,\r\n signal,\r\n SimpleChanges,\r\n OnChanges\r\n} from '@angular/core';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { XPopoverPortalComponent } from './popover-portal.component';\r\nimport { XPopoverPrefix, XPopoverProperty } from './popover.property';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n OverlayConfig,\r\n FlexibleConnectedPositionStrategy,\r\n ConnectedOverlayPositionChange,\r\n Overlay\r\n} from '@angular/cdk/overlay';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XIsChange, type XPlacement } from '@ng-nest/ui/core';\r\n\r\n@Directive({ selector: `[${XPopoverPrefix}], ${XPopoverPrefix}`, standalone: true })\r\nexport class XPopoverDirective extends XPopoverProperty implements OnDestroy, OnChanges {\r\n portal!: XPortalOverlayRef<XPopoverPortalComponent>;\r\n timeoutHide: any;\r\n timeoutShow: any;\r\n private unSubject = new Subject<void>();\r\n private realPlacement = signal<XPlacement | null>(null);\r\n private elementRef = inject(ElementRef);\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private overlay = inject(Overlay);\r\n\r\n @HostBinding('class.x-popover-show') get _show() {\r\n return this.visible();\r\n }\r\n\r\n @HostListener('click') click() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'click') {\r\n this.visible.update((x) => !x);\r\n if (this.visible()) this.show();\r\n else this.hide();\r\n }\r\n }\r\n\r\n @HostListener('mouseenter') mouseenter() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'hover') this.show();\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'hover') this.hide();\r\n }\r\n\r\n @HostListener('focus') focus() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'focus') this.show();\r\n }\r\n\r\n @HostListener('blur') blur() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'focus') this.hide();\r\n }\r\n\r\n portalComponent = signal<ComponentRef<XPopoverPortalComponent> | null>(null);\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.portalComponent()?.setInput('title', this.title()));\r\n effect(() => this.portalComponent()?.setInput('content', this.content()));\r\n effect(() => this.portalComponent()?.setInput('footer', this.footer()));\r\n effect(() => this.portalComponent()?.setInput('width', this.width()));\r\n effect(() => this.portalComponent()?.setInput('minWidth', this.minWidth()));\r\n effect(() => this.portalComponent()?.setInput('maxWidth', this.maxWidth()));\r\n effect(() => this.portalComponent()?.setInput('trigger', this.trigger()));\r\n effect(() => this.portalComponent()?.setInput('placement', this.realPlacement()));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { visible } = changes;\r\n if (XIsChange(visible) && !this.condition()) {\r\n if (this.visible()) this.show();\r\n else this.hide();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n show() {\r\n if (this.timeoutHide) clearTimeout(this.timeoutHide);\r\n if (this.timeoutShow) clearTimeout(this.timeoutShow);\r\n if (!this.portal || (this.portal && !this.portal.overlayRef?.hasAttached())) {\r\n this.timeoutShow = setTimeout(() => {\r\n this.createPortal();\r\n this.visible.set(true);\r\n }, this.mouseEnterDelay());\r\n }\r\n }\r\n\r\n hide() {\r\n if (this.timeoutHide) clearTimeout(this.timeoutHide);\r\n if (this.timeoutShow) clearTimeout(this.timeoutShow);\r\n if (this.portal?.overlayRef?.hasAttached()) {\r\n this.timeoutHide = setTimeout(() => {\r\n this.portal.overlayRef?.dispose();\r\n this.visible.set(false);\r\n }, this.mouseLeaveDelay());\r\n }\r\n }\r\n\r\n createPortal() {\r\n const connectTo = this.connectTo();\r\n const config: OverlayConfig = {\r\n panelClass: this.panelClass(),\r\n backdropClass: '',\r\n positionStrategy: this.portalService.setPlacement({\r\n elementRef: connectTo\r\n ? connectTo instanceof ElementRef\r\n ? connectTo\r\n : new ElementRef(connectTo)\r\n : this.elementRef,\r\n placement: [this.placement(), 'top', 'bottom', 'left', 'right']\r\n }),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XPopoverPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n if (this.trigger() === 'click') {\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.hide();\r\n });\r\n }\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this.unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XPlacement;\r\n if (place !== this.realPlacement()) {\r\n this.realPlacement.set(place);\r\n this.portal.overlayRef?.updatePosition();\r\n }\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal?.componentRef;\r\n if (!componentRef) return;\r\n this.portalComponent.set(componentRef);\r\n this.realPlacement.set(this.placement());\r\n\r\n const { portalHover } = componentRef.instance;\r\n portalHover.subscribe((hover: boolean) => {\r\n if (this.timeoutHide && hover) {\r\n clearTimeout(this.timeoutHide);\r\n } else {\r\n this.hide();\r\n }\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XPopoverDirective } from './popover.directive';\r\n\r\n@NgModule({\r\n exports: [XPopoverDirective],\r\n imports: [XPopoverDirective]\r\n})\r\nexport class XPopoverModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-popover.mjs","sources":["../../../../lib/ng-nest/ui/popover/popover.property.ts","../../../../lib/ng-nest/ui/popover/popover-portal.component.ts","../../../../lib/ng-nest/ui/popover/popover-portal.component.html","../../../../lib/ng-nest/ui/popover/popover.directive.ts","../../../../lib/ng-nest/ui/popover/popover.module.ts","../../../../lib/ng-nest/ui/popover/ng-nest-ui-popover.ts"],"sourcesContent":["import { XPropertyFunction, XToCssPixelValue, XToBoolean, XToNumber } from '@ng-nest/ui/core';\r\nimport { Directive, ElementRef, input, model } from '@angular/core';\r\nimport type { XPlacement, XTemplate, XBoolean, XNumber } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Popover\r\n * @selector x-popover\r\n * @decorator directive\r\n */\r\nexport const XPopoverPrefix = 'x-popover';\r\nconst X_POPOVER_CONFIG_NAME = 'popover';\r\n\r\n/**\r\n * Popover Property\r\n */\r\n@Directive({ selector: `[${XPopoverPrefix}], ${XPopoverPrefix}` })\r\nexport class XPopoverProperty extends XPropertyFunction(X_POPOVER_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 标题,支持自定义模板\r\n * @en_US Title, support custom template\r\n */\r\n readonly title = input<XTemplate>('');\r\n /**\r\n * @zh_CN 内容,支持自定义模板\r\n * @en_US Content, support custom templates\r\n */\r\n readonly content = input<XTemplate>('');\r\n /**\r\n * @zh_CN 底部,支持自定义模板\r\n * @en_US At the bottom, support custom templates\r\n */\r\n readonly footer = input<XTemplate>('');\r\n /**\r\n * @zh_CN 内部样式\r\n * @en_US panel class\r\n */\r\n readonly panelClass = input<string | string[]>('');\r\n /**\r\n * @zh_CN 指定参考对象\r\n * @en_US specify reference object\r\n */\r\n readonly connectTo = input<ElementRef<HTMLElement> | HTMLElement>();\r\n /**\r\n * @zh_CN 弹出的位置\r\n * @en_US Pop-up position\r\n */\r\n readonly placement = input<XPlacement>(this.config?.placement ?? 'top');\r\n /**\r\n * @zh_CN 激活方式\r\n * @en_US Activation method\r\n */\r\n readonly trigger = input<XPopoverTrigger>(this.config?.trigger ?? 'hover');\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US width\r\n */\r\n readonly width = input<string, XNumber>(this.config?.width ?? '', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最大宽度\r\n * @en_US Max width\r\n */\r\n readonly maxWidth = input<string, XNumber>(this.config?.maxWidth ?? '10rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '10rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 显示/隐藏控制\r\n * @en_US Show/hide control\r\n */\r\n readonly visible = model<boolean>(false);\r\n /**\r\n * @zh_CN 条件触发\r\n * @en_US condition trigger\r\n */\r\n readonly condition = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 鼠标移入后延时多少才显示\r\n * @en_US How much is the mouse transfer after transfer\r\n */\r\n readonly mouseEnterDelay = input<number, XNumber>(150, { transform: XToNumber });\r\n /**\r\n * @zh_CN 鼠标移出后延时多少才隐藏\r\n * @en_US How much hidden is hidden after the mouse is removed\r\n */\r\n readonly mouseLeaveDelay = input<number, XNumber>(100, { transform: XToNumber });\r\n}\r\n\r\n/**\r\n * @zh_CN 激活方式\r\n * @en_US Activation method\r\n * @value \"hover\"\r\n * @value \"click\"\r\n */\r\nexport type XPopoverTrigger = 'hover' | 'click' | 'focus';\r\n\r\n/**\r\n * Popover Portal\r\n * @selector x-popover-portal\r\n * @decorator component\r\n */\r\nexport const XPopoverPortalPrefix = 'x-popover-portal';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n HostBinding,\r\n input,\r\n computed,\r\n output\r\n} from '@angular/core';\r\nimport { XPopoverPortalPrefix, XPopoverTrigger } from './popover.property';\r\nimport { XTemplate, XPlacement, XFadeAnimation, XIsEmpty } from '@ng-nest/ui/core';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XPopoverPortalPrefix}`,\r\n standalone: true,\r\n imports: [NgClass, XOutletDirective],\r\n templateUrl: './popover-portal.component.html',\r\n styleUrls: ['./popover-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XFadeAnimation]\r\n})\r\nexport class XPopoverPortalComponent {\r\n title = input<XTemplate>();\r\n content = input<XTemplate>();\r\n footer = input<XTemplate>();\r\n width = input<string>();\r\n minWidth = input<string>();\r\n maxWidth = input<string>();\r\n trigger = input<XPopoverTrigger>();\r\n placement = input<XPlacement>();\r\n portalHover = output<boolean>();\r\n\r\n @HostListener('mouseenter') mouseenter() {\r\n if (this.trigger() === 'hover') {\r\n this.portalHover.emit(true);\r\n }\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave() {\r\n if (this.trigger() === 'hover') {\r\n this.portalHover.emit(false);\r\n }\r\n }\r\n\r\n @HostBinding('@x-fade-animation') animation = true;\r\n\r\n classMap = computed(() => ({\r\n [`${XPopoverPortalPrefix}-${this.placement()}`]: !XIsEmpty(this.placement())\r\n }));\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n}\r\n","<div #popoverPortal class=\"x-popover-portal\" [ngClass]=\"classMap()\" (click)=\"stopPropagation($event)\">\r\n <div\r\n class=\"x-popover-portal-inner\"\r\n [style.width]=\"width()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.maxWidth]=\"maxWidth()\"\r\n >\r\n @if (title()) {\r\n <div class=\"x-popover-portal-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (content()) {\r\n <div class=\"x-popover-portal-content\">\r\n <ng-container *xOutlet=\"content()\">\r\n {{ content() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (footer()) {\r\n <div class=\"x-popover-portal-footer\">\r\n <ng-container *xOutlet=\"footer()\">\r\n {{ footer() }}\r\n </ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div #popoverArrow class=\"x-popover-portal-arrow\"></div>\r\n</div>\r\n","import {\r\n ElementRef,\r\n ViewContainerRef,\r\n Directive,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n OnDestroy,\r\n effect,\r\n ComponentRef,\r\n signal,\r\n SimpleChanges,\r\n OnChanges\r\n} from '@angular/core';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { XPopoverPortalComponent } from './popover-portal.component';\r\nimport { XPopoverPrefix, XPopoverProperty } from './popover.property';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n OverlayConfig,\r\n FlexibleConnectedPositionStrategy,\r\n ConnectedOverlayPositionChange,\r\n Overlay\r\n} from '@angular/cdk/overlay';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XIsChange, type XPlacement } from '@ng-nest/ui/core';\r\n\r\n@Directive({ selector: `[${XPopoverPrefix}], ${XPopoverPrefix}`, standalone: true })\r\nexport class XPopoverDirective extends XPopoverProperty implements OnDestroy, OnChanges {\r\n portal!: XPortalOverlayRef<XPopoverPortalComponent>;\r\n timeoutHide: any;\r\n timeoutShow: any;\r\n private unSubject = new Subject<void>();\r\n private realPlacement = signal<XPlacement | null>(null);\r\n private elementRef = inject(ElementRef);\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private overlay = inject(Overlay);\r\n\r\n @HostBinding('class.x-popover-show') get _show() {\r\n return this.visible();\r\n }\r\n\r\n @HostListener('click') click() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'click') {\r\n this.visible.update((x) => !x);\r\n if (this.visible()) this.show();\r\n else this.hide();\r\n }\r\n }\r\n\r\n @HostListener('mouseenter') mouseenter() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'hover') this.show();\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'hover') this.hide();\r\n }\r\n\r\n @HostListener('focus') focus() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'focus') this.show();\r\n }\r\n\r\n @HostListener('blur') blur() {\r\n if (this.condition()) return;\r\n if (this.trigger() === 'focus') this.hide();\r\n }\r\n\r\n portalComponent = signal<ComponentRef<XPopoverPortalComponent> | null>(null);\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.portalComponent()?.setInput('title', this.title()));\r\n effect(() => this.portalComponent()?.setInput('content', this.content()));\r\n effect(() => this.portalComponent()?.setInput('footer', this.footer()));\r\n effect(() => this.portalComponent()?.setInput('width', this.width()));\r\n effect(() => this.portalComponent()?.setInput('minWidth', this.minWidth()));\r\n effect(() => this.portalComponent()?.setInput('maxWidth', this.maxWidth()));\r\n effect(() => this.portalComponent()?.setInput('trigger', this.trigger()));\r\n effect(() => this.portalComponent()?.setInput('placement', this.realPlacement()));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { visible } = changes;\r\n if (XIsChange(visible) && !this.condition()) {\r\n if (this.visible()) this.show();\r\n else this.hide();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n show() {\r\n if (this.timeoutHide) clearTimeout(this.timeoutHide);\r\n if (this.timeoutShow) clearTimeout(this.timeoutShow);\r\n if (!this.portal || (this.portal && !this.portal.overlayRef?.hasAttached())) {\r\n this.timeoutShow = setTimeout(() => {\r\n this.createPortal();\r\n this.visible.set(true);\r\n }, this.mouseEnterDelay());\r\n }\r\n }\r\n\r\n hide() {\r\n if (this.timeoutHide) clearTimeout(this.timeoutHide);\r\n if (this.timeoutShow) clearTimeout(this.timeoutShow);\r\n if (this.portal?.overlayRef?.hasAttached()) {\r\n this.timeoutHide = setTimeout(() => {\r\n this.portal.overlayRef?.dispose();\r\n this.visible.set(false);\r\n }, this.mouseLeaveDelay());\r\n }\r\n }\r\n\r\n createPortal() {\r\n const connectTo = this.connectTo();\r\n const config: OverlayConfig = {\r\n panelClass: this.panelClass(),\r\n backdropClass: '',\r\n positionStrategy: this.portalService.setPlacement({\r\n elementRef: connectTo\r\n ? connectTo instanceof ElementRef\r\n ? connectTo\r\n : new ElementRef(connectTo)\r\n : this.elementRef,\r\n placement: [this.placement(), 'top', 'bottom', 'left', 'right']\r\n }),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XPopoverPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n if (this.trigger() === 'click') {\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.hide();\r\n });\r\n }\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this.unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XPlacement;\r\n if (place !== this.realPlacement()) {\r\n this.realPlacement.set(place);\r\n this.portal.overlayRef?.updatePosition();\r\n }\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal?.componentRef;\r\n if (!componentRef) return;\r\n this.portalComponent.set(componentRef);\r\n this.realPlacement.set(this.placement());\r\n\r\n const { portalHover } = componentRef.instance;\r\n portalHover.subscribe((hover: boolean) => {\r\n if (this.timeoutHide && hover) {\r\n clearTimeout(this.timeoutHide);\r\n } else {\r\n this.hide();\r\n }\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XPopoverDirective } from './popover.directive';\r\n\r\n@NgModule({\r\n exports: [XPopoverDirective],\r\n imports: [XPopoverDirective]\r\n})\r\nexport class XPopoverModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -5,11 +5,11 @@ import { Overlay } from '@angular/cdk/overlay';
|
|
|
5
5
|
import { TemplatePortal, ComponentPortal } from '@angular/cdk/portal';
|
|
6
6
|
|
|
7
7
|
class XPortalModule {
|
|
8
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
9
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
10
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
8
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPortalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XPortalModule }); }
|
|
10
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPortalModule }); }
|
|
11
11
|
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPortalModule, decorators: [{
|
|
13
13
|
type: NgModule,
|
|
14
14
|
args: [{
|
|
15
15
|
imports: [],
|
|
@@ -217,10 +217,10 @@ class XPortalService {
|
|
|
217
217
|
placement.forEach((place) => result.push(XPortalPlacement[place]));
|
|
218
218
|
return result;
|
|
219
219
|
}
|
|
220
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
221
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.
|
|
220
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPortalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
221
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPortalService, providedIn: 'root' }); }
|
|
222
222
|
}
|
|
223
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
223
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XPortalService, decorators: [{
|
|
224
224
|
type: Injectable,
|
|
225
225
|
args: [{ providedIn: 'root' }]
|
|
226
226
|
}] });
|
|
@@ -104,10 +104,10 @@ class XProgressProperty extends XPropertyFunction(X_PROGRESS_CONFIG_NAME) {
|
|
|
104
104
|
*/
|
|
105
105
|
this.subsection = input(false, { transform: XToBoolean });
|
|
106
106
|
}
|
|
107
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
108
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.
|
|
107
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
108
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XProgressProperty, selector: "x-progress-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, percent: { classPropertyName: "percent", publicName: "percent", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, status: { classPropertyName: "status", publicName: "status", isSignal: true, isRequired: false, transformFunction: null }, info: { classPropertyName: "info", publicName: "info", isSignal: true, isRequired: false, transformFunction: null }, infoWidth: { classPropertyName: "infoWidth", publicName: "infoWidth", isSignal: true, isRequired: false, transformFunction: null }, inside: { classPropertyName: "inside", publicName: "inside", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, gradient: { classPropertyName: "gradient", publicName: "gradient", isSignal: true, isRequired: false, transformFunction: null }, steps: { classPropertyName: "steps", publicName: "steps", isSignal: true, isRequired: false, transformFunction: null }, stepWidth: { classPropertyName: "stepWidth", publicName: "stepWidth", isSignal: true, isRequired: false, transformFunction: null }, stepFlex: { classPropertyName: "stepFlex", publicName: "stepFlex", isSignal: true, isRequired: false, transformFunction: null }, thickness: { classPropertyName: "thickness", publicName: "thickness", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, notchAngle: { classPropertyName: "notchAngle", publicName: "notchAngle", isSignal: true, isRequired: false, transformFunction: null }, subsection: { classPropertyName: "subsection", publicName: "subsection", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
109
109
|
}
|
|
110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressProperty, decorators: [{
|
|
111
111
|
type: Component,
|
|
112
112
|
args: [{ selector: `${XProgressPrefix}-property`, template: '' }]
|
|
113
113
|
}] });
|
|
@@ -321,20 +321,20 @@ class XProgressComponent extends XProgressProperty {
|
|
|
321
321
|
}
|
|
322
322
|
return '';
|
|
323
323
|
}
|
|
324
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
325
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
324
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
325
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XProgressComponent, isStandalone: true, selector: "x-progress", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-progress\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-progress-steps]=\"stepsArray().length > 0\"\r\n [class.x-progress-steps-flex]=\"stepFlex()\"\r\n>\r\n @switch (type()) {\r\n @case ('circle') {\r\n <ng-container *ngTemplateOutlet=\"circleTpl\"> </ng-container>\r\n }\r\n @case ('dashboard') {\r\n <ng-container *ngTemplateOutlet=\"dashboardTpl\"> </ng-container>\r\n }\r\n @default {\r\n <ng-container *ngTemplateOutlet=\"lineTpl\"> </ng-container>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #lineTpl>\r\n @if (stepsArray().length === 0) {\r\n <ng-container *ngTemplateOutlet=\"trackTpl\"></ng-container>\r\n }\r\n @if (stepsArray().length > 0) {\r\n <ng-container *ngTemplateOutlet=\"stepsTpl\"></ng-container>\r\n }\r\n @if (info() && !inside()) {\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #circleTpl>\r\n <div class=\"x-progress-ring\" [style.width]=\"size()\" [style.height]=\"size()\">\r\n <div class=\"x-progress-ring-rail\" [style.border-width]=\"thickness()\"></div>\r\n <div\r\n class=\"x-progress-ring-bg\"\r\n [style.clip-path]=\"circleClipPath()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #dashboardTpl>\r\n <div class=\"x-progress-ring\" [style.width]=\"size()\" [style.height]=\"size()\">\r\n <div\r\n class=\"x-progress-ring-rail\"\r\n [style.clip-path]=\"dashboardRailClipPath()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <div\r\n class=\"x-progress-ring-bg\"\r\n [style.clip-path]=\"dashboardClipPath()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #trackTpl>\r\n <div class=\"x-progress-track\">\r\n <div\r\n class=\"x-progress-rail\"\r\n [class.x-progress-mask]=\"subsection()\"\r\n [style.background-image]=\"subsection() ? subLinearGradient() : 'none'\"\r\n >\r\n <div\r\n class=\"x-progress-bg\"\r\n [style.width.%]=\"percent()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.background-image]=\"linearGradient()\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n >\r\n @if (info() && inside()) {\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n }\r\n </div>\r\n @if (subsection()) {\r\n <div\r\n class=\"x-progress-bg-mask\"\r\n [style.width.%]=\"maskWidth()\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n ></div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #stepsTpl>\r\n @for (step of stepsArray(); track i; let i = $index) {\r\n <div\r\n class=\"x-progress-step\"\r\n [class.x-progress-step-active]=\"step\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.width]=\"stepWidth()\"\r\n [style.flex]=\"stepFlex() ? 1 : 'none'\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n ></div>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #textTpl>\r\n <span class=\"x-progress-text\" [style.width]=\"infoWidth()\">\r\n @switch (status()) {\r\n @case ('success') {\r\n <x-icon type=\"fto-check-circle\"></x-icon>\r\n }\r\n @case ('exception') {\r\n <x-icon type=\"fto-x-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon type=\"fto-help-circle\"></x-icon>\r\n }\r\n @default {\r\n @if (format()) {\r\n {{ format()!(percent()) }}\r\n } @else {\r\n {{ percent() }}%\r\n }\r\n }\r\n }\r\n </span>\r\n</ng-template>\r\n", styles: ["@keyframes x-progress-active{0%{width:0;opacity:.1}20%{width:0;opacity:.5}to{width:100%;opacity:0}}x-progress{display:initial}.x-progress{margin:0;padding:0}.x-progress{display:inline-flex;align-items:center;width:100%}.x-progress-track{width:100%;display:inline-flex;align-items:center}.x-progress-rail{position:relative;display:inline-flex;width:100%;overflow:hidden;vertical-align:middle;background-color:var(--x-border-100);border-radius:var(--x-border-radius)}.x-progress-bg{position:relative;background-color:var(--x-primary);transition:width .3s cubic-bezier(.08,.82,.17,1) 0s;border-radius:var(--x-border-radius);text-align:right;color:#fff}.x-progress-bg>span{margin:0 .325rem}.x-progress-circle,.x-progress-dashboard,.x-progress-steps:not(.x-progress-steps-flex){width:initial}.x-progress-ring{position:relative;display:inline-flex;align-items:center;justify-content:center}.x-progress-ring-rail{position:absolute;width:100%;height:100%;border-style:solid;border-color:var(--x-border-100);border-radius:100%}.x-progress-ring-bg{position:absolute;width:100%;height:100%;border-style:solid;border-color:var(--x-primary);border-radius:100%;transition:clip-path .3s cubic-bezier(.08,.82,.17,1) 0s}.x-progress-ring .x-progress-text{margin-left:0;justify-content:center;font-size:var(--x-font-size-large)}.x-progress-mask .x-progress-bg{background:transparent}.x-progress-bg-mask{transition:width .3s cubic-bezier(.08,.82,.17,1) 0s;background-color:var(--x-border-100);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-progress-step{background-color:var(--x-border-100);border-radius:var(--x-border-radius)}.x-progress-step:not(:first-child){margin-left:.125rem}.x-progress-step-active{background-color:var(--x-primary)}.x-progress-text{margin-left:.5rem;display:inline-flex;align-items:center;white-space:nowrap}.x-progress-text x-icon{font-size:1.25rem}.x-progress-active .x-progress-bg:before{position:absolute;inset:0;background:var(--x-background-100);border-radius:var(--x-border-radius);opacity:0;animation:x-progress-active 2s cubic-bezier(.23,1,.32,1) infinite;content:\"\"}.x-progress-exception .x-progress-text{color:var(--x-danger)}.x-progress-exception .x-progress-bg,.x-progress-exception .x-progress-step-active{background-color:var(--x-danger)}.x-progress-exception .x-progress-ring-bg{border-color:var(--x-danger)}.x-progress-success .x-progress-text{color:var(--x-success)}.x-progress-success .x-progress-bg,.x-progress-success .x-progress-step-active{background-color:var(--x-success)}.x-progress-success .x-progress-ring-bg{border-color:var(--x-success)}.x-progress-warning .x-progress-text{color:var(--x-warning)}.x-progress-warning .x-progress-bg,.x-progress-warning .x-progress-step-active{background-color:var(--x-warning)}.x-progress-warning .x-progress-ring-bg{border-color:var(--x-warning)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
326
326
|
}
|
|
327
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
327
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressComponent, decorators: [{
|
|
328
328
|
type: Component,
|
|
329
|
-
args: [{ selector: `${XProgressPrefix}`, standalone: true, imports: [NgClass, NgTemplateOutlet, FormsModule, XIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-progress\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-progress-steps]=\"stepsArray().length > 0\"\r\n [class.x-progress-steps-flex]=\"stepFlex()\"\r\n>\r\n @switch (type()) {\r\n @case ('circle') {\r\n <ng-container *ngTemplateOutlet=\"circleTpl\"> </ng-container>\r\n }\r\n @case ('dashboard') {\r\n <ng-container *ngTemplateOutlet=\"dashboardTpl\"> </ng-container>\r\n }\r\n @default {\r\n <ng-container *ngTemplateOutlet=\"lineTpl\"> </ng-container>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #lineTpl>\r\n @if (stepsArray().length === 0) {\r\n <ng-container *ngTemplateOutlet=\"trackTpl\"></ng-container>\r\n }\r\n @if (stepsArray().length > 0) {\r\n <ng-container *ngTemplateOutlet=\"stepsTpl\"></ng-container>\r\n }\r\n @if (info() && !inside()) {\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #circleTpl>\r\n <div class=\"x-progress-ring\" [style.width]=\"size()\" [style.height]=\"size()\">\r\n <div class=\"x-progress-ring-rail\" [style.border-width]=\"thickness()\"></div>\r\n <div\r\n class=\"x-progress-ring-bg\"\r\n [style.clip-path]=\"circleClipPath()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #dashboardTpl>\r\n <div class=\"x-progress-ring\" [style.width]=\"size()\" [style.height]=\"size()\">\r\n <div\r\n class=\"x-progress-ring-rail\"\r\n [style.clip-path]=\"dashboardRailClipPath()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <div\r\n class=\"x-progress-ring-bg\"\r\n [style.clip-path]=\"dashboardClipPath()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #trackTpl>\r\n <div class=\"x-progress-track\">\r\n <div\r\n class=\"x-progress-rail\"\r\n [class.x-progress-mask]=\"subsection()\"\r\n [style.background-image]=\"subsection() ? subLinearGradient() : 'none'\"\r\n >\r\n <div\r\n class=\"x-progress-bg\"\r\n [style.width.%]=\"percent()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.background-image]=\"linearGradient()\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n >\r\n @if (info() && inside()) {\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n }\r\n </div>\r\n @if (subsection()) {\r\n <div\r\n class=\"x-progress-bg-mask\"\r\n [style.width.%]=\"maskWidth()\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n ></div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #stepsTpl>\r\n @for (step of stepsArray(); track i; let i = $index) {\r\n <div\r\n class=\"x-progress-step\"\r\n [class.x-progress-step-active]=\"step\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.width]=\"stepWidth()\"\r\n [style.flex]=\"stepFlex() ? 1 : 'none'\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n ></div>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #textTpl>\r\n <span class=\"x-progress-text\" [style.width]=\"infoWidth()\">\r\n @switch (status()) {\r\n @case ('success') {\r\n <x-icon type=\"fto-check-circle\"></x-icon>\r\n }\r\n @case ('exception') {\r\n <x-icon type=\"fto-x-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon type=\"fto-help-circle\"></x-icon>\r\n }\r\n @default {\r\n @if (format()) {\r\n {{ format()!(percent()) }}\r\n } @else {\r\n {{ percent() }}%\r\n }\r\n }\r\n }\r\n </span>\r\n</ng-template>\r\n", styles: ["@keyframes x-progress-active{0%{width:0;opacity:.1}20%{width:0;opacity:.5}to{width:100%;opacity:0}}x-progress{display:initial}.x-progress{margin:0;padding:0
|
|
329
|
+
args: [{ selector: `${XProgressPrefix}`, standalone: true, imports: [NgClass, NgTemplateOutlet, FormsModule, XIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-progress\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-progress-steps]=\"stepsArray().length > 0\"\r\n [class.x-progress-steps-flex]=\"stepFlex()\"\r\n>\r\n @switch (type()) {\r\n @case ('circle') {\r\n <ng-container *ngTemplateOutlet=\"circleTpl\"> </ng-container>\r\n }\r\n @case ('dashboard') {\r\n <ng-container *ngTemplateOutlet=\"dashboardTpl\"> </ng-container>\r\n }\r\n @default {\r\n <ng-container *ngTemplateOutlet=\"lineTpl\"> </ng-container>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #lineTpl>\r\n @if (stepsArray().length === 0) {\r\n <ng-container *ngTemplateOutlet=\"trackTpl\"></ng-container>\r\n }\r\n @if (stepsArray().length > 0) {\r\n <ng-container *ngTemplateOutlet=\"stepsTpl\"></ng-container>\r\n }\r\n @if (info() && !inside()) {\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #circleTpl>\r\n <div class=\"x-progress-ring\" [style.width]=\"size()\" [style.height]=\"size()\">\r\n <div class=\"x-progress-ring-rail\" [style.border-width]=\"thickness()\"></div>\r\n <div\r\n class=\"x-progress-ring-bg\"\r\n [style.clip-path]=\"circleClipPath()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #dashboardTpl>\r\n <div class=\"x-progress-ring\" [style.width]=\"size()\" [style.height]=\"size()\">\r\n <div\r\n class=\"x-progress-ring-rail\"\r\n [style.clip-path]=\"dashboardRailClipPath()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <div\r\n class=\"x-progress-ring-bg\"\r\n [style.clip-path]=\"dashboardClipPath()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.border-width]=\"thickness()\"\r\n ></div>\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #trackTpl>\r\n <div class=\"x-progress-track\">\r\n <div\r\n class=\"x-progress-rail\"\r\n [class.x-progress-mask]=\"subsection()\"\r\n [style.background-image]=\"subsection() ? subLinearGradient() : 'none'\"\r\n >\r\n <div\r\n class=\"x-progress-bg\"\r\n [style.width.%]=\"percent()\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.background-image]=\"linearGradient()\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n >\r\n @if (info() && inside()) {\r\n <ng-container *ngTemplateOutlet=\"textTpl\"></ng-container>\r\n }\r\n </div>\r\n @if (subsection()) {\r\n <div\r\n class=\"x-progress-bg-mask\"\r\n [style.width.%]=\"maskWidth()\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n ></div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #stepsTpl>\r\n @for (step of stepsArray(); track i; let i = $index) {\r\n <div\r\n class=\"x-progress-step\"\r\n [class.x-progress-step-active]=\"step\"\r\n [style.background-color]=\"currentColor()\"\r\n [style.width]=\"stepWidth()\"\r\n [style.flex]=\"stepFlex() ? 1 : 'none'\"\r\n [style.height]=\"height()\"\r\n [style.line-height]=\"height()\"\r\n ></div>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #textTpl>\r\n <span class=\"x-progress-text\" [style.width]=\"infoWidth()\">\r\n @switch (status()) {\r\n @case ('success') {\r\n <x-icon type=\"fto-check-circle\"></x-icon>\r\n }\r\n @case ('exception') {\r\n <x-icon type=\"fto-x-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon type=\"fto-help-circle\"></x-icon>\r\n }\r\n @default {\r\n @if (format()) {\r\n {{ format()!(percent()) }}\r\n } @else {\r\n {{ percent() }}%\r\n }\r\n }\r\n }\r\n </span>\r\n</ng-template>\r\n", styles: ["@keyframes x-progress-active{0%{width:0;opacity:.1}20%{width:0;opacity:.5}to{width:100%;opacity:0}}x-progress{display:initial}.x-progress{margin:0;padding:0}.x-progress{display:inline-flex;align-items:center;width:100%}.x-progress-track{width:100%;display:inline-flex;align-items:center}.x-progress-rail{position:relative;display:inline-flex;width:100%;overflow:hidden;vertical-align:middle;background-color:var(--x-border-100);border-radius:var(--x-border-radius)}.x-progress-bg{position:relative;background-color:var(--x-primary);transition:width .3s cubic-bezier(.08,.82,.17,1) 0s;border-radius:var(--x-border-radius);text-align:right;color:#fff}.x-progress-bg>span{margin:0 .325rem}.x-progress-circle,.x-progress-dashboard,.x-progress-steps:not(.x-progress-steps-flex){width:initial}.x-progress-ring{position:relative;display:inline-flex;align-items:center;justify-content:center}.x-progress-ring-rail{position:absolute;width:100%;height:100%;border-style:solid;border-color:var(--x-border-100);border-radius:100%}.x-progress-ring-bg{position:absolute;width:100%;height:100%;border-style:solid;border-color:var(--x-primary);border-radius:100%;transition:clip-path .3s cubic-bezier(.08,.82,.17,1) 0s}.x-progress-ring .x-progress-text{margin-left:0;justify-content:center;font-size:var(--x-font-size-large)}.x-progress-mask .x-progress-bg{background:transparent}.x-progress-bg-mask{transition:width .3s cubic-bezier(.08,.82,.17,1) 0s;background-color:var(--x-border-100);border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-progress-step{background-color:var(--x-border-100);border-radius:var(--x-border-radius)}.x-progress-step:not(:first-child){margin-left:.125rem}.x-progress-step-active{background-color:var(--x-primary)}.x-progress-text{margin-left:.5rem;display:inline-flex;align-items:center;white-space:nowrap}.x-progress-text x-icon{font-size:1.25rem}.x-progress-active .x-progress-bg:before{position:absolute;inset:0;background:var(--x-background-100);border-radius:var(--x-border-radius);opacity:0;animation:x-progress-active 2s cubic-bezier(.23,1,.32,1) infinite;content:\"\"}.x-progress-exception .x-progress-text{color:var(--x-danger)}.x-progress-exception .x-progress-bg,.x-progress-exception .x-progress-step-active{background-color:var(--x-danger)}.x-progress-exception .x-progress-ring-bg{border-color:var(--x-danger)}.x-progress-success .x-progress-text{color:var(--x-success)}.x-progress-success .x-progress-bg,.x-progress-success .x-progress-step-active{background-color:var(--x-success)}.x-progress-success .x-progress-ring-bg{border-color:var(--x-success)}.x-progress-warning .x-progress-text{color:var(--x-warning)}.x-progress-warning .x-progress-bg,.x-progress-warning .x-progress-step-active{background-color:var(--x-warning)}.x-progress-warning .x-progress-ring-bg{border-color:var(--x-warning)}\n"] }]
|
|
330
330
|
}] });
|
|
331
331
|
|
|
332
332
|
class XProgressModule {
|
|
333
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
334
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
335
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
333
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
334
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XProgressModule, imports: [XProgressComponent], exports: [XProgressComponent] }); }
|
|
335
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressModule, imports: [XProgressComponent] }); }
|
|
336
336
|
}
|
|
337
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XProgressModule, decorators: [{
|
|
338
338
|
type: NgModule,
|
|
339
339
|
args: [{
|
|
340
340
|
exports: [XProgressComponent],
|