@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,372 +0,0 @@
|
|
|
1
|
-
import { Component, ViewEncapsulation, Renderer2, ElementRef, ChangeDetectorRef, ChangeDetectionStrategy, computed, signal, viewChild, inject, viewChildren } from '@angular/core';
|
|
2
|
-
import { XTablePrefix, XTableProperty } from './table.property';
|
|
3
|
-
import { XIsChange, XIsEmpty, XIsUndefined, XIsArray } from '@ng-nest/ui/core';
|
|
4
|
-
import { XPaginationComponent } from '@ng-nest/ui/pagination';
|
|
5
|
-
import { takeUntil } from 'rxjs/operators';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
7
|
-
import { NgClass } from '@angular/common';
|
|
8
|
-
import { XLoadingComponent } from '@ng-nest/ui/loading';
|
|
9
|
-
import { XTableHeadComponent } from './table-head.component';
|
|
10
|
-
import { XTableFootComponent } from './table-foot.component';
|
|
11
|
-
import { XTableBodyComponent } from './table-body.component';
|
|
12
|
-
import { XOutletDirective } from '@ng-nest/ui/outlet';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
export class XTableComponent extends XTableProperty {
|
|
15
|
-
constructor() {
|
|
16
|
-
super(...arguments);
|
|
17
|
-
this.renderer = inject(Renderer2);
|
|
18
|
-
this.elementRef = inject((ElementRef));
|
|
19
|
-
this.cdr = inject(ChangeDetectorRef);
|
|
20
|
-
this.unSubject = new Subject();
|
|
21
|
-
this.classMap = computed(() => ({ [`${XTablePrefix}-row-size-${this.rowSize()}`]: !XIsEmpty(this.rowSize()) }));
|
|
22
|
-
this.theads = signal([]);
|
|
23
|
-
this.tfoot = signal(null);
|
|
24
|
-
this.virtualBody = signal(null);
|
|
25
|
-
this.theadsChange = [];
|
|
26
|
-
this.scrollContentEle = signal(null);
|
|
27
|
-
this.hasScrollY = signal(false);
|
|
28
|
-
this.scrollYWidth = signal(0);
|
|
29
|
-
this.hasScrollX = signal(false);
|
|
30
|
-
this.scrollXHeight = signal(0);
|
|
31
|
-
this.scrollXWidth = signal(null);
|
|
32
|
-
this.scrollLeft = signal(0);
|
|
33
|
-
this.scrollLeftMax = signal(false);
|
|
34
|
-
this.scrollTop = signal(0);
|
|
35
|
-
this.rowChecked = signal(null);
|
|
36
|
-
this.headCheckboxList = signal([]);
|
|
37
|
-
this.rowExpand = signal(null);
|
|
38
|
-
this.headExpandList = signal([]);
|
|
39
|
-
this.dataIsFunc = signal(false);
|
|
40
|
-
this.getting = signal(false);
|
|
41
|
-
this.tableData = signal([]);
|
|
42
|
-
this.treeTableData = signal([]);
|
|
43
|
-
this.checkedValues = signal({});
|
|
44
|
-
this.indeterminate = signal('$$indeterminate');
|
|
45
|
-
this.table = viewChild.required('table');
|
|
46
|
-
this.caption = viewChild('caption');
|
|
47
|
-
this.pagination = viewChild('pagination');
|
|
48
|
-
this.stickyTopRightEle = viewChild('stickyTopRightEle');
|
|
49
|
-
this.stickyBottomRightEle = viewChild('stickyBottomRightEle');
|
|
50
|
-
this.headCom = viewChildren(XTableHeadComponent);
|
|
51
|
-
this.bodyCom = viewChildren(XTableBodyComponent);
|
|
52
|
-
this.footCom = viewChild(XTableFootComponent);
|
|
53
|
-
this.getScrollLeft = computed(() => this.scrollLeft() > 0);
|
|
54
|
-
this.getScrollTop = computed(() => this.scrollTop() > 0);
|
|
55
|
-
this.getRowHeight = computed(() => (this.rowHeight() === 0 ? '' : this.rowHeight()));
|
|
56
|
-
this.getStickyTopScrollTop = computed(() => (this.caption() ? this.caption().nativeElement.offsetHeight : 0));
|
|
57
|
-
this.getStickyBottomScrollTop = computed(() => {
|
|
58
|
-
let top = 0;
|
|
59
|
-
if (this.footer() && this.tfoot()) {
|
|
60
|
-
top += this.tfoot().nativeElement.clientHeight + 1;
|
|
61
|
-
}
|
|
62
|
-
return top;
|
|
63
|
-
});
|
|
64
|
-
this.getStickyTopRightEleHeight = computed(() => {
|
|
65
|
-
if (this.stickyTopRightEle()) {
|
|
66
|
-
return this.stickyTopRightEle().nativeElement.offsetHeight;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
return 0;
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
this.getStickyBottomRightEleHeight = computed(() => {
|
|
73
|
-
if (this.stickyBottomRightEle()) {
|
|
74
|
-
return this.stickyBottomRightEle().nativeElement.offsetHeight;
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
return 0;
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
this.hasStickyTopRight = computed(() => this.showHeader() &&
|
|
81
|
-
(this.headerPosition() === 'top' || this.headerPosition() === 'top-bottom') &&
|
|
82
|
-
this.columns().some((x) => Number(x.right) >= 0));
|
|
83
|
-
this.hasStickyTopRightSearch = computed(() => !!this.headSearchTpl());
|
|
84
|
-
this.hasStickyBottomRight = computed(() => this.showHeader() &&
|
|
85
|
-
(this.headerPosition() === 'bottom' || this.headerPosition() === 'top-bottom') &&
|
|
86
|
-
this.columns().some((x) => Number(x.right) >= 0));
|
|
87
|
-
this.cellConfigSignal = computed(() => {
|
|
88
|
-
const cellConfig = this.cellConfig();
|
|
89
|
-
if (!cellConfig)
|
|
90
|
-
return;
|
|
91
|
-
const setRule = (rule) => {
|
|
92
|
-
if (!rule)
|
|
93
|
-
return;
|
|
94
|
-
let gridTemplateColumns = '', cells = [];
|
|
95
|
-
if (!rule.gridTemplateColumns) {
|
|
96
|
-
gridTemplateColumns = `${this.columns()
|
|
97
|
-
.map((x) => {
|
|
98
|
-
if (x.width)
|
|
99
|
-
return x.width;
|
|
100
|
-
if (x.flex)
|
|
101
|
-
return `${x.flex}fr`;
|
|
102
|
-
return '1fr';
|
|
103
|
-
})
|
|
104
|
-
.join(' ')}`;
|
|
105
|
-
}
|
|
106
|
-
if (!rule.cells)
|
|
107
|
-
return;
|
|
108
|
-
cells = rule.cells.map((y) => {
|
|
109
|
-
const col = this.columns().find((z) => z.id === y.id);
|
|
110
|
-
if (col) {
|
|
111
|
-
return { ...col, ...y };
|
|
112
|
-
}
|
|
113
|
-
return y;
|
|
114
|
-
});
|
|
115
|
-
return { gridTemplateColumns, cells };
|
|
116
|
-
};
|
|
117
|
-
return { thead: setRule(cellConfig.thead), tbody: setRule(cellConfig.tbody) };
|
|
118
|
-
});
|
|
119
|
-
this.tbodyHeight = signal(0);
|
|
120
|
-
this.tbodyScrollHeight = signal(0);
|
|
121
|
-
}
|
|
122
|
-
ngOnInit() {
|
|
123
|
-
this.setRowChecked();
|
|
124
|
-
this.setRowExpand();
|
|
125
|
-
this.setPaginationPosition();
|
|
126
|
-
}
|
|
127
|
-
ngOnChanges(simples) {
|
|
128
|
-
const { data, checkedRow, columns, activatedRow, manual, showPagination, expandedAll } = simples;
|
|
129
|
-
XIsChange(expandedAll) && this.setExpandedAll();
|
|
130
|
-
XIsChange(data, checkedRow) && this.setData();
|
|
131
|
-
if (XIsChange(columns)) {
|
|
132
|
-
this.setRowChecked();
|
|
133
|
-
this.setRowExpand();
|
|
134
|
-
}
|
|
135
|
-
XIsChange(columns, activatedRow, showPagination) && this.cdr.detectChanges();
|
|
136
|
-
XIsChange(manual) && this.setManual();
|
|
137
|
-
}
|
|
138
|
-
ngAfterViewChecked() {
|
|
139
|
-
if (this.bodyCom().length > 0) {
|
|
140
|
-
const first = this.bodyCom()[0].tbody().nativeElement;
|
|
141
|
-
this.tbodyHeight.set(first.clientHeight);
|
|
142
|
-
this.tbodyScrollHeight.set(first.scrollHeight);
|
|
143
|
-
// let trs = first.tbody().nativeElement.querySelectorAll('tr');
|
|
144
|
-
// let i = 0;
|
|
145
|
-
// let h = 0;
|
|
146
|
-
// while (i < trs.length) {
|
|
147
|
-
// h += trs[i].clientHeight;
|
|
148
|
-
// }
|
|
149
|
-
// this.trsHeight.set(h);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
ngOnDestroy() {
|
|
153
|
-
this.unSubject.next();
|
|
154
|
-
this.unSubject.complete();
|
|
155
|
-
}
|
|
156
|
-
setPaginationPosition() {
|
|
157
|
-
this.renderer.addClass(this.elementRef.nativeElement, `x-table-${this.paginationPosition()}`);
|
|
158
|
-
}
|
|
159
|
-
getSticky(column) {
|
|
160
|
-
return this.getStickyLeft(column) || this.getStickyRight(column);
|
|
161
|
-
}
|
|
162
|
-
getStickyLeft(column) {
|
|
163
|
-
return Number(column.left) >= 0;
|
|
164
|
-
}
|
|
165
|
-
getStickyLeftLast(column) {
|
|
166
|
-
let lefts = this.columns().filter((x) => Number(x.left) >= 0);
|
|
167
|
-
if (lefts.length === 0)
|
|
168
|
-
return false;
|
|
169
|
-
return lefts[lefts.length - 1].id === column.id;
|
|
170
|
-
}
|
|
171
|
-
getStickyRight(column) {
|
|
172
|
-
return Number(column.right) >= 0;
|
|
173
|
-
}
|
|
174
|
-
getStickyRightFirst(column) {
|
|
175
|
-
let rights = this.columns().filter((x) => Number(x.right) >= 0);
|
|
176
|
-
if (rights.length === 0)
|
|
177
|
-
return false;
|
|
178
|
-
return rights[0].id === column.id;
|
|
179
|
-
}
|
|
180
|
-
getIndex(index) {
|
|
181
|
-
return (this.index() - 1) * this.size() + index + 1;
|
|
182
|
-
}
|
|
183
|
-
setData() {
|
|
184
|
-
const data = this.data();
|
|
185
|
-
if (XIsArray(data)) {
|
|
186
|
-
this.dataIsFunc.set(false);
|
|
187
|
-
this.tableData.set(data);
|
|
188
|
-
this.setChecked(data);
|
|
189
|
-
this.setHeadCheckboxList(data);
|
|
190
|
-
this.setExpand(data);
|
|
191
|
-
this.detectChanges();
|
|
192
|
-
}
|
|
193
|
-
else if (data instanceof Function) {
|
|
194
|
-
this.dataIsFunc.set(true);
|
|
195
|
-
this.getDataByFunc();
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
getDataByFunc() {
|
|
199
|
-
if (!this.manual())
|
|
200
|
-
return;
|
|
201
|
-
this.getting.set(true);
|
|
202
|
-
this.unSubject.next();
|
|
203
|
-
this.data()(this.index(), this.size(), this.query())
|
|
204
|
-
.pipe(takeUntil(this.unSubject))
|
|
205
|
-
.subscribe((x) => {
|
|
206
|
-
let [data, total] = [x.list, x.total];
|
|
207
|
-
if (this.virtualBody()) {
|
|
208
|
-
this.virtualBody().scrollToIndex(0);
|
|
209
|
-
this.virtualBody().checkViewportSize();
|
|
210
|
-
}
|
|
211
|
-
this.getting.set(false);
|
|
212
|
-
this.tableData.set(data);
|
|
213
|
-
this.setChecked(data);
|
|
214
|
-
this.setHeadCheckboxList(data);
|
|
215
|
-
this.setExpand(data);
|
|
216
|
-
this.total.set(total);
|
|
217
|
-
});
|
|
218
|
-
}
|
|
219
|
-
setManual() {
|
|
220
|
-
if (this.dataIsFunc())
|
|
221
|
-
this.getDataByFunc();
|
|
222
|
-
}
|
|
223
|
-
setRowChecked() {
|
|
224
|
-
this.rowChecked.set(this.columns().find((x) => x.rowChecked));
|
|
225
|
-
this.headCheckboxList.set(this.columns().filter((x) => x.type === 'checkbox' && x.headChecked));
|
|
226
|
-
}
|
|
227
|
-
setRowExpand() {
|
|
228
|
-
this.rowExpand.set(this.columns().find((x) => x.rowExpand));
|
|
229
|
-
}
|
|
230
|
-
isExpandColumn(column) {
|
|
231
|
-
let expandColumn = this.columns().find((x) => x.id === column.id && x.type === 'expand');
|
|
232
|
-
if (expandColumn) {
|
|
233
|
-
return true;
|
|
234
|
-
}
|
|
235
|
-
return false;
|
|
236
|
-
}
|
|
237
|
-
pageChange(_type) {
|
|
238
|
-
this.dataIsFunc() && this.getDataByFunc();
|
|
239
|
-
this.resetScroll();
|
|
240
|
-
}
|
|
241
|
-
change(index) {
|
|
242
|
-
this.index.set(index);
|
|
243
|
-
this.dataIsFunc() && this.getDataByFunc();
|
|
244
|
-
this.resetScroll();
|
|
245
|
-
}
|
|
246
|
-
resetScroll(x = true, y = true) {
|
|
247
|
-
if (this.hasScrollX() && x)
|
|
248
|
-
this.virtualBody()?.scrollTo({ left: 0 });
|
|
249
|
-
if (this.hasScrollY() && y)
|
|
250
|
-
this.virtualBody()?.scrollTo({ top: 0 });
|
|
251
|
-
}
|
|
252
|
-
setChecked(data) {
|
|
253
|
-
let result = [];
|
|
254
|
-
if (XIsEmpty(data) || !this.checkedRow())
|
|
255
|
-
return;
|
|
256
|
-
for (let key in this.checkedRow()) {
|
|
257
|
-
const arr = this.checkedRow()[key];
|
|
258
|
-
for (let item of data) {
|
|
259
|
-
item[key] = arr.includes(item.id);
|
|
260
|
-
result = [...result, item];
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
if (result.length > 0)
|
|
264
|
-
data = [...result];
|
|
265
|
-
}
|
|
266
|
-
setHeadCheckboxList(data) {
|
|
267
|
-
if (XIsEmpty(data) || !this.headCheckboxList())
|
|
268
|
-
return;
|
|
269
|
-
for (let column of this.headCheckboxList()) {
|
|
270
|
-
this.setCheckedValues(column);
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
setExpand(data) {
|
|
274
|
-
const getChildren = (node, level) => {
|
|
275
|
-
node.level = level;
|
|
276
|
-
node.expanded = this.expandedAll() || level <= this.expandedLevel() || this.expanded().includes(node.id);
|
|
277
|
-
if (XIsUndefined(node.children))
|
|
278
|
-
node.children = data.filter((y) => y.pid === node.id);
|
|
279
|
-
if (XIsUndefined(node.leaf))
|
|
280
|
-
node.leaf = node.children?.length > 0;
|
|
281
|
-
if (node.leaf)
|
|
282
|
-
node.children?.map((y) => getChildren(y, level + 1));
|
|
283
|
-
return node;
|
|
284
|
-
};
|
|
285
|
-
this.treeTableData.set(data
|
|
286
|
-
.filter((x) => XIsEmpty(x.pid))
|
|
287
|
-
.map((x, index) => {
|
|
288
|
-
if (XIsUndefined(x.id))
|
|
289
|
-
x.id = index + 1;
|
|
290
|
-
return getChildren(x, 0);
|
|
291
|
-
}));
|
|
292
|
-
}
|
|
293
|
-
setExpandedAll() {
|
|
294
|
-
if (!this.treeTable() || this.treeTableData()?.length === 0)
|
|
295
|
-
return;
|
|
296
|
-
const setChildren = (nodes) => {
|
|
297
|
-
if (XIsEmpty(nodes))
|
|
298
|
-
return;
|
|
299
|
-
nodes.forEach((x) => {
|
|
300
|
-
x.expanded = Boolean(this.expandedAll);
|
|
301
|
-
setChildren(x.children);
|
|
302
|
-
});
|
|
303
|
-
};
|
|
304
|
-
this.treeTableData.update((x) => {
|
|
305
|
-
setChildren(x);
|
|
306
|
-
return [...x];
|
|
307
|
-
});
|
|
308
|
-
}
|
|
309
|
-
checkSort(sort) {
|
|
310
|
-
if (!this.dataIsFunc)
|
|
311
|
-
return;
|
|
312
|
-
let query = this.query();
|
|
313
|
-
if (typeof query === 'undefined')
|
|
314
|
-
query = {};
|
|
315
|
-
query.sort = sort;
|
|
316
|
-
this.query.set(query);
|
|
317
|
-
this.getDataByFunc();
|
|
318
|
-
}
|
|
319
|
-
headChecked(checked, column) {
|
|
320
|
-
this.tableData.update((z) => {
|
|
321
|
-
z.forEach((x) => {
|
|
322
|
-
if (!x.disabled) {
|
|
323
|
-
x[column.id] = checked;
|
|
324
|
-
}
|
|
325
|
-
});
|
|
326
|
-
return [...z];
|
|
327
|
-
});
|
|
328
|
-
this.setCheckedValues(column);
|
|
329
|
-
this.headCheckboxChange.emit({ rows: this.tableData(), checkbox: this.checkedValues() });
|
|
330
|
-
this.detectChanges();
|
|
331
|
-
}
|
|
332
|
-
bodyChecked(_checked, column, row) {
|
|
333
|
-
this.setCheckedValues(column);
|
|
334
|
-
this.bodyCheckboxChange.emit(row);
|
|
335
|
-
// this.detectChanges();
|
|
336
|
-
}
|
|
337
|
-
setCheckedValues(column) {
|
|
338
|
-
const notDisabled = this.tableData().filter((x) => !x.disabled);
|
|
339
|
-
const count = notDisabled.length;
|
|
340
|
-
const checkedLen = notDisabled.filter((x) => x[column.id]).length;
|
|
341
|
-
this.checkedValues.update((x) => {
|
|
342
|
-
x[column.id] = count === checkedLen && count !== 0;
|
|
343
|
-
x[column.id + this.indeterminate()] = checkedLen > 0 && checkedLen < count;
|
|
344
|
-
return { ...x };
|
|
345
|
-
});
|
|
346
|
-
}
|
|
347
|
-
detectChanges() {
|
|
348
|
-
this.headCom()?.forEach((x) => {
|
|
349
|
-
x.cdr.markForCheck();
|
|
350
|
-
});
|
|
351
|
-
this.bodyCom()?.forEach((x) => {
|
|
352
|
-
x.cdr.markForCheck();
|
|
353
|
-
});
|
|
354
|
-
this.footCom()?.cdr.markForCheck();
|
|
355
|
-
this.cdr.markForCheck();
|
|
356
|
-
}
|
|
357
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
358
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XTableComponent, isStandalone: true, selector: "x-table", viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true, isSignal: true }, { propertyName: "caption", first: true, predicate: ["caption"], descendants: true, isSignal: true }, { propertyName: "pagination", first: true, predicate: ["pagination"], descendants: true, isSignal: true }, { propertyName: "stickyTopRightEle", first: true, predicate: ["stickyTopRightEle"], descendants: true, isSignal: true }, { propertyName: "stickyBottomRightEle", first: true, predicate: ["stickyBottomRightEle"], descendants: true, isSignal: true }, { propertyName: "headCom", predicate: XTableHeadComponent, descendants: true, isSignal: true }, { propertyName: "bodyCom", predicate: XTableBodyComponent, descendants: true, isSignal: true }, { propertyName: "footCom", first: true, predicate: XTableFootComponent, descendants: true, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<table\r\n #table\r\n class=\"x-table\"\r\n [ngClass]=\"classMap()\"\r\n [x-loading]=\"loading() && getting()\"\r\n [class.x-table-wrap-border-hidden]=\"hiddenWrapBorder()\"\r\n [class.x-table-scroll-left]=\"getScrollLeft()\"\r\n [class.x-table-scroll-left-max]=\"scrollLeftMax()\"\r\n [class.x-table-scroll-top]=\"getScrollTop()\"\r\n [class.x-table-has-scroll-right]=\"scrollYWidth()\"\r\n [class.x-table-has-scroll-bottom]=\"scrollXWidth()\"\r\n [class.x-table-bordered]=\"bordered()\"\r\n [class.x-table-td-adaption-height]=\"rowHeight() == 0\"\r\n [class.x-table-cell-config]=\"!!cellConfigSignal()\"\r\n [class.x-table-last-tr-bordered]=\"!!adaptionHeight() || tbodyHeight() >= tbodyScrollHeight()\"\r\n>\r\n @if (header()) {\r\n <caption #caption class=\"x-table-header\" [style.height.px]=\"getRowHeight()\" [style.min-height.px]=\"getRowHeight()\">\r\n <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n </caption>\r\n }\r\n @if (showHeader() && (headerPosition() === 'top' || headerPosition() === 'top-bottom')) {\r\n <x-table-head\r\n [columns]=\"columns()\"\r\n [rowHeight]=\"rowHeight()\"\r\n [columnTpl]=\"headColumnTpl()\"\r\n [scrollYWidth]=\"scrollYWidth()\"\r\n [scrollXWidth]=\"scrollXWidth()!\"\r\n [cellConfig]=\"cellConfigSignal()?.thead\"\r\n [position]=\"'top'\"\r\n ></x-table-head>\r\n }\r\n <x-table-body\r\n [data]=\"treeTable() ? treeTableData() : tableData()\"\r\n [columns]=\"columns()\"\r\n [itemSize]=\"itemSize()\"\r\n [rowHeight]=\"rowHeight()\"\r\n [bodyHeight]=\"bodyHeight()!\"\r\n [columnTpl]=\"bodyColumnTpl()\"\r\n [allowSelectRow]=\"allowSelectRow()\"\r\n [virtualScroll]=\"virtualScroll()\"\r\n [minBufferPx]=\"minBufferPx()\"\r\n [maxBufferPx]=\"maxBufferPx()\"\r\n [adaptionHeight]=\"adaptionHeight()!\"\r\n [docPercent]=\"docPercent()\"\r\n [scroll]=\"scroll()\"\r\n [rowClass]=\"rowClass()\"\r\n [cellConfig]=\"cellConfigSignal()?.tbody\"\r\n [expandedAll]=\"expandedAll()\"\r\n [expandTpl]=\"expandTpl()\"\r\n [(activatedRow)]=\"activatedRow\"\r\n (rowClick)=\"rowClick.emit($event)\"\r\n ></x-table-body>\r\n @if (showHeader() && (headerPosition() === 'bottom' || headerPosition() === 'top-bottom')) {\r\n <x-table-head\r\n [columns]=\"columns()\"\r\n [rowHeight]=\"rowHeight()\"\r\n [columnTpl]=\"headColumnTpl()\"\r\n [scrollYWidth]=\"scrollYWidth()\"\r\n [scrollXWidth]=\"scrollXWidth()!\"\r\n [cellConfig]=\"cellConfigSignal()?.thead\"\r\n [position]=\"'bottom'\"\r\n ></x-table-head>\r\n }\r\n @if (footer()) {\r\n <x-table-foot [footer]=\"footer()\" [rowHeight]=\"rowHeight()\"></x-table-foot>\r\n }\r\n @if (hasStickyTopRight()) {\r\n <div\r\n #stickyTopRightEle\r\n class=\"x-table-sticky-right-scroll\"\r\n [class.x-table-border-bottom]=\"headSearchTpl()\"\r\n [style.top.px]=\"getStickyTopScrollTop()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n @if (hasStickyTopRight() && headSearchTpl()) {\r\n <div\r\n class=\"x-table-sticky-right-scroll\"\r\n [style.top.px]=\"getStickyTopScrollTop() + getStickyTopRightEleHeight()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n @if (hasStickyBottomRight()) {\r\n <div\r\n #stickyBottomRightEle\r\n class=\"x-table-sticky-right-scroll\"\r\n [style.bottom.px]=\"getStickyBottomScrollTop()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n @if (hasStickyBottomRight() && headSearchTpl()) {\r\n <div\r\n class=\"x-table-sticky-right-scroll\"\r\n [class.x-table-border-bottom]=\"headSearchTpl()\"\r\n [style.bottom.px]=\"getStickyBottomScrollTop() + getStickyBottomRightEleHeight()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n</table>\r\n@if (showPagination() && size()) {\r\n <x-pagination\r\n #pagination\r\n [(index)]=\"index\"\r\n [(size)]=\"size\"\r\n [(query)]=\"query\"\r\n [total]=\"total()\"\r\n (indexChange)=\"pageChange('index')\"\r\n (sizeChange)=\"pageChange('size')\"\r\n [showEllipsis]=\"showEllipsis()\"\r\n [showTotal]=\"showTotal()\"\r\n [space]=\"space()\"\r\n [showBackground]=\"showBackground()\"\r\n [showSize]=\"showSize()\"\r\n [showJump]=\"showJump()\"\r\n [jumpWidth]=\"jumpWidth()\"\r\n [showInputSize]=\"showInputSize()\"\r\n [inputSizeWidth]=\"inputSizeWidth()\"\r\n [sizeData]=\"sizeData()\"\r\n [sizeWidth]=\"sizeWidth()\"\r\n [pageLinkSize]=\"pageLinkSize()\"\r\n [disabled]=\"disabled()\"\r\n [totalTpl]=\"totalTpl()\"\r\n [simple]=\"simple()\"\r\n [simpleIndexWidth]=\"simpleIndexWidth()\"\r\n [jumpTooltipText]=\"jumpTooltipText()\"\r\n [inputSizeTooltipText]=\"inputSizeTooltipText()\"\r\n [inputIndexSizeSureType]=\"inputIndexSizeSureType()\"\r\n >\r\n </x-pagination>\r\n}\r\n", styles: [".x-table{margin:0;padding:0}.x-table{display:flex;flex-direction:column;border-collapse:collapse;width:100%;position:relative}.x-table:not(.x-table-wrap-border-hidden){border:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>thead{position:relative;overflow:hidden;display:block;min-height:42px}.x-table>thead>tr{width:100%;display:flex;min-height:42px}.x-table>thead>tr>th{display:flex;align-items:center;flex:1;position:relative;font-weight:600;background-color:var(--x-background);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>thead>tr>th>a{display:inline-flex;align-items:center;color:var(--x-text-300);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.x-table>thead>tr>th.x-table-sticky{position:sticky;z-index:5}.x-table>thead>tr>th .x-table-drag-width{position:absolute;height:100%;width:.1875rem;right:-.125rem;cursor:ew-resize;transition:background-color var(--x-animation-duration-fast);z-index:1}.x-table>thead>tr>th .x-table-drag-width:hover{background-color:var(--x-primary)}.x-table>thead>tr.cdk-drop-list-dragging>th.cdk-drag-placeholder{background-color:var(--x-background-a200);opacity:.9}.x-table>thead.x-table-head-bottom>tr>th{border-top:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom:none}.x-table>thead.x-table-head-bottom>tr.x-table-search>th{border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>tbody{display:block;border-top:none;position:relative;min-height:7rem}.x-table>tbody tr{display:flex}.x-table>tbody tr>td{display:flex;align-items:center;position:relative;justify-content:space-between;overflow:hidden;background-color:var(--x-background);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>tbody tr>td>div{flex:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.x-table>tbody tr>td.x-table-sticky{position:sticky;z-index:5}.x-table>tbody tr>td>x-button .x-icon{transition:var(--x-animation-duration-base)}.x-table>tbody tr>td>x-button.is-leaf{visibility:hidden}.x-table>tbody tr>td>x-button.is-expanded .x-icon{transform:rotate(90deg)}.x-table>tbody tr>td.x-table-dragging{background-color:var(--x-background-a200);opacity:.9}.x-table>tbody tr.x-table-activated>td{background-color:var(--x-primary-900)}.x-table>tbody tr:hover:not(.x-table-activated)>td{background-color:var(--x-background-a100)}.x-table>tbody tr:last-child>td{border-bottom:none}.x-table>tbody x-empty{position:absolute;top:0;width:100%;padding:calc(var(--x-font-size) * 2)}.x-table-sort{cursor:pointer;transition:transform .2s}.x-table-sort:hover{color:var(--x-text-300)}.x-table-sort:active{transform:translate(1px,1px)}.x-table-sort-icon.x-icon{margin-left:.25rem;display:none;font-size:1rem;transform:rotate(90deg) rotateY(180deg);transition:.3s}.x-table-sort-icon.x-icon.x-table-icon-up,.x-table-sort-icon.x-icon.x-table-icon-down{display:inherit}.x-table-sort-icon.x-icon.x-table-icon-down{transform:rotate(90deg)}.x-table-scroll-top>thead{box-shadow:var(--x-box-shadow-bottom);z-index:1}.x-table-scroll-left .x-table-sticky-left-last{box-shadow:var(--x-box-shadow-right);border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-td-adaption-height>tbody tr>td{overflow:inherit}.x-table-td-adaption-height>tbody tr>td>div{white-space:inherit;text-overflow:inherit;overflow:inherit}.x-table-bordered>thead>tr>th,.x-table-bordered>tbody tr>td{border-right:var(--x-border-width) var(--x-border-style) var(--x-border);padding-left:calc(var(--x-font-size) / 2)}.x-table-bordered>thead>tr>th:last-child,.x-table-bordered>tbody tr>td:last-child{border-right:none}.x-table-cell-config>thead tr,.x-table-cell-config>tbody tr{display:grid;grid-auto-flow:row;height:100%}.x-table-cell-config>thead>tr>th,.x-table-cell-config>tbody tr>td{border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-cell-config>thead>tr>th:last-child,.x-table-cell-config>tbody tr>td:last-child{border-right:none}.x-table-expand{margin-right:.5rem}.x-table-expandTpl>tr{display:block!important;height:inherit!important}.x-table-header{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;display:flex;align-items:center}.x-table-footer{display:flex;align-items:center;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-sticky-right-scroll{position:absolute;right:0;min-height:42px;background-color:var(--x-background);z-index:1}.x-table-has-scroll-right .x-table-footer{border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-has-scroll-bottom:not(.x-table-scroll-left-max) .x-table-sticky-right-first{box-shadow:var(--x-box-shadow-left);border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-border-bottom{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-border-top{border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-last-tr-bordered>tbody tr:last-child>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-row-size-big>thead>tr>th,.x-table-row-size-big>tbody tr>td{padding:calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4) calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4)}.x-table-row-size-big .x-table-header,.x-table-row-size-big .x-table-footer{padding:calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4) calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4)}.x-table-row-size-large>thead>tr>th,.x-table-row-size-large>tbody tr>td{padding:calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3) calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3)}.x-table-row-size-large .x-table-header,.x-table-row-size-large .x-table-footer{padding:calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3) calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3)}.x-table-row-size-medium>thead>tr>th,.x-table-row-size-medium>tbody tr>td{padding:calc(var(--x-font-size) / 2) var(--x-font-size) calc(var(--x-font-size) / 2) var(--x-font-size)}.x-table-row-size-medium .x-table-header,.x-table-row-size-medium .x-table-footer{padding:calc(var(--x-font-size) / 2) var(--x-font-size) calc(var(--x-font-size) / 2) var(--x-font-size)}.x-table-row-size-small>thead>tr>th,.x-table-row-size-small>tbody tr>td{padding:calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3) calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3)}.x-table-row-size-small .x-table-header,.x-table-row-size-small .x-table-footer{padding:calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3) calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3)}.x-table-row-size-mini>thead>tr>th,.x-table-row-size-mini>tbody tr>td{padding:calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2) calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2)}.x-table-row-size-mini .x-table-header,.x-table-row-size-mini .x-table-footer{padding:calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2) calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2)}x-table{width:100%;display:flex;flex-direction:column}x-table .x-pagination{padding-top:calc(var(--x-font-size) / 2)}x-table.x-table-top-left{flex-direction:column-reverse}x-table.x-table-top-left .x-pagination{padding-top:0;padding-bottom:calc(var(--x-font-size) / 2)}x-table.x-table-top-center{flex-direction:column-reverse;align-items:center}x-table.x-table-top-center .x-pagination{padding-top:0;padding-bottom:calc(var(--x-font-size) / 2)}x-table.x-table-top-right{flex-direction:column-reverse;align-items:flex-end}x-table.x-table-top-right .x-pagination{padding-top:0;padding-bottom:calc(var(--x-font-size) / 2)}x-table.x-table-bottom-center{align-items:center}x-table.x-table-bottom-right{align-items:flex-end}body>.x-table-th{display:block}body>.x-table-th-big{padding:calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4) calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4)}body>.x-table-th-large{padding:calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3) calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3)}body>.x-table-th-medium{padding:calc(var(--x-font-size) / 2) var(--x-font-size) calc(var(--x-font-size) / 2) var(--x-font-size)}body>.x-table-th-small{padding:calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3) calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3)}body>.x-table-th-mini{padding:calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2) calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2)}body>.x-table-th.cdk-drag-preview{display:flex;align-items:center;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-style:dashed;background-color:var(--x-background);opacity:.8;box-shadow:var(--x-box-shadow)}body>.x-table-th.cdk-drag-preview>a{display:inline-flex;align-items:center;color:var(--x-text-300);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}body>.x-table-th.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XLoadingComponent, selector: "x-loading, [x-loading]" }, { kind: "component", type: XTableHeadComponent, selector: "x-table-head" }, { kind: "component", type: XTableFootComponent, selector: "x-table-foot" }, { kind: "component", type: XTableBodyComponent, selector: "x-table-body" }, { kind: "component", type: XPaginationComponent, selector: "x-pagination" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
359
|
-
}
|
|
360
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTableComponent, decorators: [{
|
|
361
|
-
type: Component,
|
|
362
|
-
args: [{ selector: `${XTablePrefix}`, standalone: true, imports: [
|
|
363
|
-
NgClass,
|
|
364
|
-
XOutletDirective,
|
|
365
|
-
XLoadingComponent,
|
|
366
|
-
XTableHeadComponent,
|
|
367
|
-
XTableFootComponent,
|
|
368
|
-
XTableBodyComponent,
|
|
369
|
-
XPaginationComponent
|
|
370
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<table\r\n #table\r\n class=\"x-table\"\r\n [ngClass]=\"classMap()\"\r\n [x-loading]=\"loading() && getting()\"\r\n [class.x-table-wrap-border-hidden]=\"hiddenWrapBorder()\"\r\n [class.x-table-scroll-left]=\"getScrollLeft()\"\r\n [class.x-table-scroll-left-max]=\"scrollLeftMax()\"\r\n [class.x-table-scroll-top]=\"getScrollTop()\"\r\n [class.x-table-has-scroll-right]=\"scrollYWidth()\"\r\n [class.x-table-has-scroll-bottom]=\"scrollXWidth()\"\r\n [class.x-table-bordered]=\"bordered()\"\r\n [class.x-table-td-adaption-height]=\"rowHeight() == 0\"\r\n [class.x-table-cell-config]=\"!!cellConfigSignal()\"\r\n [class.x-table-last-tr-bordered]=\"!!adaptionHeight() || tbodyHeight() >= tbodyScrollHeight()\"\r\n>\r\n @if (header()) {\r\n <caption #caption class=\"x-table-header\" [style.height.px]=\"getRowHeight()\" [style.min-height.px]=\"getRowHeight()\">\r\n <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n </caption>\r\n }\r\n @if (showHeader() && (headerPosition() === 'top' || headerPosition() === 'top-bottom')) {\r\n <x-table-head\r\n [columns]=\"columns()\"\r\n [rowHeight]=\"rowHeight()\"\r\n [columnTpl]=\"headColumnTpl()\"\r\n [scrollYWidth]=\"scrollYWidth()\"\r\n [scrollXWidth]=\"scrollXWidth()!\"\r\n [cellConfig]=\"cellConfigSignal()?.thead\"\r\n [position]=\"'top'\"\r\n ></x-table-head>\r\n }\r\n <x-table-body\r\n [data]=\"treeTable() ? treeTableData() : tableData()\"\r\n [columns]=\"columns()\"\r\n [itemSize]=\"itemSize()\"\r\n [rowHeight]=\"rowHeight()\"\r\n [bodyHeight]=\"bodyHeight()!\"\r\n [columnTpl]=\"bodyColumnTpl()\"\r\n [allowSelectRow]=\"allowSelectRow()\"\r\n [virtualScroll]=\"virtualScroll()\"\r\n [minBufferPx]=\"minBufferPx()\"\r\n [maxBufferPx]=\"maxBufferPx()\"\r\n [adaptionHeight]=\"adaptionHeight()!\"\r\n [docPercent]=\"docPercent()\"\r\n [scroll]=\"scroll()\"\r\n [rowClass]=\"rowClass()\"\r\n [cellConfig]=\"cellConfigSignal()?.tbody\"\r\n [expandedAll]=\"expandedAll()\"\r\n [expandTpl]=\"expandTpl()\"\r\n [(activatedRow)]=\"activatedRow\"\r\n (rowClick)=\"rowClick.emit($event)\"\r\n ></x-table-body>\r\n @if (showHeader() && (headerPosition() === 'bottom' || headerPosition() === 'top-bottom')) {\r\n <x-table-head\r\n [columns]=\"columns()\"\r\n [rowHeight]=\"rowHeight()\"\r\n [columnTpl]=\"headColumnTpl()\"\r\n [scrollYWidth]=\"scrollYWidth()\"\r\n [scrollXWidth]=\"scrollXWidth()!\"\r\n [cellConfig]=\"cellConfigSignal()?.thead\"\r\n [position]=\"'bottom'\"\r\n ></x-table-head>\r\n }\r\n @if (footer()) {\r\n <x-table-foot [footer]=\"footer()\" [rowHeight]=\"rowHeight()\"></x-table-foot>\r\n }\r\n @if (hasStickyTopRight()) {\r\n <div\r\n #stickyTopRightEle\r\n class=\"x-table-sticky-right-scroll\"\r\n [class.x-table-border-bottom]=\"headSearchTpl()\"\r\n [style.top.px]=\"getStickyTopScrollTop()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n @if (hasStickyTopRight() && headSearchTpl()) {\r\n <div\r\n class=\"x-table-sticky-right-scroll\"\r\n [style.top.px]=\"getStickyTopScrollTop() + getStickyTopRightEleHeight()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n @if (hasStickyBottomRight()) {\r\n <div\r\n #stickyBottomRightEle\r\n class=\"x-table-sticky-right-scroll\"\r\n [style.bottom.px]=\"getStickyBottomScrollTop()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n @if (hasStickyBottomRight() && headSearchTpl()) {\r\n <div\r\n class=\"x-table-sticky-right-scroll\"\r\n [class.x-table-border-bottom]=\"headSearchTpl()\"\r\n [style.bottom.px]=\"getStickyBottomScrollTop() + getStickyBottomRightEleHeight()\"\r\n [style.width.px]=\"scrollYWidth()\"\r\n [style.height.px]=\"getRowHeight()\"\r\n [style.min-height.px]=\"getRowHeight()\"\r\n ></div>\r\n }\r\n</table>\r\n@if (showPagination() && size()) {\r\n <x-pagination\r\n #pagination\r\n [(index)]=\"index\"\r\n [(size)]=\"size\"\r\n [(query)]=\"query\"\r\n [total]=\"total()\"\r\n (indexChange)=\"pageChange('index')\"\r\n (sizeChange)=\"pageChange('size')\"\r\n [showEllipsis]=\"showEllipsis()\"\r\n [showTotal]=\"showTotal()\"\r\n [space]=\"space()\"\r\n [showBackground]=\"showBackground()\"\r\n [showSize]=\"showSize()\"\r\n [showJump]=\"showJump()\"\r\n [jumpWidth]=\"jumpWidth()\"\r\n [showInputSize]=\"showInputSize()\"\r\n [inputSizeWidth]=\"inputSizeWidth()\"\r\n [sizeData]=\"sizeData()\"\r\n [sizeWidth]=\"sizeWidth()\"\r\n [pageLinkSize]=\"pageLinkSize()\"\r\n [disabled]=\"disabled()\"\r\n [totalTpl]=\"totalTpl()\"\r\n [simple]=\"simple()\"\r\n [simpleIndexWidth]=\"simpleIndexWidth()\"\r\n [jumpTooltipText]=\"jumpTooltipText()\"\r\n [inputSizeTooltipText]=\"inputSizeTooltipText()\"\r\n [inputIndexSizeSureType]=\"inputIndexSizeSureType()\"\r\n >\r\n </x-pagination>\r\n}\r\n", styles: [".x-table{margin:0;padding:0}.x-table{display:flex;flex-direction:column;border-collapse:collapse;width:100%;position:relative}.x-table:not(.x-table-wrap-border-hidden){border:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>thead{position:relative;overflow:hidden;display:block;min-height:42px}.x-table>thead>tr{width:100%;display:flex;min-height:42px}.x-table>thead>tr>th{display:flex;align-items:center;flex:1;position:relative;font-weight:600;background-color:var(--x-background);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>thead>tr>th>a{display:inline-flex;align-items:center;color:var(--x-text-300);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.x-table>thead>tr>th.x-table-sticky{position:sticky;z-index:5}.x-table>thead>tr>th .x-table-drag-width{position:absolute;height:100%;width:.1875rem;right:-.125rem;cursor:ew-resize;transition:background-color var(--x-animation-duration-fast);z-index:1}.x-table>thead>tr>th .x-table-drag-width:hover{background-color:var(--x-primary)}.x-table>thead>tr.cdk-drop-list-dragging>th.cdk-drag-placeholder{background-color:var(--x-background-a200);opacity:.9}.x-table>thead.x-table-head-bottom>tr>th{border-top:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom:none}.x-table>thead.x-table-head-bottom>tr.x-table-search>th{border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>tbody{display:block;border-top:none;position:relative;min-height:7rem}.x-table>tbody tr{display:flex}.x-table>tbody tr>td{display:flex;align-items:center;position:relative;justify-content:space-between;overflow:hidden;background-color:var(--x-background);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table>tbody tr>td>div{flex:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.x-table>tbody tr>td.x-table-sticky{position:sticky;z-index:5}.x-table>tbody tr>td>x-button .x-icon{transition:var(--x-animation-duration-base)}.x-table>tbody tr>td>x-button.is-leaf{visibility:hidden}.x-table>tbody tr>td>x-button.is-expanded .x-icon{transform:rotate(90deg)}.x-table>tbody tr>td.x-table-dragging{background-color:var(--x-background-a200);opacity:.9}.x-table>tbody tr.x-table-activated>td{background-color:var(--x-primary-900)}.x-table>tbody tr:hover:not(.x-table-activated)>td{background-color:var(--x-background-a100)}.x-table>tbody tr:last-child>td{border-bottom:none}.x-table>tbody x-empty{position:absolute;top:0;width:100%;padding:calc(var(--x-font-size) * 2)}.x-table-sort{cursor:pointer;transition:transform .2s}.x-table-sort:hover{color:var(--x-text-300)}.x-table-sort:active{transform:translate(1px,1px)}.x-table-sort-icon.x-icon{margin-left:.25rem;display:none;font-size:1rem;transform:rotate(90deg) rotateY(180deg);transition:.3s}.x-table-sort-icon.x-icon.x-table-icon-up,.x-table-sort-icon.x-icon.x-table-icon-down{display:inherit}.x-table-sort-icon.x-icon.x-table-icon-down{transform:rotate(90deg)}.x-table-scroll-top>thead{box-shadow:var(--x-box-shadow-bottom);z-index:1}.x-table-scroll-left .x-table-sticky-left-last{box-shadow:var(--x-box-shadow-right);border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-td-adaption-height>tbody tr>td{overflow:inherit}.x-table-td-adaption-height>tbody tr>td>div{white-space:inherit;text-overflow:inherit;overflow:inherit}.x-table-bordered>thead>tr>th,.x-table-bordered>tbody tr>td{border-right:var(--x-border-width) var(--x-border-style) var(--x-border);padding-left:calc(var(--x-font-size) / 2)}.x-table-bordered>thead>tr>th:last-child,.x-table-bordered>tbody tr>td:last-child{border-right:none}.x-table-cell-config>thead tr,.x-table-cell-config>tbody tr{display:grid;grid-auto-flow:row;height:100%}.x-table-cell-config>thead>tr>th,.x-table-cell-config>tbody tr>td{border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-cell-config>thead>tr>th:last-child,.x-table-cell-config>tbody tr>td:last-child{border-right:none}.x-table-expand{margin-right:.5rem}.x-table-expandTpl>tr{display:block!important;height:inherit!important}.x-table-header{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;display:flex;align-items:center}.x-table-footer{display:flex;align-items:center;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-sticky-right-scroll{position:absolute;right:0;min-height:42px;background-color:var(--x-background);z-index:1}.x-table-has-scroll-right .x-table-footer{border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-has-scroll-bottom:not(.x-table-scroll-left-max) .x-table-sticky-right-first{box-shadow:var(--x-box-shadow-left);border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-border-bottom{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-border-top{border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-last-tr-bordered>tbody tr:last-child>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-row-size-big>thead>tr>th,.x-table-row-size-big>tbody tr>td{padding:calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4) calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4)}.x-table-row-size-big .x-table-header,.x-table-row-size-big .x-table-footer{padding:calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4) calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4)}.x-table-row-size-large>thead>tr>th,.x-table-row-size-large>tbody tr>td{padding:calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3) calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3)}.x-table-row-size-large .x-table-header,.x-table-row-size-large .x-table-footer{padding:calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3) calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3)}.x-table-row-size-medium>thead>tr>th,.x-table-row-size-medium>tbody tr>td{padding:calc(var(--x-font-size) / 2) var(--x-font-size) calc(var(--x-font-size) / 2) var(--x-font-size)}.x-table-row-size-medium .x-table-header,.x-table-row-size-medium .x-table-footer{padding:calc(var(--x-font-size) / 2) var(--x-font-size) calc(var(--x-font-size) / 2) var(--x-font-size)}.x-table-row-size-small>thead>tr>th,.x-table-row-size-small>tbody tr>td{padding:calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3) calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3)}.x-table-row-size-small .x-table-header,.x-table-row-size-small .x-table-footer{padding:calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3) calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3)}.x-table-row-size-mini>thead>tr>th,.x-table-row-size-mini>tbody tr>td{padding:calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2) calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2)}.x-table-row-size-mini .x-table-header,.x-table-row-size-mini .x-table-footer{padding:calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2) calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2)}x-table{width:100%;display:flex;flex-direction:column}x-table .x-pagination{padding-top:calc(var(--x-font-size) / 2)}x-table.x-table-top-left{flex-direction:column-reverse}x-table.x-table-top-left .x-pagination{padding-top:0;padding-bottom:calc(var(--x-font-size) / 2)}x-table.x-table-top-center{flex-direction:column-reverse;align-items:center}x-table.x-table-top-center .x-pagination{padding-top:0;padding-bottom:calc(var(--x-font-size) / 2)}x-table.x-table-top-right{flex-direction:column-reverse;align-items:flex-end}x-table.x-table-top-right .x-pagination{padding-top:0;padding-bottom:calc(var(--x-font-size) / 2)}x-table.x-table-bottom-center{align-items:center}x-table.x-table-bottom-right{align-items:flex-end}body>.x-table-th{display:block}body>.x-table-th-big{padding:calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4) calc(var(--x-font-size) / 5 * 4) calc(var(--x-font-size) * 5 / 4)}body>.x-table-th-large{padding:calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3) calc(var(--x-font-size) / 4 * 3) calc(var(--x-font-size) * 4 / 3)}body>.x-table-th-medium{padding:calc(var(--x-font-size) / 2) var(--x-font-size) calc(var(--x-font-size) / 2) var(--x-font-size)}body>.x-table-th-small{padding:calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3) calc(var(--x-font-size) / 3) calc(var(--x-font-size) * 2 / 3)}body>.x-table-th-mini{padding:calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2) calc(var(--x-font-size) / 4) calc(var(--x-font-size) / 2)}body>.x-table-th.cdk-drag-preview{display:flex;align-items:center;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-style:dashed;background-color:var(--x-background);opacity:.8;box-shadow:var(--x-box-shadow)}body>.x-table-th.cdk-drag-preview>a{display:inline-flex;align-items:center;color:var(--x-text-300);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}body>.x-table-th.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"] }]
|
|
371
|
-
}] });
|
|
372
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixpQkFBaUIsRUFDakIsdUJBQXVCLEVBR3ZCLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBRWIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFlBQVksRUFDWixjQUFjLEVBS2YsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBc0IsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5HLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFtQnRELE1BQU0sT0FBTyxl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QUM7WUFDM0UsT0FBTyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUM1QixDQUFDLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzVCLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztpSUF2V1UsZUFBZTtxSEFBZixlQUFlLHdvQkFvQ2tCLG1CQUFtQiw2RUFDbkIsbUJBQW1CLDBGQUN0QixtQkFBbUIsNEdDNUY5RCx3dUtBMklBLHkrUkRsR0ksT0FBTyxvRkFDUCxnQkFBZ0IsNkZBQ2hCLGlCQUFpQixtRUFDakIsbUJBQW1CLHlEQUNuQixtQkFBbUIseURBQ25CLG1CQUFtQix5REFDbkIsb0JBQW9COzsyRkFPWCxlQUFlO2tCQWpCM0IsU0FBUzsrQkFDRSxHQUFHLFlBQVksRUFBRSxjQUNmLElBQUksV0FDUDt3QkFDUCxPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixvQkFBb0I7cUJBQ3JCLGlCQUdjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgY29tcHV0ZWQsXHJcbiAgc2lnbmFsLFxyXG4gIHZpZXdDaGlsZCxcclxuICBpbmplY3QsXHJcbiAgdmlld0NoaWxkcmVuLFxyXG4gIEFmdGVyVmlld0NoZWNrZWRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBYVGFibGVQcmVmaXgsXHJcbiAgWFRhYmxlUHJvcGVydHksXHJcbiAgWFRhYmxlQ29sdW1uLFxyXG4gIFhUYWJsZVJvdyxcclxuICBYVGFibGVDZWxsLFxyXG4gIFhUYWJsZUNlbGxDb25maWdSdWxlXHJcbn0gZnJvbSAnLi90YWJsZS5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhJc0NoYW5nZSwgWElzRW1wdHksIFhSZXN1bHRMaXN0LCBYU29ydCwgWElzVW5kZWZpbmVkLCBYSXNBcnJheSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcclxuaW1wb3J0IHsgWFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9wYWdpbmF0aW9uJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBYTG9hZGluZ0NvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2xvYWRpbmcnO1xyXG5pbXBvcnQgeyBYVGFibGVIZWFkQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS1oZWFkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFhUYWJsZUZvb3RDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLWZvb3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWFRhYmxlQm9keUNvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtYm9keS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBYT3V0bGV0RGlyZWN0aXZlIH0gZnJvbSAnQG5nLW5lc3QvdWkvb3V0bGV0JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVGFibGVQcmVmaXh9YCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBYT3V0bGV0RGlyZWN0aXZlLFxyXG4gICAgWExvYWRpbmdDb21wb25lbnQsXHJcbiAgICBYVGFibGVIZWFkQ29tcG9uZW50LFxyXG4gICAgWFRhYmxlRm9vdENvbXBvbmVudCxcclxuICAgIFhUYWJsZUJvZHlDb21wb25lbnQsXHJcbiAgICBYUGFnaW5hdGlvbkNvbXBvbmVudFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWJsZUNvbXBvbmVudCBleHRlbmRzIFhUYWJsZVByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0NoZWNrZWQge1xyXG4gIHJlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XHJcbiAgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmPEhUTUxFbGVtZW50Pik7XHJcbiAgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcclxuICB1blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBjbGFzc01hcCA9IGNvbXB1dGVkKCgpID0+ICh7IFtgJHtYVGFibGVQcmVmaXh9LXJvdy1zaXplLSR7dGhpcy5yb3dTaXplKCl9YF06ICFYSXNFbXB0eSh0aGlzLnJvd1NpemUoKSkgfSkpO1xyXG4gIHRoZWFkcyA9IHNpZ25hbDxFbGVtZW50UmVmPEhUTUxFbGVtZW50PltdPihbXSk7XHJcbiAgdGZvb3QgPSBzaWduYWw8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCBudWxsPihudWxsKTtcclxuICB2aXJ0dWFsQm9keSA9IHNpZ25hbDxDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQgfCBudWxsPihudWxsKTtcclxuICB0aGVhZHNDaGFuZ2U6ICgoKSA9PiB2b2lkKVtdID0gW107XHJcbiAgYm9keUNoYW5nZSE6ICgpID0+IHZvaWQ7XHJcbiAgc2Nyb2xsQ29udGVudEVsZSA9IHNpZ25hbDxIVE1MRWxlbWVudCB8IG51bGw+KG51bGwpO1xyXG4gIGhhc1Njcm9sbFkgPSBzaWduYWwoZmFsc2UpO1xyXG4gIHNjcm9sbFlXaWR0aCA9IHNpZ25hbCgwKTtcclxuICBoYXNTY3JvbGxYID0gc2lnbmFsKGZhbHNlKTtcclxuICBzY3JvbGxYSGVpZ2h0ID0gc2lnbmFsKDApO1xyXG4gIHNjcm9sbFhXaWR0aCA9IHNpZ25hbDxudW1iZXIgfCBudWxsPihudWxsKTtcclxuICBzY3JvbGxMZWZ0ID0gc2lnbmFsKDApO1xyXG4gIHNjcm9sbExlZnRNYXggPSBzaWduYWwoZmFsc2UpO1xyXG4gIHNjcm9sbFRvcCA9IHNpZ25hbCgwKTtcclxuICByb3dDaGVja2VkID0gc2lnbmFsPFhUYWJsZUNvbHVtbiB8IG51bGw+KG51bGwpO1xyXG4gIGhlYWRDaGVja2JveExpc3QgPSBzaWduYWw8WFRhYmxlQ29sdW1uW10+KFtdKTtcclxuICByb3dFeHBhbmQgPSBzaWduYWw8WFRhYmxlQ29sdW1uIHwgbnVsbD4obnVsbCk7XHJcbiAgaGVhZEV4cGFuZExpc3QgPSBzaWduYWw8WFRhYmxlQ29sdW1uW10+KFtdKTtcclxuICBkYXRhSXNGdW5jID0gc2lnbmFsKGZhbHNlKTtcclxuICBnZXR0aW5nID0gc2lnbmFsKGZhbHNlKTtcclxuICB0YWJsZURhdGEgPSBzaWduYWw8WFRhYmxlUm93W10+KFtdKTtcclxuICB0cmVlVGFibGVEYXRhID0gc2lnbmFsPFhUYWJsZVJvd1tdPihbXSk7XHJcbiAgY2hlY2tlZFZhbHVlcyA9IHNpZ25hbDx7IFtwcm9wOiBzdHJpbmddOiBib29sZWFuIH0+KHt9KTtcclxuICBpbmRldGVybWluYXRlID0gc2lnbmFsKCckJGluZGV0ZXJtaW5hdGUnKTtcclxuICB0YWJsZSA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ3RhYmxlJyk7XHJcbiAgY2FwdGlvbiA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2NhcHRpb24nKTtcclxuICBwYWdpbmF0aW9uID0gdmlld0NoaWxkPFhQYWdpbmF0aW9uQ29tcG9uZW50PigncGFnaW5hdGlvbicpO1xyXG4gIHN0aWNreVRvcFJpZ2h0RWxlID0gdmlld0NoaWxkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+Pignc3RpY2t5VG9wUmlnaHRFbGUnKTtcclxuICBzdGlja3lCb3R0b21SaWdodEVsZSA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ3N0aWNreUJvdHRvbVJpZ2h0RWxlJyk7XHJcbiAgaGVhZENvbSA9IHZpZXdDaGlsZHJlbjxYVGFibGVIZWFkQ29tcG9uZW50PihYVGFibGVIZWFkQ29tcG9uZW50KTtcclxuICBib2R5Q29tID0gdmlld0NoaWxkcmVuPFhUYWJsZUJvZHlDb21wb25lbnQ+KFhUYWJsZUJvZHlDb21wb25lbnQpO1xyXG4gIGZvb3RDb20gPSB2aWV3Q2hpbGQ8WFRhYmxlRm9vdENvbXBvbmVudD4oWFRhYmxlRm9vdENvbXBvbmVudCk7XHJcblxyXG4gIGdldFNjcm9sbExlZnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNjcm9sbExlZnQoKSA+IDApO1xyXG4gIGdldFNjcm9sbFRvcCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuc2Nyb2xsVG9wKCkgPiAwKTtcclxuICBnZXRSb3dIZWlnaHQgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5yb3dIZWlnaHQoKSA9PT0gMCA/ICcnIDogdGhpcy5yb3dIZWlnaHQoKSkpO1xyXG4gIGdldFN0aWNreVRvcFNjcm9sbFRvcCA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmNhcHRpb24oKSA/IHRoaXMuY2FwdGlvbigpIS5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCA6IDApKTtcclxuICBnZXRTdGlja3lCb3R0b21TY3JvbGxUb3AgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBsZXQgdG9wID0gMDtcclxuICAgIGlmICh0aGlzLmZvb3RlcigpICYmIHRoaXMudGZvb3QoKSkge1xyXG4gICAgICB0b3AgKz0gdGhpcy50Zm9vdCgpIS5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCArIDE7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdG9wO1xyXG4gIH0pO1xyXG4gIGdldFN0aWNreVRvcFJpZ2h0RWxlSGVpZ2h0ID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMuc3RpY2t5VG9wUmlnaHRFbGUoKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zdGlja3lUb3BSaWdodEVsZSgpIS5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIGdldFN0aWNreUJvdHRvbVJpZ2h0RWxlSGVpZ2h0ID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMuc3RpY2t5Qm90dG9tUmlnaHRFbGUoKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zdGlja3lCb3R0b21SaWdodEVsZSgpIS5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIGhhc1N0aWNreVRvcFJpZ2h0ID0gY29tcHV0ZWQoXHJcbiAgICAoKSA9PlxyXG4gICAgICB0aGlzLnNob3dIZWFkZXIoKSAmJlxyXG4gICAgICAodGhpcy5oZWFkZXJQb3NpdGlvbigpID09PSAndG9wJyB8fCB0aGlzLmhlYWRlclBvc2l0aW9uKCkgPT09ICd0b3AtYm90dG9tJykgJiZcclxuICAgICAgdGhpcy5jb2x1bW5zKCkuc29tZSgoeCkgPT4gTnVtYmVyKHgucmlnaHQpID49IDApXHJcbiAgKTtcclxuICBoYXNTdGlja3lUb3BSaWdodFNlYXJjaCA9IGNvbXB1dGVkKCgpID0+ICEhdGhpcy5oZWFkU2VhcmNoVHBsKCkpO1xyXG5cclxuICBoYXNTdGlja3lCb3R0b21SaWdodCA9IGNvbXB1dGVkKFxyXG4gICAgKCkgPT5cclxuICAgICAgdGhpcy5zaG93SGVhZGVyKCkgJiZcclxuICAgICAgKHRoaXMuaGVhZGVyUG9zaXRpb24oKSA9PT0gJ2JvdHRvbScgfHwgdGhpcy5oZWFkZXJQb3NpdGlvbigpID09PSAndG9wLWJvdHRvbScpICYmXHJcbiAgICAgIHRoaXMuY29sdW1ucygpLnNvbWUoKHgpID0+IE51bWJlcih4LnJpZ2h0KSA+PSAwKVxyXG4gICk7XHJcblxyXG4gIGNlbGxDb25maWdTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBjb25zdCBjZWxsQ29uZmlnID0gdGhpcy5jZWxsQ29uZmlnKCk7XHJcbiAgICBpZiAoIWNlbGxDb25maWcpIHJldHVybjtcclxuICAgIGNvbnN0IHNldFJ1bGUgPSAocnVsZT86IFhUYWJsZUNlbGxDb25maWdSdWxlKSA9PiB7XHJcbiAgICAgIGlmICghcnVsZSkgcmV0dXJuO1xyXG4gICAgICBsZXQgZ3JpZFRlbXBsYXRlQ29sdW1ucyA9ICcnLFxyXG4gICAgICAgIGNlbGxzID0gW107XHJcbiAgICAgIGlmICghcnVsZS5ncmlkVGVtcGxhdGVDb2x1bW5zKSB7XHJcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucyA9IGAke3RoaXMuY29sdW1ucygpXHJcbiAgICAgICAgICAubWFwKCh4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh4LndpZHRoKSByZXR1cm4geC53aWR0aDtcclxuICAgICAgICAgICAgaWYgKHguZmxleCkgcmV0dXJuIGAke3guZmxleH1mcmA7XHJcbiAgICAgICAgICAgIHJldHVybiAnMWZyJztcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICAuam9pbignICcpfWA7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCFydWxlLmNlbGxzKSByZXR1cm47XHJcbiAgICAgIGNlbGxzID0gcnVsZS5jZWxscy5tYXAoKHkpID0+IHtcclxuICAgICAgICBjb25zdCBjb2wgPSB0aGlzLmNvbHVtbnMoKS5maW5kKCh6KSA9PiB6LmlkID09PSB5LmlkKTtcclxuICAgICAgICBpZiAoY29sKSB7XHJcbiAgICAgICAgICByZXR1cm4geyAuLi5jb2wsIC4uLnkgfSBhcyBYVGFibGVDZWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4geTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiB7IGdyaWRUZW1wbGF0ZUNvbHVtbnMsIGNlbGxzIH07XHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiB7IHRoZWFkOiBzZXRSdWxlKGNlbGxDb25maWcudGhlYWQpLCB0Ym9keTogc2V0UnVsZShjZWxsQ29uZmlnLnRib2R5KSB9O1xyXG4gIH0pO1xyXG5cclxuICB0Ym9keUhlaWdodCA9IHNpZ25hbCgwKTtcclxuICB0Ym9keVNjcm9sbEhlaWdodCA9IHNpZ25hbCgwKTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldFJvd0NoZWNrZWQoKTtcclxuICAgIHRoaXMuc2V0Um93RXhwYW5kKCk7XHJcbiAgICB0aGlzLnNldFBhZ2luYXRpb25Qb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoc2ltcGxlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgY29uc3QgeyBkYXRhLCBjaGVja2VkUm93LCBjb2x1bW5zLCBhY3RpdmF0ZWRSb3csIG1hbnVhbCwgc2hvd1BhZ2luYXRpb24sIGV4cGFuZGVkQWxsIH0gPSBzaW1wbGVzO1xyXG4gICAgWElzQ2hhbmdlKGV4cGFuZGVkQWxsKSAmJiB0aGlzLnNldEV4cGFuZGVkQWxsKCk7XHJcbiAgICBYSXNDaGFuZ2UoZGF0YSwgY2hlY2tlZFJvdykgJiYgdGhpcy5zZXREYXRhKCk7XHJcbiAgICBpZiAoWElzQ2hhbmdlKGNvbHVtbnMpKSB7XHJcbiAgICAgIHRoaXMuc2V0Um93Q2hlY2tlZCgpO1xyXG4gICAgICB0aGlzLnNldFJvd0V4cGFuZCgpO1xyXG4gICAgfVxyXG4gICAgWElzQ2hhbmdlKGNvbHVtbnMsIGFjdGl2YXRlZFJvdywgc2hvd1BhZ2luYXRpb24pICYmIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIFhJc0NoYW5nZShtYW51YWwpICYmIHRoaXMuc2V0TWFudWFsKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5ib2R5Q29tKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICBjb25zdCBmaXJzdCA9IHRoaXMuYm9keUNvbSgpWzBdLnRib2R5KCkubmF0aXZlRWxlbWVudDtcclxuICAgICAgdGhpcy50Ym9keUhlaWdodC5zZXQoZmlyc3QuY2xpZW50SGVpZ2h0KTtcclxuICAgICAgdGhpcy50Ym9keVNjcm9sbEhlaWdodC5zZXQoZmlyc3Quc2Nyb2xsSGVpZ2h0KTtcclxuICAgICAgLy8gbGV0IHRycyA9IGZpcnN0LnRib2R5KCkubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCd0cicpO1xyXG4gICAgICAvLyBsZXQgaSA9IDA7XHJcbiAgICAgIC8vIGxldCBoID0gMDtcclxuICAgICAgLy8gd2hpbGUgKGkgPCB0cnMubGVuZ3RoKSB7XHJcbiAgICAgIC8vICAgaCArPSB0cnNbaV0uY2xpZW50SGVpZ2h0O1xyXG4gICAgICAvLyB9XHJcbiAgICAgIC8vIHRoaXMudHJzSGVpZ2h0LnNldChoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy51blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy51blN1YmplY3QuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHNldFBhZ2luYXRpb25Qb3NpdGlvbigpIHtcclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIGB4LXRhYmxlLSR7dGhpcy5wYWdpbmF0aW9uUG9zaXRpb24oKX1gKTtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreShjb2x1bW46IFhUYWJsZUNvbHVtbiB8IFhUYWJsZUNlbGwpIHtcclxuICAgIHJldHVybiB0aGlzLmdldFN0aWNreUxlZnQoY29sdW1uKSB8fCB0aGlzLmdldFN0aWNreVJpZ2h0KGNvbHVtbik7XHJcbiAgfVxyXG5cclxuICBnZXRTdGlja3lMZWZ0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgcmV0dXJuIE51bWJlcihjb2x1bW4ubGVmdCkgPj0gMDtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreUxlZnRMYXN0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgbGV0IGxlZnRzID0gdGhpcy5jb2x1bW5zKCkuZmlsdGVyKCh4KSA9PiBOdW1iZXIoeC5sZWZ0KSA+PSAwKTtcclxuICAgIGlmIChsZWZ0cy5sZW5ndGggPT09IDApIHJldHVybiBmYWxzZTtcclxuICAgIHJldHVybiBsZWZ0c1tsZWZ0cy5sZW5ndGggLSAxXS5pZCA9PT0gY29sdW1uLmlkO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RpY2t5UmlnaHQoY29sdW1uOiBYVGFibGVDb2x1bW4gfCBYVGFibGVDZWxsKSB7XHJcbiAgICByZXR1cm4gTnVtYmVyKGNvbHVtbi5yaWdodCkgPj0gMDtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreVJpZ2h0Rmlyc3QoY29sdW1uOiBYVGFibGVDb2x1bW4gfCBYVGFibGVDZWxsKSB7XHJcbiAgICBsZXQgcmlnaHRzID0gdGhpcy5jb2x1bW5zKCkuZmlsdGVyKCh4KSA9PiBOdW1iZXIoeC5yaWdodCkgPj0gMCk7XHJcbiAgICBpZiAocmlnaHRzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xyXG4gICAgcmV0dXJuIHJpZ2h0c1swXS5pZCA9PT0gY29sdW1uLmlkO1xyXG4gIH1cclxuXHJcbiAgZ2V0SW5kZXgoaW5kZXg6IG51bWJlcikge1xyXG4gICAgcmV0dXJuICh0aGlzLmluZGV4KCkgLSAxKSAqIHRoaXMuc2l6ZSgpICsgaW5kZXggKyAxO1xyXG4gIH1cclxuXHJcbiAgc2V0RGF0YSgpIHtcclxuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGEoKTtcclxuICAgIGlmIChYSXNBcnJheTxYVGFibGVSb3c+KGRhdGEpKSB7XHJcbiAgICAgIHRoaXMuZGF0YUlzRnVuYy5zZXQoZmFsc2UpO1xyXG4gICAgICB0aGlzLnRhYmxlRGF0YS5zZXQoZGF0YSk7XHJcbiAgICAgIHRoaXMuc2V0Q2hlY2tlZChkYXRhKTtcclxuICAgICAgdGhpcy5zZXRIZWFkQ2hlY2tib3hMaXN0KGRhdGEpO1xyXG4gICAgICB0aGlzLnNldEV4cGFuZChkYXRhKTtcclxuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9IGVsc2UgaWYgKGRhdGEgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xyXG4gICAgICB0aGlzLmRhdGFJc0Z1bmMuc2V0KHRydWUpO1xyXG4gICAgICB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERhdGFCeUZ1bmMoKSB7XHJcbiAgICBpZiAoIXRoaXMubWFudWFsKCkpIHJldHVybjtcclxuICAgIHRoaXMuZ2V0dGluZy5zZXQodHJ1ZSk7XHJcbiAgICB0aGlzLnVuU3ViamVjdC5uZXh0KCk7XHJcbiAgICAodGhpcy5kYXRhKCkgYXMgRnVuY3Rpb24pKHRoaXMuaW5kZXgoKSwgdGhpcy5zaXplKCksIHRoaXMucXVlcnkoKSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5TdWJqZWN0KSlcclxuICAgICAgLnN1YnNjcmliZSgoeDogWFJlc3VsdExpc3Q8WFRhYmxlUm93PikgPT4ge1xyXG4gICAgICAgIGxldCBbZGF0YSwgdG90YWxdID0gW3gubGlzdCBhcyBYVGFibGVSb3dbXSwgeC50b3RhbCFdO1xyXG4gICAgICAgIGlmICh0aGlzLnZpcnR1YWxCb2R5KCkpIHtcclxuICAgICAgICAgIHRoaXMudmlydHVhbEJvZHkoKSEuc2Nyb2xsVG9JbmRleCgwKTtcclxuICAgICAgICAgIHRoaXMudmlydHVhbEJvZHkoKSEuY2hlY2tWaWV3cG9ydFNpemUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXR0aW5nLnNldChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy50YWJsZURhdGEuc2V0KGRhdGEpO1xyXG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChkYXRhKTtcclxuICAgICAgICB0aGlzLnNldEhlYWRDaGVja2JveExpc3QoZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRFeHBhbmQoZGF0YSk7XHJcbiAgICAgICAgdGhpcy50b3RhbC5zZXQodG90YWwpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldE1hbnVhbCgpIHtcclxuICAgIGlmICh0aGlzLmRhdGFJc0Z1bmMoKSkgdGhpcy5nZXREYXRhQnlGdW5jKCk7XHJcbiAgfVxyXG5cclxuICBzZXRSb3dDaGVja2VkKCkge1xyXG4gICAgdGhpcy5yb3dDaGVja2VkLnNldCh0aGlzLmNvbHVtbnMoKS5maW5kKCh4KSA9PiB4LnJvd0NoZWNrZWQpIGFzIFhUYWJsZUNvbHVtbik7XHJcbiAgICB0aGlzLmhlYWRDaGVja2JveExpc3Quc2V0KHRoaXMuY29sdW1ucygpLmZpbHRlcigoeCkgPT4geC50eXBlID09PSAnY2hlY2tib3gnICYmIHguaGVhZENoZWNrZWQpKTtcclxuICB9XHJcblxyXG4gIHNldFJvd0V4cGFuZCgpIHtcclxuICAgIHRoaXMucm93RXhwYW5kLnNldCh0aGlzLmNvbHVtbnMoKS5maW5kKCh4KSA9PiB4LnJvd0V4cGFuZCkgYXMgWFRhYmxlQ29sdW1uKTtcclxuICB9XHJcblxyXG4gIGlzRXhwYW5kQ29sdW1uKGNvbHVtbjogWFRhYmxlQ29sdW1uKSB7XHJcbiAgICBsZXQgZXhwYW5kQ29sdW1uID0gdGhpcy5jb2x1bW5zKCkuZmluZCgoeCkgPT4geC5pZCA9PT0gY29sdW1uLmlkICYmIHgudHlwZSA9PT0gJ2V4cGFuZCcpO1xyXG4gICAgaWYgKGV4cGFuZENvbHVtbikge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHBhZ2VDaGFuZ2UoX3R5cGU6ICdpbmRleCcgfCAnc2l6ZScpIHtcclxuICAgIHRoaXMuZGF0YUlzRnVuYygpICYmIHRoaXMuZ2V0RGF0YUJ5RnVuYygpO1xyXG4gICAgdGhpcy5yZXNldFNjcm9sbCgpO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlKGluZGV4OiBudW1iZXIpIHtcclxuICAgIHRoaXMuaW5kZXguc2V0KGluZGV4KTtcclxuICAgIHRoaXMuZGF0YUlzRnVuYygpICYmIHRoaXMuZ2V0RGF0YUJ5RnVuYygpO1xyXG4gICAgdGhpcy5yZXNldFNjcm9sbCgpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRTY3JvbGwoeCA9IHRydWUsIHkgPSB0cnVlKSB7XHJcbiAgICBpZiAodGhpcy5oYXNTY3JvbGxYKCkgJiYgeCkgdGhpcy52aXJ0dWFsQm9keSgpPy5zY3JvbGxUbyh7IGxlZnQ6IDAgfSk7XHJcbiAgICBpZiAodGhpcy5oYXNTY3JvbGxZKCkgJiYgeSkgdGhpcy52aXJ0dWFsQm9keSgpPy5zY3JvbGxUbyh7IHRvcDogMCB9KTtcclxuICB9XHJcblxyXG4gIHNldENoZWNrZWQoZGF0YTogWFRhYmxlUm93W10pIHtcclxuICAgIGxldCByZXN1bHQ6IFhUYWJsZVJvd1tdID0gW107XHJcbiAgICBpZiAoWElzRW1wdHkoZGF0YSkgfHwgIXRoaXMuY2hlY2tlZFJvdygpKSByZXR1cm47XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5jaGVja2VkUm93KCkpIHtcclxuICAgICAgY29uc3QgYXJyID0gdGhpcy5jaGVja2VkUm93KClba2V5XTtcclxuICAgICAgZm9yIChsZXQgaXRlbSBvZiBkYXRhIGFzIGFueVtdKSB7XHJcbiAgICAgICAgaXRlbVtrZXldID0gYXJyLmluY2x1ZGVzKGl0ZW0uaWQpO1xyXG4gICAgICAgIHJlc3VsdCA9IFsuLi5yZXN1bHQsIGl0ZW1dO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAocmVzdWx0Lmxlbmd0aCA+IDApIGRhdGEgPSBbLi4ucmVzdWx0XTtcclxuICB9XHJcblxyXG4gIHNldEhlYWRDaGVja2JveExpc3QoZGF0YTogWFRhYmxlUm93W10pIHtcclxuICAgIGlmIChYSXNFbXB0eShkYXRhKSB8fCAhdGhpcy5oZWFkQ2hlY2tib3hMaXN0KCkpIHJldHVybjtcclxuICAgIGZvciAobGV0IGNvbHVtbiBvZiB0aGlzLmhlYWRDaGVja2JveExpc3QoKSkge1xyXG4gICAgICB0aGlzLnNldENoZWNrZWRWYWx1ZXMoY29sdW1uKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldEV4cGFuZChkYXRhOiBYVGFibGVSb3dbXSkge1xyXG4gICAgY29uc3QgZ2V0Q2hpbGRyZW4gPSAobm9kZTogWFRhYmxlUm93LCBsZXZlbDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIG5vZGUubGV2ZWwgPSBsZXZlbDtcclxuICAgICAgbm9kZS5leHBhbmRlZCA9IHRoaXMuZXhwYW5kZWRBbGwoKSB8fCBsZXZlbCA8PSB0aGlzLmV4cGFuZGVkTGV2ZWwoKSB8fCB0aGlzLmV4cGFuZGVkKCkuaW5jbHVkZXMobm9kZS5pZCk7XHJcbiAgICAgIGlmIChYSXNVbmRlZmluZWQobm9kZS5jaGlsZHJlbikpIG5vZGUuY2hpbGRyZW4gPSBkYXRhLmZpbHRlcigoeSkgPT4geS5waWQgPT09IG5vZGUuaWQpO1xyXG4gICAgICBpZiAoWElzVW5kZWZpbmVkKG5vZGUubGVhZikpIG5vZGUubGVhZiA9IChub2RlLmNoaWxkcmVuPy5sZW5ndGggYXMgbnVtYmVyKSA+IDA7XHJcbiAgICAgIGlmIChub2RlLmxlYWYpIG5vZGUuY2hpbGRyZW4/Lm1hcCgoeSkgPT4gZ2V0Q2hpbGRyZW4oeSwgbGV2ZWwgKyAxKSk7XHJcbiAgICAgIHJldHVybiBub2RlO1xyXG4gICAgfTtcclxuICAgIHRoaXMudHJlZVRhYmxlRGF0YS5zZXQoXHJcbiAgICAgIGRhdGFcclxuICAgICAgICAuZmlsdGVyKCh4KSA9PiBYSXNFbXB0eSh4LnBpZCkpXHJcbiAgICAgICAgLm1hcCgoeCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIGlmIChYSXNVbmRlZmluZWQoeC5pZCkpIHguaWQgPSBpbmRleCArIDE7XHJcbiAgICAgICAgICByZXR1cm4gZ2V0Q2hpbGRyZW4oeCwgMCk7XHJcbiAgICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzZXRFeHBhbmRlZEFsbCgpIHtcclxuICAgIGlmICghdGhpcy50cmVlVGFibGUoKSB8fCB0aGlzLnRyZWVUYWJsZURhdGEoKT8ubGVuZ3RoID09PSAwKSByZXR1cm47XHJcbiAgICBjb25zdCBzZXRDaGlsZHJlbiA9IChub2RlczogWFRhYmxlUm93W10pID0+IHtcclxuICAgICAgaWYgKFhJc0VtcHR5KG5vZGVzKSkgcmV0dXJuO1xyXG4gICAgICBub2Rlcy5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgICAgeC5leHBhbmRlZCA9IEJvb2xlYW4odGhpcy5leHBhbmRlZEFsbCk7XHJcbiAgICAgICAgc2V0Q2hpbGRyZW4oeC5jaGlsZHJlbiBhcyBYVGFibGVSb3dbXSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfTtcclxuICAgIHRoaXMudHJlZVRhYmxlRGF0YS51cGRhdGUoKHgpID0+IHtcclxuICAgICAgc2V0Q2hpbGRyZW4oeCk7XHJcbiAgICAgIHJldHVybiBbLi4ueF07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNoZWNrU29ydChzb3J0OiBYU29ydFtdKSB7XHJcbiAgICBpZiAoIXRoaXMuZGF0YUlzRnVuYykgcmV0dXJuO1xyXG4gICAgbGV0IHF1ZXJ5ID0gdGhpcy5xdWVyeSgpO1xyXG4gICAgaWYgKHR5cGVvZiBxdWVyeSA9PT0gJ3VuZGVmaW5lZCcpIHF1ZXJ5ID0ge307XHJcbiAgICBxdWVyeS5zb3J0ID0gc29ydDtcclxuICAgIHRoaXMucXVlcnkuc2V0KHF1ZXJ5KTtcclxuICAgIHRoaXMuZ2V0RGF0YUJ5RnVuYygpO1xyXG4gIH1cclxuXHJcbiAgaGVhZENoZWNrZWQoY2hlY2tlZDogYm9vbGVhbiwgY29sdW1uOiBYVGFibGVDb2x1bW4pIHtcclxuICAgIHRoaXMudGFibGVEYXRhLnVwZGF0ZSgoeikgPT4ge1xyXG4gICAgICB6LmZvckVhY2goKHgpID0+IHtcclxuICAgICAgICBpZiAoIXguZGlzYWJsZWQpIHtcclxuICAgICAgICAgIHhbY29sdW1uLmlkXSA9IGNoZWNrZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIFsuLi56XTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB0aGlzLmhlYWRDaGVja2JveENoYW5nZS5lbWl0KHsgcm93czogdGhpcy50YWJsZURhdGEoKSwgY2hlY2tib3g6IHRoaXMuY2hlY2tlZFZhbHVlcygpIH0pO1xyXG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBib2R5Q2hlY2tlZChfY2hlY2tlZDogYm9vbGVhbiwgY29sdW1uOiBYVGFibGVDb2x1bW4sIHJvdzogWFRhYmxlUm93KSB7XHJcbiAgICB0aGlzLnNldENoZWNrZWRWYWx1ZXMoY29sdW1uKTtcclxuICAgIHRoaXMuYm9keUNoZWNrYm94Q2hhbmdlLmVtaXQocm93KTtcclxuICAgIC8vIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2hlY2tlZFZhbHVlcyhjb2x1bW46IFhUYWJsZUNvbHVtbikge1xyXG4gICAgY29uc3Qgbm90RGlzYWJsZWQgPSB0aGlzLnRhYmxlRGF0YSgpLmZpbHRlcigoeCkgPT4gIXguZGlzYWJsZWQpO1xyXG4gICAgY29uc3QgY291bnQgPSBub3REaXNhYmxlZC5sZW5ndGg7XHJcbiAgICBjb25zdCBjaGVja2VkTGVuID0gbm90RGlzYWJsZWQuZmlsdGVyKCh4KSA9PiB4W2NvbHVtbi5pZF0pLmxlbmd0aDtcclxuICAgIHRoaXMuY2hlY2tlZFZhbHVlcy51cGRhdGUoKHgpID0+IHtcclxuICAgICAgeFtjb2x1bW4uaWRdID0gY291bnQgPT09IGNoZWNrZWRMZW4gJiYgY291bnQgIT09IDA7XHJcbiAgICAgIHhbY29sdW1uLmlkICsgdGhpcy5pbmRldGVybWluYXRlKCldID0gY2hlY2tlZExlbiA+IDAgJiYgY2hlY2tlZExlbiA8IGNvdW50O1xyXG4gICAgICByZXR1cm4geyAuLi54IH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRldGVjdENoYW5nZXMoKSB7XHJcbiAgICB0aGlzLmhlYWRDb20oKT8uZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICB4LmNkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5ib2R5Q29tKCk/LmZvckVhY2goKHgpID0+IHtcclxuICAgICAgeC5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuZm9vdENvbSgpPy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcbn1cclxuIiwiPHRhYmxlXHJcbiAgI3RhYmxlXHJcbiAgY2xhc3M9XCJ4LXRhYmxlXCJcclxuICBbbmdDbGFzc109XCJjbGFzc01hcCgpXCJcclxuICBbeC1sb2FkaW5nXT1cImxvYWRpbmcoKSAmJiBnZXR0aW5nKClcIlxyXG4gIFtjbGFzcy54LXRhYmxlLXdyYXAtYm9yZGVyLWhpZGRlbl09XCJoaWRkZW5XcmFwQm9yZGVyKClcIlxyXG4gIFtjbGFzcy54LXRhYmxlLXNjcm9sbC1sZWZ0XT1cImdldFNjcm9sbExlZnQoKVwiXHJcbiAgW2NsYXNzLngtdGFibGUtc2Nyb2xsLWxlZnQtbWF4XT1cInNjcm9sbExlZnRNYXgoKVwiXHJcbiAgW2NsYXNzLngtdGFibGUtc2Nyb2xsLXRvcF09XCJnZXRTY3JvbGxUb3AoKVwiXHJcbiAgW2NsYXNzLngtdGFibGUtaGFzLXNjcm9sbC1yaWdodF09XCJzY3JvbGxZV2lkdGgoKVwiXHJcbiAgW2NsYXNzLngtdGFibGUtaGFzLXNjcm9sbC1ib3R0b21dPVwic2Nyb2xsWFdpZHRoKClcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWJvcmRlcmVkXT1cImJvcmRlcmVkKClcIlxyXG4gIFtjbGFzcy54LXRhYmxlLXRkLWFkYXB0aW9uLWhlaWdodF09XCJyb3dIZWlnaHQoKSA9PSAwXCJcclxuICBbY2xhc3MueC10YWJsZS1jZWxsLWNvbmZpZ109XCIhIWNlbGxDb25maWdTaWduYWwoKVwiXHJcbiAgW2NsYXNzLngtdGFibGUtbGFzdC10ci1ib3JkZXJlZF09XCIhIWFkYXB0aW9uSGVpZ2h0KCkgfHwgdGJvZHlIZWlnaHQoKSA+PSB0Ym9keVNjcm9sbEhlaWdodCgpXCJcclxuPlxyXG4gIEBpZiAoaGVhZGVyKCkpIHtcclxuICAgIDxjYXB0aW9uICNjYXB0aW9uIGNsYXNzPVwieC10YWJsZS1oZWFkZXJcIiBbc3R5bGUuaGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodCgpXCIgW3N0eWxlLm1pbi1oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0KClcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqeE91dGxldD1cImhlYWRlcigpXCI+e3sgaGVhZGVyKCkgfX08L25nLWNvbnRhaW5lcj5cclxuICAgIDwvY2FwdGlvbj5cclxuICB9XHJcbiAgQGlmIChzaG93SGVhZGVyKCkgJiYgKGhlYWRlclBvc2l0aW9uKCkgPT09ICd0b3AnIHx8IGhlYWRlclBvc2l0aW9uKCkgPT09ICd0b3AtYm90dG9tJykpIHtcclxuICAgIDx4LXRhYmxlLWhlYWRcclxuICAgICAgW2NvbHVtbnNdPVwiY29sdW1ucygpXCJcclxuICAgICAgW3Jvd0hlaWdodF09XCJyb3dIZWlnaHQoKVwiXHJcbiAgICAgIFtjb2x1bW5UcGxdPVwiaGVhZENvbHVtblRwbCgpXCJcclxuICAgICAgW3Njcm9sbFlXaWR0aF09XCJzY3JvbGxZV2lkdGgoKVwiXHJcbiAgICAgIFtzY3JvbGxYV2lkdGhdPVwic2Nyb2xsWFdpZHRoKCkhXCJcclxuICAgICAgW2NlbGxDb25maWddPVwiY2VsbENvbmZpZ1NpZ25hbCgpPy50aGVhZFwiXHJcbiAgICAgIFtwb3NpdGlvbl09XCIndG9wJ1wiXHJcbiAgICA+PC94LXRhYmxlLWhlYWQ+XHJcbiAgfVxyXG4gIDx4LXRhYmxlLWJvZHlcclxuICAgIFtkYXRhXT1cInRyZWVUYWJsZSgpID8gdHJlZVRhYmxlRGF0YSgpIDogdGFibGVEYXRhKClcIlxyXG4gICAgW2NvbHVtbnNdPVwiY29sdW1ucygpXCJcclxuICAgIFtpdGVtU2l6ZV09XCJpdGVtU2l6ZSgpXCJcclxuICAgIFtyb3dIZWlnaHRdPVwicm93SGVpZ2h0KClcIlxyXG4gICAgW2JvZHlIZWlnaHRdPVwiYm9keUhlaWdodCgpIVwiXHJcbiAgICBbY29sdW1uVHBsXT1cImJvZHlDb2x1bW5UcGwoKVwiXHJcbiAgICBbYWxsb3dTZWxlY3RSb3ddPVwiYWxsb3dTZWxlY3RSb3coKVwiXHJcbiAgICBbdmlydHVhbFNjcm9sbF09XCJ2aXJ0dWFsU2Nyb2xsKClcIlxyXG4gICAgW21pbkJ1ZmZlclB4XT1cIm1pbkJ1ZmZlclB4KClcIlxyXG4gICAgW21heEJ1ZmZlclB4XT1cIm1heEJ1ZmZlclB4KClcIlxyXG4gICAgW2FkYXB0aW9uSGVpZ2h0XT1cImFkYXB0aW9uSGVpZ2h0KCkhXCJcclxuICAgIFtkb2NQZXJjZW50XT1cImRvY1BlcmNlbnQoKVwiXHJcbiAgICBbc2Nyb2xsXT1cInNjcm9sbCgpXCJcclxuICAgIFtyb3dDbGFzc109XCJyb3dDbGFzcygpXCJcclxuICAgIFtjZWxsQ29uZmlnXT1cImNlbGxDb25maWdTaWduYWwoKT8udGJvZHlcIlxyXG4gICAgW2V4cGFuZGVkQWxsXT1cImV4cGFuZGVkQWxsKClcIlxyXG4gICAgW2V4cGFuZFRwbF09XCJleHBhbmRUcGwoKVwiXHJcbiAgICBbKGFjdGl2YXRlZFJvdyldPVwiYWN0aXZhdGVkUm93XCJcclxuICAgIChyb3dDbGljayk9XCJyb3dDbGljay5lbWl0KCRldmVudClcIlxyXG4gID48L3gtdGFibGUtYm9keT5cclxuICBAaWYgKHNob3dIZWFkZXIoKSAmJiAoaGVhZGVyUG9zaXRpb24oKSA9PT0gJ2JvdHRvbScgfHwgaGVhZGVyUG9zaXRpb24oKSA9PT0gJ3RvcC1ib3R0b20nKSkge1xyXG4gICAgPHgtdGFibGUtaGVhZFxyXG4gICAgICBbY29sdW1uc109XCJjb2x1bW5zKClcIlxyXG4gICAgICBbcm93SGVpZ2h0XT1cInJvd0hlaWdodCgpXCJcclxuICAgICAgW2NvbHVtblRwbF09XCJoZWFkQ29sdW1uVHBsKClcIlxyXG4gICAgICBbc2Nyb2xsWVdpZHRoXT1cInNjcm9sbFlXaWR0aCgpXCJcclxuICAgICAgW3Njcm9sbFhXaWR0aF09XCJzY3JvbGxYV2lkdGgoKSFcIlxyXG4gICAgICBbY2VsbENvbmZpZ109XCJjZWxsQ29uZmlnU2lnbmFsKCk/LnRoZWFkXCJcclxuICAgICAgW3Bvc2l0aW9uXT1cIidib3R0b20nXCJcclxuICAgID48L3gtdGFibGUtaGVhZD5cclxuICB9XHJcbiAgQGlmIChmb290ZXIoKSkge1xyXG4gICAgPHgtdGFibGUtZm9vdCBbZm9vdGVyXT1cImZvb3RlcigpXCIgW3Jvd0hlaWdodF09XCJyb3dIZWlnaHQoKVwiPjwveC10YWJsZS1mb290PlxyXG4gIH1cclxuICBAaWYgKGhhc1N0aWNreVRvcFJpZ2h0KCkpIHtcclxuICAgIDxkaXZcclxuICAgICAgI3N0aWNreVRvcFJpZ2h0RWxlXHJcbiAgICAgIGNsYXNzPVwieC10YWJsZS1zdGlja3ktcmlnaHQtc2Nyb2xsXCJcclxuICAgICAgW2NsYXNzLngtdGFibGUtYm9yZGVyLWJvdHRvbV09XCJoZWFkU2VhcmNoVHBsKClcIlxyXG4gICAgICBbc3R5bGUudG9wLnB4XT1cImdldFN0aWNreVRvcFNjcm9sbFRvcCgpXCJcclxuICAgICAgW3N0eWxlLndpZHRoLnB4XT1cInNjcm9sbFlXaWR0aCgpXCJcclxuICAgICAgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHQoKVwiXHJcbiAgICAgIFtzdHlsZS5taW4taGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodCgpXCJcclxuICAgID48L2Rpdj5cclxuICB9XHJcbiAgQGlmIChoYXNTdGlja3lUb3BSaWdodCgpICYmIGhlYWRTZWFyY2hUcGwoKSkge1xyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cIngtdGFibGUtc3RpY2t5LXJpZ2h0LXNjcm9sbFwiXHJcbiAgICAgIFtzdHlsZS50b3AucHhdPVwiZ2V0U3RpY2t5VG9wU2Nyb2xsVG9wKCkgKyBnZXRTdGlja3lUb3BSaWdodEVsZUhlaWdodCgpXCJcclxuICAgICAgW3N0eWxlLndpZHRoLnB4XT1cInNjcm9sbFlXaWR0aCgpXCJcclxuICAgICAgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHQoKVwiXHJcbiAgICAgIFtzdHlsZS5taW4taGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodCgpXCJcclxuICAgID48L2Rpdj5cclxuICB9XHJcbiAgQGlmIChoYXNTdGlja3lCb3R0b21SaWdodCgpKSB7XHJcbiAgICA8ZGl2XHJcbiAgICAgICNzdGlja3lCb3R0b21SaWdodEVsZVxyXG4gICAgICBjbGFzcz1cIngtdGFibGUtc3RpY2t5LXJpZ2h0LXNjcm9sbFwiXHJcbiAgICAgIFtzdHlsZS5ib3R0b20ucHhdPVwiZ2V0U3RpY2t5Qm90dG9tU2Nyb2xsVG9wKClcIlxyXG4gICAgICBbc3R5bGUud2lkdGgucHhdPVwic2Nyb2xsWVdpZHRoKClcIlxyXG4gICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodCgpXCJcclxuICAgICAgW3N0eWxlLm1pbi1oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0KClcIlxyXG4gICAgPjwvZGl2PlxyXG4gIH1cclxuICBAaWYgKGhhc1N0aWNreUJvdHRvbVJpZ2h0KCkgJiYgaGVhZFNlYXJjaFRwbCgpKSB7XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwieC10YWJsZS1zdGlja3ktcmlnaHQtc2Nyb2xsXCJcclxuICAgICAgW2NsYXNzLngtdGFibGUtYm9yZGVyLWJvdHRvbV09XCJoZWFkU2VhcmNoVHBsKClcIlxyXG4gICAgICBbc3R5bGUuYm90dG9tLnB4XT1cImdldFN0aWNreUJvdHRvbVNjcm9sbFRvcCgpICsgZ2V0U3RpY2t5Qm90dG9tUmlnaHRFbGVIZWlnaHQoKVwiXHJcbiAgICAgIFtzdHlsZS53aWR0aC5weF09XCJzY3JvbGxZV2lkdGgoKVwiXHJcbiAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0KClcIlxyXG4gICAgICBbc3R5bGUubWluLWhlaWdodC5weF09XCJnZXRSb3dIZWlnaHQoKVwiXHJcbiAgICA+PC9kaXY+XHJcbiAgfVxyXG48L3RhYmxlPlxyXG5AaWYgKHNob3dQYWdpbmF0aW9uKCkgJiYgc2l6ZSgpKSB7XHJcbiAgPHgtcGFnaW5hdGlvblxyXG4gICAgI3BhZ2luYXRpb25cclxuICAgIFsoaW5kZXgpXT1cImluZGV4XCJcclxuICAgIFsoc2l6ZSldPVwic2l6ZVwiXHJcbiAgICBbKHF1ZXJ5KV09XCJxdWVyeVwiXHJcbiAgICBbdG90YWxdPVwidG90YWwoKVwiXHJcbiAgICAoaW5kZXhDaGFuZ2UpPVwicGFnZUNoYW5nZSgnaW5kZXgnKVwiXHJcbiAgICAoc2l6ZUNoYW5nZSk9XCJwYWdlQ2hhbmdlKCdzaXplJylcIlxyXG4gICAgW3Nob3dFbGxpcHNpc109XCJzaG93RWxsaXBzaXMoKVwiXHJcbiAgICBbc2hvd1RvdGFsXT1cInNob3dUb3RhbCgpXCJcclxuICAgIFtzcGFjZV09XCJzcGFjZSgpXCJcclxuICAgIFtzaG93QmFja2dyb3VuZF09XCJzaG93QmFja2dyb3VuZCgpXCJcclxuICAgIFtzaG93U2l6ZV09XCJzaG93U2l6ZSgpXCJcclxuICAgIFtzaG93SnVtcF09XCJzaG93SnVtcCgpXCJcclxuICAgIFtqdW1wV2lkdGhdPVwianVtcFdpZHRoKClcIlxyXG4gICAgW3Nob3dJbnB1dFNpemVdPVwic2hvd0lucHV0U2l6ZSgpXCJcclxuICAgIFtpbnB1dFNpemVXaWR0aF09XCJpbnB1dFNpemVXaWR0aCgpXCJcclxuICAgIFtzaXplRGF0YV09XCJzaXplRGF0YSgpXCJcclxuICAgIFtzaXplV2lkdGhdPVwic2l6ZVdpZHRoKClcIlxyXG4gICAgW3BhZ2VMaW5rU2l6ZV09XCJwYWdlTGlua1NpemUoKVwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXHJcbiAgICBbdG90YWxUcGxdPVwidG90YWxUcGwoKVwiXHJcbiAgICBbc2ltcGxlXT1cInNpbXBsZSgpXCJcclxuICAgIFtzaW1wbGVJbmRleFdpZHRoXT1cInNpbXBsZUluZGV4V2lkdGgoKVwiXHJcbiAgICBbanVtcFRvb2x0aXBUZXh0XT1cImp1bXBUb29sdGlwVGV4dCgpXCJcclxuICAgIFtpbnB1dFNpemVUb29sdGlwVGV4dF09XCJpbnB1dFNpemVUb29sdGlwVGV4dCgpXCJcclxuICAgIFtpbnB1dEluZGV4U2l6ZVN1cmVUeXBlXT1cImlucHV0SW5kZXhTaXplU3VyZVR5cGUoKVwiXHJcbiAgPlxyXG4gIDwveC1wYWdpbmF0aW9uPlxyXG59XHJcbiJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { XTableComponent } from './table.component';
|
|
3
|
-
import { XTableHeadComponent } from './table-head.component';
|
|
4
|
-
import { XTableBodyComponent } from './table-body.component';
|
|
5
|
-
import { XTableFootComponent } from './table-foot.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class XTableModule {
|
|
8
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XTableModule, imports: [XTableComponent, XTableHeadComponent, XTableBodyComponent, XTableFootComponent], exports: [XTableComponent] }); }
|
|
10
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTableModule, imports: [XTableComponent, XTableHeadComponent, XTableBodyComponent] }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XTableModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
exports: [XTableComponent],
|
|
16
|
-
imports: [XTableComponent, XTableHeadComponent, XTableBodyComponent, XTableFootComponent]
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQU03RCxNQUFNLE9BQU8sWUFBWTtpSUFBWixZQUFZO2tJQUFaLFlBQVksWUFGYixlQUFlLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLGFBRDlFLGVBQWU7a0lBR2QsWUFBWSxZQUZiLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUI7OzJGQUV4RCxZQUFZO2tCQUp4QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDMUIsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDO2lCQUMxRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWFRhYmxlSGVhZENvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtaGVhZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBYVGFibGVCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS1ib2R5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFhUYWJsZUZvb3RDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLWZvb3QuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZXhwb3J0czogW1hUYWJsZUNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1hUYWJsZUNvbXBvbmVudCwgWFRhYmxlSGVhZENvbXBvbmVudCwgWFRhYmxlQm9keUNvbXBvbmVudCwgWFRhYmxlRm9vdENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWJsZU1vZHVsZSB7fVxyXG4iXX0=
|