@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1318 → 1.5.1319-a

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/assets/styles/main.min.css +1 -1
  2. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +652 -614
  3. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
  4. package/lib/components/bmb-accordion/bmb-accordion.component.d.ts +2 -1
  5. package/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.d.ts +0 -4
  6. package/lib/components/bmb-alert-center/bmb-alert-center.component.d.ts +3 -3
  7. package/lib/components/bmb-alert-center/types.d.ts +2 -0
  8. package/lib/components/bmb-chat-bar/bmb-chat-bar.component.d.ts +2 -2
  9. package/lib/components/bmb-notification-card/bmb-notification-card-modal/bmb-notification-card-modal.component.d.ts +5 -3
  10. package/lib/components/utils/bmb-alert-center-detail/bmb-alert-center-detail.component.d.ts +20 -0
  11. package/lib/ds-ng.component.d.ts +1 -1
  12. package/lib/services/calendar/calendar.service.d.ts +1 -1
  13. package/lib/utils/utils.d.ts +4 -0
  14. package/package.json +1 -3
  15. package/esm2022/assets/i18n/en.json +0 -122
  16. package/esm2022/assets/i18n/es.json +0 -122
  17. package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +0 -87
  18. package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +0 -159
  19. package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +0 -174
  20. package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +0 -49
  21. package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +0 -31
  22. package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +0 -37
  23. package/esm2022/lib/components/bmb-advertisement-card/types.mjs +0 -2
  24. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +0 -71
  25. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +0 -19
  26. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +0 -148
  27. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +0 -47
  28. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +0 -204
  29. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +0 -62
  30. package/esm2022/lib/components/bmb-alert-center/types.mjs +0 -2
  31. package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +0 -26
  32. package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +0 -32
  33. package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +0 -27
  34. package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +0 -42
  35. package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +0 -55
  36. package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +0 -30
  37. package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +0 -288
  38. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +0 -101
  39. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +0 -40
  40. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +0 -68
  41. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +0 -43
  42. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +0 -100
  43. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +0 -47
  44. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +0 -56
  45. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +0 -24
  46. package/esm2022/lib/components/bmb-calendar/types.mjs +0 -2
  47. package/esm2022/lib/components/bmb-calendar/utils.mjs +0 -96
  48. package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +0 -159
  49. package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +0 -76
  50. package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +0 -80
  51. package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +0 -200
  52. package/esm2022/lib/components/bmb-chat-bar/bot_list.mjs +0 -57
  53. package/esm2022/lib/components/bmb-chat-bar/types.mjs +0 -2
  54. package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +0 -56
  55. package/esm2022/lib/components/bmb-chat-bubbles/types.mjs +0 -2
  56. package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +0 -46
  57. package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +0 -80
  58. package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +0 -36
  59. package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +0 -27
  60. package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +0 -92
  61. package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +0 -69
  62. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +0 -208
  63. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +0 -144
  64. package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +0 -58
  65. package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +0 -25
  66. package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +0 -34
  67. package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +0 -65
  68. package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +0 -177
  69. package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +0 -31
  70. package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +0 -192
  71. package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +0 -76
  72. package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +0 -80
  73. package/esm2022/lib/components/bmb-fab/bmb-fab-.interface.mjs +0 -9
  74. package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +0 -37
  75. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +0 -166
  76. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.interface.mjs +0 -2
  77. package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +0 -36
  78. package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +0 -159
  79. package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +0 -29
  80. package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +0 -22
  81. package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +0 -178
  82. package/esm2022/lib/components/bmb-grades/types.mjs +0 -2
  83. package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +0 -60
  84. package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +0 -49
  85. package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +0 -86
  86. package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +0 -59
  87. package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +0 -76
  88. package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +0 -41
  89. package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +0 -45
  90. package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +0 -20
  91. package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +0 -50
  92. package/esm2022/lib/components/bmb-icon/types.mjs +0 -2
  93. package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +0 -32
  94. package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +0 -24
  95. package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +0 -19
  96. package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +0 -21
  97. package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +0 -33
  98. package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +0 -79
  99. package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +0 -147
  100. package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +0 -178
  101. package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +0 -85
  102. package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +0 -219
  103. package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +0 -191
  104. package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +0 -54
  105. package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +0 -34
  106. package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +0 -28
  107. package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +0 -23
  108. package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +0 -83
  109. package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +0 -60
  110. package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +0 -55
  111. package/esm2022/lib/components/bmb-list-group/types.mjs +0 -2
  112. package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +0 -83
  113. package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +0 -77
  114. package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +0 -55
  115. package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +0 -68
  116. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +0 -40
  117. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +0 -20
  118. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +0 -33
  119. 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
  120. 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
  121. 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
  122. 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
  123. 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
  124. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +0 -44
  125. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +0 -67
  126. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +0 -70
  127. package/esm2022/lib/components/bmb-login-onboarding/types.mjs +0 -2
  128. package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +0 -43
  129. package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +0 -65
  130. package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +0 -14
  131. package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +0 -88
  132. package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +0 -139
  133. package/esm2022/lib/components/bmb-modal/bmb-modal.interface.mjs +0 -2
  134. package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +0 -121
  135. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +0 -15
  136. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +0 -59
  137. package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +0 -30
  138. package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +0 -45
  139. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card-modal/bmb-notification-card-modal.component.mjs +0 -21
  140. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +0 -114
  141. package/esm2022/lib/components/bmb-notification-counter/bmb-notification-counter.component.mjs +0 -23
  142. package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +0 -22
  143. package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +0 -52
  144. package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +0 -58
  145. package/esm2022/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.mjs +0 -123
  146. package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +0 -153
  147. package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +0 -39
  148. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +0 -180
  149. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.interface.mjs +0 -2
  150. package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +0 -88
  151. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +0 -75
  152. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +0 -24
  153. package/esm2022/lib/components/bmb-push-notification/types.mjs +0 -2
  154. package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +0 -78
  155. package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +0 -122
  156. package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +0 -82
  157. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +0 -101
  158. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.interface.mjs +0 -2
  159. package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +0 -64
  160. package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +0 -16
  161. package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +0 -64
  162. package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +0 -32
  163. package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +0 -59
  164. package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +0 -53
  165. package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +0 -27
  166. package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +0 -90
  167. package/esm2022/lib/components/bmb-table-lite/bmb-table-lite.component.mjs +0 -564
  168. package/esm2022/lib/components/bmb-table-lite/bmb-table-lite.interface.mjs +0 -2
  169. package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +0 -541
  170. package/esm2022/lib/components/bmb-tables/bmb-tables.interface.mjs +0 -2
  171. package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +0 -132
  172. package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +0 -66
  173. package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +0 -135
  174. package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +0 -43
  175. package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +0 -65
  176. package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +0 -30
  177. package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +0 -74
  178. package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +0 -13
  179. package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +0 -236
  180. package/esm2022/lib/components/bmb-timestream/types.mjs +0 -2
  181. package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +0 -139
  182. package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +0 -61
  183. package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +0 -47
  184. package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +0 -39
  185. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +0 -31
  186. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +0 -94
  187. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +0 -86
  188. package/esm2022/lib/components/bmb-top-bar/types.mjs +0 -2
  189. package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +0 -141
  190. package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +0 -44
  191. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +0 -19
  192. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +0 -77
  193. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +0 -64
  194. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +0 -34
  195. package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +0 -23
  196. package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +0 -85
  197. package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +0 -128
  198. package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +0 -51
  199. package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +0 -88
  200. package/esm2022/lib/directives/bmb-button/button.directive.mjs +0 -84
  201. package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +0 -29
  202. package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +0 -64
  203. package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +0 -41
  204. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +0 -34
  205. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +0 -37
  206. package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +0 -89
  207. package/esm2022/lib/directives/bmb-selector/bmb-selector.directive.mjs +0 -28
  208. package/esm2022/lib/directives/utils/clickoutside.directive.mjs +0 -41
  209. package/esm2022/lib/ds-ng.component.mjs +0 -11
  210. package/esm2022/lib/ds-ng.service.mjs +0 -14
  211. package/esm2022/lib/pipes/translations.mjs +0 -22
  212. package/esm2022/lib/services/calendar/calendar.service.mjs +0 -51
  213. package/esm2022/lib/services/calendar.service.mjs +0 -51
  214. package/esm2022/lib/services/index.mjs +0 -3
  215. package/esm2022/lib/services/modal/native-modal.service.mjs +0 -60
  216. package/esm2022/lib/services/native-modal.service.mjs +0 -60
  217. package/esm2022/lib/services/notification/notification.service.mjs +0 -84
  218. package/esm2022/lib/services/notification.service.mjs +0 -84
  219. package/esm2022/lib/services/projection/projection.service.mjs +0 -49
  220. package/esm2022/lib/services/projection.service.mjs +0 -49
  221. package/esm2022/lib/services/tabs/tabs.service.mjs +0 -30
  222. package/esm2022/lib/services/tabs.service.mjs +0 -30
  223. package/esm2022/lib/services/theme/theme.service.mjs +0 -30
  224. package/esm2022/lib/services/theme.service.mjs +0 -30
  225. package/esm2022/lib/services/toast/toast.service.mjs +0 -24
  226. package/esm2022/lib/services/toast.service.mjs +0 -24
  227. package/esm2022/lib/services/translations/translations.service.mjs +0 -53
  228. package/esm2022/lib/services/user/profile.service.mjs +0 -26
  229. package/esm2022/lib/types/colors.mjs +0 -2
  230. package/esm2022/lib/types/index.mjs +0 -11
  231. package/esm2022/lib/utils/countryCodes.mjs +0 -1089
  232. package/esm2022/lib/utils/currencyFormat.mjs +0 -7
  233. package/esm2022/lib/utils/dropdown.mjs +0 -85
  234. package/esm2022/lib/utils/formControl.mjs +0 -25
  235. package/esm2022/lib/utils/timestreamFilters.mjs +0 -32
  236. package/esm2022/lib/utils/utils.mjs +0 -71
  237. package/esm2022/public-api.mjs +0 -160
  238. package/esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +0 -5
@@ -30,8 +30,9 @@ export declare class BmbAccordionComponent implements OnInit, OnChanges {
30
30
  getClassesHeader(): string[];
31
31
  getClassesContent(): string;
32
32
  getStyles(): any;
33
- toggle(event?: MouseEvent): void;
33
+ toggle(event: MouseEvent): void;
34
34
  getIconToggle(): string;
35
+ handleToggleKeyboard(event: KeyboardEvent): void;
35
36
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbAccordionComponent, never>;
36
37
  static ɵcmp: i0.ɵɵComponentDeclaration<BmbAccordionComponent, "bmb-accordion", never, { "appearanceContrast": { "alias": "appearanceContrast"; "required": false; "isSignal": true; }; "borderRadius": { "alias": "borderRadius"; "required": false; "isSignal": true; }; "margin": { "alias": "margin"; "required": false; "isSignal": true; }; "paddingHeader": { "alias": "paddingHeader"; "required": false; "isSignal": true; }; "paddingContent": { "alias": "paddingContent"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "accordionId": { "alias": "accordionId"; "required": false; "isSignal": true; }; "hideToggle": { "alias": "hideToggle"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; "lockToggle": { "alias": "lockToggle"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "opened": "opened"; "onClick": "onClick"; }, ["bmbAccordionContent", "bmbAccordionHeader"], never, true, never>;
37
38
  }
@@ -1,14 +1,10 @@
1
- import { DomSanitizer } from '@angular/platform-browser';
2
1
  import { IBmbAlertEmptyState, IBmbDataAlert } from '../types';
3
2
  import * as i0 from "@angular/core";
4
3
  export declare class BmbAlertCenterAdsComponent {
5
- private sanitizer;
6
4
  advertisements: import("@angular/core").InputSignal<IBmbDataAlert[]>;
7
5
  emptyStateData: import("@angular/core").InputSignal<IBmbAlertEmptyState>;
8
6
  alertEvent: import("@angular/core").OutputEmitterRef<IBmbDataAlert>;
9
- constructor(sanitizer: DomSanitizer);
10
7
  handleAlertEvent(alert: IBmbDataAlert): void;
11
- sanitizedHtml(html: string): import("@angular/platform-browser").SafeHtml;
12
8
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbAlertCenterAdsComponent, never>;
13
9
  static ɵcmp: i0.ɵɵComponentDeclaration<BmbAlertCenterAdsComponent, "bmb-alert-center-ads", never, { "advertisements": { "alias": "advertisements"; "required": true; "isSignal": true; }; "emptyStateData": { "alias": "emptyStateData"; "required": false; "isSignal": true; }; }, { "alertEvent": "alertEvent"; }, never, never, true, never>;
14
10
  }
@@ -7,9 +7,9 @@ import { BmbNativeModalService } from '../../services/modal/native-modal.service
7
7
  import { BmbTranslationsService } from '../../services/translations/translations.service';
8
8
  import * as i0 from "@angular/core";
9
9
  export declare class BmbAlertCenterComponent {
10
- private nativeModalService;
11
- private bmbAlertCenterService;
12
- translationsService: BmbTranslationsService;
10
+ private readonly nativeModalService;
11
+ private readonly bmbAlertCenterService;
12
+ readonly translationsService: BmbTranslationsService;
13
13
  dateFormat: import("@angular/core").InputSignal<string>;
14
14
  tabsName: import("@angular/core").InputSignal<string[] | IBmbAlertCenterTabConfig[]>;
15
15
  hideTabs: import("@angular/core").InputSignal<boolean>;
@@ -11,6 +11,8 @@ export interface IBmbDataAlertDetails {
11
11
  href?: string;
12
12
  type: 'paragraph' | 'image' | 'video' | 'link' | 'button' | 'title' | 'html';
13
13
  variant?: IButtonAppearance;
14
+ subtitlesURL?: string;
15
+ language?: string;
14
16
  event?: (id: string | number | undefined) => void;
15
17
  }
16
18
  export interface IBmbDataAlert {
@@ -7,8 +7,8 @@ import * as i0 from "@angular/core";
7
7
  export { defaultBotList, defaultActionList } from './bot_list';
8
8
  export { IBotType, IChatBarActions } from './types';
9
9
  export declare class BmbChatBarComponent {
10
- private contentProjected;
11
- private nativeModalService;
10
+ private readonly contentProjected;
11
+ private readonly nativeModalService;
12
12
  placeholder: import("@angular/core").InputSignal<string>;
13
13
  botList: import("@angular/core").InputSignal<IBotType[]>;
14
14
  actionsList: import("@angular/core").InputSignal<IChatBarActions[]>;
@@ -1,8 +1,10 @@
1
- import { IBmbDataAlertsParsed } from '../../../types';
1
+ import { IBmbDataAlert, IBmbDataAlertsParsed } from '../../../types';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class BmbNotificationCardModalComponent {
4
4
  visibleAlert: import("@angular/core").InputSignal<IBmbDataAlertsParsed | null>;
5
- handleAlertEvent(alert: IBmbDataAlertsParsed | null): void;
5
+ alertEvent: import("@angular/core").OutputEmitterRef<IBmbDataAlert | IBmbDataAlertsParsed>;
6
+ handleAlertEvent(alert: IBmbDataAlertsParsed | IBmbDataAlert): void;
7
+ getAlert(): IBmbDataAlertsParsed;
6
8
  static ɵfac: i0.ɵɵFactoryDeclaration<BmbNotificationCardModalComponent, never>;
7
- static ɵcmp: i0.ɵɵComponentDeclaration<BmbNotificationCardModalComponent, "bmb-notification-card-modal", never, { "visibleAlert": { "alias": "visibleAlert"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbNotificationCardModalComponent, "bmb-notification-card-modal", never, { "visibleAlert": { "alias": "visibleAlert"; "required": false; "isSignal": true; }; }, { "alertEvent": "alertEvent"; }, never, never, true, never>;
8
10
  }
@@ -0,0 +1,20 @@
1
+ import { IBmbDataAlert, IBmbDataAlertsParsed } from '../../bmb-alert-center/types';
2
+ import { DomSanitizer } from '@angular/platform-browser';
3
+ import * as i0 from "@angular/core";
4
+ export declare class BmbAlertCenterDetailComponent {
5
+ private readonly sanitizer;
6
+ alert: import("@angular/core").InputSignal<IBmbDataAlert | IBmbDataAlertsParsed>;
7
+ alertEvent: import("@angular/core").OutputEmitterRef<IBmbDataAlert | IBmbDataAlertsParsed>;
8
+ constructor(sanitizer: DomSanitizer);
9
+ /**
10
+ * Sanitizes HTML content using DOMPurify before bypassing Angular's built-in sanitization.
11
+ * This is safe because:
12
+ * 1. Content is pre-sanitized with DOMPurify using restrictive forbidTagsAndAttributes config
13
+ * 2. DOMPurify removes all potentially dangerous HTML/JS content
14
+ * 3. Only safe HTML tags and attributes are allowed through the configuration
15
+ */
16
+ sanitizedHtml(html: string): import("@angular/platform-browser").SafeHtml;
17
+ handleAlertEvent(alert: IBmbDataAlertsParsed | IBmbDataAlert): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<BmbAlertCenterDetailComponent, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<BmbAlertCenterDetailComponent, "bmb-alert-center-detail", never, { "alert": { "alias": "alert"; "required": true; "isSignal": true; }; }, { "alertEvent": "alertEvent"; }, never, never, true, never>;
20
+ }
@@ -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
  }
@@ -6,7 +6,7 @@ export declare class BmbCalendarService {
6
6
  addMultipleEvents(events: IBmbCalendarEvent[]): void;
7
7
  addEvent(event: IBmbCalendarEvent): void;
8
8
  deleteEvent(id: string): void;
9
- editEvent(id: string): void;
9
+ editEvent(id: string, newEventData: Partial<IBmbCalendarEvent>): void;
10
10
  getEventList(): IBmbCalendarEvent[];
11
11
  setIsLoading(state: boolean): void;
12
12
  getIsLoading(): boolean;
@@ -11,3 +11,7 @@ export declare const isErrorMessageSet: (errorMessage: string | IBmbInputError)
11
11
  export declare const getCustomValidation: (customValidation: ValidatorFn, formControl: FormControl) => ValidationErrors | null;
12
12
  export declare const getCustomValidationMessage: (result: ValidationErrors | null, errorMessage: string | IBmbInputError) => string;
13
13
  export declare const getMobileResolutionSize: (isMobile?: boolean) => string;
14
+ export declare const forbidTagsAndAttributes: {
15
+ FORBID_TAGS: string[];
16
+ FORBID_ATTR: string[];
17
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ti-tecnologico-de-monterrey-oficial/ds-ng",
3
- "version": "1.5.1318",
3
+ "version": "1.5.1319-a",
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",
@@ -30,8 +30,6 @@
30
30
  },
31
31
  ".": {
32
32
  "types": "./index.d.ts",
33
- "esm2022": "./esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs",
34
- "esm": "./esm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs",
35
33
  "default": "./fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs"
36
34
  }
37
35
  },
@@ -1,122 +0,0 @@
1
- {
2
- "account_statement": {
3
- "title": "Account Statement",
4
- "progress_circle_title": "Total to pay this month",
5
- "label_primary": "Monthly Fee",
6
- "label_secondary": "Pending",
7
- "payment_deadline_label": "Payment Deadline:",
8
- "cut_off_date_label": "Cut-off Date:",
9
- "pay_button_label": "Pay",
10
- "back_button_label": "Back",
11
- "modal_title": "Pay",
12
- "modal_subtitle": "How much would you like to pay?",
13
- "modal_rest_label": "Remaining Payment",
14
- "modal_other_amount_label": "Other Amount",
15
- "modal_primary_button_label": "Pay",
16
- "error_message": "Error, This field is required",
17
- "progress_title": "Total Paid"
18
- },
19
- "advertisement_card": {
20
- "title": "My Ads"
21
- },
22
- "alert_center": {
23
- "empty_state": {
24
- "primary_text": "You have no notifications to show"
25
- },
26
- "loader": {
27
- "loading": "Loading...",
28
- "subtitle": "Loading notifications",
29
- "primary_button": "Retry",
30
- "secondary_button": "Exit"
31
- },
32
- "form": {
33
- "empty_state": {
34
- "primary_text": "You have no notifications to show"
35
- }
36
- }
37
- },
38
- "balance_overview": {
39
- "progress_circle_value": "Progress Circle Value",
40
- "progress_circle_title": "Progress Circle Title",
41
- "label_primary": "Primary Label",
42
- "label_secondary": "Secondary Label",
43
- "value_primary": "$0",
44
- "value_secondary": "$0"
45
- },
46
- "calendar": {
47
- "title": "My calendar",
48
- "today": "Today",
49
- "month": "Month",
50
- "week": "Week",
51
- "day": "Day",
52
- "calendar": "Calendar",
53
- "subtitle": "Select the calendars you want to view",
54
- "filter_save": "Save"
55
- },
56
- "chat_bar": {
57
- "placeholder": "What would you like to find today?",
58
- "drag_files": "Drag your files here"
59
- },
60
- "digital_id": {
61
- "secondary_button_label": "Download ID as PDF"
62
- },
63
- "dropzone": {
64
- "drop_instructions": "Drag and drop your files here or",
65
- "drop_label": "Select files",
66
- "error_message": "Unsupported file",
67
- "error_message_format": "Unsupported format",
68
- "error_message_size": "File size exceeds the allowed limit",
69
- "format_files_label": "Specification of formats and weight",
70
- "link_label": "View more information about accepted file formats."
71
- },
72
- "header_mitec": {
73
- "header_label": "STUDENTS"
74
- },
75
- "home_card_chat": {
76
- "title": "TecBot assistant",
77
- "subtitle": "Chat"
78
- },
79
- "login": {
80
- "header_label": "STUDENTS",
81
- "forgotten_password": "Forgot your password?",
82
- "remember_me": "Remember me",
83
- "login_as_guest": "Login as Guest",
84
- "button_label": "Log In"
85
- },
86
- "login_onboarding": {
87
- "another_account": "Log in with another account",
88
- "forgot_password": "Forgot your password?"
89
- },
90
- "notice_card": {
91
- "button_text": "Understood"
92
- },
93
- "step_progress_bar": {
94
- "label_completed": "Complete",
95
- "label_pending": "Pending"
96
- },
97
- "switch": {
98
- "aria_label": "Describe the action of the switch"
99
- },
100
- "totp": {
101
- "title": "TOTP",
102
- "subtitle": "Time-based One-Time Password"
103
- },
104
- "user_profile": {
105
- "header": "STUDENTS",
106
- "another_account": "Log in with another account",
107
- "button_label": "Log In"
108
- },
109
- "user_summary": {
110
- "salutation": "Good afternoon",
111
- "digital_id": "Digital ID"
112
- },
113
- "notification_card": {
114
- "tabs": {
115
- "notifications": "Notifications",
116
- "advertisements": "Advertisements"
117
- },
118
- "empty_state": {
119
- "primary_text": "You have no notifications to show"
120
- }
121
- }
122
- }
@@ -1,122 +0,0 @@
1
- {
2
- "account_statement": {
3
- "title": "Estado de cuenta",
4
- "progress_circle_title": "Total a pagar este mes",
5
- "label_primary": "Cuota Mensual",
6
- "label_secondary": "Pendiente",
7
- "payment_deadline_label": "Fecha límite de pago:",
8
- "cut_off_date_label": "Fecha de corte:",
9
- "pay_button_label": "Pagar",
10
- "back_button_label": "Regresar",
11
- "modal_title": "Pagar",
12
- "modal_subtitle": "¿Cuánto deseas pagar?",
13
- "modal_rest_label": "Pagar restante",
14
- "modal_other_amount_label": "Otra cantidad",
15
- "modal_primary_button_label": "Pagar",
16
- "error_message": "Error, Este campo es requerido",
17
- "progress_title": "Total pagado"
18
- },
19
- "advertisement_card": {
20
- "title": "Mis anuncios"
21
- },
22
- "alert_center": {
23
- "empty_state": {
24
- "primary_text": "No tienes notificaciones para mostrar"
25
- },
26
- "loader": {
27
- "loading": "Cargando...",
28
- "subtitle": "Cargando las notificaciones",
29
- "primary_button": "Reintentar",
30
- "secondary_button": "Salir"
31
- },
32
- "form": {
33
- "empty_state": {
34
- "primary_text": "No tienes notificaciones para mostrar"
35
- }
36
- }
37
- },
38
- "balance_overview": {
39
- "progress_circle_value": "Valor del círculo de progreso",
40
- "progress_circle_title": "Título del círculo de progreso",
41
- "label_primary": "Etiqueta primaria",
42
- "label_secondary": "Etiqueta secundaria",
43
- "value_primary": "$0",
44
- "value_secondary": "$0"
45
- },
46
- "calendar": {
47
- "title": "Mi Calendario",
48
- "today": "Hoy",
49
- "month": "Mes",
50
- "week": "Semana",
51
- "day": "Día",
52
- "calendar": "Calendario",
53
- "subtitle": "Selecciona los calendarios que quieres ver",
54
- "filter_save": "Guardar"
55
- },
56
- "chat_bar": {
57
- "placeholder": "¿Qué deseas encontrar hoy?",
58
- "drag_files": "Arrastra tus archivos aquí"
59
- },
60
- "digital_id": {
61
- "secondary_button_label": "Descargar ID a PDF"
62
- },
63
- "dropzone": {
64
- "drop_instructions": "Arrastra y suelta tus archivos aquí o",
65
- "drop_label": "Selecciona archivos",
66
- "error_message": "Archivo no compatible",
67
- "error_message_format": "Formato no soportado",
68
- "error_message_size": "El archivo supera el tamaño permitido",
69
- "format_files_label": "Especificación de formatos y peso",
70
- "link_label": "Ver más información de formatos de archivo aceptados."
71
- },
72
- "header_mitec": {
73
- "header_label": "ESTUDIANTES"
74
- },
75
- "home_card_chat": {
76
- "title": "Asistente TecBot",
77
- "subtitle": "Chat"
78
- },
79
- "login": {
80
- "header_label": "ESTUDIANTES",
81
- "forgotten_password": "¿Olvidaste tu contraseña?",
82
- "remember_me": "Recuérdame",
83
- "login_as_guest": "Entrar como invitado",
84
- "button_label": "Iniciar sesión"
85
- },
86
- "login_onboarding": {
87
- "another_account": "Iniciar sesión con otra cuenta",
88
- "forgot_password": "¿Olvidaste tu contraseña?"
89
- },
90
- "notice_card": {
91
- "button_text": "Enterado"
92
- },
93
- "step_progress_bar": {
94
- "label_completed": "Completo",
95
- "label_pending": "Pendiente"
96
- },
97
- "switch": {
98
- "aria_label": "Describe la acción del interruptor"
99
- },
100
- "totp": {
101
- "title": "TOTP",
102
- "subtitle": "Contraseña de un solo uso"
103
- },
104
- "user_profile": {
105
- "header": "ESTUDIANTES",
106
- "another_account": "Iniciar sesión con otra cuenta",
107
- "button_label": "Iniciar sesión"
108
- },
109
- "user_summary": {
110
- "salutation": "Buenas tardes",
111
- "digital_id": "ID Digital"
112
- },
113
- "notification_card": {
114
- "tabs": {
115
- "notifications": "Notificaciones",
116
- "advertisements": "Anuncios"
117
- },
118
- "empty_state": {
119
- "primary_text": "No tienes elementos para mostrar"
120
- }
121
- }
122
- }
@@ -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.14", ngImport: i0, type: BmbAcademicProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
75
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", 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", "isContainerQuery"] }, { 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.14", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MvYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MvYm1iLWFjYWRlbWljLXByb2dyZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFHTCxNQUFNLEVBRU4saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFpQi9DLE1BQU0sT0FBTyw0QkFBNEI7SUFmekM7UUFnQkUsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDakQsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDOUMsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFFOUMsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsRUFBRSxDQUFDLENBQUM7S0FvRXpEO0lBbEVDLFFBQVE7UUFDTixNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFNUMsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FDYjtjQUNNLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztTQUM5QixDQUNGLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUNqQjtnQkFDRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUk7Z0JBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBZTthQUN6QztZQUNEO2dCQUNFLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSTtnQkFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFlO2FBQ3RDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJO2dCQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQWU7YUFDdEM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sZUFBZSxHQUNuQixPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMzRCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4RSxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV4RSxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ2pCO2dCQUNFLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtnQkFDMUIsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFlO2FBQ3ZDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFlBQVksQ0FBQyxJQUFJO2dCQUN2QixLQUFLLEVBQUUsWUFBWSxDQUFDLEtBQWU7YUFDcEM7WUFDRDtnQkFDRSxJQUFJLEVBQUUsWUFBWSxDQUFDLElBQUk7Z0JBQ3ZCLEtBQUssRUFBRSxZQUFZLENBQUMsS0FBZTthQUNwQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBNkM7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQ2QsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3hCLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7YUFDcEIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBeUI7UUFDeEMsT0FBTyxPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDO0lBQzFDLENBQUM7K0dBeEVVLDRCQUE0QjttR0FBNUIsNEJBQTRCLGtmQ2pDekMsb2ZBbUJBLGlwTURHSSxxQkFBcUIsOEZBQ3JCLHdCQUF3QixnSkFDeEIsa0JBQWtCLG1KQUNsQixzQkFBc0IsZ0pBQ3RCLFlBQVk7OzRGQU9ILDRCQUE0QjtrQkFmeEMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQO3dCQUNQLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsWUFBWTtxQkFDYixpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgaW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBzaWduYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJtYkZvY3VzRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1mb2N1cy1lbGVtZW50L2JtYi1mb2N1cy1lbGVtZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJMYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1sYXlvdXQvYm1iLWxheW91dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm1iTGF5b3V0SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWxheW91dC9ibWItbGF5b3V0LWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IEJtYkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1jb250YWluZXIvYm1iLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSUJtYk5hbWVWYWx1ZVBhaXIgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBidWlsZEVycm9yTWVzc2FnZSB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1hY2FkZW1pYy1wcm9ncmVzcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBCbWJDb250YWluZXJDb21wb25lbnQsXG4gICAgQm1iRm9jdXNFbGVtZW50Q29tcG9uZW50LFxuICAgIEJtYkxheW91dERpcmVjdGl2ZSxcbiAgICBCbWJMYXlvdXRJdGVtRGlyZWN0aXZlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgXSxcbiAgc3R5bGVVcmw6ICcuL2JtYi1hY2FkZW1pYy1wcm9ncmVzcy5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItYWNhZGVtaWMtcHJvZ3Jlc3MuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iQWNhZGVtaWNQcm9ncmVzc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgYWNjcmVkaXRlZCA9IGlucHV0LnJlcXVpcmVkPElCbWJOYW1lVmFsdWVQYWlyPigpO1xuICBhdmVyYWdlID0gaW5wdXQucmVxdWlyZWQ8SUJtYk5hbWVWYWx1ZVBhaXI+KCk7XG4gIHN1bW1hcnkgPSBpbnB1dC5yZXF1aXJlZDxJQm1iTmFtZVZhbHVlUGFpcj4oKTtcblxuICBtZXRyaWNzID0gc2lnbmFsPHsgbmFtZTogc3RyaW5nOyB2YWx1ZTogbnVtYmVyIH1bXT4oW10pO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IGlucHV0czogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoIXRoaXMuYWNjcmVkaXRlZCgpKSBpbnB1dHMucHVzaCgnYWNjcmVkaXRlZCcpO1xuICAgIGlmICghdGhpcy5hdmVyYWdlKCkpIGlucHV0cy5wdXNoKCdhdmVyYWdlJyk7XG4gICAgaWYgKCF0aGlzLnN1bW1hcnkoKSkgaW5wdXRzLnB1c2goJ3N1bW1hcnknKTtcblxuICAgIGlmIChpbnB1dHMubGVuZ3RoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBcbiAgICAgICAgVGhlICR7YnVpbGRFcnJvck1lc3NhZ2UoaW5wdXRzKX0gcmVxdWlyZWQuXG4gICAgICAgIGAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlTWV0cmljcyhbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IHRoaXMuYWNjcmVkaXRlZCgpLm5hbWUsXG4gICAgICAgIHZhbHVlOiB0aGlzLmFjY3JlZGl0ZWQoKS52YWx1ZSBhcyBudW1iZXIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiB0aGlzLmF2ZXJhZ2UoKS5uYW1lLFxuICAgICAgICB2YWx1ZTogdGhpcy5hdmVyYWdlKCkudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogdGhpcy5zdW1tYXJ5KCkubmFtZSxcbiAgICAgICAgdmFsdWU6IHRoaXMuc3VtbWFyeSgpLnZhbHVlIGFzIG51bWJlcixcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgYWNjcmVkaXRlZFZhbHVlID1cbiAgICAgIGNoYW5nZXNbJ2FjY3JlZGl0ZWQnXT8uY3VycmVudFZhbHVlIHx8IHRoaXMuYWNjcmVkaXRlZCgpO1xuICAgIGNvbnN0IGF2ZXJhZ2VWYWx1ZSA9IGNoYW5nZXNbJ2F2ZXJhZ2UnXT8uY3VycmVudFZhbHVlIHx8IHRoaXMuYXZlcmFnZSgpO1xuICAgIGNvbnN0IHN1bW1hcnlWYWx1ZSA9IGNoYW5nZXNbJ3N1bW1hcnknXT8uY3VycmVudFZhbHVlIHx8IHRoaXMuc3VtbWFyeSgpO1xuXG4gICAgdGhpcy51cGRhdGVNZXRyaWNzKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogYWNjcmVkaXRlZFZhbHVlLm5hbWUsXG4gICAgICAgIHZhbHVlOiBhY2NyZWRpdGVkVmFsdWUudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogYXZlcmFnZVZhbHVlLm5hbWUsXG4gICAgICAgIHZhbHVlOiBhdmVyYWdlVmFsdWUudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogc3VtbWFyeVZhbHVlLm5hbWUsXG4gICAgICAgIHZhbHVlOiBzdW1tYXJ5VmFsdWUudmFsdWUgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxuXG4gIHVwZGF0ZU1ldHJpY3MobmV3TWV0cmljczogeyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfVtdKTogdm9pZCB7XG4gICAgdGhpcy5tZXRyaWNzLnNldChcbiAgICAgIG5ld01ldHJpY3MubWFwKChtZXRyaWMpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuYW1lOiBtZXRyaWMubmFtZSxcbiAgICAgICAgICB2YWx1ZTogbWV0cmljLnZhbHVlLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHNob3VsZFNob3dNZXRyaWMobWV0cmljOiBJQm1iTmFtZVZhbHVlUGFpcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eXBlb2YgbWV0cmljLnZhbHVlID09PSAnbnVtYmVyJztcbiAgfVxufVxuIiwiPGJtYi1jb250YWluZXIgY2xhc3M9XCJibWJfYWNhZGVtaWMtcHJvZ3Jlc3Mtc3VtbWFyeVwiPlxuICA8c2VjdGlvblxuICAgIGNsYXNzPVwiYm1iX2FjYWRlbWljLXByb2dyZXNzLXN1bW1hcnktY29udGFpbmVyXCJcbiAgICBibWJMYXlvdXRcbiAgICBtYXJnaW49XCJub25lXCJcbiAgICBqdXN0aWZ5PVwic3BhY2VBcm91bmRcIlxuICAgIFtkeW5hbWljQ29sc109XCJ0cnVlXCJcbiAgPlxuICAgIEBmb3IgKG1ldHJpYyBvZiBtZXRyaWNzKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgPGJtYi1mb2N1cy1lbGVtZW50XG4gICAgICAgIGJtYkxheW91dEl0ZW1cbiAgICAgICAgW3RpdGxlXT1cIm1ldHJpYy5uYW1lXCJcbiAgICAgICAgW251bWJlcl09XCJtZXRyaWMudmFsdWVcIlxuICAgICAgICBbaXNOb3JtYWxdPVwidHJ1ZVwiXG4gICAgICAgIFtpc05vbkZvY3VzZWRdPVwidHJ1ZVwiXG4gICAgICAvPlxuICAgIH1cbiAgPC9zZWN0aW9uPlxuPC9ibWItY29udGFpbmVyPlxuIl19