@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1118 → 1.5.1119-a

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/assets/styles/main.min.css +1 -1
  2. package/assets/styles/main.min.css.map +1 -1
  3. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +849 -711
  4. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
  5. package/lib/components/bmb-container-button/bmb-container-button.component.d.ts +9 -0
  6. package/lib/components/bmb-modal/bmb-modal.interface.d.ts +6 -2
  7. package/lib/components/bmb-modal/bmb-native-modal.component.d.ts +10 -3
  8. package/lib/components/bmb-portal/bmb-portal.component.d.ts +6 -2
  9. package/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.d.ts +42 -0
  10. package/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.d.ts +1 -7
  11. package/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.d.ts +8 -8
  12. package/lib/components/bmb-top-bar/bmb-top-bar.component.d.ts +16 -17
  13. package/lib/components/bmb-totp/bmb-totp.component.d.ts +1 -0
  14. package/lib/ds-ng.component.d.ts +1 -1
  15. package/lib/services/projection.service.d.ts +30 -0
  16. package/package.json +1 -3
  17. package/public-api.d.ts +1 -0
  18. package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +0 -87
  19. package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +0 -159
  20. package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +0 -150
  21. package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +0 -49
  22. package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +0 -31
  23. package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +0 -35
  24. package/esm2022/lib/components/bmb-advertisement-card/types.mjs +0 -2
  25. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +0 -40
  26. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +0 -18
  27. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +0 -148
  28. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +0 -52
  29. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +0 -196
  30. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +0 -62
  31. package/esm2022/lib/components/bmb-alert-center/types.mjs +0 -2
  32. package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +0 -26
  33. package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +0 -26
  34. package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +0 -27
  35. package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +0 -42
  36. package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +0 -55
  37. package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +0 -30
  38. package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +0 -262
  39. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +0 -95
  40. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +0 -40
  41. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +0 -68
  42. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +0 -41
  43. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-event-list/bmb-calendar-template-event-list.component.mjs +0 -63
  44. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +0 -95
  45. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +0 -45
  46. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +0 -54
  47. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +0 -24
  48. package/esm2022/lib/components/bmb-calendar/types.mjs +0 -2
  49. package/esm2022/lib/components/bmb-calendar/utils.mjs +0 -96
  50. package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +0 -154
  51. package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +0 -76
  52. package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +0 -80
  53. package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +0 -175
  54. package/esm2022/lib/components/bmb-chat-bar/bot_list.mjs +0 -57
  55. package/esm2022/lib/components/bmb-chat-bar/types.mjs +0 -2
  56. package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +0 -56
  57. package/esm2022/lib/components/bmb-chat-bubbles/types.mjs +0 -2
  58. package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +0 -46
  59. package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +0 -80
  60. package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +0 -36
  61. package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +0 -27
  62. package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +0 -83
  63. package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +0 -69
  64. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +0 -211
  65. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +0 -123
  66. package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +0 -54
  67. package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +0 -25
  68. package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +0 -34
  69. package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +0 -54
  70. package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +0 -200
  71. package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +0 -28
  72. package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +0 -175
  73. package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +0 -76
  74. package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +0 -78
  75. package/esm2022/lib/components/bmb-fab/bmb-fab-.interface.mjs +0 -9
  76. package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +0 -37
  77. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +0 -154
  78. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.interface.mjs +0 -2
  79. package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +0 -36
  80. package/esm2022/lib/components/bmb-form-validation/bmb-form-validation.component.mjs +0 -159
  81. package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +0 -159
  82. package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +0 -29
  83. package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +0 -22
  84. package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +0 -181
  85. package/esm2022/lib/components/bmb-grades/types.mjs +0 -2
  86. package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +0 -55
  87. package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +0 -49
  88. package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +0 -77
  89. package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +0 -59
  90. package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +0 -76
  91. package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +0 -41
  92. package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +0 -39
  93. package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +0 -20
  94. package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +0 -49
  95. package/esm2022/lib/components/bmb-icon/types.mjs +0 -2
  96. package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +0 -23
  97. package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +0 -24
  98. package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +0 -19
  99. package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +0 -21
  100. package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +0 -33
  101. package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +0 -77
  102. package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +0 -147
  103. package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.component.mjs +0 -162
  104. package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.service.mjs +0 -116
  105. package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +0 -178
  106. package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +0 -85
  107. package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +0 -219
  108. package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +0 -191
  109. package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +0 -54
  110. package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +0 -34
  111. package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +0 -28
  112. package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +0 -23
  113. package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +0 -83
  114. package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +0 -60
  115. package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +0 -55
  116. package/esm2022/lib/components/bmb-list-group/types.mjs +0 -2
  117. package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +0 -83
  118. package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +0 -77
  119. package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +0 -55
  120. package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +0 -66
  121. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +0 -40
  122. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +0 -20
  123. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +0 -33
  124. 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
  125. 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
  126. 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
  127. 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
  128. 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
  129. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +0 -44
  130. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +0 -52
  131. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +0 -70
  132. package/esm2022/lib/components/bmb-login-onboarding/types.mjs +0 -2
  133. package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +0 -43
  134. package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +0 -64
  135. package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +0 -14
  136. package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +0 -88
  137. package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +0 -139
  138. package/esm2022/lib/components/bmb-modal/bmb-modal.interface.mjs +0 -2
  139. package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +0 -84
  140. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +0 -15
  141. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +0 -59
  142. package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +0 -30
  143. package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +0 -43
  144. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +0 -86
  145. package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +0 -22
  146. package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +0 -52
  147. package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +0 -52
  148. package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +0 -153
  149. package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +0 -39
  150. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +0 -196
  151. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.mjs +0 -2
  152. package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +0 -88
  153. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +0 -75
  154. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +0 -24
  155. package/esm2022/lib/components/bmb-push-notification/types.mjs +0 -2
  156. package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +0 -78
  157. package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +0 -117
  158. package/esm2022/lib/components/bmb-select/bmb-select-item/bmb-select-item.component.mjs +0 -16
  159. package/esm2022/lib/components/bmb-select/bmb-select.component.mjs +0 -55
  160. package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +0 -82
  161. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +0 -103
  162. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.interface.mjs +0 -2
  163. package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +0 -64
  164. package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +0 -16
  165. package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +0 -64
  166. package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +0 -32
  167. package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +0 -53
  168. package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +0 -53
  169. package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +0 -27
  170. package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +0 -88
  171. package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +0 -545
  172. package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +0 -2
  173. package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +0 -127
  174. package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +0 -65
  175. package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +0 -135
  176. package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +0 -43
  177. package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +0 -65
  178. package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +0 -30
  179. package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +0 -74
  180. package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +0 -13
  181. package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +0 -238
  182. package/esm2022/lib/components/bmb-timestream/types.mjs +0 -2
  183. package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +0 -139
  184. package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +0 -61
  185. package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +0 -47
  186. package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +0 -26
  187. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +0 -31
  188. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +0 -70
  189. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +0 -122
  190. package/esm2022/lib/components/bmb-top-bar/types.mjs +0 -2
  191. package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +0 -138
  192. package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +0 -44
  193. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +0 -19
  194. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +0 -71
  195. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +0 -51
  196. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +0 -28
  197. package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +0 -23
  198. package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +0 -85
  199. package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +0 -128
  200. package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +0 -55
  201. package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +0 -88
  202. package/esm2022/lib/directives/bmb-button/button.directive.mjs +0 -84
  203. package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +0 -29
  204. package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +0 -51
  205. package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +0 -36
  206. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +0 -34
  207. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +0 -37
  208. package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +0 -89
  209. package/esm2022/lib/directives/utils/clickoutside.directive.mjs +0 -41
  210. package/esm2022/lib/ds-ng.component.mjs +0 -11
  211. package/esm2022/lib/ds-ng.service.mjs +0 -14
  212. package/esm2022/lib/services/calendar.service.mjs +0 -51
  213. package/esm2022/lib/services/index.mjs +0 -3
  214. package/esm2022/lib/services/native-modal.service.mjs +0 -69
  215. package/esm2022/lib/services/notification.service.mjs +0 -77
  216. package/esm2022/lib/services/tabs.service.mjs +0 -30
  217. package/esm2022/lib/services/theme.service.mjs +0 -30
  218. package/esm2022/lib/services/toast.service.mjs +0 -24
  219. package/esm2022/lib/services/user/profile.service.mjs +0 -26
  220. package/esm2022/lib/types/colors.mjs +0 -2
  221. package/esm2022/lib/types/index.mjs +0 -11
  222. package/esm2022/lib/utils/countryCodes.mjs +0 -1089
  223. package/esm2022/lib/utils/currencyFormat.mjs +0 -7
  224. package/esm2022/lib/utils/dropdown.mjs +0 -85
  225. package/esm2022/lib/utils/formControl.mjs +0 -25
  226. package/esm2022/lib/utils/timestreamFilters.mjs +0 -32
  227. package/esm2022/lib/utils/utils.mjs +0 -66
  228. package/esm2022/public-api.mjs +0 -151
  229. 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: "18.2.13", ngImport: i0, type: BmbFilterCardComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
134
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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: "18.2.13", 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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b25lbnQsXG4gIGlucHV0LFxuICBPbkluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgb3V0cHV0LFxuICBlZmZlY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCbWJJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWljb24vYm1iLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlN3aXRjaENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1zd2l0Y2gvYm1iLXN3aXRjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iUmFkaWFsQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLXJhZGlhbC9ibWItcmFkaWFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1jaGVja2JveC9ibWItY2hlY2tib3guY29tcG9uZW50JztcbmltcG9ydCB7IEJtYk1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLW1vZGFsL2JtYi1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1vZGFsRGF0YUNvbmZpZyB9IGZyb20gJy4uL2JtYi1tb2RhbC9ibWItbW9kYWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJtYklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWlucHV0L2JtYi1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSUJtYkNvbnRyb2xUeXBlIH0gZnJvbSAnLi9ibWItZmlsdGVyLWNhcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJtYkJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWJ1dHRvbi9idXR0b24uZGlyZWN0aXZlJztcbmltcG9ydCB7IEJtYkRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRyb3Bkb3duL2JtYi1kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iVGFnQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLXRhZ3MvYm1iLXRhZ3MuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWZpbHRlci1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1maWx0ZXItY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9ibWItZmlsdGVyLWNhcmQuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgQm1iSWNvbkNvbXBvbmVudCxcbiAgICBCbWJJbnB1dENvbXBvbmVudCxcbiAgICBCbWJTd2l0Y2hDb21wb25lbnQsXG4gICAgQm1iUmFkaWFsQ29tcG9uZW50LFxuICAgIEJtYkNoZWNrYm94Q29tcG9uZW50LFxuICAgIEJtYkRyb3Bkb3duQ29tcG9uZW50LFxuICAgIEJtYkJ1dHRvbkRpcmVjdGl2ZSxcbiAgICBCbWJUYWdDb21wb25lbnQsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJGaWx0ZXJDYXJkQ29tcG9uZW50IHtcbiAgbW9kYWxUaXRsZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICBwcmltYXJ5QnRuTGFiZWwgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgc2Vjb25kYXJ5QnRuTGFiZWwgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgaWNvbiA9IGlucHV0PHN0cmluZz4oJycpO1xuICBwbGFjZWhvbGRlclNlYXJjaCA9IGlucHV0PHN0cmluZz4oJycpO1xuICBjb250cm9sVHlwZXMgPSBpbnB1dDxJQm1iQ29udHJvbFR5cGVbXT4oW10pO1xuICBzdG9yZWRWYWx1ZXM6IHsgW25hbWU6IHN0cmluZ106IGFueSB9ID0ge307XG4gIGluTGluZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgc2hvd0Ryb3Bkb3duID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBkcm9wZG93bk9wdGlvbnMgPSBpbnB1dDxzdHJpbmdbXT4oW10pO1xuXG4gIGFwcGx5RmlsdGVycyA9IG91dHB1dDx2b2lkPigpO1xuICByZXNldEZpbHRlcnMgPSBvdXRwdXQ8dm9pZD4oKTtcblxuICBmaWx0ZXJGb3JtOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcbiAgICBzZWFyY2g6IG5ldyBGb3JtQ29udHJvbDxzdHJpbmc+KCcnKSxcbiAgICBzZWxlY3RlZERyb3Bkb3duOiBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nPignJyksXG4gIH0pO1xuXG4gIEBWaWV3Q2hpbGQoJ21vZGFsVGVtcGxhdGUnKSBtb2RhbFRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1hdERpYWxvZzogTWF0RGlhbG9nKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIHRoaXMuY29udHJvbFR5cGVzKCkuZm9yRWFjaCgoY29udHJvbFR5cGUpID0+IHtcbiAgICAgICAgY29udHJvbFR5cGUuY29udHJvbC5mb3JFYWNoKChjb250cm9sKSA9PiB7XG4gICAgICAgICAgaWYgKGNvbnRyb2wudHlwZSA9PT0gJ3JhZGlhbCcpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2xOYW1lID0gdGhpcy5maWx0ZXJGb3JtLmdldChjb250cm9sLm5hbWUpO1xuICAgICAgICAgICAgaWYgKGNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgIGNvbnRyb2xOYW1lLnNldFZhbHVlKFxuICAgICAgICAgICAgICAgIGNvbnRyb2wuY2hlY2tlZCA/IGNvbnRyb2wubGFiZWwgOiBjb250cm9sTmFtZS52YWx1ZSxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuZmlsdGVyRm9ybS5hZGRDb250cm9sKFxuICAgICAgICAgICAgICAgIGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nPihjb250cm9sLmNoZWNrZWQgPyBjb250cm9sLmxhYmVsIDogJycpLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckZvcm0uYWRkQ29udHJvbChcbiAgICAgICAgICAgICAgY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgICBuZXcgRm9ybUNvbnRyb2w8Ym9vbGVhbj4oY29udHJvbC5jaGVja2VkKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgb3Blbk1vZGFsQ29tcG9uZW50KCkge1xuICAgIGNvbnN0IGRhdGE6IE1vZGFsRGF0YUNvbmZpZyA9IHtcbiAgICAgIHRpdGxlOiB0aGlzLm1vZGFsVGl0bGUoKSxcbiAgICAgIHNpemU6ICdzbWFsbCcsXG4gICAgICBwcmltYXJ5QnRuTGFiZWw6IHRoaXMucHJpbWFyeUJ0bkxhYmVsKCksXG4gICAgICBzZWNvbmRhcnlCdG5MYWJlbDogdGhpcy5zZWNvbmRhcnlCdG5MYWJlbCgpLFxuICAgICAgY29udGVudDogdGhpcy5tb2RhbFRlbXBsYXRlLFxuICAgICAgcHJpbWFyeUFjdGlvbjogdGhpcy5vblN1Ym1pdC5iaW5kKHRoaXMpLFxuICAgICAgc2Vjb25kYXJ5QWN0aW9uOiB0aGlzLm9uUmVzZXQuYmluZCh0aGlzKSxcbiAgICAgIHNjcm9sbGFibGU6IHRydWUsXG4gICAgfTtcblxuICAgIHRoaXMubWF0RGlhbG9nLm9wZW4oQm1iTW9kYWxDb21wb25lbnQsIHsgZGF0YSB9KTtcbiAgfVxuXG4gIG9uQ29udHJvbENoYW5nZShjb250cm9sOiBhbnksIGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbCA9IHRoaXMuZmlsdGVyRm9ybS5nZXQoY29udHJvbC5uYW1lKTtcbiAgICBpZiAoZm9ybUNvbnRyb2wpIHtcbiAgICAgIHN3aXRjaCAoY29udHJvbC50eXBlKSB7XG4gICAgICAgIGNhc2UgJ3N3aXRjaCc6XG4gICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUoZXZlbnQpO1xuICAgICAgICAgIGNvbnN0IHN3aXRjaFZhbHVlID0ge1xuICAgICAgICAgICAgbmFtZTogY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgbGFiZWw6IGNvbnRyb2wucmlnaHRUZXh0LFxuICAgICAgICAgICAgY2hlY2tlZDogZXZlbnQsXG4gICAgICAgICAgICB0eXBlOiBjb250cm9sLnR5cGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdID0gc3dpdGNoVmFsdWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2NoZWNrYm94JzpcbiAgICAgICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShldmVudC50YXJnZXQuY2hlY2tlZCk7XG4gICAgICAgICAgY29uc3QgY2hlY2tib3hWYWx1ZSA9IHtcbiAgICAgICAgICAgIG5hbWU6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgIGxhYmVsOiBjb250cm9sLmxhYmVsLFxuICAgICAgICAgICAgY2hlY2tlZDogZXZlbnQudGFyZ2V0LmNoZWNrZWQsXG4gICAgICAgICAgICB0eXBlOiBjb250cm9sLnR5cGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdID0gY2hlY2tib3hWYWx1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmFkaWFsJzpcbiAgICAgICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShjb250cm9sLmxhYmVsKTtcbiAgICAgICAgICBjb25zdCByYWRpYWxWYWx1ZSA9IHtcbiAgICAgICAgICAgIGxhYmVsOiBjb250cm9sLmxhYmVsLFxuICAgICAgICAgICAgY2hlY2tlZDogZXZlbnQuY2hlY2tlZCxcbiAgICAgICAgICAgIG5hbWU6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgIHR5cGU6IGNvbnRyb2wudHlwZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMuc3RvcmVkVmFsdWVzW2NvbnRyb2wubmFtZV0gPSByYWRpYWxWYWx1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDogLy9mb3IgdGhlIHRhZyBvcHRpb24gb3IgYW55IG90aGVyIG9wdGlvbiB0aGF0IGRvZXMgbm90IGhhdmUgYW4gYWN0aXZhdGVkIGNvbnRyb2xcbiAgICAgICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShjb250cm9sLmxhYmVsKTtcbiAgICAgICAgICBjb25zdCBlbGVtZW50VmFsdWUgPSB7XG4gICAgICAgICAgICBsYWJlbDogY29udHJvbC5sYWJlbCxcbiAgICAgICAgICAgIGNoZWNrZWQ6ICF0aGlzLnN0b3JlZFZhbHVlc1tjb250cm9sLm5hbWVdPy5jaGVja2VkLFxuICAgICAgICAgICAgbmFtZTogY29udHJvbCxcbiAgICAgICAgICAgIHR5cGU6IGNvbnRyb2wudHlwZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMuc3RvcmVkVmFsdWVzW2NvbnRyb2wubmFtZV0gPSBlbGVtZW50VmFsdWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25TdWJtaXQoKSB7XG4gICAgY29uc3QgZm9ybURhdGE6IGFueSA9IHt9O1xuICAgIE9iamVjdC5rZXlzKHRoaXMuc3RvcmVkVmFsdWVzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGZvcm1EYXRhW2tleV0gPSB0aGlzLnN0b3JlZFZhbHVlc1trZXldO1xuICAgIH0pO1xuICAgIGZvcm1EYXRhLnNlYXJjaCA9IHRoaXMuZmlsdGVyRm9ybS5nZXQoJ3NlYXJjaCcpPy52YWx1ZTtcbiAgICB0aGlzLmFwcGx5RmlsdGVycy5lbWl0KGZvcm1EYXRhKTtcbiAgfVxuXG4gIG9uUmVzZXQoKSB7XG4gICAgdGhpcy5maWx0ZXJGb3JtLnJlc2V0KCk7XG4gICAgdGhpcy5yZXNldEZpbHRlcnMuZW1pdCgpO1xuICB9XG5cbiAgZ2V0Rm9ybUNvbnRyb2woc2VhcmNoOiBzdHJpbmcpOiBGb3JtQ29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyRm9ybS5nZXQoc2VhcmNoKSBhcyBGb3JtQ29udHJvbDtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoZXZlbnQ6IHN0cmluZykge1xuICAgIHRoaXMuZmlsdGVyRm9ybS5nZXQoJ3NlYXJjaCcpPy5zZXRWYWx1ZShldmVudCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJibWJfZmlsdGVyX2NhcmRcIj5cclxuICA8bmctdGVtcGxhdGUgI21vZGFsVGVtcGxhdGU+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkLW1vZGFsXCI+XHJcbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZmlsdGVyRm9ybVwiPlxyXG4gICAgICAgIEBpZiAoc2hvd0Ryb3Bkb3duKCkpIHtcclxuICAgICAgICAgIDxibWItZHJvcGRvd25cclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyU2VhcmNoKClcIlxyXG4gICAgICAgICAgICBbb3B0aW9uc109XCJkcm9wZG93bk9wdGlvbnMoKVwiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImdldEZvcm1Db250cm9sKCdzZWFyY2gnKVwiXHJcbiAgICAgICAgICAgIChvblZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtpc0ZpbHRlcmFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgPGJtYi1pbnB1dFxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJTZWFyY2goKVwiXHJcbiAgICAgICAgICAgIFtpY29uXT1cIidzZWFyY2gnXCJcclxuICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiJ25vcm1hbCdcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJnZXRGb3JtQ29udHJvbCgnc2VhcmNoJylcIlxyXG4gICAgICAgICAgICBbaXNDbGVhcmFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIH1cclxuICAgICAgICBAZm9yIChjb250cm9sVHlwZSBvZiBjb250cm9sVHlwZXMoKTsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICA8aDQgY2xhc3M9XCJibWJfZmlsdGVyX2NhcmQtdGl0bGVcIj57eyBjb250cm9sVHlwZS50aXRsZSB9fTwvaDQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkLWNvbnRyb2xcIj5cclxuICAgICAgICAgICAgQGZvciAoY29udHJvbCBvZiBjb250cm9sVHlwZS5jb250cm9sOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgICBAc3dpdGNoIChjb250cm9sLnR5cGUpIHtcclxuICAgICAgICAgICAgICAgIEBjYXNlIChcInRhZ1wiKSB7XHJcbiAgICAgICAgICAgICAgICAgIDxibWItdGFnXHJcbiAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiY29udHJvbC5sYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc21pc3NpYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNBY3RpdmVdPVwic3RvcmVkVmFsdWVzW2NvbnRyb2wubmFtZV0/LmNoZWNrZWQgPz8gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGlja2VkVGFnKT1cIm9uQ29udHJvbENoYW5nZShjb250cm9sLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBjYXNlIChcInJhZGlhbFwiKSB7XHJcbiAgICAgICAgICAgICAgICAgIDxibWItcmFkaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29udHJvbC5uYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJcclxuICAgICAgICAgICAgICAgICAgICAgIGZpbHRlckZvcm0uZ2V0KGNvbnRyb2wubmFtZSk/LnZhbHVlID09PSBjb250cm9sLmxhYmVsXHJcbiAgICAgICAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkNvbnRyb2xDaGFuZ2UoY29udHJvbCwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAY2FzZSAoXCJjaGVja2JveFwiKSB7XHJcbiAgICAgICAgICAgICAgICAgIDxibWItY2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJjb250cm9sLm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImZpbHRlckZvcm0uZ2V0KGNvbnRyb2wubmFtZSk/LnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkNvbnRyb2xDaGFuZ2UoY29udHJvbCwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAY2FzZSAoXCJzd2l0Y2hcIikge1xyXG4gICAgICAgICAgICAgICAgICA8Ym1iLXN3aXRjaFxyXG4gICAgICAgICAgICAgICAgICAgIFtyaWdodFRleHRdPVwiY29udHJvbC5yaWdodFRleHQgPz8gJydcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwiZmlsdGVyRm9ybS5nZXQoY29udHJvbC5uYW1lKT8udmFsdWUgPT09IHRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25Db250cm9sQ2hhbmdlKGNvbnRyb2wsICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpZiAoaW5MaW5lKCkpIHtcclxuICAgICAgICAgIDxmb290ZXIgY2xhc3M9XCJibWJfZmlsdGVyX2NhcmQtZm9vdGVyXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gYm1iQnV0dG9uIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnktb3V0bGluZWRcIiB0eXBlPVwicmVzZXRcIj5cclxuICAgICAgICAgICAgICB7eyBzZWNvbmRhcnlCdG5MYWJlbCgpIH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGJtYkJ1dHRvbiAoY2xpY2spPVwib25TdWJtaXQoKVwiIHR5cGU9XCJzdWJtaXRcIj5cclxuICAgICAgICAgICAgICB7eyBwcmltYXJ5QnRuTGFiZWwoKSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDwvZm9vdGVyPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9mb3JtPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgQGlmIChpbkxpbmUoKSkge1xyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJtb2RhbFRlbXBsYXRlXCIgLz5cclxuICB9IEBlbHNlIHtcclxuICAgIDxidXR0b25cclxuICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgIGNsYXNzPVwiYm1iX2ZpbHRlcl9jYXJkLWJ1dHRvblwiXHJcbiAgICAgIChjbGljayk9XCJvcGVuTW9kYWxDb21wb25lbnQoKVwiXHJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgPlxyXG4gICAgICA8Ym1iLWljb24gW2ljb25dPVwiaWNvbigpXCIgYWx0PVwiRmlsdGVyIGljb25cIiAvPlxyXG4gICAgPC9idXR0b24+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
@@ -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: "18.2.13", ngImport: i0, type: BmbFocusElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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: "18.2.13", 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: "18.2.13", ngImport: i0, type: BmbFormValidationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
111
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", 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: "18.2.13", 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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VCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDO29CQUM1QyxRQUFRLEVBQUU7Ozs7R0FJVDtvQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzhCQU9DLFNBQVM7c0JBRFIsZUFBZTt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBR3pELFlBQVk7c0JBRFgsZUFBZTt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRzVELG9CQUFvQjtzQkFEbkIsZUFBZTt1QkFBQyw0QkFBNEIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBR3BFLFlBQVk7c0JBRFgsZUFBZTt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRzdELGNBQWM7c0JBRGIsZUFBZTt1QkFBQyxzQkFBc0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRzlELGFBQWE7c0JBRFosZUFBZTt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRzdELGFBQWE7c0JBRFosZUFBZTt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRzVELFVBQVU7c0JBRFQsZUFBZTt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRzFELFdBQVc7c0JBRFYsZUFBZTt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIG1vZGVsLFxuICBvdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybUdyb3VwLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCbWJJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pbnB1dC9ibWItaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYklucHV0VGFnc0NvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pbnB1dC10YWdzL2JtYi1pbnB1dC10YWdzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBoYW5kbGVWYWxpZGl0eSwgbmV3Rm9ybUNvbnRyb2xCeVR5cGUgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtQ29udHJvbCc7XG5pbXBvcnQgeyBCbWJEYXRlcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRhdGVwaWNrZXIvYm1iLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkRhdGVSYW5nZUNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kYXRlLXJhbmdlL2JtYi1kYXRlLXJhbmdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kcm9wZG93bi9ibWItZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYklucHV0UGhvbmVOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuLi9ibWItaW5wdXQtcGhvbmUtbnVtYmVyL2JtYi1pbnB1dC1waG9uZS1udW1iZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkNoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWNoZWNrYm94L2JtYi1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iUmFkaWFsQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLXJhZGlhbC9ibWItcmFkaWFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJTd2l0Y2hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItc3dpdGNoL2JtYi1zd2l0Y2guY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWZvcm0tdmFsaWRhdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwKClcIiAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiPlxuICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L2Zvcm0+XG4gIGAsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJGb3JtVmFsaWRhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBmb3JtR3JvdXAgPSBtb2RlbDxGb3JtR3JvdXA+KG5ldyBGb3JtR3JvdXAoe30pKTtcblxuICBmb3JtR3JvdXBTdGF0ZSA9IG91dHB1dDxGb3JtR3JvdXA+KCk7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihCbWJJbnB1dENvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJJbnB1dHMhOiBRdWVyeUxpc3Q8Qm1iSW5wdXRDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYkRyb3Bkb3duQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYkRyb3Bkb3ducyE6IFF1ZXJ5TGlzdDxCbWJEcm9wZG93bkNvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iSW5wdXRQaG9uZU51bWJlckNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJJbnB1dFBob25lTnVtYmVycyE6IFF1ZXJ5TGlzdDxCbWJJbnB1dFBob25lTnVtYmVyQ29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJJbnB1dFRhZ3NDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iSW5wdXRUYWdzITogUXVlcnlMaXN0PEJtYklucHV0VGFnc0NvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iRGF0ZXBpY2tlckNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJEYXRlcGlja2VycyE6IFF1ZXJ5TGlzdDxCbWJEYXRlcGlja2VyQ29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihCbWJEYXRlUmFuZ2VDb21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgYm1iRGF0ZVJhbmdlcyE6IFF1ZXJ5TGlzdDxCbWJEYXRlUmFuZ2VDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYkNoZWNrYm94Q29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYkNoZWNrYm94ZXMhOiBRdWVyeUxpc3Q8Qm1iQ2hlY2tib3hDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEJtYlJhZGlhbENvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBibWJSYWRpYWxzITogUXVlcnlMaXN0PEJtYlJhZGlhbENvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQm1iU3dpdGNoQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGJtYlN3aXRjaGVzITogUXVlcnlMaXN0PEJtYlN3aXRjaENvbXBvbmVudD47XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRkQ29udHJvbHMoKTtcbiAgfVxuXG4gIGFkZENvbnRyb2xzKCk6IHZvaWQge1xuICAgIHRoaXMuYm1iSW5wdXRzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCksIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iRHJvcGRvd25zLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCksIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iSW5wdXRQaG9uZU51bWJlcnMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJJbnB1dFRhZ3MuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChjaGlsZC5uYW1lKCksIGNoaWxkLmNvbnRyb2woKSwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJEYXRlcGlja2Vycy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpLCBjaGlsZC5pc0NvbnRyb2xOdWxsKTtcbiAgICB9KTtcbiAgICB0aGlzLmJtYkRhdGVSYW5nZXMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbChcbiAgICAgICAgYCR7Y2hpbGQubmFtZSgpfV9zdGFydGAsXG4gICAgICAgIGNoaWxkLmNvbnRyb2xTdGFydCgpLFxuICAgICAgICBjaGlsZC5pc0NvbnRyb2xTdGFydE51bGwsXG4gICAgICApO1xuICAgICAgdGhpcy5hZGRDb250cm9sKFxuICAgICAgICBgJHtjaGlsZC5uYW1lKCl9X2VuZGAsXG4gICAgICAgIGNoaWxkLmNvbnRyb2xFbmQoKSxcbiAgICAgICAgY2hpbGQuaXNDb250cm9sRW5kTnVsbCxcbiAgICAgICk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJDaGVja2JveGVzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICB0aGlzLmFkZENvbnRyb2woY2hpbGQubmFtZSgpLCBjaGlsZC5jb250cm9sKCksIGNoaWxkLmlzQ29udHJvbE51bGwpO1xuICAgIH0pO1xuICAgIHRoaXMuYm1iUmFkaWFscy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpISwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5ibWJTd2l0Y2hlcy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgdGhpcy5hZGRDb250cm9sKGNoaWxkLm5hbWUoKSwgY2hpbGQuY29udHJvbCgpISwgY2hpbGQuaXNDb250cm9sTnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICBhZGRDb250cm9sKFxuICAgIGNvbnRyb2xOYW1lOiBzdHJpbmcsXG4gICAgY29udHJvbDogRm9ybUNvbnRyb2wsXG4gICAgaXNDb250cm9sTnVsbDogYm9vbGVhbixcbiAgKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmdldEZvcm1Db250cm9sKGNvbnRyb2xOYW1lKSkge1xuICAgICAgdGhpcy5mb3JtR3JvdXAoKS5hZGRDb250cm9sKGNvbnRyb2xOYW1lLCBjb250cm9sKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGlzQ29udHJvbE51bGwpIHRoaXMuZm9ybUdyb3VwKCkuc2V0Q29udHJvbChjb250cm9sTmFtZSwgY29udHJvbCk7XG4gICAgfVxuICB9XG5cbiAgYWRkUmFkaWFscygpOiB2b2lkIHtcbiAgICBjb25zdCByYWRpYWxOYW1lczogc3RyaW5nW10gPSB0aGlzLmJtYlJhZGlhbHMucmVkdWNlKFxuICAgICAgKGFjYzogc3RyaW5nW10sIGN1cnJlbnRFbGVtZW50OiBCbWJSYWRpYWxDb21wb25lbnQpID0+IHtcbiAgICAgICAgaWYgKGFjYy5pbmNsdWRlcyhjdXJyZW50RWxlbWVudC5uYW1lKCkpKSByZXR1cm4gYWNjO1xuICAgICAgICByZXR1cm4gWy4uLmFjYywgY3VycmVudEVsZW1lbnQubmFtZSgpXTtcbiAgICAgIH0sXG4gICAgICBbXSxcbiAgICApO1xuXG4gICAgcmFkaWFsTmFtZXMuZm9yRWFjaCgobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCByYWRpYWxJbmRleFdpdGhTYW1lTmFtZTogbnVtYmVyW10gPSB0aGlzLmJtYlJhZGlhbHMucmVkdWNlKFxuICAgICAgICAoYWNjOiBudW1iZXJbXSwgY3VycmVudEVsZW1lbnQ6IEJtYlJhZGlhbENvbXBvbmVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICBpZiAoY3VycmVudEVsZW1lbnQubmFtZSgpID09PSBuYW1lKSByZXR1cm4gWy4uLmFjYywgaW5kZXhdO1xuICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sXG4gICAgICAgIFtdLFxuICAgICAgKTtcblxuICAgICAgY29uc3QgcmFkaWFsQ29udHJvbDogQm1iUmFkaWFsQ29tcG9uZW50ID0gdGhpcy5ibWJSYWRpYWxzLmdldChcbiAgICAgICAgcmFkaWFsSW5kZXhXaXRoU2FtZU5hbWVbMF0sXG4gICAgICApITtcblxuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmJtYlJhZGlhbHNcbiAgICAgICAgICAuZmlsdGVyKChlbGVtZW50OiBCbWJSYWRpYWxDb21wb25lbnQpID0+IGVsZW1lbnQubmFtZSgpID09PSBuYW1lKVxuICAgICAgICAgIC5ldmVyeShcbiAgICAgICAgICAgIChlbGVtZW50U2VsZWN0ZWQ6IEJtYlJhZGlhbENvbXBvbmVudCkgPT5cbiAgICAgICAgICAgICAgIWVsZW1lbnRTZWxlY3RlZC5pc0NvbnRyb2xOdWxsLFxuICAgICAgICAgIClcbiAgICAgICkge1xuICAgICAgICB0aGlzLmFkZENvbnRyb2wocmFkaWFsQ29udHJvbC5uYW1lKCksIHJhZGlhbENvbnRyb2wuY29udHJvbCgpISwgZmFsc2UpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5ibWJSYWRpYWxzXG4gICAgICAgIC5maWx0ZXIoKGVsZW1lbnQ6IEJtYlJhZGlhbENvbXBvbmVudCkgPT4gZWxlbWVudC5uYW1lKCkgPT09IG5hbWUpXG4gICAgICAgID8uZmluZCgoZWxlbWVudFNlbGVjdGVkOiBCbWJSYWRpYWxDb21wb25lbnQpID0+XG4gICAgICAgICAgZWxlbWVudFNlbGVjdGVkLmNoZWNrZWQoKSxcbiAgICAgICAgKVxuICAgICAgICA/LmNvbnRyb2woKT8udmFsdWUhO1xuXG4gICAgICByYWRpYWxDb250cm9sLmNvbnRyb2woKT8uc2V0VmFsdWUodmFsdWUpO1xuICAgICAgcmFkaWFsSW5kZXhXaXRoU2FtZU5hbWUuc2xpY2UoMSkuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgICB0aGlzLmJtYlJhZGlhbHMuZ2V0KGVsZW1lbnQpPy5jb250cm9sLnNldChyYWRpYWxDb250cm9sLmNvbnRyb2woKSk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5hZGRDb250cm9sKHJhZGlhbENvbnRyb2wubmFtZSgpLCByYWRpYWxDb250cm9sLmNvbnRyb2woKSEsIGZhbHNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uU3VibWl0KCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybUdyb3VwKCkudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgIHRoaXMuZm9ybUdyb3VwKCkubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgIHRoaXMudXBkYXRlRXJyb3JTdGF0ZSgpO1xuICAgIHRoaXMuZm9ybUdyb3VwU3RhdGUuZW1pdCh0aGlzLmZvcm1Hcm91cCgpKTtcbiAgfVxuXG4gIHVwZGF0ZUVycm9yU3RhdGUoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5mb3JtR3JvdXAoKS5jb250cm9scykuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmdldEZvcm1Db250cm9sKGZpZWxkKTtcblxuICAgICAgaWYgKCEhY29udHJvbCkge1xuICAgICAgICBoYW5kbGVWYWxpZGl0eShjb250cm9sKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldEZvcm1Db250cm9sKG5hbWU6IHN0cmluZyk6IEZvcm1Db250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAoKS5nZXQobmFtZSkgYXMgRm9ybUNvbnRyb2w7XG4gIH1cbn1cbiJdfQ==