@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1117 → 1.5.1119
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 +538 -538
- 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 -150
- 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 -196
- 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 -262
- 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-event-list/bmb-calendar-template-event-list.component.mjs +0 -63
- 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 -154
- 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 -175
- 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 -83
- 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 -211
- package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +0 -123
- 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 -54
- package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +0 -200
- package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +0 -28
- 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 -78
- 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 -154
- 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-validation/bmb-form-validation.component.mjs +0 -159
- 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 -181
- 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 -77
- 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 -49
- 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 -147
- package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.component.mjs +0 -162
- package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.service.mjs +0 -116
- 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 -87
- 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 -84
- 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-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 -52
- 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 -117
- package/esm2022/lib/components/bmb-select/bmb-select-item/bmb-select-item.component.mjs +0 -16
- package/esm2022/lib/components/bmb-select/bmb-select.component.mjs +0 -55
- 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 -103
- 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 -53
- 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 -545
- package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +0 -2
- package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +0 -127
- 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 -238
- 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 -70
- package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +0 -122
- package/esm2022/lib/components/bmb-top-bar/types.mjs +0 -2
- package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +0 -138
- 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 -51
- 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 -55
- 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 -69
- package/esm2022/lib/services/notification.service.mjs +0 -77
- 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 -66
- package/esm2022/public-api.mjs +0 -151
- package/esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +0 -5
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
import { Component, input, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, output, effect, } 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 { BmbModalComponent } from '../bmb-modal/bmb-modal.component';
|
|
9
|
-
import { BmbInputComponent } from '../bmb-input/bmb-input.component';
|
|
10
|
-
import { BmbButtonDirective } from '../../directives/bmb-button/button.directive';
|
|
11
|
-
import { BmbDropdownComponent } from '../bmb-dropdown/bmb-dropdown.component';
|
|
12
|
-
import { BmbTagComponent } from '../bmb-tags/bmb-tags.component';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@angular/material/dialog";
|
|
15
|
-
import * as i2 from "@angular/common";
|
|
16
|
-
import * as i3 from "@angular/forms";
|
|
17
|
-
export class BmbFilterCardComponent {
|
|
18
|
-
constructor(matDialog) {
|
|
19
|
-
this.matDialog = matDialog;
|
|
20
|
-
this.modalTitle = input('');
|
|
21
|
-
this.primaryBtnLabel = input('');
|
|
22
|
-
this.secondaryBtnLabel = input('');
|
|
23
|
-
this.icon = input('');
|
|
24
|
-
this.placeholderSearch = input('');
|
|
25
|
-
this.controlTypes = input([]);
|
|
26
|
-
this.storedValues = {};
|
|
27
|
-
this.inLine = input(false);
|
|
28
|
-
this.showDropdown = input(false);
|
|
29
|
-
this.dropdownOptions = input([]);
|
|
30
|
-
this.applyFilters = output();
|
|
31
|
-
this.resetFilters = output();
|
|
32
|
-
this.filterForm = new FormGroup({
|
|
33
|
-
search: new FormControl(''),
|
|
34
|
-
selectedDropdown: new FormControl(''),
|
|
35
|
-
});
|
|
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
|
-
primaryBtnLabel: this.primaryBtnLabel(),
|
|
60
|
-
secondaryBtnLabel: this.secondaryBtnLabel(),
|
|
61
|
-
content: this.modalTemplate,
|
|
62
|
-
primaryAction: this.onSubmit.bind(this),
|
|
63
|
-
secondaryAction: this.onReset.bind(this),
|
|
64
|
-
scrollable: true,
|
|
65
|
-
};
|
|
66
|
-
this.matDialog.open(BmbModalComponent, { data });
|
|
67
|
-
}
|
|
68
|
-
onControlChange(control, event) {
|
|
69
|
-
const formControl = this.filterForm.get(control.name);
|
|
70
|
-
if (formControl) {
|
|
71
|
-
switch (control.type) {
|
|
72
|
-
case 'switch':
|
|
73
|
-
formControl.setValue(event);
|
|
74
|
-
const switchValue = {
|
|
75
|
-
name: control.name,
|
|
76
|
-
label: control.rightText,
|
|
77
|
-
checked: event,
|
|
78
|
-
type: control.type,
|
|
79
|
-
};
|
|
80
|
-
this.storedValues[control.name] = switchValue;
|
|
81
|
-
break;
|
|
82
|
-
case 'checkbox':
|
|
83
|
-
formControl.setValue(event.target.checked);
|
|
84
|
-
const checkboxValue = {
|
|
85
|
-
name: control.name,
|
|
86
|
-
label: control.label,
|
|
87
|
-
checked: event.target.checked,
|
|
88
|
-
type: control.type,
|
|
89
|
-
};
|
|
90
|
-
this.storedValues[control.name] = checkboxValue;
|
|
91
|
-
break;
|
|
92
|
-
case 'radial':
|
|
93
|
-
formControl.setValue(control.label);
|
|
94
|
-
const radialValue = {
|
|
95
|
-
label: control.label,
|
|
96
|
-
checked: event.checked,
|
|
97
|
-
name: control.name,
|
|
98
|
-
type: control.type,
|
|
99
|
-
};
|
|
100
|
-
this.storedValues[control.name] = radialValue;
|
|
101
|
-
break;
|
|
102
|
-
default: //for the tag option or any other option that does not have an activated control
|
|
103
|
-
formControl.setValue(control.label);
|
|
104
|
-
const elementValue = {
|
|
105
|
-
label: control.label,
|
|
106
|
-
checked: !this.storedValues[control.name]?.checked,
|
|
107
|
-
name: control,
|
|
108
|
-
type: control.type,
|
|
109
|
-
};
|
|
110
|
-
this.storedValues[control.name] = elementValue;
|
|
111
|
-
break;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
onSubmit() {
|
|
116
|
-
const formData = {};
|
|
117
|
-
Object.keys(this.storedValues).forEach((key) => {
|
|
118
|
-
formData[key] = this.storedValues[key];
|
|
119
|
-
});
|
|
120
|
-
formData.search = this.filterForm.get('search')?.value;
|
|
121
|
-
this.applyFilters.emit(formData);
|
|
122
|
-
}
|
|
123
|
-
onReset() {
|
|
124
|
-
this.filterForm.reset();
|
|
125
|
-
this.resetFilters.emit();
|
|
126
|
-
}
|
|
127
|
-
getFormControl(search) {
|
|
128
|
-
return this.filterForm.get(search);
|
|
129
|
-
}
|
|
130
|
-
onValueChange(event) {
|
|
131
|
-
this.filterForm.get('search')?.setValue(event);
|
|
132
|
-
}
|
|
133
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFilterCardComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
134
|
-
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\">\r\n <ng-template #modalTemplate>\r\n <div class=\"bmb_filter_card-modal\">\r\n <form [formGroup]=\"filterForm\">\r\n @if (showDropdown()) {\r\n <bmb-dropdown\r\n [placeholder]=\"placeholderSearch()\"\r\n [options]=\"dropdownOptions()\"\r\n [control]=\"getFormControl('search')\"\r\n (onValueChange)=\"onValueChange($event)\"\r\n [isFilterable]=\"true\"\r\n />\r\n } @else {\r\n <bmb-input\r\n [placeholder]=\"placeholderSearch()\"\r\n [icon]=\"'search'\"\r\n [appearance]=\"'normal'\"\r\n [control]=\"getFormControl('search')\"\r\n [isClearable]=\"true\"\r\n />\r\n }\r\n @for (controlType of controlTypes(); track $index) {\r\n <h4 class=\"bmb_filter_card-title\">{{ controlType.title }}</h4>\r\n <div class=\"bmb_filter_card-control\">\r\n @for (control of controlType.control; track $index) {\r\n @switch (control.type) {\r\n @case (\"tag\") {\r\n <bmb-tag\r\n [text]=\"control.label\"\r\n [dismissible]=\"false\"\r\n [isActive]=\"storedValues[control.name]?.checked ?? false\"\r\n (clickedTag)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n @case (\"radial\") {\r\n <bmb-radial\r\n [name]=\"control.name\"\r\n [checked]=\"\r\n filterForm.get(control.name)?.value === control.label\r\n \"\r\n [label]=\"control.label\"\r\n (change)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n @case (\"checkbox\") {\r\n <bmb-checkbox\r\n [name]=\"control.name\"\r\n [checked]=\"filterForm.get(control.name)?.value\"\r\n [label]=\"control.label\"\r\n (change)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n @case (\"switch\") {\r\n <bmb-switch\r\n [rightText]=\"control.rightText ?? ''\"\r\n [isChecked]=\"filterForm.get(control.name)?.value === true\"\r\n (change)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n }\r\n }\r\n </div>\r\n }\r\n @if (inLine()) {\r\n <footer class=\"bmb_filter_card-footer\">\r\n <button bmbButton appearance=\"secondary-outlined\" type=\"reset\">\r\n {{ secondaryBtnLabel() }}\r\n </button>\r\n <button bmbButton (click)=\"onSubmit()\" type=\"submit\">\r\n {{ primaryBtnLabel() }}\r\n </button>\r\n </footer>\r\n }\r\n </form>\r\n </div>\r\n </ng-template>\r\n\r\n @if (inLine()) {\r\n <ng-container [ngTemplateOutlet]=\"modalTemplate\" />\r\n } @else {\r\n <button\r\n type=\"button\"\r\n class=\"bmb_filter_card-button\"\r\n (click)=\"openModalComponent()\"\r\n type=\"button\"\r\n >\r\n <bmb-icon [icon]=\"icon()\" alt=\"Filter icon\" />\r\n </button>\r\n }\r\n</div>\r\n", styles: ["@font-face{font-family:Poppins-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_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"], outputs: ["controlChange", "onValueChange", "onFocus"] }, { 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 }); }
|
|
135
|
-
}
|
|
136
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbFilterCardComponent, decorators: [{
|
|
137
|
-
type: Component,
|
|
138
|
-
args: [{ selector: 'bmb-filter-card', standalone: true, imports: [
|
|
139
|
-
CommonModule,
|
|
140
|
-
ReactiveFormsModule,
|
|
141
|
-
BmbIconComponent,
|
|
142
|
-
BmbInputComponent,
|
|
143
|
-
BmbSwitchComponent,
|
|
144
|
-
BmbRadialComponent,
|
|
145
|
-
BmbCheckboxComponent,
|
|
146
|
-
BmbDropdownComponent,
|
|
147
|
-
BmbButtonDirective,
|
|
148
|
-
BmbTagComponent,
|
|
149
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bmb_filter_card\">\r\n <ng-template #modalTemplate>\r\n <div class=\"bmb_filter_card-modal\">\r\n <form [formGroup]=\"filterForm\">\r\n @if (showDropdown()) {\r\n <bmb-dropdown\r\n [placeholder]=\"placeholderSearch()\"\r\n [options]=\"dropdownOptions()\"\r\n [control]=\"getFormControl('search')\"\r\n (onValueChange)=\"onValueChange($event)\"\r\n [isFilterable]=\"true\"\r\n />\r\n } @else {\r\n <bmb-input\r\n [placeholder]=\"placeholderSearch()\"\r\n [icon]=\"'search'\"\r\n [appearance]=\"'normal'\"\r\n [control]=\"getFormControl('search')\"\r\n [isClearable]=\"true\"\r\n />\r\n }\r\n @for (controlType of controlTypes(); track $index) {\r\n <h4 class=\"bmb_filter_card-title\">{{ controlType.title }}</h4>\r\n <div class=\"bmb_filter_card-control\">\r\n @for (control of controlType.control; track $index) {\r\n @switch (control.type) {\r\n @case (\"tag\") {\r\n <bmb-tag\r\n [text]=\"control.label\"\r\n [dismissible]=\"false\"\r\n [isActive]=\"storedValues[control.name]?.checked ?? false\"\r\n (clickedTag)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n @case (\"radial\") {\r\n <bmb-radial\r\n [name]=\"control.name\"\r\n [checked]=\"\r\n filterForm.get(control.name)?.value === control.label\r\n \"\r\n [label]=\"control.label\"\r\n (change)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n @case (\"checkbox\") {\r\n <bmb-checkbox\r\n [name]=\"control.name\"\r\n [checked]=\"filterForm.get(control.name)?.value\"\r\n [label]=\"control.label\"\r\n (change)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n @case (\"switch\") {\r\n <bmb-switch\r\n [rightText]=\"control.rightText ?? ''\"\r\n [isChecked]=\"filterForm.get(control.name)?.value === true\"\r\n (change)=\"onControlChange(control, $event)\"\r\n />\r\n }\r\n }\r\n }\r\n </div>\r\n }\r\n @if (inLine()) {\r\n <footer class=\"bmb_filter_card-footer\">\r\n <button bmbButton appearance=\"secondary-outlined\" type=\"reset\">\r\n {{ secondaryBtnLabel() }}\r\n </button>\r\n <button bmbButton (click)=\"onSubmit()\" type=\"submit\">\r\n {{ primaryBtnLabel() }}\r\n </button>\r\n </footer>\r\n }\r\n </form>\r\n </div>\r\n </ng-template>\r\n\r\n @if (inLine()) {\r\n <ng-container [ngTemplateOutlet]=\"modalTemplate\" />\r\n } @else {\r\n <button\r\n type=\"button\"\r\n class=\"bmb_filter_card-button\"\r\n (click)=\"openModalComponent()\"\r\n type=\"button\"\r\n >\r\n <bmb-icon [icon]=\"icon()\" alt=\"Filter icon\" />\r\n </button>\r\n }\r\n</div>\r\n", styles: ["@font-face{font-family:Poppins-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_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"] }]
|
|
150
|
-
}], ctorParameters: () => [{ type: i1.MatDialog }], propDecorators: { modalTemplate: [{
|
|
151
|
-
type: ViewChild,
|
|
152
|
-
args: ['modalTemplate']
|
|
153
|
-
}] } });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZmlsdGVyLWNhcmQvYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZmlsdGVyLWNhcmQvYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFFakIsU0FBUyxFQUNULE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFB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QVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFjO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFnQixDQUFDO0lBQ3BELENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQzsrR0FwSVUsc0JBQXNCO21HQUF0QixzQkFBc0IscWdEQzlDbkMsMjNHQTBGQSx1dk9EMURJLFlBQVkscU1BQ1osbUJBQW1CLHFiQUNuQixnQkFBZ0IsOEpBQ2hCLGlCQUFpQix3aUJBQ2pCLGtCQUFrQix1UUFDbEIsa0JBQWtCLGtXQUNsQixvQkFBb0Isb2FBQ3BCLG9CQUFvQixzWEFDcEIsa0JBQWtCLDRNQUNsQixlQUFlOzs0RkFLTixzQkFBc0I7a0JBcEJsQyxTQUFTOytCQUNFLGlCQUFpQixjQUdmLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsa0JBQWtCO3dCQUNsQixlQUFlO3FCQUNoQixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzhFQXNCbkIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgT25Jbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIG91dHB1dCxcbiAgZWZmZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJTd2l0Y2hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItc3dpdGNoL2JtYi1zd2l0Y2guY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlJhZGlhbENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1yYWRpYWwvYm1iLXJhZGlhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItY2hlY2tib3gvYm1iLWNoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJNb2RhbENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1tb2RhbC9ibWItbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNb2RhbERhdGFDb25maWcgfSBmcm9tICcuLi9ibWItbW9kYWwvYm1iLW1vZGFsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCbWJJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pbnB1dC9ibWItaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IElCbWJDb250cm9sVHlwZSB9IGZyb20gJy4vYm1iLWZpbHRlci1jYXJkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCbWJCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1idXR0b24vYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCbWJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kcm9wZG93bi9ibWItZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlRhZ0NvbXBvbmVudCB9IGZyb20gJy4uL2JtYi10YWdzL2JtYi10YWdzLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1maWx0ZXItY2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItZmlsdGVyLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYm1iLWZpbHRlci1jYXJkLmNvbXBvbmVudC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEJtYkljb25Db21wb25lbnQsXG4gICAgQm1iSW5wdXRDb21wb25lbnQsXG4gICAgQm1iU3dpdGNoQ29tcG9uZW50LFxuICAgIEJtYlJhZGlhbENvbXBvbmVudCxcbiAgICBCbWJDaGVja2JveENvbXBvbmVudCxcbiAgICBCbWJEcm9wZG93bkNvbXBvbmVudCxcbiAgICBCbWJCdXR0b25EaXJlY3RpdmUsXG4gICAgQm1iVGFnQ29tcG9uZW50LFxuICBdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iRmlsdGVyQ2FyZENvbXBvbmVudCB7XG4gIG1vZGFsVGl0bGUgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgcHJpbWFyeUJ0bkxhYmVsID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHNlY29uZGFyeUJ0bkxhYmVsID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGljb24gPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgcGxhY2Vob2xkZXJTZWFyY2ggPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgY29udHJvbFR5cGVzID0gaW5wdXQ8SUJtYkNvbnRyb2xUeXBlW10+KFtdKTtcbiAgc3RvcmVkVmFsdWVzOiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICBpbkxpbmUgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIHNob3dEcm9wZG93biA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgZHJvcGRvd25PcHRpb25zID0gaW5wdXQ8c3RyaW5nW10+KFtdKTtcblxuICBhcHBseUZpbHRlcnMgPSBvdXRwdXQ8dm9pZD4oKTtcbiAgcmVzZXRGaWx0ZXJzID0gb3V0cHV0PHZvaWQ+KCk7XG5cbiAgZmlsdGVyRm9ybTogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgc2VhcmNoOiBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nPignJyksXG4gICAgc2VsZWN0ZWREcm9wZG93bjogbmV3IEZvcm1Db250cm9sPHN0cmluZz4oJycpLFxuICB9KTtcblxuICBAVmlld0NoaWxkKCdtb2RhbFRlbXBsYXRlJykgbW9kYWxUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtYXREaWFsb2c6IE1hdERpYWxvZykge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLmNvbnRyb2xUeXBlcygpLmZvckVhY2goKGNvbnRyb2xUeXBlKSA9PiB7XG4gICAgICAgIGNvbnRyb2xUeXBlLmNvbnRyb2wuZm9yRWFjaCgoY29udHJvbCkgPT4ge1xuICAgICAgICAgIGlmIChjb250cm9sLnR5cGUgPT09ICdyYWRpYWwnKSB7XG4gICAgICAgICAgICBjb25zdCBjb250cm9sTmFtZSA9IHRoaXMuZmlsdGVyRm9ybS5nZXQoY29udHJvbC5uYW1lKTtcbiAgICAgICAgICAgIGlmIChjb250cm9sTmFtZSkge1xuICAgICAgICAgICAgICBjb250cm9sTmFtZS5zZXRWYWx1ZShcbiAgICAgICAgICAgICAgICBjb250cm9sLmNoZWNrZWQgPyBjb250cm9sLmxhYmVsIDogY29udHJvbE5hbWUudmFsdWUsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmZpbHRlckZvcm0uYWRkQ29udHJvbChcbiAgICAgICAgICAgICAgICBjb250cm9sLm5hbWUsXG4gICAgICAgICAgICAgICAgbmV3IEZvcm1Db250cm9sPHN0cmluZz4oY29udHJvbC5jaGVja2VkID8gY29udHJvbC5sYWJlbCA6ICcnKSxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJGb3JtLmFkZENvbnRyb2woXG4gICAgICAgICAgICAgIGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgbmV3IEZvcm1Db250cm9sPGJvb2xlYW4+KGNvbnRyb2wuY2hlY2tlZCksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG9wZW5Nb2RhbENvbXBvbmVudCgpIHtcbiAgICBjb25zdCBkYXRhOiBNb2RhbERhdGFDb25maWcgPSB7XG4gICAgICB0aXRsZTogdGhpcy5tb2RhbFRpdGxlKCksXG4gICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgcHJpbWFyeUJ0bkxhYmVsOiB0aGlzLnByaW1hcnlCdG5MYWJlbCgpLFxuICAgICAgc2Vjb25kYXJ5QnRuTGFiZWw6IHRoaXMuc2Vjb25kYXJ5QnRuTGFiZWwoKSxcbiAgICAgIGNvbnRlbnQ6IHRoaXMubW9kYWxUZW1wbGF0ZSxcbiAgICAgIHByaW1hcnlBY3Rpb246IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcbiAgICAgIHNlY29uZGFyeUFjdGlvbjogdGhpcy5vblJlc2V0LmJpbmQodGhpcyksXG4gICAgICBzY3JvbGxhYmxlOiB0cnVlLFxuICAgIH07XG5cbiAgICB0aGlzLm1hdERpYWxvZy5vcGVuKEJtYk1vZGFsQ29tcG9uZW50LCB7IGRhdGEgfSk7XG4gIH1cblxuICBvbkNvbnRyb2xDaGFuZ2UoY29udHJvbDogYW55LCBldmVudDogYW55KSB7XG4gICAgY29uc3QgZm9ybUNvbnRyb2wgPSB0aGlzLmZpbHRlckZvcm0uZ2V0KGNvbnRyb2wubmFtZSk7XG4gICAgaWYgKGZvcm1Db250cm9sKSB7XG4gICAgICBzd2l0Y2ggKGNvbnRyb2wudHlwZSkge1xuICAgICAgICBjYXNlICdzd2l0Y2gnOlxuICAgICAgICAgIGZvcm1Db250cm9sLnNldFZhbHVlKGV2ZW50KTtcbiAgICAgICAgICBjb25zdCBzd2l0Y2hWYWx1ZSA9IHtcbiAgICAgICAgICAgIG5hbWU6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgIGxhYmVsOiBjb250cm9sLnJpZ2h0VGV4dCxcbiAgICAgICAgICAgIGNoZWNrZWQ6IGV2ZW50LFxuICAgICAgICAgICAgdHlwZTogY29udHJvbC50eXBlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgdGhpcy5zdG9yZWRWYWx1ZXNbY29udHJvbC5uYW1lXSA9IHN3aXRjaFZhbHVlO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdjaGVja2JveCc6XG4gICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LmNoZWNrZWQpO1xuICAgICAgICAgIGNvbnN0IGNoZWNrYm94VmFsdWUgPSB7XG4gICAgICAgICAgICBuYW1lOiBjb250cm9sLm5hbWUsXG4gICAgICAgICAgICBsYWJlbDogY29udHJvbC5sYWJlbCxcbiAgICAgICAgICAgIGNoZWNrZWQ6IGV2ZW50LnRhcmdldC5jaGVja2VkLFxuICAgICAgICAgICAgdHlwZTogY29udHJvbC50eXBlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgdGhpcy5zdG9yZWRWYWx1ZXNbY29udHJvbC5uYW1lXSA9IGNoZWNrYm94VmFsdWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3JhZGlhbCc6XG4gICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUoY29udHJvbC5sYWJlbCk7XG4gICAgICAgICAgY29uc3QgcmFkaWFsVmFsdWUgPSB7XG4gICAgICAgICAgICBsYWJlbDogY29udHJvbC5sYWJlbCxcbiAgICAgICAgICAgIGNoZWNrZWQ6IGV2ZW50LmNoZWNrZWQsXG4gICAgICAgICAgICBuYW1lOiBjb250cm9sLm5hbWUsXG4gICAgICAgICAgICB0eXBlOiBjb250cm9sLnR5cGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdID0gcmFkaWFsVmFsdWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6IC8vZm9yIHRoZSB0YWcgb3B0aW9uIG9yIGFueSBvdGhlciBvcHRpb24gdGhhdCBkb2VzIG5vdCBoYXZlIGFuIGFjdGl2YXRlZCBjb250cm9sXG4gICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUoY29udHJvbC5sYWJlbCk7XG4gICAgICAgICAgY29uc3QgZWxlbWVudFZhbHVlID0ge1xuICAgICAgICAgICAgbGFiZWw6IGNvbnRyb2wubGFiZWwsXG4gICAgICAgICAgICBjaGVja2VkOiAhdGhpcy5zdG9yZWRWYWx1ZXNbY29udHJvbC5uYW1lXT8uY2hlY2tlZCxcbiAgICAgICAgICAgIG5hbWU6IGNvbnRyb2wsXG4gICAgICAgICAgICB0eXBlOiBjb250cm9sLnR5cGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdID0gZWxlbWVudFZhbHVlO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uU3VibWl0KCkge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBhbnkgPSB7fTtcbiAgICBPYmplY3Qua2V5cyh0aGlzLnN0b3JlZFZhbHVlcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBmb3JtRGF0YVtrZXldID0gdGhpcy5zdG9yZWRWYWx1ZXNba2V5XTtcbiAgICB9KTtcbiAgICBmb3JtRGF0YS5zZWFyY2ggPSB0aGlzLmZpbHRlckZvcm0uZ2V0KCdzZWFyY2gnKT8udmFsdWU7XG4gICAgdGhpcy5hcHBseUZpbHRlcnMuZW1pdChmb3JtRGF0YSk7XG4gIH1cblxuICBvblJlc2V0KCkge1xuICAgIHRoaXMuZmlsdGVyRm9ybS5yZXNldCgpO1xuICAgIHRoaXMucmVzZXRGaWx0ZXJzLmVtaXQoKTtcbiAgfVxuXG4gIGdldEZvcm1Db250cm9sKHNlYXJjaDogc3RyaW5nKTogRm9ybUNvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckZvcm0uZ2V0KHNlYXJjaCkgYXMgRm9ybUNvbnRyb2w7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLmZpbHRlckZvcm0uZ2V0KCdzZWFyY2gnKT8uc2V0VmFsdWUoZXZlbnQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkXCI+XHJcbiAgPG5nLXRlbXBsYXRlICNtb2RhbFRlbXBsYXRlPlxyXG4gICAgPGRpdiBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZC1tb2RhbFwiPlxyXG4gICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZpbHRlckZvcm1cIj5cclxuICAgICAgICBAaWYgKHNob3dEcm9wZG93bigpKSB7XHJcbiAgICAgICAgICA8Ym1iLWRyb3Bkb3duXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclNlYXJjaCgpXCJcclxuICAgICAgICAgICAgW29wdGlvbnNdPVwiZHJvcGRvd25PcHRpb25zKClcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJnZXRGb3JtQ29udHJvbCgnc2VhcmNoJylcIlxyXG4gICAgICAgICAgICAob25WYWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICBbaXNGaWx0ZXJhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgIDxibWItaW5wdXRcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyU2VhcmNoKClcIlxyXG4gICAgICAgICAgICBbaWNvbl09XCInc2VhcmNoJ1wiXHJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cIidub3JtYWwnXCJcclxuICAgICAgICAgICAgW2NvbnRyb2xdPVwiZ2V0Rm9ybUNvbnRyb2woJ3NlYXJjaCcpXCJcclxuICAgICAgICAgICAgW2lzQ2xlYXJhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICB9XHJcbiAgICAgICAgQGZvciAoY29udHJvbFR5cGUgb2YgY29udHJvbFR5cGVzKCk7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgPGg0IGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkLXRpdGxlXCI+e3sgY29udHJvbFR5cGUudGl0bGUgfX08L2g0PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZC1jb250cm9sXCI+XHJcbiAgICAgICAgICAgIEBmb3IgKGNvbnRyb2wgb2YgY29udHJvbFR5cGUuY29udHJvbDsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICAgICAgQHN3aXRjaCAoY29udHJvbC50eXBlKSB7XHJcbiAgICAgICAgICAgICAgICBAY2FzZSAoXCJ0YWdcIikge1xyXG4gICAgICAgICAgICAgICAgICA8Ym1iLXRhZ1xyXG4gICAgICAgICAgICAgICAgICAgIFt0ZXh0XT1cImNvbnRyb2wubGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNtaXNzaWJsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2lzQWN0aXZlXT1cInN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdPy5jaGVja2VkID8/IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2tlZFRhZyk9XCJvbkNvbnRyb2xDaGFuZ2UoY29udHJvbCwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAY2FzZSAoXCJyYWRpYWxcIikge1xyXG4gICAgICAgICAgICAgICAgICA8Ym1iLXJhZGlhbFxyXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImNvbnRyb2wubmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJGb3JtLmdldChjb250cm9sLm5hbWUpPy52YWx1ZSA9PT0gY29udHJvbC5sYWJlbFxyXG4gICAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImNvbnRyb2wubGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25Db250cm9sQ2hhbmdlKGNvbnRyb2wsICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGNhc2UgKFwiY2hlY2tib3hcIikge1xyXG4gICAgICAgICAgICAgICAgICA8Ym1iLWNoZWNrYm94XHJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29udHJvbC5uYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJmaWx0ZXJGb3JtLmdldChjb250cm9sLm5hbWUpPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImNvbnRyb2wubGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25Db250cm9sQ2hhbmdlKGNvbnRyb2wsICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGNhc2UgKFwic3dpdGNoXCIpIHtcclxuICAgICAgICAgICAgICAgICAgPGJtYi1zd2l0Y2hcclxuICAgICAgICAgICAgICAgICAgICBbcmlnaHRUZXh0XT1cImNvbnRyb2wucmlnaHRUZXh0ID8/ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNDaGVja2VkXT1cImZpbHRlckZvcm0uZ2V0KGNvbnRyb2wubmFtZSk/LnZhbHVlID09PSB0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uQ29udHJvbENoYW5nZShjb250cm9sLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIH1cclxuICAgICAgICBAaWYgKGluTGluZSgpKSB7XHJcbiAgICAgICAgICA8Zm9vdGVyIGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkLWZvb3RlclwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGJtYkJ1dHRvbiBhcHBlYXJhbmNlPVwic2Vjb25kYXJ5LW91dGxpbmVkXCIgdHlwZT1cInJlc2V0XCI+XHJcbiAgICAgICAgICAgICAge3sgc2Vjb25kYXJ5QnRuTGFiZWwoKSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBibWJCdXR0b24gKGNsaWNrKT1cIm9uU3VibWl0KClcIiB0eXBlPVwic3VibWl0XCI+XHJcbiAgICAgICAgICAgICAge3sgcHJpbWFyeUJ0bkxhYmVsKCkgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L2Zvb3Rlcj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZm9ybT5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIEBpZiAoaW5MaW5lKCkpIHtcclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibW9kYWxUZW1wbGF0ZVwiIC8+XHJcbiAgfSBAZWxzZSB7XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICBjbGFzcz1cImJtYl9maWx0ZXJfY2FyZC1idXR0b25cIlxyXG4gICAgICAoY2xpY2spPVwib3Blbk1vZGFsQ29tcG9uZW50KClcIlxyXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgID5cclxuICAgICAgPGJtYi1pY29uIFtpY29uXT1cImljb24oKVwiIGFsdD1cIkZpbHRlciBpY29uXCIgLz5cclxuICAgIDwvYnV0dG9uPlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZpbHRlci1jYXJkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZmlsdGVyLWNhcmQvYm1iLWZpbHRlci1jYXJkLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJQm1iQ29udHJvbFR5cGUge1xuICB0aXRsZTogc3RyaW5nO1xuICBjb250cm9sOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHR5cGU6ICdyYWRpYWwnIHwgJ2NoZWNrYm94JyB8ICdzd2l0Y2gnIHwgJ3RhZyc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBjaGVja2VkOiBib29sZWFuO1xuICAgIHJpZ2h0VGV4dD86IHN0cmluZztcbiAgfVtdO1xufVxuIl19
|
|
@@ -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-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_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-Thin;font-style:normal;font-weight:100;src:url(/assets/fonts/Poppins/Poppins-Thin.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Medium;font-style:normal;font-weight:500;src:url(/assets/fonts/Poppins/Poppins-Medium.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Semibold;font-style:normal;font-weight:600;src:url(/assets/fonts/Poppins/Poppins-SemiBold.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZvY3VzLWVsZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1mb2N1cy1lbGVtZW50L2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItZm9jdXMtZWxlbWVudC9ibWItZm9jdXMtZWxlbWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBV2xFLE1BQU0sT0FBTyx3QkFBd0I7SUFUckM7UUFVRSxTQUFJLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLFdBQU0sR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsVUFBSyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxQixhQUFRLEdBQUcsS0FBSyxFQUFXLENBQUM7UUFDNUIsaUJBQVksR0FBRyxLQUFLLEVBQVcsQ0FBQztRQUNoQyxrQkFBYSxHQUFHLEtBQUssRUFBVyxDQUFDO1FBRWpDLGNBQVMsR0FBVyxtQkFBbUIsQ0FBQztLQWV6QztJQWJDLGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFBRSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsZUFBZSxDQUFDO1FBQ2xFLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxZQUFZLENBQUM7SUFDdkMsQ0FBQztJQUVELGNBQWM7UUFDWixNQUFNLFVBQVUsR0FBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDekQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLGNBQWMsQ0FBQyxDQUFDO1FBQzFELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixPQUFPLENBQUMsR0FBRyxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVELE9BQU8sQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLGlCQUFpQixDQUFDLENBQUM7SUFDN0QsQ0FBQzsrR0F0QlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsKzFCQ2xCckMscXVCQTJCQSw4Z1BEYlksWUFBWSw2SEFBRSxnQkFBZ0I7OzRGQUk3Qix3QkFBd0I7a0JBVHBDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBR2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxtQkFDeEIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBpbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1mb2N1cy1lbGVtZW50JyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQm1iSWNvbkNvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJGb2N1c0VsZW1lbnRDb21wb25lbnQge1xuICBpY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIG51bWJlciA9IGlucHV0PG51bWJlcj4oMCk7XG4gIHRpdGxlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGlzTm9ybWFsID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgaXNOb25Gb2N1c2VkID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgaXNJbmhlcml0ZWRCZyA9IGlucHV0PGJvb2xlYW4+KCk7XG5cbiAgYmFzZUNsYXNzOiBzdHJpbmcgPSAnYm1iX2ZvY3VzLWVsZW1lbnQnO1xuXG4gIGdldEJhY2tncm91bmRDbGFzcygpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSW5oZXJpdGVkQmcoKSkgcmV0dXJuIGAke3RoaXMuYmFzZUNsYXNzfS1pbmhlcml0ZWRfYmdgO1xuICAgIHJldHVybiBgJHt0aGlzLmJhc2VDbGFzc30tbm9ybWFsX2JnYDtcbiAgfVxuXG4gIGdldENpcmNsZUNsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjbGFzc05hbWVzOiBzdHJpbmdbXSA9IFt0aGlzLmdldEJhY2tncm91bmRDbGFzcygpXTtcbiAgICBpZiAodGhpcy5pc05vbkZvY3VzZWQoKSlcbiAgICAgIHJldHVybiBbLi4uY2xhc3NOYW1lcywgYCR7dGhpcy5iYXNlQ2xhc3N9LW5vbl9mb2N1c2VkYF07XG4gICAgaWYgKHRoaXMuaXNOb3JtYWwoKSlcbiAgICAgIHJldHVybiBbLi4uY2xhc3NOYW1lcywgYCR7dGhpcy5iYXNlQ2xhc3N9LW5vcm1hbF9jaXJjbGVgXTtcbiAgICByZXR1cm4gWy4uLmNsYXNzTmFtZXMsIGAke3RoaXMuYmFzZUNsYXNzfS1jaXJjbGVfZm9jdXNlZGBdO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJtYl9mb2N1cy1lbGVtZW50XCI+XG4gIDxzZWN0aW9uIFtuZ0NsYXNzXT1cImdldENpcmNsZUNsYXNzKClcIj5cbiAgICBAaWYgKGljb24oKSkge1xuICAgICAgPGJtYi1pY29uXG4gICAgICAgIGNsYXNzPVwiYm1iX2ZvY3VzLWVsZW1lbnQtaWNvblwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnYm1iX2ZvY3VzLWVsZW1lbnQtaWNvbi1mb2N1c2VkJzogIWlzTm9uRm9jdXNlZCgpICYmICFpc05vcm1hbCgpLFxuICAgICAgICB9XCJcbiAgICAgICAgW2ljb25dPVwiaWNvbigpXCJcbiAgICAgICAgW3NpemVdPVwiMjRcIlxuICAgICAgICBhbHQ9XCJGb2N1cyBlbGVtZW50IGljb25cIlxuICAgICAgLz5cbiAgICB9IEBlbHNlIGlmIChudW1iZXIoKSkge1xuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3M9XCJibWJfZm9jdXMtZWxlbWVudC1udW1iZXJcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ2JtYl9mb2N1cy1lbGVtZW50LW51bWJlci1mb2N1c2VkJzogIWlzTm9uRm9jdXNlZCgpICYmICFpc05vcm1hbCgpLFxuICAgICAgICB9XCJcbiAgICAgID5cbiAgICAgICAge3sgbnVtYmVyKCkgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICB9XG4gIDwvc2VjdGlvbj5cbiAgQGlmICh0aXRsZSgpKSB7XG4gICAgPGg1IGNsYXNzPVwiYm1iX2ZvY3VzLWVsZW1lbnQtdGl0bGVcIj57eyB0aXRsZSgpIH19PC9oNT5cbiAgfVxuPC9zZWN0aW9uPlxuIl19
|
|
@@ -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 BmbFormValidationComponent {
|
|
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: BmbFormValidationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
111
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BmbFormValidationComponent, isStandalone: true, selector: "bmb-form-validation", 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: BmbFormValidationComponent, decorators: [{
|
|
118
|
-
type: Component,
|
|
119
|
-
args: [{
|
|
120
|
-
selector: 'bmb-form-validation',
|
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWZvcm0tdmFsaWRhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWZvcm0tdmFsaWRhdGlvbi9ibWItZm9ybS12YWxpZGF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsS0FBSyxFQUNMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUF3QixNQUFNLHlCQUF5QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFjeEUsTUFBTSxPQUFPLDBCQUEwQjtJQVp2QztRQWFFLGNBQVMsR0FB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O29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUM7b0JBQzVDLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OEJBT0MsU0FBUztzQkFEUixlQUFlO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHekQsWUFBWTtzQkFEWCxlQUFlO3VCQUFDLG9CQUFvQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHNUQsb0JBQW9CO3NCQURuQixlQUFlO3VCQUFDLDRCQUE0QixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHcEUsWUFBWTtzQkFEWCxlQUFlO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHN0QsY0FBYztzQkFEYixlQUFlO3VCQUFDLHNCQUFzQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHOUQsYUFBYTtzQkFEWixlQUFlO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHN0QsYUFBYTtzQkFEWixlQUFlO3VCQUFDLG9CQUFvQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHNUQsVUFBVTtzQkFEVCxlQUFlO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHMUQsV0FBVztzQkFEVixlQUFlO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgbW9kZWwsXG4gIG91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3JtR3JvdXAsIEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJtYklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWlucHV0L2JtYi1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iSW5wdXRUYWdzQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWlucHV0LXRhZ3MvYm1iLWlucHV0LXRhZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IGhhbmRsZVZhbGlkaXR5LCBuZXdGb3JtQ29udHJvbEJ5VHlwZSB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1Db250cm9sJztcbmltcG9ydCB7IEJtYkRhdGVwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi9ibWItZGF0ZXBpY2tlci9ibWItZGF0ZXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iRGF0ZVJhbmdlQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRhdGUtcmFuZ2UvYm1iLWRhdGUtcmFuZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRyb3Bkb3duL2JtYi1kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iSW5wdXRQaG9uZU51bWJlckNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pbnB1dC1waG9uZS1udW1iZXIvYm1iLWlucHV0LXBob25lLW51bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItY2hlY2tib3gvYm1iLWNoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJSYWRpYWxDb21wb25lbnQgfSBmcm9tICcuLi9ibWItcmFkaWFsL2JtYi1yYWRpYWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlN3aXRjaENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1zd2l0Y2gvYm1iLXN3aXRjaC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItZm9ybS12YWxpZGF0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXAoKVwiIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCI+XG4gICAgICA8bmctY29udGVudCAvPlxuICAgIDwvZm9ybT5cbiAgYCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkZvcm1WYWxpZGF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGZvcm1Hcm91cCA9IG1vZGVsPEZvcm1Hcm91cD4obmV3IEZvcm1Hcm91cCh7fSkpO1xuXG4gIGZvcm1Hcm91cFN0YXRlID0gb3V0cHV0PEZvcm1Hcm91cD4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKEJtYklucHV0Q29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYklucHV0cyE6IFF1ZXJ5TGlzdDxCbWJJbnB1dENvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iRHJvcGRvd25Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iRHJvcGRvd25zITogUXVlcnlMaXN0PEJtYkRyb3Bkb3duQ29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJJbnB1dFBob25lTnVtYmVyQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYklucHV0UGhvbmVOdW1iZXJzITogUXVlcnlMaXN0PEJtYklucHV0UGhvbmVOdW1iZXJDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYklucHV0VGFnc0NvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJJbnB1dFRhZ3MhOiBRdWVyeUxpc3Q8Qm1iSW5wdXRUYWdzQ29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJEYXRlcGlja2VyQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYkRhdGVwaWNrZXJzITogUXVlcnlMaXN0PEJtYkRhdGVwaWNrZXJDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYkRhdGVSYW5nZUNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJEYXRlUmFuZ2VzITogUXVlcnlMaXN0PEJtYkRhdGVSYW5nZUNvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iQ2hlY2tib3hDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iQ2hlY2tib3hlcyE6IFF1ZXJ5TGlzdDxCbWJDaGVja2JveENvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iUmFkaWFsQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYlJhZGlhbHMhOiBRdWVyeUxpc3Q8Qm1iUmFkaWFsQ29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJTd2l0Y2hDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iU3dpdGNoZXMhOiBRdWVyeUxpc3Q8Qm1iU3dpdGNoQ29tcG9uZW50PjtcblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5hZGRDb250cm9scygpO1xuICB9XG5cbiAgYWRkQ29udHJvbHMoKTogdm9pZCB7XG4gICAgdGhpcy5ibWJJbnB1dHMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJEcm9wZG93bnMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJJbnB1dFBob25lTnVtYmVycy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYklucHV0VGFncy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYkRhdGVwaWNrZXJzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCksIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iRGF0ZVJhbmdlcy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKFxuICAgICAgICBgJHtjaGlsZC5uYW1lKCl9X3N0YXJ0YCxcbiAgICAgICAgY2hpbGQuY29udHJvbFN0YXJ0KCksXG4gICAgICAgIGNoaWxkLmlzQ29udHJvbFN0YXJ0TnVsbCxcbiAgICAgICk7XG4gICAgICB0aGlzLmFkZENvbnRyb2woXG4gICAgICAgIGAke2NoaWxkLm5hbWUoKX1fZW5kYCxcbiAgICAgICAgY2hpbGQuY29udHJvbEVuZCgpLFxuICAgICAgICBjaGlsZC5pc0NvbnRyb2xFbmROdWxsLFxuICAgICAgKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYkNoZWNrYm94ZXMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJSYWRpYWxzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCkhLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYlN3aXRjaGVzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCkhLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFkZENvbnRyb2woXG4gICAgY29udHJvbE5hbWU6IHN0cmluZyxcbiAgICBjb250cm9sOiBGb3JtQ29udHJvbCxcbiAgICBpc0NvbnRyb2xOdWxsOiBib29sZWFuLFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZ2V0Rm9ybUNvbnRyb2woY29udHJvbE5hbWUpKSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cCgpLmFkZENvbnRyb2woY29udHJvbE5hbWUsIGNvbnRyb2wpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoaXNDb250cm9sTnVsbCkgdGhpcy5mb3JtR3JvdXAoKS5zZXRDb250cm9sKGNvbnRyb2xOYW1lLCBjb250cm9sKTtcbiAgICB9XG4gIH1cblxuICBhZGRSYWRpYWxzKCk6IHZvaWQge1xuICAgIGNvbnN0IHJhZGlhbE5hbWVzOiBzdHJpbmdbXSA9IHRoaXMuYm1iUmFkaWFscy5yZWR1Y2UoXG4gICAgICAoYWNjOiBzdHJpbmdbXSwgY3VycmVudEVsZW1lbnQ6IEJtYlJhZGlhbENvbXBvbmVudCkgPT4ge1xuICAgICAgICBpZiAoYWNjLmluY2x1ZGVzKGN1cnJlbnRFbGVtZW50Lm5hbWUoKSkpIHJldHVybiBhY2M7XG4gICAgICAgIHJldHVybiBbLi4uYWNjLCBjdXJyZW50RWxlbWVudC5uYW1lKCldO1xuICAgICAgfSxcbiAgICAgIFtdLFxuICAgICk7XG5cbiAgICByYWRpYWxOYW1lcy5mb3JFYWNoKChuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHJhZGlhbEluZGV4V2l0aFNhbWVOYW1lOiBudW1iZXJbXSA9IHRoaXMuYm1iUmFkaWFscy5yZWR1Y2UoXG4gICAgICAgIChhY2M6IG51bWJlcltdLCBjdXJyZW50RWxlbWVudDogQm1iUmFkaWFsQ29tcG9uZW50LCBpbmRleCkgPT4ge1xuICAgICAgICAgIGlmIChjdXJyZW50RWxlbWVudC5uYW1lKCkgPT09IG5hbWUpIHJldHVybiBbLi4uYWNjLCBpbmRleF07XG4gICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSxcbiAgICAgICAgW10sXG4gICAgICApO1xuXG4gICAgICBjb25zdCByYWRpYWxDb250cm9sOiBCbWJSYWRpYWxDb21wb25lbnQgPSB0aGlzLmJtYlJhZGlhbHMuZ2V0KFxuICAgICAgICByYWRpYWxJbmRleFdpdGhTYW1lTmFtZVswXSxcbiAgICAgICkhO1xuXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuYm1iUmFkaWFsc1xuICAgICAgICAgIC5maWx0ZXIoKGVsZW1lbnQ6IEJtYlJhZGlhbENvbXBvbmVudCkgPT4gZWxlbWVudC5uYW1lKCkgPT09IG5hbWUpXG4gICAgICAgICAgLmV2ZXJ5KFxuICAgICAgICAgICAgKGVsZW1lbnRTZWxlY3RlZDogQm1iUmFkaWFsQ29tcG9uZW50KSA9PlxuICAgICAgICAgICAgICAhZWxlbWVudFNlbGVjdGVkLmlzQ29udHJvbE51bGwsXG4gICAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuYWRkQ29udHJvbChyYWRpYWxDb250cm9sLm5hbWUoKSwgcmFkaWFsQ29udHJvbC5jb250cm9sKCkhLCBmYWxzZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmJtYlJhZGlhbHNcbiAgICAgICAgLmZpbHRlcigoZWxlbWVudDogQm1iUmFkaWFsQ29tcG9uZW50KSA9PiBlbGVtZW50Lm5hbWUoKSA9PT0gbmFtZSlcbiAgICAgICAgPy5maW5kKChlbGVtZW50U2VsZWN0ZWQ6IEJtYlJhZGlhbENvbXBvbmVudCkgPT5cbiAgICAgICAgICBlbGVtZW50U2VsZWN0ZWQuY2hlY2tlZCgpLFxuICAgICAgICApXG4gICAgICAgID8uY29udHJvbCgpPy52YWx1ZSE7XG5cbiAgICAgIHJhZGlhbENvbnRyb2wuY29udHJvbCgpPy5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICByYWRpYWxJbmRleFdpdGhTYW1lTmFtZS5zbGljZSgxKS5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgIHRoaXMuYm1iUmFkaWFscy5nZXQoZWxlbWVudCk/LmNvbnRyb2wuc2V0KHJhZGlhbENvbnRyb2wuY29udHJvbCgpKTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLmFkZENvbnRyb2wocmFkaWFsQ29udHJvbC5uYW1lKCksIHJhZGlhbENvbnRyb2wuY29udHJvbCgpISwgZmFsc2UpO1xuICAgIH0pO1xuICB9XG5cbiAgb25TdWJtaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAoKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgdGhpcy5mb3JtR3JvdXAoKS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgdGhpcy51cGRhdGVFcnJvclN0YXRlKCk7XG4gICAgdGhpcy5mb3JtR3JvdXBTdGF0ZS5lbWl0KHRoaXMuZm9ybUdyb3VwKCkpO1xuICB9XG5cbiAgdXBkYXRlRXJyb3JTdGF0ZSgpIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmZvcm1Hcm91cCgpLmNvbnRyb2xzKS5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZ2V0Rm9ybUNvbnRyb2woZmllbGQpO1xuXG4gICAgICBpZiAoISFjb250cm9sKSB7XG4gICAgICAgIGhhbmRsZVZhbGlkaXR5KGNvbnRyb2wpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0Rm9ybUNvbnRyb2wobmFtZTogc3RyaW5nKTogRm9ybUNvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cCgpLmdldChuYW1lKSBhcyBGb3JtQ29udHJvbDtcbiAgfVxufVxuIl19
|