@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1217 → 1.5.1219

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/assets/styles/main.min.css +1 -1
  2. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +547 -547
  3. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
  4. package/lib/ds-ng.component.d.ts +1 -1
  5. package/package.json +1 -3
  6. package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +0 -87
  7. package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +0 -159
  8. package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +0 -172
  9. package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +0 -49
  10. package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +0 -31
  11. package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +0 -35
  12. package/esm2022/lib/components/bmb-advertisement-card/types.mjs +0 -2
  13. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +0 -40
  14. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +0 -18
  15. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +0 -148
  16. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +0 -52
  17. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +0 -203
  18. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +0 -62
  19. package/esm2022/lib/components/bmb-alert-center/types.mjs +0 -2
  20. package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +0 -26
  21. package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +0 -26
  22. package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +0 -27
  23. package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +0 -42
  24. package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +0 -55
  25. package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +0 -30
  26. package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +0 -285
  27. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +0 -95
  28. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +0 -40
  29. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +0 -68
  30. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +0 -41
  31. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +0 -95
  32. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +0 -45
  33. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +0 -54
  34. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +0 -24
  35. package/esm2022/lib/components/bmb-calendar/types.mjs +0 -2
  36. package/esm2022/lib/components/bmb-calendar/utils.mjs +0 -96
  37. package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +0 -159
  38. package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +0 -76
  39. package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +0 -80
  40. package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +0 -199
  41. package/esm2022/lib/components/bmb-chat-bar/bot_list.mjs +0 -57
  42. package/esm2022/lib/components/bmb-chat-bar/types.mjs +0 -2
  43. package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +0 -56
  44. package/esm2022/lib/components/bmb-chat-bubbles/types.mjs +0 -2
  45. package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +0 -46
  46. package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +0 -80
  47. package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +0 -36
  48. package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +0 -27
  49. package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +0 -96
  50. package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +0 -69
  51. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +0 -206
  52. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +0 -144
  53. package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +0 -54
  54. package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +0 -25
  55. package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +0 -34
  56. package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +0 -65
  57. package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +0 -177
  58. package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +0 -31
  59. package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +0 -175
  60. package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +0 -76
  61. package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +0 -80
  62. package/esm2022/lib/components/bmb-fab/bmb-fab-.interface.mjs +0 -9
  63. package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +0 -37
  64. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +0 -166
  65. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.interface.mjs +0 -2
  66. package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +0 -36
  67. package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +0 -159
  68. package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +0 -29
  69. package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +0 -22
  70. package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +0 -178
  71. package/esm2022/lib/components/bmb-grades/types.mjs +0 -2
  72. package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +0 -55
  73. package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +0 -49
  74. package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +0 -86
  75. package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +0 -59
  76. package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +0 -76
  77. package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +0 -41
  78. package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +0 -39
  79. package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +0 -20
  80. package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +0 -50
  81. package/esm2022/lib/components/bmb-icon/types.mjs +0 -2
  82. package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +0 -23
  83. package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +0 -24
  84. package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +0 -19
  85. package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +0 -21
  86. package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +0 -33
  87. package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +0 -77
  88. package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +0 -146
  89. package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +0 -178
  90. package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +0 -85
  91. package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +0 -219
  92. package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +0 -191
  93. package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +0 -54
  94. package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +0 -34
  95. package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +0 -28
  96. package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +0 -23
  97. package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +0 -83
  98. package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +0 -60
  99. package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +0 -55
  100. package/esm2022/lib/components/bmb-list-group/types.mjs +0 -2
  101. package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +0 -83
  102. package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +0 -77
  103. package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +0 -55
  104. package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +0 -66
  105. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +0 -40
  106. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +0 -20
  107. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +0 -33
  108. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-four.component.mjs +0 -91
  109. 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
  110. 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
  111. 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
  112. 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
  113. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +0 -44
  114. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +0 -52
  115. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +0 -70
  116. package/esm2022/lib/components/bmb-login-onboarding/types.mjs +0 -2
  117. package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +0 -43
  118. package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +0 -64
  119. package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +0 -14
  120. package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +0 -88
  121. package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +0 -139
  122. package/esm2022/lib/components/bmb-modal/bmb-modal.interface.mjs +0 -2
  123. package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +0 -121
  124. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +0 -15
  125. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +0 -59
  126. package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +0 -30
  127. package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +0 -43
  128. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +0 -86
  129. package/esm2022/lib/components/bmb-notification-counter/bmb-notification-counter.component.mjs +0 -23
  130. package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +0 -22
  131. package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +0 -52
  132. package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +0 -58
  133. package/esm2022/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.mjs +0 -120
  134. package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +0 -153
  135. package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +0 -39
  136. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +0 -196
  137. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.mjs +0 -2
  138. package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +0 -88
  139. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +0 -75
  140. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +0 -24
  141. package/esm2022/lib/components/bmb-push-notification/types.mjs +0 -2
  142. package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +0 -78
  143. package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +0 -122
  144. package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +0 -82
  145. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +0 -97
  146. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.interface.mjs +0 -2
  147. package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +0 -64
  148. package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +0 -16
  149. package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +0 -64
  150. package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +0 -32
  151. package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +0 -55
  152. package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +0 -53
  153. package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +0 -27
  154. package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +0 -88
  155. package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +0 -541
  156. package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +0 -2
  157. package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +0 -132
  158. package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +0 -65
  159. package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +0 -135
  160. package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +0 -43
  161. package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +0 -65
  162. package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +0 -30
  163. package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +0 -74
  164. package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +0 -13
  165. package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +0 -236
  166. package/esm2022/lib/components/bmb-timestream/types.mjs +0 -2
  167. package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +0 -139
  168. package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +0 -61
  169. package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +0 -47
  170. package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +0 -26
  171. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +0 -31
  172. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +0 -94
  173. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +0 -86
  174. package/esm2022/lib/components/bmb-top-bar/types.mjs +0 -2
  175. package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +0 -139
  176. package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +0 -44
  177. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +0 -19
  178. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +0 -71
  179. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +0 -61
  180. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +0 -28
  181. package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +0 -23
  182. package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +0 -85
  183. package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +0 -128
  184. package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +0 -51
  185. package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +0 -88
  186. package/esm2022/lib/directives/bmb-button/button.directive.mjs +0 -84
  187. package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +0 -29
  188. package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +0 -51
  189. package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +0 -36
  190. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +0 -34
  191. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +0 -37
  192. package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +0 -89
  193. package/esm2022/lib/directives/utils/clickoutside.directive.mjs +0 -41
  194. package/esm2022/lib/ds-ng.component.mjs +0 -11
  195. package/esm2022/lib/ds-ng.service.mjs +0 -14
  196. package/esm2022/lib/services/calendar.service.mjs +0 -51
  197. package/esm2022/lib/services/index.mjs +0 -3
  198. package/esm2022/lib/services/native-modal.service.mjs +0 -60
  199. package/esm2022/lib/services/notification.service.mjs +0 -84
  200. package/esm2022/lib/services/projection.service.mjs +0 -49
  201. package/esm2022/lib/services/tabs.service.mjs +0 -30
  202. package/esm2022/lib/services/theme.service.mjs +0 -30
  203. package/esm2022/lib/services/toast.service.mjs +0 -24
  204. package/esm2022/lib/services/user/profile.service.mjs +0 -26
  205. package/esm2022/lib/types/colors.mjs +0 -2
  206. package/esm2022/lib/types/index.mjs +0 -11
  207. package/esm2022/lib/utils/countryCodes.mjs +0 -1089
  208. package/esm2022/lib/utils/currencyFormat.mjs +0 -7
  209. package/esm2022/lib/utils/dropdown.mjs +0 -85
  210. package/esm2022/lib/utils/formControl.mjs +0 -25
  211. package/esm2022/lib/utils/timestreamFilters.mjs +0 -32
  212. package/esm2022/lib/utils/utils.mjs +0 -71
  213. package/esm2022/public-api.mjs +0 -152
  214. package/esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +0 -5
@@ -1,5 +1,5 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class DsNgComponent {
3
3
  static ɵfac: i0.ɵɵFactoryDeclaration<DsNgComponent, never>;
4
- static ɵcmp: i0.ɵɵComponentDeclaration<DsNgComponent, "bmb-ds-ng", never, {}, {}, never, never, false, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<DsNgComponent, "bmb-ds-ng", never, {}, {}, never, never, true, never>;
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ti-tecnologico-de-monterrey-oficial/ds-ng",
3
- "version": "1.5.1217",
3
+ "version": "1.5.1219",
4
4
  "description": "Design System oficial del Tecnológico de Monterrey - Descubre cómo nuestro Design System no solo da forma a la estética, sino que también impulsa la consistencia en cada rincón de nuestro diseño, proporcionando una base sólida para construir experiencias memorables y coherentes. Únete a nosotros en este viaje donde la creatividad, coherencia y elegancia se encuentran para dar vida a un mundo visualmente armonioso y funcionalmente fluido.",
5
5
  "keywords": [
6
6
  "angular",
@@ -29,8 +29,6 @@
29
29
  },
30
30
  ".": {
31
31
  "types": "./index.d.ts",
32
- "esm2022": "./esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs",
33
- "esm": "./esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs",
34
32
  "default": "./fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs"
35
33
  }
36
34
  },
@@ -1,87 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, input, signal, ViewEncapsulation, } from '@angular/core';
2
- import { BmbFocusElementComponent } from '../bmb-focus-element/bmb-focus-element.component';
3
- import { BmbLayoutDirective } from '../../directives/bmb-layout/bmb-layout.directive';
4
- import { BmbLayoutItemDirective } from '../../directives/bmb-layout/bmb-layout-item.directive';
5
- import { BmbContainerComponent } from '../bmb-container/bmb-container.component';
6
- import { buildErrorMessage } from '../../utils/utils';
7
- import { CommonModule } from '@angular/common';
8
- import * as i0 from "@angular/core";
9
- export class BmbAcademicProgressComponent {
10
- constructor() {
11
- this.accredited = input.required();
12
- this.average = input.required();
13
- this.summary = input.required();
14
- this.metrics = signal([]);
15
- }
16
- ngOnInit() {
17
- const inputs = [];
18
- if (!this.accredited())
19
- inputs.push('accredited');
20
- if (!this.average())
21
- inputs.push('average');
22
- if (!this.summary())
23
- inputs.push('summary');
24
- if (inputs.length) {
25
- throw new Error(`
26
- The ${buildErrorMessage(inputs)} required.
27
- `);
28
- }
29
- this.updateMetrics([
30
- {
31
- name: this.accredited().name,
32
- value: this.accredited().value,
33
- },
34
- {
35
- name: this.average().name,
36
- value: this.average().value,
37
- },
38
- {
39
- name: this.summary().name,
40
- value: this.summary().value,
41
- },
42
- ]);
43
- }
44
- ngOnChanges(changes) {
45
- const accreditedValue = changes['accredited']?.currentValue || this.accredited();
46
- const averageValue = changes['average']?.currentValue || this.average();
47
- const summaryValue = changes['summary']?.currentValue || this.summary();
48
- this.updateMetrics([
49
- {
50
- name: accreditedValue.name,
51
- value: accreditedValue.value,
52
- },
53
- {
54
- name: averageValue.name,
55
- value: averageValue.value,
56
- },
57
- {
58
- name: summaryValue.name,
59
- value: summaryValue.value,
60
- },
61
- ]);
62
- }
63
- updateMetrics(newMetrics) {
64
- this.metrics.set(newMetrics.map((metric) => {
65
- return {
66
- name: metric.name,
67
- value: metric.value,
68
- };
69
- }));
70
- }
71
- shouldShowMetric(metric) {
72
- return typeof metric.value === 'number';
73
- }
74
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbAcademicProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
75
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbAcademicProgressComponent, isStandalone: true, selector: "bmb-academic-progress", inputs: { accredited: { classPropertyName: "accredited", publicName: "accredited", isSignal: true, isRequired: true, transformFunction: null }, average: { classPropertyName: "average", publicName: "average", isSignal: true, isRequired: true, transformFunction: null }, summary: { classPropertyName: "summary", publicName: "summary", isSignal: true, isRequired: true, transformFunction: null } }, usesOnChanges: true, ngImport: i0, template: "<bmb-container class=\"bmb_academic-progress-summary\">\n <section\n class=\"bmb_academic-progress-summary-container\"\n bmbLayout\n margin=\"none\"\n justify=\"spaceAround\"\n [dynamicCols]=\"true\"\n >\n @for (metric of metrics(); track $index) {\n <bmb-focus-element\n bmbLayoutItem\n [title]=\"metric.name\"\n [number]=\"metric.value\"\n [isNormal]=\"true\"\n [isNonFocused]=\"true\"\n />\n }\n </section>\n</bmb-container>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_academic-progress-summary-container{width:100%}.bmb_academic-progress-summary .bmb_container-primary-container{padding:1.5rem .5rem .5rem}.bmb_academic-progress-summary .bmb_container{border-radius:0;border-style:inherit;border-width:0}\n"], dependencies: [{ kind: "component", type: BmbContainerComponent, selector: "bmb-container", inputs: ["appearance", "isHidden"] }, { kind: "component", type: BmbFocusElementComponent, selector: "bmb-focus-element", inputs: ["icon", "number", "title", "isNormal", "isNonFocused", "isInheritedBg"] }, { kind: "directive", type: BmbLayoutDirective, selector: "[bmbLayout]", inputs: ["gapSize", "margin", "dynamicCols", "justify", "alignItems"] }, { kind: "directive", type: BmbLayoutItemDirective, selector: "[bmbLayoutItem]", inputs: ["colSm", "colLg", "marginLeft", "marginRight", "colGrow", "isDynamicItem"] }, { kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
76
- }
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbAcademicProgressComponent, decorators: [{
78
- type: Component,
79
- args: [{ selector: 'bmb-academic-progress', standalone: true, imports: [
80
- BmbContainerComponent,
81
- BmbFocusElementComponent,
82
- BmbLayoutDirective,
83
- BmbLayoutItemDirective,
84
- CommonModule,
85
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<bmb-container class=\"bmb_academic-progress-summary\">\n <section\n class=\"bmb_academic-progress-summary-container\"\n bmbLayout\n margin=\"none\"\n justify=\"spaceAround\"\n [dynamicCols]=\"true\"\n >\n @for (metric of metrics(); track $index) {\n <bmb-focus-element\n bmbLayoutItem\n [title]=\"metric.name\"\n [number]=\"metric.value\"\n [isNormal]=\"true\"\n [isNonFocused]=\"true\"\n />\n }\n </section>\n</bmb-container>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_academic-progress-summary-container{width:100%}.bmb_academic-progress-summary .bmb_container-primary-container{padding:1.5rem .5rem .5rem}.bmb_academic-progress-summary .bmb_container{border-radius:0;border-style:inherit;border-width:0}\n"] }]
86
- }] });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MvYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MvYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFHTCxNQUFNLEVBRU4saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFpQi9DLE1BQU0sT0FBTyw0QkFBNEI7SUFmekM7UUFnQkUsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDakQsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDOUMsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFFOUMsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsRUFBRSxDQUFDLENBQUM7S0FvRXpEO0lBbEVDLFFB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QUNiLGlCQUdjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIHNpZ25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm1iRm9jdXNFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWZvY3VzLWVsZW1lbnQvYm1iLWZvY3VzLWVsZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkxheW91dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWxheW91dC9ibWItbGF5b3V0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCbWJMYXlvdXRJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ibWItbGF5b3V0L2JtYi1sYXlvdXQtaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm1iQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWNvbnRhaW5lci9ibWItY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJQm1iTmFtZVZhbHVlUGFpciB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGJ1aWxkRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWFjYWRlbWljLXByb2dyZXNzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEJtYkNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBCbWJGb2N1c0VsZW1lbnRDb21wb25lbnQsXG4gICAgQm1iTGF5b3V0RGlyZWN0aXZlLFxuICAgIEJtYkxheW91dEl0ZW1EaXJlY3RpdmUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxuICBzdHlsZVVybDogJy4vYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1hY2FkZW1pYy1wcm9ncmVzcy5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJBY2FkZW1pY1Byb2dyZXNzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBhY2NyZWRpdGVkID0gaW5wdXQucmVxdWlyZWQ8SUJtYk5hbWVWYWx1ZVBhaXI+KCk7XG4gIGF2ZXJhZ2UgPSBpbnB1dC5yZXF1aXJlZDxJQm1iTmFtZVZhbHVlUGFpcj4oKTtcbiAgc3VtbWFyeSA9IGlucHV0LnJlcXVpcmVkPElCbWJOYW1lVmFsdWVQYWlyPigpO1xuXG4gIG1ldHJpY3MgPSBzaWduYWw8eyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfVtdPihbXSk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgaW5wdXRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICghdGhpcy5hY2NyZWRpdGVkKCkpIGlucHV0cy5wdXNoKCdhY2NyZWRpdGVkJyk7XG4gICAgaWYgKCF0aGlzLmF2ZXJhZ2UoKSkgaW5wdXRzLnB1c2goJ2F2ZXJhZ2UnKTtcbiAgICBpZiAoIXRoaXMuc3VtbWFyeSgpKSBpbnB1dHMucHVzaCgnc3VtbWFyeScpO1xuXG4gICAgaWYgKGlucHV0cy5sZW5ndGgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYFxuICAgICAgICBUaGUgJHtidWlsZEVycm9yTWVzc2FnZShpbnB1dHMpfSByZXF1aXJlZC5cbiAgICAgICAgYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVNZXRyaWNzKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogdGhpcy5hY2NyZWRpdGVkKCkubmFtZSxcbiAgICAgICAgdmFsdWU6IHRoaXMuYWNjcmVkaXRlZCgpLnZhbHVlIGFzIG51bWJlcixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IHRoaXMuYXZlcmFnZSgpLm5hbWUsXG4gICAgICAgIHZhbHVlOiB0aGlzLmF2ZXJhZ2UoKS52YWx1ZSBhcyBudW1iZXIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiB0aGlzLnN1bW1hcnkoKS5uYW1lLFxuICAgICAgICB2YWx1ZTogdGhpcy5zdW1tYXJ5KCkudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBhY2NyZWRpdGVkVmFsdWUgPVxuICAgICAgY2hhbmdlc1snYWNjcmVkaXRlZCddPy5jdXJyZW50VmFsdWUgfHwgdGhpcy5hY2NyZWRpdGVkKCk7XG4gICAgY29uc3QgYXZlcmFnZVZhbHVlID0gY2hhbmdlc1snYXZlcmFnZSddPy5jdXJyZW50VmFsdWUgfHwgdGhpcy5hdmVyYWdlKCk7XG4gICAgY29uc3Qgc3VtbWFyeVZhbHVlID0gY2hhbmdlc1snc3VtbWFyeSddPy5jdXJyZW50VmFsdWUgfHwgdGhpcy5zdW1tYXJ5KCk7XG5cbiAgICB0aGlzLnVwZGF0ZU1ldHJpY3MoW1xuICAgICAge1xuICAgICAgICBuYW1lOiBhY2NyZWRpdGVkVmFsdWUubmFtZSxcbiAgICAgICAgdmFsdWU6IGFjY3JlZGl0ZWRWYWx1ZS52YWx1ZSBhcyBudW1iZXIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBhdmVyYWdlVmFsdWUubmFtZSxcbiAgICAgICAgdmFsdWU6IGF2ZXJhZ2VWYWx1ZS52YWx1ZSBhcyBudW1iZXIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBzdW1tYXJ5VmFsdWUubmFtZSxcbiAgICAgICAgdmFsdWU6IHN1bW1hcnlWYWx1ZS52YWx1ZSBhcyBudW1iZXIsXG4gICAgICB9LFxuICAgIF0pO1xuICB9XG5cbiAgdXBkYXRlTWV0cmljcyhuZXdNZXRyaWNzOiB7IG5hbWU6IHN0cmluZzsgdmFsdWU6IG51bWJlciB9W10pOiB2b2lkIHtcbiAgICB0aGlzLm1ldHJpY3Muc2V0KFxuICAgICAgbmV3TWV0cmljcy5tYXAoKG1ldHJpYykgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6IG1ldHJpYy5uYW1lLFxuICAgICAgICAgIHZhbHVlOiBtZXRyaWMudmFsdWUsXG4gICAgICAgIH07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgc2hvdWxkU2hvd01ldHJpYyhtZXRyaWM6IElCbWJOYW1lVmFsdWVQYWlyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBtZXRyaWMudmFsdWUgPT09ICdudW1iZXInO1xuICB9XG59XG4iLCI8Ym1iLWNvbnRhaW5lciBjbGFzcz1cImJtYl9hY2FkZW1pYy1wcm9ncmVzcy1zdW1tYXJ5XCI+XG4gIDxzZWN0aW9uXG4gICAgY2xhc3M9XCJibWJfYWNhZGVtaWMtcHJvZ3Jlc3Mtc3VtbWFyeS1jb250YWluZXJcIlxuICAgIGJtYkxheW91dFxuICAgIG1hcmdpbj1cIm5vbmVcIlxuICAgIGp1c3RpZnk9XCJzcGFjZUFyb3VuZFwiXG4gICAgW2R5bmFtaWNDb2xzXT1cInRydWVcIlxuICA+XG4gICAgQGZvciAobWV0cmljIG9mIG1ldHJpY3MoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8Ym1iLWZvY3VzLWVsZW1lbnRcbiAgICAgICAgYm1iTGF5b3V0SXRlbVxuICAgICAgICBbdGl0bGVdPVwibWV0cmljLm5hbWVcIlxuICAgICAgICBbbnVtYmVyXT1cIm1ldHJpYy52YWx1ZVwiXG4gICAgICAgIFtpc05vcm1hbF09XCJ0cnVlXCJcbiAgICAgICAgW2lzTm9uRm9jdXNlZF09XCJ0cnVlXCJcbiAgICAgIC8+XG4gICAgfVxuICA8L3NlY3Rpb24+XG48L2JtYi1jb250YWluZXI+XG4iXX0=
@@ -1,159 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, ViewEncapsulation, ContentChild, input, output, computed, signal, Output, EventEmitter, } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { BmbIconComponent } from '../bmb-icon/bmb-icon.component';
4
- import { BmbLayoutItemDirective } from '../../directives/bmb-layout/bmb-layout-item.directive';
5
- import { BmbLayoutDirective } from '../../directives/bmb-layout/bmb-layout.directive';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- const calculateSize = (pixels) => {
9
- return pixels.map((size) => `var(--bmb-radius-${size})`).join(' ');
10
- };
11
- export class BmbAccordionComponent {
12
- constructor() {
13
- this.appearanceContrast = input('default');
14
- this.borderRadius = input('m');
15
- this.margin = input('m');
16
- this.paddingHeader = input('m');
17
- this.paddingContent = input('m');
18
- this.icon = input('');
19
- this.accordionId = input(null);
20
- this.hideToggle = input(false);
21
- this.active = input(false);
22
- this.disabled = input(false);
23
- this.expanded = input();
24
- this.closed = output();
25
- this.lockToggle = input(false);
26
- this.opened = new EventEmitter();
27
- this.onClick = output();
28
- this._expanded = signal(false);
29
- this._active = signal(false);
30
- this._disabled = signal(false);
31
- this.isOpen = computed(() => {
32
- if (this.expanded() != undefined) {
33
- if (this.expanded()) {
34
- this.opened.emit();
35
- }
36
- else {
37
- this.closed.emit();
38
- }
39
- return this.expanded();
40
- }
41
- else {
42
- return this._expanded();
43
- }
44
- });
45
- }
46
- ngOnInit() {
47
- this._expanded.update((current) => this.expanded() || current);
48
- this._active.update((current) => this.active() || current);
49
- this._disabled.update((current) => this.disabled() || current);
50
- }
51
- ngOnChanges(changes) {
52
- if (changes['expanded']) {
53
- this._expanded.update(() => this.expanded() || false);
54
- }
55
- if (changes['active']) {
56
- this._active.update(() => this.active() || false);
57
- }
58
- if (changes['disabled']) {
59
- this._disabled.update(() => this.disabled() || false);
60
- }
61
- }
62
- getClassesAccordion() {
63
- const classNames = [];
64
- if (typeof this.borderRadius() === 'string') {
65
- classNames.push(`bmb_radius-${this.borderRadius()}`);
66
- }
67
- if (typeof this.margin() === 'string') {
68
- classNames.push(`bmb_margin-${this.margin()}`);
69
- }
70
- if (this.appearanceContrast() === 'primary') {
71
- classNames.push('bmb_accordion-primary');
72
- }
73
- if (this.appearanceContrast() === 'alternative') {
74
- classNames.push('bmb_accordion-alternative');
75
- }
76
- if (this._disabled()) {
77
- classNames.push('disabled');
78
- }
79
- else {
80
- if (this._active()) {
81
- classNames.push('active');
82
- }
83
- }
84
- return classNames;
85
- }
86
- getClassesHeader() {
87
- const classNames = [];
88
- if (typeof this.paddingHeader() === 'string') {
89
- classNames.push(`bmb_padding-${this.paddingHeader()}`);
90
- }
91
- if (this.hideToggle() && !this.icon()) {
92
- classNames.push('bmb_accordion-header');
93
- }
94
- else {
95
- classNames.push('bmb_accordion-header-icon');
96
- }
97
- if (this._expanded()) {
98
- classNames.push('bmb_accordion-header-open');
99
- }
100
- return classNames;
101
- }
102
- getClassesContent() {
103
- let classNames = 'bmb_accordion-content';
104
- if (typeof this.paddingContent() === 'string') {
105
- classNames = classNames + ` bmb_padding-${this.paddingContent()}`;
106
- }
107
- return classNames;
108
- }
109
- getStyles() {
110
- const styles = {};
111
- if (typeof this.borderRadius() !== 'string') {
112
- styles['border-radius'] = calculateSize(this.borderRadius());
113
- }
114
- if (typeof this.margin() !== 'string') {
115
- styles.margin = calculateSize(this.margin());
116
- }
117
- return styles;
118
- }
119
- toggle(event) {
120
- if (this.lockToggle())
121
- return;
122
- if (!this._disabled()) {
123
- this._expanded.update((current) => !current);
124
- this._active.update((current) => !current);
125
- this.onClick.emit(event || new MouseEvent('click'));
126
- if (this.expanded() == undefined) {
127
- if (this.isOpen()) {
128
- this.opened.emit();
129
- }
130
- else {
131
- this.closed.emit();
132
- }
133
- }
134
- }
135
- }
136
- getIconToggle() {
137
- return this.isOpen() ? 'expand_less' : 'expand_more';
138
- }
139
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
140
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbAccordionComponent, isStandalone: true, selector: "bmb-accordion", inputs: { appearanceContrast: { classPropertyName: "appearanceContrast", publicName: "appearanceContrast", isSignal: true, isRequired: false, transformFunction: null }, borderRadius: { classPropertyName: "borderRadius", publicName: "borderRadius", isSignal: true, isRequired: false, transformFunction: null }, margin: { classPropertyName: "margin", publicName: "margin", isSignal: true, isRequired: false, transformFunction: null }, paddingHeader: { classPropertyName: "paddingHeader", publicName: "paddingHeader", isSignal: true, isRequired: false, transformFunction: null }, paddingContent: { classPropertyName: "paddingContent", publicName: "paddingContent", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, accordionId: { classPropertyName: "accordionId", publicName: "accordionId", isSignal: true, isRequired: false, transformFunction: null }, hideToggle: { classPropertyName: "hideToggle", publicName: "hideToggle", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null }, lockToggle: { classPropertyName: "lockToggle", publicName: "lockToggle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed", opened: "opened", onClick: "onClick" }, queries: [{ propertyName: "bmbAccordionContent", first: true, predicate: ["bmbAccordionContent"], descendants: true }, { propertyName: "bmbAccordionHeader", first: true, predicate: ["bmbAccordionHeader"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<section\n [id]=\"accordionId()\"\n class=\"bmb_accordion\"\n [ngClass]=\"getClassesAccordion()\"\n [ngStyle]=\"getStyles()\"\n>\n @if (disabled()) {\n <section class=\"bmb_accordion-overlay\"></section>\n }\n <header\n [ngClass]=\"getClassesHeader()\"\n (click)=\"toggle($event)\"\n bmbLayout\n margin=\"none\"\n alignItems=\"center\"\n justify=\"spaceBetween\"\n >\n <div bmbLayoutItem margin=\"none\" [isDynamicItem]=\"true\" [colGrow]=\"1\">\n <ng-container [ngTemplateOutlet]=\"bmbAccordionHeader\" />\n </div>\n <div bmbLayoutItem margin=\"none\" [isDynamicItem]=\"true\">\n @if (icon()) {\n <bmb-icon [icon]=\"icon()\" alt=\"Accordion icon\" />\n } @else if (!hideToggle()) {\n <bmb-icon [icon]=\"getIconToggle()\" alt=\"Accordion toggle icon\" />\n }\n </div>\n </header>\n @if (!disabled()) {\n <section\n [class]=\"getClassesContent()\"\n [ngClass]=\"{\n 'bmb_accordion-content-open': this._expanded()\n }\"\n >\n <ng-container [ngTemplateOutlet]=\"bmbAccordionContent\" />\n </section>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_accordion{font-family:Poppins-Regular,sans-serif;font-size:.75rem;background-color:transparent;border:.0625rem solid var(--general_contrasts-container-outline);color:var(--general_contrasts-100);position:relative}.bmb_accordion-header,.bmb_accordion-header-icon{font-family:Poppins-Regular,sans-serif;font-size:.75rem;background-color:transparent;border-radius:1rem;cursor:pointer}.bmb_accordion-header-icon bmb-icon{font-size:1.125rem}.bmb_accordion-header-open{background-color:var(--menu_select-on-surface-hovered-w-checkbox);border-radius:1rem 1rem 0 0;color:var(--general_contrasts-100)}.bmb_accordion-content{font-family:Poppins-Regular,sans-serif;font-size:.75rem;border-top:.0625rem solid var(--buttons-inactive-step);display:none;max-height:0;opacity:0;transition:max-height .5s ease,opacity .5s ease}.bmb_accordion-content.bmb_accordion-content-open,.bmb_accordion-content-init-open{display:block;max-height:100%;opacity:1}.bmb_accordion-overlay{cursor:not-allowed;height:100%;left:0;position:absolute;top:0;width:100%;z-index:10}.bmb_accordion.disabled{opacity:.5}.bmb_accordion.active{border-color:RGBA(var(--color-mariner-700))}.bmb_accordion.active .bmb_accordion-header,.bmb_accordion.active .bmb_accordion-header-icon{background-color:var(--menu_select-on-surface-hovered-w-checkbox);color:var(--general_contrasts-100)}.bmb_accordion.active .bmb_accordion-content{border-top-color:RGBA(var(--color-mariner-700))}.bmb_accordion:hover:not(.active):not(.disabled):hover{border-color:RGBA(var(--color-mariner-700))}.bmb_accordion-primary .bmb_accordion-header,.bmb_accordion-primary .bmb_accordion-header-icon{background-color:var(--containers-background);color:var(--general_contrasts-100)}.bmb_accordion-alternative .bmb_accordion-header,.bmb_accordion-alternative .bmb_accordion-header-icon{background-color:var(--containers-main);color:var(--general_contrasts-100)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "directive", type: BmbLayoutDirective, selector: "[bmbLayout]", inputs: ["gapSize", "margin", "dynamicCols", "justify", "alignItems"] }, { kind: "directive", type: BmbLayoutItemDirective, selector: "[bmbLayoutItem]", inputs: ["colSm", "colLg", "marginLeft", "marginRight", "colGrow", "isDynamicItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
141
- }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbAccordionComponent, decorators: [{
143
- type: Component,
144
- args: [{ selector: 'bmb-accordion', standalone: true, imports: [
145
- CommonModule,
146
- BmbIconComponent,
147
- BmbLayoutDirective,
148
- BmbLayoutItemDirective,
149
- ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<section\n [id]=\"accordionId()\"\n class=\"bmb_accordion\"\n [ngClass]=\"getClassesAccordion()\"\n [ngStyle]=\"getStyles()\"\n>\n @if (disabled()) {\n <section class=\"bmb_accordion-overlay\"></section>\n }\n <header\n [ngClass]=\"getClassesHeader()\"\n (click)=\"toggle($event)\"\n bmbLayout\n margin=\"none\"\n alignItems=\"center\"\n justify=\"spaceBetween\"\n >\n <div bmbLayoutItem margin=\"none\" [isDynamicItem]=\"true\" [colGrow]=\"1\">\n <ng-container [ngTemplateOutlet]=\"bmbAccordionHeader\" />\n </div>\n <div bmbLayoutItem margin=\"none\" [isDynamicItem]=\"true\">\n @if (icon()) {\n <bmb-icon [icon]=\"icon()\" alt=\"Accordion icon\" />\n } @else if (!hideToggle()) {\n <bmb-icon [icon]=\"getIconToggle()\" alt=\"Accordion toggle icon\" />\n }\n </div>\n </header>\n @if (!disabled()) {\n <section\n [class]=\"getClassesContent()\"\n [ngClass]=\"{\n 'bmb_accordion-content-open': this._expanded()\n }\"\n >\n <ng-container [ngTemplateOutlet]=\"bmbAccordionContent\" />\n </section>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_accordion{font-family:Poppins-Regular,sans-serif;font-size:.75rem;background-color:transparent;border:.0625rem solid var(--general_contrasts-container-outline);color:var(--general_contrasts-100);position:relative}.bmb_accordion-header,.bmb_accordion-header-icon{font-family:Poppins-Regular,sans-serif;font-size:.75rem;background-color:transparent;border-radius:1rem;cursor:pointer}.bmb_accordion-header-icon bmb-icon{font-size:1.125rem}.bmb_accordion-header-open{background-color:var(--menu_select-on-surface-hovered-w-checkbox);border-radius:1rem 1rem 0 0;color:var(--general_contrasts-100)}.bmb_accordion-content{font-family:Poppins-Regular,sans-serif;font-size:.75rem;border-top:.0625rem solid var(--buttons-inactive-step);display:none;max-height:0;opacity:0;transition:max-height .5s ease,opacity .5s ease}.bmb_accordion-content.bmb_accordion-content-open,.bmb_accordion-content-init-open{display:block;max-height:100%;opacity:1}.bmb_accordion-overlay{cursor:not-allowed;height:100%;left:0;position:absolute;top:0;width:100%;z-index:10}.bmb_accordion.disabled{opacity:.5}.bmb_accordion.active{border-color:RGBA(var(--color-mariner-700))}.bmb_accordion.active .bmb_accordion-header,.bmb_accordion.active .bmb_accordion-header-icon{background-color:var(--menu_select-on-surface-hovered-w-checkbox);color:var(--general_contrasts-100)}.bmb_accordion.active .bmb_accordion-content{border-top-color:RGBA(var(--color-mariner-700))}.bmb_accordion:hover:not(.active):not(.disabled):hover{border-color:RGBA(var(--color-mariner-700))}.bmb_accordion-primary .bmb_accordion-header,.bmb_accordion-primary .bmb_accordion-header-icon{background-color:var(--containers-background);color:var(--general_contrasts-100)}.bmb_accordion-alternative .bmb_accordion-header,.bmb_accordion-alternative .bmb_accordion-header-icon{background-color:var(--containers-main);color:var(--general_contrasts-100)}\n"] }]
150
- }], propDecorators: { bmbAccordionContent: [{
151
- type: ContentChild,
152
- args: ['bmbAccordionContent']
153
- }], bmbAccordionHeader: [{
154
- type: ContentChild,
155
- args: ['bmbAccordionHeader']
156
- }], opened: [{
157
- type: Output
158
- }] } });
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWFjY29yZGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWFjY29yZGlvbi9ibWItYWNjb3JkaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNjb3JkaW9uL2JtYi1hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFlBQVksRUFFWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFFBQVEsRUFDUixNQUFNLEVBRU4sTUFBTSxFQUNOLFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDL0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0RBQWtELENBQUM7OztBQUd0RixNQUFNLGFBQWEsR0FBUSxDQUFDLE1BQWdCLEVBQVUsRUFBRTtJQUN0RCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNyRSxDQUFDLENBQUM7QUFnQkYsTUFBTSxPQUFPLHFCQUFxQjtJQWRsQztRQWlCUyx1QkFBa0IsR0FBRyxLQUFLLENBQWUsU0FBUyxDQUFDLENBQUM7UUFDcEQsaUJBQVksR0FBRyxLQUFLLENBQTBCLEdBQUcsQ0FBQyxDQUFDO1FBQ25ELFdBQU0sR0FBRyxLQUFLLENBQTBCLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLGtCQUFhLEdBQUcsS0FBSyxDQUEwQixHQUFHLENBQUMsQ0FBQztRQUNwRCxtQkFBYyxHQUFHLEtBQUssQ0FBMEIsR0FBRyxDQUFDLENBQUM7UUFDckQsU0FBSSxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUN6QixnQkFBVyxHQUFHLEtBQUssQ0FBZ0IsSUFBSSxDQUFDLENBQUM7UUFDekMsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuQyxXQUFNLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9CLGFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDakMsYUFBUSxHQUFHLEtBQUssRUFBdUIsQ0FBQztRQUN4QyxXQUFNLEdBQUcsTUFBTSxFQUFRLENBQUM7UUFDeEIsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNoQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNyQyxZQUFPLEdBQUcsTUFBTSxFQUFjLENBQUM7UUFDL0IsY0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixZQUFPLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLGNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUIsV0FBTSxHQUFHLFFBQVEsQ0FBc0IsR0FBRyxFQUFFO1lBQ2pELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLFNBQVMsRUFBRTtnQkFDaEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7b0JBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7aUJBQ3BCO3FCQUFNO29CQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7aUJBQ3BCO2dCQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3hCO2lCQUFNO2dCQUNMLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FxSEo7SUFuSEMsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksT0FBTyxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLE9BQU8sQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEtBQUssQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEtBQUssQ0FBQyxDQUFDO1NBQ25EO1FBRUQsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEtBQUssQ0FBQyxDQUFDO1NBQ3ZEO0lBQ0gsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFFdEIsSUFBSSxPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxRQUFRLEVBQUU7WUFDM0MsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDdEQ7UUFFRCxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLFFBQVEsRUFBRTtZQUNyQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNoRDtRQUVELElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssU0FBUyxFQUFFO1lBQzNDLFVBQVUsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQztTQUMxQztRQUVELElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssYUFBYSxFQUFFO1lBQy9DLFVBQVUsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUM5QztRQUVELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDN0I7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUNsQixVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzNCO1NBQ0Y7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBRXRCLElBQUksT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssUUFBUSxFQUFFO1lBQzVDLFVBQVUsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3hEO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDckMsVUFBVSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1NBQ3pDO2FBQU07WUFDTCxVQUFVLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUM7U0FDOUM7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNwQixVQUFVLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUM7U0FDOUM7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxVQUFVLEdBQUcsdUJBQXVCLENBQUM7UUFFekMsSUFBSSxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxRQUFRLEVBQUU7WUFDN0MsVUFBVSxHQUFHLFVBQVUsR0FBRyxnQkFBZ0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7U0FDbkU7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUV2QixJQUFJLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLFFBQVEsRUFBRTtZQUMzQyxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQzlEO1FBRUQsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxRQUFRLEVBQUU7WUFDckMsTUFBTSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDOUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWtCO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUFFLE9BQU87UUFFOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUVwRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxTQUFTLEVBQUU7Z0JBQ2hDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFO29CQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUNwQjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUNwQjthQUNGO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUN2RCxDQUFDOytHQXJKVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixzK0RDekNsQywwbUNBdUNBLDZ2UERSSSxZQUFZLHlYQUNaLGdCQUFnQiw4SkFDaEIsa0JBQWtCLCtIQUNsQixzQkFBc0I7OzRGQU9iLHFCQUFxQjtrQkFkakMsU0FBUzsrQkFDRSxlQUFlLGNBQ2IsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLHNCQUFzQjtxQkFDdkIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OEJBR0EsbUJBQW1CO3NCQUF2RCxZQUFZO3VCQUFDLHFCQUFxQjtnQkFDQyxrQkFBa0I7c0JBQXJELFlBQVk7dUJBQUMsb0JBQW9CO2dCQWN4QixNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgQ29udGVudENoaWxkLFxuICBUZW1wbGF0ZVJlZixcbiAgaW5wdXQsXG4gIG91dHB1dCxcbiAgY29tcHV0ZWQsXG4gIHNpZ25hbCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25DaGFuZ2VzLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTaXplTmFtZXMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBCbWJJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWljb24vYm1iLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkxheW91dEl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1sYXlvdXQvYm1iLWxheW91dC1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCbWJMYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1sYXlvdXQvYm1iLWxheW91dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSUJtYkNvbnRyYXN0IH0gZnJvbSAnLi4vLi4vdHlwZXMvY29sb3JzJztcblxuY29uc3QgY2FsY3VsYXRlU2l6ZTogYW55ID0gKHBpeGVsczogc3RyaW5nW10pOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gcGl4ZWxzLm1hcCgoc2l6ZSkgPT4gYHZhcigtLWJtYi1yYWRpdXMtJHtzaXplfSlgKS5qb2luKCcgJyk7XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItYWNjb3JkaW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICAgIEJtYkxheW91dERpcmVjdGl2ZSxcbiAgICBCbWJMYXlvdXRJdGVtRGlyZWN0aXZlLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLWFjY29yZGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9ibWItYWNjb3JkaW9uLmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkFjY29yZGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQENvbnRlbnRDaGlsZCgnYm1iQWNjb3JkaW9uQ29udGVudCcpIGJtYkFjY29yZGlvbkNvbnRlbnQhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAQ29udGVudENoaWxkKCdibWJBY2NvcmRpb25IZWFkZXInKSBibWJBY2NvcmRpb25IZWFkZXIhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwdWJsaWMgYXBwZWFyYW5jZUNvbnRyYXN0ID0gaW5wdXQ8SUJtYkNvbnRyYXN0PignZGVmYXVsdCcpO1xuICBwdWJsaWMgYm9yZGVyUmFkaXVzID0gaW5wdXQ8U2l6ZU5hbWVzIHwgU2l6ZU5hbWVzW10+KCdtJyk7XG4gIHB1YmxpYyBtYXJnaW4gPSBpbnB1dDxTaXplTmFtZXMgfCBTaXplTmFtZXNbXT4oJ20nKTtcbiAgcHVibGljIHBhZGRpbmdIZWFkZXIgPSBpbnB1dDxTaXplTmFtZXMgfCBTaXplTmFtZXNbXT4oJ20nKTtcbiAgcHVibGljIHBhZGRpbmdDb250ZW50ID0gaW5wdXQ8U2l6ZU5hbWVzIHwgU2l6ZU5hbWVzW10+KCdtJyk7XG4gIHB1YmxpYyBpY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHB1YmxpYyBhY2NvcmRpb25JZCA9IGlucHV0PG51bWJlciB8IG51bGw+KG51bGwpO1xuICBwdWJsaWMgaGlkZVRvZ2dsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIGFjdGl2ZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgZXhwYW5kZWQgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkPigpO1xuICBwdWJsaWMgY2xvc2VkID0gb3V0cHV0PHZvaWQ+KCk7XG4gIHB1YmxpYyBsb2NrVG9nZ2xlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBAT3V0cHV0KCkgb3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBwdWJsaWMgb25DbGljayA9IG91dHB1dDxNb3VzZUV2ZW50PigpO1xuICBwdWJsaWMgX2V4cGFuZGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgcHVibGljIF9hY3RpdmUgPSBzaWduYWwoZmFsc2UpO1xuICBwdWJsaWMgX2Rpc2FibGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgcHVibGljIGlzT3BlbiA9IGNvbXB1dGVkPGJvb2xlYW4gfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBpZiAodGhpcy5leHBhbmRlZCgpICE9IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHRoaXMuZXhwYW5kZWQoKSkge1xuICAgICAgICB0aGlzLm9wZW5lZC5lbWl0KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNsb3NlZC5lbWl0KCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmV4cGFuZGVkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLl9leHBhbmRlZCgpO1xuICAgIH1cbiAgfSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZXhwYW5kZWQudXBkYXRlKChjdXJyZW50KSA9PiB0aGlzLmV4cGFuZGVkKCkgfHwgY3VycmVudCk7XG4gICAgdGhpcy5fYWN0aXZlLnVwZGF0ZSgoY3VycmVudCkgPT4gdGhpcy5hY3RpdmUoKSB8fCBjdXJyZW50KTtcbiAgICB0aGlzLl9kaXNhYmxlZC51cGRhdGUoKGN1cnJlbnQpID0+IHRoaXMuZGlzYWJsZWQoKSB8fCBjdXJyZW50KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snZXhwYW5kZWQnXSkge1xuICAgICAgdGhpcy5fZXhwYW5kZWQudXBkYXRlKCgpID0+IHRoaXMuZXhwYW5kZWQoKSB8fCBmYWxzZSk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2FjdGl2ZSddKSB7XG4gICAgICB0aGlzLl9hY3RpdmUudXBkYXRlKCgpID0+IHRoaXMuYWN0aXZlKCkgfHwgZmFsc2UpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzWydkaXNhYmxlZCddKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZC51cGRhdGUoKCkgPT4gdGhpcy5kaXNhYmxlZCgpIHx8IGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBnZXRDbGFzc2VzQWNjb3JkaW9uKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjbGFzc05hbWVzID0gW107XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuYm9yZGVyUmFkaXVzKCkgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjbGFzc05hbWVzLnB1c2goYGJtYl9yYWRpdXMtJHt0aGlzLmJvcmRlclJhZGl1cygpfWApO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdGhpcy5tYXJnaW4oKSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNsYXNzTmFtZXMucHVzaChgYm1iX21hcmdpbi0ke3RoaXMubWFyZ2luKCl9YCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuYXBwZWFyYW5jZUNvbnRyYXN0KCkgPT09ICdwcmltYXJ5Jykge1xuICAgICAgY2xhc3NOYW1lcy5wdXNoKCdibWJfYWNjb3JkaW9uLXByaW1hcnknKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hcHBlYXJhbmNlQ29udHJhc3QoKSA9PT0gJ2FsdGVybmF0aXZlJykge1xuICAgICAgY2xhc3NOYW1lcy5wdXNoKCdibWJfYWNjb3JkaW9uLWFsdGVybmF0aXZlJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkKCkpIHtcbiAgICAgIGNsYXNzTmFtZXMucHVzaCgnZGlzYWJsZWQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuX2FjdGl2ZSgpKSB7XG4gICAgICAgIGNsYXNzTmFtZXMucHVzaCgnYWN0aXZlJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzTmFtZXM7XG4gIH1cblxuICBnZXRDbGFzc2VzSGVhZGVyKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjbGFzc05hbWVzID0gW107XG5cbiAgICBpZiAodHlwZW9mIHRoaXMucGFkZGluZ0hlYWRlcigpID09PSAnc3RyaW5nJykge1xuICAgICAgY2xhc3NOYW1lcy5wdXNoKGBibWJfcGFkZGluZy0ke3RoaXMucGFkZGluZ0hlYWRlcigpfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmhpZGVUb2dnbGUoKSAmJiAhdGhpcy5pY29uKCkpIHtcbiAgICAgIGNsYXNzTmFtZXMucHVzaCgnYm1iX2FjY29yZGlvbi1oZWFkZXInKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2xhc3NOYW1lcy5wdXNoKCdibWJfYWNjb3JkaW9uLWhlYWRlci1pY29uJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2V4cGFuZGVkKCkpIHtcbiAgICAgIGNsYXNzTmFtZXMucHVzaCgnYm1iX2FjY29yZGlvbi1oZWFkZXItb3BlbicpO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc05hbWVzO1xuICB9XG5cbiAgZ2V0Q2xhc3Nlc0NvbnRlbnQoKTogc3RyaW5nIHtcbiAgICBsZXQgY2xhc3NOYW1lcyA9ICdibWJfYWNjb3JkaW9uLWNvbnRlbnQnO1xuXG4gICAgaWYgKHR5cGVvZiB0aGlzLnBhZGRpbmdDb250ZW50KCkgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjbGFzc05hbWVzID0gY2xhc3NOYW1lcyArIGAgYm1iX3BhZGRpbmctJHt0aGlzLnBhZGRpbmdDb250ZW50KCl9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gY2xhc3NOYW1lcztcbiAgfVxuXG4gIGdldFN0eWxlcygpOiBhbnkge1xuICAgIGNvbnN0IHN0eWxlczogYW55ID0ge307XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuYm9yZGVyUmFkaXVzKCkgIT09ICdzdHJpbmcnKSB7XG4gICAgICBzdHlsZXNbJ2JvcmRlci1yYWRpdXMnXSA9IGNhbGN1bGF0ZVNpemUodGhpcy5ib3JkZXJSYWRpdXMoKSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB0aGlzLm1hcmdpbigpICE9PSAnc3RyaW5nJykge1xuICAgICAgc3R5bGVzLm1hcmdpbiA9IGNhbGN1bGF0ZVNpemUodGhpcy5tYXJnaW4oKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0eWxlcztcbiAgfVxuXG4gIHRvZ2dsZShldmVudD86IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sb2NrVG9nZ2xlKCkpIHJldHVybjtcblxuICAgIGlmICghdGhpcy5fZGlzYWJsZWQoKSkge1xuICAgICAgdGhpcy5fZXhwYW5kZWQudXBkYXRlKChjdXJyZW50KSA9PiAhY3VycmVudCk7XG4gICAgICB0aGlzLl9hY3RpdmUudXBkYXRlKChjdXJyZW50KSA9PiAhY3VycmVudCk7XG4gICAgICB0aGlzLm9uQ2xpY2suZW1pdChldmVudCB8fCBuZXcgTW91c2VFdmVudCgnY2xpY2snKSk7XG5cbiAgICAgIGlmICh0aGlzLmV4cGFuZGVkKCkgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICh0aGlzLmlzT3BlbigpKSB7XG4gICAgICAgICAgdGhpcy5vcGVuZWQuZW1pdCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldEljb25Ub2dnbGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc09wZW4oKSA/ICdleHBhbmRfbGVzcycgOiAnZXhwYW5kX21vcmUnO1xuICB9XG59XG4iLCI8c2VjdGlvblxuICBbaWRdPVwiYWNjb3JkaW9uSWQoKVwiXG4gIGNsYXNzPVwiYm1iX2FjY29yZGlvblwiXG4gIFtuZ0NsYXNzXT1cImdldENsYXNzZXNBY2NvcmRpb24oKVwiXG4gIFtuZ1N0eWxlXT1cImdldFN0eWxlcygpXCJcbj5cbiAgQGlmIChkaXNhYmxlZCgpKSB7XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfYWNjb3JkaW9uLW92ZXJsYXlcIj48L3NlY3Rpb24+XG4gIH1cbiAgPGhlYWRlclxuICAgIFtuZ0NsYXNzXT1cImdldENsYXNzZXNIZWFkZXIoKVwiXG4gICAgKGNsaWNrKT1cInRvZ2dsZSgkZXZlbnQpXCJcbiAgICBibWJMYXlvdXRcbiAgICBtYXJnaW49XCJub25lXCJcbiAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICBqdXN0aWZ5PVwic3BhY2VCZXR3ZWVuXCJcbiAgPlxuICAgIDxkaXYgYm1iTGF5b3V0SXRlbSBtYXJnaW49XCJub25lXCIgW2lzRHluYW1pY0l0ZW1dPVwidHJ1ZVwiIFtjb2xHcm93XT1cIjFcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYm1iQWNjb3JkaW9uSGVhZGVyXCIgLz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGJtYkxheW91dEl0ZW0gbWFyZ2luPVwibm9uZVwiIFtpc0R5bmFtaWNJdGVtXT1cInRydWVcIj5cbiAgICAgIEBpZiAoaWNvbigpKSB7XG4gICAgICAgIDxibWItaWNvbiBbaWNvbl09XCJpY29uKClcIiBhbHQ9XCJBY2NvcmRpb24gaWNvblwiIC8+XG4gICAgICB9IEBlbHNlIGlmICghaGlkZVRvZ2dsZSgpKSB7XG4gICAgICAgIDxibWItaWNvbiBbaWNvbl09XCJnZXRJY29uVG9nZ2xlKClcIiBhbHQ9XCJBY2NvcmRpb24gdG9nZ2xlIGljb25cIiAvPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L2hlYWRlcj5cbiAgQGlmICghZGlzYWJsZWQoKSkge1xuICAgIDxzZWN0aW9uXG4gICAgICBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc0NvbnRlbnQoKVwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdibWJfYWNjb3JkaW9uLWNvbnRlbnQtb3Blbic6IHRoaXMuX2V4cGFuZGVkKClcbiAgICAgIH1cIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYm1iQWNjb3JkaW9uQ29udGVudFwiIC8+XG4gICAgPC9zZWN0aW9uPlxuICB9XG48L3NlY3Rpb24+XG4iXX0=