@sebgroup/green-angular 6.8.0 → 7.0.0-rc.20251125130141487
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/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs +13 -13
- package/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-button.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-lib-button.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs +17 -15
- package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs +17 -15
- package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs +30 -28
- package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +43 -38
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-account-number.mjs +7 -7
- package/fesm2022/sebgroup-green-angular-src-v-angular-account-number.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-alert.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-alert.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +13 -10
- package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs +8 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs +3 -3
- package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs +52 -43
- package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-drag-drop.mjs +19 -16
- package/fesm2022/sebgroup-green-angular-src-v-angular-drag-drop.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +32 -32
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs +19 -16
- package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs +13 -11
- package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +22 -21
- package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-pagination.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-pagination.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs +16 -16
- package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs +8 -7
- package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-table.mjs +28 -24
- package/fesm2022/sebgroup-green-angular-src-v-angular-table.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-tabs.mjs +13 -12
- package/fesm2022/sebgroup-green-angular-src-v-angular-tabs.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-toast.mjs +12 -12
- package/fesm2022/sebgroup-green-angular-src-v-angular-toast.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-v-angular.mjs +347 -317
- package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular.mjs +201 -188
- package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
- package/package.json +8 -94
- package/src/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.d.ts +1 -1
- package/src/v-angular/drag-drop/drag-drop.component.d.ts +3 -3
- package/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.d.ts +1 -1
- package/v-angular/drag-drop/drag-drop.component.d.ts +3 -3
- package/esm2022/index.mjs +0 -18
- package/esm2022/lib/accordion/accordion-list-item.component.mjs +0 -50
- package/esm2022/lib/accordion/accordion.component.mjs +0 -77
- package/esm2022/lib/accordion/accordion.module.mjs +0 -24
- package/esm2022/lib/accordion/index.mjs +0 -4
- package/esm2022/lib/badge/badge.component.mjs +0 -85
- package/esm2022/lib/badge/badge.module.mjs +0 -23
- package/esm2022/lib/badge/index.mjs +0 -3
- package/esm2022/lib/button/button.component.mjs +0 -28
- package/esm2022/lib/button/button.module.mjs +0 -18
- package/esm2022/lib/button/index.mjs +0 -3
- package/esm2022/lib/cell-table/cell-table-item.component.mjs +0 -91
- package/esm2022/lib/cell-table/cell-table.component.mjs +0 -97
- package/esm2022/lib/cell-table/cell-table.module.mjs +0 -26
- package/esm2022/lib/cell-table/cell-table.types.mjs +0 -7
- package/esm2022/lib/cell-table/cell-underline.directive.mjs +0 -55
- package/esm2022/lib/cell-table/index.mjs +0 -4
- package/esm2022/lib/context-menu/context-menu.component.mjs +0 -79
- package/esm2022/lib/context-menu/context-menu.module.mjs +0 -37
- package/esm2022/lib/context-menu/index.mjs +0 -3
- package/esm2022/lib/datepicker/datepicker.component.mjs +0 -144
- package/esm2022/lib/datepicker/datepicker.module.mjs +0 -37
- package/esm2022/lib/datepicker/index.mjs +0 -3
- package/esm2022/lib/dropdown/dropdown-button.directive.mjs +0 -16
- package/esm2022/lib/dropdown/dropdown-option.directive.mjs +0 -16
- package/esm2022/lib/dropdown/dropdown.component.mjs +0 -248
- package/esm2022/lib/dropdown/dropdown.module.mjs +0 -51
- package/esm2022/lib/dropdown/index.mjs +0 -5
- package/esm2022/lib/green-angular.module.mjs +0 -72
- package/esm2022/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +0 -61
- package/esm2022/lib/in-page-wizard/in-page-wizard.module.mjs +0 -18
- package/esm2022/lib/in-page-wizard/index.mjs +0 -3
- package/esm2022/lib/modal/index.mjs +0 -5
- package/esm2022/lib/modal/modal-footer.directive.mjs +0 -16
- package/esm2022/lib/modal/modal-header.directive.mjs +0 -16
- package/esm2022/lib/modal/modal.component.mjs +0 -317
- package/esm2022/lib/modal/modal.module.mjs +0 -44
- package/esm2022/lib/pagination/index.mjs +0 -3
- package/esm2022/lib/pagination/pagination.component.mjs +0 -175
- package/esm2022/lib/pagination/pagination.module.mjs +0 -18
- package/esm2022/lib/progress-circle/index.mjs +0 -3
- package/esm2022/lib/progress-circle/progress-circle.component.mjs +0 -41
- package/esm2022/lib/progress-circle/progress-circle.module.mjs +0 -18
- package/esm2022/lib/segmented-control/index.mjs +0 -3
- package/esm2022/lib/segmented-control/segmented-control.component.mjs +0 -38
- package/esm2022/lib/segmented-control/segmented-control.module.mjs +0 -22
- package/esm2022/lib/shared/core-control/core-checkbox.directive.mjs +0 -39
- package/esm2022/lib/shared/core-control/core-control.directive.mjs +0 -94
- package/esm2022/lib/shared/core-control/core-control.module.mjs +0 -20
- package/esm2022/lib/shared/core-control/index.mjs +0 -4
- package/esm2022/lib/shared/core-element/core-element.directive.mjs +0 -34
- package/esm2022/lib/shared/core-element/core-element.module.mjs +0 -18
- package/esm2022/lib/shared/core-element/index.mjs +0 -3
- package/esm2022/lib/shared/core-renderer/core-renderer.mjs +0 -152
- package/esm2022/lib/shared/core-renderer/index.mjs +0 -2
- package/esm2022/lib/shared/core-router-link/core-router-link.directive.mjs +0 -53
- package/esm2022/lib/shared/core-router-link/core-router-link.module.mjs +0 -16
- package/esm2022/lib/shared/core-router-link/index.mjs +0 -3
- package/esm2022/lib/shared/index.mjs +0 -7
- package/esm2022/lib/shared/on-scroll.directive.mjs +0 -47
- package/esm2022/lib/shared/scope-resolver.mjs +0 -9
- package/esm2022/lib/shared/shared.module.mjs +0 -19
- package/esm2022/lib/slider/index.mjs +0 -3
- package/esm2022/lib/slider/slider.component.mjs +0 -116
- package/esm2022/lib/slider/slider.module.mjs +0 -19
- package/esm2022/lib/sortable-list/index.mjs +0 -3
- package/esm2022/lib/sortable-list/sortable-list.component.mjs +0 -181
- package/esm2022/lib/sortable-list/sortable-list.module.mjs +0 -20
- package/esm2022/sebgroup-green-angular.mjs +0 -5
- package/esm2022/src/lib/accordion/accordion-list-item.component.mjs +0 -50
- package/esm2022/src/lib/accordion/accordion.component.mjs +0 -77
- package/esm2022/src/lib/accordion/accordion.module.mjs +0 -24
- package/esm2022/src/lib/accordion/index.mjs +0 -4
- package/esm2022/src/lib/accordion/sebgroup-green-angular-src-lib-accordion.mjs +0 -5
- package/esm2022/src/lib/badge/badge.component.mjs +0 -85
- package/esm2022/src/lib/badge/badge.module.mjs +0 -23
- package/esm2022/src/lib/badge/index.mjs +0 -3
- package/esm2022/src/lib/badge/sebgroup-green-angular-src-lib-badge.mjs +0 -5
- package/esm2022/src/lib/button/button.component.mjs +0 -28
- package/esm2022/src/lib/button/button.module.mjs +0 -18
- package/esm2022/src/lib/button/index.mjs +0 -3
- package/esm2022/src/lib/button/sebgroup-green-angular-src-lib-button.mjs +0 -5
- package/esm2022/src/lib/cell-table/cell-table-item.component.mjs +0 -91
- package/esm2022/src/lib/cell-table/cell-table.component.mjs +0 -97
- package/esm2022/src/lib/cell-table/cell-table.module.mjs +0 -26
- package/esm2022/src/lib/cell-table/cell-table.types.mjs +0 -7
- package/esm2022/src/lib/cell-table/cell-underline.directive.mjs +0 -55
- package/esm2022/src/lib/cell-table/index.mjs +0 -4
- package/esm2022/src/lib/cell-table/sebgroup-green-angular-src-lib-cell-table.mjs +0 -5
- package/esm2022/src/lib/context-menu/context-menu.component.mjs +0 -79
- package/esm2022/src/lib/context-menu/context-menu.module.mjs +0 -37
- package/esm2022/src/lib/context-menu/index.mjs +0 -3
- package/esm2022/src/lib/context-menu/sebgroup-green-angular-src-lib-context-menu.mjs +0 -5
- package/esm2022/src/lib/datepicker/datepicker.component.mjs +0 -144
- package/esm2022/src/lib/datepicker/datepicker.module.mjs +0 -37
- package/esm2022/src/lib/datepicker/index.mjs +0 -3
- package/esm2022/src/lib/datepicker/sebgroup-green-angular-src-lib-datepicker.mjs +0 -5
- package/esm2022/src/lib/dropdown/dropdown-button.directive.mjs +0 -16
- package/esm2022/src/lib/dropdown/dropdown-option.directive.mjs +0 -16
- package/esm2022/src/lib/dropdown/dropdown.component.mjs +0 -248
- package/esm2022/src/lib/dropdown/dropdown.module.mjs +0 -51
- package/esm2022/src/lib/dropdown/index.mjs +0 -5
- package/esm2022/src/lib/dropdown/sebgroup-green-angular-src-lib-dropdown.mjs +0 -5
- package/esm2022/src/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +0 -61
- package/esm2022/src/lib/in-page-wizard/in-page-wizard.module.mjs +0 -18
- package/esm2022/src/lib/in-page-wizard/index.mjs +0 -3
- package/esm2022/src/lib/in-page-wizard/sebgroup-green-angular-src-lib-in-page-wizard.mjs +0 -5
- package/esm2022/src/lib/modal/index.mjs +0 -5
- package/esm2022/src/lib/modal/modal-footer.directive.mjs +0 -16
- package/esm2022/src/lib/modal/modal-header.directive.mjs +0 -16
- package/esm2022/src/lib/modal/modal.component.mjs +0 -317
- package/esm2022/src/lib/modal/modal.module.mjs +0 -44
- package/esm2022/src/lib/modal/sebgroup-green-angular-src-lib-modal.mjs +0 -5
- package/esm2022/src/lib/pagination/index.mjs +0 -3
- package/esm2022/src/lib/pagination/pagination.component.mjs +0 -175
- package/esm2022/src/lib/pagination/pagination.module.mjs +0 -18
- package/esm2022/src/lib/pagination/sebgroup-green-angular-src-lib-pagination.mjs +0 -5
- package/esm2022/src/lib/progress-circle/index.mjs +0 -3
- package/esm2022/src/lib/progress-circle/progress-circle.component.mjs +0 -41
- package/esm2022/src/lib/progress-circle/progress-circle.module.mjs +0 -18
- package/esm2022/src/lib/progress-circle/sebgroup-green-angular-src-lib-progress-circle.mjs +0 -5
- package/esm2022/src/lib/segmented-control/index.mjs +0 -3
- package/esm2022/src/lib/segmented-control/sebgroup-green-angular-src-lib-segmented-control.mjs +0 -5
- package/esm2022/src/lib/segmented-control/segmented-control.component.mjs +0 -38
- package/esm2022/src/lib/segmented-control/segmented-control.module.mjs +0 -22
- package/esm2022/src/lib/shared/core-control/core-checkbox.directive.mjs +0 -39
- package/esm2022/src/lib/shared/core-control/core-control.directive.mjs +0 -94
- package/esm2022/src/lib/shared/core-control/core-control.module.mjs +0 -20
- package/esm2022/src/lib/shared/core-control/index.mjs +0 -4
- package/esm2022/src/lib/shared/core-element/core-element.directive.mjs +0 -34
- package/esm2022/src/lib/shared/core-element/core-element.module.mjs +0 -18
- package/esm2022/src/lib/shared/core-element/index.mjs +0 -3
- package/esm2022/src/lib/shared/core-renderer/core-renderer.mjs +0 -152
- package/esm2022/src/lib/shared/core-renderer/index.mjs +0 -2
- package/esm2022/src/lib/shared/core-router-link/core-router-link.directive.mjs +0 -53
- package/esm2022/src/lib/shared/core-router-link/core-router-link.module.mjs +0 -16
- package/esm2022/src/lib/shared/core-router-link/index.mjs +0 -3
- package/esm2022/src/lib/shared/index.mjs +0 -7
- package/esm2022/src/lib/shared/on-scroll.directive.mjs +0 -47
- package/esm2022/src/lib/shared/scope-resolver.mjs +0 -9
- package/esm2022/src/lib/shared/sebgroup-green-angular-src-lib-shared.mjs +0 -5
- package/esm2022/src/lib/shared/shared.module.mjs +0 -19
- package/esm2022/src/lib/slider/index.mjs +0 -3
- package/esm2022/src/lib/slider/sebgroup-green-angular-src-lib-slider.mjs +0 -5
- package/esm2022/src/lib/slider/slider.component.mjs +0 -116
- package/esm2022/src/lib/slider/slider.module.mjs +0 -19
- package/esm2022/src/lib/sortable-list/index.mjs +0 -3
- package/esm2022/src/lib/sortable-list/sebgroup-green-angular-src-lib-sortable-list.mjs +0 -5
- package/esm2022/src/lib/sortable-list/sortable-list.component.mjs +0 -181
- package/esm2022/src/lib/sortable-list/sortable-list.module.mjs +0 -20
- package/esm2022/src/v-angular/account-number/account-number.module.mjs +0 -18
- package/esm2022/src/v-angular/account-number/account-number.pipe.mjs +0 -55
- package/esm2022/src/v-angular/account-number/index.mjs +0 -3
- package/esm2022/src/v-angular/account-number/sebgroup-green-angular-src-v-angular-account-number.mjs +0 -5
- package/esm2022/src/v-angular/alert/alert.component.mjs +0 -49
- package/esm2022/src/v-angular/alert/alert.models.mjs +0 -8
- package/esm2022/src/v-angular/alert/alert.module.mjs +0 -18
- package/esm2022/src/v-angular/alert/index.mjs +0 -4
- package/esm2022/src/v-angular/alert/sebgroup-green-angular-src-v-angular-alert.mjs +0 -5
- package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +0 -300
- package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +0 -17
- package/esm2022/src/v-angular/base-control-value-accessor/index.mjs +0 -3
- package/esm2022/src/v-angular/base-control-value-accessor/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +0 -5
- package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.component.mjs +0 -25
- package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.module.mjs +0 -20
- package/esm2022/src/v-angular/breadcrumbs/index.mjs +0 -3
- package/esm2022/src/v-angular/breadcrumbs/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +0 -5
- package/esm2022/src/v-angular/button/button.component.mjs +0 -108
- package/esm2022/src/v-angular/button/button.module.mjs +0 -20
- package/esm2022/src/v-angular/button/index.mjs +0 -3
- package/esm2022/src/v-angular/button/sebgroup-green-angular-src-v-angular-button.mjs +0 -5
- package/esm2022/src/v-angular/card/card.component.mjs +0 -11
- package/esm2022/src/v-angular/card/card.module.mjs +0 -18
- package/esm2022/src/v-angular/card/index.mjs +0 -3
- package/esm2022/src/v-angular/card/sebgroup-green-angular-src-v-angular-card.mjs +0 -5
- package/esm2022/src/v-angular/character-countdown/character-countdown.directive.mjs +0 -51
- package/esm2022/src/v-angular/character-countdown/character-countdown.module.mjs +0 -18
- package/esm2022/src/v-angular/character-countdown/index.mjs +0 -3
- package/esm2022/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.mjs +0 -5
- package/esm2022/src/v-angular/checkbox/checkbox.component.mjs +0 -94
- package/esm2022/src/v-angular/checkbox/checkbox.module.mjs +0 -21
- package/esm2022/src/v-angular/checkbox/index.mjs +0 -3
- package/esm2022/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.mjs +0 -5
- package/esm2022/src/v-angular/core/core.globals.mjs +0 -20
- package/esm2022/src/v-angular/core/core.utils.mjs +0 -62
- package/esm2022/src/v-angular/core/index.mjs +0 -3
- package/esm2022/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.mjs +0 -5
- package/esm2022/src/v-angular/datepicker/components/calendar/calendar.component.mjs +0 -200
- package/esm2022/src/v-angular/datepicker/components/calendar-control/calendar-control.component.mjs +0 -115
- package/esm2022/src/v-angular/datepicker/components/date-input/date-input.component.mjs +0 -238
- package/esm2022/src/v-angular/datepicker/components/datepicker/datepicker.component.mjs +0 -192
- package/esm2022/src/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.mjs +0 -411
- package/esm2022/src/v-angular/datepicker/datepicker.globals.mjs +0 -20
- package/esm2022/src/v-angular/datepicker/datepicker.models.mjs +0 -56
- package/esm2022/src/v-angular/datepicker/datepicker.module.mjs +0 -63
- package/esm2022/src/v-angular/datepicker/datepicker.utils.mjs +0 -196
- package/esm2022/src/v-angular/datepicker/directives/calendar-date.directive.mjs +0 -47
- package/esm2022/src/v-angular/datepicker/index.mjs +0 -17
- package/esm2022/src/v-angular/datepicker/models/dates.mjs +0 -291
- package/esm2022/src/v-angular/datepicker/pipes/date-thook.pipe.mjs +0 -30
- package/esm2022/src/v-angular/datepicker/pipes/is-disabled.pipe.mjs +0 -37
- package/esm2022/src/v-angular/datepicker/pipes/matches.pipe.mjs +0 -17
- package/esm2022/src/v-angular/datepicker/sebgroup-green-angular-src-v-angular-datepicker.mjs +0 -5
- package/esm2022/src/v-angular/drag-drop/drag-drop.component.mjs +0 -497
- package/esm2022/src/v-angular/drag-drop/drag-drop.models.mjs +0 -2
- package/esm2022/src/v-angular/drag-drop/drag-drop.module.mjs +0 -49
- package/esm2022/src/v-angular/drag-drop/drag-drop.pipes.mjs +0 -70
- package/esm2022/src/v-angular/drag-drop/drag-drop.utils.mjs +0 -76
- package/esm2022/src/v-angular/drag-drop/index.mjs +0 -5
- package/esm2022/src/v-angular/drag-drop/sebgroup-green-angular-src-v-angular-drag-drop.mjs +0 -5
- package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +0 -380
- package/esm2022/src/v-angular/dropdown/dropdown-list/index.mjs +0 -2
- package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +0 -303
- package/esm2022/src/v-angular/dropdown/dropdown.module.mjs +0 -38
- package/esm2022/src/v-angular/dropdown/index.mjs +0 -6
- package/esm2022/src/v-angular/dropdown/sebgroup-green-angular-src-v-angular-dropdown.mjs +0 -5
- package/esm2022/src/v-angular/dropdown/typeahead/index.mjs +0 -6
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +0 -110
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +0 -85
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +0 -138
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead.directive.mjs +0 -186
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead.module.mjs +0 -33
- package/esm2022/src/v-angular/external-link/external-link.directive.mjs +0 -37
- package/esm2022/src/v-angular/external-link/external-link.module.mjs +0 -18
- package/esm2022/src/v-angular/external-link/index.mjs +0 -3
- package/esm2022/src/v-angular/external-link/sebgroup-green-angular-src-v-angular-external-link.mjs +0 -5
- package/esm2022/src/v-angular/i18n/i18n.json +0 -13
- package/esm2022/src/v-angular/i18n/i18n.module.mjs +0 -89
- package/esm2022/src/v-angular/i18n/i18n.test.module.mjs +0 -89
- package/esm2022/src/v-angular/i18n/index.mjs +0 -3
- package/esm2022/src/v-angular/i18n/sebgroup-green-angular-src-v-angular-i18n.mjs +0 -5
- package/esm2022/src/v-angular/info-circle/index.mjs +0 -3
- package/esm2022/src/v-angular/info-circle/info-circle.component.mjs +0 -28
- package/esm2022/src/v-angular/info-circle/info-circle.module.mjs +0 -21
- package/esm2022/src/v-angular/info-circle/sebgroup-green-angular-src-v-angular-info-circle.mjs +0 -5
- package/esm2022/src/v-angular/input/index.mjs +0 -3
- package/esm2022/src/v-angular/input/input.component.mjs +0 -248
- package/esm2022/src/v-angular/input/input.module.mjs +0 -41
- package/esm2022/src/v-angular/input/sebgroup-green-angular-src-v-angular-input.mjs +0 -5
- package/esm2022/src/v-angular/input-mask/config.mjs +0 -9
- package/esm2022/src/v-angular/input-mask/constants.mjs +0 -2
- package/esm2022/src/v-angular/input-mask/index.mjs +0 -6
- package/esm2022/src/v-angular/input-mask/input-mask-format.pipe.mjs +0 -21
- package/esm2022/src/v-angular/input-mask/input-mask.directive.mjs +0 -165
- package/esm2022/src/v-angular/input-mask/input-mask.module.mjs +0 -35
- package/esm2022/src/v-angular/input-mask/input-mask.types.mjs +0 -2
- package/esm2022/src/v-angular/input-mask/sebgroup-green-angular-src-v-angular-input-mask.mjs +0 -5
- package/esm2022/src/v-angular/modal/dialog/dialog.component.mjs +0 -242
- package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +0 -167
- package/esm2022/src/v-angular/modal/fold-out/fold-out.directive.mjs +0 -19
- package/esm2022/src/v-angular/modal/fold-out/keyboard-key.enum.mjs +0 -10
- package/esm2022/src/v-angular/modal/index.mjs +0 -6
- package/esm2022/src/v-angular/modal/modal.globals.mjs +0 -20
- package/esm2022/src/v-angular/modal/modal.module.mjs +0 -53
- package/esm2022/src/v-angular/modal/modal.types.mjs +0 -2
- package/esm2022/src/v-angular/modal/sebgroup-green-angular-src-v-angular-modal.mjs +0 -5
- package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +0 -253
- package/esm2022/src/v-angular/pagination/index.mjs +0 -3
- package/esm2022/src/v-angular/pagination/pagination.component.mjs +0 -144
- package/esm2022/src/v-angular/pagination/pagination.module.mjs +0 -37
- package/esm2022/src/v-angular/pagination/sebgroup-green-angular-src-v-angular-pagination.mjs +0 -5
- package/esm2022/src/v-angular/radio/index.mjs +0 -4
- package/esm2022/src/v-angular/radio/radio-group/radio-group.component.mjs +0 -86
- package/esm2022/src/v-angular/radio/radio.component.mjs +0 -153
- package/esm2022/src/v-angular/radio/radio.module.mjs +0 -22
- package/esm2022/src/v-angular/radio/sebgroup-green-angular-src-v-angular-radio.mjs +0 -5
- package/esm2022/src/v-angular/slug/index.mjs +0 -3
- package/esm2022/src/v-angular/slug/sebgroup-green-angular-src-v-angular-slug.mjs +0 -5
- package/esm2022/src/v-angular/slug/slug.module.mjs +0 -18
- package/esm2022/src/v-angular/slug/slug.pipe.mjs +0 -27
- package/esm2022/src/v-angular/table/index.mjs +0 -9
- package/esm2022/src/v-angular/table/sebgroup-green-angular-src-v-angular-table.mjs +0 -5
- package/esm2022/src/v-angular/table/table.component.mjs +0 -426
- package/esm2022/src/v-angular/table/table.directive.mjs +0 -110
- package/esm2022/src/v-angular/table/table.models.mjs +0 -2
- package/esm2022/src/v-angular/table/table.module.mjs +0 -40
- package/esm2022/src/v-angular/table/table.tools.mjs +0 -29
- package/esm2022/src/v-angular/table/tr-thook.pipe.mjs +0 -22
- package/esm2022/src/v-angular/tabs/index.mjs +0 -8
- package/esm2022/src/v-angular/tabs/sebgroup-green-angular-src-v-angular-tabs.mjs +0 -5
- package/esm2022/src/v-angular/tabs/tab.directive.mjs +0 -81
- package/esm2022/src/v-angular/tabs/tabs.component.mjs +0 -262
- package/esm2022/src/v-angular/tabs/tabs.models.mjs +0 -2
- package/esm2022/src/v-angular/tabs/tabs.module.mjs +0 -21
- package/esm2022/src/v-angular/textarea/index.mjs +0 -3
- package/esm2022/src/v-angular/textarea/sebgroup-green-angular-src-v-angular-textarea.mjs +0 -5
- package/esm2022/src/v-angular/textarea/textarea.component.mjs +0 -129
- package/esm2022/src/v-angular/textarea/textarea.module.mjs +0 -34
- package/esm2022/src/v-angular/toast/index.mjs +0 -8
- package/esm2022/src/v-angular/toast/sebgroup-green-angular-src-v-angular-toast.mjs +0 -5
- package/esm2022/src/v-angular/toast/toast-message.service.mjs +0 -82
- package/esm2022/src/v-angular/toast/toast.component.mjs +0 -66
- package/esm2022/src/v-angular/toast/toast.models.mjs +0 -8
- package/esm2022/src/v-angular/toast/toast.module.mjs +0 -21
- package/esm2022/src/v-angular/tooltip/index.mjs +0 -3
- package/esm2022/src/v-angular/tooltip/sebgroup-green-angular-src-v-angular-tooltip.mjs +0 -5
- package/esm2022/src/v-angular/tooltip/tooltip.directive.mjs +0 -293
- package/esm2022/src/v-angular/tooltip/tooltip.module.mjs +0 -18
- package/esm2022/src/v-angular/tooltip/tooltip.styles.mjs +0 -60
- package/esm2022/v-angular/account-number/account-number.module.mjs +0 -18
- package/esm2022/v-angular/account-number/account-number.pipe.mjs +0 -55
- package/esm2022/v-angular/account-number/index.mjs +0 -3
- package/esm2022/v-angular/alert/alert.component.mjs +0 -49
- package/esm2022/v-angular/alert/alert.models.mjs +0 -8
- package/esm2022/v-angular/alert/alert.module.mjs +0 -18
- package/esm2022/v-angular/alert/index.mjs +0 -4
- package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +0 -300
- package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +0 -17
- package/esm2022/v-angular/base-control-value-accessor/index.mjs +0 -3
- package/esm2022/v-angular/breadcrumbs/breadcrumbs.component.mjs +0 -25
- package/esm2022/v-angular/breadcrumbs/breadcrumbs.module.mjs +0 -20
- package/esm2022/v-angular/breadcrumbs/index.mjs +0 -3
- package/esm2022/v-angular/button/button.component.mjs +0 -108
- package/esm2022/v-angular/button/button.module.mjs +0 -20
- package/esm2022/v-angular/button/index.mjs +0 -3
- package/esm2022/v-angular/card/card.component.mjs +0 -11
- package/esm2022/v-angular/card/card.module.mjs +0 -18
- package/esm2022/v-angular/card/index.mjs +0 -3
- package/esm2022/v-angular/character-countdown/character-countdown.directive.mjs +0 -51
- package/esm2022/v-angular/character-countdown/character-countdown.module.mjs +0 -18
- package/esm2022/v-angular/character-countdown/index.mjs +0 -3
- package/esm2022/v-angular/checkbox/checkbox.component.mjs +0 -94
- package/esm2022/v-angular/checkbox/checkbox.module.mjs +0 -21
- package/esm2022/v-angular/checkbox/index.mjs +0 -3
- package/esm2022/v-angular/core/core.globals.mjs +0 -20
- package/esm2022/v-angular/core/core.utils.mjs +0 -62
- package/esm2022/v-angular/core/index.mjs +0 -3
- package/esm2022/v-angular/datepicker/components/calendar/calendar.component.mjs +0 -200
- package/esm2022/v-angular/datepicker/components/calendar-control/calendar-control.component.mjs +0 -115
- package/esm2022/v-angular/datepicker/components/date-input/date-input.component.mjs +0 -238
- package/esm2022/v-angular/datepicker/components/datepicker/datepicker.component.mjs +0 -192
- package/esm2022/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.mjs +0 -411
- package/esm2022/v-angular/datepicker/datepicker.globals.mjs +0 -20
- package/esm2022/v-angular/datepicker/datepicker.models.mjs +0 -56
- package/esm2022/v-angular/datepicker/datepicker.module.mjs +0 -63
- package/esm2022/v-angular/datepicker/datepicker.utils.mjs +0 -196
- package/esm2022/v-angular/datepicker/directives/calendar-date.directive.mjs +0 -47
- package/esm2022/v-angular/datepicker/index.mjs +0 -17
- package/esm2022/v-angular/datepicker/models/dates.mjs +0 -291
- package/esm2022/v-angular/datepicker/pipes/date-thook.pipe.mjs +0 -30
- package/esm2022/v-angular/datepicker/pipes/is-disabled.pipe.mjs +0 -37
- package/esm2022/v-angular/datepicker/pipes/matches.pipe.mjs +0 -17
- package/esm2022/v-angular/drag-drop/drag-drop.component.mjs +0 -497
- package/esm2022/v-angular/drag-drop/drag-drop.models.mjs +0 -2
- package/esm2022/v-angular/drag-drop/drag-drop.module.mjs +0 -49
- package/esm2022/v-angular/drag-drop/drag-drop.pipes.mjs +0 -70
- package/esm2022/v-angular/drag-drop/drag-drop.utils.mjs +0 -76
- package/esm2022/v-angular/drag-drop/index.mjs +0 -5
- package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +0 -380
- package/esm2022/v-angular/dropdown/dropdown-list/index.mjs +0 -2
- package/esm2022/v-angular/dropdown/dropdown.component.mjs +0 -303
- package/esm2022/v-angular/dropdown/dropdown.module.mjs +0 -38
- package/esm2022/v-angular/dropdown/index.mjs +0 -6
- package/esm2022/v-angular/dropdown/typeahead/index.mjs +0 -6
- package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +0 -110
- package/esm2022/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +0 -85
- package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +0 -138
- package/esm2022/v-angular/dropdown/typeahead/typeahead.directive.mjs +0 -186
- package/esm2022/v-angular/dropdown/typeahead/typeahead.module.mjs +0 -33
- package/esm2022/v-angular/external-link/external-link.directive.mjs +0 -37
- package/esm2022/v-angular/external-link/external-link.module.mjs +0 -18
- package/esm2022/v-angular/external-link/index.mjs +0 -3
- package/esm2022/v-angular/i18n/i18n.json +0 -13
- package/esm2022/v-angular/i18n/i18n.module.mjs +0 -89
- package/esm2022/v-angular/i18n/i18n.test.module.mjs +0 -89
- package/esm2022/v-angular/i18n/index.mjs +0 -3
- package/esm2022/v-angular/index.mjs +0 -29
- package/esm2022/v-angular/info-circle/index.mjs +0 -3
- package/esm2022/v-angular/info-circle/info-circle.component.mjs +0 -28
- package/esm2022/v-angular/info-circle/info-circle.module.mjs +0 -21
- package/esm2022/v-angular/input/index.mjs +0 -3
- package/esm2022/v-angular/input/input.component.mjs +0 -248
- package/esm2022/v-angular/input/input.module.mjs +0 -41
- package/esm2022/v-angular/input-mask/config.mjs +0 -9
- package/esm2022/v-angular/input-mask/constants.mjs +0 -2
- package/esm2022/v-angular/input-mask/index.mjs +0 -6
- package/esm2022/v-angular/input-mask/input-mask-format.pipe.mjs +0 -21
- package/esm2022/v-angular/input-mask/input-mask.directive.mjs +0 -165
- package/esm2022/v-angular/input-mask/input-mask.module.mjs +0 -35
- package/esm2022/v-angular/input-mask/input-mask.types.mjs +0 -2
- package/esm2022/v-angular/modal/dialog/dialog.component.mjs +0 -242
- package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +0 -167
- package/esm2022/v-angular/modal/fold-out/fold-out.directive.mjs +0 -19
- package/esm2022/v-angular/modal/fold-out/keyboard-key.enum.mjs +0 -10
- package/esm2022/v-angular/modal/index.mjs +0 -6
- package/esm2022/v-angular/modal/modal.globals.mjs +0 -20
- package/esm2022/v-angular/modal/modal.module.mjs +0 -53
- package/esm2022/v-angular/modal/modal.types.mjs +0 -2
- package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +0 -253
- package/esm2022/v-angular/pagination/index.mjs +0 -3
- package/esm2022/v-angular/pagination/pagination.component.mjs +0 -144
- package/esm2022/v-angular/pagination/pagination.module.mjs +0 -37
- package/esm2022/v-angular/radio/index.mjs +0 -4
- package/esm2022/v-angular/radio/radio-group/radio-group.component.mjs +0 -86
- package/esm2022/v-angular/radio/radio.component.mjs +0 -153
- package/esm2022/v-angular/radio/radio.module.mjs +0 -22
- package/esm2022/v-angular/sebgroup-green-angular-v-angular.mjs +0 -5
- package/esm2022/v-angular/slug/index.mjs +0 -3
- package/esm2022/v-angular/slug/slug.module.mjs +0 -18
- package/esm2022/v-angular/slug/slug.pipe.mjs +0 -27
- package/esm2022/v-angular/table/index.mjs +0 -9
- package/esm2022/v-angular/table/table.component.mjs +0 -426
- package/esm2022/v-angular/table/table.directive.mjs +0 -110
- package/esm2022/v-angular/table/table.models.mjs +0 -2
- package/esm2022/v-angular/table/table.module.mjs +0 -40
- package/esm2022/v-angular/table/table.tools.mjs +0 -29
- package/esm2022/v-angular/table/tr-thook.pipe.mjs +0 -22
- package/esm2022/v-angular/tabs/index.mjs +0 -8
- package/esm2022/v-angular/tabs/tab.directive.mjs +0 -81
- package/esm2022/v-angular/tabs/tabs.component.mjs +0 -262
- package/esm2022/v-angular/tabs/tabs.models.mjs +0 -2
- package/esm2022/v-angular/tabs/tabs.module.mjs +0 -21
- package/esm2022/v-angular/textarea/index.mjs +0 -3
- package/esm2022/v-angular/textarea/textarea.component.mjs +0 -129
- package/esm2022/v-angular/textarea/textarea.module.mjs +0 -34
- package/esm2022/v-angular/toast/index.mjs +0 -8
- package/esm2022/v-angular/toast/toast-message.service.mjs +0 -82
- package/esm2022/v-angular/toast/toast.component.mjs +0 -66
- package/esm2022/v-angular/toast/toast.models.mjs +0 -8
- package/esm2022/v-angular/toast/toast.module.mjs +0 -21
- package/esm2022/v-angular/tooltip/index.mjs +0 -3
- package/esm2022/v-angular/tooltip/tooltip.directive.mjs +0 -293
- package/esm2022/v-angular/tooltip/tooltip.module.mjs +0 -18
- package/esm2022/v-angular/tooltip/tooltip.styles.mjs +0 -60
- package/esm2022/v-angular/v-angular.module.mjs +0 -132
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
import { WeekDay } from '@angular/common';
|
|
2
|
-
const weekdays = [
|
|
3
|
-
WeekDay.Monday,
|
|
4
|
-
WeekDay.Tuesday,
|
|
5
|
-
WeekDay.Wednesday,
|
|
6
|
-
WeekDay.Thursday,
|
|
7
|
-
WeekDay.Friday,
|
|
8
|
-
WeekDay.Saturday,
|
|
9
|
-
WeekDay.Sunday,
|
|
10
|
-
];
|
|
11
|
-
export const sortWeekDays = (firstDayOfWeek) => {
|
|
12
|
-
const firstDayIndex = weekdays.indexOf(firstDayOfWeek);
|
|
13
|
-
const weekStart = weekdays.slice(firstDayIndex);
|
|
14
|
-
const weekEnd = weekdays.slice(0, firstDayIndex);
|
|
15
|
-
return weekStart.concat(weekEnd);
|
|
16
|
-
};
|
|
17
|
-
/** Sets labels and sort weekday arrays based off of first day of week. */
|
|
18
|
-
export const getSortedWeekDays = (firstDayOfWeek, startDate) => {
|
|
19
|
-
if (startDate === undefined)
|
|
20
|
-
startDate = new Date();
|
|
21
|
-
// sort weekdays according to firstDayOfWeek
|
|
22
|
-
const sortedWeekdays = sortWeekDays(firstDayOfWeek);
|
|
23
|
-
// get the date object for the first day of week
|
|
24
|
-
const startDayIndex = sortedWeekdays.indexOf(startDate.getDay());
|
|
25
|
-
const firstOfWeek = new Date(startDate);
|
|
26
|
-
firstOfWeek.setDate(startDate.getDate() - startDayIndex);
|
|
27
|
-
// map each day in array to a date object
|
|
28
|
-
return sortedWeekdays.map((_, offset) => {
|
|
29
|
-
// set appropriate date
|
|
30
|
-
const weekdayDate = new Date(firstOfWeek);
|
|
31
|
-
weekdayDate.setDate(weekdayDate.getDate() + offset);
|
|
32
|
-
// and return value
|
|
33
|
-
return weekdayDate;
|
|
34
|
-
});
|
|
35
|
-
};
|
|
36
|
-
/** Generate a matrix of dates used to visualize a calendar month. */
|
|
37
|
-
export const generateDateMatrix = (month, year, minWeeks = 5, firstDayOfWeek) => {
|
|
38
|
-
// generate a new matrix with 5 or 6 rows (depending on number of days in that month)
|
|
39
|
-
const matrix = new Array(minWeeks);
|
|
40
|
-
matrix.fill([]);
|
|
41
|
-
const monthStr = `${month + 1}`.padStart(2, '0');
|
|
42
|
-
const date = new Date(`${year}-${monthStr}-01`);
|
|
43
|
-
const firstDate = firstCalendarDate(date, firstDayOfWeek);
|
|
44
|
-
// for each week in that month
|
|
45
|
-
const dateMatrix = matrix.map((_, weekOffset) => {
|
|
46
|
-
const offset = weekOffset * 7;
|
|
47
|
-
// update the date with the offset for that week
|
|
48
|
-
const firstOfWeek = new Date(firstDate);
|
|
49
|
-
firstOfWeek.setDate(firstDate.getDate() + offset);
|
|
50
|
-
return getSortedWeekDays(firstDayOfWeek, firstOfWeek);
|
|
51
|
-
});
|
|
52
|
-
// check if another row needs to be added (if last dates of month are missing)
|
|
53
|
-
const lastAdded = dateMatrix.slice(-1)[0].slice(-1)[0];
|
|
54
|
-
const lastOfMonth = new Date(lastAdded);
|
|
55
|
-
lastOfMonth.setMonth(month + 1);
|
|
56
|
-
lastOfMonth.setDate(0);
|
|
57
|
-
if (isBefore(lastAdded, lastOfMonth)) {
|
|
58
|
-
// add another week row
|
|
59
|
-
const firstOfWeek = new Date(lastAdded);
|
|
60
|
-
firstOfWeek.setDate(lastAdded.getDate() + 1);
|
|
61
|
-
dateMatrix.push(getSortedWeekDays(firstDayOfWeek, firstOfWeek));
|
|
62
|
-
}
|
|
63
|
-
// return final datematrix
|
|
64
|
-
return dateMatrix;
|
|
65
|
-
};
|
|
66
|
-
/** Returns the first date used in the calendars first button. */
|
|
67
|
-
export const firstCalendarDate = (date, firstDayOfWeek) => {
|
|
68
|
-
// sort weekdays according to firstDayOfWeek
|
|
69
|
-
const sortedWeekdays = sortWeekDays(firstDayOfWeek);
|
|
70
|
-
// set date to the first of month
|
|
71
|
-
const firstOfMonth = new Date(date);
|
|
72
|
-
firstOfMonth.setDate(1);
|
|
73
|
-
// get the offset
|
|
74
|
-
const offset = sortedWeekdays.indexOf(firstOfMonth.getDay());
|
|
75
|
-
const firstOfWeek = new Date(firstOfMonth);
|
|
76
|
-
// use offset to set date
|
|
77
|
-
firstOfWeek.setDate(1 - offset);
|
|
78
|
-
return firstOfWeek;
|
|
79
|
-
};
|
|
80
|
-
export const getDayOffset = (from, to, firstDayOfWeek, direction) => {
|
|
81
|
-
const sortedWeekdays = sortWeekDays(firstDayOfWeek);
|
|
82
|
-
const fromIndex = sortedWeekdays.indexOf(from);
|
|
83
|
-
const toIndex = sortedWeekdays.indexOf(to);
|
|
84
|
-
const offset = toIndex - fromIndex;
|
|
85
|
-
if (direction === 'forward' && offset < 0)
|
|
86
|
-
return offset + 6;
|
|
87
|
-
if (direction === 'back' && offset > 0)
|
|
88
|
-
return offset - 6;
|
|
89
|
-
return offset;
|
|
90
|
-
};
|
|
91
|
-
/** Returns an array of Dates for each of month. */
|
|
92
|
-
export const getMonthArray = () => {
|
|
93
|
-
const firstDayOfYear = new Date();
|
|
94
|
-
firstDayOfYear.setMonth(0);
|
|
95
|
-
firstDayOfYear.setDate(1);
|
|
96
|
-
// create a new array of length 12,
|
|
97
|
-
// and fill it with date objects of 1:st of january
|
|
98
|
-
const monthArray = new Array(12).fill(firstDayOfYear);
|
|
99
|
-
// map through the array,
|
|
100
|
-
// and create a new instance of the date,
|
|
101
|
-
// changing the month based on index (0 - 11)
|
|
102
|
-
return monthArray.map((d, index) => {
|
|
103
|
-
const date = new Date(d);
|
|
104
|
-
date.setMonth(index);
|
|
105
|
-
return date;
|
|
106
|
-
});
|
|
107
|
-
};
|
|
108
|
-
/** Returns an array of Dates for the current year and the next. */
|
|
109
|
-
export const getYearArray = () => {
|
|
110
|
-
const currentYear = new Date();
|
|
111
|
-
currentYear.setMonth(0);
|
|
112
|
-
currentYear.setDate(1);
|
|
113
|
-
const nextYear = new Date(currentYear);
|
|
114
|
-
nextYear.setFullYear(currentYear.getFullYear() + 1);
|
|
115
|
-
return [currentYear, nextYear];
|
|
116
|
-
};
|
|
117
|
-
/** Returns true if the two dates have the same year, month and date values. */
|
|
118
|
-
export const match = (a, b) => {
|
|
119
|
-
if (!a || !b)
|
|
120
|
-
return false;
|
|
121
|
-
if (a.getDate() !== b.getDate())
|
|
122
|
-
return false;
|
|
123
|
-
if (a.getMonth() !== b.getMonth())
|
|
124
|
-
return false;
|
|
125
|
-
if (a.getFullYear() !== b.getFullYear())
|
|
126
|
-
return false;
|
|
127
|
-
return true;
|
|
128
|
-
};
|
|
129
|
-
export const afterClosingHours = (closingHours) => {
|
|
130
|
-
if (!closingHours)
|
|
131
|
-
return false;
|
|
132
|
-
return Date.now() >= closingHours.getTime();
|
|
133
|
-
};
|
|
134
|
-
/**
|
|
135
|
-
* Checks if a date is before control date, regardless of time.
|
|
136
|
-
*
|
|
137
|
-
* @param date - comparison date
|
|
138
|
-
* @param controlDate - date to compare against
|
|
139
|
-
* @returns - true if the comparison date is before the control date
|
|
140
|
-
*/
|
|
141
|
-
export const isBefore = (date, controlDate) => {
|
|
142
|
-
// if year values are dissimilar
|
|
143
|
-
if (date.getFullYear() !== controlDate.getFullYear()) {
|
|
144
|
-
return date.getFullYear() < controlDate.getFullYear();
|
|
145
|
-
}
|
|
146
|
-
// if month values are dissimilar
|
|
147
|
-
if (date.getMonth() !== controlDate.getMonth()) {
|
|
148
|
-
return date.getMonth() < controlDate.getMonth();
|
|
149
|
-
}
|
|
150
|
-
// if year and month are equal, check the date
|
|
151
|
-
return date.getDate() < controlDate.getDate();
|
|
152
|
-
};
|
|
153
|
-
/**
|
|
154
|
-
* Checks if a date is after control date, regardless of time.
|
|
155
|
-
*
|
|
156
|
-
* @param date - comparison date
|
|
157
|
-
* @param controlDate - date to compare against
|
|
158
|
-
* @returns - true if the comparison date is before the control date
|
|
159
|
-
*/
|
|
160
|
-
export const isAfter = (date, controlDate) => {
|
|
161
|
-
// if year values are dissimilar
|
|
162
|
-
if (date.getFullYear() !== controlDate.getFullYear()) {
|
|
163
|
-
return date.getFullYear() > controlDate.getFullYear();
|
|
164
|
-
}
|
|
165
|
-
// if month values are dissimilar
|
|
166
|
-
if (date.getMonth() !== controlDate.getMonth()) {
|
|
167
|
-
return date.getMonth() > controlDate.getMonth();
|
|
168
|
-
}
|
|
169
|
-
// if year and month are equal, check the date
|
|
170
|
-
return date.getDate() > controlDate.getDate();
|
|
171
|
-
};
|
|
172
|
-
/**
|
|
173
|
-
* Checks if a value can be used to initiate a new Date object.
|
|
174
|
-
*
|
|
175
|
-
* @param value any value
|
|
176
|
-
* @returns - true if value can be coersed to a Date.
|
|
177
|
-
*/
|
|
178
|
-
export const isValid = (value) => {
|
|
179
|
-
// if value is type of string and can be parsed to a Date
|
|
180
|
-
const date = value && typeof value === 'string' && !isNaN(Date.parse(value))
|
|
181
|
-
? new Date(value)
|
|
182
|
-
: null;
|
|
183
|
-
switch (true) {
|
|
184
|
-
// if date or value is a valid date object - return valid
|
|
185
|
-
case typeof value?.getMonth === 'function':
|
|
186
|
-
case typeof date?.getMonth === 'function':
|
|
187
|
-
return true;
|
|
188
|
-
// if date or value is not a valid date object - return invalid
|
|
189
|
-
case value == null:
|
|
190
|
-
case date?.toString() === 'Invalid Date':
|
|
191
|
-
return false;
|
|
192
|
-
default:
|
|
193
|
-
return false;
|
|
194
|
-
}
|
|
195
|
-
};
|
|
196
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFekMsTUFBTSxRQUFRLEdBQWM7SUFDMUIsT0FBTyxDQUFDLE1BQU07SUFDZCxPQUFPLENBQUMsT0FBTztJQUNmLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxRQUFRO0lBQ2hCLE9BQU8sQ0FBQyxNQUFNO0lBQ2QsT0FBTyxDQUFDLFFBQVE7SUFDaEIsT0FBTyxDQUFDLE1BQU07Q0FDZixDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsY0FBdUIsRUFBYSxFQUFFO0lBQ2pFLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDdEQsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUMvQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQTtJQUNoRCxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDbEMsQ0FBQyxDQUFBO0FBRUQsMEVBQTBFO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLGNBQXVCLEVBQ3ZCLFNBQWdCLEVBQ1IsRUFBRTtJQUNWLElBQUksU0FBUyxLQUFLLFNBQVM7UUFBRSxTQUFTLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQTtJQUVuRCw0Q0FBNEM7SUFDNUMsTUFBTSxjQUFjLEdBQWMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBRTlELGdEQUFnRDtJQUNoRCxN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QUN6RCxLQUFLLE9BQU8sS0FBSyxFQUFFLFFBQVEsS0FBSyxVQUFVLENBQUM7UUFDM0MsS0FBSyxPQUFPLElBQUksRUFBRSxRQUFRLEtBQUssVUFBVTtZQUN2QyxPQUFPLElBQUksQ0FBQTtRQUNiLCtEQUErRDtRQUMvRCxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDbkIsS0FBSyxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssY0FBYztZQUN0QyxPQUFPLEtBQUssQ0FBQTtRQUNkO1lBQ0UsT0FBTyxLQUFLLENBQUE7SUFDaEIsQ0FBQztBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlZWtEYXkgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5cbmNvbnN0IHdlZWtkYXlzOiBXZWVrRGF5W10gPSBbXG4gIFdlZWtEYXkuTW9uZGF5LFxuICBXZWVrRGF5LlR1ZXNkYXksXG4gIFdlZWtEYXkuV2VkbmVzZGF5LFxuICBXZWVrRGF5LlRodXJzZGF5LFxuICBXZWVrRGF5LkZyaWRheSxcbiAgV2Vla0RheS5TYXR1cmRheSxcbiAgV2Vla0RheS5TdW5kYXksXG5dXG5cbmV4cG9ydCBjb25zdCBzb3J0V2Vla0RheXMgPSAoZmlyc3REYXlPZldlZWs6IFdlZWtEYXkpOiBXZWVrRGF5W10gPT4ge1xuICBjb25zdCBmaXJzdERheUluZGV4ID0gd2Vla2RheXMuaW5kZXhPZihmaXJzdERheU9mV2VlaylcbiAgY29uc3Qgd2Vla1N0YXJ0ID0gd2Vla2RheXMuc2xpY2UoZmlyc3REYXlJbmRleClcbiAgY29uc3Qgd2Vla0VuZCA9IHdlZWtkYXlzLnNsaWNlKDAsIGZpcnN0RGF5SW5kZXgpXG4gIHJldHVybiB3ZWVrU3RhcnQuY29uY2F0KHdlZWtFbmQpXG59XG5cbi8qKiBTZXRzIGxhYmVscyBhbmQgc29ydCB3ZWVrZGF5IGFycmF5cyBiYXNlZCBvZmYgb2YgZmlyc3QgZGF5IG9mIHdlZWsuICovXG5leHBvcnQgY29uc3QgZ2V0U29ydGVkV2Vla0RheXMgPSAoXG4gIGZpcnN0RGF5T2ZXZWVrOiBXZWVrRGF5LFxuICBzdGFydERhdGU/OiBEYXRlLFxuKTogRGF0ZVtdID0+IHtcbiAgaWYgKHN0YXJ0RGF0ZSA9PT0gdW5kZWZpbmVkKSBzdGFydERhdGUgPSBuZXcgRGF0ZSgpXG5cbiAgLy8gc29ydCB3ZWVrZGF5cyBhY2NvcmRpbmcgdG8gZmlyc3REYXlPZldlZWtcbiAgY29uc3Qgc29ydGVkV2Vla2RheXM6IFdlZWtEYXlbXSA9IHNvcnRXZWVrRGF5cyhmaXJzdERheU9mV2VlaylcblxuICAvLyBnZXQgdGhlIGRhdGUgb2JqZWN0IGZvciB0aGUgZmlyc3QgZGF5IG9mIHdlZWtcbiAgY29uc3Qgc3RhcnREYXlJbmRleCA9IHNvcnRlZFdlZWtkYXlzLmluZGV4T2Yoc3RhcnREYXRlLmdldERheSgpKVxuICBjb25zdCBmaXJzdE9mV2VlayA9IG5ldyBEYXRlKHN0YXJ0RGF0ZSlcbiAgZmlyc3RPZldlZWsuc2V0RGF0ZShzdGFydERhdGUuZ2V0RGF0ZSgpIC0gc3RhcnREYXlJbmRleClcblxuICAvLyBtYXAgZWFjaCBkYXkgaW4gYXJyYXkgdG8gYSBkYXRlIG9iamVjdFxuICByZXR1cm4gc29ydGVkV2Vla2RheXMubWFwKChfOiBXZWVrRGF5LCBvZmZzZXQ6IG51bWJlcikgPT4ge1xuICAgIC8vIHNldCBhcHByb3ByaWF0ZSBkYXRlXG4gICAgY29uc3Qgd2Vla2RheURhdGUgPSBuZXcgRGF0ZShmaXJzdE9mV2VlaylcbiAgICB3ZWVrZGF5RGF0ZS5zZXREYXRlKHdlZWtkYXlEYXRlLmdldERhdGUoKSArIG9mZnNldClcblxuICAgIC8vIGFuZCByZXR1cm4gdmFsdWVcbiAgICByZXR1cm4gd2Vla2RheURhdGVcbiAgfSlcbn1cblxuLyoqIEdlbmVyYXRlIGEgbWF0cml4IG9mIGRhdGVzIHVzZWQgdG8gdmlzdWFsaXplIGEgY2FsZW5kYXIgbW9udGguICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVEYXRlTWF0cml4ID0gKFxuICBtb250aDogbnVtYmVyLFxuICB5ZWFyOiBudW1iZXIsXG4gIG1pbldlZWtzID0gNSxcbiAgZmlyc3REYXlPZldlZWs6IFdlZWtEYXksXG4pOiBEYXRlW11bXSA9PiB7XG4gIC8vIGdlbmVyYXRlIGEgbmV3IG1hdHJpeCB3aXRoIDUgb3IgNiByb3dzIChkZXBlbmRpbmcgb24gbnVtYmVyIG9mIGRheXMgaW4gdGhhdCBtb250aClcbiAgY29uc3QgbWF0cml4OiBEYXRlW11bXSA9IG5ldyBBcnJheTxEYXRlW10+KG1pbldlZWtzKVxuICBtYXRyaXguZmlsbChbXSlcblxuICBjb25zdCBtb250aFN0ciA9IGAke21vbnRoICsgMX1gLnBhZFN0YXJ0KDIsICcwJylcbiAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGAke3llYXJ9LSR7bW9udGhTdHJ9LTAxYClcbiAgY29uc3QgZmlyc3REYXRlID0gZmlyc3RDYWxlbmRhckRhdGUoZGF0ZSwgZmlyc3REYXlPZldlZWspXG5cbiAgLy8gZm9yIGVhY2ggd2VlayBpbiB0aGF0IG1vbnRoXG4gIGNvbnN0IGRhdGVNYXRyaXggPSBtYXRyaXgubWFwKChfOiBEYXRlW10sIHdlZWtPZmZzZXQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IG9mZnNldCA9IHdlZWtPZmZzZXQgKiA3XG4gICAgLy8gdXBkYXRlIHRoZSBkYXRlIHdpdGggdGhlIG9mZnNldCBmb3IgdGhhdCB3ZWVrXG4gICAgY29uc3QgZmlyc3RPZldlZWsgPSBuZXcgRGF0ZShmaXJzdERhdGUpXG4gICAgZmlyc3RPZldlZWsuc2V0RGF0ZShmaXJzdERhdGUuZ2V0RGF0ZSgpICsgb2Zmc2V0KVxuICAgIHJldHVybiBnZXRTb3J0ZWRXZWVrRGF5cyhmaXJzdERheU9mV2VlaywgZmlyc3RPZldlZWspXG4gIH0pXG5cbiAgLy8gY2hlY2sgaWYgYW5vdGhlciByb3cgbmVlZHMgdG8gYmUgYWRkZWQgKGlmIGxhc3QgZGF0ZXMgb2YgbW9udGggYXJlIG1pc3NpbmcpXG4gIGNvbnN0IGxhc3RBZGRlZCA9IGRhdGVNYXRyaXguc2xpY2UoLTEpWzBdLnNsaWNlKC0xKVswXVxuICBjb25zdCBsYXN0T2ZNb250aCA9IG5ldyBEYXRlKGxhc3RBZGRlZClcbiAgbGFzdE9mTW9udGguc2V0TW9udGgobW9udGggKyAxKVxuICBsYXN0T2ZNb250aC5zZXREYXRlKDApXG5cbiAgaWYgKGlzQmVmb3JlKGxhc3RBZGRlZCwgbGFzdE9mTW9udGgpKSB7XG4gICAgLy8gYWRkIGFub3RoZXIgd2VlayByb3dcbiAgICBjb25zdCBmaXJzdE9mV2VlayA9IG5ldyBEYXRlKGxhc3RBZGRlZClcbiAgICBmaXJzdE9mV2Vlay5zZXREYXRlKGxhc3RBZGRlZC5nZXREYXRlKCkgKyAxKVxuICAgIGRhdGVNYXRyaXgucHVzaChnZXRTb3J0ZWRXZWVrRGF5cyhmaXJzdERheU9mV2VlaywgZmlyc3RPZldlZWspKVxuICB9XG4gIC8vIHJldHVybiBmaW5hbCBkYXRlbWF0cml4XG4gIHJldHVybiBkYXRlTWF0cml4XG59XG5cbi8qKiBSZXR1cm5zIHRoZSBmaXJzdCBkYXRlIHVzZWQgaW4gdGhlIGNhbGVuZGFycyBmaXJzdCBidXR0b24uICovXG5leHBvcnQgY29uc3QgZmlyc3RDYWxlbmRhckRhdGUgPSAoXG4gIGRhdGU6IERhdGUsXG4gIGZpcnN0RGF5T2ZXZWVrOiBXZWVrRGF5LFxuKTogRGF0ZSA9PiB7XG4gIC8vIHNvcnQgd2Vla2RheXMgYWNjb3JkaW5nIHRvIGZpcnN0RGF5T2ZXZWVrXG4gIGNvbnN0IHNvcnRlZFdlZWtkYXlzOiBXZWVrRGF5W10gPSBzb3J0V2Vla0RheXMoZmlyc3REYXlPZldlZWspXG5cbiAgLy8gc2V0IGRhdGUgdG8gdGhlIGZpcnN0IG9mIG1vbnRoXG4gIGNvbnN0IGZpcnN0T2ZNb250aCA9IG5ldyBEYXRlKGRhdGUpXG4gIGZpcnN0T2ZNb250aC5zZXREYXRlKDEpXG5cbiAgLy8gZ2V0IHRoZSBvZmZzZXRcbiAgY29uc3Qgb2Zmc2V0ID0gc29ydGVkV2Vla2RheXMuaW5kZXhPZihmaXJzdE9mTW9udGguZ2V0RGF5KCkpXG4gIGNvbnN0IGZpcnN0T2ZXZWVrID0gbmV3IERhdGUoZmlyc3RPZk1vbnRoKVxuICAvLyB1c2Ugb2Zmc2V0IHRvIHNldCBkYXRlXG4gIGZpcnN0T2ZXZWVrLnNldERhdGUoMSAtIG9mZnNldClcbiAgcmV0dXJuIGZpcnN0T2ZXZWVrXG59XG5cbmV4cG9ydCBjb25zdCBnZXREYXlPZmZzZXQgPSAoXG4gIGZyb206IFdlZWtEYXksXG4gIHRvOiBXZWVrRGF5LFxuICBmaXJzdERheU9mV2VlazogV2Vla0RheSxcbiAgZGlyZWN0aW9uPzogJ2ZvcndhcmQnIHwgJ2JhY2snLFxuKTogbnVtYmVyID0+IHtcbiAgY29uc3Qgc29ydGVkV2Vla2RheXM6IFdlZWtEYXlbXSA9IHNvcnRXZWVrRGF5cyhmaXJzdERheU9mV2VlaylcblxuICBjb25zdCBmcm9tSW5kZXggPSBzb3J0ZWRXZWVrZGF5cy5pbmRleE9mKGZyb20pXG4gIGNvbnN0IHRvSW5kZXggPSBzb3J0ZWRXZWVrZGF5cy5pbmRleE9mKHRvKVxuXG4gIGNvbnN0IG9mZnNldCA9IHRvSW5kZXggLSBmcm9tSW5kZXhcblxuICBpZiAoZGlyZWN0aW9uID09PSAnZm9yd2FyZCcgJiYgb2Zmc2V0IDwgMCkgcmV0dXJuIG9mZnNldCArIDZcbiAgaWYgKGRpcmVjdGlvbiA9PT0gJ2JhY2snICYmIG9mZnNldCA+IDApIHJldHVybiBvZmZzZXQgLSA2XG4gIHJldHVybiBvZmZzZXRcbn1cblxuLyoqIFJldHVybnMgYW4gYXJyYXkgb2YgRGF0ZXMgZm9yIGVhY2ggb2YgbW9udGguICovXG5leHBvcnQgY29uc3QgZ2V0TW9udGhBcnJheSA9ICgpOiBEYXRlW10gPT4ge1xuICBjb25zdCBmaXJzdERheU9mWWVhciA9IG5ldyBEYXRlKClcbiAgZmlyc3REYXlPZlllYXIuc2V0TW9udGgoMClcbiAgZmlyc3REYXlPZlllYXIuc2V0RGF0ZSgxKVxuXG4gIC8vIGNyZWF0ZSBhIG5ldyBhcnJheSBvZiBsZW5ndGggMTIsXG4gIC8vIGFuZCBmaWxsIGl0IHdpdGggZGF0ZSBvYmplY3RzIG9mIDE6c3Qgb2YgamFudWFyeVxuICBjb25zdCBtb250aEFycmF5OiBEYXRlW10gPSBuZXcgQXJyYXkoMTIpLmZpbGwoZmlyc3REYXlPZlllYXIpXG5cbiAgLy8gbWFwIHRocm91Z2ggdGhlIGFycmF5LFxuICAvLyBhbmQgY3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBkYXRlLFxuICAvLyBjaGFuZ2luZyB0aGUgbW9udGggYmFzZWQgb24gaW5kZXggKDAgLSAxMSlcbiAgcmV0dXJuIG1vbnRoQXJyYXkubWFwKChkOiBEYXRlLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGQpXG4gICAgZGF0ZS5zZXRNb250aChpbmRleClcbiAgICByZXR1cm4gZGF0ZVxuICB9KVxufVxuXG4vKiogUmV0dXJucyBhbiBhcnJheSBvZiBEYXRlcyBmb3IgdGhlIGN1cnJlbnQgeWVhciBhbmQgdGhlIG5leHQuICovXG5leHBvcnQgY29uc3QgZ2V0WWVhckFycmF5ID0gKCk6IERhdGVbXSA9PiB7XG4gIGNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKVxuICBjdXJyZW50WWVhci5zZXRNb250aCgwKVxuICBjdXJyZW50WWVhci5zZXREYXRlKDEpXG4gIGNvbnN0IG5leHRZZWFyID0gbmV3IERhdGUoY3VycmVudFllYXIpXG4gIG5leHRZZWFyLnNldEZ1bGxZZWFyKGN1cnJlbnRZZWFyLmdldEZ1bGxZZWFyKCkgKyAxKVxuICByZXR1cm4gW2N1cnJlbnRZZWFyLCBuZXh0WWVhcl1cbn1cblxuLyoqIFJldHVybnMgdHJ1ZSBpZiB0aGUgdHdvIGRhdGVzIGhhdmUgdGhlIHNhbWUgeWVhciwgbW9udGggYW5kIGRhdGUgdmFsdWVzLiAqL1xuZXhwb3J0IGNvbnN0IG1hdGNoID0gKGE6IERhdGUgfCB1bmRlZmluZWQsIGI6IERhdGUgfCB1bmRlZmluZWQpOiBib29sZWFuID0+IHtcbiAgaWYgKCFhIHx8ICFiKSByZXR1cm4gZmFsc2VcbiAgaWYgKGEuZ2V0RGF0ZSgpICE9PSBiLmdldERhdGUoKSkgcmV0dXJuIGZhbHNlXG4gIGlmIChhLmdldE1vbnRoKCkgIT09IGIuZ2V0TW9udGgoKSkgcmV0dXJuIGZhbHNlXG4gIGlmIChhLmdldEZ1bGxZZWFyKCkgIT09IGIuZ2V0RnVsbFllYXIoKSkgcmV0dXJuIGZhbHNlXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBhZnRlckNsb3NpbmdIb3VycyA9IChjbG9zaW5nSG91cnM6IERhdGUgfCB1bmRlZmluZWQpOiBib29sZWFuID0+IHtcbiAgaWYgKCFjbG9zaW5nSG91cnMpIHJldHVybiBmYWxzZVxuICByZXR1cm4gRGF0ZS5ub3coKSA+PSBjbG9zaW5nSG91cnMuZ2V0VGltZSgpXG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgZGF0ZSBpcyBiZWZvcmUgY29udHJvbCBkYXRlLCByZWdhcmRsZXNzIG9mIHRpbWUuXG4gKlxuICogQHBhcmFtIGRhdGUgLSBjb21wYXJpc29uIGRhdGVcbiAqIEBwYXJhbSBjb250cm9sRGF0ZSAtIGRhdGUgdG8gY29tcGFyZSBhZ2FpbnN0XG4gKiBAcmV0dXJucyAtIHRydWUgaWYgdGhlIGNvbXBhcmlzb24gZGF0ZSBpcyBiZWZvcmUgdGhlIGNvbnRyb2wgZGF0ZVxuICovXG5leHBvcnQgY29uc3QgaXNCZWZvcmUgPSAoZGF0ZTogRGF0ZSwgY29udHJvbERhdGU6IERhdGUpOiBib29sZWFuID0+IHtcbiAgLy8gaWYgeWVhciB2YWx1ZXMgYXJlIGRpc3NpbWlsYXJcbiAgaWYgKGRhdGUuZ2V0RnVsbFllYXIoKSAhPT0gY29udHJvbERhdGUuZ2V0RnVsbFllYXIoKSkge1xuICAgIHJldHVybiBkYXRlLmdldEZ1bGxZZWFyKCkgPCBjb250cm9sRGF0ZS5nZXRGdWxsWWVhcigpXG4gIH1cbiAgLy8gaWYgbW9udGggdmFsdWVzIGFyZSBkaXNzaW1pbGFyXG4gIGlmIChkYXRlLmdldE1vbnRoKCkgIT09IGNvbnRyb2xEYXRlLmdldE1vbnRoKCkpIHtcbiAgICByZXR1cm4gZGF0ZS5nZXRNb250aCgpIDwgY29udHJvbERhdGUuZ2V0TW9udGgoKVxuICB9XG4gIC8vIGlmIHllYXIgYW5kIG1vbnRoIGFyZSBlcXVhbCwgY2hlY2sgdGhlIGRhdGVcbiAgcmV0dXJuIGRhdGUuZ2V0RGF0ZSgpIDwgY29udHJvbERhdGUuZ2V0RGF0ZSgpXG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgZGF0ZSBpcyBhZnRlciBjb250cm9sIGRhdGUsIHJlZ2FyZGxlc3Mgb2YgdGltZS5cbiAqXG4gKiBAcGFyYW0gZGF0ZSAtIGNvbXBhcmlzb24gZGF0ZVxuICogQHBhcmFtIGNvbnRyb2xEYXRlIC0gZGF0ZSB0byBjb21wYXJlIGFnYWluc3RcbiAqIEByZXR1cm5zIC0gdHJ1ZSBpZiB0aGUgY29tcGFyaXNvbiBkYXRlIGlzIGJlZm9yZSB0aGUgY29udHJvbCBkYXRlXG4gKi9cbmV4cG9ydCBjb25zdCBpc0FmdGVyID0gKGRhdGU6IERhdGUsIGNvbnRyb2xEYXRlOiBEYXRlKTogYm9vbGVhbiA9PiB7XG4gIC8vIGlmIHllYXIgdmFsdWVzIGFyZSBkaXNzaW1pbGFyXG4gIGlmIChkYXRlLmdldEZ1bGxZZWFyKCkgIT09IGNvbnRyb2xEYXRlLmdldEZ1bGxZZWFyKCkpIHtcbiAgICByZXR1cm4gZGF0ZS5nZXRGdWxsWWVhcigpID4gY29udHJvbERhdGUuZ2V0RnVsbFllYXIoKVxuICB9XG4gIC8vIGlmIG1vbnRoIHZhbHVlcyBhcmUgZGlzc2ltaWxhclxuICBpZiAoZGF0ZS5nZXRNb250aCgpICE9PSBjb250cm9sRGF0ZS5nZXRNb250aCgpKSB7XG4gICAgcmV0dXJuIGRhdGUuZ2V0TW9udGgoKSA+IGNvbnRyb2xEYXRlLmdldE1vbnRoKClcbiAgfVxuICAvLyBpZiB5ZWFyIGFuZCBtb250aCBhcmUgZXF1YWwsIGNoZWNrIHRoZSBkYXRlXG4gIHJldHVybiBkYXRlLmdldERhdGUoKSA+IGNvbnRyb2xEYXRlLmdldERhdGUoKVxufVxuXG4vKipcbiAqIENoZWNrcyBpZiBhIHZhbHVlIGNhbiBiZSB1c2VkIHRvIGluaXRpYXRlIGEgbmV3IERhdGUgb2JqZWN0LlxuICpcbiAqIEBwYXJhbSB2YWx1ZSBhbnkgdmFsdWVcbiAqIEByZXR1cm5zIC0gdHJ1ZSBpZiB2YWx1ZSBjYW4gYmUgY29lcnNlZCB0byBhIERhdGUuXG4gKi9cbmV4cG9ydCBjb25zdCBpc1ZhbGlkID0gKHZhbHVlOiBhbnkpOiBib29sZWFuID0+IHtcbiAgLy8gaWYgdmFsdWUgaXMgdHlwZSBvZiBzdHJpbmcgYW5kIGNhbiBiZSBwYXJzZWQgdG8gYSBEYXRlXG4gIGNvbnN0IGRhdGUgPVxuICAgIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgIWlzTmFOKERhdGUucGFyc2UodmFsdWUpKVxuICAgICAgPyBuZXcgRGF0ZSh2YWx1ZSlcbiAgICAgIDogbnVsbFxuXG4gIHN3aXRjaCAodHJ1ZSkge1xuICAgIC8vIGlmIGRhdGUgb3IgdmFsdWUgaXMgYSB2YWxpZCBkYXRlIG9iamVjdCAtIHJldHVybiB2YWxpZFxuICAgIGNhc2UgdHlwZW9mIHZhbHVlPy5nZXRNb250aCA9PT0gJ2Z1bmN0aW9uJzpcbiAgICBjYXNlIHR5cGVvZiBkYXRlPy5nZXRNb250aCA9PT0gJ2Z1bmN0aW9uJzpcbiAgICAgIHJldHVybiB0cnVlXG4gICAgLy8gaWYgZGF0ZSBvciB2YWx1ZSBpcyBub3QgYSB2YWxpZCBkYXRlIG9iamVjdCAtIHJldHVybiBpbnZhbGlkXG4gICAgY2FzZSB2YWx1ZSA9PSBudWxsOlxuICAgIGNhc2UgZGF0ZT8udG9TdHJpbmcoKSA9PT0gJ0ludmFsaWQgRGF0ZSc6XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, HostBinding, Input, } from '@angular/core';
|
|
2
|
-
import { match } from '../datepicker.utils';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class CalendarDateDirective {
|
|
5
|
-
get nativeElement() {
|
|
6
|
-
return this.elementRef.nativeElement;
|
|
7
|
-
}
|
|
8
|
-
constructor(elementRef) {
|
|
9
|
-
this.elementRef = elementRef;
|
|
10
|
-
this.isToday = false;
|
|
11
|
-
}
|
|
12
|
-
ngOnInit() {
|
|
13
|
-
this.isToday = match(new Date(), this.calendarDate);
|
|
14
|
-
}
|
|
15
|
-
ngOnChanges(changes) {
|
|
16
|
-
if (changes.disabled?.currentValue) {
|
|
17
|
-
;
|
|
18
|
-
this.nativeElement.disabled = this.disabled;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalendarDateDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
22
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: CalendarDateDirective, selector: "[calendarDate]", inputs: { calendarDate: "calendarDate", selected: "selected", notWithinMonth: "notWithinMonth", disabled: "disabled" }, host: { properties: { "class.selected": "this.selected", "class.not-within-month": "this.notWithinMonth", "class.today": "this.isToday" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
23
|
-
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalendarDateDirective, decorators: [{
|
|
25
|
-
type: Directive,
|
|
26
|
-
args: [{
|
|
27
|
-
selector: '[calendarDate]', // eslint-disable-line @angular-eslint/directive-selector
|
|
28
|
-
}]
|
|
29
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { calendarDate: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}], selected: [{
|
|
32
|
-
type: HostBinding,
|
|
33
|
-
args: ['class.' + "selected" /* DateCss.selected */]
|
|
34
|
-
}, {
|
|
35
|
-
type: Input
|
|
36
|
-
}], notWithinMonth: [{
|
|
37
|
-
type: HostBinding,
|
|
38
|
-
args: ['class.' + "not-within-month" /* DateCss.notWithinMonth */]
|
|
39
|
-
}, {
|
|
40
|
-
type: Input
|
|
41
|
-
}], isToday: [{
|
|
42
|
-
type: HostBinding,
|
|
43
|
-
args: ['class.' + "today" /* DateCss.today */]
|
|
44
|
-
}], disabled: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9kYXRlcGlja2VyL2RpcmVjdGl2ZXMvY2FsZW5kYXItZGF0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssR0FJTixNQUFNLGVBQWUsQ0FBQTtBQUV0QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUE7O0FBVzNDLE1BQU0sT0FBTyxxQkFBcUI7SUFTaEMsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQTtJQUN0QyxDQUFDO0lBRUQsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQVBILFlBQU8sR0FBRyxLQUFLLENBQUE7SUFPVCxDQUFDO0lBRTlDLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNyRCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsQ0FBQztZQUNuQyxDQUFDO1lBQUMsSUFBSSxDQUFDLGFBQW1DLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUE7UUFDckUsQ0FBQztJQUNILENBQUM7K0dBdkJVLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSx5REFBeUQ7aUJBQ3RGOytFQUVVLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQzZDLFFBQVE7c0JBQTFELFdBQVc7dUJBQUMsUUFBUSxvQ0FBbUI7O3NCQUFHLEtBQUs7Z0JBR2hELGNBQWM7c0JBRmIsV0FBVzt1QkFBQyxRQUFRLGtEQUF5Qjs7c0JBQzdDLEtBQUs7Z0JBRWlDLE9BQU87c0JBQTdDLFdBQVc7dUJBQUMsUUFBUSw4QkFBZ0I7Z0JBQzVCLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IG1hdGNoIH0gZnJvbSAnLi4vZGF0ZXBpY2tlci51dGlscydcblxuZXhwb3J0IGNvbnN0IGVudW0gRGF0ZUNzcyB7XG4gIG5vdFdpdGhpbk1vbnRoID0gJ25vdC13aXRoaW4tbW9udGgnLFxuICBzZWxlY3RlZCA9ICdzZWxlY3RlZCcsXG4gIHRvZGF5ID0gJ3RvZGF5Jyxcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NhbGVuZGFyRGF0ZV0nLCAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3Jcbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJEYXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBjYWxlbmRhckRhdGUhOiBEYXRlXG4gIEBIb3N0QmluZGluZygnY2xhc3MuJyArIERhdGVDc3Muc2VsZWN0ZWQpIEBJbnB1dCgpIHNlbGVjdGVkITogYm9vbGVhblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLicgKyBEYXRlQ3NzLm5vdFdpdGhpbk1vbnRoKVxuICBASW5wdXQoKVxuICBub3RXaXRoaW5Nb250aCE6IGJvb2xlYW5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy4nICsgRGF0ZUNzcy50b2RheSkgaXNUb2RheSA9IGZhbHNlXG4gIEBJbnB1dCgpIGRpc2FibGVkITogYm9vbGVhblxuXG4gIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmlzVG9kYXkgPSBtYXRjaChuZXcgRGF0ZSgpLCB0aGlzLmNhbGVuZGFyRGF0ZSlcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5kaXNhYmxlZD8uY3VycmVudFZhbHVlKSB7XG4gICAgICA7KHRoaXMubmF0aXZlRWxlbWVudCBhcyBIVE1MQnV0dG9uRWxlbWVudCkuZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of date-picker
|
|
3
|
-
*/
|
|
4
|
-
export * from './date-control-value-accessor/date-control-value-accessor.component';
|
|
5
|
-
export * from './components/calendar/calendar.component';
|
|
6
|
-
export * from './components/calendar-control/calendar-control.component';
|
|
7
|
-
export * from './components/date-input/date-input.component';
|
|
8
|
-
export * from './components/datepicker/datepicker.component';
|
|
9
|
-
export * from './directives/calendar-date.directive';
|
|
10
|
-
export * from './pipes/is-disabled.pipe';
|
|
11
|
-
export * from './pipes/matches.pipe';
|
|
12
|
-
export * from './models/dates';
|
|
13
|
-
export * from './datepicker.models';
|
|
14
|
-
export * from './datepicker.globals';
|
|
15
|
-
export * from './datepicker.module';
|
|
16
|
-
export * from './datepicker.utils';
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9kYXRlcGlja2VyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyxxRUFBcUUsQ0FBQTtBQUNuRixjQUFjLDBDQUEwQyxDQUFBO0FBQ3hELGNBQWMsMERBQTBELENBQUE7QUFDeEUsY0FBYyw4Q0FBOEMsQ0FBQTtBQUM1RCxjQUFjLDhDQUE4QyxDQUFBO0FBQzVELGNBQWMsc0NBQXNDLENBQUE7QUFDcEQsY0FBYywwQkFBMEIsQ0FBQTtBQUN4QyxjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxxQkFBcUIsQ0FBQTtBQUNuQyxjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMscUJBQXFCLENBQUE7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgZGF0ZS1waWNrZXJcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLWNvbnRyb2wtdmFsdWUtYWNjZXNzb3IvZGF0ZS1jb250cm9sLXZhbHVlLWFjY2Vzc29yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvY2FsZW5kYXItY29udHJvbC9jYWxlbmRhci1jb250cm9sLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9kYXRlLWlucHV0L2RhdGUtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvY2FsZW5kYXItZGF0ZS5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL2lzLWRpc2FibGVkLnBpcGUnXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL21hdGNoZXMucGlwZSdcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2RhdGVzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlcGlja2VyLm1vZGVscydcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZXBpY2tlci5nbG9iYWxzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlcGlja2VyLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZXBpY2tlci51dGlscydcbiJdfQ==
|
|
@@ -1,291 +0,0 @@
|
|
|
1
|
-
import { createMask, } from '@sebgroup/green-angular/src/v-angular/input-mask';
|
|
2
|
-
/**
|
|
3
|
-
* Helper function to generate InputmaskOptions by requested locale.
|
|
4
|
-
* @param locale - requested locale. If not given, it'll use the browsers locale
|
|
5
|
-
* @returns InputmaskOptions with date settings
|
|
6
|
-
*/
|
|
7
|
-
export const getLocaleDateMask = (dateCharacters, locale) => {
|
|
8
|
-
// If no locale has been passed, use browser language
|
|
9
|
-
if (!locale)
|
|
10
|
-
locale = navigator.language;
|
|
11
|
-
const format = getLocaleDateString(locale).toLowerCase();
|
|
12
|
-
return getFormatDateMask(format, dateCharacters);
|
|
13
|
-
};
|
|
14
|
-
export const getLocaleDateString = (locale) => locale && dateFormats[locale] ? dateFormats[locale] : 'yyyy-MM-dd';
|
|
15
|
-
const dateFormats = {
|
|
16
|
-
'af-ZA': 'yyyy/MM/dd',
|
|
17
|
-
'am-ET': 'dd/MM/yyyy',
|
|
18
|
-
'ar-AE': 'dd/MM/yyyy',
|
|
19
|
-
'ar-BH': 'dd/MM/yyyy',
|
|
20
|
-
'ar-DZ': 'dd-MM-yyyy',
|
|
21
|
-
'ar-EG': 'dd/MM/yyyy',
|
|
22
|
-
'ar-IQ': 'dd/MM/yyyy',
|
|
23
|
-
'ar-JO': 'dd/MM/yyyy',
|
|
24
|
-
'ar-KW': 'dd/MM/yyyy',
|
|
25
|
-
'ar-LB': 'dd/MM/yyyy',
|
|
26
|
-
'ar-LY': 'dd/MM/yyyy',
|
|
27
|
-
'ar-MA': 'dd-MM-yyyy',
|
|
28
|
-
'ar-OM': 'dd/MM/yyyy',
|
|
29
|
-
'ar-QA': 'dd/MM/yyyy',
|
|
30
|
-
'ar-SA': 'dd/MM/yyyy',
|
|
31
|
-
'ar-SY': 'dd/MM/yyyy',
|
|
32
|
-
'ar-TN': 'dd-MM-yyyy',
|
|
33
|
-
'ar-YE': 'dd/MM/yyyy',
|
|
34
|
-
'arn-CL': 'dd-MM-yyyy',
|
|
35
|
-
'as-IN': 'dd-MM-yyyy',
|
|
36
|
-
'az-Cyrl-AZ': 'dd.MM.yyyy',
|
|
37
|
-
'az-Latn-AZ': 'dd.MM.yyyy',
|
|
38
|
-
'ba-RU': 'dd.MM.yyyy',
|
|
39
|
-
'be-BY': 'dd.MM.yyyy',
|
|
40
|
-
'bg-BG': 'dd.MM.yyyy',
|
|
41
|
-
'bn-BD': 'dd-MM-yyyy',
|
|
42
|
-
'bn-IN': 'dd-MM-yyyy',
|
|
43
|
-
'bo-CN': 'yyyy/MM/dd',
|
|
44
|
-
'br-FR': 'dd/MM/yyyy',
|
|
45
|
-
'bs-Cyrl-BA': 'dd.MM.yyyy',
|
|
46
|
-
'bs-Latn-BA': 'dd.MM.yyyy',
|
|
47
|
-
'ca-ES': 'dd/MM/yyyy',
|
|
48
|
-
'co-FR': 'dd/MM/yyyy',
|
|
49
|
-
'cs-CZ': 'dd.MM.yyyy',
|
|
50
|
-
'cy-GB': 'dd/MM/yyyy',
|
|
51
|
-
'da-DK': 'dd.MM.yyyy',
|
|
52
|
-
'de-AT': 'dd.MM.yyyy',
|
|
53
|
-
'de-CH': 'dd.MM.yyyy',
|
|
54
|
-
'de-DE': 'dd.MM.yyyy',
|
|
55
|
-
'de-LI': 'dd.MM.yyyy',
|
|
56
|
-
'de-LU': 'dd.MM.yyyy',
|
|
57
|
-
'dsb-DE': 'dd.MM.yyyy',
|
|
58
|
-
'dv-MV': 'dd/MM/yyyy',
|
|
59
|
-
'el-GR': 'dd/MM/yyyy',
|
|
60
|
-
en: 'MM/dd/yyyy',
|
|
61
|
-
'en-029': 'MM/dd/yyyy',
|
|
62
|
-
'en-AU': 'dd/MM/yyyy',
|
|
63
|
-
'en-BZ': 'dd/MM/yyyy',
|
|
64
|
-
'en-CA': 'dd/MM/yyyy',
|
|
65
|
-
'en-GB': 'dd/MM/yyyy',
|
|
66
|
-
'en-IE': 'dd/MM/yyyy',
|
|
67
|
-
'en-IN': 'dd-MM-yyyy',
|
|
68
|
-
'en-JM': 'dd/MM/yyyy',
|
|
69
|
-
'en-MY': 'dd/MM/yyyy',
|
|
70
|
-
'en-NZ': 'dd/MM/yyyy',
|
|
71
|
-
'en-PH': 'MM/dd/yyyy',
|
|
72
|
-
'en-SG': 'dd/MM/yyyy',
|
|
73
|
-
'en-TT': 'dd/MM/yyyy',
|
|
74
|
-
'en-US': 'MM/dd/yyyy',
|
|
75
|
-
'en-ZA': 'yyyy/MM/dd',
|
|
76
|
-
'en-ZW': 'MM/dd/yyyy',
|
|
77
|
-
'es-AR': 'dd/MM/yyyy',
|
|
78
|
-
'es-BO': 'dd/MM/yyyy',
|
|
79
|
-
'es-CL': 'dd-MM-yyyy',
|
|
80
|
-
'es-CO': 'dd/MM/yyyy',
|
|
81
|
-
'es-CR': 'dd/MM/yyyy',
|
|
82
|
-
'es-DO': 'dd/MM/yyyy',
|
|
83
|
-
'es-EC': 'dd/MM/yyyy',
|
|
84
|
-
'es-ES': 'dd/MM/yyyy',
|
|
85
|
-
'es-GT': 'dd/MM/yyyy',
|
|
86
|
-
'es-HN': 'dd/MM/yyyy',
|
|
87
|
-
'es-MX': 'dd/MM/yyyy',
|
|
88
|
-
'es-NI': 'dd/MM/yyyy',
|
|
89
|
-
'es-PA': 'MM/dd/yyyy',
|
|
90
|
-
'es-PE': 'dd/MM/yyyy',
|
|
91
|
-
'es-PR': 'dd/MM/yyyy',
|
|
92
|
-
'es-PY': 'dd/MM/yyyy',
|
|
93
|
-
'es-SV': 'dd/MM/yyyy',
|
|
94
|
-
'es-US': 'MM/dd/yyyy',
|
|
95
|
-
'es-UY': 'dd/MM/yyyy',
|
|
96
|
-
'es-VE': 'dd/MM/yyyy',
|
|
97
|
-
'et-EE': 'dd.MM.yyyy',
|
|
98
|
-
'eu-ES': 'yyyy/MM/dd',
|
|
99
|
-
'fa-IR': 'MM/dd/yyyy',
|
|
100
|
-
'fi-FI': 'dd.MM.yyyy',
|
|
101
|
-
'fil-PH': 'MM/dd/yyyy',
|
|
102
|
-
'fo-FO': 'dd-MM-yyyy',
|
|
103
|
-
'fr-BE': 'dd/MM/yyyy',
|
|
104
|
-
'fr-CA': 'yyyy-MM-dd',
|
|
105
|
-
'fr-CH': 'dd.MM.yyyy',
|
|
106
|
-
'fr-FR': 'dd/MM/yyyy',
|
|
107
|
-
'fr-LU': 'dd/MM/yyyy',
|
|
108
|
-
'fr-MC': 'dd/MM/yyyy',
|
|
109
|
-
'fy-NL': 'dd-MM-yyyy',
|
|
110
|
-
'ga-IE': 'dd/MM/yyyy',
|
|
111
|
-
'gd-GB': 'dd/MM/yyyy',
|
|
112
|
-
'gl-ES': 'dd/MM/yyyy',
|
|
113
|
-
'gsw-FR': 'dd/MM/yyyy',
|
|
114
|
-
'gu-IN': 'dd-MM-yyyy',
|
|
115
|
-
'ha-Latn-NG': 'dd/MM/yyyy',
|
|
116
|
-
'he-IL': 'dd/MM/yyyy',
|
|
117
|
-
'hi-IN': 'dd-MM-yyyy',
|
|
118
|
-
'hr-BA': 'dd.MM.yyyy.',
|
|
119
|
-
'hr-HR': 'dd.MM.yyyy',
|
|
120
|
-
'hsb-DE': 'dd.MM.yyyy',
|
|
121
|
-
'hu-HU': 'yyyy.MM.dd.',
|
|
122
|
-
'hy-AM': 'dd.MM.yyyy',
|
|
123
|
-
'id-ID': 'dd/MM/yyyy',
|
|
124
|
-
'ig-NG': 'dd/MM/yyyy',
|
|
125
|
-
'ii-CN': 'yyyy/MM/dd',
|
|
126
|
-
'is-IS': 'dd.MM.yyyy',
|
|
127
|
-
'it-CH': 'dd.MM.yyyy',
|
|
128
|
-
'it-IT': 'dd/MM/yyyy',
|
|
129
|
-
'iu-Cans-CA': 'dd/MM/yyyy',
|
|
130
|
-
'iu-Latn-CA': 'dd/MM/yyyy',
|
|
131
|
-
'ja-JP': 'yyyy/MM/dd',
|
|
132
|
-
'ka-GE': 'dd.MM.yyyy',
|
|
133
|
-
'kk-KZ': 'dd.MM.yyyy',
|
|
134
|
-
'kl-GL': 'dd-MM-yyyy',
|
|
135
|
-
'km-KH': 'yyyy-MM-dd',
|
|
136
|
-
'kn-IN': 'dd-MM-yyyy',
|
|
137
|
-
'ko-KR': 'yyyy.MM.dd',
|
|
138
|
-
'kok-IN': 'dd-MM-yyyy',
|
|
139
|
-
'ky-KG': 'dd.MM.yyyy',
|
|
140
|
-
'lb-LU': 'dd/MM/yyyy',
|
|
141
|
-
'lo-LA': 'dd/MM/yyyy',
|
|
142
|
-
'lt-LT': 'yyyy.MM.dd',
|
|
143
|
-
'lv-LV': 'yyyy.MM.dd.',
|
|
144
|
-
'mi-NZ': 'dd/MM/yyyy',
|
|
145
|
-
'mk-MK': 'dd.MM.yyyy',
|
|
146
|
-
'ml-IN': 'dd-MM-yyyy',
|
|
147
|
-
'mn-MN': 'yyyy.MM.dd',
|
|
148
|
-
'mn-Mong-CN': 'yyyy/MM/dd',
|
|
149
|
-
'moh-CA': 'MM/dd/yyyy',
|
|
150
|
-
'mr-IN': 'dd-MM-yyyy',
|
|
151
|
-
'ms-BN': 'dd/MM/yyyy',
|
|
152
|
-
'ms-MY': 'dd/MM/yyyy',
|
|
153
|
-
'mt-MT': 'dd/MM/yyyy',
|
|
154
|
-
'nb-NO': 'dd.MM.yyyy',
|
|
155
|
-
'ne-NP': 'MM/dd/yyyy',
|
|
156
|
-
'nl-BE': 'dd/MM/yyyy',
|
|
157
|
-
'nl-NL': 'dd-MM-yyyy',
|
|
158
|
-
'nn-NO': 'dd.MM.yyyy',
|
|
159
|
-
'nso-ZA': 'yyyy/MM/dd',
|
|
160
|
-
'oc-FR': 'dd/MM/yyyy',
|
|
161
|
-
'or-IN': 'dd-MM-yyyy',
|
|
162
|
-
'pa-IN': 'dd-MM-yyyy',
|
|
163
|
-
'pl-PL': 'dd.MM.yyyy',
|
|
164
|
-
'prs-AF': 'dd/MM/yyyy',
|
|
165
|
-
'ps-AF': 'dd/MM/yyyy',
|
|
166
|
-
'pt-BR': 'dd/MM/yyyy',
|
|
167
|
-
'pt-PT': 'dd-MM-yyyy',
|
|
168
|
-
'qut-GT': 'dd/MM/yyyy',
|
|
169
|
-
'quz-BO': 'dd/MM/yyyy',
|
|
170
|
-
'quz-EC': 'dd/MM/yyyy',
|
|
171
|
-
'quz-PE': 'dd/MM/yyyy',
|
|
172
|
-
'rm-CH': 'dd/MM/yyyy',
|
|
173
|
-
'ro-RO': 'dd.MM.yyyy',
|
|
174
|
-
'ru-RU': 'dd.MM.yyyy',
|
|
175
|
-
'rw-RW': 'MM/dd/yyyy',
|
|
176
|
-
'sa-IN': 'dd-MM-yyyy',
|
|
177
|
-
'sah-RU': 'MM.dd.yyyy',
|
|
178
|
-
se: 'yyyy-MM-dd',
|
|
179
|
-
'se-FI': 'dd.MM.yyyy',
|
|
180
|
-
'se-NO': 'dd.MM.yyyy',
|
|
181
|
-
'se-SE': 'yyyy-MM-dd',
|
|
182
|
-
'si-LK': 'yyyy-MM-dd',
|
|
183
|
-
'sk-SK': 'dd.MM.yyyy',
|
|
184
|
-
'sl-SI': 'dd.MM.yyyy',
|
|
185
|
-
'sma-NO': 'dd.MM.yyyy',
|
|
186
|
-
'sma-SE': 'yyyy-MM-dd',
|
|
187
|
-
'smj-NO': 'dd.MM.yyyy',
|
|
188
|
-
'smj-SE': 'yyyy-MM-dd',
|
|
189
|
-
'smn-FI': 'dd.MM.yyyy',
|
|
190
|
-
'sms-FI': 'dd.MM.yyyy',
|
|
191
|
-
'sq-AL': 'yyyy-MM-dd',
|
|
192
|
-
'sr-Cyrl-BA': 'dd.MM.yyyy',
|
|
193
|
-
'sr-Cyrl-CS': 'dd.MM.yyyy',
|
|
194
|
-
'sr-Cyrl-ME': 'dd.MM.yyyy',
|
|
195
|
-
'sr-Cyrl-RS': 'dd.MM.yyyy',
|
|
196
|
-
'sr-Latn-BA': 'dd.MM.yyyy',
|
|
197
|
-
'sr-Latn-CS': 'dd.MM.yyyy',
|
|
198
|
-
'sr-Latn-ME': 'dd.MM.yyyy',
|
|
199
|
-
'sr-Latn-RS': 'dd.MM.yyyy',
|
|
200
|
-
sv: 'yyyy-MM-dd',
|
|
201
|
-
'sv-FI': 'dd.MM.yyyy',
|
|
202
|
-
'sv-SE': 'yyyy-MM-dd',
|
|
203
|
-
'sw-KE': 'MM/dd/yyyy',
|
|
204
|
-
'syr-SY': 'dd/MM/yyyy',
|
|
205
|
-
'ta-IN': 'dd-MM-yyyy',
|
|
206
|
-
'te-IN': 'dd-MM-yyyy',
|
|
207
|
-
'tg-Cyrl-TJ': 'dd.MM.yyyy',
|
|
208
|
-
'th-TH': 'dd/MM/yyyy',
|
|
209
|
-
'tk-TM': 'dd.MM.yyyy',
|
|
210
|
-
'tn-ZA': 'yyyy/MM/dd',
|
|
211
|
-
'tr-TR': 'dd.MM.yyyy',
|
|
212
|
-
'tt-RU': 'dd.MM.yyyy',
|
|
213
|
-
'tzm-Latn-DZ': 'dd-MM-yyyy',
|
|
214
|
-
'ug-CN': 'yyyy-MM-dd',
|
|
215
|
-
'uk-UA': 'dd.MM.yyyy',
|
|
216
|
-
'ur-PK': 'dd/MM/yyyy',
|
|
217
|
-
'uz-Cyrl-UZ': 'dd.MM.yyyy',
|
|
218
|
-
'uz-Latn-UZ': 'dd/MM yyyy',
|
|
219
|
-
'vi-VN': 'dd/MM/yyyy',
|
|
220
|
-
'wo-SN': 'dd/MM/yyyy',
|
|
221
|
-
'xh-ZA': 'yyyy/MM/dd',
|
|
222
|
-
'yo-NG': 'dd/MM/yyyy',
|
|
223
|
-
'zh-CN': 'yyyy/MM/dd',
|
|
224
|
-
'zh-HK': 'dd/MM/yyyy',
|
|
225
|
-
'zh-MO': 'dd/MM/yyyy',
|
|
226
|
-
'zh-SG': 'dd/MM/yyyy',
|
|
227
|
-
'zh-TW': 'yyyy/MM/dd',
|
|
228
|
-
'zu-ZA': 'yyyy/MM/dd',
|
|
229
|
-
};
|
|
230
|
-
export const getFormatDateMask = (format, dateCharacters) => {
|
|
231
|
-
const separators = [' ', '.', '-', '/'];
|
|
232
|
-
const separator = separators.find((operator) => format.indexOf(operator) > -1) ?? '-';
|
|
233
|
-
const dateObjects = format.split(separator);
|
|
234
|
-
const year = { key: 'year', index: 0 }, month = { key: 'month', index: 1 }, day = { key: 'day', index: 2 };
|
|
235
|
-
dateObjects.forEach((dateObject, index) => {
|
|
236
|
-
switch (dateObject[0]) {
|
|
237
|
-
case 'y':
|
|
238
|
-
year.index = index;
|
|
239
|
-
break;
|
|
240
|
-
case 'm':
|
|
241
|
-
month.index = index;
|
|
242
|
-
break;
|
|
243
|
-
case 'd':
|
|
244
|
-
day.index = index;
|
|
245
|
-
break;
|
|
246
|
-
}
|
|
247
|
-
});
|
|
248
|
-
const placeholder = setDateFormatCharacters(format, dateCharacters);
|
|
249
|
-
return createMask({
|
|
250
|
-
alias: 'datetime',
|
|
251
|
-
inputFormat: format,
|
|
252
|
-
placeholder,
|
|
253
|
-
parser: (value) => {
|
|
254
|
-
const values = value.split(separator);
|
|
255
|
-
const y = +values[year.index];
|
|
256
|
-
const m = +values[month.index] - 1;
|
|
257
|
-
const d = +values[day.index];
|
|
258
|
-
return new Date(y, m, d);
|
|
259
|
-
},
|
|
260
|
-
onBeforeMask(initialValue) {
|
|
261
|
-
if (!initialValue || typeof initialValue !== 'string')
|
|
262
|
-
return '';
|
|
263
|
-
// If initialValues is in dateTime format, remove seconds that present after the "T"
|
|
264
|
-
if (initialValue.includes('T'))
|
|
265
|
-
initialValue = initialValue.split('T')[0];
|
|
266
|
-
// initialValue should always be in yyyy-mm-dd no matter if set from control, via datepicker or manually with keyboard
|
|
267
|
-
const values = initialValue.split('-');
|
|
268
|
-
const datePartsInOrder = [year, month, day].sort((a, b) => a.index - b.index);
|
|
269
|
-
// "Insert" correct values for the year/month/day, then join to string with separator
|
|
270
|
-
return datePartsInOrder
|
|
271
|
-
.map(({ key }) => {
|
|
272
|
-
const [yearValue, monthValue, dateValue] = values;
|
|
273
|
-
if (key === 'year')
|
|
274
|
-
return yearValue;
|
|
275
|
-
if (key === 'month')
|
|
276
|
-
return monthValue;
|
|
277
|
-
return dateValue;
|
|
278
|
-
})
|
|
279
|
-
.join(separator);
|
|
280
|
-
},
|
|
281
|
-
});
|
|
282
|
-
};
|
|
283
|
-
export const setDateFormatCharacters = (format, dateCharacters) => {
|
|
284
|
-
if (!dateCharacters)
|
|
285
|
-
return format;
|
|
286
|
-
format = format.replace(/y/g, dateCharacters.year);
|
|
287
|
-
format = format.replace(/m/g, dateCharacters.month);
|
|
288
|
-
format = format.replace(/d/g, dateCharacters.day);
|
|
289
|
-
return format;
|
|
290
|
-
};
|
|
291
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9kYXRlcGlja2VyL21vZGVscy9kYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxHQUVYLE1BQU0sa0RBQWtELENBQUE7QUFFekQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLGNBQStCLEVBQy9CLE1BQWUsRUFDUyxFQUFFO0lBQzFCLHFEQUFxRDtJQUNyRCxJQUFJLENBQUMsTUFBTTtRQUFFLE1BQU0sR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFBO0lBRXhDLE1BQU0sTUFBTSxHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBRXhELE9BQU8saUJBQWlCLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFBO0FBQ2xELENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUUsQ0FDckQsTUFBTSxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUE7QUFDcEUsTUFBTSxXQUFXLEdBQTJCO0lBQzFDLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLEVBQUUsRUFBRSxZQUFZO0lBQ2hCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRUFBRSxZQUFZO0lBQzFCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLEVBQUUsRUFBRSxZQUFZO0lBQ2hCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLFFBQVEsRUFBRSxZQUFZO0lBQ3RCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFlB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O0tBQ0YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBT0QsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FDckMsTUFBYyxFQUNkLGNBQStCLEVBQy9CLEVBQUU7SUFDRixJQUFJLENBQUMsY0FBYztRQUFFLE9BQU8sTUFBTSxDQUFBO0lBQ2xDLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbEQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNuRCxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ2pELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY3JlYXRlTWFzayxcbiAgSW5wdXRtYXNrT3B0aW9ucyxcbn0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9pbnB1dC1tYXNrJ1xuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBnZW5lcmF0ZSBJbnB1dG1hc2tPcHRpb25zIGJ5IHJlcXVlc3RlZCBsb2NhbGUuXG4gKiBAcGFyYW0gbG9jYWxlIC0gcmVxdWVzdGVkIGxvY2FsZS4gSWYgbm90IGdpdmVuLCBpdCdsbCB1c2UgdGhlIGJyb3dzZXJzIGxvY2FsZVxuICogQHJldHVybnMgSW5wdXRtYXNrT3B0aW9ucyB3aXRoIGRhdGUgc2V0dGluZ3NcbiAqL1xuZXhwb3J0IGNvbnN0IGdldExvY2FsZURhdGVNYXNrID0gKFxuICBkYXRlQ2hhcmFjdGVycz86IERhdGVDaGFyYWN0ZXJzLFxuICBsb2NhbGU/OiBzdHJpbmcsXG4pOiBJbnB1dG1hc2tPcHRpb25zPERhdGU+ID0+IHtcbiAgLy8gSWYgbm8gbG9jYWxlIGhhcyBiZWVuIHBhc3NlZCwgdXNlIGJyb3dzZXIgbGFuZ3VhZ2VcbiAgaWYgKCFsb2NhbGUpIGxvY2FsZSA9IG5hdmlnYXRvci5sYW5ndWFnZVxuXG4gIGNvbnN0IGZvcm1hdCA9IGdldExvY2FsZURhdGVTdHJpbmcobG9jYWxlKS50b0xvd2VyQ2FzZSgpXG5cbiAgcmV0dXJuIGdldEZvcm1hdERhdGVNYXNrKGZvcm1hdCwgZGF0ZUNoYXJhY3RlcnMpXG59XG5cbmV4cG9ydCBjb25zdCBnZXRMb2NhbGVEYXRlU3RyaW5nID0gKGxvY2FsZT86IHN0cmluZykgPT5cbiAgbG9jYWxlICYmIGRhdGVGb3JtYXRzW2xvY2FsZV0gPyBkYXRlRm9ybWF0c1tsb2NhbGVdIDogJ3l5eXktTU0tZGQnXG5jb25zdCBkYXRlRm9ybWF0czogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgJ2FmLVpBJzogJ3l5eXkvTU0vZGQnLFxuICAnYW0tRVQnOiAnZGQvTU0veXl5eScsXG4gICdhci1BRSc6ICdkZC9NTS95eXl5JyxcbiAgJ2FyLUJIJzogJ2RkL01NL3l5eXknLFxuICAnYXItRFonOiAnZGQtTU0teXl5eScsXG4gICdhci1FRyc6ICdkZC9NTS95eXl5JyxcbiAgJ2FyLUlRJzogJ2RkL01NL3l5eXknLFxuICAnYXItSk8nOiAnZGQvTU0veXl5eScsXG4gICdhci1LVyc6ICdkZC9NTS95eXl5JyxcbiAgJ2FyLUxCJzogJ2RkL01NL3l5eXknLFxuICAnYXItTFknOiAnZGQvTU0veXl5eScsXG4gICdhci1NQSc6ICdkZC1NTS15eXl5JyxcbiAgJ2FyLU9NJzogJ2RkL01NL3l5eXknLFxuICAnYXItUUEnOiAnZGQvTU0veXl5eScsXG4gICdhci1TQSc6ICdkZC9NTS95eXl5JyxcbiAgJ2FyLVNZJzogJ2RkL01NL3l5eXknLFxuICAnYXItVE4nOiAnZGQtTU0teXl5eScsXG4gICdhci1ZRSc6ICdkZC9NTS95eXl5JyxcbiAgJ2Fybi1DTCc6ICdkZC1NTS15eXl5JyxcbiAgJ2FzLUlOJzogJ2RkLU1NLXl5eXknLFxuICAnYXotQ3lybC1BWic6ICdkZC5NTS55eXl5JyxcbiAgJ2F6LUxhdG4tQVonOiAnZGQuTU0ueXl5eScsXG4gICdiYS1SVSc6ICdkZC5NTS55eXl5JyxcbiAgJ2JlLUJZJzogJ2RkLk1NLnl5eXknLFxuICAnYmctQkcnOiAnZGQuTU0ueXl5eScsXG4gICdibi1CRCc6ICdkZC1NTS15eXl5JyxcbiAgJ2JuLUlOJzogJ2RkLU1NLXl5eXknLFxuICAnYm8tQ04nOiAneXl5eS9NTS9kZCcsXG4gICdici1GUic6ICdkZC9NTS95eXl5JyxcbiAgJ2JzLUN5cmwtQkEnOiAnZGQuTU0ueXl5eScsXG4gICdicy1MYXRuLUJBJzogJ2RkLk1NLnl5eXknLFxuICAnY2EtRVMnOiAnZGQvTU0veXl5eScsXG4gICdjby1GUic6ICdkZC9NTS95eXl5JyxcbiAgJ2NzLUNaJzogJ2RkLk1NLnl5eXknLFxuICAnY3ktR0InOiAnZGQvTU0veXl5eScsXG4gICdkYS1ESyc6ICdkZC5NTS55eXl5JyxcbiAgJ2RlLUFUJzogJ2RkLk1NLnl5eXknLFxuICAnZGUtQ0gnOiAnZGQuTU0ueXl5eScsXG4gICdkZS1ERSc6ICdkZC5NTS55eXl5JyxcbiAgJ2RlLUxJJzogJ2RkLk1NLnl5eXknLFxuICAnZGUtTFUnOiAnZGQuTU0ueXl5eScsXG4gICdkc2ItREUnOiAnZGQuTU0ueXl5eScsXG4gICdkdi1NVic6ICdkZC9NTS95eXl5JyxcbiAgJ2VsLUdSJzogJ2RkL01NL3l5eXknLFxuICBlbjogJ01NL2RkL3l5eXknLFxuICAnZW4tMDI5JzogJ01NL2RkL3l5eXknLFxuICAnZW4tQVUnOiAnZGQvTU0veXl5eScsXG4gICdlbi1CWic6ICdkZC9NTS95eXl5JyxcbiAgJ2VuLUNBJzogJ2RkL01NL3l5eXknLFxuICAnZW4tR0InOiAnZGQvTU0veXl5eScsXG4gICdlbi1JRSc6ICdkZC9NTS95eXl5JyxcbiAgJ2VuLUlOJzogJ2RkLU1NLXl5eXknLFxuICAnZW4tSk0nOiAnZGQvTU0veXl5eScsXG4gICdlbi1NWSc6ICdkZC9NTS95eXl5JyxcbiAgJ2VuLU5aJzogJ2RkL01NL3l5eXknLFxuICAnZW4tUEgnOiAnTU0vZGQveXl5eScsXG4gICdlbi1TRyc6ICdkZC9NTS95eXl5JyxcbiAgJ2VuLVRUJzogJ2RkL01NL3l5eXknLFxuICAnZW4tVVMnOiAnTU0vZGQveXl5eScsXG4gICdlbi1aQSc6ICd5eXl5L01NL2RkJyxcbiAgJ2VuLVpXJzogJ01NL2RkL3l5eXknLFxuICAnZXMtQVInOiAnZGQvTU0veXl5eScsXG4gICdlcy1CTyc6ICdkZC9NTS95eXl5JyxcbiAgJ2VzLUNMJzogJ2RkLU1NLXl5eXknLFxuICAnZXMtQ08nOiAnZGQvTU0veXl5eScsXG4gICdlcy1DUic6ICdkZC9NTS95eXl5JyxcbiAgJ2VzLURPJzogJ2RkL01NL3l5eXknLFxuICAnZXMtRUMnOiAnZGQvTU0veXl5eScsXG4gICdlcy1FUyc6ICdkZC9NTS95eXl5JyxcbiAgJ2VzLUdUJzogJ2RkL01NL3l5eXknLFxuICAnZXMtSE4nOiAnZGQvTU0veXl5eScsXG4gICdlcy1NWCc6ICdkZC9NTS95eXl5JyxcbiAgJ2VzLU5JJzogJ2RkL01NL3l5eXknLFxuICAnZXMtUEEnOiAnTU0vZGQveXl5eScsXG4gICdlcy1QRSc6ICdkZC9NTS95eXl5JyxcbiAgJ2VzLVBSJzogJ2RkL01NL3l5eXknLFxuICAnZXMtUFknOiAnZGQvTU0veXl5eScsXG4gICdlcy1TVic6ICdkZC9NTS95eXl5JyxcbiAgJ2VzLVVTJzogJ01NL2RkL3l5eXknLFxuICAnZXMtVVknOiAnZGQvTU0veXl5eScsXG4gICdlcy1WRSc6ICdkZC9NTS95eXl5JyxcbiAgJ2V0LUVFJzogJ2RkLk1NLnl5eXknLFxuICAnZXUtRVMnOiAneXl5eS9NTS9kZCcsXG4gICdmYS1JUic6ICdNTS9kZC95eXl5JyxcbiAgJ2ZpLUZJJzogJ2RkLk1NLnl5eXknLFxuICAnZmlsLVBIJzogJ01NL2RkL3l5eXknLFxuICAnZm8tRk8nOiAnZGQtTU0teXl5eScsXG4gICdmci1CRSc6ICdkZC9NTS95eXl5JyxcbiAgJ2ZyLUNBJzogJ3l5eXktTU0tZGQnLFxuICAnZnItQ0gnOiAnZGQuTU0ueXl5eScsXG4gICdmci1GUic6ICdkZC9NTS95eXl5JyxcbiAgJ2ZyLUxVJzogJ2RkL01NL3l5eXknLFxuICAnZnItTUMnOiAnZGQvTU0veXl5eScsXG4gICdmeS1OTCc6ICdkZC1NTS15eXl5JyxcbiAgJ2dhLUlFJzogJ2RkL01NL3l5eXknLFxuICAnZ2QtR0InOiAnZGQvTU0veXl5eScsXG4gICdnbC1FUyc6ICdkZC9NTS95eXl5JyxcbiAgJ2dzdy1GUic6ICdkZC9NTS95eXl5JyxcbiAgJ2d1LUlOJzogJ2RkLU1NLXl5eXknLFxuICAnaGEtTGF0bi1ORyc6ICdkZC9NTS95eXl5JyxcbiAgJ2hlLUlMJzogJ2RkL01NL3l5eXknLFxuICAnaGktSU4nOiAnZGQtTU0teXl5eScsXG4gICdoci1CQSc6ICdkZC5NTS55eXl5LicsXG4gICdoci1IUic6ICdkZC5NTS55eXl5JyxcbiAgJ2hzYi1ERSc6ICdkZC5NTS55eXl5JyxcbiAgJ2h1LUhVJzogJ3l5eXkuTU0uZGQuJyxcbiAgJ2h5LUFNJzogJ2RkLk1NLnl5eXknLFxuICAnaWQtSUQnOiAnZGQvTU0veXl5eScsXG4gICdpZy1ORyc6ICdkZC9NTS95eXl5JyxcbiAgJ2lpLUNOJzogJ3l5eXkvTU0vZGQnLFxuICAnaXMtSVMnOiAnZGQuTU0ueXl5eScsXG4gICdpdC1DSCc6ICdkZC5NTS55eXl5JyxcbiAgJ2l0LUlUJzogJ2RkL01NL3l5eXknLFxuICAnaXUtQ2Fucy1DQSc6ICdkZC9NTS95eXl5JyxcbiAgJ2l1LUxhdG4tQ0EnOiAnZGQvTU0veXl5eScsXG4gICdqYS1KUCc6ICd5eXl5L01NL2RkJyxcbiAgJ2thLUdFJzogJ2RkLk1NLnl5eXknLFxuICAna2stS1onOiAnZGQuTU0ueXl5eScsXG4gICdrbC1HTCc6ICdkZC1NTS15eXl5JyxcbiAgJ2ttLUtIJzogJ3l5eXktTU0tZGQnLFxuICAna24tSU4nOiAnZGQtTU0teXl5eScsXG4gICdrby1LUic6ICd5eXl5Lk1NLmRkJyxcbiAgJ2tvay1JTic6ICdkZC1NTS15eXl5JyxcbiAgJ2t5LUtHJzogJ2RkLk1NLnl5eXknLFxuICAnbGItTFUnOiAnZGQvTU0veXl5eScsXG4gICdsby1MQSc6ICdkZC9NTS95eXl5JyxcbiAgJ2x0LUxUJzogJ3l5eXkuTU0uZGQnLFxuICAnbHYtTFYnOiAneXl5eS5NTS5kZC4nLFxuICAnbWktTlonOiAnZGQvTU0veXl5eScsXG4gICdtay1NSyc6ICdkZC5NTS55eXl5JyxcbiAgJ21sLUlOJzogJ2RkLU1NLXl5eXknLFxuICAnbW4tTU4nOiAneXl5eS5NTS5kZCcsXG4gICdtbi1Nb25nLUNOJzogJ3l5eXkvTU0vZGQnLFxuICAnbW9oLUNBJzogJ01NL2RkL3l5eXknLFxuICAnbXItSU4nOiAnZGQtTU0teXl5eScsXG4gICdtcy1CTic6ICdkZC9NTS95eXl5JyxcbiAgJ21zLU1ZJzogJ2RkL01NL3l5eXknLFxuICAnbXQtTVQnOiAnZGQvTU0veXl5eScsXG4gICduYi1OTyc6ICdkZC5NTS55eXl5JyxcbiAgJ25lLU5QJzogJ01NL2RkL3l5eXknLFxuICAnbmwtQkUnOiAnZGQvTU0veXl5eScsXG4gICdubC1OTCc6ICdkZC1NTS15eXl5JyxcbiAgJ25uLU5PJzogJ2RkLk1NLnl5eXknLFxuICAnbnNvLVpBJzogJ3l5eXkvTU0vZGQnLFxuICAnb2MtRlInOiAnZGQvTU0veXl5eScsXG4gICdvci1JTic6ICdkZC1NTS15eXl5JyxcbiAgJ3BhLUlOJzogJ2RkLU1NLXl5eXknLFxuICAncGwtUEwnOiAnZGQuTU0ueXl5eScsXG4gICdwcnMtQUYnOiAnZGQvTU0veXl5eScsXG4gICdwcy1BRic6ICdkZC9NTS95eXl5JyxcbiAgJ3B0LUJSJzogJ2RkL01NL3l5eXknLFxuICAncHQtUFQnOiAnZGQtTU0teXl5eScsXG4gICdxdXQtR1QnOiAnZGQvTU0veXl5eScsXG4gICdxdXotQk8nOiAnZGQvTU0veXl5eScsXG4gICdxdXotRUMnOiAnZGQvTU0veXl5eScsXG4gICdxdXotUEUnOiAnZGQvTU0veXl5eScsXG4gICdybS1DSCc6ICdkZC9NTS95eXl5JyxcbiAgJ3JvLVJPJzogJ2RkLk1NLnl5eXknLFxuICAncnUtUlUnOiAnZGQuTU0ueXl5eScsXG4gICdydy1SVyc6ICdNTS9kZC95eXl5JyxcbiAgJ3NhLUlOJzogJ2RkLU1NLXl5eXknLFxuICAnc2FoLVJVJzogJ01NLmRkLnl5eXknLFxuICBzZTogJ3l5eXktTU0tZGQnLFxuICAnc2UtRkknOiAnZGQuTU0ueXl5eScsXG4gICdzZS1OTyc6ICdkZC5NTS55eXl5JyxcbiAgJ3NlLVNFJzogJ3l5eXktTU0tZGQnLFxuICAnc2ktTEsnOiAneXl5eS1NTS1kZCcsXG4gICdzay1TSyc6ICdkZC5NTS55eXl5JyxcbiAgJ3NsLVNJJzogJ2RkLk1NLnl5eXknLFxuICAnc21hLU5PJzogJ2RkLk1NLnl5eXknLFxuICAnc21hLVNFJzogJ3l5eXktTU0tZGQnLFxuICAnc21qLU5PJzogJ2RkLk1NLnl5eXknLFxuICAnc21qLVNFJzogJ3l5eXktTU0tZGQnLFxuICAnc21uLUZJJzogJ2RkLk1NLnl5eXknLFxuICAnc21zLUZJJzogJ2RkLk1NLnl5eXknLFxuICAnc3EtQUwnOiAneXl5eS1NTS1kZCcsXG4gICdzci1DeXJsLUJBJzogJ2RkLk1NLnl5eXknLFxuICAnc3ItQ3lybC1DUyc6ICdkZC5NTS55eXl5JyxcbiAgJ3NyLUN5cmwtTUUnOiAnZGQuTU0ueXl5eScsXG4gICdzci1DeXJsLVJTJzogJ2RkLk1NLnl5eXknLFxuICAnc3ItTGF0bi1CQSc6ICdkZC5NTS55eXl5JyxcbiAgJ3NyLUxhdG4tQ1MnOiAnZGQuTU0ueXl5eScsXG4gICdzci1MYXRuLU1FJzogJ2RkLk1NLnl5eXknLFxuICAnc3ItTGF0bi1SUyc6ICdkZC5NTS55eXl5JyxcbiAgc3Y6ICd5eXl5LU1NLWRkJyxcbiAgJ3N2LUZJJzogJ2RkLk1NLnl5eXknLFxuICAnc3YtU0UnOiAneXl5eS1NTS1kZCcsXG4gICdzdy1LRSc6ICdNTS9kZC95eXl5JyxcbiAgJ3N5ci1TWSc6ICdkZC9NTS95eXl5JyxcbiAgJ3RhLUlOJzogJ2RkLU1NLXl5eXknLFxuICAndGUtSU4nOiAnZGQtTU0teXl5eScsXG4gICd0Zy1DeXJsLVRKJzogJ2RkLk1NLnl5eXknLFxuICAndGgtVEgnOiAnZGQvTU0veXl5eScsXG4gICd0ay1UTSc6ICdkZC5NTS55eXl5JyxcbiAgJ3RuLVpBJzogJ3l5eXkvTU0vZGQnLFxuICAndHItVFInOiAnZGQuTU0ueXl5eScsXG4gICd0dC1SVSc6ICdkZC5NTS55eXl5JyxcbiAgJ3R6bS1MYXRuLURaJzogJ2RkLU1NLXl5eXknLFxuICAndWctQ04nOiAneXl5eS1NTS1kZCcsXG4gICd1ay1VQSc6ICdkZC5NTS55eXl5JyxcbiAgJ3VyLVBLJzogJ2RkL01NL3l5eXknLFxuICAndXotQ3lybC1VWic6ICdkZC5NTS55eXl5JyxcbiAgJ3V6LUxhdG4tVVonOiAnZGQvTU0geXl5eScsXG4gICd2aS1WTic6ICdkZC9NTS95eXl5JyxcbiAgJ3dvLVNOJzogJ2RkL01NL3l5eXknLFxuICAneGgtWkEnOiAneXl5eS9NTS9kZCcsXG4gICd5by1ORyc6ICdkZC9NTS95eXl5JyxcbiAgJ3poLUNOJzogJ3l5eXkvTU0vZGQnLFxuICAnemgtSEsnOiAnZGQvTU0veXl5eScsXG4gICd6aC1NTyc6ICdkZC9NTS95eXl5JyxcbiAgJ3poLVNHJzogJ2RkL01NL3l5eXknLFxuICAnemgtVFcnOiAneXl5eS9NTS9kZCcsXG4gICd6dS1aQSc6ICd5eXl5L01NL2RkJyxcbn1cbmV4cG9ydCBjb25zdCBnZXRGb3JtYXREYXRlTWFzayA9IChcbiAgZm9ybWF0OiBzdHJpbmcsXG4gIGRhdGVDaGFyYWN0ZXJzPzogRGF0ZUNoYXJhY3RlcnMsXG4pID0+IHtcbiAgY29uc3Qgc2VwYXJhdG9ycyA9IFsnICcsICcuJywgJy0nLCAnLyddXG4gIGNvbnN0IHNlcGFyYXRvciA9XG4gICAgc2VwYXJhdG9ycy5maW5kKChvcGVyYXRvcikgPT4gZm9ybWF0LmluZGV4T2Yob3BlcmF0b3IpID4gLTEpID8/ICctJ1xuICBjb25zdCBkYXRlT2JqZWN0cyA9IGZvcm1hdC5zcGxpdChzZXBhcmF0b3IpXG4gIGNvbnN0IHllYXI6IHsga2V5OiBzdHJpbmc7IGluZGV4OiBudW1iZXIgfSA9IHsga2V5OiAneWVhcicsIGluZGV4OiAwIH0sXG4gICAgbW9udGg6IHsga2V5OiBzdHJpbmc7IGluZGV4OiBudW1iZXIgfSA9IHsga2V5OiAnbW9udGgnLCBpbmRleDogMSB9LFxuICAgIGRheTogeyBrZXk6IHN0cmluZzsgaW5kZXg6IG51bWJlciB9ID0geyBrZXk6ICdkYXknLCBpbmRleDogMiB9XG5cbiAgZGF0ZU9iamVjdHMuZm9yRWFjaCgoZGF0ZU9iamVjdCwgaW5kZXgpID0+IHtcbiAgICBzd2l0Y2ggKGRhdGVPYmplY3RbMF0pIHtcbiAgICAgIGNhc2UgJ3knOlxuICAgICAgICB5ZWFyLmluZGV4ID0gaW5kZXhcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ20nOlxuICAgICAgICBtb250aC5pbmRleCA9IGluZGV4XG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICdkJzpcbiAgICAgICAgZGF5LmluZGV4ID0gaW5kZXhcbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH0pXG4gIGNvbnN0IHBsYWNlaG9sZGVyID0gc2V0RGF0ZUZvcm1hdENoYXJhY3RlcnMoZm9ybWF0LCBkYXRlQ2hhcmFjdGVycylcblxuICByZXR1cm4gY3JlYXRlTWFzazxEYXRlPih7XG4gICAgYWxpYXM6ICdkYXRldGltZScsXG4gICAgaW5wdXRGb3JtYXQ6IGZvcm1hdCxcbiAgICBwbGFjZWhvbGRlcixcbiAgICBwYXJzZXI6ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZXMgPSB2YWx1ZS5zcGxpdChzZXBhcmF0b3IpXG4gICAgICBjb25zdCB5ID0gK3ZhbHVlc1t5ZWFyLmluZGV4XVxuICAgICAgY29uc3QgbSA9ICt2YWx1ZXNbbW9udGguaW5kZXhdIC0gMVxuICAgICAgY29uc3QgZCA9ICt2YWx1ZXNbZGF5LmluZGV4XVxuICAgICAgcmV0dXJuIG5ldyBEYXRlKHksIG0sIGQpXG4gICAgfSxcbiAgICBvbkJlZm9yZU1hc2soaW5pdGlhbFZhbHVlOiBzdHJpbmcpIHtcbiAgICAgIGlmICghaW5pdGlhbFZhbHVlIHx8IHR5cGVvZiBpbml0aWFsVmFsdWUgIT09ICdzdHJpbmcnKSByZXR1cm4gJydcbiAgICAgIC8vIElmIGluaXRpYWxWYWx1ZXMgaXMgaW4gZGF0ZVRpbWUgZm9ybWF0LCByZW1vdmUgc2Vjb25kcyB0aGF0IHByZXNlbnQgYWZ0ZXIgdGhlIFwiVFwiXG4gICAgICBpZiAoaW5pdGlhbFZhbHVlLmluY2x1ZGVzKCdUJykpIGluaXRpYWxWYWx1ZSA9IGluaXRpYWxWYWx1ZS5zcGxpdCgnVCcpWzBdXG4gICAgICAvLyBpbml0aWFsVmFsdWUgc2hvdWxkIGFsd2F5cyBiZSBpbiB5eXl5LW1tLWRkIG5vIG1hdHRlciBpZiBzZXQgZnJvbSBjb250cm9sLCB2aWEgZGF0ZXBpY2tlciBvciBtYW51YWxseSB3aXRoIGtleWJvYXJkXG4gICAgICBjb25zdCB2YWx1ZXMgPSBpbml0aWFsVmFsdWUuc3BsaXQoJy0nKVxuICAgICAgY29uc3QgZGF0ZVBhcnRzSW5PcmRlciA9IFt5ZWFyLCBtb250aCwgZGF5XS5zb3J0KFxuICAgICAgICAoYSwgYikgPT4gYS5pbmRleCAtIGIuaW5kZXgsXG4gICAgICApXG4gICAgICAvLyBcIkluc2VydFwiIGNvcnJlY3QgdmFsdWVzIGZvciB0aGUgeWVhci9tb250aC9kYXksIHRoZW4gam9pbiB0byBzdHJpbmcgd2l0aCBzZXBhcmF0b3JcbiAgICAgIHJldHVybiBkYXRlUGFydHNJbk9yZGVyXG4gICAgICAgIC5tYXAoKHsga2V5IH0pID0+IHtcbiAgICAgICAgICBjb25zdCBbeWVhclZhbHVlLCBtb250aFZhbHVlLCBkYXRlVmFsdWVdID0gdmFsdWVzXG4gICAgICAgICAgaWYgKGtleSA9PT0gJ3llYXInKSByZXR1cm4geWVhclZhbHVlXG4gICAgICAgICAgaWYgKGtleSA9PT0gJ21vbnRoJykgcmV0dXJuIG1vbnRoVmFsdWVcbiAgICAgICAgICByZXR1cm4gZGF0ZVZhbHVlXG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKHNlcGFyYXRvcilcbiAgICB9LFxuICB9KVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGVDaGFyYWN0ZXJzIHtcbiAgeWVhcjogc3RyaW5nXG4gIG1vbnRoOiBzdHJpbmdcbiAgZGF5OiBzdHJpbmdcbn1cbmV4cG9ydCBjb25zdCBzZXREYXRlRm9ybWF0Q2hhcmFjdGVycyA9IChcbiAgZm9ybWF0OiBzdHJpbmcsXG4gIGRhdGVDaGFyYWN0ZXJzPzogRGF0ZUNoYXJhY3RlcnMsXG4pID0+IHtcbiAgaWYgKCFkYXRlQ2hhcmFjdGVycykgcmV0dXJuIGZvcm1hdFxuICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgveS9nLCBkYXRlQ2hhcmFjdGVycy55ZWFyKVxuICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgvbS9nLCBkYXRlQ2hhcmFjdGVycy5tb250aClcbiAgZm9ybWF0ID0gZm9ybWF0LnJlcGxhY2UoL2QvZywgZGF0ZUNoYXJhY3RlcnMuZGF5KVxuICByZXR1cm4gZm9ybWF0XG59XG4iXX0=
|