@acorex/components 19.11.0-next.0 → 19.11.0-next.2
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 +22 -20
- package/action-sheet/lib/action-sheet.component.d.ts +1 -1
- package/action-sheet/lib/action-sheet.module.d.ts +11 -11
- package/alert/lib/alert.component.d.ts +1 -1
- package/alert/lib/alert.module.d.ts +4 -4
- package/audio-wave/lib/audio-wave.component.d.ts +1 -1
- package/audio-wave/lib/audio-wave.module.d.ts +7 -7
- package/avatar/lib/avatar-group.component.d.ts +1 -1
- package/avatar/lib/avatar.component.d.ts +1 -1
- package/avatar/lib/avatar.module.d.ts +4 -4
- package/badge/lib/badge.component.d.ts +1 -1
- package/badge/lib/badge.module.d.ts +3 -3
- package/bottom-navigation/lib/bottom-navigation-item/bottom-navigation-item.component.d.ts +1 -1
- package/bottom-navigation/lib/bottom-navigation.component.d.ts +1 -1
- package/bottom-navigation/lib/bottom-navigation.module.d.ts +4 -4
- package/breadcrumbs/lib/breadcrumbs-item.component.d.ts +1 -1
- package/breadcrumbs/lib/breadcrumbs.component.d.ts +1 -1
- package/breadcrumbs/lib/breadcrumbs.module.d.ts +5 -5
- package/button/lib/button-item-list.component.d.ts +1 -1
- package/button/lib/button-item.component.d.ts +1 -1
- package/button/lib/button.component.d.ts +1 -1
- package/button/lib/button.module.d.ts +8 -8
- package/button-group/lib/button-group-item.component.d.ts +1 -1
- package/button-group/lib/button-group.component.d.ts +1 -1
- package/button-group/lib/button-group.module.d.ts +6 -6
- package/calendar/lib/calendar-range.component.d.ts +1 -1
- package/calendar/lib/calendar.component.d.ts +1 -1
- package/calendar/lib/calendar.module.d.ts +8 -8
- package/check-box/lib/check-box.component.d.ts +1 -1
- package/check-box/lib/check-box.module.d.ts +5 -5
- package/chips/lib/chips.component.d.ts +1 -1
- package/chips/lib/chips.module.d.ts +3 -3
- package/circular-progress/lib/circular-progress.component.d.ts +1 -1
- package/circular-progress/lib/circular-progress.module.d.ts +1 -1
- package/collapse/lib/collapse-group.component.d.ts +1 -1
- package/collapse/lib/collapse.component.d.ts +1 -1
- package/collapse/lib/collapse.module.d.ts +5 -5
- package/color-box/lib/color-box.component.d.ts +1 -1
- package/color-box/lib/color-box.module.d.ts +6 -6
- package/color-palette/lib/color-palette-input.component.d.ts +1 -1
- package/color-palette/lib/color-palette-picker.component.d.ts +1 -1
- package/color-palette/lib/color-palette-preview.component.d.ts +3 -3
- package/color-palette/lib/color-palette-swatches.component.d.ts +1 -1
- package/color-palette/lib/color-palette.component.d.ts +3 -3
- package/color-palette/lib/color-palette.module.d.ts +17 -17
- package/comment/lib/comment-container/comment-container.component.d.ts +1 -1
- package/comment/lib/comment-item/comment-item.component.d.ts +1 -1
- package/comment/lib/comment-tools/comment-date/comment-date.component.d.ts +1 -1
- package/comment/lib/comment-tools/comment-like/comment-like.component.d.ts +1 -1
- package/comment/lib/comment-tools/comment-menu-options/comment-menu-options.component.d.ts +1 -1
- package/comment/lib/comment-tools/comment-reply-more/comment-reply-more.component.d.ts +1 -1
- package/comment/lib/comment-tools/comment-reply-text/comment-reply-text.component.d.ts +1 -1
- package/comment/lib/comment-view/comment-view.component.d.ts +1 -1
- package/comment/lib/comment.module.d.ts +16 -16
- package/common/lib/common.module.d.ts +1 -1
- package/common/lib/directives/auto-focus.directive.d.ts +1 -1
- package/common/lib/directives/hotkey.directive.d.ts +1 -1
- package/common/lib/directives/infinite-scroll.directive.d.ts +1 -1
- package/common/lib/directives/responsive.directive.d.ts +1 -1
- package/conversation/lib/conversation-container/conversation-container.component.d.ts +2 -3
- package/conversation/lib/conversation-input/conversation-input.component.d.ts +1 -1
- package/conversation/lib/conversation-message/conversation-message.component.d.ts +2 -1
- package/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.d.ts +1 -1
- package/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.d.ts +1 -1
- package/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.d.ts +1 -1
- package/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.d.ts +1 -1
- package/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.d.ts +1 -1
- package/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.d.ts +1 -1
- package/conversation/lib/conversation-view/conversation-view.component.d.ts +1 -1
- package/conversation/lib/conversation.module.d.ts +29 -29
- package/cron-job/lib/cron-job-container/cron-job-container.component.d.ts +1 -1
- package/cron-job/lib/cron-job.module.d.ts +20 -20
- package/cron-job/lib/day/day.component.d.ts +1 -1
- package/cron-job/lib/hours/hours.component.d.ts +1 -1
- package/cron-job/lib/minutes/minutes.component.d.ts +1 -1
- package/cron-job/lib/month/month.component.d.ts +1 -1
- package/cron-job/lib/seconds/seconds.component.d.ts +1 -1
- package/cron-job/lib/year/year.component.d.ts +1 -1
- package/data-pager/lib/data-pager-info.component.d.ts +1 -1
- package/data-pager/lib/data-pager-input-selector.component.d.ts +1 -1
- package/data-pager/lib/data-pager-next-buttons.component.d.ts +1 -1
- package/data-pager/lib/data-pager-numeric-selector.component.d.ts +1 -1
- package/data-pager/lib/data-pager-pagesize-dropdown.component.d.ts +1 -1
- package/data-pager/lib/data-pager-prev-buttons.component.d.ts +1 -1
- package/data-pager/lib/data-pager.component.d.ts +1 -1
- package/data-pager/lib/data-pager.module.d.ts +17 -17
- package/data-table/lib/columns/data-table-column-resizable.directive.d.ts +1 -1
- package/data-table/lib/columns/data-text-column.component.d.ts +1 -1
- package/data-table/lib/columns/row-command-column.component.d.ts +2 -2
- package/data-table/lib/columns/row-expand-column.component.d.ts +1 -1
- package/data-table/lib/columns/row-index-column.component.d.ts +10 -10
- package/data-table/lib/columns/row-select-column.component.d.ts +1 -1
- package/data-table/lib/data-table/data-table.component.d.ts +19 -4
- package/data-table/lib/data-table.module.d.ts +22 -22
- package/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.d.ts +1 -1
- package/datetime-box/lib/datetime-box.component.d.ts +3 -1
- package/datetime-box/lib/datetime-box.module.d.ts +8 -8
- package/datetime-input/lib/datetime-input.component.d.ts +1 -1
- package/datetime-input/lib/datetime-input.module.d.ts +5 -5
- package/datetime-picker/lib/datetime-picker.component.d.ts +3 -1
- package/datetime-picker/lib/datetime-picker.module.d.ts +11 -11
- package/decorators/lib/components/clear-button/clear-button.component.d.ts +1 -1
- package/decorators/lib/components/close-button/close-button.component.d.ts +1 -1
- package/decorators/lib/components/color-indicator/color-indicator.component.d.ts +1 -1
- package/decorators/lib/components/full-screen/full-screen-button.component.d.ts +1 -1
- package/decorators/lib/components/generic-content.component.d.ts +1 -1
- package/decorators/lib/components/heading/heading.component.d.ts +1 -3
- package/decorators/lib/components/icon/icon.component.d.ts +1 -1
- package/decorators/lib/decorators.module.d.ts +9 -9
- package/dialog/lib/dialog.class.d.ts +1 -0
- package/dialog/lib/dialog.component.d.ts +1 -1
- package/dialog/lib/dialog.module.d.ts +11 -11
- package/drawer/lib/drawer/drawer-container/drawer-container.component.d.ts +1 -1
- package/drawer/lib/drawer/drawer-item/drawer.component.d.ts +1 -1
- package/drawer/lib/drawer.module.d.ts +4 -4
- package/dropdown/lib/dropdown-box.component.d.ts +1 -1
- package/dropdown/lib/dropdown-panel.component.d.ts +1 -1
- package/dropdown/lib/dropdown.module.d.ts +9 -9
- package/dropdown-button/lib/dropdown-button.component.d.ts +2 -1
- package/dropdown-button/lib/dropdown-button.module.d.ts +8 -8
- package/fesm2022/acorex-components-action-sheet.mjs +19 -52
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +10 -12
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +11 -14
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +13 -15
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +9 -10
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +13 -14
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +14 -16
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +15 -17
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +27 -50
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +26 -42
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +11 -12
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +9 -10
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +9 -10
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +14 -18
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-color-box.mjs +23 -40
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +49 -55
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +46 -62
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +106 -126
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation.mjs +108 -103
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-cron-job.mjs +311 -247
- package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +78 -66
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +175 -221
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +19 -42
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +17 -33
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +42 -31
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +42 -60
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +33 -29
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +16 -17
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +21 -20
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +17 -20
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs +190 -143
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +55 -49
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +94 -163
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-image-editor.mjs +43 -51
- package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +10 -15
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +11 -17
- package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-kbd.mjs +17 -15
- package/fesm2022/acorex-components-kbd.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +9 -10
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +28 -33
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading-dialog.mjs +45 -44
- package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +21 -30
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-map.mjs +13741 -45
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +87 -78
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +27 -40
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-navbar.mjs +9 -10
- package/fesm2022/acorex-components-navbar.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +18 -25
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +11 -13
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +13 -15
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-paint.mjs +33 -67
- package/fesm2022/acorex-components-paint.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +21 -51
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +9 -10
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +19 -66
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +20 -22
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +13 -28
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +27 -50
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +9 -10
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +9 -10
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +30 -27
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +11 -12
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-rail-navigation.mjs +18 -21
- package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +11 -13
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rate-picker.mjs +9 -10
- package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +361 -0
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -0
- package/fesm2022/acorex-components-result.mjs +15 -16
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-routing-progress.mjs +15 -16
- package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +29 -26
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-scss.mjs +4 -4
- package/fesm2022/acorex-components-search-box.mjs +22 -60
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +56 -49
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +13 -32
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +24 -54
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +9 -10
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-slider.mjs +11 -12
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-sliding-item.mjs +18 -21
- package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +19 -23
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +12 -14
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +18 -21
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +9 -10
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +12 -24
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +17 -47
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-time-line.mjs +14 -16
- package/fesm2022/acorex-components-time-line.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +26 -30
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-toolbar.mjs +9 -11
- package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +31 -32
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +62 -46
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +52 -55
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +9 -10
- package/fesm2022/acorex-components-video-player.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +65 -71
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/file-explorer/index.d.ts +2 -0
- package/file-explorer/lib/file-explorer-container/file-explorer-container.component.d.ts +1 -6
- package/file-explorer/lib/file-explorer-header/file-explorer-header.component.d.ts +9 -0
- package/file-explorer/lib/file-explorer-internal.service.d.ts +18 -0
- package/file-explorer/lib/file-explorer-item/file-explorer-item.component.d.ts +1 -1
- package/file-explorer/lib/file-explorer-tree/file-explorer-tree.component.d.ts +13 -0
- package/file-explorer/lib/file-explorer-view/file-explorer-view.component.d.ts +3 -16
- package/file-explorer/lib/file-explorer.module.d.ts +14 -11
- package/file-explorer/lib/file-explorer.service.d.ts +6 -1
- package/form/lib/form-field.component.d.ts +1 -1
- package/form/lib/form.component.d.ts +1 -1
- package/form/lib/form.module.d.ts +11 -11
- package/form/lib/validation-rule.directive.d.ts +1 -1
- package/form/lib/validation-summary.component.d.ts +1 -1
- package/grid-layout-builder/lib/grid-layout-builder.module.d.ts +5 -5
- package/grid-layout-builder/lib/grid-layout-container.component.d.ts +13 -57
- package/grid-layout-builder/lib/grid-layout-widget.component.d.ts +20 -48
- package/grid-layout-builder/lib/grid-layout-widget.directive.d.ts +1 -1
- package/image/lib/image.component.d.ts +1 -1
- package/image/lib/image.module.d.ts +3 -3
- package/image-editor/lib/image-editor-container/image-editor-container.component.d.ts +1 -1
- package/image-editor/lib/image-editor-tools/image-editor-color-picker/image-editor-color-picker.component.d.ts +1 -1
- package/image-editor/lib/image-editor-tools/image-editor-crop/image-editor-crop.component.d.ts +1 -1
- package/image-editor/lib/image-editor-tools/image-editor-pen-mode-changer/image-editor-pen-mode-changer.component.d.ts +1 -1
- package/image-editor/lib/image-editor-view/image-editor-view.component.d.ts +1 -1
- package/image-editor/lib/image-editor.module.d.ts +16 -16
- package/json-viewer/lib/json-viewer/json-viewer.component.d.ts +1 -1
- package/json-viewer/lib/json-viewer.module.d.ts +5 -5
- package/kbd/lib/kbd-item/kbd-item.component.d.ts +2 -1
- package/kbd/lib/kbd.component.d.ts +1 -1
- package/kbd/lib/kbd.module.d.ts +4 -4
- package/label/lib/label.component.d.ts +1 -1
- package/label/lib/label.module.d.ts +3 -3
- package/list/lib/list.component.d.ts +2 -2
- package/list/lib/list.module.d.ts +5 -5
- package/loading/lib/loading-spinner.component.d.ts +1 -1
- package/loading/lib/loading.component.d.ts +1 -1
- package/loading/lib/loading.directive.d.ts +1 -1
- package/loading/lib/loading.module.d.ts +8 -8
- package/loading-dialog/lib/loading-dialog.component.d.ts +18 -18
- package/loading-dialog/lib/loading-dialog.module.d.ts +9 -9
- package/map/index.d.ts +2 -0
- package/map/lib/map.component.d.ts +23 -4
- package/map/lib/map.module.d.ts +3 -3
- package/map/lib/map.service.d.ts +27 -1
- package/map/lib/map.utility.d.ts +2 -0
- package/map/lib/map.world-map.d.ts +28 -0
- package/media-viewer/lib/media-viewer-container/media-viewer-container.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer-slider/media-viewer-slider.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer-tools/audio-player/audio-player.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer-tools/file-info/file-info.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer-tools/image-viewer/image-viewer.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer-tools/pdf-reader/pdf-reader.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer-tools/video-player/video-player.component.d.ts +1 -1
- package/media-viewer/lib/media-viewer.module.d.ts +18 -18
- package/menu/lib/context-menu.component.d.ts +1 -1
- package/menu/lib/menu-item.component.d.ts +1 -1
- package/menu/lib/menu.component.d.ts +1 -1
- package/menu/lib/menu.module.d.ts +10 -10
- package/navbar/lib/navbar.component.d.ts +1 -1
- package/navbar/lib/navbar.module.d.ts +3 -3
- package/notification/lib/notification.component.d.ts +1 -1
- package/notification/lib/notification.module.d.ts +9 -9
- package/number-box/lib/number-box.component.d.ts +1 -1
- package/number-box/lib/number-box.module.d.ts +7 -7
- package/otp/lib/otp.component.d.ts +1 -1
- package/otp/lib/otp.module.d.ts +4 -4
- package/package.json +5 -1
- package/paint/lib/paint/paint-container/paint-container.component.d.ts +1 -1
- package/paint/lib/paint/paint-tools/paint-color-picker/paint-color-picker.component.d.ts +1 -1
- package/paint/lib/paint/paint-tools/paint-pen-mode-changer/paint-pen-mode-changer.component.d.ts +1 -1
- package/paint/lib/paint/paint-view/paint-view.component.d.ts +1 -1
- package/paint/lib/paint.module.d.ts +13 -13
- package/password-box/lib/password-box.component.d.ts +1 -1
- package/password-box/lib/password-box.module.d.ts +10 -10
- package/password-box/lib/password-strength-validation/password-strength-validation.component.d.ts +1 -1
- package/pdf-reader/lib/pdf-reader/pdf-reader.component.d.ts +1 -1
- package/pdf-reader/lib/pdf-reader.module.d.ts +1 -1
- package/phone-box/lib/phone-box.component.d.ts +2 -2
- package/phone-box/lib/phone-box.module.d.ts +10 -10
- package/picker/lib/picker-container/picker-container.component.d.ts +1 -1
- package/picker/lib/picker-items/picker-items.component.d.ts +1 -1
- package/picker/lib/picker-title/picker-title.component.d.ts +1 -1
- package/picker/lib/picker.module.d.ts +6 -6
- package/popover/lib/popover.component.d.ts +1 -1
- package/popover/lib/popover.module.d.ts +3 -3
- package/popup/lib/popup.component.d.ts +9 -9
- package/popup/lib/popup.module.d.ts +10 -10
- package/progress-bar/lib/progress-bar.component.d.ts +1 -1
- package/progress-bar/lib/progress-bar.module.d.ts +3 -3
- package/qrcode/lib/qrcode.component.d.ts +1 -1
- package/qrcode/lib/qrcode.module.d.ts +3 -3
- package/query-builder/lib/query-builder.component.d.ts +1 -1
- package/query-builder/lib/query-builder.module.d.ts +10 -10
- package/radio/lib/radio.component.d.ts +1 -1
- package/radio/lib/radio.module.d.ts +4 -4
- package/rail-navigation/lib/rail-navigation-item/rail-navigation-item.component.d.ts +1 -1
- package/rail-navigation/lib/rail-navigation.component.d.ts +1 -1
- package/rail-navigation/lib/rail-navigation.module.d.ts +5 -5
- package/range-slider/lib/range-slider.component.d.ts +1 -1
- package/range-slider/lib/range-slider.module.d.ts +3 -3
- package/rate-picker/lib/rate-picker.component.d.ts +1 -1
- package/rate-picker/lib/rate-picker.module.d.ts +3 -3
- package/rest-api-generator/README.md +3 -0
- package/rest-api-generator/index.d.ts +8 -0
- package/rest-api-generator/lib/query-params/query-params.component.d.ts +16 -0
- package/rest-api-generator/lib/request-body/request-body.component.d.ts +22 -0
- package/rest-api-generator/lib/request-headers/request-headers.component.d.ts +22 -0
- package/rest-api-generator/lib/rest-api-auth/rest-api-auth.component.d.ts +22 -0
- package/rest-api-generator/lib/rest-api-generator.component.d.ts +14 -0
- package/rest-api-generator/lib/rest-api-generator.module.d.ts +19 -0
- package/rest-api-generator/lib/rest-api-generator.service.d.ts +7 -0
- package/rest-api-generator/lib/types.d.ts +20 -0
- package/result/lib/result.component.d.ts +7 -7
- package/result/lib/result.module.d.ts +3 -3
- package/routing-progress/lib/routing-progress.component.d.ts +7 -7
- package/routing-progress/lib/routing-progress.module.d.ts +3 -3
- package/scheduler/lib/scheduler-month-view.component.d.ts +1 -1
- package/scheduler/lib/scheduler-week-view.component.d.ts +1 -1
- package/scheduler/lib/scheduler.component.d.ts +1 -1
- package/scheduler/lib/scheduler.module.d.ts +9 -9
- package/search-box/lib/search-box.component.d.ts +2 -1
- package/search-box/lib/search-box.module.d.ts +9 -9
- package/select-box/lib/select-box.component.d.ts +12 -4
- package/select-box/lib/select-box.module.d.ts +15 -15
- package/selection-list/lib/selection-list.component.d.ts +1 -1
- package/selection-list/lib/selection-list.module.d.ts +8 -8
- package/side-menu/lib/side-menu-item/side-menu-item.component.d.ts +1 -1
- package/side-menu/lib/side-menu.component.d.ts +1 -1
- package/side-menu/lib/side-menu.directive.d.ts +1 -1
- package/side-menu/lib/side-menu.module.d.ts +10 -10
- package/skeleton/lib/skeleton.component.d.ts +1 -1
- package/skeleton/lib/skeleton.module.d.ts +3 -3
- package/slider/lib/slider.component.d.ts +1 -1
- package/slider/lib/slider.module.d.ts +5 -5
- package/sliding-item/lib/sliding-item/sliding-item.component.d.ts +1 -1
- package/sliding-item/lib/sliding-item-prefix/sliding-item-prefix.component.d.ts +1 -1
- package/sliding-item/lib/sliding-item-suffix/sliding-item-suffix.component.d.ts +1 -1
- package/sliding-item/lib/sliding-item.module.d.ts +6 -6
- package/step-wizard/lib/step-wizard-item/step-wizard-item.component.d.ts +1 -1
- package/step-wizard/lib/step-wizard.component.d.ts +1 -1
- package/step-wizard/lib/step-wizard.directive.d.ts +1 -1
- package/step-wizard/lib/step-wizard.module.d.ts +8 -8
- package/switch/lib/switch-content.component.d.ts +1 -1
- package/switch/lib/switch.component.d.ts +1 -1
- package/switch/lib/switch.module.d.ts +5 -5
- package/tabs/lib/tab-content.directive.d.ts +1 -1
- package/tabs/lib/tab-item.component.d.ts +1 -1
- package/tabs/lib/tabs.component.d.ts +1 -1
- package/tabs/lib/tabs.module.d.ts +7 -7
- package/tag/lib/tag.component.d.ts +1 -1
- package/tag/lib/tag.module.d.ts +3 -3
- package/text-area/lib/text-area.component.d.ts +1 -1
- package/text-area/lib/text-area.module.d.ts +4 -4
- package/text-box/lib/mask-options.directive.d.ts +1 -1
- package/text-box/lib/text-box.component.d.ts +1 -1
- package/text-box/lib/text-box.module.d.ts +8 -8
- package/time-line/lib/time-line-item.component.d.ts +1 -1
- package/time-line/lib/time-line.component.d.ts +1 -1
- package/time-line/lib/time-line.module.d.ts +4 -4
- package/toast/lib/toast.component.d.ts +1 -1
- package/toast/lib/toast.module.d.ts +8 -8
- package/toast/lib/toast.service.d.ts +1 -0
- package/toolbar/lib/toolbar.component.d.ts +1 -1
- package/toolbar/lib/toolbar.module.d.ts +3 -3
- package/tooltip/lib/tooltip.component.d.ts +1 -1
- package/tooltip/lib/tooltip.directive.d.ts +3 -2
- package/tooltip/lib/tooltip.module.d.ts +5 -5
- package/tree-view/lib/tree-view-item.component.d.ts +3 -2
- package/tree-view/lib/tree-view.class.d.ts +2 -0
- package/tree-view/lib/tree-view.component.d.ts +9 -8
- package/tree-view/lib/tree-view.component.module.d.ts +11 -11
- package/uploader/lib/uploader-browse-handle.directive.d.ts +1 -1
- package/uploader/lib/uploader-dialog-container/uploader-dialog-container.component.d.ts +1 -1
- package/uploader/lib/uploader-drop-zone/uploader-drop-zone.component.d.ts +1 -1
- package/uploader/lib/uploader-list/uploader-list.component.d.ts +1 -1
- package/uploader/lib/uploader-zone.directive.d.ts +1 -1
- package/uploader/lib/uploader.models.d.ts +4 -2
- package/uploader/lib/uploader.module.d.ts +16 -16
- package/video-player/lib/video-player/video-player.component.d.ts +1 -1
- package/video-player/lib/video-player.module.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-alignment/wysiwyg-alignment.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-colors/wysiwyg-colors.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-font-style/wysiwyg-font-style.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-history/wysiwyg-history.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-insert/wysiwyg-insert.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-list/wysiwyg-list.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.d.ts +1 -1
- package/wysiwyg/lib/wysiwyg.module.d.ts +16 -16
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-tree-view.mjs","sources":["../../../../libs/components/tree-view/src/lib/tree-view-item.component.ts","../../../../libs/components/tree-view/src/lib/tree-view-item.component.html","../../../../libs/components/tree-view/src/lib/tree-view.class.ts","../../../../libs/components/tree-view/src/lib/tree-view.component.ts","../../../../libs/components/tree-view/src/lib/tree-view.component.html","../../../../libs/components/tree-view/src/lib/tree-view.component.module.ts","../../../../libs/components/tree-view/src/acorex-components-tree-view.ts"],"sourcesContent":["import { NXComponent } from '@acorex/components/common';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n model,\n output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXTreeItemClickBaseEvent, AXTreeViewSchema } from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view-item',\n templateUrl: 'tree-view-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('collapseExpand', [\n state(\n 'collapsed',\n style({\n height: '0',\n overflow: 'hidden',\n opacity: 0,\n }),\n ),\n state(\n 'expanded',\n style({\n height: '*',\n overflow: 'hidden',\n opacity: 1,\n }),\n ),\n transition('collapsed <=> expanded', [animate('300ms ease-in-out')]),\n ]),\n ],\n standalone: false,\n})\nexport class AXTreeViewItemComponent extends NXComponent {\n constructor() {\n super();\n }\n\n item = input<AXTreeViewSchema>();\n\n onNodeExpand = output<AXTreeItemClickBaseEvent>();\n\n onNodeClick = output<AXTreeItemClickBaseEvent>();\n\n isExpanded = model<boolean>(false);\n\n hasChildField = input<string>();\n\n isActive = model<boolean>(false);\n\n onNodeDbClick = output<AXTreeItemClickBaseEvent>();\n\n isLoading = input<boolean>(false);\n\n disableField = input<string>();\n\n expandIconField = input<{ expand: string; unExpand: string } | null>(null);\n\n protected platformService = inject(AXPlatform);\n\n expandBehavior = input<'click' | 'dbClick' | 'both'>('both');\n\n protected arrowIcon = computed(() => {\n if (this.expandIconField()) {\n if (this.isExpanded()) {\n return `ax-tree-view-arrow ax-icon ax-icon-solid ${this.expandIconField().expand}`;\n } else {\n return `ax-tree-view-arrow ax-icon ax-icon-solid ${this.expandIconField().unExpand}`;\n }\n } else {\n if (this.isExpanded()) {\n return `ax-tree-view-arrow ax-icon ax-icon-solid ax-icon-chevron-down`;\n } else {\n return this.platformService.isRtl()\n ? 'ax-tree-view-arrow ax-icon ax-icon-solid ax-icon-chevron-left'\n : 'ax-tree-view-arrow ax-icon ax-icon-solid ax-icon-chevron-right';\n }\n }\n });\n\n protected handleArrowNodeClick() {\n if (this.item()[this.disableField()] || this.isLoading() || this.expandBehavior() === 'dbClick') {\n return;\n }\n\n this.isExpanded.set(!this.isExpanded());\n\n this.onNodeExpand.emit({ component: this, data: this.item(), nativeElement: this.nativeElement });\n }\n\n protected handleTextClick(item: AXTreeViewSchema) {\n this.onNodeClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n\n protected handleTextDbClick(item: AXTreeViewSchema) {\n if (item[this.disableField()] || this.expandBehavior() === 'click') {\n return;\n }\n if (item?.childrens?.length || item[this.hasChildField()]) {\n this.isExpanded.set(!this.isExpanded());\n this.onNodeDbClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n }\n}\n","<div class=\"ax-tree-view-container\">\n @if ((item().childrens && !isLoading()) || (item()[hasChildField()] && !isLoading())) {\n <i [class.ax-state-disabled]=\"item()[disableField()]\" (click)=\"handleArrowNodeClick()\" class=\"{{ arrowIcon() }}\"></i>\n } @else if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <i class=\"ax-icon\"></i>\n }\n\n <div class=\"ax-tree-view-items\">\n <ng-content select=\"ax-check-box\"></ng-content>\n <div\n [class.ax-state-disabled]=\"item()[disableField()]\"\n [axTooltip]=\"item().tooltip\"\n axTooltipPlacement=\"end-bottom\"\n (click)=\"handleTextClick(item())\"\n (dblclick)=\"handleTextDbClick(item())\"\n class=\"ax-tree-view-items-prefix noselect-tree-view\"\n [class.ax-state-tree-view-active]=\"item().active\"\n >\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-text\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n </div>\n </div>\n</div>\n\n<div class=\"{{ platformService.isRtl() ? 'ax-state-tree-view-rtl' : 'ax-state-tree-view-ltr' }}\" [@collapseExpand]=\"isExpanded() ? 'expanded' : 'collapsed'\">\n <ng-content></ng-content>\n</div>\n","import { AXClickEvent } from '@acorex/components/common';\n\nexport interface AXTreeViewSchema {\n id: number | string;\n\n parentId?: number | string;\n\n text: string;\n\n childrens?: AXTreeViewSchema[];\n\n icon?: string;\n\n selected?: boolean;\n\n disabled?: boolean;\n\n isExpanded?: boolean;\n\n indeterminate?: boolean;\n\n active?: boolean;\n\n hasChild?: boolean;\n\n visible?: boolean;\n\n tooltip?: string;\n\n exteraData?: any;\n\n extension?: string;\n}\n\nexport class AXTreeItemClickBaseEvent extends AXClickEvent {\n nativeElement: any;\n}\n\nexport type SelectionBehaviorType = 'autoExpand' | 'cascade' | 'indeterminate' | null;\n","import { AXValueChangedEvent, NXComponent } from '@acorex/components/common';\nimport { ChangeDetectionStrategy, Component, effect, input, output, signal, ViewEncapsulation } from '@angular/core';\nimport { AXTreeItemClickBaseEvent, AXTreeViewSchema, SelectionBehaviorType } from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view',\n templateUrl: 'tree-view.component.html',\n styleUrls: ['tree-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AXTreeViewComponent extends NXComponent {\n private itemsSignal = signal<AXTreeViewSchema[]>([]);\n\n private itemsPromise: any;\n\n items = input<AXTreeViewSchema[] | ((selectedItemId?: string | number) => AXTreeViewSchema[] | Promise<AXTreeViewSchema[]>)>();\n\n protected get resolvedItems() {\n return this.itemsSignal();\n }\n\n selectable = input<boolean>(true);\n\n selectionMode = input<'single' | 'multiple'>('single');\n\n selectionBehavior = input<SelectionBehaviorType>(null);\n\n showActiveNode = input<boolean>(true);\n\n valueField = input<string>('id');\n\n textField = input<string>('text');\n\n visibleField = input<string>('visible');\n\n disableField = input<string>('disabled');\n\n hasChildField = input<string>('hasChild');\n\n iconField = input<string>('icon');\n\n onSelectionChange = output<AXTreeItemClickBaseEvent>();\n\n onItemClick = output<AXTreeItemClickBaseEvent>();\n\n onNodeClick = output<AXTreeItemClickBaseEvent>();\n\n onNodeExpandClick = output<AXTreeItemClickBaseEvent>();\n\n #effect = effect(() => {\n const itemsInput = this.items();\n\n if (typeof itemsInput === 'function') {\n const result = itemsInput();\n if (result instanceof Promise) {\n this.itemsPromise = (options) => itemsInput(options);\n this.fetchData();\n } else {\n this.itemsSignal.set(result);\n this.itemsPromise = null;\n }\n } else {\n this.itemsSignal.set(itemsInput);\n this.itemsPromise = null;\n }\n });\n\n expandBehavior = input<'click' | 'dbClick' | 'both'>('both');\n\n protected handleNodeSelectionClick(event: AXValueChangedEvent, item: AXTreeViewSchema) {\n if (item[this.disableField()] || this.isNodeLoading(item.id)) {\n return;\n }\n\n if (this.selectionMode() === 'single' && event.isUserInteraction) {\n this.handleUnSelectNode(this.itemsSignal());\n }\n item.selected = event.value;\n\n if (event.value !== null) {\n switch (this.selectionBehavior()) {\n case 'autoExpand':\n if (event.value) {\n if (this.itemsPromise && item[this.hasChildField()] && !item?.childrens?.length) {\n this.fetchData(item);\n this.setNodeLoading(item.id, true);\n }\n this.toggleExpand(item);\n }\n break;\n case 'cascade':\n if (this.itemsPromise) {\n console.error('This mode only available client Side');\n return;\n }\n if (this.selectionMode() === 'single') {\n console.error('This mode only available selectionMode multiple');\n return;\n }\n this.expandAndToggleSelection(item, event.value);\n break;\n case 'indeterminate':\n if (item?.childrens?.length) {\n this.applySelectionToChildren(item, event.value, item[this.valueField()]);\n }\n this.updateParentSelection(item, event.value);\n break;\n default:\n break;\n }\n }\n\n if (event.isUserInteraction) {\n const result: AXTreeViewSchema[] = this.findSelectedNodes(this.itemsSignal());\n\n this.onSelectionChange.emit({\n component: this,\n data: result,\n nativeElement: this.nativeElement,\n });\n\n this.onItemClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n }\n\n /**\n *\n * auto expand\n *\n */\n private toggleExpand(item: AXTreeViewSchema) {\n if (!item.isExpanded) {\n item.isExpanded = true;\n }\n }\n\n /**\n *\n * expand and change value parent change\n *\n */\n\n private expandAndToggleSelection(item: AXTreeViewSchema, selected: boolean) {\n this.toggleExpand(item);\n\n if (item.childrens?.length) {\n this.applySelectionToChildren(item, selected, item[this.valueField()]);\n }\n }\n\n private applySelectionToChildren(item: AXTreeViewSchema, isSelected: boolean, parentId?: number | string) {\n item.childrens.forEach((child) => {\n child.parentId = parentId;\n child.selected = isSelected;\n if (child.childrens?.length) {\n this.applySelectionToChildren(child, isSelected, child.id);\n }\n });\n }\n\n /**\n *\n * indeterminate logic\n *\n */\n\n private updateParentSelection(item: AXTreeViewSchema, selected: boolean) {\n item.selected = selected;\n\n let parent = this.findParent(item, this.itemsSignal());\n\n while ((parent && parent.selected != false) || (parent && item.selected)) {\n const allSelected = parent?.childrens?.every((child) => child.selected);\n\n const someSelected = parent?.childrens?.some((child) => child.selected || child.indeterminate);\n\n if (!allSelected && !someSelected) {\n parent.selected = false;\n parent.indeterminate = null;\n } else if (!allSelected) {\n parent.indeterminate = true;\n parent.selected = null;\n } else if (allSelected) {\n parent.selected = true;\n parent.indeterminate = false;\n } else {\n parent.indeterminate = false;\n parent.selected = true;\n }\n\n parent = this.findParent(parent, this.itemsSignal());\n }\n }\n\n private findParent(item: AXTreeViewSchema, nodes: AXTreeViewSchema[]): AXTreeViewSchema | null {\n for (const node of nodes) {\n if (node.childrens?.includes(item)) {\n return node;\n } else if (node.childrens) {\n const parent = this.findParent(item, node.childrens);\n if (parent) return parent;\n }\n }\n return null;\n }\n\n /**\n *\n * find node selected true for emit Selections\n *\n */\n\n private findSelectedNodes(nodes: AXTreeViewSchema[]): AXTreeViewSchema[] {\n let selectedNodes: AXTreeViewSchema[] = [];\n\n nodes.forEach((node) => {\n if (node.selected) {\n selectedNodes.push(node);\n }\n\n if (node.childrens) {\n selectedNodes = selectedNodes.concat(this.findSelectedNodes(node.childrens));\n }\n });\n\n return selectedNodes;\n }\n\n /**\n *\n * find for emit Selections single mode\n *\n */\n\n private handleUnSelectNode(items: AXTreeViewSchema[]) {\n items.forEach((child) => {\n child.selected = false;\n if (child?.childrens?.length) {\n this.handleUnSelectNode(child.childrens);\n }\n });\n }\n\n /**\n *\n * lazy load logic\n *\n */\n\n private fetchData(selectedNode?: AXTreeViewSchema) {\n this.itemsPromise(selectedNode?.id)\n .then((data: AXTreeViewSchema[]) => {\n if (Array.isArray(data)) {\n if (selectedNode?.id) {\n this.findNode(selectedNode.id, data, this.itemsSignal());\n } else {\n this.itemsSignal.set(data);\n }\n }\n })\n .finally(() => {\n this.setNodeLoading(selectedNode?.id, false);\n });\n }\n\n private findNode(parentId: number | string, _children: AXTreeViewSchema[], source: AXTreeViewSchema[]) {\n if (source.length) {\n source.forEach((element) => {\n if (element[this.valueField()] == parentId) {\n if (this.selectionBehavior() === 'indeterminate' && element.selected) {\n _children.forEach((child) => (child.selected = true));\n }\n element.childrens = _children;\n } else {\n if (element?.childrens) this.findNode(parentId, _children, element.childrens);\n }\n });\n }\n }\n\n /**\n *\n * emit when arrow click\n *\n */\n\n protected handleNodeExpandClick(node: AXTreeItemClickBaseEvent) {\n const selectedNode = node.data;\n if (this.itemsPromise && node.data.isExpanded && !node?.data.childrens?.length) {\n this.fetchData(selectedNode);\n this.setNodeLoading(selectedNode.id, true);\n }\n this.onNodeExpandClick.emit({ component: this, data: node.data, nativeElement: this.nativeElement });\n }\n\n protected handleNodeClick(node: AXTreeItemClickBaseEvent) {\n if (node.data[this.disableField()]) {\n return;\n }\n if (this.showActiveNode()) {\n this.handleUnActiveNode(this.itemsSignal());\n node.data.active = true;\n }\n ///to do\n // switch (this.selectionBehavior()) {\n // case 'activeAndSelect':\n // if (this.selectionMode() === 'single') {\n // this.handleUnselectNode(this.itemsSignal());\n // }\n // node.selected = true;\n\n // break;\n\n // default:\n // break;\n // }\n this.onNodeClick.emit({ component: this, data: node.data, nativeElement: this.nativeElement });\n }\n\n private handleUnActiveNode(unActiveSource: AXTreeViewSchema[]) {\n unActiveSource.forEach((child) => {\n child.active = false;\n if (child?.childrens?.length) {\n this.handleUnActiveNode(child.childrens);\n }\n });\n }\n\n protected handleNodeDbClick(node: AXTreeItemClickBaseEvent) {\n if (this.itemsPromise) {\n const selectedNode = node.data;\n this.fetchData(selectedNode);\n this.setNodeLoading(selectedNode.id, true);\n }\n }\n\n private loadingState = signal<Record<string | number, boolean>>({});\n\n protected isNodeLoading(nodeId: string | number): boolean {\n return this.loadingState()[nodeId] || false;\n }\n\n private setNodeLoading(nodeId: string | number, isLoading: boolean): void {\n this.loadingState.update((state) => ({\n ...state,\n [nodeId]: isLoading,\n }));\n }\n}\n","@for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"Recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n}\n\n<ng-template #Recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [(isExpanded)]=\"item.isExpanded\"\n [(isActive)]=\"item.active\"\n [isLoading]=\"isNodeLoading(item.id)\"\n [disableField]=\"disableField()\"\n [hasChildField]=\"hasChildField()\"\n [expandBehavior]=\"expandBehavior()\"\n (onNodeExpand)=\"handleNodeExpandClick($event)\"\n (onNodeClick)=\"handleNodeClick($event)\"\n (onNodeDbClick)=\"handleNodeDbClick($event)\"\n >\n @if (this.selectable()) {\n <ax-check-box\n [disabled]=\"item[disableField()]\"\n [indeterminate]=\"item.indeterminate\"\n [(ngModel)]=\"item.selected\"\n (onValueChanged)=\"handleNodeSelectionClick($event, item)\"\n ></ax-check-box>\n }\n <ax-prefix>\n @if (item[iconField()]) {\n <ax-icon [icon]=\"item[iconField()]\"></ax-icon>\n } @else {\n <i></i>\n }\n </ax-prefix>\n @if (item[textField()]) {\n <ax-text>{{ item[textField()] }}</ax-text>\n }\n\n <ax-suffix></ax-suffix>\n @for (child of item?.childrens; track $index) {\n <ng-container [ngTemplateOutlet]=\"Recursion\" [ngTemplateOutletContext]=\"{ $implicit: child }\"></ng-container>\n }\n </ax-tree-view-item>\n }\n</ng-template>\n","import { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXCommonModule } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport { AXTreeViewComponent } from './tree-view.component';\n@NgModule({\n imports: [\n CommonModule,\n AXCommonModule,\n AXDecoratorModule,\n AXCheckBoxModule,\n AXFormModule,\n FormsModule,\n AXTooltipModule,\n AXLoadingModule,\n ],\n exports: [AXTreeViewComponent, AXTreeViewItemComponent],\n declarations: [AXTreeViewComponent, AXTreeViewItemComponent],\n providers: [],\n})\nexport class AXTreeViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i5.AXTreeViewItemComponent"],"mappings":";;;;;;;;;;;;;;;;;;;AA2CM,MAAO,uBAAwB,SAAQ,WAAW,CAAA;AACtD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QAGT,IAAI,CAAA,IAAA,GAAG,KAAK,EAAoB;QAEhC,IAAY,CAAA,YAAA,GAAG,MAAM,EAA4B;QAEjD,IAAW,CAAA,WAAA,GAAG,MAAM,EAA4B;AAEhD,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAU,KAAK,CAAC;QAElC,IAAa,CAAA,aAAA,GAAG,KAAK,EAAU;AAE/B,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,CAAC;QAEhC,IAAa,CAAA,aAAA,GAAG,MAAM,EAA4B;AAElD,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAU,KAAK,CAAC;QAEjC,IAAY,CAAA,YAAA,GAAG,KAAK,EAAU;AAE9B,QAAA,IAAA,CAAA,eAAe,GAAG,KAAK,CAA8C,IAAI,CAAC;AAEhE,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC;AAE9C,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAA+B,MAAM,CAAC;AAElD,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AAClC,YAAA,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;AAC1B,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACrB,OAAO,CAAA,yCAAA,EAA4C,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE;;qBAC7E;oBACL,OAAO,CAAA,yCAAA,EAA4C,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE;;;iBAEjF;AACL,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;AACrB,oBAAA,OAAO,+DAA+D;;qBACjE;AACL,oBAAA,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK;AAC/B,0BAAE;0BACA,gEAAgE;;;AAG1E,SAAC,CAAC;;IAEQ,oBAAoB,GAAA;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,SAAS,EAAE;YAC/F;;QAGF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAEvC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGzF,IAAA,eAAe,CAAC,IAAsB,EAAA;QAC9C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGjF,IAAA,iBAAiB,CAAC,IAAsB,EAAA;AAChD,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,OAAO,EAAE;YAClE;;AAEF,QAAA,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE;YACzD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;;8GAnEpF,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3CpC,2sCA8BA,EDVc,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;YACV,OAAO,CAAC,gBAAgB,EAAE;AACxB,gBAAA,KAAK,CACH,WAAW,EACX,KAAK,CAAC;AACJ,oBAAA,MAAM,EAAE,GAAG;AACX,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA,CAAC,CACH;AACD,gBAAA,KAAK,CACH,UAAU,EACV,KAAK,CAAC;AACJ,oBAAA,MAAM,EAAE,GAAG;AACX,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA,CAAC,CACH;gBACD,UAAU,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;aACrE,CAAC;AACH,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAGU,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBA5BnC,SAAS;+BACE,mBAAmB,EAAA,aAAA,EAEd,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA;wBACV,OAAO,CAAC,gBAAgB,EAAE;AACxB,4BAAA,KAAK,CACH,WAAW,EACX,KAAK,CAAC;AACJ,gCAAA,MAAM,EAAE,GAAG;AACX,gCAAA,QAAQ,EAAE,QAAQ;AAClB,gCAAA,OAAO,EAAE,CAAC;AACX,6BAAA,CAAC,CACH;AACD,4BAAA,KAAK,CACH,UAAU,EACV,KAAK,CAAC;AACJ,gCAAA,MAAM,EAAE,GAAG;AACX,gCAAA,QAAQ,EAAE,QAAQ;AAClB,gCAAA,OAAO,EAAE,CAAC;AACX,6BAAA,CAAC,CACH;4BACD,UAAU,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;yBACrE,CAAC;AACH,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,2sCAAA,EAAA;;;AEPb,MAAO,wBAAyB,SAAQ,YAAY,CAAA;AAEzD;;ACxBK,MAAO,mBAAoB,SAAQ,WAAW,CAAA;AARpD,IAAA,WAAA,GAAA;;AASU,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAqB,EAAE,CAAC;QAIpD,IAAK,CAAA,KAAA,GAAG,KAAK,EAAiH;AAM9H,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAU,IAAI,CAAC;AAEjC,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAwB,QAAQ,CAAC;AAEtD,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAwB,IAAI,CAAC;AAEtD,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAAU,IAAI,CAAC;AAErC,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAS,IAAI,CAAC;AAEhC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,MAAM,CAAC;AAEjC,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAS,SAAS,CAAC;AAEvC,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAS,UAAU,CAAC;AAExC,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAS,UAAU,CAAC;AAEzC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,MAAM,CAAC;QAEjC,IAAiB,CAAA,iBAAA,GAAG,MAAM,EAA4B;QAEtD,IAAW,CAAA,WAAA,GAAG,MAAM,EAA4B;QAEhD,IAAW,CAAA,WAAA,GAAG,MAAM,EAA4B;QAEhD,IAAiB,CAAA,iBAAA,GAAG,MAAM,EAA4B;AAEtD,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,MAAK;AACpB,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAE/B,YAAA,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AACpC,gBAAA,MAAM,MAAM,GAAG,UAAU,EAAE;AAC3B,gBAAA,IAAI,MAAM,YAAY,OAAO,EAAE;AAC7B,oBAAA,IAAI,CAAC,YAAY,GAAG,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,CAAC;oBACpD,IAAI,CAAC,SAAS,EAAE;;qBACX;AACL,oBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;AAC5B,oBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;;iBAErB;AACL,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;AAChC,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;AAE5B,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAA+B,MAAM,CAAC;AA6QpD,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAmC,EAAE,CAAC;AAYpE;AA3UC,IAAA,IAAc,aAAa,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE;;AA+B3B,IAAA,OAAO;IAoBG,wBAAwB,CAAC,KAA0B,EAAE,IAAsB,EAAA;AACnF,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAC5D;;QAGF,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAChE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;;AAE7C,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK;AAE3B,QAAA,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE;AACxB,YAAA,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAC9B,gBAAA,KAAK,YAAY;AACf,oBAAA,IAAI,KAAK,CAAC,KAAK,EAAE;AACf,wBAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;AAC/E,4BAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;4BACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;;AAEpC,wBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;;oBAEzB;AACF,gBAAA,KAAK,SAAS;AACZ,oBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,wBAAA,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC;wBACrD;;AAEF,oBAAA,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,QAAQ,EAAE;AACrC,wBAAA,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC;wBAChE;;oBAEF,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC;oBAChD;AACF,gBAAA,KAAK,eAAe;AAClB,oBAAA,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;AAC3B,wBAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;oBAE3E,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC;oBAC7C;AACF,gBAAA;oBACE;;;AAIN,QAAA,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,MAAM,MAAM,GAAuB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAE7E,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC1B,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,IAAI,EAAE,MAAM;gBACZ,aAAa,EAAE,IAAI,CAAC,aAAa;AAClC,aAAA,CAAC;YAEF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;;AAI7F;;;;AAIG;AACK,IAAA,YAAY,CAAC,IAAsB,EAAA;AACzC,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;;AAI1B;;;;AAIG;IAEK,wBAAwB,CAAC,IAAsB,EAAE,QAAiB,EAAA;AACxE,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AAEvB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE;AAC1B,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;;AAIlE,IAAA,wBAAwB,CAAC,IAAsB,EAAE,UAAmB,EAAE,QAA0B,EAAA;QACtG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AAC/B,YAAA,KAAK,CAAC,QAAQ,GAAG,QAAQ;AACzB,YAAA,KAAK,CAAC,QAAQ,GAAG,UAAU;AAC3B,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE;gBAC3B,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;;AAE9D,SAAC,CAAC;;AAGJ;;;;AAIG;IAEK,qBAAqB,CAAC,IAAsB,EAAE,QAAiB,EAAA;AACrE,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAExB,QAAA,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;AAEtD,QAAA,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,IAAI,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE;AACxE,YAAA,MAAM,WAAW,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,CAAC;YAEvE,MAAM,YAAY,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC;AAE9F,YAAA,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE;AACjC,gBAAA,MAAM,CAAC,QAAQ,GAAG,KAAK;AACvB,gBAAA,MAAM,CAAC,aAAa,GAAG,IAAI;;iBACtB,IAAI,CAAC,WAAW,EAAE;AACvB,gBAAA,MAAM,CAAC,aAAa,GAAG,IAAI;AAC3B,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;;iBACjB,IAAI,WAAW,EAAE;AACtB,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;AACtB,gBAAA,MAAM,CAAC,aAAa,GAAG,KAAK;;iBACvB;AACL,gBAAA,MAAM,CAAC,aAAa,GAAG,KAAK;AAC5B,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;;AAGxB,YAAA,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;;;IAIhD,UAAU,CAAC,IAAsB,EAAE,KAAyB,EAAA;AAClE,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;AAClC,gBAAA,OAAO,IAAI;;AACN,iBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AACzB,gBAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;AACpD,gBAAA,IAAI,MAAM;AAAE,oBAAA,OAAO,MAAM;;;AAG7B,QAAA,OAAO,IAAI;;AAGb;;;;AAIG;AAEK,IAAA,iBAAiB,CAAC,KAAyB,EAAA;QACjD,IAAI,aAAa,GAAuB,EAAE;AAE1C,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACrB,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;;AAG1B,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,gBAAA,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;AAEhF,SAAC,CAAC;AAEF,QAAA,OAAO,aAAa;;AAGtB;;;;AAIG;AAEK,IAAA,kBAAkB,CAAC,KAAyB,EAAA;AAClD,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACtB,YAAA,KAAK,CAAC,QAAQ,GAAG,KAAK;AACtB,YAAA,IAAI,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;;AAE5C,SAAC,CAAC;;AAGJ;;;;AAIG;AAEK,IAAA,SAAS,CAAC,YAA+B,EAAA;AAC/C,QAAA,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE;AAC/B,aAAA,IAAI,CAAC,CAAC,IAAwB,KAAI;AACjC,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACvB,gBAAA,IAAI,YAAY,EAAE,EAAE,EAAE;AACpB,oBAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;;qBACnD;AACL,oBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;;;AAGhC,SAAC;aACA,OAAO,CAAC,MAAK;YACZ,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC;AAC9C,SAAC,CAAC;;AAGE,IAAA,QAAQ,CAAC,QAAyB,EAAE,SAA6B,EAAE,MAA0B,EAAA;AACnG,QAAA,IAAI,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;gBACzB,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,QAAQ,EAAE;oBAC1C,IAAI,IAAI,CAAC,iBAAiB,EAAE,KAAK,eAAe,IAAI,OAAO,CAAC,QAAQ,EAAE;AACpE,wBAAA,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;;AAEvD,oBAAA,OAAO,CAAC,SAAS,GAAG,SAAS;;qBACxB;oBACL,IAAI,OAAO,EAAE,SAAS;wBAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;;AAEjF,aAAC,CAAC;;;AAIN;;;;AAIG;AAEO,IAAA,qBAAqB,CAAC,IAA8B,EAAA;AAC5D,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC9B,QAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE;AAC9E,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC;;QAE5C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAG5F,IAAA,eAAe,CAAC,IAA8B,EAAA;QACtD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE;YAClC;;AAEF,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAC3C,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI;;;;;;;;;;;;;QAezB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGxF,IAAA,kBAAkB,CAAC,cAAkC,EAAA;AAC3D,QAAA,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AAC/B,YAAA,KAAK,CAAC,MAAM,GAAG,KAAK;AACpB,YAAA,IAAI,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;;AAE5C,SAAC,CAAC;;AAGM,IAAA,iBAAiB,CAAC,IAA8B,EAAA;AACxD,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC9B,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC;;;AAMpC,IAAA,aAAa,CAAC,MAAuB,EAAA;QAC7C,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK;;IAGrC,cAAc,CAAC,MAAuB,EAAE,SAAkB,EAAA;QAChE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,MAAM;AACnC,YAAA,GAAG,KAAK;YACR,CAAC,MAAM,GAAG,SAAS;AACpB,SAAA,CAAC,CAAC;;8GAhVM,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,24DCZhC,mhDA4CA,EAAA,MAAA,EAAA,CAAA,w7EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,8IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,SAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,aAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,YAAA,EAAA,eAAA,EAAA,UAAA,EAAA,WAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDhCa,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;+BACE,cAAc,EAAA,aAAA,EAGT,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,KAAK,EAAA,QAAA,EAAA,mhDAAA,EAAA,MAAA,EAAA,CAAA,w7EAAA,CAAA,EAAA;;;MEgBN,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAHZ,YAAA,EAAA,CAAA,mBAAmB,EAAE,uBAAuB,aAVzD,YAAY;YACZ,cAAc;YACd,iBAAiB;YACjB,gBAAgB;YAChB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,eAAe,CAAA,EAAA,OAAA,EAAA,CAEP,mBAAmB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAI3C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAbzB,YAAY;YACZ,cAAc;YACd,iBAAiB;YACjB,gBAAgB;YAChB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,eAAe,CAAA,EAAA,CAAA,CAAA;;2FAMN,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAf5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,iBAAiB;wBACjB,gBAAgB;wBAChB,YAAY;wBACZ,WAAW;wBACX,eAAe;wBACf,eAAe;AAChB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;AACvD,oBAAA,YAAY,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;AAC5D,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA;;;ACzBD;;AAEG;;;;"}
|
1
|
+
{"version":3,"file":"acorex-components-tree-view.mjs","sources":["../../../../libs/components/tree-view/src/lib/tree-view-item.component.ts","../../../../libs/components/tree-view/src/lib/tree-view-item.component.html","../../../../libs/components/tree-view/src/lib/tree-view.class.ts","../../../../libs/components/tree-view/src/lib/tree-view.component.ts","../../../../libs/components/tree-view/src/lib/tree-view.component.html","../../../../libs/components/tree-view/src/lib/tree-view.component.module.ts","../../../../libs/components/tree-view/src/acorex-components-tree-view.ts"],"sourcesContent":["import { NXComponent } from '@acorex/components/common';\nimport { AXLoadingComponent } from '@acorex/components/loading';\nimport { AXTooltipDirective } from '@acorex/components/tooltip';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, computed, inject, input, model, output, ViewEncapsulation } from '@angular/core';\nimport { AXTreeItemClickBaseEvent, AXTreeViewSchema, OperationMethod } from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view-item',\n templateUrl: 'tree-view-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('collapseExpand', [\n state(\n 'collapsed',\n style({\n height: '0',\n overflow: 'hidden',\n opacity: 0,\n }),\n ),\n state(\n 'expanded',\n style({\n height: '*',\n overflow: 'hidden',\n opacity: 1,\n }),\n ),\n transition('collapsed <=> expanded', [animate('300ms ease-in-out')]),\n ]),\n ],\n imports: [AXLoadingComponent, AXTooltipDirective],\n})\nexport class AXTreeViewItemComponent extends NXComponent {\n constructor() {\n super();\n }\n\n item = input<AXTreeViewSchema>();\n\n onNodeExpand = output<AXTreeItemClickBaseEvent>();\n\n onNodeClick = output<AXTreeItemClickBaseEvent>();\n\n isExpanded = model<boolean>(false);\n\n hasChildField = input<string>();\n\n isActive = model<boolean>(false);\n\n onNodeDbClick = output<AXTreeItemClickBaseEvent>();\n\n isLoading = input<boolean>(false);\n\n disableField = input<string>();\n\n expandIconField = input<{ expand: string; unExpand: string } | null>(null);\n\n executorChanges = input<OperationMethod | null>(null);\n\n protected platformService = inject(AXPlatform);\n\n expandBehavior = input<'click' | 'dbClick' | 'both'>('both');\n\n protected arrowIcon = computed(() => {\n if (this.expandIconField()) {\n if (this.isExpanded()) {\n return `ax-tree-view-arrow ax-icon ax-icon-solid ${this.expandIconField().expand}`;\n } else {\n return `ax-tree-view-arrow ax-icon ax-icon-solid ${this.expandIconField().unExpand}`;\n }\n } else {\n if (this.isExpanded()) {\n return `ax-tree-view-arrow ax-icon ax-icon-solid ax-icon-chevron-down`;\n } else {\n return this.platformService.isRtl()\n ? 'ax-tree-view-arrow ax-icon ax-icon-solid ax-icon-chevron-left'\n : 'ax-tree-view-arrow ax-icon ax-icon-solid ax-icon-chevron-right';\n }\n }\n });\n\n protected handleArrowNodeClick() {\n if (this.item()[this.disableField()] || this.isLoading() || this.expandBehavior() === 'dbClick') {\n return;\n }\n\n this.isExpanded.set(!this.isExpanded());\n\n this.onNodeExpand.emit({ component: this, data: this.item(), nativeElement: this.nativeElement });\n }\n\n protected handleTextClick(item: AXTreeViewSchema) {\n this.onNodeClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n\n protected handleTextDbClick(item: AXTreeViewSchema) {\n if (item[this.disableField()] || this.expandBehavior() === 'click') {\n return;\n }\n if (item?.childrens?.length || item[this.hasChildField()]) {\n this.isExpanded.set(!this.isExpanded());\n this.onNodeDbClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n }\n}\n","<div class=\"ax-tree-view-container\">\n @if ((item().childrens && !isLoading()) || (item()[hasChildField()] && !isLoading())) {\n <i [class.ax-state-disabled]=\"item()[disableField()]\" (click)=\"handleArrowNodeClick()\" class=\"{{ arrowIcon() }}\"></i>\n } @else if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <i class=\"ax-icon\"></i>\n }\n\n <div class=\"ax-tree-view-items\">\n <ng-content select=\"ax-check-box\"></ng-content>\n <div\n [class.ax-state-disabled]=\"item()[disableField()]\"\n [axTooltip]=\"item().tooltip\"\n axTooltipPlacement=\"end-bottom\"\n (click)=\"handleTextClick(item())\"\n (dblclick)=\"handleTextDbClick(item())\"\n class=\"ax-tree-view-items-prefix noselect-tree-view\"\n [class.ax-state-tree-view-active]=\"item().active\"\n >\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-text\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n </div>\n </div>\n</div>\n\n<div class=\"{{ platformService.isRtl() ? 'ax-state-tree-view-rtl' : 'ax-state-tree-view-ltr' }}\" [@collapseExpand]=\"isExpanded() ? 'expanded' : 'collapsed'\">\n <ng-content></ng-content>\n</div>\n","import { AXClickEvent } from '@acorex/components/common';\n\nexport interface AXTreeViewSchema {\n id: number | string;\n\n parentId?: number | string;\n\n text: string;\n\n childrens?: AXTreeViewSchema[];\n\n icon?: string;\n\n selected?: boolean;\n\n disabled?: boolean;\n\n isExpanded?: boolean;\n\n indeterminate?: boolean;\n\n active?: boolean;\n\n hasChild?: boolean;\n\n visible?: boolean;\n\n tooltip?: string;\n\n exteraData?: any;\n\n extension?: string;\n}\n\nexport class AXTreeItemClickBaseEvent extends AXClickEvent {\n nativeElement: any;\n}\n\nexport type SelectionBehaviorType = 'autoExpand' | 'cascade' | 'indeterminate' | null;\n\nexport type ExpandBehaviorType = 'click' | 'dbClick' | 'both';\n\nexport type OperationMethod = 'expand' | 'active' | 'visible' | 'disabled';\n","import { AXCheckBoxComponent } from '@acorex/components/check-box';\nimport { AXValueChangedEvent, NXComponent } from '@acorex/components/common';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, input, output, signal, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport { AXTreeItemClickBaseEvent, AXTreeViewSchema, ExpandBehaviorType, OperationMethod, SelectionBehaviorType } from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view',\n templateUrl: 'tree-view.component.html',\n styleUrls: ['tree-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgTemplateOutlet, AXTreeViewItemComponent, AXCheckBoxComponent, FormsModule, AXDecoratorGenericComponent, AXDecoratorIconComponent],\n})\nexport class AXTreeViewComponent extends NXComponent {\n private itemsSignal = signal<AXTreeViewSchema[]>([]);\n\n private itemsPromise: any;\n\n items = input<AXTreeViewSchema[] | ((selectedItemId?: string | number) => AXTreeViewSchema[] | Promise<AXTreeViewSchema[]>)>();\n\n protected get resolvedItems() {\n return this.itemsSignal();\n }\n\n showCheckbox = input<boolean>(true);\n\n selectionMode = input<'single' | 'multiple'>('single');\n\n selectionBehavior = input<SelectionBehaviorType>(null);\n\n focusNodeEnabled = input<boolean>(true);\n\n valueField = input<string>('id');\n\n textField = input<string>('text');\n\n visibleField = input<string>('visible');\n\n disableField = input<string>('disabled');\n\n hasChildField = input<string>('hasChild');\n\n iconField = input<string>('icon');\n\n onSelectionChanged = output<AXTreeItemClickBaseEvent>();\n\n onNodeClick = output<AXTreeItemClickBaseEvent>();\n\n onCollapsedChanged = output<AXTreeItemClickBaseEvent>();\n\n executorChanges = signal<OperationMethod | null>(null);\n\n #effect = effect(() => {\n const itemsInput = this.items();\n\n if (typeof itemsInput === 'function') {\n const result = itemsInput();\n if (result instanceof Promise) {\n this.itemsPromise = (options) => itemsInput(options);\n this.fetchData();\n } else {\n this.itemsSignal.set(result);\n this.itemsPromise = null;\n }\n } else {\n this.itemsSignal.set(itemsInput);\n this.itemsPromise = null;\n }\n });\n\n expandBehavior = input<ExpandBehaviorType>('both');\n\n protected handleNodeSelectionClick(event: AXValueChangedEvent, item: AXTreeViewSchema) {\n if (item[this.disableField()] || this.isNodeLoading(item.id)) {\n return;\n }\n\n if (this.selectionMode() === 'single' && event.isUserInteraction) {\n this.handleUnSelectNode(this.itemsSignal());\n }\n item.selected = event.value;\n\n if (event.value !== null) {\n switch (this.selectionBehavior()) {\n case 'autoExpand':\n if (event.value) {\n if (this.itemsPromise && item[this.hasChildField()] && !item?.childrens?.length) {\n this.fetchData(item);\n this.setNodeLoading(item.id, true);\n }\n this.toggleExpand(item);\n }\n break;\n case 'cascade':\n if (this.itemsPromise) {\n console.error('This mode only available client Side');\n return;\n }\n if (this.selectionMode() === 'single') {\n console.error('This mode only available selectionMode multiple');\n return;\n }\n this.expandAndToggleSelection(item, event.value);\n break;\n case 'indeterminate':\n if (item?.childrens?.length) {\n this.applySelectionToChildren(item, event.value, item[this.valueField()]);\n }\n this.updateParentSelection(item, event.value);\n break;\n default:\n break;\n }\n }\n\n if (event.isUserInteraction) {\n const result: AXTreeViewSchema[] = this.findSelectedNodes(this.itemsSignal());\n\n this.onSelectionChanged.emit({\n component: this,\n data: result,\n nativeElement: this.nativeElement,\n });\n }\n }\n\n /**\n *\n * auto expand\n *\n */\n private toggleExpand(item: AXTreeViewSchema) {\n if (!item.isExpanded) {\n item.isExpanded = true;\n }\n }\n\n /**\n *\n * expand and change value parent change\n *\n */\n\n private expandAndToggleSelection(item: AXTreeViewSchema, selected: boolean) {\n this.toggleExpand(item);\n\n if (item.childrens?.length) {\n this.applySelectionToChildren(item, selected, item[this.valueField()]);\n }\n }\n\n private applySelectionToChildren(item: AXTreeViewSchema, isSelected: boolean, parentId?: number | string) {\n item.childrens.forEach((child) => {\n child.parentId = parentId;\n child.selected = isSelected;\n if (child.childrens?.length) {\n this.applySelectionToChildren(child, isSelected, child.id);\n }\n });\n }\n\n /**\n *\n * indeterminate logic\n *\n */\n\n private updateParentSelection(item: AXTreeViewSchema, selected: boolean) {\n item.selected = selected;\n\n let parent = this.findParent(item, this.itemsSignal());\n\n while ((parent && parent.selected != false) || (parent && item.selected)) {\n const allSelected = parent?.childrens?.every((child) => child.selected);\n\n const someSelected = parent?.childrens?.some((child) => child.selected || child.indeterminate);\n\n if (!allSelected && !someSelected) {\n parent.selected = false;\n parent.indeterminate = null;\n } else if (!allSelected) {\n parent.indeterminate = true;\n parent.selected = null;\n } else if (allSelected) {\n parent.selected = true;\n parent.indeterminate = false;\n } else {\n parent.indeterminate = false;\n parent.selected = true;\n }\n\n parent = this.findParent(parent, this.itemsSignal());\n }\n }\n\n private findParent(item: AXTreeViewSchema, nodes: AXTreeViewSchema[]): AXTreeViewSchema | null {\n for (const node of nodes) {\n if (node.childrens?.includes(item)) {\n return node;\n } else if (node.childrens) {\n const parent = this.findParent(item, node.childrens);\n if (parent) return parent;\n }\n }\n return null;\n }\n\n /**\n *\n * find node selected true for emit Selections\n *\n */\n\n private findSelectedNodes(nodes: AXTreeViewSchema[]): AXTreeViewSchema[] {\n let selectedNodes: AXTreeViewSchema[] = [];\n\n nodes.forEach((node) => {\n if (node.selected) {\n selectedNodes.push(node);\n }\n\n if (node.childrens) {\n selectedNodes = selectedNodes.concat(this.findSelectedNodes(node.childrens));\n }\n });\n\n return selectedNodes;\n }\n\n /**\n *\n * find for emit Selections single mode\n *\n */\n\n private handleUnSelectNode(items: AXTreeViewSchema[]) {\n items.forEach((child) => {\n child.selected = false;\n if (child?.childrens?.length) {\n this.handleUnSelectNode(child.childrens);\n }\n });\n }\n\n /**\n *\n * lazy load logic\n *\n */\n\n private fetchData(selectedNode?: AXTreeViewSchema) {\n this.itemsPromise(selectedNode?.id)\n .then((data: AXTreeViewSchema[]) => {\n if (Array.isArray(data)) {\n if (selectedNode?.id) {\n this.findNode(selectedNode.id, data, this.itemsSignal());\n } else {\n this.itemsSignal.set(data);\n }\n }\n })\n .finally(() => {\n this.setNodeLoading(selectedNode?.id, false);\n });\n }\n\n private findNode(parentId: number | string, _children: AXTreeViewSchema[], source: AXTreeViewSchema[]) {\n if (source.length) {\n source.forEach((element) => {\n if (element[this.valueField()] == parentId) {\n if (this.selectionBehavior() === 'indeterminate' && element.selected) {\n _children.forEach((child) => (child.selected = true));\n }\n element.childrens = _children;\n } else {\n if (element?.childrens) this.findNode(parentId, _children, element.childrens);\n }\n });\n }\n }\n\n /**\n *\n * emit when arrow click\n *\n */\n\n protected handleNodeExpandClick(node: AXTreeItemClickBaseEvent) {\n const selectedNode = node.data;\n if (this.itemsPromise && node.data.isExpanded && !node?.data.childrens?.length) {\n this.fetchData(selectedNode);\n this.setNodeLoading(selectedNode.id, true);\n }\n this.onCollapsedChanged.emit({ component: this, data: node.data, nativeElement: this.nativeElement });\n }\n\n protected handleNodeClick(node: AXTreeItemClickBaseEvent) {\n if (node.data[this.disableField()]) {\n return;\n }\n if (this.focusNodeEnabled()) {\n this.handleUnActiveNode(this.itemsSignal());\n node.data.active = true;\n }\n\n this.onNodeClick.emit({ component: this, data: node.data, nativeElement: this.nativeElement });\n }\n\n private handleUnActiveNode(unActiveSource: AXTreeViewSchema[]) {\n unActiveSource.forEach((child) => {\n child.active = false;\n if (child?.childrens?.length) {\n this.handleUnActiveNode(child.childrens);\n }\n });\n }\n\n protected handleNodeDbClick(node: AXTreeItemClickBaseEvent) {\n if (this.itemsPromise) {\n const selectedNode = node.data;\n this.fetchData(selectedNode);\n this.setNodeLoading(selectedNode.id, true);\n }\n }\n\n private loadingState = signal<Record<string | number, boolean>>({});\n\n protected isNodeLoading(nodeId: string | number): boolean {\n return this.loadingState()[nodeId] || false;\n }\n\n private setNodeLoading(nodeId: string | number, isLoading: boolean): void {\n this.loadingState.update((state) => ({\n ...state,\n [nodeId]: isLoading,\n }));\n }\n\n public executeOnTreeNode(node: AXTreeViewSchema, operation: OperationMethod, value: boolean) {\n switch (operation) {\n case 'active':\n node.active = value;\n break;\n case 'expand':\n node.isExpanded = true;\n if (this.itemsPromise && node[this.hasChildField()] && !node.childrens?.length) {\n this.handleNodeExpandClick({ data: node, nativeElement: this.nativeElement, component: this });\n }\n\n break;\n case 'visible':\n node[this.visibleField()] = value;\n\n break;\n case 'disabled':\n node[this.disableField()] = value;\n break;\n default:\n break;\n }\n /**\n *\n * for detect changes treeviewitem\n *\n */\n\n this.executorChanges.set(operation);\n }\n}\n","@for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"Recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n}\n\n<ng-template #Recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [(isExpanded)]=\"item.isExpanded\"\n [(isActive)]=\"item.active\"\n [isLoading]=\"isNodeLoading(item.id)\"\n [disableField]=\"disableField()\"\n [hasChildField]=\"hasChildField()\"\n [expandBehavior]=\"expandBehavior()\"\n (onNodeExpand)=\"handleNodeExpandClick($event)\"\n (onNodeClick)=\"handleNodeClick($event)\"\n (onNodeDbClick)=\"handleNodeDbClick($event)\"\n [executorChanges]=\"this.executorChanges()\"\n >\n @if (this.showCheckbox()) {\n <ax-check-box\n [disabled]=\"item[disableField()]\"\n [indeterminate]=\"item.indeterminate\"\n [(ngModel)]=\"item.selected\"\n (onValueChanged)=\"handleNodeSelectionClick($event, item)\"\n ></ax-check-box>\n }\n <ax-prefix>\n @if (item[iconField()]) {\n <ax-icon [icon]=\"item[iconField()]\"></ax-icon>\n } @else {\n <i></i>\n }\n </ax-prefix>\n @if (item[textField()]) {\n <ax-text>{{ item[textField()] }}</ax-text>\n }\n\n <ax-suffix></ax-suffix>\n @for (child of item?.childrens; track $index) {\n <ng-container [ngTemplateOutlet]=\"Recursion\" [ngTemplateOutletContext]=\"{ $implicit: child }\"></ng-container>\n }\n </ax-tree-view-item>\n }\n</ng-template>\n","import { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXCommonModule } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport { AXTreeViewComponent } from './tree-view.component';\n@NgModule({\n imports: [\n CommonModule,\n AXCommonModule,\n AXDecoratorModule,\n AXCheckBoxModule,\n AXFormModule,\n FormsModule,\n AXTooltipModule,\n AXLoadingModule,\n AXTreeViewComponent,\n AXTreeViewItemComponent,\n ],\n exports: [AXTreeViewComponent, AXTreeViewItemComponent],\n providers: [],\n})\nexport class AXTreeViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAoCM,MAAO,uBAAwB,SAAQ,WAAW,CAAA;AACtD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QAGT,IAAI,CAAA,IAAA,GAAG,KAAK,EAAoB;QAEhC,IAAY,CAAA,YAAA,GAAG,MAAM,EAA4B;QAEjD,IAAW,CAAA,WAAA,GAAG,MAAM,EAA4B;AAEhD,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAU,KAAK,CAAC;QAElC,IAAa,CAAA,aAAA,GAAG,KAAK,EAAU;AAE/B,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,CAAC;QAEhC,IAAa,CAAA,aAAA,GAAG,MAAM,EAA4B;AAElD,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAU,KAAK,CAAC;QAEjC,IAAY,CAAA,YAAA,GAAG,KAAK,EAAU;AAE9B,QAAA,IAAA,CAAA,eAAe,GAAG,KAAK,CAA8C,IAAI,CAAC;AAE1E,QAAA,IAAA,CAAA,eAAe,GAAG,KAAK,CAAyB,IAAI,CAAC;AAE3C,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC;AAE9C,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAA+B,MAAM,CAAC;AAElD,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AAClC,YAAA,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;AAC1B,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACrB,OAAO,CAAA,yCAAA,EAA4C,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE;;qBAC7E;oBACL,OAAO,CAAA,yCAAA,EAA4C,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE;;;iBAEjF;AACL,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;AACrB,oBAAA,OAAO,+DAA+D;;qBACjE;AACL,oBAAA,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK;AAC/B,0BAAE;0BACA,gEAAgE;;;AAG1E,SAAC,CAAC;;IAEQ,oBAAoB,GAAA;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,SAAS,EAAE;YAC/F;;QAGF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAEvC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGzF,IAAA,eAAe,CAAC,IAAsB,EAAA;QAC9C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGjF,IAAA,iBAAiB,CAAC,IAAsB,EAAA;AAChD,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,OAAO,EAAE;YAClE;;AAEF,QAAA,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE;YACzD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;;8GArEpF,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,g/CCpCpC,2sCA8BA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDIY,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EArBpC,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;YACV,OAAO,CAAC,gBAAgB,EAAE;AACxB,gBAAA,KAAK,CACH,WAAW,EACX,KAAK,CAAC;AACJ,oBAAA,MAAM,EAAE,GAAG;AACX,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA,CAAC,CACH;AACD,gBAAA,KAAK,CACH,UAAU,EACV,KAAK,CAAC;AACJ,oBAAA,MAAM,EAAE,GAAG;AACX,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA,CAAC,CACH;gBACD,UAAU,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;aACrE,CAAC;AACH,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAGU,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBA5BnC,SAAS;+BACE,mBAAmB,EAAA,aAAA,EAEd,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA;wBACV,OAAO,CAAC,gBAAgB,EAAE;AACxB,4BAAA,KAAK,CACH,WAAW,EACX,KAAK,CAAC;AACJ,gCAAA,MAAM,EAAE,GAAG;AACX,gCAAA,QAAQ,EAAE,QAAQ;AAClB,gCAAA,OAAO,EAAE,CAAC;AACX,6BAAA,CAAC,CACH;AACD,4BAAA,KAAK,CACH,UAAU,EACV,KAAK,CAAC;AACJ,gCAAA,MAAM,EAAE,GAAG;AACX,gCAAA,QAAQ,EAAE,QAAQ;AAClB,gCAAA,OAAO,EAAE,CAAC;AACX,6BAAA,CAAC,CACH;4BACD,UAAU,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;yBACrE,CAAC;AACH,qBAAA,EAAA,OAAA,EACQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,EAAA,QAAA,EAAA,2sCAAA,EAAA;;;AEA7C,MAAO,wBAAyB,SAAQ,YAAY,CAAA;AAEzD;;ACnBK,MAAO,mBAAoB,SAAQ,WAAW,CAAA;AARpD,IAAA,WAAA,GAAA;;AASU,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAqB,EAAE,CAAC;QAIpD,IAAK,CAAA,KAAA,GAAG,KAAK,EAAiH;AAM9H,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAU,IAAI,CAAC;AAEnC,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAwB,QAAQ,CAAC;AAEtD,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAwB,IAAI,CAAC;AAEtD,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAU,IAAI,CAAC;AAEvC,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAS,IAAI,CAAC;AAEhC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,MAAM,CAAC;AAEjC,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAS,SAAS,CAAC;AAEvC,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAS,UAAU,CAAC;AAExC,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAS,UAAU,CAAC;AAEzC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,MAAM,CAAC;QAEjC,IAAkB,CAAA,kBAAA,GAAG,MAAM,EAA4B;QAEvD,IAAW,CAAA,WAAA,GAAG,MAAM,EAA4B;QAEhD,IAAkB,CAAA,kBAAA,GAAG,MAAM,EAA4B;AAEvD,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAyB,IAAI,CAAC;AAEtD,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,MAAK;AACpB,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAE/B,YAAA,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AACpC,gBAAA,MAAM,MAAM,GAAG,UAAU,EAAE;AAC3B,gBAAA,IAAI,MAAM,YAAY,OAAO,EAAE;AAC7B,oBAAA,IAAI,CAAC,YAAY,GAAG,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,CAAC;oBACpD,IAAI,CAAC,SAAS,EAAE;;qBACX;AACL,oBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;AAC5B,oBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;;iBAErB;AACL,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;AAChC,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;AAE5B,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAAqB,MAAM,CAAC;AA+P1C,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAmC,EAAE,CAAC;AA2CpE;AA5VC,IAAA,IAAc,aAAa,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE;;AA+B3B,IAAA,OAAO;IAoBG,wBAAwB,CAAC,KAA0B,EAAE,IAAsB,EAAA;AACnF,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAC5D;;QAGF,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAChE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;;AAE7C,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK;AAE3B,QAAA,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE;AACxB,YAAA,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAC9B,gBAAA,KAAK,YAAY;AACf,oBAAA,IAAI,KAAK,CAAC,KAAK,EAAE;AACf,wBAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;AAC/E,4BAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;4BACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;;AAEpC,wBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;;oBAEzB;AACF,gBAAA,KAAK,SAAS;AACZ,oBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,wBAAA,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC;wBACrD;;AAEF,oBAAA,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,QAAQ,EAAE;AACrC,wBAAA,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC;wBAChE;;oBAEF,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC;oBAChD;AACF,gBAAA,KAAK,eAAe;AAClB,oBAAA,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;AAC3B,wBAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;oBAE3E,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC;oBAC7C;AACF,gBAAA;oBACE;;;AAIN,QAAA,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,MAAM,MAAM,GAAuB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAE7E,YAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;AAC3B,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,IAAI,EAAE,MAAM;gBACZ,aAAa,EAAE,IAAI,CAAC,aAAa;AAClC,aAAA,CAAC;;;AAIN;;;;AAIG;AACK,IAAA,YAAY,CAAC,IAAsB,EAAA;AACzC,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;;AAI1B;;;;AAIG;IAEK,wBAAwB,CAAC,IAAsB,EAAE,QAAiB,EAAA;AACxE,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AAEvB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE;AAC1B,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;;AAIlE,IAAA,wBAAwB,CAAC,IAAsB,EAAE,UAAmB,EAAE,QAA0B,EAAA;QACtG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AAC/B,YAAA,KAAK,CAAC,QAAQ,GAAG,QAAQ;AACzB,YAAA,KAAK,CAAC,QAAQ,GAAG,UAAU;AAC3B,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE;gBAC3B,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;;AAE9D,SAAC,CAAC;;AAGJ;;;;AAIG;IAEK,qBAAqB,CAAC,IAAsB,EAAE,QAAiB,EAAA;AACrE,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAExB,QAAA,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;AAEtD,QAAA,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,IAAI,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE;AACxE,YAAA,MAAM,WAAW,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,CAAC;YAEvE,MAAM,YAAY,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC;AAE9F,YAAA,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE;AACjC,gBAAA,MAAM,CAAC,QAAQ,GAAG,KAAK;AACvB,gBAAA,MAAM,CAAC,aAAa,GAAG,IAAI;;iBACtB,IAAI,CAAC,WAAW,EAAE;AACvB,gBAAA,MAAM,CAAC,aAAa,GAAG,IAAI;AAC3B,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;;iBACjB,IAAI,WAAW,EAAE;AACtB,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;AACtB,gBAAA,MAAM,CAAC,aAAa,GAAG,KAAK;;iBACvB;AACL,gBAAA,MAAM,CAAC,aAAa,GAAG,KAAK;AAC5B,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;;AAGxB,YAAA,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;;;IAIhD,UAAU,CAAC,IAAsB,EAAE,KAAyB,EAAA;AAClE,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;AAClC,gBAAA,OAAO,IAAI;;AACN,iBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AACzB,gBAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;AACpD,gBAAA,IAAI,MAAM;AAAE,oBAAA,OAAO,MAAM;;;AAG7B,QAAA,OAAO,IAAI;;AAGb;;;;AAIG;AAEK,IAAA,iBAAiB,CAAC,KAAyB,EAAA;QACjD,IAAI,aAAa,GAAuB,EAAE;AAE1C,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACrB,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;;AAG1B,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,gBAAA,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;AAEhF,SAAC,CAAC;AAEF,QAAA,OAAO,aAAa;;AAGtB;;;;AAIG;AAEK,IAAA,kBAAkB,CAAC,KAAyB,EAAA;AAClD,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACtB,YAAA,KAAK,CAAC,QAAQ,GAAG,KAAK;AACtB,YAAA,IAAI,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;;AAE5C,SAAC,CAAC;;AAGJ;;;;AAIG;AAEK,IAAA,SAAS,CAAC,YAA+B,EAAA;AAC/C,QAAA,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE;AAC/B,aAAA,IAAI,CAAC,CAAC,IAAwB,KAAI;AACjC,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACvB,gBAAA,IAAI,YAAY,EAAE,EAAE,EAAE;AACpB,oBAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;;qBACnD;AACL,oBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;;;AAGhC,SAAC;aACA,OAAO,CAAC,MAAK;YACZ,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC;AAC9C,SAAC,CAAC;;AAGE,IAAA,QAAQ,CAAC,QAAyB,EAAE,SAA6B,EAAE,MAA0B,EAAA;AACnG,QAAA,IAAI,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;gBACzB,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,QAAQ,EAAE;oBAC1C,IAAI,IAAI,CAAC,iBAAiB,EAAE,KAAK,eAAe,IAAI,OAAO,CAAC,QAAQ,EAAE;AACpE,wBAAA,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;;AAEvD,oBAAA,OAAO,CAAC,SAAS,GAAG,SAAS;;qBACxB;oBACL,IAAI,OAAO,EAAE,SAAS;wBAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;;AAEjF,aAAC,CAAC;;;AAIN;;;;AAIG;AAEO,IAAA,qBAAqB,CAAC,IAA8B,EAAA;AAC5D,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC9B,QAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE;AAC9E,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC;;QAE5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAG7F,IAAA,eAAe,CAAC,IAA8B,EAAA;QACtD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE;YAClC;;AAEF,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE;YAC3B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAC3C,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI;;QAGzB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGxF,IAAA,kBAAkB,CAAC,cAAkC,EAAA;AAC3D,QAAA,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AAC/B,YAAA,KAAK,CAAC,MAAM,GAAG,KAAK;AACpB,YAAA,IAAI,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;;AAE5C,SAAC,CAAC;;AAGM,IAAA,iBAAiB,CAAC,IAA8B,EAAA;AACxD,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC9B,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC;;;AAMpC,IAAA,aAAa,CAAC,MAAuB,EAAA;QAC7C,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK;;IAGrC,cAAc,CAAC,MAAuB,EAAE,SAAkB,EAAA;QAChE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,MAAM;AACnC,YAAA,GAAG,KAAK;YACR,CAAC,MAAM,GAAG,SAAS;AACpB,SAAA,CAAC,CAAC;;AAGE,IAAA,iBAAiB,CAAC,IAAsB,EAAE,SAA0B,EAAE,KAAc,EAAA;QACzF,QAAQ,SAAS;AACf,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,MAAM,GAAG,KAAK;gBACnB;AACF,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,gBAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE;AAC9E,oBAAA,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;gBAGhG;AACF,YAAA,KAAK,SAAS;gBACZ,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,KAAK;gBAEjC;AACF,YAAA,KAAK,UAAU;gBACb,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,KAAK;gBACjC;AACF,YAAA;gBACE;;AAEJ;;;;AAIG;AAEH,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;;8GAjW1B,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,ECjBhC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,ykDA6CA,ED9BY,MAAA,EAAA,CAAA,87EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,gBAAgB,EAAE,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,uBAAuB,EAAE,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,YAAA,EAAA,eAAA,EAAA,UAAA,EAAA,WAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,mBAAmB,EAAE,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,SAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,aAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,2BAA2B,yLAAE,wBAAwB,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEjI,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;+BACE,cAAc,EAAA,aAAA,EAGT,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACtC,OAAA,EAAA,CAAC,gBAAgB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,WAAW,EAAE,2BAA2B,EAAE,wBAAwB,CAAC,EAAA,QAAA,EAAA,ykDAAA,EAAA,MAAA,EAAA,CAAA,87EAAA,CAAA,EAAA;;;MEYlI,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAdzB,YAAY;YACZ,cAAc;YACd,iBAAiB;YACjB,gBAAgB;YAChB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,eAAe;YACf,mBAAmB;YACnB,uBAAuB,CAAA,EAAA,OAAA,EAAA,CAEf,mBAAmB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAG3C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAdzB,YAAY;YACZ,cAAc;YACd,iBAAiB;YACjB,gBAAgB;YAChB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,eAAe;YACf,mBAAmB;YACnB,uBAAuB,CAAA,EAAA,CAAA,CAAA;;2FAKd,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAhB5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,iBAAiB;wBACjB,gBAAgB;wBAChB,YAAY;wBACZ,WAAW;wBACX,eAAe;wBACf,eAAe;wBACf,mBAAmB;wBACnB,uBAAuB;AACxB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;AACvD,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA;;;AC1BD;;AAEG;;;;"}
|
@@ -1,22 +1,17 @@
|
|
1
1
|
import * as i0 from '@angular/core';
|
2
2
|
import { signal, computed, inject, Injectable, ChangeDetectorRef, PLATFORM_ID, EventEmitter, HostBinding, Output, Input, Directive, ElementRef, ViewEncapsulation, Component, input, NgModule } from '@angular/core';
|
3
|
-
import
|
4
|
-
import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
|
3
|
+
import { AXTranslationService, AXTranslatorPipe, AXTranslationModule } from '@acorex/core/translation';
|
5
4
|
import { AXUnsubscriber } from '@acorex/core/utils';
|
6
|
-
import
|
7
|
-
import { DOCUMENT, isPlatformBrowser, CommonModule } from '@angular/common';
|
5
|
+
import { DOCUMENT, isPlatformBrowser, AsyncPipe, NgClass, CommonModule } from '@angular/common';
|
8
6
|
import { AXPopupService, AXPopupModule } from '@acorex/components/popup';
|
9
7
|
import { AXFileService, AXFileModule } from '@acorex/core/file';
|
10
8
|
import { sumBy } from 'lodash-es';
|
11
9
|
import { Subject, BehaviorSubject, interval, switchMap, map } from 'rxjs';
|
12
10
|
import { AXClosbaleComponent, MXBaseComponent } from '@acorex/components/common';
|
13
11
|
import { trigger, state, transition, style, AUTO_STYLE, animate } from '@angular/animations';
|
14
|
-
import
|
15
|
-
import {
|
16
|
-
import
|
17
|
-
import { AXFormatModule } from '@acorex/core/format';
|
18
|
-
import * as i1$2 from '@acorex/components/decorators';
|
19
|
-
import { AXDecoratorModule } from '@acorex/components/decorators';
|
12
|
+
import { AXProgressBarComponent, AXProgressBarModule } from '@acorex/components/progress-bar';
|
13
|
+
import { AXFormatPipe, AXFormatModule } from '@acorex/core/format';
|
14
|
+
import { AXDecoratorIconComponent, AXDecoratorModule } from '@acorex/components/decorators';
|
20
15
|
import { AXButtonModule } from '@acorex/components/button';
|
21
16
|
import { AXCircularProgressModule } from '@acorex/components/circular-progress';
|
22
17
|
import { AXDateTimeModule } from '@acorex/core/date-time';
|
@@ -57,7 +52,7 @@ class AXUploadRequest {
|
|
57
52
|
this.onCancel = new Subject();
|
58
53
|
this.onStart = new Subject();
|
59
54
|
this.onFailed = new Subject();
|
60
|
-
this.onComplete = new
|
55
|
+
this.onComplete = new BehaviorSubject(null);
|
61
56
|
}
|
62
57
|
estimateTimeRemaining(bytesTransferred) {
|
63
58
|
const now = Date.now();
|
@@ -115,7 +110,7 @@ class AXUploadRequest {
|
|
115
110
|
this.bytesTransferred = this.size;
|
116
111
|
this._estimateTime.set(0);
|
117
112
|
this._progress.set(100);
|
118
|
-
this.onComplete.next();
|
113
|
+
this.onComplete.next(data);
|
119
114
|
}
|
120
115
|
}
|
121
116
|
|
@@ -146,9 +141,7 @@ class AXUploaderService {
|
|
146
141
|
this.popupService
|
147
142
|
.open(c.AXUploaderListComponent, {
|
148
143
|
size: 'sm',
|
149
|
-
title: filesCount > 1
|
150
|
-
? this.translateService.translateSync('uploader.zone.uploadFiles')
|
151
|
-
: this.translateService.translateSync('uploader.zone.uploadFile'),
|
144
|
+
title: filesCount > 1 ? this.translateService.translateSync('uploader.zone.uploadFiles') : this.translateService.translateSync('uploader.zone.uploadFile'),
|
152
145
|
})
|
153
146
|
.then(async () => {
|
154
147
|
await this.cancelAll();
|
@@ -174,7 +167,8 @@ class AXUploaderService {
|
|
174
167
|
isUserInteraction: false,
|
175
168
|
});
|
176
169
|
});
|
177
|
-
c.onComplete.subscribe(() => {
|
170
|
+
c.onComplete.subscribe((data) => {
|
171
|
+
Object.assign(c, { metaData: data });
|
178
172
|
this.onFileUploadComplete.next({
|
179
173
|
component: this,
|
180
174
|
uploadedFile: c,
|
@@ -228,10 +222,10 @@ class AXUploaderService {
|
|
228
222
|
currentValue = currentValue.filter((c) => c != item);
|
229
223
|
this.files$.next(currentValue);
|
230
224
|
}
|
231
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
232
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.
|
225
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
226
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderService, providedIn: 'root' }); }
|
233
227
|
}
|
234
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderService, decorators: [{
|
235
229
|
type: Injectable,
|
236
230
|
args: [{ providedIn: 'root' }]
|
237
231
|
}] });
|
@@ -261,14 +255,18 @@ class AXUploaderZoneDirective {
|
|
261
255
|
this.onFilesUploadComplete.next(c);
|
262
256
|
});
|
263
257
|
//
|
264
|
-
|
258
|
+
setTimeout(() => {
|
259
|
+
const browseHandlers = this.element.querySelectorAll('[data-ax-uploader-browse-handle="true"]');
|
260
|
+
if (browseHandlers.length <= 0)
|
261
|
+
this.element.addEventListener('click', this.browser.bind(this), true);
|
262
|
+
});
|
265
263
|
this.element.addEventListener('dragenter', this.handleDragEnter.bind(this), true);
|
266
264
|
this.element.addEventListener('dragover', this.handleDragOver.bind(this), true);
|
267
265
|
this.element.addEventListener('drop', this.handleOnDrop.bind(this), true);
|
268
266
|
this.element.addEventListener('dragleave', this.removeZone.bind(this), true);
|
269
267
|
}
|
270
268
|
ngOnDestroy() {
|
271
|
-
this.element.
|
269
|
+
this.element.removeEventListener('click', this.browser.bind(this));
|
272
270
|
this.element.removeEventListener('dragenter', this.handleDragEnter.bind(this));
|
273
271
|
this.element.removeEventListener('drop', this.handleOnDrop.bind(this));
|
274
272
|
this.element.removeEventListener('dragover', this.handleDragOver.bind(this));
|
@@ -327,15 +325,14 @@ class AXUploaderZoneDirective {
|
|
327
325
|
get __hostClass() {
|
328
326
|
return `ax-drop-zone`;
|
329
327
|
}
|
330
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
331
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.
|
328
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderZoneDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
329
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.8", type: AXUploaderZoneDirective, isStandalone: true, selector: "[axUploaderZone]", inputs: { multiple: "multiple", accept: "accept" }, outputs: { onChanged: "onChanged", onFileUploadComplete: "onFileUploadComplete", onFilesUploadComplete: "onFilesUploadComplete" }, host: { properties: { "class": "this.__hostClass" } }, providers: [AXUnsubscriber], ngImport: i0 }); }
|
332
330
|
}
|
333
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
331
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderZoneDirective, decorators: [{
|
334
332
|
type: Directive,
|
335
333
|
args: [{
|
336
334
|
selector: '[axUploaderZone]',
|
337
335
|
providers: [AXUnsubscriber],
|
338
|
-
standalone: false
|
339
336
|
}]
|
340
337
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { multiple: [{
|
341
338
|
type: Input
|
@@ -359,6 +356,7 @@ class AXUploaderBrowseDirective {
|
|
359
356
|
}
|
360
357
|
ngOnInit() {
|
361
358
|
this.elemenrRef.nativeElement.addEventListener('click', this.handleClick.bind(this));
|
359
|
+
this.elemenrRef.nativeElement.dataset['axUploaderBrowseHandle'] = 'true';
|
362
360
|
}
|
363
361
|
ngOnDestroy() {
|
364
362
|
this.elemenrRef.nativeElement.removeEventListener('click', this.handleClick.bind(this));
|
@@ -366,15 +364,12 @@ class AXUploaderBrowseDirective {
|
|
366
364
|
async handleClick() {
|
367
365
|
await this.uploaderZone.browser();
|
368
366
|
}
|
369
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
370
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.
|
367
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderBrowseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
368
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.8", type: AXUploaderBrowseDirective, isStandalone: true, selector: "[axUploaderBrowseHandle]", ngImport: i0 }); }
|
371
369
|
}
|
372
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
370
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderBrowseDirective, decorators: [{
|
373
371
|
type: Directive,
|
374
|
-
args: [{
|
375
|
-
selector: '[axUploaderBrowseHandle]',
|
376
|
-
standalone: false
|
377
|
-
}]
|
372
|
+
args: [{ selector: '[axUploaderBrowseHandle]' }]
|
378
373
|
}] });
|
379
374
|
|
380
375
|
/**
|
@@ -386,12 +381,12 @@ class AXUploaderListComponent {
|
|
386
381
|
/** @ignore */
|
387
382
|
this.uploadService = inject(AXUploaderService);
|
388
383
|
}
|
389
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
390
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.
|
384
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
385
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.8", type: AXUploaderListComponent, isStandalone: true, selector: "ax-uploader-list", ngImport: i0, template: "<!-- @if ((uploadService.totalEstimateTime | async) > 0) { -->\n<div class=\"ax-uploader-progress-status\" [class.ax-hide]=\"(uploadService.totalEstimateTime | async) <= 0\">\n @if(uploadService.isAnyDetermined()){\n <span>{{'processing' | translate| async}}</span>\n }@else {\n <div>{{ uploadService.totalEstimateTime | async | format: 'timeleft' | async }}</div>\n }\n <button (click)=\"uploadService.cancelAll()\">{{ 'cancel' | translate | async }}</button>\n</div>\n<!-- } -->\n\n<ul class=\"ax-uploader-list-items\">\n @for (item of uploadService.files | async; track item.name) {\n <li>\n <div class=\"ax-file\">\n <span>{{ item.ext }}</span>\n </div>\n <div class=\"ax-item-container\">\n <div class=\"ax-item-name\" [title]=\"item.name\">{{ item.name }}</div>\n <div class=\"ax-status\">\n @switch (item.status()) {\n @case ('inprogress') {\n <span>{{ item.size | format: 'filesize' | async }}</span> / {{item.isDetermined()?( item.estimateTime() | format: 'timeleft' | async):('processing' | translate| async) }}\n }\n @case ('failed') {\n <div class=\"ax-state-failed\">\n <span>{{ item.message() }}</span>\n </div>\n }\n @case ('completed') {\n <div class=\"ax-state-completed\">\n <span>{{'completed' | translate | async}}</span>\n </div>\n }\n }\n </div>\n </div>\n <div class=\"ax-status\">\n @switch (item.status()) {\n @case ('completed') {\n <i class=\"ax-icon ax-icon-solid ax-icon-check-circle ax-state-completed\"></i>\n }\n @case ('canceled') {\n <div>\n <span class=\"ax-state-canceled\">{{ 'canceled' | translate | async }}</span>\n <!-- <i class=\"ax-icon ax-icon-solid ax-icon-redo\" (click)=\"item.redo()\" title=\"{{ 'retry' | translate | async }}\"></i> -->\n </div>\n }\n @case ('failed') {\n <div class=\"ax-state-failed\">\n <span>{{ 'failed' | translate | async }}</span>\n <i class=\"ax-icon ax-icon-solid ax-icon-redo\" (click)=\"item.redo()\" title=\"{{ 'retry' | translate | async }}\"></i>\n </div>\n }\n @default {\n <!-- <ax-circular-progress\n [mode]=\"item.isDetermined() ? 'determinate' : 'indeterminate'\"\n [size]=\"22\"\n [stroke]=\"6\"\n [progress]=\"item.isDetermined() ? item.progress() : 60\"\n class=\"ax-show\"\n >\n </ax-circular-progress> -->\n <i class=\"ax-icon ax-icon-solid ax-icon-close\" (click)=\"item.cancel()\" title=\"{{ 'cancel' | translate | async }}\"></i>\n }\n }\n </div>\n </li>\n @let completed = item.status() === 'completed';\n @if (item.status() === 'inprogress' || completed) {\n <div class=\"ax-status-loading\" [class.ax-status-loading-hide]=\"completed\">\n <ax-progress-bar\n [height]=\"4\"\n [mode]=\"completed ? 'determinate' : 'indeterminate'\"\n [progress]=\"completed ? 100 : 60\"\n [color]=\"completed ? 'success' : 'primary'\"\n ></ax-progress-bar>\n </div>\n }\n }\n</ul>\n", styles: ["ax-uploader-list .ax-uploader-progress-status{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;border-top-width:1px;border-color:rgba(var(--ax-sys-color-primary-lightest-surface));background-color:rgba(var(--ax-sys-color-primary-lightest-surface));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;color:rgba(var(--ax-sys-color-on-primary-lightest-surface));transition:.3s ease-out}ax-uploader-list .ax-uploader-progress-status.ax-hide{opacity:0;overflow:hidden;height:0;padding-top:0;padding-bottom:0;transition:.3s ease-out}ax-uploader-list .ax-uploader-list-items{max-height:75vh;width:100%;overflow-y:auto;overflow-x:hidden;gap:.5rem;display:flex;flex-direction:column}ax-uploader-list .ax-uploader-list-items li{display:flex;padding:.5rem 1rem;align-items:center;font-size:.875rem;line-height:1.25rem;gap:1rem;width:100%}ax-uploader-list .ax-uploader-list-items li .ax-item-container{display:flex;flex-direction:column;flex:1;-webkit-user-select:none;user-select:none}ax-uploader-list .ax-uploader-list-items li .ax-item-container .ax-item-name{font-size:.875rem;line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;width:12rem}ax-uploader-list .ax-uploader-list-items li .ax-status{position:relative;color:rgba(var(--ax-sys-color-on-surface),.5)}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-icon{font-size:1.375rem}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-icon-close{cursor:pointer}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-canceled span{color:rgba(var(--ax-sys-color-secondary-surface))}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-failed{display:flex;align-items:center;gap:.5rem}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-failed span{color:rgba(var(--ax-sys-color-danger-surface))}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-failed i{cursor:pointer}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-completed{color:rgba(var(--ax-sys-color-success-surface))}ax-uploader-list .ax-uploader-list-items li:hover .ax-hide{display:flex!important}ax-uploader-list .ax-uploader-list-items li:hover .ax-show{display:none!important}ax-uploader-list .ax-uploader-list-items li .ax-show{display:flex!important}ax-uploader-list .ax-uploader-list-items li .ax-hide{display:none!important}ax-uploader-list .ax-uploader-list-items .ax-status-loading.ax-status-loading-hide{transition:all 1s linear;opacity:0;overflow:hidden}.ax-file{position:relative;display:flex;align-items:center;justify-content:center;width:1.5rem;aspect-ratio:.7;border-radius:.25rem;color:rgba(var(--ax-sys-color-light-surface));background-color:rgba(var(--ax-sys-color-success-surface))!important}.ax-file>*{position:absolute;bottom:.3rem;font-weight:700;font-size:.65rem;line-height:.65rem}.ax-file:before{content:\"\";position:absolute;top:0;right:0;border-width:0 12px 12px 0;border-color:rgba(var(--ax-sys-color-surface)) rgba(var(--ax-sys-color-surface)) rgba(var(--ax-sys-color-on-surface),.3) rgba(var(--ax-sys-color-on-surface),.3)}\n"], dependencies: [{ kind: "component", type: AXProgressBarComponent, selector: "ax-progress-bar", inputs: ["color", "mode", "progress", "height"], outputs: ["ValueChange", "sizeChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AXFormatPipe, name: "format" }], encapsulation: i0.ViewEncapsulation.None }); }
|
391
386
|
}
|
392
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
387
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderListComponent, decorators: [{
|
393
388
|
type: Component,
|
394
|
-
args: [{ selector: 'ax-uploader-list', encapsulation: ViewEncapsulation.None,
|
389
|
+
args: [{ selector: 'ax-uploader-list', encapsulation: ViewEncapsulation.None, imports: [AXProgressBarComponent, AsyncPipe, AXTranslatorPipe, AXFormatPipe], template: "<!-- @if ((uploadService.totalEstimateTime | async) > 0) { -->\n<div class=\"ax-uploader-progress-status\" [class.ax-hide]=\"(uploadService.totalEstimateTime | async) <= 0\">\n @if(uploadService.isAnyDetermined()){\n <span>{{'processing' | translate| async}}</span>\n }@else {\n <div>{{ uploadService.totalEstimateTime | async | format: 'timeleft' | async }}</div>\n }\n <button (click)=\"uploadService.cancelAll()\">{{ 'cancel' | translate | async }}</button>\n</div>\n<!-- } -->\n\n<ul class=\"ax-uploader-list-items\">\n @for (item of uploadService.files | async; track item.name) {\n <li>\n <div class=\"ax-file\">\n <span>{{ item.ext }}</span>\n </div>\n <div class=\"ax-item-container\">\n <div class=\"ax-item-name\" [title]=\"item.name\">{{ item.name }}</div>\n <div class=\"ax-status\">\n @switch (item.status()) {\n @case ('inprogress') {\n <span>{{ item.size | format: 'filesize' | async }}</span> / {{item.isDetermined()?( item.estimateTime() | format: 'timeleft' | async):('processing' | translate| async) }}\n }\n @case ('failed') {\n <div class=\"ax-state-failed\">\n <span>{{ item.message() }}</span>\n </div>\n }\n @case ('completed') {\n <div class=\"ax-state-completed\">\n <span>{{'completed' | translate | async}}</span>\n </div>\n }\n }\n </div>\n </div>\n <div class=\"ax-status\">\n @switch (item.status()) {\n @case ('completed') {\n <i class=\"ax-icon ax-icon-solid ax-icon-check-circle ax-state-completed\"></i>\n }\n @case ('canceled') {\n <div>\n <span class=\"ax-state-canceled\">{{ 'canceled' | translate | async }}</span>\n <!-- <i class=\"ax-icon ax-icon-solid ax-icon-redo\" (click)=\"item.redo()\" title=\"{{ 'retry' | translate | async }}\"></i> -->\n </div>\n }\n @case ('failed') {\n <div class=\"ax-state-failed\">\n <span>{{ 'failed' | translate | async }}</span>\n <i class=\"ax-icon ax-icon-solid ax-icon-redo\" (click)=\"item.redo()\" title=\"{{ 'retry' | translate | async }}\"></i>\n </div>\n }\n @default {\n <!-- <ax-circular-progress\n [mode]=\"item.isDetermined() ? 'determinate' : 'indeterminate'\"\n [size]=\"22\"\n [stroke]=\"6\"\n [progress]=\"item.isDetermined() ? item.progress() : 60\"\n class=\"ax-show\"\n >\n </ax-circular-progress> -->\n <i class=\"ax-icon ax-icon-solid ax-icon-close\" (click)=\"item.cancel()\" title=\"{{ 'cancel' | translate | async }}\"></i>\n }\n }\n </div>\n </li>\n @let completed = item.status() === 'completed';\n @if (item.status() === 'inprogress' || completed) {\n <div class=\"ax-status-loading\" [class.ax-status-loading-hide]=\"completed\">\n <ax-progress-bar\n [height]=\"4\"\n [mode]=\"completed ? 'determinate' : 'indeterminate'\"\n [progress]=\"completed ? 100 : 60\"\n [color]=\"completed ? 'success' : 'primary'\"\n ></ax-progress-bar>\n </div>\n }\n }\n</ul>\n", styles: ["ax-uploader-list .ax-uploader-progress-status{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;border-top-width:1px;border-color:rgba(var(--ax-sys-color-primary-lightest-surface));background-color:rgba(var(--ax-sys-color-primary-lightest-surface));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;color:rgba(var(--ax-sys-color-on-primary-lightest-surface));transition:.3s ease-out}ax-uploader-list .ax-uploader-progress-status.ax-hide{opacity:0;overflow:hidden;height:0;padding-top:0;padding-bottom:0;transition:.3s ease-out}ax-uploader-list .ax-uploader-list-items{max-height:75vh;width:100%;overflow-y:auto;overflow-x:hidden;gap:.5rem;display:flex;flex-direction:column}ax-uploader-list .ax-uploader-list-items li{display:flex;padding:.5rem 1rem;align-items:center;font-size:.875rem;line-height:1.25rem;gap:1rem;width:100%}ax-uploader-list .ax-uploader-list-items li .ax-item-container{display:flex;flex-direction:column;flex:1;-webkit-user-select:none;user-select:none}ax-uploader-list .ax-uploader-list-items li .ax-item-container .ax-item-name{font-size:.875rem;line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;width:12rem}ax-uploader-list .ax-uploader-list-items li .ax-status{position:relative;color:rgba(var(--ax-sys-color-on-surface),.5)}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-icon{font-size:1.375rem}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-icon-close{cursor:pointer}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-canceled span{color:rgba(var(--ax-sys-color-secondary-surface))}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-failed{display:flex;align-items:center;gap:.5rem}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-failed span{color:rgba(var(--ax-sys-color-danger-surface))}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-failed i{cursor:pointer}ax-uploader-list .ax-uploader-list-items li .ax-status .ax-state-completed{color:rgba(var(--ax-sys-color-success-surface))}ax-uploader-list .ax-uploader-list-items li:hover .ax-hide{display:flex!important}ax-uploader-list .ax-uploader-list-items li:hover .ax-show{display:none!important}ax-uploader-list .ax-uploader-list-items li .ax-show{display:flex!important}ax-uploader-list .ax-uploader-list-items li .ax-hide{display:none!important}ax-uploader-list .ax-uploader-list-items .ax-status-loading.ax-status-loading-hide{transition:all 1s linear;opacity:0;overflow:hidden}.ax-file{position:relative;display:flex;align-items:center;justify-content:center;width:1.5rem;aspect-ratio:.7;border-radius:.25rem;color:rgba(var(--ax-sys-color-light-surface));background-color:rgba(var(--ax-sys-color-success-surface))!important}.ax-file>*{position:absolute;bottom:.3rem;font-weight:700;font-size:.65rem;line-height:.65rem}.ax-file:before{content:\"\";position:absolute;top:0;right:0;border-width:0 12px 12px 0;border-color:rgba(var(--ax-sys-color-surface)) rgba(var(--ax-sys-color-surface)) rgba(var(--ax-sys-color-on-surface),.3) rgba(var(--ax-sys-color-on-surface),.3)}\n"] }]
|
395
390
|
}] });
|
396
391
|
|
397
392
|
var uploaderList_component = /*#__PURE__*/Object.freeze({
|
@@ -425,8 +420,8 @@ class AXUploaderDialogContainerComponent {
|
|
425
420
|
toggle() {
|
426
421
|
this.isCollapsed = !this.isCollapsed;
|
427
422
|
}
|
428
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
429
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.
|
423
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderDialogContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
424
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.8", type: AXUploaderDialogContainerComponent, isStandalone: true, selector: "ax-uploader-dialog-container", ngImport: i0, template: "<div class=\"ax-uploader-list-header\">\n <div>{{ 'Uploading' | translate | async }}</div>\n <div>\n <i\n class=\"ax-icon\"\n [ngClass]=\"{ 'ax-icon-chevron-down': !isCollapsed, 'ax-icon-chevron-up': isCollapsed }\"\n (click)=\"toggle()\"\n ></i>\n <i class=\"ax-icon ax-icon-close\" (click)=\"close()\"></i>\n </div>\n</div>\n<div [@collapse]=\"isCollapsed\">\n <ax-uploader-list></ax-uploader-list>\n</div>\n", styles: ["ax-uploader-dialog-container{display:block;background-color:rgba(var(--ax-sys-color-surface));-webkit-border-top-left-radius:.75rem;-webkit-border-top-right-radius:.75rem;-moz-border-radius-topleft:.75rem;-moz-border-radius-topright:.75rem;border-top-left-radius:.75rem;border-top-right-radius:.75rem;overflow:hidden;box-shadow:-1px -1px 10px #00000029;border:1px solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));outline-color:rgba(var(--ax-sys-color-primary-surface))}ax-uploader-dialog-container .ax-uploader-list-header{display:flex;justify-content:space-between;background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;font-weight:500;color:rgba(var(--ax-sys-color-surface-fore))}ax-uploader-dialog-container .ax-uploader-list-header .ax-icon{margin-inline-start:.5rem;cursor:pointer}ax-uploader-dialog-container .ax-uploader-list-header .ax-icon:hover{opacity:.75}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: AXUploaderListComponent, selector: "ax-uploader-list" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], animations: [
|
430
425
|
trigger('collapse', [
|
431
426
|
state('false', style({ height: AUTO_STYLE, visibility: AUTO_STYLE })),
|
432
427
|
state('true', style({ height: '0', visibility: 'hidden' })),
|
@@ -435,7 +430,7 @@ class AXUploaderDialogContainerComponent {
|
|
435
430
|
]),
|
436
431
|
], encapsulation: i0.ViewEncapsulation.None }); }
|
437
432
|
}
|
438
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
433
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderDialogContainerComponent, decorators: [{
|
439
434
|
type: Component,
|
440
435
|
args: [{ selector: 'ax-uploader-dialog-container', encapsulation: ViewEncapsulation.None, animations: [
|
441
436
|
trigger('collapse', [
|
@@ -444,7 +439,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
444
439
|
transition('false => true', animate(150 + 'ms ease-in')),
|
445
440
|
transition('true => false', animate(150 + 'ms ease-out')),
|
446
441
|
]),
|
447
|
-
],
|
442
|
+
], imports: [NgClass, AXUploaderListComponent, AsyncPipe, AXTranslatorPipe], template: "<div class=\"ax-uploader-list-header\">\n <div>{{ 'Uploading' | translate | async }}</div>\n <div>\n <i\n class=\"ax-icon\"\n [ngClass]=\"{ 'ax-icon-chevron-down': !isCollapsed, 'ax-icon-chevron-up': isCollapsed }\"\n (click)=\"toggle()\"\n ></i>\n <i class=\"ax-icon ax-icon-close\" (click)=\"close()\"></i>\n </div>\n</div>\n<div [@collapse]=\"isCollapsed\">\n <ax-uploader-list></ax-uploader-list>\n</div>\n", styles: ["ax-uploader-dialog-container{display:block;background-color:rgba(var(--ax-sys-color-surface));-webkit-border-top-left-radius:.75rem;-webkit-border-top-right-radius:.75rem;-moz-border-radius-topleft:.75rem;-moz-border-radius-topright:.75rem;border-top-left-radius:.75rem;border-top-right-radius:.75rem;overflow:hidden;box-shadow:-1px -1px 10px #00000029;border:1px solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));outline-color:rgba(var(--ax-sys-color-primary-surface))}ax-uploader-dialog-container .ax-uploader-list-header{display:flex;justify-content:space-between;background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;font-weight:500;color:rgba(var(--ax-sys-color-surface-fore))}ax-uploader-dialog-container .ax-uploader-list-header .ax-icon{margin-inline-start:.5rem;cursor:pointer}ax-uploader-dialog-container .ax-uploader-list-header .ax-icon:hover{opacity:.75}\n"] }]
|
448
443
|
}] });
|
449
444
|
|
450
445
|
/**
|
@@ -459,12 +454,12 @@ class AXUploaderDropZoneComponent extends MXBaseComponent {
|
|
459
454
|
preventRefresh() {
|
460
455
|
return false;
|
461
456
|
}
|
462
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
463
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.
|
457
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderDropZoneComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
458
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.8", type: AXUploaderDropZoneComponent, isStandalone: true, selector: "ax-uploader-drop-zone", inputs: { description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-uploader-drop-zone-container\">\n <ax-icon class=\"ax-icon ax-icon-upload\"></ax-icon>\n <div class=\"ax-uploader-drop-zone-description\">\n <span>\n {{ 'uploader.zone.drag' | translate | async }}\n <a href=\"\" (click)=\"preventRefresh()\">\n {{ 'uploader.zone.choose' | translate | async }}\n </a>\n {{ 'uploader.zone.to-upload' | translate | async }}\n </span>\n <!-- <p>SVG, PNG, JPG or GIF (MAX. 800x400px)</p> -->\n @if (description()) {\n <p>{{ description() }}</p>\n }\n </div>\n</div>\n", styles: ["ax-uploader-drop-zone{width:100%;height:100%;display:block;cursor:pointer}ax-uploader-drop-zone .ax-uploader-drop-zone-container{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:.5rem;margin:1rem;padding:1rem;gap:1rem;border:2px dashed;border-color:rgba(var(--ax-sys-color-border-lightest-surface));pointer-events:none}ax-uploader-drop-zone .ax-uploader-drop-zone-container:hover{border-color:rgba(var(--ax-sys-color-primary-surface));background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}ax-uploader-drop-zone .ax-uploader-drop-zone-container ax-icon{font-size:1.875rem;line-height:2.25rem;color:#a3a3a3;width:1.75rem;height:2rem}ax-uploader-drop-zone .ax-uploader-drop-zone-container .ax-uploader-drop-zone-description{display:flex;flex-direction:column;gap:.5rem}ax-uploader-drop-zone .ax-uploader-drop-zone-container .ax-uploader-drop-zone-description a{color:rgba(var(--ax-sys-color-primary-surface))}ax-uploader-drop-zone .ax-uploader-drop-zone-container .ax-uploader-drop-zone-description p{font-size:.875rem;line-height:1.25rem;color:#a3a3a3}\n"], dependencies: [{ kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
|
464
459
|
}
|
465
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
460
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderDropZoneComponent, decorators: [{
|
466
461
|
type: Component,
|
467
|
-
args: [{ selector: 'ax-uploader-drop-zone', encapsulation: ViewEncapsulation.None,
|
462
|
+
args: [{ selector: 'ax-uploader-drop-zone', encapsulation: ViewEncapsulation.None, imports: [AXDecoratorIconComponent, AsyncPipe, AXTranslatorPipe], template: "<div class=\"ax-uploader-drop-zone-container\">\n <ax-icon class=\"ax-icon ax-icon-upload\"></ax-icon>\n <div class=\"ax-uploader-drop-zone-description\">\n <span>\n {{ 'uploader.zone.drag' | translate | async }}\n <a href=\"\" (click)=\"preventRefresh()\">\n {{ 'uploader.zone.choose' | translate | async }}\n </a>\n {{ 'uploader.zone.to-upload' | translate | async }}\n </span>\n <!-- <p>SVG, PNG, JPG or GIF (MAX. 800x400px)</p> -->\n @if (description()) {\n <p>{{ description() }}</p>\n }\n </div>\n</div>\n", styles: ["ax-uploader-drop-zone{width:100%;height:100%;display:block;cursor:pointer}ax-uploader-drop-zone .ax-uploader-drop-zone-container{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:.5rem;margin:1rem;padding:1rem;gap:1rem;border:2px dashed;border-color:rgba(var(--ax-sys-color-border-lightest-surface));pointer-events:none}ax-uploader-drop-zone .ax-uploader-drop-zone-container:hover{border-color:rgba(var(--ax-sys-color-primary-surface));background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}ax-uploader-drop-zone .ax-uploader-drop-zone-container ax-icon{font-size:1.875rem;line-height:2.25rem;color:#a3a3a3;width:1.75rem;height:2rem}ax-uploader-drop-zone .ax-uploader-drop-zone-container .ax-uploader-drop-zone-description{display:flex;flex-direction:column;gap:.5rem}ax-uploader-drop-zone .ax-uploader-drop-zone-container .ax-uploader-drop-zone-description a{color:rgba(var(--ax-sys-color-primary-surface))}ax-uploader-drop-zone .ax-uploader-drop-zone-container .ax-uploader-drop-zone-description p{font-size:.875rem;line-height:1.25rem;color:#a3a3a3}\n"] }]
|
468
463
|
}] });
|
469
464
|
|
470
465
|
const COMPONENTS = [
|
@@ -475,12 +470,8 @@ const COMPONENTS = [
|
|
475
470
|
AXUploaderDialogContainerComponent,
|
476
471
|
];
|
477
472
|
class AXUploaderModule {
|
478
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
479
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.
|
480
|
-
AXUploaderListComponent,
|
481
|
-
AXUploaderZoneDirective,
|
482
|
-
AXUploaderBrowseDirective,
|
483
|
-
AXUploaderDialogContainerComponent], imports: [CommonModule,
|
473
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
474
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderModule, imports: [CommonModule,
|
484
475
|
AXDecoratorModule,
|
485
476
|
AXButtonModule,
|
486
477
|
AXTranslationModule,
|
@@ -489,12 +480,16 @@ class AXUploaderModule {
|
|
489
480
|
AXFileModule,
|
490
481
|
AXDateTimeModule,
|
491
482
|
AXCircularProgressModule,
|
492
|
-
AXPopupModule
|
483
|
+
AXPopupModule, AXUploaderDropZoneComponent,
|
484
|
+
AXUploaderListComponent,
|
485
|
+
AXUploaderZoneDirective,
|
486
|
+
AXUploaderBrowseDirective,
|
487
|
+
AXUploaderDialogContainerComponent], exports: [AXUploaderDropZoneComponent,
|
493
488
|
AXUploaderListComponent,
|
494
489
|
AXUploaderZoneDirective,
|
495
490
|
AXUploaderBrowseDirective,
|
496
491
|
AXUploaderDialogContainerComponent] }); }
|
497
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.
|
492
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderModule, imports: [CommonModule,
|
498
493
|
AXDecoratorModule,
|
499
494
|
AXButtonModule,
|
500
495
|
AXTranslationModule,
|
@@ -503,12 +498,13 @@ class AXUploaderModule {
|
|
503
498
|
AXFileModule,
|
504
499
|
AXDateTimeModule,
|
505
500
|
AXCircularProgressModule,
|
506
|
-
AXPopupModule
|
501
|
+
AXPopupModule, AXUploaderDropZoneComponent,
|
502
|
+
AXUploaderListComponent,
|
503
|
+
AXUploaderDialogContainerComponent] }); }
|
507
504
|
}
|
508
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
505
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.8", ngImport: i0, type: AXUploaderModule, decorators: [{
|
509
506
|
type: NgModule,
|
510
507
|
args: [{
|
511
|
-
declarations: [...COMPONENTS],
|
512
508
|
imports: [
|
513
509
|
CommonModule,
|
514
510
|
AXDecoratorModule,
|
@@ -520,6 +516,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
520
516
|
AXDateTimeModule,
|
521
517
|
AXCircularProgressModule,
|
522
518
|
AXPopupModule,
|
519
|
+
...COMPONENTS,
|
523
520
|
],
|
524
521
|
exports: [...COMPONENTS],
|
525
522
|
providers: [],
|