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

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 (232) 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 +891 -720
  4. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
  5. package/lib/components/bmb-alert-center/bmb-alert-center.component.d.ts +3 -3
  6. package/lib/components/bmb-calendar/bmb-calendar.component.d.ts +2 -0
  7. package/lib/components/bmb-container-button/bmb-container-button.component.d.ts +9 -0
  8. package/lib/components/bmb-filter-card/bmb-filter-card.interface.d.ts +2 -0
  9. package/lib/components/bmb-modal/bmb-modal.interface.d.ts +9 -2
  10. package/lib/components/bmb-modal/bmb-native-modal.component.d.ts +14 -6
  11. package/lib/components/bmb-portal/bmb-portal.component.d.ts +6 -2
  12. package/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.d.ts +42 -0
  13. package/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.d.ts +1 -7
  14. package/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.d.ts +8 -8
  15. package/lib/components/bmb-top-bar/bmb-top-bar.component.d.ts +16 -17
  16. package/lib/components/bmb-totp/bmb-totp.component.d.ts +1 -0
  17. package/lib/ds-ng.component.d.ts +1 -1
  18. package/lib/services/projection.service.d.ts +30 -0
  19. package/package.json +2 -4
  20. package/public-api.d.ts +1 -0
  21. package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +0 -87
  22. package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +0 -159
  23. package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +0 -150
  24. package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +0 -49
  25. package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +0 -31
  26. package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +0 -35
  27. package/esm2022/lib/components/bmb-advertisement-card/types.mjs +0 -2
  28. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +0 -40
  29. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +0 -18
  30. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +0 -148
  31. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +0 -52
  32. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +0 -196
  33. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +0 -62
  34. package/esm2022/lib/components/bmb-alert-center/types.mjs +0 -2
  35. package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +0 -26
  36. package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +0 -26
  37. package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +0 -27
  38. package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +0 -42
  39. package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +0 -55
  40. package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +0 -30
  41. package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +0 -262
  42. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +0 -95
  43. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +0 -40
  44. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +0 -68
  45. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +0 -41
  46. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-event-list/bmb-calendar-template-event-list.component.mjs +0 -63
  47. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +0 -95
  48. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +0 -45
  49. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +0 -54
  50. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +0 -24
  51. package/esm2022/lib/components/bmb-calendar/types.mjs +0 -2
  52. package/esm2022/lib/components/bmb-calendar/utils.mjs +0 -96
  53. package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +0 -154
  54. package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +0 -76
  55. package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +0 -80
  56. package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +0 -175
  57. package/esm2022/lib/components/bmb-chat-bar/bot_list.mjs +0 -57
  58. package/esm2022/lib/components/bmb-chat-bar/types.mjs +0 -2
  59. package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +0 -56
  60. package/esm2022/lib/components/bmb-chat-bubbles/types.mjs +0 -2
  61. package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +0 -46
  62. package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +0 -80
  63. package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +0 -36
  64. package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +0 -27
  65. package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +0 -83
  66. package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +0 -69
  67. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +0 -211
  68. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +0 -123
  69. package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +0 -54
  70. package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +0 -25
  71. package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +0 -34
  72. package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +0 -54
  73. package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +0 -200
  74. package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +0 -28
  75. package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +0 -175
  76. package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +0 -76
  77. package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +0 -78
  78. package/esm2022/lib/components/bmb-fab/bmb-fab-.interface.mjs +0 -9
  79. package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +0 -37
  80. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +0 -154
  81. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.interface.mjs +0 -2
  82. package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +0 -36
  83. package/esm2022/lib/components/bmb-form-validation/bmb-form-validation.component.mjs +0 -159
  84. package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +0 -159
  85. package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +0 -29
  86. package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +0 -22
  87. package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +0 -181
  88. package/esm2022/lib/components/bmb-grades/types.mjs +0 -2
  89. package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +0 -55
  90. package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +0 -49
  91. package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +0 -77
  92. package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +0 -59
  93. package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +0 -76
  94. package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +0 -41
  95. package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +0 -39
  96. package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +0 -20
  97. package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +0 -49
  98. package/esm2022/lib/components/bmb-icon/types.mjs +0 -2
  99. package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +0 -23
  100. package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +0 -24
  101. package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +0 -19
  102. package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +0 -21
  103. package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +0 -33
  104. package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +0 -77
  105. package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +0 -147
  106. package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.component.mjs +0 -162
  107. package/esm2022/lib/components/bmb-input/bmb-input-validation/bmb-input-validation.service.mjs +0 -116
  108. package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +0 -178
  109. package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +0 -85
  110. package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +0 -219
  111. package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +0 -191
  112. package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +0 -54
  113. package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +0 -34
  114. package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +0 -28
  115. package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +0 -23
  116. package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +0 -83
  117. package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +0 -60
  118. package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +0 -55
  119. package/esm2022/lib/components/bmb-list-group/types.mjs +0 -2
  120. package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +0 -83
  121. package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +0 -77
  122. package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +0 -55
  123. package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +0 -66
  124. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +0 -40
  125. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +0 -20
  126. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +0 -33
  127. 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
  128. 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
  129. 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
  130. 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
  131. 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
  132. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +0 -44
  133. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +0 -52
  134. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +0 -70
  135. package/esm2022/lib/components/bmb-login-onboarding/types.mjs +0 -2
  136. package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +0 -43
  137. package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +0 -64
  138. package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +0 -14
  139. package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +0 -88
  140. package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +0 -139
  141. package/esm2022/lib/components/bmb-modal/bmb-modal.interface.mjs +0 -2
  142. package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +0 -84
  143. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +0 -15
  144. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +0 -59
  145. package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +0 -30
  146. package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +0 -43
  147. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +0 -86
  148. package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +0 -22
  149. package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +0 -52
  150. package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +0 -52
  151. package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +0 -153
  152. package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +0 -39
  153. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +0 -196
  154. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.mjs +0 -2
  155. package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +0 -88
  156. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +0 -75
  157. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +0 -24
  158. package/esm2022/lib/components/bmb-push-notification/types.mjs +0 -2
  159. package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +0 -78
  160. package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +0 -117
  161. package/esm2022/lib/components/bmb-select/bmb-select-item/bmb-select-item.component.mjs +0 -16
  162. package/esm2022/lib/components/bmb-select/bmb-select.component.mjs +0 -55
  163. package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +0 -82
  164. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +0 -103
  165. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.interface.mjs +0 -2
  166. package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +0 -64
  167. package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +0 -16
  168. package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +0 -64
  169. package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +0 -32
  170. package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +0 -53
  171. package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +0 -53
  172. package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +0 -27
  173. package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +0 -88
  174. package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +0 -545
  175. package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +0 -2
  176. package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +0 -127
  177. package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +0 -65
  178. package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +0 -135
  179. package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +0 -43
  180. package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +0 -65
  181. package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +0 -30
  182. package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +0 -74
  183. package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +0 -13
  184. package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +0 -238
  185. package/esm2022/lib/components/bmb-timestream/types.mjs +0 -2
  186. package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +0 -139
  187. package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +0 -61
  188. package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +0 -47
  189. package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +0 -26
  190. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +0 -31
  191. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +0 -70
  192. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +0 -122
  193. package/esm2022/lib/components/bmb-top-bar/types.mjs +0 -2
  194. package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +0 -138
  195. package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +0 -44
  196. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +0 -19
  197. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +0 -71
  198. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +0 -51
  199. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +0 -28
  200. package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +0 -23
  201. package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +0 -85
  202. package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +0 -128
  203. package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +0 -55
  204. package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +0 -88
  205. package/esm2022/lib/directives/bmb-button/button.directive.mjs +0 -84
  206. package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +0 -29
  207. package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +0 -51
  208. package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +0 -36
  209. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +0 -34
  210. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +0 -37
  211. package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +0 -89
  212. package/esm2022/lib/directives/utils/clickoutside.directive.mjs +0 -41
  213. package/esm2022/lib/ds-ng.component.mjs +0 -11
  214. package/esm2022/lib/ds-ng.service.mjs +0 -14
  215. package/esm2022/lib/services/calendar.service.mjs +0 -51
  216. package/esm2022/lib/services/index.mjs +0 -3
  217. package/esm2022/lib/services/native-modal.service.mjs +0 -69
  218. package/esm2022/lib/services/notification.service.mjs +0 -77
  219. package/esm2022/lib/services/tabs.service.mjs +0 -30
  220. package/esm2022/lib/services/theme.service.mjs +0 -30
  221. package/esm2022/lib/services/toast.service.mjs +0 -24
  222. package/esm2022/lib/services/user/profile.service.mjs +0 -26
  223. package/esm2022/lib/types/colors.mjs +0 -2
  224. package/esm2022/lib/types/index.mjs +0 -11
  225. package/esm2022/lib/utils/countryCodes.mjs +0 -1089
  226. package/esm2022/lib/utils/currencyFormat.mjs +0 -7
  227. package/esm2022/lib/utils/dropdown.mjs +0 -85
  228. package/esm2022/lib/utils/formControl.mjs +0 -25
  229. package/esm2022/lib/utils/timestreamFilters.mjs +0 -32
  230. package/esm2022/lib/utils/utils.mjs +0 -66
  231. package/esm2022/public-api.mjs +0 -151
  232. package/esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +0 -5
@@ -2,11 +2,11 @@ import { ElementRef, TemplateRef } from '@angular/core';
2
2
  import { IBmbTab } from '../bmb-tabs/bmb-tabs.component';
3
3
  import { DateTime } from 'luxon';
4
4
  import { IBmbDataAlert, IBmbDataAlertsParsed, IBmbAlertCenterCategories, IBmbDataAlertsOutput, IBmbAlertEmptyState, IBmbAlertCenterTabConfig, IBmbAlertCenterFooterEvent, IBmbAlertCenterProtoEventFooter } from './types';
5
- import { MatDialog } from '@angular/material/dialog';
6
5
  import { BmbAlertCenterService } from './bmb-alert-center.service';
6
+ import { BmbNativeModalService } from '../../services/native-modal.service';
7
7
  import * as i0 from "@angular/core";
8
8
  export declare class BmbAlertCenterComponent {
9
- private matDialog;
9
+ private nativeModalService;
10
10
  private bmbAlertCenterService;
11
11
  dateFormat: import("@angular/core").InputSignal<string>;
12
12
  tabsName: import("@angular/core").InputSignal<string[] | IBmbAlertCenterTabConfig[]>;
@@ -23,7 +23,7 @@ export declare class BmbAlertCenterComponent {
23
23
  navigationBarEvents: import("@angular/core").OutputEmitterRef<IBmbAlertCenterFooterEvent>;
24
24
  detailContent?: TemplateRef<any>;
25
25
  container: ElementRef;
26
- constructor(matDialog: MatDialog, bmbAlertCenterService: BmbAlertCenterService);
26
+ constructor(nativeModalService: BmbNativeModalService, bmbAlertCenterService: BmbAlertCenterService);
27
27
  alertList: import("@angular/core").Signal<IBmbDataAlert[]>;
28
28
  advertisementsList: import("@angular/core").Signal<IBmbDataAlert[]>;
29
29
  isLoading: import("@angular/core").Signal<boolean>;
@@ -60,6 +60,8 @@ export declare class BmbCalendarComponent implements OnInit, AfterViewInit {
60
60
  handleFormReset(_: any): void;
61
61
  handleApplyFilters(): void;
62
62
  getFormControl(name: string): FormControl;
63
+ getCalendarName(name: string): string;
64
+ getBulletClass(name: string): string[];
63
65
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbCalendarComponent, never>;
64
66
  static ɵcmp: i0.ɵɵComponentDeclaration<BmbCalendarComponent, "bmb-calendar", never, { "view": { "alias": "view"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "calendarTimezone": { "alias": "calendarTimezone"; "required": false; "isSignal": true; }; "clientTimezone": { "alias": "clientTimezone"; "required": false; "isSignal": true; }; "lang": { "alias": "lang"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "startBusinessHour": { "alias": "startBusinessHour"; "required": false; "isSignal": true; }; "calendarTitle": { "alias": "calendarTitle"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "showFilterButton": { "alias": "showFilterButton"; "required": false; "isSignal": true; }; "visibleDate": { "alias": "visibleDate"; "required": false; "isSignal": true; }; "currentDate": { "alias": "currentDate"; "required": false; "isSignal": true; }; }, { "view": "viewChange"; "filters": "filtersChange"; "visibleDate": "visibleDateChange"; "onDateChange": "onDateChange"; "onClose": "onClose"; }, never, never, true, never>;
65
67
  }
@@ -22,6 +22,15 @@ export declare class BmbContainerButtonComponent {
22
22
  dropdownMenuItems: import("@angular/core").InputSignal<IDropdownItem[]>;
23
23
  onButton: import("@angular/core").OutputEmitterRef<MouseEvent>;
24
24
  secondaryAction: import("@angular/core").OutputEmitterRef<MouseEvent>;
25
+ private destroyRef;
26
+ private mql;
27
+ private abort;
28
+ readonly isMobileOrTablet: import("@angular/core").WritableSignal<boolean>;
29
+ constructor();
30
+ readonly maxChars: import("@angular/core").Signal<70 | 90>;
31
+ private t;
32
+ readonly titleTruncated: import("@angular/core").Signal<string>;
33
+ readonly subtitleTruncated: import("@angular/core").Signal<string>;
25
34
  getClassList(): string[];
26
35
  handleClick(event: any): void;
27
36
  handleSecondaryClick(event: any): void;
@@ -6,5 +6,7 @@ export interface IBmbControlType {
6
6
  label: string;
7
7
  checked: boolean;
8
8
  rightText?: string;
9
+ value?: string;
10
+ id?: string;
9
11
  }[];
10
12
  }
@@ -1,4 +1,4 @@
1
- import { TemplateRef } from '@angular/core';
1
+ import { TemplateRef, Type } from '@angular/core';
2
2
  import { IButtonAppearance } from '../../types';
3
3
  export type IBmbModalSize = 'small' | 'medium' | 'large';
4
4
  export type IBmbModalType = 'informative' | 'action' | 'alert';
@@ -28,10 +28,17 @@ export interface ModalDataConfig {
28
28
  secondaryAction?: () => void;
29
29
  closeAction?: () => void;
30
30
  }
31
- export interface IBmbNativeModal extends Omit<ModalDataConfig, 'primaryAction' | 'secondaryAction' | 'closeAction' | 'extendButtons' | 'alertStyle' | 'size' | 'type'> {
31
+ export interface IBmbNativeModal extends Omit<ModalDataConfig, 'primaryAction' | 'secondaryAction' | 'closeAction' | 'extendButtons' | 'alertStyle' | 'size' | 'type' | 'content'> {
32
32
  modalId?: string;
33
33
  size?: IBmbNativeModalSize;
34
34
  iconStyle?: IBmbModalAlertStyle;
35
35
  actions?: IBmbActionButton[];
36
36
  closeModalClicked?: (event: unknown) => void;
37
+ inputContext?: {
38
+ [key: string]: any;
39
+ };
40
+ outputContext?: {
41
+ [key: string]: (value: any) => void;
42
+ };
43
+ content?: string | TemplateRef<any> | null | Type<any>;
37
44
  }
@@ -1,4 +1,4 @@
1
- import { TemplateRef } from '@angular/core';
1
+ import { TemplateRef, Type, ViewContainerRef } from '@angular/core';
2
2
  import { IBmbModalAlertStyle, IBmbNativeModalSize, IBmbActionButton } from './bmb-modal.interface';
3
3
  import { BmbNativeModalService } from '../../services/native-modal.service';
4
4
  import * as i0 from "@angular/core";
@@ -6,15 +6,19 @@ export declare class BmbNativeModalComponent {
6
6
  private modalService;
7
7
  title: import("@angular/core").InputSignal<string>;
8
8
  subtitle: import("@angular/core").InputSignal<string>;
9
- content: import("@angular/core").InputSignal<string | TemplateRef<any>>;
9
+ content: import("@angular/core").InputSignal<string | Type<any> | TemplateRef<any> | null>;
10
10
  actions: import("@angular/core").InputSignal<IBmbActionButton[]>;
11
- alertIcon: import("@angular/core").InputSignal<IBmbModalAlertStyle | undefined>;
12
11
  modalId: import("@angular/core").InputSignal<string>;
13
12
  size: import("@angular/core").InputSignal<IBmbNativeModalSize>;
14
13
  iconStyle: import("@angular/core").InputSignal<IBmbModalAlertStyle | undefined>;
15
- autoFocus: import("@angular/core").InputSignal<boolean>;
16
- disableClose: import("@angular/core").InputSignal<boolean>;
14
+ disableBackdropClose: import("@angular/core").InputSignal<boolean>;
17
15
  hasBackdrop: import("@angular/core").InputSignal<boolean>;
16
+ inputContext: import("@angular/core").InputSignal<{
17
+ [key: string]: any;
18
+ }>;
19
+ outputContext: import("@angular/core").InputSignal<{
20
+ [key: string]: (value: any) => void;
21
+ }>;
18
22
  actionsClicked: import("@angular/core").OutputEmitterRef<{
19
23
  buttonName: string;
20
24
  event: MouseEvent;
@@ -24,14 +28,18 @@ export declare class BmbNativeModalComponent {
24
28
  event: MouseEvent;
25
29
  }>;
26
30
  constructor(modalService: BmbNativeModalService);
31
+ container: ViewContainerRef;
32
+ private componentRef;
27
33
  svgUrl: string;
28
34
  modalIcon: import("@angular/core").Signal<string>;
29
35
  getContainerClass(): string;
30
36
  isTemplateRef(): boolean;
37
+ isStringContent(): boolean;
31
38
  getContent(): any;
32
39
  handleButtonClick(buttonName: string, event: MouseEvent): void;
33
40
  handleCloseModal(event: MouseEvent): void;
34
41
  handleBackdropClick(): void;
42
+ renderContent(): void;
35
43
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbNativeModalComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<BmbNativeModalComponent, "bmb-native-modal", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "alertIcon": { "alias": "alertIcon"; "required": false; "isSignal": true; }; "modalId": { "alias": "modalId"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "iconStyle": { "alias": "iconStyle"; "required": false; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": false; "isSignal": true; }; "disableClose": { "alias": "disableClose"; "required": false; "isSignal": true; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; "isSignal": true; }; }, { "actionsClicked": "actionsClicked"; "closeModalClicked": "closeModalClicked"; }, never, never, true, never>;
44
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbNativeModalComponent, "bmb-native-modal", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "modalId": { "alias": "modalId"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "iconStyle": { "alias": "iconStyle"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; "isSignal": true; }; "inputContext": { "alias": "inputContext"; "required": false; "isSignal": true; }; "outputContext": { "alias": "outputContext"; "required": false; "isSignal": true; }; }, { "actionsClicked": "actionsClicked"; "closeModalClicked": "closeModalClicked"; }, never, never, true, never>;
37
45
  }
@@ -2,17 +2,21 @@ import { BmbNotificationService } from '../../services/notification.service';
2
2
  import { INotification } from '../bmb-push-notification/types';
3
3
  import { BmbNativeModalService } from '../../services/native-modal.service';
4
4
  import { IBmbNativeModal } from '../bmb-modal/bmb-modal.interface';
5
+ import { BmbProjectionContentService } from '../../services/projection.service';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class BmbPortalComponent {
7
8
  private notificationSignal;
8
9
  private modalService;
9
- constructor(notificationSignal: BmbNotificationService, modalService: BmbNativeModalService);
10
+ private projectionService;
11
+ constructor(notificationSignal: BmbNotificationService, modalService: BmbNativeModalService, projectionService: BmbProjectionContentService);
10
12
  modalSignal: import("@angular/core").Signal<IBmbNativeModal[]>;
11
- getNotifications(): INotification[];
13
+ projectedContent: import("@angular/core").Signal<import("../../services/projection.service").IBmbProjectionContent | null>;
14
+ notificationsList: import("@angular/core").Signal<INotification[]>;
12
15
  closeNotification(notification: INotification): void;
13
16
  getNotificationPosition(): import("../../services/notification.service").NotificationPositionX | undefined;
14
17
  handleCloseModal(id: string): void;
15
18
  handleModalClick(item: IBmbNativeModal, event: unknown): void;
19
+ handleRemoveProjectedContent(): void;
16
20
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbPortalComponent, never>;
17
21
  static ɵcmp: i0.ɵɵComponentDeclaration<BmbPortalComponent, "bmb-portal", never, {}, {}, never, never, true, never>;
18
22
  }
@@ -0,0 +1,42 @@
1
+ import { TemplateRef, Type, ViewContainerRef } from '@angular/core';
2
+ import { IBmbProjectedContentMode } from '../../../services/projection.service';
3
+ import * as i0 from "@angular/core";
4
+ export declare class BmbProjectedContentComponent {
5
+ content: import("@angular/core").InputSignal<Type<any> | TemplateRef<any> | null>;
6
+ htmlRef: import("@angular/core").InputSignal<HTMLElement | null>;
7
+ mode: import("@angular/core").InputSignal<IBmbProjectedContentMode>;
8
+ fixSizeToRef: import("@angular/core").InputSignal<boolean>;
9
+ inputContext: import("@angular/core").InputSignal<{
10
+ [key: string]: any;
11
+ }>;
12
+ showBackdrop: import("@angular/core").InputSignal<boolean>;
13
+ outputContext: import("@angular/core").InputSignal<{
14
+ [key: string]: (value: any) => void;
15
+ }>;
16
+ removeContent: import("@angular/core").OutputEmitterRef<void>;
17
+ container: ViewContainerRef;
18
+ projectedContentDialogRef: HTMLElement;
19
+ private componentRef;
20
+ constructor();
21
+ getPosition(): {
22
+ inset: string;
23
+ margin: string;
24
+ width: string;
25
+ height: string;
26
+ } | {
27
+ inset: string;
28
+ margin?: undefined;
29
+ width?: undefined;
30
+ height?: undefined;
31
+ } | {
32
+ inset: string;
33
+ width: string;
34
+ margin?: undefined;
35
+ height?: undefined;
36
+ };
37
+ renderContent(): void;
38
+ private isTemplateRef;
39
+ ngOnDestroy(): void;
40
+ static ɵfac: i0.ɵɵFactoryDeclaration<BmbProjectedContentComponent, never>;
41
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbProjectedContentComponent, "bmb-projected-content", never, { "content": { "alias": "content"; "required": false; "isSignal": true; }; "htmlRef": { "alias": "htmlRef"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "fixSizeToRef": { "alias": "fixSizeToRef"; "required": false; "isSignal": true; }; "inputContext": { "alias": "inputContext"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "outputContext": { "alias": "outputContext"; "required": false; "isSignal": true; }; }, { "removeContent": "removeContent"; }, never, never, true, never>;
42
+ }
@@ -12,15 +12,9 @@ export declare class BmbStepProgressBarComponent {
12
12
  stepTemplates: import("@angular/core").InputSignal<TemplateRef<any>[]>;
13
13
  onStepPress: import("@angular/core").OutputEmitterRef<number>;
14
14
  onStepPanelPress: import("@angular/core").OutputEmitterRef<number>;
15
- next: import("@angular/core").OutputEmitterRef<void>;
16
- back: import("@angular/core").OutputEmitterRef<void>;
17
- finish: import("@angular/core").OutputEmitterRef<void>;
18
15
  getStepsArray(): number[];
19
16
  onStepPanelClicked(index: number): void;
20
17
  onStepClicked(index: number): void;
21
- goNext(): void;
22
- goBack(): void;
23
- complete(): void;
24
18
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbStepProgressBarComponent, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<BmbStepProgressBarComponent, "bmb-step-progress-bar", never, { "activeStep": { "alias": "activeStep"; "required": false; "isSignal": true; }; "totalSteps": { "alias": "totalSteps"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "freeze": { "alias": "freeze"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "labelSteps": { "alias": "labelSteps"; "required": false; "isSignal": true; }; "labelComplete": { "alias": "labelComplete"; "required": false; "isSignal": true; }; "labelIncomplete": { "alias": "labelIncomplete"; "required": false; "isSignal": true; }; "stepTemplates": { "alias": "stepTemplates"; "required": false; "isSignal": true; }; }, { "activeStep": "activeStepChange"; "onStepPress": "onStepPress"; "onStepPanelPress": "onStepPanelPress"; "next": "next"; "back": "back"; "finish": "finish"; }, never, never, true, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbStepProgressBarComponent, "bmb-step-progress-bar", never, { "activeStep": { "alias": "activeStep"; "required": false; "isSignal": true; }; "totalSteps": { "alias": "totalSteps"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "freeze": { "alias": "freeze"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "labelSteps": { "alias": "labelSteps"; "required": false; "isSignal": true; }; "labelComplete": { "alias": "labelComplete"; "required": false; "isSignal": true; }; "labelIncomplete": { "alias": "labelIncomplete"; "required": false; "isSignal": true; }; "stepTemplates": { "alias": "stepTemplates"; "required": false; "isSignal": true; }; }, { "activeStep": "activeStepChange"; "onStepPress": "onStepPress"; "onStepPanelPress": "onStepPanelPress"; }, never, never, true, never>;
26
20
  }
@@ -2,13 +2,13 @@ import { IUserInformation } from '../types';
2
2
  import { IBmbDataAlert } from '../../bmb-alert-center/types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class BmbTopBarUserSectionComponent {
5
- userInformation: IUserInformation;
6
- mitec: boolean;
7
- assignmentNotification: string[];
8
- showNotifications: boolean;
9
- notificationNotification: IBmbDataAlert[];
10
- showRoleButton: boolean;
11
- showHelpButton: boolean;
5
+ userInformation: import("@angular/core").InputSignal<IUserInformation>;
6
+ mitec: import("@angular/core").InputSignal<boolean>;
7
+ assignmentNotification: import("@angular/core").InputSignal<string[]>;
8
+ showNotifications: import("@angular/core").InputSignal<boolean>;
9
+ notificationNotification: import("@angular/core").InputSignal<IBmbDataAlert[]>;
10
+ showRoleButton: import("@angular/core").InputSignal<boolean>;
11
+ showHelpButton: import("@angular/core").InputSignal<boolean>;
12
12
  helpButtonClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
13
13
  userClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
14
14
  alertClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
@@ -26,5 +26,5 @@ export declare class BmbTopBarUserSectionComponent {
26
26
  handleUserClick(event: MouseEvent): void;
27
27
  handleRoleChange(event: MouseEvent): void;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbTopBarUserSectionComponent, never>;
29
- static ɵcmp: i0.ɵɵComponentDeclaration<BmbTopBarUserSectionComponent, "bmb-top-bar-user-section", never, { "userInformation": { "alias": "userInformation"; "required": false; }; "mitec": { "alias": "mitec"; "required": false; }; "assignmentNotification": { "alias": "assignmentNotification"; "required": false; }; "showNotifications": { "alias": "showNotifications"; "required": false; }; "notificationNotification": { "alias": "notificationNotification"; "required": false; }; "showRoleButton": { "alias": "showRoleButton"; "required": false; }; "showHelpButton": { "alias": "showHelpButton"; "required": false; }; }, { "helpButtonClick": "helpButtonClick"; "userClick": "userClick"; "alertClick": "alertClick"; "roleButtonClick": "roleButtonClick"; }, never, never, true, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbTopBarUserSectionComponent, "bmb-top-bar-user-section", never, { "userInformation": { "alias": "userInformation"; "required": false; "isSignal": true; }; "mitec": { "alias": "mitec"; "required": false; "isSignal": true; }; "assignmentNotification": { "alias": "assignmentNotification"; "required": false; "isSignal": true; }; "showNotifications": { "alias": "showNotifications"; "required": false; "isSignal": true; }; "notificationNotification": { "alias": "notificationNotification"; "required": false; "isSignal": true; }; "showRoleButton": { "alias": "showRoleButton"; "required": false; "isSignal": true; }; "showHelpButton": { "alias": "showHelpButton"; "required": false; "isSignal": true; }; }, { "helpButtonClick": "helpButtonClick"; "userClick": "userClick"; "alertClick": "alertClick"; "roleButtonClick": "roleButtonClick"; }, never, never, true, never>;
30
30
  }
@@ -4,21 +4,21 @@ import { IBmbDataAlert } from '../bmb-alert-center/types';
4
4
  import * as i0 from "@angular/core";
5
5
  export { IPositionButtonMenu, IUserInformation } from './types';
6
6
  export declare class BmbTopBarComponent implements OnInit {
7
- userInformation: IUserInformation | null;
8
- image: string;
9
- mobileImage: string;
10
- appName: string;
11
- appSubTitle: string;
12
- lang: string;
13
- mitec: boolean;
14
- alertNotification: IBmbDataAlert[];
15
- showRoleButton: boolean;
16
- showHelpButton: boolean;
17
- positionButtonMenu: IPositionButtonMenu;
18
- hasLogoutButton: boolean;
19
- showLang: boolean;
20
- showUserName: boolean;
21
- assignmentNotification: string[];
7
+ userInformation: import("@angular/core").InputSignal<IUserInformation | null>;
8
+ appName: import("@angular/core").InputSignal<string>;
9
+ appSubTitle: import("@angular/core").InputSignal<string>;
10
+ lang: import("@angular/core").InputSignal<string>;
11
+ mitec: import("@angular/core").InputSignal<boolean>;
12
+ alertNotification: import("@angular/core").InputSignal<IBmbDataAlert[]>;
13
+ showRoleButton: import("@angular/core").InputSignal<boolean>;
14
+ showHelpButton: import("@angular/core").InputSignal<boolean>;
15
+ positionButtonMenu: import("@angular/core").InputSignal<IPositionButtonMenu>;
16
+ hasLogoutButton: import("@angular/core").InputSignal<boolean>;
17
+ showLang: import("@angular/core").InputSignal<boolean>;
18
+ showUserName: import("@angular/core").InputSignal<boolean>;
19
+ assignmentNotification: import("@angular/core").InputSignal<string[]>;
20
+ image: import("@angular/core").ModelSignal<string>;
21
+ mobileImage: import("@angular/core").ModelSignal<string>;
22
22
  helpButtonClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
23
23
  userProfileClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
24
24
  alertButtonClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
@@ -34,12 +34,11 @@ export declare class BmbTopBarComponent implements OnInit {
34
34
  ngOnInit(): void;
35
35
  handleLogOutClick(event: Event): void;
36
36
  handleAlertClick(event: MouseEvent): void;
37
- getCountryName(lang: string): string;
38
37
  handleLangChange(lang: string): void;
39
38
  handleHelpButtonClick(event: MouseEvent): void;
40
39
  handleUserClick(event: MouseEvent): void;
41
40
  handleRoleChange(event: MouseEvent): void;
42
41
  handleBackToHome(): void;
43
42
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbTopBarComponent, never>;
44
- static ɵcmp: i0.ɵɵComponentDeclaration<BmbTopBarComponent, "bmb-top-bar", never, { "userInformation": { "alias": "userInformation"; "required": false; }; "image": { "alias": "image"; "required": false; }; "mobileImage": { "alias": "mobileImage"; "required": false; }; "appName": { "alias": "appName"; "required": false; }; "appSubTitle": { "alias": "appSubTitle"; "required": false; }; "lang": { "alias": "lang"; "required": false; }; "mitec": { "alias": "mitec"; "required": false; }; "alertNotification": { "alias": "alertNotification"; "required": false; }; "showRoleButton": { "alias": "showRoleButton"; "required": false; }; "showHelpButton": { "alias": "showHelpButton"; "required": false; }; "positionButtonMenu": { "alias": "positionButtonMenu"; "required": false; }; "hasLogoutButton": { "alias": "hasLogoutButton"; "required": false; }; "showLang": { "alias": "showLang"; "required": false; }; "showUserName": { "alias": "showUserName"; "required": false; }; "assignmentNotification": { "alias": "assignmentNotification"; "required": false; }; }, { "helpButtonClick": "helpButtonClick"; "userProfileClick": "userProfileClick"; "alertButtonClick": "alertButtonClick"; "roleButtonClick": "roleButtonClick"; "backToHomeClick": "backToHomeClick"; "logOut": "logOut"; "onLangChange": "onLangChange"; }, never, never, true, never>;
43
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbTopBarComponent, "bmb-top-bar", never, { "userInformation": { "alias": "userInformation"; "required": false; "isSignal": true; }; "appName": { "alias": "appName"; "required": false; "isSignal": true; }; "appSubTitle": { "alias": "appSubTitle"; "required": false; "isSignal": true; }; "lang": { "alias": "lang"; "required": false; "isSignal": true; }; "mitec": { "alias": "mitec"; "required": false; "isSignal": true; }; "alertNotification": { "alias": "alertNotification"; "required": false; "isSignal": true; }; "showRoleButton": { "alias": "showRoleButton"; "required": false; "isSignal": true; }; "showHelpButton": { "alias": "showHelpButton"; "required": false; "isSignal": true; }; "positionButtonMenu": { "alias": "positionButtonMenu"; "required": false; "isSignal": true; }; "hasLogoutButton": { "alias": "hasLogoutButton"; "required": false; "isSignal": true; }; "showLang": { "alias": "showLang"; "required": false; "isSignal": true; }; "showUserName": { "alias": "showUserName"; "required": false; "isSignal": true; }; "assignmentNotification": { "alias": "assignmentNotification"; "required": false; "isSignal": true; }; "image": { "alias": "image"; "required": false; "isSignal": true; }; "mobileImage": { "alias": "mobileImage"; "required": false; "isSignal": true; }; }, { "image": "imageChange"; "mobileImage": "mobileImageChange"; "helpButtonClick": "helpButtonClick"; "userProfileClick": "userProfileClick"; "alertButtonClick": "alertButtonClick"; "roleButtonClick": "roleButtonClick"; "backToHomeClick": "backToHomeClick"; "logOut": "logOut"; "onLangChange": "onLangChange"; }, never, never, true, never>;
45
44
  }
@@ -15,6 +15,7 @@ export declare class BmbTotpComponent {
15
15
  disableButton: import("@angular/core").InputSignal<boolean>;
16
16
  handleSubmit: import("@angular/core").OutputEmitterRef<string>;
17
17
  codeForm: FormGroup;
18
+ _maxCode: number;
18
19
  codesArray: import("@angular/core").Signal<number[]>;
19
20
  constructor(formBuilder: FormBuilder);
20
21
  ngOnInit(): void;
@@ -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
  }
@@ -0,0 +1,30 @@
1
+ import { ApplicationRef, EnvironmentInjector, TemplateRef, Type } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export type IBmbProjectedContentMode = 'over' | 'partial' | 'outside';
4
+ export interface IBmbProjectionContent {
5
+ content: TemplateRef<any> | null | Type<any>;
6
+ targetRef?: HTMLElement | null;
7
+ mode?: IBmbProjectedContentMode;
8
+ fixSizeToRef?: boolean;
9
+ inputContext?: {
10
+ [key: string]: any;
11
+ };
12
+ showBackdrop?: boolean;
13
+ outputContext?: {
14
+ [key: string]: (value: any) => void;
15
+ };
16
+ }
17
+ export declare class BmbProjectionContentService {
18
+ private appRef;
19
+ private environmentInjector;
20
+ readonly contentList: import("@angular/core").WritableSignal<IBmbProjectionContent | null>;
21
+ private portalComponentRef;
22
+ constructor(appRef: ApplicationRef, environmentInjector: EnvironmentInjector);
23
+ private getOrCreatePortal;
24
+ openContent(content: IBmbProjectionContent): void;
25
+ closeContent(): void;
26
+ getProjectedContent(): IBmbProjectionContent | null;
27
+ isThereContentProjected(): boolean;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<BmbProjectionContentService, never>;
29
+ static ɵprov: i0.ɵɵInjectableDeclaration<BmbProjectionContentService>;
30
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ti-tecnologico-de-monterrey-oficial/ds-ng",
3
- "version": "1.5.1118",
3
+ "version": "1.5.1119-b",
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",
@@ -20,7 +20,7 @@
20
20
  "tslib": "2.3.0",
21
21
  "@types/luxon": "3.4.2",
22
22
  "@angular/cdk": "*",
23
- "material-symbols": "^0.27.2"
23
+ "material-symbols": "0.27.2"
24
24
  },
25
25
  "exports": {
26
26
  "./assets/styles/main.min.css": "./dist/ds-ng/assets/styles/main.min.css",
@@ -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
  },
package/public-api.d.ts CHANGED
@@ -6,6 +6,7 @@ export * from './lib/services/user/profile.service';
6
6
  export * from './lib/components/bmb-login-onboarding/bmb-login-onboarding.service';
7
7
  export * from './lib/components/bmb-alert-center/bmb-alert-center.service';
8
8
  export * from './lib/services/native-modal.service';
9
+ export * from './lib/services/projection.service';
9
10
  export * from './lib/ds-ng.component';
10
11
  export * from './lib/directives/bmb-button/button.directive';
11
12
  export * from './lib/directives/bmb-layout/bmb-layout-item.directive';
@@ -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: "18.2.13", ngImport: i0, type: BmbAcademicProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
75
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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-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_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: "18.2.13", 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-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_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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MvYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MvYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFHTCxNQUFNLEVBRU4saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFpQi9DLE1BQU0sT0FBTyw0QkFBNEI7SUFmekM7UUFnQkUsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDakQsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDOUMsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFFOUMsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsRUFBRSxDQUFDLENBQUM7S0FvRXpEO0lBbEVDLFFBQVE7UUFDTixNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFNUMsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FDYjtjQUNNLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztTQUM5QixDQUNGLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUNqQjtnQkFDRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUk7Z0JBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBZTthQUN6QztZQUNEO2dCQUNFLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSTtnQkFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFlO2FBQ3RDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJO2dCQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQWU7YUFDdEM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sZUFBZSxHQUNuQixPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMzRCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4RSxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV4RSxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ2pCO2dCQUNFLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtnQkFDMUIsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFlO2FBQ3ZDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFlBQVksQ0FBQyxJQUFJO2dCQUN2QixLQUFLLEVBQUUsWUFBWSxDQUFDLEtBQWU7YUFDcEM7WUFDRDtnQkFDRSxJQUFJLEVBQUUsWUFBWSxDQUFDLElBQUk7Z0JBQ3ZCLEtBQUssRUFBRSxZQUFZLENBQUMsS0FBZTthQUNwQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBNkM7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQ2QsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3hCLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7YUFDcEIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBeUI7UUFDeEMsT0FBTyxPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDO0lBQzFDLENBQUM7K0dBeEVVLDRCQUE0QjttR0FBNUIsNEJBQTRCLGtmQ2pDekMsb2ZBbUJBLDhqTkRHSSxxQkFBcUIsOEZBQ3JCLHdCQUF3QixnSkFDeEIsa0JBQWtCLCtIQUNsQixzQkFBc0IsZ0pBQ3RCLFlBQVk7OzRGQU9ILDRCQUE0QjtrQkFmeEMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQO3dCQUNQLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsWUFBWTtxQkFDYixpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgaW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBzaWduYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJtYkZvY3VzRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1mb2N1cy1lbGVtZW50L2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJMYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1sYXlvdXQvYm1iLWxheW91dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm1iTGF5b3V0SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWxheW91dC9ibWItbGF5b3V0LWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IEJtYkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1jb250YWluZXIvYm1iLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSUJtYk5hbWVWYWx1ZVBhaXIgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBidWlsZEVycm9yTWVzc2FnZSB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1hY2FkZW1pYy1wcm9ncmVzcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBCbWJDb250YWluZXJDb21wb25lbnQsXG4gICAgQm1iRm9jdXNFbGVtZW50Q29tcG9uZW50LFxuICAgIEJtYkxheW91dERpcmVjdGl2ZSxcbiAgICBCbWJMYXlvdXRJdGVtRGlyZWN0aXZlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgXSxcbiAgc3R5bGVVcmw6ICcuL2JtYi1hY2FkZW1pYy1wcm9ncmVzcy5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iQWNhZGVtaWNQcm9ncmVzc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgYWNjcmVkaXRlZCA9IGlucHV0LnJlcXVpcmVkPElCbWJOYW1lVmFsdWVQYWlyPigpO1xuICBhdmVyYWdlID0gaW5wdXQucmVxdWlyZWQ8SUJtYk5hbWVWYWx1ZVBhaXI+KCk7XG4gIHN1bW1hcnkgPSBpbnB1dC5yZXF1aXJlZDxJQm1iTmFtZVZhbHVlUGFpcj4oKTtcblxuICBtZXRyaWNzID0gc2lnbmFsPHsgbmFtZTogc3RyaW5nOyB2YWx1ZTogbnVtYmVyIH1bXT4oW10pO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IGlucHV0czogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoIXRoaXMuYWNjcmVkaXRlZCgpKSBpbnB1dHMucHVzaCgnYWNjcmVkaXRlZCcpO1xuICAgIGlmICghdGhpcy5hdmVyYWdlKCkpIGlucHV0cy5wdXNoKCdhdmVyYWdlJyk7XG4gICAgaWYgKCF0aGlzLnN1bW1hcnkoKSkgaW5wdXRzLnB1c2goJ3N1bW1hcnknKTtcblxuICAgIGlmIChpbnB1dHMubGVuZ3RoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBcbiAgICAgICAgVGhlICR7YnVpbGRFcnJvck1lc3NhZ2UoaW5wdXRzKX0gcmVxdWlyZWQuXG4gICAgICAgIGAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlTWV0cmljcyhbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IHRoaXMuYWNjcmVkaXRlZCgpLm5hbWUsXG4gICAgICAgIHZhbHVlOiB0aGlzLmFjY3JlZGl0ZWQoKS52YWx1ZSBhcyBudW1iZXIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiB0aGlzLmF2ZXJhZ2UoKS5uYW1lLFxuICAgICAgICB2YWx1ZTogdGhpcy5hdmVyYWdlKCkudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogdGhpcy5zdW1tYXJ5KCkubmFtZSxcbiAgICAgICAgdmFsdWU6IHRoaXMuc3VtbWFyeSgpLnZhbHVlIGFzIG51bWJlcixcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgYWNjcmVkaXRlZFZhbHVlID1cbiAgICAgIGNoYW5nZXNbJ2FjY3JlZGl0ZWQnXT8uY3VycmVudFZhbHVlIHx8IHRoaXMuYWNjcmVkaXRlZCgpO1xuICAgIGNvbnN0IGF2ZXJhZ2VWYWx1ZSA9IGNoYW5nZXNbJ2F2ZXJhZ2UnXT8uY3VycmVudFZhbHVlIHx8IHRoaXMuYXZlcmFnZSgpO1xuICAgIGNvbnN0IHN1bW1hcnlWYWx1ZSA9IGNoYW5nZXNbJ3N1bW1hcnknXT8uY3VycmVudFZhbHVlIHx8IHRoaXMuc3VtbWFyeSgpO1xuXG4gICAgdGhpcy51cGRhdGVNZXRyaWNzKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogYWNjcmVkaXRlZFZhbHVlLm5hbWUsXG4gICAgICAgIHZhbHVlOiBhY2NyZWRpdGVkVmFsdWUudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogYXZlcmFnZVZhbHVlLm5hbWUsXG4gICAgICAgIHZhbHVlOiBhdmVyYWdlVmFsdWUudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogc3VtbWFyeVZhbHVlLm5hbWUsXG4gICAgICAgIHZhbHVlOiBzdW1tYXJ5VmFsdWUudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxuXG4gIHVwZGF0ZU1ldHJpY3MobmV3TWV0cmljczogeyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfVtdKTogdm9pZCB7XG4gICAgdGhpcy5tZXRyaWNzLnNldChcbiAgICAgIG5ld01ldHJpY3MubWFwKChtZXRyaWMpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuYW1lOiBtZXRyaWMubmFtZSxcbiAgICAgICAgICB2YWx1ZTogbWV0cmljLnZhbHVlLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHNob3VsZFNob3dNZXRyaWMobWV0cmljOiBJQm1iTmFtZVZhbHVlUGFpcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eXBlb2YgbWV0cmljLnZhbHVlID09PSAnbnVtYmVyJztcbiAgfVxufVxuIiwiPGJtYi1jb250YWluZXIgY2xhc3M9XCJibWJfYWNhZGVtaWMtcHJvZ3Jlc3Mtc3VtbWFyeVwiPlxuICA8c2VjdGlvblxuICAgIGNsYXNzPVwiYm1iX2FjYWRlbWljLXByb2dyZXNzLXN1bW1hcnktY29udGFpbmVyXCJcbiAgICBibWJMYXlvdXRcbiAgICBtYXJnaW49XCJub25lXCJcbiAgICBqdXN0aWZ5PVwic3BhY2VBcm91bmRcIlxuICAgIFtkeW5hbWljQ29sc109XCJ0cnVlXCJcbiAgPlxuICAgIEBmb3IgKG1ldHJpYyBvZiBtZXRyaWNzKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgPGJtYi1mb2N1cy1lbGVtZW50XG4gICAgICAgIGJtYkxheW91dEl0ZW1cbiAgICAgICAgW3RpdGxlXT1cIm1ldHJpYy5uYW1lXCJcbiAgICAgICAgW251bWJlcl09XCJtZXRyaWMudmFsdWVcIlxuICAgICAgICBbaXNOb3JtYWxdPVwidHJ1ZVwiXG4gICAgICAgIFtpc05vbkZvY3VzZWRdPVwidHJ1ZVwiXG4gICAgICAvPlxuICAgIH1cbiAgPC9zZWN0aW9uPlxuPC9ibWItY29udGFpbmVyPlxuIl19