@mintplayer/ng-bootstrap 13.10.0 → 14.1.1

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 (215) hide show
  1. package/esm2020/lib/components/accordion/accordion/accordion.component.mjs +4 -4
  2. package/esm2020/lib/components/accordion/accordion-tab/accordion-tab.component.mjs +4 -4
  3. package/esm2020/lib/components/accordion/accordion-tab-header/accordion-tab-header.component.mjs +4 -4
  4. package/esm2020/lib/components/accordion/accordion.module.mjs +5 -7
  5. package/esm2020/lib/components/accordion/from-overlay/from-overlay.directive.mjs +3 -3
  6. package/esm2020/lib/components/accordion/from-overlay-id/from-overlay-id.directive.mjs +3 -3
  7. package/esm2020/lib/components/alert/alert/alert.component.mjs +27 -7
  8. package/esm2020/lib/components/alert/alert-close/alert-close.component.mjs +5 -4
  9. package/esm2020/lib/components/alert/alert.module.mjs +5 -5
  10. package/esm2020/lib/components/calendar/calendar.component.mjs +3 -3
  11. package/esm2020/lib/components/calendar/calendar.module.mjs +8 -10
  12. package/esm2020/lib/components/card/card/card.component.mjs +3 -3
  13. package/esm2020/lib/components/card/card-header/card-header.component.mjs +4 -4
  14. package/esm2020/lib/components/card/card.module.mjs +5 -5
  15. package/esm2020/lib/components/carousel/carousel/carousel.component.mjs +4 -4
  16. package/esm2020/lib/components/carousel/carousel-image/carousel-image.directive.mjs +3 -3
  17. package/esm2020/lib/components/carousel/carousel.module.mjs +5 -7
  18. package/esm2020/lib/components/code-snippet/code-snippet.component.mjs +3 -3
  19. package/esm2020/lib/components/code-snippet/code-snippet.module.mjs +7 -9
  20. package/esm2020/lib/components/context-menu/context-menu.directive.mjs +3 -3
  21. package/esm2020/lib/components/context-menu/context-menu.module.mjs +6 -8
  22. package/esm2020/lib/components/copy/copy.directive.mjs +3 -3
  23. package/esm2020/lib/components/copy/copy.module.mjs +5 -7
  24. package/esm2020/lib/components/datatable/datatable/datatable.component.mjs +5 -5
  25. package/esm2020/lib/components/datatable/datatable-column/datatable-column.directive.mjs +3 -3
  26. package/esm2020/lib/components/datatable/datatable.module.mjs +6 -8
  27. package/esm2020/lib/components/datatable/row-template/row-template.directive.mjs +3 -3
  28. package/esm2020/lib/components/datepicker/datepicker.component.mjs +4 -4
  29. package/esm2020/lib/components/datepicker/datepicker.module.mjs +7 -9
  30. package/esm2020/lib/components/dropdown/dropdown/dropdown.directive.mjs +3 -3
  31. package/esm2020/lib/components/dropdown/dropdown-menu/dropdown-menu.directive.mjs +3 -3
  32. package/esm2020/lib/components/dropdown/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
  33. package/esm2020/lib/components/dropdown/dropdown.module.mjs +7 -9
  34. package/esm2020/lib/components/file-upload/component/file-upload.component.mjs +7 -7
  35. package/esm2020/lib/components/file-upload/directive/file-upload-template.directive.mjs +3 -3
  36. package/esm2020/lib/components/file-upload/file-upload.module.mjs +8 -10
  37. package/esm2020/lib/components/for/for.directive.mjs +3 -3
  38. package/esm2020/lib/components/for/for.module.mjs +5 -7
  39. package/esm2020/lib/components/list-group/list-group/list-group.component.mjs +4 -4
  40. package/esm2020/lib/components/list-group/list-group-item/list-group-item.component.mjs +3 -3
  41. package/esm2020/lib/components/list-group/list-group.module.mjs +5 -5
  42. package/esm2020/lib/components/modal/components/modal/modal.component.mjs +5 -5
  43. package/esm2020/lib/components/modal/components/modal-host/modal-host.component.mjs +4 -4
  44. package/esm2020/lib/components/modal/directives/modal/modal.directive.mjs +3 -3
  45. package/esm2020/lib/components/modal/directives/modal-body/modal-body.directive.mjs +3 -3
  46. package/esm2020/lib/components/modal/directives/modal-close/modal-close.directive.mjs +3 -3
  47. package/esm2020/lib/components/modal/directives/modal-footer/modal-footer.directive.mjs +3 -3
  48. package/esm2020/lib/components/modal/directives/modal-header/modal-header.directive.mjs +3 -3
  49. package/esm2020/lib/components/modal/modal.module.mjs +7 -9
  50. package/esm2020/lib/components/multiselect/component/multiselect.component.mjs +6 -6
  51. package/esm2020/lib/components/multiselect/directives/button-template/button-template.directive.mjs +3 -3
  52. package/esm2020/lib/components/multiselect/directives/footer-template/footer-template.directive.mjs +3 -3
  53. package/esm2020/lib/components/multiselect/directives/header-template/header-template.directive.mjs +3 -3
  54. package/esm2020/lib/components/multiselect/multiselect.module.mjs +7 -9
  55. package/esm2020/lib/components/navbar/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
  56. package/esm2020/lib/components/navbar/expand-button/expand-button.directive.mjs +3 -3
  57. package/esm2020/lib/components/navbar/nav-link/nav-link.directive.mjs +3 -3
  58. package/esm2020/lib/components/navbar/navbar/navbar.component.mjs +3 -3
  59. package/esm2020/lib/components/navbar/navbar-brand/navbar-brand.component.mjs +4 -4
  60. package/esm2020/lib/components/navbar/navbar-content/navbar-content.directive.mjs +3 -3
  61. package/esm2020/lib/components/navbar/navbar-dropdown/navbar-dropdown.component.mjs +3 -3
  62. package/esm2020/lib/components/navbar/navbar-item/navbar-item.component.mjs +3 -3
  63. package/esm2020/lib/components/navbar/navbar-nav/navbar-nav.component.mjs +4 -4
  64. package/esm2020/lib/components/navbar/navbar-toggler/navbar-toggler.component.mjs +3 -3
  65. package/esm2020/lib/components/navbar/navbar.module.mjs +7 -9
  66. package/esm2020/lib/components/offcanvas/components/offcanvas/offcanvas.component.mjs +4 -4
  67. package/esm2020/lib/components/offcanvas/components/offcanvas-body/offcanvas-body.component.mjs +3 -3
  68. package/esm2020/lib/components/offcanvas/components/offcanvas-header/offcanvas-header.component.mjs +4 -4
  69. package/esm2020/lib/components/offcanvas/components/offcanvas-host/offcanvas-host.component.mjs +4 -4
  70. package/esm2020/lib/components/offcanvas/directives/offcanvas-close/offcanvas-close.directive.mjs +3 -3
  71. package/esm2020/lib/components/offcanvas/directives/offcanvas-content/offcanvas-content.directive.mjs +3 -3
  72. package/esm2020/lib/components/offcanvas/offcanvas.module.mjs +7 -9
  73. package/esm2020/lib/components/pagination/pagination/pagination.component.mjs +3 -3
  74. package/esm2020/lib/components/pagination/pagination.module.mjs +5 -7
  75. package/esm2020/lib/components/progress-bar/progress/progress.component.mjs +3 -3
  76. package/esm2020/lib/components/progress-bar/progress-bar/progress-bar.component.mjs +4 -4
  77. package/esm2020/lib/components/progress-bar/progress-bar.module.mjs +5 -7
  78. package/esm2020/lib/components/rating/rating.component.mjs +4 -4
  79. package/esm2020/lib/components/rating/rating.module.mjs +5 -7
  80. package/esm2020/lib/components/scheduler/components/resource-group-presenter/resource-group-presenter.component.mjs +4 -4
  81. package/esm2020/lib/components/scheduler/components/scheduler/scheduler.component.mjs +7 -7
  82. package/esm2020/lib/components/scheduler/pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe.mjs +3 -3
  83. package/esm2020/lib/components/scheduler/pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe.mjs +3 -3
  84. package/esm2020/lib/components/scheduler/pipes/date-offset/date-offset.pipe.mjs +3 -3
  85. package/esm2020/lib/components/scheduler/pipes/day-of-week/day-of-week.pipe.mjs +3 -3
  86. package/esm2020/lib/components/scheduler/scheduler.module.mjs +5 -7
  87. package/esm2020/lib/components/scheduler/services/timeline/timeline.service.mjs +3 -3
  88. package/esm2020/lib/components/scrollspy/component/scrollspy.component.mjs +4 -4
  89. package/esm2020/lib/components/scrollspy/directives/scrollspy.directive.mjs +3 -3
  90. package/esm2020/lib/components/scrollspy/scrollspy.module.mjs +5 -7
  91. package/esm2020/lib/components/select2/component/select2.component.mjs +6 -6
  92. package/esm2020/lib/components/select2/directive/item-template.directive.mjs +3 -3
  93. package/esm2020/lib/components/select2/select2.module.mjs +8 -10
  94. package/esm2020/lib/components/snackbar/component/snackbar.component.mjs +4 -4
  95. package/esm2020/lib/components/snackbar/directives/snackbar-close/snackbar-close.directive.mjs +3 -3
  96. package/esm2020/lib/components/snackbar/service/snackbar.service.mjs +3 -3
  97. package/esm2020/lib/components/snackbar/snackbar.module.mjs +6 -8
  98. package/esm2020/lib/components/tab-control/tab-control/tab-control.component.mjs +3 -3
  99. package/esm2020/lib/components/tab-control/tab-control.module.mjs +5 -7
  100. package/esm2020/lib/components/tab-control/tab-page/tab-page.component.mjs +4 -4
  101. package/esm2020/lib/components/timepicker/timepicker.component.mjs +8 -8
  102. package/esm2020/lib/components/timepicker/timepicker.module.mjs +8 -10
  103. package/esm2020/lib/components/toggle-button/toggle-button.component.mjs +4 -4
  104. package/esm2020/lib/components/toggle-button/toggle-button.module.mjs +5 -7
  105. package/esm2020/lib/components/tooltip/component/tooltip.component.mjs +4 -4
  106. package/esm2020/lib/components/tooltip/directive/tooltip.directive.mjs +3 -3
  107. package/esm2020/lib/components/tooltip/tooltip.module.mjs +6 -8
  108. package/esm2020/lib/components/typeahead/typeahead.component.mjs +7 -7
  109. package/esm2020/lib/components/typeahead/typeahead.module.mjs +8 -10
  110. package/esm2020/lib/directives/enhanced-paste/enhanced-paste.directive.mjs +3 -3
  111. package/esm2020/lib/directives/enhanced-paste/enhanced-paste.module.mjs +5 -7
  112. package/esm2020/lib/pipes/font-color/font-color.module.mjs +5 -7
  113. package/esm2020/lib/pipes/font-color/font-color.pipe.mjs +3 -3
  114. package/esm2020/lib/pipes/format-bytes/format-bytes.module.mjs +5 -7
  115. package/esm2020/lib/pipes/format-bytes/format-bytes.pipe.mjs +3 -3
  116. package/esm2020/lib/pipes/in-list/in-list.module.mjs +5 -7
  117. package/esm2020/lib/pipes/in-list/in-list.pipe.mjs +3 -3
  118. package/esm2020/lib/pipes/month-name/month-name.module.mjs +5 -7
  119. package/esm2020/lib/pipes/month-name/month-name.pipe.mjs +3 -3
  120. package/esm2020/lib/pipes/uc-first/uc-first.module.mjs +5 -7
  121. package/esm2020/lib/pipes/uc-first/uc-first.pipe.mjs +3 -3
  122. package/esm2020/lib/pipes/weekday-name/weekday-name.module.mjs +5 -7
  123. package/esm2020/lib/pipes/weekday-name/weekday-name.pipe.mjs +3 -3
  124. package/esm2020/lib/services/calendar-month/calendar-month.service.mjs +3 -3
  125. package/esm2020/lib/services/scroll-offset/scroll-offset.service.mjs +3 -3
  126. package/fesm2015/mintplayer-ng-bootstrap.mjs +535 -582
  127. package/fesm2015/mintplayer-ng-bootstrap.mjs.map +1 -1
  128. package/fesm2020/mintplayer-ng-bootstrap.mjs +535 -582
  129. package/fesm2020/mintplayer-ng-bootstrap.mjs.map +1 -1
  130. package/lib/components/accordion/accordion/accordion.component.d.ts +1 -1
  131. package/lib/components/accordion/accordion-tab/accordion-tab.component.d.ts +1 -1
  132. package/lib/components/accordion/accordion-tab-header/accordion-tab-header.component.d.ts +1 -1
  133. package/lib/components/accordion/from-overlay/from-overlay.directive.d.ts +1 -1
  134. package/lib/components/accordion/from-overlay-id/from-overlay-id.directive.d.ts +1 -1
  135. package/lib/components/alert/alert/alert.component.d.ts +8 -2
  136. package/lib/components/alert/alert-close/alert-close.component.d.ts +2 -2
  137. package/lib/components/calendar/calendar.component.d.ts +1 -1
  138. package/lib/components/card/card/card.component.d.ts +1 -1
  139. package/lib/components/card/card-header/card-header.component.d.ts +1 -1
  140. package/lib/components/carousel/carousel/carousel.component.d.ts +1 -1
  141. package/lib/components/carousel/carousel-image/carousel-image.directive.d.ts +1 -1
  142. package/lib/components/code-snippet/code-snippet.component.d.ts +1 -1
  143. package/lib/components/context-menu/context-menu.directive.d.ts +1 -1
  144. package/lib/components/copy/copy.directive.d.ts +1 -1
  145. package/lib/components/datatable/datatable/datatable.component.d.ts +1 -1
  146. package/lib/components/datatable/datatable-column/datatable-column.directive.d.ts +1 -1
  147. package/lib/components/datatable/row-template/row-template.directive.d.ts +1 -1
  148. package/lib/components/datepicker/datepicker.component.d.ts +1 -1
  149. package/lib/components/dropdown/dropdown/dropdown.directive.d.ts +1 -1
  150. package/lib/components/dropdown/dropdown-menu/dropdown-menu.directive.d.ts +1 -1
  151. package/lib/components/dropdown/dropdown-toggle/dropdown-toggle.directive.d.ts +1 -1
  152. package/lib/components/file-upload/component/file-upload.component.d.ts +1 -1
  153. package/lib/components/file-upload/directive/file-upload-template.directive.d.ts +1 -1
  154. package/lib/components/for/for.directive.d.ts +1 -1
  155. package/lib/components/list-group/list-group/list-group.component.d.ts +1 -1
  156. package/lib/components/list-group/list-group-item/list-group-item.component.d.ts +1 -1
  157. package/lib/components/modal/components/modal/modal.component.d.ts +1 -1
  158. package/lib/components/modal/components/modal-host/modal-host.component.d.ts +1 -1
  159. package/lib/components/modal/directives/modal/modal.directive.d.ts +1 -1
  160. package/lib/components/modal/directives/modal-body/modal-body.directive.d.ts +1 -1
  161. package/lib/components/modal/directives/modal-close/modal-close.directive.d.ts +1 -1
  162. package/lib/components/modal/directives/modal-footer/modal-footer.directive.d.ts +1 -1
  163. package/lib/components/modal/directives/modal-header/modal-header.directive.d.ts +1 -1
  164. package/lib/components/multiselect/component/multiselect.component.d.ts +1 -1
  165. package/lib/components/multiselect/directives/button-template/button-template.directive.d.ts +1 -1
  166. package/lib/components/multiselect/directives/footer-template/footer-template.directive.d.ts +1 -1
  167. package/lib/components/multiselect/directives/header-template/header-template.directive.d.ts +1 -1
  168. package/lib/components/navbar/dropdown-toggle/dropdown-toggle.directive.d.ts +1 -1
  169. package/lib/components/navbar/expand-button/expand-button.directive.d.ts +1 -1
  170. package/lib/components/navbar/nav-link/nav-link.directive.d.ts +1 -1
  171. package/lib/components/navbar/navbar/navbar.component.d.ts +1 -1
  172. package/lib/components/navbar/navbar-brand/navbar-brand.component.d.ts +1 -1
  173. package/lib/components/navbar/navbar-content/navbar-content.directive.d.ts +1 -1
  174. package/lib/components/navbar/navbar-dropdown/navbar-dropdown.component.d.ts +1 -1
  175. package/lib/components/navbar/navbar-item/navbar-item.component.d.ts +1 -1
  176. package/lib/components/navbar/navbar-nav/navbar-nav.component.d.ts +1 -1
  177. package/lib/components/navbar/navbar-toggler/navbar-toggler.component.d.ts +1 -1
  178. package/lib/components/offcanvas/components/offcanvas/offcanvas.component.d.ts +1 -1
  179. package/lib/components/offcanvas/components/offcanvas-body/offcanvas-body.component.d.ts +1 -1
  180. package/lib/components/offcanvas/components/offcanvas-header/offcanvas-header.component.d.ts +1 -1
  181. package/lib/components/offcanvas/components/offcanvas-host/offcanvas-host.component.d.ts +1 -1
  182. package/lib/components/offcanvas/directives/offcanvas-close/offcanvas-close.directive.d.ts +1 -1
  183. package/lib/components/offcanvas/directives/offcanvas-content/offcanvas-content.directive.d.ts +1 -1
  184. package/lib/components/pagination/pagination/pagination.component.d.ts +1 -1
  185. package/lib/components/progress-bar/progress/progress.component.d.ts +1 -1
  186. package/lib/components/progress-bar/progress-bar/progress-bar.component.d.ts +1 -1
  187. package/lib/components/rating/rating.component.d.ts +1 -1
  188. package/lib/components/scheduler/components/resource-group-presenter/resource-group-presenter.component.d.ts +1 -1
  189. package/lib/components/scheduler/components/scheduler/scheduler.component.d.ts +1 -1
  190. package/lib/components/scheduler/pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe.d.ts +1 -1
  191. package/lib/components/scheduler/pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe.d.ts +1 -1
  192. package/lib/components/scheduler/pipes/date-offset/date-offset.pipe.d.ts +1 -1
  193. package/lib/components/scheduler/pipes/day-of-week/day-of-week.pipe.d.ts +1 -1
  194. package/lib/components/scrollspy/component/scrollspy.component.d.ts +1 -1
  195. package/lib/components/scrollspy/directives/scrollspy.directive.d.ts +1 -1
  196. package/lib/components/select2/component/select2.component.d.ts +1 -1
  197. package/lib/components/select2/directive/item-template.directive.d.ts +1 -1
  198. package/lib/components/snackbar/component/snackbar.component.d.ts +1 -1
  199. package/lib/components/snackbar/directives/snackbar-close/snackbar-close.directive.d.ts +1 -1
  200. package/lib/components/tab-control/tab-control/tab-control.component.d.ts +1 -1
  201. package/lib/components/tab-control/tab-page/tab-page.component.d.ts +1 -1
  202. package/lib/components/timepicker/timepicker.component.d.ts +1 -1
  203. package/lib/components/toggle-button/toggle-button.component.d.ts +1 -1
  204. package/lib/components/tooltip/component/tooltip.component.d.ts +1 -1
  205. package/lib/components/tooltip/directive/tooltip.directive.d.ts +1 -1
  206. package/lib/components/typeahead/typeahead.component.d.ts +1 -1
  207. package/lib/directives/enhanced-paste/enhanced-paste.directive.d.ts +1 -1
  208. package/lib/pipes/font-color/font-color.pipe.d.ts +1 -1
  209. package/lib/pipes/format-bytes/format-bytes.pipe.d.ts +1 -1
  210. package/lib/pipes/in-list/in-list.pipe.d.ts +1 -1
  211. package/lib/pipes/month-name/month-name.pipe.d.ts +1 -1
  212. package/lib/pipes/uc-first/uc-first.pipe.d.ts +1 -1
  213. package/lib/pipes/weekday-name/weekday-name.pipe.d.ts +1 -1
  214. package/package.json +14 -15
  215. package/mintplayer-ng-bootstrap.d.ts +0 -5
@@ -67,9 +67,9 @@ export class ResourceGroupPresenterComponent {
67
67
  this.destroyed$.next(true);
68
68
  }
69
69
  }
70
- ResourceGroupPresenterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: ResourceGroupPresenterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
- ResourceGroupPresenterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: { level: "level", resourceGroup: "resourceGroup", timeSlots: "timeSlots", isExpanded: "isExpanded" }, ngImport: i0, template: "<ng-container *ngIf=\"(data$ | async) as data\">\n\n <!-- Data is a resource group -->\n <ng-container *ngIf=\"data.resourceGroup\">\n <!-- Header -->\n <tr class=\"p-0 cursor-pointer\" *ngIf=\"(timeSlots$ | async) as timeSlots\" [title]=\"data.resourceGroup.description\">\n <ng-container *ngIf=\"(colSpan$ | async) as colspan\">\n <td class=\"p-2 cursor-pointer\" [colSpan]=\"colspan + 1\" (click)=\"toggleExpanded()\">\n <span class=\"p-2 align-middle position-sticky\">\n <i class=\"bi bi-chevron-down\" [style.padding-left.px]=\"level * 20\" *ngIf=\"isExpanded$ | async\"></i>\n <i class=\"bi bi-chevron-right\" [style.padding-left.px]=\"level * 20\" *ngIf=\"(isExpanded$ | async) === false\"></i>\n {{ data.resourceGroup.description }}\n </span>\n </td>\n </ng-container>\n </tr>\n\n <!-- Subgroups or resources -->\n <ng-container *ngIf=\"isExpanded$ | async\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <ng-container *ngFor=\"let child of data.resourceGroup.children\">\n <bs-resource-group-presenter [resourceGroup]=\"child\" [timeSlots]=\"timeSlots\" [level]=\"level + 1\"></bs-resource-group-presenter>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <!-- Data is a resource -->\n <tr *ngIf=\"data.resource\" class=\"p-0 bordered\" [title]=\"data.resource.description\">\n <td class=\"p-0 bg-white\">\n <div class=\"p-2\">{{ data.resource.description }}</div>\n </td>\n <ng-container *ngFor=\"let slots of (timeSlots$ | async)\">\n <td class=\"bg-white border-1\" *ngFor=\"let slot of slots.slots\">\n <!-- {{ slot.start | date: 'dd/MM/yyyy HH:mm:ss' }} -->\n </td>\n </ng-container>\n </tr>\n</ng-container>", styles: [":host{display:contents}tr{border-bottom-width:1px}tr:not(.bordered) td span.position-sticky{left:0;right:0}\n"], components: [{ type: ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: ["level", "resourceGroup", "timeSlots", "isExpanded"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i1.AsyncPipe } });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: ResourceGroupPresenterComponent, decorators: [{
70
+ ResourceGroupPresenterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ResourceGroupPresenterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
+ ResourceGroupPresenterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: { level: "level", resourceGroup: "resourceGroup", timeSlots: "timeSlots", isExpanded: "isExpanded" }, ngImport: i0, template: "<ng-container *ngIf=\"(data$ | async) as data\">\n\n <!-- Data is a resource group -->\n <ng-container *ngIf=\"data.resourceGroup\">\n <!-- Header -->\n <tr class=\"p-0 cursor-pointer\" *ngIf=\"(timeSlots$ | async) as timeSlots\" [title]=\"data.resourceGroup.description\">\n <ng-container *ngIf=\"(colSpan$ | async) as colspan\">\n <td class=\"p-2 cursor-pointer\" [colSpan]=\"colspan + 1\" (click)=\"toggleExpanded()\">\n <span class=\"p-2 align-middle position-sticky\">\n <i class=\"bi bi-chevron-down\" [style.padding-left.px]=\"level * 20\" *ngIf=\"isExpanded$ | async\"></i>\n <i class=\"bi bi-chevron-right\" [style.padding-left.px]=\"level * 20\" *ngIf=\"(isExpanded$ | async) === false\"></i>\n {{ data.resourceGroup.description }}\n </span>\n </td>\n </ng-container>\n </tr>\n\n <!-- Subgroups or resources -->\n <ng-container *ngIf=\"isExpanded$ | async\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <ng-container *ngFor=\"let child of data.resourceGroup.children\">\n <bs-resource-group-presenter [resourceGroup]=\"child\" [timeSlots]=\"timeSlots\" [level]=\"level + 1\"></bs-resource-group-presenter>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <!-- Data is a resource -->\n <tr *ngIf=\"data.resource\" class=\"p-0 bordered\" [title]=\"data.resource.description\">\n <td class=\"p-0 bg-white\">\n <div class=\"p-2\">{{ data.resource.description }}</div>\n </td>\n <ng-container *ngFor=\"let slots of (timeSlots$ | async)\">\n <td class=\"bg-white border-1\" *ngFor=\"let slot of slots.slots\">\n <!-- {{ slot.start | date: 'dd/MM/yyyy HH:mm:ss' }} -->\n </td>\n </ng-container>\n </tr>\n</ng-container>", styles: [":host{display:contents}tr{border-bottom-width:1px}tr:not(.bordered) td span.position-sticky{left:0;right:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: ["level", "resourceGroup", "timeSlots", "isExpanded"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ResourceGroupPresenterComponent, decorators: [{
73
73
  type: Component,
74
74
  args: [{ selector: 'bs-resource-group-presenter', template: "<ng-container *ngIf=\"(data$ | async) as data\">\n\n <!-- Data is a resource group -->\n <ng-container *ngIf=\"data.resourceGroup\">\n <!-- Header -->\n <tr class=\"p-0 cursor-pointer\" *ngIf=\"(timeSlots$ | async) as timeSlots\" [title]=\"data.resourceGroup.description\">\n <ng-container *ngIf=\"(colSpan$ | async) as colspan\">\n <td class=\"p-2 cursor-pointer\" [colSpan]=\"colspan + 1\" (click)=\"toggleExpanded()\">\n <span class=\"p-2 align-middle position-sticky\">\n <i class=\"bi bi-chevron-down\" [style.padding-left.px]=\"level * 20\" *ngIf=\"isExpanded$ | async\"></i>\n <i class=\"bi bi-chevron-right\" [style.padding-left.px]=\"level * 20\" *ngIf=\"(isExpanded$ | async) === false\"></i>\n {{ data.resourceGroup.description }}\n </span>\n </td>\n </ng-container>\n </tr>\n\n <!-- Subgroups or resources -->\n <ng-container *ngIf=\"isExpanded$ | async\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <ng-container *ngFor=\"let child of data.resourceGroup.children\">\n <bs-resource-group-presenter [resourceGroup]=\"child\" [timeSlots]=\"timeSlots\" [level]=\"level + 1\"></bs-resource-group-presenter>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <!-- Data is a resource -->\n <tr *ngIf=\"data.resource\" class=\"p-0 bordered\" [title]=\"data.resource.description\">\n <td class=\"p-0 bg-white\">\n <div class=\"p-2\">{{ data.resource.description }}</div>\n </td>\n <ng-container *ngFor=\"let slots of (timeSlots$ | async)\">\n <td class=\"bg-white border-1\" *ngFor=\"let slot of slots.slots\">\n <!-- {{ slot.start | date: 'dd/MM/yyyy HH:mm:ss' }} -->\n </td>\n </ng-container>\n </tr>\n</ng-container>", styles: [":host{display:contents}tr{border-bottom-width:1px}tr:not(.bordered) td span.position-sticky{left:0;right:0}\n"] }]
75
75
  }], ctorParameters: function () { return []; }, propDecorators: { level: [{
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
81
81
  }], isExpanded: [{
82
82
  type: Input
83
83
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NjaGVkdWxlci9jb21wb25lbnRzL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci9yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvc2NoZWR1bGVyL2NvbXBvbmVudHMvcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLElBQUksRUFBYSxNQUFNLE1BQU0sQ0FBQzs7O0FBWTFGLE1BQU0sT0FBTywrQkFBK0I7SUFFMUM7UUEyQlMsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNuQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBa0MsSUFBSSxDQUFDLENBQUM7UUFDOUUsZUFBVSxHQUFHLElBQUksZUFBZSxDQUE0QixFQUFFLENBQUMsQ0FBQztRQUNoRSxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBR2xELGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBaEN6QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3BCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU0sSUFBSSxVQUFVLElBQUksZUFBZSxFQUFFO2dCQUN4QyxPQUF3QjtvQkFDdEIsUUFBUSxFQUFFLElBQUk7b0JBQ2QsYUFBYSxFQUFFLGVBQWU7aUJBQy9CLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxPQUF3QjtvQkFDdEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLGFBQWEsRUFBRSxJQUFJO2lCQUNwQixDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQzthQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUNwRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBa0IsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVO2FBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTO2FBQzdCLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2FBQ3RDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQzVDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFVRCx5QkFBeUI7SUFDekIsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUNyQyxDQUFDO0lBQ0QsSUFBb0IsYUFBYSxDQUFDLEtBQXNDO1FBQ3RFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELFlBQVk7SUFFWixtQkFBbUI7SUFDbkIsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQW9CLFNBQVMsQ0FBQyxLQUFnQztRQUM1RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBQ0QsWUFBWTtJQUVaLG9CQUFvQjtJQUNwQixJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBb0IsVUFBVSxDQUFDLEtBQWM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUNELFlBQVk7SUFFWixjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7NEhBeEVVLCtCQUErQjtnSEFBL0IsK0JBQStCLGlMQ2I1QyxvL0RBc0NlLGtKRHpCRiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFOM0MsU0FBUzsrQkFDRSw2QkFBNkI7MEVBa0M5QixLQUFLO3NCQUFiLEtBQUs7Z0JBWWMsYUFBYTtzQkFBaEMsS0FBSztnQkFTYyxTQUFTO3NCQUE1QixLQUFLO2dCQVNjLFVBQVU7c0JBQTdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyLCBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmVzb3VyY2UsIFJlc291cmNlR3JvdXAgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFJlc291cmNlT3JHcm91cCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcmVzb3VyY2Utb3ItZ3JvdXAnO1xuaW1wb3J0IHsgU2NoZWR1bGVyU3RhbXBXaXRoU2xvdHMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjaGVkdWxlci1zdGFtcC13aXRoLXNsb3RzJztcbmltcG9ydCB7IFRpbWVTbG90IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy90aW1lLXNsb3QnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIFxufSlcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZUdyb3VwUHJlc2VudGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZGF0YSQgPSB0aGlzLnJlc291cmNlT3JHcm91cCRcbiAgICAgIC5waXBlKG1hcCgocmVzb3VyY2VPckdyb3VwKSA9PiB7XG4gICAgICAgIGlmICghcmVzb3VyY2VPckdyb3VwKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH0gZWxzZSBpZiAoJ2NoaWxkcmVuJyBpbiByZXNvdXJjZU9yR3JvdXApIHtcbiAgICAgICAgICByZXR1cm4gPFJlc291cmNlT3JHcm91cD57XG4gICAgICAgICAgICByZXNvdXJjZTogbnVsbCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXA6IHJlc291cmNlT3JHcm91cFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDxSZXNvdXJjZU9yR3JvdXA+e1xuICAgICAgICAgICAgcmVzb3VyY2U6IHJlc291cmNlT3JHcm91cCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXA6IG51bGxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9KSlcbiAgICAgIC5waXBlKGZpbHRlcigocmVzb3VyY2VPckdyb3VwKSA9PiAhIXJlc291cmNlT3JHcm91cCkpXG4gICAgICAucGlwZShtYXAoKHJlc291cmNlT3JHcm91cCkgPT4gPFJlc291cmNlT3JHcm91cD5yZXNvdXJjZU9yR3JvdXApKTtcblxuICAgIHRoaXMuY29sU3BhbiQgPSB0aGlzLnRpbWVTbG90cyRcbiAgICAgIC5waXBlKG1hcCh0aW1lU2xvdHMgPT4gdGltZVNsb3RzXG4gICAgICAgIC5tYXAodGltZXNsb3QgPT4gdGltZXNsb3Quc2xvdHMubGVuZ3RoKVxuICAgICAgICAucmVkdWNlKChzdW0sIGN1cnJlbnQpID0+IHN1bSArIGN1cnJlbnQsIDApXG4gICAgICApKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGxldmVsID0gMDtcbiAgcmVzb3VyY2VPckdyb3VwJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UmVzb3VyY2UgfCBSZXNvdXJjZUdyb3VwIHwgbnVsbD4obnVsbCk7XG4gIHRpbWVTbG90cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNjaGVkdWxlclN0YW1wV2l0aFNsb3RzW10+KFtdKTtcbiAgaXNFeHBhbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgZGF0YSQ6IE9ic2VydmFibGU8UmVzb3VyY2VPckdyb3VwPjtcbiAgY29sU3BhbiQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLy8jcmVnaW9uIHJlc291cmNlT3JHcm91cFxuICBwdWJsaWMgZ2V0IHJlc291cmNlT3JHcm91cCgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZU9yR3JvdXAkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgcmVzb3VyY2VHcm91cCh2YWx1ZTogUmVzb3VyY2UgfCBSZXNvdXJjZUdyb3VwIHwgbnVsbCkge1xuICAgIHRoaXMucmVzb3VyY2VPckdyb3VwJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gdGltZVNsb3RzXG4gIHB1YmxpYyBnZXQgdGltZVNsb3RzKCkge1xuICAgIHJldHVybiB0aGlzLnRpbWVTbG90cyQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCB0aW1lU2xvdHModmFsdWU6IFNjaGVkdWxlclN0YW1wV2l0aFNsb3RzW10pIHtcbiAgICB0aGlzLnRpbWVTbG90cyQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIGlzRXhwYW5kZWRcbiAgcHVibGljIGdldCBpc0V4cGFuZGVkKCkge1xuICAgIHJldHVybiB0aGlzLmlzRXhwYW5kZWQkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgaXNFeHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuaXNFeHBhbmRlZCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgdG9nZ2xlRXhwYW5kZWQoKSB7XG4gICAgdGhpcy5pc0V4cGFuZGVkJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoaXNFeHBhbmRlZCkgPT4ge1xuICAgICAgdGhpcy5pc0V4cGFuZGVkJC5uZXh0KCFpc0V4cGFuZGVkKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KHRydWUpO1xuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIoZGF0YSQgfCBhc3luYykgYXMgZGF0YVwiPlxuXG4gICAgPCEtLSBEYXRhIGlzIGEgcmVzb3VyY2UgZ3JvdXAgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEucmVzb3VyY2VHcm91cFwiPlxuICAgICAgICA8IS0tIEhlYWRlciAtLT5cbiAgICAgICAgPHRyIGNsYXNzPVwicC0wIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCIodGltZVNsb3RzJCB8IGFzeW5jKSBhcyB0aW1lU2xvdHNcIiBbdGl0bGVdPVwiZGF0YS5yZXNvdXJjZUdyb3VwLmRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGNvbFNwYW4kIHwgYXN5bmMpIGFzIGNvbHNwYW5cIj5cbiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTIgY3Vyc29yLXBvaW50ZXJcIiBbY29sU3Bhbl09XCJjb2xzcGFuICsgMVwiIChjbGljayk9XCJ0b2dnbGVFeHBhbmRlZCgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC0yIGFsaWduLW1pZGRsZSBwb3NpdGlvbi1zdGlja3lcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYmkgYmktY2hldnJvbi1kb3duXCIgW3N0eWxlLnBhZGRpbmctbGVmdC5weF09XCJsZXZlbCAqIDIwXCIgKm5nSWY9XCJpc0V4cGFuZGVkJCB8IGFzeW5jXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJiaSBiaS1jaGV2cm9uLXJpZ2h0XCIgW3N0eWxlLnBhZGRpbmctbGVmdC5weF09XCJsZXZlbCAqIDIwXCIgKm5nSWY9XCIoaXNFeHBhbmRlZCQgfCBhc3luYykgPT09IGZhbHNlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZGF0YS5yZXNvdXJjZUdyb3VwLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdHI+XG5cbiAgICAgICAgPCEtLSBTdWJncm91cHMgb3IgcmVzb3VyY2VzIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFeHBhbmRlZCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIih0aW1lU2xvdHMkIHwgYXN5bmMpIGFzIHRpbWVTbG90c1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGRhdGEucmVzb3VyY2VHcm91cC5jaGlsZHJlblwiPlxuICAgICAgICAgICAgICAgICAgICA8YnMtcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyIFtyZXNvdXJjZUdyb3VwXT1cImNoaWxkXCIgW3RpbWVTbG90c109XCJ0aW1lU2xvdHNcIiBbbGV2ZWxdPVwibGV2ZWwgKyAxXCI+PC9icy1yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIERhdGEgaXMgYSByZXNvdXJjZSAtLT5cbiAgICA8dHIgKm5nSWY9XCJkYXRhLnJlc291cmNlXCIgY2xhc3M9XCJwLTAgYm9yZGVyZWRcIiBbdGl0bGVdPVwiZGF0YS5yZXNvdXJjZS5kZXNjcmlwdGlvblwiPlxuICAgICAgICA8dGQgY2xhc3M9XCJwLTAgYmctd2hpdGVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTJcIj57eyBkYXRhLnJlc291cmNlLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHNsb3RzIG9mICh0aW1lU2xvdHMkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJiZy13aGl0ZSBib3JkZXItMVwiICpuZ0Zvcj1cImxldCBzbG90IG9mIHNsb3RzLnNsb3RzXCI+XG4gICAgICAgICAgICAgICAgPCEtLSB7eyBzbG90LnN0YXJ0IHwgZGF0ZTogJ2RkL01NL3l5eXkgSEg6bW06c3MnIH19IC0tPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90cj5cbjwvbmctY29udGFpbmVyPiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NjaGVkdWxlci9jb21wb25lbnRzL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci9yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvc2NoZWR1bGVyL2NvbXBvbmVudHMvcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLElBQUksRUFBYSxNQUFNLE1BQU0sQ0FBQzs7O0FBWTFGLE1BQU0sT0FBTywrQkFBK0I7SUFFMUM7UUEyQlMsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNuQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBa0MsSUFBSSxDQUFDLENBQUM7UUFDOUUsZUFBVSxHQUFHLElBQUksZUFBZSxDQUE0QixFQUFFLENBQUMsQ0FBQztRQUNoRSxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBR2xELGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBaEN6QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3BCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU0sSUFBSSxVQUFVLElBQUksZUFBZSxFQUFFO2dCQUN4QyxPQUF3QjtvQkFDdEIsUUFBUSxFQUFFLElBQUk7b0JBQ2QsYUFBYSxFQUFFLGVBQWU7aUJBQy9CLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxPQUF3QjtvQkFDdEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLGFBQWEsRUFBRSxJQUFJO2lCQUNwQixDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQzthQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUNwRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBa0IsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVO2FBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTO2FBQzdCLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2FBQ3RDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQzVDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFVRCx5QkFBeUI7SUFDekIsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUNyQyxDQUFDO0lBQ0QsSUFBb0IsYUFBYSxDQUFDLEtBQXNDO1FBQ3RFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELFlBQVk7SUFFWixtQkFBbUI7SUFDbkIsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQW9CLFNBQVMsQ0FBQyxLQUFnQztRQUM1RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBQ0QsWUFBWTtJQUVaLG9CQUFvQjtJQUNwQixJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBb0IsVUFBVSxDQUFDLEtBQWM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUNELFlBQVk7SUFFWixjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7NEhBeEVVLCtCQUErQjtnSEFBL0IsK0JBQStCLGlMQ2I1QyxvL0RBc0NlLHdZRHpCRiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFOM0MsU0FBUzsrQkFDRSw2QkFBNkI7MEVBa0M5QixLQUFLO3NCQUFiLEtBQUs7Z0JBWWMsYUFBYTtzQkFBaEMsS0FBSztnQkFTYyxTQUFTO3NCQUE1QixLQUFLO2dCQVNjLFVBQVU7c0JBQTdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyLCBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmVzb3VyY2UsIFJlc291cmNlR3JvdXAgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFJlc291cmNlT3JHcm91cCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcmVzb3VyY2Utb3ItZ3JvdXAnO1xuaW1wb3J0IHsgU2NoZWR1bGVyU3RhbXBXaXRoU2xvdHMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjaGVkdWxlci1zdGFtcC13aXRoLXNsb3RzJztcbmltcG9ydCB7IFRpbWVTbG90IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy90aW1lLXNsb3QnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIFxufSlcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZUdyb3VwUHJlc2VudGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZGF0YSQgPSB0aGlzLnJlc291cmNlT3JHcm91cCRcbiAgICAgIC5waXBlKG1hcCgocmVzb3VyY2VPckdyb3VwKSA9PiB7XG4gICAgICAgIGlmICghcmVzb3VyY2VPckdyb3VwKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH0gZWxzZSBpZiAoJ2NoaWxkcmVuJyBpbiByZXNvdXJjZU9yR3JvdXApIHtcbiAgICAgICAgICByZXR1cm4gPFJlc291cmNlT3JHcm91cD57XG4gICAgICAgICAgICByZXNvdXJjZTogbnVsbCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXA6IHJlc291cmNlT3JHcm91cFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDxSZXNvdXJjZU9yR3JvdXA+e1xuICAgICAgICAgICAgcmVzb3VyY2U6IHJlc291cmNlT3JHcm91cCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXA6IG51bGxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9KSlcbiAgICAgIC5waXBlKGZpbHRlcigocmVzb3VyY2VPckdyb3VwKSA9PiAhIXJlc291cmNlT3JHcm91cCkpXG4gICAgICAucGlwZShtYXAoKHJlc291cmNlT3JHcm91cCkgPT4gPFJlc291cmNlT3JHcm91cD5yZXNvdXJjZU9yR3JvdXApKTtcblxuICAgIHRoaXMuY29sU3BhbiQgPSB0aGlzLnRpbWVTbG90cyRcbiAgICAgIC5waXBlKG1hcCh0aW1lU2xvdHMgPT4gdGltZVNsb3RzXG4gICAgICAgIC5tYXAodGltZXNsb3QgPT4gdGltZXNsb3Quc2xvdHMubGVuZ3RoKVxuICAgICAgICAucmVkdWNlKChzdW0sIGN1cnJlbnQpID0+IHN1bSArIGN1cnJlbnQsIDApXG4gICAgICApKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGxldmVsID0gMDtcbiAgcmVzb3VyY2VPckdyb3VwJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UmVzb3VyY2UgfCBSZXNvdXJjZUdyb3VwIHwgbnVsbD4obnVsbCk7XG4gIHRpbWVTbG90cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNjaGVkdWxlclN0YW1wV2l0aFNsb3RzW10+KFtdKTtcbiAgaXNFeHBhbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgZGF0YSQ6IE9ic2VydmFibGU8UmVzb3VyY2VPckdyb3VwPjtcbiAgY29sU3BhbiQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLy8jcmVnaW9uIHJlc291cmNlT3JHcm91cFxuICBwdWJsaWMgZ2V0IHJlc291cmNlT3JHcm91cCgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZU9yR3JvdXAkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgcmVzb3VyY2VHcm91cCh2YWx1ZTogUmVzb3VyY2UgfCBSZXNvdXJjZUdyb3VwIHwgbnVsbCkge1xuICAgIHRoaXMucmVzb3VyY2VPckdyb3VwJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gdGltZVNsb3RzXG4gIHB1YmxpYyBnZXQgdGltZVNsb3RzKCkge1xuICAgIHJldHVybiB0aGlzLnRpbWVTbG90cyQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCB0aW1lU2xvdHModmFsdWU6IFNjaGVkdWxlclN0YW1wV2l0aFNsb3RzW10pIHtcbiAgICB0aGlzLnRpbWVTbG90cyQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIGlzRXhwYW5kZWRcbiAgcHVibGljIGdldCBpc0V4cGFuZGVkKCkge1xuICAgIHJldHVybiB0aGlzLmlzRXhwYW5kZWQkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgaXNFeHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuaXNFeHBhbmRlZCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgdG9nZ2xlRXhwYW5kZWQoKSB7XG4gICAgdGhpcy5pc0V4cGFuZGVkJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoaXNFeHBhbmRlZCkgPT4ge1xuICAgICAgdGhpcy5pc0V4cGFuZGVkJC5uZXh0KCFpc0V4cGFuZGVkKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KHRydWUpO1xuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIoZGF0YSQgfCBhc3luYykgYXMgZGF0YVwiPlxuXG4gICAgPCEtLSBEYXRhIGlzIGEgcmVzb3VyY2UgZ3JvdXAgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEucmVzb3VyY2VHcm91cFwiPlxuICAgICAgICA8IS0tIEhlYWRlciAtLT5cbiAgICAgICAgPHRyIGNsYXNzPVwicC0wIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCIodGltZVNsb3RzJCB8IGFzeW5jKSBhcyB0aW1lU2xvdHNcIiBbdGl0bGVdPVwiZGF0YS5yZXNvdXJjZUdyb3VwLmRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGNvbFNwYW4kIHwgYXN5bmMpIGFzIGNvbHNwYW5cIj5cbiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTIgY3Vyc29yLXBvaW50ZXJcIiBbY29sU3Bhbl09XCJjb2xzcGFuICsgMVwiIChjbGljayk9XCJ0b2dnbGVFeHBhbmRlZCgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC0yIGFsaWduLW1pZGRsZSBwb3NpdGlvbi1zdGlja3lcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYmkgYmktY2hldnJvbi1kb3duXCIgW3N0eWxlLnBhZGRpbmctbGVmdC5weF09XCJsZXZlbCAqIDIwXCIgKm5nSWY9XCJpc0V4cGFuZGVkJCB8IGFzeW5jXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJiaSBiaS1jaGV2cm9uLXJpZ2h0XCIgW3N0eWxlLnBhZGRpbmctbGVmdC5weF09XCJsZXZlbCAqIDIwXCIgKm5nSWY9XCIoaXNFeHBhbmRlZCQgfCBhc3luYykgPT09IGZhbHNlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZGF0YS5yZXNvdXJjZUdyb3VwLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdHI+XG5cbiAgICAgICAgPCEtLSBTdWJncm91cHMgb3IgcmVzb3VyY2VzIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFeHBhbmRlZCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIih0aW1lU2xvdHMkIHwgYXN5bmMpIGFzIHRpbWVTbG90c1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGRhdGEucmVzb3VyY2VHcm91cC5jaGlsZHJlblwiPlxuICAgICAgICAgICAgICAgICAgICA8YnMtcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyIFtyZXNvdXJjZUdyb3VwXT1cImNoaWxkXCIgW3RpbWVTbG90c109XCJ0aW1lU2xvdHNcIiBbbGV2ZWxdPVwibGV2ZWwgKyAxXCI+PC9icy1yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIERhdGEgaXMgYSByZXNvdXJjZSAtLT5cbiAgICA8dHIgKm5nSWY9XCJkYXRhLnJlc291cmNlXCIgY2xhc3M9XCJwLTAgYm9yZGVyZWRcIiBbdGl0bGVdPVwiZGF0YS5yZXNvdXJjZS5kZXNjcmlwdGlvblwiPlxuICAgICAgICA8dGQgY2xhc3M9XCJwLTAgYmctd2hpdGVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTJcIj57eyBkYXRhLnJlc291cmNlLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHNsb3RzIG9mICh0aW1lU2xvdHMkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJiZy13aGl0ZSBib3JkZXItMVwiICpuZ0Zvcj1cImxldCBzbG90IG9mIHNsb3RzLnNsb3RzXCI+XG4gICAgICAgICAgICAgICAgPCEtLSB7eyBzbG90LnN0YXJ0IHwgZGF0ZTogJ2RkL01NL3l5eXkgSEg6bW06c3MnIH19IC0tPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90cj5cbjwvbmctY29udGFpbmVyPiJdfQ==
@@ -7,10 +7,10 @@ import { BsTimelineService } from '../../services/timeline/timeline.service';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../../../services/calendar-month/calendar-month.service";
9
9
  import * as i2 from "../../services/timeline/timeline.service";
10
- import * as i3 from "../resource-group-presenter/resource-group-presenter.component";
11
- import * as i4 from "@angular/common";
12
- import * as i5 from "../../pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe";
13
- import * as i6 from "../../pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe";
10
+ import * as i3 from "@angular/common";
11
+ import * as i4 from "../resource-group-presenter/resource-group-presenter.component";
12
+ import * as i5 from "../../pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe";
13
+ import * as i6 from "../../pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe";
14
14
  import * as i7 from "../../pipes/day-of-week/day-of-week.pipe";
15
15
  export class BsSchedulerComponent {
16
16
  constructor(calendarMonthService, timelineService) {
@@ -504,9 +504,9 @@ export class BsSchedulerComponent {
504
504
  this.destroyed$.next(true);
505
505
  }
506
506
  }
507
- BsSchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSchedulerComponent, deps: [{ token: i1.BsCalendarMonthService }, { token: i2.BsTimelineService }], target: i0.ɵɵFactoryTarget.Component });
508
- BsSchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: BsSchedulerComponent, selector: "bs-scheduler", inputs: { mode: "mode", weekOptions: "weekOptions", timelineOptions: "timelineOptions", maxInnerHeight: "maxInnerHeight", resources: "resources" }, outputs: { modeChange: "modeChange", weekOptionsChange: "weekOptionsChange", timelineOptionsChange: "timelineOptionsChange" }, host: { listeners: { "document:mousemove": "onMousemove($event)", "document:mouseup": "onMouseUp($event)" } }, viewQueries: [{ propertyName: "timeSlotElements", predicate: ["slot"], descendants: true }], ngImport: i0, template: "<div class=\"table d-flex w-100 overflow-y-auto mb-0 week-schedule\" [style.max-height.px]=\"null\"\n *ngIf=\"(mode$ | async) === modes.week\">\n <div class=\"calendar-head\">\n <div class=\"w-100 d-flex flex-row\">\n <div class=\"d-flex calendar-left justify-content-between\">\n <button class=\"btn btn-default flex-start\" (click)=\"onPreviousWeekOrMonth()\">\n <i class=\"bi-chevron-left px-0\"></i>\n </button>\n <button class=\"btn btn-default flex-end\" (click)=\"onNextWeekOrMonth()\">\n <i class=\"bi-chevron-right px-0\"></i>\n </button>\n </div>\n <div class=\"flex-grow-1 calendar-head-cell\" *ngFor=\"let day of (shownDays$ | async)\">\n <span class=\"d-block col-form-label text-center\">\n <span>{{ day | date: 'dd-MM' }}</span><span class=\"d-none d-lg-inline-block\">-{{ day | date: 'yyyy' }}</span>\n </span>\n </div>\n </div>\n </div>\n <div class=\"calendar-body\" [style.height.px]=\"maxInnerHeight\">\n <div class=\"position-relative\" *ngIf=\"(timeSlots$ | async) as row\">\n <ng-container *ngIf=\"(weekOptions$ | async) as weekOptions\">\n <!-- Timeslots -->\n <div *ngFor=\"let timeslots of row; let i = index\" class=\"d-flex flex-row p-0 timeslot\" [style.height.px]=\"weekOptions.unitHeight\">\n <div class=\"calendar-cell calendar-left align-top px-2 py-0\">{{ timeslots.slots[0].start | date: 'HH:mm:ss' }}</div>\n <div class=\"calendar-cell flex-grow-1\" *ngFor=\"let slot of timeslots.slots; let j = index\" #slot (mousedown)=\"onCreateEvent($event, slot)\" [attr.data-row]=\"i\" [attr.data-column]=\"j\"></div>\n </div>\n\n <!-- Events -->\n <ng-container *ngIf=\"(timeSlotDuration$ | async) as timeSlotDuration\">\n <ng-container *ngIf=\"(timelinedEventPartsForThisWeek$ | async) as partData\">\n <div *ngFor=\"let eventPart of partData.parts\" class=\"event p-0\"\n [style.top.px]=\"(eventPart.part | bsSecondsTodayOffset) / timeSlotDuration * weekOptions.unitHeight\"\n [style.height.px]=\"(eventPart.part | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.left]=\"'calc(90px + ((100% - 90px) / 7 * ' + ((eventPart.part | dayOfWeek) - 1) + '))'\">\n <div class=\"event-inner\" [class.hover]=\"(hoveredEvent$ | async) === eventPart.part.event\"\n [style.width]=\"'calc(100% / ' + partData.total + ')'\"\n [style.height.px]=\"(eventPart.part | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.margin-left]=\"'calc(100% / ' + partData.total + ' * ' + eventPart.index + ')'\">\n\n <div class=\"event-resize top\"\n *ngIf=\"eventPart.part.start === eventPart.part.event?.start\"\n (mousedown)=\"onStartResizeEvent(eventPart.part.event, 'top')\"></div>\n <div class=\"event-border\"></div>\n <div class=\"event-wrapper\" *ngIf=\"eventPart.part.event\"\n (mousedown)=\"onStartDragEvent(eventPart.part, $event)\"\n (mouseenter)=\"onHoverEvent(eventPart.part.event)\"\n (mouseleave)=\"onLeaveEvent(eventPart.part.event)\">\n <div class=\"event-bg\" [style.background-color]=\"eventPart.part.event.color\"></div>\n <div class=\"event-label\">{{ eventPart.part.event.description }}</div>\n </div>\n <div class=\"event-resize bottom\"\n *ngIf=\"eventPart.part.end === eventPart.part.event?.end\"\n (mousedown)=\"onStartResizeEvent(eventPart.part.event, 'bottom')\"></div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"(previewEventPartsForThisWeek$ | async) as previewPartData\">\n <div *ngFor=\"let eventPart of previewPartData\" class=\"event preview p-0\"\n [style.top.px]=\"(eventPart | bsSecondsTodayOffset) / timeSlotDuration * weekOptions.unitHeight\"\n [style.height.px]=\"(eventPart | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.left]=\"'calc(90px + ((100% - 90px) / 7 * ' + ((eventPart | dayOfWeek) - 1) + '))'\">\n <div class=\"event-inner w-100\"\n [style.height.px]=\"(eventPart | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\">\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<div class=\"table d-flex w-100 overflow-y-auto mb-0 bg-white timeline\" *ngIf=\"(mode$ | async) === modes.timeline\">\n <div class=\"calendar-head d-flex\">\n <button class=\"btn flex-start\" (click)=\"onPreviousWeekOrMonth()\">\n <i class=\"bi-chevron-left px-0\"></i>\n </button>\n <div class=\"flex-grow-1 h3 py-2 mb-0 text-center\">{{ currentWeekOrMonth$ | async | date: 'MMMM yyyy' }}</div>\n <button class=\"btn flex-start\" (click)=\"onNextWeekOrMonth()\">\n <i class=\"bi-chevron-right px-0\"></i>\n </button>\n </div>\n <div class=\"calendar-body table-responsive overflow-x-auto\">\n <table class=\"table mb-0\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <tr>\n <td></td>\n <td *ngFor=\"let day of timeSlots\" [attr.colspan]=\"day.slots.length\" class=\"text-center px-2\">\n <span class=\"position-sticky day-label\">{{ day.stamp | date: 'd EE' }}</span>\n </td>\n </tr>\n <tr>\n <td></td>\n <ng-container *ngIf=\"(timelineOptions$ | async) as timelineOptions\">\n <ng-container *ngFor=\"let day of timeSlots\">\n <td *ngFor=\"let slot of day.slots\">\n <span class=\"d-block p-0 text-center\" [style.width.px]=\"timelineOptions.unitWidth\">\n {{ slot.start | date: 'HH:mm' }}\n </span>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n <bs-resource-group-presenter *ngFor=\"let group of (resources$ | async)\" [resourceGroup]=\"group\" [timeSlots]=\"timeSlots\"></bs-resource-group-presenter>\n </ng-container>\n </table>\n </div>\n</div>", styles: [":host{display:block;border:1px solid #333;border-top-right-radius:10px;border-top-left-radius:10px;overflow:hidden}.calendar-head{background:#F7F7F7;color:#007aff}.table .calendar-head{flex:0 0 auto}.table .calendar-body{display:block;flex:1 1 auto}.week-schedule.table{flex-flow:column}.week-schedule.table .calendar-head>div{padding-right:18px}.week-schedule.table .calendar-body{overflow-y:scroll;overflow-x:hidden}.week-schedule.table .calendar-body .calendar-cell{border-right:1px solid #DEE2E6;border-bottom:1px solid #DEE2E6;cursor:default}.week-schedule.table .calendar-body .calendar-cell.hover{border-top-width:3px}.week-schedule.table .calendar-left{width:90px}.week-schedule .event{z-index:5;width:calc((100% - 90px) / 7);height:100px;overflow:hidden;position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none}.week-schedule .event.preview{background:#666;opacity:.6}.week-schedule .event .event-border{background:black;top:0;left:0;bottom:3px;width:3px;position:absolute;z-index:10;opacity:.3}.week-schedule .event .event-inner{position:relative;left:0px;right:5px;top:0px;bottom:5px;cursor:move;pointer-events:all;overflow:hidden}.week-schedule .event .event-inner .event-wrapper{width:calc(100% - 2px);margin:1px auto 1px 0;height:calc(100% - 3px)}.week-schedule .event .event-inner .event-wrapper .event-bg{opacity:.5;height:100%;transition:opacity .15s ease-in-out}.week-schedule .event .event-inner .event-wrapper .event-label{position:absolute;top:0;font-size:12px;font-weight:600;padding:4px}.week-schedule .event .event-inner .event-resize{position:absolute;cursor:ns-resize;height:4px;left:0;right:0;z-index:400}.week-schedule .event .event-inner .event-resize.top{top:0}.week-schedule .event .event-inner .event-resize.bottom{bottom:0}.week-schedule .event .event-inner .event-resize:hover{background:#DDD}.week-schedule .event .event-inner.hover .event-bg{opacity:.7!important}@media (max-width: 767px){.week-schedule.table .calendar-head .calendar-head-cell{text-orientation:sideways;writing-mode:vertical-rl}}.timeline.table{flex-flow:column}.timeline .calendar-body .table{background-color:#f7f7f7}.timeline .calendar-body .table tr:first-child td{background-color:#fff;border:1px solid #000}.timeline .calendar-body .table tr:first-child td:first-child{min-width:10rem}.timeline .calendar-body .table tr:first-child span.day-label{left:0;right:0}.timeline .calendar-body .table tr:nth-child(2) td{border-width:1px;border-color:inherit}.timeline .calendar-body .table>:not(:first-child){border-top:none!important}\n"], components: [{ type: i3.ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: ["level", "resourceGroup", "timeSlots", "isExpanded"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i4.AsyncPipe, "date": i4.DatePipe, "bsSecondsTodayOffset": i5.BsSecondsTodayOffsetPipe, "bsSecondsTimespan": i6.BsSecondsTimespanPipe, "dayOfWeek": i7.DayOfWeekPipe } });
509
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSchedulerComponent, decorators: [{
507
+ BsSchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSchedulerComponent, deps: [{ token: i1.BsCalendarMonthService }, { token: i2.BsTimelineService }], target: i0.ɵɵFactoryTarget.Component });
508
+ BsSchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: BsSchedulerComponent, selector: "bs-scheduler", inputs: { mode: "mode", weekOptions: "weekOptions", timelineOptions: "timelineOptions", maxInnerHeight: "maxInnerHeight", resources: "resources" }, outputs: { modeChange: "modeChange", weekOptionsChange: "weekOptionsChange", timelineOptionsChange: "timelineOptionsChange" }, host: { listeners: { "document:mousemove": "onMousemove($event)", "document:mouseup": "onMouseUp($event)" } }, viewQueries: [{ propertyName: "timeSlotElements", predicate: ["slot"], descendants: true }], ngImport: i0, template: "<div class=\"table d-flex w-100 overflow-y-auto mb-0 week-schedule\" [style.max-height.px]=\"null\"\n *ngIf=\"(mode$ | async) === modes.week\">\n <div class=\"calendar-head\">\n <div class=\"w-100 d-flex flex-row\">\n <div class=\"d-flex calendar-left justify-content-between\">\n <button class=\"btn btn-default flex-start\" (click)=\"onPreviousWeekOrMonth()\">\n <i class=\"bi-chevron-left px-0\"></i>\n </button>\n <button class=\"btn btn-default flex-end\" (click)=\"onNextWeekOrMonth()\">\n <i class=\"bi-chevron-right px-0\"></i>\n </button>\n </div>\n <div class=\"flex-grow-1 calendar-head-cell\" *ngFor=\"let day of (shownDays$ | async)\">\n <span class=\"d-block col-form-label text-center\">\n <span>{{ day | date: 'dd-MM' }}</span><span class=\"d-none d-lg-inline-block\">-{{ day | date: 'yyyy' }}</span>\n </span>\n </div>\n </div>\n </div>\n <div class=\"calendar-body\" [style.height.px]=\"maxInnerHeight\">\n <div class=\"position-relative\" *ngIf=\"(timeSlots$ | async) as row\">\n <ng-container *ngIf=\"(weekOptions$ | async) as weekOptions\">\n <!-- Timeslots -->\n <div *ngFor=\"let timeslots of row; let i = index\" class=\"d-flex flex-row p-0 timeslot\" [style.height.px]=\"weekOptions.unitHeight\">\n <div class=\"calendar-cell calendar-left align-top px-2 py-0\">{{ timeslots.slots[0].start | date: 'HH:mm:ss' }}</div>\n <div class=\"calendar-cell flex-grow-1\" *ngFor=\"let slot of timeslots.slots; let j = index\" #slot (mousedown)=\"onCreateEvent($event, slot)\" [attr.data-row]=\"i\" [attr.data-column]=\"j\"></div>\n </div>\n\n <!-- Events -->\n <ng-container *ngIf=\"(timeSlotDuration$ | async) as timeSlotDuration\">\n <ng-container *ngIf=\"(timelinedEventPartsForThisWeek$ | async) as partData\">\n <div *ngFor=\"let eventPart of partData.parts\" class=\"event p-0\"\n [style.top.px]=\"(eventPart.part | bsSecondsTodayOffset) / timeSlotDuration * weekOptions.unitHeight\"\n [style.height.px]=\"(eventPart.part | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.left]=\"'calc(90px + ((100% - 90px) / 7 * ' + ((eventPart.part | dayOfWeek) - 1) + '))'\">\n <div class=\"event-inner\" [class.hover]=\"(hoveredEvent$ | async) === eventPart.part.event\"\n [style.width]=\"'calc(100% / ' + partData.total + ')'\"\n [style.height.px]=\"(eventPart.part | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.margin-left]=\"'calc(100% / ' + partData.total + ' * ' + eventPart.index + ')'\">\n\n <div class=\"event-resize top\"\n *ngIf=\"eventPart.part.start === eventPart.part.event?.start\"\n (mousedown)=\"onStartResizeEvent(eventPart.part.event, 'top')\"></div>\n <div class=\"event-border\"></div>\n <div class=\"event-wrapper\" *ngIf=\"eventPart.part.event\"\n (mousedown)=\"onStartDragEvent(eventPart.part, $event)\"\n (mouseenter)=\"onHoverEvent(eventPart.part.event)\"\n (mouseleave)=\"onLeaveEvent(eventPart.part.event)\">\n <div class=\"event-bg\" [style.background-color]=\"eventPart.part.event.color\"></div>\n <div class=\"event-label\">{{ eventPart.part.event.description }}</div>\n </div>\n <div class=\"event-resize bottom\"\n *ngIf=\"eventPart.part.end === eventPart.part.event?.end\"\n (mousedown)=\"onStartResizeEvent(eventPart.part.event, 'bottom')\"></div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"(previewEventPartsForThisWeek$ | async) as previewPartData\">\n <div *ngFor=\"let eventPart of previewPartData\" class=\"event preview p-0\"\n [style.top.px]=\"(eventPart | bsSecondsTodayOffset) / timeSlotDuration * weekOptions.unitHeight\"\n [style.height.px]=\"(eventPart | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.left]=\"'calc(90px + ((100% - 90px) / 7 * ' + ((eventPart | dayOfWeek) - 1) + '))'\">\n <div class=\"event-inner w-100\"\n [style.height.px]=\"(eventPart | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\">\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<div class=\"table d-flex w-100 overflow-y-auto mb-0 bg-white timeline\" *ngIf=\"(mode$ | async) === modes.timeline\">\n <div class=\"calendar-head d-flex\">\n <button class=\"btn flex-start\" (click)=\"onPreviousWeekOrMonth()\">\n <i class=\"bi-chevron-left px-0\"></i>\n </button>\n <div class=\"flex-grow-1 h3 py-2 mb-0 text-center\">{{ currentWeekOrMonth$ | async | date: 'MMMM yyyy' }}</div>\n <button class=\"btn flex-start\" (click)=\"onNextWeekOrMonth()\">\n <i class=\"bi-chevron-right px-0\"></i>\n </button>\n </div>\n <div class=\"calendar-body table-responsive overflow-x-auto\">\n <table class=\"table mb-0\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <tr>\n <td></td>\n <td *ngFor=\"let day of timeSlots\" [attr.colspan]=\"day.slots.length\" class=\"text-center px-2\">\n <span class=\"position-sticky day-label\">{{ day.stamp | date: 'd EE' }}</span>\n </td>\n </tr>\n <tr>\n <td></td>\n <ng-container *ngIf=\"(timelineOptions$ | async) as timelineOptions\">\n <ng-container *ngFor=\"let day of timeSlots\">\n <td *ngFor=\"let slot of day.slots\">\n <span class=\"d-block p-0 text-center\" [style.width.px]=\"timelineOptions.unitWidth\">\n {{ slot.start | date: 'HH:mm' }}\n </span>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n <bs-resource-group-presenter *ngFor=\"let group of (resources$ | async)\" [resourceGroup]=\"group\" [timeSlots]=\"timeSlots\"></bs-resource-group-presenter>\n </ng-container>\n </table>\n </div>\n</div>", styles: [":host{display:block;border:1px solid #333;border-top-right-radius:10px;border-top-left-radius:10px;overflow:hidden}.calendar-head{background:#F7F7F7;color:#007aff}.table .calendar-head{flex:0 0 auto}.table .calendar-body{display:block;flex:1 1 auto}.week-schedule.table{flex-flow:column}.week-schedule.table .calendar-head>div{padding-right:18px}.week-schedule.table .calendar-body{overflow-y:scroll;overflow-x:hidden}.week-schedule.table .calendar-body .calendar-cell{border-right:1px solid #DEE2E6;border-bottom:1px solid #DEE2E6;cursor:default}.week-schedule.table .calendar-body .calendar-cell.hover{border-top-width:3px}.week-schedule.table .calendar-left{width:90px}.week-schedule .event{z-index:5;width:calc((100% - 90px) / 7);height:100px;overflow:hidden;position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none}.week-schedule .event.preview{background:#666;opacity:.6}.week-schedule .event .event-border{background:black;top:0;left:0;bottom:3px;width:3px;position:absolute;z-index:10;opacity:.3}.week-schedule .event .event-inner{position:relative;left:0px;right:5px;top:0px;bottom:5px;cursor:move;pointer-events:all;overflow:hidden}.week-schedule .event .event-inner .event-wrapper{width:calc(100% - 2px);margin:1px auto 1px 0;height:calc(100% - 3px)}.week-schedule .event .event-inner .event-wrapper .event-bg{opacity:.5;height:100%;transition:opacity .15s ease-in-out}.week-schedule .event .event-inner .event-wrapper .event-label{position:absolute;top:0;font-size:12px;font-weight:600;padding:4px}.week-schedule .event .event-inner .event-resize{position:absolute;cursor:ns-resize;height:4px;left:0;right:0;z-index:400}.week-schedule .event .event-inner .event-resize.top{top:0}.week-schedule .event .event-inner .event-resize.bottom{bottom:0}.week-schedule .event .event-inner .event-resize:hover{background:#DDD}.week-schedule .event .event-inner.hover .event-bg{opacity:.7!important}@media (max-width: 767px){.week-schedule.table .calendar-head .calendar-head-cell{text-orientation:sideways;writing-mode:vertical-rl}}.timeline.table{flex-flow:column}.timeline .calendar-body .table{background-color:#f7f7f7}.timeline .calendar-body .table tr:first-child td{background-color:#fff;border:1px solid #000}.timeline .calendar-body .table tr:first-child td:first-child{min-width:10rem}.timeline .calendar-body .table tr:first-child span.day-label{left:0;right:0}.timeline .calendar-body .table tr:nth-child(2) td{border-width:1px;border-color:inherit}.timeline .calendar-body .table>:not(:first-child){border-top:none!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: ["level", "resourceGroup", "timeSlots", "isExpanded"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.DatePipe, name: "date" }, { kind: "pipe", type: i5.BsSecondsTimespanPipe, name: "bsSecondsTimespan" }, { kind: "pipe", type: i6.BsSecondsTodayOffsetPipe, name: "bsSecondsTodayOffset" }, { kind: "pipe", type: i7.DayOfWeekPipe, name: "dayOfWeek" }] });
509
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSchedulerComponent, decorators: [{
510
510
  type: Component,
511
511
  args: [{ selector: 'bs-scheduler', template: "<div class=\"table d-flex w-100 overflow-y-auto mb-0 week-schedule\" [style.max-height.px]=\"null\"\n *ngIf=\"(mode$ | async) === modes.week\">\n <div class=\"calendar-head\">\n <div class=\"w-100 d-flex flex-row\">\n <div class=\"d-flex calendar-left justify-content-between\">\n <button class=\"btn btn-default flex-start\" (click)=\"onPreviousWeekOrMonth()\">\n <i class=\"bi-chevron-left px-0\"></i>\n </button>\n <button class=\"btn btn-default flex-end\" (click)=\"onNextWeekOrMonth()\">\n <i class=\"bi-chevron-right px-0\"></i>\n </button>\n </div>\n <div class=\"flex-grow-1 calendar-head-cell\" *ngFor=\"let day of (shownDays$ | async)\">\n <span class=\"d-block col-form-label text-center\">\n <span>{{ day | date: 'dd-MM' }}</span><span class=\"d-none d-lg-inline-block\">-{{ day | date: 'yyyy' }}</span>\n </span>\n </div>\n </div>\n </div>\n <div class=\"calendar-body\" [style.height.px]=\"maxInnerHeight\">\n <div class=\"position-relative\" *ngIf=\"(timeSlots$ | async) as row\">\n <ng-container *ngIf=\"(weekOptions$ | async) as weekOptions\">\n <!-- Timeslots -->\n <div *ngFor=\"let timeslots of row; let i = index\" class=\"d-flex flex-row p-0 timeslot\" [style.height.px]=\"weekOptions.unitHeight\">\n <div class=\"calendar-cell calendar-left align-top px-2 py-0\">{{ timeslots.slots[0].start | date: 'HH:mm:ss' }}</div>\n <div class=\"calendar-cell flex-grow-1\" *ngFor=\"let slot of timeslots.slots; let j = index\" #slot (mousedown)=\"onCreateEvent($event, slot)\" [attr.data-row]=\"i\" [attr.data-column]=\"j\"></div>\n </div>\n\n <!-- Events -->\n <ng-container *ngIf=\"(timeSlotDuration$ | async) as timeSlotDuration\">\n <ng-container *ngIf=\"(timelinedEventPartsForThisWeek$ | async) as partData\">\n <div *ngFor=\"let eventPart of partData.parts\" class=\"event p-0\"\n [style.top.px]=\"(eventPart.part | bsSecondsTodayOffset) / timeSlotDuration * weekOptions.unitHeight\"\n [style.height.px]=\"(eventPart.part | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.left]=\"'calc(90px + ((100% - 90px) / 7 * ' + ((eventPart.part | dayOfWeek) - 1) + '))'\">\n <div class=\"event-inner\" [class.hover]=\"(hoveredEvent$ | async) === eventPart.part.event\"\n [style.width]=\"'calc(100% / ' + partData.total + ')'\"\n [style.height.px]=\"(eventPart.part | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.margin-left]=\"'calc(100% / ' + partData.total + ' * ' + eventPart.index + ')'\">\n\n <div class=\"event-resize top\"\n *ngIf=\"eventPart.part.start === eventPart.part.event?.start\"\n (mousedown)=\"onStartResizeEvent(eventPart.part.event, 'top')\"></div>\n <div class=\"event-border\"></div>\n <div class=\"event-wrapper\" *ngIf=\"eventPart.part.event\"\n (mousedown)=\"onStartDragEvent(eventPart.part, $event)\"\n (mouseenter)=\"onHoverEvent(eventPart.part.event)\"\n (mouseleave)=\"onLeaveEvent(eventPart.part.event)\">\n <div class=\"event-bg\" [style.background-color]=\"eventPart.part.event.color\"></div>\n <div class=\"event-label\">{{ eventPart.part.event.description }}</div>\n </div>\n <div class=\"event-resize bottom\"\n *ngIf=\"eventPart.part.end === eventPart.part.event?.end\"\n (mousedown)=\"onStartResizeEvent(eventPart.part.event, 'bottom')\"></div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"(previewEventPartsForThisWeek$ | async) as previewPartData\">\n <div *ngFor=\"let eventPart of previewPartData\" class=\"event preview p-0\"\n [style.top.px]=\"(eventPart | bsSecondsTodayOffset) / timeSlotDuration * weekOptions.unitHeight\"\n [style.height.px]=\"(eventPart | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\"\n [style.left]=\"'calc(90px + ((100% - 90px) / 7 * ' + ((eventPart | dayOfWeek) - 1) + '))'\">\n <div class=\"event-inner w-100\"\n [style.height.px]=\"(eventPart | bsSecondsTimespan) / timeSlotDuration * weekOptions.unitHeight\">\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<div class=\"table d-flex w-100 overflow-y-auto mb-0 bg-white timeline\" *ngIf=\"(mode$ | async) === modes.timeline\">\n <div class=\"calendar-head d-flex\">\n <button class=\"btn flex-start\" (click)=\"onPreviousWeekOrMonth()\">\n <i class=\"bi-chevron-left px-0\"></i>\n </button>\n <div class=\"flex-grow-1 h3 py-2 mb-0 text-center\">{{ currentWeekOrMonth$ | async | date: 'MMMM yyyy' }}</div>\n <button class=\"btn flex-start\" (click)=\"onNextWeekOrMonth()\">\n <i class=\"bi-chevron-right px-0\"></i>\n </button>\n </div>\n <div class=\"calendar-body table-responsive overflow-x-auto\">\n <table class=\"table mb-0\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <tr>\n <td></td>\n <td *ngFor=\"let day of timeSlots\" [attr.colspan]=\"day.slots.length\" class=\"text-center px-2\">\n <span class=\"position-sticky day-label\">{{ day.stamp | date: 'd EE' }}</span>\n </td>\n </tr>\n <tr>\n <td></td>\n <ng-container *ngIf=\"(timelineOptions$ | async) as timelineOptions\">\n <ng-container *ngFor=\"let day of timeSlots\">\n <td *ngFor=\"let slot of day.slots\">\n <span class=\"d-block p-0 text-center\" [style.width.px]=\"timelineOptions.unitWidth\">\n {{ slot.start | date: 'HH:mm' }}\n </span>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n <bs-resource-group-presenter *ngFor=\"let group of (resources$ | async)\" [resourceGroup]=\"group\" [timeSlots]=\"timeSlots\"></bs-resource-group-presenter>\n </ng-container>\n </table>\n </div>\n</div>", styles: [":host{display:block;border:1px solid #333;border-top-right-radius:10px;border-top-left-radius:10px;overflow:hidden}.calendar-head{background:#F7F7F7;color:#007aff}.table .calendar-head{flex:0 0 auto}.table .calendar-body{display:block;flex:1 1 auto}.week-schedule.table{flex-flow:column}.week-schedule.table .calendar-head>div{padding-right:18px}.week-schedule.table .calendar-body{overflow-y:scroll;overflow-x:hidden}.week-schedule.table .calendar-body .calendar-cell{border-right:1px solid #DEE2E6;border-bottom:1px solid #DEE2E6;cursor:default}.week-schedule.table .calendar-body .calendar-cell.hover{border-top-width:3px}.week-schedule.table .calendar-left{width:90px}.week-schedule .event{z-index:5;width:calc((100% - 90px) / 7);height:100px;overflow:hidden;position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none}.week-schedule .event.preview{background:#666;opacity:.6}.week-schedule .event .event-border{background:black;top:0;left:0;bottom:3px;width:3px;position:absolute;z-index:10;opacity:.3}.week-schedule .event .event-inner{position:relative;left:0px;right:5px;top:0px;bottom:5px;cursor:move;pointer-events:all;overflow:hidden}.week-schedule .event .event-inner .event-wrapper{width:calc(100% - 2px);margin:1px auto 1px 0;height:calc(100% - 3px)}.week-schedule .event .event-inner .event-wrapper .event-bg{opacity:.5;height:100%;transition:opacity .15s ease-in-out}.week-schedule .event .event-inner .event-wrapper .event-label{position:absolute;top:0;font-size:12px;font-weight:600;padding:4px}.week-schedule .event .event-inner .event-resize{position:absolute;cursor:ns-resize;height:4px;left:0;right:0;z-index:400}.week-schedule .event .event-inner .event-resize.top{top:0}.week-schedule .event .event-inner .event-resize.bottom{bottom:0}.week-schedule .event .event-inner .event-resize:hover{background:#DDD}.week-schedule .event .event-inner.hover .event-bg{opacity:.7!important}@media (max-width: 767px){.week-schedule.table .calendar-head .calendar-head-cell{text-orientation:sideways;writing-mode:vertical-rl}}.timeline.table{flex-flow:column}.timeline .calendar-body .table{background-color:#f7f7f7}.timeline .calendar-body .table tr:first-child td{background-color:#fff;border:1px solid #000}.timeline .calendar-body .table tr:first-child td:first-child{min-width:10rem}.timeline .calendar-body .table tr:first-child span.day-label{left:0;right:0}.timeline .calendar-body .table tr:nth-child(2) td{border-width:1px;border-color:inherit}.timeline .calendar-body .table>:not(:first-child){border-top:none!important}\n"] }]
512
512
  }], ctorParameters: function () { return [{ type: i1.BsCalendarMonthService }, { type: i2.BsTimelineService }]; }, propDecorators: { timeSlotElements: [{
@@ -5,9 +5,9 @@ export class BsSecondsTimespanPipe {
5
5
  return (value.end.getTime() - value.start.getTime()) / 1000;
6
6
  }
7
7
  }
8
- BsSecondsTimespanPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSecondsTimespanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
9
- BsSecondsTimespanPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSecondsTimespanPipe, name: "bsSecondsTimespan" });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSecondsTimespanPipe, decorators: [{
8
+ BsSecondsTimespanPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSecondsTimespanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
9
+ BsSecondsTimespanPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: BsSecondsTimespanPipe, name: "bsSecondsTimespan" });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSecondsTimespanPipe, decorators: [{
11
11
  type: Pipe,
12
12
  args: [{
13
13
  name: 'bsSecondsTimespan'
@@ -9,9 +9,9 @@ export class BsSecondsTodayOffsetPipe {
9
9
  return (value.start.getTime() - today.getTime()) / 1000;
10
10
  }
11
11
  }
12
- BsSecondsTodayOffsetPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSecondsTodayOffsetPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
- BsSecondsTodayOffsetPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSecondsTodayOffsetPipe, name: "bsSecondsTodayOffset" });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSecondsTodayOffsetPipe, decorators: [{
12
+ BsSecondsTodayOffsetPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSecondsTodayOffsetPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
+ BsSecondsTodayOffsetPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: BsSecondsTodayOffsetPipe, name: "bsSecondsTodayOffset" });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSecondsTodayOffsetPipe, decorators: [{
15
15
  type: Pipe,
16
16
  args: [{
17
17
  name: 'bsSecondsTodayOffset'
@@ -9,9 +9,9 @@ export class DateOffsetPipe {
9
9
  return (value.start.getTime() - today.getTime()) / 1000;
10
10
  }
11
11
  }
12
- DateOffsetPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DateOffsetPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
- DateOffsetPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DateOffsetPipe, name: "dateOffset" });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DateOffsetPipe, decorators: [{
12
+ DateOffsetPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DateOffsetPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
+ DateOffsetPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: DateOffsetPipe, name: "dateOffset" });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DateOffsetPipe, decorators: [{
15
15
  type: Pipe,
16
16
  args: [{
17
17
  name: 'dateOffset'
@@ -11,9 +11,9 @@ export class DayOfWeekPipe {
11
11
  }
12
12
  }
13
13
  }
14
- DayOfWeekPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DayOfWeekPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
- DayOfWeekPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DayOfWeekPipe, name: "dayOfWeek" });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DayOfWeekPipe, decorators: [{
14
+ DayOfWeekPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DayOfWeekPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
+ DayOfWeekPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: DayOfWeekPipe, name: "dayOfWeek" });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DayOfWeekPipe, decorators: [{
17
17
  type: Pipe,
18
18
  args: [{
19
19
  name: 'dayOfWeek'
@@ -9,18 +9,16 @@ import { ResourceGroupPresenterComponent } from './components/resource-group-pre
9
9
  import * as i0 from "@angular/core";
10
10
  export class BsSchedulerModule {
11
11
  }
12
- BsSchedulerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSchedulerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- BsSchedulerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSchedulerModule, declarations: [BsSchedulerComponent,
12
+ BsSchedulerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSchedulerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ BsSchedulerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: BsSchedulerModule, declarations: [BsSchedulerComponent,
14
14
  BsSecondsTimespanPipe,
15
15
  BsSecondsTodayOffsetPipe,
16
16
  DateOffsetPipe,
17
17
  DayOfWeekPipe,
18
18
  ResourceGroupPresenterComponent], imports: [CommonModule], exports: [BsSchedulerComponent,
19
19
  ResourceGroupPresenterComponent] });
20
- BsSchedulerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSchedulerModule, imports: [[
21
- CommonModule
22
- ]] });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSchedulerModule, decorators: [{
20
+ BsSchedulerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSchedulerModule, imports: [CommonModule] });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSchedulerModule, decorators: [{
24
22
  type: NgModule,
25
23
  args: [{
26
24
  declarations: [
@@ -40,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
40
38
  ]
41
39
  }]
42
40
  }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NjaGVkdWxlci9zY2hlZHVsZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDckUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEVBQTBFLENBQUM7O0FBbUIzSCxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBZjFCLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsd0JBQXdCO1FBQ3hCLGNBQWM7UUFDZCxhQUFhO1FBQ2IsK0JBQStCLGFBRy9CLFlBQVksYUFHWixvQkFBb0I7UUFDcEIsK0JBQStCOytHQUd0QixpQkFBaUIsWUFSbkI7WUFDUCxZQUFZO1NBQ2I7MkZBTVUsaUJBQWlCO2tCQWpCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQixxQkFBcUI7d0JBQ3JCLHdCQUF3Qjt3QkFDeEIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLCtCQUErQjtxQkFDaEM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsK0JBQStCO3FCQUNoQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNTZWNvbmRzVGltZXNwYW5QaXBlIH0gZnJvbSAnLi9waXBlcy9icy1zZWNvbmRzLXRpbWVzcGFuLnBpcGUvYnMtc2Vjb25kcy10aW1lc3Bhbi5waXBlJztcbmltcG9ydCB7IEJzU2Vjb25kc1RvZGF5T2Zmc2V0UGlwZSB9IGZyb20gJy4vcGlwZXMvYnMtc2Vjb25kcy10b2RheS1vZmZzZXQvYnMtc2Vjb25kcy10b2RheS1vZmZzZXQucGlwZSc7XG5pbXBvcnQgeyBEYXRlT2Zmc2V0UGlwZSB9IGZyb20gJy4vcGlwZXMvZGF0ZS1vZmZzZXQvZGF0ZS1vZmZzZXQucGlwZSc7XG5pbXBvcnQgeyBEYXlPZldlZWtQaXBlIH0gZnJvbSAnLi9waXBlcy9kYXktb2Ytd2Vlay9kYXktb2Ytd2Vlay5waXBlJztcbmltcG9ydCB7IEJzU2NoZWR1bGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NjaGVkdWxlci9zY2hlZHVsZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJlc291cmNlR3JvdXBQcmVzZW50ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCc1NjaGVkdWxlckNvbXBvbmVudCxcbiAgICBCc1NlY29uZHNUaW1lc3BhblBpcGUsXG4gICAgQnNTZWNvbmRzVG9kYXlPZmZzZXRQaXBlLFxuICAgIERhdGVPZmZzZXRQaXBlLFxuICAgIERheU9mV2Vla1BpcGUsXG4gICAgUmVzb3VyY2VHcm91cFByZXNlbnRlckNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCc1NjaGVkdWxlckNvbXBvbmVudCxcbiAgICBSZXNvdXJjZUdyb3VwUHJlc2VudGVyQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNTY2hlZHVsZXJNb2R1bGUgeyB9XG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NjaGVkdWxlci9zY2hlZHVsZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDckUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEVBQTBFLENBQUM7O0FBbUIzSCxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBZjFCLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsd0JBQXdCO1FBQ3hCLGNBQWM7UUFDZCxhQUFhO1FBQ2IsK0JBQStCLGFBRy9CLFlBQVksYUFHWixvQkFBb0I7UUFDcEIsK0JBQStCOytHQUd0QixpQkFBaUIsWUFQMUIsWUFBWTsyRkFPSCxpQkFBaUI7a0JBakI3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsK0JBQStCO3FCQUNoQztvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asb0JBQW9CO3dCQUNwQiwrQkFBK0I7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCc1NlY29uZHNUaW1lc3BhblBpcGUgfSBmcm9tICcuL3BpcGVzL2JzLXNlY29uZHMtdGltZXNwYW4ucGlwZS9icy1zZWNvbmRzLXRpbWVzcGFuLnBpcGUnO1xuaW1wb3J0IHsgQnNTZWNvbmRzVG9kYXlPZmZzZXRQaXBlIH0gZnJvbSAnLi9waXBlcy9icy1zZWNvbmRzLXRvZGF5LW9mZnNldC9icy1zZWNvbmRzLXRvZGF5LW9mZnNldC5waXBlJztcbmltcG9ydCB7IERhdGVPZmZzZXRQaXBlIH0gZnJvbSAnLi9waXBlcy9kYXRlLW9mZnNldC9kYXRlLW9mZnNldC5waXBlJztcbmltcG9ydCB7IERheU9mV2Vla1BpcGUgfSBmcm9tICcuL3BpcGVzL2RheS1vZi13ZWVrL2RheS1vZi13ZWVrLnBpcGUnO1xuaW1wb3J0IHsgQnNTY2hlZHVsZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2NoZWR1bGVyL3NjaGVkdWxlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cFByZXNlbnRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXIvcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzU2NoZWR1bGVyQ29tcG9uZW50LFxuICAgIEJzU2Vjb25kc1RpbWVzcGFuUGlwZSxcbiAgICBCc1NlY29uZHNUb2RheU9mZnNldFBpcGUsXG4gICAgRGF0ZU9mZnNldFBpcGUsXG4gICAgRGF5T2ZXZWVrUGlwZSxcbiAgICBSZXNvdXJjZUdyb3VwUHJlc2VudGVyQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzU2NoZWR1bGVyQ29tcG9uZW50LFxuICAgIFJlc291cmNlR3JvdXBQcmVzZW50ZXJDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBCc1NjaGVkdWxlck1vZHVsZSB7IH1cbiJdfQ==
@@ -54,9 +54,9 @@ export class BsTimelineService {
54
54
  }
55
55
  }
56
56
  }
57
- BsTimelineService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsTimelineService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
58
- BsTimelineService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsTimelineService, providedIn: 'root' });
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsTimelineService, decorators: [{
57
+ BsTimelineService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsTimelineService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
58
+ BsTimelineService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsTimelineService, providedIn: 'root' });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsTimelineService, decorators: [{
60
60
  type: Injectable,
61
61
  args: [{
62
62
  providedIn: 'root'
@@ -69,11 +69,11 @@ export class BsScrollspyComponent {
69
69
  }
70
70
  }
71
71
  }
72
- BsScrollspyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyComponent, deps: [{ token: i1.BsScrollOffsetService }, { token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
73
- BsScrollspyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: BsScrollspyComponent, selector: "bs-scrollspy", host: { listeners: { "window:scroll": "onWindowScroll($event)" } }, queries: [{ propertyName: "directives", predicate: BsScrollspyDirective, descendants: true }], viewQueries: [{ propertyName: "anchors", predicate: ["anchor"], descendants: true }], ngImport: i0, template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives; let i = index\">\n <span [attr.data-index]=\"i\" class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\" #anchor>\n {{ dir.element.nativeElement.textContent }}\n </span>\n </li>\n </ul>\n</div>\n<div class=\"content\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block}.spy>ul{list-style-type:none;padding-left:0}.spy>ul>li:hover{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 768px){:host{display:grid;grid-template-areas:\"content toc\";grid-template-columns:auto 200px;grid-template-rows:auto;grid-gap:inherit;gap:inherit;grid-area:main}.spy{position:sticky;top:5rem;right:0;z-index:2;height:calc(100vh - 7rem);overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyComponent, decorators: [{
72
+ BsScrollspyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyComponent, deps: [{ token: i1.BsScrollOffsetService }, { token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
73
+ BsScrollspyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: BsScrollspyComponent, selector: "bs-scrollspy", host: { listeners: { "window:scroll": "onWindowScroll($event)" } }, queries: [{ propertyName: "directives", predicate: BsScrollspyDirective, descendants: true }], viewQueries: [{ propertyName: "anchors", predicate: ["anchor"], descendants: true }], ngImport: i0, template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives; let i = index\">\n <span [attr.data-index]=\"i\" class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\" #anchor>\n {{ dir.element.nativeElement.textContent }}\n </span>\n </li>\n </ul>\n</div>\n<div class=\"content\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block}.spy>ul{list-style-type:none;padding-left:0}.spy>ul>li:hover{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 768px){:host{display:grid;grid-template-areas:\"content toc\";grid-template-columns:auto 200px;grid-template-rows:auto;gap:inherit;grid-area:main}.spy{position:sticky;top:5rem;right:0;z-index:2;height:calc(100vh - 7rem);overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyComponent, decorators: [{
75
75
  type: Component,
76
- args: [{ selector: 'bs-scrollspy', template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives; let i = index\">\n <span [attr.data-index]=\"i\" class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\" #anchor>\n {{ dir.element.nativeElement.textContent }}\n </span>\n </li>\n </ul>\n</div>\n<div class=\"content\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block}.spy>ul{list-style-type:none;padding-left:0}.spy>ul>li:hover{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 768px){:host{display:grid;grid-template-areas:\"content toc\";grid-template-columns:auto 200px;grid-template-rows:auto;grid-gap:inherit;gap:inherit;grid-area:main}.spy{position:sticky;top:5rem;right:0;z-index:2;height:calc(100vh - 7rem);overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"] }]
76
+ args: [{ selector: 'bs-scrollspy', template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives; let i = index\">\n <span [attr.data-index]=\"i\" class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\" #anchor>\n {{ dir.element.nativeElement.textContent }}\n </span>\n </li>\n </ul>\n</div>\n<div class=\"content\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block}.spy>ul{list-style-type:none;padding-left:0}.spy>ul>li:hover{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 768px){:host{display:grid;grid-template-areas:\"content toc\";grid-template-columns:auto 200px;grid-template-rows:auto;gap:inherit;grid-area:main}.spy{position:sticky;top:5rem;right:0;z-index:2;height:calc(100vh - 7rem);overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"] }]
77
77
  }], ctorParameters: function () { return [{ type: i1.BsScrollOffsetService }, { type: undefined, decorators: [{
78
78
  type: Inject,
79
79
  args: [DOCUMENT]
@@ -5,9 +5,9 @@ export class BsScrollspyDirective {
5
5
  this.element = element;
6
6
  }
7
7
  }
8
- BsScrollspyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
9
- BsScrollspyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.0", type: BsScrollspyDirective, selector: "[bsScrollspy]", ngImport: i0 });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyDirective, decorators: [{
8
+ BsScrollspyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
9
+ BsScrollspyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: BsScrollspyDirective, selector: "[bsScrollspy]", ngImport: i0 });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyDirective, decorators: [{
11
11
  type: Directive,
12
12
  args: [{
13
13
  selector: '[bsScrollspy]'
@@ -5,14 +5,12 @@ import { BsScrollspyDirective } from './directives/scrollspy.directive';
5
5
  import * as i0 from "@angular/core";
6
6
  export class BsScrollspyModule {
7
7
  }
8
- BsScrollspyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- BsScrollspyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyModule, declarations: [BsScrollspyComponent,
8
+ BsScrollspyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ BsScrollspyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyModule, declarations: [BsScrollspyComponent,
10
10
  BsScrollspyDirective], imports: [CommonModule], exports: [BsScrollspyComponent,
11
11
  BsScrollspyDirective] });
12
- BsScrollspyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyModule, imports: [[
13
- CommonModule
14
- ]] });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsScrollspyModule, decorators: [{
12
+ BsScrollspyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyModule, imports: [CommonModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsScrollspyModule, decorators: [{
16
14
  type: NgModule,
17
15
  args: [{
18
16
  declarations: [
@@ -28,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
28
26
  ]
29
27
  }]
30
28
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsc3B5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3Njcm9sbHNweS9zY3JvbGxzcHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQWlCeEUsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQVgxQixvQkFBb0I7UUFDcEIsb0JBQW9CLGFBR3BCLFlBQVksYUFHWixvQkFBb0I7UUFDcEIsb0JBQW9COytHQUdYLGlCQUFpQixZQVJuQjtZQUNQLFlBQVk7U0FDYjsyRkFNVSxpQkFBaUI7a0JBYjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3FCQUNyQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asb0JBQW9CO3dCQUNwQixvQkFBb0I7cUJBQ3JCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCc1Njcm9sbHNweUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50L3Njcm9sbHNweS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNTY3JvbGxzcHlEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc2Nyb2xsc3B5LmRpcmVjdGl2ZSc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCc1Njcm9sbHNweUNvbXBvbmVudCxcbiAgICBCc1Njcm9sbHNweURpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCc1Njcm9sbHNweUNvbXBvbmVudCxcbiAgICBCc1Njcm9sbHNweURpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJzU2Nyb2xsc3B5TW9kdWxlIHsgfVxuIl19
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsc3B5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3Njcm9sbHNweS9zY3JvbGxzcHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQWlCeEUsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQVgxQixvQkFBb0I7UUFDcEIsb0JBQW9CLGFBR3BCLFlBQVksYUFHWixvQkFBb0I7UUFDcEIsb0JBQW9COytHQUdYLGlCQUFpQixZQVAxQixZQUFZOzJGQU9ILGlCQUFpQjtrQkFiN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxvQkFBb0I7d0JBQ3BCLG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzU2Nyb2xsc3B5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQvc2Nyb2xsc3B5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1Njcm9sbHNweURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zY3JvbGxzcHkuZGlyZWN0aXZlJztcblxuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzU2Nyb2xsc3B5Q29tcG9uZW50LFxuICAgIEJzU2Nyb2xsc3B5RGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzU2Nyb2xsc3B5Q29tcG9uZW50LFxuICAgIEJzU2Nyb2xsc3B5RGlyZWN0aXZlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNTY3JvbGxzcHlNb2R1bGUgeyB9XG4iXX0=
@@ -1,9 +1,9 @@
1
1
  import { Component, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, TemplateRef, ViewChild } from '@angular/core';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "../../dropdown/dropdown/dropdown.directive";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "@angular/forms";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/forms";
6
+ import * as i3 from "../../dropdown/dropdown/dropdown.directive";
7
7
  import * as i4 from "../../dropdown/dropdown-menu/dropdown-menu.directive";
8
8
  import * as i5 from "../../../pipes/in-list/in-list.pipe";
9
9
  export class BsSelect2Component {
@@ -61,9 +61,9 @@ export class BsSelect2Component {
61
61
  this.searchBox.nativeElement.focus();
62
62
  }
63
63
  }
64
- BsSelect2Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSelect2Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
65
- BsSelect2Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: BsSelect2Component, selector: "bs-select2", inputs: { searchterm: "searchterm", suggestions: "suggestions", selectedItems: "selectedItems" }, outputs: { provideSuggestions: "provideSuggestions" }, host: { listeners: { "window:resize": "onResize()", "click": "focus()" }, properties: { "class.focus": "this.isFocused" } }, viewQueries: [{ propertyName: "defaultItemTemplate", first: true, predicate: ["defaultItemTemplate"], descendants: true, static: true }, { propertyName: "searchBox", first: true, predicate: ["searchBox"], descendants: true }, { propertyName: "itemsBox", first: true, predicate: ["itemsBox"], descendants: true }], ngImport: i0, template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\" #itemsBox class=\"items-box text-wrap\">\n <ng-container *ngFor=\"let item of selectedItems\">\n <ng-container *ngTemplateOutlet=\"itemTemplate ?? defaultItemTemplate; context: { item: item, select2: this }\"></ng-container>\n </ng-container>\n\n <input type=\"text\" autocomplete=\"off\"\n [(ngModel)]=\"searchterm\"\n (ngModelChange)=\"onProvideSuggestions($event)\"\n (focus)=\"isFocused=true\"\n (blur)=\"isFocused=false\"\n [style.width.px]=\"searchWidth\"\n #searchBox />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static p-0\" [style.width.px]=\"hostWidth$ | async\">\n <li *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [class.selected]=\"selectedItems | inList:suggestion.id\">{{ suggestion.text }}</li>\n </ul>\n </div>\n</div>\n\n<ng-template #defaultItemTemplate let-item=\"item\" let-select2=\"select2\">\n <span class=\"select2-item\">\n <span (click)=\"select2.onRemoveItem(item,$event)\">\u00D7</span>\n {{ item.text }}\n </span>\n</ng-template>\n", styles: [".items-box{display:block;position:relative;width:100%;min-height:38px;padding:0 5px 3px;cursor:text;border:1px solid #ccc}.items-box .select2-item{display:inline-block;background-color:#e4e4e4;color:#1a1a1a;border:1px solid #aaa;border-radius:4px;margin-top:5px;margin-right:5px;padding:0 5px;cursor:default;user-select:none;-webkit-user-select:none}.items-box .select2-item>span{cursor:pointer;color:#999}.items-box .select2-item>span:hover{color:#333}.items-box input{border:none;outline:0;margin:5px 0 2px;background:none}:host{display:block;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}:host.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}ul{max-height:200px;overflow-y:auto}ul>li{padding:10px;cursor:pointer}ul>li.selected{background:#ddd}ul>li:hover{color:#fff;background-color:#5897fb}\n"], directives: [{ type: i1.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }], pipes: { "async": i2.AsyncPipe, "inList": i5.BsInListPipe } });
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSelect2Component, decorators: [{
64
+ BsSelect2Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSelect2Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
65
+ BsSelect2Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: BsSelect2Component, selector: "bs-select2", inputs: { searchterm: "searchterm", suggestions: "suggestions", selectedItems: "selectedItems" }, outputs: { provideSuggestions: "provideSuggestions" }, host: { listeners: { "window:resize": "onResize()", "click": "focus()" }, properties: { "class.focus": "this.isFocused" } }, viewQueries: [{ propertyName: "defaultItemTemplate", first: true, predicate: ["defaultItemTemplate"], descendants: true, static: true }, { propertyName: "searchBox", first: true, predicate: ["searchBox"], descendants: true }, { propertyName: "itemsBox", first: true, predicate: ["itemsBox"], descendants: true }], ngImport: i0, template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\" #itemsBox class=\"items-box text-wrap\">\n <ng-container *ngFor=\"let item of selectedItems\">\n <ng-container *ngTemplateOutlet=\"itemTemplate ?? defaultItemTemplate; context: { item: item, select2: this }\"></ng-container>\n </ng-container>\n\n <input type=\"text\" autocomplete=\"off\"\n [(ngModel)]=\"searchterm\"\n (ngModelChange)=\"onProvideSuggestions($event)\"\n (focus)=\"isFocused=true\"\n (blur)=\"isFocused=false\"\n [style.width.px]=\"searchWidth\"\n #searchBox />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static p-0\" [style.width.px]=\"hostWidth$ | async\">\n <li *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [class.selected]=\"selectedItems | inList:suggestion.id\">{{ suggestion.text }}</li>\n </ul>\n </div>\n</div>\n\n<ng-template #defaultItemTemplate let-item=\"item\" let-select2=\"select2\">\n <span class=\"select2-item\">\n <span (click)=\"select2.onRemoveItem(item,$event)\">\u00D7</span>\n {{ item.text }}\n </span>\n</ng-template>\n", styles: [".items-box{display:block;position:relative;width:100%;min-height:38px;padding:0 5px 3px;cursor:text;border:1px solid #ccc}.items-box .select2-item{display:inline-block;background-color:#e4e4e4;color:#1a1a1a;border:1px solid #aaa;border-radius:4px;margin-top:5px;margin-right:5px;padding:0 5px;cursor:default;user-select:none;-webkit-user-select:none}.items-box .select2-item>span{cursor:pointer;color:#999}.items-box .select2-item>span:hover{color:#333}.items-box input{border:none;outline:0;margin:5px 0 2px;background:none}:host{display:block;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}:host.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}ul{max-height:200px;overflow-y:auto}ul>li{padding:10px;cursor:pointer}ul>li.selected{background:#ddd}ul>li:hover{color:#fff;background-color:#5897fb}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i4.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.BsInListPipe, name: "inList" }] });
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSelect2Component, decorators: [{
67
67
  type: Component,
68
68
  args: [{ selector: 'bs-select2', template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\" #itemsBox class=\"items-box text-wrap\">\n <ng-container *ngFor=\"let item of selectedItems\">\n <ng-container *ngTemplateOutlet=\"itemTemplate ?? defaultItemTemplate; context: { item: item, select2: this }\"></ng-container>\n </ng-container>\n\n <input type=\"text\" autocomplete=\"off\"\n [(ngModel)]=\"searchterm\"\n (ngModelChange)=\"onProvideSuggestions($event)\"\n (focus)=\"isFocused=true\"\n (blur)=\"isFocused=false\"\n [style.width.px]=\"searchWidth\"\n #searchBox />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static p-0\" [style.width.px]=\"hostWidth$ | async\">\n <li *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [class.selected]=\"selectedItems | inList:suggestion.id\">{{ suggestion.text }}</li>\n </ul>\n </div>\n</div>\n\n<ng-template #defaultItemTemplate let-item=\"item\" let-select2=\"select2\">\n <span class=\"select2-item\">\n <span (click)=\"select2.onRemoveItem(item,$event)\">\u00D7</span>\n {{ item.text }}\n </span>\n</ng-template>\n", styles: [".items-box{display:block;position:relative;width:100%;min-height:38px;padding:0 5px 3px;cursor:text;border:1px solid #ccc}.items-box .select2-item{display:inline-block;background-color:#e4e4e4;color:#1a1a1a;border:1px solid #aaa;border-radius:4px;margin-top:5px;margin-right:5px;padding:0 5px;cursor:default;user-select:none;-webkit-user-select:none}.items-box .select2-item>span{cursor:pointer;color:#999}.items-box .select2-item>span:hover{color:#333}.items-box input{border:none;outline:0;margin:5px 0 2px;background:none}:host{display:block;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}:host.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}ul{max-height:200px;overflow-y:auto}ul>li{padding:10px;cursor:pointer}ul>li.selected{background:#ddd}ul>li:hover{color:#fff;background-color:#5897fb}\n"] }]
69
69
  }], propDecorators: { defaultItemTemplate: [{
@@ -8,9 +8,9 @@ export class BsItemTemplateDirective {
8
8
  this.select2component.itemTemplate = templateRef;
9
9
  }
10
10
  }
11
- BsItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsItemTemplateDirective, deps: [{ token: i1.BsSelect2Component }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
12
- BsItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.0", type: BsItemTemplateDirective, selector: "[bsItemTemplate]", ngImport: i0 });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsItemTemplateDirective, decorators: [{
11
+ BsItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsItemTemplateDirective, deps: [{ token: i1.BsSelect2Component }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
12
+ BsItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: BsItemTemplateDirective, selector: "[bsItemTemplate]", ngImport: i0 });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsItemTemplateDirective, decorators: [{
14
14
  type: Directive,
15
15
  args: [{
16
16
  selector: '[bsItemTemplate]'
@@ -8,20 +8,18 @@ import { BsInListModule } from '../../pipes/in-list/in-list.module';
8
8
  import * as i0 from "@angular/core";
9
9
  export class BsSelect2Module {
10
10
  }
11
- BsSelect2Module.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSelect2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- BsSelect2Module.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSelect2Module, declarations: [BsSelect2Component,
11
+ BsSelect2Module.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSelect2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ BsSelect2Module.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: BsSelect2Module, declarations: [BsSelect2Component,
13
13
  BsItemTemplateDirective], imports: [CommonModule,
14
14
  FormsModule,
15
15
  BsDropdownModule,
16
16
  BsInListModule], exports: [BsSelect2Component,
17
17
  BsItemTemplateDirective] });
18
- BsSelect2Module.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSelect2Module, imports: [[
19
- CommonModule,
20
- FormsModule,
21
- BsDropdownModule,
22
- BsInListModule
23
- ]] });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSelect2Module, decorators: [{
18
+ BsSelect2Module.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSelect2Module, imports: [CommonModule,
19
+ FormsModule,
20
+ BsDropdownModule,
21
+ BsInListModule] });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSelect2Module, decorators: [{
25
23
  type: NgModule,
26
24
  args: [{
27
25
  declarations: [
@@ -40,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
40
38
  ]
41
39
  }]
42
40
  }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Mi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3QyL3NlbGVjdDIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBa0JwRSxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQWR4QixrQkFBa0I7UUFDbEIsdUJBQXVCLGFBR3ZCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGNBQWMsYUFHZCxrQkFBa0I7UUFDbEIsdUJBQXVCOzZHQUdkLGVBQWUsWUFYakI7WUFDUCxZQUFZO1lBQ1osV0FBVztZQUNYLGdCQUFnQjtZQUNoQixjQUFjO1NBQ2Y7MkZBTVUsZUFBZTtrQkFoQjNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjt3QkFDbEIsdUJBQXVCO3FCQUN4QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asa0JBQWtCO3dCQUNsQix1QkFBdUI7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzRHJvcGRvd25Nb2R1bGUgfSBmcm9tICcuLi9kcm9wZG93bi9kcm9wZG93bi5tb2R1bGUnO1xuaW1wb3J0IHsgQnNJdGVtVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9pdGVtLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCc1NlbGVjdDJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudC9zZWxlY3QyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0luTGlzdE1vZHVsZSB9IGZyb20gJy4uLy4uL3BpcGVzL2luLWxpc3QvaW4tbGlzdC5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCc1NlbGVjdDJDb21wb25lbnQsXG4gICAgQnNJdGVtVGVtcGxhdGVEaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBCc0Ryb3Bkb3duTW9kdWxlLFxuICAgIEJzSW5MaXN0TW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCc1NlbGVjdDJDb21wb25lbnQsXG4gICAgQnNJdGVtVGVtcGxhdGVEaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBCc1NlbGVjdDJNb2R1bGUgeyB9XG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Mi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3QyL3NlbGVjdDIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBa0JwRSxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQWR4QixrQkFBa0I7UUFDbEIsdUJBQXVCLGFBR3ZCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGNBQWMsYUFHZCxrQkFBa0I7UUFDbEIsdUJBQXVCOzZHQUdkLGVBQWUsWUFWeEIsWUFBWTtRQUNaLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIsY0FBYzsyRkFPTCxlQUFlO2tCQWhCM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osa0JBQWtCO3dCQUNsQix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixjQUFjO3FCQUNmO29CQUNELE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNEcm9wZG93bk1vZHVsZSB9IGZyb20gJy4uL2Ryb3Bkb3duL2Ryb3Bkb3duLm1vZHVsZSc7XG5pbXBvcnQgeyBCc0l0ZW1UZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL2l0ZW0tdGVtcGxhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJzU2VsZWN0MkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50L3NlbGVjdDIuY29tcG9uZW50JztcbmltcG9ydCB7IEJzSW5MaXN0TW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvaW4tbGlzdC9pbi1saXN0Lm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzU2VsZWN0MkNvbXBvbmVudCxcbiAgICBCc0l0ZW1UZW1wbGF0ZURpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEJzRHJvcGRvd25Nb2R1bGUsXG4gICAgQnNJbkxpc3RNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzU2VsZWN0MkNvbXBvbmVudCxcbiAgICBCc0l0ZW1UZW1wbGF0ZURpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJzU2VsZWN0Mk1vZHVsZSB7IH1cbiJdfQ==
@@ -17,9 +17,9 @@ export class BsSnackbarComponent {
17
17
  this.animationStateChanged.emit(event);
18
18
  }
19
19
  }
20
- BsSnackbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSnackbarComponent, deps: [{ token: SNACKBAR_CONTENT }], target: i0.ɵɵFactoryTarget.Component });
21
- BsSnackbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: BsSnackbarComponent, selector: "bs-snackbar", host: { properties: { "class.d-block": "this.displayBlock", "class.w-100": "this.width100" } }, ngImport: i0, template: "<div [@slideUpDown]=\"animationState\"\n (@slideUpDown.start)=\"onAnimationChanged($event)\"\n (@slideUpDown.done)=\"onAnimationChanged($event)\">\n\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [":host{background:#232323;color:rgba(var(--bs-light-rgb))}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [SlideUpDownAnimation] });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSnackbarComponent, decorators: [{
20
+ BsSnackbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSnackbarComponent, deps: [{ token: SNACKBAR_CONTENT }], target: i0.ɵɵFactoryTarget.Component });
21
+ BsSnackbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: BsSnackbarComponent, selector: "bs-snackbar", host: { properties: { "class.d-block": "this.displayBlock", "class.w-100": "this.width100" } }, ngImport: i0, template: "<div [@slideUpDown]=\"animationState\"\n (@slideUpDown.start)=\"onAnimationChanged($event)\"\n (@slideUpDown.done)=\"onAnimationChanged($event)\">\n\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [":host{background:#232323;color:rgba(var(--bs-light-rgb))}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [SlideUpDownAnimation] });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSnackbarComponent, decorators: [{
23
23
  type: Component,
24
24
  args: [{ selector: 'bs-snackbar', animations: [SlideUpDownAnimation], template: "<div [@slideUpDown]=\"animationState\"\n (@slideUpDown.start)=\"onAnimationChanged($event)\"\n (@slideUpDown.done)=\"onAnimationChanged($event)\">\n\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [":host{background:#232323;color:rgba(var(--bs-light-rgb))}\n"] }]
25
25
  }], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
32
32
  type: HostBinding,
33
33
  args: ['class.w-100']
34
34
  }] } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvc25hY2tiYXIvY29tcG9uZW50L3NuYWNrYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NuYWNrYmFyL2NvbXBvbmVudC9zbmFja2Jhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7O0FBUTFFLE1BQU0sT0FBTyxtQkFBbUI7SUFFOUIsWUFBc0MsT0FBeUI7UUFJakMsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDdEIsYUFBUSxHQUFHLElBQUksQ0FBQztRQUdwQyxhQUFRLEdBQWlDLElBQUksQ0FBQztRQUV0RCxvQ0FBb0M7UUFDcEMsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFYekQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQVdELGtCQUFrQixDQUFDLEtBQXFCO1FBQ3RDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQzs7Z0hBakJVLG1CQUFtQixrQkFFVixnQkFBZ0I7b0dBRnpCLG1CQUFtQixtSkNaaEMsc1FBS00sNk5ES1EsQ0FBQyxvQkFBb0IsQ0FBQzsyRkFFdkIsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNFLGFBQWEsY0FHWCxDQUFDLG9CQUFvQixDQUFDOzswQkFJckIsTUFBTTsyQkFBQyxnQkFBZ0I7NENBSU4sWUFBWTtzQkFBekMsV0FBVzt1QkFBQyxlQUFlO2dCQUNBLFFBQVE7c0JBQW5DLFdBQVc7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEluamVjdCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNsaWRlVXBEb3duQW5pbWF0aW9uIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBTbmFja2JhckFuaW1hdGlvbk1ldGEgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3NuYWNrYmFyLWFuaW1hdGlvbi1tZXRhJztcbmltcG9ydCB7IFNOQUNLQkFSX0NPTlRFTlQgfSBmcm9tICcuLi9wcm92aWRlcnMvc25hY2tiYXItY29udGVudC5wcm92aWRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLXNuYWNrYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NuYWNrYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc25hY2tiYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1NsaWRlVXBEb3duQW5pbWF0aW9uXVxufSlcbmV4cG9ydCBjbGFzcyBCc1NuYWNrYmFyQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KFNOQUNLQkFSX0NPTlRFTlQpIGNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICB0aGlzLmNvbnRlbnQgPSBjb250ZW50O1xuICB9XG4gIFxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmQtYmxvY2snKSBkaXNwbGF5QmxvY2sgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnctMTAwJykgd2lkdGgxMDAgPSB0cnVlO1xuICBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByaXZhdGUgaW5zdGFuY2U6IFNuYWNrYmFyQW5pbWF0aW9uTWV0YSB8IG51bGwgPSBudWxsO1xuXG4gIC8vI3JlZ2lvbiBNb25pdG9yIEBzbGlkZVVwRG93biBob29rc1xuICBhbmltYXRpb25TdGF0ZSA9ICcnO1xuICBhbmltYXRpb25TdGF0ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFuaW1hdGlvbkV2ZW50PigpO1xuICBvbkFuaW1hdGlvbkNoYW5nZWQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbn1cbiIsIjxkaXYgW0BzbGlkZVVwRG93bl09XCJhbmltYXRpb25TdGF0ZVwiXG4gICAgIChAc2xpZGVVcERvd24uc3RhcnQpPVwib25BbmltYXRpb25DaGFuZ2VkKCRldmVudClcIlxuICAgICAoQHNsaWRlVXBEb3duLmRvbmUpPVwib25BbmltYXRpb25DaGFuZ2VkKCRldmVudClcIj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50OyBjb250ZXh0OiB7ICRpbXBsaWNpdDogdGhpcyB9XCIgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+Il19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvc25hY2tiYXIvY29tcG9uZW50L3NuYWNrYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NuYWNrYmFyL2NvbXBvbmVudC9zbmFja2Jhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7O0FBUTFFLE1BQU0sT0FBTyxtQkFBbUI7SUFFOUIsWUFBc0MsT0FBeUI7UUFJakMsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDdEIsYUFBUSxHQUFHLElBQUksQ0FBQztRQUdwQyxhQUFRLEdBQWlDLElBQUksQ0FBQztRQUV0RCxvQ0FBb0M7UUFDcEMsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFYekQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQVdELGtCQUFrQixDQUFDLEtBQXFCO1FBQ3RDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQzs7Z0hBakJVLG1CQUFtQixrQkFFVixnQkFBZ0I7b0dBRnpCLG1CQUFtQixtSkNaaEMsc1FBS00sOFFES1EsQ0FBQyxvQkFBb0IsQ0FBQzsyRkFFdkIsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNFLGFBQWEsY0FHWCxDQUFDLG9CQUFvQixDQUFDOzswQkFJckIsTUFBTTsyQkFBQyxnQkFBZ0I7NENBSU4sWUFBWTtzQkFBekMsV0FBVzt1QkFBQyxlQUFlO2dCQUNBLFFBQVE7c0JBQW5DLFdBQVc7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEluamVjdCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNsaWRlVXBEb3duQW5pbWF0aW9uIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBTbmFja2JhckFuaW1hdGlvbk1ldGEgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3NuYWNrYmFyLWFuaW1hdGlvbi1tZXRhJztcbmltcG9ydCB7IFNOQUNLQkFSX0NPTlRFTlQgfSBmcm9tICcuLi9wcm92aWRlcnMvc25hY2tiYXItY29udGVudC5wcm92aWRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLXNuYWNrYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NuYWNrYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc25hY2tiYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1NsaWRlVXBEb3duQW5pbWF0aW9uXVxufSlcbmV4cG9ydCBjbGFzcyBCc1NuYWNrYmFyQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KFNOQUNLQkFSX0NPTlRFTlQpIGNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICB0aGlzLmNvbnRlbnQgPSBjb250ZW50O1xuICB9XG4gIFxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmQtYmxvY2snKSBkaXNwbGF5QmxvY2sgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnctMTAwJykgd2lkdGgxMDAgPSB0cnVlO1xuICBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByaXZhdGUgaW5zdGFuY2U6IFNuYWNrYmFyQW5pbWF0aW9uTWV0YSB8IG51bGwgPSBudWxsO1xuXG4gIC8vI3JlZ2lvbiBNb25pdG9yIEBzbGlkZVVwRG93biBob29rc1xuICBhbmltYXRpb25TdGF0ZSA9ICcnO1xuICBhbmltYXRpb25TdGF0ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFuaW1hdGlvbkV2ZW50PigpO1xuICBvbkFuaW1hdGlvbkNoYW5nZWQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbn1cbiIsIjxkaXYgW0BzbGlkZVVwRG93bl09XCJhbmltYXRpb25TdGF0ZVwiXG4gICAgIChAc2xpZGVVcERvd24uc3RhcnQpPVwib25BbmltYXRpb25DaGFuZ2VkKCRldmVudClcIlxuICAgICAoQHNsaWRlVXBEb3duLmRvbmUpPVwib25BbmltYXRpb25DaGFuZ2VkKCRldmVudClcIj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50OyBjb250ZXh0OiB7ICRpbXBsaWNpdDogdGhpcyB9XCIgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+Il19
@@ -11,9 +11,9 @@ export class BsSnackbarCloseDirective {
11
11
  this.snackbarService.hide(this.bsSnackbarClose);
12
12
  }
13
13
  }
14
- BsSnackbarCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSnackbarCloseDirective, deps: [{ token: i1.BsSnackbarService }], target: i0.ɵɵFactoryTarget.Directive });
15
- BsSnackbarCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.0", type: BsSnackbarCloseDirective, selector: "[bsSnackbarClose]", inputs: { bsSnackbarClose: "bsSnackbarClose" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BsSnackbarCloseDirective, decorators: [{
14
+ BsSnackbarCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSnackbarCloseDirective, deps: [{ token: i1.BsSnackbarService }], target: i0.ɵɵFactoryTarget.Directive });
15
+ BsSnackbarCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: BsSnackbarCloseDirective, selector: "[bsSnackbarClose]", inputs: { bsSnackbarClose: "bsSnackbarClose" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BsSnackbarCloseDirective, decorators: [{
17
17
  type: Directive,
18
18
  args: [{
19
19
  selector: '[bsSnackbarClose]'