@ng-nest/ui 18.0.5 → 18.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/checkbox/checkbox.component.d.ts +1 -1
- 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 +91 -29
- 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 +5 -5
- 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 +116 -39
- 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 +15 -15
- 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 +115 -115
- package/pagination/pagination.component.d.ts +24 -0
- package/pagination/pagination.property.d.ts +31 -5
- package/radio/radio.component.d.ts +1 -1
- package/select/select.property.d.ts +1 -4
- package/style/mixins/reset.scss +4 -2
- package/table/table.property.d.ts +17 -1
|
@@ -341,10 +341,10 @@ export class XSliderSelectComponent extends XSliderSelectProperty {
|
|
|
341
341
|
}
|
|
342
342
|
}
|
|
343
343
|
}
|
|
344
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
345
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: XSliderSelectComponent, isStandalone: true, selector: "x-slider-select", host: { properties: { "class.x-slider-select-vertical": "this.getVertical" } }, providers: [XValueAccessor(XSliderSelectComponent)], viewQueries: [{ propertyName: "sliderSelect", first: true, predicate: ["sliderSelect"], descendants: true, isSignal: true }, { propertyName: "dragStartRef", first: true, predicate: ["dragStartRef"], descendants: true, isSignal: true }, { propertyName: "dragEndRef", first: true, predicate: ["dragEndRef"], descendants: true, isSignal: true }, { propertyName: "railRef", first: true, predicate: ["railRef"], descendants: true, isSignal: true }, { propertyName: "processRef", first: true, predicate: ["processRef"], descendants: true, isSignal: true }, { propertyName: "tooltips", predicate: XTooltipDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-slider-select-reverse]=\"reverse()\"\r\n [class.x-slider-select-range]=\"range()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-slider-select-inner\" #innerRef>\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div\r\n #processRef\r\n class=\"x-slider-select-process\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed() || !range()\"\r\n [cdkDragBoundary]=\"trackRef\"\r\n (cdkDragStarted)=\"started($event, 'both')\"\r\n (cdkDragEnded)=\"ended($event, 'both')\"\r\n (cdkDragMoved)=\"moved($event, 'both')\"\r\n ></div>\r\n </div>\r\n <div class=\"x-slider-select-marks\">\r\n @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\r\n </div>\r\n <div\r\n #dragStartRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'start')\"\r\n (cdkDragEnded)=\"ended($event, 'start')\"\r\n (cdkDragMoved)=\"moved($event, 'start')\"\r\n >\r\n <div\r\n #tooltipStart\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"startVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showStartTooltip()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n <div\r\n [hidden]=\"!range()\"\r\n #dragEndRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'end')\"\r\n (cdkDragEnded)=\"ended($event, 'end')\"\r\n (cdkDragMoved)=\"moved($event, 'end')\"\r\n >\r\n <div\r\n #tooltipEnd\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"endVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showEndTooltip()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0;width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:var(--x-height-medium);line-height:var(--x-height-medium);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:1rem}.x-slider-select-rail{position:absolute;margin-left:.5rem;width:calc(100% - 1rem);background-color:var(--x-border-100);height:calc(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;transition:var(--x-animation-duration-base)}.x-slider-select-button:hover,.x-slider-select-button-actived{transform:scale(1.2)}.x-slider-select-bar{width:100%;height:100%}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:var(--x-height-medium);line-height:var(--x-height-medium);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button:not(.x-slider-select-custom-button){border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.x-slider-select-reverse .x-slider-select-mark{transform:translate(50%)}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-right:.5rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select-vertical{width:initial;height:12rem}.x-slider-select-vertical .x-slider-select{height:100%}.x-slider-select-vertical .x-slider-select-inner{padding-right:initial;padding-top:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-mark{transform:translate(0) translateY(50%)}.x-slider-select-vertical .x-slider-select-mark-label{transform:translate(50%) translateY(0);margin-left:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);align-items:flex-end;justify-content:center;right:auto}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-inner{padding-left:initial;padding-bottom:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-track,.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-marks{align-items:flex-start;margin-bottom:-.5rem;margin-right:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-mark{transform:translate(0) translateY(-50%)}.x-slider-select-range .x-slider-select-process{cursor:pointer}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
344
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
345
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XSliderSelectComponent, isStandalone: true, selector: "x-slider-select", host: { properties: { "class.x-slider-select-vertical": "this.getVertical" } }, providers: [XValueAccessor(XSliderSelectComponent)], viewQueries: [{ propertyName: "sliderSelect", first: true, predicate: ["sliderSelect"], descendants: true, isSignal: true }, { propertyName: "dragStartRef", first: true, predicate: ["dragStartRef"], descendants: true, isSignal: true }, { propertyName: "dragEndRef", first: true, predicate: ["dragEndRef"], descendants: true, isSignal: true }, { propertyName: "railRef", first: true, predicate: ["railRef"], descendants: true, isSignal: true }, { propertyName: "processRef", first: true, predicate: ["processRef"], descendants: true, isSignal: true }, { propertyName: "tooltips", predicate: XTooltipDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-slider-select-reverse]=\"reverse()\"\r\n [class.x-slider-select-range]=\"range()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-slider-select-inner\" #innerRef>\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div\r\n #processRef\r\n class=\"x-slider-select-process\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed() || !range()\"\r\n [cdkDragBoundary]=\"trackRef\"\r\n (cdkDragStarted)=\"started($event, 'both')\"\r\n (cdkDragEnded)=\"ended($event, 'both')\"\r\n (cdkDragMoved)=\"moved($event, 'both')\"\r\n ></div>\r\n </div>\r\n <div class=\"x-slider-select-marks\">\r\n @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\r\n </div>\r\n <div\r\n #dragStartRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'start')\"\r\n (cdkDragEnded)=\"ended($event, 'start')\"\r\n (cdkDragMoved)=\"moved($event, 'start')\"\r\n >\r\n <div\r\n #tooltipStart\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"startVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showStartTooltip()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n <div\r\n [hidden]=\"!range()\"\r\n #dragEndRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'end')\"\r\n (cdkDragEnded)=\"ended($event, 'end')\"\r\n (cdkDragMoved)=\"moved($event, 'end')\"\r\n >\r\n <div\r\n #tooltipEnd\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"endVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showEndTooltip()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0}.x-slider-select{width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:var(--x-height-medium);line-height:var(--x-height-medium);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:1rem}.x-slider-select-rail{position:absolute;margin-left:.5rem;width:calc(100% - 1rem);background-color:var(--x-border-100);height:calc(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;transition:var(--x-animation-duration-base)}.x-slider-select-button:hover,.x-slider-select-button-actived{transform:scale(1.2)}.x-slider-select-bar{width:100%;height:100%}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:var(--x-height-medium);line-height:var(--x-height-medium);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button:not(.x-slider-select-custom-button){border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.x-slider-select-reverse .x-slider-select-mark{transform:translate(50%)}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-right:.5rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select-vertical{width:initial;height:12rem}.x-slider-select-vertical .x-slider-select{height:100%}.x-slider-select-vertical .x-slider-select-inner{padding-right:initial;padding-top:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-mark{transform:translate(0) translateY(50%)}.x-slider-select-vertical .x-slider-select-mark-label{transform:translate(50%) translateY(0);margin-left:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);align-items:flex-end;justify-content:center;right:auto}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-inner{padding-left:initial;padding-bottom:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-track,.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-marks{align-items:flex-start;margin-bottom:-.5rem;margin-right:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-mark{transform:translate(0) translateY(-50%)}.x-slider-select-range .x-slider-select-process{cursor:pointer}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
346
346
|
}
|
|
347
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
347
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectComponent, decorators: [{
|
|
348
348
|
type: Component,
|
|
349
349
|
args: [{ selector: `${XSliderSelectPrefix}`, standalone: true, imports: [
|
|
350
350
|
NgClass,
|
|
@@ -355,9 +355,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
|
|
|
355
355
|
XTooltipDirective,
|
|
356
356
|
XDragDirective,
|
|
357
357
|
XOutletDirective
|
|
358
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XSliderSelectComponent)], template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-slider-select-reverse]=\"reverse()\"\r\n [class.x-slider-select-range]=\"range()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-slider-select-inner\" #innerRef>\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div\r\n #processRef\r\n class=\"x-slider-select-process\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed() || !range()\"\r\n [cdkDragBoundary]=\"trackRef\"\r\n (cdkDragStarted)=\"started($event, 'both')\"\r\n (cdkDragEnded)=\"ended($event, 'both')\"\r\n (cdkDragMoved)=\"moved($event, 'both')\"\r\n ></div>\r\n </div>\r\n <div class=\"x-slider-select-marks\">\r\n @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\r\n </div>\r\n <div\r\n #dragStartRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'start')\"\r\n (cdkDragEnded)=\"ended($event, 'start')\"\r\n (cdkDragMoved)=\"moved($event, 'start')\"\r\n >\r\n <div\r\n #tooltipStart\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"startVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showStartTooltip()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n <div\r\n [hidden]=\"!range()\"\r\n #dragEndRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'end')\"\r\n (cdkDragEnded)=\"ended($event, 'end')\"\r\n (cdkDragMoved)=\"moved($event, 'end')\"\r\n >\r\n <div\r\n #tooltipEnd\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"endVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showEndTooltip()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0;width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:var(--x-height-medium);line-height:var(--x-height-medium);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:1rem}.x-slider-select-rail{position:absolute;margin-left:.5rem;width:calc(100% - 1rem);background-color:var(--x-border-100);height:calc(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;transition:var(--x-animation-duration-base)}.x-slider-select-button:hover,.x-slider-select-button-actived{transform:scale(1.2)}.x-slider-select-bar{width:100%;height:100%}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:var(--x-height-medium);line-height:var(--x-height-medium);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button:not(.x-slider-select-custom-button){border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.x-slider-select-reverse .x-slider-select-mark{transform:translate(50%)}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-right:.5rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select-vertical{width:initial;height:12rem}.x-slider-select-vertical .x-slider-select{height:100%}.x-slider-select-vertical .x-slider-select-inner{padding-right:initial;padding-top:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-mark{transform:translate(0) translateY(50%)}.x-slider-select-vertical .x-slider-select-mark-label{transform:translate(50%) translateY(0);margin-left:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);align-items:flex-end;justify-content:center;right:auto}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-inner{padding-left:initial;padding-bottom:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-track,.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-marks{align-items:flex-start;margin-bottom:-.5rem;margin-right:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-mark{transform:translate(0) translateY(-50%)}.x-slider-select-range .x-slider-select-process{cursor:pointer}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"] }]
|
|
358
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XSliderSelectComponent)], template: "<div\r\n #sliderSelect\r\n class=\"x-slider-select\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-slider-select-reverse]=\"reverse()\"\r\n [class.x-slider-select-range]=\"range()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-slider-select-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-slider-select-inner\" #innerRef>\r\n <div class=\"x-slider-select-rail\" #railRef>\r\n <div></div>\r\n </div>\r\n <div class=\"x-slider-select-drags\">\r\n <div class=\"x-slider-select-track\" #trackRef>\r\n <div\r\n #processRef\r\n class=\"x-slider-select-process\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed() || !range()\"\r\n [cdkDragBoundary]=\"trackRef\"\r\n (cdkDragStarted)=\"started($event, 'both')\"\r\n (cdkDragEnded)=\"ended($event, 'both')\"\r\n (cdkDragMoved)=\"moved($event, 'both')\"\r\n ></div>\r\n </div>\r\n <div class=\"x-slider-select-marks\">\r\n @for (mark of markList(); track mark.label) {\r\n <div class=\"x-slider-select-mark\" [ngStyle]=\"mark.style\">\r\n <span class=\"x-slider-select-mark-label\">{{ mark.label }}</span>\r\n </div>\r\n }\r\n </div>\r\n <div\r\n #dragStartRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'start')\"\r\n (cdkDragEnded)=\"ended($event, 'start')\"\r\n (cdkDragMoved)=\"moved($event, 'start')\"\r\n >\r\n <div\r\n #tooltipStart\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"startVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showStartTooltip()\"\r\n [content]=\"tooltipStartTpl\"\r\n [(visible)]=\"startVisible\"\r\n [manual]=\"startManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipStartTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: startDisplayValue() }\">{{\r\n startDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n <div\r\n [hidden]=\"!range()\"\r\n #dragEndRef\r\n class=\"x-slider-select-drag\"\r\n cdkDrag\r\n [cdkDragLockAxis]=\"vertical() ? 'y' : 'x'\"\r\n [cdkDragDisabled]=\"disabledComputed()\"\r\n [cdkDragBoundary]=\"innerRef\"\r\n (cdkDragStarted)=\"started($event, 'end')\"\r\n (cdkDragEnded)=\"ended($event, 'end')\"\r\n (cdkDragMoved)=\"moved($event, 'end')\"\r\n >\r\n <div\r\n #tooltipEnd\r\n x-tooltip\r\n tabindex=\"0\"\r\n class=\"x-slider-select-button\"\r\n [class.x-slider-select-button-actived]=\"endVisible()\"\r\n [class.x-slider-select-custom-button]=\"customButton()\"\r\n placement=\"top\"\r\n [disabled]=\"!showTooltip() && !showEndTooltip()\"\r\n [content]=\"tooltipEndTpl\"\r\n [(visible)]=\"endVisible\"\r\n [manual]=\"endManual()\"\r\n >\r\n <ng-container *xOutlet=\"customButton()\">{{ customButton() }}</ng-container>\r\n </div>\r\n <ng-template #tooltipEndTpl>\r\n <ng-container *xOutlet=\"tooltipCustom(); context: { $value: endDisplayValue() }\">{{\r\n endDisplayValue()\r\n }}</ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-slider-select{display:inline-block;width:12rem}.x-slider-select{margin:0;padding:0}.x-slider-select{width:100%}.x-slider-select.x-flex{display:flex}.x-slider-select.x-justify-start{justify-content:flex-start}.x-slider-select.x-justify-center{justify-content:center}.x-slider-select.x-justify-end{justify-content:flex-end}.x-slider-select.x-justify-space-between{justify-content:space-between}.x-slider-select.x-justify-space-around{justify-content:space-around}.x-slider-select.x-align-start{align-items:flex-start}.x-slider-select.x-align-center{align-items:center}.x-slider-select.x-align-end{align-items:flex-end}.x-slider-select.x-direction-column{flex-direction:column}.x-slider-select.x-direction-column-reverse{flex-direction:column-reverse}.x-slider-select.x-direction-row{flex-direction:row}.x-slider-select.x-direction-row-reverse{flex-direction:row-reverse}.x-slider-select>label{display:inline-block;white-space:nowrap;height:var(--x-height-medium);line-height:var(--x-height-medium);color:var(--x-text-300);font-weight:600}.x-slider-select>label.x-text-align-start{text-align:start}.x-slider-select>label.x-text-align-center{text-align:center}.x-slider-select>label.x-text-align-end{text-align:end}.x-slider-select-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-slider-select-inner{flex:1;position:relative;display:flex;align-items:center;padding-right:1rem}.x-slider-select-rail{position:absolute;margin-left:.5rem;width:calc(100% - 1rem);background-color:var(--x-border-100);height:calc(var(--x-height-medium) / 4);border-radius:var(--x-border-radius)}.x-slider-select-rail>div{width:100%;height:100%;border-radius:var(--x-border-radius)}.x-slider-select-track{margin-left:.5rem;width:100%;border-radius:var(--x-border-radius);position:absolute}.x-slider-select-process{height:calc(var(--x-height-medium) / 4);background-color:var(--x-primary);border-radius:var(--x-border-radius);width:0%;position:relative}.x-slider-select-drags{position:relative;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-drag{position:absolute;cursor:pointer}.x-slider-select-marks{position:absolute;margin-left:.5rem;width:100%;height:var(--x-height-medium);display:flex;align-items:center}.x-slider-select-mark{position:absolute;transform:translate(-50%);border-radius:1rem;display:flex;align-items:center;justify-content:center}.x-slider-select-mark:before{content:\" \";position:absolute;width:.75rem;height:.75rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100);border-radius:1rem}.x-slider-select-mark-label{transform:translateY(1rem)}.x-slider-select-button:not(.x-slider-select-custom-button){border-radius:1rem;border:calc(var(--x-border-width) * 2) solid var(--x-primary);background-color:var(--x-background-a100)}.x-slider-select-button{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;transition:var(--x-animation-duration-base)}.x-slider-select-button:hover,.x-slider-select-button-actived{transform:scale(1.2)}.x-slider-select-bar{width:100%;height:100%}.x-slider-select.x-invalid>label,.x-slider-select.x-required>label{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row>x-icon,.x-slider-select.x-required>.x-slider-select-row>x-icon{color:var(--x-danger)}.x-slider-select.x-invalid>.x-slider-select-row:before,.x-slider-select.x-required>.x-slider-select-row:before{content:\" \";z-index:2;position:absolute;height:var(--x-height-medium);line-height:var(--x-height-medium);border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);width:.125rem;background-color:var(--x-danger)}.x-slider-select.x-disabled .x-slider-select-rail{background-color:var(--x-border-300)}.x-slider-select.x-disabled .x-slider-select-process{background-color:var(--x-primary-400)}.x-slider-select.x-disabled .x-slider-select-drag{cursor:not-allowed}.x-slider-select.x-disabled .x-slider-select-button:not(.x-slider-select-custom-button){border-color:var(--x-primary-400)}.x-slider-select.x-flex.x-direction-row>label{padding:0 .5rem 0 0}.x-slider-select.x-flex.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-slider-select.x-flex.x-direction-column,.x-slider-select.x-flex.x-direction-column-reverse{align-items:inherit}.x-slider-select-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-500);padding:0 var(--x-padding-medium);right:0}.x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:var(--x-primary-100)}.x-slider-select:hover:not(.x-disabled) .x-slider-select-button{border-color:var(--x-primary-100)}.x-slider-select-reverse .x-slider-select-inner{padding-right:0;padding-left:1rem}.x-slider-select-reverse .x-slider-select-rail{margin-left:-.5rem}.x-slider-select-reverse .x-slider-select-marks{margin-right:.5rem}.x-slider-select-reverse .x-slider-select-mark{transform:translate(50%)}.x-slider-select-reverse .x-slider-select-track{display:flex;justify-content:flex-end;margin-right:.5rem}.x-slider-select-reverse .x-slider-select-drags{justify-content:flex-end;right:auto}.x-slider-select-vertical{width:initial;height:12rem}.x-slider-select-vertical .x-slider-select{height:100%}.x-slider-select-vertical .x-slider-select-inner{padding-right:initial;padding-top:1rem;align-items:initial;justify-content:center;height:100%}.x-slider-select-vertical .x-slider-select-rail{margin-left:initial;margin-top:-.5rem;height:calc(100% - 1rem);width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-track{display:flex;align-items:flex-end;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-marks{display:flex;align-items:flex-end;justify-content:center;margin-left:initial;margin-bottom:.5rem;width:calc(var(--x-height-medium) / 4);height:100%}.x-slider-select-vertical .x-slider-select-mark{transform:translate(0) translateY(50%)}.x-slider-select-vertical .x-slider-select-mark-label{transform:translate(50%) translateY(0);margin-left:1rem}.x-slider-select-vertical .x-slider-select-process{height:0%;width:calc(var(--x-height-medium) / 4)}.x-slider-select-vertical .x-slider-select-drags{height:100%;width:var(--x-height-medium);align-items:flex-end;justify-content:center;right:auto}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-inner{padding-left:initial;padding-bottom:1rem;padding-top:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-rail{margin-top:.5rem}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-track,.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-marks{align-items:flex-start;margin-bottom:-.5rem;margin-right:initial}.x-slider-select-vertical .x-slider-select-reverse .x-slider-select-mark{transform:translate(0) translateY(-50%)}.x-slider-select-range .x-slider-select-process{cursor:pointer}.x-slider-select:not(.x-slider-select-reverse) .x-slider-select-drag{left:auto}\n"] }]
|
|
359
359
|
}], propDecorators: { getVertical: [{
|
|
360
360
|
type: HostBinding,
|
|
361
361
|
args: ['class.x-slider-select-vertical']
|
|
362
362
|
}] } });
|
|
363
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVyLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9zbGlkZXItc2VsZWN0L3NsaWRlci1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvc2xpZGVyLXNlbGVjdC9zbGlkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFHVixXQUFXLEVBQ1gsTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQXFCLE1BQU0sMEJBQTBCLENBQUM7QUFDekcsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFtQixTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9B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aS90b29sdGlwJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgaW5qZWN0LFxyXG4gIHNpZ25hbCxcclxuICB2aWV3Q2hpbGQsXHJcbiAgdmlld0NoaWxkcmVuLFxyXG4gIGNvbXB1dGVkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhTbGlkZXJTZWxlY3RQcm9wZXJ0eSwgWFNsaWRlclNlbGVjdFByZWZpeCwgWFNsaWRlclNlbGVjdE1hcmsgfSBmcm9tICcuL3NsaWRlci1zZWxlY3QucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSwgWElzVW5kZWZpbmVkLCBYUmVzaXplLCBYUmVzaXplT2JzZXJ2ZXIsIFhJc051bWJlciwgWElzQXJyYXksIFhJc051bGwgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgWFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbmctbmVzdC91aS9iYXNlLWZvcm0nO1xyXG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFhEcmFnRGlyZWN0aXZlIH0gZnJvbSAnQG5nLW5lc3QvdWkvZHJhZyc7XHJcbmltcG9ydCB7IFhPdXRsZXREaXJlY3RpdmUgfSBmcm9tICdAbmctbmVzdC91aS9vdXRsZXQnO1xyXG5pbXBvcnQgdHlwZSB7IENka0RyYWdNb3ZlLCBDZGtEcmFnU3RhcnQsIENka0RyYWdFbmQgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYU2xpZGVyU2VsZWN0UHJlZml4fWAsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0NsYXNzLFxyXG4gICAgTmdTdHlsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgWFRvb2x0aXBEaXJlY3RpdmUsXHJcbiAgICBYRHJhZ0RpcmVjdGl2ZSxcclxuICAgIFhPdXRsZXREaXJlY3RpdmVcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zbGlkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zbGlkZXItc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtYVmFsdWVBY2Nlc3NvcihYU2xpZGVyU2VsZWN0Q29tcG9uZW50KV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhTbGlkZXJTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBYU2xpZGVyU2VsZWN0UHJvcGVydHkgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xyXG4gIHNsaWRlclNlbGVjdCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ3NsaWRlclNlbGVjdCcpO1xyXG4gIGRyYWdTdGFydFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2RyYWdTdGFydFJlZicpO1xyXG4gIGRyYWdFbmRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdkcmFnRW5kUmVmJyk7XHJcbiAgcmFpbFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ3JhaWxSZWYnKTtcclxuICBwcm9jZXNzUmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PigncHJvY2Vzc1JlZicpO1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MueC1zbGlkZXItc2VsZWN0LXZlcnRpY2FsJykgZ2V0IGdldFZlcnRpY2FsKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmVydGljYWwoKTtcclxuICB9XHJcbiAgdG9vbHRpcHMgPSB2aWV3Q2hpbGRyZW4oWFRvb2x0aXBEaXJlY3RpdmUpO1xyXG4gIHRvb2x0aXBTdGFydCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGlmICh0aGlzLnRvb2x0aXBzKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICByZXR1cm4gdGhpcy50b29sdGlwcygpIVswXTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH0pO1xyXG4gIHRvb2x0aXBFbmQgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBpZiAodGhpcy50b29sdGlwcygpLmxlbmd0aCA+IDEpIHtcclxuICAgICAgcmV0dXJuIHRoaXMudG9vbHRpcHMoKSFbMV07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9KTtcclxuXHJcbiAgb3ZlcnJpZGUgdmFsdWUgPSBzaWduYWw8bnVtYmVyIHwgbnVtYmVyW10+KDApO1xyXG4gIHN0YXJ0aW5nID0gc2lnbmFsKGZhbHNlKTtcclxuXHJcbiAgc3RhcnRPZmZzZXQgPSBzaWduYWwoMCk7XHJcbiAgc3RhcnRWaXNpYmxlID0gc2lnbmFsKGZhbHNlKTtcclxuICBzdGFydE1hbnVhbCA9IHNpZ25hbChmYWxzZSk7XHJcbiAgc3RhcnQgPSBzaWduYWw8bnVtYmVyIHwgbnVsbD4obnVsbCk7XHJcbiAgc3RhcnREaXNwbGF5VmFsdWUgPSBzaWduYWwoJzAnKTtcclxuICBzaG93U3RhcnRUb29sdGlwID0gc2lnbmFsKHRydWUpO1xyXG5cclxuICBlbmRPZmZzZXQgPSBzaWduYWwoMCk7XHJcbiAgZW5kVmlzaWJsZSA9IHNpZ25hbChmYWxzZSk7XHJcbiAgZW5kTWFudWFsID0gc2lnbmFsKGZhbHNlKTtcclxuICBlbmQgPSBzaWduYWw8bnVtYmVyIHwgbnVsbD4obnVsbCk7XHJcbiAgZW5kRGlzcGxheVZhbHVlID0gc2lnbmFsKCcwJyk7XHJcbiAgc2hvd0VuZFRvb2x0aXAgPSBzaWduYWwodHJ1ZSk7XHJcblxyXG4gIG1hcmtMaXN0ID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLm1hcmtzKCkpIHJldHVybiBbXTtcclxuICAgIGNvbnN0IG1hcmtzOiBYU2xpZGVyU2VsZWN0TWFya1tdID0gW107XHJcbiAgICBmb3IgKGxldCBtYXJrIG9mIHRoaXMubWFya3MoKSkge1xyXG4gICAgICBjb25zdCBtazogWFNsaWRlclNlbGVjdE1hcmsgPSB7XHJcbiAgICAgICAgdmFsdWU6IG1hcmsudmFsdWUsXHJcbiAgICAgICAgbGFiZWw6IG1hcmsubGFiZWwsXHJcbiAgICAgICAgc3R5bGU6IHsgLi4ubWFyay5zdHlsZSB9XHJcbiAgICAgIH07XHJcbiAgICAgIG1rLm9mZnNldCA9IHRoaXMuZ2V0T2Zmc2V0KG1hcmsudmFsdWUpO1xyXG5cclxuICAgICAgaWYgKHRoaXMucmV2ZXJzZSgpKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmVydGljYWwoKSkge1xyXG4gICAgICAgICAgbWsuc3R5bGUhWyd0b3AnXSA9IGAke21rLm9mZnNldH0lYDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbWsuc3R5bGUhWydyaWdodCddID0gYCR7bWsub2Zmc2V0fSVgO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodGhpcy52ZXJ0aWNhbCgpKSB7XHJcbiAgICAgICAgICBtay5zdHlsZSFbJ2JvdHRvbSddID0gYCR7bWsub2Zmc2V0fSVgO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBtay5zdHlsZSFbJ2xlZnQnXSA9IGAke21rLm9mZnNldH0lYDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgbWFya3MucHVzaChtayk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbWFya3M7XHJcbiAgfSk7XHJcblxyXG4gIHByaXZhdGUgdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyITogWFJlc2l6ZU9ic2VydmVyO1xyXG4gIGlzTnVtYmVyID0gY29tcHV0ZWQoKCkgPT4gWElzTnVtYmVyKHRoaXMudmFsdWUoKSkgJiYgIVhJc0FycmF5KHRoaXMudmFsdWUoKSkpO1xyXG4gIGlzQXJyYXkgPSBjb21wdXRlZCgoKSA9PiBYSXNBcnJheSh0aGlzLnZhbHVlKCkpKTtcclxuXHJcbiAgY2xhc3NNYXAgPSBjb21wdXRlZCgoKSA9PiAoe1xyXG4gICAgW2B4LWp1c3RpZnktJHt0aGlzLmp1c3RpZnkoKX1gXTogISF0aGlzLmp1c3RpZnkoKSxcclxuICAgIFtgeC1hbGlnbi0ke3RoaXMuYWxpZ24oKX1gXTogISF0aGlzLmFsaWduKCksXHJcbiAgICBbYHgtZGlyZWN0aW9uLSR7dGhpcy5kaXJlY3Rpb24oKX1gXTogISF0aGlzLmRpcmVjdGlvbigpXHJcbiAgfSkpO1xyXG4gIGxhYmVsTWFwU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4gKHtcclxuICAgIFtgeC10ZXh0LWFsaWduLSR7dGhpcy5sYWJlbEFsaWduKCl9YF06ICEhdGhpcy5sYWJlbEFsaWduKClcclxuICB9KSk7XHJcblxyXG4gIHByZWNpc2lvblNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGNvbnN0IHByZWNpc2lvbiA9IHRoaXMucHJlY2lzaW9uKCk7XHJcbiAgICBpZiAoWElzVW5kZWZpbmVkKHByZWNpc2lvbikgfHwgIVhJc0VtcHR5KHRoaXMuc3RlcCgpKSkge1xyXG4gICAgICBsZXQgc3RlcFN0ciA9IFN0cmluZyh0aGlzLnN0ZXAoKSk7XHJcbiAgICAgIGxldCBpbmRleHBvaW50ID0gc3RlcFN0ci5pbmRleE9mKCcuJyk7XHJcbiAgICAgIGlmIChpbmRleHBvaW50ID09PSAtMSkge1xyXG4gICAgICAgIHJldHVybiAwO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBzdGVwU3RyLmxlbmd0aCAtIChpbmRleHBvaW50ICsgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBwcmVjaXNpb247XHJcbiAgfSk7XHJcblxyXG4gIG92ZXJyaWRlIHJlcXVpcmVkSXNFbXB0eSA9IGNvbXB1dGVkKFxyXG4gICAgKCkgPT4gdGhpcy52YWxpZGF0b3JDb21wdXRlZCgpICYmIHRoaXMucmVxdWlyZWRDb21wdXRlZCgpICYmIChYSXNFbXB0eSh0aGlzLnZhbHVlKCkpIHx8IHRoaXMudmFsdWUoKSA9PT0gMClcclxuICApO1xyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIgfCBudW1iZXJbXSkge1xyXG4gICAgaWYgKHRoaXMuc3RhcnRpbmcoKSkgcmV0dXJuO1xyXG4gICAgaWYgKFhJc051bGwodmFsdWUpIHx8IFhJc1VuZGVmaW5lZCh2YWx1ZSkpIHtcclxuICAgICAgaWYgKHRoaXMucmFuZ2UoKSkge1xyXG4gICAgICAgIHZhbHVlID0gW3RoaXMubWluKCksIHRoaXMubWluKCldO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHZhbHVlID0gdGhpcy5taW4oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy52YWx1ZS5zZXQodmFsdWUpO1xyXG4gICAgdGhpcy5zZXRMZWZ0KCk7XHJcbiAgICB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xyXG4gIG92ZXJyaWRlIGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgWFJlc2l6ZSh0aGlzLnNsaWRlclNlbGVjdCgpLm5hdGl2ZUVsZW1lbnQpXHJcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgzMCksIHRha2VVbnRpbCh0aGlzLnVuU3ViamVjdCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyID0geC5yZXNpemVPYnNlcnZlcjtcclxuICAgICAgICB0aGlzLnNldExlZnQoKTtcclxuICAgICAgICB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy51blN1YmplY3QuY29tcGxldGUoKTtcclxuICAgIHRoaXMucmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZSgpIHtcclxuICAgIGNvbnN0IGdldFZhbCA9IChvZmZzZXQ6IG51bWJlcikgPT4ge1xyXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdChcclxuICAgICAgICBOdW1iZXIoKCh0aGlzLm1heCgpIC0gdGhpcy5taW4oKSkgKiBvZmZzZXQpIC8gMTAwICsgdGhpcy5taW4oKSkudG9GaXhlZCh0aGlzLnByZWNpc2lvblNpZ25hbCgpKVxyXG4gICAgICApO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IHN0YXJ0VmFsID0gZ2V0VmFsKHRoaXMuc3RhcnRPZmZzZXQoKSk7XHJcbiAgICBpZiAodGhpcy5pc051bWJlcigpKSB7XHJcbiAgICAgIHRoaXMudmFsdWUuc2V0KHN0YXJ0VmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGVuZFZhbCA9IGdldFZhbCh0aGlzLmVuZE9mZnNldCgpKTtcclxuICAgICAgaWYgKGVuZFZhbCA8IHN0YXJ0VmFsKSB7XHJcbiAgICAgICAgdGhpcy52YWx1ZS5zZXQoW2VuZFZhbCwgc3RhcnRWYWxdKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnZhbHVlLnNldChbc3RhcnRWYWwsIGVuZFZhbF0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUoKSk7XHJcbiAgfVxyXG5cclxuICBnZXRPZmZzZXQodmFsOiBudW1iZXIpIHtcclxuICAgIHJldHVybiBNYXRoLmFicyhcclxuICAgICAgTWF0aC5yb3VuZCgoKHZhbCArICh0aGlzLnJldmVyc2UoKSA/IC10aGlzLm1pbigpIDogdGhpcy5taW4oKSkpICogMTAwKSAvICh0aGlzLm1heCgpIC0gdGhpcy5taW4oKSkpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2V0TGVmdCgpIHtcclxuICAgIGxldCBzdGFydFZhbCA9IDAsXHJcbiAgICAgIGVuZFZhbCA9IDA7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWUoKTtcclxuICAgIGlmICh0aGlzLmlzTnVtYmVyKCkpIHtcclxuICAgICAgc3RhcnRWYWwgPSB2YWx1ZSBhcyBudW1iZXI7XHJcbiAgICB9IGVsc2UgaWYgKFhJc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPiAxKSB7XHJcbiAgICAgIHN0YXJ0VmFsID0gdmFsdWVbMF07XHJcbiAgICAgIGVuZFZhbCA9IHZhbHVlWzFdO1xyXG4gICAgICB0aGlzLmVuZE9mZnNldC5zZXQodGhpcy5nZXRPZmZzZXQoZW5kVmFsKSk7XHJcbiAgICAgIHRoaXMuZW5kLnNldCh0aGlzLmVuZE9mZnNldCgpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN0YXJ0T2Zmc2V0LnNldCh0aGlzLmdldE9mZnNldChzdGFydFZhbCkpO1xyXG4gICAgdGhpcy5zdGFydC5zZXQodGhpcy5zdGFydE9mZnNldCgpKTtcclxuXHJcbiAgICB0aGlzLnNldERyYWcoKTtcclxuICB9XHJcblxyXG4gIHNldERpc3BsYXlWYWx1ZSgpIHtcclxuICAgIGNvbnN0IGRpc3BsYXlWYWwgPSAodmFsOiBudW1iZXIpID0+IHtcclxuICAgICAgcmV0dXJuIE51bWJlcih2YWwpLnRvRml4ZWQodGhpcy5wcmVjaXNpb25TaWduYWwoKSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlKCk7XHJcbiAgICBpZiAodGhpcy5pc051bWJlcigpKSB7XHJcbiAgICAgIHRoaXMuc3RhcnREaXNwbGF5VmFsdWUuc2V0KGRpc3BsYXlWYWwodmFsdWUgYXMgbnVtYmVyKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoWElzQXJyYXkodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICBpZiAodGhpcy5zdGFydE9mZnNldCgpID4gdGhpcy5lbmRPZmZzZXQoKSkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydERpc3BsYXlWYWx1ZS5zZXQoZGlzcGxheVZhbCh2YWx1ZVsxXSkpO1xyXG4gICAgICAgICAgdGhpcy5lbmREaXNwbGF5VmFsdWUuc2V0KGRpc3BsYXlWYWwodmFsdWVbMF0pKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zdGFydERpc3BsYXlWYWx1ZS5zZXQoZGlzcGxheVZhbCh2YWx1ZVswXSkpO1xyXG4gICAgICAgICAgdGhpcy5lbmREaXNwbGF5VmFsdWUuc2V0KGRpc3BsYXlWYWwodmFsdWVbMV0pKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXJ0ZWQoZHJhZzogQ2RrRHJhZ1N0YXJ0LCB0eXBlOiAnc3RhcnQnIHwgJ2VuZCcgfCAnYm90aCcgPSAnc3RhcnQnKSB7XHJcbiAgICB0aGlzLnN0YXJ0aW5nLnNldCh0cnVlKTtcclxuICAgIGlmIChbJ3N0YXJ0JywgJ2JvdGgnXS5pbmNsdWRlcyh0eXBlKSkge1xyXG4gICAgICBjb25zdCBzdGFydCA9IHRoaXMuc3RhcnRPZmZzZXQoKTtcclxuICAgICAgdGhpcy5zdGFydC5zZXQoc3RhcnQpO1xyXG4gICAgICBpZiAodGhpcy5zaG93U3RhcnRUb29sdGlwKCkpIHtcclxuICAgICAgICB0aGlzLnN0YXJ0TWFudWFsLnNldCh0cnVlKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VmlzaWJsZS5zZXQodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChbJ2VuZCcsICdib3RoJ10uaW5jbHVkZXModHlwZSkpIHtcclxuICAgICAgY29uc3QgZW5kID0gdGhpcy5lbmRPZmZzZXQoKTtcclxuICAgICAgdGhpcy5lbmQuc2V0KGVuZCk7XHJcbiAgICAgIGlmICh0aGlzLnNob3dFbmRUb29sdGlwKCkpIHtcclxuICAgICAgICB0aGlzLmVuZE1hbnVhbC5zZXQodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5lbmRWaXNpYmxlLnNldCh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgdGhpcy5kcmFnU3RhcnRFbWl0LmVtaXQoZHJhZyk7XHJcbiAgfVxyXG5cclxuICBtb3ZlZChkcmFnOiBDZGtEcmFnTW92ZSwgdHlwZTogJ3N0YXJ0JyB8ICdlbmQnIHwgJ2JvdGgnID0gJ3N0YXJ0Jykge1xyXG4gICAgbGV0IHRyYW5zZm9ybSA9IGRyYWcuc291cmNlLmdldEZyZWVEcmFnUG9zaXRpb24oKTtcclxuICAgIHRoaXMuc2V0RHJhZyh0aGlzLnZlcnRpY2FsKCkgPyB0cmFuc2Zvcm0ueSA6IHRyYW5zZm9ybS54LCB0eXBlKTtcclxuICAgIGRyYWcuc291cmNlLnJlc2V0KCk7XHJcbiAgICBpZiAoWydzdGFydCcsICdib3RoJ10uaW5jbHVkZXModHlwZSkgJiYgdGhpcy5zaG93U3RhcnRUb29sdGlwKCkpIHtcclxuICAgICAgdGhpcy50b29sdGlwU3RhcnQoKT8udXBkYXRlUG9ydGFsKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoWydlbmQnLCAnYm90aCddLmluY2x1ZGVzKHR5cGUpICYmIHRoaXMuc2hvd0VuZFRvb2x0aXAoKSkge1xyXG4gICAgICB0aGlzLnRvb2x0aXBFbmQoKT8udXBkYXRlUG9ydGFsKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoYW5nZSgpO1xyXG4gICAgdGhpcy5kcmFnTW92ZUVtaXQuZW1pdChkcmFnKTtcclxuICB9XHJcblxyXG4gIGVuZGVkKGRyYWc6IENka0RyYWdFbmQsIHR5cGU6ICdzdGFydCcgfCAnZW5kJyB8ICdib3RoJyA9ICdzdGFydCcpIHtcclxuICAgIGlmIChbJ3N0YXJ0JywgJ2JvdGgnXS5pbmNsdWRlcyh0eXBlKSkge1xyXG4gICAgICBpZiAodGhpcy5zaG93U3RhcnRUb29sdGlwKCkpIHtcclxuICAgICAgICB0aGlzLnN0YXJ0TWFudWFsLnNldChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5zdGFydFZpc2libGUuc2V0KGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKFsnZW5kJywgJ2JvdGgnXS5pbmNsdWRlcyh0eXBlKSkge1xyXG4gICAgICBpZiAodGhpcy5zaG93RW5kVG9vbHRpcCgpKSB7XHJcbiAgICAgICAgdGhpcy5lbmRNYW51YWwuc2V0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLmVuZFZpc2libGUuc2V0KGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5zdGFydGluZy5zZXQoZmFsc2UpO1xyXG4gICAgdGhpcy5kcmFnRW5kRW1pdC5lbWl0KGRyYWcpO1xyXG4gIH1cclxuXHJcbiAgc2V0RHJhZyhkaXN0YW5jZTogbnVtYmVyID0gMCwgdHlwZTogJ3N0YXJ0JyB8ICdlbmQnIHwgJ2JvdGgnID0gJ2JvdGgnKSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMucmFpbFJlZigpLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0ICE9PSAnZnVuY3Rpb24nKSByZXR1cm47XHJcbiAgICBsZXQgcmFpbEJveCA9IHRoaXMucmFpbFJlZigpLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICBsZXQgcmFpbEJveExlbmd0aCA9IHRoaXMudmVydGljYWwoKSA/IHJhaWxCb3guaGVpZ2h0IDogcmFpbEJveC53aWR0aDtcclxuICAgIGxldCBzdGVwTGVuZ3RoID0gcmFpbEJveExlbmd0aCAvICgodGhpcy5tYXgoKSAtIHRoaXMubWluKCkpIC8gdGhpcy5zdGVwKCkpO1xyXG4gICAgbGV0IG9mZnNldCA9IE1hdGguYWJzKGRpc3RhbmNlICUgc3RlcExlbmd0aCk7XHJcbiAgICBsZXQgZGlzID1cclxuICAgICAgb2Zmc2V0IDwgc3RlcExlbmd0aCAvIDJcclxuICAgICAgICA/IGRpc3RhbmNlID4gMFxyXG4gICAgICAgICAgPyBkaXN0YW5jZSAtIG9mZnNldFxyXG4gICAgICAgICAgOiBkaXN0YW5jZSArIG9mZnNldFxyXG4gICAgICAgIDogZGlzdGFuY2UgPiAwXHJcbiAgICAgICAgICA/IGRpc3RhbmNlICsgc3RlcExlbmd0aCAtIG9mZnNldFxyXG4gICAgICAgICAgOiBkaXN0YW5jZSAtIHN0ZXBMZW5ndGggKyBvZmZzZXQ7XHJcblxyXG4gICAgY29uc3Qgc2V0T2Zmc2V0ID0gKGQ6IG51bWJlcikgPT4ge1xyXG4gICAgICBsZXQgeDEgPSAoZCAvIDEwMCkgKiByYWlsQm94TGVuZ3RoO1xyXG4gICAgICBpZiAodGhpcy52ZXJ0aWNhbCgpKSB7XHJcbiAgICAgICAgeDEgKz0gdGhpcy5yZXZlcnNlKCkgPyBkaXMgOiAtZGlzO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHgxICs9IHRoaXMucmV2ZXJzZSgpID8gLWRpcyA6IGRpcztcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCgoeDEgLyByYWlsQm94TGVuZ3RoKSAqIDEwMCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGlmICh0eXBlID09PSAnYm90aCcpIHtcclxuICAgICAgdGhpcy5zdGFydE9mZnNldC5zZXQoc2V0T2Zmc2V0KHRoaXMuc3RhcnQoKSEpKTtcclxuICAgICAgdGhpcy5lbmRPZmZzZXQuc2V0KHNldE9mZnNldCh0aGlzLmVuZCgpISkpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnc3RhcnQnKSB7XHJcbiAgICAgIHRoaXMuc3RhcnRPZmZzZXQuc2V0KHNldE9mZnNldCh0aGlzLnN0YXJ0KCkhKSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdlbmQnKSB7XHJcbiAgICAgIHRoaXMuZW5kT2Zmc2V0LnNldChzZXRPZmZzZXQodGhpcy5lbmQoKSEpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNldERyYWdTdHlsZXMoKTtcclxuICB9XHJcblxyXG4gIHNldERyYWdTdHlsZXMoKSB7XHJcbiAgICBpZiAodGhpcy52ZXJ0aWNhbCgpKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzQXJyYXkoKSkge1xyXG4gICAgICAgIGNvbnN0IHdkID0gTWF0aC5hYnModGhpcy5lbmRPZmZzZXQoKSAtIHRoaXMuc3RhcnRPZmZzZXQoKSk7XHJcbiAgICAgICAgY29uc3QgbHQgPSB0aGlzLmVuZE9mZnNldCgpID4gdGhpcy5zdGFydE9mZnNldCgpID8gdGhpcy5zdGFydE9mZnNldCgpIDogdGhpcy5lbmRPZmZzZXQoKTtcclxuICAgICAgICBpZiAodGhpcy5yZXZlcnNlKCkpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kcmFnU3RhcnRSZWYoKS5uYXRpdmVFbGVtZW50LCAndG9wJywgYCR7dGhpcy5zdGFydE9mZnNldCgpfSVgKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kcmFnRW5kUmVmKCkubmF0aXZlRWxlbWVudCwgJ3RvcCcsIGAke3RoaXMuZW5kT2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAndG9wJywgYCR7bHR9JWApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ2JvdHRvbScsIGAke3RoaXMuc3RhcnRPZmZzZXQoKX0lYCk7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ0VuZFJlZigpLm5hdGl2ZUVsZW1lbnQsICdib3R0b20nLCBgJHt0aGlzLmVuZE9mZnNldCgpfSVgKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wcm9jZXNzUmVmKCkubmF0aXZlRWxlbWVudCwgJ2JvdHRvbScsIGAke2x0fSVgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgYCR7d2R9JWApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLnJldmVyc2UoKSkge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdTdGFydFJlZigpLm5hdGl2ZUVsZW1lbnQsICd0b3AnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ2JvdHRvbScsIGAke3RoaXMuc3RhcnRPZmZzZXQoKX0lYCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wcm9jZXNzUmVmKCkubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke3RoaXMuc3RhcnRPZmZzZXQoKX0lYCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmlzQXJyYXkoKSkge1xyXG4gICAgICAgIGNvbnN0IHdkID0gTWF0aC5hYnModGhpcy5lbmRPZmZzZXQoKSAtIHRoaXMuc3RhcnRPZmZzZXQoKSk7XHJcbiAgICAgICAgY29uc3QgbHQgPSB0aGlzLmVuZE9mZnNldCgpID4gdGhpcy5zdGFydE9mZnNldCgpID8gdGhpcy5zdGFydE9mZnNldCgpIDogdGhpcy5lbmRPZmZzZXQoKTtcclxuICAgICAgICBpZiAodGhpcy5yZXZlcnNlKCkpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kcmFnU3RhcnRSZWYoKS5uYXRpdmVFbGVtZW50LCAncmlnaHQnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdFbmRSZWYoKS5uYXRpdmVFbGVtZW50LCAncmlnaHQnLCBgJHt0aGlzLmVuZE9mZnNldCgpfSVgKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wcm9jZXNzUmVmKCkubmF0aXZlRWxlbWVudCwgJ3JpZ2h0JywgYCR7bHR9JWApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ2xlZnQnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdFbmRSZWYoKS5uYXRpdmVFbGVtZW50LCAnbGVmdCcsIGAke3RoaXMuZW5kT2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnbGVmdCcsIGAke2x0fSVgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgJHt3ZH0lYCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMucmV2ZXJzZSgpKSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ3JpZ2h0JywgYCR7dGhpcy5zdGFydE9mZnNldCgpfSVgKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdTdGFydFJlZigpLm5hdGl2ZUVsZW1lbnQsICdsZWZ0JywgYCR7dGhpcy5zdGFydE9mZnNldCgpfSVgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAjc2xpZGVyU2VsZWN0XHJcbiAgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3RcIlxyXG4gIFtjbGFzcy54LWZsZXhdPVwianVzdGlmeSgpIHx8IGFsaWduKCkgfHwgZGlyZWN0aW9uKClcIlxyXG4gIFtjbGFzcy54LWRpc2FibGVkXT1cImRpc2FibGVkQ29tcHV0ZWQoKVwiXHJcbiAgW2NsYXNzLngtcmVxdWlyZWRdPVwicmVxdWlyZWRJc0VtcHR5KClcIlxyXG4gIFtjbGFzcy54LWludmFsaWRdPVwiaW52YWxpZCgpXCJcclxuICBbY2xhc3MueC1zbGlkZXItc2VsZWN0LXJldmVyc2VdPVwicmV2ZXJzZSgpXCJcclxuICBbY2xhc3MueC1zbGlkZXItc2VsZWN0LXJhbmdlXT1cInJhbmdlKClcIlxyXG4gIFtuZ0NsYXNzXT1cImNsYXNzTWFwKClcIlxyXG4+XHJcbiAgQGlmIChsYWJlbCgpKSB7XHJcbiAgICA8bGFiZWxcclxuICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1sYWJlbC1yZXF1aXJlZF09XCJyZXF1aXJlZENvbXB1dGVkKClcIlxyXG4gICAgICBbc3R5bGUud2lkdGhdPVwibGFiZWxXaWR0aCgpXCJcclxuICAgICAgW25nQ2xhc3NdPVwibGFiZWxNYXBTaWduYWwoKVwiXHJcbiAgICAgID57eyBsYWJlbCgpIH19PC9sYWJlbFxyXG4gICAgPlxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPVwieC1zbGlkZXItc2VsZWN0LWlubmVyXCIgI2lubmVyUmVmPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC1yYWlsXCIgI3JhaWxSZWY+XHJcbiAgICAgIDxkaXY+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtZHJhZ3NcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC10cmFja1wiICN0cmFja1JlZj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAjcHJvY2Vzc1JlZlxyXG4gICAgICAgICAgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtcHJvY2Vzc1wiXHJcbiAgICAgICAgICBjZGtEcmFnXHJcbiAgICAgICAgICBbY2RrRHJhZ0xvY2tBeGlzXT1cInZlcnRpY2FsKCkgPyAneScgOiAneCdcIlxyXG4gICAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCJkaXNhYmxlZENvbXB1dGVkKCkgfHwgIXJhbmdlKClcIlxyXG4gICAgICAgICAgW2Nka0RyYWdCb3VuZGFyeV09XCJ0cmFja1JlZlwiXHJcbiAgICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwic3RhcnRlZCgkZXZlbnQsICdib3RoJylcIlxyXG4gICAgICAgICAgKGNka0RyYWdFbmRlZCk9XCJlbmRlZCgkZXZlbnQsICdib3RoJylcIlxyXG4gICAgICAgICAgKGNka0RyYWdNb3ZlZCk9XCJtb3ZlZCgkZXZlbnQsICdib3RoJylcIlxyXG4gICAgICAgID48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtbWFya3NcIj5cclxuICAgICAgICBAZm9yIChtYXJrIG9mIG1hcmtMaXN0KCk7IHRyYWNrIG1hcmsubGFiZWwpIHtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtbWFya1wiIFtuZ1N0eWxlXT1cIm1hcmsuc3R5bGVcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtbWFyay1sYWJlbFwiPnt7IG1hcmsubGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgI2RyYWdTdGFydFJlZlxyXG4gICAgICAgIGNsYXNzPVwieC1zbGlkZXItc2VsZWN0LWRyYWdcIlxyXG4gICAgICAgIGNka0RyYWdcclxuICAgICAgICBbY2RrRHJhZ0xvY2tBeGlzXT1cInZlcnRpY2FsKCkgPyAneScgOiAneCdcIlxyXG4gICAgICAgIFtjZGtEcmFnRGlzYWJsZWRdPVwiZGlzYWJsZWRDb21wdXRlZCgpXCJcclxuICAgICAgICBbY2RrRHJhZ0JvdW5kYXJ5XT1cImlubmVyUmVmXCJcclxuICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwic3RhcnRlZCgkZXZlbnQsICdzdGFydCcpXCJcclxuICAgICAgICAoY2RrRHJhZ0VuZGVkKT1cImVuZGVkKCRldmVudCwgJ3N0YXJ0JylcIlxyXG4gICAgICAgIChjZGtEcmFnTW92ZWQpPVwibW92ZWQoJGV2ZW50LCAnc3RhcnQnKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAjdG9vbHRpcFN0YXJ0XHJcbiAgICAgICAgICB4LXRvb2x0aXBcclxuICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC1idXR0b25cIlxyXG4gICAgICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1idXR0b24tYWN0aXZlZF09XCJzdGFydFZpc2libGUoKVwiXHJcbiAgICAgICAgICBbY2xhc3MueC1zbGlkZXItc2VsZWN0LWN1c3RvbS1idXR0b25dPVwiY3VzdG9tQnV0dG9uKClcIlxyXG4gICAgICAgICAgcGxhY2VtZW50PVwidG9wXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2hvd1Rvb2x0aXAoKSAmJiAhc2hvd1N0YXJ0VG9vbHRpcCgpXCJcclxuICAgICAgICAgIFtjb250ZW50XT1cInRvb2x0aXBTdGFydFRwbFwiXHJcbiAgICAgICAgICBbKHZpc2libGUpXT1cInN0YXJ0VmlzaWJsZVwiXHJcbiAgICAgICAgICBbbWFudWFsXT1cInN0YXJ0TWFudWFsKClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJjdXN0b21CdXR0b24oKVwiPnt7IGN1c3RvbUJ1dHRvbigpIH19PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICN0b29sdGlwU3RhcnRUcGw+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidG9vbHRpcEN1c3RvbSgpOyBjb250ZXh0OiB7ICR2YWx1ZTogc3RhcnREaXNwbGF5VmFsdWUoKSB9XCI+e3tcclxuICAgICAgICAgICAgc3RhcnREaXNwbGF5VmFsdWUoKVxyXG4gICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIFtoaWRkZW5dPVwiIXJhbmdlKClcIlxyXG4gICAgICAgICNkcmFnRW5kUmVmXHJcbiAgICAgICAgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtZHJhZ1wiXHJcbiAgICAgICAgY2RrRHJhZ1xyXG4gICAgICAgIFtjZGtEcmFnTG9ja0F4aXNdPVwidmVydGljYWwoKSA/ICd5JyA6ICd4J1wiXHJcbiAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCJkaXNhYmxlZENvbXB1dGVkKClcIlxyXG4gICAgICAgIFtjZGtEcmFnQm91bmRhcnldPVwiaW5uZXJSZWZcIlxyXG4gICAgICAgIChjZGtEcmFnU3RhcnRlZCk9XCJzdGFydGVkKCRldmVudCwgJ2VuZCcpXCJcclxuICAgICAgICAoY2RrRHJhZ0VuZGVkKT1cImVuZGVkKCRldmVudCwgJ2VuZCcpXCJcclxuICAgICAgICAoY2RrRHJhZ01vdmVkKT1cIm1vdmVkKCRldmVudCwgJ2VuZCcpXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICN0b29sdGlwRW5kXHJcbiAgICAgICAgICB4LXRvb2x0aXBcclxuICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC1idXR0b25cIlxyXG4gICAgICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1idXR0b24tYWN0aXZlZF09XCJlbmRWaXNpYmxlKClcIlxyXG4gICAgICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1jdXN0b20tYnV0dG9uXT1cImN1c3RvbUJ1dHRvbigpXCJcclxuICAgICAgICAgIHBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNob3dUb29sdGlwKCkgJiYgIXNob3dFbmRUb29sdGlwKClcIlxyXG4gICAgICAgICAgW2NvbnRlbnRdPVwidG9vbHRpcEVuZFRwbFwiXHJcbiAgICAgICAgICBbKHZpc2libGUpXT1cImVuZFZpc2libGVcIlxyXG4gICAgICAgICAgW21hbnVhbF09XCJlbmRNYW51YWwoKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqeE91dGxldD1cImN1c3RvbUJ1dHRvbigpXCI+e3sgY3VzdG9tQnV0dG9uKCkgfX08L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI3Rvb2x0aXBFbmRUcGw+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidG9vbHRpcEN1c3RvbSgpOyBjb250ZXh0OiB7ICR2YWx1ZTogZW5kRGlzcGxheVZhbHVlKCkgfVwiPnt7XHJcbiAgICAgICAgICAgIGVuZERpc3BsYXlWYWx1ZSgpXHJcbiAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
363
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVyLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9zbGlkZXItc2VsZWN0L3NsaWRlci1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvc2xpZGVyLXNlbGVjdC9zbGlkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFHVixXQUFXLEVBQ1gsTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQXFCLE1BQU0sMEJBQTBCLENBQUM7QUFDekcsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFtQixTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9B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aS90b29sdGlwJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgaW5qZWN0LFxyXG4gIHNpZ25hbCxcclxuICB2aWV3Q2hpbGQsXHJcbiAgdmlld0NoaWxkcmVuLFxyXG4gIGNvbXB1dGVkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhTbGlkZXJTZWxlY3RQcm9wZXJ0eSwgWFNsaWRlclNlbGVjdFByZWZpeCwgWFNsaWRlclNlbGVjdE1hcmsgfSBmcm9tICcuL3NsaWRlci1zZWxlY3QucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSwgWElzVW5kZWZpbmVkLCBYUmVzaXplLCBYUmVzaXplT2JzZXJ2ZXIsIFhJc051bWJlciwgWElzQXJyYXksIFhJc051bGwgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgWFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbmctbmVzdC91aS9iYXNlLWZvcm0nO1xyXG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFhEcmFnRGlyZWN0aXZlIH0gZnJvbSAnQG5nLW5lc3QvdWkvZHJhZyc7XHJcbmltcG9ydCB7IFhPdXRsZXREaXJlY3RpdmUgfSBmcm9tICdAbmctbmVzdC91aS9vdXRsZXQnO1xyXG5pbXBvcnQgdHlwZSB7IENka0RyYWdNb3ZlLCBDZGtEcmFnU3RhcnQsIENka0RyYWdFbmQgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYU2xpZGVyU2VsZWN0UHJlZml4fWAsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0NsYXNzLFxyXG4gICAgTmdTdHlsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgWFRvb2x0aXBEaXJlY3RpdmUsXHJcbiAgICBYRHJhZ0RpcmVjdGl2ZSxcclxuICAgIFhPdXRsZXREaXJlY3RpdmVcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zbGlkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zbGlkZXItc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtYVmFsdWVBY2Nlc3NvcihYU2xpZGVyU2VsZWN0Q29tcG9uZW50KV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhTbGlkZXJTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBYU2xpZGVyU2VsZWN0UHJvcGVydHkgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xyXG4gIHNsaWRlclNlbGVjdCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ3NsaWRlclNlbGVjdCcpO1xyXG4gIGRyYWdTdGFydFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2RyYWdTdGFydFJlZicpO1xyXG4gIGRyYWdFbmRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdkcmFnRW5kUmVmJyk7XHJcbiAgcmFpbFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ3JhaWxSZWYnKTtcclxuICBwcm9jZXNzUmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PigncHJvY2Vzc1JlZicpO1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MueC1zbGlkZXItc2VsZWN0LXZlcnRpY2FsJykgZ2V0IGdldFZlcnRpY2FsKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmVydGljYWwoKTtcclxuICB9XHJcbiAgdG9vbHRpcHMgPSB2aWV3Q2hpbGRyZW4oWFRvb2x0aXBEaXJlY3RpdmUpO1xyXG4gIHRvb2x0aXBTdGFydCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGlmICh0aGlzLnRvb2x0aXBzKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICByZXR1cm4gdGhpcy50b29sdGlwcygpIVswXTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH0pO1xyXG4gIHRvb2x0aXBFbmQgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBpZiAodGhpcy50b29sdGlwcygpLmxlbmd0aCA+IDEpIHtcclxuICAgICAgcmV0dXJuIHRoaXMudG9vbHRpcHMoKSFbMV07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9KTtcclxuXHJcbiAgb3ZlcnJpZGUgdmFsdWUgPSBzaWduYWw8bnVtYmVyIHwgbnVtYmVyW10+KDApO1xyXG4gIHN0YXJ0aW5nID0gc2lnbmFsKGZhbHNlKTtcclxuXHJcbiAgc3RhcnRPZmZzZXQgPSBzaWduYWwoMCk7XHJcbiAgc3RhcnRWaXNpYmxlID0gc2lnbmFsKGZhbHNlKTtcclxuICBzdGFydE1hbnVhbCA9IHNpZ25hbChmYWxzZSk7XHJcbiAgc3RhcnQgPSBzaWduYWw8bnVtYmVyIHwgbnVsbD4obnVsbCk7XHJcbiAgc3RhcnREaXNwbGF5VmFsdWUgPSBzaWduYWwoJzAnKTtcclxuICBzaG93U3RhcnRUb29sdGlwID0gc2lnbmFsKHRydWUpO1xyXG5cclxuICBlbmRPZmZzZXQgPSBzaWduYWwoMCk7XHJcbiAgZW5kVmlzaWJsZSA9IHNpZ25hbChmYWxzZSk7XHJcbiAgZW5kTWFudWFsID0gc2lnbmFsKGZhbHNlKTtcclxuICBlbmQgPSBzaWduYWw8bnVtYmVyIHwgbnVsbD4obnVsbCk7XHJcbiAgZW5kRGlzcGxheVZhbHVlID0gc2lnbmFsKCcwJyk7XHJcbiAgc2hvd0VuZFRvb2x0aXAgPSBzaWduYWwodHJ1ZSk7XHJcblxyXG4gIG1hcmtMaXN0ID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLm1hcmtzKCkpIHJldHVybiBbXTtcclxuICAgIGNvbnN0IG1hcmtzOiBYU2xpZGVyU2VsZWN0TWFya1tdID0gW107XHJcbiAgICBmb3IgKGxldCBtYXJrIG9mIHRoaXMubWFya3MoKSkge1xyXG4gICAgICBjb25zdCBtazogWFNsaWRlclNlbGVjdE1hcmsgPSB7XHJcbiAgICAgICAgdmFsdWU6IG1hcmsudmFsdWUsXHJcbiAgICAgICAgbGFiZWw6IG1hcmsubGFiZWwsXHJcbiAgICAgICAgc3R5bGU6IHsgLi4ubWFyay5zdHlsZSB9XHJcbiAgICAgIH07XHJcbiAgICAgIG1rLm9mZnNldCA9IHRoaXMuZ2V0T2Zmc2V0KG1hcmsudmFsdWUpO1xyXG5cclxuICAgICAgaWYgKHRoaXMucmV2ZXJzZSgpKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmVydGljYWwoKSkge1xyXG4gICAgICAgICAgbWsuc3R5bGUhWyd0b3AnXSA9IGAke21rLm9mZnNldH0lYDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbWsuc3R5bGUhWydyaWdodCddID0gYCR7bWsub2Zmc2V0fSVgO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodGhpcy52ZXJ0aWNhbCgpKSB7XHJcbiAgICAgICAgICBtay5zdHlsZSFbJ2JvdHRvbSddID0gYCR7bWsub2Zmc2V0fSVgO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBtay5zdHlsZSFbJ2xlZnQnXSA9IGAke21rLm9mZnNldH0lYDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgbWFya3MucHVzaChtayk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbWFya3M7XHJcbiAgfSk7XHJcblxyXG4gIHByaXZhdGUgdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyITogWFJlc2l6ZU9ic2VydmVyO1xyXG4gIGlzTnVtYmVyID0gY29tcHV0ZWQoKCkgPT4gWElzTnVtYmVyKHRoaXMudmFsdWUoKSkgJiYgIVhJc0FycmF5KHRoaXMudmFsdWUoKSkpO1xyXG4gIGlzQXJyYXkgPSBjb21wdXRlZCgoKSA9PiBYSXNBcnJheSh0aGlzLnZhbHVlKCkpKTtcclxuXHJcbiAgY2xhc3NNYXAgPSBjb21wdXRlZCgoKSA9PiAoe1xyXG4gICAgW2B4LWp1c3RpZnktJHt0aGlzLmp1c3RpZnkoKX1gXTogISF0aGlzLmp1c3RpZnkoKSxcclxuICAgIFtgeC1hbGlnbi0ke3RoaXMuYWxpZ24oKX1gXTogISF0aGlzLmFsaWduKCksXHJcbiAgICBbYHgtZGlyZWN0aW9uLSR7dGhpcy5kaXJlY3Rpb24oKX1gXTogISF0aGlzLmRpcmVjdGlvbigpXHJcbiAgfSkpO1xyXG4gIGxhYmVsTWFwU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4gKHtcclxuICAgIFtgeC10ZXh0LWFsaWduLSR7dGhpcy5sYWJlbEFsaWduKCl9YF06ICEhdGhpcy5sYWJlbEFsaWduKClcclxuICB9KSk7XHJcblxyXG4gIHByZWNpc2lvblNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGNvbnN0IHByZWNpc2lvbiA9IHRoaXMucHJlY2lzaW9uKCk7XHJcbiAgICBpZiAoWElzVW5kZWZpbmVkKHByZWNpc2lvbikgfHwgIVhJc0VtcHR5KHRoaXMuc3RlcCgpKSkge1xyXG4gICAgICBsZXQgc3RlcFN0ciA9IFN0cmluZyh0aGlzLnN0ZXAoKSk7XHJcbiAgICAgIGxldCBpbmRleHBvaW50ID0gc3RlcFN0ci5pbmRleE9mKCcuJyk7XHJcbiAgICAgIGlmIChpbmRleHBvaW50ID09PSAtMSkge1xyXG4gICAgICAgIHJldHVybiAwO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBzdGVwU3RyLmxlbmd0aCAtIChpbmRleHBvaW50ICsgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBwcmVjaXNpb247XHJcbiAgfSk7XHJcblxyXG4gIG92ZXJyaWRlIHJlcXVpcmVkSXNFbXB0eSA9IGNvbXB1dGVkKFxyXG4gICAgKCkgPT4gdGhpcy52YWxpZGF0b3JDb21wdXRlZCgpICYmIHRoaXMucmVxdWlyZWRDb21wdXRlZCgpICYmIChYSXNFbXB0eSh0aGlzLnZhbHVlKCkpIHx8IHRoaXMudmFsdWUoKSA9PT0gMClcclxuICApO1xyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIgfCBudW1iZXJbXSkge1xyXG4gICAgaWYgKHRoaXMuc3RhcnRpbmcoKSkgcmV0dXJuO1xyXG4gICAgaWYgKFhJc051bGwodmFsdWUpIHx8IFhJc1VuZGVmaW5lZCh2YWx1ZSkpIHtcclxuICAgICAgaWYgKHRoaXMucmFuZ2UoKSkge1xyXG4gICAgICAgIHZhbHVlID0gW3RoaXMubWluKCksIHRoaXMubWluKCldO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHZhbHVlID0gdGhpcy5taW4oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy52YWx1ZS5zZXQodmFsdWUpO1xyXG4gICAgdGhpcy5zZXRMZWZ0KCk7XHJcbiAgICB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xyXG4gIG92ZXJyaWRlIGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgWFJlc2l6ZSh0aGlzLnNsaWRlclNlbGVjdCgpLm5hdGl2ZUVsZW1lbnQpXHJcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgzMCksIHRha2VVbnRpbCh0aGlzLnVuU3ViamVjdCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyID0geC5yZXNpemVPYnNlcnZlcjtcclxuICAgICAgICB0aGlzLnNldExlZnQoKTtcclxuICAgICAgICB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy51blN1YmplY3QuY29tcGxldGUoKTtcclxuICAgIHRoaXMucmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZSgpIHtcclxuICAgIGNvbnN0IGdldFZhbCA9IChvZmZzZXQ6IG51bWJlcikgPT4ge1xyXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdChcclxuICAgICAgICBOdW1iZXIoKCh0aGlzLm1heCgpIC0gdGhpcy5taW4oKSkgKiBvZmZzZXQpIC8gMTAwICsgdGhpcy5taW4oKSkudG9GaXhlZCh0aGlzLnByZWNpc2lvblNpZ25hbCgpKVxyXG4gICAgICApO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IHN0YXJ0VmFsID0gZ2V0VmFsKHRoaXMuc3RhcnRPZmZzZXQoKSk7XHJcbiAgICBpZiAodGhpcy5pc051bWJlcigpKSB7XHJcbiAgICAgIHRoaXMudmFsdWUuc2V0KHN0YXJ0VmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGVuZFZhbCA9IGdldFZhbCh0aGlzLmVuZE9mZnNldCgpKTtcclxuICAgICAgaWYgKGVuZFZhbCA8IHN0YXJ0VmFsKSB7XHJcbiAgICAgICAgdGhpcy52YWx1ZS5zZXQoW2VuZFZhbCwgc3RhcnRWYWxdKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnZhbHVlLnNldChbc3RhcnRWYWwsIGVuZFZhbF0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUoKSk7XHJcbiAgfVxyXG5cclxuICBnZXRPZmZzZXQodmFsOiBudW1iZXIpIHtcclxuICAgIHJldHVybiBNYXRoLmFicyhcclxuICAgICAgTWF0aC5yb3VuZCgoKHZhbCArICh0aGlzLnJldmVyc2UoKSA/IC10aGlzLm1pbigpIDogdGhpcy5taW4oKSkpICogMTAwKSAvICh0aGlzLm1heCgpIC0gdGhpcy5taW4oKSkpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2V0TGVmdCgpIHtcclxuICAgIGxldCBzdGFydFZhbCA9IDAsXHJcbiAgICAgIGVuZFZhbCA9IDA7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWUoKTtcclxuICAgIGlmICh0aGlzLmlzTnVtYmVyKCkpIHtcclxuICAgICAgc3RhcnRWYWwgPSB2YWx1ZSBhcyBudW1iZXI7XHJcbiAgICB9IGVsc2UgaWYgKFhJc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPiAxKSB7XHJcbiAgICAgIHN0YXJ0VmFsID0gdmFsdWVbMF07XHJcbiAgICAgIGVuZFZhbCA9IHZhbHVlWzFdO1xyXG4gICAgICB0aGlzLmVuZE9mZnNldC5zZXQodGhpcy5nZXRPZmZzZXQoZW5kVmFsKSk7XHJcbiAgICAgIHRoaXMuZW5kLnNldCh0aGlzLmVuZE9mZnNldCgpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN0YXJ0T2Zmc2V0LnNldCh0aGlzLmdldE9mZnNldChzdGFydFZhbCkpO1xyXG4gICAgdGhpcy5zdGFydC5zZXQodGhpcy5zdGFydE9mZnNldCgpKTtcclxuXHJcbiAgICB0aGlzLnNldERyYWcoKTtcclxuICB9XHJcblxyXG4gIHNldERpc3BsYXlWYWx1ZSgpIHtcclxuICAgIGNvbnN0IGRpc3BsYXlWYWwgPSAodmFsOiBudW1iZXIpID0+IHtcclxuICAgICAgcmV0dXJuIE51bWJlcih2YWwpLnRvRml4ZWQodGhpcy5wcmVjaXNpb25TaWduYWwoKSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlKCk7XHJcbiAgICBpZiAodGhpcy5pc051bWJlcigpKSB7XHJcbiAgICAgIHRoaXMuc3RhcnREaXNwbGF5VmFsdWUuc2V0KGRpc3BsYXlWYWwodmFsdWUgYXMgbnVtYmVyKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoWElzQXJyYXkodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICBpZiAodGhpcy5zdGFydE9mZnNldCgpID4gdGhpcy5lbmRPZmZzZXQoKSkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydERpc3BsYXlWYWx1ZS5zZXQoZGlzcGxheVZhbCh2YWx1ZVsxXSkpO1xyXG4gICAgICAgICAgdGhpcy5lbmREaXNwbGF5VmFsdWUuc2V0KGRpc3BsYXlWYWwodmFsdWVbMF0pKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zdGFydERpc3BsYXlWYWx1ZS5zZXQoZGlzcGxheVZhbCh2YWx1ZVswXSkpO1xyXG4gICAgICAgICAgdGhpcy5lbmREaXNwbGF5VmFsdWUuc2V0KGRpc3BsYXlWYWwodmFsdWVbMV0pKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXJ0ZWQoZHJhZzogQ2RrRHJhZ1N0YXJ0LCB0eXBlOiAnc3RhcnQnIHwgJ2VuZCcgfCAnYm90aCcgPSAnc3RhcnQnKSB7XHJcbiAgICB0aGlzLnN0YXJ0aW5nLnNldCh0cnVlKTtcclxuICAgIGlmIChbJ3N0YXJ0JywgJ2JvdGgnXS5pbmNsdWRlcyh0eXBlKSkge1xyXG4gICAgICBjb25zdCBzdGFydCA9IHRoaXMuc3RhcnRPZmZzZXQoKTtcclxuICAgICAgdGhpcy5zdGFydC5zZXQoc3RhcnQpO1xyXG4gICAgICBpZiAodGhpcy5zaG93U3RhcnRUb29sdGlwKCkpIHtcclxuICAgICAgICB0aGlzLnN0YXJ0TWFudWFsLnNldCh0cnVlKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VmlzaWJsZS5zZXQodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChbJ2VuZCcsICdib3RoJ10uaW5jbHVkZXModHlwZSkpIHtcclxuICAgICAgY29uc3QgZW5kID0gdGhpcy5lbmRPZmZzZXQoKTtcclxuICAgICAgdGhpcy5lbmQuc2V0KGVuZCk7XHJcbiAgICAgIGlmICh0aGlzLnNob3dFbmRUb29sdGlwKCkpIHtcclxuICAgICAgICB0aGlzLmVuZE1hbnVhbC5zZXQodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5lbmRWaXNpYmxlLnNldCh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgdGhpcy5kcmFnU3RhcnRFbWl0LmVtaXQoZHJhZyk7XHJcbiAgfVxyXG5cclxuICBtb3ZlZChkcmFnOiBDZGtEcmFnTW92ZSwgdHlwZTogJ3N0YXJ0JyB8ICdlbmQnIHwgJ2JvdGgnID0gJ3N0YXJ0Jykge1xyXG4gICAgbGV0IHRyYW5zZm9ybSA9IGRyYWcuc291cmNlLmdldEZyZWVEcmFnUG9zaXRpb24oKTtcclxuICAgIHRoaXMuc2V0RHJhZyh0aGlzLnZlcnRpY2FsKCkgPyB0cmFuc2Zvcm0ueSA6IHRyYW5zZm9ybS54LCB0eXBlKTtcclxuICAgIGRyYWcuc291cmNlLnJlc2V0KCk7XHJcbiAgICBpZiAoWydzdGFydCcsICdib3RoJ10uaW5jbHVkZXModHlwZSkgJiYgdGhpcy5zaG93U3RhcnRUb29sdGlwKCkpIHtcclxuICAgICAgdGhpcy50b29sdGlwU3RhcnQoKT8udXBkYXRlUG9ydGFsKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoWydlbmQnLCAnYm90aCddLmluY2x1ZGVzKHR5cGUpICYmIHRoaXMuc2hvd0VuZFRvb2x0aXAoKSkge1xyXG4gICAgICB0aGlzLnRvb2x0aXBFbmQoKT8udXBkYXRlUG9ydGFsKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoYW5nZSgpO1xyXG4gICAgdGhpcy5kcmFnTW92ZUVtaXQuZW1pdChkcmFnKTtcclxuICB9XHJcblxyXG4gIGVuZGVkKGRyYWc6IENka0RyYWdFbmQsIHR5cGU6ICdzdGFydCcgfCAnZW5kJyB8ICdib3RoJyA9ICdzdGFydCcpIHtcclxuICAgIGlmIChbJ3N0YXJ0JywgJ2JvdGgnXS5pbmNsdWRlcyh0eXBlKSkge1xyXG4gICAgICBpZiAodGhpcy5zaG93U3RhcnRUb29sdGlwKCkpIHtcclxuICAgICAgICB0aGlzLnN0YXJ0TWFudWFsLnNldChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5zdGFydFZpc2libGUuc2V0KGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKFsnZW5kJywgJ2JvdGgnXS5pbmNsdWRlcyh0eXBlKSkge1xyXG4gICAgICBpZiAodGhpcy5zaG93RW5kVG9vbHRpcCgpKSB7XHJcbiAgICAgICAgdGhpcy5lbmRNYW51YWwuc2V0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLmVuZFZpc2libGUuc2V0KGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5zdGFydGluZy5zZXQoZmFsc2UpO1xyXG4gICAgdGhpcy5kcmFnRW5kRW1pdC5lbWl0KGRyYWcpO1xyXG4gIH1cclxuXHJcbiAgc2V0RHJhZyhkaXN0YW5jZTogbnVtYmVyID0gMCwgdHlwZTogJ3N0YXJ0JyB8ICdlbmQnIHwgJ2JvdGgnID0gJ2JvdGgnKSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMucmFpbFJlZigpLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0ICE9PSAnZnVuY3Rpb24nKSByZXR1cm47XHJcbiAgICBsZXQgcmFpbEJveCA9IHRoaXMucmFpbFJlZigpLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICBsZXQgcmFpbEJveExlbmd0aCA9IHRoaXMudmVydGljYWwoKSA/IHJhaWxCb3guaGVpZ2h0IDogcmFpbEJveC53aWR0aDtcclxuICAgIGxldCBzdGVwTGVuZ3RoID0gcmFpbEJveExlbmd0aCAvICgodGhpcy5tYXgoKSAtIHRoaXMubWluKCkpIC8gdGhpcy5zdGVwKCkpO1xyXG4gICAgbGV0IG9mZnNldCA9IE1hdGguYWJzKGRpc3RhbmNlICUgc3RlcExlbmd0aCk7XHJcbiAgICBsZXQgZGlzID1cclxuICAgICAgb2Zmc2V0IDwgc3RlcExlbmd0aCAvIDJcclxuICAgICAgICA/IGRpc3RhbmNlID4gMFxyXG4gICAgICAgICAgPyBkaXN0YW5jZSAtIG9mZnNldFxyXG4gICAgICAgICAgOiBkaXN0YW5jZSArIG9mZnNldFxyXG4gICAgICAgIDogZGlzdGFuY2UgPiAwXHJcbiAgICAgICAgICA/IGRpc3RhbmNlICsgc3RlcExlbmd0aCAtIG9mZnNldFxyXG4gICAgICAgICAgOiBkaXN0YW5jZSAtIHN0ZXBMZW5ndGggKyBvZmZzZXQ7XHJcblxyXG4gICAgY29uc3Qgc2V0T2Zmc2V0ID0gKGQ6IG51bWJlcikgPT4ge1xyXG4gICAgICBsZXQgeDEgPSAoZCAvIDEwMCkgKiByYWlsQm94TGVuZ3RoO1xyXG4gICAgICBpZiAodGhpcy52ZXJ0aWNhbCgpKSB7XHJcbiAgICAgICAgeDEgKz0gdGhpcy5yZXZlcnNlKCkgPyBkaXMgOiAtZGlzO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHgxICs9IHRoaXMucmV2ZXJzZSgpID8gLWRpcyA6IGRpcztcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCgoeDEgLyByYWlsQm94TGVuZ3RoKSAqIDEwMCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGlmICh0eXBlID09PSAnYm90aCcpIHtcclxuICAgICAgdGhpcy5zdGFydE9mZnNldC5zZXQoc2V0T2Zmc2V0KHRoaXMuc3RhcnQoKSEpKTtcclxuICAgICAgdGhpcy5lbmRPZmZzZXQuc2V0KHNldE9mZnNldCh0aGlzLmVuZCgpISkpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnc3RhcnQnKSB7XHJcbiAgICAgIHRoaXMuc3RhcnRPZmZzZXQuc2V0KHNldE9mZnNldCh0aGlzLnN0YXJ0KCkhKSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdlbmQnKSB7XHJcbiAgICAgIHRoaXMuZW5kT2Zmc2V0LnNldChzZXRPZmZzZXQodGhpcy5lbmQoKSEpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNldERyYWdTdHlsZXMoKTtcclxuICB9XHJcblxyXG4gIHNldERyYWdTdHlsZXMoKSB7XHJcbiAgICBpZiAodGhpcy52ZXJ0aWNhbCgpKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzQXJyYXkoKSkge1xyXG4gICAgICAgIGNvbnN0IHdkID0gTWF0aC5hYnModGhpcy5lbmRPZmZzZXQoKSAtIHRoaXMuc3RhcnRPZmZzZXQoKSk7XHJcbiAgICAgICAgY29uc3QgbHQgPSB0aGlzLmVuZE9mZnNldCgpID4gdGhpcy5zdGFydE9mZnNldCgpID8gdGhpcy5zdGFydE9mZnNldCgpIDogdGhpcy5lbmRPZmZzZXQoKTtcclxuICAgICAgICBpZiAodGhpcy5yZXZlcnNlKCkpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kcmFnU3RhcnRSZWYoKS5uYXRpdmVFbGVtZW50LCAndG9wJywgYCR7dGhpcy5zdGFydE9mZnNldCgpfSVgKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kcmFnRW5kUmVmKCkubmF0aXZlRWxlbWVudCwgJ3RvcCcsIGAke3RoaXMuZW5kT2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAndG9wJywgYCR7bHR9JWApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ2JvdHRvbScsIGAke3RoaXMuc3RhcnRPZmZzZXQoKX0lYCk7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ0VuZFJlZigpLm5hdGl2ZUVsZW1lbnQsICdib3R0b20nLCBgJHt0aGlzLmVuZE9mZnNldCgpfSVgKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wcm9jZXNzUmVmKCkubmF0aXZlRWxlbWVudCwgJ2JvdHRvbScsIGAke2x0fSVgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgYCR7d2R9JWApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLnJldmVyc2UoKSkge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdTdGFydFJlZigpLm5hdGl2ZUVsZW1lbnQsICd0b3AnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ2JvdHRvbScsIGAke3RoaXMuc3RhcnRPZmZzZXQoKX0lYCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wcm9jZXNzUmVmKCkubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke3RoaXMuc3RhcnRPZmZzZXQoKX0lYCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmlzQXJyYXkoKSkge1xyXG4gICAgICAgIGNvbnN0IHdkID0gTWF0aC5hYnModGhpcy5lbmRPZmZzZXQoKSAtIHRoaXMuc3RhcnRPZmZzZXQoKSk7XHJcbiAgICAgICAgY29uc3QgbHQgPSB0aGlzLmVuZE9mZnNldCgpID4gdGhpcy5zdGFydE9mZnNldCgpID8gdGhpcy5zdGFydE9mZnNldCgpIDogdGhpcy5lbmRPZmZzZXQoKTtcclxuICAgICAgICBpZiAodGhpcy5yZXZlcnNlKCkpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kcmFnU3RhcnRSZWYoKS5uYXRpdmVFbGVtZW50LCAncmlnaHQnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdFbmRSZWYoKS5uYXRpdmVFbGVtZW50LCAncmlnaHQnLCBgJHt0aGlzLmVuZE9mZnNldCgpfSVgKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wcm9jZXNzUmVmKCkubmF0aXZlRWxlbWVudCwgJ3JpZ2h0JywgYCR7bHR9JWApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ2xlZnQnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdFbmRSZWYoKS5uYXRpdmVFbGVtZW50LCAnbGVmdCcsIGAke3RoaXMuZW5kT2Zmc2V0KCl9JWApO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnbGVmdCcsIGAke2x0fSVgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgJHt3ZH0lYCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMucmV2ZXJzZSgpKSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZHJhZ1N0YXJ0UmVmKCkubmF0aXZlRWxlbWVudCwgJ3JpZ2h0JywgYCR7dGhpcy5zdGFydE9mZnNldCgpfSVgKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRyYWdTdGFydFJlZigpLm5hdGl2ZUVsZW1lbnQsICdsZWZ0JywgYCR7dGhpcy5zdGFydE9mZnNldCgpfSVgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnByb2Nlc3NSZWYoKS5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgJHt0aGlzLnN0YXJ0T2Zmc2V0KCl9JWApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAjc2xpZGVyU2VsZWN0XHJcbiAgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3RcIlxyXG4gIFtjbGFzcy54LWZsZXhdPVwianVzdGlmeSgpIHx8IGFsaWduKCkgfHwgZGlyZWN0aW9uKClcIlxyXG4gIFtjbGFzcy54LWRpc2FibGVkXT1cImRpc2FibGVkQ29tcHV0ZWQoKVwiXHJcbiAgW2NsYXNzLngtcmVxdWlyZWRdPVwicmVxdWlyZWRJc0VtcHR5KClcIlxyXG4gIFtjbGFzcy54LWludmFsaWRdPVwiaW52YWxpZCgpXCJcclxuICBbY2xhc3MueC1zbGlkZXItc2VsZWN0LXJldmVyc2VdPVwicmV2ZXJzZSgpXCJcclxuICBbY2xhc3MueC1zbGlkZXItc2VsZWN0LXJhbmdlXT1cInJhbmdlKClcIlxyXG4gIFtuZ0NsYXNzXT1cImNsYXNzTWFwKClcIlxyXG4+XHJcbiAgQGlmIChsYWJlbCgpKSB7XHJcbiAgICA8bGFiZWxcclxuICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1sYWJlbC1yZXF1aXJlZF09XCJyZXF1aXJlZENvbXB1dGVkKClcIlxyXG4gICAgICBbc3R5bGUud2lkdGhdPVwibGFiZWxXaWR0aCgpXCJcclxuICAgICAgW25nQ2xhc3NdPVwibGFiZWxNYXBTaWduYWwoKVwiXHJcbiAgICAgID57eyBsYWJlbCgpIH19PC9sYWJlbFxyXG4gICAgPlxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPVwieC1zbGlkZXItc2VsZWN0LWlubmVyXCIgI2lubmVyUmVmPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC1yYWlsXCIgI3JhaWxSZWY+XHJcbiAgICAgIDxkaXY+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtZHJhZ3NcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC10cmFja1wiICN0cmFja1JlZj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAjcHJvY2Vzc1JlZlxyXG4gICAgICAgICAgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtcHJvY2Vzc1wiXHJcbiAgICAgICAgICBjZGtEcmFnXHJcbiAgICAgICAgICBbY2RrRHJhZ0xvY2tBeGlzXT1cInZlcnRpY2FsKCkgPyAneScgOiAneCdcIlxyXG4gICAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCJkaXNhYmxlZENvbXB1dGVkKCkgfHwgIXJhbmdlKClcIlxyXG4gICAgICAgICAgW2Nka0RyYWdCb3VuZGFyeV09XCJ0cmFja1JlZlwiXHJcbiAgICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwic3RhcnRlZCgkZXZlbnQsICdib3RoJylcIlxyXG4gICAgICAgICAgKGNka0RyYWdFbmRlZCk9XCJlbmRlZCgkZXZlbnQsICdib3RoJylcIlxyXG4gICAgICAgICAgKGNka0RyYWdNb3ZlZCk9XCJtb3ZlZCgkZXZlbnQsICdib3RoJylcIlxyXG4gICAgICAgID48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtbWFya3NcIj5cclxuICAgICAgICBAZm9yIChtYXJrIG9mIG1hcmtMaXN0KCk7IHRyYWNrIG1hcmsubGFiZWwpIHtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtbWFya1wiIFtuZ1N0eWxlXT1cIm1hcmsuc3R5bGVcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtbWFyay1sYWJlbFwiPnt7IG1hcmsubGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgI2RyYWdTdGFydFJlZlxyXG4gICAgICAgIGNsYXNzPVwieC1zbGlkZXItc2VsZWN0LWRyYWdcIlxyXG4gICAgICAgIGNka0RyYWdcclxuICAgICAgICBbY2RrRHJhZ0xvY2tBeGlzXT1cInZlcnRpY2FsKCkgPyAneScgOiAneCdcIlxyXG4gICAgICAgIFtjZGtEcmFnRGlzYWJsZWRdPVwiZGlzYWJsZWRDb21wdXRlZCgpXCJcclxuICAgICAgICBbY2RrRHJhZ0JvdW5kYXJ5XT1cImlubmVyUmVmXCJcclxuICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwic3RhcnRlZCgkZXZlbnQsICdzdGFydCcpXCJcclxuICAgICAgICAoY2RrRHJhZ0VuZGVkKT1cImVuZGVkKCRldmVudCwgJ3N0YXJ0JylcIlxyXG4gICAgICAgIChjZGtEcmFnTW92ZWQpPVwibW92ZWQoJGV2ZW50LCAnc3RhcnQnKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAjdG9vbHRpcFN0YXJ0XHJcbiAgICAgICAgICB4LXRvb2x0aXBcclxuICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC1idXR0b25cIlxyXG4gICAgICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1idXR0b24tYWN0aXZlZF09XCJzdGFydFZpc2libGUoKVwiXHJcbiAgICAgICAgICBbY2xhc3MueC1zbGlkZXItc2VsZWN0LWN1c3RvbS1idXR0b25dPVwiY3VzdG9tQnV0dG9uKClcIlxyXG4gICAgICAgICAgcGxhY2VtZW50PVwidG9wXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2hvd1Rvb2x0aXAoKSAmJiAhc2hvd1N0YXJ0VG9vbHRpcCgpXCJcclxuICAgICAgICAgIFtjb250ZW50XT1cInRvb2x0aXBTdGFydFRwbFwiXHJcbiAgICAgICAgICBbKHZpc2libGUpXT1cInN0YXJ0VmlzaWJsZVwiXHJcbiAgICAgICAgICBbbWFudWFsXT1cInN0YXJ0TWFudWFsKClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJjdXN0b21CdXR0b24oKVwiPnt7IGN1c3RvbUJ1dHRvbigpIH19PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICN0b29sdGlwU3RhcnRUcGw+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidG9vbHRpcEN1c3RvbSgpOyBjb250ZXh0OiB7ICR2YWx1ZTogc3RhcnREaXNwbGF5VmFsdWUoKSB9XCI+e3tcclxuICAgICAgICAgICAgc3RhcnREaXNwbGF5VmFsdWUoKVxyXG4gICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIFtoaWRkZW5dPVwiIXJhbmdlKClcIlxyXG4gICAgICAgICNkcmFnRW5kUmVmXHJcbiAgICAgICAgY2xhc3M9XCJ4LXNsaWRlci1zZWxlY3QtZHJhZ1wiXHJcbiAgICAgICAgY2RrRHJhZ1xyXG4gICAgICAgIFtjZGtEcmFnTG9ja0F4aXNdPVwidmVydGljYWwoKSA/ICd5JyA6ICd4J1wiXHJcbiAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCJkaXNhYmxlZENvbXB1dGVkKClcIlxyXG4gICAgICAgIFtjZGtEcmFnQm91bmRhcnldPVwiaW5uZXJSZWZcIlxyXG4gICAgICAgIChjZGtEcmFnU3RhcnRlZCk9XCJzdGFydGVkKCRldmVudCwgJ2VuZCcpXCJcclxuICAgICAgICAoY2RrRHJhZ0VuZGVkKT1cImVuZGVkKCRldmVudCwgJ2VuZCcpXCJcclxuICAgICAgICAoY2RrRHJhZ01vdmVkKT1cIm1vdmVkKCRldmVudCwgJ2VuZCcpXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICN0b29sdGlwRW5kXHJcbiAgICAgICAgICB4LXRvb2x0aXBcclxuICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICBjbGFzcz1cIngtc2xpZGVyLXNlbGVjdC1idXR0b25cIlxyXG4gICAgICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1idXR0b24tYWN0aXZlZF09XCJlbmRWaXNpYmxlKClcIlxyXG4gICAgICAgICAgW2NsYXNzLngtc2xpZGVyLXNlbGVjdC1jdXN0b20tYnV0dG9uXT1cImN1c3RvbUJ1dHRvbigpXCJcclxuICAgICAgICAgIHBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNob3dUb29sdGlwKCkgJiYgIXNob3dFbmRUb29sdGlwKClcIlxyXG4gICAgICAgICAgW2NvbnRlbnRdPVwidG9vbHRpcEVuZFRwbFwiXHJcbiAgICAgICAgICBbKHZpc2libGUpXT1cImVuZFZpc2libGVcIlxyXG4gICAgICAgICAgW21hbnVhbF09XCJlbmRNYW51YWwoKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqeE91dGxldD1cImN1c3RvbUJ1dHRvbigpXCI+e3sgY3VzdG9tQnV0dG9uKCkgfX08L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI3Rvb2x0aXBFbmRUcGw+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidG9vbHRpcEN1c3RvbSgpOyBjb250ZXh0OiB7ICR2YWx1ZTogZW5kRGlzcGxheVZhbHVlKCkgfVwiPnt7XHJcbiAgICAgICAgICAgIGVuZERpc3BsYXlWYWx1ZSgpXHJcbiAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -2,11 +2,11 @@ import { NgModule } from '@angular/core';
|
|
|
2
2
|
import { XSliderSelectComponent } from './slider-select.component';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class XSliderSelectModule {
|
|
5
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
6
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
7
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
5
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectModule, imports: [XSliderSelectComponent], exports: [XSliderSelectComponent] }); }
|
|
7
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectModule, imports: [XSliderSelectComponent] }); }
|
|
8
8
|
}
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectModule, decorators: [{
|
|
10
10
|
type: NgModule,
|
|
11
11
|
args: [{
|
|
12
12
|
exports: [XSliderSelectComponent],
|
|
@@ -181,10 +181,10 @@ export class XSliderSelectProperty extends XFormControlFunction(X_SLIDER_SELECT_
|
|
|
181
181
|
*/
|
|
182
182
|
this.dragEndEmit = output();
|
|
183
183
|
}
|
|
184
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
185
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.
|
|
184
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
185
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XSliderSelectProperty, selector: "x-slider-select-property", inputs: { min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, precision: { classPropertyName: "precision", publicName: "precision", isSignal: true, isRequired: false, transformFunction: null }, showTooltip: { classPropertyName: "showTooltip", publicName: "showTooltip", isSignal: true, isRequired: false, transformFunction: null }, reverse: { classPropertyName: "reverse", publicName: "reverse", isSignal: true, isRequired: false, transformFunction: null }, vertical: { classPropertyName: "vertical", publicName: "vertical", isSignal: true, isRequired: false, transformFunction: null }, range: { classPropertyName: "range", publicName: "range", isSignal: true, isRequired: false, transformFunction: null }, customButton: { classPropertyName: "customButton", publicName: "customButton", isSignal: true, isRequired: false, transformFunction: null }, marks: { classPropertyName: "marks", publicName: "marks", isSignal: true, isRequired: false, transformFunction: null }, tooltipCustom: { classPropertyName: "tooltipCustom", publicName: "tooltipCustom", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", dragStartEmit: "dragStartEmit", dragMoveEmit: "dragMoveEmit", dragEndEmit: "dragEndEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
186
186
|
}
|
|
187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XSliderSelectProperty, decorators: [{
|
|
188
188
|
type: Component,
|
|
189
189
|
args: [{ selector: `${XSliderSelectPrefix}-property`, template: '' }]
|
|
190
190
|
}] });
|
|
@@ -60,10 +60,10 @@ export class XCountdownComponent extends XCountdownProperty {
|
|
|
60
60
|
this.finish.emit();
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
64
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.
|
|
63
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCountdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
64
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: XCountdownComponent, isStandalone: true, selector: "x-countdown", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-countdown\">\r\n <x-statistic\r\n [value]=\"diff() | xTimeRange: format()\"\r\n [valueStyle]=\"valueStyle()\"\r\n [prefix]=\"prefix()\"\r\n [suffix]=\"suffix()\"\r\n [label]=\"label()\"\r\n ></x-statistic>\r\n</div>\r\n", styles: ["x-countdown{display:inline-block}\n"], dependencies: [{ kind: "component", type: XStatisticComponent, selector: "x-statistic" }, { kind: "pipe", type: XTimeRangePipe, name: "xTimeRange" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
65
65
|
}
|
|
66
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCountdownComponent, decorators: [{
|
|
67
67
|
type: Component,
|
|
68
68
|
args: [{ selector: `${XCountdownPrefix}`, standalone: true, imports: [XStatisticComponent, XTimeRangePipe], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-countdown\">\r\n <x-statistic\r\n [value]=\"diff() | xTimeRange: format()\"\r\n [valueStyle]=\"valueStyle()\"\r\n [prefix]=\"prefix()\"\r\n [suffix]=\"suffix()\"\r\n [label]=\"label()\"\r\n ></x-statistic>\r\n</div>\r\n", styles: ["x-countdown{display:inline-block}\n"] }]
|
|
69
69
|
}] });
|
|
@@ -24,10 +24,10 @@ export class XStatisticComponent extends XStatisticProperty {
|
|
|
24
24
|
return decimal;
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
28
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
27
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XStatisticComponent, isStandalone: true, selector: "x-statistic", usesInheritance: true, ngImport: i0, template: "<div #statistic class=\"x-statistic\">\r\n @if (label()) {\r\n <div class=\"x-statistic-label\">\r\n <ng-container *xOutlet=\"label()\">{{ label() }}</ng-container>\r\n </div>\r\n }\r\n @if (value()) {\r\n <div class=\"x-statistic-value\" [ngStyle]=\"valueStyle()\">\r\n <ng-container *xOutlet=\"value()\">\r\n @if (prefix()) {\r\n <span class=\"x-statistic-value-prefix\">\r\n <ng-container *xOutlet=\"prefix()\">{{ prefix() }}</ng-container>\r\n </span>\r\n }\r\n @if (displayInt()) {\r\n <span class=\"x-statistic-value-int\">{{ displayInt() }}</span>\r\n }\r\n @if (displayDecimal()) {\r\n <span class=\"x-statistic-value-decimal\">{{ displayDecimal() }}</span>\r\n }\r\n @if (suffix()) {\r\n <span class=\"x-statistic-value-suffix\">\r\n <ng-container *xOutlet=\"suffix()\">{{ suffix() }}</ng-container>\r\n </span>\r\n }\r\n </ng-container>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".x-statistic{margin:0;padding:0}.x-statistic-label{margin-bottom:.25rem;color:var(--x-text-400)}.x-statistic-value{font-size:1.5rem}.x-statistic-value-decimal,.x-statistic-value-suffix{font-size:1rem}.x-statistic-value-suffix{margin-left:.25rem}.x-statistic-value-prefix{margin-right:.25rem}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: `${XStatisticPrefix}`, standalone: true, imports: [NgStyle, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #statistic class=\"x-statistic\">\r\n @if (label()) {\r\n <div class=\"x-statistic-label\">\r\n <ng-container *xOutlet=\"label()\">{{ label() }}</ng-container>\r\n </div>\r\n }\r\n @if (value()) {\r\n <div class=\"x-statistic-value\" [ngStyle]=\"valueStyle()\">\r\n <ng-container *xOutlet=\"value()\">\r\n @if (prefix()) {\r\n <span class=\"x-statistic-value-prefix\">\r\n <ng-container *xOutlet=\"prefix()\">{{ prefix() }}</ng-container>\r\n </span>\r\n }\r\n @if (displayInt()) {\r\n <span class=\"x-statistic-value-int\">{{ displayInt() }}</span>\r\n }\r\n @if (displayDecimal()) {\r\n <span class=\"x-statistic-value-decimal\">{{ displayDecimal() }}</span>\r\n }\r\n @if (suffix()) {\r\n <span class=\"x-statistic-value-suffix\">\r\n <ng-container *xOutlet=\"suffix()\">{{ suffix() }}</ng-container>\r\n </span>\r\n }\r\n </ng-container>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".x-statistic{margin:0;padding:0}.x-statistic-label{margin-bottom:.25rem;color:var(--x-text-400)}.x-statistic-value{font-size:1.5rem}.x-statistic-value-decimal,.x-statistic-value-suffix{font-size:1rem}.x-statistic-value-suffix{margin-left:.25rem}.x-statistic-value-prefix{margin-right:.25rem}\n"] }]
|
|
33
33
|
}] });
|
|
@@ -3,11 +3,11 @@ import { XStatisticComponent } from './statistic.component';
|
|
|
3
3
|
import { XCountdownComponent } from './countdown.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class XStatisticModule {
|
|
6
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
7
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
8
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
6
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XStatisticModule, imports: [XStatisticComponent, XCountdownComponent], exports: [XStatisticComponent, XCountdownComponent] }); }
|
|
8
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticModule }); }
|
|
9
9
|
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticModule, decorators: [{
|
|
11
11
|
type: NgModule,
|
|
12
12
|
args: [{
|
|
13
13
|
exports: [XStatisticComponent, XCountdownComponent],
|
|
@@ -40,10 +40,10 @@ export class XStatisticProperty extends XPropertyFunction(X_STATISTIC_CONFIG_NAM
|
|
|
40
40
|
*/
|
|
41
41
|
this.valueStyle = input({});
|
|
42
42
|
}
|
|
43
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
44
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.
|
|
43
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XStatisticProperty, selector: "x-statistic-property", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, prefix: { classPropertyName: "prefix", publicName: "prefix", isSignal: true, isRequired: false, transformFunction: null }, suffix: { classPropertyName: "suffix", publicName: "suffix", isSignal: true, isRequired: false, transformFunction: null }, valueStyle: { classPropertyName: "valueStyle", publicName: "valueStyle", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
45
45
|
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XStatisticProperty, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
48
|
args: [{ selector: `${XStatisticPrefix}-property`, template: '' }]
|
|
49
49
|
}] });
|
|
@@ -96,10 +96,10 @@ export class XCountdownProperty extends XPropertyFunction(X_COUNTDOWN_CONFIG_NAM
|
|
|
96
96
|
*/
|
|
97
97
|
this.finish = output();
|
|
98
98
|
}
|
|
99
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
100
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.
|
|
99
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCountdownProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
100
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XCountdownProperty, selector: "x-countdown-property", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, prefix: { classPropertyName: "prefix", publicName: "prefix", isSignal: true, isRequired: false, transformFunction: null }, suffix: { classPropertyName: "suffix", publicName: "suffix", isSignal: true, isRequired: false, transformFunction: null }, valueStyle: { classPropertyName: "valueStyle", publicName: "valueStyle", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { finish: "finish" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
101
101
|
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCountdownProperty, decorators: [{
|
|
103
103
|
type: Component,
|
|
104
104
|
args: [{ selector: `${XCountdownPrefix}-property`, template: '' }]
|
|
105
105
|
}] });
|