@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1317 → 1.5.1318-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 (218) hide show
  1. package/esm2022/lib/components/bmb-academic-progress/bmb-academic-progress.component.mjs +4 -4
  2. package/esm2022/lib/components/bmb-accordion/bmb-accordion.component.mjs +12 -6
  3. package/esm2022/lib/components/bmb-account-statement/bmb-account-statement.component.mjs +4 -4
  4. package/esm2022/lib/components/bmb-action-icon/bmb-action-icon.component.mjs +4 -4
  5. package/esm2022/lib/components/bmb-action-menu/bmb-action-menu.component.mjs +3 -3
  6. package/esm2022/lib/components/bmb-advertisement-card/bmb-advertisement-card.component.mjs +3 -3
  7. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.mjs +9 -43
  8. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-empty/bmb-alert-center-empty.component.mjs +3 -3
  9. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-form/bmb-alert-center-form.component.mjs +4 -4
  10. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +6 -7
  11. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +8 -10
  12. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.service.mjs +3 -3
  13. package/esm2022/lib/components/bmb-alert-center/types.mjs +1 -1
  14. package/esm2022/lib/components/bmb-badge/bmb-badge.component.mjs +3 -3
  15. package/esm2022/lib/components/bmb-balance-overview/bmb-balance-overview.component.mjs +3 -3
  16. package/esm2022/lib/components/bmb-bookmark/bmb-bookmark.component.mjs +3 -3
  17. package/esm2022/lib/components/bmb-bottom-navigation-bar/bmb-bottom-navigation-bar.component.mjs +4 -4
  18. package/esm2022/lib/components/bmb-breadcrumb/bmb-breadcrumb.component.mjs +4 -4
  19. package/esm2022/lib/components/bmb-button-icon/bmb-button-icon.component.mjs +3 -3
  20. package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +6 -8
  21. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-header/bmb-calendar-header.component.mjs +4 -4
  22. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-hour-view/bmb-calendar-hour-view.component.mjs +4 -4
  23. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-schedule-cards/bmb-calendar-schedule-cards.component.mjs +4 -4
  24. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-day/bmb-calendar-template-day.component.mjs +3 -3
  25. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-mobile/bmb-calendar-template-mobile.component.mjs +4 -4
  26. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-month/bmb-calendar-template-month.component.mjs +3 -3
  27. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-template-week/bmb-calendar-template-week.component.mjs +3 -3
  28. package/esm2022/lib/components/bmb-calendar/common/bmb-calendar-time-indicator/bmb-calendar-time-indicator.component.mjs +3 -3
  29. package/esm2022/lib/components/bmb-calendar/utils.mjs +1 -1
  30. package/esm2022/lib/components/bmb-card/bmb-card.component.mjs +13 -13
  31. package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +4 -4
  32. package/esm2022/lib/components/bmb-carousel/bmb-carousel.component.mjs +4 -4
  33. package/esm2022/lib/components/bmb-chat-bar/bmb-chat-bar.component.mjs +4 -4
  34. package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +3 -3
  35. package/esm2022/lib/components/bmb-check-external-link-button/bmb-check-external-link-button.component.mjs +3 -3
  36. package/esm2022/lib/components/bmb-checkbox/bmb-checkbox.component.mjs +4 -4
  37. package/esm2022/lib/components/bmb-chevron-title-selector/bmb-chevron-title-selector.component.mjs +3 -3
  38. package/esm2022/lib/components/bmb-container/bmb-container.component.mjs +4 -4
  39. package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +4 -4
  40. package/esm2022/lib/components/bmb-date-range/bmb-date-range.component.mjs +4 -4
  41. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker-modal/bmb-datepicker-modal.component.mjs +4 -4
  42. package/esm2022/lib/components/bmb-datepicker/bmb-datepicker.component.mjs +4 -4
  43. package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +7 -7
  44. package/esm2022/lib/components/bmb-divider/bmb-divider.component.mjs +4 -4
  45. package/esm2022/lib/components/bmb-dot-paginator/bmb-dot-paginator.component.mjs +4 -4
  46. package/esm2022/lib/components/bmb-drawer-overlay/bmb-drawer-overlay.component.mjs +5 -5
  47. package/esm2022/lib/components/bmb-dropdown/bmb-dropdown.component.mjs +4 -4
  48. package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +12 -5
  49. package/esm2022/lib/components/bmb-dropzone/bmb-dropzone.component.mjs +4 -4
  50. package/esm2022/lib/components/bmb-evaluation-rubric/bmb-evaluation-rubric.component.mjs +4 -4
  51. package/esm2022/lib/components/bmb-external-link/bmb-external-link.component.mjs +3 -3
  52. package/esm2022/lib/components/bmb-fab/bmb-fab.component.mjs +4 -4
  53. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +4 -4
  54. package/esm2022/lib/components/bmb-focus-element/bmb-focus-element.component.mjs +3 -3
  55. package/esm2022/lib/components/bmb-form-validator/bmb-form-validator.component.mjs +4 -4
  56. package/esm2022/lib/components/bmb-frequent-apps-selector/bmb-frequent-apps-selector.component.mjs +3 -3
  57. package/esm2022/lib/components/bmb-grade-value/bmb-grade-value.component.mjs +3 -3
  58. package/esm2022/lib/components/bmb-grades/bmb-grades.component.mjs +4 -4
  59. package/esm2022/lib/components/bmb-header-mitec/bmb-header-mitec.component.mjs +3 -3
  60. package/esm2022/lib/components/bmb-header-mobile/bmb-header-mobile.component.mjs +3 -3
  61. package/esm2022/lib/components/bmb-hito-card/bmb-hito-card.component.mjs +4 -4
  62. package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +4 -4
  63. package/esm2022/lib/components/bmb-home-card/bmb-home-card-header/bmb-home-card-header.component.mjs +4 -4
  64. package/esm2022/lib/components/bmb-home-card/bmb-home-card.component.mjs +3 -3
  65. package/esm2022/lib/components/bmb-home-card-chat/bmb-home-card-chat.component.mjs +3 -3
  66. package/esm2022/lib/components/bmb-home-section/bmb-home-section.component.mjs +3 -3
  67. package/esm2022/lib/components/bmb-icon/bmb-icon.component.mjs +4 -4
  68. package/esm2022/lib/components/bmb-icon-item/bmb-icon-item.component.mjs +3 -3
  69. package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +6 -5
  70. package/esm2022/lib/components/bmb-iframe/bmb-iframe.component.mjs +3 -3
  71. package/esm2022/lib/components/bmb-iframe/bmb-iframe.pipe.mjs +3 -3
  72. package/esm2022/lib/components/bmb-image/bmb-image.component.mjs +3 -3
  73. package/esm2022/lib/components/bmb-inner-header/bmb-inner-header.component.mjs +3 -3
  74. package/esm2022/lib/components/bmb-input/bmb-input-content/bmb-input-content.component.mjs +4 -4
  75. package/esm2022/lib/components/bmb-input/bmb-input-validator/bmb-input-validator.component.mjs +4 -4
  76. package/esm2022/lib/components/bmb-input/bmb-input.component.mjs +4 -4
  77. package/esm2022/lib/components/bmb-input-phone-number/bmb-input-phone-number.component.mjs +4 -4
  78. package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +4 -4
  79. package/esm2022/lib/components/bmb-interactive-icon/bmb-interactive-icon.component.mjs +4 -4
  80. package/esm2022/lib/components/bmb-invoice/bmb-invoice.component.mjs +4 -4
  81. package/esm2022/lib/components/bmb-item/bmb-item.component.mjs +3 -3
  82. package/esm2022/lib/components/bmb-legend/bmb-legend.component.mjs +3 -3
  83. package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +4 -4
  84. package/esm2022/lib/components/bmb-list-group/bmb-list-group.component.mjs +4 -4
  85. package/esm2022/lib/components/bmb-list-group/bmb-list-group.service.mjs +4 -4
  86. package/esm2022/lib/components/bmb-list-items/bmb-list-items.component.mjs +4 -4
  87. package/esm2022/lib/components/bmb-loader/bmb-loader.component.mjs +4 -4
  88. package/esm2022/lib/components/bmb-login/bmb-login-content/bmb-login-content.component.mjs +4 -4
  89. package/esm2022/lib/components/bmb-login/bmb-login.component.mjs +4 -4
  90. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logged/bmb-login-onboarding-logged.component.mjs +5 -5
  91. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-login/bmb-login-onboarding-login.component.mjs +5 -5
  92. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-logout/bmb-login-onboarding-logout.component.mjs +5 -5
  93. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-four.component.mjs +4 -4
  94. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-one.component.mjs +4 -4
  95. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-three.component.mjs +4 -4
  96. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step-two.component.mjs +4 -4
  97. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper-steps/bmb-login-onboarding-stepper-step.component.mjs +5 -5
  98. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding-stepper/bmb-login-onboarding-stepper.component.mjs +5 -5
  99. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.component.mjs +5 -5
  100. package/esm2022/lib/components/bmb-login-onboarding/bmb-login-onboarding.service.mjs +3 -3
  101. package/esm2022/lib/components/bmb-logo/bmb-logo.component.mjs +4 -4
  102. package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +5 -5
  103. package/esm2022/lib/components/bmb-mitec-logo-animation/bmb-mitec-logo-animation.component.mjs +4 -4
  104. package/esm2022/lib/components/bmb-mobile-templates/bmb-mobile-templates.component.mjs +3 -3
  105. package/esm2022/lib/components/bmb-modal/bmb-modal.component.mjs +4 -4
  106. package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +6 -5
  107. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator-item/bmb-multi-dot-paginator-item.component.mjs +3 -3
  108. package/esm2022/lib/components/bmb-multi-dot-paginator/bmb-multi-dot-paginator.component.mjs +4 -4
  109. package/esm2022/lib/components/bmb-navigation-bar/bmb-navigation-bar.component.mjs +3 -3
  110. package/esm2022/lib/components/bmb-notice-card/bmb-notice-card.component.mjs +3 -3
  111. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card-modal/bmb-notification-card-modal.component.mjs +15 -10
  112. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +4 -4
  113. package/esm2022/lib/components/bmb-notification-counter/bmb-notification-counter.component.mjs +3 -3
  114. package/esm2022/lib/components/bmb-overlay/bmb-overlay.component.mjs +3 -3
  115. package/esm2022/lib/components/bmb-paginator/bmb-paginator.component.mjs +4 -4
  116. package/esm2022/lib/components/bmb-portal/bmb-portal.component.mjs +4 -4
  117. package/esm2022/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.mjs +5 -5
  118. package/esm2022/lib/components/bmb-profile/bmb-profile.component.mjs +4 -4
  119. package/esm2022/lib/components/bmb-progress-bar/bmb-progress-bar.component.mjs +4 -4
  120. package/esm2022/lib/components/bmb-progress-cirlce/bmb-progress-circle.component.mjs +4 -4
  121. package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +4 -4
  122. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +11 -5
  123. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification.component.mjs +4 -4
  124. package/esm2022/lib/components/bmb-push-notification/types.mjs +1 -1
  125. package/esm2022/lib/components/bmb-radial/bmb-radial.component.mjs +4 -4
  126. package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +4 -4
  127. package/esm2022/lib/components/bmb-server-table/bmb-server-table.component.mjs +4 -4
  128. package/esm2022/lib/components/bmb-sidebar/bmb-sidebar.component.mjs +4 -4
  129. package/esm2022/lib/components/bmb-simple-header/bmb-simple-header.component.mjs +3 -3
  130. package/esm2022/lib/components/bmb-skeleton/bmb-skeleton.component.mjs +3 -3
  131. package/esm2022/lib/components/bmb-sounds-card/bmb-sounds-card.component.mjs +4 -4
  132. package/esm2022/lib/components/bmb-stat-counter/bmb-stat-counter.component.mjs +3 -3
  133. package/esm2022/lib/components/bmb-step-progress-bar/bmb-step-progress-bar.component.mjs +4 -4
  134. package/esm2022/lib/components/bmb-student-activity-card/bmb-student-activity-card.component.mjs +4 -4
  135. package/esm2022/lib/components/bmb-student-activity-selector/bmb-student-activity-tab/bmb-student-activity-tab.component.mjs +3 -3
  136. package/esm2022/lib/components/bmb-switch/bmb-switch.component.mjs +4 -4
  137. package/esm2022/lib/components/bmb-table-lite/bmb-table-lite.component.mjs +4 -4
  138. package/esm2022/lib/components/bmb-tables/bmb-tables.component.mjs +4 -4
  139. package/esm2022/lib/components/bmb-tabs/bmb-tabs.component.mjs +4 -4
  140. package/esm2022/lib/components/bmb-tags/bmb-tags.component.mjs +4 -4
  141. package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +4 -4
  142. package/esm2022/lib/components/bmb-text-link/bmb-text-link.component.mjs +3 -3
  143. package/esm2022/lib/components/bmb-theme/bmb-theme.component.mjs +4 -4
  144. package/esm2022/lib/components/bmb-three-cols/bmb-three-cols.component.mjs +3 -3
  145. package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +5 -5
  146. package/esm2022/lib/components/bmb-timestream/bmb-timestream-error/bmb-timestream-error.component.mjs +3 -3
  147. package/esm2022/lib/components/bmb-timestream/bmb-timestream.component.mjs +4 -4
  148. package/esm2022/lib/components/bmb-timestream-card/bmb-timestream-card.component.mjs +4 -4
  149. package/esm2022/lib/components/bmb-title-content/bmb-title-content.component.mjs +4 -4
  150. package/esm2022/lib/components/bmb-toast/bmb-toast.component.mjs +4 -4
  151. package/esm2022/lib/components/bmb-tooltip/bmb-tooltip.component.mjs +4 -4
  152. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-item/bmb-top-bar-item.component.mjs +3 -3
  153. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +4 -4
  154. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar.component.mjs +4 -4
  155. package/esm2022/lib/components/bmb-totp/bmb-totp.component.mjs +4 -4
  156. package/esm2022/lib/components/bmb-user-image/bmb-user-image.component.mjs +3 -3
  157. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile-content/bmb-user-profile-content.component.mjs +3 -3
  158. package/esm2022/lib/components/bmb-user-profile/bmb-user-profile.component.mjs +3 -3
  159. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary-content/bmb-user-summary-content.component.mjs +4 -4
  160. package/esm2022/lib/components/bmb-user-summary/bmb-user-summary.component.mjs +3 -3
  161. package/esm2022/lib/components/bmb-value-counter/bmb-value-counter.component.mjs +3 -3
  162. package/esm2022/lib/components/bmb-web-templates/bmb-web-templates.component.mjs +3 -3
  163. package/esm2022/lib/components/bmb-wheel-menu/bmb-wheel-menu.component.mjs +4 -4
  164. package/esm2022/lib/components/utils/bmb-alert-center-detail/bmb-alert-center-detail.component.mjs +37 -0
  165. package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +9 -6
  166. package/esm2022/lib/directives/bmb-accordion/bmb-accordion-control.directive.mjs +4 -4
  167. package/esm2022/lib/directives/bmb-button/button.directive.mjs +4 -4
  168. package/esm2022/lib/directives/bmb-button-group/bmb-button-group.directive.mjs +3 -3
  169. package/esm2022/lib/directives/bmb-layout/bmb-layout-item.directive.mjs +4 -4
  170. package/esm2022/lib/directives/bmb-layout/bmb-layout.directive.mjs +3 -3
  171. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout-item.directive.mjs +4 -4
  172. package/esm2022/lib/directives/bmb-layout/bmb-vertical-layout/bmb-vertical-layout.directive.mjs +3 -3
  173. package/esm2022/lib/directives/bmb-layout-grid/bmb-layout-grid.directive.mjs +7 -7
  174. package/esm2022/lib/directives/bmb-selector/bmb-selector.directive.mjs +4 -4
  175. package/esm2022/lib/directives/utils/clickoutside.directive.mjs +3 -3
  176. package/esm2022/lib/ds-ng.component.mjs +3 -3
  177. package/esm2022/lib/ds-ng.service.mjs +3 -3
  178. package/esm2022/lib/pipes/translations.mjs +3 -3
  179. package/esm2022/lib/services/calendar/calendar.service.mjs +6 -6
  180. package/esm2022/lib/services/calendar.service.mjs +3 -3
  181. package/esm2022/lib/services/modal/native-modal.service.mjs +4 -4
  182. package/esm2022/lib/services/native-modal.service.mjs +4 -4
  183. package/esm2022/lib/services/notification/notification.service.mjs +5 -5
  184. package/esm2022/lib/services/notification.service.mjs +4 -4
  185. package/esm2022/lib/services/projection/projection.service.mjs +4 -4
  186. package/esm2022/lib/services/projection.service.mjs +4 -4
  187. package/esm2022/lib/services/tabs/tabs.service.mjs +3 -3
  188. package/esm2022/lib/services/tabs.service.mjs +3 -3
  189. package/esm2022/lib/services/theme/theme.service.mjs +3 -3
  190. package/esm2022/lib/services/theme.service.mjs +3 -3
  191. package/esm2022/lib/services/toast/toast.service.mjs +3 -3
  192. package/esm2022/lib/services/toast.service.mjs +3 -3
  193. package/esm2022/lib/services/translations/translations.service.mjs +4 -4
  194. package/esm2022/lib/services/user/profile.service.mjs +3 -3
  195. package/esm2022/lib/utils/dropdown.mjs +1 -1
  196. package/esm2022/lib/utils/formControl.mjs +1 -1
  197. package/esm2022/lib/utils/timestreamFilters.mjs +1 -1
  198. package/esm2022/lib/utils/utils.mjs +26 -1
  199. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +690 -639
  200. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
  201. package/lib/components/bmb-accordion/bmb-accordion.component.d.ts +2 -1
  202. package/lib/components/bmb-alert-center/bmb-alert-center-ads/bmb-alert-center-ads.component.d.ts +0 -4
  203. package/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.d.ts +1 -1
  204. package/lib/components/bmb-alert-center/bmb-alert-center.component.d.ts +3 -3
  205. package/lib/components/bmb-alert-center/types.d.ts +2 -0
  206. package/lib/components/bmb-calendar/bmb-calendar.component.d.ts +4 -4
  207. package/lib/components/bmb-chat-bar/bmb-chat-bar.component.d.ts +2 -2
  208. package/lib/components/bmb-digital-id/bmb-digital-id.component.d.ts +3 -2
  209. package/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.d.ts +2 -1
  210. package/lib/components/bmb-icon-status/bmb-icon-status.component.d.ts +3 -1
  211. package/lib/components/bmb-notification-card/bmb-notification-card-modal/bmb-notification-card-modal.component.d.ts +5 -3
  212. package/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.d.ts +3 -0
  213. package/lib/components/bmb-push-notification/types.d.ts +2 -1
  214. package/lib/components/utils/bmb-alert-center-detail/bmb-alert-center-detail.component.d.ts +20 -0
  215. package/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.d.ts +2 -1
  216. package/lib/services/calendar/calendar.service.d.ts +1 -1
  217. package/lib/utils/utils.d.ts +4 -0
  218. package/package.json +1 -1
@@ -61,10 +61,10 @@ export class BmbInnerHeaderComponent {
61
61
  getFormControl(search) {
62
62
  return this.searchForm.get(search);
63
63
  }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbInnerHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
65
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbInnerHeaderComponent, isStandalone: true, selector: "bmb-inner-header", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, placeholderSearch: { classPropertyName: "placeholderSearch", publicName: "placeholderSearch", isSignal: true, isRequired: false, transformFunction: null }, subTitle: { classPropertyName: "subTitle", publicName: "subTitle", isSignal: true, isRequired: false, transformFunction: null }, trailingIconPrimary: { classPropertyName: "trailingIconPrimary", publicName: "trailingIconPrimary", isSignal: true, isRequired: false, transformFunction: null }, trailingIconSecondary: { classPropertyName: "trailingIconSecondary", publicName: "trailingIconSecondary", isSignal: true, isRequired: false, transformFunction: null }, disableTrailingIconPrimary: { classPropertyName: "disableTrailingIconPrimary", publicName: "disableTrailingIconPrimary", isSignal: true, isRequired: false, transformFunction: null }, disableTrailingIconSecondary: { classPropertyName: "disableTrailingIconSecondary", publicName: "disableTrailingIconSecondary", isSignal: true, isRequired: false, transformFunction: null }, showClose: { classPropertyName: "showClose", publicName: "showClose", isSignal: true, isRequired: false, transformFunction: null }, showReturn: { classPropertyName: "showReturn", publicName: "showReturn", isSignal: true, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onHandleTrailingPrimary: "onHandleTrailingPrimary", onHandleTrailingSecondary: "onHandleTrailingSecondary", onHandleBack: "onHandleBack", onHandleClose: "onHandleClose", searchData: "searchData" }, ngImport: i0, template: "<header class=\"bmb_inner_header\">\n <bmb-container>\n <span class=\"bmb_inner_header-container\">\n @if (toggleSearch()) {\n <form [formGroup]=\"searchForm\" class=\"bmb_inner_header-form\">\n <span class=\"bmb_inner_header-button\">\n <bmb-action-icon\n icon=\"close\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleSearch()\"\n />\n </span>\n <bmb-input\n [placeholder]=\"placeholderSearch()\"\n icon=\"search\"\n (isBlur)=\"onSubmit()\"\n [control]=\"getFormControl('search')\"\n />\n </form>\n } @else {\n <bmb-three-cols\n [ngClass]=\"{\n 'bmb_inner_header-container-space': !!trailingIconSecondary()\n }\"\n >\n <ng-template #bmbLeftContent>\n <bmb-action-icon\n [icon]=\"getLeftIcon()\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleBack($event)\"\n />\n </ng-template>\n <ng-template #bmbMainContent>\n <bmb-title-content\n [title]=\"title()\"\n titleSize=\"6\"\n [isCenterContent]=\"true\"\n [transparentBgC]=\"true\"\n />\n </ng-template>\n <ng-template #bmbRightContent>\n <span class=\"bmb_inner_header-actions\">\n @if (trailingIconSecondary()) {\n <bmb-action-icon\n [icon]=\"trailingIconSecondary()\"\n [disabled]=\"disableTrailingIconSecondary()\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleTrailingIconSecondary($event)\"\n />\n }\n @if (!!trailingIconPrimary() || showSearch()) {\n @if (showSearch()) {\n <bmb-action-icon\n icon=\"search\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleSearch()\"\n />\n } @else {\n <bmb-action-icon\n [icon]=\"trailingIconPrimary()\"\n [iconSize]=\"24\"\n [disabled]=\"disableTrailingIconPrimary()\"\n (buttonClick)=\"handleTrailingIconPrimary($event)\"\n />\n }\n }\n </span>\n </ng-template>\n </bmb-three-cols>\n }\n </span>\n <section class=\"bmb_inner_header-content\">\n <ng-content></ng-content>\n </section>\n </bmb-container>\n</header>\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_inner_header-container{width:100%}.bmb_inner_header-container-space .bmb_three-cols-child:first-child{width:4rem}.bmb_inner_header-form{width:100%;position:relative;padding:.5rem 0}.bmb_inner_header-form .bmb_inner_header-button{position:absolute;top:1.25rem;right:.625rem;z-index:1}.bmb_inner_header-form .bmb_field-input{padding-right:2.5rem}.bmb_inner_header-actions{display:inline-flex;gap:var(--bmb-spacing-m)}.bmb_inner_header .bmb_container{border-radius:0 0 .75rem .75rem;display:block}.bmb_inner_header .bmb_title-content-container-wrapper-title{color:var(--general_contrasts-100)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BmbContainerComponent, selector: "bmb-container", inputs: ["appearance", "isHidden"] }, { kind: "component", type: BmbThreeColsComponent, selector: "bmb-three-cols", inputs: ["gapSize", "justify", "alignItems", "expandMainColumn"] }, { kind: "component", type: BmbActionIconComponent, selector: "bmb-action-icon", inputs: ["idElement", "icon", "alt", "iconSize", "isFill", "toggleIconActive", "isToggleActive", "isAccentColor", "dotNotification", "target", "link", "disabled"], outputs: ["isToggleActiveChange", "isAccentColorChange", "buttonPress", "buttonClick"] }, { kind: "component", type: BmbTitleContentComponent, selector: "bmb-title-content", inputs: ["title", "titleSize", "titleFontWeight", "subtitle", "subtitleSize", "subtitleFontWeight", "subtitleIcon", "subtitleIconSize", "isCenterContent", "dataLocalNav", "transparentBgC", "icon", "iconSize", "bgIconAppearance"] }, { kind: "component", type: BmbInputComponent, selector: "bmb-input", inputs: ["label", "type", "placeholder", "icon", "appearance", "errorMessage", "helperMessage", "disabled", "isRequired", "name", "spellcheck", "jsonFormat", "heightTextArea", "maxlength", "minlength", "pattern", "size", "max", "min", "id", "value", "autocomplete", "tooltip", "rows", "showMaxTextLength", "additionalAction", "tooltipPosition", "isClearable", "customValidation", "showError", "control"], outputs: ["showErrorChange", "controlChange", "isFocus", "isBlur", "onChange", "onKeyDown"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbInnerHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbInnerHeaderComponent, isStandalone: true, selector: "bmb-inner-header", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, placeholderSearch: { classPropertyName: "placeholderSearch", publicName: "placeholderSearch", isSignal: true, isRequired: false, transformFunction: null }, subTitle: { classPropertyName: "subTitle", publicName: "subTitle", isSignal: true, isRequired: false, transformFunction: null }, trailingIconPrimary: { classPropertyName: "trailingIconPrimary", publicName: "trailingIconPrimary", isSignal: true, isRequired: false, transformFunction: null }, trailingIconSecondary: { classPropertyName: "trailingIconSecondary", publicName: "trailingIconSecondary", isSignal: true, isRequired: false, transformFunction: null }, disableTrailingIconPrimary: { classPropertyName: "disableTrailingIconPrimary", publicName: "disableTrailingIconPrimary", isSignal: true, isRequired: false, transformFunction: null }, disableTrailingIconSecondary: { classPropertyName: "disableTrailingIconSecondary", publicName: "disableTrailingIconSecondary", isSignal: true, isRequired: false, transformFunction: null }, showClose: { classPropertyName: "showClose", publicName: "showClose", isSignal: true, isRequired: false, transformFunction: null }, showReturn: { classPropertyName: "showReturn", publicName: "showReturn", isSignal: true, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onHandleTrailingPrimary: "onHandleTrailingPrimary", onHandleTrailingSecondary: "onHandleTrailingSecondary", onHandleBack: "onHandleBack", onHandleClose: "onHandleClose", searchData: "searchData" }, ngImport: i0, template: "<header class=\"bmb_inner_header\">\n <bmb-container>\n <span class=\"bmb_inner_header-container\">\n @if (toggleSearch()) {\n <form [formGroup]=\"searchForm\" class=\"bmb_inner_header-form\">\n <span class=\"bmb_inner_header-button\">\n <bmb-action-icon\n icon=\"close\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleSearch()\"\n />\n </span>\n <bmb-input\n [placeholder]=\"placeholderSearch()\"\n icon=\"search\"\n (isBlur)=\"onSubmit()\"\n [control]=\"getFormControl('search')\"\n />\n </form>\n } @else {\n <bmb-three-cols\n [ngClass]=\"{\n 'bmb_inner_header-container-space': !!trailingIconSecondary()\n }\"\n >\n <ng-template #bmbLeftContent>\n <bmb-action-icon\n [icon]=\"getLeftIcon()\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleBack($event)\"\n />\n </ng-template>\n <ng-template #bmbMainContent>\n <bmb-title-content\n [title]=\"title()\"\n titleSize=\"6\"\n [isCenterContent]=\"true\"\n [transparentBgC]=\"true\"\n />\n </ng-template>\n <ng-template #bmbRightContent>\n <span class=\"bmb_inner_header-actions\">\n @if (trailingIconSecondary()) {\n <bmb-action-icon\n [icon]=\"trailingIconSecondary()\"\n [disabled]=\"disableTrailingIconSecondary()\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleTrailingIconSecondary($event)\"\n />\n }\n @if (!!trailingIconPrimary() || showSearch()) {\n @if (showSearch()) {\n <bmb-action-icon\n icon=\"search\"\n [iconSize]=\"24\"\n (buttonClick)=\"handleSearch()\"\n />\n } @else {\n <bmb-action-icon\n [icon]=\"trailingIconPrimary()\"\n [iconSize]=\"24\"\n [disabled]=\"disableTrailingIconPrimary()\"\n (buttonClick)=\"handleTrailingIconPrimary($event)\"\n />\n }\n }\n </span>\n </ng-template>\n </bmb-three-cols>\n }\n </span>\n <section class=\"bmb_inner_header-content\">\n <ng-content></ng-content>\n </section>\n </bmb-container>\n</header>\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_inner_header-container{width:100%}.bmb_inner_header-container-space .bmb_three-cols-child:first-child{width:4rem}.bmb_inner_header-form{width:100%;position:relative;padding:.5rem 0}.bmb_inner_header-form .bmb_inner_header-button{position:absolute;top:1.25rem;right:.625rem;z-index:1}.bmb_inner_header-form .bmb_field-input{padding-right:2.5rem}.bmb_inner_header-actions{display:inline-flex;gap:var(--bmb-spacing-m)}.bmb_inner_header .bmb_container{border-radius:0 0 .75rem .75rem;display:block}.bmb_inner_header .bmb_title-content-container-wrapper-title{color:var(--general_contrasts-100)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BmbContainerComponent, selector: "bmb-container", inputs: ["appearance", "isHidden"] }, { kind: "component", type: BmbThreeColsComponent, selector: "bmb-three-cols", inputs: ["gapSize", "justify", "alignItems", "expandMainColumn"] }, { kind: "component", type: BmbActionIconComponent, selector: "bmb-action-icon", inputs: ["idElement", "icon", "alt", "iconSize", "isFill", "toggleIconActive", "isToggleActive", "isAccentColor", "dotNotification", "target", "link", "disabled"], outputs: ["isToggleActiveChange", "isAccentColorChange", "buttonPress", "buttonClick"] }, { kind: "component", type: BmbTitleContentComponent, selector: "bmb-title-content", inputs: ["title", "titleSize", "titleFontWeight", "subtitle", "subtitleSize", "subtitleFontWeight", "subtitleIcon", "subtitleIconSize", "isCenterContent", "dataLocalNav", "transparentBgC", "icon", "iconSize", "bgIconAppearance"] }, { kind: "component", type: BmbInputComponent, selector: "bmb-input", inputs: ["label", "type", "placeholder", "icon", "appearance", "errorMessage", "helperMessage", "disabled", "isRequired", "name", "spellcheck", "jsonFormat", "heightTextArea", "maxlength", "minlength", "pattern", "size", "max", "min", "id", "value", "autocomplete", "tooltip", "rows", "showMaxTextLength", "additionalAction", "tooltipPosition", "isClearable", "customValidation", "showError", "control"], outputs: ["showErrorChange", "controlChange", "isFocus", "isBlur", "onChange", "onKeyDown"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
66
66
  }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbInnerHeaderComponent, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbInnerHeaderComponent, decorators: [{
68
68
  type: Component,
69
69
  args: [{ selector: 'bmb-inner-header', standalone: true, imports: [
70
70
  CommonModule,
@@ -129,10 +129,10 @@ export class BmbInputContentComponent {
129
129
  handleKeyUp(event) {
130
130
  this.onKeyUp.emit(event);
131
131
  }
132
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbInputContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
133
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbInputContentComponent, isStandalone: true, selector: "bmb-input-content", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, isRequired: { classPropertyName: "isRequired", publicName: "isRequired", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, spellcheck: { classPropertyName: "spellcheck", publicName: "spellcheck", isSignal: true, isRequired: false, transformFunction: null }, heightTextArea: { classPropertyName: "heightTextArea", publicName: "heightTextArea", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, autoComplete: { classPropertyName: "autoComplete", publicName: "autoComplete", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, isReadOnly: { classPropertyName: "isReadOnly", publicName: "isReadOnly", isSignal: true, isRequired: false, transformFunction: null }, additionalAction: { classPropertyName: "additionalAction", publicName: "additionalAction", isSignal: true, isRequired: false, transformFunction: null }, isClearable: { classPropertyName: "isClearable", publicName: "isClearable", isSignal: true, isRequired: false, transformFunction: null }, isError: { classPropertyName: "isError", publicName: "isError", isSignal: true, isRequired: false, transformFunction: null }, isHidden: { classPropertyName: "isHidden", publicName: "isHidden", isSignal: true, isRequired: false, transformFunction: null }, showStates: { classPropertyName: "showStates", publicName: "showStates", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { control: "controlChange", onFocus: "onFocus", onBlur: "onBlur", onChange: "onChange", onKeyDown: "onKeyDown", onKeyUp: "onKeyUp" }, queries: [{ propertyName: "customContent", first: true, predicate: ["customContent"], descendants: true }], ngImport: i0, template: "<section class=\"bmb_field\">\n <section class=\"bmb_field-wrapper\">\n @if (!!icon() && type() !== 'text-area') {\n <bmb-icon\n class=\"bmb_field-icon\"\n [ngClass]=\"{\n 'bmb_field-icon-simple': appearance() === 'simple',\n 'bmb_field-icon-simple-focused': appearance() === 'simple' && isFocus,\n 'bmb_field-icon-simple-error': appearance() === 'simple' && isError()\n }\"\n [icon]=\"icon()\"\n [size]=\"24\"\n [alt]=\"name()\"\n />\n }\n @if (type() === 'text-area') {\n <textarea\n class=\"bmb_field-text-area\"\n [ngClass]=\"inputClasses\"\n [autocomplete]=\"autoComplete()\"\n [placeholder]=\"placeholder()\"\n [required]=\"isRequired()\"\n [formControl]=\"control()\"\n [maxlength]=\"maxLength()!\"\n [style.height.px]=\"heightTextArea()!\"\n [minlength]=\"minLength()!\"\n [spellcheck]=\"spellcheck()\"\n [rows]=\"rows()\"\n [name]=\"name()\"\n [id]=\"inputId()\"\n [pattern]=\"pattern()!\"\n [tabindex]=\"control().disabled ? -1 : 0\"\n (keydown)=\"handleKeyPress($event)\"\n (change)=\"handleChange($event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleBlur()\"\n ></textarea>\n @if (isError()) {\n <bmb-icon class=\"bmb_field-text-area-error-icon\" [icon]=\"'error'\" />\n }\n } @else {\n <input\n class=\"bmb_field-input\"\n [type]=\"getType()\"\n [ngClass]=\"inputClasses\"\n [autocomplete]=\"autoComplete()\"\n [readOnly]=\"isReadOnly()\"\n [placeholder]=\"placeholder()\"\n [formControl]=\"control()\"\n [name]=\"name()\"\n [id]=\"inputId()\"\n [spellcheck]=\"spellcheck()\"\n [maxlength]=\"maxLength()!\"\n [minlength]=\"minLength()!\"\n [pattern]=\"pattern()!\"\n [max]=\"max()\"\n [min]=\"min()\"\n [tabindex]=\"control().disabled ? -1 : 0\"\n (keydown)=\"handleKeyPress($event)\"\n (change)=\"handleChange($event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleBlur()\"\n (keyup)=\"handleKeyUp($event)\"\n />\n @if (showAdditionalAction() || isClearable()) {\n <span class=\"bmb_field-actions\">\n @if (showAdditionalAction()) {\n <bmb-action-icon\n class=\"bmb_field-additional_action\"\n [icon]=\"getAdditionalActionIcon()\"\n [iconSize]=\"24\"\n [disabled]=\"control().disabled\"\n (buttonClick)=\"actionToExecute()\"\n />\n }\n @if (isClearable()) {\n <bmb-action-icon\n class=\"bmb_field-clear\"\n icon=\"close\"\n [iconSize]=\"24\"\n [disabled]=\"control().disabled\"\n (buttonClick)=\"handleClearValue()\"\n />\n }\n </span>\n }\n }\n <ng-container [ngTemplateOutlet]=\"customContent\" />\n </section>\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_field-wrapper{align-items:center;display:flex;position:relative;width:100%}.bmb_field-wrapper:hover .bmb_field-icon-simple{color:var(--general_contrasts-50)}.bmb_field-icon{color:var(--general_contrasts-100);left:var(--bmb-spacing-s);position:absolute;top:50%;transform:translateY(-50%)}.bmb_field-icon~.bmb_field-input-normal{padding-left:2.4375rem}.bmb_field-icon~.bmb_field-input-simple{padding-left:1.9375rem}.bmb_field-icon-simple{left:0}.bmb_field-icon-simple-error{color:var(--general_contrasts-75)}.bmb_field-icon-simple-focused{color:var(--general_contrasts-input-outline)}.bmb_field-input{text-overflow:ellipsis;white-space:normal;overflow:hidden}.bmb_field-input-limited{padding-right:2.25rem}.bmb_field-input-limited-actions{padding-right:4.5rem}.bmb_field-input-normal{box-sizing:border-box;line-height:1.5}.bmb_field-input-normal:focus{outline:0}.bmb_field-input-normal{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_field-input-normal:focus,.bmb_field-input-normal:hover{outline:0}.bmb_field-input-normal{padding-left:var(--bmb-spacing-s);box-sizing:border-box;border:.0625rem solid var(--general_contrasts-50);border-radius:.5rem;width:100%;background-color:var(--general_contrasts-input-background);height:3rem;transition:all .3s ease}.bmb_field-input-normal.bmb_field-input-error{border-color:var(--input-error)}.bmb_field-input-normal:focus,.bmb_field-input-normal:focus-visible,.bmb_field-input-normal-focus{box-sizing:inherit;border-color:var(--general_contrasts-input-outline);caret-color:var(--general_contrasts-input-outline);outline:.0625rem solid;outline-color:var(--general_contrasts-input-outline)}.bmb_field-input-normal:hover{box-sizing:inherit;border-color:var(--general_contrasts-50);outline:.0625rem solid;outline-color:var(--general_contrasts-50)}.bmb_field-input-normal::placeholder{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-50)}.bmb_field-input-simple{box-sizing:border-box;line-height:1.5}.bmb_field-input-simple:focus{outline:0}.bmb_field-input-simple{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_field-input-simple:focus,.bmb_field-input-simple:hover{outline:0}.bmb_field-input-simple{box-sizing:border-box;height:3rem;width:100%;background-color:transparent;border:0;border-bottom:.0625rem solid var(--general_contrasts-50);color:var(--general_contrasts-100);padding-left:var(--bmb-spacing-m);transition:all .3s ease}.bmb_field-input-simple.bmb_field-input-error{border-color:var(--input-error)}.bmb_field-input-simple:focus,.bmb_field-input-simple:focus-visible,.bmb_field-input-simple:hover{box-sizing:inherit;border-bottom:.125rem solid var(--general_contrasts-input-outline);color:var(--general_contrasts-input-outline);caret-color:var(--general_contrasts-input-outline)}.bmb_field-input-simple:hover{box-sizing:inherit;border-bottom:.125rem solid var(--general_contrasts-50)}.bmb_field-input-simple::placeholder{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-50)}.bmb_field-text-area{min-height:1.875rem;height:5.625rem;min-width:7.75rem;resize:none;padding:var(--bmb-spacing-s)}.bmb_field-text-area::-webkit-scrollbar{-webkit-appearance:none;width:.5rem}.bmb_field-text-area::-webkit-scrollbar-thumb{background-color:var(--buttons-inactive-step);border-radius:1.25rem;border:.0625rem solid var(--buttons-inactive-step)}.bmb_field-text-area::-webkit-scrollbar-track{border-radius:.625rem}.bmb_field-text-area-error-icon{font-family:Poppins-Regular,sans-serif;font-size:.9375rem;color:var(--input-error);position:absolute;top:.625rem;left:calc(100% - var(--bmb-spacing-l))}.bmb_field-actions{right:.5rem;position:absolute;top:50%;transform:translateY(-50%);display:flex;gap:var(--bmb-spacing-s);align-items:center;padding:.25rem}.bmb_field-additional_action .bmb_check-external-link-button-element,.bmb_field-clear .bmb_check-external-link-button-element{color:var(--general_contrasts-50)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: BmbActionIconComponent, selector: "bmb-action-icon", inputs: ["idElement", "icon", "alt", "iconSize", "isFill", "toggleIconActive", "isToggleActive", "isAccentColor", "dotNotification", "target", "link", "disabled"], outputs: ["isToggleActiveChange", "isAccentColorChange", "buttonPress", "buttonClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
132
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbInputContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
133
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbInputContentComponent, isStandalone: true, selector: "bmb-input-content", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, isRequired: { classPropertyName: "isRequired", publicName: "isRequired", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, spellcheck: { classPropertyName: "spellcheck", publicName: "spellcheck", isSignal: true, isRequired: false, transformFunction: null }, heightTextArea: { classPropertyName: "heightTextArea", publicName: "heightTextArea", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, autoComplete: { classPropertyName: "autoComplete", publicName: "autoComplete", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, isReadOnly: { classPropertyName: "isReadOnly", publicName: "isReadOnly", isSignal: true, isRequired: false, transformFunction: null }, additionalAction: { classPropertyName: "additionalAction", publicName: "additionalAction", isSignal: true, isRequired: false, transformFunction: null }, isClearable: { classPropertyName: "isClearable", publicName: "isClearable", isSignal: true, isRequired: false, transformFunction: null }, isError: { classPropertyName: "isError", publicName: "isError", isSignal: true, isRequired: false, transformFunction: null }, isHidden: { classPropertyName: "isHidden", publicName: "isHidden", isSignal: true, isRequired: false, transformFunction: null }, showStates: { classPropertyName: "showStates", publicName: "showStates", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { control: "controlChange", onFocus: "onFocus", onBlur: "onBlur", onChange: "onChange", onKeyDown: "onKeyDown", onKeyUp: "onKeyUp" }, queries: [{ propertyName: "customContent", first: true, predicate: ["customContent"], descendants: true }], ngImport: i0, template: "<section class=\"bmb_field\">\n <section class=\"bmb_field-wrapper\">\n @if (!!icon() && type() !== 'text-area') {\n <bmb-icon\n class=\"bmb_field-icon\"\n [ngClass]=\"{\n 'bmb_field-icon-simple': appearance() === 'simple',\n 'bmb_field-icon-simple-focused': appearance() === 'simple' && isFocus,\n 'bmb_field-icon-simple-error': appearance() === 'simple' && isError()\n }\"\n [icon]=\"icon()\"\n [size]=\"24\"\n [alt]=\"name()\"\n />\n }\n @if (type() === 'text-area') {\n <textarea\n class=\"bmb_field-text-area\"\n [ngClass]=\"inputClasses\"\n [autocomplete]=\"autoComplete()\"\n [placeholder]=\"placeholder()\"\n [required]=\"isRequired()\"\n [formControl]=\"control()\"\n [maxlength]=\"maxLength()!\"\n [style.height.px]=\"heightTextArea()!\"\n [minlength]=\"minLength()!\"\n [spellcheck]=\"spellcheck()\"\n [rows]=\"rows()\"\n [name]=\"name()\"\n [id]=\"inputId()\"\n [pattern]=\"pattern()!\"\n [tabindex]=\"control().disabled ? -1 : 0\"\n (keydown)=\"handleKeyPress($event)\"\n (change)=\"handleChange($event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleBlur()\"\n ></textarea>\n @if (isError()) {\n <bmb-icon class=\"bmb_field-text-area-error-icon\" [icon]=\"'error'\" />\n }\n } @else {\n <input\n class=\"bmb_field-input\"\n [type]=\"getType()\"\n [ngClass]=\"inputClasses\"\n [autocomplete]=\"autoComplete()\"\n [readOnly]=\"isReadOnly()\"\n [placeholder]=\"placeholder()\"\n [formControl]=\"control()\"\n [name]=\"name()\"\n [id]=\"inputId()\"\n [spellcheck]=\"spellcheck()\"\n [maxlength]=\"maxLength()!\"\n [minlength]=\"minLength()!\"\n [pattern]=\"pattern()!\"\n [max]=\"max()\"\n [min]=\"min()\"\n [tabindex]=\"control().disabled ? -1 : 0\"\n (keydown)=\"handleKeyPress($event)\"\n (change)=\"handleChange($event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleBlur()\"\n (keyup)=\"handleKeyUp($event)\"\n />\n @if (showAdditionalAction() || isClearable()) {\n <span class=\"bmb_field-actions\">\n @if (showAdditionalAction()) {\n <bmb-action-icon\n class=\"bmb_field-additional_action\"\n [icon]=\"getAdditionalActionIcon()\"\n [iconSize]=\"24\"\n [disabled]=\"control().disabled\"\n (buttonClick)=\"actionToExecute()\"\n />\n }\n @if (isClearable()) {\n <bmb-action-icon\n class=\"bmb_field-clear\"\n icon=\"close\"\n [iconSize]=\"24\"\n [disabled]=\"control().disabled\"\n (buttonClick)=\"handleClearValue()\"\n />\n }\n </span>\n }\n }\n <ng-container [ngTemplateOutlet]=\"customContent\" />\n </section>\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_field-wrapper{align-items:center;display:flex;position:relative;width:100%}.bmb_field-wrapper:hover .bmb_field-icon-simple{color:var(--general_contrasts-50)}.bmb_field-icon{color:var(--general_contrasts-100);left:var(--bmb-spacing-s);position:absolute;top:50%;transform:translateY(-50%)}.bmb_field-icon~.bmb_field-input-normal{padding-left:2.4375rem}.bmb_field-icon~.bmb_field-input-simple{padding-left:1.9375rem}.bmb_field-icon-simple{left:0}.bmb_field-icon-simple-error{color:var(--general_contrasts-75)}.bmb_field-icon-simple-focused{color:var(--general_contrasts-input-outline)}.bmb_field-input{text-overflow:ellipsis;white-space:normal;overflow:hidden}.bmb_field-input-limited{padding-right:2.25rem}.bmb_field-input-limited-actions{padding-right:4.5rem}.bmb_field-input-normal{box-sizing:border-box;line-height:1.5}.bmb_field-input-normal:focus{outline:0}.bmb_field-input-normal{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_field-input-normal:focus,.bmb_field-input-normal:hover{outline:0}.bmb_field-input-normal{padding-left:var(--bmb-spacing-s);box-sizing:border-box;border:.0625rem solid var(--general_contrasts-50);border-radius:.5rem;width:100%;background-color:var(--general_contrasts-input-background);height:3rem;transition:all .3s ease}.bmb_field-input-normal.bmb_field-input-error{border-color:var(--input-error)}.bmb_field-input-normal:focus,.bmb_field-input-normal:focus-visible,.bmb_field-input-normal-focus{box-sizing:inherit;border-color:var(--general_contrasts-input-outline);caret-color:var(--general_contrasts-input-outline);outline:.0625rem solid;outline-color:var(--general_contrasts-input-outline)}.bmb_field-input-normal:hover{box-sizing:inherit;border-color:var(--general_contrasts-50);outline:.0625rem solid;outline-color:var(--general_contrasts-50)}.bmb_field-input-normal::placeholder{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-50)}.bmb_field-input-simple{box-sizing:border-box;line-height:1.5}.bmb_field-input-simple:focus{outline:0}.bmb_field-input-simple{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_field-input-simple:focus,.bmb_field-input-simple:hover{outline:0}.bmb_field-input-simple{box-sizing:border-box;height:3rem;width:100%;background-color:transparent;border:0;border-bottom:.0625rem solid var(--general_contrasts-50);color:var(--general_contrasts-100);padding-left:var(--bmb-spacing-m);transition:all .3s ease}.bmb_field-input-simple.bmb_field-input-error{border-color:var(--input-error)}.bmb_field-input-simple:focus,.bmb_field-input-simple:focus-visible,.bmb_field-input-simple:hover{box-sizing:inherit;border-bottom:.125rem solid var(--general_contrasts-input-outline);color:var(--general_contrasts-input-outline);caret-color:var(--general_contrasts-input-outline)}.bmb_field-input-simple:hover{box-sizing:inherit;border-bottom:.125rem solid var(--general_contrasts-50)}.bmb_field-input-simple::placeholder{font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-50)}.bmb_field-text-area{min-height:1.875rem;height:5.625rem;min-width:7.75rem;resize:none;padding:var(--bmb-spacing-s)}.bmb_field-text-area::-webkit-scrollbar{-webkit-appearance:none;width:.5rem}.bmb_field-text-area::-webkit-scrollbar-thumb{background-color:var(--buttons-inactive-step);border-radius:1.25rem;border:.0625rem solid var(--buttons-inactive-step)}.bmb_field-text-area::-webkit-scrollbar-track{border-radius:.625rem}.bmb_field-text-area-error-icon{font-family:Poppins-Regular,sans-serif;font-size:.9375rem;color:var(--input-error);position:absolute;top:.625rem;left:calc(100% - var(--bmb-spacing-l))}.bmb_field-actions{right:.5rem;position:absolute;top:50%;transform:translateY(-50%);display:flex;gap:var(--bmb-spacing-s);align-items:center;padding:.25rem}.bmb_field-additional_action .bmb_check-external-link-button-element,.bmb_field-clear .bmb_check-external-link-button-element{color:var(--general_contrasts-50)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: BmbActionIconComponent, selector: "bmb-action-icon", inputs: ["idElement", "icon", "alt", "iconSize", "isFill", "toggleIconActive", "isToggleActive", "isAccentColor", "dotNotification", "target", "link", "disabled"], outputs: ["isToggleActiveChange", "isAccentColorChange", "buttonPress", "buttonClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
134
134
  }
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbInputContentComponent, decorators: [{
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbInputContentComponent, decorators: [{
136
136
  type: Component,
137
137
  args: [{ selector: 'bmb-input-content', standalone: true, imports: [
138
138
  CommonModule,
@@ -144,4 +144,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
144
144
  type: ContentChild,
145
145
  args: ['customContent']
146
146
  }] } });
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWlucHV0LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1pbnB1dC9ibWItaW5wdXQtY29udGVudC9ibWItaW5wdXQtY29udGVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWlucHV0L2JtYi1pbnB1dC1jb250ZW50L2JtYi1pbnB1dC1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBRU4saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7OztBQXFCekYsTUFBTSxPQUFPLHdCQUF3QjtJQWRyQztRQWVFLFNBQUksR0FBRyxLQUFLLENBQWdCLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLFNBQUksR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDekIsZUFBVSxHQUFHLEtBQUssQ0FBK0IsUUFBUSxDQUFDLENBQUM7UUFDM0QsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuQyxTQUFJLEdBQUcsS0FBSyxDQUFDLFFB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QzsrR0FsSlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsNHZHQ2xDckMsc2hHQTBGQSx3MVREbEVJLFlBQVksb1NBQ1osZ0JBQWdCLDZKQUNoQixtQkFBbUIsc3dDQUNuQixzQkFBc0I7OzRGQU9iLHdCQUF3QjtrQkFkcEMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLHNCQUFzQjtxQkFDdkIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFrQ2hCLGFBQWE7c0JBQTNDLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIGlucHV0LFxuICBtb2RlbCxcbiAgb3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJtYkFjdGlvbkljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItYWN0aW9uLWljb24vYm1iLWFjdGlvbi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJQm1iQWRkaXRpb25hbEFjdGlvbixcbiAgSUJtYklucHV0QXBwZWFyYW5jZSxcbiAgSUJtYklucHV0VHlwZSxcbn0gZnJvbSAnLi4vYm1iLWlucHV0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1pbnB1dC1jb250ZW50JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgQm1iQWN0aW9uSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1pbnB1dC1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1pbnB1dC1jb250ZW50LmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYklucHV0Q29udGVudENvbXBvbmVudCB7XG4gIHR5cGUgPSBpbnB1dDxJQm1iSW5wdXRUeXBlPigndGV4dCcpO1xuICBwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oJycpO1xuICBpY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGFwcGVhcmFuY2UgPSBpbnB1dDxJQm1iSW5wdXRBcHBlYXJhbmNlIHwgc3RyaW5nPignbm9ybWFsJyk7XG4gIGlzUmVxdWlyZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIG5hbWUgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG4gIHNwZWxsY2hlY2sgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGhlaWdodFRleHRBcmVhID0gaW5wdXQ8bnVtYmVyPigpO1xuICBtYXhMZW5ndGggPSBpbnB1dDxudW1iZXI+KCk7XG4gIG1pbkxlbmd0aCA9IGlucHV0PG51bWJlcj4oKTtcbiAgcGF0dGVybiA9IGlucHV0PHN0cmluZz4oKTtcbiAgbWF4ID0gaW5wdXQ8bnVtYmVyPigpO1xuICBtaW4gPSBpbnB1dDxudW1iZXI+KCk7XG4gIGlucHV0SWQgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIGF1dG9Db21wbGV0ZSA9IGlucHV0PHN0cmluZz4oJ29mZicpO1xuICByb3dzID0gaW5wdXQ8bnVtYmVyPigzKTtcbiAgaXNSZWFkT25seSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTsgLy9JbnRlcm5hbFxuICBhZGRpdGlvbmFsQWN0aW9uID0gaW5wdXQ8SUJtYkFkZGl0aW9uYWxBY3Rpb24+KCdub25lJyk7XG4gIGlzQ2xlYXJhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0Vycm9yID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0hpZGRlbiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgc2hvd1N0YXRlcyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb250cm9sID0gbW9kZWw8Rm9ybUNvbnRyb2w+KG5ldyBGb3JtQ29udHJvbCgpKTtcblxuICBvbkZvY3VzID0gb3V0cHV0PGJvb2xlYW4+KCk7XG4gIG9uQmx1ciA9IG91dHB1dDxib29sZWFuPigpO1xuICBvbkNoYW5nZSA9IG91dHB1dDxIVE1MSW5wdXRFbGVtZW50PigpO1xuICBvbktleURvd24gPSBvdXRwdXQ8S2V5Ym9hcmRFdmVudD4oKTtcbiAgb25LZXlVcCA9IG91dHB1dDxLZXlib2FyZEV2ZW50PigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2N1c3RvbUNvbnRlbnQnKSBjdXN0b21Db250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBpc0hpZGU6IGJvb2xlYW4gPSB0cnVlO1xuICBpc0ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaGFuZGxlRm9jdXMoKSB7XG4gICAgdGhpcy5pc0ZvY3VzID0gdHJ1ZTtcbiAgICB0aGlzLm9uRm9jdXMuZW1pdCh0aGlzLmlzRm9jdXMpO1xuICB9XG5cbiAgaGFuZGxlQmx1cigpIHtcbiAgICB0aGlzLmlzRm9jdXMgPSBmYWxzZTtcbiAgICB0aGlzLm9uRm9jdXMuZW1pdCh0aGlzLmlzRm9jdXMpO1xuICAgIHRoaXMub25CbHVyLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsO1xuICAgIGlmICh0YXJnZXQgIT09IG51bGwpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0YXJnZXQpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUtleVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsO1xuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgIHRoaXMub25LZXlEb3duLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUNsZWFyVmFsdWUoKSB7XG4gICAgdGhpcy5jb250cm9sKCkucmVzZXQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5jb250cm9sKCkudmFsdWUpO1xuICB9XG5cbiAgZ2V0IGlucHV0Q2xhc3NlcygpOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSB7XG4gICAgY29uc3QgYXBwZWFyYW5jZSA9XG4gICAgICB0aGlzLnR5cGUoKSA9PT0gJ3RleHQtYXJlYScgPyAnbm9ybWFsJyA6IHRoaXMuYXBwZWFyYW5jZSgpO1xuICAgIGNvbnN0IGJhc2VOYW1lID0gJ2JtYl9maWVsZC1pbnB1dCc7XG4gICAgY29uc3QgY2xhc3NlcyA9IFtgJHtiYXNlTmFtZX0tJHthcHBlYXJhbmNlfWBdO1xuXG4gICAgaWYgKHRoaXMuc2hvd0FkZGl0aW9uYWxBY3Rpb24oKSB8fCB0aGlzLmlzQ2xlYXJhYmxlKCkpIHtcbiAgICAgIGlmICh0aGlzLnNob3dBZGRpdGlvbmFsQWN0aW9uKCkgJiYgdGhpcy5pc0NsZWFyYWJsZSgpKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaChgJHtiYXNlTmFtZX0tbGltaXRlZC1hY3Rpb25zYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGFzc2VzLnB1c2goYCR7YmFzZU5hbWV9LWxpbWl0ZWRgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0Vycm9yKCkpIHtcbiAgICAgIGNsYXNzZXMucHVzaChgJHtiYXNlTmFtZX0tZXJyb3JgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2xhc3Nlcy5yZWR1Y2UoXG4gICAgICAoYWNjLCBjbGFzc05hbWUpID0+IHtcbiAgICAgICAgYWNjW2NsYXNzTmFtZV0gPSB0cnVlO1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSxcbiAgICAgIHt9IGFzIHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9LFxuICAgICk7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIGlmICh0aGlzLnNob3dBZGRpdGlvbmFsQWN0aW9uKCkpIHtcbiAgICAgIGlmICh0aGlzLmFkZGl0aW9uYWxBY3Rpb24oKSA9PT0gJ3Nob3dIaWRlJyAmJiAhdGhpcy5pc0hpZGUpIHtcbiAgICAgICAgcmV0dXJuICd0ZXh0JztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50eXBlKCk7XG4gIH1cblxuICBzaG93QWRkaXRpb25hbEFjdGlvbigpOiBib29sZWFuIHtcbiAgICBpZiAoXG4gICAgICAhIXRoaXMuZ2V0QWRkaXRpb25hbEFjdGlvbkljb24oKSAmJlxuICAgICAgdGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgIT09ICdub25lJ1xuICAgICkge1xuICAgICAgaWYgKHRoaXMuYWRkaXRpb25hbEFjdGlvbigpID09PSAnc2hvd0hpZGUnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnR5cGUoKSA9PT0gJ3Bhc3N3b3JkJztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZ2V0QWRkaXRpb25hbEFjdGlvbkljb24oKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgPT09ICdjb3B5JykgcmV0dXJuICdjb250ZW50X2NvcHknO1xuICAgIGlmICh0aGlzLmFkZGl0aW9uYWxBY3Rpb24oKSA9PT0gJ3Nob3dIaWRlJykge1xuICAgICAgaWYgKHRoaXMuaXNIaWRlKSByZXR1cm4gJ3Zpc2liaWxpdHknO1xuICAgICAgcmV0dXJuICd2aXNpYmlsaXR5X29mZic7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGFjdGlvblRvRXhlY3V0ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgPT09ICdjb3B5Jykge1xuICAgICAgY29uc3QgdGV4dFRvQ29weSA9IHRoaXMuY29udHJvbCgpPy52YWx1ZTtcbiAgICAgIGlmICh0ZXh0VG9Db3B5KSB7XG4gICAgICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgICAgICAud3JpdGVUZXh0KHRleHRUb0NvcHkudG9TdHJpbmcoKSlcbiAgICAgICAgICAudGhlbigoKSA9PiBjb25zb2xlLmluZm8oJ1RleHQgY29waWVkIHRvIGNsaXBib2FyZCEnKSlcbiAgICAgICAgICAuY2F0Y2goKGVycikgPT4gY29uc29sZS5lcnJvcignRXJyb3IgY29weWluZyB0ZXh0OiAnLCBlcnIpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgPT09ICdzaG93SGlkZScpIHtcbiAgICAgIHRoaXMuaXNIaWRlID0gIXRoaXMuaXNIaWRlO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUtleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5vbktleVVwLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJtYl9maWVsZFwiPlxuICA8c2VjdGlvbiBjbGFzcz1cImJtYl9maWVsZC13cmFwcGVyXCI+XG4gICAgQGlmICghIWljb24oKSAmJiB0eXBlKCkgIT09ICd0ZXh0LWFyZWEnKSB7XG4gICAgICA8Ym1iLWljb25cbiAgICAgICAgY2xhc3M9XCJibWJfZmllbGQtaWNvblwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnYm1iX2ZpZWxkLWljb24tc2ltcGxlJzogYXBwZWFyYW5jZSgpID09PSAnc2ltcGxlJyxcbiAgICAgICAgICAnYm1iX2ZpZWxkLWljb24tc2ltcGxlLWZvY3VzZWQnOiBhcHBlYXJhbmNlKCkgPT09ICdzaW1wbGUnICYmIGlzRm9jdXMsXG4gICAgICAgICAgJ2JtYl9maWVsZC1pY29uLXNpbXBsZS1lcnJvcic6IGFwcGVhcmFuY2UoKSA9PT0gJ3NpbXBsZScgJiYgaXNFcnJvcigpXG4gICAgICAgIH1cIlxuICAgICAgICBbaWNvbl09XCJpY29uKClcIlxuICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgIFthbHRdPVwibmFtZSgpXCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBpZiAodHlwZSgpID09PSAndGV4dC1hcmVhJykge1xuICAgICAgPHRleHRhcmVhXG4gICAgICAgIGNsYXNzPVwiYm1iX2ZpZWxkLXRleHQtYXJlYVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cImlucHV0Q2xhc3Nlc1wiXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b0NvbXBsZXRlKClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJpc1JlcXVpcmVkKClcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbCgpXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJtYXhMZW5ndGgoKSFcIlxuICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImhlaWdodFRleHRBcmVhKCkhXCJcbiAgICAgICAgW21pbmxlbmd0aF09XCJtaW5MZW5ndGgoKSFcIlxuICAgICAgICBbc3BlbGxjaGVja109XCJzcGVsbGNoZWNrKClcIlxuICAgICAgICBbcm93c109XCJyb3dzKClcIlxuICAgICAgICBbbmFtZV09XCJuYW1lKClcIlxuICAgICAgICBbaWRdPVwiaW5wdXRJZCgpXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVybigpIVwiXG4gICAgICAgIFt0YWJpbmRleF09XCJjb250cm9sKCkuZGlzYWJsZWQgPyAtMSA6IDBcIlxuICAgICAgICAoa2V5ZG93bik9XCJoYW5kbGVLZXlQcmVzcygkZXZlbnQpXCJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChmb2N1cyk9XCJoYW5kbGVGb2N1cygpXCJcbiAgICAgICAgKGJsdXIpPVwiaGFuZGxlQmx1cigpXCJcbiAgICAgID48L3RleHRhcmVhPlxuICAgICAgQGlmIChpc0Vycm9yKCkpIHtcbiAgICAgICAgPGJtYi1pY29uIGNsYXNzPVwiYm1iX2ZpZWxkLXRleHQtYXJlYS1lcnJvci1pY29uXCIgW2ljb25dPVwiJ2Vycm9yJ1wiIC8+XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJibWJfZmllbGQtaW5wdXRcIlxuICAgICAgICBbdHlwZV09XCJnZXRUeXBlKClcIlxuICAgICAgICBbbmdDbGFzc109XCJpbnB1dENsYXNzZXNcIlxuICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9Db21wbGV0ZSgpXCJcbiAgICAgICAgW3JlYWRPbmx5XT1cImlzUmVhZE9ubHkoKVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2woKVwiXG4gICAgICAgIFtuYW1lXT1cIm5hbWUoKVwiXG4gICAgICAgIFtpZF09XCJpbnB1dElkKClcIlxuICAgICAgICBbc3BlbGxjaGVja109XCJzcGVsbGNoZWNrKClcIlxuICAgICAgICBbbWF4bGVuZ3RoXT1cIm1heExlbmd0aCgpIVwiXG4gICAgICAgIFttaW5sZW5ndGhdPVwibWluTGVuZ3RoKCkhXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVybigpIVwiXG4gICAgICAgIFttYXhdPVwibWF4KClcIlxuICAgICAgICBbbWluXT1cIm1pbigpXCJcbiAgICAgICAgW3RhYmluZGV4XT1cImNvbnRyb2woKS5kaXNhYmxlZCA/IC0xIDogMFwiXG4gICAgICAgIChrZXlkb3duKT1cImhhbmRsZUtleVByZXNzKCRldmVudClcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKClcIlxuICAgICAgICAoYmx1cik9XCJoYW5kbGVCbHVyKClcIlxuICAgICAgICAoa2V5dXApPVwiaGFuZGxlS2V5VXAoJGV2ZW50KVwiXG4gICAgICAvPlxuICAgICAgQGlmIChzaG93QWRkaXRpb25hbEFjdGlvbigpIHx8IGlzQ2xlYXJhYmxlKCkpIHtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJibWJfZmllbGQtYWN0aW9uc1wiPlxuICAgICAgICAgIEBpZiAoc2hvd0FkZGl0aW9uYWxBY3Rpb24oKSkge1xuICAgICAgICAgICAgPGJtYi1hY3Rpb24taWNvblxuICAgICAgICAgICAgICBjbGFzcz1cImJtYl9maWVsZC1hZGRpdGlvbmFsX2FjdGlvblwiXG4gICAgICAgICAgICAgIFtpY29uXT1cImdldEFkZGl0aW9uYWxBY3Rpb25JY29uKClcIlxuICAgICAgICAgICAgICBbaWNvblNpemVdPVwiMjRcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29udHJvbCgpLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImFjdGlvblRvRXhlY3V0ZSgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAoaXNDbGVhcmFibGUoKSkge1xuICAgICAgICAgICAgPGJtYi1hY3Rpb24taWNvblxuICAgICAgICAgICAgICBjbGFzcz1cImJtYl9maWVsZC1jbGVhclwiXG4gICAgICAgICAgICAgIGljb249XCJjbG9zZVwiXG4gICAgICAgICAgICAgIFtpY29uU2l6ZV09XCIyNFwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sKCkuZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwiaGFuZGxlQ2xlYXJWYWx1ZSgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICA8L3NwYW4+XG4gICAgICB9XG4gICAgfVxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY3VzdG9tQ29udGVudFwiIC8+XG4gIDwvc2VjdGlvbj5cbjwvc2VjdGlvbj5cbiJdfQ==
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWlucHV0LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1pbnB1dC9ibWItaW5wdXQtY29udGVudC9ibWItaW5wdXQtY29udGVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWlucHV0L2JtYi1pbnB1dC1jb250ZW50L2JtYi1pbnB1dC1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBRU4saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7OztBQXFCekYsTUFBTSxPQUFPLHdCQUF3QjtJQWRyQztRQWVFLFNBQUksR0FBRyxLQUFLLENBQWdCLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLFNBQUksR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDekIsZUFBVSxHQUFHLEtBQUssQ0FBK0IsUUFBUSxDQUFDLENBQUM7UUFDM0QsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuQyxTQUFJLEdBQUcsS0FBSyxDQUFDLFFB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QUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsS0FBb0I7UUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzsrR0FsSlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsNHZHQ2xDckMsc2hHQTBGQSx3MVREbEVJLFlBQVksb1NBQ1osZ0JBQWdCLDZKQUNoQixtQkFBbUIsc3dDQUNuQixzQkFBc0I7OzRGQU9iLHdCQUF3QjtrQkFkcEMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLHNCQUFzQjtxQkFDdkIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFrQ2hCLGFBQWE7c0JBQTNDLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIGlucHV0LFxuICBtb2RlbCxcbiAgb3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJtYkFjdGlvbkljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItYWN0aW9uLWljb24vYm1iLWFjdGlvbi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJQm1iQWRkaXRpb25hbEFjdGlvbixcbiAgSUJtYklucHV0QXBwZWFyYW5jZSxcbiAgSUJtYklucHV0VHlwZSxcbn0gZnJvbSAnLi4vYm1iLWlucHV0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1pbnB1dC1jb250ZW50JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgQm1iQWN0aW9uSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi1pbnB1dC1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1pbnB1dC1jb250ZW50LmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYklucHV0Q29udGVudENvbXBvbmVudCB7XG4gIHR5cGUgPSBpbnB1dDxJQm1iSW5wdXRUeXBlPigndGV4dCcpO1xuICBwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oJycpO1xuICBpY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGFwcGVhcmFuY2UgPSBpbnB1dDxJQm1iSW5wdXRBcHBlYXJhbmNlIHwgc3RyaW5nPignbm9ybWFsJyk7XG4gIGlzUmVxdWlyZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIG5hbWUgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG4gIHNwZWxsY2hlY2sgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGhlaWdodFRleHRBcmVhID0gaW5wdXQ8bnVtYmVyPigpO1xuICBtYXhMZW5ndGggPSBpbnB1dDxudW1iZXI+KCk7XG4gIG1pbkxlbmd0aCA9IGlucHV0PG51bWJlcj4oKTtcbiAgcGF0dGVybiA9IGlucHV0PHN0cmluZz4oKTtcbiAgbWF4ID0gaW5wdXQ8bnVtYmVyPigpO1xuICBtaW4gPSBpbnB1dDxudW1iZXI+KCk7XG4gIGlucHV0SWQgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIGF1dG9Db21wbGV0ZSA9IGlucHV0PHN0cmluZz4oJ29mZicpO1xuICByb3dzID0gaW5wdXQ8bnVtYmVyPigzKTtcbiAgaXNSZWFkT25seSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTsgLy9JbnRlcm5hbFxuICBhZGRpdGlvbmFsQWN0aW9uID0gaW5wdXQ8SUJtYkFkZGl0aW9uYWxBY3Rpb24+KCdub25lJyk7XG4gIGlzQ2xlYXJhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0Vycm9yID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0hpZGRlbiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgc2hvd1N0YXRlcyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb250cm9sID0gbW9kZWw8Rm9ybUNvbnRyb2w+KG5ldyBGb3JtQ29udHJvbCgpKTtcblxuICBvbkZvY3VzID0gb3V0cHV0PGJvb2xlYW4+KCk7XG4gIG9uQmx1ciA9IG91dHB1dDxib29sZWFuPigpO1xuICBvbkNoYW5nZSA9IG91dHB1dDxIVE1MSW5wdXRFbGVtZW50PigpO1xuICBvbktleURvd24gPSBvdXRwdXQ8S2V5Ym9hcmRFdmVudD4oKTtcbiAgb25LZXlVcCA9IG91dHB1dDxLZXlib2FyZEV2ZW50PigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2N1c3RvbUNvbnRlbnQnKSBjdXN0b21Db250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBpc0hpZGU6IGJvb2xlYW4gPSB0cnVlO1xuICBpc0ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaGFuZGxlRm9jdXMoKSB7XG4gICAgdGhpcy5pc0ZvY3VzID0gdHJ1ZTtcbiAgICB0aGlzLm9uRm9jdXMuZW1pdCh0aGlzLmlzRm9jdXMpO1xuICB9XG5cbiAgaGFuZGxlQmx1cigpIHtcbiAgICB0aGlzLmlzRm9jdXMgPSBmYWxzZTtcbiAgICB0aGlzLm9uRm9jdXMuZW1pdCh0aGlzLmlzRm9jdXMpO1xuICAgIHRoaXMub25CbHVyLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsO1xuICAgIGlmICh0YXJnZXQgIT09IG51bGwpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0YXJnZXQpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUtleVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsO1xuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgIHRoaXMub25LZXlEb3duLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUNsZWFyVmFsdWUoKSB7XG4gICAgdGhpcy5jb250cm9sKCkucmVzZXQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5jb250cm9sKCkudmFsdWUpO1xuICB9XG5cbiAgZ2V0IGlucHV0Q2xhc3NlcygpOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSB7XG4gICAgY29uc3QgYXBwZWFyYW5jZSA9XG4gICAgICB0aGlzLnR5cGUoKSA9PT0gJ3RleHQtYXJlYScgPyAnbm9ybWFsJyA6IHRoaXMuYXBwZWFyYW5jZSgpO1xuICAgIGNvbnN0IGJhc2VOYW1lID0gJ2JtYl9maWVsZC1pbnB1dCc7XG4gICAgY29uc3QgY2xhc3NlcyA9IFtgJHtiYXNlTmFtZX0tJHthcHBlYXJhbmNlfWBdO1xuXG4gICAgaWYgKHRoaXMuc2hvd0FkZGl0aW9uYWxBY3Rpb24oKSB8fCB0aGlzLmlzQ2xlYXJhYmxlKCkpIHtcbiAgICAgIGlmICh0aGlzLnNob3dBZGRpdGlvbmFsQWN0aW9uKCkgJiYgdGhpcy5pc0NsZWFyYWJsZSgpKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaChgJHtiYXNlTmFtZX0tbGltaXRlZC1hY3Rpb25zYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGFzc2VzLnB1c2goYCR7YmFzZU5hbWV9LWxpbWl0ZWRgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0Vycm9yKCkpIHtcbiAgICAgIGNsYXNzZXMucHVzaChgJHtiYXNlTmFtZX0tZXJyb3JgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2xhc3Nlcy5yZWR1Y2UoXG4gICAgICAoYWNjLCBjbGFzc05hbWUpID0+IHtcbiAgICAgICAgYWNjW2NsYXNzTmFtZV0gPSB0cnVlO1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSxcbiAgICAgIHt9IGFzIHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9LFxuICAgICk7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIGlmICh0aGlzLnNob3dBZGRpdGlvbmFsQWN0aW9uKCkpIHtcbiAgICAgIGlmICh0aGlzLmFkZGl0aW9uYWxBY3Rpb24oKSA9PT0gJ3Nob3dIaWRlJyAmJiAhdGhpcy5pc0hpZGUpIHtcbiAgICAgICAgcmV0dXJuICd0ZXh0JztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50eXBlKCk7XG4gIH1cblxuICBzaG93QWRkaXRpb25hbEFjdGlvbigpOiBib29sZWFuIHtcbiAgICBpZiAoXG4gICAgICAhIXRoaXMuZ2V0QWRkaXRpb25hbEFjdGlvbkljb24oKSAmJlxuICAgICAgdGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgIT09ICdub25lJ1xuICAgICkge1xuICAgICAgaWYgKHRoaXMuYWRkaXRpb25hbEFjdGlvbigpID09PSAnc2hvd0hpZGUnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnR5cGUoKSA9PT0gJ3Bhc3N3b3JkJztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZ2V0QWRkaXRpb25hbEFjdGlvbkljb24oKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgPT09ICdjb3B5JykgcmV0dXJuICdjb250ZW50X2NvcHknO1xuICAgIGlmICh0aGlzLmFkZGl0aW9uYWxBY3Rpb24oKSA9PT0gJ3Nob3dIaWRlJykge1xuICAgICAgaWYgKHRoaXMuaXNIaWRlKSByZXR1cm4gJ3Zpc2liaWxpdHknO1xuICAgICAgcmV0dXJuICd2aXNpYmlsaXR5X29mZic7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGFjdGlvblRvRXhlY3V0ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgPT09ICdjb3B5Jykge1xuICAgICAgY29uc3QgdGV4dFRvQ29weSA9IHRoaXMuY29udHJvbCgpPy52YWx1ZTtcbiAgICAgIGlmICh0ZXh0VG9Db3B5KSB7XG4gICAgICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgICAgICAud3JpdGVUZXh0KHRleHRUb0NvcHkudG9TdHJpbmcoKSlcbiAgICAgICAgICAudGhlbigoKSA9PiBjb25zb2xlLmluZm8oJ1RleHQgY29waWVkIHRvIGNsaXBib2FyZCEnKSlcbiAgICAgICAgICAuY2F0Y2goKGVycikgPT4gY29uc29sZS5lcnJvcignRXJyb3IgY29weWluZyB0ZXh0OiAnLCBlcnIpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5hZGRpdGlvbmFsQWN0aW9uKCkgPT09ICdzaG93SGlkZScpIHtcbiAgICAgIHRoaXMuaXNIaWRlID0gIXRoaXMuaXNIaWRlO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUtleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5vbktleVVwLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJtYl9maWVsZFwiPlxuICA8c2VjdGlvbiBjbGFzcz1cImJtYl9maWVsZC13cmFwcGVyXCI+XG4gICAgQGlmICghIWljb24oKSAmJiB0eXBlKCkgIT09ICd0ZXh0LWFyZWEnKSB7XG4gICAgICA8Ym1iLWljb25cbiAgICAgICAgY2xhc3M9XCJibWJfZmllbGQtaWNvblwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnYm1iX2ZpZWxkLWljb24tc2ltcGxlJzogYXBwZWFyYW5jZSgpID09PSAnc2ltcGxlJyxcbiAgICAgICAgICAnYm1iX2ZpZWxkLWljb24tc2ltcGxlLWZvY3VzZWQnOiBhcHBlYXJhbmNlKCkgPT09ICdzaW1wbGUnICYmIGlzRm9jdXMsXG4gICAgICAgICAgJ2JtYl9maWVsZC1pY29uLXNpbXBsZS1lcnJvcic6IGFwcGVhcmFuY2UoKSA9PT0gJ3NpbXBsZScgJiYgaXNFcnJvcigpXG4gICAgICAgIH1cIlxuICAgICAgICBbaWNvbl09XCJpY29uKClcIlxuICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgIFthbHRdPVwibmFtZSgpXCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBpZiAodHlwZSgpID09PSAndGV4dC1hcmVhJykge1xuICAgICAgPHRleHRhcmVhXG4gICAgICAgIGNsYXNzPVwiYm1iX2ZpZWxkLXRleHQtYXJlYVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cImlucHV0Q2xhc3Nlc1wiXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b0NvbXBsZXRlKClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJpc1JlcXVpcmVkKClcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbCgpXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJtYXhMZW5ndGgoKSFcIlxuICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImhlaWdodFRleHRBcmVhKCkhXCJcbiAgICAgICAgW21pbmxlbmd0aF09XCJtaW5MZW5ndGgoKSFcIlxuICAgICAgICBbc3BlbGxjaGVja109XCJzcGVsbGNoZWNrKClcIlxuICAgICAgICBbcm93c109XCJyb3dzKClcIlxuICAgICAgICBbbmFtZV09XCJuYW1lKClcIlxuICAgICAgICBbaWRdPVwiaW5wdXRJZCgpXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVybigpIVwiXG4gICAgICAgIFt0YWJpbmRleF09XCJjb250cm9sKCkuZGlzYWJsZWQgPyAtMSA6IDBcIlxuICAgICAgICAoa2V5ZG93bik9XCJoYW5kbGVLZXlQcmVzcygkZXZlbnQpXCJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChmb2N1cyk9XCJoYW5kbGVGb2N1cygpXCJcbiAgICAgICAgKGJsdXIpPVwiaGFuZGxlQmx1cigpXCJcbiAgICAgID48L3RleHRhcmVhPlxuICAgICAgQGlmIChpc0Vycm9yKCkpIHtcbiAgICAgICAgPGJtYi1pY29uIGNsYXNzPVwiYm1iX2ZpZWxkLXRleHQtYXJlYS1lcnJvci1pY29uXCIgW2ljb25dPVwiJ2Vycm9yJ1wiIC8+XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJibWJfZmllbGQtaW5wdXRcIlxuICAgICAgICBbdHlwZV09XCJnZXRUeXBlKClcIlxuICAgICAgICBbbmdDbGFzc109XCJpbnB1dENsYXNzZXNcIlxuICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9Db21wbGV0ZSgpXCJcbiAgICAgICAgW3JlYWRPbmx5XT1cImlzUmVhZE9ubHkoKVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2woKVwiXG4gICAgICAgIFtuYW1lXT1cIm5hbWUoKVwiXG4gICAgICAgIFtpZF09XCJpbnB1dElkKClcIlxuICAgICAgICBbc3BlbGxjaGVja109XCJzcGVsbGNoZWNrKClcIlxuICAgICAgICBbbWF4bGVuZ3RoXT1cIm1heExlbmd0aCgpIVwiXG4gICAgICAgIFttaW5sZW5ndGhdPVwibWluTGVuZ3RoKCkhXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVybigpIVwiXG4gICAgICAgIFttYXhdPVwibWF4KClcIlxuICAgICAgICBbbWluXT1cIm1pbigpXCJcbiAgICAgICAgW3RhYmluZGV4XT1cImNvbnRyb2woKS5kaXNhYmxlZCA/IC0xIDogMFwiXG4gICAgICAgIChrZXlkb3duKT1cImhhbmRsZUtleVByZXNzKCRldmVudClcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKClcIlxuICAgICAgICAoYmx1cik9XCJoYW5kbGVCbHVyKClcIlxuICAgICAgICAoa2V5dXApPVwiaGFuZGxlS2V5VXAoJGV2ZW50KVwiXG4gICAgICAvPlxuICAgICAgQGlmIChzaG93QWRkaXRpb25hbEFjdGlvbigpIHx8IGlzQ2xlYXJhYmxlKCkpIHtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJibWJfZmllbGQtYWN0aW9uc1wiPlxuICAgICAgICAgIEBpZiAoc2hvd0FkZGl0aW9uYWxBY3Rpb24oKSkge1xuICAgICAgICAgICAgPGJtYi1hY3Rpb24taWNvblxuICAgICAgICAgICAgICBjbGFzcz1cImJtYl9maWVsZC1hZGRpdGlvbmFsX2FjdGlvblwiXG4gICAgICAgICAgICAgIFtpY29uXT1cImdldEFkZGl0aW9uYWxBY3Rpb25JY29uKClcIlxuICAgICAgICAgICAgICBbaWNvblNpemVdPVwiMjRcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29udHJvbCgpLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cImFjdGlvblRvRXhlY3V0ZSgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAoaXNDbGVhcmFibGUoKSkge1xuICAgICAgICAgICAgPGJtYi1hY3Rpb24taWNvblxuICAgICAgICAgICAgICBjbGFzcz1cImJtYl9maWVsZC1jbGVhclwiXG4gICAgICAgICAgICAgIGljb249XCJjbG9zZVwiXG4gICAgICAgICAgICAgIFtpY29uU2l6ZV09XCIyNFwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sKCkuZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwiaGFuZGxlQ2xlYXJWYWx1ZSgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICA8L3NwYW4+XG4gICAgICB9XG4gICAgfVxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY3VzdG9tQ29udGVudFwiIC8+XG4gIDwvc2VjdGlvbj5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -168,11 +168,11 @@ export class BmbInputValidatorComponent {
168
168
  return errorMessages?.customValidation || '';
169
169
  return '';
170
170
  }
171
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbInputValidatorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
172
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbInputValidatorComponent, isStandalone: true, selector: "bmb-input-validator", inputs: { inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelPosition: { classPropertyName: "labelPosition", publicName: "labelPosition", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, isRequired: { classPropertyName: "isRequired", publicName: "isRequired", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, jsonFormat: { classPropertyName: "jsonFormat", publicName: "jsonFormat", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, showMaxTextLength: { classPropertyName: "showMaxTextLength", publicName: "showMaxTextLength", isSignal: true, isRequired: false, transformFunction: null }, helperMessage: { classPropertyName: "helperMessage", publicName: "helperMessage", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null }, customValidation: { classPropertyName: "customValidation", publicName: "customValidation", isSignal: true, isRequired: false, transformFunction: null }, showError: { classPropertyName: "showError", publicName: "showError", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { showError: "showErrorChange", control: "controlChange" }, ngImport: i0, template: "<section\n #inputValidation\n class=\"bmb_input-validator\"\n [ngClass]=\"{ disabled: control()?.disabled }\"\n>\n <span\n class=\"bmb_input-validator-wrapper\"\n [ngClass]=\"getClasses('bmb_input-validator')\"\n >\n @if (\n !!label() ||\n isRequired() ||\n !!tooltip() ||\n (type() === 'text-area' && showMaxTextLength())\n ) {\n <label class=\"bmb_input-validator-label\" [htmlFor]=\"inputId()\">\n {{ label() }}\n @if (isFieldRequired()) {\n <small class=\"bmb_input-validator-label-required\">*</small>\n }\n @if (!!tooltip()) {\n <bmb-tooltip\n class=\"bmb_input-validator-label-tooltip\"\n [text]=\"tooltip()\"\n [align]=\"tooltipPosition().align\"\n [justify]=\"tooltipPosition().justify\"\n [icon]=\"'help'\"\n [size]=\"20\"\n />\n }\n @if (type() === 'text-area' && showMaxTextLength()) {\n <span class=\"bmb_input-validator-label-max\">\n {{ control()?.value?.toString().length }}/{{ maxLength() || '-' }}\n </span>\n }\n </label>\n }\n <ng-content />\n </span>\n @if (!!helperMessage() || showError()) {\n <div class=\"bmb_input-validator-support\">\n @if (showError()) {\n <p class=\"bmb_input-validator-support-error\">\n {{ getErrorMessage() }}\n </p>\n } @else if (!!helperMessage()) {\n <p [class]=\"'bmb_input-validator-support-helper-' + appearance()\">\n {{ helperMessage() }}\n </p>\n }\n </div>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_input-validator{-webkit-user-select:none;user-select:none}.bmb_input-validator-wrapper{display:block;position:relative}.bmb_input-validator-direction-before{display:inline-flex;flex-direction:row;cursor:pointer}.bmb_input-validator-direction-after{display:inline-flex;flex-direction:row-reverse;cursor:pointer;align-items:center}.bmb_input-validator-label{display:flex;position:relative;padding:var(--bmb-spacing-s);gap:var(--bmb-spacing-s);font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_input-validator-label-required{color:var(--input-error)}.bmb_input-validator-label-tooltip{color:var(--general_contrasts-50)}.bmb_input-validator-label-max{margin-left:auto;padding-right:var(--bmb-spacing-s)}.bmb_input-validator-support{display:flex;padding:var(--bmb-spacing-s)}.bmb_input-validator-support-helper-normal{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--general_contrasts-input-outline)}.bmb_input-validator-support-helper-simple{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--general_contrasts-50)}.bmb_input-validator-support-error{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--input-error)}.bmb_input-validator.disabled{pointer-events:none;opacity:.5}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: BmbTooltipComponent, selector: "bmb-tooltip", inputs: ["text", "title", "icon", "size", "align", "justify", "isFill"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
171
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbInputValidatorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
172
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbInputValidatorComponent, isStandalone: true, selector: "bmb-input-validator", inputs: { inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelPosition: { classPropertyName: "labelPosition", publicName: "labelPosition", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, isRequired: { classPropertyName: "isRequired", publicName: "isRequired", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, jsonFormat: { classPropertyName: "jsonFormat", publicName: "jsonFormat", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, showMaxTextLength: { classPropertyName: "showMaxTextLength", publicName: "showMaxTextLength", isSignal: true, isRequired: false, transformFunction: null }, helperMessage: { classPropertyName: "helperMessage", publicName: "helperMessage", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null }, customValidation: { classPropertyName: "customValidation", publicName: "customValidation", isSignal: true, isRequired: false, transformFunction: null }, showError: { classPropertyName: "showError", publicName: "showError", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { showError: "showErrorChange", control: "controlChange" }, ngImport: i0, template: "<section\n #inputValidation\n class=\"bmb_input-validator\"\n [ngClass]=\"{ disabled: control()?.disabled }\"\n>\n <span\n class=\"bmb_input-validator-wrapper\"\n [ngClass]=\"getClasses('bmb_input-validator')\"\n >\n @if (\n !!label() ||\n isRequired() ||\n !!tooltip() ||\n (type() === 'text-area' && showMaxTextLength())\n ) {\n <label class=\"bmb_input-validator-label\" [htmlFor]=\"inputId()\">\n {{ label() }}\n @if (isFieldRequired()) {\n <small class=\"bmb_input-validator-label-required\">*</small>\n }\n @if (!!tooltip()) {\n <bmb-tooltip\n class=\"bmb_input-validator-label-tooltip\"\n [text]=\"tooltip()\"\n [align]=\"tooltipPosition().align\"\n [justify]=\"tooltipPosition().justify\"\n [icon]=\"'help'\"\n [size]=\"20\"\n />\n }\n @if (type() === 'text-area' && showMaxTextLength()) {\n <span class=\"bmb_input-validator-label-max\">\n {{ control()?.value?.toString().length }}/{{ maxLength() || '-' }}\n </span>\n }\n </label>\n }\n <ng-content />\n </span>\n @if (!!helperMessage() || showError()) {\n <div class=\"bmb_input-validator-support\">\n @if (showError()) {\n <p class=\"bmb_input-validator-support-error\">\n {{ getErrorMessage() }}\n </p>\n } @else if (!!helperMessage()) {\n <p [class]=\"'bmb_input-validator-support-helper-' + appearance()\">\n {{ helperMessage() }}\n </p>\n }\n </div>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_input-validator{-webkit-user-select:none;user-select:none}.bmb_input-validator-wrapper{display:block;position:relative}.bmb_input-validator-direction-before{display:inline-flex;flex-direction:row;cursor:pointer}.bmb_input-validator-direction-after{display:inline-flex;flex-direction:row-reverse;cursor:pointer;align-items:center}.bmb_input-validator-label{display:flex;position:relative;padding:var(--bmb-spacing-s);gap:var(--bmb-spacing-s);font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_input-validator-label-required{color:var(--input-error)}.bmb_input-validator-label-tooltip{color:var(--general_contrasts-50)}.bmb_input-validator-label-max{margin-left:auto;padding-right:var(--bmb-spacing-s)}.bmb_input-validator-support{display:flex;padding:var(--bmb-spacing-s)}.bmb_input-validator-support-helper-normal{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--general_contrasts-input-outline)}.bmb_input-validator-support-helper-simple{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--general_contrasts-50)}.bmb_input-validator-support-error{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--input-error)}.bmb_input-validator.disabled{pointer-events:none;opacity:.5}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: BmbTooltipComponent, selector: "bmb-tooltip", inputs: ["text", "title", "icon", "size", "align", "justify", "isFill"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
173
173
  }
174
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbInputValidatorComponent, decorators: [{
174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbInputValidatorComponent, decorators: [{
175
175
  type: Component,
176
176
  args: [{ selector: 'bmb-input-validator', standalone: true, imports: [CommonModule, ReactiveFormsModule, BmbTooltipComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n #inputValidation\n class=\"bmb_input-validator\"\n [ngClass]=\"{ disabled: control()?.disabled }\"\n>\n <span\n class=\"bmb_input-validator-wrapper\"\n [ngClass]=\"getClasses('bmb_input-validator')\"\n >\n @if (\n !!label() ||\n isRequired() ||\n !!tooltip() ||\n (type() === 'text-area' && showMaxTextLength())\n ) {\n <label class=\"bmb_input-validator-label\" [htmlFor]=\"inputId()\">\n {{ label() }}\n @if (isFieldRequired()) {\n <small class=\"bmb_input-validator-label-required\">*</small>\n }\n @if (!!tooltip()) {\n <bmb-tooltip\n class=\"bmb_input-validator-label-tooltip\"\n [text]=\"tooltip()\"\n [align]=\"tooltipPosition().align\"\n [justify]=\"tooltipPosition().justify\"\n [icon]=\"'help'\"\n [size]=\"20\"\n />\n }\n @if (type() === 'text-area' && showMaxTextLength()) {\n <span class=\"bmb_input-validator-label-max\">\n {{ control()?.value?.toString().length }}/{{ maxLength() || '-' }}\n </span>\n }\n </label>\n }\n <ng-content />\n </span>\n @if (!!helperMessage() || showError()) {\n <div class=\"bmb_input-validator-support\">\n @if (showError()) {\n <p class=\"bmb_input-validator-support-error\">\n {{ getErrorMessage() }}\n </p>\n } @else if (!!helperMessage()) {\n <p [class]=\"'bmb_input-validator-support-helper-' + appearance()\">\n {{ helperMessage() }}\n </p>\n }\n </div>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_input-validator{-webkit-user-select:none;user-select:none}.bmb_input-validator-wrapper{display:block;position:relative}.bmb_input-validator-direction-before{display:inline-flex;flex-direction:row;cursor:pointer}.bmb_input-validator-direction-after{display:inline-flex;flex-direction:row-reverse;cursor:pointer;align-items:center}.bmb_input-validator-label{display:flex;position:relative;padding:var(--bmb-spacing-s);gap:var(--bmb-spacing-s);font-family:Poppins-Regular,sans-serif;font-size:.875rem;color:var(--general_contrasts-100)}.bmb_input-validator-label-required{color:var(--input-error)}.bmb_input-validator-label-tooltip{color:var(--general_contrasts-50)}.bmb_input-validator-label-max{margin-left:auto;padding-right:var(--bmb-spacing-s)}.bmb_input-validator-support{display:flex;padding:var(--bmb-spacing-s)}.bmb_input-validator-support-helper-normal{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--general_contrasts-input-outline)}.bmb_input-validator-support-helper-simple{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--general_contrasts-50)}.bmb_input-validator-support-error{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin:0;color:var(--input-error)}.bmb_input-validator.disabled{pointer-events:none;opacity:.5}\n"] }]
177
177
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWlucHV0LXZhbGlkYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWlucHV0L2JtYi1pbnB1dC12YWxpZGF0b3IvYm1iLWlucHV0LXZhbGlkYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWlucHV0L2JtYi1pbnB1dC12YWxpZGF0b3IvYm1iLWlucHV0LXZhbGlkYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUVMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQU92QixPQUFPLEVBR0wsbUJBQW1CLEVBRW5CLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBa0J4RCxNQUFNLE9BQU8sMEJBQTBCO0lBK0JyQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTlCMUMsWUFBTyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUM1QixTQUFJLEdBQUcsS0FBSyxDQUFtQyxNQUFNLENBQUMsQ0FBQztRQUN2RCxlQUFVLEdBQUcsS0FBSyxDQUErQixRQUFRLENBQUMsQ0FBQztRQUMzRCxVQUFLLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLGtCQUFhLEdBQUcsS0FBSyxFQUEyQixDQUFDO1FBQ2pE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LEVBQ1gsNEJBQTRCLElBQUksQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUMxRCxDQUFDO1FBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQztZQUN0QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQ3RCLGFBQWEsRUFDYixVQUFVLEVBQ1YsZ0NBQWdDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUMvQyxDQUFDO1FBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUN6QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQ3RCLGFBQWEsRUFDYixZQUFZLEVBQ1osdURBQXVELENBQ3hELENBQUM7UUFDSixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxRQUFRLENBQUMsa0JBQWtCLENBQUM7WUFDOUMsT0FBTyxhQUFhLEVBQUUsZ0JBQWdCLElBQUksRUFBRSxDQUFDO1FBRS9DLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzsrR0FyUFUsMEJBQTBCO21HQUExQiwwQkFBMEIseTJHQzNDdkMsNmxEQXFEQSx5ck9EaEJZLFlBQVksNEhBQUUsbUJBQW1CLCtCQUFFLG1CQUFtQjs7NEZBTXJELDBCQUEwQjtrQkFUdEMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDLGlCQUdsRCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBtb2RlbCxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBJQm1iSW5wdXRBcHBlYXJhbmNlLFxuICBJQm1iSW5wdXRFcnJvcixcbiAgSUJtYklucHV0VG9vbHRpcFBvc2l0aW9uLFxuICBJQm1iSW5wdXRUeXBlLFxufSBmcm9tICcuLi9ibWItaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgRm9ybUNvbnRyb2wsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIFZhbGlkYXRvckZuLFxuICBWYWxpZGF0b3JzLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJQmJtU2lkZVBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJtYlRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItdG9vbHRpcC9ibWItdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0UG9zaXRpb25DbGFzcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3V0aWxzJztcblxuZXhwb3J0IHR5cGUgSUJtYklucHV0VmFsVHlwZSA9XG4gIHwgJ3JhZGlvJ1xuICB8ICdjaGVja2JveCdcbiAgfCAnZW1haWwnXG4gIHwgJ3Bob25lJ1xuICB8ICdzd2l0Y2gnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItaW5wdXQtdmFsaWRhdG9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgQm1iVG9vbHRpcENvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItaW5wdXQtdmFsaWRhdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1pbnB1dC12YWxpZGF0b3IuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iSW5wdXRWYWxpZGF0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBpbnB1dElkID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHR5cGUgPSBpbnB1dDxJQm1iSW5wdXRUeXBlIHwgSUJtYklucHV0VmFsVHlwZT4oJ3RleHQnKTtcbiAgYXBwZWFyYW5jZSA9IGlucHV0PElCbWJJbnB1dEFwcGVhcmFuY2UgfCBzdHJpbmc+KCdub3JtYWwnKTtcbiAgbGFiZWwgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgbGFiZWxQb3NpdGlvbiA9IGlucHV0PElCYm1TaWRlUG9zaXRpb24gfCBudWxsPigpO1xuICBuYW1lID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHZhbHVlID0gaW5wdXQ8c3RyaW5nIHwgc3RyaW5nW10+KCk7XG4gIGNoZWNrZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGlzUmVxdWlyZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGlzRGlzYWJsZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIG1heCA9IGlucHV0PG51bWJlcj4oKTtcbiAgbWluID0gaW5wdXQ8bnVtYmVyPigpO1xuICBtYXhMZW5ndGggPSBpbnB1dDxudW1iZXI+KCk7XG4gIG1pbkxlbmd0aCA9IGlucHV0PG51bWJlcj4oKTtcbiAgcGF0dGVybiA9IGlucHV0PHN0cmluZz4oKTtcbiAganNvbkZvcm1hdCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgdG9vbHRpcCA9IGlucHV0PHN0cmluZz4oJycpO1xuICByb3dzID0gaW5wdXQ8bnVtYmVyPigzKTtcbiAgdG9vbHRpcFBvc2l0aW9uID0gaW5wdXQ8SUJtYklucHV0VG9vbHRpcFBvc2l0aW9uPih7XG4gICAgYWxpZ246ICdhYm92ZScsXG4gICAganVzdGlmeTogJ2JlZm9yZScsXG4gIH0pO1xuICBzaG93TWF4VGV4dExlbmd0aCA9IGlucHV0PGJvb2xlYW4gfCBudWxsPih0cnVlKTtcbiAgaGVscGVyTWVzc2FnZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICBlcnJvck1lc3NhZ2UgPSBpbnB1dDxzdHJpbmcgfCBJQm1iSW5wdXRFcnJvcj4oJycpO1xuICBjdXN0b21WYWxpZGF0aW9uID0gaW5wdXQ8VmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdPigpO1xuXG4gIHNob3dFcnJvciA9IG1vZGVsPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29udHJvbCA9IG1vZGVsPEZvcm1Db250cm9sPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLm1pbigpICYmICEhdGhpcy5tYXgoKSAmJiB0aGlzLm1heCgpISA8IHRoaXMubWluKCkhKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBcbiAgICAgICAgICBbJHt0aGlzLm5hbWUoKX1dOiBQbGVhc2UgZW50ZXIgYSB2YWx1ZSBncmVhdGVyIG9yIGVxdWFsIHRoYW4gbWluLlxuICAgICAgICAgIFRoZSB2YWx1ZXMg4oCL4oCLZW50ZXJlZCBhcmU6XG4gICAgICAgICAgLW1pbjogJHt0aGlzLm1pbigpfVxuICAgICAgICAgIC1tYXg6ICR7dGhpcy5tYXgoKX1cbiAgICAgICAgICBgLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmFkZENvbnRyb2xDb25maWcoXG4gICAgICB0aGlzLnR5cGUoKSxcbiAgICAgIHRoaXMudmFsdWUoKSxcbiAgICAgIHRoaXMuY2hlY2tlZCgpLFxuICAgICAgdGhpcy5pc1JlcXVpcmVkKCksXG4gICAgICB0aGlzLm1pbigpISxcbiAgICAgIHRoaXMubWF4KCkhLFxuICAgICAgdGhpcy5taW5MZW5ndGgoKSEsXG4gICAgICB0aGlzLnBhdHRlcm4oKSEsXG4gICAgICB0aGlzLmpzb25Gb3JtYXQoKSxcbiAgICAgIHRoaXMuY3VzdG9tVmFsaWRhdGlvbigpISxcbiAgICApO1xuICB9XG5cbiAgYWRkQ29udHJvbENvbmZpZyhcbiAgICB0eXBlOiBzdHJpbmcsXG4gICAgdmFsdWU6IHVua25vd24sXG4gICAgY2hlY2tlZDogYm9vbGVhbixcbiAgICBpc1JlcXVpcmVkOiBib29sZWFuLFxuICAgIG1pbjogbnVtYmVyLFxuICAgIG1heDogbnVtYmVyLFxuICAgIG1pbkxlbmd0aDogbnVtYmVyLFxuICAgIHBhdHRlcm46IHN0cmluZyxcbiAgICBpc0pzb25Gb3JtYXQ6IGJvb2xlYW4sXG4gICAgY3VzdG9tVmFsaWRhdGlvbjogVmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdLFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29udHJvbCgpPy52YWx1ZSAmJiAoISF2YWx1ZSB8fCBjaGVja2VkKSkge1xuICAgICAgdGhpcy5hZGRWYWx1ZSh0aGlzLmNvbnRyb2woKSEsIHR5cGUsIHZhbHVlLCBjaGVja2VkKTtcbiAgICB9XG5cbiAgICBpZiAoaXNSZXF1aXJlZCAmJiAhdGhpcy5jb250cm9sKCk/Lmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSkge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgfVxuXG4gICAgaWYgKG1pbikge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5taW4obWluKSk7XG4gICAgfVxuXG4gICAgaWYgKG1heCkge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5tYXgobWF4KSk7XG4gICAgfVxuXG4gICAgaWYgKG1pbkxlbmd0aCkge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5taW5MZW5ndGgobWluTGVuZ3RoKSk7XG4gICAgfVxuXG4gICAgaWYgKHBhdHRlcm4pIHtcbiAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucGF0dGVybihwYXR0ZXJuKSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT09ICdlbWFpbCcgJiYgIXRoaXMuY29udHJvbCgpPy5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5lbWFpbCkpIHtcbiAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKFZhbGlkYXRvcnMuZW1haWwpO1xuICAgIH1cblxuICAgIGlmIChpc0pzb25Gb3JtYXQpIHtcbiAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yRXJyb3IoJ2pzb25WYWxpZGF0aW9uJykpO1xuICAgIH1cblxuICAgIGlmICghIWN1c3RvbVZhbGlkYXRpb24pIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1c3RvbVZhbGlkYXRpb24pKSB7XG4gICAgICAgIGN1c3RvbVZhbGlkYXRpb24uZm9yRWFjaCgoY3VycmVudFZhbGlkYXRpb246IFZhbGlkYXRvckZuKSA9PlxuICAgICAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yRXJyb3IoY3VycmVudFZhbGlkYXRpb24pKSxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yRXJyb3IoY3VzdG9tVmFsaWRhdGlvbikpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmlzRGlzYWJsZWQoKSkgdGhpcy5jb250cm9sKCk/LmRpc2FibGUoKTtcbiAgICBlbHNlIHRoaXMuY29udHJvbCgpPy5lbmFibGUoKTtcblxuICAgIHRoaXMuY29udHJvbCgpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgdmFsaWRhdG9yRXJyb3IoZXJyb3JUeXBlOiBzdHJpbmcgfCBWYWxpZGF0b3JGbik6IFZhbGlkYXRvckZuIHtcbiAgICBpZiAodHlwZW9mIGVycm9yVHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB8IG51bGwgPT4ge1xuICAgICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvclR5cGUgPT09ICdqc29uVmFsaWRhdGlvbicpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgSlNPTi5wYXJzZShjb250cm9sLnZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHJldHVybiB7IGludmFsaWRKc29uOiB0cnVlIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVycm9yVHlwZTtcbiAgICB9XG4gIH1cblxuICBhZGRWYWx1ZShcbiAgICBjb250cm9sOiBGb3JtQ29udHJvbCxcbiAgICB0eXBlOiBzdHJpbmcsXG4gICAgdmFsdWU6IHVua25vd24sXG4gICAgY2hlY2tlZDogYm9vbGVhbixcbiAgKTogdm9pZCB7XG4gICAgaWYgKHR5cGUgPT09ICdjaGVja2JveCcgfHwgdHlwZSA9PT0gJ3JhZGlvJykge1xuICAgICAgaWYgKGNoZWNrZWQpIHtcbiAgICAgICAgaWYgKCEhdmFsdWUpIGNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICBlbHNlIGNvbnRyb2wuc2V0VmFsdWUoY2hlY2tlZCk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT09ICdzd2l0Y2gnKSB7XG4gICAgICBpZiAoY2hlY2tlZCkgY29udHJvbC5zZXRWYWx1ZShjaGVja2VkKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIGdldENsYXNzZXMoY2xhc3NOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnR5cGUoKSA9PT0gJ3JhZGlvJyB8fCB0aGlzLnR5cGUoKSA9PT0gJ2NoZWNrYm94Jykge1xuICAgICAgcmV0dXJuIGdldFBvc2l0aW9uQ2xhc3MoYCR7Y2xhc3NOYW1lfS1kaXJlY3Rpb25gLCB0aGlzLmxhYmVsUG9zaXRpb24oKSEpO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldEVycm9yVHlwZShcbiAgICBlcnJvck1lc3NhZ2VzOiBJQm1iSW5wdXRFcnJvcixcbiAgICB0eXBlOiBzdHJpbmcsXG4gICAgYWx0ZXJuYXRpdmVNZXNzYWdlOiBzdHJpbmcsXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKCEhZXJyb3JNZXNzYWdlcyAmJiAhIShlcnJvck1lc3NhZ2VzIGFzIGFueSlbdHlwZV0pXG4gICAgICByZXR1cm4gKGVycm9yTWVzc2FnZXMgYXMgYW55KVt0eXBlXTtcbiAgICByZXR1cm4gYWx0ZXJuYXRpdmVNZXNzYWdlO1xuICB9XG5cbiAgaXNGaWVsZFJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNvbnRyb2woKT8uaGFzVmFsaWRhdG9yKFZhbGlkYXRvcnMucmVxdWlyZWQpIHx8IHRoaXMuaXNSZXF1aXJlZCgpXG4gICAgKTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2YgdGhpcy5lcnJvck1lc3NhZ2UoKSA9PT0gJ3N0cmluZycgJiYgISF0aGlzLmVycm9yTWVzc2FnZSgpKSB7XG4gICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2UoKS50b1N0cmluZygpO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9yTWVzc2FnZXMgPSB0aGlzLmVycm9yTWVzc2FnZSgpIGFzIElCbWJJbnB1dEVycm9yO1xuXG4gICAgaWYgKHRoaXMuY29udHJvbCgpPy5oYXNFcnJvcigncGF0dGVybicpKVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RXJyb3JUeXBlKFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICAncGF0dGVybicsXG4gICAgICAgIGBQb3IgZmF2b3IgaW5ncmVzYSBlbCBmb3JtYXRvIHBlcm1pdGlkbyAke3RoaXMucGF0dGVybigpfWAsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ21pbicpKVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RXJyb3JUeXBlKFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICAnbWluJyxcbiAgICAgICAgYFBvciBmYXZvciBpbmdyZXNhIHVuIHZhbG9yIG1heW9yIG8gaWd1YWwgcXVlICR7dGhpcy5taW4oKX1gLFxuICAgICAgKTtcbiAgICBpZiAodGhpcy5jb250cm9sKCk/Lmhhc0Vycm9yKCdtYXgnKSlcbiAgICAgIHJldHVybiB0aGlzLmdldEVycm9yVHlwZShcbiAgICAgICAgZXJyb3JNZXNzYWdlcyxcbiAgICAgICAgJ21heCcsXG4gICAgICAgIGBQb3IgZmF2b3IgaW5ncmVzYSB1biB2YWxvciBtZW5vciBvIGlndWFsIHF1ZSAke3RoaXMubWF4KCl9YCxcbiAgICAgICk7XG4gICAgaWYgKHRoaXMuY29udHJvbCgpPy5oYXNFcnJvcignbWlubGVuZ3RoJykpXG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvclR5cGUoXG4gICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgICdtaW5MZW5ndGgnLFxuICAgICAgICBgUG9yIGZhdm9yIGluZ3Jlc2EgYWwgbWVub3MgJHt0aGlzLm1pbkxlbmd0aCgpfSBjYXLDoWN0ZXJlc2AsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ21heGxlbmd0aCcpKVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RXJyb3JUeXBlKFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICAnbWF4TGVuZ3RoJyxcbiAgICAgICAgYFBvciBmYXZvciBpbmdyZXNhIG3DoXhpbW8gJHt0aGlzLm1heExlbmd0aCgpfSBjYXLDoWN0ZXJlc2AsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJykpXG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvclR5cGUoXG4gICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgICdyZXF1aXJlZCcsXG4gICAgICAgIGBQb3IgZmF2b3IgaW5ncmVzYSBlbCBkYXRvIGRlICR7dGhpcy5sYWJlbCgpfWAsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ2ludmFsaWRKc29uJykpXG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvclR5cGUoXG4gICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgICdqc29uRm9ybWF0JyxcbiAgICAgICAgJ1BvciBmYXZvciBpbmdyZXNhIGVsIGNvbnRlbmlkbyBlbiBmb3JtYXRvIEpTT04gdsOhbGlkbycsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ2N1c3RvbVZhbGlkYXRpb24nKSlcbiAgICAgIHJldHVybiBlcnJvck1lc3NhZ2VzPy5jdXN0b21WYWxpZGF0aW9uIHx8ICcnO1xuXG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8c2VjdGlvblxuICAjaW5wdXRWYWxpZGF0aW9uXG4gIGNsYXNzPVwiYm1iX2lucHV0LXZhbGlkYXRvclwiXG4gIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IGNvbnRyb2woKT8uZGlzYWJsZWQgfVwiXG4+XG4gIDxzcGFuXG4gICAgY2xhc3M9XCJibWJfaW5wdXQtdmFsaWRhdG9yLXdyYXBwZXJcIlxuICAgIFtuZ0NsYXNzXT1cImdldENsYXNzZXMoJ2JtYl9pbnB1dC12YWxpZGF0b3InKVwiXG4gID5cbiAgICBAaWYgKFxuICAgICAgISFsYWJlbCgpIHx8XG4gICAgICBpc1JlcXVpcmVkKCkgfHxcbiAgICAgICEhdG9vbHRpcCgpIHx8XG4gICAgICAodHlwZSgpID09PSAndGV4dC1hcmVhJyAmJiBzaG93TWF4VGV4dExlbmd0aCgpKVxuICAgICkge1xuICAgICAgPGxhYmVsIGNsYXNzPVwiYm1iX2lucHV0LXZhbGlkYXRvci1sYWJlbFwiIFtodG1sRm9yXT1cImlucHV0SWQoKVwiPlxuICAgICAgICB7eyBsYWJlbCgpIH19XG4gICAgICAgIEBpZiAoaXNGaWVsZFJlcXVpcmVkKCkpIHtcbiAgICAgICAgICA8c21hbGwgY2xhc3M9XCJibWJfaW5wdXQtdmFsaWRhdG9yLWxhYmVsLXJlcXVpcmVkXCI+Kjwvc21hbGw+XG4gICAgICAgIH1cbiAgICAgICAgQGlmICghIXRvb2x0aXAoKSkge1xuICAgICAgICAgIDxibWItdG9vbHRpcFxuICAgICAgICAgICAgY2xhc3M9XCJibWJfaW5wdXQtdmFsaWRhdG9yLWxhYmVsLXRvb2x0aXBcIlxuICAgICAgICAgICAgW3RleHRdPVwidG9vbHRpcCgpXCJcbiAgICAgICAgICAgIFthbGlnbl09XCJ0b29sdGlwUG9zaXRpb24oKS5hbGlnblwiXG4gICAgICAgICAgICBbanVzdGlmeV09XCJ0b29sdGlwUG9zaXRpb24oKS5qdXN0aWZ5XCJcbiAgICAgICAgICAgIFtpY29uXT1cIidoZWxwJ1wiXG4gICAgICAgICAgICBbc2l6ZV09XCIyMFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHR5cGUoKSA9PT0gJ3RleHQtYXJlYScgJiYgc2hvd01heFRleHRMZW5ndGgoKSkge1xuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm1iX2lucHV0LXZhbGlkYXRvci1sYWJlbC1tYXhcIj5cbiAgICAgICAgICAgIHt7IGNvbnRyb2woKT8udmFsdWU/LnRvU3RyaW5nKCkubGVuZ3RoIH19L3t7IG1heExlbmd0aCgpIHx8ICctJyB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgfVxuICAgICAgPC9sYWJlbD5cbiAgICB9XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgPC9zcGFuPlxuICBAaWYgKCEhaGVscGVyTWVzc2FnZSgpIHx8IHNob3dFcnJvcigpKSB7XG4gICAgPGRpdiBjbGFzcz1cImJtYl9pbnB1dC12YWxpZGF0b3Itc3VwcG9ydFwiPlxuICAgICAgQGlmIChzaG93RXJyb3IoKSkge1xuICAgICAgICA8cCBjbGFzcz1cImJtYl9pbnB1dC12YWxpZGF0b3Itc3VwcG9ydC1lcnJvclwiPlxuICAgICAgICAgIHt7IGdldEVycm9yTWVzc2FnZSgpIH19XG4gICAgICAgIDwvcD5cbiAgICAgIH0gQGVsc2UgaWYgKCEhaGVscGVyTWVzc2FnZSgpKSB7XG4gICAgICAgIDxwIFtjbGFzc109XCInYm1iX2lucHV0LXZhbGlkYXRvci1zdXBwb3J0LWhlbHBlci0nICsgYXBwZWFyYW5jZSgpXCI+XG4gICAgICAgICAge3sgaGVscGVyTWVzc2FnZSgpIH19XG4gICAgICAgIDwvcD5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfVxuPC9zZWN0aW9uPlxuIl19
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWlucHV0LXZhbGlkYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWlucHV0L2JtYi1pbnB1dC12YWxpZGF0b3IvYm1iLWlucHV0LXZhbGlkYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1uZy9zcmMvbGliL2NvbXBvbmVudHMvYm1iLWlucHV0L2JtYi1pbnB1dC12YWxpZGF0b3IvYm1iLWlucHV0LXZhbGlkYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUVMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQU92QixPQUFPLEVBR0wsbUJBQW1CLEVBRW5CLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBa0J4RCxNQUFNLE9BQU8sMEJBQTBCO0lBK0JyQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTlCMUMsWUFBTyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUM1QixTQUFJLEdBQUcsS0FBSyxDQUFtQyxNQUFNLENBQUMsQ0FBQztRQUN2RCxlQUFVLEdBQUcsS0FBSyxDQUErQixRQUFRLENBQUMsQ0FBQztRQUMzRCxVQUFLLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLGtCQUFhLEdBQUcsS0FBSyxFQUEyQixDQUFDO1FBQ2pE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QUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBtb2RlbCxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBJQm1iSW5wdXRBcHBlYXJhbmNlLFxuICBJQm1iSW5wdXRFcnJvcixcbiAgSUJtYklucHV0VG9vbHRpcFBvc2l0aW9uLFxuICBJQm1iSW5wdXRUeXBlLFxufSBmcm9tICcuLi9ibWItaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgRm9ybUNvbnRyb2wsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIFZhbGlkYXRvckZuLFxuICBWYWxpZGF0b3JzLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJQmJtU2lkZVBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJtYlRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItdG9vbHRpcC9ibWItdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0UG9zaXRpb25DbGFzcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3V0aWxzJztcblxuZXhwb3J0IHR5cGUgSUJtYklucHV0VmFsVHlwZSA9XG4gIHwgJ3JhZGlvJ1xuICB8ICdjaGVja2JveCdcbiAgfCAnZW1haWwnXG4gIHwgJ3Bob25lJ1xuICB8ICdzd2l0Y2gnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItaW5wdXQtdmFsaWRhdG9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgQm1iVG9vbHRpcENvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItaW5wdXQtdmFsaWRhdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1pbnB1dC12YWxpZGF0b3IuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iSW5wdXRWYWxpZGF0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBpbnB1dElkID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHR5cGUgPSBpbnB1dDxJQm1iSW5wdXRUeXBlIHwgSUJtYklucHV0VmFsVHlwZT4oJ3RleHQnKTtcbiAgYXBwZWFyYW5jZSA9IGlucHV0PElCbWJJbnB1dEFwcGVhcmFuY2UgfCBzdHJpbmc+KCdub3JtYWwnKTtcbiAgbGFiZWwgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgbGFiZWxQb3NpdGlvbiA9IGlucHV0PElCYm1TaWRlUG9zaXRpb24gfCBudWxsPigpO1xuICBuYW1lID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHZhbHVlID0gaW5wdXQ8c3RyaW5nIHwgc3RyaW5nW10+KCk7XG4gIGNoZWNrZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGlzUmVxdWlyZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGlzRGlzYWJsZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIG1heCA9IGlucHV0PG51bWJlcj4oKTtcbiAgbWluID0gaW5wdXQ8bnVtYmVyPigpO1xuICBtYXhMZW5ndGggPSBpbnB1dDxudW1iZXI+KCk7XG4gIG1pbkxlbmd0aCA9IGlucHV0PG51bWJlcj4oKTtcbiAgcGF0dGVybiA9IGlucHV0PHN0cmluZz4oKTtcbiAganNvbkZvcm1hdCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgdG9vbHRpcCA9IGlucHV0PHN0cmluZz4oJycpO1xuICByb3dzID0gaW5wdXQ8bnVtYmVyPigzKTtcbiAgdG9vbHRpcFBvc2l0aW9uID0gaW5wdXQ8SUJtYklucHV0VG9vbHRpcFBvc2l0aW9uPih7XG4gICAgYWxpZ246ICdhYm92ZScsXG4gICAganVzdGlmeTogJ2JlZm9yZScsXG4gIH0pO1xuICBzaG93TWF4VGV4dExlbmd0aCA9IGlucHV0PGJvb2xlYW4gfCBudWxsPih0cnVlKTtcbiAgaGVscGVyTWVzc2FnZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICBlcnJvck1lc3NhZ2UgPSBpbnB1dDxzdHJpbmcgfCBJQm1iSW5wdXRFcnJvcj4oJycpO1xuICBjdXN0b21WYWxpZGF0aW9uID0gaW5wdXQ8VmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdPigpO1xuXG4gIHNob3dFcnJvciA9IG1vZGVsPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29udHJvbCA9IG1vZGVsPEZvcm1Db250cm9sPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLm1pbigpICYmICEhdGhpcy5tYXgoKSAmJiB0aGlzLm1heCgpISA8IHRoaXMubWluKCkhKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBcbiAgICAgICAgICBbJHt0aGlzLm5hbWUoKX1dOiBQbGVhc2UgZW50ZXIgYSB2YWx1ZSBncmVhdGVyIG9yIGVxdWFsIHRoYW4gbWluLlxuICAgICAgICAgIFRoZSB2YWx1ZXMg4oCL4oCLZW50ZXJlZCBhcmU6XG4gICAgICAgICAgLW1pbjogJHt0aGlzLm1pbigpfVxuICAgICAgICAgIC1tYXg6ICR7dGhpcy5tYXgoKX1cbiAgICAgICAgICBgLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmFkZENvbnRyb2xDb25maWcoXG4gICAgICB0aGlzLnR5cGUoKSxcbiAgICAgIHRoaXMudmFsdWUoKSxcbiAgICAgIHRoaXMuY2hlY2tlZCgpLFxuICAgICAgdGhpcy5pc1JlcXVpcmVkKCksXG4gICAgICB0aGlzLm1pbigpISxcbiAgICAgIHRoaXMubWF4KCkhLFxuICAgICAgdGhpcy5taW5MZW5ndGgoKSEsXG4gICAgICB0aGlzLnBhdHRlcm4oKSEsXG4gICAgICB0aGlzLmpzb25Gb3JtYXQoKSxcbiAgICAgIHRoaXMuY3VzdG9tVmFsaWRhdGlvbigpISxcbiAgICApO1xuICB9XG5cbiAgYWRkQ29udHJvbENvbmZpZyhcbiAgICB0eXBlOiBzdHJpbmcsXG4gICAgdmFsdWU6IHVua25vd24sXG4gICAgY2hlY2tlZDogYm9vbGVhbixcbiAgICBpc1JlcXVpcmVkOiBib29sZWFuLFxuICAgIG1pbjogbnVtYmVyLFxuICAgIG1heDogbnVtYmVyLFxuICAgIG1pbkxlbmd0aDogbnVtYmVyLFxuICAgIHBhdHRlcm46IHN0cmluZyxcbiAgICBpc0pzb25Gb3JtYXQ6IGJvb2xlYW4sXG4gICAgY3VzdG9tVmFsaWRhdGlvbjogVmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdLFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29udHJvbCgpPy52YWx1ZSAmJiAoISF2YWx1ZSB8fCBjaGVja2VkKSkge1xuICAgICAgdGhpcy5hZGRWYWx1ZSh0aGlzLmNvbnRyb2woKSEsIHR5cGUsIHZhbHVlLCBjaGVja2VkKTtcbiAgICB9XG5cbiAgICBpZiAoaXNSZXF1aXJlZCAmJiAhdGhpcy5jb250cm9sKCk/Lmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSkge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgfVxuXG4gICAgaWYgKG1pbikge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5taW4obWluKSk7XG4gICAgfVxuXG4gICAgaWYgKG1heCkge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5tYXgobWF4KSk7XG4gICAgfVxuXG4gICAgaWYgKG1pbkxlbmd0aCkge1xuICAgICAgdGhpcy5jb250cm9sKCk/LmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5taW5MZW5ndGgobWluTGVuZ3RoKSk7XG4gICAgfVxuXG4gICAgaWYgKHBhdHRlcm4pIHtcbiAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucGF0dGVybihwYXR0ZXJuKSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT09ICdlbWFpbCcgJiYgIXRoaXMuY29udHJvbCgpPy5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5lbWFpbCkpIHtcbiAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKFZhbGlkYXRvcnMuZW1haWwpO1xuICAgIH1cblxuICAgIGlmIChpc0pzb25Gb3JtYXQpIHtcbiAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yRXJyb3IoJ2pzb25WYWxpZGF0aW9uJykpO1xuICAgIH1cblxuICAgIGlmICghIWN1c3RvbVZhbGlkYXRpb24pIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1c3RvbVZhbGlkYXRpb24pKSB7XG4gICAgICAgIGN1c3RvbVZhbGlkYXRpb24uZm9yRWFjaCgoY3VycmVudFZhbGlkYXRpb246IFZhbGlkYXRvckZuKSA9PlxuICAgICAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yRXJyb3IoY3VycmVudFZhbGlkYXRpb24pKSxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY29udHJvbCgpPy5hZGRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yRXJyb3IoY3VzdG9tVmFsaWRhdGlvbikpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmlzRGlzYWJsZWQoKSkgdGhpcy5jb250cm9sKCk/LmRpc2FibGUoKTtcbiAgICBlbHNlIHRoaXMuY29udHJvbCgpPy5lbmFibGUoKTtcblxuICAgIHRoaXMuY29udHJvbCgpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgdmFsaWRhdG9yRXJyb3IoZXJyb3JUeXBlOiBzdHJpbmcgfCBWYWxpZGF0b3JGbik6IFZhbGlkYXRvckZuIHtcbiAgICBpZiAodHlwZW9mIGVycm9yVHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB8IG51bGwgPT4ge1xuICAgICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvclR5cGUgPT09ICdqc29uVmFsaWRhdGlvbicpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgSlNPTi5wYXJzZShjb250cm9sLnZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHJldHVybiB7IGludmFsaWRKc29uOiB0cnVlIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVycm9yVHlwZTtcbiAgICB9XG4gIH1cblxuICBhZGRWYWx1ZShcbiAgICBjb250cm9sOiBGb3JtQ29udHJvbCxcbiAgICB0eXBlOiBzdHJpbmcsXG4gICAgdmFsdWU6IHVua25vd24sXG4gICAgY2hlY2tlZDogYm9vbGVhbixcbiAgKTogdm9pZCB7XG4gICAgaWYgKHR5cGUgPT09ICdjaGVja2JveCcgfHwgdHlwZSA9PT0gJ3JhZGlvJykge1xuICAgICAgaWYgKGNoZWNrZWQpIHtcbiAgICAgICAgaWYgKCEhdmFsdWUpIGNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICBlbHNlIGNvbnRyb2wuc2V0VmFsdWUoY2hlY2tlZCk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT09ICdzd2l0Y2gnKSB7XG4gICAgICBpZiAoY2hlY2tlZCkgY29udHJvbC5zZXRWYWx1ZShjaGVja2VkKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIGdldENsYXNzZXMoY2xhc3NOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnR5cGUoKSA9PT0gJ3JhZGlvJyB8fCB0aGlzLnR5cGUoKSA9PT0gJ2NoZWNrYm94Jykge1xuICAgICAgcmV0dXJuIGdldFBvc2l0aW9uQ2xhc3MoYCR7Y2xhc3NOYW1lfS1kaXJlY3Rpb25gLCB0aGlzLmxhYmVsUG9zaXRpb24oKSEpO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldEVycm9yVHlwZShcbiAgICBlcnJvck1lc3NhZ2VzOiBJQm1iSW5wdXRFcnJvcixcbiAgICB0eXBlOiBzdHJpbmcsXG4gICAgYWx0ZXJuYXRpdmVNZXNzYWdlOiBzdHJpbmcsXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKCEhZXJyb3JNZXNzYWdlcyAmJiAhIShlcnJvck1lc3NhZ2VzIGFzIGFueSlbdHlwZV0pXG4gICAgICByZXR1cm4gKGVycm9yTWVzc2FnZXMgYXMgYW55KVt0eXBlXTtcbiAgICByZXR1cm4gYWx0ZXJuYXRpdmVNZXNzYWdlO1xuICB9XG5cbiAgaXNGaWVsZFJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNvbnRyb2woKT8uaGFzVmFsaWRhdG9yKFZhbGlkYXRvcnMucmVxdWlyZWQpIHx8IHRoaXMuaXNSZXF1aXJlZCgpXG4gICAgKTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2YgdGhpcy5lcnJvck1lc3NhZ2UoKSA9PT0gJ3N0cmluZycgJiYgISF0aGlzLmVycm9yTWVzc2FnZSgpKSB7XG4gICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2UoKS50b1N0cmluZygpO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9yTWVzc2FnZXMgPSB0aGlzLmVycm9yTWVzc2FnZSgpIGFzIElCbWJJbnB1dEVycm9yO1xuXG4gICAgaWYgKHRoaXMuY29udHJvbCgpPy5oYXNFcnJvcigncGF0dGVybicpKVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RXJyb3JUeXBlKFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICAncGF0dGVybicsXG4gICAgICAgIGBQb3IgZmF2b3IgaW5ncmVzYSBlbCBmb3JtYXRvIHBlcm1pdGlkbyAke3RoaXMucGF0dGVybigpfWAsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ21pbicpKVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RXJyb3JUeXBlKFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICAnbWluJyxcbiAgICAgICAgYFBvciBmYXZvciBpbmdyZXNhIHVuIHZhbG9yIG1heW9yIG8gaWd1YWwgcXVlICR7dGhpcy5taW4oKX1gLFxuICAgICAgKTtcbiAgICBpZiAodGhpcy5jb250cm9sKCk/Lmhhc0Vycm9yKCdtYXgnKSlcbiAgICAgIHJldHVybiB0aGlzLmdldEVycm9yVHlwZShcbiAgICAgICAgZXJyb3JNZXNzYWdlcyxcbiAgICAgICAgJ21heCcsXG4gICAgICAgIGBQb3IgZmF2b3IgaW5ncmVzYSB1biB2YWxvciBtZW5vciBvIGlndWFsIHF1ZSAke3RoaXMubWF4KCl9YCxcbiAgICAgICk7XG4gICAgaWYgKHRoaXMuY29udHJvbCgpPy5oYXNFcnJvcignbWlubGVuZ3RoJykpXG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvclR5cGUoXG4gICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgICdtaW5MZW5ndGgnLFxuICAgICAgICBgUG9yIGZhdm9yIGluZ3Jlc2EgYWwgbWVub3MgJHt0aGlzLm1pbkxlbmd0aCgpfSBjYXLDoWN0ZXJlc2AsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ21heGxlbmd0aCcpKVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RXJyb3JUeXBlKFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICAnbWF4TGVuZ3RoJyxcbiAgICAgICAgYFBvciBmYXZvciBpbmdyZXNhIG3DoXhpbW8gJHt0aGlzLm1heExlbmd0aCgpfSBjYXLDoWN0ZXJlc2AsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJykpXG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvclR5cGUoXG4gICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgICdyZXF1aXJlZCcsXG4gICAgICAgIGBQb3IgZmF2b3IgaW5ncmVzYSBlbCBkYXRvIGRlICR7dGhpcy5sYWJlbCgpfWAsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ2ludmFsaWRKc29uJykpXG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvclR5cGUoXG4gICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgICdqc29uRm9ybWF0JyxcbiAgICAgICAgJ1BvciBmYXZvciBpbmdyZXNhIGVsIGNvbnRlbmlkbyBlbiBmb3JtYXRvIEpTT04gdsOhbGlkbycsXG4gICAgICApO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzRXJyb3IoJ2N1c3RvbVZhbGlkYXRpb24nKSlcbiAgICAgIHJldHVybiBlcnJvck1lc3NhZ2VzPy5jdXN0b21WYWxpZGF0aW9uIHx8ICcnO1xuXG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8c2VjdGlvblxuICAjaW5wdXRWYWxpZGF0aW9uXG4gIGNsYXNzPVwiYm1iX2lucHV0LXZhbGlkYXRvclwiXG4gIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IGNvbnRyb2woKT8uZGlzYWJsZWQgfVwiXG4+XG4gIDxzcGFuXG4gICAgY2xhc3M9XCJibWJfaW5wdXQtdmFsaWRhdG9yLXdyYXBwZXJcIlxuICAgIFtuZ0NsYXNzXT1cImdldENsYXNzZXMoJ2JtYl9pbnB1dC12YWxpZGF0b3InKVwiXG4gID5cbiAgICBAaWYgKFxuICAgICAgISFsYWJlbCgpIHx8XG4gICAgICBpc1JlcXVpcmVkKCkgfHxcbiAgICAgICEhdG9vbHRpcCgpIHx8XG4gICAgICAodHlwZSgpID09PSAndGV4dC1hcmVhJyAmJiBzaG93TWF4VGV4dExlbmd0aCgpKVxuICAgICkge1xuICAgICAgPGxhYmVsIGNsYXNzPVwiYm1iX2lucHV0LXZhbGlkYXRvci1sYWJlbFwiIFtodG1sRm9yXT1cImlucHV0SWQoKVwiPlxuICAgICAgICB7eyBsYWJlbCgpIH19XG4gICAgICAgIEBpZiAoaXNGaWVsZFJlcXVpcmVkKCkpIHtcbiAgICAgICAgICA8c21hbGwgY2xhc3M9XCJibWJfaW5wdXQtdmFsaWRhdG9yLWxhYmVsLXJlcXVpcmVkXCI+Kjwvc21hbGw+XG4gICAgICAgIH1cbiAgICAgICAgQGlmICghIXRvb2x0aXAoKSkge1xuICAgICAgICAgIDxibWItdG9vbHRpcFxuICAgICAgICAgICAgY2xhc3M9XCJibWJfaW5wdXQtdmFsaWRhdG9yLWxhYmVsLXRvb2x0aXBcIlxuICAgICAgICAgICAgW3RleHRdPVwidG9vbHRpcCgpXCJcbiAgICAgICAgICAgIFthbGlnbl09XCJ0b29sdGlwUG9zaXRpb24oKS5hbGlnblwiXG4gICAgICAgICAgICBbanVzdGlmeV09XCJ0b29sdGlwUG9zaXRpb24oKS5qdXN0aWZ5XCJcbiAgICAgICAgICAgIFtpY29uXT1cIidoZWxwJ1wiXG4gICAgICAgICAgICBbc2l6ZV09XCIyMFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHR5cGUoKSA9PT0gJ3RleHQtYXJlYScgJiYgc2hvd01heFRleHRMZW5ndGgoKSkge1xuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm1iX2lucHV0LXZhbGlkYXRvci1sYWJlbC1tYXhcIj5cbiAgICAgICAgICAgIHt7IGNvbnRyb2woKT8udmFsdWU/LnRvU3RyaW5nKCkubGVuZ3RoIH19L3t7IG1heExlbmd0aCgpIHx8ICctJyB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgfVxuICAgICAgPC9sYWJlbD5cbiAgICB9XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgPC9zcGFuPlxuICBAaWYgKCEhaGVscGVyTWVzc2FnZSgpIHx8IHNob3dFcnJvcigpKSB7XG4gICAgPGRpdiBjbGFzcz1cImJtYl9pbnB1dC12YWxpZGF0b3Itc3VwcG9ydFwiPlxuICAgICAgQGlmIChzaG93RXJyb3IoKSkge1xuICAgICAgICA8cCBjbGFzcz1cImJtYl9pbnB1dC12YWxpZGF0b3Itc3VwcG9ydC1lcnJvclwiPlxuICAgICAgICAgIHt7IGdldEVycm9yTWVzc2FnZSgpIH19XG4gICAgICAgIDwvcD5cbiAgICAgIH0gQGVsc2UgaWYgKCEhaGVscGVyTWVzc2FnZSgpKSB7XG4gICAgICAgIDxwIFtjbGFzc109XCInYm1iX2lucHV0LXZhbGlkYXRvci1zdXBwb3J0LWhlbHBlci0nICsgYXBwZWFyYW5jZSgpXCI+XG4gICAgICAgICAge3sgaGVscGVyTWVzc2FnZSgpIH19XG4gICAgICAgIDwvcD5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfVxuPC9zZWN0aW9uPlxuIl19