@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1020 → 1.5.1117-a
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/assets/images/gif/mitecLogoIntroMobile.gif +0 -0
- package/assets/images/gif/mitecLogoIntroWeb.gif +0 -0
- package/assets/images/lang-flags/mx.svg +392 -0
- package/assets/images/lang-flags/us.svg +13 -0
- package/assets/styles/main.min.css +1 -1
- package/assets/styles/main.min.css.map +1 -1
- package/assets/svg/neutral_fill.svg +1 -0
- package/assets/svg/primary_fill.svg +1 -0
- package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +87 -0
- package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +159 -0
- package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +150 -0
- package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +49 -0
- package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +31 -0
- package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +35 -0
- package/esm2022/lib/components/bmb-advertisement-card/types.mjs +2 -0
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +40 -0
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +18 -0
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +148 -0
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +52 -0
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +196 -0
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +62 -0
- package/esm2022/lib/components/bmb-alert-center/types.mjs +2 -0
- package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +26 -0
- package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +26 -0
- package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +27 -0
- package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +42 -0
- package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +55 -0
- package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +30 -0
- package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +262 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +96 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +40 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +68 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +41 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-event-list/bmb-calendar-template-event-list.component.mjs +63 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +95 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +45 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +54 -0
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +24 -0
- package/esm2022/lib/components/bmb-calendar/types.mjs +2 -0
- package/esm2022/lib/components/bmb-calendar/utils.mjs +96 -0
- package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +154 -0
- package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +76 -0
- package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +80 -0
- package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +175 -0
- package/esm2022/lib/components/bmb-chat-bar/bot_list.mjs +57 -0
- package/esm2022/lib/components/bmb-chat-bar/types.mjs +2 -0
- package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +56 -0
- package/esm2022/lib/components/bmb-chat-bubbles/types.mjs +2 -0
- package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +46 -0
- package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +80 -0
- package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +36 -0
- package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +27 -0
- package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +96 -0
- package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +69 -0
- package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +211 -0
- package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +123 -0
- package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +54 -0
- package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +25 -0
- package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +34 -0
- package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +54 -0
- package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +200 -0
- package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +28 -0
- package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +175 -0
- package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +76 -0
- package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +78 -0
- package/esm2022/lib/components/bmb-fab/bmb-fab-.interface.mjs +9 -0
- package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +37 -0
- package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +154 -0
- package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.interface.mjs +2 -0
- package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +36 -0
- package/esm2022/lib/components/bmb-form-validation/bmb-form-validation.component.mjs +159 -0
- package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +159 -0
- package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +29 -0
- package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +22 -0
- package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +181 -0
- package/esm2022/lib/components/bmb-grades/types.mjs +2 -0
- package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +55 -0
- package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +49 -0
- package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +77 -0
- package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +59 -0
- package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +76 -0
- package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +41 -0
- package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +39 -0
- package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +20 -0
- package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +49 -0
- package/esm2022/lib/components/bmb-icon/types.mjs +2 -0
- package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +23 -0
- package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +24 -0
- package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +19 -0
- package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +21 -0
- package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +33 -0
- package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +77 -0
- package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +147 -0
- package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.component.mjs +162 -0
- package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.service.mjs +116 -0
- package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +178 -0
- package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +85 -0
- package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +219 -0
- package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +191 -0
- package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +54 -0
- package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +34 -0
- package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +28 -0
- package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +23 -0
- package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +83 -0
- package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +60 -0
- package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +55 -0
- package/esm2022/lib/components/bmb-list-group/types.mjs +2 -0
- package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +83 -0
- package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +77 -0
- package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +55 -0
- package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +66 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +40 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +20 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +33 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-four.component.mjs +87 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-one.component.mjs +88 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-three.component.mjs +57 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-two.component.mjs +99 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step.component.mjs +39 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +44 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +52 -0
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +70 -0
- package/esm2022/lib/components/bmb-login-onboarding/types.mjs +2 -0
- package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +43 -0
- package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +64 -0
- package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +14 -0
- package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +88 -0
- package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +139 -0
- package/esm2022/lib/components/bmb-modal/bmb-modal.interface.mjs +2 -0
- package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +113 -0
- package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +15 -0
- package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +59 -0
- package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +30 -0
- package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +43 -0
- package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +86 -0
- package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +22 -0
- package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +52 -0
- package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +55 -0
- package/esm2022/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.mjs +129 -0
- package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +153 -0
- package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +39 -0
- package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +196 -0
- package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.mjs +2 -0
- package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +88 -0
- package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +75 -0
- package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +24 -0
- package/esm2022/lib/components/bmb-push-notification/types.mjs +2 -0
- package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +78 -0
- package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +117 -0
- package/esm2022/lib/components/bmb-select/bmb-select-item/bmb-select-item.component.mjs +16 -0
- package/esm2022/lib/components/bmb-select/bmb-select.component.mjs +55 -0
- package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +82 -0
- package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +103 -0
- package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.interface.mjs +2 -0
- package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +64 -0
- package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +16 -0
- package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +64 -0
- package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +32 -0
- package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +41 -0
- package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +53 -0
- package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +27 -0
- package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +88 -0
- package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +545 -0
- package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +2 -0
- package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +127 -0
- package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +65 -0
- package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +135 -0
- package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +43 -0
- package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +65 -0
- package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +30 -0
- package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +74 -0
- package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +13 -0
- package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +238 -0
- package/esm2022/lib/components/bmb-timestream/types.mjs +2 -0
- package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +139 -0
- package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +61 -0
- package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +47 -0
- package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +26 -0
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +31 -0
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +56 -0
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +80 -0
- package/esm2022/lib/components/bmb-top-bar/types.mjs +2 -0
- package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +139 -0
- package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +44 -0
- package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +19 -0
- package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +71 -0
- package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +51 -0
- package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +28 -0
- package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +23 -0
- package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +85 -0
- package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +128 -0
- package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +55 -0
- package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +88 -0
- package/esm2022/lib/directives/bmb-button/button.directive.mjs +84 -0
- package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +29 -0
- package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +51 -0
- package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +36 -0
- package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +34 -0
- package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +37 -0
- package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +89 -0
- package/esm2022/lib/directives/utils/clickoutside.directive.mjs +41 -0
- package/esm2022/lib/ds-ng.component.mjs +11 -0
- package/esm2022/lib/ds-ng.service.mjs +14 -0
- package/esm2022/lib/services/calendar.service.mjs +51 -0
- package/esm2022/lib/services/index.mjs +3 -0
- package/esm2022/lib/services/native-modal.service.mjs +60 -0
- package/esm2022/lib/services/notification.service.mjs +77 -0
- package/esm2022/lib/services/projection.service.mjs +49 -0
- package/esm2022/lib/services/tabs.service.mjs +30 -0
- package/esm2022/lib/services/theme.service.mjs +30 -0
- package/esm2022/lib/services/toast.service.mjs +24 -0
- package/esm2022/lib/services/user/profile.service.mjs +26 -0
- package/esm2022/lib/types/colors.mjs +2 -0
- package/esm2022/lib/types/index.mjs +11 -0
- package/esm2022/lib/utils/countryCodes.mjs +1089 -0
- package/esm2022/lib/utils/currencyFormat.mjs +7 -0
- package/esm2022/lib/utils/dropdown.mjs +85 -0
- package/esm2022/lib/utils/formControl.mjs +25 -0
- package/esm2022/lib/utils/timestreamFilters.mjs +32 -0
- package/esm2022/lib/utils/utils.mjs +66 -0
- package/esm2022/public-api.mjs +152 -0
- package/esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +5 -0
- package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +3884 -3179
- package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
- package/index.d.ts +5 -3573
- package/lib/components/bmb-academic-progress/bmb-academic-progress.component.d.ts +21 -0
- package/lib/components/bmb-accordion/bmb-accordion.component.d.ts +37 -0
- package/lib/components/bmb-account-statement/bmb-account-statement.component.d.ts +54 -0
- package/lib/components/bmb-action-icon/bmb-action-icon.component.d.ts +23 -0
- package/lib/components/bmb-action-menu/bmb-action-menu.component.d.ts +17 -0
- package/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.d.ts +13 -0
- package/lib/components/bmb-advertisement-card/types.d.ts +21 -0
- package/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.d.ts +10 -0
- package/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.d.ts +7 -0
- package/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.d.ts +31 -0
- package/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.d.ts +20 -0
- package/lib/components/bmb-alert-center/bmb-alert-center.component.d.ts +46 -0
- package/lib/components/bmb-alert-center/bmb-alert-center.service.d.ts +20 -0
- package/lib/components/bmb-alert-center/types.d.ts +64 -0
- package/lib/components/bmb-badge/bmb-badge.component.d.ts +11 -0
- package/lib/components/bmb-balance-overview/bmb-balance-overview.component.d.ts +15 -0
- package/lib/components/bmb-bookmark/bmb-bookmark.component.d.ts +8 -0
- package/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.d.ts +25 -0
- package/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.d.ts +27 -0
- package/lib/components/bmb-button-icon/bmb-button-icon.component.d.ts +16 -0
- package/lib/components/bmb-calendar/bmb-calendar.component.d.ts +65 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.d.ts +20 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.d.ts +13 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.d.ts +16 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.d.ts +18 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-template-event-list/bmb-calendar-template-event-list.component.d.ts +17 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.d.ts +31 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.d.ts +18 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.d.ts +23 -0
- package/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.d.ts +9 -0
- package/lib/components/bmb-calendar/types.d.ts +43 -0
- package/lib/components/bmb-calendar/utils.d.ts +12 -0
- package/lib/components/bmb-card/bmb-card.component.d.ts +42 -0
- package/lib/components/bmb-card-button/bmb-card-button.component.d.ts +50 -0
- package/lib/components/bmb-carousel/bmb-carousel.component.d.ts +20 -0
- package/lib/components/bmb-chat-bar/bmb-chat-bar.component.d.ts +62 -0
- package/lib/components/bmb-chat-bar/bot_list.d.ts +6 -0
- package/lib/components/bmb-chat-bar/types.d.ts +9 -0
- package/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.d.ts +23 -0
- package/lib/components/bmb-chat-bubbles/types.d.ts +23 -0
- package/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.d.ts +21 -0
- package/lib/components/bmb-checkbox/bmb-checkbox.component.d.ts +33 -0
- package/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.d.ts +17 -0
- package/lib/components/bmb-container/bmb-container.component.d.ts +9 -0
- package/lib/components/bmb-container-button/bmb-container-button.component.d.ts +39 -0
- package/lib/components/bmb-date-range/bmb-date-range.component.d.ts +35 -0
- package/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.d.ts +40 -0
- package/lib/components/bmb-datepicker/bmb-datepicker.component.d.ts +44 -0
- package/lib/components/bmb-digital-id/bmb-digital-id.component.d.ts +26 -0
- package/lib/components/bmb-divider/bmb-divider.component.d.ts +8 -0
- package/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.d.ts +17 -0
- package/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.d.ts +24 -0
- package/lib/components/bmb-dropdown/bmb-dropdown.component.d.ts +61 -0
- package/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.d.ts +10 -0
- package/lib/components/bmb-dropzone/bmb-dropzone.component.d.ts +49 -0
- package/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.d.ts +45 -0
- package/lib/components/bmb-external-link/bmb-external-link.component.d.ts +22 -0
- package/lib/components/bmb-fab/bmb-fab-.interface.d.ts +10 -0
- package/lib/components/bmb-fab/bmb-fab.component.d.ts +15 -0
- package/lib/components/bmb-filter-card/bmb-filter-card.component.d.ts +33 -0
- package/lib/components/bmb-filter-card/bmb-filter-card.interface.d.ts +10 -0
- package/lib/components/bmb-focus-element/bmb-focus-element.component.d.ts +14 -0
- package/lib/components/bmb-form-validation/bmb-form-validation.component.d.ts +34 -0
- package/lib/components/bmb-form-validator/bmb-form-validator.component.d.ts +34 -0
- package/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.d.ts +13 -0
- package/lib/components/bmb-grade-value/bmb-grade-value.component.d.ts +11 -0
- package/lib/components/bmb-grades/bmb-grades.component.d.ts +43 -0
- package/lib/components/bmb-grades/types.d.ts +25 -0
- package/lib/components/bmb-header-mitec/bmb-header-mitec.component.d.ts +17 -0
- package/lib/components/bmb-header-mobile/bmb-header-mobile.component.d.ts +23 -0
- package/lib/components/bmb-hito-card/bmb-hito-card.component.d.ts +23 -0
- package/lib/components/bmb-hito-list/bmb-hito-list.component.d.ts +24 -0
- package/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.d.ts +28 -0
- package/lib/components/bmb-home-card/bmb-home-card.component.d.ts +27 -0
- package/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.d.ts +25 -0
- package/lib/components/bmb-home-section/bmb-home-section.component.d.ts +9 -0
- package/lib/components/bmb-icon/bmb-icon.component.d.ts +23 -0
- package/lib/components/bmb-icon/types.d.ts +1 -0
- package/lib/components/bmb-icon-item/bmb-icon-item.component.d.ts +13 -0
- package/lib/components/bmb-icon-status/bmb-icon-status.component.d.ts +10 -0
- package/lib/components/bmb-iframe/bmb-iframe.component.d.ts +11 -0
- package/lib/components/bmb-iframe/bmb-iframe.pipe.d.ts +10 -0
- package/lib/components/bmb-image/bmb-image.component.d.ts +19 -0
- package/lib/components/bmb-inner-header/bmb-inner-header.component.d.ts +29 -0
- package/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.d.ts +53 -0
- package/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.component.d.ts +46 -0
- package/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.service.d.ts +16 -0
- package/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.d.ts +45 -0
- package/lib/components/bmb-input/bmb-input.component.d.ts +68 -0
- package/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.d.ts +52 -0
- package/lib/components/bmb-input-tags/bmb-input-tags.component.d.ts +55 -0
- package/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.d.ts +23 -0
- package/lib/components/bmb-invoice/bmb-invoice.component.d.ts +31 -0
- package/lib/components/bmb-item/bmb-item.component.d.ts +16 -0
- package/lib/components/bmb-legend/bmb-legend.component.d.ts +9 -0
- package/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.d.ts +33 -0
- package/lib/components/bmb-list-group/bmb-list-group.component.d.ts +27 -0
- package/lib/components/bmb-list-group/bmb-list-group.service.d.ts +18 -0
- package/lib/components/bmb-list-group/types.d.ts +1 -0
- package/lib/components/bmb-list-items/bmb-list-items.component.d.ts +33 -0
- package/lib/components/bmb-loader/bmb-loader.component.d.ts +31 -0
- package/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.d.ts +27 -0
- package/lib/components/bmb-login/bmb-login.component.d.ts +33 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.d.ts +14 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.d.ts +8 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.d.ts +12 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-four.component.d.ts +18 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-one.component.d.ts +17 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-three.component.d.ts +11 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-two.component.d.ts +19 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step.component.d.ts +19 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.d.ts +15 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.d.ts +20 -0
- package/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.d.ts +25 -0
- package/lib/components/bmb-login-onboarding/types.d.ts +15 -0
- package/lib/components/bmb-logo/bmb-logo.component.d.ts +19 -0
- package/lib/components/bmb-media-card/bmb-media-card.component.d.ts +34 -0
- package/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.d.ts +6 -0
- package/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.d.ts +47 -0
- package/lib/components/bmb-modal/bmb-modal.component.d.ts +31 -0
- package/lib/components/bmb-modal/bmb-modal.interface.d.ts +41 -0
- package/lib/components/bmb-modal/bmb-native-modal.component.d.ts +44 -0
- package/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.d.ts +7 -0
- package/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.d.ts +15 -0
- package/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.d.ts +13 -0
- package/lib/components/bmb-notice-card/bmb-notice-card.component.d.ts +21 -0
- package/lib/components/bmb-notification-card/bmb-notification-card.component.d.ts +27 -0
- package/lib/components/bmb-overlay/bmb-overlay.component.d.ts +9 -0
- package/lib/components/bmb-paginator/bmb-paginator.component.d.ts +14 -0
- package/lib/components/bmb-portal/bmb-portal.component.d.ts +22 -0
- package/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.d.ts +42 -0
- package/lib/components/bmb-profile/bmb-profile.component.d.ts +34 -0
- package/lib/components/bmb-progress-bar/bmb-progress-bar.component.d.ts +19 -0
- package/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.d.ts +51 -0
- package/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.d.ts +12 -0
- package/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.d.ts +23 -0
- package/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.d.ts +18 -0
- package/lib/components/bmb-push-notification/bmb-push-notification.component.d.ts +11 -0
- package/lib/components/bmb-push-notification/types.d.ts +46 -0
- package/lib/components/bmb-radial/bmb-radial.component.d.ts +33 -0
- package/lib/components/bmb-search-input/bmb-search-input.component.d.ts +33 -0
- package/lib/components/bmb-select/bmb-select-item/bmb-select-item.component.d.ts +6 -0
- package/lib/components/bmb-select/bmb-select.component.d.ts +17 -0
- package/lib/components/bmb-server-table/bmb-server-table.component.d.ts +26 -0
- package/lib/components/bmb-sidebar/bmb-sidebar.component.d.ts +27 -0
- package/lib/components/bmb-sidebar/bmb-sidebar.interface.d.ts +10 -0
- package/lib/components/bmb-simple-header/bmb-simple-header.component.d.ts +10 -0
- package/lib/components/bmb-skeleton/bmb-skeleton.component.d.ts +7 -0
- package/lib/components/bmb-sounds-card/bmb-sounds-card.component.d.ts +24 -0
- package/lib/components/bmb-stat-counter/bmb-stat-counter.component.d.ts +11 -0
- package/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.d.ts +20 -0
- package/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.d.ts +23 -0
- package/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.d.ts +10 -0
- package/lib/components/bmb-switch/bmb-switch.component.d.ts +25 -0
- package/lib/components/bmb-tables/bmb-tables.component.d.ts +104 -0
- package/lib/components/bmb-tables/bmb-tables.interface.d.ts +21 -0
- package/lib/components/bmb-tabs/bmb-tabs.component.d.ts +41 -0
- package/lib/components/bmb-tags/bmb-tags.component.d.ts +25 -0
- package/lib/components/bmb-text-editor/bmb-text-editor.component.d.ts +34 -0
- package/lib/components/bmb-text-link/bmb-text-link.component.d.ts +17 -0
- package/lib/components/bmb-theme/bmb-theme.component.d.ts +19 -0
- package/lib/components/bmb-three-cols/bmb-three-cols.component.d.ts +15 -0
- package/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.d.ts +25 -0
- package/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.d.ts +5 -0
- package/lib/components/bmb-timestream/bmb-timestream.component.d.ts +67 -0
- package/lib/components/bmb-timestream/types.d.ts +54 -0
- package/lib/components/bmb-timestream-card/bmb-timestream-card.component.d.ts +29 -0
- package/lib/components/bmb-title-content/bmb-title-content.component.d.ts +26 -0
- package/lib/components/bmb-toast/bmb-toast.component.d.ts +16 -0
- package/lib/components/bmb-tooltip/bmb-tooltip.component.d.ts +15 -0
- package/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.d.ts +7 -0
- package/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.d.ts +30 -0
- package/lib/components/bmb-top-bar/bmb-top-bar.component.d.ts +44 -0
- package/lib/components/bmb-top-bar/types.d.ts +6 -0
- package/lib/components/bmb-totp/bmb-totp.component.d.ts +31 -0
- package/lib/components/bmb-user-image/bmb-user-image.component.d.ts +19 -0
- package/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.d.ts +10 -0
- package/lib/components/bmb-user-profile/bmb-user-profile.component.d.ts +19 -0
- package/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.d.ts +24 -0
- package/lib/components/bmb-user-summary/bmb-user-summary.component.d.ts +14 -0
- package/lib/components/bmb-value-counter/bmb-value-counter.component.d.ts +8 -0
- package/lib/components/bmb-web-templates/bmb-web-templates.component.d.ts +42 -0
- package/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.d.ts +40 -0
- package/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.d.ts +16 -0
- package/lib/directives/bmb-accordion/bmb-accordion-control.directive.d.ts +22 -0
- package/lib/directives/bmb-button/button.directive.d.ts +29 -0
- package/lib/directives/bmb-button-group/bmb-button-group.directive.d.ts +10 -0
- package/lib/directives/bmb-layout/bmb-layout-item.directive.d.ts +20 -0
- package/lib/directives/bmb-layout/bmb-layout.directive.d.ts +15 -0
- package/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.d.ts +9 -0
- package/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.d.ts +14 -0
- package/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.d.ts +29 -0
- package/lib/directives/utils/clickoutside.directive.d.ts +15 -0
- package/lib/ds-ng.component.d.ts +5 -0
- package/lib/ds-ng.service.d.ts +6 -0
- package/lib/services/calendar.service.d.ts +15 -0
- package/lib/services/index.d.ts +2 -0
- package/lib/services/native-modal.service.d.ts +18 -0
- package/lib/services/notification.service.d.ts +20 -0
- package/lib/services/projection.service.d.ts +30 -0
- package/lib/services/tabs.service.d.ts +13 -0
- package/lib/services/theme.service.d.ts +11 -0
- package/lib/services/toast.service.d.ts +9 -0
- package/lib/services/user/profile.service.d.ts +9 -0
- package/lib/types/colors.d.ts +2 -0
- package/lib/types/index.d.ts +127 -0
- package/lib/utils/countryCodes.d.ts +7 -0
- package/lib/utils/currencyFormat.d.ts +1 -0
- package/lib/utils/dropdown.d.ts +6 -0
- package/lib/utils/formControl.d.ts +7 -0
- package/lib/utils/timestreamFilters.d.ts +2 -0
- package/lib/utils/utils.d.ts +12 -0
- package/package.json +4 -2
- package/public-api.d.ts +143 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, model, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import { BmbDatepickerComponent } from '../bmb-datepicker/bmb-datepicker.component';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { assignNewFormControl, newFormControlByType, } from '../../utils/formControl';
|
|
5
|
+
import { getUUID } from '../../utils/utils';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common";
|
|
8
|
+
export class BmbDateRangeComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.inputId = input(getUUID());
|
|
11
|
+
this.label = input(''); //Deprecated
|
|
12
|
+
this.labelStartDate = input('');
|
|
13
|
+
this.labelEndDate = input('');
|
|
14
|
+
this.icon = input('calendar_month');
|
|
15
|
+
this.invalidFormatErrorMessage = input();
|
|
16
|
+
this.requiredFieldErrorMessage = input();
|
|
17
|
+
this.appearance = input('normal'); //Deprecated
|
|
18
|
+
this.disabled = input(false);
|
|
19
|
+
this.isRequired = input(false);
|
|
20
|
+
this.isClearable = input(false);
|
|
21
|
+
this.controlStart = model(newFormControlByType());
|
|
22
|
+
this.controlEnd = model(newFormControlByType());
|
|
23
|
+
this.dateFormat = input('dd/MM/yyyy');
|
|
24
|
+
this.placeholderStartDate = input(this.dateFormat());
|
|
25
|
+
this.placeholderEndDate = input(this.dateFormat());
|
|
26
|
+
this.stepYearPicker = input(12);
|
|
27
|
+
this.name = input(getUUID());
|
|
28
|
+
this.multipleRow = input(false);
|
|
29
|
+
this.customValidation = input();
|
|
30
|
+
this.errorMessage = input('');
|
|
31
|
+
this.disableDatesBefore = '';
|
|
32
|
+
this.disableDatesAfter = '';
|
|
33
|
+
this.isControlStartNull = false;
|
|
34
|
+
this.isControlEndNull = false;
|
|
35
|
+
}
|
|
36
|
+
ngOnInit() {
|
|
37
|
+
if (!this.controlStart()) {
|
|
38
|
+
this.controlStart.set(assignNewFormControl(this.name(), this.controlStart()));
|
|
39
|
+
this.isControlStartNull = true;
|
|
40
|
+
}
|
|
41
|
+
if (!this.controlEnd()) {
|
|
42
|
+
this.controlEnd.set(assignNewFormControl(this.name(), this.controlEnd()));
|
|
43
|
+
this.isControlEndNull = true;
|
|
44
|
+
}
|
|
45
|
+
this.controlStart()?.valueChanges.subscribe((value) => {
|
|
46
|
+
if (!!value) {
|
|
47
|
+
this.disableDatesBefore = value;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
this.controlEnd()?.valueChanges.subscribe((value) => {
|
|
51
|
+
if (!!value) {
|
|
52
|
+
this.disableDatesAfter = value;
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
getClassList() {
|
|
57
|
+
const classList = ['bmb_date-range'];
|
|
58
|
+
if (!this.multipleRow())
|
|
59
|
+
classList.push('bmb_date-range-column');
|
|
60
|
+
return classList;
|
|
61
|
+
}
|
|
62
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbDateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BmbDateRangeComponent, isStandalone: true, selector: "bmb-date-range", inputs: { inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelStartDate: { classPropertyName: "labelStartDate", publicName: "labelStartDate", isSignal: true, isRequired: false, transformFunction: null }, labelEndDate: { classPropertyName: "labelEndDate", publicName: "labelEndDate", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, invalidFormatErrorMessage: { classPropertyName: "invalidFormatErrorMessage", publicName: "invalidFormatErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, requiredFieldErrorMessage: { classPropertyName: "requiredFieldErrorMessage", publicName: "requiredFieldErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, isRequired: { classPropertyName: "isRequired", publicName: "isRequired", isSignal: true, isRequired: false, transformFunction: null }, isClearable: { classPropertyName: "isClearable", publicName: "isClearable", isSignal: true, isRequired: false, transformFunction: null }, controlStart: { classPropertyName: "controlStart", publicName: "controlStart", isSignal: true, isRequired: false, transformFunction: null }, controlEnd: { classPropertyName: "controlEnd", publicName: "controlEnd", isSignal: true, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: true, isRequired: false, transformFunction: null }, placeholderStartDate: { classPropertyName: "placeholderStartDate", publicName: "placeholderStartDate", isSignal: true, isRequired: false, transformFunction: null }, placeholderEndDate: { classPropertyName: "placeholderEndDate", publicName: "placeholderEndDate", isSignal: true, isRequired: false, transformFunction: null }, stepYearPicker: { classPropertyName: "stepYearPicker", publicName: "stepYearPicker", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, multipleRow: { classPropertyName: "multipleRow", publicName: "multipleRow", isSignal: true, isRequired: false, transformFunction: null }, customValidation: { classPropertyName: "customValidation", publicName: "customValidation", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { controlStart: "controlStartChange", controlEnd: "controlEndChange" }, ngImport: i0, template: "<section [ngClass]=\"getClassList()\">\n <bmb-datepicker\n [label]=\"labelStartDate() || label()\"\n [placeholder]=\"placeholderStartDate()\"\n [name]=\"name() + '_start'\"\n [control]=\"controlStart()\"\n [dateFormat]=\"dateFormat()\"\n [disabled]=\"disabled()\"\n [icon]=\"icon()\"\n [isRequired]=\"isRequired()\"\n [isClearable]=\"isClearable()\"\n [invalidFormatErrorMessage]=\"invalidFormatErrorMessage()\"\n [requiredFieldErrorMessage]=\"requiredFieldErrorMessage()\"\n [disableDatesAfter]=\"disableDatesAfter\"\n helperMessage=\"\"\n [customValidation]=\"customValidation()\"\n [errorMessage]=\"errorMessage()\"\n />\n <bmb-datepicker\n [label]=\"labelEndDate() || label()\"\n [placeholder]=\"placeholderEndDate()\"\n [name]=\"name() + '_end'\"\n [control]=\"controlEnd()\"\n [dateFormat]=\"dateFormat()\"\n [disabled]=\"disabled()\"\n [icon]=\"icon()\"\n [isRequired]=\"isRequired()\"\n [isClearable]=\"isClearable()\"\n [invalidFormatErrorMessage]=\"invalidFormatErrorMessage()\"\n [requiredFieldErrorMessage]=\"requiredFieldErrorMessage()\"\n [disableDatesBefore]=\"disableDatesBefore\"\n helperMessage=\"\"\n [customValidation]=\"customValidation()\"\n [errorMessage]=\"errorMessage()\"\n />\n</section>\n", styles: ["@font-face{font-family:Poppins-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_date-range{display:flex;flex-flow:column}.bmb_date-range>*{flex:1}.bmb_date-range-column{flex-flow:row}@media (max-width: 699px){.bmb_date-range-column{flex-flow:column}}.bmb_date-range-column bmb-datepicker:first-child .bmb_field-actions{right:2.5rem}.bmb_date-range-column bmb-datepicker:first-child .bmb_field-wrapper:after{content:\"\";width:1rem;height:0;border-top:.125rem solid;margin:0 .625rem;display:inline-block}@media (max-width: 699px){.bmb_date-range-column bmb-datepicker:first-child .bmb_field-wrapper:after{display:none}}\n"], dependencies: [{ kind: "component", type: BmbDatepickerComponent, selector: "bmb-datepicker", inputs: ["inputId", "label", "icon", "dateFormat", "invalidFormatErrorMessage", "requiredFieldErrorMessage", "appearance", "disabled", "isRequired", "isClearable", "placeholder", "stepYearPicker", "name", "disableDatesBefore", "disableDatesAfter", "lang", "helperMessage", "value", "customValidation", "errorMessage", "control"], outputs: ["controlChange", "onChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
64
|
+
}
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbDateRangeComponent, decorators: [{
|
|
66
|
+
type: Component,
|
|
67
|
+
args: [{ selector: 'bmb-date-range', standalone: true, imports: [BmbDatepickerComponent, CommonModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<section [ngClass]=\"getClassList()\">\n <bmb-datepicker\n [label]=\"labelStartDate() || label()\"\n [placeholder]=\"placeholderStartDate()\"\n [name]=\"name() + '_start'\"\n [control]=\"controlStart()\"\n [dateFormat]=\"dateFormat()\"\n [disabled]=\"disabled()\"\n [icon]=\"icon()\"\n [isRequired]=\"isRequired()\"\n [isClearable]=\"isClearable()\"\n [invalidFormatErrorMessage]=\"invalidFormatErrorMessage()\"\n [requiredFieldErrorMessage]=\"requiredFieldErrorMessage()\"\n [disableDatesAfter]=\"disableDatesAfter\"\n helperMessage=\"\"\n [customValidation]=\"customValidation()\"\n [errorMessage]=\"errorMessage()\"\n />\n <bmb-datepicker\n [label]=\"labelEndDate() || label()\"\n [placeholder]=\"placeholderEndDate()\"\n [name]=\"name() + '_end'\"\n [control]=\"controlEnd()\"\n [dateFormat]=\"dateFormat()\"\n [disabled]=\"disabled()\"\n [icon]=\"icon()\"\n [isRequired]=\"isRequired()\"\n [isClearable]=\"isClearable()\"\n [invalidFormatErrorMessage]=\"invalidFormatErrorMessage()\"\n [requiredFieldErrorMessage]=\"requiredFieldErrorMessage()\"\n [disableDatesBefore]=\"disableDatesBefore\"\n helperMessage=\"\"\n [customValidation]=\"customValidation()\"\n [errorMessage]=\"errorMessage()\"\n />\n</section>\n", styles: ["@font-face{font-family:Poppins-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_date-range{display:flex;flex-flow:column}.bmb_date-range>*{flex:1}.bmb_date-range-column{flex-flow:row}@media (max-width: 699px){.bmb_date-range-column{flex-flow:column}}.bmb_date-range-column bmb-datepicker:first-child .bmb_field-actions{right:2.5rem}.bmb_date-range-column bmb-datepicker:first-child .bmb_field-wrapper:after{content:\"\";width:1rem;height:0;border-top:.125rem solid;margin:0 .625rem;display:inline-block}@media (max-width: 699px){.bmb_date-range-column bmb-datepicker:first-child .bmb_field-wrapper:after{display:none}}\n"] }]
|
|
68
|
+
}] });
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWRhdGUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1kYXRlLXJhbmdlL2JtYi1kYXRlLXJhbmdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZGF0ZS1yYW5nZS9ibWItZGF0ZS1yYW5nZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUVMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFLL0MsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixvQkFBb0IsR0FDckIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQVc1QyxNQUFNLE9BQU8scUJBQXFCO0lBVGxDO1FBVUUsWUFBTyxHQUFHLEtBQUssQ0FBUyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLFVBQUssR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZO1FBQ3ZDLG1CQUFjLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLGlCQUFZLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2pDLFNBQUksR0FBRyxLQUFLLENBQVMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2Qyw4QkFBeUIsR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUM1Qyw4QkFBeUIsR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUM1Qyxl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QkFHaEMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBtb2RlbCxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCbWJEYXRlcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRhdGVwaWNrZXIvYm1iLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBJQm1iSW5wdXRBcHBlYXJhbmNlLFxuICBJQm1iSW5wdXRFcnJvcixcbn0gZnJvbSAnLi4vYm1iLWlucHV0L2JtYi1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgYXNzaWduTmV3Rm9ybUNvbnRyb2wsXG4gIG5ld0Zvcm1Db250cm9sQnlUeXBlLFxufSBmcm9tICcuLi8uLi91dGlscy9mb3JtQ29udHJvbCc7XG5pbXBvcnQgeyBnZXRVVUlEIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItZGF0ZS1yYW5nZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtCbWJEYXRlcGlja2VyQ29tcG9uZW50LCBDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYm1iLWRhdGUtcmFuZ2UuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iRGF0ZVJhbmdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgaW5wdXRJZCA9IGlucHV0PHN0cmluZz4oZ2V0VVVJRCgpKTtcbiAgbGFiZWwgPSBpbnB1dDxzdHJpbmc+KCcnKTsgLy9EZXByZWNhdGVkXG4gIGxhYmVsU3RhcnREYXRlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGxhYmVsRW5kRGF0ZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICBpY29uID0gaW5wdXQ8c3RyaW5nPignY2FsZW5kYXJfbW9udGgnKTtcbiAgaW52YWxpZEZvcm1hdEVycm9yTWVzc2FnZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgcmVxdWlyZWRGaWVsZEVycm9yTWVzc2FnZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgYXBwZWFyYW5jZSA9IGlucHV0PElCbWJJbnB1dEFwcGVhcmFuY2UgfCBzdHJpbmc+KCdub3JtYWwnKTsgLy9EZXByZWNhdGVkXG4gIGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc1JlcXVpcmVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0NsZWFyYWJsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgY29udHJvbFN0YXJ0ID0gbW9kZWw8Rm9ybUNvbnRyb2w+KG5ld0Zvcm1Db250cm9sQnlUeXBlKCkpO1xuICBjb250cm9sRW5kID0gbW9kZWw8Rm9ybUNvbnRyb2w+KG5ld0Zvcm1Db250cm9sQnlUeXBlKCkpO1xuICBkYXRlRm9ybWF0ID0gaW5wdXQ8c3RyaW5nPignZGQvTU0veXl5eScpO1xuICBwbGFjZWhvbGRlclN0YXJ0RGF0ZSA9IGlucHV0PHN0cmluZz4odGhpcy5kYXRlRm9ybWF0KCkpO1xuICBwbGFjZWhvbGRlckVuZERhdGUgPSBpbnB1dDxzdHJpbmc+KHRoaXMuZGF0ZUZvcm1hdCgpKTtcbiAgc3RlcFllYXJQaWNrZXIgPSBpbnB1dDxudW1iZXI+KDEyKTtcbiAgbmFtZSA9IGlucHV0PHN0cmluZz4oZ2V0VVVJRCgpKTtcbiAgbXVsdGlwbGVSb3cgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGN1c3RvbVZhbGlkYXRpb24gPSBpbnB1dDxWYWxpZGF0b3JGbj4oKTtcbiAgZXJyb3JNZXNzYWdlID0gaW5wdXQ8c3RyaW5nIHwgSUJtYklucHV0RXJyb3I+KCcnKTtcblxuICBkaXNhYmxlRGF0ZXNCZWZvcmU6IHN0cmluZyA9ICcnO1xuICBkaXNhYmxlRGF0ZXNBZnRlcjogc3RyaW5nID0gJyc7XG4gIGlzQ29udHJvbFN0YXJ0TnVsbDogYm9vbGVhbiA9IGZhbHNlO1xuICBpc0NvbnRyb2xFbmROdWxsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKCF0aGlzLmNvbnRyb2xTdGFydCgpKSB7XG4gICAgICB0aGlzLmNvbnRyb2xTdGFydC5zZXQoXG4gICAgICAgIGFzc2lnbk5ld0Zvcm1Db250cm9sKHRoaXMubmFtZSgpLCB0aGlzLmNvbnRyb2xTdGFydCgpKSEsXG4gICAgICApO1xuICAgICAgdGhpcy5pc0NvbnRyb2xTdGFydE51bGwgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5jb250cm9sRW5kKCkpIHtcbiAgICAgIHRoaXMuY29udHJvbEVuZC5zZXQoXG4gICAgICAgIGFzc2lnbk5ld0Zvcm1Db250cm9sKHRoaXMubmFtZSgpLCB0aGlzLmNvbnRyb2xFbmQoKSkhLFxuICAgICAgKTtcbiAgICAgIHRoaXMuaXNDb250cm9sRW5kTnVsbCA9IHRydWU7XG4gICAgfVxuXG4gICAgdGhpcy5jb250cm9sU3RhcnQoKT8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgIGlmICghIXZhbHVlKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZURhdGVzQmVmb3JlID0gdmFsdWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmNvbnRyb2xFbmQoKT8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgIGlmICghIXZhbHVlKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZURhdGVzQWZ0ZXIgPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldENsYXNzTGlzdCgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgY2xhc3NMaXN0ID0gWydibWJfZGF0ZS1yYW5nZSddO1xuICAgIGlmICghdGhpcy5tdWx0aXBsZVJvdygpKSBjbGFzc0xpc3QucHVzaCgnYm1iX2RhdGUtcmFuZ2UtY29sdW1uJyk7XG4gICAgcmV0dXJuIGNsYXNzTGlzdDtcbiAgfVxufVxuIiwiPHNlY3Rpb24gW25nQ2xhc3NdPVwiZ2V0Q2xhc3NMaXN0KClcIj5cbiAgPGJtYi1kYXRlcGlja2VyXG4gICAgW2xhYmVsXT1cImxhYmVsU3RhcnREYXRlKCkgfHwgbGFiZWwoKVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyU3RhcnREYXRlKClcIlxuICAgIFtuYW1lXT1cIm5hbWUoKSArICdfc3RhcnQnXCJcbiAgICBbY29udHJvbF09XCJjb250cm9sU3RhcnQoKVwiXG4gICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdCgpXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgW2ljb25dPVwiaWNvbigpXCJcbiAgICBbaXNSZXF1aXJlZF09XCJpc1JlcXVpcmVkKClcIlxuICAgIFtpc0NsZWFyYWJsZV09XCJpc0NsZWFyYWJsZSgpXCJcbiAgICBbaW52YWxpZEZvcm1hdEVycm9yTWVzc2FnZV09XCJpbnZhbGlkRm9ybWF0RXJyb3JNZXNzYWdlKClcIlxuICAgIFtyZXF1aXJlZEZpZWxkRXJyb3JNZXNzYWdlXT1cInJlcXVpcmVkRmllbGRFcnJvck1lc3NhZ2UoKVwiXG4gICAgW2Rpc2FibGVEYXRlc0FmdGVyXT1cImRpc2FibGVEYXRlc0FmdGVyXCJcbiAgICBoZWxwZXJNZXNzYWdlPVwiXCJcbiAgICBbY3VzdG9tVmFsaWRhdGlvbl09XCJjdXN0b21WYWxpZGF0aW9uKClcIlxuICAgIFtlcnJvck1lc3NhZ2VdPVwiZXJyb3JNZXNzYWdlKClcIlxuICAvPlxuICA8Ym1iLWRhdGVwaWNrZXJcbiAgICBbbGFiZWxdPVwibGFiZWxFbmREYXRlKCkgfHwgbGFiZWwoKVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyRW5kRGF0ZSgpXCJcbiAgICBbbmFtZV09XCJuYW1lKCkgKyAnX2VuZCdcIlxuICAgIFtjb250cm9sXT1cImNvbnRyb2xFbmQoKVwiXG4gICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdCgpXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgW2ljb25dPVwiaWNvbigpXCJcbiAgICBbaXNSZXF1aXJlZF09XCJpc1JlcXVpcmVkKClcIlxuICAgIFtpc0NsZWFyYWJsZV09XCJpc0NsZWFyYWJsZSgpXCJcbiAgICBbaW52YWxpZEZvcm1hdEVycm9yTWVzc2FnZV09XCJpbnZhbGlkRm9ybWF0RXJyb3JNZXNzYWdlKClcIlxuICAgIFtyZXF1aXJlZEZpZWxkRXJyb3JNZXNzYWdlXT1cInJlcXVpcmVkRmllbGRFcnJvck1lc3NhZ2UoKVwiXG4gICAgW2Rpc2FibGVEYXRlc0JlZm9yZV09XCJkaXNhYmxlRGF0ZXNCZWZvcmVcIlxuICAgIGhlbHBlck1lc3NhZ2U9XCJcIlxuICAgIFtjdXN0b21WYWxpZGF0aW9uXT1cImN1c3RvbVZhbGlkYXRpb24oKVwiXG4gICAgW2Vycm9yTWVzc2FnZV09XCJlcnJvck1lc3NhZ2UoKVwiXG4gIC8+XG48L3NlY3Rpb24+XG4iXX0=
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import { BmbLayoutDirective } from '../../../directives/bmb-layout/bmb-layout.directive';
|
|
3
|
+
import { BmbLayoutItemDirective } from '../../../directives/bmb-layout/bmb-layout-item.directive';
|
|
4
|
+
import { DateTime, Info } from 'luxon';
|
|
5
|
+
import { weeksAndDays } from '../../bmb-calendar/utils';
|
|
6
|
+
import { BmbButtonDirective } from '../../../directives/bmb-button/button.directive';
|
|
7
|
+
import { CommonModule } from '@angular/common';
|
|
8
|
+
import { orderDayNames } from '../../../utils/utils';
|
|
9
|
+
import { BmbActionIconComponent } from '../../bmb-action-icon/bmb-action-icon.component';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/common";
|
|
12
|
+
export class BmbDatepickerModalComponent {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.isWindowOpen = input(false);
|
|
15
|
+
this.now = input(DateTime.now());
|
|
16
|
+
this.lang = input('es-MX');
|
|
17
|
+
this.value = input('');
|
|
18
|
+
this.dateFormat = input('dd/MM/yyyy');
|
|
19
|
+
this.stepYearPicker = input(18);
|
|
20
|
+
this.disableDatesBefore = input();
|
|
21
|
+
this.disableDatesAfter = input();
|
|
22
|
+
this.closeWindow = output();
|
|
23
|
+
this.onValueChange = output();
|
|
24
|
+
this.selectedMonth = 0;
|
|
25
|
+
this.monthsNames = Info.months('long', { locale: this.lang() });
|
|
26
|
+
this.month = '';
|
|
27
|
+
this.year = this.now().year;
|
|
28
|
+
this.defaultDayOrder = Info.weekdays('narrow', { locale: this.lang() });
|
|
29
|
+
this.dayNames = orderDayNames(this.defaultDayOrder);
|
|
30
|
+
this.selectedYear = 0;
|
|
31
|
+
this.view = 'calendar';
|
|
32
|
+
this.selectedDate = null;
|
|
33
|
+
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
if (!!this.value()) {
|
|
36
|
+
const formattedDate = DateTime.fromFormat(this.value(), this.dateFormat());
|
|
37
|
+
this.selectedDate = formattedDate;
|
|
38
|
+
this.selectedYear = formattedDate.year;
|
|
39
|
+
this.selectedMonth = formattedDate.month;
|
|
40
|
+
this.month = this.monthsNames[formattedDate.month - 1];
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
this.selectedYear = this.now().year;
|
|
44
|
+
this.selectedMonth = this.now().month;
|
|
45
|
+
this.month =
|
|
46
|
+
this.monthsNames[(this.selectedMonth || this.now().month) - 1];
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
handleMonthChange(event) {
|
|
50
|
+
this.selectedMonth = event + 1;
|
|
51
|
+
this.month = this.monthsNames[event];
|
|
52
|
+
this.view = 'calendar';
|
|
53
|
+
}
|
|
54
|
+
handleYearChange(event) {
|
|
55
|
+
this.selectedYear = parseInt(event, 10);
|
|
56
|
+
this.view = 'calendar';
|
|
57
|
+
}
|
|
58
|
+
getYears() {
|
|
59
|
+
const yearsList = new Array(this.stepYearPicker()).fill(0);
|
|
60
|
+
const currentYear = this.selectedYear;
|
|
61
|
+
const yearsFinal = yearsList.map((_, index) => {
|
|
62
|
+
return (currentYear - (this.stepYearPicker() / 2 - 1) + index).toString();
|
|
63
|
+
});
|
|
64
|
+
return yearsFinal;
|
|
65
|
+
}
|
|
66
|
+
handleDayChange(date) {
|
|
67
|
+
const newValue = date.toFormat(this.dateFormat());
|
|
68
|
+
this.onValueChange.emit(newValue);
|
|
69
|
+
this.closeWindow.emit(false);
|
|
70
|
+
}
|
|
71
|
+
getWeeksAndDays() {
|
|
72
|
+
const firstDayOfMonth = DateTime.fromObject({
|
|
73
|
+
day: 1,
|
|
74
|
+
month: this.selectedMonth ?? this.now().month,
|
|
75
|
+
year: this.selectedYear ?? this.now().year,
|
|
76
|
+
});
|
|
77
|
+
const days = weeksAndDays(firstDayOfMonth);
|
|
78
|
+
return [
|
|
79
|
+
days.slice(0, 7),
|
|
80
|
+
days.slice(7, 14),
|
|
81
|
+
days.slice(14, 21),
|
|
82
|
+
days.slice(21, 28),
|
|
83
|
+
days.slice(28, 35),
|
|
84
|
+
days.slice(35, 42),
|
|
85
|
+
];
|
|
86
|
+
}
|
|
87
|
+
isSelectedDay(date) {
|
|
88
|
+
const classList = [];
|
|
89
|
+
if (date.month === this.selectedMonth) {
|
|
90
|
+
classList.push('bmb_datepicker-modal-button-current-month');
|
|
91
|
+
}
|
|
92
|
+
if (this.selectedDate && date.hasSame(this.selectedDate, 'day'))
|
|
93
|
+
classList.push('bmb_datepicker-modal-button-selected');
|
|
94
|
+
if (this.now().hasSame(date, 'day'))
|
|
95
|
+
classList.push('bmb_datepicker-modal-button-today');
|
|
96
|
+
return classList;
|
|
97
|
+
}
|
|
98
|
+
handleChangeView(view) {
|
|
99
|
+
this.view = view;
|
|
100
|
+
}
|
|
101
|
+
handleChevronClick(event) {
|
|
102
|
+
if (this.view === 'calendar') {
|
|
103
|
+
this.handleChangeMonth(event);
|
|
104
|
+
}
|
|
105
|
+
else if (this.view === 'month') {
|
|
106
|
+
this.handleChangeYear(event, 1);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
this.handleChangeYear(event, this.stepYearPicker());
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
handleChangeYear(event, yearsAmount = 0) {
|
|
113
|
+
if (event === 'less') {
|
|
114
|
+
this.selectedYear = this.selectedYear - yearsAmount;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
this.selectedYear = this.selectedYear + yearsAmount;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
handleChangeMonth(event) {
|
|
121
|
+
if (event === 'less') {
|
|
122
|
+
if (this.selectedMonth === 1) {
|
|
123
|
+
this.selectedMonth = 12;
|
|
124
|
+
this.month = this.monthsNames[this.selectedMonth - 1];
|
|
125
|
+
this.selectedYear = this.selectedYear - 1;
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
this.selectedMonth = this.selectedMonth - 1;
|
|
129
|
+
this.month = this.monthsNames[this.selectedMonth - 1];
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
if (this.selectedMonth === 12) {
|
|
134
|
+
this.selectedMonth = 1;
|
|
135
|
+
this.month = this.monthsNames[this.selectedMonth - 1];
|
|
136
|
+
this.selectedYear = this.selectedYear + 1;
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
this.selectedMonth = this.selectedMonth + 1;
|
|
140
|
+
this.month = this.monthsNames[this.selectedMonth - 1];
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
checkIfDisabled(date) {
|
|
145
|
+
let isValid = this.disableDatesBefore()
|
|
146
|
+
? date.startOf('day') <= this.disableDatesBefore().startOf('day')
|
|
147
|
+
: false;
|
|
148
|
+
isValid =
|
|
149
|
+
!isValid && this.disableDatesAfter()
|
|
150
|
+
? date.startOf('day') >= this.disableDatesAfter().startOf('day')
|
|
151
|
+
: isValid;
|
|
152
|
+
return isValid;
|
|
153
|
+
}
|
|
154
|
+
isSelectedYear(year) {
|
|
155
|
+
return this.selectedYear === parseInt(year);
|
|
156
|
+
}
|
|
157
|
+
onDayKeydown(event, date) {
|
|
158
|
+
if (event.key === 'ArrowRight' ||
|
|
159
|
+
event.key === 'ArrowLeft' ||
|
|
160
|
+
event.key === 'ArrowDown' ||
|
|
161
|
+
event.key === 'ArrowUp' ||
|
|
162
|
+
event.key === 'Tab') {
|
|
163
|
+
if (date) {
|
|
164
|
+
event.preventDefault();
|
|
165
|
+
}
|
|
166
|
+
const table = event.currentTarget.closest('table');
|
|
167
|
+
if (!table)
|
|
168
|
+
return;
|
|
169
|
+
const buttons = Array.from(table.querySelectorAll('button:not(:disabled)'));
|
|
170
|
+
const currentIndex = buttons.findIndex((btn) => btn === event.currentTarget);
|
|
171
|
+
let nextIndex = currentIndex;
|
|
172
|
+
if (event.key === 'ArrowRight' ||
|
|
173
|
+
(event.key === 'Tab' && !event.shiftKey)) {
|
|
174
|
+
nextIndex = (currentIndex + 1) % buttons.length;
|
|
175
|
+
}
|
|
176
|
+
else if (event.key === 'ArrowLeft' ||
|
|
177
|
+
(event.key === 'Tab' && event.shiftKey)) {
|
|
178
|
+
nextIndex = (currentIndex - 1 + buttons.length) % buttons.length;
|
|
179
|
+
}
|
|
180
|
+
else if (event.key === 'ArrowDown') {
|
|
181
|
+
nextIndex =
|
|
182
|
+
currentIndex + 7 < buttons.length ? currentIndex + 7 : currentIndex;
|
|
183
|
+
}
|
|
184
|
+
else if (event.key === 'ArrowUp') {
|
|
185
|
+
nextIndex = currentIndex - 7 >= 0 ? currentIndex - 7 : currentIndex;
|
|
186
|
+
}
|
|
187
|
+
buttons[nextIndex]?.focus();
|
|
188
|
+
}
|
|
189
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
190
|
+
event.preventDefault();
|
|
191
|
+
const newValue = date?.toFormat(this.dateFormat());
|
|
192
|
+
this.onValueChange.emit(newValue || '');
|
|
193
|
+
}
|
|
194
|
+
else if (event.key === 'Escape') {
|
|
195
|
+
this.closeWindow.emit(false);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbDatepickerModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
199
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbDatepickerModalComponent, isStandalone: true, selector: "bmb-datepicker-modal", inputs: { isWindowOpen: { classPropertyName: "isWindowOpen", publicName: "isWindowOpen", isSignal: true, isRequired: false, transformFunction: null }, now: { classPropertyName: "now", publicName: "now", isSignal: true, isRequired: false, transformFunction: null }, lang: { classPropertyName: "lang", publicName: "lang", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: true, isRequired: false, transformFunction: null }, stepYearPicker: { classPropertyName: "stepYearPicker", publicName: "stepYearPicker", isSignal: true, isRequired: false, transformFunction: null }, disableDatesBefore: { classPropertyName: "disableDatesBefore", publicName: "disableDatesBefore", isSignal: true, isRequired: false, transformFunction: null }, disableDatesAfter: { classPropertyName: "disableDatesAfter", publicName: "disableDatesAfter", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closeWindow: "closeWindow", onValueChange: "onValueChange" }, ngImport: i0, template: "<section class=\"bmb_datepicker-modal\" (keydown)=\"onDayKeydown($event)\">\n <nav\n class=\"bmb_datepicker-modal-nav\"\n bmbLayout\n margin=\"none\"\n [dynamicCols]=\"true\"\n justify=\"center\"\n gapSize=\"s\"\n alignItems=\"center\"\n >\n <li bmbLayoutItem>\n <bmb-action-icon\n icon=\"keyboard_arrow_left\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleChevronClick('less')\"\n />\n </li>\n <li\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [colGrow]=\"1\"\n [ngClass]=\"{ 'bmb_datepicker-modal-nav-item': view !== 'calendar' }\"\n >\n <button\n class=\"bmb_datepicker-modal-button bmb_field-input-normal bmb_datepicker-modal-nav-button\"\n type=\"button\"\n (click)=\"handleChangeView('month')\"\n bmbButton\n appearance=\"transparent\"\n icon=\"keyboard_arrow_down\"\n position=\"right\"\n [iconSize]=\"24\"\n [disabled]=\"view !== 'calendar'\"\n >\n {{ month }}\n </button>\n </li>\n <li bmbLayoutItem [isDynamicItem]=\"true\" [colGrow]=\"1\">\n <button\n class=\"bmb_datepicker-modal-button bmb_field-input-normal bmb_datepicker-modal-nav-button\"\n type=\"button\"\n (click)=\"handleChangeView('year')\"\n bmbButton\n appearance=\"transparent\"\n icon=\"keyboard_arrow_down\"\n position=\"right\"\n [iconSize]=\"24\"\n >\n {{ selectedYear }}\n </button>\n </li>\n <li bmbLayoutItem>\n <bmb-action-icon\n icon=\"keyboard_arrow_right\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleChevronClick('plus')\"\n />\n </li>\n </nav>\n @switch (view) {\n @case (\"calendar\") {\n <div class=\"bmb_datepicker-modal-calendar\">\n <table class=\"bmb_datepicker-modal-calendar-table\">\n <thead>\n <tr>\n @for (day of dayNames; track $index) {\n <th class=\"bmb_datepicker-modal-calendar-table-header\">\n {{ day }}\n </th>\n }\n </tr>\n </thead>\n <tbody>\n @for (week of getWeeksAndDays(); track $index) {\n <tr>\n @for (date of week; track $index) {\n <td class=\"bmb_datepicker-modal-calendar-table-item\">\n <button\n class=\"bmb_datepicker-modal-button\"\n type=\"button\"\n [ngClass]=\"isSelectedDay(date)\"\n (click)=\"handleDayChange(date)\"\n bmbButton\n appearance=\"transparent\"\n [disabled]=\"checkIfDisabled(date)\"\n tabindex=\"0\"\n (keydown)=\"onDayKeydown($event, date)\"\n >\n {{ date.day }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n </table>\n </div>\n }\n @case (\"month\") {\n <ul\n class=\"bmb_datepicker-modal-calendar-list bmb_datepicker-modal-calendar-list-months bmb_datepicker-modal-calendar\"\n >\n @for (month of monthsNames; track $index) {\n <li class=\"bmb_datepicker-modal-calendar-item\">\n <button\n class=\"bmb_datepicker-modal-button bmb_datepicker-modal-calendar-list-item modal-persist\"\n type=\"button\"\n [ngClass]=\"{\n 'bmb_datepicker-modal-calendar-list-item-selected':\n selectedMonth - 1 === $index,\n }\"\n bmbButton\n appearance=\"transparent\"\n (click)=\"handleMonthChange($index)\"\n >\n {{ month }}\n </button>\n </li>\n }\n </ul>\n }\n @case (\"year\") {\n <ul\n class=\"bmb_datepicker-modal-calendar-list bmb_datepicker-modal-calendar-list-years bmb_datepicker-modal-calendar\"\n >\n @for (year of getYears(); track $index) {\n <li class=\"bmb_datepicker-modal-calendar-item\">\n <button\n class=\"bmb_datepicker-modal-button bmb_datepicker-modal-calendar-list-item modal-persist\"\n type=\"button\"\n [ngClass]=\"{\n 'bmb_datepicker-modal-calendar-list-item-selected':\n isSelectedYear(year),\n }\"\n bmbButton\n appearance=\"transparent\"\n (click)=\"handleYearChange(year)\"\n >\n {{ year }}\n </button>\n </li>\n }\n </ul>\n }\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_datepicker-modal{position:absolute;top:calc(100% + .5rem);width:100%;z-index:2;color:var(--general_contrasts-100);background-color:var(--containers-main);border-radius:var(--bmb-radius-m);max-width:25rem;left:0;box-shadow:var(--bmb-box-shadow-1);container-type:inline-size;min-width:15.9375rem}.bmb_datepicker-modal-nav{list-style:none;gap:.25rem;padding:var(--bmb-spacing-m);flex-wrap:nowrap}@container (min-width: 310px){.bmb_datepicker-modal-nav{gap:1.25rem}}.bmb_datepicker-modal-nav-space_none{padding:var(--bmb-spacing-none)}.bmb_datepicker-modal-nav-button.bmb_datepicker-modal-button{opacity:1}.bmb_datepicker-modal-nav-button.bmb_field-input-normal{justify-content:space-between;border-radius:none}.bmb_datepicker-modal-nav-item{display:none}.bmb_datepicker-modal-button:not(.bmb_field-input-normal){width:2rem;border-radius:50%;aspect-ratio:1/1;min-height:auto;opacity:.35;padding:0 .25rem;text-transform:capitalize;color:var(--general_contrasts-100)}.bmb_datepicker-modal-button.bmb_field-input-normal{height:2.25rem}.bmb_datepicker-modal-button.bmb_field-input-normal:disabled{display:none}.bmb_datepicker-modal-button-current-month:not(.bmb_field-input-normal){opacity:1}.bmb_datepicker-modal-button:hover:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button:focus:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button:focus-visible:not(:disabled):not(.bmb-disabled){background-color:var(--general_contrasts-25)}.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal){background-color:var(--general_contrasts-main-selection);color:RGBA(var(--color-white-primary));opacity:1!important}.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal):hover:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal):focus:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal):focus-visible:not(:disabled):not(.bmb-disabled){background-color:var(--general_contrasts-main-selection)}.bmb_datepicker-modal-calendar{padding:0 var(--bmb-spacing-m) var(--bmb-spacing-m);font-family:Poppins-Medium,sans-serif;font-size:.875rem}.bmb_datepicker-modal-calendar-table{width:100%}.bmb_datepicker-modal-calendar-table-header,.bmb_datepicker-modal-calendar-table-item{width:14.2857142857%;text-align:center}.bmb_datepicker-modal-calendar-table-item{padding:1rem 0 0}.bmb_datepicker-modal-calendar-item,.bmb_datepicker-modal-calendar-header{flex:0 0 calc(14.285% - .4285714286rem);text-align:center;box-sizing:border-box;position:relative}.bmb_datepicker-modal-calendar-list{border-top:var(--bmb-border-general_contrasts-50-1-solid);list-style:none;padding:var(--bmb-spacing-m);margin:0;display:flex;gap:.5rem;flex-wrap:wrap;justify-content:space-between}.bmb_datepicker-modal-calendar-list .bmb_datepicker-modal-button{border:var(--bmb-border-inherit-1-solid);border-color:transparent}.bmb_datepicker-modal-calendar-list .bmb_datepicker-modal-button:hover:not(:disabled):not(.bmb-disabled):not(.bmb_datepicker-modal-calendar-list-item-selected){border-color:var(--general_contrasts-75);background-color:transparent}.bmb_datepicker-modal-calendar-list-months .bmb_datepicker-modal-calendar-item{flex:0 0 calc(50% - .25rem)}.bmb_datepicker-modal-calendar-list-years .bmb_datepicker-modal-calendar-item{flex:0 0 calc(33.3333% - .3333333333rem)}.bmb_datepicker-modal-calendar-list-item.bmb_datepicker-modal-button{width:100%;aspect-ratio:auto;border-radius:1rem;padding:.125rem;opacity:1;color:var(--general_contrasts-75)}.bmb_datepicker-modal-calendar-list-item-selected.bmb_datepicker-modal-button{background-color:var(--general_contrasts-input-outline);color:var(--containers-main)}.bmb_datepicker-modal-calendar-list-item-selected.bmb_datepicker-modal-button:hover:not(:disabled):not(.bmb-disabled){background-color:var(--general_contrasts-input-outline);color:var(--containers-main)}\n", ""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: BmbLayoutDirective, selector: "[bmbLayout]", inputs: ["gapSize", "margin", "dynamicCols", "justify", "alignItems"] }, { kind: "directive", type: BmbLayoutItemDirective, selector: "[bmbLayoutItem]", inputs: ["colSm", "colLg", "marginLeft", "marginRight", "colGrow", "isDynamicItem"] }, { kind: "directive", type: BmbButtonDirective, selector: "[bmbButton]", inputs: ["icon", "iconSize", "position", "case", "appearance", "size", "isToggleActive", "enableButtonToggle", "isRounded", "isMobile", "iconAlt"] }, { kind: "component", type: BmbActionIconComponent, selector: "bmb-action-icon", inputs: ["idElement", "icon", "alt", "iconSize", "isFill", "toggleIconActive", "isToggleActive", "isAccentColor", "dotNotification", "target", "link", "disabled"], outputs: ["isToggleActiveChange", "isAccentColorChange", "buttonPress", "buttonClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
200
|
+
}
|
|
201
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbDatepickerModalComponent, decorators: [{
|
|
202
|
+
type: Component,
|
|
203
|
+
args: [{ selector: 'bmb-datepicker-modal', standalone: true, imports: [
|
|
204
|
+
CommonModule,
|
|
205
|
+
BmbLayoutDirective,
|
|
206
|
+
BmbLayoutItemDirective,
|
|
207
|
+
BmbButtonDirective,
|
|
208
|
+
BmbActionIconComponent,
|
|
209
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"bmb_datepicker-modal\" (keydown)=\"onDayKeydown($event)\">\n <nav\n class=\"bmb_datepicker-modal-nav\"\n bmbLayout\n margin=\"none\"\n [dynamicCols]=\"true\"\n justify=\"center\"\n gapSize=\"s\"\n alignItems=\"center\"\n >\n <li bmbLayoutItem>\n <bmb-action-icon\n icon=\"keyboard_arrow_left\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleChevronClick('less')\"\n />\n </li>\n <li\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [colGrow]=\"1\"\n [ngClass]=\"{ 'bmb_datepicker-modal-nav-item': view !== 'calendar' }\"\n >\n <button\n class=\"bmb_datepicker-modal-button bmb_field-input-normal bmb_datepicker-modal-nav-button\"\n type=\"button\"\n (click)=\"handleChangeView('month')\"\n bmbButton\n appearance=\"transparent\"\n icon=\"keyboard_arrow_down\"\n position=\"right\"\n [iconSize]=\"24\"\n [disabled]=\"view !== 'calendar'\"\n >\n {{ month }}\n </button>\n </li>\n <li bmbLayoutItem [isDynamicItem]=\"true\" [colGrow]=\"1\">\n <button\n class=\"bmb_datepicker-modal-button bmb_field-input-normal bmb_datepicker-modal-nav-button\"\n type=\"button\"\n (click)=\"handleChangeView('year')\"\n bmbButton\n appearance=\"transparent\"\n icon=\"keyboard_arrow_down\"\n position=\"right\"\n [iconSize]=\"24\"\n >\n {{ selectedYear }}\n </button>\n </li>\n <li bmbLayoutItem>\n <bmb-action-icon\n icon=\"keyboard_arrow_right\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleChevronClick('plus')\"\n />\n </li>\n </nav>\n @switch (view) {\n @case (\"calendar\") {\n <div class=\"bmb_datepicker-modal-calendar\">\n <table class=\"bmb_datepicker-modal-calendar-table\">\n <thead>\n <tr>\n @for (day of dayNames; track $index) {\n <th class=\"bmb_datepicker-modal-calendar-table-header\">\n {{ day }}\n </th>\n }\n </tr>\n </thead>\n <tbody>\n @for (week of getWeeksAndDays(); track $index) {\n <tr>\n @for (date of week; track $index) {\n <td class=\"bmb_datepicker-modal-calendar-table-item\">\n <button\n class=\"bmb_datepicker-modal-button\"\n type=\"button\"\n [ngClass]=\"isSelectedDay(date)\"\n (click)=\"handleDayChange(date)\"\n bmbButton\n appearance=\"transparent\"\n [disabled]=\"checkIfDisabled(date)\"\n tabindex=\"0\"\n (keydown)=\"onDayKeydown($event, date)\"\n >\n {{ date.day }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n </table>\n </div>\n }\n @case (\"month\") {\n <ul\n class=\"bmb_datepicker-modal-calendar-list bmb_datepicker-modal-calendar-list-months bmb_datepicker-modal-calendar\"\n >\n @for (month of monthsNames; track $index) {\n <li class=\"bmb_datepicker-modal-calendar-item\">\n <button\n class=\"bmb_datepicker-modal-button bmb_datepicker-modal-calendar-list-item modal-persist\"\n type=\"button\"\n [ngClass]=\"{\n 'bmb_datepicker-modal-calendar-list-item-selected':\n selectedMonth - 1 === $index,\n }\"\n bmbButton\n appearance=\"transparent\"\n (click)=\"handleMonthChange($index)\"\n >\n {{ month }}\n </button>\n </li>\n }\n </ul>\n }\n @case (\"year\") {\n <ul\n class=\"bmb_datepicker-modal-calendar-list bmb_datepicker-modal-calendar-list-years bmb_datepicker-modal-calendar\"\n >\n @for (year of getYears(); track $index) {\n <li class=\"bmb_datepicker-modal-calendar-item\">\n <button\n class=\"bmb_datepicker-modal-button bmb_datepicker-modal-calendar-list-item modal-persist\"\n type=\"button\"\n [ngClass]=\"{\n 'bmb_datepicker-modal-calendar-list-item-selected':\n isSelectedYear(year),\n }\"\n bmbButton\n appearance=\"transparent\"\n (click)=\"handleYearChange(year)\"\n >\n {{ year }}\n </button>\n </li>\n }\n </ul>\n }\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_datepicker-modal{position:absolute;top:calc(100% + .5rem);width:100%;z-index:2;color:var(--general_contrasts-100);background-color:var(--containers-main);border-radius:var(--bmb-radius-m);max-width:25rem;left:0;box-shadow:var(--bmb-box-shadow-1);container-type:inline-size;min-width:15.9375rem}.bmb_datepicker-modal-nav{list-style:none;gap:.25rem;padding:var(--bmb-spacing-m);flex-wrap:nowrap}@container (min-width: 310px){.bmb_datepicker-modal-nav{gap:1.25rem}}.bmb_datepicker-modal-nav-space_none{padding:var(--bmb-spacing-none)}.bmb_datepicker-modal-nav-button.bmb_datepicker-modal-button{opacity:1}.bmb_datepicker-modal-nav-button.bmb_field-input-normal{justify-content:space-between;border-radius:none}.bmb_datepicker-modal-nav-item{display:none}.bmb_datepicker-modal-button:not(.bmb_field-input-normal){width:2rem;border-radius:50%;aspect-ratio:1/1;min-height:auto;opacity:.35;padding:0 .25rem;text-transform:capitalize;color:var(--general_contrasts-100)}.bmb_datepicker-modal-button.bmb_field-input-normal{height:2.25rem}.bmb_datepicker-modal-button.bmb_field-input-normal:disabled{display:none}.bmb_datepicker-modal-button-current-month:not(.bmb_field-input-normal){opacity:1}.bmb_datepicker-modal-button:hover:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button:focus:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button:focus-visible:not(:disabled):not(.bmb-disabled){background-color:var(--general_contrasts-25)}.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal){background-color:var(--general_contrasts-main-selection);color:RGBA(var(--color-white-primary));opacity:1!important}.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal):hover:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal):focus:not(:disabled):not(.bmb-disabled),.bmb_datepicker-modal-button-selected:not(.bmb_field-input-normal):focus-visible:not(:disabled):not(.bmb-disabled){background-color:var(--general_contrasts-main-selection)}.bmb_datepicker-modal-calendar{padding:0 var(--bmb-spacing-m) var(--bmb-spacing-m);font-family:Poppins-Medium,sans-serif;font-size:.875rem}.bmb_datepicker-modal-calendar-table{width:100%}.bmb_datepicker-modal-calendar-table-header,.bmb_datepicker-modal-calendar-table-item{width:14.2857142857%;text-align:center}.bmb_datepicker-modal-calendar-table-item{padding:1rem 0 0}.bmb_datepicker-modal-calendar-item,.bmb_datepicker-modal-calendar-header{flex:0 0 calc(14.285% - .4285714286rem);text-align:center;box-sizing:border-box;position:relative}.bmb_datepicker-modal-calendar-list{border-top:var(--bmb-border-general_contrasts-50-1-solid);list-style:none;padding:var(--bmb-spacing-m);margin:0;display:flex;gap:.5rem;flex-wrap:wrap;justify-content:space-between}.bmb_datepicker-modal-calendar-list .bmb_datepicker-modal-button{border:var(--bmb-border-inherit-1-solid);border-color:transparent}.bmb_datepicker-modal-calendar-list .bmb_datepicker-modal-button:hover:not(:disabled):not(.bmb-disabled):not(.bmb_datepicker-modal-calendar-list-item-selected){border-color:var(--general_contrasts-75);background-color:transparent}.bmb_datepicker-modal-calendar-list-months .bmb_datepicker-modal-calendar-item{flex:0 0 calc(50% - .25rem)}.bmb_datepicker-modal-calendar-list-years .bmb_datepicker-modal-calendar-item{flex:0 0 calc(33.3333% - .3333333333rem)}.bmb_datepicker-modal-calendar-list-item.bmb_datepicker-modal-button{width:100%;aspect-ratio:auto;border-radius:1rem;padding:.125rem;opacity:1;color:var(--general_contrasts-75)}.bmb_datepicker-modal-calendar-list-item-selected.bmb_datepicker-modal-button{background-color:var(--general_contrasts-input-outline);color:var(--containers-main)}.bmb_datepicker-modal-calendar-list-item-selected.bmb_datepicker-modal-button:hover:not(:disabled):not(.bmb-disabled){background-color:var(--general_contrasts-input-outline);color:var(--containers-main)}\n"] }]
|
|
210
|
+
}] });
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWRhdGVwaWNrZXItbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1kYXRlcGlja2VyL2JtYi1kYXRlcGlja2VyLW1vZGFsL2JtYi1kYXRlcGlja2VyLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZGF0ZXBpY2tlci9ibWItZGF0ZXBpY2tlci1tb2RhbC9ibWItZGF0ZXBpY2tlci1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBRUwsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7O0FBb0J6RixNQUFNLE9BQU8sMkJBQTJCO0lBbEJ4QztRQW1CRSxpQkFBWSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNyQyxRQUFHLEdBQUcs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RUFBRTtnQkFDbEMsU0FBUyxHQUFHLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7YUFDckU7WUFDRCxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7U0FDN0I7UUFFRCxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFO1lBQzlDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixNQUFNLFFBQVEsR0FBRyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN6QzthQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDOytHQTdNVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixzdUNDbkN4Qyxpc0pBa0pBLG1wVUQ3SEksWUFBWSw2SEFDWixrQkFBa0IsK0hBQ2xCLHNCQUFzQixpSkFDdEIsa0JBQWtCLDRNQUNsQixzQkFBc0I7OzRGQVViLDJCQUEyQjtrQkFsQnZDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixrQkFBa0I7d0JBQ2xCLHNCQUFzQjtxQkFDdkIsaUJBTWMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBPbkluaXQsXG4gIG91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm1iTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9ibWItbGF5b3V0L2JtYi1sYXlvdXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJtYkxheW91dEl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2JtYi1sYXlvdXQvYm1iLWxheW91dC1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYXRlVGltZSwgSW5mbyB9IGZyb20gJ2x1eG9uJztcbmltcG9ydCB7IHdlZWtzQW5kRGF5cyB9IGZyb20gJy4uLy4uL2JtYi1jYWxlbmRhci91dGlscyc7XG5pbXBvcnQgeyBCbWJCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2JtYi1idXR0b24vYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgb3JkZXJEYXlOYW1lcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3V0aWxzJztcbmltcG9ydCB7IEJtYkFjdGlvbkljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItYWN0aW9uLWljb24vYm1iLWFjdGlvbi1pY29uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1kYXRlcGlja2VyLW1vZGFsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJMYXlvdXREaXJlY3RpdmUsXG4gICAgQm1iTGF5b3V0SXRlbURpcmVjdGl2ZSxcbiAgICBCbWJCdXR0b25EaXJlY3RpdmUsXG4gICAgQm1iQWN0aW9uSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1kYXRlcGlja2VyLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXG4gICAgJy4vYm1iLWRhdGVwaWNrZXItbW9kYWwuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi9ibWItaW5wdXQvYm1iLWlucHV0LmNvbXBvbmVudC5zY3NzJyxcbiAgXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkRhdGVwaWNrZXJNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGlzV2luZG93T3BlbiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgbm93ID0gaW5wdXQ8RGF0ZVRpbWU+KERhdGVUaW1lLm5vdygpKTtcbiAgbGFuZyA9IGlucHV0PHN0cmluZz4oJ2VzLU1YJyk7XG4gIHZhbHVlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGRhdGVGb3JtYXQgPSBpbnB1dDxzdHJpbmc+KCdkZC9NTS95eXl5Jyk7XG4gIHN0ZXBZZWFyUGlja2VyID0gaW5wdXQ8bnVtYmVyPigxOCk7XG4gIGRpc2FibGVEYXRlc0JlZm9yZSA9IGlucHV0PERhdGVUaW1lIHwgbnVsbD4oKTtcbiAgZGlzYWJsZURhdGVzQWZ0ZXIgPSBpbnB1dDxEYXRlVGltZSB8IG51bGw+KCk7XG5cbiAgY2xvc2VXaW5kb3cgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcbiAgb25WYWx1ZUNoYW5nZSA9IG91dHB1dDxzdHJpbmc+KCk7XG5cbiAgc2VsZWN0ZWRNb250aCA9IDA7XG4gIG1vbnRoc05hbWVzID0gSW5mby5tb250aHMoJ2xvbmcnLCB7IGxvY2FsZTogdGhpcy5sYW5nKCkgfSk7XG4gIG1vbnRoID0gJyc7XG4gIHllYXIgPSB0aGlzLm5vdygpLnllYXI7XG4gIGRlZmF1bHREYXlPcmRlciA9IEluZm8ud2Vla2RheXMoJ25hcnJvdycsIHsgbG9jYWxlOiB0aGlzLmxhbmcoKSB9KTtcbiAgZGF5TmFtZXMgPSBvcmRlckRheU5hbWVzKHRoaXMuZGVmYXVsdERheU9yZGVyKTtcbiAgc2VsZWN0ZWRZZWFyID0gMDtcbiAgdmlldyA9ICdjYWxlbmRhcic7XG4gIHNlbGVjdGVkRGF0ZTogRGF0ZVRpbWUgfCBudWxsID0gbnVsbDtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoISF0aGlzLnZhbHVlKCkpIHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBEYXRlVGltZS5mcm9tRm9ybWF0KFxuICAgICAgICB0aGlzLnZhbHVlKCksXG4gICAgICAgIHRoaXMuZGF0ZUZvcm1hdCgpLFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gZm9ybWF0dGVkRGF0ZTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRZZWFyID0gZm9ybWF0dGVkRGF0ZS55ZWFyO1xuICAgICAgdGhpcy5zZWxlY3RlZE1vbnRoID0gZm9ybWF0dGVkRGF0ZS5tb250aDtcbiAgICAgIHRoaXMubW9udGggPSB0aGlzLm1vbnRoc05hbWVzW2Zvcm1hdHRlZERhdGUubW9udGggLSAxXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZFllYXIgPSB0aGlzLm5vdygpLnllYXI7XG4gICAgICB0aGlzLnNlbGVjdGVkTW9udGggPSB0aGlzLm5vdygpLm1vbnRoO1xuICAgICAgdGhpcy5tb250aCA9XG4gICAgICAgIHRoaXMubW9udGhzTmFtZXNbKHRoaXMuc2VsZWN0ZWRNb250aCB8fCB0aGlzLm5vdygpLm1vbnRoKSAtIDFdO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZU1vbnRoQ2hhbmdlKGV2ZW50OiBudW1iZXIpIHtcbiAgICB0aGlzLnNlbGVjdGVkTW9udGggPSBldmVudCArIDE7XG4gICAgdGhpcy5tb250aCA9IHRoaXMubW9udGhzTmFtZXNbZXZlbnRdO1xuICAgIHRoaXMudmlldyA9ICdjYWxlbmRhcic7XG4gIH1cblxuICBoYW5kbGVZZWFyQ2hhbmdlKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNlbGVjdGVkWWVhciA9IHBhcnNlSW50KGV2ZW50LCAxMCk7XG4gICAgdGhpcy52aWV3ID0gJ2NhbGVuZGFyJztcbiAgfVxuXG4gIGdldFllYXJzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCB5ZWFyc0xpc3QgPSBuZXcgQXJyYXkodGhpcy5zdGVwWWVhclBpY2tlcigpKS5maWxsKDApO1xuICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gdGhpcy5zZWxlY3RlZFllYXI7XG4gICAgY29uc3QgeWVhcnNGaW5hbCA9IHllYXJzTGlzdC5tYXAoKF8sIGluZGV4KSA9PiB7XG4gICAgICByZXR1cm4gKGN1cnJlbnRZZWFyIC0gKHRoaXMuc3RlcFllYXJQaWNrZXIoKSAvIDIgLSAxKSArIGluZGV4KS50b1N0cmluZygpO1xuICAgIH0pO1xuICAgIHJldHVybiB5ZWFyc0ZpbmFsO1xuICB9XG5cbiAgaGFuZGxlRGF5Q2hhbmdlKGRhdGU6IERhdGVUaW1lKTogdm9pZCB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBkYXRlLnRvRm9ybWF0KHRoaXMuZGF0ZUZvcm1hdCgpKTtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2UuZW1pdChuZXdWYWx1ZSk7XG4gICAgdGhpcy5jbG9zZVdpbmRvdy5lbWl0KGZhbHNlKTtcbiAgfVxuXG4gIGdldFdlZWtzQW5kRGF5cygpOiBEYXRlVGltZVtdW10ge1xuICAgIGNvbnN0IGZpcnN0RGF5T2ZNb250aCA9IERhdGVUaW1lLmZyb21PYmplY3Qoe1xuICAgICAgZGF5OiAxLFxuICAgICAgbW9udGg6IHRoaXMuc2VsZWN0ZWRNb250aCA/PyB0aGlzLm5vdygpLm1vbnRoLFxuICAgICAgeWVhcjogdGhpcy5zZWxlY3RlZFllYXIgPz8gdGhpcy5ub3coKS55ZWFyLFxuICAgIH0pO1xuICAgIGNvbnN0IGRheXMgPSB3ZWVrc0FuZERheXMoZmlyc3REYXlPZk1vbnRoKTtcblxuICAgIHJldHVybiBbXG4gICAgICBkYXlzLnNsaWNlKDAsIDcpLFxuICAgICAgZGF5cy5zbGljZSg3LCAxNCksXG4gICAgICBkYXlzLnNsaWNlKDE0LCAyMSksXG4gICAgICBkYXlzLnNsaWNlKDIxLCAyOCksXG4gICAgICBkYXlzLnNsaWNlKDI4LCAzNSksXG4gICAgICBkYXlzLnNsaWNlKDM1LCA0MiksXG4gICAgXTtcbiAgfVxuXG4gIGlzU2VsZWN0ZWREYXkoZGF0ZTogRGF0ZVRpbWUpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgY2xhc3NMaXN0ID0gW107XG4gICAgaWYgKGRhdGUubW9udGggPT09IHRoaXMuc2VsZWN0ZWRNb250aCkge1xuICAgICAgY2xhc3NMaXN0LnB1c2goJ2JtYl9kYXRlcGlja2VyLW1vZGFsLWJ1dHRvbi1jdXJyZW50LW1vbnRoJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWREYXRlICYmIGRhdGUuaGFzU2FtZSh0aGlzLnNlbGVjdGVkRGF0ZSwgJ2RheScpKVxuICAgICAgY2xhc3NMaXN0LnB1c2goJ2JtYl9kYXRlcGlja2VyLW1vZGFsLWJ1dHRvbi1zZWxlY3RlZCcpO1xuICAgIGlmICh0aGlzLm5vdygpLmhhc1NhbWUoZGF0ZSwgJ2RheScpKVxuICAgICAgY2xhc3NMaXN0LnB1c2goJ2JtYl9kYXRlcGlja2VyLW1vZGFsLWJ1dHRvbi10b2RheScpO1xuICAgIHJldHVybiBjbGFzc0xpc3Q7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2VWaWV3KHZpZXc6IHN0cmluZykge1xuICAgIHRoaXMudmlldyA9IHZpZXc7XG4gIH1cblxuICBoYW5kbGVDaGV2cm9uQ2xpY2soZXZlbnQ6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnZpZXcgPT09ICdjYWxlbmRhcicpIHtcbiAgICAgIHRoaXMuaGFuZGxlQ2hhbmdlTW9udGgoZXZlbnQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy52aWV3ID09PSAnbW9udGgnKSB7XG4gICAgICB0aGlzLmhhbmRsZUNoYW5nZVllYXIoZXZlbnQsIDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhhbmRsZUNoYW5nZVllYXIoZXZlbnQsIHRoaXMuc3RlcFllYXJQaWNrZXIoKSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQ2hhbmdlWWVhcihldmVudDogc3RyaW5nLCB5ZWFyc0Ftb3VudDogbnVtYmVyID0gMCkge1xuICAgIGlmIChldmVudCA9PT0gJ2xlc3MnKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkWWVhciA9IHRoaXMuc2VsZWN0ZWRZZWFyIC0geWVhcnNBbW91bnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRZZWFyID0gdGhpcy5zZWxlY3RlZFllYXIgKyB5ZWFyc0Ftb3VudDtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVDaGFuZ2VNb250aChldmVudDogc3RyaW5nKSB7XG4gICAgaWYgKGV2ZW50ID09PSAnbGVzcycpIHtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkTW9udGggPT09IDEpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE1vbnRoID0gMTI7XG4gICAgICAgIHRoaXMubW9udGggPSB0aGlzLm1vbnRoc05hbWVzW3RoaXMuc2VsZWN0ZWRNb250aCAtIDFdO1xuICAgICAgICB0aGlzLnNlbGVjdGVkWWVhciA9IHRoaXMuc2VsZWN0ZWRZZWFyIC0gMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRNb250aCA9IHRoaXMuc2VsZWN0ZWRNb250aCAtIDE7XG4gICAgICAgIHRoaXMubW9udGggPSB0aGlzLm1vbnRoc05hbWVzW3RoaXMuc2VsZWN0ZWRNb250aCAtIDFdO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RlZE1vbnRoID09PSAxMikge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTW9udGggPSAxO1xuICAgICAgICB0aGlzLm1vbnRoID0gdGhpcy5tb250aHNOYW1lc1t0aGlzLnNlbGVjdGVkTW9udGggLSAxXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFllYXIgPSB0aGlzLnNlbGVjdGVkWWVhciArIDE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTW9udGggPSB0aGlzLnNlbGVjdGVkTW9udGggKyAxO1xuICAgICAgICB0aGlzLm1vbnRoID0gdGhpcy5tb250aHNOYW1lc1t0aGlzLnNlbGVjdGVkTW9udGggLSAxXTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjaGVja0lmRGlzYWJsZWQoZGF0ZTogRGF0ZVRpbWUpOiBib29sZWFuIHtcbiAgICBsZXQgaXNWYWxpZDogYm9vbGVhbiA9IHRoaXMuZGlzYWJsZURhdGVzQmVmb3JlKClcbiAgICAgID8gZGF0ZS5zdGFydE9mKCdkYXknKSA8PSB0aGlzLmRpc2FibGVEYXRlc0JlZm9yZSgpIS5zdGFydE9mKCdkYXknKVxuICAgICAgOiBmYWxzZTtcblxuICAgIGlzVmFsaWQgPVxuICAgICAgIWlzVmFsaWQgJiYgdGhpcy5kaXNhYmxlRGF0ZXNBZnRlcigpXG4gICAgICAgID8gZGF0ZS5zdGFydE9mKCdkYXknKSA+PSB0aGlzLmRpc2FibGVEYXRlc0FmdGVyKCkhLnN0YXJ0T2YoJ2RheScpXG4gICAgICAgIDogaXNWYWxpZDtcblxuICAgIHJldHVybiBpc1ZhbGlkO1xuICB9XG5cbiAgaXNTZWxlY3RlZFllYXIoeWVhcjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRZZWFyID09PSBwYXJzZUludCh5ZWFyKTtcbiAgfVxuXG4gIG9uRGF5S2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCwgZGF0ZT86IERhdGVUaW1lKSB7XG4gICAgaWYgKFxuICAgICAgZXZlbnQua2V5ID09PSAnQXJyb3dSaWdodCcgfHxcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0Fycm93TGVmdCcgfHxcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0Fycm93RG93bicgfHxcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0Fycm93VXAnIHx8XG4gICAgICBldmVudC5rZXkgPT09ICdUYWInXG4gICAgKSB7XG4gICAgICBpZiAoZGF0ZSkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgICAgY29uc3QgdGFibGUgPSAoZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudCkuY2xvc2VzdCgndGFibGUnKTtcbiAgICAgIGlmICghdGFibGUpIHJldHVybjtcbiAgICAgIGNvbnN0IGJ1dHRvbnMgPSBBcnJheS5mcm9tKFxuICAgICAgICB0YWJsZS5xdWVyeVNlbGVjdG9yQWxsPEhUTUxFbGVtZW50PignYnV0dG9uOm5vdCg6ZGlzYWJsZWQpJyksXG4gICAgICApO1xuICAgICAgY29uc3QgY3VycmVudEluZGV4ID0gYnV0dG9ucy5maW5kSW5kZXgoXG4gICAgICAgIChidG4pID0+IGJ0biA9PT0gZXZlbnQuY3VycmVudFRhcmdldCxcbiAgICAgICk7XG4gICAgICBsZXQgbmV4dEluZGV4ID0gY3VycmVudEluZGV4O1xuICAgICAgaWYgKFxuICAgICAgICBldmVudC5rZXkgPT09ICdBcnJvd1JpZ2h0JyB8fFxuICAgICAgICAoZXZlbnQua2V5ID09PSAnVGFiJyAmJiAhZXZlbnQuc2hpZnRLZXkpXG4gICAgICApIHtcbiAgICAgICAgbmV4dEluZGV4ID0gKGN1cnJlbnRJbmRleCArIDEpICUgYnV0dG9ucy5sZW5ndGg7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBldmVudC5rZXkgPT09ICdBcnJvd0xlZnQnIHx8XG4gICAgICAgIChldmVudC5rZXkgPT09ICdUYWInICYmIGV2ZW50LnNoaWZ0S2V5KVxuICAgICAgKSB7XG4gICAgICAgIG5leHRJbmRleCA9IChjdXJyZW50SW5kZXggLSAxICsgYnV0dG9ucy5sZW5ndGgpICUgYnV0dG9ucy5sZW5ndGg7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50LmtleSA9PT0gJ0Fycm93RG93bicpIHtcbiAgICAgICAgbmV4dEluZGV4ID1cbiAgICAgICAgICBjdXJyZW50SW5kZXggKyA3IDwgYnV0dG9ucy5sZW5ndGggPyBjdXJyZW50SW5kZXggKyA3IDogY3VycmVudEluZGV4O1xuICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdBcnJvd1VwJykge1xuICAgICAgICBuZXh0SW5kZXggPSBjdXJyZW50SW5kZXggLSA3ID49IDAgPyBjdXJyZW50SW5kZXggLSA3IDogY3VycmVudEluZGV4O1xuICAgICAgfVxuICAgICAgYnV0dG9uc1tuZXh0SW5kZXhdPy5mb2N1cygpO1xuICAgIH1cblxuICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IGRhdGU/LnRvRm9ybWF0KHRoaXMuZGF0ZUZvcm1hdCgpKTtcbiAgICAgIHRoaXMub25WYWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlIHx8ICcnKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMuY2xvc2VXaW5kb3cuZW1pdChmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsXCIgKGtleWRvd24pPVwib25EYXlLZXlkb3duKCRldmVudClcIj5cbiAgPG5hdlxuICAgIGNsYXNzPVwiYm1iX2RhdGVwaWNrZXItbW9kYWwtbmF2XCJcbiAgICBibWJMYXlvdXRcbiAgICBtYXJnaW49XCJub25lXCJcbiAgICBbZHluYW1pY0NvbHNdPVwidHJ1ZVwiXG4gICAganVzdGlmeT1cImNlbnRlclwiXG4gICAgZ2FwU2l6ZT1cInNcIlxuICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICA+XG4gICAgPGxpIGJtYkxheW91dEl0ZW0+XG4gICAgICA8Ym1iLWFjdGlvbi1pY29uXG4gICAgICAgIGljb249XCJrZXlib2FyZF9hcnJvd19sZWZ0XCJcbiAgICAgICAgW2ljb25TaXplXT1cIjI0XCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImhhbmRsZUNoZXZyb25DbGljaygnbGVzcycpXCJcbiAgICAgIC8+XG4gICAgPC9saT5cbiAgICA8bGlcbiAgICAgIGJtYkxheW91dEl0ZW1cbiAgICAgIFtpc0R5bmFtaWNJdGVtXT1cInRydWVcIlxuICAgICAgW2NvbEdyb3ddPVwiMVwiXG4gICAgICBbbmdDbGFzc109XCJ7ICdibWJfZGF0ZXBpY2tlci1tb2RhbC1uYXYtaXRlbSc6IHZpZXcgIT09ICdjYWxlbmRhcicgfVwiXG4gICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWJ1dHRvbiBibWJfZmllbGQtaW5wdXQtbm9ybWFsIGJtYl9kYXRlcGlja2VyLW1vZGFsLW5hdi1idXR0b25cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNoYW5nZVZpZXcoJ21vbnRoJylcIlxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgaWNvbj1cImtleWJvYXJkX2Fycm93X2Rvd25cIlxuICAgICAgICBwb3NpdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgW2ljb25TaXplXT1cIjI0XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInZpZXcgIT09ICdjYWxlbmRhcidcIlxuICAgICAgPlxuICAgICAgICB7eyBtb250aCB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9saT5cbiAgICA8bGkgYm1iTGF5b3V0SXRlbSBbaXNEeW5hbWljSXRlbV09XCJ0cnVlXCIgW2NvbEdyb3ddPVwiMVwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWJ1dHRvbiBibWJfZmllbGQtaW5wdXQtbm9ybWFsIGJtYl9kYXRlcGlja2VyLW1vZGFsLW5hdi1idXR0b25cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNoYW5nZVZpZXcoJ3llYXInKVwiXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBpY29uPVwia2V5Ym9hcmRfYXJyb3dfZG93blwiXG4gICAgICAgIHBvc2l0aW9uPVwicmlnaHRcIlxuICAgICAgICBbaWNvblNpemVdPVwiMjRcIlxuICAgICAgPlxuICAgICAgICB7eyBzZWxlY3RlZFllYXIgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbGk+XG4gICAgPGxpIGJtYkxheW91dEl0ZW0+XG4gICAgICA8Ym1iLWFjdGlvbi1pY29uXG4gICAgICAgIGljb249XCJrZXlib2FyZF9hcnJvd19yaWdodFwiXG4gICAgICAgIFtpY29uU2l6ZV09XCIyNFwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJoYW5kbGVDaGV2cm9uQ2xpY2soJ3BsdXMnKVwiXG4gICAgICAvPlxuICAgIDwvbGk+XG4gIDwvbmF2PlxuICBAc3dpdGNoICh2aWV3KSB7XG4gICAgQGNhc2UgKFwiY2FsZW5kYXJcIikge1xuICAgICAgPGRpdiBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyXCI+XG4gICAgICAgIDx0YWJsZSBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyLXRhYmxlXCI+XG4gICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICBAZm9yIChkYXkgb2YgZGF5TmFtZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyLXRhYmxlLWhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAge3sgZGF5IH19XG4gICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIEBmb3IgKHdlZWsgb2YgZ2V0V2Vla3NBbmREYXlzKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgQGZvciAoZGF0ZSBvZiB3ZWVrOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyLXRhYmxlLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYm1iX2RhdGVwaWNrZXItbW9kYWwtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJpc1NlbGVjdGVkRGF5KGRhdGUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlRGF5Q2hhbmdlKGRhdGUpXCJcbiAgICAgICAgICAgICAgICAgICAgICBibWJCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjaGVja0lmRGlzYWJsZWQoZGF0ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24pPVwib25EYXlLZXlkb3duKCRldmVudCwgZGF0ZSlcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge3sgZGF0ZS5kYXkgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG4gICAgfVxuICAgIEBjYXNlIChcIm1vbnRoXCIpIHtcbiAgICAgIDx1bFxuICAgICAgICBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyLWxpc3QgYm1iX2RhdGVwaWNrZXItbW9kYWwtY2FsZW5kYXItbGlzdC1tb250aHMgYm1iX2RhdGVwaWNrZXItbW9kYWwtY2FsZW5kYXJcIlxuICAgICAgPlxuICAgICAgICBAZm9yIChtb250aCBvZiBtb250aHNOYW1lczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgPGxpIGNsYXNzPVwiYm1iX2RhdGVwaWNrZXItbW9kYWwtY2FsZW5kYXItaXRlbVwiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzcz1cImJtYl9kYXRlcGlja2VyLW1vZGFsLWJ1dHRvbiBibWJfZGF0ZXBpY2tlci1tb2RhbC1jYWxlbmRhci1saXN0LWl0ZW0gbW9kYWwtcGVyc2lzdFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ2JtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyLWxpc3QtaXRlbS1zZWxlY3RlZCc6XG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZE1vbnRoIC0gMSA9PT0gJGluZGV4LFxuICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVNb250aENoYW5nZSgkaW5kZXgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgbW9udGggfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICAgIDwvdWw+XG4gICAgfVxuICAgIEBjYXNlIChcInllYXJcIikge1xuICAgICAgPHVsXG4gICAgICAgIGNsYXNzPVwiYm1iX2RhdGVwaWNrZXItbW9kYWwtY2FsZW5kYXItbGlzdCBibWJfZGF0ZXBpY2tlci1tb2RhbC1jYWxlbmRhci1saXN0LXllYXJzIGJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyXCJcbiAgICAgID5cbiAgICAgICAgQGZvciAoeWVhciBvZiBnZXRZZWFycygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICA8bGkgY2xhc3M9XCJibWJfZGF0ZXBpY2tlci1tb2RhbC1jYWxlbmRhci1pdGVtXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzPVwiYm1iX2RhdGVwaWNrZXItbW9kYWwtYnV0dG9uIGJtYl9kYXRlcGlja2VyLW1vZGFsLWNhbGVuZGFyLWxpc3QtaXRlbSBtb2RhbC1wZXJzaXN0XCJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAnYm1iX2RhdGVwaWNrZXItbW9kYWwtY2FsZW5kYXItbGlzdC1pdGVtLXNlbGVjdGVkJzpcbiAgICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWRZZWFyKHllYXIpLFxuICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVZZWFyQ2hhbmdlKHllYXIpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgeWVhciB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgfVxuICAgICAgPC91bD5cbiAgICB9XG4gIH1cbjwvc2VjdGlvbj5cbiJdfQ==
|