@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1217 → 1.5.1219
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/styles/main.min.css +1 -1
- package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +547 -547
- package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
- package/lib/ds-ng.component.d.ts +1 -1
- package/package.json +1 -3
- package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +0 -87
- package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +0 -159
- package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +0 -172
- package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +0 -49
- package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +0 -31
- package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +0 -35
- package/esm2022/lib/components/bmb-advertisement-card/types.mjs +0 -2
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +0 -40
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +0 -18
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +0 -148
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +0 -52
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +0 -203
- package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +0 -62
- package/esm2022/lib/components/bmb-alert-center/types.mjs +0 -2
- package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +0 -26
- package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +0 -26
- package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +0 -27
- package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +0 -42
- package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +0 -55
- package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +0 -30
- package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +0 -285
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +0 -95
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +0 -40
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +0 -68
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +0 -41
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +0 -95
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +0 -45
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +0 -54
- package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +0 -24
- package/esm2022/lib/components/bmb-calendar/types.mjs +0 -2
- package/esm2022/lib/components/bmb-calendar/utils.mjs +0 -96
- package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +0 -159
- package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +0 -76
- package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +0 -80
- package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +0 -199
- package/esm2022/lib/components/bmb-chat-bar/bot_list.mjs +0 -57
- package/esm2022/lib/components/bmb-chat-bar/types.mjs +0 -2
- package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +0 -56
- package/esm2022/lib/components/bmb-chat-bubbles/types.mjs +0 -2
- package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +0 -46
- package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +0 -80
- package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +0 -36
- package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +0 -27
- package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +0 -96
- package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +0 -69
- package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +0 -206
- package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +0 -144
- package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +0 -54
- package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +0 -25
- package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +0 -34
- package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +0 -65
- package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +0 -177
- package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +0 -31
- package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +0 -175
- package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +0 -76
- package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +0 -80
- package/esm2022/lib/components/bmb-fab/bmb-fab-.interface.mjs +0 -9
- package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +0 -37
- package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +0 -166
- package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.interface.mjs +0 -2
- package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +0 -36
- package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +0 -159
- package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +0 -29
- package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +0 -22
- package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +0 -178
- package/esm2022/lib/components/bmb-grades/types.mjs +0 -2
- package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +0 -55
- package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +0 -49
- package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +0 -86
- package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +0 -59
- package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +0 -76
- package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +0 -41
- package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +0 -39
- package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +0 -20
- package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +0 -50
- package/esm2022/lib/components/bmb-icon/types.mjs +0 -2
- package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +0 -23
- package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +0 -24
- package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +0 -19
- package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +0 -21
- package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +0 -33
- package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +0 -77
- package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +0 -146
- package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +0 -178
- package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +0 -85
- package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +0 -219
- package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +0 -191
- package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +0 -54
- package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +0 -34
- package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +0 -28
- package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +0 -23
- package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +0 -83
- package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +0 -60
- package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +0 -55
- package/esm2022/lib/components/bmb-list-group/types.mjs +0 -2
- package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +0 -83
- package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +0 -77
- package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +0 -55
- package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +0 -66
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +0 -40
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +0 -20
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +0 -33
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-four.component.mjs +0 -91
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-one.component.mjs +0 -88
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-three.component.mjs +0 -57
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-two.component.mjs +0 -99
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step.component.mjs +0 -39
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +0 -44
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +0 -52
- package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +0 -70
- package/esm2022/lib/components/bmb-login-onboarding/types.mjs +0 -2
- package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +0 -43
- package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +0 -64
- package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +0 -14
- package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +0 -88
- package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +0 -139
- package/esm2022/lib/components/bmb-modal/bmb-modal.interface.mjs +0 -2
- package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +0 -121
- package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +0 -15
- package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +0 -59
- package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +0 -30
- package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +0 -43
- package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +0 -86
- package/esm2022/lib/components/bmb-notification-counter/bmb-notification-counter.component.mjs +0 -23
- package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +0 -22
- package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +0 -52
- package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +0 -58
- package/esm2022/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.mjs +0 -120
- package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +0 -153
- package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +0 -39
- package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +0 -196
- package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.mjs +0 -2
- package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +0 -88
- package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +0 -75
- package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +0 -24
- package/esm2022/lib/components/bmb-push-notification/types.mjs +0 -2
- package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +0 -78
- package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +0 -122
- package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +0 -82
- package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +0 -97
- package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.interface.mjs +0 -2
- package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +0 -64
- package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +0 -16
- package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +0 -64
- package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +0 -32
- package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +0 -55
- package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +0 -53
- package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +0 -27
- package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +0 -88
- package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +0 -541
- package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +0 -2
- package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +0 -132
- package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +0 -65
- package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +0 -135
- package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +0 -43
- package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +0 -65
- package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +0 -30
- package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +0 -74
- package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +0 -13
- package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +0 -236
- package/esm2022/lib/components/bmb-timestream/types.mjs +0 -2
- package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +0 -139
- package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +0 -61
- package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +0 -47
- package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +0 -26
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +0 -31
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +0 -94
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +0 -86
- package/esm2022/lib/components/bmb-top-bar/types.mjs +0 -2
- package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +0 -139
- package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +0 -44
- package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +0 -19
- package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +0 -71
- package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +0 -61
- package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +0 -28
- package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +0 -23
- package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +0 -85
- package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +0 -128
- package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +0 -51
- package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +0 -88
- package/esm2022/lib/directives/bmb-button/button.directive.mjs +0 -84
- package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +0 -29
- package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +0 -51
- package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +0 -36
- package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +0 -34
- package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +0 -37
- package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +0 -89
- package/esm2022/lib/directives/utils/clickoutside.directive.mjs +0 -41
- package/esm2022/lib/ds-ng.component.mjs +0 -11
- package/esm2022/lib/ds-ng.service.mjs +0 -14
- package/esm2022/lib/services/calendar.service.mjs +0 -51
- package/esm2022/lib/services/index.mjs +0 -3
- package/esm2022/lib/services/native-modal.service.mjs +0 -60
- package/esm2022/lib/services/notification.service.mjs +0 -84
- package/esm2022/lib/services/projection.service.mjs +0 -49
- package/esm2022/lib/services/tabs.service.mjs +0 -30
- package/esm2022/lib/services/theme.service.mjs +0 -30
- package/esm2022/lib/services/toast.service.mjs +0 -24
- package/esm2022/lib/services/user/profile.service.mjs +0 -26
- package/esm2022/lib/types/colors.mjs +0 -2
- package/esm2022/lib/types/index.mjs +0 -11
- package/esm2022/lib/utils/countryCodes.mjs +0 -1089
- package/esm2022/lib/utils/currencyFormat.mjs +0 -7
- package/esm2022/lib/utils/dropdown.mjs +0 -85
- package/esm2022/lib/utils/formControl.mjs +0 -25
- package/esm2022/lib/utils/timestreamFilters.mjs +0 -32
- package/esm2022/lib/utils/utils.mjs +0 -71
- package/esm2022/public-api.mjs +0 -152
- package/esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +0 -5
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
import { Component, input, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, output, effect, signal, } from '@angular/core';
|
|
2
|
-
import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { BmbIconComponent } from '../bmb-icon/bmb-icon.component';
|
|
5
|
-
import { BmbSwitchComponent } from '../bmb-switch/bmb-switch.component';
|
|
6
|
-
import { BmbRadialComponent } from '../bmb-radial/bmb-radial.component';
|
|
7
|
-
import { BmbCheckboxComponent } from '../bmb-checkbox/bmb-checkbox.component';
|
|
8
|
-
import { BmbInputComponent } from '../bmb-input/bmb-input.component';
|
|
9
|
-
import { BmbButtonDirective } from '../../directives/bmb-button/button.directive';
|
|
10
|
-
import { BmbDropdownComponent } from '../bmb-dropdown/bmb-dropdown.component';
|
|
11
|
-
import { BmbTagComponent } from '../bmb-tags/bmb-tags.component';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "../../services/native-modal.service";
|
|
14
|
-
import * as i2 from "@angular/common";
|
|
15
|
-
import * as i3 from "@angular/forms";
|
|
16
|
-
export class BmbFilterCardComponent {
|
|
17
|
-
constructor(modalService) {
|
|
18
|
-
this.modalService = modalService;
|
|
19
|
-
this.modalTitle = input('');
|
|
20
|
-
this.primaryBtnLabel = input('');
|
|
21
|
-
this.secondaryBtnLabel = input('');
|
|
22
|
-
this.icon = input('');
|
|
23
|
-
this.placeholderSearch = input('');
|
|
24
|
-
this.controlTypes = input([]);
|
|
25
|
-
this.storedValues = {};
|
|
26
|
-
this.inLine = input(false);
|
|
27
|
-
this.showDropdown = input(false);
|
|
28
|
-
this.dropdownOptions = input([]);
|
|
29
|
-
this.applyFilters = output();
|
|
30
|
-
this.resetFilters = output();
|
|
31
|
-
this.filterForm = new FormGroup({
|
|
32
|
-
search: new FormControl(''),
|
|
33
|
-
selectedDropdown: new FormControl(''),
|
|
34
|
-
});
|
|
35
|
-
this.modalId = signal(null);
|
|
36
|
-
effect(() => {
|
|
37
|
-
this.controlTypes().forEach((controlType) => {
|
|
38
|
-
controlType.control.forEach((control) => {
|
|
39
|
-
if (control.type === 'radial') {
|
|
40
|
-
const controlName = this.filterForm.get(control.name);
|
|
41
|
-
if (controlName) {
|
|
42
|
-
controlName.setValue(control.checked ? control.label : controlName.value);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
this.filterForm.addControl(control.name, new FormControl(control.checked ? control.label : ''));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
this.filterForm.addControl(control.name, new FormControl(control.checked));
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
openModalComponent() {
|
|
56
|
-
const data = {
|
|
57
|
-
title: this.modalTitle(),
|
|
58
|
-
size: 'small',
|
|
59
|
-
content: this.modalTemplate,
|
|
60
|
-
actions: [
|
|
61
|
-
{
|
|
62
|
-
label: this.primaryBtnLabel(),
|
|
63
|
-
action: this.handleSubmit.bind(this),
|
|
64
|
-
appearance: 'primary',
|
|
65
|
-
buttonName: this.primaryBtnLabel(),
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
label: this.secondaryBtnLabel(),
|
|
69
|
-
action: this.onReset.bind(this),
|
|
70
|
-
appearance: 'secondary-outlined',
|
|
71
|
-
buttonName: this.secondaryBtnLabel(),
|
|
72
|
-
},
|
|
73
|
-
],
|
|
74
|
-
scrollable: true,
|
|
75
|
-
};
|
|
76
|
-
this.modalId.set(this.modalService.openModal(data));
|
|
77
|
-
}
|
|
78
|
-
onControlChange(control, event) {
|
|
79
|
-
const formControl = this.filterForm.get(control.name);
|
|
80
|
-
if (formControl) {
|
|
81
|
-
switch (control.type) {
|
|
82
|
-
case 'switch':
|
|
83
|
-
formControl.setValue(event);
|
|
84
|
-
const switchValue = {
|
|
85
|
-
name: control.name,
|
|
86
|
-
label: control.rightText,
|
|
87
|
-
checked: event,
|
|
88
|
-
type: control.type,
|
|
89
|
-
};
|
|
90
|
-
this.storedValues[control.name] = switchValue;
|
|
91
|
-
break;
|
|
92
|
-
case 'checkbox':
|
|
93
|
-
formControl.setValue(event.target.checked);
|
|
94
|
-
const checkboxValue = {
|
|
95
|
-
name: control.name,
|
|
96
|
-
label: control.label,
|
|
97
|
-
checked: event.target.checked,
|
|
98
|
-
type: control.type,
|
|
99
|
-
};
|
|
100
|
-
this.storedValues[control.name] = checkboxValue;
|
|
101
|
-
break;
|
|
102
|
-
case 'radial':
|
|
103
|
-
formControl.setValue(control.label);
|
|
104
|
-
const radialValue = {
|
|
105
|
-
label: control.label,
|
|
106
|
-
checked: event.checked,
|
|
107
|
-
name: control.name,
|
|
108
|
-
type: control.type,
|
|
109
|
-
};
|
|
110
|
-
this.storedValues[control.name] = radialValue;
|
|
111
|
-
break;
|
|
112
|
-
default: //for the tag option or any other option that does not have an activated control
|
|
113
|
-
formControl.setValue(control.label);
|
|
114
|
-
const elementValue = {
|
|
115
|
-
label: control.label,
|
|
116
|
-
checked: !this.storedValues[control.name]?.checked,
|
|
117
|
-
name: control,
|
|
118
|
-
type: control.type,
|
|
119
|
-
};
|
|
120
|
-
this.storedValues[control.name] = elementValue;
|
|
121
|
-
break;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
handleSubmit() {
|
|
126
|
-
debugger;
|
|
127
|
-
const formData = {};
|
|
128
|
-
Object.keys(this.storedValues).forEach((key) => {
|
|
129
|
-
formData[key] = this.storedValues[key];
|
|
130
|
-
});
|
|
131
|
-
formData.search = this.filterForm.get('search')?.value;
|
|
132
|
-
this.modalService.closeModal(this.modalId());
|
|
133
|
-
this.applyFilters.emit(formData);
|
|
134
|
-
}
|
|
135
|
-
onReset() {
|
|
136
|
-
this.filterForm.reset();
|
|
137
|
-
this.resetFilters.emit();
|
|
138
|
-
}
|
|
139
|
-
getFormControl(search) {
|
|
140
|
-
return this.filterForm.get(search);
|
|
141
|
-
}
|
|
142
|
-
onValueChange(event) {
|
|
143
|
-
this.filterForm.get('search')?.setValue(event);
|
|
144
|
-
}
|
|
145
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFilterCardComponent, deps: [{ token: i1.BmbNativeModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
146
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbFilterCardComponent, isStandalone: true, selector: "bmb-filter-card", inputs: { modalTitle: { classPropertyName: "modalTitle", publicName: "modalTitle", isSignal: true, isRequired: false, transformFunction: null }, primaryBtnLabel: { classPropertyName: "primaryBtnLabel", publicName: "primaryBtnLabel", isSignal: true, isRequired: false, transformFunction: null }, secondaryBtnLabel: { classPropertyName: "secondaryBtnLabel", publicName: "secondaryBtnLabel", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, placeholderSearch: { classPropertyName: "placeholderSearch", publicName: "placeholderSearch", isSignal: true, isRequired: false, transformFunction: null }, controlTypes: { classPropertyName: "controlTypes", publicName: "controlTypes", isSignal: true, isRequired: false, transformFunction: null }, inLine: { classPropertyName: "inLine", publicName: "inLine", isSignal: true, isRequired: false, transformFunction: null }, showDropdown: { classPropertyName: "showDropdown", publicName: "showDropdown", isSignal: true, isRequired: false, transformFunction: null }, dropdownOptions: { classPropertyName: "dropdownOptions", publicName: "dropdownOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { applyFilters: "applyFilters", resetFilters: "resetFilters" }, viewQueries: [{ propertyName: "modalTemplate", first: true, predicate: ["modalTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"bmb_filter_card\">\n <ng-template #modalTemplate>\n <div class=\"bmb_filter_card-modal\">\n <form [formGroup]=\"filterForm\">\n @if (showDropdown()) {\n <bmb-dropdown\n [placeholder]=\"placeholderSearch()\"\n [options]=\"dropdownOptions()\"\n [control]=\"getFormControl('search')\"\n (onValueChange)=\"onValueChange($event)\"\n [isFilterable]=\"true\"\n />\n } @else {\n <bmb-input\n [placeholder]=\"placeholderSearch()\"\n [icon]=\"'search'\"\n [appearance]=\"'normal'\"\n [control]=\"getFormControl('search')\"\n [isClearable]=\"true\"\n />\n }\n @for (controlType of controlTypes(); track $index) {\n <h4 class=\"bmb_filter_card-title\">{{ controlType.title }}</h4>\n <div class=\"bmb_filter_card-control\">\n @for (control of controlType.control; track $index) {\n @switch (control.type) {\n @case ('tag') {\n <bmb-tag\n [text]=\"control.label\"\n [dismissible]=\"false\"\n [isActive]=\"storedValues[control.name]?.checked ?? false\"\n (clickedTag)=\"onControlChange(control, $event)\"\n />\n }\n @case ('radial') {\n <bmb-radial\n [name]=\"control.name\"\n [inputId]=\"control.id ?? control.name + '-' + $index\"\n [checked]=\"\n filterForm.get(control.name)?.value === control.label\n \"\n [label]=\"control.label\"\n (change)=\"onControlChange(control, $event)\"\n [value]=\"control.value ?? control.name\"\n />\n }\n @case ('checkbox') {\n <bmb-checkbox\n [name]=\"control.name\"\n [checked]=\"filterForm.get(control.name)?.value\"\n [label]=\"control.label\"\n (change)=\"onControlChange(control, $event)\"\n [inputId]=\"control.id ?? control.name + '-' + $index\"\n [value]=\"control.value ?? control.name\"\n />\n }\n @case ('switch') {\n <bmb-switch\n [rightText]=\"control.rightText ?? ''\"\n [isChecked]=\"filterForm.get(control.name)?.value === true\"\n (change)=\"onControlChange(control, $event)\"\n />\n }\n }\n }\n </div>\n }\n @if (inLine()) {\n <footer class=\"bmb_filter_card-footer\">\n <button bmbButton appearance=\"secondary-outlined\" type=\"reset\">\n {{ secondaryBtnLabel() }}\n </button>\n <button bmbButton (click)=\"handleSubmit()\" type=\"submit\">\n {{ primaryBtnLabel() }}\n </button>\n </footer>\n }\n </form>\n </div>\n </ng-template>\n\n @if (inLine()) {\n <ng-container [ngTemplateOutlet]=\"modalTemplate\" />\n } @else {\n <button\n type=\"button\"\n class=\"bmb_filter_card-button\"\n (click)=\"openModalComponent()\"\n type=\"button\"\n >\n <bmb-icon [icon]=\"icon()\" alt=\"Filter icon\" />\n </button>\n }\n</div>\n", styles: ["@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-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_filter_card-button{height:1.75rem;width:1.75rem;font-size:1.75rem;color:RGBA(var(--color-charade-950))}.bmb_filter_card-title{font-family:Poppins-Medium,sans-serif;font-size:.875rem;margin:1.5rem 0 1rem;color:RGBA(var(--color-charade-700))}.bmb_filter_card-control{border-bottom:.0625rem solid RGBA(var(--color-charade-500));padding-bottom:.625rem}@media (min-width: 768px){.bmb_filter_card-control{display:flex;flex-wrap:wrap;gap:var(--bmb-spacing-s)}}.bmb_filter_card-footer{padding-top:1rem;display:flex;flex-wrap:wrap;flex-flow:column;justify-content:center;gap:1rem}@media (min-width: 768px){.bmb_filter_card-footer{flex-flow:row}.bmb_filter_card-footer .bmb_btn-rounded{width:50%}}[data-theme=dark] .bmb_filter_card-button,.storybook-dark-theme .bmb_filter_card-button{color:RGBA(var(--color-charade-50))}[data-theme=dark] .bmb_filter_card-title,.storybook-dark-theme .bmb_filter_card-title{color:RGBA(var(--color-charade-200))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "component", type: BmbInputComponent, selector: "bmb-input", inputs: ["label", "type", "placeholder", "icon", "appearance", "errorMessage", "helperMessage", "disabled", "isRequired", "name", "spellcheck", "jsonFormat", "heightTextArea", "maxlength", "minlength", "pattern", "size", "max", "min", "id", "value", "autocomplete", "tooltip", "rows", "showMaxTextLength", "additionalAction", "tooltipPosition", "isClearable", "customValidation", "showError", "control"], outputs: ["showErrorChange", "controlChange", "isFocus", "isBlur", "onChange", "onKeyDown"] }, { kind: "component", type: BmbSwitchComponent, selector: "bmb-switch", inputs: ["leftText", "leftIcon", "rightText", "rightIcon", "isChecked", "ariaLabel", "id", "disabled", "name", "inputId", "control"], outputs: ["isCheckedChange", "inputIdChange", "controlChange", "change"] }, { kind: "component", type: BmbRadialComponent, selector: "bmb-radial", inputs: ["id", "checked", "disabled", "value", "name", "label", "labelPosition", "ariaDescribedby", "ariaLabel", "ariaLabelledby", "required", "errorMessage", "helperMessage", "showError", "control", "inputId"], outputs: ["showErrorChange", "controlChange", "inputIdChange", "change", "onKeyDown"] }, { kind: "component", type: BmbCheckboxComponent, selector: "bmb-checkbox", inputs: ["name", "id", "disabled", "required", "value", "label", "labelPosition", "ariaDescribedby", "ariaLabel", "ariaLabelledby", "errorMessage", "helperMessage", "customValidation", "control", "checked", "showError", "indeterminate", "inputId"], outputs: ["controlChange", "checkedChange", "showErrorChange", "indeterminateChange", "inputIdChange", "change"] }, { kind: "component", type: BmbDropdownComponent, selector: "bmb-dropdown", inputs: ["required", "showIcon", "placeholder", "icon", "options", "helperText", "errorMessage", "label", "name", "preferredOptions", "isMultiSelect", "tooltip", "tooltipPosition", "disabled", "value", "isFilterable", "inputId", "customValidation", "control", "isModalOpen"], outputs: ["controlChange", "onValueChange", "onFocus", "isModalOpenChange"] }, { kind: "directive", type: BmbButtonDirective, selector: "[bmbButton]", inputs: ["icon", "iconSize", "position", "case", "appearance", "size", "isToggleActive", "enableButtonToggle", "isRounded", "isMobile", "iconAlt"] }, { kind: "component", type: BmbTagComponent, selector: "bmb-tag", inputs: ["appearance", "text", "grouped", "dismissible", "rounded", "activityTag", "isDisabled", "isActive"], outputs: ["closedTag", "clickedTag"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
147
|
-
}
|
|
148
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFilterCardComponent, decorators: [{
|
|
149
|
-
type: Component,
|
|
150
|
-
args: [{ selector: 'bmb-filter-card', standalone: true, imports: [
|
|
151
|
-
CommonModule,
|
|
152
|
-
ReactiveFormsModule,
|
|
153
|
-
BmbIconComponent,
|
|
154
|
-
BmbInputComponent,
|
|
155
|
-
BmbSwitchComponent,
|
|
156
|
-
BmbRadialComponent,
|
|
157
|
-
BmbCheckboxComponent,
|
|
158
|
-
BmbDropdownComponent,
|
|
159
|
-
BmbButtonDirective,
|
|
160
|
-
BmbTagComponent,
|
|
161
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bmb_filter_card\">\n <ng-template #modalTemplate>\n <div class=\"bmb_filter_card-modal\">\n <form [formGroup]=\"filterForm\">\n @if (showDropdown()) {\n <bmb-dropdown\n [placeholder]=\"placeholderSearch()\"\n [options]=\"dropdownOptions()\"\n [control]=\"getFormControl('search')\"\n (onValueChange)=\"onValueChange($event)\"\n [isFilterable]=\"true\"\n />\n } @else {\n <bmb-input\n [placeholder]=\"placeholderSearch()\"\n [icon]=\"'search'\"\n [appearance]=\"'normal'\"\n [control]=\"getFormControl('search')\"\n [isClearable]=\"true\"\n />\n }\n @for (controlType of controlTypes(); track $index) {\n <h4 class=\"bmb_filter_card-title\">{{ controlType.title }}</h4>\n <div class=\"bmb_filter_card-control\">\n @for (control of controlType.control; track $index) {\n @switch (control.type) {\n @case ('tag') {\n <bmb-tag\n [text]=\"control.label\"\n [dismissible]=\"false\"\n [isActive]=\"storedValues[control.name]?.checked ?? false\"\n (clickedTag)=\"onControlChange(control, $event)\"\n />\n }\n @case ('radial') {\n <bmb-radial\n [name]=\"control.name\"\n [inputId]=\"control.id ?? control.name + '-' + $index\"\n [checked]=\"\n filterForm.get(control.name)?.value === control.label\n \"\n [label]=\"control.label\"\n (change)=\"onControlChange(control, $event)\"\n [value]=\"control.value ?? control.name\"\n />\n }\n @case ('checkbox') {\n <bmb-checkbox\n [name]=\"control.name\"\n [checked]=\"filterForm.get(control.name)?.value\"\n [label]=\"control.label\"\n (change)=\"onControlChange(control, $event)\"\n [inputId]=\"control.id ?? control.name + '-' + $index\"\n [value]=\"control.value ?? control.name\"\n />\n }\n @case ('switch') {\n <bmb-switch\n [rightText]=\"control.rightText ?? ''\"\n [isChecked]=\"filterForm.get(control.name)?.value === true\"\n (change)=\"onControlChange(control, $event)\"\n />\n }\n }\n }\n </div>\n }\n @if (inLine()) {\n <footer class=\"bmb_filter_card-footer\">\n <button bmbButton appearance=\"secondary-outlined\" type=\"reset\">\n {{ secondaryBtnLabel() }}\n </button>\n <button bmbButton (click)=\"handleSubmit()\" type=\"submit\">\n {{ primaryBtnLabel() }}\n </button>\n </footer>\n }\n </form>\n </div>\n </ng-template>\n\n @if (inLine()) {\n <ng-container [ngTemplateOutlet]=\"modalTemplate\" />\n } @else {\n <button\n type=\"button\"\n class=\"bmb_filter_card-button\"\n (click)=\"openModalComponent()\"\n type=\"button\"\n >\n <bmb-icon [icon]=\"icon()\" alt=\"Filter icon\" />\n </button>\n }\n</div>\n", styles: ["@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-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_filter_card-button{height:1.75rem;width:1.75rem;font-size:1.75rem;color:RGBA(var(--color-charade-950))}.bmb_filter_card-title{font-family:Poppins-Medium,sans-serif;font-size:.875rem;margin:1.5rem 0 1rem;color:RGBA(var(--color-charade-700))}.bmb_filter_card-control{border-bottom:.0625rem solid RGBA(var(--color-charade-500));padding-bottom:.625rem}@media (min-width: 768px){.bmb_filter_card-control{display:flex;flex-wrap:wrap;gap:var(--bmb-spacing-s)}}.bmb_filter_card-footer{padding-top:1rem;display:flex;flex-wrap:wrap;flex-flow:column;justify-content:center;gap:1rem}@media (min-width: 768px){.bmb_filter_card-footer{flex-flow:row}.bmb_filter_card-footer .bmb_btn-rounded{width:50%}}[data-theme=dark] .bmb_filter_card-button,.storybook-dark-theme .bmb_filter_card-button{color:RGBA(var(--color-charade-50))}[data-theme=dark] .bmb_filter_card-title,.storybook-dark-theme .bmb_filter_card-title{color:RGBA(var(--color-charade-200))}\n"] }]
|
|
162
|
-
}], ctorParameters: () => [{ type: i1.BmbNativeModalService }], propDecorators: { modalTemplate: [{
|
|
163
|
-
type: ViewChild,
|
|
164
|
-
args: ['modalTemplate']
|
|
165
|
-
}] } });
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZmlsdGVyLWNhcmQvYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZmlsdGVyLWNhcmQvYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFFakIsU0FBUyxFQUNULE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBSzlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7QUF1QmpFLE1BQU0s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O3dCQUNqQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsZUFBZTtxQkFDaEIsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTswRkF3Qm5CLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgaW5wdXQsXG4gIE9uSW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBvdXRwdXQsXG4gIGVmZmVjdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJTd2l0Y2hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItc3dpdGNoL2JtYi1zd2l0Y2guY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlJhZGlhbENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1yYWRpYWwvYm1iLXJhZGlhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItY2hlY2tib3gvYm1iLWNoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJQm1iTmF0aXZlTW9kYWwsXG4gIE1vZGFsRGF0YUNvbmZpZyxcbn0gZnJvbSAnLi4vYm1iLW1vZGFsL2JtYi1tb2RhbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQm1iSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9ibWItaW5wdXQvYm1iLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJQm1iQ29udHJvbFR5cGUgfSBmcm9tICcuL2JtYi1maWx0ZXItY2FyZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQm1iQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ibWItYnV0dG9uL2J1dHRvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm1iRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi9ibWItZHJvcGRvd24vYm1iLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJUYWdDb21wb25lbnQgfSBmcm9tICcuLi9ibWItdGFncy9ibWItdGFncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iTmF0aXZlTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbmF0aXZlLW1vZGFsLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItZmlsdGVyLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1maWx0ZXItY2FyZC5jb21wb25lbnQuc2NzcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICAgIEJtYklucHV0Q29tcG9uZW50LFxuICAgIEJtYlN3aXRjaENvbXBvbmVudCxcbiAgICBCbWJSYWRpYWxDb21wb25lbnQsXG4gICAgQm1iQ2hlY2tib3hDb21wb25lbnQsXG4gICAgQm1iRHJvcGRvd25Db21wb25lbnQsXG4gICAgQm1iQnV0dG9uRGlyZWN0aXZlLFxuICAgIEJtYlRhZ0NvbXBvbmVudCxcbiAgXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkZpbHRlckNhcmRDb21wb25lbnQge1xuICBtb2RhbFRpdGxlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHByaW1hcnlCdG5MYWJlbCA9IGlucHV0PHN0cmluZz4oJycpO1xuICBzZWNvbmRhcnlCdG5MYWJlbCA9IGlucHV0PHN0cmluZz4oJycpO1xuICBpY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHBsYWNlaG9sZGVyU2VhcmNoID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGNvbnRyb2xUeXBlcyA9IGlucHV0PElCbWJDb250cm9sVHlwZVtdPihbXSk7XG4gIHN0b3JlZFZhbHVlczogeyBbbmFtZTogc3RyaW5nXTogYW55IH0gPSB7fTtcbiAgaW5MaW5lID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBzaG93RHJvcGRvd24gPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGRyb3Bkb3duT3B0aW9ucyA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG5cbiAgYXBwbHlGaWx0ZXJzID0gb3V0cHV0PGFueT4oKTtcbiAgcmVzZXRGaWx0ZXJzID0gb3V0cHV0PHZvaWQ+KCk7XG5cbiAgZmlsdGVyRm9ybTogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgc2VhcmNoOiBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nPignJyksXG4gICAgc2VsZWN0ZWREcm9wZG93bjogbmV3IEZvcm1Db250cm9sPHN0cmluZz4oJycpLFxuICB9KTtcblxuICBtb2RhbElkID0gc2lnbmFsPHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gIEBWaWV3Q2hpbGQoJ21vZGFsVGVtcGxhdGUnKSBtb2RhbFRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsU2VydmljZTogQm1iTmF0aXZlTW9kYWxTZXJ2aWNlKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIHRoaXMuY29udHJvbFR5cGVzKCkuZm9yRWFjaCgoY29udHJvbFR5cGUpID0+IHtcbiAgICAgICAgY29udHJvbFR5cGUuY29udHJvbC5mb3JFYWNoKChjb250cm9sKSA9PiB7XG4gICAgICAgICAgaWYgKGNvbnRyb2wudHlwZSA9PT0gJ3JhZGlhbCcpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2xOYW1lID0gdGhpcy5maWx0ZXJGb3JtLmdldChjb250cm9sLm5hbWUpO1xuICAgICAgICAgICAgaWYgKGNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgIGNvbnRyb2xOYW1lLnNldFZhbHVlKFxuICAgICAgICAgICAgICAgIGNvbnRyb2wuY2hlY2tlZCA/IGNvbnRyb2wubGFiZWwgOiBjb250cm9sTmFtZS52YWx1ZSxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuZmlsdGVyRm9ybS5hZGRDb250cm9sKFxuICAgICAgICAgICAgICAgIGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nPihjb250cm9sLmNoZWNrZWQgPyBjb250cm9sLmxhYmVsIDogJycpLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckZvcm0uYWRkQ29udHJvbChcbiAgICAgICAgICAgICAgY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgICBuZXcgRm9ybUNvbnRyb2w8Ym9vbGVhbj4oY29udHJvbC5jaGVja2VkKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgb3Blbk1vZGFsQ29tcG9uZW50KCkge1xuICAgIGNvbnN0IGRhdGE6IElCbWJOYXRpdmVNb2RhbCA9IHtcbiAgICAgIHRpdGxlOiB0aGlzLm1vZGFsVGl0bGUoKSxcbiAgICAgIHNpemU6ICdzbWFsbCcsXG4gICAgICBjb250ZW50OiB0aGlzLm1vZGFsVGVtcGxhdGUsXG4gICAgICBhY3Rpb25zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogdGhpcy5wcmltYXJ5QnRuTGFiZWwoKSxcbiAgICAgICAgICBhY3Rpb246IHRoaXMuaGFuZGxlU3VibWl0LmJpbmQodGhpcyksXG4gICAgICAgICAgYXBwZWFyYW5jZTogJ3ByaW1hcnknLFxuICAgICAgICAgIGJ1dHRvbk5hbWU6IHRoaXMucHJpbWFyeUJ0bkxhYmVsKCksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogdGhpcy5zZWNvbmRhcnlCdG5MYWJlbCgpLFxuICAgICAgICAgIGFjdGlvbjogdGhpcy5vblJlc2V0LmJpbmQodGhpcyksXG4gICAgICAgICAgYXBwZWFyYW5jZTogJ3NlY29uZGFyeS1vdXRsaW5lZCcsXG4gICAgICAgICAgYnV0dG9uTmFtZTogdGhpcy5zZWNvbmRhcnlCdG5MYWJlbCgpLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHNjcm9sbGFibGU6IHRydWUsXG4gICAgfTtcblxuICAgIHRoaXMubW9kYWxJZC5zZXQodGhpcy5tb2RhbFNlcnZpY2Uub3Blbk1vZGFsKGRhdGEpKTtcbiAgfVxuXG4gIG9uQ29udHJvbENoYW5nZShjb250cm9sOiBhbnksIGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbCA9IHRoaXMuZmlsdGVyRm9ybS5nZXQoY29udHJvbC5uYW1lKTtcbiAgICBpZiAoZm9ybUNvbnRyb2wpIHtcbiAgICAgIHN3aXRjaCAoY29udHJvbC50eXBlKSB7XG4gICAgICAgIGNhc2UgJ3N3aXRjaCc6XG4gICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUoZXZlbnQpO1xuICAgICAgICAgIGNvbnN0IHN3aXRjaFZhbHVlID0ge1xuICAgICAgICAgICAgbmFtZTogY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgbGFiZWw6IGNvbnRyb2wucmlnaHRUZXh0LFxuICAgICAgICAgICAgY2hlY2tlZDogZXZlbnQsXG4gICAgICAgICAgICB0eXBlOiBjb250cm9sLnR5cGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdID0gc3dpdGNoVmFsdWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2NoZWNrYm94JzpcbiAgICAgICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShldmVudC50YXJnZXQuY2hlY2tlZCk7XG4gICAgICAgICAgY29uc3QgY2hlY2tib3hWYWx1ZSA9IHtcbiAgICAgICAgICAgIG5hbWU6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgIGxhYmVsOiBjb250cm9sLmxhYmVsLFxuICAgICAgICAgICAgY2hlY2tlZDogZXZlbnQudGFyZ2V0LmNoZWNrZWQsXG4gICAgICAgICAgICB0eXBlOiBjb250cm9sLnR5cGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdID0gY2hlY2tib3hWYWx1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmFkaWFsJzpcbiAgICAgICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShjb250cm9sLmxhYmVsKTtcbiAgICAgICAgICBjb25zdCByYWRpYWxWYWx1ZSA9IHtcbiAgICAgICAgICAgIGxhYmVsOiBjb250cm9sLmxhYmVsLFxuICAgICAgICAgICAgY2hlY2tlZDogZXZlbnQuY2hlY2tlZCxcbiAgICAgICAgICAgIG5hbWU6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgIHR5cGU6IGNvbnRyb2wudHlwZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMuc3RvcmVkVmFsdWVzW2NvbnRyb2wubmFtZV0gPSByYWRpYWxWYWx1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDogLy9mb3IgdGhlIHRhZyBvcHRpb24gb3IgYW55IG90aGVyIG9wdGlvbiB0aGF0IGRvZXMgbm90IGhhdmUgYW4gYWN0aXZhdGVkIGNvbnRyb2xcbiAgICAgICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShjb250cm9sLmxhYmVsKTtcbiAgICAgICAgICBjb25zdCBlbGVtZW50VmFsdWUgPSB7XG4gICAgICAgICAgICBsYWJlbDogY29udHJvbC5sYWJlbCxcbiAgICAgICAgICAgIGNoZWNrZWQ6ICF0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdPy5jaGVja2VkLFxuICAgICAgICAgICAgbmFtZTogY29udHJvbCxcbiAgICAgICAgICAgIHR5cGU6IGNvbnRyb2wudHlwZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMuc3RvcmVkVmFsdWVzW2NvbnRyb2wubmFtZV0gPSBlbGVtZW50VmFsdWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlU3VibWl0KCkge1xuICAgIGRlYnVnZ2VyO1xuICAgIGNvbnN0IGZvcm1EYXRhOiBhbnkgPSB7fTtcbiAgICBPYmplY3Qua2V5cyh0aGlzLnN0b3JlZFZhbHVlcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBmb3JtRGF0YVtrZXldID0gdGhpcy5zdG9yZWRWYWx1ZXNba2V5XTtcbiAgICB9KTtcbiAgICBmb3JtRGF0YS5zZWFyY2ggPSB0aGlzLmZpbHRlckZvcm0uZ2V0KCdzZWFyY2gnKT8udmFsdWU7XG4gICAgdGhpcy5tb2RhbFNlcnZpY2UuY2xvc2VNb2RhbCh0aGlzLm1vZGFsSWQoKSBhcyBzdHJpbmcpO1xuICAgIHRoaXMuYXBwbHlGaWx0ZXJzLmVtaXQoZm9ybURhdGEpO1xuICB9XG5cbiAgb25SZXNldCgpIHtcbiAgICB0aGlzLmZpbHRlckZvcm0ucmVzZXQoKTtcbiAgICB0aGlzLnJlc2V0RmlsdGVycy5lbWl0KCk7XG4gIH1cblxuICBnZXRGb3JtQ29udHJvbChzZWFyY2g6IHN0cmluZyk6IEZvcm1Db250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJGb3JtLmdldChzZWFyY2gpIGFzIEZvcm1Db250cm9sO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZShldmVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5maWx0ZXJGb3JtLmdldCgnc2VhcmNoJyk/LnNldFZhbHVlKGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZFwiPlxuICA8bmctdGVtcGxhdGUgI21vZGFsVGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZC1tb2RhbFwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmaWx0ZXJGb3JtXCI+XG4gICAgICAgIEBpZiAoc2hvd0Ryb3Bkb3duKCkpIHtcbiAgICAgICAgICA8Ym1iLWRyb3Bkb3duXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJTZWFyY2goKVwiXG4gICAgICAgICAgICBbb3B0aW9uc109XCJkcm9wZG93bk9wdGlvbnMoKVwiXG4gICAgICAgICAgICBbY29udHJvbF09XCJnZXRGb3JtQ29udHJvbCgnc2VhcmNoJylcIlxuICAgICAgICAgICAgKG9uVmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgIFtpc0ZpbHRlcmFibGVdPVwidHJ1ZVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgPGJtYi1pbnB1dFxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyU2VhcmNoKClcIlxuICAgICAgICAgICAgW2ljb25dPVwiJ3NlYXJjaCdcIlxuICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiJ25vcm1hbCdcIlxuICAgICAgICAgICAgW2NvbnRyb2xdPVwiZ2V0Rm9ybUNvbnRyb2woJ3NlYXJjaCcpXCJcbiAgICAgICAgICAgIFtpc0NsZWFyYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKGNvbnRyb2xUeXBlIG9mIGNvbnRyb2xUeXBlcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICA8aDQgY2xhc3M9XCJibWJfZmlsdGVyX2NhcmQtdGl0bGVcIj57eyBjb250cm9sVHlwZS50aXRsZSB9fTwvaDQ+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZC1jb250cm9sXCI+XG4gICAgICAgICAgICBAZm9yIChjb250cm9sIG9mIGNvbnRyb2xUeXBlLmNvbnRyb2w7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICBAc3dpdGNoIChjb250cm9sLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBAY2FzZSAoJ3RhZycpIHtcbiAgICAgICAgICAgICAgICAgIDxibWItdGFnXG4gICAgICAgICAgICAgICAgICAgIFt0ZXh0XT1cImNvbnRyb2wubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICBbZGlzbWlzc2libGVdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICBbaXNBY3RpdmVdPVwic3RvcmVkVmFsdWVzW2NvbnRyb2wubmFtZV0/LmNoZWNrZWQgPz8gZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2tlZFRhZyk9XCJvbkNvbnRyb2xDaGFuZ2UoY29udHJvbCwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAY2FzZSAoJ3JhZGlhbCcpIHtcbiAgICAgICAgICAgICAgICAgIDxibWItcmFkaWFsXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImNvbnRyb2wubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtpbnB1dElkXT1cImNvbnRyb2wuaWQgPz8gY29udHJvbC5uYW1lICsgJy0nICsgJGluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgZmlsdGVyRm9ybS5nZXQoY29udHJvbC5uYW1lKT8udmFsdWUgPT09IGNvbnRyb2wubGFiZWxcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImNvbnRyb2wubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uQ29udHJvbENoYW5nZShjb250cm9sLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbnRyb2wudmFsdWUgPz8gY29udHJvbC5uYW1lXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBjYXNlICgnY2hlY2tib3gnKSB7XG4gICAgICAgICAgICAgICAgICA8Ym1iLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImNvbnRyb2wubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImZpbHRlckZvcm0uZ2V0KGNvbnRyb2wubmFtZSk/LnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImNvbnRyb2wubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uQ29udHJvbENoYW5nZShjb250cm9sLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW2lucHV0SWRdPVwiY29udHJvbC5pZCA/PyBjb250cm9sLm5hbWUgKyAnLScgKyAkaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29udHJvbC52YWx1ZSA/PyBjb250cm9sLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGNhc2UgKCdzd2l0Y2gnKSB7XG4gICAgICAgICAgICAgICAgICA8Ym1iLXN3aXRjaFxuICAgICAgICAgICAgICAgICAgICBbcmlnaHRUZXh0XT1cImNvbnRyb2wucmlnaHRUZXh0ID8/ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgW2lzQ2hlY2tlZF09XCJmaWx0ZXJGb3JtLmdldChjb250cm9sLm5hbWUpPy52YWx1ZSA9PT0gdHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25Db250cm9sQ2hhbmdlKGNvbnRyb2wsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGluTGluZSgpKSB7XG4gICAgICAgICAgPGZvb3RlciBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZC1mb290ZXJcIj5cbiAgICAgICAgICAgIDxidXR0b24gYm1iQnV0dG9uIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnktb3V0bGluZWRcIiB0eXBlPVwicmVzZXRcIj5cbiAgICAgICAgICAgICAge3sgc2Vjb25kYXJ5QnRuTGFiZWwoKSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGJtYkJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlU3VibWl0KClcIiB0eXBlPVwic3VibWl0XCI+XG4gICAgICAgICAgICAgIHt7IHByaW1hcnlCdG5MYWJlbCgpIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Zvb3Rlcj5cbiAgICAgICAgfVxuICAgICAgPC9mb3JtPlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIEBpZiAoaW5MaW5lKCkpIHtcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1vZGFsVGVtcGxhdGVcIiAvPlxuICB9IEBlbHNlIHtcbiAgICA8YnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkLWJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwib3Blbk1vZGFsQ29tcG9uZW50KClcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgPlxuICAgICAgPGJtYi1pY29uIFtpY29uXT1cImljb24oKVwiIGFsdD1cIkZpbHRlciBpY29uXCIgLz5cbiAgICA8L2J1dHRvbj5cbiAgfVxuPC9kaXY+XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZpbHRlci1jYXJkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZmlsdGVyLWNhcmQvYm1iLWZpbHRlci1jYXJkLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJQm1iQ29udHJvbFR5cGUge1xuICB0aXRsZTogc3RyaW5nO1xuICBjb250cm9sOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHR5cGU6ICdyYWRpYWwnIHwgJ2NoZWNrYm94JyB8ICdzd2l0Y2gnIHwgJ3RhZyc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBjaGVja2VkOiBib29sZWFuO1xuICAgIHJpZ2h0VGV4dD86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZztcbiAgICBpZD86IHN0cmluZztcbiAgfVtdO1xufVxuIl19
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, ViewEncapsulation, input, } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { BmbIconComponent } from '../bmb-icon/bmb-icon.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
export class BmbFocusElementComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.icon = input('');
|
|
9
|
-
this.number = input(0);
|
|
10
|
-
this.title = input('');
|
|
11
|
-
this.isNormal = input();
|
|
12
|
-
this.isNonFocused = input();
|
|
13
|
-
this.isInheritedBg = input();
|
|
14
|
-
this.baseClass = 'bmb_focus-element';
|
|
15
|
-
}
|
|
16
|
-
getBackgroundClass() {
|
|
17
|
-
if (this.isInheritedBg())
|
|
18
|
-
return `${this.baseClass}-inherited_bg`;
|
|
19
|
-
return `${this.baseClass}-normal_bg`;
|
|
20
|
-
}
|
|
21
|
-
getCircleClass() {
|
|
22
|
-
const classNames = [this.getBackgroundClass()];
|
|
23
|
-
if (this.isNonFocused())
|
|
24
|
-
return [...classNames, `${this.baseClass}-non_focused`];
|
|
25
|
-
if (this.isNormal())
|
|
26
|
-
return [...classNames, `${this.baseClass}-normal_circle`];
|
|
27
|
-
return [...classNames, `${this.baseClass}-circle_focused`];
|
|
28
|
-
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFocusElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbFocusElementComponent, isStandalone: true, selector: "bmb-focus-element", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, number: { classPropertyName: "number", publicName: "number", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, isNormal: { classPropertyName: "isNormal", publicName: "isNormal", isSignal: true, isRequired: false, transformFunction: null }, isNonFocused: { classPropertyName: "isNonFocused", publicName: "isNonFocused", isSignal: true, isRequired: false, transformFunction: null }, isInheritedBg: { classPropertyName: "isInheritedBg", publicName: "isInheritedBg", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<section class=\"bmb_focus-element\">\n <section [ngClass]=\"getCircleClass()\">\n @if (icon()) {\n <bmb-icon\n class=\"bmb_focus-element-icon\"\n [ngClass]=\"{\n 'bmb_focus-element-icon-focused': !isNonFocused() && !isNormal()\n }\"\n [icon]=\"icon()\"\n [size]=\"24\"\n alt=\"Focus element icon\"\n />\n } @else if (number()) {\n <span\n class=\"bmb_focus-element-number\"\n [ngClass]=\"{\n 'bmb_focus-element-number-focused': !isNonFocused() && !isNormal()\n }\"\n >\n {{ number() }}\n </span>\n }\n </section>\n @if (title()) {\n <h5 class=\"bmb_focus-element-title\">{{ title() }}</h5>\n }\n</section>\n", styles: ["@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-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_focus-element{width:fit-content}.bmb_focus-element-normal_circle{align-items:center;display:flex;height:4rem;justify-content:center;width:4rem;border:.0625rem solid var(--general_contrasts-100);border-radius:100%}.bmb_focus-element-circle_focused{align-items:center;display:flex;height:4rem;justify-content:center;width:4rem;border:.0625rem solid var(--general_contrasts-main-selection);border-radius:100%}.bmb_focus-element-normal_bg{background-color:var(--general_contrasts-input-background)}.bmb_focus-element-inherited_bg{background-color:inherit}.bmb_focus-element-non_focused{align-items:center;display:flex;height:4rem;justify-content:center;width:4rem;border:.0625rem solid background-color;border-radius:100%}.bmb_focus-element-icon{align-items:center;color:var(--general_contrasts-100);display:flex}.bmb_focus-element-icon-focused{color:var(--general_contrasts-main-selection)}.bmb_focus-element-number{color:var(--general_contrasts-input-outline);display:block;font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.bmb_focus-element-title{color:var(--general_contrasts-100);margin-top:.625rem;text-align:center;font-family:Poppins-Regular,sans-serif;font-size:.75rem;max-width:4rem;font-weight:300}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFocusElementComponent, decorators: [{
|
|
33
|
-
type: Component,
|
|
34
|
-
args: [{ selector: 'bmb-focus-element', standalone: true, imports: [CommonModule, BmbIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<section class=\"bmb_focus-element\">\n <section [ngClass]=\"getCircleClass()\">\n @if (icon()) {\n <bmb-icon\n class=\"bmb_focus-element-icon\"\n [ngClass]=\"{\n 'bmb_focus-element-icon-focused': !isNonFocused() && !isNormal()\n }\"\n [icon]=\"icon()\"\n [size]=\"24\"\n alt=\"Focus element icon\"\n />\n } @else if (number()) {\n <span\n class=\"bmb_focus-element-number\"\n [ngClass]=\"{\n 'bmb_focus-element-number-focused': !isNonFocused() && !isNormal()\n }\"\n >\n {{ number() }}\n </span>\n }\n </section>\n @if (title()) {\n <h5 class=\"bmb_focus-element-title\">{{ title() }}</h5>\n }\n</section>\n", styles: ["@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-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_focus-element{width:fit-content}.bmb_focus-element-normal_circle{align-items:center;display:flex;height:4rem;justify-content:center;width:4rem;border:.0625rem solid var(--general_contrasts-100);border-radius:100%}.bmb_focus-element-circle_focused{align-items:center;display:flex;height:4rem;justify-content:center;width:4rem;border:.0625rem solid var(--general_contrasts-main-selection);border-radius:100%}.bmb_focus-element-normal_bg{background-color:var(--general_contrasts-input-background)}.bmb_focus-element-inherited_bg{background-color:inherit}.bmb_focus-element-non_focused{align-items:center;display:flex;height:4rem;justify-content:center;width:4rem;border:.0625rem solid background-color;border-radius:100%}.bmb_focus-element-icon{align-items:center;color:var(--general_contrasts-100);display:flex}.bmb_focus-element-icon-focused{color:var(--general_contrasts-main-selection)}.bmb_focus-element-number{color:var(--general_contrasts-input-outline);display:block;font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.bmb_focus-element-title{color:var(--general_contrasts-100);margin-top:.625rem;text-align:center;font-family:Poppins-Regular,sans-serif;font-size:.75rem;max-width:4rem;font-weight:300}\n"] }]
|
|
35
|
-
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZvY3VzLWVsZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1mb2N1cy1lbGVtZW50L2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZm9jdXMtZWxlbWVudC9ibWItZm9jdXMtZWxlbWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBV2xFLE1BQU0sT0FBTyx3QkFBd0I7SUFUckM7UUFVRSxTQUFJLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLFdBQU0sR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsVUFBSyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxQixhQUFRLEdBQUcsS0FBSyxFQUFXLENBQUM7UUFDNUIsaUJBQVksR0FBRyxLQUFLLEVBQVcsQ0FBQztRQUNoQyxrQkFBYSxHQUFHLEtBQUssRUFBVyxDQUFDO1FBRWpDLGNBQVMsR0FBVyxtQkFBbUIsQ0FBQztLQWV6QztJQWJDLGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFBRSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsZUFBZSxDQUFDO1FBQ2xFLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxZQUFZLENBQUM7SUFDdkMsQ0FBQztJQUVELGNBQWM7UUFDWixNQUFNLFVBQVUsR0FBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDekQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLGNBQWMsQ0FBQyxDQUFDO1FBQzFELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixPQUFPLENBQUMsR0FBRyxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVELE9BQU8sQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLGlCQUFpQixDQUFDLENBQUM7SUFDN0QsQ0FBQzsrR0F0QlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsKzFCQ2xCckMsbXVCQTJCQSxpbU9EYlksWUFBWSw2SEFBRSxnQkFBZ0I7OzRGQUk3Qix3QkFBd0I7a0JBVHBDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBR2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxtQkFDeEIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBpbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1mb2N1cy1lbGVtZW50JyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQm1iSWNvbkNvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJGb2N1c0VsZW1lbnRDb21wb25lbnQge1xuICBpY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIG51bWJlciA9IGlucHV0PG51bWJlcj4oMCk7XG4gIHRpdGxlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGlzTm9ybWFsID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgaXNOb25Gb2N1c2VkID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgaXNJbmhlcml0ZWRCZyA9IGlucHV0PGJvb2xlYW4+KCk7XG5cbiAgYmFzZUNsYXNzOiBzdHJpbmcgPSAnYm1iX2ZvY3VzLWVsZW1lbnQnO1xuXG4gIGdldEJhY2tncm91bmRDbGFzcygpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSW5oZXJpdGVkQmcoKSkgcmV0dXJuIGAke3RoaXMuYmFzZUNsYXNzfS1pbmhlcml0ZWRfYmdgO1xuICAgIHJldHVybiBgJHt0aGlzLmJhc2VDbGFzc30tbm9ybWFsX2JnYDtcbiAgfVxuXG4gIGdldENpcmNsZUNsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjbGFzc05hbWVzOiBzdHJpbmdbXSA9IFt0aGlzLmdldEJhY2tncm91bmRDbGFzcygpXTtcbiAgICBpZiAodGhpcy5pc05vbkZvY3VzZWQoKSlcbiAgICAgIHJldHVybiBbLi4uY2xhc3NOYW1lcywgYCR7dGhpcy5iYXNlQ2xhc3N9LW5vbl9mb2N1c2VkYF07XG4gICAgaWYgKHRoaXMuaXNOb3JtYWwoKSlcbiAgICAgIHJldHVybiBbLi4uY2xhc3NOYW1lcywgYCR7dGhpcy5iYXNlQ2xhc3N9LW5vcm1hbF9jaXJjbGVgXTtcbiAgICByZXR1cm4gWy4uLmNsYXNzTmFtZXMsIGAke3RoaXMuYmFzZUNsYXNzfS1jaXJjbGVfZm9jdXNlZGBdO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJtYl9mb2N1cy1lbGVtZW50XCI+XG4gIDxzZWN0aW9uIFtuZ0NsYXNzXT1cImdldENpcmNsZUNsYXNzKClcIj5cbiAgICBAaWYgKGljb24oKSkge1xuICAgICAgPGJtYi1pY29uXG4gICAgICAgIGNsYXNzPVwiYm1iX2ZvY3VzLWVsZW1lbnQtaWNvblwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnYm1iX2ZvY3VzLWVsZW1lbnQtaWNvbi1mb2N1c2VkJzogIWlzTm9uRm9jdXNlZCgpICYmICFpc05vcm1hbCgpXG4gICAgICAgIH1cIlxuICAgICAgICBbaWNvbl09XCJpY29uKClcIlxuICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgIGFsdD1cIkZvY3VzIGVsZW1lbnQgaWNvblwiXG4gICAgICAvPlxuICAgIH0gQGVsc2UgaWYgKG51bWJlcigpKSB7XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImJtYl9mb2N1cy1lbGVtZW50LW51bWJlclwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnYm1iX2ZvY3VzLWVsZW1lbnQtbnVtYmVyLWZvY3VzZWQnOiAhaXNOb25Gb2N1c2VkKCkgJiYgIWlzTm9ybWFsKClcbiAgICAgICAgfVwiXG4gICAgICA+XG4gICAgICAgIHt7IG51bWJlcigpIH19XG4gICAgICA8L3NwYW4+XG4gICAgfVxuICA8L3NlY3Rpb24+XG4gIEBpZiAodGl0bGUoKSkge1xuICAgIDxoNSBjbGFzcz1cImJtYl9mb2N1cy1lbGVtZW50LXRpdGxlXCI+e3sgdGl0bGUoKSB9fTwvaDU+XG4gIH1cbjwvc2VjdGlvbj5cbiJdfQ==
|
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ContentChildren, model, output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
-
import { ReactiveFormsModule, FormGroup } from '@angular/forms';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { BmbInputComponent } from '../bmb-input/bmb-input.component';
|
|
5
|
-
import { BmbInputTagsComponent } from '../bmb-input-tags/bmb-input-tags.component';
|
|
6
|
-
import { handleValidity } from '../../utils/formControl';
|
|
7
|
-
import { BmbDatepickerComponent } from '../bmb-datepicker/bmb-datepicker.component';
|
|
8
|
-
import { BmbDateRangeComponent } from '../bmb-date-range/bmb-date-range.component';
|
|
9
|
-
import { BmbDropdownComponent } from '../bmb-dropdown/bmb-dropdown.component';
|
|
10
|
-
import { BmbInputPhoneNumberComponent } from '../bmb-input-phone-number/bmb-input-phone-number.component';
|
|
11
|
-
import { BmbCheckboxComponent } from '../bmb-checkbox/bmb-checkbox.component';
|
|
12
|
-
import { BmbRadialComponent } from '../bmb-radial/bmb-radial.component';
|
|
13
|
-
import { BmbSwitchComponent } from '../bmb-switch/bmb-switch.component';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@angular/forms";
|
|
16
|
-
export class BmbFormValidatorComponent {
|
|
17
|
-
constructor() {
|
|
18
|
-
this.formGroup = model(new FormGroup({}));
|
|
19
|
-
this.formGroupState = output();
|
|
20
|
-
}
|
|
21
|
-
ngAfterViewInit() {
|
|
22
|
-
this.addControls();
|
|
23
|
-
}
|
|
24
|
-
addControls() {
|
|
25
|
-
this.bmbInputs.forEach((child) => {
|
|
26
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
27
|
-
});
|
|
28
|
-
this.bmbDropdowns.forEach((child) => {
|
|
29
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
30
|
-
});
|
|
31
|
-
this.bmbInputPhoneNumbers.forEach((child) => {
|
|
32
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
33
|
-
});
|
|
34
|
-
this.bmbInputTags.forEach((child) => {
|
|
35
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
36
|
-
});
|
|
37
|
-
this.bmbDatepickers.forEach((child) => {
|
|
38
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
39
|
-
});
|
|
40
|
-
this.bmbDateRanges.forEach((child) => {
|
|
41
|
-
this.addControl(`${child.name()}_start`, child.controlStart(), child.isControlStartNull);
|
|
42
|
-
this.addControl(`${child.name()}_end`, child.controlEnd(), child.isControlEndNull);
|
|
43
|
-
});
|
|
44
|
-
this.bmbCheckboxes.forEach((child) => {
|
|
45
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
46
|
-
});
|
|
47
|
-
this.bmbRadials.forEach((child) => {
|
|
48
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
49
|
-
});
|
|
50
|
-
this.bmbSwitches.forEach((child) => {
|
|
51
|
-
this.addControl(child.name(), child.control(), child.isControlNull);
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
addControl(controlName, control, isControlNull) {
|
|
55
|
-
if (!this.getFormControl(controlName)) {
|
|
56
|
-
this.formGroup().addControl(controlName, control);
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
if (isControlNull)
|
|
60
|
-
this.formGroup().setControl(controlName, control);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
addRadials() {
|
|
64
|
-
const radialNames = this.bmbRadials.reduce((acc, currentElement) => {
|
|
65
|
-
if (acc.includes(currentElement.name()))
|
|
66
|
-
return acc;
|
|
67
|
-
return [...acc, currentElement.name()];
|
|
68
|
-
}, []);
|
|
69
|
-
radialNames.forEach((name) => {
|
|
70
|
-
const radialIndexWithSameName = this.bmbRadials.reduce((acc, currentElement, index) => {
|
|
71
|
-
if (currentElement.name() === name)
|
|
72
|
-
return [...acc, index];
|
|
73
|
-
return acc;
|
|
74
|
-
}, []);
|
|
75
|
-
const radialControl = this.bmbRadials.get(radialIndexWithSameName[0]);
|
|
76
|
-
if (this.bmbRadials
|
|
77
|
-
.filter((element) => element.name() === name)
|
|
78
|
-
.every((elementSelected) => !elementSelected.isControlNull)) {
|
|
79
|
-
this.addControl(radialControl.name(), radialControl.control(), false);
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
const value = this.bmbRadials
|
|
83
|
-
.filter((element) => element.name() === name)
|
|
84
|
-
?.find((elementSelected) => elementSelected.checked())
|
|
85
|
-
?.control()?.value;
|
|
86
|
-
radialControl.control()?.setValue(value);
|
|
87
|
-
radialIndexWithSameName.slice(1).forEach((element) => {
|
|
88
|
-
this.bmbRadials.get(element)?.control.set(radialControl.control());
|
|
89
|
-
});
|
|
90
|
-
this.addControl(radialControl.name(), radialControl.control(), false);
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
onSubmit() {
|
|
94
|
-
this.formGroup().updateValueAndValidity();
|
|
95
|
-
this.formGroup().markAllAsTouched();
|
|
96
|
-
this.updateErrorState();
|
|
97
|
-
this.formGroupState.emit(this.formGroup());
|
|
98
|
-
}
|
|
99
|
-
updateErrorState() {
|
|
100
|
-
Object.keys(this.formGroup().controls).forEach((field) => {
|
|
101
|
-
const control = this.getFormControl(field);
|
|
102
|
-
if (!!control) {
|
|
103
|
-
handleValidity(control);
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
getFormControl(name) {
|
|
108
|
-
return this.formGroup().get(name);
|
|
109
|
-
}
|
|
110
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFormValidatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
111
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BmbFormValidatorComponent, isStandalone: true, selector: "bmb-form-validator", inputs: { formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { formGroup: "formGroupChange", formGroupState: "formGroupState" }, queries: [{ propertyName: "bmbInputs", predicate: BmbInputComponent, descendants: true }, { propertyName: "bmbDropdowns", predicate: BmbDropdownComponent, descendants: true }, { propertyName: "bmbInputPhoneNumbers", predicate: BmbInputPhoneNumberComponent, descendants: true }, { propertyName: "bmbInputTags", predicate: BmbInputTagsComponent, descendants: true }, { propertyName: "bmbDatepickers", predicate: BmbDatepickerComponent, descendants: true }, { propertyName: "bmbDateRanges", predicate: BmbDateRangeComponent, descendants: true }, { propertyName: "bmbCheckboxes", predicate: BmbCheckboxComponent, descendants: true }, { propertyName: "bmbRadials", predicate: BmbRadialComponent, descendants: true }, { propertyName: "bmbSwitches", predicate: BmbSwitchComponent, descendants: true }], ngImport: i0, template: `
|
|
112
|
-
<form [formGroup]="formGroup()" (ngSubmit)="onSubmit()">
|
|
113
|
-
<ng-content />
|
|
114
|
-
</form>
|
|
115
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
116
|
-
}
|
|
117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFormValidatorComponent, decorators: [{
|
|
118
|
-
type: Component,
|
|
119
|
-
args: [{
|
|
120
|
-
selector: 'bmb-form-validator',
|
|
121
|
-
standalone: true,
|
|
122
|
-
imports: [CommonModule, ReactiveFormsModule],
|
|
123
|
-
template: `
|
|
124
|
-
<form [formGroup]="formGroup()" (ngSubmit)="onSubmit()">
|
|
125
|
-
<ng-content />
|
|
126
|
-
</form>
|
|
127
|
-
`,
|
|
128
|
-
encapsulation: ViewEncapsulation.None,
|
|
129
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
130
|
-
}]
|
|
131
|
-
}], propDecorators: { bmbInputs: [{
|
|
132
|
-
type: ContentChildren,
|
|
133
|
-
args: [BmbInputComponent, { descendants: true }]
|
|
134
|
-
}], bmbDropdowns: [{
|
|
135
|
-
type: ContentChildren,
|
|
136
|
-
args: [BmbDropdownComponent, { descendants: true }]
|
|
137
|
-
}], bmbInputPhoneNumbers: [{
|
|
138
|
-
type: ContentChildren,
|
|
139
|
-
args: [BmbInputPhoneNumberComponent, { descendants: true }]
|
|
140
|
-
}], bmbInputTags: [{
|
|
141
|
-
type: ContentChildren,
|
|
142
|
-
args: [BmbInputTagsComponent, { descendants: true }]
|
|
143
|
-
}], bmbDatepickers: [{
|
|
144
|
-
type: ContentChildren,
|
|
145
|
-
args: [BmbDatepickerComponent, { descendants: true }]
|
|
146
|
-
}], bmbDateRanges: [{
|
|
147
|
-
type: ContentChildren,
|
|
148
|
-
args: [BmbDateRangeComponent, { descendants: true }]
|
|
149
|
-
}], bmbCheckboxes: [{
|
|
150
|
-
type: ContentChildren,
|
|
151
|
-
args: [BmbCheckboxComponent, { descendants: true }]
|
|
152
|
-
}], bmbRadials: [{
|
|
153
|
-
type: ContentChildren,
|
|
154
|
-
args: [BmbRadialComponent, { descendants: true }]
|
|
155
|
-
}], bmbSwitches: [{
|
|
156
|
-
type: ContentChildren,
|
|
157
|
-
args: [BmbSwitchComponent, { descendants: true }]
|
|
158
|
-
}] } });
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZvcm0tdmFsaWRhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZm9ybS12YWxpZGF0b3IvYm1iLWZvcm0tdmFsaWRhdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsS0FBSyxFQUNMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDMUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQWN4RSxNQUFNLE9BQU8seUJBQXlCO0lBWnRDO1FBYUUsY0FBUyxHQUFHLEtBQUssQ0FBWSxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWhELG1CQUFjLEdBQUcsTUFBTSxFQUFhLENBQUM7S0FrSnRDO0lBN0hDLGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FDYixHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUN2QixLQUFLLENBQUMsWUFBWSxFQUFFLEVBQ3BCLEtBQUssQ0FBQyxrQkFBa0IsQ0FDekIsQ0FBQztZQUNGLElBQUksQ0FBQyxVQUFVLENBQ2IsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFDckIsS0FBSyxDQUFDLFVBQVUsRUFBRSxFQUNsQixLQUFLLENBQUMsZ0JBQWdCLENBQ3ZCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxVQUFVLENBQ1IsV0FBbUIsRUFDbkIsT0FBb0IsRUFDcEIsYUFBc0I7UUFFdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDbkQ7YUFBTTtZQUNMLElBQUksYUFBYTtnQkFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN0RTtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxXQUFXLEdBQWEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQ2xELENBQUMsR0FBYSxFQUFFLGNBQWtDLEVBQUUsRUFBRTtZQUNwRCxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUFFLE9BQU8sR0FBRyxDQUFDO1lBQ3BELE9BQU8sQ0FBQyxHQUFHLEdBQUcsRUFBRSxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6QyxDQUFDLEVBQ0QsRUFBRSxDQUNILENBQUM7UUFFRixXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUU7WUFDbkMsTUFBTSx1QkFBdUIsR0FBYSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FDOUQsQ0FBQyxHQUFhLEVBQUUsY0FBa0MsRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSTtvQkFBRSxPQUFPLENBQUMsR0FBRyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzNELE9BQU8sR0FBRyxDQUFDO1lBQ2IsQ0FBQyxFQUNELEVBQUUsQ0FDSCxDQUFDO1lBRUYsTUFBTSxhQUFhLEdBQXVCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUMzRCx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FDMUIsQ0FBQztZQUVILElBQ0UsSUFBSSxDQUFDLFVBQVU7aUJBQ1osTUFBTSxDQUFDLENBQUMsT0FBMkIsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLElBQUksQ0FBQztpQkFDaEUsS0FBSyxDQUNKLENBQUMsZUFBbUMsRUFBRSxFQUFFLENBQ3RDLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FDakMsRUFDSDtnQkFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxhQUFhLENBQUMsT0FBTyxFQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3ZFLE9BQU87YUFDUjtZQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVO2lCQUMxQixNQUFNLENBQUMsQ0FBQyxPQUEyQixFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxDQUFDO2dCQUNqRSxFQUFFLElBQUksQ0FBQyxDQUFDLGVBQW1DLEVBQUUsRUFBRSxDQUM3QyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQzFCO2dCQUNELEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBTSxDQUFDO1lBRXRCLGFBQWEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3JFLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLEVBQUUsYUFBYSxDQUFDLE9BQU8sRUFBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDdkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUUzQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2IsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQVk7UUFDekIsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBZ0IsQ0FBQztJQUNuRCxDQUFDOytHQXBKVSx5QkFBeUI7bUdBQXpCLHlCQUF5QixxVUFLbkIsaUJBQWlCLGtFQUVqQixvQkFBb0IsMEVBRXBCLDRCQUE0QixrRUFFNUIscUJBQXFCLG9FQUVyQixzQkFBc0IsbUVBRXRCLHFCQUFxQixtRUFFckIsb0JBQW9CLGdFQUVwQixrQkFBa0IsaUVBRWxCLGtCQUFrQixnREE3QnpCOzs7O0dBSVQsMkRBTFMsWUFBWSw4QkFBRSxtQkFBbUI7OzRGQVNoQyx5QkFBeUI7a0JBWnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQztvQkFDNUMsUUFBUSxFQUFFOzs7O0dBSVQ7b0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDs4QkFPQyxTQUFTO3NCQURSLGVBQWU7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUd6RCxZQUFZO3NCQURYLGVBQWU7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUc1RCxvQkFBb0I7c0JBRG5CLGVBQWU7dUJBQUMsNEJBQTRCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUdwRSxZQUFZO3NCQURYLGVBQWU7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUc3RCxjQUFjO3NCQURiLGVBQWU7dUJBQUMsc0JBQXNCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUc5RCxhQUFhO3NCQURaLGVBQWU7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUc3RCxhQUFhO3NCQURaLGVBQWU7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUc1RCxVQUFVO3NCQURULGVBQWU7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUcxRCxXQUFXO3NCQURWLGVBQWU7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBtb2RlbCxcbiAgb3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm1iSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9ibWItaW5wdXQvYm1iLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJJbnB1dFRhZ3NDb21wb25lbnQgfSBmcm9tICcuLi9ibWItaW5wdXQtdGFncy9ibWItaW5wdXQtdGFncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgaGFuZGxlVmFsaWRpdHkgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtQ29udHJvbCc7XG5pbXBvcnQgeyBCbWJEYXRlcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRhdGVwaWNrZXIvYm1iLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkRhdGVSYW5nZUNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kYXRlLXJhbmdlL2JtYi1kYXRlLXJhbmdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kcm9wZG93bi9ibWItZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYklucHV0UGhvbmVOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuLi9ibWItaW5wdXQtcGhvbmUtbnVtYmVyL2JtYi1pbnB1dC1waG9uZS1udW1iZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkNoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWNoZWNrYm94L2JtYi1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iUmFkaWFsQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLXJhZGlhbC9ibWItcmFkaWFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJTd2l0Y2hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItc3dpdGNoL2JtYi1zd2l0Y2guY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWZvcm0tdmFsaWRhdG9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXAoKVwiIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCI+XG4gICAgICA8bmctY29udGVudCAvPlxuICAgIDwvZm9ybT5cbiAgYCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkZvcm1WYWxpZGF0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgZm9ybUdyb3VwID0gbW9kZWw8Rm9ybUdyb3VwPihuZXcgRm9ybUdyb3VwKHt9KSk7XG5cbiAgZm9ybUdyb3VwU3RhdGUgPSBvdXRwdXQ8Rm9ybUdyb3VwPigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iSW5wdXRDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iSW5wdXRzITogUXVlcnlMaXN0PEJtYklucHV0Q29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJEcm9wZG93bkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJEcm9wZG93bnMhOiBRdWVyeUxpc3Q8Qm1iRHJvcGRvd25Db21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYklucHV0UGhvbmVOdW1iZXJDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iSW5wdXRQaG9uZU51bWJlcnMhOiBRdWVyeUxpc3Q8Qm1iSW5wdXRQaG9uZU51bWJlckNvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iSW5wdXRUYWdzQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYklucHV0VGFncyE6IFF1ZXJ5TGlzdDxCbWJJbnB1dFRhZ3NDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYkRhdGVwaWNrZXJDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iRGF0ZXBpY2tlcnMhOiBRdWVyeUxpc3Q8Qm1iRGF0ZXBpY2tlckNvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iRGF0ZVJhbmdlQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYkRhdGVSYW5nZXMhOiBRdWVyeUxpc3Q8Qm1iRGF0ZVJhbmdlQ29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJDaGVja2JveENvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJDaGVja2JveGVzITogUXVlcnlMaXN0PEJtYkNoZWNrYm94Q29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJSYWRpYWxDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iUmFkaWFscyE6IFF1ZXJ5TGlzdDxCbWJSYWRpYWxDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYlN3aXRjaENvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJTd2l0Y2hlcyE6IFF1ZXJ5TGlzdDxCbWJTd2l0Y2hDb21wb25lbnQ+O1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFkZENvbnRyb2xzKCk7XG4gIH1cblxuICBhZGRDb250cm9scygpOiB2b2lkIHtcbiAgICB0aGlzLmJtYklucHV0cy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYkRyb3Bkb3ducy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYklucHV0UGhvbmVOdW1iZXJzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCksIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iSW5wdXRUYWdzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCksIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iRGF0ZXBpY2tlcnMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJEYXRlUmFuZ2VzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woXG4gICAgICAgIGAke2NoaWxkLm5hbWUoKX1fc3RhcnRgLFxuICAgICAgICBjaGlsZC5jb250cm9sU3RhcnQoKSxcbiAgICAgICAgY2hpbGQuaXNDb250cm9sU3RhcnROdWxsLFxuICAgICAgKTtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChcbiAgICAgICAgYCR7Y2hpbGQubmFtZSgpfV9lbmRgLFxuICAgICAgICBjaGlsZC5jb250cm9sRW5kKCksXG4gICAgICAgIGNoaWxkLmlzQ29udHJvbEVuZE51bGwsXG4gICAgICApO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iQ2hlY2tib3hlcy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYlJhZGlhbHMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSEsIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iU3dpdGNoZXMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSEsIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICB9XG5cbiAgYWRkQ29udHJvbChcbiAgICBjb250cm9sTmFtZTogc3RyaW5nLFxuICAgIGNvbnRyb2w6IEZvcm1Db250cm9sLFxuICAgIGlzQ29udHJvbE51bGw6IGJvb2xlYW4sXG4gICk6IHZvaWQge1xuICAgIGlmICghdGhpcy5nZXRGb3JtQ29udHJvbChjb250cm9sTmFtZSkpIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwKCkuYWRkQ29udHJvbChjb250cm9sTmFtZSwgY29udHJvbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChpc0NvbnRyb2xOdWxsKSB0aGlzLmZvcm1Hcm91cCgpLnNldENvbnRyb2woY29udHJvbE5hbWUsIGNvbnRyb2wpO1xuICAgIH1cbiAgfVxuXG4gIGFkZFJhZGlhbHMoKTogdm9pZCB7XG4gICAgY29uc3QgcmFkaWFsTmFtZXM6IHN0cmluZ1tdID0gdGhpcy5ibWJSYWRpYWxzLnJlZHVjZShcbiAgICAgIChhY2M6IHN0cmluZ1tdLCBjdXJyZW50RWxlbWVudDogQm1iUmFkaWFsQ29tcG9uZW50KSA9PiB7XG4gICAgICAgIGlmIChhY2MuaW5jbHVkZXMoY3VycmVudEVsZW1lbnQubmFtZSgpKSkgcmV0dXJuIGFjYztcbiAgICAgICAgcmV0dXJuIFsuLi5hY2MsIGN1cnJlbnRFbGVtZW50Lm5hbWUoKV07XG4gICAgICB9LFxuICAgICAgW10sXG4gICAgKTtcblxuICAgIHJhZGlhbE5hbWVzLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcmFkaWFsSW5kZXhXaXRoU2FtZU5hbWU6IG51bWJlcltdID0gdGhpcy5ibWJSYWRpYWxzLnJlZHVjZShcbiAgICAgICAgKGFjYzogbnVtYmVyW10sIGN1cnJlbnRFbGVtZW50OiBCbWJSYWRpYWxDb21wb25lbnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgaWYgKGN1cnJlbnRFbGVtZW50Lm5hbWUoKSA9PT0gbmFtZSkgcmV0dXJuIFsuLi5hY2MsIGluZGV4XTtcbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LFxuICAgICAgICBbXSxcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IHJhZGlhbENvbnRyb2w6IEJtYlJhZGlhbENvbXBvbmVudCA9IHRoaXMuYm1iUmFkaWFscy5nZXQoXG4gICAgICAgIHJhZGlhbEluZGV4V2l0aFNhbWVOYW1lWzBdLFxuICAgICAgKSE7XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5ibWJSYWRpYWxzXG4gICAgICAgICAgLmZpbHRlcigoZWxlbWVudDogQm1iUmFkaWFsQ29tcG9uZW50KSA9PiBlbGVtZW50Lm5hbWUoKSA9PT0gbmFtZSlcbiAgICAgICAgICAuZXZlcnkoXG4gICAgICAgICAgICAoZWxlbWVudFNlbGVjdGVkOiBCbWJSYWRpYWxDb21wb25lbnQpID0+XG4gICAgICAgICAgICAgICFlbGVtZW50U2VsZWN0ZWQuaXNDb250cm9sTnVsbCxcbiAgICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5hZGRDb250cm9sKHJhZGlhbENvbnRyb2wubmFtZSgpLCByYWRpYWxDb250cm9sLmNvbnRyb2woKSEsIGZhbHNlKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuYm1iUmFkaWFsc1xuICAgICAgICAuZmlsdGVyKChlbGVtZW50OiBCbWJSYWRpYWxDb21wb25lbnQpID0+IGVsZW1lbnQubmFtZSgpID09PSBuYW1lKVxuICAgICAgICA/LmZpbmQoKGVsZW1lbnRTZWxlY3RlZDogQm1iUmFkaWFsQ29tcG9uZW50KSA9PlxuICAgICAgICAgIGVsZW1lbnRTZWxlY3RlZC5jaGVja2VkKCksXG4gICAgICAgIClcbiAgICAgICAgPy5jb250cm9sKCk/LnZhbHVlITtcblxuICAgICAgcmFkaWFsQ29udHJvbC5jb250cm9sKCk/LnNldFZhbHVlKHZhbHVlKTtcbiAgICAgIHJhZGlhbEluZGV4V2l0aFNhbWVOYW1lLnNsaWNlKDEpLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgdGhpcy5ibWJSYWRpYWxzLmdldChlbGVtZW50KT8uY29udHJvbC5zZXQocmFkaWFsQ29udHJvbC5jb250cm9sKCkpO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuYWRkQ29udHJvbChyYWRpYWxDb250cm9sLm5hbWUoKSwgcmFkaWFsQ29udHJvbC5jb250cm9sKCkhLCBmYWxzZSk7XG4gICAgfSk7XG4gIH1cblxuICBvblN1Ym1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1Hcm91cCgpLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICB0aGlzLmZvcm1Hcm91cCgpLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICB0aGlzLnVwZGF0ZUVycm9yU3RhdGUoKTtcbiAgICB0aGlzLmZvcm1Hcm91cFN0YXRlLmVtaXQodGhpcy5mb3JtR3JvdXAoKSk7XG4gIH1cblxuICB1cGRhdGVFcnJvclN0YXRlKCkge1xuICAgIE9iamVjdC5rZXlzKHRoaXMuZm9ybUdyb3VwKCkuY29udHJvbHMpLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgICBjb25zdCBjb250cm9sID0gdGhpcy5nZXRGb3JtQ29udHJvbChmaWVsZCk7XG5cbiAgICAgIGlmICghIWNvbnRyb2wpIHtcbiAgICAgICAgaGFuZGxlVmFsaWRpdHkoY29udHJvbCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXRGb3JtQ29udHJvbChuYW1lOiBzdHJpbmcpOiBGb3JtQ29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwKCkuZ2V0KG5hbWUpIGFzIEZvcm1Db250cm9sO1xuICB9XG59XG4iXX0=
|