@acorex/components 21.0.2-next.33 → 21.0.2-next.35
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/{types/acorex-components-accordion.d.ts → accordion/index.d.ts} +1 -0
- package/{types/acorex-components-button.d.ts → button/index.d.ts} +5 -11
- package/{types/acorex-components-button-group.d.ts → button-group/index.d.ts} +12 -20
- package/{types/acorex-components-calendar.d.ts → calendar/index.d.ts} +11 -4
- package/{types/acorex-components-check-box.d.ts → check-box/index.d.ts} +1 -1
- package/{types/acorex-components-chips.d.ts → chips/index.d.ts} +8 -3
- package/collapse/README.md +3 -0
- package/collapse/index.d.ts +174 -0
- package/{types/acorex-components-color-palette.d.ts → color-palette/index.d.ts} +0 -2
- package/{types/acorex-components-conversation2.d.ts → conversation2/index.d.ts} +667 -667
- package/{types/acorex-components-data-pager.d.ts → data-pager/index.d.ts} +6 -25
- package/{types/acorex-components-data-table.d.ts → data-table/index.d.ts} +270 -12
- package/{types/acorex-components-datetime-box.d.ts → datetime-box/index.d.ts} +65 -4
- package/drawer-legacy/README.md +3 -0
- package/drawer-legacy/index.d.ts +86 -0
- package/{types/acorex-components-dropdown-button.d.ts → dropdown-button/index.d.ts} +2 -4
- package/fesm2022/acorex-components-accordion.mjs +37 -32
- package/fesm2022/acorex-components-accordion.mjs.map +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +32 -32
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +21 -21
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-aspect-ratio.mjs +6 -6
- package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +14 -15
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-autocomplete.mjs +16 -16
- package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +17 -17
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +11 -11
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +15 -15
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +14 -14
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +28 -63
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +40 -41
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +59 -41
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +12 -12
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +15 -13
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +16 -18
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-code-editor.mjs +30 -30
- package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +366 -0
- package/fesm2022/acorex-components-collapse.mjs.map +1 -0
- package/fesm2022/acorex-components-color-box.mjs +16 -16
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +44 -85
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-command.mjs +20 -20
- package/fesm2022/acorex-components-command.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +37 -37
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation.mjs +119 -119
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation2.mjs +708 -720
- package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
- package/fesm2022/acorex-components-cron-job.mjs +60 -60
- package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
- package/fesm2022/acorex-components-data-list.mjs +34 -34
- package/fesm2022/acorex-components-data-list.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +85 -94
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +522 -75
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +162 -27
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +24 -24
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +30 -30
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +49 -56
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +20 -27
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer-legacy.mjs +218 -0
- package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-drawer.mjs +26 -25
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +11 -19
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +22 -22
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-editor.mjs +15 -15
- package/fesm2022/acorex-components-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-fab.mjs +18 -18
- package/fesm2022/acorex-components-fab.mjs.map +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs +307 -0
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -0
- package/fesm2022/acorex-components-flow-chart.mjs +63 -80
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +39 -47
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +19 -18
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-image-editor.mjs +93 -93
- package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +12 -12
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +13 -13
- package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-kanban.mjs +26 -28
- package/fesm2022/acorex-components-kanban.mjs.map +1 -1
- package/fesm2022/acorex-components-kbd.mjs +17 -17
- package/fesm2022/acorex-components-kbd.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +9 -9
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +16 -16
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading-dialog.mjs +20 -20
- package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +23 -23
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-map.mjs +47 -47
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +85 -85
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +49 -49
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/{acorex-components-modal-acorex-components-modal-BGSCJ1Ux.mjs → acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs} +29 -29
- package/fesm2022/acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs.map +1 -0
- package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs +212 -0
- package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs.map +1 -0
- package/fesm2022/acorex-components-modal.mjs +1 -1
- package/fesm2022/acorex-components-navbar.mjs +9 -9
- package/fesm2022/acorex-components-navbar.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +29 -29
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box-legacy.mjs +430 -0
- package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-number-box.mjs +21 -21
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +13 -13
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-page.mjs.map +1 -1
- package/fesm2022/acorex-components-paint.mjs +65 -60
- package/fesm2022/acorex-components-paint.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +39 -31
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +10 -10
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +20 -20
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +33 -33
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +11 -11
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +25 -25
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +9 -11
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +21 -38
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +15 -16
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +9 -10
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-rail-navigation.mjs +51 -53
- package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +36 -36
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rate-picker.mjs +42 -27
- package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +39 -39
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +8 -8
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-routing-progress.mjs +8 -8
- package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-rrule.mjs +38 -38
- package/fesm2022/acorex-components-rrule.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler-picker.mjs +235 -229
- package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +406 -334
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-scss.mjs +22 -0
- package/fesm2022/acorex-components-scss.mjs.map +1 -0
- package/fesm2022/acorex-components-search-box.mjs +13 -19
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +27 -29
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list-2.mjs +15 -15
- package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +12 -12
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +44 -44
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +8 -8
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-slider.mjs +13 -13
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-sliding-item.mjs +28 -28
- package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +41 -41
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +14 -14
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +22 -22
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag-box.mjs +20 -20
- package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +10 -10
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +9 -9
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +14 -14
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +31 -29
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/fesm2022/acorex-components-time-line.mjs +21 -21
- package/fesm2022/acorex-components-time-line.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +27 -27
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-toolbar.mjs +14 -14
- package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +17 -17
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view-legacy.mjs +511 -0
- package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-tree-view.mjs +57 -57
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +18 -18
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +10 -10
- package/fesm2022/acorex-components-video-player.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +58 -58
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/file-explorer/README.md +3 -0
- package/file-explorer/index.d.ts +103 -0
- package/{types/acorex-components-flow-chart.d.ts → flow-chart/index.d.ts} +0 -4
- package/{types/acorex-components-form.d.ts → form/index.d.ts} +24 -24
- package/{types/acorex-components-grid-layout-builder.d.ts → grid-layout-builder/index.d.ts} +1 -0
- package/{types/acorex-components-loading.d.ts → loading/index.d.ts} +1 -1
- package/{types/acorex-components-menu.d.ts → menu/index.d.ts} +6 -6
- package/number-box-legacy/README.md +3 -0
- package/number-box-legacy/index.d.ts +191 -0
- package/package.json +138 -115
- package/{types/acorex-components-paint.d.ts → paint/index.d.ts} +6 -1
- package/{types/acorex-components-qrcode.d.ts → qrcode/index.d.ts} +0 -1
- package/{types/acorex-components-radio.d.ts → radio/index.d.ts} +1 -1
- package/{types/acorex-components-rate-picker.d.ts → rate-picker/index.d.ts} +15 -5
- package/{types/acorex-components-scheduler.d.ts → scheduler/index.d.ts} +20 -2
- package/{types/acorex-components-scheduler-picker.d.ts → scheduler-picker/index.d.ts} +81 -82
- package/scss/README.md +3 -0
- package/scss/index.d.ts +10 -0
- package/{types/acorex-components-select-box.d.ts → select-box/index.d.ts} +1 -2
- package/{types/acorex-components-slider.d.ts → slider/index.d.ts} +2 -2
- package/{types/acorex-components-tabs.d.ts → tabs/index.d.ts} +1 -1
- package/{types/acorex-components-tag.d.ts → tag/index.d.ts} +3 -3
- package/tree-view-legacy/README.md +3 -0
- package/tree-view-legacy/index.d.ts +184 -0
- package/fesm2022/acorex-components-modal-acorex-components-modal-BGSCJ1Ux.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-modal-content.component-CEdB5dcg.mjs +0 -214
- package/fesm2022/acorex-components-modal-modal-content.component-CEdB5dcg.mjs.map +0 -1
- package/{types/acorex-components-action-sheet.d.ts → action-sheet/index.d.ts} +0 -0
- package/{types/acorex-components-alert.d.ts → alert/index.d.ts} +0 -0
- package/{types/acorex-components-aspect-ratio.d.ts → aspect-ratio/index.d.ts} +0 -0
- package/{types/acorex-components-audio-wave.d.ts → audio-wave/index.d.ts} +0 -0
- package/{types/acorex-components-autocomplete.d.ts → autocomplete/index.d.ts} +0 -0
- package/{types/acorex-components-avatar.d.ts → avatar/index.d.ts} +0 -0
- package/{types/acorex-components-badge.d.ts → badge/index.d.ts} +0 -0
- package/{types/acorex-components-bottom-navigation.d.ts → bottom-navigation/index.d.ts} +0 -0
- package/{types/acorex-components-breadcrumbs.d.ts → breadcrumbs/index.d.ts} +0 -0
- package/{types/acorex-components-circular-progress.d.ts → circular-progress/index.d.ts} +0 -0
- package/{types/acorex-components-code-editor.d.ts → code-editor/index.d.ts} +0 -0
- package/{types/acorex-components-color-box.d.ts → color-box/index.d.ts} +0 -0
- package/{types/acorex-components-command.d.ts → command/index.d.ts} +0 -0
- package/{types/acorex-components-comment.d.ts → comment/index.d.ts} +0 -0
- package/{types/acorex-components-conversation.d.ts → conversation/index.d.ts} +0 -0
- package/{types/acorex-components-cron-job.d.ts → cron-job/index.d.ts} +0 -0
- package/{types/acorex-components-data-list.d.ts → data-list/index.d.ts} +0 -0
- package/{types/acorex-components-datetime-input.d.ts → datetime-input/index.d.ts} +0 -0
- package/{types/acorex-components-datetime-picker.d.ts → datetime-picker/index.d.ts} +0 -0
- package/{types/acorex-components-decorators.d.ts → decorators/index.d.ts} +0 -0
- package/{types/acorex-components-dialog.d.ts → dialog/index.d.ts} +0 -0
- package/{types/acorex-components-drawer.d.ts → drawer/index.d.ts} +0 -0
- package/{types/acorex-components-dropdown.d.ts → dropdown/index.d.ts} +0 -0
- package/{types/acorex-components-editor.d.ts → editor/index.d.ts} +0 -0
- package/{types/acorex-components-fab.d.ts → fab/index.d.ts} +0 -0
- package/{types/acorex-components-image.d.ts → image/index.d.ts} +0 -0
- package/{types/acorex-components-image-editor.d.ts → image-editor/index.d.ts} +0 -0
- package/{types/acorex-components.d.ts → index.d.ts} +0 -0
- package/{types/acorex-components-json-viewer.d.ts → json-viewer/index.d.ts} +0 -0
- package/{types/acorex-components-kanban.d.ts → kanban/index.d.ts} +0 -0
- package/{types/acorex-components-kbd.d.ts → kbd/index.d.ts} +0 -0
- package/{types/acorex-components-label.d.ts → label/index.d.ts} +0 -0
- package/{types/acorex-components-list.d.ts → list/index.d.ts} +0 -0
- package/{types/acorex-components-loading-dialog.d.ts → loading-dialog/index.d.ts} +0 -0
- package/{types/acorex-components-map.d.ts → map/index.d.ts} +0 -0
- package/{types/acorex-components-media-viewer.d.ts → media-viewer/index.d.ts} +0 -0
- package/{types/acorex-components-modal.d.ts → modal/index.d.ts} +0 -0
- package/{types/acorex-components-navbar.d.ts → navbar/index.d.ts} +0 -0
- package/{types/acorex-components-notification.d.ts → notification/index.d.ts} +0 -0
- package/{types/acorex-components-number-box.d.ts → number-box/index.d.ts} +0 -0
- package/{types/acorex-components-otp.d.ts → otp/index.d.ts} +0 -0
- package/{types/acorex-components-page.d.ts → page/index.d.ts} +0 -0
- package/{types/acorex-components-password-box.d.ts → password-box/index.d.ts} +0 -0
- package/{types/acorex-components-pdf-reader.d.ts → pdf-reader/index.d.ts} +0 -0
- package/{types/acorex-components-phone-box.d.ts → phone-box/index.d.ts} +0 -0
- package/{types/acorex-components-picker.d.ts → picker/index.d.ts} +0 -0
- package/{types/acorex-components-popover.d.ts → popover/index.d.ts} +0 -0
- package/{types/acorex-components-popup.d.ts → popup/index.d.ts} +0 -0
- package/{types/acorex-components-progress-bar.d.ts → progress-bar/index.d.ts} +0 -0
- package/{types/acorex-components-query-builder.d.ts → query-builder/index.d.ts} +1 -1
- /package/{types/acorex-components-rail-navigation.d.ts → rail-navigation/index.d.ts} +0 -0
- /package/{types/acorex-components-range-slider.d.ts → range-slider/index.d.ts} +0 -0
- /package/{types/acorex-components-rest-api-generator.d.ts → rest-api-generator/index.d.ts} +0 -0
- /package/{types/acorex-components-result.d.ts → result/index.d.ts} +0 -0
- /package/{types/acorex-components-routing-progress.d.ts → routing-progress/index.d.ts} +0 -0
- /package/{types/acorex-components-rrule.d.ts → rrule/index.d.ts} +0 -0
- /package/{types/acorex-components-search-box.d.ts → search-box/index.d.ts} +0 -0
- /package/{types/acorex-components-selection-list.d.ts → selection-list/index.d.ts} +0 -0
- /package/{types/acorex-components-selection-list-2.d.ts → selection-list-2/index.d.ts} +0 -0
- /package/{types/acorex-components-side-menu.d.ts → side-menu/index.d.ts} +0 -0
- /package/{types/acorex-components-skeleton.d.ts → skeleton/index.d.ts} +0 -0
- /package/{types/acorex-components-sliding-item.d.ts → sliding-item/index.d.ts} +0 -0
- /package/{types/acorex-components-step-wizard.d.ts → step-wizard/index.d.ts} +0 -0
- /package/{types/acorex-components-switch.d.ts → switch/index.d.ts} +0 -0
- /package/{types/acorex-components-tag-box.d.ts → tag-box/index.d.ts} +0 -0
- /package/{types/acorex-components-text-area.d.ts → text-area/index.d.ts} +0 -0
- /package/{types/acorex-components-text-box.d.ts → text-box/index.d.ts} +0 -0
- /package/{types/acorex-components-time-duration.d.ts → time-duration/index.d.ts} +0 -0
- /package/{types/acorex-components-time-line.d.ts → time-line/index.d.ts} +0 -0
- /package/{types/acorex-components-toast.d.ts → toast/index.d.ts} +0 -0
- /package/{types/acorex-components-toolbar.d.ts → toolbar/index.d.ts} +0 -0
- /package/{types/acorex-components-tooltip.d.ts → tooltip/index.d.ts} +0 -0
- /package/{types/acorex-components-tree-view.d.ts → tree-view/index.d.ts} +0 -0
- /package/{types/acorex-components-uploader.d.ts → uploader/index.d.ts} +0 -0
- /package/{types/acorex-components-video-player.d.ts → video-player/index.d.ts} +0 -0
- /package/{types/acorex-components-wysiwyg.d.ts → wysiwyg/index.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-datetime-picker.mjs","sources":["../../../../packages/components/datetime-picker/src/lib/datetime-picker.config.ts","../../../../packages/components/datetime-picker/src/lib/datetime-picker.component.ts","../../../../packages/components/datetime-picker/src/lib/datetime-picker.component.html","../../../../packages/components/datetime-picker/src/lib/datetime-picker.module.ts","../../../../packages/components/datetime-picker/src/acorex-components-datetime-picker.ts"],"sourcesContent":["import { AX_GLOBAL_CONFIG } from '@acorex/core/config';\nimport { InjectionToken, inject } from '@angular/core';\nimport { set } from 'lodash-es';\n\nexport interface AXDateTimePickerConfig {\n currentTimeButton: boolean;\n}\n\nexport const AX_DATETIME_PICKER_CONFIG = new InjectionToken<AXDateTimePickerConfig>('AX_DATETIME_PICKER_CONFIG', {\n providedIn: 'root',\n factory: () => {\n const global = inject(AX_GLOBAL_CONFIG);\n set(global, 'datetime-picker', AX_DATETIME_PICKER_CONFIG);\n return AXDateTimePickerDefaultConfig;\n },\n});\n\nexport const AXDateTimePickerDefaultConfig: AXDateTimePickerConfig = {\n currentTimeButton: true,\n};\n\nexport type PartialDateTimePickerConfig = Partial<AXDateTimePickerConfig>;\n\nexport function dateTimePickerConfig(config: PartialDateTimePickerConfig = {}): AXDateTimePickerConfig {\n const result = {\n ...AXDateTimePickerDefaultConfig,\n ...config,\n };\n return result;\n}\n","import {\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n AXValueChangedEvent,\n MXValueComponent,\n} from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport {\n AXCalendarComponent,\n AXCalendarNavigateEvent,\n AXCalendarNavigationLookType,\n AXDateTimePickerType,\n MXCalendarBaseComponent,\n} from '@acorex/components/calendar';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXPickerContainerComponent, AXPickerItemsComponent, AXPickerTitleComponent } from '@acorex/components/picker';\nimport { AXTabItemComponent, AXTabStripChangedEvent, AXTabsComponent } from '@acorex/components/tabs';\nimport { AXDateTime, AXDateTimeParts, TimeUnit } from '@acorex/core/date-time';\nimport { AXFormatPipe, AXFormatService } from '@acorex/core/format';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n OnInit,\n ViewChild,\n ViewEncapsulation,\n computed,\n effect,\n forwardRef,\n inject,\n input,\n linkedSignal,\n signal,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport { AXDateTimePickerConfig, AX_DATETIME_PICKER_CONFIG } from './datetime-picker.config';\n\n/**\n * allows users to select a date and time from a calendar and time picker interface.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-datetime-picker',\n templateUrl: './datetime-picker.component.html',\n styleUrls: ['./datetime-picker.component.compiled.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'placeholder',\n 'value',\n 'state',\n 'name',\n 'id',\n 'depth',\n 'activeView',\n 'minValue',\n 'maxValue',\n 'disabledDates',\n 'holidayDates',\n 'type',\n 'cellTemplate',\n 'cellClass',\n 'showNavigation',\n ],\n outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'onClick',\n 'readonlyChange',\n 'disabledChange',\n 'depthChange',\n 'typeChange',\n 'activeViewChange',\n 'disabledDatesChange',\n 'holidayDatesChange',\n 'onNavigate',\n 'onSlotClick',\n ],\n providers: [\n { provide: AXComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXFocusableComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXValuableComponent, useExisting: AXDateTimePickerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDateTimePickerComponent),\n multi: true,\n },\n ],\n imports: [\n AXTabsComponent,\n AXTabItemComponent,\n AXCalendarComponent,\n FormsModule,\n NgTemplateOutlet,\n AXButtonComponent,\n AXPickerContainerComponent,\n AXPickerTitleComponent,\n AXDecoratorGenericComponent,\n AXPickerItemsComponent,\n AsyncPipe,\n AXFormatPipe,\n AXTranslatorPipe,\n ],\n})\nexport class AXDateTimePickerComponent\n extends classes(MXCalendarBaseComponent, MXValueComponent<Date>)\n implements OnInit\n{\n private formatService = inject(AXFormatService);\n\n weekend = input<number[]>([]);\n weekdays = input<number[]>([]);\n\n /**\n * Day view navigation style of the embedded calendar.\n */\n calendarLook = input<AXCalendarNavigationLookType>('select');\n\n protected buttonText = computed(() => (this._activePart() === 'date' ? 'dateTime.today' : 'dateTime.now'));\n\n private defaultConfig: AXDateTimePickerConfig = inject(AX_DATETIME_PICKER_CONFIG);\n\n protected pickerHoursMinValue = signal<number>(null);\n protected pickerHoursMaxValue = signal<number>(null);\n protected pickerMinuteMinValue = signal<number>(null);\n protected pickerMinuteMaxValue = signal<number>(null);\n protected pickerSecondMinValue = signal<number>(null);\n protected pickerSecondMaxValue = signal<number>(null);\n\n /**\n * @ignore\n */\n private _currentTimeButton: boolean = this.defaultConfig.currentTimeButton;\n\n /**\n * Determines whether a button for selecting the current time is displayed.\n */\n @Input()\n public get currentTimeButton(): boolean {\n return this._currentTimeButton;\n }\n\n /**\n * Sets whether the button for selecting the current time is displayed.\n */\n public set currentTimeButton(v: boolean) {\n this.setOption({\n name: 'currentTimeButton',\n value: v,\n });\n }\n\n /**\n * @ignore\n */\n @ViewChild(AXTabsComponent)\n protected tabs: AXTabsComponent;\n\n /**\n * @ignore\n */\n protected hours: any[] = Array(24)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n minutes: any[] = Array(60)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n\n /**\n * @ignore\n */\n protected _parts: AXDateTimeParts = {\n year: {\n key: 'year',\n placeholder: 'yyyy',\n placeholders: ['YY', 'yy', 'YYYY', 'yyyy'],\n enabled: false,\n default: 2023,\n realValue: () =>\n this.formatService.format(this.editingDateObj(), 'datetime', this._parts.year.placeholder as any),\n },\n month: {\n key: 'month',\n placeholder: 'MM',\n placeholders: ['MMM', 'MMMM', 'MM', 'M'],\n enabled: false,\n default: 1,\n realValue: () =>\n this.formatService.format(this.editingDateObj(), 'datetime', this._parts.month.placeholder as any),\n },\n day: {\n key: 'day',\n placeholder: 'dd',\n placeholders: ['dd', 'd', 'E', 'dddd'],\n enabled: false,\n default: 1,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.day.placeholder as any),\n },\n hour: {\n key: 'hour',\n placeholder: 'HH',\n placeholders: ['HH', 'H', 'hh', 'h'],\n enabled: false,\n default: 0,\n realValue: () =>\n this.formatService.format(this.editingDateObj(), 'datetime', this._parts.hour.placeholder as any),\n },\n minute: {\n key: 'minute',\n placeholder: 'mm',\n placeholders: ['mm', 'm'],\n enabled: false,\n default: 0,\n realValue: () =>\n this.formatService.format(this.editingDateObj(), 'datetime', this._parts.minute.placeholder as any),\n },\n second: {\n key: 'second',\n placeholder: 'ss',\n placeholders: ['ss', 's'],\n enabled: false,\n default: 0,\n realValue: () =>\n this.formatService.format(this.editingDateObj(), 'datetime', this._parts.second.placeholder as any),\n },\n AMPM: {\n key: 'AMPM',\n placeholder: 'a',\n placeholders: ['a', 'A'],\n enabled: false,\n default: 0,\n typedValue: null,\n realValue: () =>\n this.formatService.format(this.editingDateObj(), 'datetime', this._parts.AMPM.placeholder as any),\n },\n };\n\n /**\n * @ignore\n */\n protected _activePart = signal<'date' | 'time'>('date');\n\n /**\n * @ignore\n */\n protected get _hasDatePart(): boolean {\n return ['year', 'month', 'day'].some((k) => this._parts[k].enabled);\n }\n\n /**\n * @ignore\n */\n protected get _hasTimePart(): boolean {\n return ['hour', 'minute', 'second'].some((k) => this._parts[k].enabled);\n }\n\n // /**\n // * @ignore\n // */\n editingDateObj = linkedSignal<AXDateTime>(() => this.calendarService.now(this.calendar()));\n\n /**\n * @description The calendar type to use for the datetime input.\n */\n calendar = input<string | null>(null);\n\n protected _calendarSystem = linkedSignal<string | null>(() => this.calendar() ?? this.type);\n\n picker = input<AXDateTimePickerType>('datetime');\n\n #effectPicker = effect(() => {\n if (this.picker() === 'time') {\n this.checkSelectedMinValue(this.editingDateObj());\n this.checkSelectedMaxValue(this.editingDateObj());\n this._activePart.set('time');\n } else if (this.picker() === 'date') {\n this._activePart.set('date');\n }\n });\n\n private _format = linkedSignal<string>(\n () => this.format() ?? this.localeService.activeProfile().formats[this.picker()]?.short ?? '',\n );\n\n /**\n * @deprecated use locale & mode instead\n */\n format = input<string | null>();\n\n #effect = effect(() => {\n const profile = this.localeService.activeProfile();\n //\n if (!this.format()) {\n this._format.set(this.format() ?? profile.formats[this.picker()]?.short ?? '');\n }\n //\n if (!this.calendar()) {\n this._calendarSystem.set(profile.calendar.system);\n }\n //\n this.type = this._calendarSystem();\n //\n this._detectParts();\n });\n\n /**\n * @ignore\n */\n override async ngOnInit() {\n super.ngOnInit();\n this._detectParts();\n\n this.minValueChange.subscribe(() => {\n this.checkSelectedMinValue(this.editingDateObj());\n });\n\n this.maxValueChange.subscribe(() => {\n this.checkSelectedMaxValue(this.editingDateObj());\n });\n }\n\n /**\n * Handles changes to the internal value of the component.\n * @param value - The new date value. If not provided, defaults to the current date.\n */\n override internalValueChanged(value?: Date): void {\n try {\n if (this.calendarService.isValidDate(value)) {\n this.editingDateObj.set(this.calendarService.create(value, this.calendar()));\n } else {\n throw new Error();\n }\n } catch {\n this.editingDateObj.set(this.calendarService.now(this.calendar()));\n }\n }\n\n /**\n * @ignore\n */\n protected _handleViewChanged(e: AXTabStripChangedEvent) {\n this._activePart.set(e.tab.key as 'date' | 'time');\n }\n\n /**\n * @ignore\n */\n protected _handlePickerOnValueChanged(e: AXValueChangedEvent<Date>, part: string) {\n if (e.isUserInteraction) {\n this.editingDateObj.set(this.editingDateObj().set(part as TimeUnit, Number(e.value['id'])));\n\n if (this.minValue) {\n const minv = this.calendarService.convert(this.minValue, this.calendar());\n // Only apply minute restrictions if we're on the same day and same hour\n if (this.editingDateObj().isAfter(this.minValue, 'day') || this.editingDateObj().hour > minv.hour) {\n this.pickerMinuteMinValue.set(null);\n } else {\n this.pickerMinuteMinValue.set(minv.minute);\n }\n }\n\n if (this.maxValue) {\n const maxv = this.calendarService.convert(this.maxValue, this.calendar());\n // Only apply minute restrictions if we're on the same day and same hour\n if (this.editingDateObj().isBefore(this.maxValue, 'day') || this.editingDateObj().hour < maxv.hour) {\n this.pickerMinuteMaxValue.set(null);\n } else {\n this.pickerMinuteMaxValue.set(maxv.minute);\n }\n }\n }\n }\n\n /**\n * @ignore\n */\n protected _handleCalendarOnNavigate(e: AXCalendarNavigateEvent) {\n this.onNavigate.emit(e);\n }\n\n /**\n * @ignore\n */\n protected _handleCalendarOnValueChanged(e: AXValueChangedEvent<Date>) {\n if (e.isUserInteraction) {\n const selectedValue = this.calendarService.create(e.value, this.calendar());\n const currentValue = this.calendarService\n .create(e.value, this.calendar())\n .set('day', selectedValue.dayOfMonth)\n .set('month', selectedValue.monthOfYear)\n .set('year', selectedValue.year);\n\n this.editingDateObj.set(currentValue);\n if (this._hasTimePart) {\n this._activePart.set('time');\n if (this.tabs && this._hasDatePart && this._hasTimePart) {\n this.tabs.select(1);\n } else {\n this.commitValue(this.editingDateObj().date, true);\n }\n } else {\n this.commitValue(this.editingDateObj().date, true);\n }\n\n this.checkSelectedMinValue(selectedValue);\n this.checkSelectedMaxValue(selectedValue);\n }\n }\n\n private checkSelectedMinValue(selectedValue: AXDateTime) {\n if (!this.minValue) return;\n if (!this.calendarService.isValidDate(this.minValue)) return;\n\n if (selectedValue.isAfter(this.minValue, 'day')) {\n this.pickerHoursMinValue.set(null);\n this.pickerMinuteMinValue.set(null);\n this.pickerSecondMinValue.set(null);\n } else {\n const minv = this.calendarService.convert(this.minValue, this.calendar());\n this.pickerHoursMinValue.set(minv.hour);\n this.pickerMinuteMinValue.set(minv.minute);\n this.pickerSecondMinValue.set(minv.second);\n }\n }\n\n private checkSelectedMaxValue(selectedValue: AXDateTime) {\n if (!this.maxValue) return;\n if (!this.calendarService.isValidDate(this.maxValue)) return;\n\n if (selectedValue.isBefore(this.maxValue, 'day')) {\n this.pickerHoursMaxValue.set(null);\n this.pickerMinuteMaxValue.set(null);\n this.pickerSecondMaxValue.set(null);\n } else {\n const maxv = this.calendarService.convert(this.maxValue, this.calendar());\n this.pickerHoursMaxValue.set(maxv.hour);\n this.pickerMinuteMaxValue.set(maxv.minute);\n this.pickerSecondMaxValue.set(maxv.second);\n }\n }\n\n /**\n * @ignore\n */\n private _detectParts() {\n Object.values(this._parts).forEach((e) => {\n e.enabled = false;\n });\n const formatParts = this._format().split(/[^a-zA-Z]+/);\n formatParts.forEach((f) => {\n const found = Object.values(this._parts).find((c) => c.placeholders.some((d) => d == f));\n if (found) {\n found.enabled = true;\n found.placeholder = f;\n }\n });\n //this.cdr.markForCheck();\n }\n\n /**\n * @ignore\n */\n protected _handleSetClick() {\n this.commitValue(this.editingDateObj().date, true);\n this.checkSelectedMinValue(this.editingDateObj());\n this.checkSelectedMaxValue(this.editingDateObj());\n }\n\n /**\n * @ignore\n */\n protected _handleNowClick() {\n this.editingDateObj.set(this.calendarService.now(this.calendar()));\n this.commitValue(this.editingDateObj().date, true);\n this.checkSelectedMinValue(this.editingDateObj());\n this.checkSelectedMaxValue(this.editingDateObj());\n }\n\n /**\n * @ignore\n */\n protected isDisabled(date: AXDateTime): boolean {\n if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {\n return this.disabledDates.some((d) => date.equal(d, 'day'));\n } else if (typeof this.disabledDates == 'function') {\n return this.disabledDates(date.date);\n }\n return false;\n }\n\n /**\n * @ignore\n */\n protected override internalSetValue(value: Date): Date | null {\n if (!value || !this.calendarService.isValidDate(value)) {\n return null;\n }\n const v = this.calendarService.convert(value, this.calendar());\n this.checkSelectedMinValue(this.calendarService.convert(v, this.calendar()));\n this.checkSelectedMaxValue(this.calendarService.convert(v, this.calendar()));\n\n if (this.isDisabled(v)) {\n return null;\n }\n\n if (this.minValue && this.calendarService.isValidDate(this.minValue) && v.isBefore(this.minValue)) {\n return this.minValue;\n }\n if (this.maxValue && this.calendarService.isValidDate(this.maxValue) && v.isAfter(this.maxValue)) {\n return this.maxValue;\n }\n\n return v.date;\n }\n\n protected isTodayDisabled(): boolean {\n const disabledDates = this.disabledDates;\n\n if (!disabledDates || !Array.isArray(disabledDates)) {\n return false;\n }\n\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n\n return disabledDates.some((disabledDate: Date) => {\n const disabled = new Date(disabledDate);\n disabled.setHours(0, 0, 0, 0);\n return today.getTime() === disabled.getTime();\n });\n }\n}\n","@if (_hasDatePart && _hasTimePart) {\n <div class=\"ax-header\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item\n [text]=\"'@acorex:dateTime.date' | translate | async\"\n [key]=\"'date'\"\n [disabled]=\"disabled\"\n ></ax-tab-item>\n <ax-tab-item\n [text]=\"'@acorex:dateTime.time' | translate | async\"\n [key]=\"'time'\"\n [disabled]=\"disabled\"\n ></ax-tab-item>\n </ax-tabs>\n </div>\n}\n<div class=\"ax-content\">\n @if (_activePart() === 'date') {\n <div class=\"ax-calendar-part\">\n <ax-calendar\n #calendar\n id=\"calendar\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [weekend]=\"weekend()\"\n [weekdays]=\"weekdays()\"\n [ngModel]=\"editingDateObj().date\"\n [minValue]=\"minValue\"\n [maxValue]=\"maxValue\"\n [disabledDates]=\"disabledDates\"\n [holidayDates]=\"holidayDates\"\n [depth]=\"depth\"\n (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\"\n [type]=\"_calendarSystem()\"\n [look]=\"calendarLook()\"\n >\n </ax-calendar>\n </div>\n }\n\n @if (_activePart() === 'time') {\n <div class=\"ax-picker-part\">\n <div class=\"ax-header\">\n @if (picker() === 'datetime') {\n {{ editingDateObj() | format: 'time' : 'short' | async }}\n {{ editingDateObj() | format: 'date' : 'short' | async }}\n } @else {\n {{ editingDateObj() | format: picker() : 'medium' | async }}\n }\n </div>\n <div dir=\"ltr\" class=\"ax-picker-time-container\">\n @if (_parts.hour.enabled) {\n <ng-container [ngTemplateOutlet]=\"hourRef\"> </ng-container>\n }\n\n @if (_parts.minute.enabled) {\n <ng-container [ngTemplateOutlet]=\"minuteRef\"> </ng-container>\n }\n\n @if (_parts.second.enabled) {\n <ng-container [ngTemplateOutlet]=\"secondRef\"> </ng-container>\n }\n </div>\n </div>\n }\n</div>\n@if (!disabled && !readonly && (currentTimeButton || _hasTimePart)) {\n <div class=\"ax-footer\">\n <div>\n @if (currentTimeButton) {\n <ax-button\n [text]=\"`@acorex:${buttonText()}` | translate | async\"\n class=\"ax-sm\"\n (onClick)=\"_handleNowClick()\"\n [disabled]=\"isTodayDisabled()\"\n ></ax-button>\n }\n </div>\n <div>\n @if (_hasTimePart) {\n <ax-button\n color=\"primary\"\n [text]=\"'@acorex:dateTime.set' | translate | async\"\n class=\"ax-sm\"\n (onClick)=\"_handleSetClick()\"\n ></ax-button>\n }\n </div>\n </div>\n}\n\n<ng-template #hourRef>\n <ax-picker-container>\n <ax-picker-title>\n <ax-text>{{ '@acorex:dateTime.units.hour' | translate | async }}</ax-text>\n </ax-picker-title>\n <ax-picker-items\n [items]=\"hours\"\n [ngModel]=\"editingDateObj().hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [minValue]=\"pickerHoursMinValue()\"\n [maxValue]=\"pickerHoursMaxValue()\"\n ></ax-picker-items>\n </ax-picker-container>\n</ng-template>\n\n<ng-template #minuteRef>\n <ax-picker-container>\n <ax-picker-title>\n <ax-text>{{ '@acorex:dateTime.units.minute' | translate | async }}</ax-text>\n </ax-picker-title>\n <ax-picker-items\n [items]=\"minutes\"\n [ngModel]=\"editingDateObj().minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [minValue]=\"pickerMinuteMinValue()\"\n [maxValue]=\"pickerMinuteMaxValue()\"\n ></ax-picker-items>\n </ax-picker-container>\n</ng-template>\n\n<ng-template #secondRef>\n <ax-picker-container>\n <ax-picker-title>\n <ax-text>{{ '@acorex:dateTime.units.second' | translate | async }}</ax-text>\n </ax-picker-title>\n <ax-picker-items\n [items]=\"minutes\"\n [ngModel]=\"editingDateObj().second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [minValue]=\"pickerSecondMinValue()\"\n [maxValue]=\"pickerSecondMaxValue()\"\n ></ax-picker-items>\n </ax-picker-container>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { AXDateTimePickerComponent } from './datetime-picker.component';\n\n@NgModule({\n imports: [AXDateTimePickerComponent],\n exports: [AXDateTimePickerComponent],\n})\nexport class AXDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-components-datetime-picker.mjs","sources":["../tmp-esm2022/datetime-picker/lib/datetime-picker.config.js","../tmp-esm2022/datetime-picker/lib/datetime-picker.component.js","../tmp-esm2022/datetime-picker/lib/datetime-picker.module.js","../tmp-esm2022/datetime-picker/acorex-components-datetime-picker.js"],"sourcesContent":["import { AX_GLOBAL_CONFIG } from '@acorex/core/config';\nimport { InjectionToken, inject } from '@angular/core';\nimport { set } from 'lodash-es';\nexport const AX_DATETIME_PICKER_CONFIG = new InjectionToken('AX_DATETIME_PICKER_CONFIG', {\n providedIn: 'root',\n factory: () => {\n const global = inject(AX_GLOBAL_CONFIG);\n set(global, 'datetime-picker', AX_DATETIME_PICKER_CONFIG);\n return AXDateTimePickerDefaultConfig;\n },\n});\nexport const AXDateTimePickerDefaultConfig = {\n currentTimeButton: true,\n};\nexport function dateTimePickerConfig(config = {}) {\n const result = {\n ...AXDateTimePickerDefaultConfig,\n ...config,\n };\n return result;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcGlja2VyLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZGF0ZXRpbWUtcGlja2VyL3NyYy9saWIvZGF0ZXRpbWUtcGlja2VyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBTWhDLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsRUFBRTtJQUMvRyxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ1osTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDeEMsR0FBRyxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO1FBQzFELE9BQU8sNkJBQTZCLENBQUM7SUFDdkMsQ0FBQztDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUEyQjtJQUNuRSxpQkFBaUIsRUFBRSxJQUFJO0NBQ3hCLENBQUM7QUFJRixNQUFNLFVBQVUsb0JBQW9CLENBQUMsU0FBc0MsRUFBRTtJQUMzRSxNQUFNLE1BQU0sR0FBRztRQUNiLEdBQUcsNkJBQTZCO1FBQ2hDLEdBQUcsTUFBTTtLQUNWLENBQUM7SUFDRixPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhfR0xPQkFMX0NPTkZJRyB9IGZyb20gJ0BhY29yZXgvY29yZS9jb25maWcnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGVUaW1lUGlja2VyQ29uZmlnIHtcbiAgY3VycmVudFRpbWVCdXR0b246IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBBWF9EQVRFVElNRV9QSUNLRVJfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPEFYRGF0ZVRpbWVQaWNrZXJDb25maWc+KCdBWF9EQVRFVElNRV9QSUNLRVJfQ09ORklHJywge1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGZhY3Rvcnk6ICgpID0+IHtcbiAgICBjb25zdCBnbG9iYWwgPSBpbmplY3QoQVhfR0xPQkFMX0NPTkZJRyk7XG4gICAgc2V0KGdsb2JhbCwgJ2RhdGV0aW1lLXBpY2tlcicsIEFYX0RBVEVUSU1FX1BJQ0tFUl9DT05GSUcpO1xuICAgIHJldHVybiBBWERhdGVUaW1lUGlja2VyRGVmYXVsdENvbmZpZztcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgQVhEYXRlVGltZVBpY2tlckRlZmF1bHRDb25maWc6IEFYRGF0ZVRpbWVQaWNrZXJDb25maWcgPSB7XG4gIGN1cnJlbnRUaW1lQnV0dG9uOiB0cnVlLFxufTtcblxuZXhwb3J0IHR5cGUgUGFydGlhbERhdGVUaW1lUGlja2VyQ29uZmlnID0gUGFydGlhbDxBWERhdGVUaW1lUGlja2VyQ29uZmlnPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGRhdGVUaW1lUGlja2VyQ29uZmlnKGNvbmZpZzogUGFydGlhbERhdGVUaW1lUGlja2VyQ29uZmlnID0ge30pOiBBWERhdGVUaW1lUGlja2VyQ29uZmlnIHtcbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIC4uLkFYRGF0ZVRpbWVQaWNrZXJEZWZhdWx0Q29uZmlnLFxuICAgIC4uLmNvbmZpZyxcbiAgfTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==","import { AXComponent, AXFocusableComponent, AXValuableComponent, MXValueComponent, } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXCalendarComponent, MXCalendarBaseComponent, } from '@acorex/components/calendar';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXPickerContainerComponent, AXPickerItemsComponent, AXPickerTitleComponent } from '@acorex/components/picker';\nimport { AXTabItemComponent, AXTabsComponent } from '@acorex/components/tabs';\nimport { AXFormatPipe, AXFormatService } from '@acorex/core/format';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, ViewChild, ViewEncapsulation, computed, effect, forwardRef, inject, input, linkedSignal, signal, } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport { AX_DATETIME_PICKER_CONFIG } from './datetime-picker.config';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\n/**\n * allows users to select a date and time from a calendar and time picker interface.\n *\n * @category Components\n */\nexport class AXDateTimePickerComponent extends classes(MXCalendarBaseComponent, (MXValueComponent)) {\n constructor() {\n super(...arguments);\n this.formatService = inject(AXFormatService);\n this.weekend = input([], ...(ngDevMode ? [{ debugName: \"weekend\" }] : []));\n this.weekdays = input([], ...(ngDevMode ? [{ debugName: \"weekdays\" }] : []));\n /**\n * Day view navigation style of the embedded calendar.\n */\n this.calendarLook = input('select', ...(ngDevMode ? [{ debugName: \"calendarLook\" }] : []));\n this.buttonText = computed(() => (this._activePart() === 'date' ? 'dateTime.today' : 'dateTime.now'), ...(ngDevMode ? [{ debugName: \"buttonText\" }] : []));\n this.defaultConfig = inject(AX_DATETIME_PICKER_CONFIG);\n this.pickerHoursMinValue = signal(null, ...(ngDevMode ? [{ debugName: \"pickerHoursMinValue\" }] : []));\n this.pickerHoursMaxValue = signal(null, ...(ngDevMode ? [{ debugName: \"pickerHoursMaxValue\" }] : []));\n this.pickerMinuteMinValue = signal(null, ...(ngDevMode ? [{ debugName: \"pickerMinuteMinValue\" }] : []));\n this.pickerMinuteMaxValue = signal(null, ...(ngDevMode ? [{ debugName: \"pickerMinuteMaxValue\" }] : []));\n this.pickerSecondMinValue = signal(null, ...(ngDevMode ? [{ debugName: \"pickerSecondMinValue\" }] : []));\n this.pickerSecondMaxValue = signal(null, ...(ngDevMode ? [{ debugName: \"pickerSecondMaxValue\" }] : []));\n /**\n * @ignore\n */\n this._currentTimeButton = this.defaultConfig.currentTimeButton;\n /**\n * @ignore\n */\n this.hours = Array(24)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n this.minutes = Array(60)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n /**\n * @ignore\n */\n this._parts = {\n year: {\n key: 'year',\n placeholder: 'yyyy',\n placeholders: ['YY', 'yy', 'YYYY', 'yyyy'],\n enabled: false,\n default: 2023,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.year.placeholder),\n },\n month: {\n key: 'month',\n placeholder: 'MM',\n placeholders: ['MMM', 'MMMM', 'MM', 'M'],\n enabled: false,\n default: 1,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.month.placeholder),\n },\n day: {\n key: 'day',\n placeholder: 'dd',\n placeholders: ['dd', 'd', 'E', 'dddd'],\n enabled: false,\n default: 1,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.day.placeholder),\n },\n hour: {\n key: 'hour',\n placeholder: 'HH',\n placeholders: ['HH', 'H', 'hh', 'h'],\n enabled: false,\n default: 0,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.hour.placeholder),\n },\n minute: {\n key: 'minute',\n placeholder: 'mm',\n placeholders: ['mm', 'm'],\n enabled: false,\n default: 0,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.minute.placeholder),\n },\n second: {\n key: 'second',\n placeholder: 'ss',\n placeholders: ['ss', 's'],\n enabled: false,\n default: 0,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.second.placeholder),\n },\n AMPM: {\n key: 'AMPM',\n placeholder: 'a',\n placeholders: ['a', 'A'],\n enabled: false,\n default: 0,\n typedValue: null,\n realValue: () => this.formatService.format(this.editingDateObj(), 'datetime', this._parts.AMPM.placeholder),\n },\n };\n /**\n * @ignore\n */\n this._activePart = signal('date', ...(ngDevMode ? [{ debugName: \"_activePart\" }] : []));\n // /**\n // * @ignore\n // */\n this.editingDateObj = linkedSignal(() => this.calendarService.now(this.calendar()), ...(ngDevMode ? [{ debugName: \"editingDateObj\" }] : []));\n /**\n * @description The calendar type to use for the datetime input.\n */\n this.calendar = input(null, ...(ngDevMode ? [{ debugName: \"calendar\" }] : []));\n this._calendarSystem = linkedSignal(() => this.calendar() ?? this.type, ...(ngDevMode ? [{ debugName: \"_calendarSystem\" }] : []));\n this.picker = input('datetime', ...(ngDevMode ? [{ debugName: \"picker\" }] : []));\n this.#effectPicker = effect(() => {\n if (this.picker() === 'time') {\n this.checkSelectedMinValue(this.editingDateObj());\n this.checkSelectedMaxValue(this.editingDateObj());\n this._activePart.set('time');\n }\n else if (this.picker() === 'date') {\n this._activePart.set('date');\n }\n }, ...(ngDevMode ? [{ debugName: \"#effectPicker\" }] : []));\n this._format = linkedSignal(() => this.format() ?? this.localeService.activeProfile().formats[this.picker()]?.short ?? '', ...(ngDevMode ? [{ debugName: \"_format\" }] : []));\n /**\n * @deprecated use locale & mode instead\n */\n this.format = input(...(ngDevMode ? [undefined, { debugName: \"format\" }] : []));\n this.#effect = effect(() => {\n const profile = this.localeService.activeProfile();\n //\n if (!this.format()) {\n this._format.set(this.format() ?? profile.formats[this.picker()]?.short ?? '');\n }\n //\n if (!this.calendar()) {\n this._calendarSystem.set(profile.calendar.system);\n }\n //\n this.type = this._calendarSystem();\n //\n this._detectParts();\n }, ...(ngDevMode ? [{ debugName: \"#effect\" }] : []));\n }\n /**\n * Determines whether a button for selecting the current time is displayed.\n */\n get currentTimeButton() {\n return this._currentTimeButton;\n }\n /**\n * Sets whether the button for selecting the current time is displayed.\n */\n set currentTimeButton(v) {\n this.setOption({\n name: 'currentTimeButton',\n value: v,\n });\n }\n /**\n * @ignore\n */\n get _hasDatePart() {\n return ['year', 'month', 'day'].some((k) => this._parts[k].enabled);\n }\n /**\n * @ignore\n */\n get _hasTimePart() {\n return ['hour', 'minute', 'second'].some((k) => this._parts[k].enabled);\n }\n #effectPicker;\n #effect;\n /**\n * @ignore\n */\n async ngOnInit() {\n super.ngOnInit();\n this._detectParts();\n this.minValueChange.subscribe(() => {\n this.checkSelectedMinValue(this.editingDateObj());\n });\n this.maxValueChange.subscribe(() => {\n this.checkSelectedMaxValue(this.editingDateObj());\n });\n }\n /**\n * Handles changes to the internal value of the component.\n * @param value - The new date value. If not provided, defaults to the current date.\n */\n internalValueChanged(value) {\n try {\n if (this.calendarService.isValidDate(value)) {\n this.editingDateObj.set(this.calendarService.create(value, this.calendar()));\n }\n else {\n throw new Error();\n }\n }\n catch {\n this.editingDateObj.set(this.calendarService.now(this.calendar()));\n }\n }\n /**\n * @ignore\n */\n _handleViewChanged(e) {\n this._activePart.set(e.tab.key);\n }\n /**\n * @ignore\n */\n _handlePickerOnValueChanged(e, part) {\n if (e.isUserInteraction) {\n this.editingDateObj.set(this.editingDateObj().set(part, Number(e.value['id'])));\n if (this.minValue) {\n const minv = this.calendarService.convert(this.minValue, this.calendar());\n // Only apply minute restrictions if we're on the same day and same hour\n if (this.editingDateObj().isAfter(this.minValue, 'day') || this.editingDateObj().hour > minv.hour) {\n this.pickerMinuteMinValue.set(null);\n }\n else {\n this.pickerMinuteMinValue.set(minv.minute);\n }\n }\n if (this.maxValue) {\n const maxv = this.calendarService.convert(this.maxValue, this.calendar());\n // Only apply minute restrictions if we're on the same day and same hour\n if (this.editingDateObj().isBefore(this.maxValue, 'day') || this.editingDateObj().hour < maxv.hour) {\n this.pickerMinuteMaxValue.set(null);\n }\n else {\n this.pickerMinuteMaxValue.set(maxv.minute);\n }\n }\n }\n }\n /**\n * @ignore\n */\n _handleCalendarOnNavigate(e) {\n this.onNavigate.emit(e);\n }\n /**\n * @ignore\n */\n _handleCalendarOnValueChanged(e) {\n if (e.isUserInteraction) {\n const selectedValue = this.calendarService.create(e.value, this.calendar());\n const currentValue = this.calendarService\n .create(e.value, this.calendar())\n .set('day', selectedValue.dayOfMonth)\n .set('month', selectedValue.monthOfYear)\n .set('year', selectedValue.year);\n this.editingDateObj.set(currentValue);\n if (this._hasTimePart) {\n this._activePart.set('time');\n if (this.tabs && this._hasDatePart && this._hasTimePart) {\n this.tabs.select(1);\n }\n else {\n this.commitValue(this.editingDateObj().date, true);\n }\n }\n else {\n this.commitValue(this.editingDateObj().date, true);\n }\n this.checkSelectedMinValue(selectedValue);\n this.checkSelectedMaxValue(selectedValue);\n }\n }\n checkSelectedMinValue(selectedValue) {\n if (!this.minValue)\n return;\n if (!this.calendarService.isValidDate(this.minValue))\n return;\n if (selectedValue.isAfter(this.minValue, 'day')) {\n this.pickerHoursMinValue.set(null);\n this.pickerMinuteMinValue.set(null);\n this.pickerSecondMinValue.set(null);\n }\n else {\n const minv = this.calendarService.convert(this.minValue, this.calendar());\n this.pickerHoursMinValue.set(minv.hour);\n this.pickerMinuteMinValue.set(minv.minute);\n this.pickerSecondMinValue.set(minv.second);\n }\n }\n checkSelectedMaxValue(selectedValue) {\n if (!this.maxValue)\n return;\n if (!this.calendarService.isValidDate(this.maxValue))\n return;\n if (selectedValue.isBefore(this.maxValue, 'day')) {\n this.pickerHoursMaxValue.set(null);\n this.pickerMinuteMaxValue.set(null);\n this.pickerSecondMaxValue.set(null);\n }\n else {\n const maxv = this.calendarService.convert(this.maxValue, this.calendar());\n this.pickerHoursMaxValue.set(maxv.hour);\n this.pickerMinuteMaxValue.set(maxv.minute);\n this.pickerSecondMaxValue.set(maxv.second);\n }\n }\n /**\n * @ignore\n */\n _detectParts() {\n Object.values(this._parts).forEach((e) => {\n e.enabled = false;\n });\n const formatParts = this._format().split(/[^a-zA-Z]+/);\n formatParts.forEach((f) => {\n const found = Object.values(this._parts).find((c) => c.placeholders.some((d) => d == f));\n if (found) {\n found.enabled = true;\n found.placeholder = f;\n }\n });\n //this.cdr.markForCheck();\n }\n /**\n * @ignore\n */\n _handleSetClick() {\n this.commitValue(this.editingDateObj().date, true);\n this.checkSelectedMinValue(this.editingDateObj());\n this.checkSelectedMaxValue(this.editingDateObj());\n }\n /**\n * @ignore\n */\n _handleNowClick() {\n this.editingDateObj.set(this.calendarService.now(this.calendar()));\n this.commitValue(this.editingDateObj().date, true);\n this.checkSelectedMinValue(this.editingDateObj());\n this.checkSelectedMaxValue(this.editingDateObj());\n }\n /**\n * @ignore\n */\n isDisabled(date) {\n if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {\n return this.disabledDates.some((d) => date.equal(d, 'day'));\n }\n else if (typeof this.disabledDates == 'function') {\n return this.disabledDates(date.date);\n }\n return false;\n }\n /**\n * @ignore\n */\n internalSetValue(value) {\n if (!value || !this.calendarService.isValidDate(value)) {\n return null;\n }\n const v = this.calendarService.convert(value, this.calendar());\n this.checkSelectedMinValue(this.calendarService.convert(v, this.calendar()));\n this.checkSelectedMaxValue(this.calendarService.convert(v, this.calendar()));\n if (this.isDisabled(v)) {\n return null;\n }\n if (this.minValue && this.calendarService.isValidDate(this.minValue) && v.isBefore(this.minValue)) {\n return this.minValue;\n }\n if (this.maxValue && this.calendarService.isValidDate(this.maxValue) && v.isAfter(this.maxValue)) {\n return this.maxValue;\n }\n return v.date;\n }\n isTodayDisabled() {\n const disabledDates = this.disabledDates;\n if (!disabledDates || !Array.isArray(disabledDates)) {\n return false;\n }\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n return disabledDates.some((disabledDate) => {\n const disabled = new Date(disabledDate);\n disabled.setHours(0, 0, 0, 0);\n return today.getTime() === disabled.getTime();\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDateTimePickerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.3\", type: AXDateTimePickerComponent, isStandalone: true, selector: \"ax-datetime-picker\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: \"value\", publicName: \"value\", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: \"state\", publicName: \"state\", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: \"id\", publicName: \"id\", isSignal: false, isRequired: false, transformFunction: null }, depth: { classPropertyName: \"depth\", publicName: \"depth\", isSignal: false, isRequired: false, transformFunction: null }, activeView: { classPropertyName: \"activeView\", publicName: \"activeView\", isSignal: false, isRequired: false, transformFunction: null }, minValue: { classPropertyName: \"minValue\", publicName: \"minValue\", isSignal: false, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: \"maxValue\", publicName: \"maxValue\", isSignal: false, isRequired: false, transformFunction: null }, disabledDates: { classPropertyName: \"disabledDates\", publicName: \"disabledDates\", isSignal: false, isRequired: false, transformFunction: null }, holidayDates: { classPropertyName: \"holidayDates\", publicName: \"holidayDates\", isSignal: false, isRequired: false, transformFunction: null }, type: { classPropertyName: \"type\", publicName: \"type\", isSignal: false, isRequired: false, transformFunction: null }, cellTemplate: { classPropertyName: \"cellTemplate\", publicName: \"cellTemplate\", isSignal: false, isRequired: false, transformFunction: null }, cellClass: { classPropertyName: \"cellClass\", publicName: \"cellClass\", isSignal: false, isRequired: false, transformFunction: null }, showNavigation: { classPropertyName: \"showNavigation\", publicName: \"showNavigation\", isSignal: false, isRequired: false, transformFunction: null }, weekend: { classPropertyName: \"weekend\", publicName: \"weekend\", isSignal: true, isRequired: false, transformFunction: null }, weekdays: { classPropertyName: \"weekdays\", publicName: \"weekdays\", isSignal: true, isRequired: false, transformFunction: null }, calendarLook: { classPropertyName: \"calendarLook\", publicName: \"calendarLook\", isSignal: true, isRequired: false, transformFunction: null }, currentTimeButton: { classPropertyName: \"currentTimeButton\", publicName: \"currentTimeButton\", isSignal: false, isRequired: false, transformFunction: null }, calendar: { classPropertyName: \"calendar\", publicName: \"calendar\", isSignal: true, isRequired: false, transformFunction: null }, picker: { classPropertyName: \"picker\", publicName: \"picker\", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: \"format\", publicName: \"format\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: \"valueChange\", stateChange: \"stateChange\", onValueChanged: \"onValueChanged\", onBlur: \"onBlur\", onFocus: \"onFocus\", onClick: \"onClick\", readonlyChange: \"readonlyChange\", disabledChange: \"disabledChange\", depthChange: \"depthChange\", typeChange: \"typeChange\", activeViewChange: \"activeViewChange\", disabledDatesChange: \"disabledDatesChange\", holidayDatesChange: \"holidayDatesChange\", onNavigate: \"onNavigate\", onSlotClick: \"onSlotClick\" }, providers: [\n { provide: AXComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXFocusableComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXValuableComponent, useExisting: AXDateTimePickerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDateTimePickerComponent),\n multi: true,\n },\n ], viewQueries: [{ propertyName: \"tabs\", first: true, predicate: AXTabsComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: \"@if (_hasDatePart && _hasTimePart) {\\n <div class=\\\"ax-header\\\">\\n <ax-tabs [look]=\\\"'default'\\\" [fitParent]=\\\"true\\\" [location]=\\\"'top'\\\" (onActiveTabChanged)=\\\"_handleViewChanged($event)\\\">\\n <ax-tab-item\\n [text]=\\\"'@acorex:dateTime.date' | translate | async\\\"\\n [key]=\\\"'date'\\\"\\n [disabled]=\\\"disabled\\\"\\n ></ax-tab-item>\\n <ax-tab-item\\n [text]=\\\"'@acorex:dateTime.time' | translate | async\\\"\\n [key]=\\\"'time'\\\"\\n [disabled]=\\\"disabled\\\"\\n ></ax-tab-item>\\n </ax-tabs>\\n </div>\\n}\\n<div class=\\\"ax-content\\\">\\n @if (_activePart() === 'date') {\\n <div class=\\\"ax-calendar-part\\\">\\n <ax-calendar\\n #calendar\\n id=\\\"calendar\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [weekend]=\\\"weekend()\\\"\\n [weekdays]=\\\"weekdays()\\\"\\n [ngModel]=\\\"editingDateObj().date\\\"\\n [minValue]=\\\"minValue\\\"\\n [maxValue]=\\\"maxValue\\\"\\n [disabledDates]=\\\"disabledDates\\\"\\n [holidayDates]=\\\"holidayDates\\\"\\n [depth]=\\\"depth\\\"\\n (onNavigate)=\\\"_handleCalendarOnNavigate($event)\\\"\\n (onValueChanged)=\\\"_handleCalendarOnValueChanged($event)\\\"\\n [type]=\\\"_calendarSystem()\\\"\\n [look]=\\\"calendarLook()\\\"\\n >\\n </ax-calendar>\\n </div>\\n }\\n\\n @if (_activePart() === 'time') {\\n <div class=\\\"ax-picker-part\\\">\\n <div class=\\\"ax-header\\\">\\n @if (picker() === 'datetime') {\\n {{ editingDateObj() | format: 'time' : 'short' | async }}\\n {{ editingDateObj() | format: 'date' : 'short' | async }}\\n } @else {\\n {{ editingDateObj() | format: picker() : 'medium' | async }}\\n }\\n </div>\\n <div dir=\\\"ltr\\\" class=\\\"ax-picker-time-container\\\">\\n @if (_parts.hour.enabled) {\\n <ng-container [ngTemplateOutlet]=\\\"hourRef\\\"> </ng-container>\\n }\\n\\n @if (_parts.minute.enabled) {\\n <ng-container [ngTemplateOutlet]=\\\"minuteRef\\\"> </ng-container>\\n }\\n\\n @if (_parts.second.enabled) {\\n <ng-container [ngTemplateOutlet]=\\\"secondRef\\\"> </ng-container>\\n }\\n </div>\\n </div>\\n }\\n</div>\\n@if (!disabled && !readonly && (currentTimeButton || _hasTimePart)) {\\n <div class=\\\"ax-footer\\\">\\n <div>\\n @if (currentTimeButton) {\\n <ax-button\\n [text]=\\\"`@acorex:${buttonText()}` | translate | async\\\"\\n class=\\\"ax-sm\\\"\\n (onClick)=\\\"_handleNowClick()\\\"\\n [disabled]=\\\"isTodayDisabled()\\\"\\n ></ax-button>\\n }\\n </div>\\n <div>\\n @if (_hasTimePart) {\\n <ax-button\\n color=\\\"primary\\\"\\n [text]=\\\"'@acorex:dateTime.set' | translate | async\\\"\\n class=\\\"ax-sm\\\"\\n (onClick)=\\\"_handleSetClick()\\\"\\n ></ax-button>\\n }\\n </div>\\n </div>\\n}\\n\\n<ng-template #hourRef>\\n <ax-picker-container>\\n <ax-picker-title>\\n <ax-text>{{ '@acorex:dateTime.units.hour' | translate | async }}</ax-text>\\n </ax-picker-title>\\n <ax-picker-items\\n [items]=\\\"hours\\\"\\n [ngModel]=\\\"editingDateObj().hour\\\"\\n (onValueChanged)=\\\"_handlePickerOnValueChanged($event, 'hour')\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [minValue]=\\\"pickerHoursMinValue()\\\"\\n [maxValue]=\\\"pickerHoursMaxValue()\\\"\\n ></ax-picker-items>\\n </ax-picker-container>\\n</ng-template>\\n\\n<ng-template #minuteRef>\\n <ax-picker-container>\\n <ax-picker-title>\\n <ax-text>{{ '@acorex:dateTime.units.minute' | translate | async }}</ax-text>\\n </ax-picker-title>\\n <ax-picker-items\\n [items]=\\\"minutes\\\"\\n [ngModel]=\\\"editingDateObj().minute\\\"\\n (onValueChanged)=\\\"_handlePickerOnValueChanged($event, 'minute')\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [minValue]=\\\"pickerMinuteMinValue()\\\"\\n [maxValue]=\\\"pickerMinuteMaxValue()\\\"\\n ></ax-picker-items>\\n </ax-picker-container>\\n</ng-template>\\n\\n<ng-template #secondRef>\\n <ax-picker-container>\\n <ax-picker-title>\\n <ax-text>{{ '@acorex:dateTime.units.second' | translate | async }}</ax-text>\\n </ax-picker-title>\\n <ax-picker-items\\n [items]=\\\"minutes\\\"\\n [ngModel]=\\\"editingDateObj().second\\\"\\n (onValueChanged)=\\\"_handlePickerOnValueChanged($event, 'second')\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [minValue]=\\\"pickerSecondMinValue()\\\"\\n [maxValue]=\\\"pickerSecondMaxValue()\\\"\\n ></ax-picker-items>\\n </ax-picker-container>\\n</ng-template>\\n\", styles: [\"ax-datetime-picker{display:flex;flex-direction:column}ax-datetime-picker>.ax-header{display:flex;justify-content:center;padding-top:var(--ax-comp-datetime-picker-header-padding-t, .5rem);padding-left:var(--ax-comp-datetime-picker-header-padding-x, .5rem);padding-right:var(--ax-comp-datetime-picker-header-padding-x, .5rem)}ax-datetime-picker>.ax-content{width:100%;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center}@media (min-width: 768px){ax-datetime-picker>.ax-content{width:var(--ax-comp-datetime-picker-md-width, 20rem)}}ax-datetime-picker>.ax-content .ax-picker-part{width:100%;display:flex;flex-direction:column;height:var(--ax-comp-datetime-picker-picker-part-height, 376px)}ax-datetime-picker>.ax-content .ax-picker-part .ax-picker-time-container{display:flex;height:100%}ax-datetime-picker>.ax-content .ax-picker-part>.ax-header{font-weight:500;text-align:center;padding:var(--ax-comp-datetime-picker-picker-part-header-padding, .75rem);font-size:var(--ax-comp-datetime-picker-picker-part-header-font-size, 1rem);border-bottom:solid;border-bottom-width:var(--ax-comp-datetime-picker-picker-part-header-border-width, 1px);border-bottom-color:rgba(var(--ax-comp-datetime-picker-picker-part-header-border-color, var(--ax-sys-color-border-surface)))}ax-datetime-picker>.ax-content .ax-picker-part ax-picker{flex:1 1 0%}ax-datetime-picker>.ax-content .ax-calendar-part{width:100%;padding-top:var(--ax-comp-datetime-picker-calendar-part-padding, .25rem);padding-bottom:var(--ax-comp-datetime-picker-calendar-part-padding, .25rem)}ax-datetime-picker>.ax-content .ax-calendar-part ax-calendar{width:100%}ax-datetime-picker>.ax-footer{display:flex;justify-content:space-between;padding:var(--ax-comp-datetime-picker-footer-padding, .5rem);border-color:rgba(var(--ax-comp-datetime-picker-footer-border-color, var(--ax-sys-color-border-surface)));border-top-width:var(--ax-comp-datetime-picker-footer-border-top-width, 1px)}ax-datetime-picker>.ax-footer ax-button{min-width:100px}\\n\"], dependencies: [{ kind: \"component\", type: AXTabsComponent, selector: \"ax-tabs\", inputs: [\"look\", \"location\", \"fitParent\", \"minWidth\", \"content\"], outputs: [\"onActiveTabChanged\"] }, { kind: \"component\", type: AXTabItemComponent, selector: \"ax-tab-item\", inputs: [\"disabled\", \"text\", \"key\", \"headerTemplate\", \"active\"], outputs: [\"disabledChange\", \"onClick\", \"onBlur\", \"onFocus\", \"activeChange\"] }, { kind: \"component\", type: AXCalendarComponent, selector: \"ax-calendar\", inputs: [\"rtl\", \"readonly\", \"value\", \"name\", \"disabled\", \"depth\", \"activeView\", \"minValue\", \"maxValue\", \"disabledDates\", \"holidayDates\", \"type\", \"dayCellTemplate\", \"monthCellTemplate\", \"yearCellTemplate\", \"cellClass\", \"showNavigation\", \"count\", \"id\", \"weekend\", \"weekdays\", \"look\"], outputs: [\"onOptionChanged\", \"valueChange\", \"onValueChanged\", \"minValueChange\", \"maxValueChange\", \"onBlur\", \"onFocus\", \"depthChange\", \"typeChange\", \"activeViewChange\", \"disabledDatesChange\", \"holidayDatesChange\", \"onNavigate\", \"onSlotClick\", \"countChange\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"directive\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"component\", type: AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: AXPickerContainerComponent, selector: \"ax-picker-container\", inputs: [\"class\"] }, { kind: \"component\", type: AXPickerTitleComponent, selector: \"ax-picker-title\" }, { kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXPickerItemsComponent, selector: \"ax-picker-items\", inputs: [\"disabled\", \"readonly\", \"readonlyChange\", \"disabledChange\", \"items\", \"valueField\", \"textField\", \"slidesPerGroup\", \"loop\", \"minValue\", \"maxValue\"], outputs: [\"onValueChanged\"] }, { kind: \"pipe\", type: AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: AXFormatPipe, name: \"format\" }, { kind: \"pipe\", type: AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDateTimePickerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-datetime-picker', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'placeholder',\n 'value',\n 'state',\n 'name',\n 'id',\n 'depth',\n 'activeView',\n 'minValue',\n 'maxValue',\n 'disabledDates',\n 'holidayDates',\n 'type',\n 'cellTemplate',\n 'cellClass',\n 'showNavigation',\n ], outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'onClick',\n 'readonlyChange',\n 'disabledChange',\n 'depthChange',\n 'typeChange',\n 'activeViewChange',\n 'disabledDatesChange',\n 'holidayDatesChange',\n 'onNavigate',\n 'onSlotClick',\n ], providers: [\n { provide: AXComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXFocusableComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXValuableComponent, useExisting: AXDateTimePickerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDateTimePickerComponent),\n multi: true,\n },\n ], imports: [\n AXTabsComponent,\n AXTabItemComponent,\n AXCalendarComponent,\n FormsModule,\n NgTemplateOutlet,\n AXButtonComponent,\n AXPickerContainerComponent,\n AXPickerTitleComponent,\n AXDecoratorGenericComponent,\n AXPickerItemsComponent,\n AsyncPipe,\n AXFormatPipe,\n AXTranslatorPipe,\n ], template: \"@if (_hasDatePart && _hasTimePart) {\\n <div class=\\\"ax-header\\\">\\n <ax-tabs [look]=\\\"'default'\\\" [fitParent]=\\\"true\\\" [location]=\\\"'top'\\\" (onActiveTabChanged)=\\\"_handleViewChanged($event)\\\">\\n <ax-tab-item\\n [text]=\\\"'@acorex:dateTime.date' | translate | async\\\"\\n [key]=\\\"'date'\\\"\\n [disabled]=\\\"disabled\\\"\\n ></ax-tab-item>\\n <ax-tab-item\\n [text]=\\\"'@acorex:dateTime.time' | translate | async\\\"\\n [key]=\\\"'time'\\\"\\n [disabled]=\\\"disabled\\\"\\n ></ax-tab-item>\\n </ax-tabs>\\n </div>\\n}\\n<div class=\\\"ax-content\\\">\\n @if (_activePart() === 'date') {\\n <div class=\\\"ax-calendar-part\\\">\\n <ax-calendar\\n #calendar\\n id=\\\"calendar\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [weekend]=\\\"weekend()\\\"\\n [weekdays]=\\\"weekdays()\\\"\\n [ngModel]=\\\"editingDateObj().date\\\"\\n [minValue]=\\\"minValue\\\"\\n [maxValue]=\\\"maxValue\\\"\\n [disabledDates]=\\\"disabledDates\\\"\\n [holidayDates]=\\\"holidayDates\\\"\\n [depth]=\\\"depth\\\"\\n (onNavigate)=\\\"_handleCalendarOnNavigate($event)\\\"\\n (onValueChanged)=\\\"_handleCalendarOnValueChanged($event)\\\"\\n [type]=\\\"_calendarSystem()\\\"\\n [look]=\\\"calendarLook()\\\"\\n >\\n </ax-calendar>\\n </div>\\n }\\n\\n @if (_activePart() === 'time') {\\n <div class=\\\"ax-picker-part\\\">\\n <div class=\\\"ax-header\\\">\\n @if (picker() === 'datetime') {\\n {{ editingDateObj() | format: 'time' : 'short' | async }}\\n {{ editingDateObj() | format: 'date' : 'short' | async }}\\n } @else {\\n {{ editingDateObj() | format: picker() : 'medium' | async }}\\n }\\n </div>\\n <div dir=\\\"ltr\\\" class=\\\"ax-picker-time-container\\\">\\n @if (_parts.hour.enabled) {\\n <ng-container [ngTemplateOutlet]=\\\"hourRef\\\"> </ng-container>\\n }\\n\\n @if (_parts.minute.enabled) {\\n <ng-container [ngTemplateOutlet]=\\\"minuteRef\\\"> </ng-container>\\n }\\n\\n @if (_parts.second.enabled) {\\n <ng-container [ngTemplateOutlet]=\\\"secondRef\\\"> </ng-container>\\n }\\n </div>\\n </div>\\n }\\n</div>\\n@if (!disabled && !readonly && (currentTimeButton || _hasTimePart)) {\\n <div class=\\\"ax-footer\\\">\\n <div>\\n @if (currentTimeButton) {\\n <ax-button\\n [text]=\\\"`@acorex:${buttonText()}` | translate | async\\\"\\n class=\\\"ax-sm\\\"\\n (onClick)=\\\"_handleNowClick()\\\"\\n [disabled]=\\\"isTodayDisabled()\\\"\\n ></ax-button>\\n }\\n </div>\\n <div>\\n @if (_hasTimePart) {\\n <ax-button\\n color=\\\"primary\\\"\\n [text]=\\\"'@acorex:dateTime.set' | translate | async\\\"\\n class=\\\"ax-sm\\\"\\n (onClick)=\\\"_handleSetClick()\\\"\\n ></ax-button>\\n }\\n </div>\\n </div>\\n}\\n\\n<ng-template #hourRef>\\n <ax-picker-container>\\n <ax-picker-title>\\n <ax-text>{{ '@acorex:dateTime.units.hour' | translate | async }}</ax-text>\\n </ax-picker-title>\\n <ax-picker-items\\n [items]=\\\"hours\\\"\\n [ngModel]=\\\"editingDateObj().hour\\\"\\n (onValueChanged)=\\\"_handlePickerOnValueChanged($event, 'hour')\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [minValue]=\\\"pickerHoursMinValue()\\\"\\n [maxValue]=\\\"pickerHoursMaxValue()\\\"\\n ></ax-picker-items>\\n </ax-picker-container>\\n</ng-template>\\n\\n<ng-template #minuteRef>\\n <ax-picker-container>\\n <ax-picker-title>\\n <ax-text>{{ '@acorex:dateTime.units.minute' | translate | async }}</ax-text>\\n </ax-picker-title>\\n <ax-picker-items\\n [items]=\\\"minutes\\\"\\n [ngModel]=\\\"editingDateObj().minute\\\"\\n (onValueChanged)=\\\"_handlePickerOnValueChanged($event, 'minute')\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [minValue]=\\\"pickerMinuteMinValue()\\\"\\n [maxValue]=\\\"pickerMinuteMaxValue()\\\"\\n ></ax-picker-items>\\n </ax-picker-container>\\n</ng-template>\\n\\n<ng-template #secondRef>\\n <ax-picker-container>\\n <ax-picker-title>\\n <ax-text>{{ '@acorex:dateTime.units.second' | translate | async }}</ax-text>\\n </ax-picker-title>\\n <ax-picker-items\\n [items]=\\\"minutes\\\"\\n [ngModel]=\\\"editingDateObj().second\\\"\\n (onValueChanged)=\\\"_handlePickerOnValueChanged($event, 'second')\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [minValue]=\\\"pickerSecondMinValue()\\\"\\n [maxValue]=\\\"pickerSecondMaxValue()\\\"\\n ></ax-picker-items>\\n </ax-picker-container>\\n</ng-template>\\n\", styles: [\"ax-datetime-picker{display:flex;flex-direction:column}ax-datetime-picker>.ax-header{display:flex;justify-content:center;padding-top:var(--ax-comp-datetime-picker-header-padding-t, .5rem);padding-left:var(--ax-comp-datetime-picker-header-padding-x, .5rem);padding-right:var(--ax-comp-datetime-picker-header-padding-x, .5rem)}ax-datetime-picker>.ax-content{width:100%;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center}@media (min-width: 768px){ax-datetime-picker>.ax-content{width:var(--ax-comp-datetime-picker-md-width, 20rem)}}ax-datetime-picker>.ax-content .ax-picker-part{width:100%;display:flex;flex-direction:column;height:var(--ax-comp-datetime-picker-picker-part-height, 376px)}ax-datetime-picker>.ax-content .ax-picker-part .ax-picker-time-container{display:flex;height:100%}ax-datetime-picker>.ax-content .ax-picker-part>.ax-header{font-weight:500;text-align:center;padding:var(--ax-comp-datetime-picker-picker-part-header-padding, .75rem);font-size:var(--ax-comp-datetime-picker-picker-part-header-font-size, 1rem);border-bottom:solid;border-bottom-width:var(--ax-comp-datetime-picker-picker-part-header-border-width, 1px);border-bottom-color:rgba(var(--ax-comp-datetime-picker-picker-part-header-border-color, var(--ax-sys-color-border-surface)))}ax-datetime-picker>.ax-content .ax-picker-part ax-picker{flex:1 1 0%}ax-datetime-picker>.ax-content .ax-calendar-part{width:100%;padding-top:var(--ax-comp-datetime-picker-calendar-part-padding, .25rem);padding-bottom:var(--ax-comp-datetime-picker-calendar-part-padding, .25rem)}ax-datetime-picker>.ax-content .ax-calendar-part ax-calendar{width:100%}ax-datetime-picker>.ax-footer{display:flex;justify-content:space-between;padding:var(--ax-comp-datetime-picker-footer-padding, .5rem);border-color:rgba(var(--ax-comp-datetime-picker-footer-border-color, var(--ax-sys-color-border-surface)));border-top-width:var(--ax-comp-datetime-picker-footer-border-top-width, 1px)}ax-datetime-picker>.ax-footer ax-button{min-width:100px}\\n\"] }]\n }], propDecorators: { currentTimeButton: [{\n type: Input\n }], tabs: [{\n type: ViewChild,\n args: [AXTabsComponent]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZGF0ZXRpbWUtcGlja2VyL3NyYy9saWIvZGF0ZXRpbWUtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZGF0ZXRpbWUtcGlja2VyL3NyYy9saWIvZGF0ZXRpbWUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBQ1gsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUVuQixnQkFBZ0IsR0FDakIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQ0wsbUJBQW1CLEVBSW5CLHVCQUF1QixHQUN4QixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZILE9BQU8sRUFBRSxrQkFBa0IsRUFBMEIsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdEcsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUVMLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1Ys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NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDBCQUEwQixDQUFDOzRCQUN4RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixXQUNRO3dCQUNQLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLDBCQUEwQjt3QkFDMUIsc0JBQXNCO3dCQUN0QiwyQkFBMkI7d0JBQzNCLHNCQUFzQjt3QkFDdEIsU0FBUzt3QkFDVCxZQUFZO3dCQUNaLGdCQUFnQjtxQkFDakI7OEJBb0NVLGlCQUFpQjtzQkFEM0IsS0FBSztnQkFtQkksSUFBSTtzQkFEYixTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBWENvbXBvbmVudCxcbiAgQVhGb2N1c2FibGVDb21wb25lbnQsXG4gIEFYVmFsdWFibGVDb21wb25lbnQsXG4gIEFYVmFsdWVDaGFuZ2VkRXZlbnQsXG4gIE1YVmFsdWVDb21wb25lbnQsXG59IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtcbiAgQVhDYWxlbmRhckNvbXBvbmVudCxcbiAgQVhDYWxlbmRhck5hdmlnYXRlRXZlbnQsXG4gIEFYQ2FsZW5kYXJOYXZpZ2F0aW9uTG9va1R5cGUsXG4gIEFYRGF0ZVRpbWVQaWNrZXJUeXBlLFxuICBNWENhbGVuZGFyQmFzZUNvbXBvbmVudCxcbn0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NhbGVuZGFyJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUGlja2VyQ29udGFpbmVyQ29tcG9uZW50LCBBWFBpY2tlckl0ZW1zQ29tcG9uZW50LCBBWFBpY2tlclRpdGxlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BpY2tlcic7XG5pbXBvcnQgeyBBWFRhYkl0ZW1Db21wb25lbnQsIEFYVGFiU3RyaXBDaGFuZ2VkRXZlbnQsIEFYVGFic0NvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYRGF0ZVRpbWUsIEFYRGF0ZVRpbWVQYXJ0cywgVGltZVVuaXQgfSBmcm9tICdAYWNvcmV4L2NvcmUvZGF0ZS10aW1lJztcbmltcG9ydCB7IEFYRm9ybWF0UGlwZSwgQVhGb3JtYXRTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0b3JQaXBlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBmb3J3YXJkUmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBsaW5rZWRTaWduYWwsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjbGFzc2VzIH0gZnJvbSAncG9seXR5cGUnO1xuaW1wb3J0IHsgQVhEYXRlVGltZVBpY2tlckNvbmZpZywgQVhfREFURVRJTUVfUElDS0VSX0NPTkZJRyB9IGZyb20gJy4vZGF0ZXRpbWUtcGlja2VyLmNvbmZpZyc7XG5cbi8qKlxuICogYWxsb3dzIHVzZXJzIHRvIHNlbGVjdCBhIGRhdGUgYW5kIHRpbWUgZnJvbSBhIGNhbGVuZGFyIGFuZCB0aW1lIHBpY2tlciBpbnRlcmZhY2UuXG4gKlxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtZGF0ZXRpbWUtcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGV0aW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGV0aW1lLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW5wdXRzOiBbXG4gICAgJ2Rpc2FibGVkJyxcbiAgICAncmVhZG9ubHknLFxuICAgICd0YWJJbmRleCcsXG4gICAgJ3BsYWNlaG9sZGVyJyxcbiAgICAndmFsdWUnLFxuICAgICdzdGF0ZScsXG4gICAgJ25hbWUnLFxuICAgICdpZCcsXG4gICAgJ2RlcHRoJyxcbiAgICAnYWN0aXZlVmlldycsXG4gICAgJ21pblZhbHVlJyxcbiAgICAnbWF4VmFsdWUnLFxuICAgICdkaXNhYmxlZERhdGVzJyxcbiAgICAnaG9saWRheURhdGVzJyxcbiAgICAndHlwZScsXG4gICAgJ2NlbGxUZW1wbGF0ZScsXG4gICAgJ2NlbGxDbGFzcycsXG4gICAgJ3Nob3dOYXZpZ2F0aW9uJyxcbiAgXSxcbiAgb3V0cHV0czogW1xuICAgICd2YWx1ZUNoYW5nZScsXG4gICAgJ3N0YXRlQ2hhbmdlJyxcbiAgICAnb25WYWx1ZUNoYW5nZWQnLFxuICAgICdvbkJsdXInLFxuICAgICdvbkZvY3VzJyxcbiAgICAnb25DbGljaycsXG4gICAgJ3JlYWRvbmx5Q2hhbmdlJyxcbiAgICAnZGlzYWJsZWRDaGFuZ2UnLFxuICAgICdkZXB0aENoYW5nZScsXG4gICAgJ3R5cGVDaGFuZ2UnLFxuICAgICdhY3RpdmVWaWV3Q2hhbmdlJyxcbiAgICAnZGlzYWJsZWREYXRlc0NoYW5nZScsXG4gICAgJ2hvbGlkYXlEYXRlc0NoYW5nZScsXG4gICAgJ29uTmF2aWdhdGUnLFxuICAgICdvblNsb3RDbGljaycsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWERhdGVUaW1lUGlja2VyQ29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWEZvY3VzYWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYVmFsdWFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWERhdGVUaW1lUGlja2VyQ29tcG9uZW50IH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWERhdGVUaW1lUGlja2VyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBBWFRhYnNDb21wb25lbnQsXG4gICAgQVhUYWJJdGVtQ29tcG9uZW50LFxuICAgIEFYQ2FsZW5kYXJDb21wb25lbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBBWEJ1dHRvbkNvbXBvbmVudCxcbiAgICBBWFBpY2tlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBBWFBpY2tlclRpdGxlQ29tcG9uZW50LFxuICAgIEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCxcbiAgICBBWFBpY2tlckl0ZW1zQ29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgICBBWEZvcm1hdFBpcGUsXG4gICAgQVhUcmFuc2xhdG9yUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEYXRlVGltZVBpY2tlckNvbXBvbmVudFxuICBleHRlbmRzIGNsYXNzZXMoTVhDYWxlbmRhckJhc2VDb21wb25lbnQsIE1YVmFsdWVDb21wb25lbnQ8RGF0ZT4pXG4gIGltcGxlbWVudHMgT25Jbml0XG57XG4gIHByaXZhdGUgZm9ybWF0U2VydmljZSA9IGluamVjdChBWEZvcm1hdFNlcnZpY2UpO1xuXG4gIHdlZWtlbmQgPSBpbnB1dDxudW1iZXJbXT4oW10pO1xuICB3ZWVrZGF5cyA9IGlucHV0PG51bWJlcltdPihbXSk7XG5cbiAgLyoqXG4gICAqIERheSB2aWV3IG5hdmlnYXRpb24gc3R5bGUgb2YgdGhlIGVtYmVkZGVkIGNhbGVuZGFyLlxuICAgKi9cbiAgY2FsZW5kYXJMb29rID0gaW5wdXQ8QVhDYWxlbmRhck5hdmlnYXRpb25Mb29rVHlwZT4oJ3NlbGVjdCcpO1xuXG4gIHByb3RlY3RlZCBidXR0b25UZXh0ID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuX2FjdGl2ZVBhcnQoKSA9PT0gJ2RhdGUnID8gJ2RhdGVUaW1lLnRvZGF5JyA6ICdkYXRlVGltZS5ub3cnKSk7XG5cbiAgcHJpdmF0ZSBkZWZhdWx0Q29uZmlnOiBBWERhdGVUaW1lUGlja2VyQ29uZmlnID0gaW5qZWN0KEFYX0RBVEVUSU1FX1BJQ0tFUl9DT05GSUcpO1xuXG4gIHByb3RlY3RlZCBwaWNrZXJIb3Vyc01pblZhbHVlID0gc2lnbmFsPG51bWJlcj4obnVsbCk7XG4gIHByb3RlY3RlZCBwaWNrZXJIb3Vyc01heFZhbHVlID0gc2lnbmFsPG51bWJlcj4obnVsbCk7XG4gIHByb3RlY3RlZCBwaWNrZXJNaW51dGVNaW5WYWx1ZSA9IHNpZ25hbDxudW1iZXI+KG51bGwpO1xuICBwcm90ZWN0ZWQgcGlja2VyTWludXRlTWF4VmFsdWUgPSBzaWduYWw8bnVtYmVyPihudWxsKTtcbiAgcHJvdGVjdGVkIHBpY2tlclNlY29uZE1pblZhbHVlID0gc2lnbmFsPG51bWJlcj4obnVsbCk7XG4gIHByb3RlY3RlZCBwaWNrZXJTZWNvbmRNYXhWYWx1ZSA9IHNpZ25hbDxudW1iZXI+KG51bGwpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfY3VycmVudFRpbWVCdXR0b246IGJvb2xlYW4gPSB0aGlzLmRlZmF1bHRDb25maWcuY3VycmVudFRpbWVCdXR0b247XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBhIGJ1dHRvbiBmb3Igc2VsZWN0aW5nIHRoZSBjdXJyZW50IHRpbWUgaXMgZGlzcGxheWVkLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBjdXJyZW50VGltZUJ1dHRvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFRpbWVCdXR0b247XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB3aGV0aGVyIHRoZSBidXR0b24gZm9yIHNlbGVjdGluZyB0aGUgY3VycmVudCB0aW1lIGlzIGRpc3BsYXllZC5cbiAgICovXG4gIHB1YmxpYyBzZXQgY3VycmVudFRpbWVCdXR0b24odjogYm9vbGVhbikge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdjdXJyZW50VGltZUJ1dHRvbicsXG4gICAgICB2YWx1ZTogdixcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZChBWFRhYnNDb21wb25lbnQpXG4gIHByb3RlY3RlZCB0YWJzOiBBWFRhYnNDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgaG91cnM6IGFueVtdID0gQXJyYXkoMjQpXG4gICAgLmZpbGwoMClcbiAgICAubWFwKChtLCBpKSA9PiAoeyBpZDogaSwgdGV4dDogaSB9KSk7XG4gIG1pbnV0ZXM6IGFueVtdID0gQXJyYXkoNjApXG4gICAgLmZpbGwoMClcbiAgICAubWFwKChtLCBpKSA9PiAoeyBpZDogaSwgdGV4dDogaSB9KSk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX3BhcnRzOiBBWERhdGVUaW1lUGFydHMgPSB7XG4gICAgeWVhcjoge1xuICAgICAga2V5OiAneWVhcicsXG4gICAgICBwbGFjZWhvbGRlcjogJ3l5eXknLFxuICAgICAgcGxhY2Vob2xkZXJzOiBbJ1lZJywgJ3l5JywgJ1lZWVknLCAneXl5eSddLFxuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICBkZWZhdWx0OiAyMDIzLFxuICAgICAgcmVhbFZhbHVlOiAoKSA9PlxuICAgICAgICB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHRoaXMuZWRpdGluZ0RhdGVPYmooKSwgJ2RhdGV0aW1lJywgdGhpcy5fcGFydHMueWVhci5wbGFjZWhvbGRlciBhcyBhbnkpLFxuICAgIH0sXG4gICAgbW9udGg6IHtcbiAgICAgIGtleTogJ21vbnRoJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTU0nLFxuICAgICAgcGxhY2Vob2xkZXJzOiBbJ01NTScsICdNTU1NJywgJ01NJywgJ00nXSxcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgZGVmYXVsdDogMSxcbiAgICAgIHJlYWxWYWx1ZTogKCkgPT5cbiAgICAgICAgdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh0aGlzLmVkaXRpbmdEYXRlT2JqKCksICdkYXRldGltZScsIHRoaXMuX3BhcnRzLm1vbnRoLnBsYWNlaG9sZGVyIGFzIGFueSksXG4gICAgfSxcbiAgICBkYXk6IHtcbiAgICAgIGtleTogJ2RheScsXG4gICAgICBwbGFjZWhvbGRlcjogJ2RkJyxcbiAgICAgIHBsYWNlaG9sZGVyczogWydkZCcsICdkJywgJ0UnLCAnZGRkZCddLFxuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICBkZWZhdWx0OiAxLFxuICAgICAgcmVhbFZhbHVlOiAoKSA9PiB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHRoaXMuZWRpdGluZ0RhdGVPYmooKSwgJ2RhdGV0aW1lJywgdGhpcy5fcGFydHMuZGF5LnBsYWNlaG9sZGVyIGFzIGFueSksXG4gICAgfSxcbiAgICBob3VyOiB7XG4gICAgICBrZXk6ICdob3VyJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnSEgnLFxuICAgICAgcGxhY2Vob2xkZXJzOiBbJ0hIJywgJ0gnLCAnaGgnLCAnaCddLFxuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICBkZWZhdWx0OiAwLFxuICAgICAgcmVhbFZhbHVlOiAoKSA9PlxuICAgICAgICB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHRoaXMuZWRpdGluZ0RhdGVPYmooKSwgJ2RhdGV0aW1lJywgdGhpcy5fcGFydHMuaG91ci5wbGFjZWhvbGRlciBhcyBhbnkpLFxuICAgIH0sXG4gICAgbWludXRlOiB7XG4gICAgICBrZXk6ICdtaW51dGUnLFxuICAgICAgcGxhY2Vob2xkZXI6ICdtbScsXG4gICAgICBwbGFjZWhvbGRlcnM6IFsnbW0nLCAnbSddLFxuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICBkZWZhdWx0OiAwLFxuICAgICAgcmVhbFZhbHVlOiAoKSA9PlxuICAgICAgICB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHRoaXMuZWRpdGluZ0RhdGVPYmooKSwgJ2RhdGV0aW1lJywgdGhpcy5fcGFydHMubWludXRlLnBsYWNlaG9sZGVyIGFzIGFueSksXG4gICAgfSxcbiAgICBzZWNvbmQ6IHtcbiAgICAgIGtleTogJ3NlY29uZCcsXG4gICAgICBwbGFjZWhvbGRlcjogJ3NzJyxcbiAgICAgIHBsYWNlaG9sZGVyczogWydzcycsICdzJ10sXG4gICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgIGRlZmF1bHQ6IDAsXG4gICAgICByZWFsVmFsdWU6ICgpID0+XG4gICAgICAgIHRoaXMuZm9ybWF0U2VydmljZS5mb3JtYXQodGhpcy5lZGl0aW5nRGF0ZU9iaigpLCAnZGF0ZXRpbWUnLCB0aGlzLl9wYXJ0cy5zZWNvbmQucGxhY2Vob2xkZXIgYXMgYW55KSxcbiAgICB9LFxuICAgIEFNUE06IHtcbiAgICAgIGtleTogJ0FNUE0nLFxuICAgICAgcGxhY2Vob2xkZXI6ICdhJyxcbiAgICAgIHBsYWNlaG9sZGVyczogWydhJywgJ0EnXSxcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgZGVmYXVsdDogMCxcbiAgICAgIHR5cGVkVmFsdWU6IG51bGwsXG4gICAgICByZWFsVmFsdWU6ICgpID0+XG4gICAgICAgIHRoaXMuZm9ybWF0U2VydmljZS5mb3JtYXQodGhpcy5lZGl0aW5nRGF0ZU9iaigpLCAnZGF0ZXRpbWUnLCB0aGlzLl9wYXJ0cy5BTVBNLnBsYWNlaG9sZGVyIGFzIGFueSksXG4gICAgfSxcbiAgfTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfYWN0aXZlUGFydCA9IHNpZ25hbDwnZGF0ZScgfCAndGltZSc+KCdkYXRlJyk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IF9oYXNEYXRlUGFydCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gWyd5ZWFyJywgJ21vbnRoJywgJ2RheSddLnNvbWUoKGspID0+IHRoaXMuX3BhcnRzW2tdLmVuYWJsZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IF9oYXNUaW1lUGFydCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gWydob3VyJywgJ21pbnV0ZScsICdzZWNvbmQnXS5zb21lKChrKSA9PiB0aGlzLl9wYXJ0c1trXS5lbmFibGVkKTtcbiAgfVxuXG4gIC8vIC8qKlxuICAvLyAgKiAgQGlnbm9yZVxuICAvLyAgKi9cbiAgZWRpdGluZ0RhdGVPYmogPSBsaW5rZWRTaWduYWw8QVhEYXRlVGltZT4oKCkgPT4gdGhpcy5jYWxlbmRhclNlcnZpY2Uubm93KHRoaXMuY2FsZW5kYXIoKSkpO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIGNhbGVuZGFyIHR5cGUgdG8gdXNlIGZvciB0aGUgZGF0ZXRpbWUgaW5wdXQuXG4gICAqL1xuICBjYWxlbmRhciA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gIHByb3RlY3RlZCBfY2FsZW5kYXJTeXN0ZW0gPSBsaW5rZWRTaWduYWw8c3RyaW5nIHwgbnVsbD4oKCkgPT4gdGhpcy5jYWxlbmRhcigpID8/IHRoaXMudHlwZSk7XG5cbiAgcGlja2VyID0gaW5wdXQ8QVhEYXRlVGltZVBpY2tlclR5cGU+KCdkYXRldGltZScpO1xuXG4gICNlZmZlY3RQaWNrZXIgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGlmICh0aGlzLnBpY2tlcigpID09PSAndGltZScpIHtcbiAgICAgIHRoaXMuY2hlY2tTZWxlY3RlZE1pblZhbHVlKHRoaXMuZWRpdGluZ0RhdGVPYmooKSk7XG4gICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRNYXhWYWx1ZSh0aGlzLmVkaXRpbmdEYXRlT2JqKCkpO1xuICAgICAgdGhpcy5fYWN0aXZlUGFydC5zZXQoJ3RpbWUnKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMucGlja2VyKCkgPT09ICdkYXRlJykge1xuICAgICAgdGhpcy5fYWN0aXZlUGFydC5zZXQoJ2RhdGUnKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByaXZhdGUgX2Zvcm1hdCA9IGxpbmtlZFNpZ25hbDxzdHJpbmc+KFxuICAgICgpID0+IHRoaXMuZm9ybWF0KCkgPz8gdGhpcy5sb2NhbGVTZXJ2aWNlLmFjdGl2ZVByb2ZpbGUoKS5mb3JtYXRzW3RoaXMucGlja2VyKCldPy5zaG9ydCA/PyAnJyxcbiAgKTtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGxvY2FsZSAmIG1vZGUgaW5zdGVhZFxuICAgKi9cbiAgZm9ybWF0ID0gaW5wdXQ8c3RyaW5nIHwgbnVsbD4oKTtcblxuICAjZWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBwcm9maWxlID0gdGhpcy5sb2NhbGVTZXJ2aWNlLmFjdGl2ZVByb2ZpbGUoKTtcbiAgICAvL1xuICAgIGlmICghdGhpcy5mb3JtYXQoKSkge1xuICAgICAgdGhpcy5fZm9ybWF0LnNldCh0aGlzLmZvcm1hdCgpID8/IHByb2ZpbGUuZm9ybWF0c1t0aGlzLnBpY2tlcigpXT8uc2hvcnQgPz8gJycpO1xuICAgIH1cbiAgICAvL1xuICAgIGlmICghdGhpcy5jYWxlbmRhcigpKSB7XG4gICAgICB0aGlzLl9jYWxlbmRhclN5c3RlbS5zZXQocHJvZmlsZS5jYWxlbmRhci5zeXN0ZW0pO1xuICAgIH1cbiAgICAvL1xuICAgIHRoaXMudHlwZSA9IHRoaXMuX2NhbGVuZGFyU3lzdGVtKCk7XG4gICAgLy9cbiAgICB0aGlzLl9kZXRlY3RQYXJ0cygpO1xuICB9KTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIG92ZXJyaWRlIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5fZGV0ZWN0UGFydHMoKTtcblxuICAgIHRoaXMubWluVmFsdWVDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tTZWxlY3RlZE1pblZhbHVlKHRoaXMuZWRpdGluZ0RhdGVPYmooKSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLm1heFZhbHVlQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRNYXhWYWx1ZSh0aGlzLmVkaXRpbmdEYXRlT2JqKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgY2hhbmdlcyB0byB0aGUgaW50ZXJuYWwgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIG5ldyBkYXRlIHZhbHVlLiBJZiBub3QgcHJvdmlkZWQsIGRlZmF1bHRzIHRvIHRoZSBjdXJyZW50IGRhdGUuXG4gICAqL1xuICBvdmVycmlkZSBpbnRlcm5hbFZhbHVlQ2hhbmdlZCh2YWx1ZT86IERhdGUpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgaWYgKHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmlzVmFsaWREYXRlKHZhbHVlKSkge1xuICAgICAgICB0aGlzLmVkaXRpbmdEYXRlT2JqLnNldCh0aGlzLmNhbGVuZGFyU2VydmljZS5jcmVhdGUodmFsdWUsIHRoaXMuY2FsZW5kYXIoKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCk7XG4gICAgICB9XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aGlzLmVkaXRpbmdEYXRlT2JqLnNldCh0aGlzLmNhbGVuZGFyU2VydmljZS5ub3codGhpcy5jYWxlbmRhcigpKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX2hhbmRsZVZpZXdDaGFuZ2VkKGU6IEFYVGFiU3RyaXBDaGFuZ2VkRXZlbnQpIHtcbiAgICB0aGlzLl9hY3RpdmVQYXJ0LnNldChlLnRhYi5rZXkgYXMgJ2RhdGUnIHwgJ3RpbWUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIF9oYW5kbGVQaWNrZXJPblZhbHVlQ2hhbmdlZChlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50PERhdGU+LCBwYXJ0OiBzdHJpbmcpIHtcbiAgICBpZiAoZS5pc1VzZXJJbnRlcmFjdGlvbikge1xuICAgICAgdGhpcy5lZGl0aW5nRGF0ZU9iai5zZXQodGhpcy5lZGl0aW5nRGF0ZU9iaigpLnNldChwYXJ0IGFzIFRpbWVVbml0LCBOdW1iZXIoZS52YWx1ZVsnaWQnXSkpKTtcblxuICAgICAgaWYgKHRoaXMubWluVmFsdWUpIHtcbiAgICAgICAgY29uc3QgbWludiA9IHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmNvbnZlcnQodGhpcy5taW5WYWx1ZSwgdGhpcy5jYWxlbmRhcigpKTtcbiAgICAgICAgLy8gT25seSBhcHBseSBtaW51dGUgcmVzdHJpY3Rpb25zIGlmIHdlJ3JlIG9uIHRoZSBzYW1lIGRheSBhbmQgc2FtZSBob3VyXG4gICAgICAgIGlmICh0aGlzLmVkaXRpbmdEYXRlT2JqKCkuaXNBZnRlcih0aGlzLm1pblZhbHVlLCAnZGF5JykgfHwgdGhpcy5lZGl0aW5nRGF0ZU9iaigpLmhvdXIgPiBtaW52LmhvdXIpIHtcbiAgICAgICAgICB0aGlzLnBpY2tlck1pbnV0ZU1pblZhbHVlLnNldChudWxsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnBpY2tlck1pbnV0ZU1pblZhbHVlLnNldChtaW52Lm1pbnV0ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMubWF4VmFsdWUpIHtcbiAgICAgICAgY29uc3QgbWF4diA9IHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmNvbnZlcnQodGhpcy5tYXhWYWx1ZSwgdGhpcy5jYWxlbmRhcigpKTtcbiAgICAgICAgLy8gT25seSBhcHBseSBtaW51dGUgcmVzdHJpY3Rpb25zIGlmIHdlJ3JlIG9uIHRoZSBzYW1lIGRheSBhbmQgc2FtZSBob3VyXG4gICAgICAgIGlmICh0aGlzLmVkaXRpbmdEYXRlT2JqKCkuaXNCZWZvcmUodGhpcy5tYXhWYWx1ZSwgJ2RheScpIHx8IHRoaXMuZWRpdGluZ0RhdGVPYmooKS5ob3VyIDwgbWF4di5ob3VyKSB7XG4gICAgICAgICAgdGhpcy5waWNrZXJNaW51dGVNYXhWYWx1ZS5zZXQobnVsbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5waWNrZXJNaW51dGVNYXhWYWx1ZS5zZXQobWF4di5taW51dGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX2hhbmRsZUNhbGVuZGFyT25OYXZpZ2F0ZShlOiBBWENhbGVuZGFyTmF2aWdhdGVFdmVudCkge1xuICAgIHRoaXMub25OYXZpZ2F0ZS5lbWl0KGUpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX2hhbmRsZUNhbGVuZGFyT25WYWx1ZUNoYW5nZWQoZTogQVhWYWx1ZUNoYW5nZWRFdmVudDxEYXRlPikge1xuICAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uKSB7XG4gICAgICBjb25zdCBzZWxlY3RlZFZhbHVlID0gdGhpcy5jYWxlbmRhclNlcnZpY2UuY3JlYXRlKGUudmFsdWUsIHRoaXMuY2FsZW5kYXIoKSk7XG4gICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLmNhbGVuZGFyU2VydmljZVxuICAgICAgICAuY3JlYXRlKGUudmFsdWUsIHRoaXMuY2FsZW5kYXIoKSlcbiAgICAgICAgLnNldCgnZGF5Jywgc2VsZWN0ZWRWYWx1ZS5kYXlPZk1vbnRoKVxuICAgICAgICAuc2V0KCdtb250aCcsIHNlbGVjdGVkVmFsdWUubW9udGhPZlllYXIpXG4gICAgICAgIC5zZXQoJ3llYXInLCBzZWxlY3RlZFZhbHVlLnllYXIpO1xuXG4gICAgICB0aGlzLmVkaXRpbmdEYXRlT2JqLnNldChjdXJyZW50VmFsdWUpO1xuICAgICAgaWYgKHRoaXMuX2hhc1RpbWVQYXJ0KSB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZVBhcnQuc2V0KCd0aW1lJyk7XG4gICAgICAgIGlmICh0aGlzLnRhYnMgJiYgdGhpcy5faGFzRGF0ZVBhcnQgJiYgdGhpcy5faGFzVGltZVBhcnQpIHtcbiAgICAgICAgICB0aGlzLnRhYnMuc2VsZWN0KDEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY29tbWl0VmFsdWUodGhpcy5lZGl0aW5nRGF0ZU9iaigpLmRhdGUsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbW1pdFZhbHVlKHRoaXMuZWRpdGluZ0RhdGVPYmooKS5kYXRlLCB0cnVlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jaGVja1NlbGVjdGVkTWluVmFsdWUoc2VsZWN0ZWRWYWx1ZSk7XG4gICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRNYXhWYWx1ZShzZWxlY3RlZFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNoZWNrU2VsZWN0ZWRNaW5WYWx1ZShzZWxlY3RlZFZhbHVlOiBBWERhdGVUaW1lKSB7XG4gICAgaWYgKCF0aGlzLm1pblZhbHVlKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLmNhbGVuZGFyU2VydmljZS5pc1ZhbGlkRGF0ZSh0aGlzLm1pblZhbHVlKSkgcmV0dXJuO1xuXG4gICAgaWYgKHNlbGVjdGVkVmFsdWUuaXNBZnRlcih0aGlzLm1pblZhbHVlLCAnZGF5JykpIHtcbiAgICAgIHRoaXMucGlja2VySG91cnNNaW5WYWx1ZS5zZXQobnVsbCk7XG4gICAgICB0aGlzLnBpY2tlck1pbnV0ZU1pblZhbHVlLnNldChudWxsKTtcbiAgICAgIHRoaXMucGlja2VyU2Vjb25kTWluVmFsdWUuc2V0KG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBtaW52ID0gdGhpcy5jYWxlbmRhclNlcnZpY2UuY29udmVydCh0aGlzLm1pblZhbHVlLCB0aGlzLmNhbGVuZGFyKCkpO1xuICAgICAgdGhpcy5waWNrZXJIb3Vyc01pblZhbHVlLnNldChtaW52LmhvdXIpO1xuICAgICAgdGhpcy5waWNrZXJNaW51dGVNaW5WYWx1ZS5zZXQobWludi5taW51dGUpO1xuICAgICAgdGhpcy5waWNrZXJTZWNvbmRNaW5WYWx1ZS5zZXQobWludi5zZWNvbmQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tTZWxlY3RlZE1heFZhbHVlKHNlbGVjdGVkVmFsdWU6IEFYRGF0ZVRpbWUpIHtcbiAgICBpZiAoIXRoaXMubWF4VmFsdWUpIHJldHVybjtcbiAgICBpZiAoIXRoaXMuY2FsZW5kYXJTZXJ2aWNlLmlzVmFsaWREYXRlKHRoaXMubWF4VmFsdWUpKSByZXR1cm47XG5cbiAgICBpZiAoc2VsZWN0ZWRWYWx1ZS5pc0JlZm9yZSh0aGlzLm1heFZhbHVlLCAnZGF5JykpIHtcbiAgICAgIHRoaXMucGlja2VySG91cnNNYXhWYWx1ZS5zZXQobnVsbCk7XG4gICAgICB0aGlzLnBpY2tlck1pbnV0ZU1heFZhbHVlLnNldChudWxsKTtcbiAgICAgIHRoaXMucGlja2VyU2Vjb25kTWF4VmFsdWUuc2V0KG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBtYXh2ID0gdGhpcy5jYWxlbmRhclNlcnZpY2UuY29udmVydCh0aGlzLm1heFZhbHVlLCB0aGlzLmNhbGVuZGFyKCkpO1xuICAgICAgdGhpcy5waWNrZXJIb3Vyc01heFZhbHVlLnNldChtYXh2LmhvdXIpO1xuICAgICAgdGhpcy5waWNrZXJNaW51dGVNYXhWYWx1ZS5zZXQobWF4di5taW51dGUpO1xuICAgICAgdGhpcy5waWNrZXJTZWNvbmRNYXhWYWx1ZS5zZXQobWF4di5zZWNvbmQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfZGV0ZWN0UGFydHMoKSB7XG4gICAgT2JqZWN0LnZhbHVlcyh0aGlzLl9wYXJ0cykuZm9yRWFjaCgoZSkgPT4ge1xuICAgICAgZS5lbmFibGVkID0gZmFsc2U7XG4gICAgfSk7XG4gICAgY29uc3QgZm9ybWF0UGFydHMgPSB0aGlzLl9mb3JtYXQoKS5zcGxpdCgvW15hLXpBLVpdKy8pO1xuICAgIGZvcm1hdFBhcnRzLmZvckVhY2goKGYpID0+IHtcbiAgICAgIGNvbnN0IGZvdW5kID0gT2JqZWN0LnZhbHVlcyh0aGlzLl9wYXJ0cykuZmluZCgoYykgPT4gYy5wbGFjZWhvbGRlcnMuc29tZSgoZCkgPT4gZCA9PSBmKSk7XG4gICAgICBpZiAoZm91bmQpIHtcbiAgICAgICAgZm91bmQuZW5hYmxlZCA9IHRydWU7XG4gICAgICAgIGZvdW5kLnBsYWNlaG9sZGVyID0gZjtcbiAgICAgIH1cbiAgICB9KTtcbiAgICAvL3RoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX2hhbmRsZVNldENsaWNrKCkge1xuICAgIHRoaXMuY29tbWl0VmFsdWUodGhpcy5lZGl0aW5nRGF0ZU9iaigpLmRhdGUsIHRydWUpO1xuICAgIHRoaXMuY2hlY2tTZWxlY3RlZE1pblZhbHVlKHRoaXMuZWRpdGluZ0RhdGVPYmooKSk7XG4gICAgdGhpcy5jaGVja1NlbGVjdGVkTWF4VmFsdWUodGhpcy5lZGl0aW5nRGF0ZU9iaigpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIF9oYW5kbGVOb3dDbGljaygpIHtcbiAgICB0aGlzLmVkaXRpbmdEYXRlT2JqLnNldCh0aGlzLmNhbGVuZGFyU2VydmljZS5ub3codGhpcy5jYWxlbmRhcigpKSk7XG4gICAgdGhpcy5jb21taXRWYWx1ZSh0aGlzLmVkaXRpbmdEYXRlT2JqKCkuZGF0ZSwgdHJ1ZSk7XG4gICAgdGhpcy5jaGVja1NlbGVjdGVkTWluVmFsdWUodGhpcy5lZGl0aW5nRGF0ZU9iaigpKTtcbiAgICB0aGlzLmNoZWNrU2VsZWN0ZWRNYXhWYWx1ZSh0aGlzLmVkaXRpbmdEYXRlT2JqKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgaXNEaXNhYmxlZChkYXRlOiBBWERhdGVUaW1lKTogYm9vbGVhbiB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5kaXNhYmxlZERhdGVzKSAmJiB0aGlzLmRpc2FibGVkRGF0ZXMubGVuZ3RoICE9IDApIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkRGF0ZXMuc29tZSgoZCkgPT4gZGF0ZS5lcXVhbChkLCAnZGF5JykpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHRoaXMuZGlzYWJsZWREYXRlcyA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZERhdGVzKGRhdGUuZGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGludGVybmFsU2V0VmFsdWUodmFsdWU6IERhdGUpOiBEYXRlIHwgbnVsbCB7XG4gICAgaWYgKCF2YWx1ZSB8fCAhdGhpcy5jYWxlbmRhclNlcnZpY2UuaXNWYWxpZERhdGUodmFsdWUpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgdiA9IHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmNvbnZlcnQodmFsdWUsIHRoaXMuY2FsZW5kYXIoKSk7XG4gICAgdGhpcy5jaGVja1NlbGVjdGVkTWluVmFsdWUodGhpcy5jYWxlbmRhclNlcnZpY2UuY29udmVydCh2LCB0aGlzLmNhbGVuZGFyKCkpKTtcbiAgICB0aGlzLmNoZWNrU2VsZWN0ZWRNYXhWYWx1ZSh0aGlzLmNhbGVuZGFyU2VydmljZS5jb252ZXJ0KHYsIHRoaXMuY2FsZW5kYXIoKSkpO1xuXG4gICAgaWYgKHRoaXMuaXNEaXNhYmxlZCh2KSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubWluVmFsdWUgJiYgdGhpcy5jYWxlbmRhclNlcnZpY2UuaXNWYWxpZERhdGUodGhpcy5taW5WYWx1ZSkgJiYgdi5pc0JlZm9yZSh0aGlzLm1pblZhbHVlKSkge1xuICAgICAgcmV0dXJuIHRoaXMubWluVmFsdWU7XG4gICAgfVxuICAgIGlmICh0aGlzLm1heFZhbHVlICYmIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmlzVmFsaWREYXRlKHRoaXMubWF4VmFsdWUpICYmIHYuaXNBZnRlcih0aGlzLm1heFZhbHVlKSkge1xuICAgICAgcmV0dXJuIHRoaXMubWF4VmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHYuZGF0ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc1RvZGF5RGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZGlzYWJsZWREYXRlcyA9IHRoaXMuZGlzYWJsZWREYXRlcztcblxuICAgIGlmICghZGlzYWJsZWREYXRlcyB8fCAhQXJyYXkuaXNBcnJheShkaXNhYmxlZERhdGVzKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICB0b2RheS5zZXRIb3VycygwLCAwLCAwLCAwKTtcblxuICAgIHJldHVybiBkaXNhYmxlZERhdGVzLnNvbWUoKGRpc2FibGVkRGF0ZTogRGF0ZSkgPT4ge1xuICAgICAgY29uc3QgZGlzYWJsZWQgPSBuZXcgRGF0ZShkaXNhYmxlZERhdGUpO1xuICAgICAgZGlzYWJsZWQuc2V0SG91cnMoMCwgMCwgMCwgMCk7XG4gICAgICByZXR1cm4gdG9kYXkuZ2V0VGltZSgpID09PSBkaXNhYmxlZC5nZXRUaW1lKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIkBpZiAoX2hhc0RhdGVQYXJ0ICYmIF9oYXNUaW1lUGFydCkge1xuICA8ZGl2IGNsYXNzPVwiYXgtaGVhZGVyXCI+XG4gICAgPGF4LXRhYnMgW2xvb2tdPVwiJ2RlZmF1bHQnXCIgW2ZpdFBhcmVudF09XCJ0cnVlXCIgW2xvY2F0aW9uXT1cIid0b3AnXCIgKG9uQWN0aXZlVGFiQ2hhbmdlZCk9XCJfaGFuZGxlVmlld0NoYW5nZWQoJGV2ZW50KVwiPlxuICAgICAgPGF4LXRhYi1pdGVtXG4gICAgICAgIFt0ZXh0XT1cIidAYWNvcmV4OmRhdGVUaW1lLmRhdGUnIHwgdHJhbnNsYXRlIHwgYXN5bmNcIlxuICAgICAgICBba2V5XT1cIidkYXRlJ1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICA+PC9heC10YWItaXRlbT5cbiAgICAgIDxheC10YWItaXRlbVxuICAgICAgICBbdGV4dF09XCInQGFjb3JleDpkYXRlVGltZS50aW1lJyB8IHRyYW5zbGF0ZSB8IGFzeW5jXCJcbiAgICAgICAgW2tleV09XCIndGltZSdcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgPjwvYXgtdGFiLWl0ZW0+XG4gICAgPC9heC10YWJzPlxuICA8L2Rpdj5cbn1cbjxkaXYgY2xhc3M9XCJheC1jb250ZW50XCI+XG4gIEBpZiAoX2FjdGl2ZVBhcnQoKSA9PT0gJ2RhdGUnKSB7XG4gICAgPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLXBhcnRcIj5cbiAgICAgIDxheC1jYWxlbmRhclxuICAgICAgICAjY2FsZW5kYXJcbiAgICAgICAgaWQ9XCJjYWxlbmRhclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFt3ZWVrZW5kXT1cIndlZWtlbmQoKVwiXG4gICAgICAgIFt3ZWVrZGF5c109XCJ3ZWVrZGF5cygpXCJcbiAgICAgICAgW25nTW9kZWxdPVwiZWRpdGluZ0RhdGVPYmooKS5kYXRlXCJcbiAgICAgICAgW21pblZhbHVlXT1cIm1pblZhbHVlXCJcbiAgICAgICAgW21heFZhbHVlXT1cIm1heFZhbHVlXCJcbiAgICAgICAgW2Rpc2FibGVkRGF0ZXNdPVwiZGlzYWJsZWREYXRlc1wiXG4gICAgICAgIFtob2xpZGF5RGF0ZXNdPVwiaG9saWRheURhdGVzXCJcbiAgICAgICAgW2RlcHRoXT1cImRlcHRoXCJcbiAgICAgICAgKG9uTmF2aWdhdGUpPVwiX2hhbmRsZUNhbGVuZGFyT25OYXZpZ2F0ZSgkZXZlbnQpXCJcbiAgICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cIl9oYW5kbGVDYWxlbmRhck9uVmFsdWVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICBbdHlwZV09XCJfY2FsZW5kYXJTeXN0ZW0oKVwiXG4gICAgICAgIFtsb29rXT1cImNhbGVuZGFyTG9vaygpXCJcbiAgICAgID5cbiAgICAgIDwvYXgtY2FsZW5kYXI+XG4gICAgPC9kaXY+XG4gIH1cblxuICBAaWYgKF9hY3RpdmVQYXJ0KCkgPT09ICd0aW1lJykge1xuICAgIDxkaXYgY2xhc3M9XCJheC1waWNrZXItcGFydFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWhlYWRlclwiPlxuICAgICAgICBAaWYgKHBpY2tlcigpID09PSAnZGF0ZXRpbWUnKSB7XG4gICAgICAgICAge3sgZWRpdGluZ0RhdGVPYmooKSB8IGZvcm1hdDogJ3RpbWUnIDogJ3Nob3J0JyB8IGFzeW5jIH19XG4gICAgICAgICAge3sgZWRpdGluZ0RhdGVPYmooKSB8IGZvcm1hdDogJ2RhdGUnIDogJ3Nob3J0JyB8IGFzeW5jIH19XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIHt7IGVkaXRpbmdEYXRlT2JqKCkgfCBmb3JtYXQ6IHBpY2tlcigpIDogJ21lZGl1bScgfCBhc3luYyB9fVxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgZGlyPVwibHRyXCIgY2xhc3M9XCJheC1waWNrZXItdGltZS1jb250YWluZXJcIj5cbiAgICAgICAgQGlmIChfcGFydHMuaG91ci5lbmFibGVkKSB7XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJob3VyUmVmXCI+IDwvbmctY29udGFpbmVyPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChfcGFydHMubWludXRlLmVuYWJsZWQpIHtcbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1pbnV0ZVJlZlwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoX3BhcnRzLnNlY29uZC5lbmFibGVkKSB7XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzZWNvbmRSZWZcIj4gPC9uZy1jb250YWluZXI+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbkBpZiAoIWRpc2FibGVkICYmICFyZWFkb25seSAmJiAoY3VycmVudFRpbWVCdXR0b24gfHwgX2hhc1RpbWVQYXJ0KSkge1xuICA8ZGl2IGNsYXNzPVwiYXgtZm9vdGVyXCI+XG4gICAgPGRpdj5cbiAgICAgIEBpZiAoY3VycmVudFRpbWVCdXR0b24pIHtcbiAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgIFt0ZXh0XT1cImBAYWNvcmV4OiR7YnV0dG9uVGV4dCgpfWAgfCB0cmFuc2xhdGUgfCBhc3luY1wiXG4gICAgICAgICAgY2xhc3M9XCJheC1zbVwiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiX2hhbmRsZU5vd0NsaWNrKClcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJpc1RvZGF5RGlzYWJsZWQoKVwiXG4gICAgICAgID48L2F4LWJ1dHRvbj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PlxuICAgICAgQGlmIChfaGFzVGltZVBhcnQpIHtcbiAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgW3RleHRdPVwiJ0BhY29yZXg6ZGF0ZVRpbWUuc2V0JyB8IHRyYW5zbGF0ZSB8IGFzeW5jXCJcbiAgICAgICAgICBjbGFzcz1cImF4LXNtXCJcbiAgICAgICAgICAob25DbGljayk9XCJfaGFuZGxlU2V0Q2xpY2soKVwiXG4gICAgICAgID48L2F4LWJ1dHRvbj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG59XG5cbjxuZy10ZW1wbGF0ZSAjaG91clJlZj5cbiAgPGF4LXBpY2tlci1jb250YWluZXI+XG4gICAgPGF4LXBpY2tlci10aXRsZT5cbiAgICAgIDxheC10ZXh0Pnt7ICdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLmhvdXInIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L2F4LXRleHQ+XG4gICAgPC9heC1waWNrZXItdGl0bGU+XG4gICAgPGF4LXBpY2tlci1pdGVtc1xuICAgICAgW2l0ZW1zXT1cImhvdXJzXCJcbiAgICAgIFtuZ01vZGVsXT1cImVkaXRpbmdEYXRlT2JqKCkuaG91clwiXG4gICAgICAob25WYWx1ZUNoYW5nZWQpPVwiX2hhbmRsZVBpY2tlck9uVmFsdWVDaGFuZ2VkKCRldmVudCwgJ2hvdXInKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFttaW5WYWx1ZV09XCJwaWNrZXJIb3Vyc01pblZhbHVlKClcIlxuICAgICAgW21heFZhbHVlXT1cInBpY2tlckhvdXJzTWF4VmFsdWUoKVwiXG4gICAgPjwvYXgtcGlja2VyLWl0ZW1zPlxuICA8L2F4LXBpY2tlci1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21pbnV0ZVJlZj5cbiAgPGF4LXBpY2tlci1jb250YWluZXI+XG4gICAgPGF4LXBpY2tlci10aXRsZT5cbiAgICAgIDxheC10ZXh0Pnt7ICdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLm1pbnV0ZScgfCB0cmFuc2xhdGUgfCBhc3luYyB9fTwvYXgtdGV4dD5cbiAgICA8L2F4LXBpY2tlci10aXRsZT5cbiAgICA8YXgtcGlja2VyLWl0ZW1zXG4gICAgICBbaXRlbXNdPVwibWludXRlc1wiXG4gICAgICBbbmdNb2RlbF09XCJlZGl0aW5nRGF0ZU9iaigpLm1pbnV0ZVwiXG4gICAgICAob25WYWx1ZUNoYW5nZWQpPVwiX2hhbmRsZVBpY2tlck9uVmFsdWVDaGFuZ2VkKCRldmVudCwgJ21pbnV0ZScpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW21pblZhbHVlXT1cInBpY2tlck1pbnV0ZU1pblZhbHVlKClcIlxuICAgICAgW21heFZhbHVlXT1cInBpY2tlck1pbnV0ZU1heFZhbHVlKClcIlxuICAgID48L2F4LXBpY2tlci1pdGVtcz5cbiAgPC9heC1waWNrZXItY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZWNvbmRSZWY+XG4gIDxheC1waWNrZXItY29udGFpbmVyPlxuICAgIDxheC1waWNrZXItdGl0bGU+XG4gICAgICA8YXgtdGV4dD57eyAnQGFjb3JleDpkYXRlVGltZS51bml0cy5zZWNvbmQnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L2F4LXRleHQ+XG4gICAgPC9heC1waWNrZXItdGl0bGU+XG4gICAgPGF4LXBpY2tlci1pdGVtc1xuICAgICAgW2l0ZW1zXT1cIm1pbnV0ZXNcIlxuICAgICAgW25nTW9kZWxdPVwiZWRpdGluZ0RhdGVPYmooKS5zZWNvbmRcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cIl9oYW5kbGVQaWNrZXJPblZhbHVlQ2hhbmdlZCgkZXZlbnQsICdzZWNvbmQnKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFttaW5WYWx1ZV09XCJwaWNrZXJTZWNvbmRNaW5WYWx1ZSgpXCJcbiAgICAgIFttYXhWYWx1ZV09XCJwaWNrZXJTZWNvbmRNYXhWYWx1ZSgpXCJcbiAgICA+PC9heC1waWNrZXItaXRlbXM+XG4gIDwvYXgtcGlja2VyLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXDateTimePickerComponent } from './datetime-picker.component';\nimport * as i0 from \"@angular/core\";\nexport class AXDateTimePickerModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDateTimePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDateTimePickerModule, imports: [AXDateTimePickerComponent], exports: [AXDateTimePickerComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDateTimePickerModule, imports: [AXDateTimePickerComponent] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDateTimePickerModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXDateTimePickerComponent],\n exports: [AXDateTimePickerComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZGF0ZXRpbWUtcGlja2VyL3NyYy9saWIvZGF0ZXRpbWUtcGlja2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQU14RSxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixZQUh2Qix5QkFBeUIsYUFDekIseUJBQXlCOytHQUV4QixzQkFBc0IsWUFIdkIseUJBQXlCOzsyRkFHeEIsc0JBQXNCO2tCQUpsQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztpQkFDckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhEYXRlVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZXRpbWUtcGlja2VyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtBWERhdGVUaW1lUGlja2VyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0FYRGF0ZVRpbWVQaWNrZXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBBWERhdGVUaW1lUGlja2VyTW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtZGF0ZXRpbWUtcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9kYXRldGltZS1waWNrZXIvc3JjL2Fjb3JleC1jb21wb25lbnRzLWRhdGV0aW1lLXBpY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|