@coreui/angular-pro 4.5.11 → 4.5.12

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 (243) hide show
  1. package/esm2022/lib/accordion/accordion/accordion.component.mjs +3 -3
  2. package/esm2022/lib/accordion/accordion-button/accordion-button.directive.mjs +3 -3
  3. package/esm2022/lib/accordion/accordion-item/accordion-item.component.mjs +3 -3
  4. package/esm2022/lib/accordion/accordion.module.mjs +4 -4
  5. package/esm2022/lib/accordion/accordion.service.mjs +3 -3
  6. package/esm2022/lib/alert/alert-heading.directive.mjs +3 -3
  7. package/esm2022/lib/alert/alert-link.directive.mjs +3 -3
  8. package/esm2022/lib/alert/alert.component.mjs +3 -3
  9. package/esm2022/lib/alert/alert.module.mjs +4 -4
  10. package/esm2022/lib/avatar/avatar.component.mjs +3 -3
  11. package/esm2022/lib/avatar/avatar.module.mjs +4 -4
  12. package/esm2022/lib/backdrop/backdrop.service.mjs +3 -3
  13. package/esm2022/lib/badge/badge.component.mjs +3 -3
  14. package/esm2022/lib/badge/badge.module.mjs +4 -4
  15. package/esm2022/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +3 -3
  16. package/esm2022/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
  17. package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +3 -3
  18. package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +3 -3
  19. package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +4 -4
  20. package/esm2022/lib/button/button-close.directive.mjs +3 -3
  21. package/esm2022/lib/button/button.directive.mjs +3 -3
  22. package/esm2022/lib/button/button.module.mjs +4 -4
  23. package/esm2022/lib/button-group/button-group/button-group.component.mjs +3 -3
  24. package/esm2022/lib/button-group/button-group.module.mjs +4 -4
  25. package/esm2022/lib/button-group/button-toolbar/button-toolbar.component.mjs +3 -3
  26. package/esm2022/lib/calendar/calendar/calendar-class-view.pipe.mjs +3 -3
  27. package/esm2022/lib/calendar/calendar/calendar.component.mjs +3 -3
  28. package/esm2022/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +3 -3
  29. package/esm2022/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +3 -3
  30. package/esm2022/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +3 -3
  31. package/esm2022/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +3 -3
  32. package/esm2022/lib/calendar/calendar-month/calendar-day.directive.mjs +3 -3
  33. package/esm2022/lib/calendar/calendar-month/calendar-day.pipe.mjs +3 -3
  34. package/esm2022/lib/calendar/calendar-month/calendar-month.component.mjs +3 -3
  35. package/esm2022/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +3 -3
  36. package/esm2022/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +3 -3
  37. package/esm2022/lib/calendar/calendar.module.mjs +4 -4
  38. package/esm2022/lib/calendar/calendar.service.mjs +3 -3
  39. package/esm2022/lib/callout/callout.component.mjs +3 -3
  40. package/esm2022/lib/callout/callout.module.mjs +4 -4
  41. package/esm2022/lib/card/card-body.component.mjs +3 -3
  42. package/esm2022/lib/card/card-footer.component.mjs +3 -3
  43. package/esm2022/lib/card/card-group.component.mjs +3 -3
  44. package/esm2022/lib/card/card-header-actions.component.mjs +3 -3
  45. package/esm2022/lib/card/card-header.component.mjs +3 -3
  46. package/esm2022/lib/card/card-img-overlay/card-img-overlay.component.mjs +3 -3
  47. package/esm2022/lib/card/card-img.directive.mjs +3 -3
  48. package/esm2022/lib/card/card-link.directive.mjs +3 -3
  49. package/esm2022/lib/card/card-subtitle.directive.mjs +3 -3
  50. package/esm2022/lib/card/card-text.directive.mjs +3 -3
  51. package/esm2022/lib/card/card-title.directive.mjs +3 -3
  52. package/esm2022/lib/card/card.component.mjs +3 -3
  53. package/esm2022/lib/card/card.module.mjs +4 -4
  54. package/esm2022/lib/carousel/carousel/carousel.component.mjs +3 -3
  55. package/esm2022/lib/carousel/carousel-caption/carousel-caption.component.mjs +3 -3
  56. package/esm2022/lib/carousel/carousel-control/carousel-control.component.mjs +3 -3
  57. package/esm2022/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +3 -3
  58. package/esm2022/lib/carousel/carousel-inner/carousel-inner.component.mjs +3 -3
  59. package/esm2022/lib/carousel/carousel-item/carousel-item.component.mjs +3 -3
  60. package/esm2022/lib/carousel/carousel-state.mjs +3 -3
  61. package/esm2022/lib/carousel/carousel.config.mjs +3 -3
  62. package/esm2022/lib/carousel/carousel.module.mjs +4 -4
  63. package/esm2022/lib/carousel/carousel.service.mjs +3 -3
  64. package/esm2022/lib/collapse/collapse.directive.mjs +3 -3
  65. package/esm2022/lib/collapse/collapse.module.mjs +4 -4
  66. package/esm2022/lib/date-picker/date-picker.component.mjs +3 -3
  67. package/esm2022/lib/date-picker/date-picker.module.mjs +4 -4
  68. package/esm2022/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +3 -3
  69. package/esm2022/lib/date-range-picker/date-range-picker.module.mjs +4 -4
  70. package/esm2022/lib/dropdown/dropdown/dropdown.component.mjs +6 -6
  71. package/esm2022/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +3 -3
  72. package/esm2022/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +3 -3
  73. package/esm2022/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +3 -3
  74. package/esm2022/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +3 -3
  75. package/esm2022/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +3 -3
  76. package/esm2022/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +3 -3
  77. package/esm2022/lib/dropdown/dropdown.module.mjs +4 -4
  78. package/esm2022/lib/dropdown/dropdown.service.mjs +3 -3
  79. package/esm2022/lib/element-cover/element-cover.component.mjs +3 -3
  80. package/esm2022/lib/element-cover/element-cover.module.mjs +4 -4
  81. package/esm2022/lib/footer/footer.component.mjs +3 -3
  82. package/esm2022/lib/footer/footer.module.mjs +4 -4
  83. package/esm2022/lib/form/form/form.directive.mjs +3 -3
  84. package/esm2022/lib/form/form-check/form-check-input.directive.mjs +3 -3
  85. package/esm2022/lib/form/form-check/form-check-label.directive.mjs +3 -3
  86. package/esm2022/lib/form/form-check/form-check.component.mjs +3 -3
  87. package/esm2022/lib/form/form-control/form-control.directive.mjs +3 -3
  88. package/esm2022/lib/form/form-feedback/form-feedback.component.mjs +3 -3
  89. package/esm2022/lib/form/form-floating/form-floating.directive.mjs +3 -3
  90. package/esm2022/lib/form/form-label/form-label.directive.mjs +3 -3
  91. package/esm2022/lib/form/form-select/form-select.directive.mjs +3 -3
  92. package/esm2022/lib/form/form-text/form-text.directive.mjs +3 -3
  93. package/esm2022/lib/form/form.module.mjs +4 -4
  94. package/esm2022/lib/form/input-group/input-group.component.mjs +3 -3
  95. package/esm2022/lib/form/input-group-text/input-group-text.directive.mjs +3 -3
  96. package/esm2022/lib/grid/col.component.mjs +3 -3
  97. package/esm2022/lib/grid/col.directive.mjs +3 -3
  98. package/esm2022/lib/grid/container.component.mjs +3 -3
  99. package/esm2022/lib/grid/grid.module.mjs +4 -4
  100. package/esm2022/lib/grid/gutter.directive.mjs +3 -3
  101. package/esm2022/lib/grid/row.component.mjs +3 -3
  102. package/esm2022/lib/grid/row.directive.mjs +3 -3
  103. package/esm2022/lib/header/header/header.component.mjs +3 -3
  104. package/esm2022/lib/header/header-brand/header-brand.component.mjs +3 -3
  105. package/esm2022/lib/header/header-divider/header-divider.component.mjs +3 -3
  106. package/esm2022/lib/header/header-nav/header-nav.component.mjs +3 -3
  107. package/esm2022/lib/header/header-text/header-text.component.mjs +3 -3
  108. package/esm2022/lib/header/header-toggler/header-toggler.directive.mjs +3 -3
  109. package/esm2022/lib/header/header.module.mjs +4 -4
  110. package/esm2022/lib/image/img.directive.mjs +3 -3
  111. package/esm2022/lib/image/img.module.mjs +4 -4
  112. package/esm2022/lib/list-group/list-group-item.directive.mjs +3 -3
  113. package/esm2022/lib/list-group/list-group.directive.mjs +3 -3
  114. package/esm2022/lib/list-group/list-group.module.mjs +4 -4
  115. package/esm2022/lib/loading-button/loading-button.component.mjs +3 -3
  116. package/esm2022/lib/loading-button/loading-button.module.mjs +4 -4
  117. package/esm2022/lib/modal/modal/modal.component.mjs +3 -3
  118. package/esm2022/lib/modal/modal-body/modal-body.component.mjs +3 -3
  119. package/esm2022/lib/modal/modal-content/modal-content.component.mjs +3 -3
  120. package/esm2022/lib/modal/modal-dialog/modal-dialog.component.mjs +3 -3
  121. package/esm2022/lib/modal/modal-dismiss/modal-toggle.directive.mjs +3 -3
  122. package/esm2022/lib/modal/modal-footer/modal-footer.component.mjs +3 -3
  123. package/esm2022/lib/modal/modal-header/modal-header.component.mjs +3 -3
  124. package/esm2022/lib/modal/modal-title/modal-title.directive.mjs +3 -3
  125. package/esm2022/lib/modal/modal.module.mjs +4 -4
  126. package/esm2022/lib/modal/modal.service.mjs +3 -3
  127. package/esm2022/lib/multi-select/multi-select/multi-select-search.directive.mjs +3 -3
  128. package/esm2022/lib/multi-select/multi-select/multi-select.component.mjs +7 -7
  129. package/esm2022/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +3 -3
  130. package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +3 -3
  131. package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +3 -3
  132. package/esm2022/lib/multi-select/multi-select-option/multi-select-option.component.mjs +9 -8
  133. package/esm2022/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +3 -3
  134. package/esm2022/lib/multi-select/multi-select.module.mjs +4 -4
  135. package/esm2022/lib/multi-select/multi-select.service.mjs +3 -3
  136. package/esm2022/lib/nav/nav-item.component.mjs +3 -3
  137. package/esm2022/lib/nav/nav-link.directive.mjs +3 -3
  138. package/esm2022/lib/nav/nav.component.mjs +3 -3
  139. package/esm2022/lib/nav/nav.module.mjs +4 -4
  140. package/esm2022/lib/navbar/navbar-brand/navbar-brand.directive.mjs +3 -3
  141. package/esm2022/lib/navbar/navbar-nav/navbar-nav.component.mjs +3 -3
  142. package/esm2022/lib/navbar/navbar-text/navbar-text.component.mjs +3 -3
  143. package/esm2022/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +3 -3
  144. package/esm2022/lib/navbar/navbar.component.mjs +3 -3
  145. package/esm2022/lib/navbar/navbar.module.mjs +4 -4
  146. package/esm2022/lib/offcanvas/offcanvas/offcanvas.component.mjs +3 -3
  147. package/esm2022/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +3 -3
  148. package/esm2022/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +3 -3
  149. package/esm2022/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +3 -3
  150. package/esm2022/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +3 -3
  151. package/esm2022/lib/offcanvas/offcanvas.module.mjs +4 -4
  152. package/esm2022/lib/offcanvas/offcanvas.service.mjs +3 -3
  153. package/esm2022/lib/pagination/page-item/page-item.component.mjs +3 -3
  154. package/esm2022/lib/pagination/page-item/page-item.directive.mjs +3 -3
  155. package/esm2022/lib/pagination/page-link/page-link.directive.mjs +3 -3
  156. package/esm2022/lib/pagination/pagination/pagination.component.mjs +3 -3
  157. package/esm2022/lib/pagination/pagination.module.mjs +4 -4
  158. package/esm2022/lib/placeholder/placeholder-animation.directive.mjs +3 -3
  159. package/esm2022/lib/placeholder/placeholder.directive.mjs +3 -3
  160. package/esm2022/lib/placeholder/placeholder.module.mjs +4 -4
  161. package/esm2022/lib/popover/popover/popover.component.mjs +3 -3
  162. package/esm2022/lib/popover/popover.directive.mjs +3 -3
  163. package/esm2022/lib/popover/popover.module.mjs +4 -4
  164. package/esm2022/lib/progress/progress-bar.component.mjs +3 -3
  165. package/esm2022/lib/progress/progress.component.mjs +3 -3
  166. package/esm2022/lib/progress/progress.module.mjs +4 -4
  167. package/esm2022/lib/services/class-toggle.service.mjs +3 -3
  168. package/esm2022/lib/services/intersection.service.mjs +3 -3
  169. package/esm2022/lib/services/listeners.service.mjs +3 -3
  170. package/esm2022/lib/shared/html-attr.directive.mjs +3 -3
  171. package/esm2022/lib/shared/shared.module.mjs +4 -4
  172. package/esm2022/lib/shared/template-id.directive.mjs +3 -3
  173. package/esm2022/lib/sidebar/sidebar/sidebar.component.mjs +3 -3
  174. package/esm2022/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +3 -3
  175. package/esm2022/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +3 -3
  176. package/esm2022/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  177. package/esm2022/lib/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  178. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +3 -3
  179. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +3 -3
  180. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +3 -3
  181. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +3 -3
  182. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +3 -3
  183. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +3 -3
  184. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +6 -6
  185. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +3 -3
  186. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +3 -3
  187. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +6 -6
  188. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +6 -6
  189. package/esm2022/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +3 -3
  190. package/esm2022/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +3 -3
  191. package/esm2022/lib/sidebar/sidebar.module.mjs +4 -4
  192. package/esm2022/lib/sidebar/sidebar.service.mjs +3 -3
  193. package/esm2022/lib/smart-pagination/smart-pagination.component.mjs +3 -3
  194. package/esm2022/lib/smart-pagination/smart-pagination.module.mjs +4 -4
  195. package/esm2022/lib/smart-table/smart-table/smart-table.component.mjs +3 -3
  196. package/esm2022/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +3 -3
  197. package/esm2022/lib/smart-table/smart-table-filter/filter-input.directive.mjs +3 -3
  198. package/esm2022/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +3 -3
  199. package/esm2022/lib/smart-table/smart-table-head/smart-table-head.component.mjs +3 -3
  200. package/esm2022/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +3 -3
  201. package/esm2022/lib/smart-table/smart-table.module.mjs +4 -4
  202. package/esm2022/lib/spinner/spinner.component.mjs +3 -3
  203. package/esm2022/lib/spinner/spinner.module.mjs +4 -4
  204. package/esm2022/lib/table/table-active.directive.mjs +3 -3
  205. package/esm2022/lib/table/table-color.directive.mjs +3 -3
  206. package/esm2022/lib/table/table.directive.mjs +3 -3
  207. package/esm2022/lib/table/table.module.mjs +4 -4
  208. package/esm2022/lib/tabs/tab-content/tab-content.component.mjs +3 -3
  209. package/esm2022/lib/tabs/tab-content-ref.directive.mjs +3 -3
  210. package/esm2022/lib/tabs/tab-pane/tab-pane.component.mjs +3 -3
  211. package/esm2022/lib/tabs/tab.service.mjs +3 -3
  212. package/esm2022/lib/tabs/tabs.module.mjs +4 -4
  213. package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +6 -6
  214. package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +6 -6
  215. package/esm2022/lib/time-picker/time-picker.component.mjs +3 -3
  216. package/esm2022/lib/time-picker/time-picker.module.mjs +4 -4
  217. package/esm2022/lib/toast/toast/toast.component.mjs +3 -3
  218. package/esm2022/lib/toast/toast-body/toast-body.component.mjs +3 -3
  219. package/esm2022/lib/toast/toast-close.directive.mjs +3 -3
  220. package/esm2022/lib/toast/toast-header/toast-header.component.mjs +3 -3
  221. package/esm2022/lib/toast/toast.module.mjs +4 -4
  222. package/esm2022/lib/toast/toaster/toaster-host.directive.mjs +3 -3
  223. package/esm2022/lib/toast/toaster/toaster.component.mjs +3 -3
  224. package/esm2022/lib/toast/toaster/toaster.service.mjs +3 -3
  225. package/esm2022/lib/tooltip/tooltip/tooltip.component.mjs +3 -3
  226. package/esm2022/lib/tooltip/tooltip.directive.mjs +3 -3
  227. package/esm2022/lib/tooltip/tooltip.module.mjs +4 -4
  228. package/esm2022/lib/utilities/align.directive.mjs +3 -3
  229. package/esm2022/lib/utilities/bg-color.directive.mjs +3 -3
  230. package/esm2022/lib/utilities/border.directive.mjs +3 -3
  231. package/esm2022/lib/utilities/rounded.directive.mjs +3 -3
  232. package/esm2022/lib/utilities/text-color.directive.mjs +3 -3
  233. package/esm2022/lib/utilities/utilities.module.mjs +4 -4
  234. package/esm2022/lib/widget/widget-stat-a/widget-stat-a.component.mjs +3 -3
  235. package/esm2022/lib/widget/widget-stat-b/widget-stat-b.component.mjs +3 -3
  236. package/esm2022/lib/widget/widget-stat-c/widget-stat-c.component.mjs +3 -3
  237. package/esm2022/lib/widget/widget-stat-d/widget-stat-d.component.mjs +3 -3
  238. package/esm2022/lib/widget/widget-stat-e/widget-stat-e.component.mjs +3 -3
  239. package/esm2022/lib/widget/widget-stat-f/widget-stat-f.component.mjs +3 -3
  240. package/esm2022/lib/widget/widget.module.mjs +4 -4
  241. package/fesm2022/coreui-angular-pro.mjs +790 -789
  242. package/fesm2022/coreui-angular-pro.mjs.map +1 -1
  243. package/package.json +2 -2
@@ -7,10 +7,10 @@ export class MultiSelectNativeSelectComponent {
7
7
  this.form = '';
8
8
  this.id = '';
9
9
  }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectNativeSelectComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: MultiSelectNativeSelectComponent, isStandalone: true, selector: "c-multi-select-native-select", inputs: { form: "form", id: "id", multiple: "multiple", name: "name", options: "options", disabled: "disabled" }, ngImport: i0, template: "<select [disabled]=\"disabled\" [id]=\"id\" [multiple]=\"multiple\" [name]=\"name\" style=\"display: none\" tabindex=\"-1\">\n <option\n *ngFor=\"let option of options\"\n [attr.selected]=\"option.selected ? '' : null\"\n [disabled]=\"disabled\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n tabindex=\"-1\"\n ></option>\n</select>\n\n", styles: [":host{display:none}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectNativeSelectComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: MultiSelectNativeSelectComponent, isStandalone: true, selector: "c-multi-select-native-select", inputs: { form: "form", id: "id", multiple: "multiple", name: "name", options: "options", disabled: "disabled" }, ngImport: i0, template: "<select [disabled]=\"disabled\" [id]=\"id\" [multiple]=\"multiple\" [name]=\"name\" style=\"display: none\" tabindex=\"-1\">\n <option\n *ngFor=\"let option of options\"\n [attr.selected]=\"option.selected ? '' : null\"\n [disabled]=\"disabled\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n tabindex=\"-1\"\n ></option>\n</select>\n\n", styles: [":host{display:none}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectNativeSelectComponent, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectNativeSelectComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{ selector: 'c-multi-select-native-select', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgForOf], template: "<select [disabled]=\"disabled\" [id]=\"id\" [multiple]=\"multiple\" [name]=\"name\" style=\"display: none\" tabindex=\"-1\">\n <option\n *ngFor=\"let option of options\"\n [attr.selected]=\"option.selected ? '' : null\"\n [disabled]=\"disabled\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n tabindex=\"-1\"\n ></option>\n</select>\n\n", styles: [":host{display:none}\n"] }]
16
16
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { form: [{
@@ -7,10 +7,10 @@ export class MultiSelectOptgroupLabelComponent {
7
7
  'form-multi-select-optgroup-label': true
8
8
  };
9
9
  }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectOptgroupLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: MultiSelectOptgroupLabelComponent, isStandalone: true, selector: "c-multi-select-optgroup-label", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectOptgroupLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: MultiSelectOptgroupLabelComponent, isStandalone: true, selector: "c-multi-select-optgroup-label", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectOptgroupLabelComponent, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectOptgroupLabelComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{ selector: 'c-multi-select-optgroup-label', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: [":host{display:block}\n"] }]
16
16
  }], ctorParameters: function () { return []; }, propDecorators: { hostClasses: [{
@@ -46,10 +46,10 @@ export class MultiSelectOptgroupComponent {
46
46
  this.visible.set(this.multiSelectOptions?.some(option => option.visible));
47
47
  }), takeUntilDestroyed(this.#destroyRef)).subscribe();
48
48
  }
49
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectOptgroupComponent, deps: [{ token: i1.MultiSelectService }], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: MultiSelectOptgroupComponent, isStandalone: true, selector: "c-multi-select-optgroup", inputs: { label: "label", disabled: "disabled" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "multiSelectOptions", predicate: MultiSelectOptionComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<c-multi-select-optgroup-label *ngIf=\"label && visible()\">{{label}}</c-multi-select-optgroup-label>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: MultiSelectOptgroupLabelComponent, selector: "c-multi-select-optgroup-label" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectOptgroupComponent, deps: [{ token: i1.MultiSelectService }], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: MultiSelectOptgroupComponent, isStandalone: true, selector: "c-multi-select-optgroup", inputs: { label: "label", disabled: "disabled" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "multiSelectOptions", predicate: MultiSelectOptionComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<c-multi-select-optgroup-label *ngIf=\"label && visible()\">{{label}}</c-multi-select-optgroup-label>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: MultiSelectOptgroupLabelComponent, selector: "c-multi-select-optgroup-label" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
51
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectOptgroupComponent, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectOptgroupComponent, decorators: [{
53
53
  type: Component,
54
54
  args: [{ selector: 'c-multi-select-optgroup', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MultiSelectOptgroupLabelComponent, NgIf], template: "<c-multi-select-optgroup-label *ngIf=\"label && visible()\">{{label}}</c-multi-select-optgroup-label>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }]
55
55
  }], ctorParameters: function () { return [{ type: i1.MultiSelectService }]; }, propDecorators: { label: [{
@@ -2,7 +2,7 @@ import { ChangeDetectionStrategy, Component, DestroyRef, effect, EventEmitter, H
2
2
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
3
  import { NgIf } from '@angular/common';
4
4
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
5
- import { filter, tap } from 'rxjs/operators';
5
+ import { distinctUntilChanged, filter, tap } from 'rxjs/operators';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/cdk/a11y";
8
8
  import * as i2 from "../multi-select.service";
@@ -229,10 +229,11 @@ export class MultiSelectOptionComponent {
229
229
  .pipe(takeUntilDestroyed(this.#destroyRef))
230
230
  .subscribe(this.#dropdownVisible.set);
231
231
  this.multiSelectService.multiSelectFocus$
232
- .pipe(takeUntilDestroyed(this.#destroyRef))
233
- .subscribe((option) => {
232
+ .pipe(distinctUntilChanged(), filter(option => this.active !== (this.value === option.value)), tap(option => {
234
233
  this.active = this.value === option.value;
235
- });
234
+ this.changeDetectorRef.markForCheck();
235
+ }), takeUntilDestroyed(this.#destroyRef))
236
+ .subscribe();
236
237
  if (!this.changeDetectorRef.destroyed) {
237
238
  this.multiSelectService.selectionModel.changed
238
239
  .pipe(filter(change => change.added.includes(this.value) || change.removed.includes(this.value)), tap(change => {
@@ -245,10 +246,10 @@ export class MultiSelectOptionComponent {
245
246
  isSelected(value = this.value) {
246
247
  return (this.#selected() || this.multiSelectService.selectionModel?.isSelected(value)) ?? false;
247
248
  }
248
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectOptionComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.MultiSelectService }], target: i0.ɵɵFactoryTarget.Component }); }
249
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: MultiSelectOptionComponent, isStandalone: true, selector: "c-multi-select-option", inputs: { optionsStyle: "optionsStyle", label: "label", text: "text", visible: "visible", disabled: "disabled", selected: "selected", value: "value", active: "active", role: "role" }, outputs: { selectedChange: "selectedChange", focusChange: "focusChange" }, host: { listeners: { "keydown": "onKeyDown($event)", "blur": "onBlur()", "focus": "onFocus()", "keyup": "onKeyUp($event)", "click": "onClick($event)" }, properties: { "role": "this.role", "class": "this.hostClasses", "attr.tabindex": "this.tabIndex", "attr.disabled": "this.ariaDisabled", "attr.aria-disabled": "this.ariaDisabled", "attr.aria-selected": "this.ariaSelected" } }, viewQueries: [{ propertyName: "contentDiv", first: true, predicate: ["contentDiv"], descendants: true }], exportAs: ["cMultiSelectOption"], ngImport: i0, template: "<div #contentDiv>\n <ng-content></ng-content>\n</div>\n<div *ngIf=\"!hasContent\">\n {{text ?? label ?? value}}\n</div>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden}:host.active{border-radius:var(--cui-form-multi-select-option-indicator-border-radius, .375rem);box-shadow:0 0 .125rem 0 var(--cui-gray-400)}:host.focused,:host :focus-visible{box-shadow:0 0 0 .125rem #321fdb40;outline:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectOptionComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.MultiSelectService }], target: i0.ɵɵFactoryTarget.Component }); }
250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: MultiSelectOptionComponent, isStandalone: true, selector: "c-multi-select-option", inputs: { optionsStyle: "optionsStyle", label: "label", text: "text", visible: "visible", disabled: "disabled", selected: "selected", value: "value", active: "active", role: "role" }, outputs: { selectedChange: "selectedChange", focusChange: "focusChange" }, host: { listeners: { "keydown": "onKeyDown($event)", "blur": "onBlur()", "focus": "onFocus()", "keyup": "onKeyUp($event)", "click": "onClick($event)" }, properties: { "role": "this.role", "class": "this.hostClasses", "attr.tabindex": "this.tabIndex", "attr.disabled": "this.ariaDisabled", "attr.aria-disabled": "this.ariaDisabled", "attr.aria-selected": "this.ariaSelected" } }, viewQueries: [{ propertyName: "contentDiv", first: true, predicate: ["contentDiv"], descendants: true }], exportAs: ["cMultiSelectOption"], ngImport: i0, template: "<div #contentDiv>\n <ng-content></ng-content>\n</div>\n<div *ngIf=\"!hasContent\">\n {{text ?? label ?? value}}\n</div>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden}:host.active{border-radius:var(--cui-form-multi-select-option-indicator-border-radius, .375rem);box-shadow:0 0 .125rem 0 var(--cui-gray-400)}:host.focused,:host :focus-visible{box-shadow:0 0 0 .125rem #321fdb40;outline:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
250
251
  }
251
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectOptionComponent, decorators: [{
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectOptionComponent, decorators: [{
252
253
  type: Component,
253
254
  args: [{ selector: 'c-multi-select-option', exportAs: 'cMultiSelectOption', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf], template: "<div #contentDiv>\n <ng-content></ng-content>\n</div>\n<div *ngIf=\"!hasContent\">\n {{text ?? label ?? value}}\n</div>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden}:host.active{border-radius:var(--cui-form-multi-select-option-indicator-border-radius, .375rem);box-shadow:0 0 .125rem 0 var(--cui-gray-400)}:host.focused,:host :focus-visible{box-shadow:0 0 0 .125rem #321fdb40;outline:none}\n"] }]
254
255
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.FocusMonitor }, { type: i2.MultiSelectService }]; }, propDecorators: { optionsStyle: [{
@@ -310,4 +311,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
310
311
  type: HostListener,
311
312
  args: ['click', ['$event']]
312
313
  }] } });
313
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LW9wdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3Qtb3B0aW9uL211bHRpLXNlbGVjdC1vcHRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9tdWx0aS1zZWxlY3QvbXVsdGktc2VsZWN0LW9wdGlvbi9tdWx0aS1zZWxlY3Qtb3B0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBRU4sWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsRUFHVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTVFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFhN0MsTUFBTSxPQUFPLDBCQUEwQjtJQUU1QixXQUFXLENBQXNCO0lBRTFDLFlBQ2tCLFVBQXNCLEVBQ3JCLGlCQUFvQyxFQUNwQyxZQUEwQixFQUMxQixrQkFBc0M7UUFIdkMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFOaEQsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFhMUM7Ozs7V0FJRztRQUNNLGlCQUFZLEdBQTBCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUE4QnBGLGFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFnQnhCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUF3QmxCLGNBQVMsR0FBRyxNQUFNLENBQXNCLFNBQVMsQ0FBQyxDQUFDO1FBRW5ELG9CQUFlLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUM1QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLEVBQUU7Z0JBQ3JELFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzSCxJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUg7OztXQUdHO1FBQ2dCLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQWtCaEUsV0FBTSxHQUF3QixNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFHekMsZUFBVSxHQUFHLElBQUksQ0FBQztRQUV6QixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFjakMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV4QixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO1FBRUgsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVFLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQThCLENBQUM7UUFpQ2hGLGNBQVMsR0FBVyxDQUFDLENBQUMsQ0FBQztRQW1CdkIsa0JBQWEsR0FBd0IsU0FBUyxDQUFDO0lBbk01QyxDQUFDO0lBMkJKOzs7O09BSUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxLQUFjO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRLENBQWdCO0lBRXhCOzs7O09BSUc7SUFDSCxJQUNJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsU0FBUyxDQUFTO0lBRWxCOzs7O09BSUc7SUFDSCxJQUNJLFFBQVEsQ0FBQyxLQUE0QjtRQUN2QyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDdkIsTUFBTSxRQUFRLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssUUFBUSxFQUFFO2dCQUNqQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0IsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRTtvQkFDNUIsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDdEk7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxTQUFTLENBQTBDO0lBRW5ELGVBQWUsQ0FTWjtJQVFIOzs7O09BSUc7SUFDSCxJQUNJLEtBQUssQ0FBQyxLQUFhO1FBQ3JCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLEtBQUssRUFBRTtZQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsTUFBTSxDQUEwQztJQUtoRCxnQkFBZ0IsQ0FBaUI7SUFFakMsSUFDSSxNQUFNLENBQUMsS0FBNEI7UUFDckMsTUFBTSxNQUFNLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUNqRixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRCxPQUFPLENBQWlCO0lBRXhCLGFBQWEsQ0FFVjtJQUVILFFBQVEsQ0FBUztJQUlqQixJQUVZLElBQUk7UUFDZCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLDBCQUEwQixFQUFFLElBQUk7WUFDaEMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN2QyxDQUFDLGlDQUFpQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFDM0UsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDMUIsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdEIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3ZCLENBQUM7SUFDSixDQUFDO0lBRUQsSUFDWSxRQUFRO1FBQ2xCLGtEQUFrRDtRQUNsRCxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsSUFBWSxRQUFRLENBQUMsUUFBUTtRQUMzQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUyxDQUFjO0lBRXZCLElBRVksWUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUNZLFlBQVk7UUFDdEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFZLFlBQVksQ0FBQyxRQUFRO1FBQy9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsSUFBSSxTQUFTLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYSxDQUFrQztJQUcvQyxTQUFTLENBQUMsTUFBcUI7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUdPLE1BQU07UUFDWixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBR08sT0FBTztRQUNiLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7SUFHTyxPQUFPLENBQUMsTUFBcUI7UUFDbkMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsRUFBRTtZQUMzQixJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzVDLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO2dCQUNsQyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDckUsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN4QjtTQUNGO0lBQ0gsQ0FBQztJQUdPLE9BQU8sQ0FBQyxNQUFrQjtRQUNoQyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3JFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELGVBQWU7UUFFYixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUV4QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUNyRSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3ZDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQzNCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDckgsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxLQUFLLENBQUM7U0FDdEQ7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxLQUFLLENBQUM7U0FDekM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxLQUFLLENBQUM7U0FDMUM7UUFFRCxJQUFJLENBQUUsSUFBSSxDQUFDLGlCQUE2QixDQUFDLFNBQVMsRUFBRTtZQUNsRCxxQkFBcUI7WUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEMsTUFBTTtTQUNQO0lBRUgsQ0FBQztJQUVELHlGQUF5RjtJQUN6RixRQUFRO1FBQ04sT0FBZSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBc0IsU0FBUztRQUNuQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUM3QyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUM1RixJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFTyxnQkFBZ0I7UUFFdEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQjthQUN4QyxJQUFJLENBQ0gsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUNyQzthQUNBLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQjthQUN0QyxJQUFJLENBQ0gsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUNyQzthQUNBLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO1FBRUwsSUFBSSxDQUFFLElBQUksQ0FBQyxpQkFBNkIsQ0FBQyxTQUFTLEVBQUU7WUFDbEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxPQUFPO2lCQUMzQyxJQUFJLENBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUMxRixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN4QyxDQUFDLENBQUMsRUFDRixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3JDO2lCQUNBLFNBQVMsRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUs7UUFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUNsRyxDQUFDOzhHQXBVVSwwQkFBMEI7a0dBQTFCLDBCQUEwQiwyMUJDcEN2Qyw2SEFNQSw2WEQ0QlksSUFBSTs7MkZBRUgsMEJBQTBCO2tCQVR0QyxTQUFTOytCQUNFLHVCQUF1QixZQUd2QixvQkFBb0IsbUJBQ2IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLENBQUM7NkxBc0JOLFlBQVk7c0JBQXBCLEtBQUs7Z0JBT0csS0FBSztzQkFBYixLQUFLO2dCQU9HLElBQUk7c0JBQVosS0FBSztnQkFRRixPQUFPO3NCQURWLEtBQUs7Z0JBaUJGLFFBQVE7c0JBRFgsS0FBSztnQkFpQkYsUUFBUTtzQkFEWCxLQUFLO2dCQWtDYSxjQUFjO3NCQUFoQyxNQUFNO2dCQVFILEtBQUs7c0JBRFIsS0FBSztnQkFhMkIsVUFBVTtzQkFBMUMsU0FBUzt1QkFBQyxZQUFZO2dCQU1uQixNQUFNO3NCQURULEtBQUs7Z0JBb0JhLFdBQVc7c0JBQTdCLE1BQU07Z0JBSUssSUFBSTtzQkFGZixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLE1BQU07Z0JBTWYsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU87Z0JBY1IsUUFBUTtzQkFEbkIsV0FBVzt1QkFBQyxlQUFlO2dCQWdCaEIsWUFBWTtzQkFGdkIsV0FBVzt1QkFBQyxlQUFlOztzQkFDM0IsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBTXJCLFlBQVk7c0JBRHZCLFdBQVc7dUJBQUMsb0JBQW9CO2dCQWNqQyxTQUFTO3NCQURSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVczQixNQUFNO3NCQURiLFlBQVk7dUJBQUMsTUFBTTtnQkFNWixPQUFPO3NCQURkLFlBQVk7dUJBQUMsT0FBTztnQkFNYixPQUFPO3NCQURkLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWF6QixPQUFPO3NCQURkLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIGVmZmVjdCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIHNpZ25hbCxcbiAgVmlld0NoaWxkLFxuICBWaWV3UmVmLFxuICBXcml0YWJsZVNpZ25hbFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uLCBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgZmlsdGVyLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE11bHRpU2VsZWN0U2VydmljZSB9IGZyb20gJy4uL211bHRpLXNlbGVjdC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1tdWx0aS1zZWxlY3Qtb3B0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL211bHRpLXNlbGVjdC1vcHRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tdWx0aS1zZWxlY3Qtb3B0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGV4cG9ydEFzOiAnY011bHRpU2VsZWN0T3B0aW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmXVxufSlcbmV4cG9ydCBjbGFzcyBNdWx0aVNlbGVjdE9wdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIEZvY3VzYWJsZU9wdGlvbiB7XG5cbiAgcmVhZG9ubHkgI2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG11bHRpU2VsZWN0U2VydmljZTogTXVsdGlTZWxlY3RTZXJ2aWNlXG4gICkge31cblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NlbGVjdGVkOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92aXNpYmxlOiBCb29sZWFuSW5wdXQ7XG5cbiAgLyoqXG4gICAqIE9wdGlvbiBzdHlsZVxuICAgKiBAdHlwZSAoJ2NoZWNrYm94JyB8ICd0ZXh0JylcbiAgICogQGRlZmF1bHQgJ2NoZWNrYm94J1xuICAgKi9cbiAgQElucHV0KCkgb3B0aW9uc1N0eWxlOiAoJ2NoZWNrYm94JyB8ICd0ZXh0JykgPSB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5vcHRpb25zU3R5bGU7XG5cbiAgLyoqXG4gICAqIE9wdGlvbiBsYWJlbFxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBASW5wdXQoKSBsYWJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uIGlubmVyIHRleHRcbiAgICogQHR5cGUgc3RyaW5nXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgdGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uIHZpc2libGUuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLiN2aXNpYmxlLnNldChjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpKTtcbiAgfVxuXG4gIGdldCB2aXNpYmxlKCkge1xuICAgIHJldHVybiB0aGlzLiN2aXNpYmxlKCk7XG4gIH1cblxuICAjdmlzaWJsZSA9IHNpZ25hbCh0cnVlKTtcblxuICAvKipcbiAgICogT3B0aW9uIGRpc2FibGVkLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLiNkaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2Rpc2FibGVkO1xuICB9XG5cbiAgI2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIE9wdGlvbiBzZWxlY3RlZC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHNlbGVjdGVkKHZhbHVlOiAoYm9vbGVhbiB8IHVuZGVmaW5lZCkpIHtcbiAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgICAgaWYgKHRoaXMuI3NlbGVjdGVkKCkgIT09IHNlbGVjdGVkKSB7XG4gICAgICAgIHRoaXMuI3NlbGVjdGVkLnNldChzZWxlY3RlZCk7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzZWxlY3RlZCA/IHRoaXMubXVsdGlTZWxlY3RTZXJ2aWNlLnNlbGVjdGlvbk1vZGVsPy5zZWxlY3QodGhpcy52YWx1ZSkgOiB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5zZWxlY3Rpb25Nb2RlbD8uZGVzZWxlY3QodGhpcy52YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgc2VsZWN0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3NlbGVjdGVkKCk7XG4gIH1cblxuICAjc2VsZWN0ZWQgPSBzaWduYWw8Ym9vbGVhbiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICAjc2VsZWN0ZWRFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy4jdmFsdWUoKTtcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuI3NlbGVjdGVkKCk7XG4gICAgaWYgKCh2YWx1ZSAhPT0gdW5kZWZpbmVkKSAmJiAoc2VsZWN0ZWQgIT09IHVuZGVmaW5lZCkpIHtcbiAgICAgIHNlbGVjdGVkID8gdGhpcy5tdWx0aVNlbGVjdFNlcnZpY2Uuc2VsZWN0aW9uTW9kZWw/LnNlbGVjdCh2YWx1ZSkgOiB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5zZWxlY3Rpb25Nb2RlbD8uZGVzZWxlY3QodmFsdWUpO1xuICAgICAgdGhpcy5hcmlhU2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdChzZWxlY3RlZCk7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfSk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIG9wdGlvbiBzZWxlY3RlZCBjaGFuZ2VcbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIC8qKlxuICAgKiBPcHRpb24gdmFsdWUuXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuI3ZhbHVlKCkgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLiN2YWx1ZS5zZXQodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy4jdmFsdWUoKTtcbiAgfVxuXG4gICN2YWx1ZTogV3JpdGFibGVTaWduYWw8YW55PiA9IHNpZ25hbCh1bmRlZmluZWQpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnREaXYnKSBwcml2YXRlIGNvbnRlbnREaXY/OiBFbGVtZW50UmVmO1xuICBwdWJsaWMgaGFzQ29udGVudCA9IHRydWU7XG5cbiAgI2Ryb3Bkb3duVmlzaWJsZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2ZSh2YWx1ZTogKGJvb2xlYW4gfCB1bmRlZmluZWQpKSB7XG4gICAgY29uc3QgYWN0aXZlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKSAmJiB0aGlzLiN2aXNpYmxlKCkgJiYgIXRoaXMuZGlzYWJsZWQ7XG4gICAgaWYgKHRoaXMuI2FjdGl2ZSgpICE9PSBhY3RpdmUpIHtcbiAgICAgIHRoaXMuI2FjdGl2ZS5zZXQoYWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICBnZXQgYWN0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLiNhY3RpdmUoKSAmJiB0aGlzLiN2aXNpYmxlKCk7XG4gIH1cblxuICAjYWN0aXZlID0gc2lnbmFsKGZhbHNlKTtcblxuICAjYWN0aXZlRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLnRhYkluZGV4ID0gdGhpcy4jYWN0aXZlKCkgJiYgdGhpcy4jdmlzaWJsZSgpID8gMCA6IC0xO1xuICB9KTtcblxuICAjZm9jdXNlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBmb2N1c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TXVsdGlTZWxlY3RPcHRpb25Db21wb25lbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdyb2xlJylcbiAgcHJpdmF0ZSBnZXQgcm9sZSgpIHtcbiAgICByZXR1cm4gJ29wdGlvbic7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCkge1xuICAgIHJldHVybiB7XG4gICAgICAnZm9ybS1tdWx0aS1zZWxlY3Qtb3B0aW9uJzogdHJ1ZSxcbiAgICAgICdmb3JtLW11bHRpLXNlbGVjdGVkJzogdGhpcy4jc2VsZWN0ZWQoKSxcbiAgICAgIFtgZm9ybS1tdWx0aS1zZWxlY3Qtb3B0aW9uLXdpdGgtJHt0aGlzLm9wdGlvbnNTdHlsZX1gXTogISF0aGlzLm9wdGlvbnNTdHlsZSxcbiAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgJ2Qtbm9uZSc6ICF0aGlzLiN2aXNpYmxlKCksXG4gICAgICBhY3RpdmU6IHRoaXMuI2FjdGl2ZSgpLFxuICAgICAgZm9jdXNlZDogdGhpcy4jZm9jdXNlZFxuICAgIH07XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKVxuICBwcml2YXRlIGdldCB0YWJJbmRleCgpIHtcbiAgICAvLyByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5fYWN0aXZlID8gLTEgOiAwO1xuICAgIHJldHVybiAodGhpcy5kaXNhYmxlZCB8fCAhdGhpcy4jdmlzaWJsZSgpKSA/IC0xIDogdGhpcy4jdGFiSW5kZXg7XG4gIH1cblxuICBwcml2YXRlIHNldCB0YWJJbmRleCh0YWJpbmRleCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy4jdGFiSW5kZXggPSB0YWJpbmRleDtcbiAgICB9KTtcbiAgfVxuXG4gICN0YWJJbmRleDogbnVtYmVyID0gLTE7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRpc2FibGVkJylcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtZGlzYWJsZWQnKVxuICBwcml2YXRlIGdldCBhcmlhRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgfHwgbnVsbDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLXNlbGVjdGVkJylcbiAgcHJpdmF0ZSBnZXQgYXJpYVNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLiNhcmlhU2VsZWN0ZWQ7XG4gIH1cblxuICBwcml2YXRlIHNldCBhcmlhU2VsZWN0ZWQoc2VsZWN0ZWQpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuI2FyaWFTZWxlY3RlZCA9IHNlbGVjdGVkIHx8IHVuZGVmaW5lZDtcbiAgICB9KTtcbiAgfVxuXG4gICNhcmlhU2VsZWN0ZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIG9uS2V5RG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoWydTcGFjZSddLmluY2x1ZGVzKCRldmVudC5jb2RlKSkge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIGlmIChbJ1RhYiddLmluY2x1ZGVzKCRldmVudC5jb2RlKSkge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXG4gIHByaXZhdGUgb25CbHVyKCkge1xuICAgIHRoaXMuI2ZvY3VzZWQgPSBmYWxzZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcbiAgcHJpdmF0ZSBvbkZvY3VzKCkge1xuICAgIHRoaXMuI2ZvY3VzZWQgPSB0cnVlO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICBwcml2YXRlIG9uS2V5VXAoJGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2Ryb3Bkb3duVmlzaWJsZSgpKSB7XG4gICAgICBpZiAoWydFbnRlcicsICdTcGFjZSddLmluY2x1ZGVzKCRldmVudC5jb2RlKSkge1xuICAgICAgICAkZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5kaXNhYmxlZCA/IHRoaXMuI3NlbGVjdGVkKCkgOiAhdGhpcy4jc2VsZWN0ZWQoKTtcbiAgICAgICAgdGhpcy5mb2N1cygna2V5Ym9hcmQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHByaXZhdGUgb25DbGljaygkZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMuZGlzYWJsZWQgPyB0aGlzLiNzZWxlY3RlZCgpIDogIXRoaXMuI3NlbGVjdGVkKCk7XG4gICAgdGhpcy5mb2N1cygnbW91c2UnKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIHRoaXMuc2V0U3Vic2NyaXB0aW9ucygpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmhhc0NvbnRlbnQgPSAhIXRoaXMuY29udGVudERpdj8ubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzLmxlbmd0aDtcbiAgICAgIGlmICghdGhpcy5oYXNDb250ZW50KSB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy50ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGlubmVyVGV4dCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50LnRyaW0oKSB8fCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pbm5lclRleHQudHJpbSgpO1xuICAgICAgdGhpcy50ZXh0ID0gaW5uZXJUZXh0IHx8IHRoaXMudmFsdWU/LnRyaW0oKSB8fCAnLi4uJztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sYWJlbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmxhYmVsID0gdGhpcy50ZXh0Py50cmltKCkgfHwgJy4uLic7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMubGFiZWw/LnRyaW0oKSB8fCAnLi4uJztcbiAgICB9XG5cbiAgICBpZiAoISh0aGlzLmNoYW5nZURldGVjdG9yUmVmIGFzIFZpZXdSZWYpLmRlc3Ryb3llZCkge1xuICAgICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5pc1NlbGVjdGVkKHRoaXMudmFsdWUpO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIC8vIH0pO1xuICAgIH1cblxuICB9XG5cbiAgLyoqIEdldCB0aGUgbGFiZWwgZm9yIHRoaXMgZWxlbWVudCB3aGljaCBpcyByZXF1aXJlZCBieSB0aGUgRm9jdXNhYmxlT3B0aW9uIGludGVyZmFjZS4gKi9cbiAgZ2V0TGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gPHN0cmluZz4odGhpcy5sYWJlbCA/PyB0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGZvY3VzKG9yaWdpbjogRm9jdXNPcmlnaW4gPSAncHJvZ3JhbScpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jZHJvcGRvd25WaXNpYmxlKCkgJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZm9jdXNNb25pdG9yLmZvY3VzVmlhKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBvcmlnaW4sIHsgcHJldmVudFNjcm9sbDogZmFsc2UgfSk7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5mb2N1c0NoYW5nZSh0aGlzKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB0aGlzLmZvY3VzQ2hhbmdlLmVtaXQodGhpcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRTdWJzY3JpcHRpb25zKCkge1xuXG4gICAgdGhpcy5tdWx0aVNlbGVjdFNlcnZpY2UubXVsdGlTZWxlY3RWaXNpYmxlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLiNkZXN0cm95UmVmKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLiNkcm9wZG93blZpc2libGUuc2V0KTtcblxuICAgIHRoaXMubXVsdGlTZWxlY3RTZXJ2aWNlLm11bHRpU2VsZWN0Rm9jdXMkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuI2Rlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChvcHRpb24pID0+IHtcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLnZhbHVlID09PSBvcHRpb24udmFsdWU7XG4gICAgICB9KTtcblxuICAgIGlmICghKHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYgYXMgVmlld1JlZikuZGVzdHJveWVkKSB7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5zZWxlY3Rpb25Nb2RlbC5jaGFuZ2VkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIGZpbHRlcihjaGFuZ2UgPT4gY2hhbmdlLmFkZGVkLmluY2x1ZGVzKHRoaXMudmFsdWUpIHx8IGNoYW5nZS5yZW1vdmVkLmluY2x1ZGVzKHRoaXMudmFsdWUpKSxcbiAgICAgICAgICB0YXAoY2hhbmdlID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBjaGFuZ2UuYWRkZWQuaW5jbHVkZXModGhpcy52YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLiNkZXN0cm95UmVmKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBpc1NlbGVjdGVkKHZhbHVlID0gdGhpcy52YWx1ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy4jc2VsZWN0ZWQoKSB8fCB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5zZWxlY3Rpb25Nb2RlbD8uaXNTZWxlY3RlZCh2YWx1ZSkpID8/IGZhbHNlO1xuICB9XG59XG4iLCI8ZGl2ICNjb250ZW50RGl2PlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbjxkaXYgKm5nSWY9XCIhaGFzQ29udGVudFwiPlxuICB7e3RleHQgPz8gbGFiZWwgPz8gdmFsdWV9fVxuPC9kaXY+XG4iXX0=
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LW9wdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3Qtb3B0aW9uL211bHRpLXNlbGVjdC1vcHRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9tdWx0aS1zZWxlY3QvbXVsdGktc2VsZWN0LW9wdGlvbi9tdWx0aS1zZWxlY3Qtb3B0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBRU4sWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsRUFHVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTVFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFhbkUsTUFBTSxPQUFPLDBCQUEwQjtJQUU1QixXQUFXLENBQXNCO0lBRTFDLFlBQ2tCLFVBQXNCLEVBQ3JCLGlCQUFvQyxFQUNwQyxZQUEwQixFQUMxQixrQkFBc0M7UUFIdkMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHVCQUFrQixHQUFsQixr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QUM7Z0JBYXpCLE9BQU87c0JBRGQsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgc2lnbmFsLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdSZWYsXG4gIFdyaXRhYmxlU2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBGb2N1c2FibGVPcHRpb24sIEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE11bHRpU2VsZWN0U2VydmljZSB9IGZyb20gJy4uL211bHRpLXNlbGVjdC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1tdWx0aS1zZWxlY3Qtb3B0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL211bHRpLXNlbGVjdC1vcHRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tdWx0aS1zZWxlY3Qtb3B0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGV4cG9ydEFzOiAnY011bHRpU2VsZWN0T3B0aW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmXVxufSlcbmV4cG9ydCBjbGFzcyBNdWx0aVNlbGVjdE9wdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIEZvY3VzYWJsZU9wdGlvbiB7XG5cbiAgcmVhZG9ubHkgI2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG11bHRpU2VsZWN0U2VydmljZTogTXVsdGlTZWxlY3RTZXJ2aWNlXG4gICkge31cblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NlbGVjdGVkOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92aXNpYmxlOiBCb29sZWFuSW5wdXQ7XG5cbiAgLyoqXG4gICAqIE9wdGlvbiBzdHlsZVxuICAgKiBAdHlwZSAoJ2NoZWNrYm94JyB8ICd0ZXh0JylcbiAgICogQGRlZmF1bHQgJ2NoZWNrYm94J1xuICAgKi9cbiAgQElucHV0KCkgb3B0aW9uc1N0eWxlOiAoJ2NoZWNrYm94JyB8ICd0ZXh0JykgPSB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5vcHRpb25zU3R5bGU7XG5cbiAgLyoqXG4gICAqIE9wdGlvbiBsYWJlbFxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBASW5wdXQoKSBsYWJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uIGlubmVyIHRleHRcbiAgICogQHR5cGUgc3RyaW5nXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgdGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uIHZpc2libGUuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLiN2aXNpYmxlLnNldChjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpKTtcbiAgfVxuXG4gIGdldCB2aXNpYmxlKCkge1xuICAgIHJldHVybiB0aGlzLiN2aXNpYmxlKCk7XG4gIH1cblxuICAjdmlzaWJsZSA9IHNpZ25hbCh0cnVlKTtcblxuICAvKipcbiAgICogT3B0aW9uIGRpc2FibGVkLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLiNkaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2Rpc2FibGVkO1xuICB9XG5cbiAgI2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIE9wdGlvbiBzZWxlY3RlZC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHNlbGVjdGVkKHZhbHVlOiAoYm9vbGVhbiB8IHVuZGVmaW5lZCkpIHtcbiAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgICAgaWYgKHRoaXMuI3NlbGVjdGVkKCkgIT09IHNlbGVjdGVkKSB7XG4gICAgICAgIHRoaXMuI3NlbGVjdGVkLnNldChzZWxlY3RlZCk7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzZWxlY3RlZCA/IHRoaXMubXVsdGlTZWxlY3RTZXJ2aWNlLnNlbGVjdGlvbk1vZGVsPy5zZWxlY3QodGhpcy52YWx1ZSkgOiB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5zZWxlY3Rpb25Nb2RlbD8uZGVzZWxlY3QodGhpcy52YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgc2VsZWN0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3NlbGVjdGVkKCk7XG4gIH1cblxuICAjc2VsZWN0ZWQgPSBzaWduYWw8Ym9vbGVhbiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICAjc2VsZWN0ZWRFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy4jdmFsdWUoKTtcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuI3NlbGVjdGVkKCk7XG4gICAgaWYgKCh2YWx1ZSAhPT0gdW5kZWZpbmVkKSAmJiAoc2VsZWN0ZWQgIT09IHVuZGVmaW5lZCkpIHtcbiAgICAgIHNlbGVjdGVkID8gdGhpcy5tdWx0aVNlbGVjdFNlcnZpY2Uuc2VsZWN0aW9uTW9kZWw/LnNlbGVjdCh2YWx1ZSkgOiB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5zZWxlY3Rpb25Nb2RlbD8uZGVzZWxlY3QodmFsdWUpO1xuICAgICAgdGhpcy5hcmlhU2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdChzZWxlY3RlZCk7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfSk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIG9wdGlvbiBzZWxlY3RlZCBjaGFuZ2VcbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIC8qKlxuICAgKiBPcHRpb24gdmFsdWUuXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuI3ZhbHVlKCkgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLiN2YWx1ZS5zZXQodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy4jdmFsdWUoKTtcbiAgfVxuXG4gICN2YWx1ZTogV3JpdGFibGVTaWduYWw8YW55PiA9IHNpZ25hbCh1bmRlZmluZWQpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnREaXYnKSBwcml2YXRlIGNvbnRlbnREaXY/OiBFbGVtZW50UmVmO1xuICBwdWJsaWMgaGFzQ29udGVudCA9IHRydWU7XG5cbiAgI2Ryb3Bkb3duVmlzaWJsZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2ZSh2YWx1ZTogKGJvb2xlYW4gfCB1bmRlZmluZWQpKSB7XG4gICAgY29uc3QgYWN0aXZlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKSAmJiB0aGlzLiN2aXNpYmxlKCkgJiYgIXRoaXMuZGlzYWJsZWQ7XG4gICAgaWYgKHRoaXMuI2FjdGl2ZSgpICE9PSBhY3RpdmUpIHtcbiAgICAgIHRoaXMuI2FjdGl2ZS5zZXQoYWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICBnZXQgYWN0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLiNhY3RpdmUoKSAmJiB0aGlzLiN2aXNpYmxlKCk7XG4gIH1cblxuICAjYWN0aXZlID0gc2lnbmFsKGZhbHNlKTtcblxuICAjYWN0aXZlRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLnRhYkluZGV4ID0gdGhpcy4jYWN0aXZlKCkgJiYgdGhpcy4jdmlzaWJsZSgpID8gMCA6IC0xO1xuICB9KTtcblxuICAjZm9jdXNlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBmb2N1c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TXVsdGlTZWxlY3RPcHRpb25Db21wb25lbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdyb2xlJylcbiAgcHJpdmF0ZSBnZXQgcm9sZSgpIHtcbiAgICByZXR1cm4gJ29wdGlvbic7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCkge1xuICAgIHJldHVybiB7XG4gICAgICAnZm9ybS1tdWx0aS1zZWxlY3Qtb3B0aW9uJzogdHJ1ZSxcbiAgICAgICdmb3JtLW11bHRpLXNlbGVjdGVkJzogdGhpcy4jc2VsZWN0ZWQoKSxcbiAgICAgIFtgZm9ybS1tdWx0aS1zZWxlY3Qtb3B0aW9uLXdpdGgtJHt0aGlzLm9wdGlvbnNTdHlsZX1gXTogISF0aGlzLm9wdGlvbnNTdHlsZSxcbiAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgJ2Qtbm9uZSc6ICF0aGlzLiN2aXNpYmxlKCksXG4gICAgICBhY3RpdmU6IHRoaXMuI2FjdGl2ZSgpLFxuICAgICAgZm9jdXNlZDogdGhpcy4jZm9jdXNlZFxuICAgIH07XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKVxuICBwcml2YXRlIGdldCB0YWJJbmRleCgpIHtcbiAgICAvLyByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5fYWN0aXZlID8gLTEgOiAwO1xuICAgIHJldHVybiAodGhpcy5kaXNhYmxlZCB8fCAhdGhpcy4jdmlzaWJsZSgpKSA/IC0xIDogdGhpcy4jdGFiSW5kZXg7XG4gIH1cblxuICBwcml2YXRlIHNldCB0YWJJbmRleCh0YWJpbmRleCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy4jdGFiSW5kZXggPSB0YWJpbmRleDtcbiAgICB9KTtcbiAgfVxuXG4gICN0YWJJbmRleDogbnVtYmVyID0gLTE7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRpc2FibGVkJylcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtZGlzYWJsZWQnKVxuICBwcml2YXRlIGdldCBhcmlhRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgfHwgbnVsbDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLXNlbGVjdGVkJylcbiAgcHJpdmF0ZSBnZXQgYXJpYVNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLiNhcmlhU2VsZWN0ZWQ7XG4gIH1cblxuICBwcml2YXRlIHNldCBhcmlhU2VsZWN0ZWQoc2VsZWN0ZWQpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuI2FyaWFTZWxlY3RlZCA9IHNlbGVjdGVkIHx8IHVuZGVmaW5lZDtcbiAgICB9KTtcbiAgfVxuXG4gICNhcmlhU2VsZWN0ZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIG9uS2V5RG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoWydTcGFjZSddLmluY2x1ZGVzKCRldmVudC5jb2RlKSkge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIGlmIChbJ1RhYiddLmluY2x1ZGVzKCRldmVudC5jb2RlKSkge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXG4gIHByaXZhdGUgb25CbHVyKCkge1xuICAgIHRoaXMuI2ZvY3VzZWQgPSBmYWxzZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcbiAgcHJpdmF0ZSBvbkZvY3VzKCkge1xuICAgIHRoaXMuI2ZvY3VzZWQgPSB0cnVlO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICBwcml2YXRlIG9uS2V5VXAoJGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2Ryb3Bkb3duVmlzaWJsZSgpKSB7XG4gICAgICBpZiAoWydFbnRlcicsICdTcGFjZSddLmluY2x1ZGVzKCRldmVudC5jb2RlKSkge1xuICAgICAgICAkZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5kaXNhYmxlZCA/IHRoaXMuI3NlbGVjdGVkKCkgOiAhdGhpcy4jc2VsZWN0ZWQoKTtcbiAgICAgICAgdGhpcy5mb2N1cygna2V5Ym9hcmQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHByaXZhdGUgb25DbGljaygkZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMuZGlzYWJsZWQgPyB0aGlzLiNzZWxlY3RlZCgpIDogIXRoaXMuI3NlbGVjdGVkKCk7XG4gICAgdGhpcy5mb2N1cygnbW91c2UnKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIHRoaXMuc2V0U3Vic2NyaXB0aW9ucygpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmhhc0NvbnRlbnQgPSAhIXRoaXMuY29udGVudERpdj8ubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzLmxlbmd0aDtcbiAgICAgIGlmICghdGhpcy5oYXNDb250ZW50KSB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy50ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGlubmVyVGV4dCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50LnRyaW0oKSB8fCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pbm5lclRleHQudHJpbSgpO1xuICAgICAgdGhpcy50ZXh0ID0gaW5uZXJUZXh0IHx8IHRoaXMudmFsdWU/LnRyaW0oKSB8fCAnLi4uJztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sYWJlbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmxhYmVsID0gdGhpcy50ZXh0Py50cmltKCkgfHwgJy4uLic7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMubGFiZWw/LnRyaW0oKSB8fCAnLi4uJztcbiAgICB9XG5cbiAgICBpZiAoISh0aGlzLmNoYW5nZURldGVjdG9yUmVmIGFzIFZpZXdSZWYpLmRlc3Ryb3llZCkge1xuICAgICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5pc1NlbGVjdGVkKHRoaXMudmFsdWUpO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIC8vIH0pO1xuICAgIH1cblxuICB9XG5cbiAgLyoqIEdldCB0aGUgbGFiZWwgZm9yIHRoaXMgZWxlbWVudCB3aGljaCBpcyByZXF1aXJlZCBieSB0aGUgRm9jdXNhYmxlT3B0aW9uIGludGVyZmFjZS4gKi9cbiAgZ2V0TGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gPHN0cmluZz4odGhpcy5sYWJlbCA/PyB0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGZvY3VzKG9yaWdpbjogRm9jdXNPcmlnaW4gPSAncHJvZ3JhbScpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jZHJvcGRvd25WaXNpYmxlKCkgJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZm9jdXNNb25pdG9yLmZvY3VzVmlhKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBvcmlnaW4sIHsgcHJldmVudFNjcm9sbDogZmFsc2UgfSk7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VydmljZS5mb2N1c0NoYW5nZSh0aGlzKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB0aGlzLmZvY3VzQ2hhbmdlLmVtaXQodGhpcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRTdWJzY3JpcHRpb25zKCkge1xuXG4gICAgdGhpcy5tdWx0aVNlbGVjdFNlcnZpY2UubXVsdGlTZWxlY3RWaXNpYmxlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLiNkZXN0cm95UmVmKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLiNkcm9wZG93blZpc2libGUuc2V0KTtcblxuICAgIHRoaXMubXVsdGlTZWxlY3RTZXJ2aWNlLm11bHRpU2VsZWN0Rm9jdXMkXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgZmlsdGVyKG9wdGlvbiA9PiB0aGlzLmFjdGl2ZSAhPT0gKHRoaXMudmFsdWUgPT09IG9wdGlvbi52YWx1ZSkpLFxuICAgICAgICB0YXAob3B0aW9uID0+IHtcbiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IHRoaXMudmFsdWUgPT09IG9wdGlvbi52YWx1ZTtcbiAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuI2Rlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG5cbiAgICBpZiAoISh0aGlzLmNoYW5nZURldGVjdG9yUmVmIGFzIFZpZXdSZWYpLmRlc3Ryb3llZCkge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlcnZpY2Uuc2VsZWN0aW9uTW9kZWwuY2hhbmdlZFxuICAgICAgICAucGlwZShcbiAgICAgICAgICBmaWx0ZXIoY2hhbmdlID0+IGNoYW5nZS5hZGRlZC5pbmNsdWRlcyh0aGlzLnZhbHVlKSB8fCBjaGFuZ2UucmVtb3ZlZC5pbmNsdWRlcyh0aGlzLnZhbHVlKSksXG4gICAgICAgICAgdGFwKGNoYW5nZSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gY2hhbmdlLmFkZGVkLmluY2x1ZGVzKHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZilcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgaXNTZWxlY3RlZCh2YWx1ZSA9IHRoaXMudmFsdWUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKHRoaXMuI3NlbGVjdGVkKCkgfHwgdGhpcy5tdWx0aVNlbGVjdFNlcnZpY2Uuc2VsZWN0aW9uTW9kZWw/LmlzU2VsZWN0ZWQodmFsdWUpKSA/PyBmYWxzZTtcbiAgfVxufVxuIiwiPGRpdiAjY29udGVudERpdj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48ZGl2ICpuZ0lmPVwiIWhhc0NvbnRlbnRcIj5cbiAge3t0ZXh0ID8/IGxhYmVsID8/IHZhbHVlfX1cbjwvZGl2PlxuIl19
@@ -20,10 +20,10 @@ export class MultiSelectTagComponent {
20
20
  this.remove.emit(this.value);
21
21
  }
22
22
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectTagComponent, deps: [{ token: i1.MultiSelectService }], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: MultiSelectTagComponent, isStandalone: true, selector: "c-multi-select-tag", inputs: { option: "option", disabled: "disabled", label: "label", value: "value" }, outputs: { remove: "remove" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "{{label ?? value ?? '???'}}\n<button (click)=\"handleRemove($event)\" *ngIf=\"!disabled\"\n [disabled]=\"((multiselectVisible$ | async) ?? true) === false\" aria-label=\"Clear\"\n class=\"form-multi-select-tag-delete close\" type=\"button\">\n <span aria-hidden=\"true\">\u00D7</span>\n</button>\n", styles: [":host .btn-xs{padding-left:.125rem;padding-right:.125rem;font-size:.575rem;border-radius:.2rem}:host.form-multi-select-tag{-webkit-user-select:none;user-select:none;pointer-events:all}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectTagComponent, deps: [{ token: i1.MultiSelectService }], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: MultiSelectTagComponent, isStandalone: true, selector: "c-multi-select-tag", inputs: { option: "option", disabled: "disabled", label: "label", value: "value" }, outputs: { remove: "remove" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "{{label ?? value ?? '???'}}\n<button (click)=\"handleRemove($event)\" *ngIf=\"!disabled\"\n [disabled]=\"((multiselectVisible$ | async) ?? true) === false\" aria-label=\"Clear\"\n class=\"form-multi-select-tag-delete close\" type=\"button\">\n <span aria-hidden=\"true\">\u00D7</span>\n</button>\n", styles: [":host .btn-xs{padding-left:.125rem;padding-right:.125rem;font-size:.575rem;border-radius:.2rem}:host.form-multi-select-tag{-webkit-user-select:none;user-select:none;pointer-events:all}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectTagComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectTagComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{ selector: 'c-multi-select-tag', standalone: true, imports: [NgIf, AsyncPipe], template: "{{label ?? value ?? '???'}}\n<button (click)=\"handleRemove($event)\" *ngIf=\"!disabled\"\n [disabled]=\"((multiselectVisible$ | async) ?? true) === false\" aria-label=\"Clear\"\n class=\"form-multi-select-tag-delete close\" type=\"button\">\n <span aria-hidden=\"true\">\u00D7</span>\n</button>\n", styles: [":host .btn-xs{padding-left:.125rem;padding-right:.125rem;font-size:.575rem;border-radius:.2rem}:host.form-multi-select-tag{-webkit-user-select:none;user-select:none;pointer-events:all}\n"] }]
29
29
  }], ctorParameters: function () { return [{ type: i1.MultiSelectService }]; }, propDecorators: { option: [{
@@ -6,17 +6,17 @@ import { MultiSelectOptgroupComponent } from './multi-select-optgroup/multi-sele
6
6
  import { MultiSelectOptgroupLabelComponent } from './multi-select-optgroup/multi-select-optgroup-label.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export class MultiSelectModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectModule, imports: [MultiSelectComponent,
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectModule, imports: [MultiSelectComponent,
11
11
  MultiSelectOptionComponent,
12
12
  MultiSelectOptgroupComponent,
13
13
  MultiSelectOptgroupLabelComponent], exports: [MultiSelectComponent,
14
14
  MultiSelectOptionComponent,
15
15
  MultiSelectOptgroupComponent,
16
16
  MultiSelectOptgroupLabelComponent] }); }
17
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectModule, providers: [MultiSelectService], imports: [MultiSelectComponent] }); }
17
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectModule, providers: [MultiSelectService], imports: [MultiSelectComponent] }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectModule, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectModule, decorators: [{
20
20
  type: NgModule,
21
21
  args: [{
22
22
  imports: [
@@ -41,10 +41,10 @@ export class MultiSelectService {
41
41
  updateOptionsArray(options) {
42
42
  this.optionsArray.next(options);
43
43
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
45
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectService }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
45
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectService }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: MultiSelectService, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MultiSelectService, decorators: [{
48
48
  type: Injectable
49
49
  }] });
50
50
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUtoRCxNQUFNLE9BQU8sa0JBQWtCO0lBRC9CO1FBR1MsaUJBQVksR0FBd0IsVUFBVSxDQUFDO1FBUXJDLHVCQUFrQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLHdCQUFtQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQU1yRCxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBOEIsQ0FBQztRQUNyRSxzQkFBaUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFNbEQsc0JBQWlCLEdBQUcsTUFBTSxDQUFZLEVBQUUsQ0FBQyxDQUFDO1FBbUJ6QyxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQzFELGtCQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztLQVUzRDtJQWhEQyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxFQUFFLDBCQUFvQyxFQUFFO1FBQ3ZFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQU0sUUFBUSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUtELGFBQWEsQ0FBQyxPQUFnQjtRQUM1QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFLRCxXQUFXLENBQUMsTUFBa0M7UUFDNUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBSUQsY0FBYztRQUNaLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBZTtRQUMzQixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWE7UUFDNUIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFLRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFrQjtRQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxDQUFDOzhHQXBEVSxrQkFBa0I7a0hBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlbGVjdGlvbk1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3RPcHRpb25Db21wb25lbnQgfSBmcm9tICcuL211bHRpLXNlbGVjdC1vcHRpb24vbXVsdGktc2VsZWN0LW9wdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSU9wdGlvbiB9IGZyb20gJy4vbXVsdGktc2VsZWN0LnR5cGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTXVsdGlTZWxlY3RTZXJ2aWNlIHtcblxuICBwdWJsaWMgb3B0aW9uc1N0eWxlOiAnY2hlY2tib3gnIHwgJ3RleHQnID0gJ2NoZWNrYm94JztcblxuICBzZWxlY3Rpb25Nb2RlbCE6IFNlbGVjdGlvbk1vZGVsPGFueT47XG5cbiAgc2V0U2VsZWN0aW9uTW9kZWwobXVsdGlwbGUgPSB0cnVlLCBpbml0aWFsbHlTZWxlY3RlZFZhbHVlczogc3RyaW5nW10gPSBbXSkge1xuICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwgPSBuZXcgU2VsZWN0aW9uTW9kZWw8YW55PihtdWx0aXBsZSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IG11bHRpU2VsZWN0VmlzaWJsZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBtdWx0aVNlbGVjdFZpc2libGUkID0gdGhpcy5tdWx0aVNlbGVjdFZpc2libGUuYXNPYnNlcnZhYmxlKCk7XG5cbiAgdG9nZ2xlVmlzaWJsZSh2aXNpYmxlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5tdWx0aVNlbGVjdFZpc2libGUubmV4dCh2aXNpYmxlKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgbXVsdGlTZWxlY3RGb2N1cyA9IG5ldyBTdWJqZWN0PE11bHRpU2VsZWN0T3B0aW9uQ29tcG9uZW50PigpO1xuICByZWFkb25seSBtdWx0aVNlbGVjdEZvY3VzJCA9IHRoaXMubXVsdGlTZWxlY3RGb2N1cy5hc09ic2VydmFibGUoKTtcblxuICBmb2N1c0NoYW5nZShvcHRpb246IE11bHRpU2VsZWN0T3B0aW9uQ29tcG9uZW50KSB7XG4gICAgdGhpcy5tdWx0aVNlbGVjdEZvY3VzLm5leHQob3B0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSB1c2VyT3B0aW9uc1NpZ25hbCA9IHNpZ25hbDxJT3B0aW9uW10+KFtdKTtcblxuICBnZXRVc2VyT3B0aW9ucygpIHtcbiAgICByZXR1cm4gY29tcHV0ZWQodGhpcy51c2VyT3B0aW9uc1NpZ25hbCk7XG4gIH1cblxuICBhZGRVc2VyT3B0aW9uKG9wdGlvbjogSU9wdGlvbikge1xuICAgIHRoaXMudXNlck9wdGlvbnNTaWduYWwudXBkYXRlKChvcHRpb25zKSA9PiBbLi4ub3B0aW9ucywgb3B0aW9uXSk7XG4gIH1cblxuICByZW1vdmVVc2VyT3B0aW9uKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBjb25zdCB1cGRhdGVkT3B0aW9ucyA9IHRoaXMudXNlck9wdGlvbnNTaWduYWwoKS5maWx0ZXIoKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlICE9PSB2YWx1ZSk7XG4gICAgdGhpcy51c2VyT3B0aW9uc1NpZ25hbC5zZXQodXBkYXRlZE9wdGlvbnMpO1xuICB9XG5cbiAgcmVtb3ZlQWxsVXNlck9wdGlvbnMoKSB7XG4gICAgdGhpcy51c2VyT3B0aW9uc1NpZ25hbC5zZXQoW10pO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zQXJyYXkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElPcHRpb25bXT4oW10pO1xuICByZWFkb25seSBvcHRpb25zQXJyYXkkID0gdGhpcy5vcHRpb25zQXJyYXkuYXNPYnNlcnZhYmxlKCk7XG5cbiAgZ2V0T3B0aW9uc0FycmF5KCkge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnNBcnJheSQ7XG4gIH1cblxuICB1cGRhdGVPcHRpb25zQXJyYXkob3B0aW9uczogSU9wdGlvbltdKSB7XG4gICAgdGhpcy5vcHRpb25zQXJyYXkubmV4dChvcHRpb25zKTtcbiAgfVxuXG59XG5cbiJdfQ==
@@ -6,10 +6,10 @@ export class NavItemComponent {
6
6
  'nav-item': true
7
7
  };
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NavItemComponent, isStandalone: true, selector: "c-nav-item", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NavItemComponent, isStandalone: true, selector: "c-nav-item", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavItemComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavItemComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'c-nav-item', template: `<ng-content></ng-content>`, standalone: true, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }]
15
15
  }], propDecorators: { hostClasses: [{
@@ -37,10 +37,10 @@ export class NavLinkDirective {
37
37
  active: this.active
38
38
  };
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
41
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NavLinkDirective, isStandalone: true, selector: "[cNavLink]", inputs: { cNavLink: ["cNavLink", "cNavLink", booleanAttribute], active: "active", disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "attr.aria-current": "this.ariaCurrent", "attr.aria-disabled": "this.isDisabled", "attr.disabled": "this.attrDisabled", "attr.tabindex": "this.getTabindex", "style.cursor": "this.getCursorStyle", "class": "this.hostClasses" } }, ngImport: i0 }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
41
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: NavLinkDirective, isStandalone: true, selector: "[cNavLink]", inputs: { cNavLink: ["cNavLink", "cNavLink", booleanAttribute], active: "active", disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "attr.aria-current": "this.ariaCurrent", "attr.aria-disabled": "this.isDisabled", "attr.disabled": "this.attrDisabled", "attr.tabindex": "this.getTabindex", "style.cursor": "this.getCursorStyle", "class": "this.hostClasses" } }, ngImport: i0 }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavLinkDirective, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavLinkDirective, decorators: [{
44
44
  type: Directive,
45
45
  args: [{
46
46
  selector: '[cNavLink]',
@@ -8,10 +8,10 @@ export class NavComponent {
8
8
  [`nav-${this.variant}`]: !!this.variant
9
9
  };
10
10
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NavComponent, isStandalone: true, selector: "c-nav", inputs: { layout: "layout", variant: "variant" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host .nav-link:focus{outline:0}\n"] }); }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NavComponent, isStandalone: true, selector: "c-nav", inputs: { layout: "layout", variant: "variant" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host .nav-link:focus{outline:0}\n"] }); }
13
13
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavComponent, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavComponent, decorators: [{
15
15
  type: Component,
16
16
  args: [{ selector: 'c-nav', template: `<ng-content></ng-content>`, standalone: true, styles: [":host .nav-link:focus{outline:0}\n"] }]
17
17
  }], propDecorators: { layout: [{
@@ -4,15 +4,15 @@ import { NavItemComponent } from './nav-item.component';
4
4
  import { NavLinkDirective } from './nav-link.directive';
5
5
  import * as i0 from "@angular/core";
6
6
  export class NavModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: NavModule, imports: [NavComponent,
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: NavModule, imports: [NavComponent,
9
9
  NavItemComponent,
10
10
  NavLinkDirective], exports: [NavComponent,
11
11
  NavItemComponent,
12
12
  NavLinkDirective] }); }
13
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavModule }); }
13
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavModule }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavModule, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavModule, decorators: [{
16
16
  type: NgModule,
17
17
  args: [{
18
18
  imports: [
@@ -5,10 +5,10 @@ export class NavbarBrandDirective {
5
5
  this.navbarBrand = true;
6
6
  this.role = 'button';
7
7
  }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarBrandDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NavbarBrandDirective, isStandalone: true, selector: "[cNavbarBrand]", host: { properties: { "class.navbar-brand": "this.navbarBrand", "attr.role": "this.role" } }, ngImport: i0 }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarBrandDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: NavbarBrandDirective, isStandalone: true, selector: "[cNavbarBrand]", host: { properties: { "class.navbar-brand": "this.navbarBrand", "attr.role": "this.role" } }, ngImport: i0 }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarBrandDirective, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarBrandDirective, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
14
  selector: '[cNavbarBrand]',
@@ -14,10 +14,10 @@ export class NavbarNavComponent {
14
14
  'navbar-nav-scroll': this.scroll
15
15
  };
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NavbarNavComponent, isStandalone: true, selector: "c-navbar-nav", inputs: { scroll: ["scroll", "scroll", booleanAttribute] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true }); }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NavbarNavComponent, isStandalone: true, selector: "c-navbar-nav", inputs: { scroll: ["scroll", "scroll", booleanAttribute] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarNavComponent, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarNavComponent, decorators: [{
21
21
  type: Component,
22
22
  args: [{
23
23
  selector: 'c-navbar-nav',
@@ -4,10 +4,10 @@ export class NavbarTextComponent {
4
4
  constructor() {
5
5
  this.navbarTextClass = true;
6
6
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NavbarTextComponent, isStandalone: true, selector: "c-navbar-text", host: { properties: { "class.navbar-text": "this.navbarTextClass" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NavbarTextComponent, isStandalone: true, selector: "c-navbar-text", host: { properties: { "class.navbar-text": "this.navbarTextClass" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarTextComponent, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarTextComponent, decorators: [{
11
11
  type: Component,
12
12
  args: [{
13
13
  selector: 'c-navbar-text',
@@ -32,10 +32,10 @@ export class NavbarTogglerDirective {
32
32
  this.addDefaultIcon();
33
33
  }
34
34
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarTogglerDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
36
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NavbarTogglerDirective, isStandalone: true, selector: "[cNavbarToggler]", inputs: { collapseRef: ["cNavbarToggler", "collapseRef"], type: "type", ariaLabel: "ariaLabel" }, host: { listeners: { "click": "handleClick($event)" }, properties: { "class.navbar-toggler": "this.navbarToggler", "attr.type": "this.type", "attr.aria-label": "this.ariaLabel" } }, ngImport: i0 }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarTogglerDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
36
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: NavbarTogglerDirective, isStandalone: true, selector: "[cNavbarToggler]", inputs: { collapseRef: ["cNavbarToggler", "collapseRef"], type: "type", ariaLabel: "ariaLabel" }, host: { listeners: { "click": "handleClick($event)" }, properties: { "class.navbar-toggler": "this.navbarToggler", "attr.type": "this.type", "attr.aria-label": "this.ariaLabel" } }, ngImport: i0 }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarTogglerDirective, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarTogglerDirective, decorators: [{
39
39
  type: Directive,
40
40
  args: [{
41
41
  selector: '[cNavbarToggler]',
@@ -53,10 +53,10 @@ export class NavbarComponent {
53
53
  });
54
54
  }
55
55
  }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarComponent, deps: [{ token: i0.ElementRef }, { token: i1.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NavbarComponent, isStandalone: true, selector: "c-navbar", inputs: { color: "color", colorScheme: "colorScheme", container: "container", expand: "expand", placement: "placement", role: "role" }, host: { properties: { "attr.role": "this.role", "class": "this.hostClasses" } }, queries: [{ propertyName: "collapse", first: true, predicate: CollapseDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"container ? withContainerTemplate : noContainerTemplate\"></ng-container>\n\n<ng-template #withContainerTemplate>\n <div [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n\n<ng-template #noContainerTemplate>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarComponent, deps: [{ token: i0.ElementRef }, { token: i1.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component }); }
57
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NavbarComponent, isStandalone: true, selector: "c-navbar", inputs: { color: "color", colorScheme: "colorScheme", container: "container", expand: "expand", placement: "placement", role: "role" }, host: { properties: { "attr.role": "this.role", "class": "this.hostClasses" } }, queries: [{ propertyName: "collapse", first: true, predicate: CollapseDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"container ? withContainerTemplate : noContainerTemplate\"></ng-container>\n\n<ng-template #withContainerTemplate>\n <div [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n\n<ng-template #noContainerTemplate>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
58
58
  }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarComponent, decorators: [{
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarComponent, decorators: [{
60
60
  type: Component,
61
61
  args: [{ selector: 'c-navbar', standalone: true, imports: [NgClass, NgTemplateOutlet], template: "<ng-container *ngTemplateOutlet=\"container ? withContainerTemplate : noContainerTemplate\"></ng-container>\n\n<ng-template #withContainerTemplate>\n <div [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n\n<ng-template #noContainerTemplate>\n <ng-content></ng-content>\n</ng-template>\n" }]
62
62
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.BreakpointObserver }]; }, propDecorators: { color: [{
@@ -6,8 +6,8 @@ import { NavbarTextComponent } from './navbar-text/navbar-text.component';
6
6
  import { NavbarTogglerDirective } from './navbar-toggler/navbar-toggler.directive';
7
7
  import * as i0 from "@angular/core";
8
8
  export class NavbarModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: NavbarModule, imports: [NavbarBrandDirective,
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: NavbarModule, imports: [NavbarBrandDirective,
11
11
  NavbarComponent,
12
12
  NavbarNavComponent,
13
13
  NavbarTextComponent,
@@ -16,9 +16,9 @@ export class NavbarModule {
16
16
  NavbarNavComponent,
17
17
  NavbarTextComponent,
18
18
  NavbarTogglerDirective] }); }
19
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarModule }); }
19
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarModule }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NavbarModule, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NavbarModule, decorators: [{
22
22
  type: NgModule,
23
23
  args: [{
24
24
  exports: [
@@ -238,8 +238,8 @@ export class OffcanvasComponent {
238
238
  this.#layoutChangeSubscription?.unsubscribe();
239
239
  }
240
240
  }
241
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasComponent, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.OffcanvasService }, { token: i2.BackdropService }, { token: i3.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component }); }
242
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: OffcanvasComponent, isStandalone: true, selector: "c-offcanvas", inputs: { backdrop: "backdrop", keyboard: "keyboard", placement: "placement", responsive: "responsive", id: "id", role: "role", ariaModal: "ariaModal", scroll: "scroll", visible: "visible" }, outputs: { visibleChange: "visibleChange" }, host: { listeners: { "@showHide.start": "animateStart($event)", "@showHide.done": "animateDone($event)", "document:keydown": "onKeyDownHandler($event)" }, properties: { "attr.role": "this.role", "attr.aria-modal": "this.ariaModal", "class": "this.hostClasses", "attr.aria-hidden": "this.ariaHidden", "attr.tabindex": "this.tabIndex", "@showHide": "this.animateTrigger" } }, exportAs: ["cOffcanvas"], ngImport: i0, template: "<div cdkTrapFocus cdkTrapFocusAutoCapture>\n <ng-content></ng-content>\n</div>\n\n", styles: [":host{display:none}\n"], dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i4.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [
241
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasComponent, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.OffcanvasService }, { token: i2.BackdropService }, { token: i3.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component }); }
242
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: OffcanvasComponent, isStandalone: true, selector: "c-offcanvas", inputs: { backdrop: "backdrop", keyboard: "keyboard", placement: "placement", responsive: "responsive", id: "id", role: "role", ariaModal: "ariaModal", scroll: "scroll", visible: "visible" }, outputs: { visibleChange: "visibleChange" }, host: { listeners: { "@showHide.start": "animateStart($event)", "@showHide.done": "animateDone($event)", "document:keydown": "onKeyDownHandler($event)" }, properties: { "attr.role": "this.role", "attr.aria-modal": "this.ariaModal", "class": "this.hostClasses", "attr.aria-hidden": "this.ariaHidden", "attr.tabindex": "this.tabIndex", "@showHide": "this.animateTrigger" } }, exportAs: ["cOffcanvas"], ngImport: i0, template: "<div cdkTrapFocus cdkTrapFocusAutoCapture>\n <ng-content></ng-content>\n</div>\n\n", styles: [":host{display:none}\n"], dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i4.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [
243
243
  trigger('showHide', [
244
244
  state('visible', style({
245
245
  // visibility: 'visible'
@@ -251,7 +251,7 @@ export class OffcanvasComponent {
251
251
  ])
252
252
  ] }); }
253
253
  }
254
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasComponent, decorators: [{
254
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasComponent, decorators: [{
255
255
  type: Component,
256
256
  args: [{ selector: 'c-offcanvas', animations: [
257
257
  trigger('showHide', [
@@ -6,10 +6,10 @@ export class OffcanvasBodyComponent {
6
6
  'offcanvas-body': true,
7
7
  };
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: OffcanvasBodyComponent, isStandalone: true, selector: "c-offcanvas-body", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:block}\n"] }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: OffcanvasBodyComponent, isStandalone: true, selector: "c-offcanvas-body", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:block}\n"] }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasBodyComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasBodyComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'c-offcanvas-body', template: `<ng-content></ng-content>`, standalone: true, styles: [":host{display:block}\n"] }]
15
15
  }], propDecorators: { hostClasses: [{
@@ -6,10 +6,10 @@ export class OffcanvasHeaderComponent {
6
6
  'offcanvas-header': true,
7
7
  };
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: OffcanvasHeaderComponent, isStandalone: true, selector: "c-offcanvas-header", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: OffcanvasHeaderComponent, isStandalone: true, selector: "c-offcanvas-header", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasHeaderComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasHeaderComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{
15
15
  selector: 'c-offcanvas-header',
@@ -6,10 +6,10 @@ export class OffcanvasTitleDirective {
6
6
  'offcanvas-title': true,
7
7
  };
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: OffcanvasTitleDirective, isStandalone: true, selector: "[cOffcanvasTitle]", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: OffcanvasTitleDirective, isStandalone: true, selector: "[cOffcanvasTitle]", host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasTitleDirective, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasTitleDirective, decorators: [{
13
13
  type: Directive,
14
14
  args: [{
15
15
  selector: '[cOffcanvasTitle]',
@@ -9,10 +9,10 @@ export class OffcanvasToggleDirective {
9
9
  $event.preventDefault();
10
10
  this.offcanvasService.toggle({ show: 'toggle', id: this.id });
11
11
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasToggleDirective, deps: [{ token: i1.OffcanvasService }], target: i0.ɵɵFactoryTarget.Directive }); }
13
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: OffcanvasToggleDirective, isStandalone: true, selector: "[cOffcanvasToggle]", inputs: { id: ["cOffcanvasToggle", "id"] }, host: { listeners: { "click": "toggleOpen($event)" } }, ngImport: i0 }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasToggleDirective, deps: [{ token: i1.OffcanvasService }], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: OffcanvasToggleDirective, isStandalone: true, selector: "[cOffcanvasToggle]", inputs: { id: ["cOffcanvasToggle", "id"] }, host: { listeners: { "click": "toggleOpen($event)" } }, ngImport: i0 }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: OffcanvasToggleDirective, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: OffcanvasToggleDirective, decorators: [{
16
16
  type: Directive,
17
17
  args: [{
18
18
  selector: '[cOffcanvasToggle]',