@ng-nest/ui 18.0.12 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/affix/affix.property.d.ts +1 -1
- package/alert/alert.property.d.ts +1 -1
- package/anchor/anchor.property.d.ts +2 -2
- package/auto-complete/auto-complete.property.d.ts +16 -19
- package/avatar/avatar.property.d.ts +2 -2
- package/back-top/back-top.property.d.ts +1 -1
- package/badge/badge.property.d.ts +1 -1
- package/base-form/base-form.property.d.ts +2 -2
- package/button/button.property.d.ts +2 -2
- package/calendar/calendar.property.d.ts +1 -1
- package/card/card.property.d.ts +1 -1
- package/carousel/carousel.property.d.ts +2 -2
- package/cascade/cascade.property.d.ts +16 -27
- package/checkbox/checkbox.property.d.ts +16 -22
- package/collapse/collapse.property.d.ts +2 -2
- package/color/color.property.d.ts +1 -1
- package/color-picker/color-picker-portal.component.d.ts +10 -10
- package/color-picker/color-picker.property.d.ts +15 -15
- package/comment/comment.property.d.ts +2 -2
- package/container/container.property.d.ts +4 -4
- package/crumb/crumb.property.d.ts +1 -1
- package/date-picker/date-picker-portal.component.d.ts +1 -1
- package/date-picker/date-picker.property.d.ts +34 -34
- package/date-picker/date-range-portal.component.d.ts +5 -5
- package/description/description.property.d.ts +2 -2
- package/dialog/dialog-portal.component.d.ts +0 -2
- package/dialog/dialog-portal.directives.d.ts +2 -3
- package/dialog/dialog-ref.d.ts +4 -2
- package/dialog/dialog.component.d.ts +0 -5
- package/dialog/dialog.property.d.ts +14 -10
- package/drag/drag.property.d.ts +1 -1
- package/drawer/drawer.property.d.ts +2 -2
- package/dropdown/dropdown.property.d.ts +1 -1
- package/empty/empty.property.d.ts +1 -1
- package/fesm2022/ng-nest-ui-affix.mjs +14 -12
- package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-alert.mjs +14 -12
- package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-anchor.mjs +23 -20
- 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 +16 -16
- package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-avatar.mjs +18 -18
- package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-back-top.mjs +13 -12
- 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-base-form.mjs.map +1 -1
- 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 +14 -15
- package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-card.mjs +11 -12
- package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-carousel.mjs +20 -19
- package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-cascade.mjs +16 -16
- package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-checkbox.mjs +12 -12
- 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 +15 -15
- 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 +18 -18
- 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 +57 -57
- package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-description.mjs +18 -18
- package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-dialog.mjs +70 -144
- 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 +11 -11
- package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-drawer.mjs +38 -41
- package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-dropdown.mjs +15 -16
- 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 +21 -40
- 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 +15 -17
- 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 +24 -24
- 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 +19 -19
- package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-keyword.mjs +12 -13
- package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-layout.mjs +18 -18
- package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
- 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 +22 -23
- package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-loading.mjs +12 -12
- package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-menu.mjs +19 -20
- package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-message-box.mjs +11 -13
- package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-message.mjs +11 -11
- package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-notification.mjs +11 -11
- package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-outlet.mjs +8 -8
- package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
- 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 +11 -11
- 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 +15 -15
- package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-portal.mjs +7 -7
- package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
- 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 -12
- package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-resizable.mjs +12 -12
- package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
- 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 +11 -12
- package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
- 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 +11 -11
- package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-slider-select.mjs +11 -22
- 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 +18 -18
- package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
- 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 +32 -32
- package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tabs.mjs +30 -32
- 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 +13 -14
- package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-ago.mjs +8 -8
- package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-picker.mjs +19 -19
- package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-range.mjs +8 -8
- package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
- 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 +15 -15
- package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-transfer.mjs +12 -13
- package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-file.mjs +12 -20
- package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-select.mjs +15 -15
- package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree.mjs +21 -21
- 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/find/find.property.d.ts +12 -18
- package/form/form.property.d.ts +10 -21
- package/highlight/highlight.property.d.ts +1 -1
- package/icon/icon.property.d.ts +1 -1
- package/image/image.property.d.ts +2 -2
- package/inner/inner.property.d.ts +1 -1
- package/input/input.property.d.ts +17 -20
- package/input-number/input-number.property.d.ts +13 -13
- package/layout/layout.property.d.ts +2 -2
- package/link/link.property.d.ts +1 -1
- package/list/list.property.d.ts +12 -12
- package/loading/loading.property.d.ts +1 -1
- package/menu/menu.property.d.ts +2 -2
- package/package.json +83 -257
- package/page-header/page-header.property.d.ts +1 -1
- package/pagination/pagination.property.d.ts +1 -1
- package/popconfirm/popconfirm.property.d.ts +1 -1
- package/popover/popover.property.d.ts +1 -1
- package/progress/progress.property.d.ts +1 -1
- package/radio/radio.property.d.ts +13 -16
- package/rate/rate.property.d.ts +14 -22
- package/result/result.property.d.ts +1 -1
- package/ripple/ripple.property.d.ts +1 -1
- package/select/select-portal.component.d.ts +1 -1
- package/select/select.property.d.ts +15 -15
- package/skeleton/skeleton.property.d.ts +1 -1
- package/slider/slider.property.d.ts +1 -1
- package/slider-select/slider-select.property.d.ts +13 -17
- package/statistic/statistic.property.d.ts +2 -2
- package/steps/steps.property.d.ts +1 -1
- package/style/core/index.css +87 -174
- package/style/core/index.css.map +1 -1
- package/style/core/index.scss +32 -5
- package/style/directives/index.scss +3 -3
- package/style/directives/keyword/index.scss +3 -2
- package/style/directives/keyword/mixin.scss +9 -11
- package/style/directives/keyword/param.scss +2 -1
- package/style/directives/resizable/index.scss +3 -2
- package/style/directives/resizable/mixin.scss +122 -16
- package/style/directives/resizable/param.scss +2 -1
- package/style/directives/ripple/index.scss +3 -2
- package/style/directives/ripple/mixin.scss +12 -12
- package/style/directives/ripple/param.scss +2 -1
- package/style/mixins/compatibility.scss +7 -5
- package/style/mixins/form.scss +6 -4
- package/style/mixins/hidden.scss +5 -2
- package/style/params/index.scss +282 -3
- package/switch/switch.property.d.ts +14 -14
- package/table/table.property.d.ts +4 -4
- package/tabs/tabs.property.d.ts +2 -2
- package/tag/tag.property.d.ts +1 -1
- package/text-retract/text-retract.property.d.ts +1 -1
- package/textarea/textarea.property.d.ts +14 -17
- package/theme/theme.property.d.ts +6 -10
- package/time-picker/time-picker.property.d.ts +17 -23
- package/timeline/timeline.property.d.ts +1 -1
- package/tooltip/tooltip.property.d.ts +1 -1
- package/transfer/transfer.property.d.ts +9 -13
- package/tree/tree.property.d.ts +2 -2
- package/tree-file/tree-file.property.d.ts +1 -1
- package/tree-select/tree-select-portal.component.d.ts +1 -1
- package/tree-select/tree-select.property.d.ts +15 -15
- package/typography/typography.property.d.ts +1 -1
- package/upload/upload.property.d.ts +9 -9
- package/esm2022/affix/affix.component.mjs +0 -12
- package/esm2022/affix/affix.module.mjs +0 -16
- package/esm2022/affix/affix.property.mjs +0 -51
- package/esm2022/affix/ng-nest-ui-affix.mjs +0 -5
- package/esm2022/affix/public-api.mjs +0 -4
- package/esm2022/alert/alert.component.mjs +0 -73
- package/esm2022/alert/alert.module.mjs +0 -16
- package/esm2022/alert/alert.property.mjs +0 -313
- package/esm2022/alert/ng-nest-ui-alert.mjs +0 -5
- package/esm2022/alert/public-api.mjs +0 -4
- package/esm2022/anchor/anchor-inner.component.mjs +0 -18
- package/esm2022/anchor/anchor.component.mjs +0 -160
- package/esm2022/anchor/anchor.module.mjs +0 -17
- package/esm2022/anchor/anchor.property.mjs +0 -121
- package/esm2022/anchor/ng-nest-ui-anchor.mjs +0 -5
- package/esm2022/anchor/public-api.mjs +0 -5
- package/esm2022/api/api.component.mjs +0 -18
- package/esm2022/api/api.module.mjs +0 -16
- package/esm2022/api/api.property.mjs +0 -7
- package/esm2022/api/ng-nest-ui-api.mjs +0 -5
- package/esm2022/api/public-api.mjs +0 -4
- package/esm2022/auto-complete/auto-complete-portal.component.mjs +0 -80
- package/esm2022/auto-complete/auto-complete.component.mjs +0 -306
- package/esm2022/auto-complete/auto-complete.module.mjs +0 -16
- package/esm2022/auto-complete/auto-complete.property.mjs +0 -172
- package/esm2022/auto-complete/ng-nest-ui-auto-complete.mjs +0 -5
- package/esm2022/auto-complete/public-api.mjs +0 -5
- package/esm2022/avatar/avatar-group.component.mjs +0 -19
- package/esm2022/avatar/avatar.component.mjs +0 -109
- package/esm2022/avatar/avatar.module.mjs +0 -17
- package/esm2022/avatar/avatar.property.mjs +0 -143
- package/esm2022/avatar/ng-nest-ui-avatar.mjs +0 -5
- package/esm2022/avatar/public-api.mjs +0 -5
- package/esm2022/back-top/back-top.component.mjs +0 -104
- package/esm2022/back-top/back-top.module.mjs +0 -16
- package/esm2022/back-top/back-top.property.mjs +0 -50
- package/esm2022/back-top/ng-nest-ui-back-top.mjs +0 -5
- package/esm2022/back-top/public-api.mjs +0 -4
- package/esm2022/badge/badge.component.mjs +0 -63
- package/esm2022/badge/badge.module.mjs +0 -16
- package/esm2022/badge/badge.property.mjs +0 -133
- package/esm2022/badge/ng-nest-ui-badge.mjs +0 -5
- package/esm2022/badge/public-api.mjs +0 -4
- package/esm2022/base-form/base-form.component.mjs +0 -101
- package/esm2022/base-form/base-form.module.mjs +0 -15
- package/esm2022/base-form/base-form.property.mjs +0 -237
- package/esm2022/base-form/ng-nest-ui-base-form.mjs +0 -5
- package/esm2022/base-form/public-api.mjs +0 -4
- package/esm2022/button/button.component.mjs +0 -71
- package/esm2022/button/button.module.mjs +0 -17
- package/esm2022/button/button.property.mjs +0 -331
- package/esm2022/button/buttons.component.mjs +0 -55
- package/esm2022/button/ng-nest-ui-button.mjs +0 -5
- package/esm2022/button/public-api.mjs +0 -5
- package/esm2022/calendar/calendar.component.mjs +0 -117
- package/esm2022/calendar/calendar.module.mjs +0 -16
- package/esm2022/calendar/calendar.property.mjs +0 -110
- package/esm2022/calendar/ng-nest-ui-calendar.mjs +0 -5
- package/esm2022/calendar/public-api.mjs +0 -4
- package/esm2022/card/card.component.mjs +0 -22
- package/esm2022/card/card.module.mjs +0 -16
- package/esm2022/card/card.property.mjs +0 -77
- package/esm2022/card/ng-nest-ui-card.mjs +0 -5
- package/esm2022/card/public-api.mjs +0 -4
- package/esm2022/carousel/carousel-panel.component.mjs +0 -157
- package/esm2022/carousel/carousel.component.mjs +0 -95
- package/esm2022/carousel/carousel.module.mjs +0 -17
- package/esm2022/carousel/carousel.property.mjs +0 -256
- package/esm2022/carousel/ng-nest-ui-carousel.mjs +0 -5
- package/esm2022/carousel/public-api.mjs +0 -5
- package/esm2022/cascade/cascade-portal.component.mjs +0 -141
- package/esm2022/cascade/cascade.component.mjs +0 -238
- package/esm2022/cascade/cascade.module.mjs +0 -16
- package/esm2022/cascade/cascade.property.mjs +0 -167
- package/esm2022/cascade/ng-nest-ui-cascade.mjs +0 -5
- package/esm2022/cascade/public-api.mjs +0 -5
- package/esm2022/checkbox/checkbox.component.mjs +0 -102
- package/esm2022/checkbox/checkbox.module.mjs +0 -16
- package/esm2022/checkbox/checkbox.property.mjs +0 -136
- package/esm2022/checkbox/ng-nest-ui-checkbox.mjs +0 -5
- package/esm2022/checkbox/public-api.mjs +0 -4
- package/esm2022/collapse/collapse-panel.component.mjs +0 -55
- package/esm2022/collapse/collapse.component.mjs +0 -49
- package/esm2022/collapse/collapse.module.mjs +0 -17
- package/esm2022/collapse/collapse.property.mjs +0 -189
- package/esm2022/collapse/ng-nest-ui-collapse.mjs +0 -5
- package/esm2022/collapse/public-api.mjs +0 -5
- package/esm2022/color/color.component.mjs +0 -35
- package/esm2022/color/color.module.mjs +0 -16
- package/esm2022/color/color.property.mjs +0 -71
- package/esm2022/color/ng-nest-ui-color.mjs +0 -5
- package/esm2022/color/public-api.mjs +0 -4
- package/esm2022/color-picker/color-picker-portal.component.mjs +0 -396
- package/esm2022/color-picker/color-picker.component.mjs +0 -191
- package/esm2022/color-picker/color-picker.module.mjs +0 -16
- package/esm2022/color-picker/color-picker.property.mjs +0 -142
- package/esm2022/color-picker/ng-nest-ui-color-picker.mjs +0 -5
- package/esm2022/color-picker/public-api.mjs +0 -5
- package/esm2022/comment/comment-reply.component.mjs +0 -24
- package/esm2022/comment/comment.component.mjs +0 -55
- package/esm2022/comment/comment.module.mjs +0 -17
- package/esm2022/comment/comment.property.mjs +0 -90
- package/esm2022/comment/ng-nest-ui-comment.mjs +0 -5
- package/esm2022/comment/public-api.mjs +0 -5
- package/esm2022/container/aside.component.mjs +0 -25
- package/esm2022/container/container.component.mjs +0 -31
- package/esm2022/container/container.module.mjs +0 -20
- package/esm2022/container/container.property.mjs +0 -115
- package/esm2022/container/footer.component.mjs +0 -35
- package/esm2022/container/header.component.mjs +0 -35
- package/esm2022/container/main.component.mjs +0 -18
- package/esm2022/container/ng-nest-ui-container.mjs +0 -5
- package/esm2022/container/public-api.mjs +0 -8
- package/esm2022/core/animation/badge.mjs +0 -53
- package/esm2022/core/animation/connect.mjs +0 -31
- package/esm2022/core/animation/consts.mjs +0 -11
- package/esm2022/core/animation/drop.mjs +0 -13
- package/esm2022/core/animation/fade.mjs +0 -24
- package/esm2022/core/animation/move.mjs +0 -179
- package/esm2022/core/animation/opacity.mjs +0 -13
- package/esm2022/core/animation/public-api.mjs +0 -9
- package/esm2022/core/animation/slide.mjs +0 -17
- package/esm2022/core/config/config.mjs +0 -3
- package/esm2022/core/config/config.service.mjs +0 -54
- package/esm2022/core/config/index.mjs +0 -2
- package/esm2022/core/config/public-api.mjs +0 -3
- package/esm2022/core/functions/chunk.mjs +0 -25
- package/esm2022/core/functions/clone-deep.mjs +0 -28
- package/esm2022/core/functions/convert.mjs +0 -230
- package/esm2022/core/functions/csspx.mjs +0 -17
- package/esm2022/core/functions/date.mjs +0 -223
- package/esm2022/core/functions/drop.mjs +0 -20
- package/esm2022/core/functions/flex.mjs +0 -25
- package/esm2022/core/functions/group-by.mjs +0 -14
- package/esm2022/core/functions/guid.mjs +0 -11
- package/esm2022/core/functions/has-in.mjs +0 -8
- package/esm2022/core/functions/order-by.mjs +0 -56
- package/esm2022/core/functions/parent-path.mjs +0 -27
- package/esm2022/core/functions/property.mjs +0 -20
- package/esm2022/core/functions/public-api.mjs +0 -16
- package/esm2022/core/functions/remove.mjs +0 -19
- package/esm2022/core/functions/resize.mjs +0 -22
- package/esm2022/core/interfaces/data.type.mjs +0 -164
- package/esm2022/core/interfaces/identify.type.mjs +0 -7
- package/esm2022/core/interfaces/index.mjs +0 -2
- package/esm2022/core/interfaces/layout.type.mjs +0 -2
- package/esm2022/core/interfaces/public-api.mjs +0 -5
- package/esm2022/core/interfaces/result-list.type.mjs +0 -2
- package/esm2022/core/ng-nest-ui-core.mjs +0 -5
- package/esm2022/core/public-api.mjs +0 -8
- package/esm2022/core/services/http.service.mjs +0 -58
- package/esm2022/core/services/preloading-strategy.service.mjs +0 -24
- package/esm2022/core/services/public-api.mjs +0 -6
- package/esm2022/core/services/repository.service.mjs +0 -29
- package/esm2022/core/services/reuse-strategy.service.mjs +0 -47
- package/esm2022/core/services/storage.service.mjs +0 -75
- package/esm2022/core/theme/index.mjs +0 -2
- package/esm2022/core/theme/public-api.mjs +0 -3
- package/esm2022/core/theme/theme.mjs +0 -89
- package/esm2022/core/theme/theme.service.mjs +0 -270
- package/esm2022/core/util/animation.mjs +0 -26
- package/esm2022/core/util/camel-to-kebab.mjs +0 -16
- package/esm2022/core/util/check.mjs +0 -15
- package/esm2022/core/util/computed-style.mjs +0 -20
- package/esm2022/core/util/host.mjs +0 -14
- package/esm2022/core/util/html.mjs +0 -12
- package/esm2022/core/util/index.mjs +0 -2
- package/esm2022/core/util/kebab-to-camel.mjs +0 -16
- package/esm2022/core/util/log.mjs +0 -15
- package/esm2022/core/util/option.mjs +0 -14
- package/esm2022/core/util/public-api.mjs +0 -11
- package/esm2022/core/util/sleep.mjs +0 -8
- package/esm2022/crumb/crumb.component.mjs +0 -25
- package/esm2022/crumb/crumb.module.mjs +0 -16
- package/esm2022/crumb/crumb.property.mjs +0 -45
- package/esm2022/crumb/ng-nest-ui-crumb.mjs +0 -5
- package/esm2022/crumb/public-api.mjs +0 -4
- package/esm2022/date-picker/date-picker-portal.component.mjs +0 -196
- package/esm2022/date-picker/date-picker.component.mjs +0 -320
- package/esm2022/date-picker/date-picker.module.mjs +0 -17
- package/esm2022/date-picker/date-picker.property.mjs +0 -770
- package/esm2022/date-picker/date-quarter.pipe.mjs +0 -19
- package/esm2022/date-picker/date-range-portal.component.mjs +0 -349
- package/esm2022/date-picker/date-range.component.mjs +0 -432
- package/esm2022/date-picker/ng-nest-ui-date-picker.mjs +0 -5
- package/esm2022/date-picker/picker-date.component.mjs +0 -334
- package/esm2022/date-picker/picker-month.component.mjs +0 -232
- package/esm2022/date-picker/picker-quarter.component.mjs +0 -237
- package/esm2022/date-picker/picker-year.component.mjs +0 -233
- package/esm2022/date-picker/public-api.mjs +0 -12
- package/esm2022/description/description-item.component.mjs +0 -24
- package/esm2022/description/description.component.mjs +0 -48
- package/esm2022/description/description.module.mjs +0 -17
- package/esm2022/description/description.property.mjs +0 -219
- package/esm2022/description/ng-nest-ui-description.mjs +0 -5
- package/esm2022/description/public-api.mjs +0 -5
- package/esm2022/dialog/dialog-container.component.mjs +0 -29
- package/esm2022/dialog/dialog-portal.component.mjs +0 -97
- package/esm2022/dialog/dialog-portal.directives.mjs +0 -119
- package/esm2022/dialog/dialog-ref.mjs +0 -100
- package/esm2022/dialog/dialog.component.mjs +0 -282
- package/esm2022/dialog/dialog.module.mjs +0 -50
- package/esm2022/dialog/dialog.property.mjs +0 -207
- package/esm2022/dialog/dialog.service.mjs +0 -122
- package/esm2022/dialog/ng-nest-ui-dialog.mjs +0 -5
- package/esm2022/dialog/public-api.mjs +0 -9
- package/esm2022/doc/doc.component.mjs +0 -18
- package/esm2022/doc/doc.module.mjs +0 -16
- package/esm2022/doc/doc.property.mjs +0 -7
- package/esm2022/doc/ng-nest-ui-doc.mjs +0 -5
- package/esm2022/doc/public-api.mjs +0 -4
- package/esm2022/drag/drag.directive.mjs +0 -57
- package/esm2022/drag/drag.module.mjs +0 -16
- package/esm2022/drag/drag.property.mjs +0 -25
- package/esm2022/drag/ng-nest-ui-drag.mjs +0 -5
- package/esm2022/drag/public-api.mjs +0 -4
- package/esm2022/drawer/drawer-container.component.mjs +0 -29
- package/esm2022/drawer/drawer-portal.component.mjs +0 -50
- package/esm2022/drawer/drawer-portal.directives.mjs +0 -58
- package/esm2022/drawer/drawer-ref.mjs +0 -17
- package/esm2022/drawer/drawer.component.mjs +0 -95
- package/esm2022/drawer/drawer.module.mjs +0 -38
- package/esm2022/drawer/drawer.property.mjs +0 -84
- package/esm2022/drawer/drawer.service.mjs +0 -65
- package/esm2022/drawer/ng-nest-ui-drawer.mjs +0 -5
- package/esm2022/drawer/public-api.mjs +0 -10
- package/esm2022/dropdown/dropdown-portal.component.mjs +0 -204
- package/esm2022/dropdown/dropdown.component.mjs +0 -179
- package/esm2022/dropdown/dropdown.module.mjs +0 -16
- package/esm2022/dropdown/dropdown.property.mjs +0 -96
- package/esm2022/dropdown/ng-nest-ui-dropdown.mjs +0 -5
- package/esm2022/dropdown/public-api.mjs +0 -5
- package/esm2022/empty/empty.component.mjs +0 -15
- package/esm2022/empty/empty.module.mjs +0 -16
- package/esm2022/empty/empty.property.mjs +0 -54
- package/esm2022/empty/ng-nest-ui-empty.mjs +0 -5
- package/esm2022/empty/public-api.mjs +0 -4
- package/esm2022/examples/examples.component.mjs +0 -18
- package/esm2022/examples/examples.module.mjs +0 -16
- package/esm2022/examples/examples.property.mjs +0 -7
- package/esm2022/examples/ng-nest-ui-examples.mjs +0 -5
- package/esm2022/examples/public-api.mjs +0 -4
- package/esm2022/find/find.component.mjs +0 -331
- package/esm2022/find/find.module.mjs +0 -16
- package/esm2022/find/find.property.mjs +0 -260
- package/esm2022/find/ng-nest-ui-find.mjs +0 -5
- package/esm2022/find/public-api.mjs +0 -4
- package/esm2022/form/control.component.mjs +0 -249
- package/esm2022/form/form.component.mjs +0 -116
- package/esm2022/form/form.module.mjs +0 -17
- package/esm2022/form/form.property.mjs +0 -202
- package/esm2022/form/ng-nest-ui-form.mjs +0 -5
- package/esm2022/form/public-api.mjs +0 -5
- package/esm2022/highlight/highlight.component.mjs +0 -85
- package/esm2022/highlight/highlight.module.mjs +0 -16
- package/esm2022/highlight/highlight.property.mjs +0 -45
- package/esm2022/highlight/highlight.service.mjs +0 -17
- package/esm2022/highlight/ng-nest-ui-highlight.mjs +0 -5
- package/esm2022/highlight/public-api.mjs +0 -5
- package/esm2022/i18n/i18n.directive.mjs +0 -29
- package/esm2022/i18n/i18n.module.mjs +0 -17
- package/esm2022/i18n/i18n.pipe.mjs +0 -28
- package/esm2022/i18n/i18n.property.mjs +0 -9
- package/esm2022/i18n/i18n.service.mjs +0 -57
- package/esm2022/i18n/languages/ar_EG.mjs +0 -169
- package/esm2022/i18n/languages/bg_BG.mjs +0 -172
- package/esm2022/i18n/languages/ca_ES.mjs +0 -172
- package/esm2022/i18n/languages/cs_CZ.mjs +0 -172
- package/esm2022/i18n/languages/da_DK.mjs +0 -172
- package/esm2022/i18n/languages/de_DE.mjs +0 -172
- package/esm2022/i18n/languages/el_GR.mjs +0 -172
- package/esm2022/i18n/languages/en_GB.mjs +0 -181
- package/esm2022/i18n/languages/en_US.mjs +0 -181
- package/esm2022/i18n/languages/es_ES.mjs +0 -172
- package/esm2022/i18n/languages/et_EE.mjs +0 -172
- package/esm2022/i18n/languages/fa_IR.mjs +0 -172
- package/esm2022/i18n/languages/fi_FI.mjs +0 -172
- package/esm2022/i18n/languages/fr_BE.mjs +0 -172
- package/esm2022/i18n/languages/fr_FR.mjs +0 -172
- package/esm2022/i18n/languages/he_IL.mjs +0 -169
- package/esm2022/i18n/languages/hi_IN.mjs +0 -172
- package/esm2022/i18n/languages/hr_HR.mjs +0 -172
- package/esm2022/i18n/languages/hu_HU.mjs +0 -172
- package/esm2022/i18n/languages/hy_AM.mjs +0 -172
- package/esm2022/i18n/languages/id_ID.mjs +0 -172
- package/esm2022/i18n/languages/is_IS.mjs +0 -172
- package/esm2022/i18n/languages/it_IT.mjs +0 -172
- package/esm2022/i18n/languages/ja_JP.mjs +0 -172
- package/esm2022/i18n/languages/ka_GE.mjs +0 -172
- package/esm2022/i18n/languages/kn_IN.mjs +0 -172
- package/esm2022/i18n/languages/ko_KR.mjs +0 -180
- package/esm2022/i18n/languages/ku_IQ.mjs +0 -156
- package/esm2022/i18n/languages/lv_LV.mjs +0 -180
- package/esm2022/i18n/languages/mn_MN.mjs +0 -180
- package/esm2022/i18n/languages/ms_MY.mjs +0 -180
- package/esm2022/i18n/languages/nb_NO.mjs +0 -180
- package/esm2022/i18n/languages/ne_NP.mjs +0 -180
- package/esm2022/i18n/languages/nl_BE.mjs +0 -180
- package/esm2022/i18n/languages/nl_NL.mjs +0 -180
- package/esm2022/i18n/languages/pl_PL.mjs +0 -180
- package/esm2022/i18n/languages/pt_BR.mjs +0 -180
- package/esm2022/i18n/languages/pt_PT.mjs +0 -180
- package/esm2022/i18n/languages/ro_RO.mjs +0 -180
- package/esm2022/i18n/languages/ru_RU.mjs +0 -180
- package/esm2022/i18n/languages/sk_SK.mjs +0 -171
- package/esm2022/i18n/languages/sl_SI.mjs +0 -172
- package/esm2022/i18n/languages/sr_RS.mjs +0 -172
- package/esm2022/i18n/languages/sv_SE.mjs +0 -172
- package/esm2022/i18n/languages/ta_IN.mjs +0 -180
- package/esm2022/i18n/languages/th_TH.mjs +0 -180
- package/esm2022/i18n/languages/tr_TR.mjs +0 -180
- package/esm2022/i18n/languages/uk_UA.mjs +0 -180
- package/esm2022/i18n/languages/vi_VN.mjs +0 -180
- package/esm2022/i18n/languages/zh_CN.mjs +0 -180
- package/esm2022/i18n/languages/zh_TW.mjs +0 -180
- package/esm2022/i18n/ng-nest-ui-i18n.mjs +0 -5
- package/esm2022/i18n/public-api.mjs +0 -57
- package/esm2022/icon/icon.component.mjs +0 -158
- package/esm2022/icon/icon.module.mjs +0 -16
- package/esm2022/icon/icon.property.mjs +0 -65
- package/esm2022/icon/icon.service.mjs +0 -89
- package/esm2022/icon/ng-nest-ui-icon.mjs +0 -5
- package/esm2022/icon/public-api.mjs +0 -5
- package/esm2022/image/image-group.component.mjs +0 -27
- package/esm2022/image/image-preview.component.mjs +0 -135
- package/esm2022/image/image.component.mjs +0 -75
- package/esm2022/image/image.module.mjs +0 -18
- package/esm2022/image/image.property.mjs +0 -196
- package/esm2022/image/ng-nest-ui-image.mjs +0 -5
- package/esm2022/image/public-api.mjs +0 -6
- package/esm2022/index.mjs +0 -106
- package/esm2022/inner/inner.component.mjs +0 -25
- package/esm2022/inner/inner.module.mjs +0 -16
- package/esm2022/inner/inner.property.mjs +0 -30
- package/esm2022/inner/ng-nest-ui-inner.mjs +0 -5
- package/esm2022/inner/public-api.mjs +0 -4
- package/esm2022/input/input-group.component.mjs +0 -16
- package/esm2022/input/input.component.mjs +0 -224
- package/esm2022/input/input.module.mjs +0 -17
- package/esm2022/input/input.property.mjs +0 -281
- package/esm2022/input/ng-nest-ui-input.mjs +0 -5
- package/esm2022/input/public-api.mjs +0 -5
- package/esm2022/input-number/input-number.component.mjs +0 -131
- package/esm2022/input-number/input-number.module.mjs +0 -16
- package/esm2022/input-number/input-number.property.mjs +0 -146
- package/esm2022/input-number/ng-nest-ui-input-number.mjs +0 -5
- package/esm2022/input-number/public-api.mjs +0 -4
- package/esm2022/keyword/keyword.directive.mjs +0 -61
- package/esm2022/keyword/keyword.module.mjs +0 -16
- package/esm2022/keyword/keyword.property.mjs +0 -45
- package/esm2022/keyword/ng-nest-ui-keyword.mjs +0 -5
- package/esm2022/keyword/public-api.mjs +0 -4
- package/esm2022/layout/col.component.mjs +0 -68
- package/esm2022/layout/layout.module.mjs +0 -17
- package/esm2022/layout/layout.property.mjs +0 -150
- package/esm2022/layout/ng-nest-ui-layout.mjs +0 -5
- package/esm2022/layout/public-api.mjs +0 -5
- package/esm2022/layout/row.component.mjs +0 -54
- package/esm2022/link/link.component.mjs +0 -28
- package/esm2022/link/link.module.mjs +0 -16
- package/esm2022/link/link.property.mjs +0 -109
- package/esm2022/link/ng-nest-ui-link.mjs +0 -5
- package/esm2022/link/public-api.mjs +0 -4
- package/esm2022/list/list-drop-group.directive.mjs +0 -39
- package/esm2022/list/list-option.component.mjs +0 -37
- package/esm2022/list/list.component.mjs +0 -409
- package/esm2022/list/list.module.mjs +0 -18
- package/esm2022/list/list.property.mjs +0 -273
- package/esm2022/list/ng-nest-ui-list.mjs +0 -5
- package/esm2022/list/public-api.mjs +0 -6
- package/esm2022/loading/loading.component.mjs +0 -77
- package/esm2022/loading/loading.module.mjs +0 -16
- package/esm2022/loading/loading.property.mjs +0 -70
- package/esm2022/loading/ng-nest-ui-loading.mjs +0 -5
- package/esm2022/loading/public-api.mjs +0 -4
- package/esm2022/menu/menu-node.component.mjs +0 -36
- package/esm2022/menu/menu.component.mjs +0 -171
- package/esm2022/menu/menu.module.mjs +0 -17
- package/esm2022/menu/menu.property.mjs +0 -107
- package/esm2022/menu/ng-nest-ui-menu.mjs +0 -5
- package/esm2022/menu/public-api.mjs +0 -5
- package/esm2022/message/message-ref.mjs +0 -13
- package/esm2022/message/message.component.mjs +0 -40
- package/esm2022/message/message.module.mjs +0 -15
- package/esm2022/message/message.property.mjs +0 -9
- package/esm2022/message/message.service.mjs +0 -146
- package/esm2022/message/ng-nest-ui-message.mjs +0 -5
- package/esm2022/message/public-api.mjs +0 -6
- package/esm2022/message-box/message-box.component.mjs +0 -122
- package/esm2022/message-box/message-box.module.mjs +0 -15
- package/esm2022/message-box/message-box.property.mjs +0 -8
- package/esm2022/message-box/message-box.service.mjs +0 -97
- package/esm2022/message-box/ng-nest-ui-message-box.mjs +0 -5
- package/esm2022/message-box/public-api.mjs +0 -5
- package/esm2022/ng-nest-ui.mjs +0 -5
- package/esm2022/notification/ng-nest-ui-notification.mjs +0 -5
- package/esm2022/notification/notification.component.mjs +0 -42
- package/esm2022/notification/notification.module.mjs +0 -15
- package/esm2022/notification/notification.property.mjs +0 -8
- package/esm2022/notification/notification.service.mjs +0 -107
- package/esm2022/notification/public-api.mjs +0 -5
- package/esm2022/outlet/ng-nest-ui-outlet.mjs +0 -5
- package/esm2022/outlet/outlet.directive.mjs +0 -72
- package/esm2022/outlet/outlet.module.mjs +0 -16
- package/esm2022/outlet/outlet.property.mjs +0 -7
- package/esm2022/outlet/public-api.mjs +0 -4
- package/esm2022/page-header/ng-nest-ui-page-header.mjs +0 -5
- package/esm2022/page-header/page-header.component.mjs +0 -24
- package/esm2022/page-header/page-header.module.mjs +0 -16
- package/esm2022/page-header/page-header.property.mjs +0 -50
- package/esm2022/page-header/public-api.mjs +0 -4
- package/esm2022/pagination/ng-nest-ui-pagination.mjs +0 -5
- package/esm2022/pagination/pagination.component.mjs +0 -205
- package/esm2022/pagination/pagination.module.mjs +0 -16
- package/esm2022/pagination/pagination.property.mjs +0 -149
- package/esm2022/pagination/public-api.mjs +0 -4
- package/esm2022/pattern/ng-nest-ui-pattern.mjs +0 -5
- package/esm2022/pattern/pattern.component.mjs +0 -18
- package/esm2022/pattern/pattern.module.mjs +0 -16
- package/esm2022/pattern/pattern.property.mjs +0 -7
- package/esm2022/pattern/public-api.mjs +0 -4
- package/esm2022/popconfirm/ng-nest-ui-popconfirm.mjs +0 -5
- package/esm2022/popconfirm/popconfirm.component.mjs +0 -59
- package/esm2022/popconfirm/popconfirm.module.mjs +0 -16
- package/esm2022/popconfirm/popconfirm.property.mjs +0 -100
- package/esm2022/popconfirm/public-api.mjs +0 -4
- package/esm2022/popover/ng-nest-ui-popover.mjs +0 -5
- package/esm2022/popover/popover-portal.component.mjs +0 -52
- package/esm2022/popover/popover.directive.mjs +0 -186
- package/esm2022/popover/popover.module.mjs +0 -16
- package/esm2022/popover/popover.property.mjs +0 -101
- package/esm2022/popover/public-api.mjs +0 -5
- package/esm2022/portal/ng-nest-ui-portal.mjs +0 -5
- package/esm2022/portal/portal.module.mjs +0 -16
- package/esm2022/portal/portal.property.mjs +0 -24
- package/esm2022/portal/portal.service.mjs +0 -190
- package/esm2022/portal/public-api.mjs +0 -4
- package/esm2022/progress/ng-nest-ui-progress.mjs +0 -5
- package/esm2022/progress/progress.component.mjs +0 -224
- package/esm2022/progress/progress.module.mjs +0 -16
- package/esm2022/progress/progress.property.mjs +0 -110
- package/esm2022/progress/public-api.mjs +0 -4
- package/esm2022/radio/ng-nest-ui-radio.mjs +0 -5
- package/esm2022/radio/public-api.mjs +0 -4
- package/esm2022/radio/radio.component.mjs +0 -77
- package/esm2022/radio/radio.module.mjs +0 -16
- package/esm2022/radio/radio.property.mjs +0 -121
- package/esm2022/rate/ng-nest-ui-rate.mjs +0 -5
- package/esm2022/rate/public-api.mjs +0 -4
- package/esm2022/rate/rate.component.mjs +0 -99
- package/esm2022/rate/rate.module.mjs +0 -16
- package/esm2022/rate/rate.property.mjs +0 -86
- package/esm2022/resizable/ng-nest-ui-resizable.mjs +0 -5
- package/esm2022/resizable/public-api.mjs +0 -4
- package/esm2022/resizable/resizable.directive.mjs +0 -264
- package/esm2022/resizable/resizable.module.mjs +0 -16
- package/esm2022/resizable/resizable.property.mjs +0 -64
- package/esm2022/result/ng-nest-ui-result.mjs +0 -5
- package/esm2022/result/public-api.mjs +0 -4
- package/esm2022/result/result.component.mjs +0 -25
- package/esm2022/result/result.module.mjs +0 -16
- package/esm2022/result/result.property.mjs +0 -45
- package/esm2022/ripple/ng-nest-ui-ripple.mjs +0 -5
- package/esm2022/ripple/public-api.mjs +0 -4
- package/esm2022/ripple/ripple.directive.mjs +0 -94
- package/esm2022/ripple/ripple.module.mjs +0 -16
- package/esm2022/ripple/ripple.property.mjs +0 -40
- package/esm2022/select/ng-nest-ui-select.mjs +0 -5
- package/esm2022/select/public-api.mjs +0 -5
- package/esm2022/select/select-portal.component.mjs +0 -103
- package/esm2022/select/select.component.mjs +0 -687
- package/esm2022/select/select.module.mjs +0 -16
- package/esm2022/select/select.property.mjs +0 -238
- package/esm2022/skeleton/ng-nest-ui-skeleton.mjs +0 -5
- package/esm2022/skeleton/public-api.mjs +0 -4
- package/esm2022/skeleton/skeleton.component.mjs +0 -25
- package/esm2022/skeleton/skeleton.module.mjs +0 -16
- package/esm2022/skeleton/skeleton.property.mjs +0 -55
- package/esm2022/slider/ng-nest-ui-slider.mjs +0 -5
- package/esm2022/slider/public-api.mjs +0 -4
- package/esm2022/slider/slider.component.mjs +0 -222
- package/esm2022/slider/slider.module.mjs +0 -17
- package/esm2022/slider/slider.property.mjs +0 -102
- package/esm2022/slider-select/ng-nest-ui-slider-select.mjs +0 -5
- package/esm2022/slider-select/public-api.mjs +0 -4
- package/esm2022/slider-select/slider-select.component.mjs +0 -368
- package/esm2022/slider-select/slider-select.module.mjs +0 -16
- package/esm2022/slider-select/slider-select.property.mjs +0 -136
- package/esm2022/statistic/countdown.component.mjs +0 -70
- package/esm2022/statistic/ng-nest-ui-statistic.mjs +0 -5
- package/esm2022/statistic/public-api.mjs +0 -5
- package/esm2022/statistic/statistic.component.mjs +0 -34
- package/esm2022/statistic/statistic.module.mjs +0 -17
- package/esm2022/statistic/statistic.property.mjs +0 -106
- package/esm2022/steps/ng-nest-ui-steps.mjs +0 -5
- package/esm2022/steps/public-api.mjs +0 -4
- package/esm2022/steps/steps.component.mjs +0 -49
- package/esm2022/steps/steps.module.mjs +0 -16
- package/esm2022/steps/steps.property.mjs +0 -60
- package/esm2022/switch/ng-nest-ui-switch.mjs +0 -5
- package/esm2022/switch/public-api.mjs +0 -4
- package/esm2022/switch/switch.component.mjs +0 -37
- package/esm2022/switch/switch.module.mjs +0 -16
- package/esm2022/switch/switch.property.mjs +0 -91
- package/esm2022/table/ng-nest-ui-table.mjs +0 -5
- package/esm2022/table/public-api.mjs +0 -7
- package/esm2022/table/table-body.component.mjs +0 -236
- package/esm2022/table/table-foot.component.mjs +0 -29
- package/esm2022/table/table-head.component.mjs +0 -169
- package/esm2022/table/table.component.mjs +0 -372
- package/esm2022/table/table.module.mjs +0 -19
- package/esm2022/table/table.property.mjs +0 -624
- package/esm2022/tabs/ng-nest-ui-tabs.mjs +0 -5
- package/esm2022/tabs/public-api.mjs +0 -7
- package/esm2022/tabs/tab-content.component.mjs +0 -21
- package/esm2022/tabs/tab-link.directive.mjs +0 -46
- package/esm2022/tabs/tab.component.mjs +0 -19
- package/esm2022/tabs/tabs.component.mjs +0 -143
- package/esm2022/tabs/tabs.module.mjs +0 -18
- package/esm2022/tabs/tabs.property.mjs +0 -141
- package/esm2022/tag/ng-nest-ui-tag.mjs +0 -5
- package/esm2022/tag/public-api.mjs +0 -4
- package/esm2022/tag/tag.component.mjs +0 -51
- package/esm2022/tag/tag.module.mjs +0 -16
- package/esm2022/tag/tag.property.mjs +0 -80
- package/esm2022/text-retract/ng-nest-ui-text-retract.mjs +0 -5
- package/esm2022/text-retract/public-api.mjs +0 -4
- package/esm2022/text-retract/text-retract.component.mjs +0 -42
- package/esm2022/text-retract/text-retract.module.mjs +0 -16
- package/esm2022/text-retract/text-retract.property.mjs +0 -35
- package/esm2022/textarea/ng-nest-ui-textarea.mjs +0 -5
- package/esm2022/textarea/public-api.mjs +0 -4
- package/esm2022/textarea/textarea.component.mjs +0 -68
- package/esm2022/textarea/textarea.module.mjs +0 -16
- package/esm2022/textarea/textarea.property.mjs +0 -126
- package/esm2022/theme/ng-nest-ui-theme.mjs +0 -5
- package/esm2022/theme/public-api.mjs +0 -4
- package/esm2022/theme/theme.component.mjs +0 -179
- package/esm2022/theme/theme.module.mjs +0 -16
- package/esm2022/theme/theme.property.mjs +0 -63
- package/esm2022/time-ago/ng-nest-ui-time-ago.mjs +0 -5
- package/esm2022/time-ago/public-api.mjs +0 -4
- package/esm2022/time-ago/time-ago.module.mjs +0 -16
- package/esm2022/time-ago/time-ago.pipe.mjs +0 -70
- package/esm2022/time-ago/time-ago.property.mjs +0 -7
- package/esm2022/time-picker/ng-nest-ui-time-picker.mjs +0 -5
- package/esm2022/time-picker/public-api.mjs +0 -6
- package/esm2022/time-picker/time-picker-frame.component.mjs +0 -312
- package/esm2022/time-picker/time-picker-portal.component.mjs +0 -78
- package/esm2022/time-picker/time-picker.component.mjs +0 -266
- package/esm2022/time-picker/time-picker.module.mjs +0 -17
- package/esm2022/time-picker/time-picker.property.mjs +0 -198
- package/esm2022/time-range/ng-nest-ui-time-range.mjs +0 -5
- package/esm2022/time-range/public-api.mjs +0 -4
- package/esm2022/time-range/time-range.module.mjs +0 -16
- package/esm2022/time-range/time-range.pipe.mjs +0 -44
- package/esm2022/time-range/time-range.property.mjs +0 -7
- package/esm2022/timeline/ng-nest-ui-timeline.mjs +0 -5
- package/esm2022/timeline/public-api.mjs +0 -4
- package/esm2022/timeline/timeline.component.mjs +0 -45
- package/esm2022/timeline/timeline.module.mjs +0 -16
- package/esm2022/timeline/timeline.property.mjs +0 -50
- package/esm2022/tooltip/ng-nest-ui-tooltip.mjs +0 -5
- package/esm2022/tooltip/public-api.mjs +0 -5
- package/esm2022/tooltip/tooltip-portal.component.mjs +0 -103
- package/esm2022/tooltip/tooltip.directive.mjs +0 -143
- package/esm2022/tooltip/tooltip.module.mjs +0 -16
- package/esm2022/tooltip/tooltip.property.mjs +0 -86
- package/esm2022/transfer/ng-nest-ui-transfer.mjs +0 -5
- package/esm2022/transfer/public-api.mjs +0 -4
- package/esm2022/transfer/transfer.component.mjs +0 -659
- package/esm2022/transfer/transfer.module.mjs +0 -16
- package/esm2022/transfer/transfer.property.mjs +0 -112
- package/esm2022/tree/ng-nest-ui-tree.mjs +0 -5
- package/esm2022/tree/public-api.mjs +0 -5
- package/esm2022/tree/tree-node.component.mjs +0 -297
- package/esm2022/tree/tree.component.mjs +0 -579
- package/esm2022/tree/tree.module.mjs +0 -17
- package/esm2022/tree/tree.property.mjs +0 -337
- package/esm2022/tree/tree.service.mjs +0 -102
- package/esm2022/tree-file/ng-nest-ui-tree-file.mjs +0 -5
- package/esm2022/tree-file/public-api.mjs +0 -4
- package/esm2022/tree-file/tree-file.component.mjs +0 -118
- package/esm2022/tree-file/tree-file.module.mjs +0 -16
- package/esm2022/tree-file/tree-file.property.mjs +0 -90
- package/esm2022/tree-select/ng-nest-ui-tree-select.mjs +0 -5
- package/esm2022/tree-select/public-api.mjs +0 -5
- package/esm2022/tree-select/tree-select-portal.component.mjs +0 -86
- package/esm2022/tree-select/tree-select.component.mjs +0 -659
- package/esm2022/tree-select/tree-select.module.mjs +0 -17
- package/esm2022/tree-select/tree-select.property.mjs +0 -237
- package/esm2022/typography/ng-nest-ui-typography.mjs +0 -5
- package/esm2022/typography/public-api.mjs +0 -4
- package/esm2022/typography/typography.component.mjs +0 -27
- package/esm2022/typography/typography.module.mjs +0 -16
- package/esm2022/typography/typography.property.mjs +0 -34
- package/esm2022/upload/ng-nest-ui-upload.mjs +0 -5
- package/esm2022/upload/public-api.mjs +0 -5
- package/esm2022/upload/upload-portal.component.mjs +0 -196
- package/esm2022/upload/upload.component.mjs +0 -233
- package/esm2022/upload/upload.module.mjs +0 -16
- package/esm2022/upload/upload.property.mjs +0 -118
- package/style/core/base.scss +0 -20
- package/style/core/cdk.scss +0 -72
- package/style/core/portal.scss +0 -5
- package/style/core/var.scss +0 -4
- package/style/mixins/index.scss +0 -9
- package/style/params/layout.scss +0 -73
- package/style/params/primary.scss +0 -208
- package/style/themes/default.scss +0 -1
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { XTransferComponent } from './transfer.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class XTransferModule {
|
|
5
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTransferModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XTransferModule, imports: [XTransferComponent], exports: [XTransferComponent] }); }
|
|
7
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTransferModule, imports: [XTransferComponent] }); }
|
|
8
|
-
}
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTransferModule, decorators: [{
|
|
10
|
-
type: NgModule,
|
|
11
|
-
args: [{
|
|
12
|
-
exports: [XTransferComponent],
|
|
13
|
-
imports: [XTransferComponent]
|
|
14
|
-
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJhbnNmZXIvdHJhbnNmZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBTTFELE1BQU0sT0FBTyxlQUFlO2lJQUFmLGVBQWU7a0lBQWYsZUFBZSxZQUZoQixrQkFBa0IsYUFEbEIsa0JBQWtCO2tJQUdqQixlQUFlLFlBRmhCLGtCQUFrQjs7MkZBRWpCLGVBQWU7a0JBSjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUcmFuc2ZlckNvbXBvbmVudCB9IGZyb20gJy4vdHJhbnNmZXIuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZXhwb3J0czogW1hUcmFuc2ZlckNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1hUcmFuc2ZlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhUcmFuc2Zlck1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { XToBoolean, XToDataConvert } from '@ng-nest/ui/core';
|
|
2
|
-
import { Component, input, model } from '@angular/core';
|
|
3
|
-
import { XFormControlFunction } from '@ng-nest/ui/base-form';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Transfer
|
|
7
|
-
* @selector x-transfer
|
|
8
|
-
* @decorator component
|
|
9
|
-
*/
|
|
10
|
-
export const XTransferPrefix = 'x-transfer';
|
|
11
|
-
const X_TRANSFER_CONFIG_NAME = 'transfer';
|
|
12
|
-
/**
|
|
13
|
-
* Transfer Property
|
|
14
|
-
*/
|
|
15
|
-
export class XTransferProperty extends XFormControlFunction(X_TRANSFER_CONFIG_NAME) {
|
|
16
|
-
constructor() {
|
|
17
|
-
super(...arguments);
|
|
18
|
-
/**
|
|
19
|
-
* @zh_CN 数据对象
|
|
20
|
-
* @en_US Data object
|
|
21
|
-
*/
|
|
22
|
-
this.data = input([], { transform: XToDataConvert });
|
|
23
|
-
/**
|
|
24
|
-
* @zh_CN 选择的类型
|
|
25
|
-
* @en_US Type
|
|
26
|
-
*/
|
|
27
|
-
this.type = input(this.config?.type ?? 'list');
|
|
28
|
-
/**
|
|
29
|
-
* @zh_CN 标题
|
|
30
|
-
* @en_US Title
|
|
31
|
-
* @default ['List', 'Selected']
|
|
32
|
-
*/
|
|
33
|
-
this.titles = input(this.config?.titles ?? null);
|
|
34
|
-
/**
|
|
35
|
-
* @zh_CN 穿梭框样式,使用方式与 ngStyle 相同
|
|
36
|
-
* @en_US shuttle box style, same as ngStyle
|
|
37
|
-
*/
|
|
38
|
-
this.listStyle = input(this.config?.listStyle ?? null);
|
|
39
|
-
/**
|
|
40
|
-
* @zh_CN 隐藏全选复选框
|
|
41
|
-
* @en_US Hidden check all
|
|
42
|
-
*/
|
|
43
|
-
this.hiddenCheckAll = input();
|
|
44
|
-
/**
|
|
45
|
-
* @zh_CN 是否能拖动, type
|
|
46
|
-
* @en_US Can drag
|
|
47
|
-
*/
|
|
48
|
-
this.drag = input(this.config?.drag ?? false, { transform: XToBoolean });
|
|
49
|
-
/**
|
|
50
|
-
* @zh_CN 是否显示搜索。type 为 'table',需要设置 tableHeadSearchTpl 和 tableQuery 来配合使用
|
|
51
|
-
* @en_US Whether to display search
|
|
52
|
-
*/
|
|
53
|
-
this.search = input(false, { transform: XToBoolean });
|
|
54
|
-
/**
|
|
55
|
-
* @zh_CN 表格列头搜索自定义模板
|
|
56
|
-
* @en_US table head search custom template
|
|
57
|
-
*/
|
|
58
|
-
this.tableHeadSearchTpl = input();
|
|
59
|
-
/**
|
|
60
|
-
* @zh_CN 行数据自定义模板
|
|
61
|
-
* @en_US Data customization template
|
|
62
|
-
*/
|
|
63
|
-
this.nodeTpl = input();
|
|
64
|
-
/**
|
|
65
|
-
* @zh_CN 标题自定义模板
|
|
66
|
-
* @en_US Title custom template
|
|
67
|
-
*/
|
|
68
|
-
this.titleTpl = input();
|
|
69
|
-
/**
|
|
70
|
-
* @zh_CN 底部自定义模版
|
|
71
|
-
* @en_US Bottom Custom Template
|
|
72
|
-
*/
|
|
73
|
-
this.footerTpl = input();
|
|
74
|
-
/**
|
|
75
|
-
* @zh_CN 表格列集合
|
|
76
|
-
* @en_US Table column set
|
|
77
|
-
*/
|
|
78
|
-
this.tableColumns = input();
|
|
79
|
-
/**
|
|
80
|
-
* @zh_CN 表格页码
|
|
81
|
-
* @en_US Table page number
|
|
82
|
-
*/
|
|
83
|
-
this.tableIndex = model(1);
|
|
84
|
-
/**
|
|
85
|
-
* @zh_CN 表每页数据条数
|
|
86
|
-
* @en_US Number of data items per page
|
|
87
|
-
*/
|
|
88
|
-
this.tableSize = model(10);
|
|
89
|
-
/**
|
|
90
|
-
* @zh_CN 表格查询条件
|
|
91
|
-
* @en_US Number of data items per page
|
|
92
|
-
*/
|
|
93
|
-
this.tableQuery = input({});
|
|
94
|
-
/**
|
|
95
|
-
* @zh_CN 表格数据总条数
|
|
96
|
-
* @en_US Total number of table data
|
|
97
|
-
*/
|
|
98
|
-
this.tableTotal = model(0);
|
|
99
|
-
/**
|
|
100
|
-
* @zh_CN 反选操作
|
|
101
|
-
* @en_US Inverse select
|
|
102
|
-
*/
|
|
103
|
-
this.inverse = input(false, { transform: XToBoolean });
|
|
104
|
-
}
|
|
105
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTransferProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
106
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XTransferProperty, selector: "x-transfer-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, titles: { classPropertyName: "titles", publicName: "titles", isSignal: true, isRequired: false, transformFunction: null }, listStyle: { classPropertyName: "listStyle", publicName: "listStyle", isSignal: true, isRequired: false, transformFunction: null }, hiddenCheckAll: { classPropertyName: "hiddenCheckAll", publicName: "hiddenCheckAll", isSignal: true, isRequired: false, transformFunction: null }, drag: { classPropertyName: "drag", publicName: "drag", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, tableHeadSearchTpl: { classPropertyName: "tableHeadSearchTpl", publicName: "tableHeadSearchTpl", isSignal: true, isRequired: false, transformFunction: null }, nodeTpl: { classPropertyName: "nodeTpl", publicName: "nodeTpl", isSignal: true, isRequired: false, transformFunction: null }, titleTpl: { classPropertyName: "titleTpl", publicName: "titleTpl", isSignal: true, isRequired: false, transformFunction: null }, footerTpl: { classPropertyName: "footerTpl", publicName: "footerTpl", isSignal: true, isRequired: false, transformFunction: null }, tableColumns: { classPropertyName: "tableColumns", publicName: "tableColumns", isSignal: true, isRequired: false, transformFunction: null }, tableIndex: { classPropertyName: "tableIndex", publicName: "tableIndex", isSignal: true, isRequired: false, transformFunction: null }, tableSize: { classPropertyName: "tableSize", publicName: "tableSize", isSignal: true, isRequired: false, transformFunction: null }, tableQuery: { classPropertyName: "tableQuery", publicName: "tableQuery", isSignal: true, isRequired: false, transformFunction: null }, tableTotal: { classPropertyName: "tableTotal", publicName: "tableTotal", isSignal: true, isRequired: false, transformFunction: null }, inverse: { classPropertyName: "inverse", publicName: "inverse", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tableIndex: "tableIndexChange", tableSize: "tableSizeChange", tableTotal: "tableTotalChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
107
|
-
}
|
|
108
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTransferProperty, decorators: [{
|
|
109
|
-
type: Component,
|
|
110
|
-
args: [{ selector: `${XTransferPrefix}-property`, template: '' }]
|
|
111
|
-
}] });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXIucHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90cmFuc2Zlci90cmFuc2Zlci5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlELE9BQU8sRUFBZSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFJN0Q7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxZQUFZLENBQUM7QUFDNUMsTUFBTSxzQkFBc0IsR0FBRyxVQUFVLENBQUM7QUFFMUM7O0dBRUc7QUFFSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsb0JBQW9CLENBQUMsc0JBQXNCLENBQUM7SUFEbkY7O1FBRUU7OztXQUdHO1FBQ00sU0FBSSxHQUFHLEtBQUssQ0FBNkMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDckc7OztXQUdHO1FBQ00sU0FBSSxHQUFHLEtBQUssQ0FBZ0IsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksTUFBTSxDQUFDLENBQUM7UUFDbEU7Ozs7V0FJRztRQUNNLFdBQU0sR0FBRyxLQUFLLENBQWtCLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ3RFOzs7V0FHRztRQUNNLGNBQVMsR0FBRyxLQUFLLENBQTRCLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ3RGOzs7V0FHRztRQUNNLG1CQUFjLEdBQUcsS0FBSyxFQUFhLENBQUM7UUFDN0M7OztXQUdHO1FBQ00sU0FBSSxHQUFHLEtBQUssQ0FBb0IsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDaEc7OztXQUdHO1FBQ00sV0FBTSxHQUFHLEtBQUssQ0FBb0IsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDN0U7OztXQUdHO1FBQ00sdUJBQWtCLEdBQUcsS0FBSyxFQUFlLENBQUM7UUFDbkQ7OztXQUdHO1FBQ00sWUFBTyxHQUFHLEtBQUssRUFBcUIsQ0FBQztRQUM5Qzs7O1dBR0c7UUFDTSxhQUFRLEdBQUcsS0FBSyxFQUFxQixDQUFDO1FBQy9DOzs7V0FHRztRQUNNLGNBQVMsR0FBRyxLQUFLLEVBQXVCLENBQUM7UUFDbEQ7OztXQUdHO1FBQ00saUJBQVksR0FBRyxLQUFLLEVBQWtCLENBQUM7UUFDaEQ7OztXQUdHO1FBQ00sZUFBVSxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUN2Qzs7O1dBR0c7UUFDTSxjQUFTLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDOzs7V0FHRztRQUNNLGVBQVUsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDeEM7OztXQUdHO1FBQ00sZUFBVSxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUN2Qzs7O1dBR0c7UUFDTSxZQUFPLEdBQUcsS0FBSyxDQUFvQixLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztLQUMvRTtpSUF2RlksaUJBQWlCO3FIQUFqQixpQkFBaUIsMjNFQURrQyxFQUFFOzsyRkFDckQsaUJBQWlCO2tCQUQ3QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEdBQUcsZUFBZSxXQUFXLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFhUb0Jvb2xlYW4sIFhUb0RhdGFDb252ZXJ0IH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlUmVmLCBDb21wb25lbnQsIGlucHV0LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYRm9ybUNvbnRyb2xGdW5jdGlvbiB9IGZyb20gJ0BuZy1uZXN0L3VpL2Jhc2UtZm9ybSc7XHJcbmltcG9ydCB7IFhUYWJsZUNvbHVtbiB9IGZyb20gJ0BuZy1uZXN0L3VpL3RhYmxlJztcclxuaW1wb3J0IHR5cGUgeyBYRGF0YSwgWFBhcmVudElkZW50aXR5UHJvcGVydHksIFhCb29sZWFuLCBYUXVlcnksIFhTdHlsZU1hcCwgWFRlbXBsYXRlIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcblxyXG4vKipcclxuICogVHJhbnNmZXJcclxuICogQHNlbGVjdG9yIHgtdHJhbnNmZXJcclxuICogQGRlY29yYXRvciBjb21wb25lbnRcclxuICovXHJcbmV4cG9ydCBjb25zdCBYVHJhbnNmZXJQcmVmaXggPSAneC10cmFuc2Zlcic7XHJcbmNvbnN0IFhfVFJBTlNGRVJfQ09ORklHX05BTUUgPSAndHJhbnNmZXInO1xyXG5cclxuLyoqXHJcbiAqIFRyYW5zZmVyIFByb3BlcnR5XHJcbiAqL1xyXG5AQ29tcG9uZW50KHsgc2VsZWN0b3I6IGAke1hUcmFuc2ZlclByZWZpeH0tcHJvcGVydHlgLCB0ZW1wbGF0ZTogJycgfSlcclxuZXhwb3J0IGNsYXNzIFhUcmFuc2ZlclByb3BlcnR5IGV4dGVuZHMgWEZvcm1Db250cm9sRnVuY3Rpb24oWF9UUkFOU0ZFUl9DT05GSUdfTkFNRSkge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmlbDmja7lr7nosaFcclxuICAgKiBAZW5fVVMgRGF0YSBvYmplY3RcclxuICAgKi9cclxuICByZWFkb25seSBkYXRhID0gaW5wdXQ8WERhdGE8WFRyYW5zZmVyTm9kZT4sIFhEYXRhPFhUcmFuc2Zlck5vZGU+PihbXSwgeyB0cmFuc2Zvcm06IFhUb0RhdGFDb252ZXJ0IH0pO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDpgInmi6nnmoTnsbvlnotcclxuICAgKiBAZW5fVVMgVHlwZVxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IHR5cGUgPSBpbnB1dDxYVHJhbnNmZXJUeXBlPih0aGlzLmNvbmZpZz8udHlwZSA/PyAnbGlzdCcpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmoIfpophcclxuICAgKiBAZW5fVVMgVGl0bGVcclxuICAgKiBAZGVmYXVsdCBbJ0xpc3QnLCAnU2VsZWN0ZWQnXVxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IHRpdGxlcyA9IGlucHV0PHN0cmluZ1tdIHwgbnVsbD4odGhpcy5jb25maWc/LnRpdGxlcyA/PyBudWxsKTtcclxuICAvKipcclxuICAgKiBAemhfQ04g56m/5qKt5qGG5qC35byP77yM5L2/55So5pa55byP5LiOIG5nU3R5bGUg55u45ZCMXHJcbiAgICogQGVuX1VTIHNodXR0bGUgYm94IHN0eWxlLCBzYW1lIGFzIG5nU3R5bGVcclxuICAgKi9cclxuICByZWFkb25seSBsaXN0U3R5bGUgPSBpbnB1dDxYVHJhbnNmZXJMaXN0U3R5bGUgfCBudWxsPih0aGlzLmNvbmZpZz8ubGlzdFN0eWxlID8/IG51bGwpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDpmpDol4/lhajpgInlpI3pgInmoYZcclxuICAgKiBAZW5fVVMgSGlkZGVuIGNoZWNrIGFsbFxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IGhpZGRlbkNoZWNrQWxsID0gaW5wdXQ8Ym9vbGVhbltdPigpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmmK/lkKbog73mi5bliqgsIHR5cGVcclxuICAgKiBAZW5fVVMgQ2FuIGRyYWdcclxuICAgKi9cclxuICByZWFkb25seSBkcmFnID0gaW5wdXQ8Ym9vbGVhbiwgWEJvb2xlYW4+KHRoaXMuY29uZmlnPy5kcmFnID8/IGZhbHNlLCB7IHRyYW5zZm9ybTogWFRvQm9vbGVhbiB9KTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5piv5ZCm5pi+56S65pCc57Si44CCdHlwZSDkuLogJ3RhYmxlJ++8jOmcgOimgeiuvue9riB0YWJsZUhlYWRTZWFyY2hUcGwg5ZKMIHRhYmxlUXVlcnkg5p2l6YWN5ZCI5L2/55SoXHJcbiAgICogQGVuX1VTIFdoZXRoZXIgdG8gZGlzcGxheSBzZWFyY2hcclxuICAgKi9cclxuICByZWFkb25seSBzZWFyY2ggPSBpbnB1dDxib29sZWFuLCBYQm9vbGVhbj4oZmFsc2UsIHsgdHJhbnNmb3JtOiBYVG9Cb29sZWFuIH0pO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDooajmoLzliJflpLTmkJzntKLoh6rlrprkuYnmqKHmnb9cclxuICAgKiBAZW5fVVMgdGFibGUgaGVhZCBzZWFyY2ggY3VzdG9tIHRlbXBsYXRlXHJcbiAgICovXHJcbiAgcmVhZG9ubHkgdGFibGVIZWFkU2VhcmNoVHBsID0gaW5wdXQ8WFRlbXBsYXRlW10+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOihjOaVsOaNruiHquWumuS5ieaooeadv1xyXG4gICAqIEBlbl9VUyBEYXRhIGN1c3RvbWl6YXRpb24gdGVtcGxhdGVcclxuICAgKi9cclxuICByZWFkb25seSBub2RlVHBsID0gaW5wdXQ8VGVtcGxhdGVSZWY8dm9pZD4+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOagh+mimOiHquWumuS5ieaooeadv1xyXG4gICAqIEBlbl9VUyBUaXRsZSBjdXN0b20gdGVtcGxhdGVcclxuICAgKi9cclxuICByZWFkb25seSB0aXRsZVRwbCA9IGlucHV0PFRlbXBsYXRlUmVmPHZvaWQ+PigpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlupXpg6joh6rlrprkuYnmqKHniYhcclxuICAgKiBAZW5fVVMgQm90dG9tIEN1c3RvbSBUZW1wbGF0ZVxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IGZvb3RlclRwbCA9IGlucHV0PFRlbXBsYXRlUmVmPHZvaWQ+W10+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOihqOagvOWIl+mbhuWQiFxyXG4gICAqIEBlbl9VUyBUYWJsZSBjb2x1bW4gc2V0XHJcbiAgICovXHJcbiAgcmVhZG9ubHkgdGFibGVDb2x1bW5zID0gaW5wdXQ8WFRhYmxlQ29sdW1uW10+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOihqOagvOmhteeggVxyXG4gICAqIEBlbl9VUyBUYWJsZSBwYWdlIG51bWJlclxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IHRhYmxlSW5kZXggPSBtb2RlbDxudW1iZXI+KDEpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDooajmr4/pobXmlbDmja7mnaHmlbBcclxuICAgKiBAZW5fVVMgTnVtYmVyIG9mIGRhdGEgaXRlbXMgcGVyIHBhZ2VcclxuICAgKi9cclxuICByZWFkb25seSB0YWJsZVNpemUgPSBtb2RlbDxudW1iZXI+KDEwKTtcclxuICAvKipcclxuICAgKiBAemhfQ04g6KGo5qC85p+l6K+i5p2h5Lu2XHJcbiAgICogQGVuX1VTIE51bWJlciBvZiBkYXRhIGl0ZW1zIHBlciBwYWdlXHJcbiAgICovXHJcbiAgcmVhZG9ubHkgdGFibGVRdWVyeSA9IGlucHV0PFhRdWVyeT4oe30pO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDooajmoLzmlbDmja7mgLvmnaHmlbBcclxuICAgKiBAZW5fVVMgVG90YWwgbnVtYmVyIG9mIHRhYmxlIGRhdGFcclxuICAgKi9cclxuICByZWFkb25seSB0YWJsZVRvdGFsID0gbW9kZWw8bnVtYmVyPigwKTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5Y+N6YCJ5pON5L2cXHJcbiAgICogQGVuX1VTIEludmVyc2Ugc2VsZWN0XHJcbiAgICovXHJcbiAgcmVhZG9ubHkgaW52ZXJzZSA9IGlucHV0PGJvb2xlYW4sIFhCb29sZWFuPihmYWxzZSwgeyB0cmFuc2Zvcm06IFhUb0Jvb2xlYW4gfSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUcmFuc2ZlciBOb2RlXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmFuc2Zlck5vZGUgZXh0ZW5kcyBYUGFyZW50SWRlbnRpdHlQcm9wZXJ0eTxYVHJhbnNmZXJOb2RlPiB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOaYr+WQpumAieS4rVxyXG4gICAqIEBlbl9VUyB3aGV0aGVyIGNoZWNrYm94IGlzIHNlbGVjdGVkXHJcbiAgICovXHJcbiAgY2hlY2tlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOW6j+WPt1xyXG4gICAqIEBlbl9VUyBTZXJpYWwgbnVtYmVyXHJcbiAgICovXHJcbiAgaW5kZXg/OiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiHquWumuS5ieWxnuaAp1xyXG4gICAqIEBlbl9VUyBDdXN0b20gcHJvcGVydHlcclxuICAgKi9cclxuICBbcHJvcGVydHk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRyYW5zZmVyIFNvdXJjZVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBYVHJhbnNmZXJTb3VyY2Uge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmoIfpophcclxuICAgKiBAZW5fVVMgVGl0bGVcclxuICAgKi9cclxuICB0aXRsZT86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g5pCc57Si55qE5pWw5o2uXHJcbiAgICogQGVuX1VTIFNlYXJjaGVkIGRhdGFcclxuICAgKi9cclxuICBzZWFyY2hJbnB1dD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g5YWo6YCJXHJcbiAgICogQGVuX1VTIFNlbGVjdCBhbGxcclxuICAgKi9cclxuICBjaGVja2VkQWxsPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6YCJ5Lit55qE5pWw6YePXHJcbiAgICogQGVuX1VTIFNlbGVjdGVkIHF1YW50aXR5XHJcbiAgICovXHJcbiAgY2hlY2tlZENvdW50PzogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlj6/pgInmi6nnmoTmlbDmja7mgLvmlbBcclxuICAgKiBAZW5fVVMgVG90YWwgbnVtYmVyIG9mIHNlbGVjdGFibGUgZGF0YVxyXG4gICAqL1xyXG4gIGNvdW50PzogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDkuI3noa7lrprnirbmgIHnmoTmoLflvI9cclxuICAgKiBAZW5fVVMgVW5jZXJ0YWluIHN0YXRlIHN0eWxlXHJcbiAgICovXHJcbiAgaW5kZXRlcm1pbmF0ZT86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWIl+ihqOaVsOaNrlxyXG4gICAqIEBlbl9VUyBMaXN0IGRhdGFcclxuICAgKi9cclxuICBsaXN0PzogWFRyYW5zZmVyTm9kZVtdO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmkJzntKLmlbDmja7vvIznlKjmnaXov5jljp9cclxuICAgKiBAZW5fVVMgU2VhcmNoIGRhdGEgdG8gcmVzdG9yZVxyXG4gICAqL1xyXG4gIHNlYXJjaExpc3Q/OiBYVHJhbnNmZXJOb2RlW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaMiemSruemgeeUqFxyXG4gICAqIEBlbl9VUyBCdXR0b24gZGlzYWJsZWRcclxuICAgKi9cclxuICBkaXNhYmxlZEJ1dHRvbj86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOmakOiXj+WFqOmAieWkjemAieahhlxyXG4gICAqIEBlbl9VUyBIaWRkZW4gY2hlY2sgYWxsXHJcbiAgICovXHJcbiAgaGlkZGVuQ2hlY2tBbGw/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDliJfooajmoLflvI9cclxuICAgKiBAZW5fVVMgTGlzdCBzdHlsZVxyXG4gICAqL1xyXG4gIGxpc3RTdHlsZT86IFhTdHlsZU1hcDtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pWw5o2u5pa55ZCRXHJcbiAgICogQGVuX1VTIERhdGEgZGlyZWN0aW9uXHJcbiAgICovXHJcbiAgZGlyZWN0aW9uPzogWFRyYW5zZmVyRGlyZWN0aW9uO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlupXpg6joh6rlrprkuYnmqKHniYhcclxuICAgKiBAZW5fVVMgQm90dG9tIEN1c3RvbSBUZW1wbGF0ZVxyXG4gICAqL1xyXG4gIGZvb3RlclRwbD86IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOihqOagvOWIl+WktOaQnOe0ouiHquWumuS5ieaooeadv1xyXG4gICAqIEBlbl9VUyB0YWJsZSBoZWFkIHNlYXJjaCBjdXN0b20gdGVtcGxhdGVcclxuICAgKi9cclxuICB0YWJsZUhlYWRTZWFyY2hUcGw/OiBYVGVtcGxhdGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAemhfQ04g5pWw5o2u5pa55ZCRXHJcbiAqIEBlbl9VUyBUcmFuc2ZlciBkaXJlY3Rpb25cclxuICovXHJcbmV4cG9ydCB0eXBlIFhUcmFuc2ZlckRpcmVjdGlvbiA9ICdsZWZ0JyB8ICdyaWdodCc7XHJcblxyXG4vKipcclxuICogQHpoX0NOIOaVsOaNruexu+Wei1xyXG4gKiBAZW5fVVMgVHJhbnNmZXIgdHlwZVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgWFRyYW5zZmVyVHlwZSA9ICdsaXN0JyB8ICd0cmVlJyB8ICd0YWJsZSc7XHJcblxyXG4vKipcclxuICogQHpoX0NOIOepv+aireahhuagt+W8j++8jOS9v+eUqOaWueW8j+S4jiBuZ1N0eWxlIOebuOWQjFxyXG4gKiBAZW5fVVMgc2h1dHRsZSBib3ggc3R5bGUsIHNhbWUgYXMgbmdTdHlsZVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgWFRyYW5zZmVyTGlzdFN0eWxlID0gWFN0eWxlTWFwIHwgWFN0eWxlTWFwW107XHJcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbmVzdC11aS10cmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS9uZy1uZXN0LXVpLXRyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './tree.component';
|
|
2
|
-
export * from './tree-node.component';
|
|
3
|
-
export * from './tree.module';
|
|
4
|
-
export * from './tree.property';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdHJlZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RyZWUtbm9kZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RyZWUubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi90cmVlLnByb3BlcnR5JztcclxuIl19
|
|
@@ -1,297 +0,0 @@
|
|
|
1
|
-
import { Component, ViewEncapsulation, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy, HostBinding, HostListener, inject, computed, signal, output } from '@angular/core';
|
|
2
|
-
import { XTreeNodePrefix, XTreeNodeProperty } from './tree.property';
|
|
3
|
-
import { XIsEmpty, XComputedStyle, XToCssPx, XIsObjectArray, XIsArray } from '@ng-nest/ui/core';
|
|
4
|
-
import { Subject } from 'rxjs';
|
|
5
|
-
import { XTreeService } from './tree.service';
|
|
6
|
-
import { DOCUMENT, NgStyle } from '@angular/common';
|
|
7
|
-
import { XIconComponent } from '@ng-nest/ui/icon';
|
|
8
|
-
import { XCheckboxComponent } from '@ng-nest/ui/checkbox';
|
|
9
|
-
import { FormsModule } from '@angular/forms';
|
|
10
|
-
import { XKeywordDirective } from '@ng-nest/ui/keyword';
|
|
11
|
-
import { XLinkComponent } from '@ng-nest/ui/link';
|
|
12
|
-
import { XOutletDirective } from '@ng-nest/ui/outlet';
|
|
13
|
-
import { XTreeComponent } from './tree.component';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@angular/forms";
|
|
16
|
-
export class XTreeNodeComponent extends XTreeNodeProperty {
|
|
17
|
-
constructor() {
|
|
18
|
-
super(...arguments);
|
|
19
|
-
this.tree = inject(XTreeComponent, { optional: true, host: true });
|
|
20
|
-
this.nodeMouseenter = output();
|
|
21
|
-
this.rootClass = true;
|
|
22
|
-
this.document = inject(DOCUMENT);
|
|
23
|
-
this.fontSize = computed(() => parseFloat(XComputedStyle(this.document.documentElement, 'font-size')));
|
|
24
|
-
this.unSubject = new Subject();
|
|
25
|
-
this.showDragIndicator = computed(() => {
|
|
26
|
-
return this.tree.dragging() && this.tree.hoverTreeNode()?.id === this.id();
|
|
27
|
-
});
|
|
28
|
-
this.isChildrenLast = computed(() => {
|
|
29
|
-
let parent = this.tree.nodes().find((x) => x.id === this.pid());
|
|
30
|
-
if (!parent || !parent.children)
|
|
31
|
-
return false;
|
|
32
|
-
const index = parent.children.indexOf(this.node());
|
|
33
|
-
return index + 1 === parent.children.length;
|
|
34
|
-
});
|
|
35
|
-
this.isParentLast = computed(() => {
|
|
36
|
-
let parents = this.treeService.getParents(this.tree.nodes(), this.node());
|
|
37
|
-
if (parents.length <= 1)
|
|
38
|
-
return [];
|
|
39
|
-
const res = [];
|
|
40
|
-
parents.reduce((pre, curr) => {
|
|
41
|
-
if (pre === null)
|
|
42
|
-
return curr;
|
|
43
|
-
const index = curr.children?.indexOf(pre);
|
|
44
|
-
res.push(index + 1 === curr.children?.length);
|
|
45
|
-
return curr;
|
|
46
|
-
});
|
|
47
|
-
return res.reverse();
|
|
48
|
-
});
|
|
49
|
-
this.verticalLevel = computed(() => {
|
|
50
|
-
if (this.level() > 0) {
|
|
51
|
-
return Array.from({ length: this.level() }).map((_x, index) => index + 1);
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
return [];
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
this.verticalWidth = computed(() => {
|
|
58
|
-
return XToCssPx(this.tree.spacing(), this.fontSize()) / 2;
|
|
59
|
-
});
|
|
60
|
-
this.paddingLeft = computed(() => (this.level() ? this.level() : 0) * XToCssPx(this.tree.spacing(), this.fontSize()));
|
|
61
|
-
this.indicatorWidth = computed(() => {
|
|
62
|
-
if (this.tree.dragPosition() === 0) {
|
|
63
|
-
return `calc(100% - ${this.paddingLeft() + XToCssPx(this.tree.spacing(), this.fontSize()) + (this.leaf() ? this.fontSize() * 1.5 : 0)}px)`;
|
|
64
|
-
}
|
|
65
|
-
return `calc(100% - ${this.paddingLeft() + (this.leaf() ? this.fontSize() * 1.5 : 0)}px)`;
|
|
66
|
-
});
|
|
67
|
-
this.indicatorStyle = computed(() => {
|
|
68
|
-
if (this.tree.dragPosition() === 1) {
|
|
69
|
-
return { bottom: `-${0.0625 * this.fontSize()}px` };
|
|
70
|
-
}
|
|
71
|
-
else if (this.tree.dragPosition() === -1) {
|
|
72
|
-
return { top: `-${0.0625 * this.fontSize()}px` };
|
|
73
|
-
}
|
|
74
|
-
else if (this.tree.dragPosition() === 0) {
|
|
75
|
-
return {
|
|
76
|
-
bottom: `-${0.0625 * this.fontSize()}px`
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
return {};
|
|
80
|
-
});
|
|
81
|
-
this.changed = signal(false);
|
|
82
|
-
this.activated = computed(() => {
|
|
83
|
-
this.changed();
|
|
84
|
-
const activatedId = this.tree.activatedId();
|
|
85
|
-
if (this.tree.multiple()) {
|
|
86
|
-
if (this.tree.objectArray()) {
|
|
87
|
-
return XIsObjectArray(activatedId) && activatedId.map((x) => x.id).includes(this.id());
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
return XIsArray(activatedId) && activatedId.includes(this.id());
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
return activatedId === this.id();
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
this.cdr = inject(ChangeDetectorRef);
|
|
98
|
-
this.treeService = inject(XTreeService);
|
|
99
|
-
this.elementRef = inject(ElementRef);
|
|
100
|
-
}
|
|
101
|
-
onMouseenter(event) {
|
|
102
|
-
this.nodeMouseenter.emit({ event: event, node: this.node(), ele: this.elementRef });
|
|
103
|
-
}
|
|
104
|
-
onMouseleave(_event) {
|
|
105
|
-
if (!this.tree.dragging())
|
|
106
|
-
return;
|
|
107
|
-
const hoverTreeNode = this.tree.hoverTreeNode();
|
|
108
|
-
hoverTreeNode && hoverTreeNode.change && hoverTreeNode.change();
|
|
109
|
-
this.cdr.detectChanges();
|
|
110
|
-
}
|
|
111
|
-
ngOnInit() {
|
|
112
|
-
const node = this.node();
|
|
113
|
-
node.change = (check) => {
|
|
114
|
-
if (check)
|
|
115
|
-
this.setCheckbox();
|
|
116
|
-
this.cdr.detectChanges();
|
|
117
|
-
};
|
|
118
|
-
if (!this.tree.levelCheck())
|
|
119
|
-
return;
|
|
120
|
-
if (this.checked())
|
|
121
|
-
this.setCheckbox();
|
|
122
|
-
this.setIndeterminate(this.node());
|
|
123
|
-
}
|
|
124
|
-
ngOnDestroy() {
|
|
125
|
-
this.unSubject.next();
|
|
126
|
-
this.unSubject.complete();
|
|
127
|
-
}
|
|
128
|
-
onActivate(event, node) {
|
|
129
|
-
const change = this.tree.activatedNode()?.change;
|
|
130
|
-
this.tree.nodeOpen() && !this.leaf() && this.onToggle(event, node);
|
|
131
|
-
const onChange = () => {
|
|
132
|
-
change && change();
|
|
133
|
-
event.preventDefault();
|
|
134
|
-
event.stopPropagation();
|
|
135
|
-
this.cdr.detectChanges();
|
|
136
|
-
};
|
|
137
|
-
if (this.tree.onlyLeaf() && !this.leaf()) {
|
|
138
|
-
onChange();
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
if (this.tree.multiple()) {
|
|
142
|
-
if (!this.tree.activatedId())
|
|
143
|
-
this.tree.activatedId.set([]);
|
|
144
|
-
if (this.tree.objectArray()) {
|
|
145
|
-
const ids = this.tree.activatedId().map((x) => x.id);
|
|
146
|
-
if (ids.includes(node.id)) {
|
|
147
|
-
this.tree.activatedId.update((x) => {
|
|
148
|
-
x.splice(ids.indexOf(node.id), 1);
|
|
149
|
-
return [...x];
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
else {
|
|
153
|
-
this.tree.activatedId.update((x) => {
|
|
154
|
-
x.push(node);
|
|
155
|
-
return [...x];
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
if (this.tree.activatedId().includes(node.id)) {
|
|
161
|
-
this.tree.activatedId.update((x) => {
|
|
162
|
-
x.splice(this.tree.activatedId().indexOf(node.id), 1);
|
|
163
|
-
return [...x];
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
this.tree.activatedId.update((x) => {
|
|
168
|
-
x.push(node.id);
|
|
169
|
-
return [...x];
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
else {
|
|
175
|
-
this.tree.activatedId.set(node.id);
|
|
176
|
-
}
|
|
177
|
-
if (this.tree.activatedNode()) {
|
|
178
|
-
if (this.tree.activatedNode()?.id === node.id && !this.tree.allowManyActivated())
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
this.tree.activatedNode.set(node);
|
|
182
|
-
this.changed.update((x) => !x);
|
|
183
|
-
this.tree.activatedChange.emit(node);
|
|
184
|
-
this.tree.nodeClick.emit(node);
|
|
185
|
-
onChange();
|
|
186
|
-
}
|
|
187
|
-
onCheckboxChange() {
|
|
188
|
-
this.setCheckbox();
|
|
189
|
-
this.tree.checkboxChange?.emit(this.node());
|
|
190
|
-
}
|
|
191
|
-
getVerticalLeft(i) {
|
|
192
|
-
const spacing = XToCssPx(this.tree.spacing(), this.fontSize());
|
|
193
|
-
return (i - 1) * spacing + spacing / 2;
|
|
194
|
-
}
|
|
195
|
-
setCheckbox() {
|
|
196
|
-
if (!this.tree.levelCheck())
|
|
197
|
-
return;
|
|
198
|
-
this.node().indeterminate = this.checked();
|
|
199
|
-
this.node().children && this.setChildrenCheckbox(this.checked());
|
|
200
|
-
const setParent = (node) => {
|
|
201
|
-
let parent = this.tree.nodes().find((x) => x.id === node.pid);
|
|
202
|
-
if (!parent || XIsEmpty(parent.children))
|
|
203
|
-
return;
|
|
204
|
-
let checkedList = parent.children?.filter((y) => y.checked);
|
|
205
|
-
let indeterminateList = parent.children?.filter((y) => y.indeterminate);
|
|
206
|
-
parent.checked = checkedList?.length === parent.children?.length;
|
|
207
|
-
parent.indeterminate = checkedList.length > 0 || indeterminateList.length > 0;
|
|
208
|
-
parent.change && parent.change();
|
|
209
|
-
setParent(parent);
|
|
210
|
-
};
|
|
211
|
-
setParent(this.node());
|
|
212
|
-
this.cdr.detectChanges();
|
|
213
|
-
}
|
|
214
|
-
setChildrenCheckbox(checked) {
|
|
215
|
-
const setChildren = (children, isChecked) => {
|
|
216
|
-
if (XIsEmpty(children))
|
|
217
|
-
return;
|
|
218
|
-
for (let x of children) {
|
|
219
|
-
if (x.disabled)
|
|
220
|
-
continue;
|
|
221
|
-
x.checked = isChecked;
|
|
222
|
-
x.indeterminate = isChecked;
|
|
223
|
-
x.change && x.change();
|
|
224
|
-
setChildren(x.children, isChecked);
|
|
225
|
-
}
|
|
226
|
-
};
|
|
227
|
-
setChildren(this.node().children, checked);
|
|
228
|
-
this.cdr.detectChanges();
|
|
229
|
-
}
|
|
230
|
-
setParentCheckbox() {
|
|
231
|
-
if (XIsEmpty(this.node().children))
|
|
232
|
-
return;
|
|
233
|
-
let checkedList = this.node().children?.filter((x) => x.checked);
|
|
234
|
-
let indeterminateList = this.node().children?.filter((x) => x.indeterminate);
|
|
235
|
-
this.node().checked = checkedList?.length === this.node().children?.length;
|
|
236
|
-
this.node().indeterminate =
|
|
237
|
-
checkedList.length > 0 || indeterminateList.length > 0;
|
|
238
|
-
this.cdr.detectChanges();
|
|
239
|
-
}
|
|
240
|
-
setIndeterminate(node) {
|
|
241
|
-
const getChildren = (children) => {
|
|
242
|
-
if (XIsEmpty(children))
|
|
243
|
-
return;
|
|
244
|
-
children.forEach((x) => {
|
|
245
|
-
if (x.indeterminate || x.checked) {
|
|
246
|
-
node.indeterminate = true;
|
|
247
|
-
return;
|
|
248
|
-
}
|
|
249
|
-
getChildren(x.children);
|
|
250
|
-
});
|
|
251
|
-
};
|
|
252
|
-
getChildren(node.children);
|
|
253
|
-
this.cdr.detectChanges();
|
|
254
|
-
}
|
|
255
|
-
getNodeDisabled(disabled) {
|
|
256
|
-
return disabled;
|
|
257
|
-
}
|
|
258
|
-
onAction(event, action, node) {
|
|
259
|
-
action.handler && action.handler(node);
|
|
260
|
-
event.stopPropagation();
|
|
261
|
-
}
|
|
262
|
-
onToggle(event, node) {
|
|
263
|
-
this.toggle.emit(node);
|
|
264
|
-
event?.preventDefault();
|
|
265
|
-
event?.stopPropagation();
|
|
266
|
-
}
|
|
267
|
-
trackByItem(_index, item) {
|
|
268
|
-
return `${item.id}-${item.level}`;
|
|
269
|
-
}
|
|
270
|
-
trackByAction(_index, item) {
|
|
271
|
-
return item.id;
|
|
272
|
-
}
|
|
273
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTreeNodeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
274
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XTreeNodeComponent, isStandalone: true, selector: "x-tree-node, [x-tree-node]", outputs: { nodeMouseenter: "nodeMouseenter" }, host: { listeners: { "mouseenter": "onMouseenter($event)", "mouseleave": "onMouseleave()" }, properties: { "class.x-tree-node": "this.rootClass" } }, usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-tree-node-content\"\r\n [class.x-activated]=\"activated()\"\r\n [class.x-disabled]=\"disabled()\"\r\n [class.x-tree-node-sub]=\"!leaf()\"\r\n [class.x-tree-node-last]=\"isChildrenLast()\"\r\n [style.padding-left.px]=\"paddingLeft() + fontSize() / 2\"\r\n [style.height]=\"height() ? height() : nodeHeight() ? nodeHeight() : ''\"\r\n [style.align-items]=\"alignItems() ? alignItems() : nodeAlignItems()\"\r\n (click)=\"!disabled() && onActivate($event, node())\"\r\n>\r\n @if (tree.showLine() && level()! > 0) {\r\n <div class=\"x-tree-node-line\" [style.width.px]=\"paddingLeft()\">\r\n @for (i of verticalLevel(); track i) {\r\n <div\r\n class=\"x-tree-node-line-vertical\"\r\n [hidden]=\"isParentLast()[i - 1]\"\r\n [class.is-last]=\"i === verticalLevel().length\"\r\n [style.left.px]=\"getVerticalLeft(i)\"\r\n ></div>\r\n }\r\n <div\r\n class=\"x-tree-node-line-horizontal\"\r\n [style.width.px]=\"verticalWidth()\"\r\n [style.left.px]=\"getVerticalLeft(verticalLevel().length)\"\r\n ></div>\r\n </div>\r\n }\r\n @if (showDragIndicator()) {\r\n <div class=\"x-tree-node-drag-indicator\" [style.width]=\"indicatorWidth()\" [ngStyle]=\"indicatorStyle()\"></div>\r\n }\r\n @if (loading()) {\r\n <x-icon class=\"x-tree-node-loading\" type=\"fto-loader\" [spin]=\"loading()!\"></x-icon>\r\n } @else {\r\n <div\r\n class=\"x-tree-node-right\"\r\n [class.is-leaf]=\"leaf()\"\r\n [class.is-open]=\"open()\"\r\n [class.is-template]=\"tree.expandedIcon()\"\r\n [style.width.px]=\"verticalWidth() * 2\"\r\n (click)=\"!tree.nodeOpen() && onToggle($event, node())\"\r\n >\r\n @if (tree.expandedIcon()) {\r\n <ng-container *xOutlet=\"tree.expandedIcon(); context: { $node: node() }\"></ng-container>\r\n } @else {\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n }\r\n </div>\r\n }\r\n @if (tree.checkbox()) {\r\n <x-checkbox\r\n [data]=\"[{ label: '', id: id() }]\"\r\n [(ngModel)]=\"checked\"\r\n (ngModelChange)=\"onCheckboxChange()\"\r\n [indeterminate]=\"indeterminate()!\"\r\n [disabled]=\"disabled()!\"\r\n (click)=\"$event.stopPropagation()\"\r\n single\r\n ></x-checkbox>\r\n }\r\n @if (!tree.labelTpl()) {\r\n <span\r\n class=\"x-tree-node-label\"\r\n [class.nowrap]=\"nowrap() === false || nowrap() === true ? nowrap() : nodeNowrap()\"\r\n [title]=\"label()\"\r\n x-keyword\r\n [text]=\"tree.keywordText()\"\r\n [caseSensitive]=\"tree.caseSensitive()\"\r\n >{{ label() }}</span\r\n >\r\n } @else {\r\n <ng-container *xOutlet=\"tree.labelTpl(); context: { $node: node() }\"></ng-container>\r\n }\r\n <span class=\"x-tree-node-operations\">\r\n @for (action of tree.actions(); track action.id) {\r\n <x-link [icon]=\"action.icon\" [title]=\"action.label\" (click)=\"onAction($event, action, node())\"></x-link>\r\n }\r\n </span>\r\n @if (tree.multiple() && activated()) {\r\n <x-icon class=\"x-tree-node-checked\" type=\"fto-check\"></x-icon>\r\n }\r\n</div>\r\n", styles: ["x-tree-node{display:block}.x-tree-node{display:block}.x-tree-node{margin:0;padding:0}.x-tree-node-content{position:relative;display:flex;border-radius:var(--x-border-radius);margin:.125rem 0;padding-right:.5rem;line-height:var(--x-height-small);cursor:pointer}.x-tree-node-content x-icon{padding:.25rem;font-size:1.25rem;transition:var(--x-animation-duration-base)}.x-tree-node-content x-icon:hover{color:var(--x-text-200)}.x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}.x-tree-node-content.x-disabled{color:var(--x-text-400)}.x-tree-node-content:not(.x-disabled):hover{background-color:var(--x-background-a200)}.x-tree-node-content:not(.x-disabled):hover .x-tree-node-operations{display:flex;align-items:center}.x-tree-node-content:not(.x-disabled).x-activated{background-color:var(--x-primary-900);color:var(--x-primary)}.x-tree-node-content:not(.x-disabled).x-tree-node-checked{color:var(--x-primary)}.x-tree-node-right,.x-tree-node-loading{color:var(--x-text-300);margin-right:.125rem}.x-tree-node-right{display:flex;align-items:center;justify-content:center}.x-tree-node-right.is-leaf{visibility:hidden}.x-tree-node-right.is-open:not(.is-template) x-icon{transform:rotate(90deg)}.x-tree-node-line{position:absolute;left:.5rem;height:calc(100% + .25rem);display:flex;align-items:center;justify-content:space-between}.x-tree-node-line-vertical{position:absolute;height:100%;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-tree-node-line-horizontal{position:absolute;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-tree-node-last .x-tree-node-line-vertical.is-last{height:50%;top:0}.x-tree-node-operations{display:none}.x-tree-node-operations .x-link{padding:0 .125rem}.x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}.x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.x-tree-node-drag-indicator{position:absolute;height:.0625rem;border-radius:var(--x-border-radius);background-color:var(--x-primary);right:0;z-index:1}.x-tree-node-drag-indicator:before{position:absolute;top:-.125rem;left:-.2625rem;width:.325rem;height:.325rem;background-color:transparent;border-color:var(--x-primary);border-style:solid;border-width:.0625rem .0625rem 0 0;content:\" \";transform:rotate(45deg)}body>x-tree-node{display:block}body>x-tree-node.cdk-drag-preview .x-tree-node-content{position:relative;display:flex;border-radius:var(--x-border-radius);margin:.125rem 0;padding-right:.5rem;line-height:var(--x-height-small);cursor:pointer}body>x-tree-node.cdk-drag-preview .x-tree-node-content x-icon{padding:.25rem;font-size:1.25rem;transition:var(--x-animation-duration-base)}body>x-tree-node.cdk-drag-preview .x-tree-node-content x-icon:hover{color:var(--x-text-200)}body>x-tree-node.cdk-drag-preview .x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}body>x-tree-node.cdk-drag-preview .x-tree-node-content.x-disabled{color:var(--x-text-400)}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled):hover{background-color:var(--x-background-a200)}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled):hover .x-tree-node-operations{display:flex;align-items:center}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled).x-activated{background-color:var(--x-primary-900);color:var(--x-primary)}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled).x-tree-node-checked{color:var(--x-primary)}body>x-tree-node.cdk-drag-preview .x-tree-node-right,body>x-tree-node.cdk-drag-preview .x-tree-node-loading{color:var(--x-text-300);margin-right:.125rem}body>x-tree-node.cdk-drag-preview .x-tree-node-right{display:flex;align-items:center;justify-content:center}body>x-tree-node.cdk-drag-preview .x-tree-node-right.is-leaf{visibility:hidden}body>x-tree-node.cdk-drag-preview .x-tree-node-right.is-open:not(.is-template) x-icon{transform:rotate(90deg)}body>x-tree-node.cdk-drag-preview .x-tree-node-line{position:absolute;left:.5rem;height:calc(100% + .25rem);display:flex;align-items:center;justify-content:space-between}body>x-tree-node.cdk-drag-preview .x-tree-node-line-vertical{position:absolute;height:100%;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}body>x-tree-node.cdk-drag-preview .x-tree-node-line-horizontal{position:absolute;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}body>x-tree-node.cdk-drag-preview .x-tree-node-last .x-tree-node-line-vertical.is-last{height:50%;top:0}body>x-tree-node.cdk-drag-preview .x-tree-node-operations{display:none}body>x-tree-node.cdk-drag-preview .x-tree-node-operations .x-link{padding:0 .125rem}body>x-tree-node.cdk-drag-preview .x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}body>x-tree-node.cdk-drag-preview .x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}body>x-tree-node.cdk-drag-preview .x-tree-node-drag-indicator{position:absolute;height:.0625rem;border-radius:var(--x-border-radius);background-color:var(--x-primary);right:0;z-index:1}body>x-tree-node.cdk-drag-preview .x-tree-node-drag-indicator:before{position:absolute;top:-.125rem;left:-.2625rem;width:.325rem;height:.325rem;background-color:transparent;border-color:var(--x-primary);border-style:solid;border-width:.0625rem .0625rem 0 0;content:\" \";transform:rotate(45deg)}body>x-tree-node.cdk-drag-preview .x-tree-node-content{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.5}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XCheckboxComponent, selector: "x-checkbox" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XKeywordDirective, selector: "[x-keyword]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
275
|
-
}
|
|
276
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTreeNodeComponent, decorators: [{
|
|
277
|
-
type: Component,
|
|
278
|
-
args: [{ selector: `${XTreeNodePrefix}, [${XTreeNodePrefix}]`, standalone: true, imports: [
|
|
279
|
-
NgStyle,
|
|
280
|
-
FormsModule,
|
|
281
|
-
XIconComponent,
|
|
282
|
-
XCheckboxComponent,
|
|
283
|
-
XOutletDirective,
|
|
284
|
-
XLinkComponent,
|
|
285
|
-
XKeywordDirective
|
|
286
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-tree-node-content\"\r\n [class.x-activated]=\"activated()\"\r\n [class.x-disabled]=\"disabled()\"\r\n [class.x-tree-node-sub]=\"!leaf()\"\r\n [class.x-tree-node-last]=\"isChildrenLast()\"\r\n [style.padding-left.px]=\"paddingLeft() + fontSize() / 2\"\r\n [style.height]=\"height() ? height() : nodeHeight() ? nodeHeight() : ''\"\r\n [style.align-items]=\"alignItems() ? alignItems() : nodeAlignItems()\"\r\n (click)=\"!disabled() && onActivate($event, node())\"\r\n>\r\n @if (tree.showLine() && level()! > 0) {\r\n <div class=\"x-tree-node-line\" [style.width.px]=\"paddingLeft()\">\r\n @for (i of verticalLevel(); track i) {\r\n <div\r\n class=\"x-tree-node-line-vertical\"\r\n [hidden]=\"isParentLast()[i - 1]\"\r\n [class.is-last]=\"i === verticalLevel().length\"\r\n [style.left.px]=\"getVerticalLeft(i)\"\r\n ></div>\r\n }\r\n <div\r\n class=\"x-tree-node-line-horizontal\"\r\n [style.width.px]=\"verticalWidth()\"\r\n [style.left.px]=\"getVerticalLeft(verticalLevel().length)\"\r\n ></div>\r\n </div>\r\n }\r\n @if (showDragIndicator()) {\r\n <div class=\"x-tree-node-drag-indicator\" [style.width]=\"indicatorWidth()\" [ngStyle]=\"indicatorStyle()\"></div>\r\n }\r\n @if (loading()) {\r\n <x-icon class=\"x-tree-node-loading\" type=\"fto-loader\" [spin]=\"loading()!\"></x-icon>\r\n } @else {\r\n <div\r\n class=\"x-tree-node-right\"\r\n [class.is-leaf]=\"leaf()\"\r\n [class.is-open]=\"open()\"\r\n [class.is-template]=\"tree.expandedIcon()\"\r\n [style.width.px]=\"verticalWidth() * 2\"\r\n (click)=\"!tree.nodeOpen() && onToggle($event, node())\"\r\n >\r\n @if (tree.expandedIcon()) {\r\n <ng-container *xOutlet=\"tree.expandedIcon(); context: { $node: node() }\"></ng-container>\r\n } @else {\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n }\r\n </div>\r\n }\r\n @if (tree.checkbox()) {\r\n <x-checkbox\r\n [data]=\"[{ label: '', id: id() }]\"\r\n [(ngModel)]=\"checked\"\r\n (ngModelChange)=\"onCheckboxChange()\"\r\n [indeterminate]=\"indeterminate()!\"\r\n [disabled]=\"disabled()!\"\r\n (click)=\"$event.stopPropagation()\"\r\n single\r\n ></x-checkbox>\r\n }\r\n @if (!tree.labelTpl()) {\r\n <span\r\n class=\"x-tree-node-label\"\r\n [class.nowrap]=\"nowrap() === false || nowrap() === true ? nowrap() : nodeNowrap()\"\r\n [title]=\"label()\"\r\n x-keyword\r\n [text]=\"tree.keywordText()\"\r\n [caseSensitive]=\"tree.caseSensitive()\"\r\n >{{ label() }}</span\r\n >\r\n } @else {\r\n <ng-container *xOutlet=\"tree.labelTpl(); context: { $node: node() }\"></ng-container>\r\n }\r\n <span class=\"x-tree-node-operations\">\r\n @for (action of tree.actions(); track action.id) {\r\n <x-link [icon]=\"action.icon\" [title]=\"action.label\" (click)=\"onAction($event, action, node())\"></x-link>\r\n }\r\n </span>\r\n @if (tree.multiple() && activated()) {\r\n <x-icon class=\"x-tree-node-checked\" type=\"fto-check\"></x-icon>\r\n }\r\n</div>\r\n", styles: ["x-tree-node{display:block}.x-tree-node{display:block}.x-tree-node{margin:0;padding:0}.x-tree-node-content{position:relative;display:flex;border-radius:var(--x-border-radius);margin:.125rem 0;padding-right:.5rem;line-height:var(--x-height-small);cursor:pointer}.x-tree-node-content x-icon{padding:.25rem;font-size:1.25rem;transition:var(--x-animation-duration-base)}.x-tree-node-content x-icon:hover{color:var(--x-text-200)}.x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}.x-tree-node-content.x-disabled{color:var(--x-text-400)}.x-tree-node-content:not(.x-disabled):hover{background-color:var(--x-background-a200)}.x-tree-node-content:not(.x-disabled):hover .x-tree-node-operations{display:flex;align-items:center}.x-tree-node-content:not(.x-disabled).x-activated{background-color:var(--x-primary-900);color:var(--x-primary)}.x-tree-node-content:not(.x-disabled).x-tree-node-checked{color:var(--x-primary)}.x-tree-node-right,.x-tree-node-loading{color:var(--x-text-300);margin-right:.125rem}.x-tree-node-right{display:flex;align-items:center;justify-content:center}.x-tree-node-right.is-leaf{visibility:hidden}.x-tree-node-right.is-open:not(.is-template) x-icon{transform:rotate(90deg)}.x-tree-node-line{position:absolute;left:.5rem;height:calc(100% + .25rem);display:flex;align-items:center;justify-content:space-between}.x-tree-node-line-vertical{position:absolute;height:100%;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-tree-node-line-horizontal{position:absolute;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-tree-node-last .x-tree-node-line-vertical.is-last{height:50%;top:0}.x-tree-node-operations{display:none}.x-tree-node-operations .x-link{padding:0 .125rem}.x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}.x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.x-tree-node-drag-indicator{position:absolute;height:.0625rem;border-radius:var(--x-border-radius);background-color:var(--x-primary);right:0;z-index:1}.x-tree-node-drag-indicator:before{position:absolute;top:-.125rem;left:-.2625rem;width:.325rem;height:.325rem;background-color:transparent;border-color:var(--x-primary);border-style:solid;border-width:.0625rem .0625rem 0 0;content:\" \";transform:rotate(45deg)}body>x-tree-node{display:block}body>x-tree-node.cdk-drag-preview .x-tree-node-content{position:relative;display:flex;border-radius:var(--x-border-radius);margin:.125rem 0;padding-right:.5rem;line-height:var(--x-height-small);cursor:pointer}body>x-tree-node.cdk-drag-preview .x-tree-node-content x-icon{padding:.25rem;font-size:1.25rem;transition:var(--x-animation-duration-base)}body>x-tree-node.cdk-drag-preview .x-tree-node-content x-icon:hover{color:var(--x-text-200)}body>x-tree-node.cdk-drag-preview .x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}body>x-tree-node.cdk-drag-preview .x-tree-node-content.x-disabled{color:var(--x-text-400)}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled):hover{background-color:var(--x-background-a200)}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled):hover .x-tree-node-operations{display:flex;align-items:center}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled).x-activated{background-color:var(--x-primary-900);color:var(--x-primary)}body>x-tree-node.cdk-drag-preview .x-tree-node-content:not(.x-disabled).x-tree-node-checked{color:var(--x-primary)}body>x-tree-node.cdk-drag-preview .x-tree-node-right,body>x-tree-node.cdk-drag-preview .x-tree-node-loading{color:var(--x-text-300);margin-right:.125rem}body>x-tree-node.cdk-drag-preview .x-tree-node-right{display:flex;align-items:center;justify-content:center}body>x-tree-node.cdk-drag-preview .x-tree-node-right.is-leaf{visibility:hidden}body>x-tree-node.cdk-drag-preview .x-tree-node-right.is-open:not(.is-template) x-icon{transform:rotate(90deg)}body>x-tree-node.cdk-drag-preview .x-tree-node-line{position:absolute;left:.5rem;height:calc(100% + .25rem);display:flex;align-items:center;justify-content:space-between}body>x-tree-node.cdk-drag-preview .x-tree-node-line-vertical{position:absolute;height:100%;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}body>x-tree-node.cdk-drag-preview .x-tree-node-line-horizontal{position:absolute;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}body>x-tree-node.cdk-drag-preview .x-tree-node-last .x-tree-node-line-vertical.is-last{height:50%;top:0}body>x-tree-node.cdk-drag-preview .x-tree-node-operations{display:none}body>x-tree-node.cdk-drag-preview .x-tree-node-operations .x-link{padding:0 .125rem}body>x-tree-node.cdk-drag-preview .x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}body>x-tree-node.cdk-drag-preview .x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}body>x-tree-node.cdk-drag-preview .x-tree-node-drag-indicator{position:absolute;height:.0625rem;border-radius:var(--x-border-radius);background-color:var(--x-primary);right:0;z-index:1}body>x-tree-node.cdk-drag-preview .x-tree-node-drag-indicator:before{position:absolute;top:-.125rem;left:-.2625rem;width:.325rem;height:.325rem;background-color:transparent;border-color:var(--x-primary);border-style:solid;border-width:.0625rem .0625rem 0 0;content:\" \";transform:rotate(45deg)}body>x-tree-node.cdk-drag-preview .x-tree-node-content{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.5}\n"] }]
|
|
287
|
-
}], propDecorators: { rootClass: [{
|
|
288
|
-
type: HostBinding,
|
|
289
|
-
args: ['class.x-tree-node']
|
|
290
|
-
}], onMouseenter: [{
|
|
291
|
-
type: HostListener,
|
|
292
|
-
args: ['mouseenter', ['$event']]
|
|
293
|
-
}], onMouseleave: [{
|
|
294
|
-
type: HostListener,
|
|
295
|
-
args: ['mouseleave']
|
|
296
|
-
}] } });
|
|
297
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS1ub2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS1ub2RlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsdUJBQXVCLEVBQ3ZCLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQWEsaUJBQWlCLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsUUFBUSxFQUFZLGNBQWMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9C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QWEsQ0FBQyxNQUFjLEVBQUUsSUFBaUI7UUFDN0MsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7aUlBalFVLGtCQUFrQjtxSEFBbEIsa0JBQWtCLGtUQzNDL0IsNm1HQWtGQSw2K0tEcERJLE9BQU8sMEVBQ1AsV0FBVywrVkFDWCxjQUFjLG1EQUNkLGtCQUFrQix1REFDbEIsZ0JBQWdCLDZGQUNoQixjQUFjLG1EQUNkLGlCQUFpQjs7MkZBT1Isa0JBQWtCO2tCQWpCOUIsU0FBUzsrQkFDRSxHQUFHLGVBQWUsTUFBTSxlQUFlLEdBQUcsY0FDeEMsSUFBSSxXQUNQO3dCQUNQLE9BQU87d0JBQ1AsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGlCQUFpQjtxQkFDbEIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFLYixTQUFTO3NCQUExQyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFLUSxZQUFZO3NCQUFuRCxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFJVixZQUFZO3NCQUF2QyxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBpbmplY3QsXHJcbiAgY29tcHV0ZWQsXHJcbiAgc2lnbmFsLFxyXG4gIG91dHB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVHJlZU5vZGVQcmVmaXgsIFhUcmVlTm9kZSwgWFRyZWVOb2RlUHJvcGVydHksIFhUcmVlQWN0aW9uIH0gZnJvbSAnLi90cmVlLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzRW1wdHksIFhCb29sZWFuLCBYQ29tcHV0ZWRTdHlsZSwgWFRvQ3NzUHgsIFhJc09iamVjdEFycmF5LCBYSXNBcnJheSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFhUcmVlU2VydmljZSB9IGZyb20gJy4vdHJlZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRE9DVU1FTlQsIE5nU3R5bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBYSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2ljb24nO1xyXG5pbXBvcnQgeyBYQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9jaGVja2JveCc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBYS2V5d29yZERpcmVjdGl2ZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2tleXdvcmQnO1xyXG5pbXBvcnQgeyBYTGlua0NvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2xpbmsnO1xyXG5pbXBvcnQgeyBYT3V0bGV0RGlyZWN0aXZlIH0gZnJvbSAnQG5nLW5lc3QvdWkvb3V0bGV0JztcclxuaW1wb3J0IHsgWFRyZWVDb21wb25lbnQgfSBmcm9tICcuL3RyZWUuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVHJlZU5vZGVQcmVmaXh9LCBbJHtYVHJlZU5vZGVQcmVmaXh9XWAsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ1N0eWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBYSWNvbkNvbXBvbmVudCxcclxuICAgIFhDaGVja2JveENvbXBvbmVudCxcclxuICAgIFhPdXRsZXREaXJlY3RpdmUsXHJcbiAgICBYTGlua0NvbXBvbmVudCxcclxuICAgIFhLZXl3b3JkRGlyZWN0aXZlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1ub2RlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90cmVlLW5vZGUuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZU5vZGVDb21wb25lbnQgZXh0ZW5kcyBYVHJlZU5vZGVQcm9wZXJ0eSB7XHJcbiAgdHJlZSA9IGluamVjdChYVHJlZUNvbXBvbmVudCwgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KSE7XHJcbiAgbm9kZU1vdXNlZW50ZXIgPSBvdXRwdXQ8eyBldmVudDogTW91c2VFdmVudDsgbm9kZTogWFRyZWVOb2RlOyBlbGU6IEVsZW1lbnRSZWYgfT4oKTtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtdHJlZS1ub2RlJykgcm9vdENsYXNzID0gdHJ1ZTtcclxuICBwcml2YXRlIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcclxuICBmb250U2l6ZSA9IGNvbXB1dGVkKCgpID0+IHBhcnNlRmxvYXQoWENvbXB1dGVkU3R5bGUodGhpcy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsICdmb250LXNpemUnKSkpO1xyXG4gIHByaXZhdGUgdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicsIFsnJGV2ZW50J10pIG9uTW91c2VlbnRlcihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgdGhpcy5ub2RlTW91c2VlbnRlci5lbWl0KHsgZXZlbnQ6IGV2ZW50LCBub2RlOiB0aGlzLm5vZGUoKSwgZWxlOiB0aGlzLmVsZW1lbnRSZWYgfSk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgb25Nb3VzZWxlYXZlKF9ldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgaWYgKCF0aGlzLnRyZWUuZHJhZ2dpbmcoKSkgcmV0dXJuO1xyXG4gICAgY29uc3QgaG92ZXJUcmVlTm9kZSA9IHRoaXMudHJlZS5ob3ZlclRyZWVOb2RlKCk7XHJcbiAgICBob3ZlclRyZWVOb2RlICYmIGhvdmVyVHJlZU5vZGUuY2hhbmdlICYmIGhvdmVyVHJlZU5vZGUuY2hhbmdlKCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBzaG93RHJhZ0luZGljYXRvciA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIHJldHVybiB0aGlzLnRyZWUuZHJhZ2dpbmcoKSAmJiB0aGlzLnRyZWUuaG92ZXJUcmVlTm9kZSgpPy5pZCA9PT0gdGhpcy5pZCgpO1xyXG4gIH0pO1xyXG5cclxuICBpc0NoaWxkcmVuTGFzdCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGxldCBwYXJlbnQgPSB0aGlzLnRyZWUubm9kZXMoKS5maW5kKCh4OiBYVHJlZU5vZGUpID0+IHguaWQgPT09IHRoaXMucGlkKCkpO1xyXG4gICAgaWYgKCFwYXJlbnQgfHwgIXBhcmVudC5jaGlsZHJlbikgcmV0dXJuIGZhbHNlO1xyXG4gICAgY29uc3QgaW5kZXggPSBwYXJlbnQuY2hpbGRyZW4uaW5kZXhPZih0aGlzLm5vZGUoKSk7XHJcbiAgICByZXR1cm4gaW5kZXggKyAxID09PSBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoO1xyXG4gIH0pO1xyXG5cclxuICBpc1BhcmVudExhc3QgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBsZXQgcGFyZW50cyA9IHRoaXMudHJlZVNlcnZpY2UuZ2V0UGFyZW50cyh0aGlzLnRyZWUubm9kZXMoKSwgdGhpcy5ub2RlKCkpO1xyXG4gICAgaWYgKHBhcmVudHMubGVuZ3RoIDw9IDEpIHJldHVybiBbXTtcclxuICAgIGNvbnN0IHJlczogYm9vbGVhbltdID0gW107XHJcbiAgICBwYXJlbnRzLnJlZHVjZSgocHJlOiBYVHJlZU5vZGUsIGN1cnI6IFhUcmVlTm9kZSkgPT4ge1xyXG4gICAgICBpZiAocHJlID09PSBudWxsKSByZXR1cm4gY3VycjtcclxuICAgICAgY29uc3QgaW5kZXggPSBjdXJyLmNoaWxkcmVuPy5pbmRleE9mKHByZSkhO1xyXG4gICAgICByZXMucHVzaChpbmRleCArIDEgPT09IGN1cnIuY2hpbGRyZW4/Lmxlbmd0aCEpO1xyXG4gICAgICByZXR1cm4gY3VycjtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiByZXMucmV2ZXJzZSgpO1xyXG4gIH0pO1xyXG5cclxuICB2ZXJ0aWNhbExldmVsID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMubGV2ZWwoKSEgPiAwKSB7XHJcbiAgICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiB0aGlzLmxldmVsKCkhIH0pLm1hcCgoX3gsIGluZGV4KSA9PiBpbmRleCArIDEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG4gIH0pO1xyXG5cclxuICB2ZXJ0aWNhbFdpZHRoID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgcmV0dXJuIFhUb0Nzc1B4KHRoaXMudHJlZS5zcGFjaW5nKCksIHRoaXMuZm9udFNpemUoKSkgLyAyO1xyXG4gIH0pO1xyXG5cclxuICBwYWRkaW5nTGVmdCA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmxldmVsKCkhID8gdGhpcy5sZXZlbCgpISA6IDApICogWFRvQ3NzUHgodGhpcy50cmVlLnNwYWNpbmcoKSwgdGhpcy5mb250U2l6ZSgpKSk7XHJcblxyXG4gIGluZGljYXRvcldpZHRoID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMudHJlZS5kcmFnUG9zaXRpb24oKSA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gYGNhbGMoMTAwJSAtICR7dGhpcy5wYWRkaW5nTGVmdCgpICsgWFRvQ3NzUHgodGhpcy50cmVlLnNwYWNpbmcoKSwgdGhpcy5mb250U2l6ZSgpKSArICh0aGlzLmxlYWYoKSA/IHRoaXMuZm9udFNpemUoKSAqIDEuNSA6IDApfXB4KWA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYGNhbGMoMTAwJSAtICR7dGhpcy5wYWRkaW5nTGVmdCgpICsgKHRoaXMubGVhZigpID8gdGhpcy5mb250U2l6ZSgpICogMS41IDogMCl9cHgpYDtcclxuICB9KTtcclxuXHJcbiAgaW5kaWNhdG9yU3R5bGUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBpZiAodGhpcy50cmVlLmRyYWdQb3NpdGlvbigpID09PSAxKSB7XHJcbiAgICAgIHJldHVybiB7IGJvdHRvbTogYC0kezAuMDYyNSAqIHRoaXMuZm9udFNpemUoKX1weGAgfTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy50cmVlLmRyYWdQb3NpdGlvbigpID09PSAtMSkge1xyXG4gICAgICByZXR1cm4geyB0b3A6IGAtJHswLjA2MjUgKiB0aGlzLmZvbnRTaXplKCl9cHhgIH07XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudHJlZS5kcmFnUG9zaXRpb24oKSA9PT0gMCkge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGJvdHRvbTogYC0kezAuMDYyNSAqIHRoaXMuZm9udFNpemUoKX1weGBcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHJldHVybiB7fTtcclxuICB9KTtcclxuXHJcbiAgY2hhbmdlZCA9IHNpZ25hbChmYWxzZSk7XHJcblxyXG4gIGFjdGl2YXRlZCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIHRoaXMuY2hhbmdlZCgpO1xyXG4gICAgY29uc3QgYWN0aXZhdGVkSWQgPSB0aGlzLnRyZWUuYWN0aXZhdGVkSWQoKTtcclxuICAgIGlmICh0aGlzLnRyZWUubXVsdGlwbGUoKSkge1xyXG4gICAgICBpZiAodGhpcy50cmVlLm9iamVjdEFycmF5KCkpIHtcclxuICAgICAgICByZXR1cm4gWElzT2JqZWN0QXJyYXk8WFRyZWVOb2RlW10+KGFjdGl2YXRlZElkKSAmJiBhY3RpdmF0ZWRJZC5tYXAoKHg6IFhUcmVlTm9kZSkgPT4geC5pZCkuaW5jbHVkZXModGhpcy5pZCgpKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gWElzQXJyYXk8YW55W10+KGFjdGl2YXRlZElkKSAmJiBhY3RpdmF0ZWRJZC5pbmNsdWRlcyh0aGlzLmlkKCkpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gYWN0aXZhdGVkSWQgPT09IHRoaXMuaWQoKTtcclxuICAgIH1cclxuICB9KTtcclxuXHJcbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIHByaXZhdGUgdHJlZVNlcnZpY2UgPSBpbmplY3QoWFRyZWVTZXJ2aWNlKTtcclxuICBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IG5vZGUgPSB0aGlzLm5vZGUoKTtcclxuICAgIG5vZGUuY2hhbmdlID0gKGNoZWNrOiBib29sZWFuKSA9PiB7XHJcbiAgICAgIGlmIChjaGVjaykgdGhpcy5zZXRDaGVja2JveCgpO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9O1xyXG4gICAgaWYgKCF0aGlzLnRyZWUubGV2ZWxDaGVjaygpKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5jaGVja2VkKCkpIHRoaXMuc2V0Q2hlY2tib3goKTtcclxuICAgIHRoaXMuc2V0SW5kZXRlcm1pbmF0ZSh0aGlzLm5vZGUoKSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMudW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMudW5TdWJqZWN0LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBvbkFjdGl2YXRlKGV2ZW50OiBFdmVudCwgbm9kZTogWFRyZWVOb2RlKSB7XHJcbiAgICBjb25zdCBjaGFuZ2U6IEZ1bmN0aW9uID0gdGhpcy50cmVlLmFjdGl2YXRlZE5vZGUoKT8uY2hhbmdlIGFzIEZ1bmN0aW9uO1xyXG4gICAgdGhpcy50cmVlLm5vZGVPcGVuKCkgJiYgIXRoaXMubGVhZigpICYmIHRoaXMub25Ub2dnbGUoZXZlbnQsIG5vZGUpO1xyXG4gICAgY29uc3Qgb25DaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgIGNoYW5nZSAmJiBjaGFuZ2UoKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH07XHJcbiAgICBpZiAodGhpcy50cmVlLm9ubHlMZWFmKCkgJiYgIXRoaXMubGVhZigpKSB7XHJcbiAgICAgIG9uQ2hhbmdlKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRyZWUubXVsdGlwbGUoKSkge1xyXG4gICAgICBpZiAoIXRoaXMudHJlZS5hY3RpdmF0ZWRJZCgpKSB0aGlzLnRyZWUuYWN0aXZhdGVkSWQuc2V0KFtdKTtcclxuICAgICAgaWYgKHRoaXMudHJlZS5vYmplY3RBcnJheSgpKSB7XHJcbiAgICAgICAgY29uc3QgaWRzID0gdGhpcy50cmVlLmFjdGl2YXRlZElkKCkubWFwKCh4OiBYVHJlZU5vZGUpID0+IHguaWQpO1xyXG4gICAgICAgIGlmIChpZHMuaW5jbHVkZXMobm9kZS5pZCkpIHtcclxuICAgICAgICAgIHRoaXMudHJlZS5hY3RpdmF0ZWRJZC51cGRhdGUoKHgpID0+IHtcclxuICAgICAgICAgICAgeC5zcGxpY2UoaWRzLmluZGV4T2Yobm9kZS5pZCksIDEpO1xyXG4gICAgICAgICAgICByZXR1cm4gWy4uLnhdO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudHJlZS5hY3RpdmF0ZWRJZC51cGRhdGUoKHgpID0+IHtcclxuICAgICAgICAgICAgeC5wdXNoKG5vZGUpO1xyXG4gICAgICAgICAgICByZXR1cm4gWy4uLnhdO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLnRyZWUuYWN0aXZhdGVkSWQoKS5pbmNsdWRlcyhub2RlLmlkKSkge1xyXG4gICAgICAgICAgdGhpcy50cmVlLmFjdGl2YXRlZElkLnVwZGF0ZSgoeCkgPT4ge1xyXG4gICAgICAgICAgICB4LnNwbGljZSh0aGlzLnRyZWUuYWN0aXZhdGVkSWQoKS5pbmRleE9mKG5vZGUuaWQpLCAxKTtcclxuICAgICAgICAgICAgcmV0dXJuIFsuLi54XTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnRyZWUuYWN0aXZhdGVkSWQudXBkYXRlKCh4KSA9PiB7XHJcbiAgICAgICAgICAgIHgucHVzaChub2RlLmlkKTtcclxuICAgICAgICAgICAgcmV0dXJuIFsuLi54XTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy50cmVlLmFjdGl2YXRlZElkLnNldChub2RlLmlkKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZSgpKSB7XHJcbiAgICAgIGlmICh0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZSgpPy5pZCA9PT0gbm9kZS5pZCAmJiAhdGhpcy50cmVlLmFsbG93TWFueUFjdGl2YXRlZCgpKSByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZS5zZXQobm9kZSk7XHJcbiAgICB0aGlzLmNoYW5nZWQudXBkYXRlKCh4KSA9PiAheCk7XHJcbiAgICB0aGlzLnRyZWUuYWN0aXZhdGVkQ2hhbmdlLmVtaXQobm9kZSk7XHJcbiAgICB0aGlzLnRyZWUubm9kZUNsaWNrLmVtaXQobm9kZSk7XHJcbiAgICBvbkNoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgb25DaGVja2JveENoYW5nZSgpIHtcclxuICAgIHRoaXMuc2V0Q2hlY2tib3goKTtcclxuICAgIHRoaXMudHJlZS5jaGVja2JveENoYW5nZT8uZW1pdCh0aGlzLm5vZGUoKSk7XHJcbiAgfVxyXG5cclxuICBnZXRWZXJ0aWNhbExlZnQoaTogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBzcGFjaW5nID0gWFRvQ3NzUHgodGhpcy50cmVlLnNwYWNpbmcoKSwgdGhpcy5mb250U2l6ZSgpKTtcclxuICAgIHJldHVybiAoaSAtIDEpICogc3BhY2luZyArIHNwYWNpbmcgLyAyO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2hlY2tib3goKSB7XHJcbiAgICBpZiAoIXRoaXMudHJlZS5sZXZlbENoZWNrKCkpIHJldHVybjtcclxuICAgIHRoaXMubm9kZSgpLmluZGV0ZXJtaW5hdGUgPSB0aGlzLmNoZWNrZWQoKTtcclxuICAgIHRoaXMubm9kZSgpLmNoaWxkcmVuICYmIHRoaXMuc2V0Q2hpbGRyZW5DaGVja2JveCh0aGlzLmNoZWNrZWQoKSEpO1xyXG4gICAgY29uc3Qgc2V0UGFyZW50ID0gKG5vZGU6IFhUcmVlTm9kZSkgPT4ge1xyXG4gICAgICBsZXQgcGFyZW50ID0gdGhpcy50cmVlLm5vZGVzKCkuZmluZCgoeDogWFRyZWVOb2RlKSA9PiB4LmlkID09PSBub2RlLnBpZCk7XHJcbiAgICAgIGlmICghcGFyZW50IHx8IFhJc0VtcHR5KHBhcmVudC5jaGlsZHJlbikpIHJldHVybjtcclxuICAgICAgbGV0IGNoZWNrZWRMaXN0ID0gcGFyZW50LmNoaWxkcmVuPy5maWx0ZXIoKHk6IFhUcmVlTm9kZSkgPT4geS5jaGVja2VkKTtcclxuICAgICAgbGV0IGluZGV0ZXJtaW5hdGVMaXN0ID0gcGFyZW50LmNoaWxkcmVuPy5maWx0ZXIoKHk6IFhUcmVlTm9kZSkgPT4geS5pbmRldGVybWluYXRlKTtcclxuICAgICAgcGFyZW50LmNoZWNrZWQgPSBjaGVja2VkTGlzdD8ubGVuZ3RoID09PSBwYXJlbnQuY2hpbGRyZW4/Lmxlbmd0aDtcclxuICAgICAgcGFyZW50LmluZGV0ZXJtaW5hdGUgPSAoY2hlY2tlZExpc3QgYXMgWFRyZWVOb2RlW10pLmxlbmd0aCA+IDAgfHwgKGluZGV0ZXJtaW5hdGVMaXN0IGFzIFhUcmVlTm9kZVtdKS5sZW5ndGggPiAwO1xyXG4gICAgICBwYXJlbnQuY2hhbmdlICYmIHBhcmVudC5jaGFuZ2UoKTtcclxuICAgICAgc2V0UGFyZW50KHBhcmVudCk7XHJcbiAgICB9O1xyXG4gICAgc2V0UGFyZW50KHRoaXMubm9kZSgpKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNldENoaWxkcmVuQ2hlY2tib3goY2hlY2tlZDogYm9vbGVhbikge1xyXG4gICAgY29uc3Qgc2V0Q2hpbGRyZW4gPSAoY2hpbGRyZW46IFhUcmVlTm9kZVtdLCBpc0NoZWNrZWQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKFhJc0VtcHR5KGNoaWxkcmVuKSkgcmV0dXJuO1xyXG4gICAgICBmb3IgKGxldCB4IG9mIGNoaWxkcmVuKSB7XHJcbiAgICAgICAgaWYgKHguZGlzYWJsZWQpIGNvbnRpbnVlO1xyXG4gICAgICAgIHguY2hlY2tlZCA9IGlzQ2hlY2tlZDtcclxuICAgICAgICB4LmluZGV0ZXJtaW5hdGUgPSBpc0NoZWNrZWQ7XHJcbiAgICAgICAgeC5jaGFuZ2UgJiYgeC5jaGFuZ2UoKTtcclxuICAgICAgICBzZXRDaGlsZHJlbih4LmNoaWxkcmVuIGFzIFhUcmVlTm9kZVtdLCBpc0NoZWNrZWQpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgc2V0Q2hpbGRyZW4odGhpcy5ub2RlKCkuY2hpbGRyZW4gYXMgWFRyZWVOb2RlW10sIGNoZWNrZWQpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0UGFyZW50Q2hlY2tib3goKSB7XHJcbiAgICBpZiAoWElzRW1wdHkodGhpcy5ub2RlKCkuY2hpbGRyZW4pKSByZXR1cm47XHJcbiAgICBsZXQgY2hlY2tlZExpc3QgPSB0aGlzLm5vZGUoKS5jaGlsZHJlbj8uZmlsdGVyKCh4KSA9PiB4LmNoZWNrZWQpO1xyXG4gICAgbGV0IGluZGV0ZXJtaW5hdGVMaXN0ID0gdGhpcy5ub2RlKCkuY2hpbGRyZW4/LmZpbHRlcigoeCkgPT4geC5pbmRldGVybWluYXRlKTtcclxuICAgIHRoaXMubm9kZSgpLmNoZWNrZWQgPSBjaGVja2VkTGlzdD8ubGVuZ3RoID09PSB0aGlzLm5vZGUoKS5jaGlsZHJlbj8ubGVuZ3RoO1xyXG4gICAgdGhpcy5ub2RlKCkuaW5kZXRlcm1pbmF0ZSA9XHJcbiAgICAgIChjaGVja2VkTGlzdCBhcyBYVHJlZU5vZGVbXSkubGVuZ3RoID4gMCB8fCAoaW5kZXRlcm1pbmF0ZUxpc3QgYXMgWFRyZWVOb2RlW10pLmxlbmd0aCA+IDA7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBzZXRJbmRldGVybWluYXRlKG5vZGU6IFhUcmVlTm9kZSkge1xyXG4gICAgY29uc3QgZ2V0Q2hpbGRyZW4gPSAoY2hpbGRyZW46IFhUcmVlTm9kZVtdKSA9PiB7XHJcbiAgICAgIGlmIChYSXNFbXB0eShjaGlsZHJlbikpIHJldHVybjtcclxuICAgICAgY2hpbGRyZW4uZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICAgIGlmICh4LmluZGV0ZXJtaW5hdGUgfHwgeC5jaGVja2VkKSB7XHJcbiAgICAgICAgICBub2RlLmluZGV0ZXJtaW5hdGUgPSB0cnVlO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBnZXRDaGlsZHJlbih4LmNoaWxkcmVuIGFzIFhUcmVlTm9kZVtdKTtcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgZ2V0Q2hpbGRyZW4obm9kZS5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBnZXROb2RlRGlzYWJsZWQoZGlzYWJsZWQ/OiBib29sZWFuKSB7XHJcbiAgICByZXR1cm4gZGlzYWJsZWQgYXMgWEJvb2xlYW47XHJcbiAgfVxyXG5cclxuICBvbkFjdGlvbihldmVudDogRXZlbnQsIGFjdGlvbjogWFRyZWVBY3Rpb24sIG5vZGU6IFhUcmVlTm9kZSkge1xyXG4gICAgYWN0aW9uLmhhbmRsZXIgJiYgYWN0aW9uLmhhbmRsZXIobm9kZSk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIG9uVG9nZ2xlKGV2ZW50OiBFdmVudCwgbm9kZTogWFRyZWVOb2RlKSB7XHJcbiAgICB0aGlzLnRvZ2dsZS5lbWl0KG5vZGUpO1xyXG4gICAgZXZlbnQ/LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudD8uc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5SXRlbShfaW5kZXg6IG51bWJlciwgaXRlbTogWFRyZWVOb2RlKSB7XHJcbiAgICByZXR1cm4gYCR7aXRlbS5pZH0tJHtpdGVtLmxldmVsfWA7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5QWN0aW9uKF9pbmRleDogbnVtYmVyLCBpdGVtOiBYVHJlZUFjdGlvbikge1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cIngtdHJlZS1ub2RlLWNvbnRlbnRcIlxyXG4gIFtjbGFzcy54LWFjdGl2YXRlZF09XCJhY3RpdmF0ZWQoKVwiXHJcbiAgW2NsYXNzLngtZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXHJcbiAgW2NsYXNzLngtdHJlZS1ub2RlLXN1Yl09XCIhbGVhZigpXCJcclxuICBbY2xhc3MueC10cmVlLW5vZGUtbGFzdF09XCJpc0NoaWxkcmVuTGFzdCgpXCJcclxuICBbc3R5bGUucGFkZGluZy1sZWZ0LnB4XT1cInBhZGRpbmdMZWZ0KCkgKyBmb250U2l6ZSgpIC8gMlwiXHJcbiAgW3N0eWxlLmhlaWdodF09XCJoZWlnaHQoKSA/IGhlaWdodCgpIDogbm9kZUhlaWdodCgpID8gbm9kZUhlaWdodCgpIDogJydcIlxyXG4gIFtzdHlsZS5hbGlnbi1pdGVtc109XCJhbGlnbkl0ZW1zKCkgPyBhbGlnbkl0ZW1zKCkgOiBub2RlQWxpZ25JdGVtcygpXCJcclxuICAoY2xpY2spPVwiIWRpc2FibGVkKCkgJiYgb25BY3RpdmF0ZSgkZXZlbnQsIG5vZGUoKSlcIlxyXG4+XHJcbiAgQGlmICh0cmVlLnNob3dMaW5lKCkgJiYgbGV2ZWwoKSEgPiAwKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwieC10cmVlLW5vZGUtbGluZVwiIFtzdHlsZS53aWR0aC5weF09XCJwYWRkaW5nTGVmdCgpXCI+XHJcbiAgICAgIEBmb3IgKGkgb2YgdmVydGljYWxMZXZlbCgpOyB0cmFjayBpKSB7XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJ4LXRyZWUtbm9kZS1saW5lLXZlcnRpY2FsXCJcclxuICAgICAgICAgIFtoaWRkZW5dPVwiaXNQYXJlbnRMYXN0KClbaSAtIDFdXCJcclxuICAgICAgICAgIFtjbGFzcy5pcy1sYXN0XT1cImkgPT09IHZlcnRpY2FsTGV2ZWwoKS5sZW5ndGhcIlxyXG4gICAgICAgICAgW3N0eWxlLmxlZnQucHhdPVwiZ2V0VmVydGljYWxMZWZ0KGkpXCJcclxuICAgICAgICA+PC9kaXY+XHJcbiAgICAgIH1cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwieC10cmVlLW5vZGUtbGluZS1ob3Jpem9udGFsXCJcclxuICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwidmVydGljYWxXaWR0aCgpXCJcclxuICAgICAgICBbc3R5bGUubGVmdC5weF09XCJnZXRWZXJ0aWNhbExlZnQodmVydGljYWxMZXZlbCgpLmxlbmd0aClcIlxyXG4gICAgICA+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbiAgQGlmIChzaG93RHJhZ0luZGljYXRvcigpKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwieC10cmVlLW5vZGUtZHJhZy1pbmRpY2F0b3JcIiBbc3R5bGUud2lkdGhdPVwiaW5kaWNhdG9yV2lkdGgoKVwiIFtuZ1N0eWxlXT1cImluZGljYXRvclN0eWxlKClcIj48L2Rpdj5cclxuICB9XHJcbiAgQGlmIChsb2FkaW5nKCkpIHtcclxuICAgIDx4LWljb24gY2xhc3M9XCJ4LXRyZWUtbm9kZS1sb2FkaW5nXCIgdHlwZT1cImZ0by1sb2FkZXJcIiBbc3Bpbl09XCJsb2FkaW5nKCkhXCI+PC94LWljb24+XHJcbiAgfSBAZWxzZSB7XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwieC10cmVlLW5vZGUtcmlnaHRcIlxyXG4gICAgICBbY2xhc3MuaXMtbGVhZl09XCJsZWFmKClcIlxyXG4gICAgICBbY2xhc3MuaXMtb3Blbl09XCJvcGVuKClcIlxyXG4gICAgICBbY2xhc3MuaXMtdGVtcGxhdGVdPVwidHJlZS5leHBhbmRlZEljb24oKVwiXHJcbiAgICAgIFtzdHlsZS53aWR0aC5weF09XCJ2ZXJ0aWNhbFdpZHRoKCkgKiAyXCJcclxuICAgICAgKGNsaWNrKT1cIiF0cmVlLm5vZGVPcGVuKCkgJiYgb25Ub2dnbGUoJGV2ZW50LCBub2RlKCkpXCJcclxuICAgID5cclxuICAgICAgQGlmICh0cmVlLmV4cGFuZGVkSWNvbigpKSB7XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqeE91dGxldD1cInRyZWUuZXhwYW5kZWRJY29uKCk7IGNvbnRleHQ6IHsgJG5vZGU6IG5vZGUoKSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIDx4LWljb24gdHlwZT1cImZ0by1jaGV2cm9uLXJpZ2h0XCI+PC94LWljb24+XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuICBAaWYgKHRyZWUuY2hlY2tib3goKSkge1xyXG4gICAgPHgtY2hlY2tib3hcclxuICAgICAgW2RhdGFdPVwiW3sgbGFiZWw6ICcnLCBpZDogaWQoKSB9XVwiXHJcbiAgICAgIFsobmdNb2RlbCldPVwiY2hlY2tlZFwiXHJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hlY2tib3hDaGFuZ2UoKVwiXHJcbiAgICAgIFtpbmRldGVybWluYXRlXT1cImluZGV0ZXJtaW5hdGUoKSFcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSFcIlxyXG4gICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgc2luZ2xlXHJcbiAgICA+PC94LWNoZWNrYm94PlxyXG4gIH1cclxuICBAaWYgKCF0cmVlLmxhYmVsVHBsKCkpIHtcclxuICAgIDxzcGFuXHJcbiAgICAgIGNsYXNzPVwieC10cmVlLW5vZGUtbGFiZWxcIlxyXG4gICAgICBbY2xhc3Mubm93cmFwXT1cIm5vd3JhcCgpID09PSBmYWxzZSB8fCBub3dyYXAoKSA9PT0gdHJ1ZSA/IG5vd3JhcCgpIDogbm9kZU5vd3JhcCgpXCJcclxuICAgICAgW3RpdGxlXT1cImxhYmVsKClcIlxyXG4gICAgICB4LWtleXdvcmRcclxuICAgICAgW3RleHRdPVwidHJlZS5rZXl3b3JkVGV4dCgpXCJcclxuICAgICAgW2Nhc2VTZW5zaXRpdmVdPVwidHJlZS5jYXNlU2Vuc2l0aXZlKClcIlxyXG4gICAgICA+e3sgbGFiZWwoKSB9fTwvc3BhblxyXG4gICAgPlxyXG4gIH0gQGVsc2Uge1xyXG4gICAgPG5nLWNvbnRhaW5lciAqeE91dGxldD1cInRyZWUubGFiZWxUcGwoKTsgY29udGV4dDogeyAkbm9kZTogbm9kZSgpIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICB9XHJcbiAgPHNwYW4gY2xhc3M9XCJ4LXRyZWUtbm9kZS1vcGVyYXRpb25zXCI+XHJcbiAgICBAZm9yIChhY3Rpb24gb2YgdHJlZS5hY3Rpb25zKCk7IHRyYWNrIGFjdGlvbi5pZCkge1xyXG4gICAgICA8eC1saW5rIFtpY29uXT1cImFjdGlvbi5pY29uXCIgW3RpdGxlXT1cImFjdGlvbi5sYWJlbFwiIChjbGljayk9XCJvbkFjdGlvbigkZXZlbnQsIGFjdGlvbiwgbm9kZSgpKVwiPjwveC1saW5rPlxyXG4gICAgfVxyXG4gIDwvc3Bhbj5cclxuICBAaWYgKHRyZWUubXVsdGlwbGUoKSAmJiBhY3RpdmF0ZWQoKSkge1xyXG4gICAgPHgtaWNvbiBjbGFzcz1cIngtdHJlZS1ub2RlLWNoZWNrZWRcIiB0eXBlPVwiZnRvLWNoZWNrXCI+PC94LWljb24+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
|