@coreui/angular-pro 4.5.27 → 4.7.0

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 (247) hide show
  1. package/README.md +2 -2
  2. package/esm2022/lib/accordion/accordion/accordion.component.mjs +5 -5
  3. package/esm2022/lib/accordion/accordion-button/accordion-button.directive.mjs +4 -4
  4. package/esm2022/lib/accordion/accordion-item/accordion-item.component.mjs +5 -5
  5. package/esm2022/lib/accordion/accordion.module.mjs +5 -5
  6. package/esm2022/lib/accordion/accordion.service.mjs +5 -5
  7. package/esm2022/lib/alert/alert-heading.directive.mjs +5 -5
  8. package/esm2022/lib/alert/alert-link.directive.mjs +5 -5
  9. package/esm2022/lib/alert/alert.component.mjs +4 -4
  10. package/esm2022/lib/alert/alert.module.mjs +5 -5
  11. package/esm2022/lib/avatar/avatar.component.mjs +5 -5
  12. package/esm2022/lib/avatar/avatar.module.mjs +5 -5
  13. package/esm2022/lib/backdrop/backdrop.service.mjs +6 -6
  14. package/esm2022/lib/badge/badge.component.mjs +5 -5
  15. package/esm2022/lib/badge/badge.module.mjs +5 -5
  16. package/esm2022/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +5 -5
  17. package/esm2022/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +4 -4
  18. package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +5 -5
  19. package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +5 -5
  20. package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +5 -5
  21. package/esm2022/lib/button/button-close.directive.mjs +4 -4
  22. package/esm2022/lib/button/button.directive.mjs +4 -4
  23. package/esm2022/lib/button/button.module.mjs +5 -5
  24. package/esm2022/lib/button-group/button-group/button-group.component.mjs +5 -5
  25. package/esm2022/lib/button-group/button-group.module.mjs +5 -5
  26. package/esm2022/lib/button-group/button-toolbar/button-toolbar.component.mjs +5 -5
  27. package/esm2022/lib/calendar/calendar/calendar-class-view.pipe.mjs +4 -4
  28. package/esm2022/lib/calendar/calendar/calendar.component.mjs +5 -5
  29. package/esm2022/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +4 -4
  30. package/esm2022/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +4 -4
  31. package/esm2022/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +4 -4
  32. package/esm2022/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +4 -4
  33. package/esm2022/lib/calendar/calendar-month/calendar-day.directive.mjs +5 -5
  34. package/esm2022/lib/calendar/calendar-month/calendar-day.pipe.mjs +4 -4
  35. package/esm2022/lib/calendar/calendar-month/calendar-month.component.mjs +5 -5
  36. package/esm2022/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +4 -4
  37. package/esm2022/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +5 -5
  38. package/esm2022/lib/calendar/calendar.module.mjs +5 -5
  39. package/esm2022/lib/calendar/calendar.service.mjs +5 -5
  40. package/esm2022/lib/callout/callout.component.mjs +5 -5
  41. package/esm2022/lib/callout/callout.module.mjs +5 -5
  42. package/esm2022/lib/card/card-body.component.mjs +4 -4
  43. package/esm2022/lib/card/card-footer.component.mjs +4 -4
  44. package/esm2022/lib/card/card-group.component.mjs +4 -4
  45. package/esm2022/lib/card/card-header-actions.component.mjs +4 -4
  46. package/esm2022/lib/card/card-header.component.mjs +4 -4
  47. package/esm2022/lib/card/card-img-overlay/card-img-overlay.component.mjs +4 -4
  48. package/esm2022/lib/card/card-img.directive.mjs +4 -4
  49. package/esm2022/lib/card/card-link.directive.mjs +4 -4
  50. package/esm2022/lib/card/card-subtitle.directive.mjs +4 -4
  51. package/esm2022/lib/card/card-text.directive.mjs +4 -4
  52. package/esm2022/lib/card/card-title.directive.mjs +4 -4
  53. package/esm2022/lib/card/card.component.mjs +5 -5
  54. package/esm2022/lib/card/card.module.mjs +5 -5
  55. package/esm2022/lib/carousel/carousel/carousel.component.mjs +6 -6
  56. package/esm2022/lib/carousel/carousel-caption/carousel-caption.component.mjs +5 -5
  57. package/esm2022/lib/carousel/carousel-control/carousel-control.component.mjs +5 -5
  58. package/esm2022/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +5 -5
  59. package/esm2022/lib/carousel/carousel-inner/carousel-inner.component.mjs +5 -5
  60. package/esm2022/lib/carousel/carousel-item/carousel-item.component.mjs +5 -5
  61. package/esm2022/lib/carousel/carousel-state.mjs +5 -5
  62. package/esm2022/lib/carousel/carousel.config.mjs +4 -4
  63. package/esm2022/lib/carousel/carousel.module.mjs +5 -5
  64. package/esm2022/lib/carousel/carousel.service.mjs +5 -5
  65. package/esm2022/lib/collapse/collapse.directive.mjs +5 -5
  66. package/esm2022/lib/collapse/collapse.module.mjs +5 -5
  67. package/esm2022/lib/date-picker/date-picker.component.mjs +5 -5
  68. package/esm2022/lib/date-picker/date-picker.module.mjs +5 -5
  69. package/esm2022/lib/date-range-picker/date-range-picker/custom-range-key.pipe.mjs +4 -4
  70. package/esm2022/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +5 -5
  71. package/esm2022/lib/date-range-picker/date-range-picker.module.mjs +5 -5
  72. package/esm2022/lib/dropdown/dropdown/dropdown.component.mjs +11 -11
  73. package/esm2022/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +6 -6
  74. package/esm2022/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +4 -4
  75. package/esm2022/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +4 -4
  76. package/esm2022/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +4 -4
  77. package/esm2022/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +6 -6
  78. package/esm2022/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +5 -5
  79. package/esm2022/lib/dropdown/dropdown.module.mjs +5 -5
  80. package/esm2022/lib/dropdown/dropdown.service.mjs +5 -5
  81. package/esm2022/lib/element-cover/element-cover.component.mjs +5 -5
  82. package/esm2022/lib/element-cover/element-cover.module.mjs +5 -5
  83. package/esm2022/lib/footer/footer.component.mjs +4 -4
  84. package/esm2022/lib/footer/footer.module.mjs +5 -5
  85. package/esm2022/lib/form/form/form.directive.mjs +4 -4
  86. package/esm2022/lib/form/form-check/form-check-input.directive.mjs +5 -5
  87. package/esm2022/lib/form/form-check/form-check-label.directive.mjs +4 -4
  88. package/esm2022/lib/form/form-check/form-check.component.mjs +4 -4
  89. package/esm2022/lib/form/form-control/form-control.directive.mjs +5 -5
  90. package/esm2022/lib/form/form-feedback/form-feedback.component.mjs +4 -4
  91. package/esm2022/lib/form/form-floating/form-floating.directive.mjs +4 -4
  92. package/esm2022/lib/form/form-label/form-label.directive.mjs +5 -5
  93. package/esm2022/lib/form/form-select/form-select.directive.mjs +5 -5
  94. package/esm2022/lib/form/form-text/form-text.directive.mjs +4 -4
  95. package/esm2022/lib/form/form.module.mjs +5 -5
  96. package/esm2022/lib/form/input-group/input-group.component.mjs +5 -5
  97. package/esm2022/lib/form/input-group-text/input-group-text.directive.mjs +5 -5
  98. package/esm2022/lib/grid/col.component.mjs +4 -4
  99. package/esm2022/lib/grid/col.directive.mjs +4 -4
  100. package/esm2022/lib/grid/container.component.mjs +4 -4
  101. package/esm2022/lib/grid/grid.module.mjs +5 -5
  102. package/esm2022/lib/grid/gutter.directive.mjs +5 -5
  103. package/esm2022/lib/grid/row.component.mjs +4 -4
  104. package/esm2022/lib/grid/row.directive.mjs +4 -4
  105. package/esm2022/lib/header/header/header.component.mjs +4 -4
  106. package/esm2022/lib/header/header-brand/header-brand.component.mjs +4 -4
  107. package/esm2022/lib/header/header-divider/header-divider.component.mjs +4 -4
  108. package/esm2022/lib/header/header-nav/header-nav.component.mjs +4 -4
  109. package/esm2022/lib/header/header-text/header-text.component.mjs +4 -4
  110. package/esm2022/lib/header/header-toggler/header-toggler.directive.mjs +5 -5
  111. package/esm2022/lib/header/header.module.mjs +5 -5
  112. package/esm2022/lib/image/img.directive.mjs +4 -4
  113. package/esm2022/lib/image/img.module.mjs +5 -5
  114. package/esm2022/lib/list-group/list-group-item.directive.mjs +5 -5
  115. package/esm2022/lib/list-group/list-group.directive.mjs +4 -4
  116. package/esm2022/lib/list-group/list-group.module.mjs +5 -5
  117. package/esm2022/lib/loading-button/loading-button.component.mjs +5 -5
  118. package/esm2022/lib/loading-button/loading-button.module.mjs +5 -5
  119. package/esm2022/lib/modal/modal/modal.component.mjs +6 -6
  120. package/esm2022/lib/modal/modal-body/modal-body.component.mjs +4 -4
  121. package/esm2022/lib/modal/modal-content/modal-content.component.mjs +4 -4
  122. package/esm2022/lib/modal/modal-dialog/modal-dialog.component.mjs +4 -4
  123. package/esm2022/lib/modal/modal-dismiss/modal-toggle.directive.mjs +5 -5
  124. package/esm2022/lib/modal/modal-footer/modal-footer.component.mjs +4 -4
  125. package/esm2022/lib/modal/modal-header/modal-header.component.mjs +4 -4
  126. package/esm2022/lib/modal/modal-title/modal-title.directive.mjs +4 -4
  127. package/esm2022/lib/modal/modal.module.mjs +5 -5
  128. package/esm2022/lib/modal/modal.service.mjs +5 -5
  129. package/esm2022/lib/multi-select/multi-select/multi-select-search.directive.mjs +5 -5
  130. package/esm2022/lib/multi-select/multi-select/multi-select.component.mjs +5 -5
  131. package/esm2022/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +5 -5
  132. package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +5 -5
  133. package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +5 -5
  134. package/esm2022/lib/multi-select/multi-select-option/multi-select-option.component.mjs +5 -5
  135. package/esm2022/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +5 -5
  136. package/esm2022/lib/multi-select/multi-select.module.mjs +5 -5
  137. package/esm2022/lib/multi-select/multi-select.service.mjs +4 -4
  138. package/esm2022/lib/nav/nav-item.component.mjs +4 -4
  139. package/esm2022/lib/nav/nav-link.directive.mjs +4 -4
  140. package/esm2022/lib/nav/nav.component.mjs +4 -4
  141. package/esm2022/lib/nav/nav.module.mjs +5 -5
  142. package/esm2022/lib/navbar/navbar-brand/navbar-brand.directive.mjs +4 -4
  143. package/esm2022/lib/navbar/navbar-nav/navbar-nav.component.mjs +4 -4
  144. package/esm2022/lib/navbar/navbar-text/navbar-text.component.mjs +4 -4
  145. package/esm2022/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +5 -5
  146. package/esm2022/lib/navbar/navbar.component.mjs +5 -5
  147. package/esm2022/lib/navbar/navbar.module.mjs +5 -5
  148. package/esm2022/lib/offcanvas/offcanvas/offcanvas.component.mjs +6 -6
  149. package/esm2022/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +4 -4
  150. package/esm2022/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +4 -4
  151. package/esm2022/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +4 -4
  152. package/esm2022/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +5 -5
  153. package/esm2022/lib/offcanvas/offcanvas.module.mjs +5 -5
  154. package/esm2022/lib/offcanvas/offcanvas.service.mjs +5 -5
  155. package/esm2022/lib/pagination/page-item/page-item.component.mjs +4 -4
  156. package/esm2022/lib/pagination/page-item/page-item.directive.mjs +5 -5
  157. package/esm2022/lib/pagination/page-link/page-link.directive.mjs +4 -4
  158. package/esm2022/lib/pagination/pagination/pagination.component.mjs +4 -4
  159. package/esm2022/lib/pagination/pagination.module.mjs +5 -5
  160. package/esm2022/lib/placeholder/placeholder-animation.directive.mjs +5 -8
  161. package/esm2022/lib/placeholder/placeholder.directive.mjs +5 -5
  162. package/esm2022/lib/placeholder/placeholder.module.mjs +5 -5
  163. package/esm2022/lib/popover/popover/popover.component.mjs +5 -5
  164. package/esm2022/lib/popover/popover.directive.mjs +6 -6
  165. package/esm2022/lib/popover/popover.module.mjs +5 -5
  166. package/esm2022/lib/progress/progress-bar.component.mjs +5 -5
  167. package/esm2022/lib/progress/progress.component.mjs +4 -4
  168. package/esm2022/lib/progress/progress.module.mjs +5 -5
  169. package/esm2022/lib/services/class-toggle.service.mjs +6 -6
  170. package/esm2022/lib/services/intersection.service.mjs +5 -5
  171. package/esm2022/lib/services/listeners.service.mjs +5 -5
  172. package/esm2022/lib/shared/html-attr.directive.mjs +5 -5
  173. package/esm2022/lib/shared/shared.module.mjs +5 -5
  174. package/esm2022/lib/shared/template-id.directive.mjs +5 -5
  175. package/esm2022/lib/sidebar/sidebar/sidebar.component.mjs +6 -6
  176. package/esm2022/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +6 -6
  177. package/esm2022/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +4 -4
  178. package/esm2022/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +5 -5
  179. package/esm2022/lib/sidebar/sidebar-header/sidebar-header.component.mjs +4 -4
  180. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +4 -4
  181. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +4 -4
  182. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +5 -5
  183. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +4 -4
  184. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +5 -5
  185. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +5 -5
  186. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +9 -9
  187. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +4 -4
  188. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +5 -5
  189. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +10 -10
  190. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +7 -7
  191. package/esm2022/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +5 -5
  192. package/esm2022/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +4 -4
  193. package/esm2022/lib/sidebar/sidebar.module.mjs +5 -5
  194. package/esm2022/lib/sidebar/sidebar.service.mjs +5 -5
  195. package/esm2022/lib/smart-pagination/smart-pagination.component.mjs +5 -5
  196. package/esm2022/lib/smart-pagination/smart-pagination.module.mjs +5 -5
  197. package/esm2022/lib/smart-table/smart-table/smart-table.component.mjs +5 -5
  198. package/esm2022/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +5 -5
  199. package/esm2022/lib/smart-table/smart-table-filter/filter-input.directive.mjs +5 -5
  200. package/esm2022/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +5 -5
  201. package/esm2022/lib/smart-table/smart-table-head/smart-table-column-label.pipe.mjs +4 -4
  202. package/esm2022/lib/smart-table/smart-table-head/smart-table-head.component.mjs +5 -5
  203. package/esm2022/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +5 -5
  204. package/esm2022/lib/smart-table/smart-table.module.mjs +5 -5
  205. package/esm2022/lib/spinner/spinner.component.mjs +4 -4
  206. package/esm2022/lib/spinner/spinner.module.mjs +5 -5
  207. package/esm2022/lib/table/table-active.directive.mjs +4 -4
  208. package/esm2022/lib/table/table-color.directive.mjs +4 -4
  209. package/esm2022/lib/table/table.directive.mjs +5 -5
  210. package/esm2022/lib/table/table.module.mjs +5 -5
  211. package/esm2022/lib/tabs/tab-content/tab-content.component.mjs +5 -5
  212. package/esm2022/lib/tabs/tab-content-ref.directive.mjs +5 -5
  213. package/esm2022/lib/tabs/tab-pane/tab-pane.component.mjs +5 -5
  214. package/esm2022/lib/tabs/tab.service.mjs +5 -5
  215. package/esm2022/lib/tabs/tabs.module.mjs +5 -5
  216. package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +9 -9
  217. package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +9 -9
  218. package/esm2022/lib/time-picker/time-picker.component.mjs +5 -5
  219. package/esm2022/lib/time-picker/time-picker.module.mjs +5 -5
  220. package/esm2022/lib/toast/toast/toast.component.mjs +5 -5
  221. package/esm2022/lib/toast/toast-body/toast-body.component.mjs +6 -6
  222. package/esm2022/lib/toast/toast-close.directive.mjs +5 -5
  223. package/esm2022/lib/toast/toast-header/toast-header.component.mjs +6 -6
  224. package/esm2022/lib/toast/toast.module.mjs +5 -5
  225. package/esm2022/lib/toast/toaster/toaster-host.directive.mjs +5 -5
  226. package/esm2022/lib/toast/toaster/toaster.component.mjs +5 -5
  227. package/esm2022/lib/toast/toaster/toaster.service.mjs +5 -5
  228. package/esm2022/lib/tooltip/tooltip/tooltip.component.mjs +5 -5
  229. package/esm2022/lib/tooltip/tooltip.directive.mjs +6 -6
  230. package/esm2022/lib/tooltip/tooltip.module.mjs +5 -5
  231. package/esm2022/lib/utilities/align.directive.mjs +4 -4
  232. package/esm2022/lib/utilities/bg-color.directive.mjs +5 -5
  233. package/esm2022/lib/utilities/border.directive.mjs +4 -4
  234. package/esm2022/lib/utilities/rounded.directive.mjs +4 -4
  235. package/esm2022/lib/utilities/text-color.directive.mjs +5 -5
  236. package/esm2022/lib/utilities/utilities.module.mjs +5 -5
  237. package/esm2022/lib/widget/widget-stat-a/widget-stat-a.component.mjs +4 -4
  238. package/esm2022/lib/widget/widget-stat-b/widget-stat-b.component.mjs +5 -5
  239. package/esm2022/lib/widget/widget-stat-c/widget-stat-c.component.mjs +5 -5
  240. package/esm2022/lib/widget/widget-stat-d/widget-stat-d.component.mjs +5 -5
  241. package/esm2022/lib/widget/widget-stat-e/widget-stat-e.component.mjs +5 -5
  242. package/esm2022/lib/widget/widget-stat-f/widget-stat-f.component.mjs +4 -4
  243. package/esm2022/lib/widget/widget.module.mjs +5 -5
  244. package/fesm2022/coreui-angular-pro.mjs +927 -930
  245. package/fesm2022/coreui-angular-pro.mjs.map +1 -1
  246. package/lib/smart-table/smart-table/smart-table.component.d.ts +1 -1
  247. package/package.json +9 -9
@@ -461,8 +461,8 @@ export class TimePickerComponent {
461
461
  }), takeUntilDestroyed(this.#destroyRef))
462
462
  .subscribe();
463
463
  }
464
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TimePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
465
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: TimePickerComponent, isStandalone: true, selector: "c-time-picker", inputs: { cleaner: "cleaner", dateTimeFormatOptions: "dateTimeFormatOptions", disabled: "disabled", filterHours: "filterHours", filterMinutes: "filterMinutes", filterSeconds: "filterSeconds", indicator: "indicator", inputReadOnly: "inputReadOnly", locale: "locale", placeholder: "placeholder", seconds: "seconds", size: "size", time: "time", variant: "variant", valid: "valid", visible: "visible" }, outputs: { timeChange: "timeChange" }, host: { listeners: { "blur": "onBlur()" } }, providers: [
464
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: TimePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
465
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: TimePickerComponent, isStandalone: true, selector: "c-time-picker", inputs: { cleaner: "cleaner", dateTimeFormatOptions: "dateTimeFormatOptions", disabled: "disabled", filterHours: "filterHours", filterMinutes: "filterMinutes", filterSeconds: "filterSeconds", indicator: "indicator", inputReadOnly: "inputReadOnly", locale: "locale", placeholder: "placeholder", seconds: "seconds", size: "size", time: "time", variant: "variant", valid: "valid", visible: "visible" }, outputs: { timeChange: "timeChange" }, host: { listeners: { "blur": "onBlur()" } }, providers: [
466
466
  {
467
467
  provide: NG_VALUE_ACCESSOR,
468
468
  useExisting: forwardRef(() => TimePickerComponent),
@@ -470,7 +470,7 @@ export class TimePickerComponent {
470
470
  }
471
471
  ], queries: [{ propertyName: "contentTemplates", predicate: TemplateIdDirective, descendants: true }], viewQueries: [{ propertyName: "dropdownRef", first: true, predicate: DropdownComponent, descendants: true, read: ElementRef }], exportAs: ["cTimePicker"], usesOnChanges: true, ngImport: i0, template: "<div class=\"date-picker-timepickers\" *ngIf=\"variant==='select'\">\n <div class=\"picker time-picker\">\n <div [formGroup]=\"selectTime\" class=\"time-picker-body\" [ngClass]=\"timePickerClasses\">\n <span class=\"time-picker-inline-icon\"></span>\n <select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectHours\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let hour of listOfHours12; index as i; trackBy: trackByHour\" [ngValue]=\"hour.value\" [attr.disabled]=\"hour.disabled || null\">{{hour.label}}</option>\n </select>\n {{' :'}}<select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectMinutes\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let minute of listOfMinutes\" [ngValue]=\"minute.value\" [attr.disabled]=\"minute.disabled || null\">{{minute.label}}</option>\n </select>\n <ng-template [ngIf]=\"seconds\">\n {{' :'}}<select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectSeconds\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let second of listOfSeconds\" [ngValue]=\"second.value\" [attr.disabled]=\"second.disabled || null\">{{second.label}}</option>\n </select>\n </ng-template>\n <ng-template [ngIf]=\"hour12\">\n <select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectDayPeriod\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let dayPeriod of dayPeriods\" [ngValue]=\"dayPeriod.value\" class=\"time-picker-roll-cell\">{{dayPeriod.label}}</option>\n </select>\n </ng-template>\n </div>\n </div>\n</div>\n\n<c-dropdown #dropdown=\"cDropdown\" [autoClose]=\"'outside'\" class=\"time-picker picker\" [ngClass]=\"timePickerClasses\" *ngIf=\"variant==='roll'\" [visible]=\"visible\">\n <c-input-group [caret]=\"false\"\n [disabled]=\"disabled ?? dropdown.visible\"\n [sizing]=\"size ?? ''\"\n cDropdownToggle\n class=\"picker-input-group\">\n <input (blur)=\"handleBlur($event);\"\n (change)=\"handleTimeInputChange($event)\"\n (focus)=\"handleFocus($event)\"\n [formControl]=\"timeInput\"\n [placeholder]=\"placeholder\"\n cFormControl\n [attr.tabindex]=\"disabled ? -1 : 0\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.pattern]=\"hour12 ? '(((0[1-9])|(1[0-2])):([0-5])([0-9])\\\\s(A|P)M)' : '([01]?[0-9]|2[0-3]):[0-5][0-9]'\"\n [readonly]=\"inputReadOnly ?? null\"\n [valid]=\"valid\"\n >\n <span *ngIf=\"indicator || cleaner\" cInputGroupText>\n <span *ngIf=\"indicator\" class=\"picker-input-group-indicator\">\n <span class=\"picker-input-group-icon time-picker-input-icon\"></span>\n </span>\n <span (click)=\"!disabled && handleClear($event)\" *ngIf=\"cleaner && time && !disabled\" class=\"picker-input-group-cleaner\" role=\"button\">\n <span class=\"picker-input-group-icon time-picker-cleaner-icon\"></span>\n </span>\n </span>\n\n </c-input-group>\n <div cDropdownMenu #dropdownMenu=\"cDropdownMenu\">\n <div class=\"time-picker-body time-picker-roll\" style=\"position: relative;\">\n <c-time-picker-roll-col\n [elements]=\"listOfHours12\"\n [selected]=\"hour\"\n (selectedChange)=\"handleSelectHoursChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-col>\n <c-time-picker-roll-col\n [elements]=\"listOfMinutes\"\n [selected]=\"minute\"\n (selectedChange)=\"handleSelectMinutesChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-col>\n <c-time-picker-roll-col\n *ngIf=\"seconds\"\n [elements]=\"listOfSeconds\"\n [selected]=\"second\"\n (selectedChange)=\"handleSelectSecondsChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-col>\n <c-time-picker-roll-am-pm\n *ngIf=\"hour12\" [elements]=\"dayPeriods\"\n [selected]=\"dayPeriod\"\n (selectedChange)=\"handleSelectDayPeriodChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-am-pm>\n </div>\n <div *ngIf=\"templates?.timePickerFooter\" class=\"picker-footer\">\n <ng-container *ngTemplateOutlet=\"templates?.timePickerFooter; context: {$implicit: dropdown}\"></ng-container>\n </div>\n </div>\n</c-dropdown>\n", styles: [".disabled{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: DropdownComponent, selector: "c-dropdown", inputs: ["alignment", "autoClose", "dark", "direction", "placement", "popper", "popperOptions", "variant", "visible"], outputs: ["visibleChange"], exportAs: ["cDropdown"] }, { kind: "directive", type: DropdownToggleDirective, selector: "[cDropdownToggle]", inputs: ["dropdownComponent", "disabled", "caret", "split"], exportAs: ["cDropdownToggle"] }, { kind: "directive", type: DropdownMenuDirective, selector: "[cDropdownMenu]", inputs: ["alignment", "visible", "dark"], exportAs: ["cDropdownMenu"] }, { kind: "directive", type: FormControlDirective, selector: "input[cFormControl], textarea[cFormControl]", inputs: ["sizing", "valid", "type", "plaintext"] }, { kind: "directive", type: FormSelectDirective, selector: "select[cSelect]", inputs: ["sizing", "valid"] }, { kind: "component", type: InputGroupComponent, selector: "c-input-group", inputs: ["sizing"] }, { kind: "directive", type: InputGroupTextDirective, selector: "[cInputGroupText]" }, { kind: "component", type: TimePickerRollColComponent, selector: "c-time-picker-roll-col", inputs: ["disabled", "elements", "onClick", "selected", "refresh"], outputs: ["selectedChange"], exportAs: ["cTimePickerRollCol"] }, { kind: "component", type: TimePickerRollAmPmComponent, selector: "c-time-picker-roll-am-pm", inputs: ["disabled", "elements", "onClick", "selected", "refresh"], outputs: ["selectedChange"] }] }); }
472
472
  }
473
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TimePickerComponent, decorators: [{
473
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: TimePickerComponent, decorators: [{
474
474
  type: Component,
475
475
  args: [{ selector: 'c-time-picker', exportAs: 'cTimePicker', standalone: true, imports: [
476
476
  NgClass,
@@ -494,7 +494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
494
494
  multi: true
495
495
  }
496
496
  ], template: "<div class=\"date-picker-timepickers\" *ngIf=\"variant==='select'\">\n <div class=\"picker time-picker\">\n <div [formGroup]=\"selectTime\" class=\"time-picker-body\" [ngClass]=\"timePickerClasses\">\n <span class=\"time-picker-inline-icon\"></span>\n <select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectHours\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let hour of listOfHours12; index as i; trackBy: trackByHour\" [ngValue]=\"hour.value\" [attr.disabled]=\"hour.disabled || null\">{{hour.label}}</option>\n </select>\n {{' :'}}<select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectMinutes\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let minute of listOfMinutes\" [ngValue]=\"minute.value\" [attr.disabled]=\"minute.disabled || null\">{{minute.label}}</option>\n </select>\n <ng-template [ngIf]=\"seconds\">\n {{' :'}}<select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectSeconds\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let second of listOfSeconds\" [ngValue]=\"second.value\" [attr.disabled]=\"second.disabled || null\">{{second.label}}</option>\n </select>\n </ng-template>\n <ng-template [ngIf]=\"hour12\">\n <select [attr.disabled]=\"disabled || null\" cSelect class=\"ms-0\" formControlName=\"selectDayPeriod\" (blur)=\"onBlur()\" [sizing]=\"size ?? ''\">\n <option *ngFor=\"let dayPeriod of dayPeriods\" [ngValue]=\"dayPeriod.value\" class=\"time-picker-roll-cell\">{{dayPeriod.label}}</option>\n </select>\n </ng-template>\n </div>\n </div>\n</div>\n\n<c-dropdown #dropdown=\"cDropdown\" [autoClose]=\"'outside'\" class=\"time-picker picker\" [ngClass]=\"timePickerClasses\" *ngIf=\"variant==='roll'\" [visible]=\"visible\">\n <c-input-group [caret]=\"false\"\n [disabled]=\"disabled ?? dropdown.visible\"\n [sizing]=\"size ?? ''\"\n cDropdownToggle\n class=\"picker-input-group\">\n <input (blur)=\"handleBlur($event);\"\n (change)=\"handleTimeInputChange($event)\"\n (focus)=\"handleFocus($event)\"\n [formControl]=\"timeInput\"\n [placeholder]=\"placeholder\"\n cFormControl\n [attr.tabindex]=\"disabled ? -1 : 0\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.pattern]=\"hour12 ? '(((0[1-9])|(1[0-2])):([0-5])([0-9])\\\\s(A|P)M)' : '([01]?[0-9]|2[0-3]):[0-5][0-9]'\"\n [readonly]=\"inputReadOnly ?? null\"\n [valid]=\"valid\"\n >\n <span *ngIf=\"indicator || cleaner\" cInputGroupText>\n <span *ngIf=\"indicator\" class=\"picker-input-group-indicator\">\n <span class=\"picker-input-group-icon time-picker-input-icon\"></span>\n </span>\n <span (click)=\"!disabled && handleClear($event)\" *ngIf=\"cleaner && time && !disabled\" class=\"picker-input-group-cleaner\" role=\"button\">\n <span class=\"picker-input-group-icon time-picker-cleaner-icon\"></span>\n </span>\n </span>\n\n </c-input-group>\n <div cDropdownMenu #dropdownMenu=\"cDropdownMenu\">\n <div class=\"time-picker-body time-picker-roll\" style=\"position: relative;\">\n <c-time-picker-roll-col\n [elements]=\"listOfHours12\"\n [selected]=\"hour\"\n (selectedChange)=\"handleSelectHoursChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-col>\n <c-time-picker-roll-col\n [elements]=\"listOfMinutes\"\n [selected]=\"minute\"\n (selectedChange)=\"handleSelectMinutesChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-col>\n <c-time-picker-roll-col\n *ngIf=\"seconds\"\n [elements]=\"listOfSeconds\"\n [selected]=\"second\"\n (selectedChange)=\"handleSelectSecondsChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-col>\n <c-time-picker-roll-am-pm\n *ngIf=\"hour12\" [elements]=\"dayPeriods\"\n [selected]=\"dayPeriod\"\n (selectedChange)=\"handleSelectDayPeriodChange($event)\"\n [disabled]=\"disabled\"\n [refresh]=\"dropdownMenu.visible\"\n role=\"listbox\"\n >\n </c-time-picker-roll-am-pm>\n </div>\n <div *ngIf=\"templates?.timePickerFooter\" class=\"picker-footer\">\n <ng-container *ngTemplateOutlet=\"templates?.timePickerFooter; context: {$implicit: dropdown}\"></ng-container>\n </div>\n </div>\n</c-dropdown>\n", styles: [".disabled{pointer-events:none}\n"] }]
497
- }], ctorParameters: function () { return []; }, propDecorators: { cleaner: [{
497
+ }], ctorParameters: () => [], propDecorators: { cleaner: [{
498
498
  type: Input
499
499
  }], dateTimeFormatOptions: [{
500
500
  type: Input
@@ -538,4 +538,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
538
538
  type: ContentChildren,
539
539
  args: [TemplateIdDirective, { descendants: true }]
540
540
  }] } });
541
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90aW1lLXBpY2tlci90aW1lLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RpbWUtcGlja2VyL3RpbWUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBR04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0UsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUNMLGVBQWUsRUFDZixlQUFlLEVBQ2YsaUJBQWlCLEVBR2pCLE9BQU8sRUFDUCxhQUFhLEVBQ2IsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFdBQVcsRUFFWixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUs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Y2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGVzdHJveVJlZixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIEZvcm1Db250cm9sLFxuICBGb3JtR3JvdXAsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBWYWxpZGF0b3JzXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nQ2xhc3MsIE5nRm9yT2YsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIGNvbnZlcnQxMmhUbzI0aCxcbiAgY29udmVydDI0aFRvMTJoLFxuICBjb252ZXJ0VGltZVRvRGF0ZSxcbiAgRGF0ZVRpbWVGb3JtYXRPcHRpb25zLFxuICBEYXlQZXJpb2QsXG4gIGdldEFtUG0sXG4gIGdldERheVBlcmlvZHMsXG4gIGdldExpc3RPZkhvdXJzLFxuICBnZXRMaXN0T2ZNaW51dGVzLFxuICBnZXRMaXN0T2ZTZWNvbmRzLFxuICBpc0hvdXIxMixcbiAgaXNWYWxpZFRpbWUsXG4gIElUaW1lVmFsdWVcbn0gZnJvbSAnLi90aW1lLnV0aWxzJztcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50LCBEcm9wZG93bk1lbnVEaXJlY3RpdmUsIERyb3Bkb3duVG9nZ2xlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZHJvcGRvd24nO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xEaXJlY3RpdmUsIEZvcm1TZWxlY3REaXJlY3RpdmUsIElucHV0R3JvdXBDb21wb25lbnQsIElucHV0R3JvdXBUZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZm9ybSc7XG5pbXBvcnQgeyBUZW1wbGF0ZUlkRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2hhcmVkJztcbmltcG9ydCB7IFRpbWVQaWNrZXJSb2xsQ29sQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWNvbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGltZVBpY2tlclJvbGxBbVBtQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWFtLXBtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdGltZS1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGltZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90aW1lLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICBleHBvcnRBczogJ2NUaW1lUGlja2VyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nQ2xhc3MsXG4gICAgTmdJZixcbiAgICBOZ0Zvck9mLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBEcm9wZG93bkNvbXBvbmVudCxcbiAgICBEcm9wZG93blRvZ2dsZURpcmVjdGl2ZSxcbiAgICBEcm9wZG93bk1lbnVEaXJlY3RpdmUsXG4gICAgRm9ybUNvbnRyb2xEaXJlY3RpdmUsXG4gICAgRm9ybVNlbGVjdERpcmVjdGl2ZSxcbiAgICBJbnB1dEdyb3VwQ29tcG9uZW50LFxuICAgIElucHV0R3JvdXBUZXh0RGlyZWN0aXZlLFxuICAgIFRpbWVQaWNrZXJSb2xsQ29sQ29tcG9uZW50LFxuICAgIFRpbWVQaWNrZXJSb2xsQW1QbUNvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRpbWVQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcmVhZG9ubHkgI2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9jbGVhbmVyOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaW5kaWNhdG9yOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9pbnB1dFJlYWRPbmx5OiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zZWNvbmRzOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92aXNpYmxlOiBCb29sZWFuSW5wdXQ7XG5cbiAgLyoqXG4gICAqIFRvZ2dsZSB2aXNpYmlsaXR5IG9yIHNldCB0aGUgY29udGVudCBvZiB0aGUgY2xlYW5lciBidXR0b24uXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGNsZWFuZXIodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jbGVhbmVyID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBjbGVhbmVyKCkge1xuICAgIHJldHVybiB0aGlzLl9jbGVhbmVyO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xlYW5lcjogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFNldHMgRGF0ZVRpbWUgZm9ybWF0IG9wdGlvbnMgaW5jbHVkaW5nIHRpbWVab25lXG4gICAqIEB0eXBlIERhdGVUaW1lRm9ybWF0T3B0aW9uc1xuICAgKiBAZGVmYXVsdCB7fVxuICAgKiBAbm90ZSBUaGUgZGF0ZSBvYmplY3QgZG9lc24ndCBzdG9yZSB0aW1lWm9uZSwgaXQga2VlcHMgdGhlIGxvY2FsIHRpbWV6b25lIG9mIHRoZSBicm93c2VyLCByZWdhcmRsZXNzIGlmIHlvdSBwYXJzZWQgVVRDIGRhdGVzLlxuICAgKi9cbiAgQElucHV0KCkgZGF0ZVRpbWVGb3JtYXRPcHRpb25zOiBEYXRlVGltZUZvcm1hdE9wdGlvbnMgPSB7fTtcblxuICAvKipcbiAgICogVG9nZ2xlIHRoZSBkaXNhYmxlZCBzdGF0ZSBmb3IgdGhlIGNvbXBvbmVudC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEZpbHRlciBhdmFpbGFibGUgaG91cnMgdG8gcGljay5cbiAgICogQHR5cGUgKHZhbHVlOiBudW1iZXIpID0+IGJvb2xlYW47XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgZmlsdGVySG91cnM/OiAodmFsdWU6IG51bWJlcikgPT4gYm9vbGVhbjtcblxuICAvKipcbiAgICogRmlsdGVyIGF2YWlsYWJsZSBtaW51dGVzIHRvIHBpY2suXG4gICAqIEB0eXBlICh2YWx1ZTogbnVtYmVyKSA9PiBib29sZWFuO1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIEBJbnB1dCgpIGZpbHRlck1pbnV0ZXM/OiAodmFsdWU6IG51bWJlcikgPT4gYm9vbGVhbjtcblxuICAvKipcbiAgICogRmlsdGVyIGF2YWlsYWJsZSBzZWNvbmRzIHRvIHBpY2suXG4gICAqIEB0eXBlICh2YWx1ZTogbnVtYmVyKSA9PiBib29sZWFuO1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIEBJbnB1dCgpIGZpbHRlclNlY29uZHM/OiAodmFsdWU6IG51bWJlcikgPT4gYm9vbGVhbjtcblxuICAvKipcbiAgICogVG9nZ2xlIHZpc2liaWxpdHkgb3Igc2V0IHRoZSBjb250ZW50IG9mIHRoZSBpbnB1dCBpbmRpY2F0b3IuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGluZGljYXRvcih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2luZGljYXRvciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgaW5kaWNhdG9yKCkge1xuICAgIHJldHVybiB0aGlzLl9pbmRpY2F0b3I7XG4gIH1cblxuICBwcml2YXRlIF9pbmRpY2F0b3I6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIHJlYWRvbmx5IHN0YXRlIGZvciB0aGUgY29tcG9uZW50LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgaW5wdXRSZWFkT25seSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lucHV0UmVhZE9ubHkgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGlucHV0UmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lucHV0UmVhZE9ubHk7XG4gIH1cblxuICBwcml2YXRlIF9pbnB1dFJlYWRPbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRlZmF1bHQgbG9jYWxlIGZvciBjb21wb25lbnRzLiBJZiBub3Qgc2V0LCBpdCBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgYnJvd3Nlci5cbiAgICogQHR5cGUgc3RyaW5nXG4gICAqIEBkZWZhdWx0IGRlZmF1bHRcbiAgICovXG4gIEBJbnB1dCgpIGxvY2FsZTogc3RyaW5nID0gJ2RlZmF1bHQnO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgc2hvcnQgaGludCB2aXNpYmxlIGluIHRpbWUgaW5wdXQuXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKiBAZGVmYXVsdCAnU2VsZWN0IHRpbWUnXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJ1NlbGVjdCB0aW1lJztcblxuICAvKipcbiAgICogVG9nZ2xlIHNlY29uZHMgdmlzaWJpbGl0eS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHNlY29uZHModmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zZWNvbmRzID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBzZWNvbmRzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zZWNvbmRzO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2Vjb25kczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTaXplIHRoZSBjb21wb25lbnQgc21hbGwgb3IgbGFyZ2UuXG4gICAqIEB0eXBlICdzbScgfCAnbGcnIHwgdW5kZWZpbmVkXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgc2l6ZT86ICdzbScgfCAnbGcnO1xuXG4gIC8qKlxuICAgKiBJbml0aWFsIHNlbGVjdGVkIHRpbWUuXG4gICAqIEB0eXBlIERhdGUgfCBzdHJpbmcgfCBudWxsIHwgbnVtYmVyXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHRpbWUodmFsdWU6IERhdGUgfCBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodmFsdWUgJiYgaXNWYWxpZFRpbWUodmFsdWUpKSB7XG4gICAgICBjb25zdCB0aW1lID0gY29udmVydFRpbWVUb0RhdGUodmFsdWUpO1xuICAgICAgaWYgKCF0aW1lKSB7XG4gICAgICAgIHRoaXMuY2xlYXJUaW1lKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuZGF5UGVyaW9kID0gZ2V0QW1QbSh0aW1lLCB0aGlzLmxvY2FsZSk7XG4gICAgICBpZiAodGhpcy5fdGltZT8uZ2V0VGltZSgpICE9PSB0aW1lLmdldFRpbWUoKSkge1xuICAgICAgICB0aGlzLl90aW1lID0gbmV3IERhdGUodGltZS5nZXRUaW1lKCkpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCB0aW1lKCk6IERhdGUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl90aW1lO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGltZT86IERhdGU7XG4gIHByaXZhdGUgX3RpbWVJbnRlcm5hbD86IERhdGU7XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGltZSBwaWNrZXIgdmFyaWFudCB0byBhIHJvbGwgb3Igc2VsZWN0LlxuICAgKiBAdHlwZSAncm9sbCcgfCAnc2VsZWN0J1xuICAgKiBAZGVmYXVsdCAncm9sbCdcbiAgICovXG4gIEBJbnB1dCgpIHZhcmlhbnQ6ICdyb2xsJyB8ICdzZWxlY3QnID0gJ3JvbGwnO1xuXG4gIC8qKlxuICAgKiBUb2dnbGUgdmlzdWFsIHZhbGlkYXRpb24gZmVlZGJhY2suXG4gICAqIEB0eXBlIGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBASW5wdXQoKSB2YWxpZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiBkcm9wZG93biB0aW1lcGlja2VyIG1lbnUgY29tcG9uZW50LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IHZpc2libGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cblxuICBwcml2YXRlIF92aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHRpbWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRlIHwgdW5kZWZpbmVkPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZSB8IHVuZGVmaW5lZD4oZmFsc2UpO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKSBvbkJsdXIoKSB7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoRHJvcGRvd25Db21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBkcm9wZG93blJlZiE6IEVsZW1lbnRSZWY7XG5cbiAgdGVtcGxhdGVzOiBhbnkgPSB7fTtcbiAgQENvbnRlbnRDaGlsZHJlbihUZW1wbGF0ZUlkRGlyZWN0aXZlLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGNvbnRlbnRUZW1wbGF0ZXMhOiBRdWVyeUxpc3Q8VGVtcGxhdGVJZERpcmVjdGl2ZT47XG5cbiAgbGlzdE9mSG91cnMhOiBJVGltZVZhbHVlW107XG4gIGxpc3RPZkhvdXJzMTIhOiBJVGltZVZhbHVlW107XG4gIGxpc3RPZk1pbnV0ZXMhOiBJVGltZVZhbHVlW107XG4gIGxpc3RPZlNlY29uZHMhOiBJVGltZVZhbHVlW107XG4gIGhvdXIxMjogYm9vbGVhbiA9IGlzSG91cjEyKHRoaXMubG9jYWxlKTtcbiAgZGF5UGVyaW9kcyA9IFtcbiAgICB7IHZhbHVlOiAnYW0nLCBsYWJlbDogJ2FtJyB9LFxuICAgIHsgdmFsdWU6ICdwbScsIGxhYmVsOiAncG0nIH1cbiAgXTtcblxuICBzZXQgdGltZUlucHV0VmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudGltZUlucHV0LnNldFZhbHVlKHZhbHVlKTtcbiAgICB0aGlzLl90aW1lSW5wdXRWYWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0IHRpbWVJbnB1dFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpbWVJbnB1dFZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGltZUlucHV0VmFsdWU6IHN0cmluZyA9XG4gICAgdGhpcy50aW1lPy50b0xvY2FsZVRpbWVTdHJpbmcodGhpcy5sb2NhbGUsIHsgdGltZVN0eWxlOiB0aGlzLnNlY29uZHMgPyAnbWVkaXVtJyA6ICdzaG9ydCcgfSkgPz9cbiAgICAnJztcblxuICBnZXQgdGltZVBpY2tlckNsYXNzZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdmb3JtLWNvbnRyb2wnOiB0aGlzLnZhcmlhbnQgPT09ICdzZWxlY3QnICYmIHRoaXMudmFsaWQgIT09IHVuZGVmaW5lZCxcbiAgICAgICdpcy12YWxpZCc6IHRoaXMudmFsaWQgPT09IHRydWUsXG4gICAgICAnaXMtaW52YWxpZCc6IHRoaXMudmFsaWQgPT09IGZhbHNlXG4gICAgfTtcbiAgfVxuXG4gIHNlbGVjdFRpbWUgPSBuZXcgRm9ybUdyb3VwPHtcbiAgICBzZWxlY3RIb3VyczogRm9ybUNvbnRyb2w8bnVtYmVyIHwgbnVsbD47XG4gICAgc2VsZWN0TWludXRlczogRm9ybUNvbnRyb2w8bnVtYmVyIHwgbnVsbD47XG4gICAgc2VsZWN0U2Vjb25kcz86IEZvcm1Db250cm9sPG51bWJlciB8IG51bGw+O1xuICAgIHNlbGVjdERheVBlcmlvZD86IEZvcm1Db250cm9sPCdhbScgfCAncG0nIHwgbnVsbD47XG4gIH0+KFxuICAgIHtcbiAgICAgIHNlbGVjdEhvdXJzOiBuZXcgRm9ybUNvbnRyb2woXG4gICAgICAgIHsgdmFsdWU6IHRoaXMuaG91ciwgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgeyB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5taW4oMCksIFZhbGlkYXRvcnMubWF4KHRoaXMuaG91cjEyID8gMTEgOiAyMyldIH1cbiAgICAgICksXG4gICAgICBzZWxlY3RNaW51dGVzOiBuZXcgRm9ybUNvbnRyb2woXG4gICAgICAgIHsgdmFsdWU6IHRoaXMubWludXRlLCBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCB9LFxuICAgICAgICB7IHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLm1pbigwKSwgVmFsaWRhdG9ycy5tYXgoNTkpXSB9XG4gICAgICApLFxuICAgICAgc2VsZWN0U2Vjb25kczogbmV3IEZvcm1Db250cm9sKFxuICAgICAgICB7IHZhbHVlOiB0aGlzLnNlY29uZCwgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgeyB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5taW4oMCksIFZhbGlkYXRvcnMubWF4KDU5KV0gfVxuICAgICAgKSxcbiAgICAgIHNlbGVjdERheVBlcmlvZDogbmV3IEZvcm1Db250cm9sKFxuICAgICAgICB7IHZhbHVlOiB0aGlzLmRheVBlcmlvZCwgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZFxuICAgICAgKVxuICAgIH0sXG4gICAgeyB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5yZXF1aXJlZF0gfVxuICApO1xuXG4gIHRpbWVJbnB1dCA9IG5ldyBGb3JtQ29udHJvbChcbiAgICB7XG4gICAgICB2YWx1ZTogdGhpcy50aW1lSW5wdXRWYWx1ZSxcbiAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkXG4gICAgfSxcbiAgICB7IHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLnJlcXVpcmVkXSB9XG4gICk7XG5cbiAgc2V0IGhvdXIodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9ob3VyICE9PSB2YWx1ZSkge1xuICAgICAgaWYgKHZhbHVlIDwgMCkge1xuICAgICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9ob3VyID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGhvdXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5faG91cjtcbiAgfVxuXG4gIHByaXZhdGUgX2hvdXIgPSAtMTtcblxuICBzZXQgbWludXRlKHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5fbWludXRlICE9PSB2YWx1ZSkge1xuICAgICAgaWYgKHZhbHVlIDwgMCkge1xuICAgICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9taW51dGUgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBnZXQgbWludXRlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21pbnV0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX21pbnV0ZSA9IC0xO1xuXG4gIHNldCBzZWNvbmQodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9zZWNvbmQgIT09IHZhbHVlKSB7XG4gICAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICAgIHRoaXMuY2xlYXJUaW1lKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3NlY29uZCA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzZWNvbmQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc2Vjb25kO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2Vjb25kID0gLTE7XG5cbiAgc2V0IGRheVBlcmlvZCh2YWx1ZSkge1xuICAgIHRoaXMuX2RheVBlcmlvZCA9IHZhbHVlO1xuICAgIHRoaXMubGlzdE9mSG91cnMxMiA9IHRoaXMuaG91cjEyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPyB0aGlzLmxpc3RPZkhvdXJzPy5maWx0ZXIoXG4gICAgICAgIChpdGVtKSA9PiAoaXRlbS5kYXlQZXJpb2QgJiYgaXRlbS5kYXlQZXJpb2QgPT09IHZhbHVlKSB8fCAhaXRlbS5kYXlQZXJpb2RcbiAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICA6IHRoaXMubGlzdE9mSG91cnM7XG4gICAgdGhpcy5wYXRjaFNlbGVjdFRpbWVWYWx1ZXMoKTtcbiAgfVxuXG4gIGdldCBkYXlQZXJpb2QoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RheVBlcmlvZDtcbiAgfVxuXG4gIHByaXZhdGUgX2RheVBlcmlvZDogRGF5UGVyaW9kID0gJ2FtJztcblxuICBzZXRUaW1lKCkge1xuICAgIHRoaXMuX2hvdXIgPSB0aGlzLl9ob3VyIDwgMCA/IDAgOiB0aGlzLl9ob3VyO1xuICAgIHRoaXMuX21pbnV0ZSA9IHRoaXMuX21pbnV0ZSA8IDAgPyAwIDogdGhpcy5fbWludXRlO1xuICAgIHRoaXMuX3NlY29uZCA9IHRoaXMuX3NlY29uZCA8IDAgPyAwIDogdGhpcy5fc2Vjb25kO1xuXG4gICAgY29uc3QgdGltZSA9IG5ldyBEYXRlKHRoaXMuX3RpbWU/LmdldFRpbWUoKSB8fCBuZXcgRGF0ZSgpKTtcbiAgICB0aW1lLnNldEhvdXJzKHRoaXMuaG91ciwgdGhpcy5taW51dGUsIHRoaXMuc2Vjb25kLCAwKTtcbiAgICB0aGlzLnRpbWUgPSB0aW1lO1xuICAgIHRoaXMuZW1pdFRpbWUodGltZSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJUaW1lKCkge1xuICAgIGlmICh0aGlzLnRpbWUpIHtcbiAgICAgIHRoaXMuX3RpbWUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmVtaXRUaW1lKHVuZGVmaW5lZCk7XG4gICAgfVxuICAgIHRoaXMuX2hvdXIgPSAtMTtcbiAgICB0aGlzLl9taW51dGUgPSAtMTtcbiAgICB0aGlzLl9zZWNvbmQgPSAtMTtcbiAgICB0aGlzLmRheVBlcmlvZCA9ICdhbSc7XG4gICAgdGhpcy5wYXRjaFNlbGVjdFRpbWVWYWx1ZXMoKTtcbiAgICB0aGlzLnRpbWVJbnB1dFZhbHVlID0gJyc7XG4gIH1cblxuICBlbWl0VGltZSh0aW1lOiBEYXRlIHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgdGltZVZhbHVlID0gISF0aW1lICYmIGlzVmFsaWRUaW1lKHRpbWUpID8gbmV3IERhdGUodGltZS5nZXRUaW1lKCkpIDogdW5kZWZpbmVkO1xuICAgIGlmICh0aGlzLl90aW1lSW50ZXJuYWw/LmdldFRpbWUoKSAhPT0gdGltZVZhbHVlPy5nZXRUaW1lKCkpIHtcbiAgICAgIHRoaXMudGltZUNoYW5nZS5lbWl0KHRpbWVWYWx1ZSk7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRpbWVWYWx1ZSk7XG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgdGhpcy5fdGltZUludGVybmFsID0gdGltZVZhbHVlO1xuICAgIH1cbiAgICB0aGlzLnRpbWVJbnB1dFZhbHVlID1cbiAgICAgIHRoaXMudGltZT8udG9Mb2NhbGVUaW1lU3RyaW5nKHRoaXMubG9jYWxlLCB7XG4gICAgICAgIHRpbWVTdHlsZTogdGhpcy5zZWNvbmRzID8gJ21lZGl1bScgOiAnc2hvcnQnXG4gICAgICB9KSA/PyAnJztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VGltZUxpc3RzKCk7XG4gICAgdGhpcy51cGRhdGVTZWxlY3RUaW1lKCk7XG4gICAgdGhpcy5zZXRDaGFuZ2VIYW5kbGVycygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWyd0aW1lJ10pIHtcbiAgICAgIGlmICghY2hhbmdlc1sndGltZSddLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgIGlmICh0aGlzLl90aW1lSW50ZXJuYWw/LmdldFRpbWUoKSAhPT0gY2hhbmdlc1sndGltZSddLmN1cnJlbnRWYWx1ZT8uZ2V0VGltZSgpKSB7XG4gICAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RUaW1lKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmNvbnRlbnRUZW1wbGF0ZXMuZm9yRWFjaCgoY2hpbGQ6IFRlbXBsYXRlSWREaXJlY3RpdmUpID0+IHtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXNbY2hpbGQuaWRdID0gY2hpbGQudGVtcGxhdGVSZWY7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHNldFRpbWVMaXN0cygpIHtcbiAgICB0aGlzLmRheVBlcmlvZHMgPSBnZXREYXlQZXJpb2RzKHRoaXMubG9jYWxlLCB0aGlzLmRhdGVUaW1lRm9ybWF0T3B0aW9ucyk7XG4gICAgdGhpcy5ob3VyMTIgPSBpc0hvdXIxMih0aGlzLmxvY2FsZSk7XG4gICAgdGhpcy5saXN0T2ZIb3VycyA9IHRoaXMubGlzdE9mVGltZVNlZ21lbnRzKGdldExpc3RPZkhvdXJzLCB0aGlzLmZpbHRlckhvdXJzKTtcbiAgICB0aGlzLmxpc3RPZk1pbnV0ZXMgPSB0aGlzLmxpc3RPZlRpbWVTZWdtZW50cyhnZXRMaXN0T2ZNaW51dGVzLCB0aGlzLmZpbHRlck1pbnV0ZXMpO1xuICAgIHRoaXMubGlzdE9mU2Vjb25kcyA9IHRoaXMubGlzdE9mVGltZVNlZ21lbnRzKGdldExpc3RPZlNlY29uZHMsIHRoaXMuZmlsdGVyU2Vjb25kcyk7XG4gICAgaWYgKHRoaXMudmFyaWFudCA9PT0gJ3NlbGVjdCcpIHtcbiAgICAgIGNvbnN0IHVuZGVmU2VnbWVudCA9IHsgdmFsdWU6IC0xLCBsYWJlbDogJyAtLScsIGRpc2FibGVkOiB0cnVlIH07XG4gICAgICB0aGlzLmxpc3RPZkhvdXJzLnVuc2hpZnQoeyAuLi51bmRlZlNlZ21lbnQgfSk7XG4gICAgICB0aGlzLmxpc3RPZk1pbnV0ZXMudW5zaGlmdCh7IC4uLnVuZGVmU2VnbWVudCB9KTtcbiAgICAgIHRoaXMubGlzdE9mU2Vjb25kcy51bnNoaWZ0KHsgLi4udW5kZWZTZWdtZW50IH0pO1xuICAgIH1cbiAgICB0aGlzLmxpc3RPZkhvdXJzMTIgPSB0aGlzLmhvdXIxMlxuICAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy5saXN0T2ZIb3Vycy5maWx0ZXIoXG4gICAgICAgIChpdGVtKSA9PiAoaXRlbS5kYXlQZXJpb2QgJiYgaXRlbS5kYXlQZXJpb2QgPT09IHRoaXMuZGF5UGVyaW9kKSB8fCAhaXRlbS5kYXlQZXJpb2RcbiAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICA6IHRoaXMubGlzdE9mSG91cnM7XG4gIH1cblxuICB1cGRhdGVTZWxlY3RUaW1lKHRpbWUgPSB0aGlzLnRpbWUpIHtcbiAgICBpZiAoISF0aW1lICYmIGlzVmFsaWRUaW1lKHRpbWUpKSB7XG4gICAgICBjb25zdCBob3VyID0gdGltZS5nZXRIb3VycygpID8/IDA7XG4gICAgICBjb25zdCBtaW51dGUgPSB0aW1lLmdldE1pbnV0ZXMoKSA/PyAwO1xuICAgICAgY29uc3Qgc2Vjb25kID0gdGhpcy5zZWNvbmRzID8gdGltZS5nZXRTZWNvbmRzKCkgPz8gMCA6IDA7XG5cbiAgICAgIGNvbnN0IGNsb3Nlc3RTZWNvbmQgPSB0aGlzLmNsb3Nlc3RUaW1lKHRoaXMubGlzdE9mU2Vjb25kcywgc2Vjb25kKTtcbiAgICAgIGNvbnN0IGNsb3Nlc3RNaW51dGUgPSB0aGlzLmNsb3Nlc3RUaW1lKHRoaXMubGlzdE9mTWludXRlcywgbWludXRlKTtcbiAgICAgIGNvbnN0IGNsb3Nlc3RIb3VyID0gdGhpcy5jbG9zZXN0VGltZSh0aGlzLmxpc3RPZkhvdXJzLCBob3VyKTtcblxuICAgICAgdGhpcy5zZWNvbmQgPSB0aGlzLnNlY29uZHMgPyBjbG9zZXN0U2Vjb25kLnZhbHVlIDogMDtcbiAgICAgIHRoaXMubWludXRlID0gY2xvc2VzdE1pbnV0ZS52YWx1ZTtcbiAgICAgIHRoaXMuaG91ciA9IGNsb3Nlc3RIb3VyLnZhbHVlO1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgICB0aGlzLnBhdGNoU2VsZWN0VGltZVZhbHVlcygpO1xuICAgIH1cbiAgfVxuXG4gIGNsb3Nlc3RUaW1lKHRpbWVBcnJheTogSVRpbWVWYWx1ZVtdLCB0aW1lU2VnbWVudDogbnVtYmVyKSB7XG4gICAgbGV0IGFycmF5ID0gdGltZUFycmF5ID8/IFt7IHZhbHVlOiAwLCBsYWJlbDogJzAwJyB9XTtcbiAgICBpZiAodGhpcy50aW1lKSB7XG4gICAgICBhcnJheSA9IHRpbWVBcnJheS5maWx0ZXIoKGVsKSA9PiBlbC52YWx1ZSA+PSAwKTtcbiAgICAgIGFycmF5ID0gYXJyYXkubGVuZ3RoID8gYXJyYXkgOiB0aW1lQXJyYXk7XG4gICAgfVxuICAgIHJldHVybiBhcnJheS5yZWR1Y2UoKGE6IElUaW1lVmFsdWUsIGI6IElUaW1lVmFsdWUpID0+IHtcbiAgICAgIHJldHVybiBNYXRoLmFicyhiLnZhbHVlIC0gdGltZVNlZ21lbnQpIDwgTWF0aC5hYnMoYS52YWx1ZSAtIHRpbWVTZWdtZW50KSA/IGIgOiBhO1xuICAgIH0pO1xuICB9XG5cbiAgbGlzdE9mVGltZVNlZ21lbnRzKFxuICAgIGdldExpc3RPZlRpbWVTZWdtZW50czogKFxuICAgICAgbG9jYWxlOiBzdHJpbmcsXG4gICAgICBkYXRlVGltZUZvcm1hdE9wdGlvbnM6IERhdGVUaW1lRm9ybWF0T3B0aW9uc1xuICAgICkgPT4gSVRpbWVWYWx1ZVtdLFxuICAgIGZpbHRlclRpbWVTZWdtZW50czogKCh0aW1lU2VnbWVudFZhbHVlOiBudW1iZXIpID0+IGJvb2xlYW4pIHwgdW5kZWZpbmVkXG4gICkge1xuICAgIGNvbnN0IGxpc3QgPSBnZXRMaXN0T2ZUaW1lU2VnbWVudHModGhpcy5sb2NhbGUsIHRoaXMuZGF0ZVRpbWVGb3JtYXRPcHRpb25zKS5maWx0ZXIoXG4gICAgICAoc2VnbWVudDogSVRpbWVWYWx1ZSkgPT4ge1xuICAgICAgICByZXR1cm4gdHlwZW9mIGZpbHRlclRpbWVTZWdtZW50cyA9PT0gJ2Z1bmN0aW9uJyA/IGZpbHRlclRpbWVTZWdtZW50cyhzZWdtZW50LnZhbHVlKSA6IHRydWU7XG4gICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gbGlzdC5sZW5ndGhcbiAgICAgICAgICAgPyBsaXN0XG4gICAgICAgICAgIDogZ2V0TGlzdE9mVGltZVNlZ21lbnRzKHRoaXMubG9jYWxlLCB0aGlzLmRhdGVUaW1lRm9ybWF0T3B0aW9ucykuc2xpY2UoMCwgMSk7XG4gIH1cblxuICBoYW5kbGVTZWxlY3REYXlQZXJpb2RDaGFuZ2UoZGF5UGVyaW9kOiBEYXlQZXJpb2QpIHtcbiAgICBpZiAoZGF5UGVyaW9kICE9PSB0aGlzLmRheVBlcmlvZCkge1xuICAgICAgY29uc3QgaHJzID0gdGhpcy50aW1lPy5nZXRIb3VycygpID8/ICh0aGlzLmhvdXIgPCAwID8gMCA6IHRoaXMuaG91cik7XG4gICAgICBjb25zdCBob3VyID0gaHJzID4gMTIgPyBjb252ZXJ0MjRoVG8xMmgoaHJzKSA6IGNvbnZlcnQxMmhUbzI0aChkYXlQZXJpb2QsIGhycyk7XG4gICAgICB0aGlzLmhvdXIgPSB0aGlzLmNsb3Nlc3RUaW1lKHRoaXMubGlzdE9mSG91cnMsIGhvdXIpLnZhbHVlO1xuICAgICAgaWYgKGhvdXIgPj0gMCkge1xuICAgICAgICB0aGlzLnNldFRpbWUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVNlbGVjdEhvdXJzQ2hhbmdlKGhvdXI6IG51bWJlcikge1xuICAgIHRoaXMuaG91ciA9IGhvdXI7XG4gICAgaWYgKGhvdXIgPj0gMCkge1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0TWludXRlc0NoYW5nZShtaW51dGU6IG51bWJlcikge1xuICAgIHRoaXMubWludXRlID0gbWludXRlO1xuICAgIGlmIChtaW51dGUgPj0gMCkge1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0U2Vjb25kc0NoYW5nZShzZWNvbmQ6IG51bWJlcikge1xuICAgIHRoaXMuc2Vjb25kID0gc2Vjb25kO1xuICAgIGlmIChzZWNvbmQgPj0gMCkge1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgcGF0Y2hTZWxlY3RUaW1lVmFsdWVzKCkge1xuICAgIGNvbnN0IGRheVBlcmlvZCA9IHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdERheVBlcmlvZCcpPy52YWx1ZTtcbiAgICBpZiAodGhpcy5kYXlQZXJpb2QgIT09IGRheVBlcmlvZCkge1xuICAgICAgdGhpcy5zZWxlY3RUaW1lLnBhdGNoVmFsdWUoe1xuICAgICAgICBzZWxlY3REYXlQZXJpb2Q6IHRoaXMuZGF5UGVyaW9kID8/ICdhbSdcbiAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBob3VycyA9IHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdEhvdXJzJyk/LnZhbHVlO1xuICAgIGNvbnN0IG1pbnV0ZXMgPSB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3RNaW51dGVzJyk/LnZhbHVlO1xuICAgIGNvbnN0IHNlY29uZHMgPSB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3RTZWNvbmRzJyk/LnZhbHVlO1xuICAgIGNvbnN0IGdvVXBkYXRlID1cbiAgICAgICh0aGlzLnNlY29uZCA8IDAgJiYgdGhpcy5taW51dGUgPCAwKSB8fFxuICAgICAgKHRoaXMuaG91ciA+PSAwICYmIHRoaXMubWludXRlID49IDAgJiYgdGhpcy5zZWNvbmQgPj0gMCk7XG4gICAgY29uc3QgdGltZUNoYW5nZWQgPSB0aGlzLmhvdXIgIT09IGhvdXJzIHx8IHRoaXMubWludXRlICE9PSBtaW51dGVzIHx8IHRoaXMuc2Vjb25kICE9PSBzZWNvbmRzO1xuICAgIGlmIChnb1VwZGF0ZSAmJiB0aW1lQ2hhbmdlZCkge1xuICAgICAgaWYgKHRoaXMuaG91ciAhPT0gaG91cnMpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RUaW1lLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIHNlbGVjdEhvdXJzOiB0aGlzLmhvdXIgPz8gMFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLm1pbnV0ZSAhPT0gbWludXRlcykge1xuICAgICAgICB0aGlzLnNlbGVjdFRpbWUucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc2VsZWN0TWludXRlczogdGhpcy5taW51dGUgPz8gMFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnNlY29uZCAhPT0gc2Vjb25kcykge1xuICAgICAgICB0aGlzLnNlbGVjdFRpbWUucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc2VsZWN0U2Vjb25kczogdGhpcy5zZWNvbmQgPz8gMFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0cmFja0J5SG91cihpbmRleDogbnVtYmVyLCBob3VyOiBJVGltZVZhbHVlKSB7XG4gICAgcmV0dXJuIGhvdXI7XG4gIH1cblxuICBvbkNoYW5nZSA9ICh2YWx1ZTogRGF0ZSB8IHVuZGVmaW5lZCkgPT4ge307XG4gIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudGltZSA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIGhhbmRsZVRpbWVJbnB1dENoYW5nZSgkZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IHZhbHVlID0gJGV2ZW50LnRhcmdldD8udmFsdWU7XG4gICAgaWYgKCF2YWx1ZSB8fCAhaXNWYWxpZFRpbWUodmFsdWUpKSB7XG4gICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB0aW1lID0gY29udmVydFRpbWVUb0RhdGUodmFsdWUpO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSh0aW1lID8/IG5ldyBEYXRlKERhdGUubm93KCkpKTtcbiAgfVxuXG4gIGhhbmRsZUNsZWFyKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuY2xlYXJUaW1lKCk7XG4gIH1cblxuICBoYW5kbGVCbHVyKCRldmVudDogRm9jdXNFdmVudCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZHJvcGRvd25SZWY/Lm5hdGl2ZUVsZW1lbnQ/LmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMub25CbHVyKCk7XG4gICAgfSwgMTAwKTtcbiAgfVxuXG4gIGhhbmRsZUZvY3VzKCRldmVudDogRm9jdXNFdmVudCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZHJvcGRvd25SZWY/Lm5hdGl2ZUVsZW1lbnQ/LmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTtcbiAgfVxuXG4gIHNldENoYW5nZUhhbmRsZXJzKCkge1xuXG4gICAgaWYgKHRoaXMudmFyaWFudCAhPT0gJ3NlbGVjdCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3RIb3VycycpPy52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAodmFsdWUgPT4ge1xuICAgICAgICAgIHRoaXMuaGFuZGxlU2VsZWN0SG91cnNDaGFuZ2UoPG51bWJlcj52YWx1ZSk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZilcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdE1pbnV0ZXMnKT8udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHZhbHVlID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlbGVjdE1pbnV0ZXNDaGFuZ2UoPG51bWJlcj52YWx1ZSk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZilcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdFNlY29uZHMnKT8udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuc2Vjb25kcyksXG4gICAgICAgIHRhcCh2YWx1ZSA9PiB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVTZWxlY3RTZWNvbmRzQ2hhbmdlKDxudW1iZXI+dmFsdWUpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuI2Rlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG5cbiAgICB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3REYXlQZXJpb2QnKT8udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuaG91cjEyKSxcbiAgICAgICAgdGFwKHZhbHVlID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlbGVjdERheVBlcmlvZENoYW5nZSg8RGF5UGVyaW9kPnZhbHVlKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLiNkZXN0cm95UmVmKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXItdGltZXBpY2tlcnNcIiAqbmdJZj1cInZhcmlhbnQ9PT0nc2VsZWN0J1wiPlxuICA8ZGl2IGNsYXNzPVwicGlja2VyIHRpbWUtcGlja2VyXCI+XG4gICAgPGRpdiBbZm9ybUdyb3VwXT1cInNlbGVjdFRpbWVcIiBjbGFzcz1cInRpbWUtcGlja2VyLWJvZHlcIiBbbmdDbGFzc109XCJ0aW1lUGlja2VyQ2xhc3Nlc1wiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1lLXBpY2tlci1pbmxpbmUtaWNvblwiPjwvc3Bhbj5cbiAgICAgIDxzZWxlY3QgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbnVsbFwiIGNTZWxlY3QgY2xhc3M9XCJtcy0wXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0SG91cnNcIiAoYmx1cik9XCJvbkJsdXIoKVwiIFtzaXppbmddPVwic2l6ZSA/PyAnJ1wiPlxuICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBob3VyIG9mIGxpc3RPZkhvdXJzMTI7IGluZGV4IGFzIGk7IHRyYWNrQnk6IHRyYWNrQnlIb3VyXCIgW25nVmFsdWVdPVwiaG91ci52YWx1ZVwiIFthdHRyLmRpc2FibGVkXT1cImhvdXIuZGlzYWJsZWQgfHwgbnVsbFwiPnt7aG91ci5sYWJlbH19PC9vcHRpb24+XG4gICAgICA8L3NlbGVjdD5cbiAgICAgIHt7JyA6J319PHNlbGVjdCBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBudWxsXCIgY1NlbGVjdCBjbGFzcz1cIm1zLTBcIiBmb3JtQ29udHJvbE5hbWU9XCJzZWxlY3RNaW51dGVzXCIgKGJsdXIpPVwib25CbHVyKClcIiBbc2l6aW5nXT1cInNpemUgPz8gJydcIj5cbiAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IG1pbnV0ZSBvZiBsaXN0T2ZNaW51dGVzXCIgW25nVmFsdWVdPVwibWludXRlLnZhbHVlXCIgW2F0dHIuZGlzYWJsZWRdPVwibWludXRlLmRpc2FibGVkIHx8IG51bGxcIj57e21pbnV0ZS5sYWJlbH19PC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG4gICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwic2Vjb25kc1wiPlxuICAgICAgICB7eycgOid9fTxzZWxlY3QgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbnVsbFwiIGNTZWxlY3QgY2xhc3M9XCJtcy0wXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0U2Vjb25kc1wiIChibHVyKT1cIm9uQmx1cigpXCIgW3NpemluZ109XCJzaXplID8/ICcnXCI+XG4gICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHNlY29uZCBvZiBsaXN0T2ZTZWNvbmRzXCIgW25nVmFsdWVdPVwic2Vjb25kLnZhbHVlXCIgW2F0dHIuZGlzYWJsZWRdPVwic2Vjb25kLmRpc2FibGVkIHx8IG51bGxcIj57e3NlY29uZC5sYWJlbH19PC9vcHRpb24+XG4gICAgICA8L3NlbGVjdD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaG91cjEyXCI+XG4gICAgICAgIDxzZWxlY3QgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbnVsbFwiIGNTZWxlY3QgY2xhc3M9XCJtcy0wXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0RGF5UGVyaW9kXCIgKGJsdXIpPVwib25CbHVyKClcIiBbc2l6aW5nXT1cInNpemUgPz8gJydcIj5cbiAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBkYXlQZXJpb2Qgb2YgZGF5UGVyaW9kc1wiIFtuZ1ZhbHVlXT1cImRheVBlcmlvZC52YWx1ZVwiIGNsYXNzPVwidGltZS1waWNrZXItcm9sbC1jZWxsXCI+e3tkYXlQZXJpb2QubGFiZWx9fTwvb3B0aW9uPlxuICAgICAgICA8L3NlbGVjdD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxjLWRyb3Bkb3duICNkcm9wZG93bj1cImNEcm9wZG93blwiIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCIgY2xhc3M9XCJ0aW1lLXBpY2tlciBwaWNrZXJcIiBbbmdDbGFzc109XCJ0aW1lUGlja2VyQ2xhc3Nlc1wiICpuZ0lmPVwidmFyaWFudD09PSdyb2xsJ1wiIFt2aXNpYmxlXT1cInZpc2libGVcIj5cbiAgPGMtaW5wdXQtZ3JvdXAgW2NhcmV0XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkID8/IGRyb3Bkb3duLnZpc2libGVcIlxuICAgICAgICAgICAgICAgICBbc2l6aW5nXT1cInNpemUgPz8gJydcIlxuICAgICAgICAgICAgICAgICBjRHJvcGRvd25Ub2dnbGVcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJwaWNrZXItaW5wdXQtZ3JvdXBcIj5cbiAgICA8aW5wdXQgKGJsdXIpPVwiaGFuZGxlQmx1cigkZXZlbnQpO1wiXG4gICAgICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlVGltZUlucHV0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAoZm9jdXMpPVwiaGFuZGxlRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJ0aW1lSW5wdXRcIlxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICBjRm9ybUNvbnRyb2xcbiAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQgPyAtMSA6IDBcIlxuICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiXG4gICAgICAgICAgIFthdHRyLnBhdHRlcm5dPVwiaG91cjEyID8gJygoKDBbMS05XSl8KDFbMC0yXSkpOihbMC01XSkoWzAtOV0pXFxcXHMoQXxQKU0pJyA6ICcoWzAxXT9bMC05XXwyWzAtM10pOlswLTVdWzAtOV0nXCJcbiAgICAgICAgICAgW3JlYWRvbmx5XT1cImlucHV0UmVhZE9ubHkgPz8gbnVsbFwiXG4gICAgICAgICAgIFt2YWxpZF09XCJ2YWxpZFwiXG4gICAgPlxuICAgIDxzcGFuICpuZ0lmPVwiaW5kaWNhdG9yIHx8IGNsZWFuZXJcIiBjSW5wdXRHcm91cFRleHQ+XG4gICAgICA8c3BhbiAqbmdJZj1cImluZGljYXRvclwiIGNsYXNzPVwicGlja2VyLWlucHV0LWdyb3VwLWluZGljYXRvclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInBpY2tlci1pbnB1dC1ncm91cC1pY29uIHRpbWUtcGlja2VyLWlucHV0LWljb25cIj48L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiAoY2xpY2spPVwiIWRpc2FibGVkICYmIGhhbmRsZUNsZWFyKCRldmVudClcIiAqbmdJZj1cImNsZWFuZXIgJiYgdGltZSAmJiAhZGlzYWJsZWRcIiBjbGFzcz1cInBpY2tlci1pbnB1dC1ncm91cC1jbGVhbmVyXCIgcm9sZT1cImJ1dHRvblwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInBpY2tlci1pbnB1dC1ncm91cC1pY29uIHRpbWUtcGlja2VyLWNsZWFuZXItaWNvblwiPjwvc3Bhbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L3NwYW4+XG5cbiAgPC9jLWlucHV0LWdyb3VwPlxuICA8ZGl2IGNEcm9wZG93bk1lbnUgI2Ryb3Bkb3duTWVudT1cImNEcm9wZG93bk1lbnVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGltZS1waWNrZXItYm9keSB0aW1lLXBpY2tlci1yb2xsXCIgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7XCI+XG4gICAgICA8Yy10aW1lLXBpY2tlci1yb2xsLWNvbFxuICAgICAgICBbZWxlbWVudHNdPVwibGlzdE9mSG91cnMxMlwiXG4gICAgICAgIFtzZWxlY3RlZF09XCJob3VyXCJcbiAgICAgICAgKHNlbGVjdGVkQ2hhbmdlKT1cImhhbmRsZVNlbGVjdEhvdXJzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWNvbD5cbiAgICAgIDxjLXRpbWUtcGlja2VyLXJvbGwtY29sXG4gICAgICAgIFtlbGVtZW50c109XCJsaXN0T2ZNaW51dGVzXCJcbiAgICAgICAgW3NlbGVjdGVkXT1cIm1pbnV0ZVwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJoYW5kbGVTZWxlY3RNaW51dGVzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWNvbD5cbiAgICAgIDxjLXRpbWUtcGlja2VyLXJvbGwtY29sXG4gICAgICAgICpuZ0lmPVwic2Vjb25kc1wiXG4gICAgICAgIFtlbGVtZW50c109XCJsaXN0T2ZTZWNvbmRzXCJcbiAgICAgICAgW3NlbGVjdGVkXT1cInNlY29uZFwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJoYW5kbGVTZWxlY3RTZWNvbmRzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWNvbD5cbiAgICAgIDxjLXRpbWUtcGlja2VyLXJvbGwtYW0tcG1cbiAgICAgICAgKm5nSWY9XCJob3VyMTJcIiBbZWxlbWVudHNdPVwiZGF5UGVyaW9kc1wiXG4gICAgICAgIFtzZWxlY3RlZF09XCJkYXlQZXJpb2RcIlxuICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiaGFuZGxlU2VsZWN0RGF5UGVyaW9kQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWFtLXBtPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJ0ZW1wbGF0ZXM/LnRpbWVQaWNrZXJGb290ZXJcIiBjbGFzcz1cInBpY2tlci1mb290ZXJcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXM/LnRpbWVQaWNrZXJGb290ZXI7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGRyb3Bkb3dufVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYy1kcm9wZG93bj5cbiJdfQ==
541
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90aW1lLXBpY2tlci90aW1lLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RpbWUtcGlja2VyL3RpbWUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBR04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0UsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUNMLGVBQWUsRUFDZixlQUFlLEVBQ2YsaUJBQWlCLEVBR2pCLE9BQU8sRUFDUCxhQUFhLEVBQ2IsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFdBQVcsRUFFWixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUs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Y2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGVzdHJveVJlZixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIEZvcm1Db250cm9sLFxuICBGb3JtR3JvdXAsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBWYWxpZGF0b3JzXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nQ2xhc3MsIE5nRm9yT2YsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIGNvbnZlcnQxMmhUbzI0aCxcbiAgY29udmVydDI0aFRvMTJoLFxuICBjb252ZXJ0VGltZVRvRGF0ZSxcbiAgRGF0ZVRpbWVGb3JtYXRPcHRpb25zLFxuICBEYXlQZXJpb2QsXG4gIGdldEFtUG0sXG4gIGdldERheVBlcmlvZHMsXG4gIGdldExpc3RPZkhvdXJzLFxuICBnZXRMaXN0T2ZNaW51dGVzLFxuICBnZXRMaXN0T2ZTZWNvbmRzLFxuICBpc0hvdXIxMixcbiAgaXNWYWxpZFRpbWUsXG4gIElUaW1lVmFsdWVcbn0gZnJvbSAnLi90aW1lLnV0aWxzJztcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50LCBEcm9wZG93bk1lbnVEaXJlY3RpdmUsIERyb3Bkb3duVG9nZ2xlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZHJvcGRvd24nO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xEaXJlY3RpdmUsIEZvcm1TZWxlY3REaXJlY3RpdmUsIElucHV0R3JvdXBDb21wb25lbnQsIElucHV0R3JvdXBUZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZm9ybSc7XG5pbXBvcnQgeyBUZW1wbGF0ZUlkRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2hhcmVkJztcbmltcG9ydCB7IFRpbWVQaWNrZXJSb2xsQ29sQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWNvbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGltZVBpY2tlclJvbGxBbVBtQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWFtLXBtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdGltZS1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGltZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90aW1lLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICBleHBvcnRBczogJ2NUaW1lUGlja2VyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nQ2xhc3MsXG4gICAgTmdJZixcbiAgICBOZ0Zvck9mLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBEcm9wZG93bkNvbXBvbmVudCxcbiAgICBEcm9wZG93blRvZ2dsZURpcmVjdGl2ZSxcbiAgICBEcm9wZG93bk1lbnVEaXJlY3RpdmUsXG4gICAgRm9ybUNvbnRyb2xEaXJlY3RpdmUsXG4gICAgRm9ybVNlbGVjdERpcmVjdGl2ZSxcbiAgICBJbnB1dEdyb3VwQ29tcG9uZW50LFxuICAgIElucHV0R3JvdXBUZXh0RGlyZWN0aXZlLFxuICAgIFRpbWVQaWNrZXJSb2xsQ29sQ29tcG9uZW50LFxuICAgIFRpbWVQaWNrZXJSb2xsQW1QbUNvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRpbWVQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcmVhZG9ubHkgI2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9jbGVhbmVyOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaW5kaWNhdG9yOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9pbnB1dFJlYWRPbmx5OiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zZWNvbmRzOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92aXNpYmxlOiBCb29sZWFuSW5wdXQ7XG5cbiAgLyoqXG4gICAqIFRvZ2dsZSB2aXNpYmlsaXR5IG9yIHNldCB0aGUgY29udGVudCBvZiB0aGUgY2xlYW5lciBidXR0b24uXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGNsZWFuZXIodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jbGVhbmVyID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBjbGVhbmVyKCkge1xuICAgIHJldHVybiB0aGlzLl9jbGVhbmVyO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xlYW5lcjogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFNldHMgRGF0ZVRpbWUgZm9ybWF0IG9wdGlvbnMgaW5jbHVkaW5nIHRpbWVab25lXG4gICAqIEB0eXBlIERhdGVUaW1lRm9ybWF0T3B0aW9uc1xuICAgKiBAZGVmYXVsdCB7fVxuICAgKiBAbm90ZSBUaGUgZGF0ZSBvYmplY3QgZG9lc24ndCBzdG9yZSB0aW1lWm9uZSwgaXQga2VlcHMgdGhlIGxvY2FsIHRpbWV6b25lIG9mIHRoZSBicm93c2VyLCByZWdhcmRsZXNzIGlmIHlvdSBwYXJzZWQgVVRDIGRhdGVzLlxuICAgKi9cbiAgQElucHV0KCkgZGF0ZVRpbWVGb3JtYXRPcHRpb25zOiBEYXRlVGltZUZvcm1hdE9wdGlvbnMgPSB7fTtcblxuICAvKipcbiAgICogVG9nZ2xlIHRoZSBkaXNhYmxlZCBzdGF0ZSBmb3IgdGhlIGNvbXBvbmVudC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEZpbHRlciBhdmFpbGFibGUgaG91cnMgdG8gcGljay5cbiAgICogQHR5cGUgKHZhbHVlOiBudW1iZXIpID0+IGJvb2xlYW47XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgZmlsdGVySG91cnM/OiAodmFsdWU6IG51bWJlcikgPT4gYm9vbGVhbjtcblxuICAvKipcbiAgICogRmlsdGVyIGF2YWlsYWJsZSBtaW51dGVzIHRvIHBpY2suXG4gICAqIEB0eXBlICh2YWx1ZTogbnVtYmVyKSA9PiBib29sZWFuO1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIEBJbnB1dCgpIGZpbHRlck1pbnV0ZXM/OiAodmFsdWU6IG51bWJlcikgPT4gYm9vbGVhbjtcblxuICAvKipcbiAgICogRmlsdGVyIGF2YWlsYWJsZSBzZWNvbmRzIHRvIHBpY2suXG4gICAqIEB0eXBlICh2YWx1ZTogbnVtYmVyKSA9PiBib29sZWFuO1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIEBJbnB1dCgpIGZpbHRlclNlY29uZHM/OiAodmFsdWU6IG51bWJlcikgPT4gYm9vbGVhbjtcblxuICAvKipcbiAgICogVG9nZ2xlIHZpc2liaWxpdHkgb3Igc2V0IHRoZSBjb250ZW50IG9mIHRoZSBpbnB1dCBpbmRpY2F0b3IuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGluZGljYXRvcih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2luZGljYXRvciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgaW5kaWNhdG9yKCkge1xuICAgIHJldHVybiB0aGlzLl9pbmRpY2F0b3I7XG4gIH1cblxuICBwcml2YXRlIF9pbmRpY2F0b3I6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIHJlYWRvbmx5IHN0YXRlIGZvciB0aGUgY29tcG9uZW50LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgaW5wdXRSZWFkT25seSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lucHV0UmVhZE9ubHkgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGlucHV0UmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lucHV0UmVhZE9ubHk7XG4gIH1cblxuICBwcml2YXRlIF9pbnB1dFJlYWRPbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRlZmF1bHQgbG9jYWxlIGZvciBjb21wb25lbnRzLiBJZiBub3Qgc2V0LCBpdCBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgYnJvd3Nlci5cbiAgICogQHR5cGUgc3RyaW5nXG4gICAqIEBkZWZhdWx0IGRlZmF1bHRcbiAgICovXG4gIEBJbnB1dCgpIGxvY2FsZTogc3RyaW5nID0gJ2RlZmF1bHQnO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgc2hvcnQgaGludCB2aXNpYmxlIGluIHRpbWUgaW5wdXQuXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKiBAZGVmYXVsdCAnU2VsZWN0IHRpbWUnXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJ1NlbGVjdCB0aW1lJztcblxuICAvKipcbiAgICogVG9nZ2xlIHNlY29uZHMgdmlzaWJpbGl0eS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHNlY29uZHModmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zZWNvbmRzID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBzZWNvbmRzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zZWNvbmRzO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2Vjb25kczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTaXplIHRoZSBjb21wb25lbnQgc21hbGwgb3IgbGFyZ2UuXG4gICAqIEB0eXBlICdzbScgfCAnbGcnIHwgdW5kZWZpbmVkXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgc2l6ZT86ICdzbScgfCAnbGcnO1xuXG4gIC8qKlxuICAgKiBJbml0aWFsIHNlbGVjdGVkIHRpbWUuXG4gICAqIEB0eXBlIERhdGUgfCBzdHJpbmcgfCBudWxsIHwgbnVtYmVyXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHRpbWUodmFsdWU6IERhdGUgfCBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodmFsdWUgJiYgaXNWYWxpZFRpbWUodmFsdWUpKSB7XG4gICAgICBjb25zdCB0aW1lID0gY29udmVydFRpbWVUb0RhdGUodmFsdWUpO1xuICAgICAgaWYgKCF0aW1lKSB7XG4gICAgICAgIHRoaXMuY2xlYXJUaW1lKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuZGF5UGVyaW9kID0gZ2V0QW1QbSh0aW1lLCB0aGlzLmxvY2FsZSk7XG4gICAgICBpZiAodGhpcy5fdGltZT8uZ2V0VGltZSgpICE9PSB0aW1lLmdldFRpbWUoKSkge1xuICAgICAgICB0aGlzLl90aW1lID0gbmV3IERhdGUodGltZS5nZXRUaW1lKCkpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCB0aW1lKCk6IERhdGUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl90aW1lO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGltZT86IERhdGU7XG4gIHByaXZhdGUgX3RpbWVJbnRlcm5hbD86IERhdGU7XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGltZSBwaWNrZXIgdmFyaWFudCB0byBhIHJvbGwgb3Igc2VsZWN0LlxuICAgKiBAdHlwZSAncm9sbCcgfCAnc2VsZWN0J1xuICAgKiBAZGVmYXVsdCAncm9sbCdcbiAgICovXG4gIEBJbnB1dCgpIHZhcmlhbnQ6ICdyb2xsJyB8ICdzZWxlY3QnID0gJ3JvbGwnO1xuXG4gIC8qKlxuICAgKiBUb2dnbGUgdmlzdWFsIHZhbGlkYXRpb24gZmVlZGJhY2suXG4gICAqIEB0eXBlIGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBASW5wdXQoKSB2YWxpZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiBkcm9wZG93biB0aW1lcGlja2VyIG1lbnUgY29tcG9uZW50LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IHZpc2libGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cblxuICBwcml2YXRlIF92aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHRpbWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRlIHwgdW5kZWZpbmVkPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZSB8IHVuZGVmaW5lZD4oZmFsc2UpO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKSBvbkJsdXIoKSB7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoRHJvcGRvd25Db21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBkcm9wZG93blJlZiE6IEVsZW1lbnRSZWY7XG5cbiAgdGVtcGxhdGVzOiBhbnkgPSB7fTtcbiAgQENvbnRlbnRDaGlsZHJlbihUZW1wbGF0ZUlkRGlyZWN0aXZlLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGNvbnRlbnRUZW1wbGF0ZXMhOiBRdWVyeUxpc3Q8VGVtcGxhdGVJZERpcmVjdGl2ZT47XG5cbiAgbGlzdE9mSG91cnMhOiBJVGltZVZhbHVlW107XG4gIGxpc3RPZkhvdXJzMTIhOiBJVGltZVZhbHVlW107XG4gIGxpc3RPZk1pbnV0ZXMhOiBJVGltZVZhbHVlW107XG4gIGxpc3RPZlNlY29uZHMhOiBJVGltZVZhbHVlW107XG4gIGhvdXIxMjogYm9vbGVhbiA9IGlzSG91cjEyKHRoaXMubG9jYWxlKTtcbiAgZGF5UGVyaW9kcyA9IFtcbiAgICB7IHZhbHVlOiAnYW0nLCBsYWJlbDogJ2FtJyB9LFxuICAgIHsgdmFsdWU6ICdwbScsIGxhYmVsOiAncG0nIH1cbiAgXTtcblxuICBzZXQgdGltZUlucHV0VmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudGltZUlucHV0LnNldFZhbHVlKHZhbHVlKTtcbiAgICB0aGlzLl90aW1lSW5wdXRWYWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0IHRpbWVJbnB1dFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpbWVJbnB1dFZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGltZUlucHV0VmFsdWU6IHN0cmluZyA9XG4gICAgdGhpcy50aW1lPy50b0xvY2FsZVRpbWVTdHJpbmcodGhpcy5sb2NhbGUsIHsgdGltZVN0eWxlOiB0aGlzLnNlY29uZHMgPyAnbWVkaXVtJyA6ICdzaG9ydCcgfSkgPz9cbiAgICAnJztcblxuICBnZXQgdGltZVBpY2tlckNsYXNzZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdmb3JtLWNvbnRyb2wnOiB0aGlzLnZhcmlhbnQgPT09ICdzZWxlY3QnICYmIHRoaXMudmFsaWQgIT09IHVuZGVmaW5lZCxcbiAgICAgICdpcy12YWxpZCc6IHRoaXMudmFsaWQgPT09IHRydWUsXG4gICAgICAnaXMtaW52YWxpZCc6IHRoaXMudmFsaWQgPT09IGZhbHNlXG4gICAgfTtcbiAgfVxuXG4gIHNlbGVjdFRpbWUgPSBuZXcgRm9ybUdyb3VwPHtcbiAgICBzZWxlY3RIb3VyczogRm9ybUNvbnRyb2w8bnVtYmVyIHwgbnVsbD47XG4gICAgc2VsZWN0TWludXRlczogRm9ybUNvbnRyb2w8bnVtYmVyIHwgbnVsbD47XG4gICAgc2VsZWN0U2Vjb25kcz86IEZvcm1Db250cm9sPG51bWJlciB8IG51bGw+O1xuICAgIHNlbGVjdERheVBlcmlvZD86IEZvcm1Db250cm9sPCdhbScgfCAncG0nIHwgbnVsbD47XG4gIH0+KFxuICAgIHtcbiAgICAgIHNlbGVjdEhvdXJzOiBuZXcgRm9ybUNvbnRyb2woXG4gICAgICAgIHsgdmFsdWU6IHRoaXMuaG91ciwgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgeyB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5taW4oMCksIFZhbGlkYXRvcnMubWF4KHRoaXMuaG91cjEyID8gMTEgOiAyMyldIH1cbiAgICAgICksXG4gICAgICBzZWxlY3RNaW51dGVzOiBuZXcgRm9ybUNvbnRyb2woXG4gICAgICAgIHsgdmFsdWU6IHRoaXMubWludXRlLCBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCB9LFxuICAgICAgICB7IHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLm1pbigwKSwgVmFsaWRhdG9ycy5tYXgoNTkpXSB9XG4gICAgICApLFxuICAgICAgc2VsZWN0U2Vjb25kczogbmV3IEZvcm1Db250cm9sKFxuICAgICAgICB7IHZhbHVlOiB0aGlzLnNlY29uZCwgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgeyB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5taW4oMCksIFZhbGlkYXRvcnMubWF4KDU5KV0gfVxuICAgICAgKSxcbiAgICAgIHNlbGVjdERheVBlcmlvZDogbmV3IEZvcm1Db250cm9sKFxuICAgICAgICB7IHZhbHVlOiB0aGlzLmRheVBlcmlvZCwgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZFxuICAgICAgKVxuICAgIH0sXG4gICAgeyB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5yZXF1aXJlZF0gfVxuICApO1xuXG4gIHRpbWVJbnB1dCA9IG5ldyBGb3JtQ29udHJvbChcbiAgICB7XG4gICAgICB2YWx1ZTogdGhpcy50aW1lSW5wdXRWYWx1ZSxcbiAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkXG4gICAgfSxcbiAgICB7IHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLnJlcXVpcmVkXSB9XG4gICk7XG5cbiAgc2V0IGhvdXIodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9ob3VyICE9PSB2YWx1ZSkge1xuICAgICAgaWYgKHZhbHVlIDwgMCkge1xuICAgICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9ob3VyID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGhvdXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5faG91cjtcbiAgfVxuXG4gIHByaXZhdGUgX2hvdXIgPSAtMTtcblxuICBzZXQgbWludXRlKHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5fbWludXRlICE9PSB2YWx1ZSkge1xuICAgICAgaWYgKHZhbHVlIDwgMCkge1xuICAgICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9taW51dGUgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBnZXQgbWludXRlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21pbnV0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX21pbnV0ZSA9IC0xO1xuXG4gIHNldCBzZWNvbmQodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9zZWNvbmQgIT09IHZhbHVlKSB7XG4gICAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICAgIHRoaXMuY2xlYXJUaW1lKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3NlY29uZCA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzZWNvbmQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc2Vjb25kO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2Vjb25kID0gLTE7XG5cbiAgc2V0IGRheVBlcmlvZCh2YWx1ZSkge1xuICAgIHRoaXMuX2RheVBlcmlvZCA9IHZhbHVlO1xuICAgIHRoaXMubGlzdE9mSG91cnMxMiA9IHRoaXMuaG91cjEyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPyB0aGlzLmxpc3RPZkhvdXJzPy5maWx0ZXIoXG4gICAgICAgIChpdGVtKSA9PiAoaXRlbS5kYXlQZXJpb2QgJiYgaXRlbS5kYXlQZXJpb2QgPT09IHZhbHVlKSB8fCAhaXRlbS5kYXlQZXJpb2RcbiAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICA6IHRoaXMubGlzdE9mSG91cnM7XG4gICAgdGhpcy5wYXRjaFNlbGVjdFRpbWVWYWx1ZXMoKTtcbiAgfVxuXG4gIGdldCBkYXlQZXJpb2QoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RheVBlcmlvZDtcbiAgfVxuXG4gIHByaXZhdGUgX2RheVBlcmlvZDogRGF5UGVyaW9kID0gJ2FtJztcblxuICBzZXRUaW1lKCkge1xuICAgIHRoaXMuX2hvdXIgPSB0aGlzLl9ob3VyIDwgMCA/IDAgOiB0aGlzLl9ob3VyO1xuICAgIHRoaXMuX21pbnV0ZSA9IHRoaXMuX21pbnV0ZSA8IDAgPyAwIDogdGhpcy5fbWludXRlO1xuICAgIHRoaXMuX3NlY29uZCA9IHRoaXMuX3NlY29uZCA8IDAgPyAwIDogdGhpcy5fc2Vjb25kO1xuXG4gICAgY29uc3QgdGltZSA9IG5ldyBEYXRlKHRoaXMuX3RpbWU/LmdldFRpbWUoKSB8fCBuZXcgRGF0ZSgpKTtcbiAgICB0aW1lLnNldEhvdXJzKHRoaXMuaG91ciwgdGhpcy5taW51dGUsIHRoaXMuc2Vjb25kLCAwKTtcbiAgICB0aGlzLnRpbWUgPSB0aW1lO1xuICAgIHRoaXMuZW1pdFRpbWUodGltZSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJUaW1lKCkge1xuICAgIGlmICh0aGlzLnRpbWUpIHtcbiAgICAgIHRoaXMuX3RpbWUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmVtaXRUaW1lKHVuZGVmaW5lZCk7XG4gICAgfVxuICAgIHRoaXMuX2hvdXIgPSAtMTtcbiAgICB0aGlzLl9taW51dGUgPSAtMTtcbiAgICB0aGlzLl9zZWNvbmQgPSAtMTtcbiAgICB0aGlzLmRheVBlcmlvZCA9ICdhbSc7XG4gICAgdGhpcy5wYXRjaFNlbGVjdFRpbWVWYWx1ZXMoKTtcbiAgICB0aGlzLnRpbWVJbnB1dFZhbHVlID0gJyc7XG4gIH1cblxuICBlbWl0VGltZSh0aW1lOiBEYXRlIHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgdGltZVZhbHVlID0gISF0aW1lICYmIGlzVmFsaWRUaW1lKHRpbWUpID8gbmV3IERhdGUodGltZS5nZXRUaW1lKCkpIDogdW5kZWZpbmVkO1xuICAgIGlmICh0aGlzLl90aW1lSW50ZXJuYWw/LmdldFRpbWUoKSAhPT0gdGltZVZhbHVlPy5nZXRUaW1lKCkpIHtcbiAgICAgIHRoaXMudGltZUNoYW5nZS5lbWl0KHRpbWVWYWx1ZSk7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRpbWVWYWx1ZSk7XG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgdGhpcy5fdGltZUludGVybmFsID0gdGltZVZhbHVlO1xuICAgIH1cbiAgICB0aGlzLnRpbWVJbnB1dFZhbHVlID1cbiAgICAgIHRoaXMudGltZT8udG9Mb2NhbGVUaW1lU3RyaW5nKHRoaXMubG9jYWxlLCB7XG4gICAgICAgIHRpbWVTdHlsZTogdGhpcy5zZWNvbmRzID8gJ21lZGl1bScgOiAnc2hvcnQnXG4gICAgICB9KSA/PyAnJztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VGltZUxpc3RzKCk7XG4gICAgdGhpcy51cGRhdGVTZWxlY3RUaW1lKCk7XG4gICAgdGhpcy5zZXRDaGFuZ2VIYW5kbGVycygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWyd0aW1lJ10pIHtcbiAgICAgIGlmICghY2hhbmdlc1sndGltZSddLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgIGlmICh0aGlzLl90aW1lSW50ZXJuYWw/LmdldFRpbWUoKSAhPT0gY2hhbmdlc1sndGltZSddLmN1cnJlbnRWYWx1ZT8uZ2V0VGltZSgpKSB7XG4gICAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RUaW1lKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmNvbnRlbnRUZW1wbGF0ZXMuZm9yRWFjaCgoY2hpbGQ6IFRlbXBsYXRlSWREaXJlY3RpdmUpID0+IHtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXNbY2hpbGQuaWRdID0gY2hpbGQudGVtcGxhdGVSZWY7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHNldFRpbWVMaXN0cygpIHtcbiAgICB0aGlzLmRheVBlcmlvZHMgPSBnZXREYXlQZXJpb2RzKHRoaXMubG9jYWxlLCB0aGlzLmRhdGVUaW1lRm9ybWF0T3B0aW9ucyk7XG4gICAgdGhpcy5ob3VyMTIgPSBpc0hvdXIxMih0aGlzLmxvY2FsZSk7XG4gICAgdGhpcy5saXN0T2ZIb3VycyA9IHRoaXMubGlzdE9mVGltZVNlZ21lbnRzKGdldExpc3RPZkhvdXJzLCB0aGlzLmZpbHRlckhvdXJzKTtcbiAgICB0aGlzLmxpc3RPZk1pbnV0ZXMgPSB0aGlzLmxpc3RPZlRpbWVTZWdtZW50cyhnZXRMaXN0T2ZNaW51dGVzLCB0aGlzLmZpbHRlck1pbnV0ZXMpO1xuICAgIHRoaXMubGlzdE9mU2Vjb25kcyA9IHRoaXMubGlzdE9mVGltZVNlZ21lbnRzKGdldExpc3RPZlNlY29uZHMsIHRoaXMuZmlsdGVyU2Vjb25kcyk7XG4gICAgaWYgKHRoaXMudmFyaWFudCA9PT0gJ3NlbGVjdCcpIHtcbiAgICAgIGNvbnN0IHVuZGVmU2VnbWVudCA9IHsgdmFsdWU6IC0xLCBsYWJlbDogJyAtLScsIGRpc2FibGVkOiB0cnVlIH07XG4gICAgICB0aGlzLmxpc3RPZkhvdXJzLnVuc2hpZnQoeyAuLi51bmRlZlNlZ21lbnQgfSk7XG4gICAgICB0aGlzLmxpc3RPZk1pbnV0ZXMudW5zaGlmdCh7IC4uLnVuZGVmU2VnbWVudCB9KTtcbiAgICAgIHRoaXMubGlzdE9mU2Vjb25kcy51bnNoaWZ0KHsgLi4udW5kZWZTZWdtZW50IH0pO1xuICAgIH1cbiAgICB0aGlzLmxpc3RPZkhvdXJzMTIgPSB0aGlzLmhvdXIxMlxuICAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy5saXN0T2ZIb3Vycy5maWx0ZXIoXG4gICAgICAgIChpdGVtKSA9PiAoaXRlbS5kYXlQZXJpb2QgJiYgaXRlbS5kYXlQZXJpb2QgPT09IHRoaXMuZGF5UGVyaW9kKSB8fCAhaXRlbS5kYXlQZXJpb2RcbiAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICA6IHRoaXMubGlzdE9mSG91cnM7XG4gIH1cblxuICB1cGRhdGVTZWxlY3RUaW1lKHRpbWUgPSB0aGlzLnRpbWUpIHtcbiAgICBpZiAoISF0aW1lICYmIGlzVmFsaWRUaW1lKHRpbWUpKSB7XG4gICAgICBjb25zdCBob3VyID0gdGltZS5nZXRIb3VycygpID8/IDA7XG4gICAgICBjb25zdCBtaW51dGUgPSB0aW1lLmdldE1pbnV0ZXMoKSA/PyAwO1xuICAgICAgY29uc3Qgc2Vjb25kID0gdGhpcy5zZWNvbmRzID8gdGltZS5nZXRTZWNvbmRzKCkgPz8gMCA6IDA7XG5cbiAgICAgIGNvbnN0IGNsb3Nlc3RTZWNvbmQgPSB0aGlzLmNsb3Nlc3RUaW1lKHRoaXMubGlzdE9mU2Vjb25kcywgc2Vjb25kKTtcbiAgICAgIGNvbnN0IGNsb3Nlc3RNaW51dGUgPSB0aGlzLmNsb3Nlc3RUaW1lKHRoaXMubGlzdE9mTWludXRlcywgbWludXRlKTtcbiAgICAgIGNvbnN0IGNsb3Nlc3RIb3VyID0gdGhpcy5jbG9zZXN0VGltZSh0aGlzLmxpc3RPZkhvdXJzLCBob3VyKTtcblxuICAgICAgdGhpcy5zZWNvbmQgPSB0aGlzLnNlY29uZHMgPyBjbG9zZXN0U2Vjb25kLnZhbHVlIDogMDtcbiAgICAgIHRoaXMubWludXRlID0gY2xvc2VzdE1pbnV0ZS52YWx1ZTtcbiAgICAgIHRoaXMuaG91ciA9IGNsb3Nlc3RIb3VyLnZhbHVlO1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgICB0aGlzLnBhdGNoU2VsZWN0VGltZVZhbHVlcygpO1xuICAgIH1cbiAgfVxuXG4gIGNsb3Nlc3RUaW1lKHRpbWVBcnJheTogSVRpbWVWYWx1ZVtdLCB0aW1lU2VnbWVudDogbnVtYmVyKSB7XG4gICAgbGV0IGFycmF5ID0gdGltZUFycmF5ID8/IFt7IHZhbHVlOiAwLCBsYWJlbDogJzAwJyB9XTtcbiAgICBpZiAodGhpcy50aW1lKSB7XG4gICAgICBhcnJheSA9IHRpbWVBcnJheS5maWx0ZXIoKGVsKSA9PiBlbC52YWx1ZSA+PSAwKTtcbiAgICAgIGFycmF5ID0gYXJyYXkubGVuZ3RoID8gYXJyYXkgOiB0aW1lQXJyYXk7XG4gICAgfVxuICAgIHJldHVybiBhcnJheS5yZWR1Y2UoKGE6IElUaW1lVmFsdWUsIGI6IElUaW1lVmFsdWUpID0+IHtcbiAgICAgIHJldHVybiBNYXRoLmFicyhiLnZhbHVlIC0gdGltZVNlZ21lbnQpIDwgTWF0aC5hYnMoYS52YWx1ZSAtIHRpbWVTZWdtZW50KSA/IGIgOiBhO1xuICAgIH0pO1xuICB9XG5cbiAgbGlzdE9mVGltZVNlZ21lbnRzKFxuICAgIGdldExpc3RPZlRpbWVTZWdtZW50czogKFxuICAgICAgbG9jYWxlOiBzdHJpbmcsXG4gICAgICBkYXRlVGltZUZvcm1hdE9wdGlvbnM6IERhdGVUaW1lRm9ybWF0T3B0aW9uc1xuICAgICkgPT4gSVRpbWVWYWx1ZVtdLFxuICAgIGZpbHRlclRpbWVTZWdtZW50czogKCh0aW1lU2VnbWVudFZhbHVlOiBudW1iZXIpID0+IGJvb2xlYW4pIHwgdW5kZWZpbmVkXG4gICkge1xuICAgIGNvbnN0IGxpc3QgPSBnZXRMaXN0T2ZUaW1lU2VnbWVudHModGhpcy5sb2NhbGUsIHRoaXMuZGF0ZVRpbWVGb3JtYXRPcHRpb25zKS5maWx0ZXIoXG4gICAgICAoc2VnbWVudDogSVRpbWVWYWx1ZSkgPT4ge1xuICAgICAgICByZXR1cm4gdHlwZW9mIGZpbHRlclRpbWVTZWdtZW50cyA9PT0gJ2Z1bmN0aW9uJyA/IGZpbHRlclRpbWVTZWdtZW50cyhzZWdtZW50LnZhbHVlKSA6IHRydWU7XG4gICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gbGlzdC5sZW5ndGhcbiAgICAgICAgICAgPyBsaXN0XG4gICAgICAgICAgIDogZ2V0TGlzdE9mVGltZVNlZ21lbnRzKHRoaXMubG9jYWxlLCB0aGlzLmRhdGVUaW1lRm9ybWF0T3B0aW9ucykuc2xpY2UoMCwgMSk7XG4gIH1cblxuICBoYW5kbGVTZWxlY3REYXlQZXJpb2RDaGFuZ2UoZGF5UGVyaW9kOiBEYXlQZXJpb2QpIHtcbiAgICBpZiAoZGF5UGVyaW9kICE9PSB0aGlzLmRheVBlcmlvZCkge1xuICAgICAgY29uc3QgaHJzID0gdGhpcy50aW1lPy5nZXRIb3VycygpID8/ICh0aGlzLmhvdXIgPCAwID8gMCA6IHRoaXMuaG91cik7XG4gICAgICBjb25zdCBob3VyID0gaHJzID4gMTIgPyBjb252ZXJ0MjRoVG8xMmgoaHJzKSA6IGNvbnZlcnQxMmhUbzI0aChkYXlQZXJpb2QsIGhycyk7XG4gICAgICB0aGlzLmhvdXIgPSB0aGlzLmNsb3Nlc3RUaW1lKHRoaXMubGlzdE9mSG91cnMsIGhvdXIpLnZhbHVlO1xuICAgICAgaWYgKGhvdXIgPj0gMCkge1xuICAgICAgICB0aGlzLnNldFRpbWUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVNlbGVjdEhvdXJzQ2hhbmdlKGhvdXI6IG51bWJlcikge1xuICAgIHRoaXMuaG91ciA9IGhvdXI7XG4gICAgaWYgKGhvdXIgPj0gMCkge1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0TWludXRlc0NoYW5nZShtaW51dGU6IG51bWJlcikge1xuICAgIHRoaXMubWludXRlID0gbWludXRlO1xuICAgIGlmIChtaW51dGUgPj0gMCkge1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0U2Vjb25kc0NoYW5nZShzZWNvbmQ6IG51bWJlcikge1xuICAgIHRoaXMuc2Vjb25kID0gc2Vjb25kO1xuICAgIGlmIChzZWNvbmQgPj0gMCkge1xuICAgICAgdGhpcy5zZXRUaW1lKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgcGF0Y2hTZWxlY3RUaW1lVmFsdWVzKCkge1xuICAgIGNvbnN0IGRheVBlcmlvZCA9IHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdERheVBlcmlvZCcpPy52YWx1ZTtcbiAgICBpZiAodGhpcy5kYXlQZXJpb2QgIT09IGRheVBlcmlvZCkge1xuICAgICAgdGhpcy5zZWxlY3RUaW1lLnBhdGNoVmFsdWUoe1xuICAgICAgICBzZWxlY3REYXlQZXJpb2Q6IHRoaXMuZGF5UGVyaW9kID8/ICdhbSdcbiAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBob3VycyA9IHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdEhvdXJzJyk/LnZhbHVlO1xuICAgIGNvbnN0IG1pbnV0ZXMgPSB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3RNaW51dGVzJyk/LnZhbHVlO1xuICAgIGNvbnN0IHNlY29uZHMgPSB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3RTZWNvbmRzJyk/LnZhbHVlO1xuICAgIGNvbnN0IGdvVXBkYXRlID1cbiAgICAgICh0aGlzLnNlY29uZCA8IDAgJiYgdGhpcy5taW51dGUgPCAwKSB8fFxuICAgICAgKHRoaXMuaG91ciA+PSAwICYmIHRoaXMubWludXRlID49IDAgJiYgdGhpcy5zZWNvbmQgPj0gMCk7XG4gICAgY29uc3QgdGltZUNoYW5nZWQgPSB0aGlzLmhvdXIgIT09IGhvdXJzIHx8IHRoaXMubWludXRlICE9PSBtaW51dGVzIHx8IHRoaXMuc2Vjb25kICE9PSBzZWNvbmRzO1xuICAgIGlmIChnb1VwZGF0ZSAmJiB0aW1lQ2hhbmdlZCkge1xuICAgICAgaWYgKHRoaXMuaG91ciAhPT0gaG91cnMpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RUaW1lLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIHNlbGVjdEhvdXJzOiB0aGlzLmhvdXIgPz8gMFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLm1pbnV0ZSAhPT0gbWludXRlcykge1xuICAgICAgICB0aGlzLnNlbGVjdFRpbWUucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc2VsZWN0TWludXRlczogdGhpcy5taW51dGUgPz8gMFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnNlY29uZCAhPT0gc2Vjb25kcykge1xuICAgICAgICB0aGlzLnNlbGVjdFRpbWUucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc2VsZWN0U2Vjb25kczogdGhpcy5zZWNvbmQgPz8gMFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0cmFja0J5SG91cihpbmRleDogbnVtYmVyLCBob3VyOiBJVGltZVZhbHVlKSB7XG4gICAgcmV0dXJuIGhvdXI7XG4gIH1cblxuICBvbkNoYW5nZSA9ICh2YWx1ZTogRGF0ZSB8IHVuZGVmaW5lZCkgPT4ge307XG4gIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudGltZSA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIGhhbmRsZVRpbWVJbnB1dENoYW5nZSgkZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IHZhbHVlID0gJGV2ZW50LnRhcmdldD8udmFsdWU7XG4gICAgaWYgKCF2YWx1ZSB8fCAhaXNWYWxpZFRpbWUodmFsdWUpKSB7XG4gICAgICB0aGlzLmNsZWFyVGltZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB0aW1lID0gY29udmVydFRpbWVUb0RhdGUodmFsdWUpO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0VGltZSh0aW1lID8/IG5ldyBEYXRlKERhdGUubm93KCkpKTtcbiAgfVxuXG4gIGhhbmRsZUNsZWFyKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuY2xlYXJUaW1lKCk7XG4gIH1cblxuICBoYW5kbGVCbHVyKCRldmVudDogRm9jdXNFdmVudCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZHJvcGRvd25SZWY/Lm5hdGl2ZUVsZW1lbnQ/LmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMub25CbHVyKCk7XG4gICAgfSwgMTAwKTtcbiAgfVxuXG4gIGhhbmRsZUZvY3VzKCRldmVudDogRm9jdXNFdmVudCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZHJvcGRvd25SZWY/Lm5hdGl2ZUVsZW1lbnQ/LmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTtcbiAgfVxuXG4gIHNldENoYW5nZUhhbmRsZXJzKCkge1xuXG4gICAgaWYgKHRoaXMudmFyaWFudCAhPT0gJ3NlbGVjdCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3RIb3VycycpPy52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAodmFsdWUgPT4ge1xuICAgICAgICAgIHRoaXMuaGFuZGxlU2VsZWN0SG91cnNDaGFuZ2UoPG51bWJlcj52YWx1ZSk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZilcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdE1pbnV0ZXMnKT8udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHZhbHVlID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlbGVjdE1pbnV0ZXNDaGFuZ2UoPG51bWJlcj52YWx1ZSk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZilcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuc2VsZWN0VGltZS5nZXQoJ3NlbGVjdFNlY29uZHMnKT8udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuc2Vjb25kcyksXG4gICAgICAgIHRhcCh2YWx1ZSA9PiB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVTZWxlY3RTZWNvbmRzQ2hhbmdlKDxudW1iZXI+dmFsdWUpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuI2Rlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG5cbiAgICB0aGlzLnNlbGVjdFRpbWUuZ2V0KCdzZWxlY3REYXlQZXJpb2QnKT8udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuaG91cjEyKSxcbiAgICAgICAgdGFwKHZhbHVlID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlbGVjdERheVBlcmlvZENoYW5nZSg8RGF5UGVyaW9kPnZhbHVlKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLiNkZXN0cm95UmVmKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXItdGltZXBpY2tlcnNcIiAqbmdJZj1cInZhcmlhbnQ9PT0nc2VsZWN0J1wiPlxuICA8ZGl2IGNsYXNzPVwicGlja2VyIHRpbWUtcGlja2VyXCI+XG4gICAgPGRpdiBbZm9ybUdyb3VwXT1cInNlbGVjdFRpbWVcIiBjbGFzcz1cInRpbWUtcGlja2VyLWJvZHlcIiBbbmdDbGFzc109XCJ0aW1lUGlja2VyQ2xhc3Nlc1wiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1lLXBpY2tlci1pbmxpbmUtaWNvblwiPjwvc3Bhbj5cbiAgICAgIDxzZWxlY3QgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbnVsbFwiIGNTZWxlY3QgY2xhc3M9XCJtcy0wXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0SG91cnNcIiAoYmx1cik9XCJvbkJsdXIoKVwiIFtzaXppbmddPVwic2l6ZSA/PyAnJ1wiPlxuICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBob3VyIG9mIGxpc3RPZkhvdXJzMTI7IGluZGV4IGFzIGk7IHRyYWNrQnk6IHRyYWNrQnlIb3VyXCIgW25nVmFsdWVdPVwiaG91ci52YWx1ZVwiIFthdHRyLmRpc2FibGVkXT1cImhvdXIuZGlzYWJsZWQgfHwgbnVsbFwiPnt7aG91ci5sYWJlbH19PC9vcHRpb24+XG4gICAgICA8L3NlbGVjdD5cbiAgICAgIHt7JyA6J319PHNlbGVjdCBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBudWxsXCIgY1NlbGVjdCBjbGFzcz1cIm1zLTBcIiBmb3JtQ29udHJvbE5hbWU9XCJzZWxlY3RNaW51dGVzXCIgKGJsdXIpPVwib25CbHVyKClcIiBbc2l6aW5nXT1cInNpemUgPz8gJydcIj5cbiAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IG1pbnV0ZSBvZiBsaXN0T2ZNaW51dGVzXCIgW25nVmFsdWVdPVwibWludXRlLnZhbHVlXCIgW2F0dHIuZGlzYWJsZWRdPVwibWludXRlLmRpc2FibGVkIHx8IG51bGxcIj57e21pbnV0ZS5sYWJlbH19PC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG4gICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwic2Vjb25kc1wiPlxuICAgICAgICB7eycgOid9fTxzZWxlY3QgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbnVsbFwiIGNTZWxlY3QgY2xhc3M9XCJtcy0wXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0U2Vjb25kc1wiIChibHVyKT1cIm9uQmx1cigpXCIgW3NpemluZ109XCJzaXplID8/ICcnXCI+XG4gICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHNlY29uZCBvZiBsaXN0T2ZTZWNvbmRzXCIgW25nVmFsdWVdPVwic2Vjb25kLnZhbHVlXCIgW2F0dHIuZGlzYWJsZWRdPVwic2Vjb25kLmRpc2FibGVkIHx8IG51bGxcIj57e3NlY29uZC5sYWJlbH19PC9vcHRpb24+XG4gICAgICA8L3NlbGVjdD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaG91cjEyXCI+XG4gICAgICAgIDxzZWxlY3QgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbnVsbFwiIGNTZWxlY3QgY2xhc3M9XCJtcy0wXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0RGF5UGVyaW9kXCIgKGJsdXIpPVwib25CbHVyKClcIiBbc2l6aW5nXT1cInNpemUgPz8gJydcIj5cbiAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBkYXlQZXJpb2Qgb2YgZGF5UGVyaW9kc1wiIFtuZ1ZhbHVlXT1cImRheVBlcmlvZC52YWx1ZVwiIGNsYXNzPVwidGltZS1waWNrZXItcm9sbC1jZWxsXCI+e3tkYXlQZXJpb2QubGFiZWx9fTwvb3B0aW9uPlxuICAgICAgICA8L3NlbGVjdD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxjLWRyb3Bkb3duICNkcm9wZG93bj1cImNEcm9wZG93blwiIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCIgY2xhc3M9XCJ0aW1lLXBpY2tlciBwaWNrZXJcIiBbbmdDbGFzc109XCJ0aW1lUGlja2VyQ2xhc3Nlc1wiICpuZ0lmPVwidmFyaWFudD09PSdyb2xsJ1wiIFt2aXNpYmxlXT1cInZpc2libGVcIj5cbiAgPGMtaW5wdXQtZ3JvdXAgW2NhcmV0XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkID8/IGRyb3Bkb3duLnZpc2libGVcIlxuICAgICAgICAgICAgICAgICBbc2l6aW5nXT1cInNpemUgPz8gJydcIlxuICAgICAgICAgICAgICAgICBjRHJvcGRvd25Ub2dnbGVcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJwaWNrZXItaW5wdXQtZ3JvdXBcIj5cbiAgICA8aW5wdXQgKGJsdXIpPVwiaGFuZGxlQmx1cigkZXZlbnQpO1wiXG4gICAgICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlVGltZUlucHV0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAoZm9jdXMpPVwiaGFuZGxlRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJ0aW1lSW5wdXRcIlxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICBjRm9ybUNvbnRyb2xcbiAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQgPyAtMSA6IDBcIlxuICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiXG4gICAgICAgICAgIFthdHRyLnBhdHRlcm5dPVwiaG91cjEyID8gJygoKDBbMS05XSl8KDFbMC0yXSkpOihbMC01XSkoWzAtOV0pXFxcXHMoQXxQKU0pJyA6ICcoWzAxXT9bMC05XXwyWzAtM10pOlswLTVdWzAtOV0nXCJcbiAgICAgICAgICAgW3JlYWRvbmx5XT1cImlucHV0UmVhZE9ubHkgPz8gbnVsbFwiXG4gICAgICAgICAgIFt2YWxpZF09XCJ2YWxpZFwiXG4gICAgPlxuICAgIDxzcGFuICpuZ0lmPVwiaW5kaWNhdG9yIHx8IGNsZWFuZXJcIiBjSW5wdXRHcm91cFRleHQ+XG4gICAgICA8c3BhbiAqbmdJZj1cImluZGljYXRvclwiIGNsYXNzPVwicGlja2VyLWlucHV0LWdyb3VwLWluZGljYXRvclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInBpY2tlci1pbnB1dC1ncm91cC1pY29uIHRpbWUtcGlja2VyLWlucHV0LWljb25cIj48L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiAoY2xpY2spPVwiIWRpc2FibGVkICYmIGhhbmRsZUNsZWFyKCRldmVudClcIiAqbmdJZj1cImNsZWFuZXIgJiYgdGltZSAmJiAhZGlzYWJsZWRcIiBjbGFzcz1cInBpY2tlci1pbnB1dC1ncm91cC1jbGVhbmVyXCIgcm9sZT1cImJ1dHRvblwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInBpY2tlci1pbnB1dC1ncm91cC1pY29uIHRpbWUtcGlja2VyLWNsZWFuZXItaWNvblwiPjwvc3Bhbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L3NwYW4+XG5cbiAgPC9jLWlucHV0LWdyb3VwPlxuICA8ZGl2IGNEcm9wZG93bk1lbnUgI2Ryb3Bkb3duTWVudT1cImNEcm9wZG93bk1lbnVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGltZS1waWNrZXItYm9keSB0aW1lLXBpY2tlci1yb2xsXCIgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7XCI+XG4gICAgICA8Yy10aW1lLXBpY2tlci1yb2xsLWNvbFxuICAgICAgICBbZWxlbWVudHNdPVwibGlzdE9mSG91cnMxMlwiXG4gICAgICAgIFtzZWxlY3RlZF09XCJob3VyXCJcbiAgICAgICAgKHNlbGVjdGVkQ2hhbmdlKT1cImhhbmRsZVNlbGVjdEhvdXJzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWNvbD5cbiAgICAgIDxjLXRpbWUtcGlja2VyLXJvbGwtY29sXG4gICAgICAgIFtlbGVtZW50c109XCJsaXN0T2ZNaW51dGVzXCJcbiAgICAgICAgW3NlbGVjdGVkXT1cIm1pbnV0ZVwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJoYW5kbGVTZWxlY3RNaW51dGVzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWNvbD5cbiAgICAgIDxjLXRpbWUtcGlja2VyLXJvbGwtY29sXG4gICAgICAgICpuZ0lmPVwic2Vjb25kc1wiXG4gICAgICAgIFtlbGVtZW50c109XCJsaXN0T2ZTZWNvbmRzXCJcbiAgICAgICAgW3NlbGVjdGVkXT1cInNlY29uZFwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJoYW5kbGVTZWxlY3RTZWNvbmRzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWNvbD5cbiAgICAgIDxjLXRpbWUtcGlja2VyLXJvbGwtYW0tcG1cbiAgICAgICAgKm5nSWY9XCJob3VyMTJcIiBbZWxlbWVudHNdPVwiZGF5UGVyaW9kc1wiXG4gICAgICAgIFtzZWxlY3RlZF09XCJkYXlQZXJpb2RcIlxuICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiaGFuZGxlU2VsZWN0RGF5UGVyaW9kQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVmcmVzaF09XCJkcm9wZG93bk1lbnUudmlzaWJsZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgID5cbiAgICAgIDwvYy10aW1lLXBpY2tlci1yb2xsLWFtLXBtPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJ0ZW1wbGF0ZXM/LnRpbWVQaWNrZXJGb290ZXJcIiBjbGFzcz1cInBpY2tlci1mb290ZXJcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXM/LnRpbWVQaWNrZXJGb290ZXI7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGRyb3Bkb3dufVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYy1kcm9wZG93bj5cbiJdfQ==
@@ -9,8 +9,8 @@ import { DayPeriodElementDirective, TimePickerRollAmPmComponent } from './time-p
9
9
  import { TimePickerComponent } from './time-picker.component';
10
10
  import * as i0 from "@angular/core";
11
11
  export class TimePickerModule {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TimePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.10", ngImport: i0, type: TimePickerModule, imports: [CommonModule,
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: TimePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: TimePickerModule, imports: [CommonModule,
14
14
  ReactiveFormsModule,
15
15
  FormModule,
16
16
  ButtonModule,
@@ -20,7 +20,7 @@ export class TimePickerModule {
20
20
  TimePickerComponent,
21
21
  TimePickerRollAmPmComponent,
22
22
  TimePickerRollColComponent], exports: [TimePickerComponent] }); }
23
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TimePickerModule, imports: [CommonModule,
23
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: TimePickerModule, imports: [CommonModule,
24
24
  ReactiveFormsModule,
25
25
  FormModule,
26
26
  ButtonModule,
@@ -29,7 +29,7 @@ export class TimePickerModule {
29
29
  TimePickerRollAmPmComponent,
30
30
  TimePickerRollColComponent] }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: TimePickerModule, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: TimePickerModule, decorators: [{
33
33
  type: NgModule,
34
34
  args: [{
35
35
  declarations: [],
@@ -48,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
48
48
  exports: [TimePickerComponent]
49
49
  }]
50
50
  }] });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90aW1lLXBpY2tlci90aW1lLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDekgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakksT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBa0I5RCxNQUFNLE9BQU8sZ0JBQWdCOytHQUFoQixnQkFBZ0I7Z0hBQWhCLGdCQUFnQixZQWJ6QixZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLFVBQVU7WUFDVixZQUFZO1lBQ1osY0FBYztZQUNkLHlCQUF5QjtZQUN6QixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEIsYUFFbEIsbUJBQW1CO2dIQUVsQixnQkFBZ0IsWUFiekIsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixVQUFVO1lBQ1YsWUFBWTtZQUNaLGNBQWM7WUFHZCxtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLDBCQUEwQjs7NEZBSWpCLGdCQUFnQjtrQkFoQjVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsVUFBVTt3QkFDVixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QseUJBQXlCO3dCQUN6QixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1Nb2R1bGUgfSBmcm9tICcuLi9mb3JtJztcblxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi4vZHJvcGRvd24nO1xuaW1wb3J0IHsgVGltZUVsZW1lbnREaXJlY3RpdmUsIFRpbWVQaWNrZXJSb2xsQ29sQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWNvbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF5UGVyaW9kRWxlbWVudERpcmVjdGl2ZSwgVGltZVBpY2tlclJvbGxBbVBtQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWFtLXBtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaW1lUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybU1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgRHJvcGRvd25Nb2R1bGUsXG4gICAgRGF5UGVyaW9kRWxlbWVudERpcmVjdGl2ZSxcbiAgICBUaW1lRWxlbWVudERpcmVjdGl2ZSxcbiAgICBUaW1lUGlja2VyQ29tcG9uZW50LFxuICAgIFRpbWVQaWNrZXJSb2xsQW1QbUNvbXBvbmVudCxcbiAgICBUaW1lUGlja2VyUm9sbENvbENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbVGltZVBpY2tlckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlck1vZHVsZSB7fVxuIl19
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90aW1lLXBpY2tlci90aW1lLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDekgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakksT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBa0I5RCxNQUFNLE9BQU8sZ0JBQWdCOzhHQUFoQixnQkFBZ0I7K0dBQWhCLGdCQUFnQixZQWJ6QixZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLFVBQVU7WUFDVixZQUFZO1lBQ1osY0FBYztZQUNkLHlCQUF5QjtZQUN6QixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEIsYUFFbEIsbUJBQW1COytHQUVsQixnQkFBZ0IsWUFiekIsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixVQUFVO1lBQ1YsWUFBWTtZQUNaLGNBQWM7WUFHZCxtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLDBCQUEwQjs7MkZBSWpCLGdCQUFnQjtrQkFoQjVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsVUFBVTt3QkFDVixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QseUJBQXlCO3dCQUN6QixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1Nb2R1bGUgfSBmcm9tICcuLi9mb3JtJztcblxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi4vZHJvcGRvd24nO1xuaW1wb3J0IHsgVGltZUVsZW1lbnREaXJlY3RpdmUsIFRpbWVQaWNrZXJSb2xsQ29sQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWNvbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF5UGVyaW9kRWxlbWVudERpcmVjdGl2ZSwgVGltZVBpY2tlclJvbGxBbVBtQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci1yb2xsLWNvbC90aW1lLXBpY2tlci1yb2xsLWFtLXBtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaW1lUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lLXBpY2tlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybU1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgRHJvcGRvd25Nb2R1bGUsXG4gICAgRGF5UGVyaW9kRWxlbWVudERpcmVjdGl2ZSxcbiAgICBUaW1lRWxlbWVudERpcmVjdGl2ZSxcbiAgICBUaW1lUGlja2VyQ29tcG9uZW50LFxuICAgIFRpbWVQaWNrZXJSb2xsQW1QbUNvbXBvbmVudCxcbiAgICBUaW1lUGlja2VyUm9sbENvbENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbVGltZVBpY2tlckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlck1vZHVsZSB7fVxuIl19
@@ -135,8 +135,8 @@ export class ToastComponent {
135
135
  clearInterval(this.clockId);
136
136
  this.clockId = null;
137
137
  }
138
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: ToastComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.ToasterService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
139
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: ToastComponent, isStandalone: true, selector: "c-toast", inputs: { autohide: "autohide", color: "color", delay: "delay", fade: "fade", visible: "visible", index: "index" }, outputs: { visibleChange: "visibleChange", timer: "timer" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()" }, properties: { "@.disabled": "this.animationDisabled", "@fadeInOut": "this.animateType", "class": "this.hostClasses" } }, exportAs: ["cToast"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;overflow:hidden}\n"], animations: [
138
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: ToastComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.ToasterService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
139
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: ToastComponent, isStandalone: true, selector: "c-toast", inputs: { autohide: "autohide", color: "color", delay: "delay", fade: "fade", visible: "visible", index: "index" }, outputs: { visibleChange: "visibleChange", timer: "timer" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()" }, properties: { "@.disabled": "this.animationDisabled", "@fadeInOut": "this.animateType", "class": "this.hostClasses" } }, exportAs: ["cToast"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;overflow:hidden}\n"], animations: [
140
140
  trigger('fadeInOut', [
141
141
  state('show', style({ opacity: 1, height: '*', padding: '*', border: '*', margin: '*' })),
142
142
  state('hide', style({ opacity: 0, height: 0, padding: 0, border: 0, margin: 0 })),
@@ -158,7 +158,7 @@ export class ToastComponent {
158
158
  ])
159
159
  ] }); }
160
160
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: ToastComponent, decorators: [{
161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: ToastComponent, decorators: [{
162
162
  type: Component,
163
163
  args: [{ selector: 'c-toast', template: '<ng-content></ng-content>', exportAs: 'cToast', standalone: true, animations: [
164
164
  trigger('fadeInOut', [
@@ -181,7 +181,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
181
181
  })
182
182
  ])
183
183
  ], styles: [":host{display:block;overflow:hidden}\n"] }]
184
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.ToasterService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autohide: [{
184
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.ToasterService }, { type: i0.ChangeDetectorRef }], propDecorators: { autohide: [{
185
185
  type: Input
186
186
  }], color: [{
187
187
  type: Input
@@ -213,4 +213,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
213
213
  type: HostBinding,
214
214
  args: ['class']
215
215
  }] } });
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90b2FzdC90b2FzdC90b2FzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFvQzVFLE1BQU0sT0FBTyxjQUFjO0lBT3pCLFlBQ1MsV0FBdUIsRUFDdkIsUUFBbUIsRUFDbkIsY0FBOEIsRUFDOUIsaUJBQW9DO1FBSHBDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFHN0M7OztXQUdHO1FBQ00sYUFBUSxHQUFHLElBQUksQ0FBQztRQUV6Qjs7O1dBR0c7UUFDTSxVQUFLLEdBQVksRUFBRSxDQUFDO1FBRTdCOzs7V0FHRztRQUNNLFVBQUssR0FBRyxJQUFJLENBQUM7UUFFdEI7OztXQUdHO1FBQ00sU0FBSSxHQUFHLElBQUksQ0FBQztRQXFCYixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBT3pCOzs7V0FHRztRQUNPLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV0RDs7O1dBR0c7UUFDTyxVQUFLLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7SUE5RHhELENBQUM7SUEwQko7OztPQUdHO0lBQ0gsSUFDSSxPQUFP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LEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUU7NkJBQzlDLENBQUM7NEJBQ0YsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEVBQUU7Z0NBQy9ELE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRTs2QkFDN0MsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO3NMQW9CUSxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLEtBQUs7c0JBQWIsS0FBSztnQkFNRyxLQUFLO3NCQUFiLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQU9GLE9BQU87c0JBRFYsS0FBSztnQkFvQkcsS0FBSztzQkFBYixLQUFLO2dCQU1JLGFBQWE7c0JBQXRCLE1BQU07Z0JBTUcsS0FBSztzQkFBZCxNQUFNO2dCQW1CSCxpQkFBaUI7c0JBRHBCLFdBQVc7dUJBQUMsWUFBWTtnQkFNckIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLFlBQVk7Z0JBS0UsV0FBVztzQkFBckMsWUFBWTt1QkFBQyxXQUFXO2dCQUlDLFVBQVU7c0JBQW5DLFlBQVk7dUJBQUMsVUFBVTtnQkFLcEIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9jb3JldWkudHlwZXMnO1xuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuLi90b2FzdGVyL3RvYXN0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUVG9hc3RlclBsYWNlbWVudCB9IGZyb20gJy4uL3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQnO1xuXG50eXBlIEFuaW1hdGVUeXBlID0gKCdoaWRlJyB8ICdzaG93Jyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdG9hc3QnLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdHlsZVVybHM6IFsnLi90b2FzdC5jb21wb25lbnQuc2NzcyddLFxuICBleHBvcnRBczogJ2NUb2FzdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdmYWRlSW5PdXQnLCBbXG4gICAgICBzdGF0ZSgnc2hvdycsIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnKicsIHBhZGRpbmc6ICcqJywgYm9yZGVyOiAnKicsIG1hcmdpbjogJyonIH0pKSxcbiAgICAgIHN0YXRlKCdoaWRlJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAsIHBhZGRpbmc6IDAsIGJvcmRlcjogMCwgbWFyZ2luOiAwIH0pKSxcbiAgICAgIHN0YXRlKCd2b2lkJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAsIHBhZGRpbmc6IDAsIGJvcmRlcjogMCwgbWFyZ2luOiAwIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oJ3Nob3cgPT4gaGlkZScsIFtcbiAgICAgICAgYW5pbWF0ZSgne3sgdGltZSB9fSB7eyBlYXNpbmcgfX0nKVxuICAgICAgXSwge1xuICAgICAgICBwYXJhbXM6IHsgdGltZTogJzMwMG1zJywgZWFzaW5nOiAnZWFzZS1vdXQnIH1cbiAgICAgIH0pLFxuICAgICAgdHJhbnNpdGlvbignaGlkZSA9PiBzaG93JywgW2FuaW1hdGUoJ3t7IHRpbWUgfX0ge3sgZWFzaW5nIH19JyldLCB7XG4gICAgICAgIHBhcmFtczogeyB0aW1lOiAnMzAwbXMnLCBlYXNpbmc6ICdlYXNlLWluJyB9XG4gICAgICB9KSxcbiAgICAgIHRyYW5zaXRpb24oJ3Nob3cgPT4gdm9pZCcsIFthbmltYXRlKCd7eyB0aW1lIH19IHt7IGVhc2luZyB9fScpXSwge1xuICAgICAgICBwYXJhbXM6IHsgdGltZTogJzMwMG1zJywgZWFzaW5nOiAnZWFzZS1vdXQnIH1cbiAgICAgIH0pLFxuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiBzaG93JywgW2FuaW1hdGUoJ3t7IHRpbWUgfX0ge3sgZWFzaW5nIH19JyldLCB7XG4gICAgICAgIHBhcmFtczogeyB0aW1lOiAnMzAwbXMnLCBlYXNpbmc6ICdlYXNlLWluJyB9XG4gICAgICB9KVxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Zpc2libGU6IEJvb2xlYW5JbnB1dDtcblxuICBwdWJsaWMgZHluYW1pYyE6IGJvb2xlYW47XG4gIHB1YmxpYyBwbGFjZW1lbnQhOiBUVG9hc3RlclBsYWNlbWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHVibGljIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcbiAgICBwdWJsaWMgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICAvKipcbiAgICogQXV0byBoaWRlIHRoZSB0b2FzdC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KCkgYXV0b2hpZGUgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xvciBjb250ZXh0IG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICBASW5wdXQoKSBjb2xvcj86IENvbG9ycyA9ICcnO1xuXG4gIC8qKlxuICAgKiBEZWxheSBoaWRpbmcgdGhlIHRvYXN0IChtcykuXG4gICAqIEB0eXBlIG51bWJlclxuICAgKi9cbiAgQElucHV0KCkgZGVsYXkgPSA1MDAwO1xuXG4gIC8qKlxuICAgKiBBcHBseSBmYWRlIHRyYW5zaXRpb24gdG8gdGhlIHRvYXN0LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoKSBmYWRlID0gdHJ1ZTtcblxuICAvKipcbiAgICogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIGNvbXBvbmVudC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgaWYgKHRoaXMuX3Zpc2libGUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICB0aGlzLl92aXNpYmxlID0gbmV3VmFsdWU7XG4gICAgICBuZXdWYWx1ZSA/IHRoaXMuc2V0VGltZXIoKSA6IHRoaXMuY2xlYXJUaW1lcigpO1xuICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBnZXQgdmlzaWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuXG4gIHByaXZhdGUgX3Zpc2libGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgb24gdmlzaWJpbGl0eSBjaGFuZ2UuIFtkb2NzXVxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCBvbiB0aW1lciB0aWNrLiBbZG9jc11cbiAgICogQHR5cGUgbnVtYmVyXG4gICAqL1xuICBAT3V0cHV0KCkgdGltZXI6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgdGltZXJJZDogYW55O1xuICBwcml2YXRlIGNsb2NrSWQ6IGFueTtcbiAgcHJpdmF0ZSBjbG9ja1RpbWVySWQ6IGFueTtcblxuICBwcml2YXRlIF9jbG9jayE6IG51bWJlcjtcblxuICBnZXQgY2xvY2soKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fY2xvY2s7XG4gIH1cblxuICBzZXQgY2xvY2sodmFsdWUpIHtcbiAgICB0aGlzLl9jbG9jayA9IHZhbHVlO1xuICAgIHRoaXMudGltZXIuZW1pdCh0aGlzLl9jbG9jayk7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnQC5kaXNhYmxlZCcpXG4gIGdldCBhbmltYXRpb25EaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZmFkZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnQGZhZGVJbk91dCcpXG4gIGdldCBhbmltYXRlVHlwZSgpOiBBbmltYXRlVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZSA/ICdzaG93JyA6ICdoaWRlJztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlb3ZlcicpIG9uTW91c2VPdmVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJUaW1lcigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VvdXQnKSBvbk1vdXNlT3V0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VGltZXIoKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgdG9hc3Q6IHRydWUsXG4gICAgICBzaG93OiB0cnVlLFxuICAgICAgW2BiZy0ke3RoaXMuY29sb3J9YF06ICEhdGhpcy5jb2xvcixcbiAgICAgICdib3JkZXItMCc6ICEhdGhpcy5jb2xvclxuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52aXNpYmxlKSB7XG4gICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnNldFN0YXRlKHtcbiAgICAgICAgdG9hc3Q6IHRoaXMsXG4gICAgICAgIHNob3c6IHRoaXMudmlzaWJsZSxcbiAgICAgICAgcGxhY2VtZW50OiB0aGlzLnBsYWNlbWVudFxuICAgICAgfSk7XG4gICAgICB0aGlzLmNsZWFyVGltZXIoKTtcbiAgICAgIHRoaXMuc2V0VGltZXIoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyVGltZXIoKTtcbiAgfVxuXG4gIHNldFRpbWVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJUaW1lcigpO1xuICAgIGlmICh0aGlzLmF1dG9oaWRlICYmIHRoaXMudmlzaWJsZSkge1xuICAgICAgdGhpcy50aW1lcklkID0gdGhpcy5kZWxheSA+IDAgPyBzZXRUaW1lb3V0KCgpID0+IHRoaXMub25DbG9zZSgpLCB0aGlzLmRlbGF5KSA6IG51bGw7XG4gICAgICB0aGlzLnNldENsb2NrKCk7XG4gICAgfVxuICB9XG5cbiAgY2xlYXJUaW1lcigpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyQ2xvY2soKTtcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lcklkKTtcbiAgICB0aGlzLnRpbWVySWQgPSBudWxsO1xuICB9XG5cbiAgb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyVGltZXIoKTtcbiAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnNldFN0YXRlKHtcbiAgICAgIHRvYXN0OiB0aGlzLFxuICAgICAgc2hvdzogZmFsc2UsXG4gICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50XG4gICAgfSk7XG4gIH1cblxuICBzZXRDbG9jaygpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyQ2xvY2soKTtcbiAgICB0aGlzLmNsb2NrID0gMDtcbiAgICB0aGlzLmNsb2NrSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICB0aGlzLmNsb2NrICs9IDE7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0sIDEwMDApO1xuICAgIHRoaXMuY2xvY2tUaW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmNsZWFyQ2xvY2soKTtcbiAgICB9LCB0aGlzLmRlbGF5KTtcbiAgfVxuXG4gIGNsZWFyQ2xvY2soKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuY2xvY2tUaW1lcklkKTtcbiAgICBjbGVhckludGVydmFsKHRoaXMuY2xvY2tJZCk7XG4gICAgdGhpcy5jbG9ja0lkID0gbnVsbDtcbiAgfVxufVxuIl19
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90b2FzdC90b2FzdC90b2FzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFvQzVFLE1BQU0sT0FBTyxjQUFjO0lBT3pCLFlBQ1MsV0FBdUIsRUFDdkIsUUFBbUIsRUFDbkIsY0FBOEIsRUFDOUIsaUJBQW9DO1FBSHBDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFHN0M7OztXQUdHO1FBQ00sYUFBUSxHQUFHLElBQUksQ0FBQztRQUV6Qjs7O1dBR0c7UUFDTSxVQUFLLEdBQVksRUFBRSxDQUFDO1FBRTdCOzs7V0FHRztRQUNNLFVBQUssR0FBRyxJQUFJLENBQUM7UUFFdEI7OztXQUdHO1FBQ00sU0FBSSxHQUFHLElBQUksQ0FBQztRQXFCYixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBT3pCOzs7V0FHRztRQUNPLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV0RDs7O1dBR0c7UUFDTyxVQUFLLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7SUE5RHhELENBQUM7SUEwQko7OztPQUdHO0lBQ0gsSUFDSSxPQUFPLENBQUMsS0FBYztRQUN4QixNQUFNLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFO1lBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQ3pCLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBMkJELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQ0ksaUJBQWlCO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3hDLENBQUM7SUFFMEIsV0FBVztRQUNwQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUV5QixVQUFVO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJO1lBQ1gsSUFBSSxFQUFFLElBQUk7WUFDVixDQUFDLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLO1lBQ2xDLFVBQVUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUs7U0FDekIsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO2dCQUMzQixLQUFLLEVBQUUsSUFBSTtnQkFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU87Z0JBQ2xCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzthQUMxQixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNwRixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1lBQzNCLEtBQUssRUFBRSxJQUFJO1lBQ1gsSUFBSSxFQUFFLEtBQUs7WUFDWCxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7U0FDMUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUU7WUFDOUIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNULElBQUksQ0FBQyxZQUFZLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRUQsVUFBVTtRQUNSLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDaEMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDOzhHQS9LVSxjQUFjO2tHQUFkLGNBQWMsb2RBMUJmLDJCQUEyQixrRkFJekI7WUFDVixPQUFPLENBQUMsV0FBVyxFQUFFO2dCQUNuQixLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBQ3pGLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDakYsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNqRixVQUFVLENBQUMsY0FBYyxFQUFFO29CQUN6QixPQUFPLENBQUMseUJBQXlCLENBQUM7aUJBQ25DLEVBQUU7b0JBQ0QsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFO2lCQUM5QyxDQUFDO2dCQUNGLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMseUJBQXlCLENBQUMsQ0FBQyxFQUFFO29CQUMvRCxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUU7aUJBQzdDLENBQUM7Z0JBQ0YsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEVBQUU7b0JBQy9ELE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRTtpQkFDOUMsQ0FBQztnQkFDRixVQUFVLENBQUMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBQUMsRUFBRTtvQkFDL0QsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFO2lCQUM3QyxDQUFDO2FBQ0gsQ0FBQztTQUNIOzsyRkFFVSxjQUFjO2tCQTVCMUIsU0FBUzsrQkFDRSxTQUFTLFlBQ1QsMkJBQTJCLFlBRTNCLFFBQVEsY0FDTixJQUFJLGNBQ0o7d0JBQ1YsT0FBTyxDQUFDLFdBQVcsRUFBRTs0QkFDbkIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDOzRCQUN6RixLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ2pGLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs0QkFDakYsVUFBVSxDQUFDLGNBQWMsRUFBRTtnQ0FDekIsT0FBTyxDQUFDLHlCQUF5QixDQUFDOzZCQUNuQyxFQUFFO2dDQUNELE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRTs2QkFDOUMsQ0FBQzs0QkFDRixVQUFVLENBQUMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBQUMsRUFBRTtnQ0FDL0QsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFOzZCQUM3QyxDQUFDOzRCQUNGLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMseUJBQXlCLENBQUMsQ0FBQyxFQUFFO2dDQUMvRCxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUU7NkJBQzlDLENBQUM7NEJBQ0YsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEVBQUU7Z0NBQy9ELE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRTs2QkFDN0MsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO29LQW9CUSxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLEtBQUs7c0JBQWIsS0FBSztnQkFNRyxLQUFLO3NCQUFiLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQU9GLE9BQU87c0JBRFYsS0FBSztnQkFvQkcsS0FBSztzQkFBYixLQUFLO2dCQU1JLGFBQWE7c0JBQXRCLE1BQU07Z0JBTUcsS0FBSztzQkFBZCxNQUFNO2dCQW1CSCxpQkFBaUI7c0JBRHBCLFdBQVc7dUJBQUMsWUFBWTtnQkFNckIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLFlBQVk7Z0JBS0UsV0FBVztzQkFBckMsWUFBWTt1QkFBQyxXQUFXO2dCQUlDLFVBQVU7c0JBQW5DLFlBQVk7dUJBQUMsVUFBVTtnQkFLcEIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9jb3JldWkudHlwZXMnO1xuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuLi90b2FzdGVyL3RvYXN0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUVG9hc3RlclBsYWNlbWVudCB9IGZyb20gJy4uL3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQnO1xuXG50eXBlIEFuaW1hdGVUeXBlID0gKCdoaWRlJyB8ICdzaG93Jyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdG9hc3QnLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdHlsZVVybHM6IFsnLi90b2FzdC5jb21wb25lbnQuc2NzcyddLFxuICBleHBvcnRBczogJ2NUb2FzdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdmYWRlSW5PdXQnLCBbXG4gICAgICBzdGF0ZSgnc2hvdycsIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnKicsIHBhZGRpbmc6ICcqJywgYm9yZGVyOiAnKicsIG1hcmdpbjogJyonIH0pKSxcbiAgICAgIHN0YXRlKCdoaWRlJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAsIHBhZGRpbmc6IDAsIGJvcmRlcjogMCwgbWFyZ2luOiAwIH0pKSxcbiAgICAgIHN0YXRlKCd2b2lkJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAsIHBhZGRpbmc6IDAsIGJvcmRlcjogMCwgbWFyZ2luOiAwIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oJ3Nob3cgPT4gaGlkZScsIFtcbiAgICAgICAgYW5pbWF0ZSgne3sgdGltZSB9fSB7eyBlYXNpbmcgfX0nKVxuICAgICAgXSwge1xuICAgICAgICBwYXJhbXM6IHsgdGltZTogJzMwMG1zJywgZWFzaW5nOiAnZWFzZS1vdXQnIH1cbiAgICAgIH0pLFxuICAgICAgdHJhbnNpdGlvbignaGlkZSA9PiBzaG93JywgW2FuaW1hdGUoJ3t7IHRpbWUgfX0ge3sgZWFzaW5nIH19JyldLCB7XG4gICAgICAgIHBhcmFtczogeyB0aW1lOiAnMzAwbXMnLCBlYXNpbmc6ICdlYXNlLWluJyB9XG4gICAgICB9KSxcbiAgICAgIHRyYW5zaXRpb24oJ3Nob3cgPT4gdm9pZCcsIFthbmltYXRlKCd7eyB0aW1lIH19IHt7IGVhc2luZyB9fScpXSwge1xuICAgICAgICBwYXJhbXM6IHsgdGltZTogJzMwMG1zJywgZWFzaW5nOiAnZWFzZS1vdXQnIH1cbiAgICAgIH0pLFxuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiBzaG93JywgW2FuaW1hdGUoJ3t7IHRpbWUgfX0ge3sgZWFzaW5nIH19JyldLCB7XG4gICAgICAgIHBhcmFtczogeyB0aW1lOiAnMzAwbXMnLCBlYXNpbmc6ICdlYXNlLWluJyB9XG4gICAgICB9KVxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Zpc2libGU6IEJvb2xlYW5JbnB1dDtcblxuICBwdWJsaWMgZHluYW1pYyE6IGJvb2xlYW47XG4gIHB1YmxpYyBwbGFjZW1lbnQhOiBUVG9hc3RlclBsYWNlbWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHVibGljIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcbiAgICBwdWJsaWMgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICAvKipcbiAgICogQXV0byBoaWRlIHRoZSB0b2FzdC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KCkgYXV0b2hpZGUgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xvciBjb250ZXh0IG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICBASW5wdXQoKSBjb2xvcj86IENvbG9ycyA9ICcnO1xuXG4gIC8qKlxuICAgKiBEZWxheSBoaWRpbmcgdGhlIHRvYXN0IChtcykuXG4gICAqIEB0eXBlIG51bWJlclxuICAgKi9cbiAgQElucHV0KCkgZGVsYXkgPSA1MDAwO1xuXG4gIC8qKlxuICAgKiBBcHBseSBmYWRlIHRyYW5zaXRpb24gdG8gdGhlIHRvYXN0LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoKSBmYWRlID0gdHJ1ZTtcblxuICAvKipcbiAgICogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIGNvbXBvbmVudC5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgaWYgKHRoaXMuX3Zpc2libGUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICB0aGlzLl92aXNpYmxlID0gbmV3VmFsdWU7XG4gICAgICBuZXdWYWx1ZSA/IHRoaXMuc2V0VGltZXIoKSA6IHRoaXMuY2xlYXJUaW1lcigpO1xuICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBnZXQgdmlzaWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuXG4gIHByaXZhdGUgX3Zpc2libGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgb24gdmlzaWJpbGl0eSBjaGFuZ2UuIFtkb2NzXVxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCBvbiB0aW1lciB0aWNrLiBbZG9jc11cbiAgICogQHR5cGUgbnVtYmVyXG4gICAqL1xuICBAT3V0cHV0KCkgdGltZXI6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgdGltZXJJZDogYW55O1xuICBwcml2YXRlIGNsb2NrSWQ6IGFueTtcbiAgcHJpdmF0ZSBjbG9ja1RpbWVySWQ6IGFueTtcblxuICBwcml2YXRlIF9jbG9jayE6IG51bWJlcjtcblxuICBnZXQgY2xvY2soKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fY2xvY2s7XG4gIH1cblxuICBzZXQgY2xvY2sodmFsdWUpIHtcbiAgICB0aGlzLl9jbG9jayA9IHZhbHVlO1xuICAgIHRoaXMudGltZXIuZW1pdCh0aGlzLl9jbG9jayk7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnQC5kaXNhYmxlZCcpXG4gIGdldCBhbmltYXRpb25EaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZmFkZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnQGZhZGVJbk91dCcpXG4gIGdldCBhbmltYXRlVHlwZSgpOiBBbmltYXRlVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZSA/ICdzaG93JyA6ICdoaWRlJztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlb3ZlcicpIG9uTW91c2VPdmVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJUaW1lcigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VvdXQnKSBvbk1vdXNlT3V0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VGltZXIoKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgdG9hc3Q6IHRydWUsXG4gICAgICBzaG93OiB0cnVlLFxuICAgICAgW2BiZy0ke3RoaXMuY29sb3J9YF06ICEhdGhpcy5jb2xvcixcbiAgICAgICdib3JkZXItMCc6ICEhdGhpcy5jb2xvclxuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52aXNpYmxlKSB7XG4gICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnNldFN0YXRlKHtcbiAgICAgICAgdG9hc3Q6IHRoaXMsXG4gICAgICAgIHNob3c6IHRoaXMudmlzaWJsZSxcbiAgICAgICAgcGxhY2VtZW50OiB0aGlzLnBsYWNlbWVudFxuICAgICAgfSk7XG4gICAgICB0aGlzLmNsZWFyVGltZXIoKTtcbiAgICAgIHRoaXMuc2V0VGltZXIoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyVGltZXIoKTtcbiAgfVxuXG4gIHNldFRpbWVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJUaW1lcigpO1xuICAgIGlmICh0aGlzLmF1dG9oaWRlICYmIHRoaXMudmlzaWJsZSkge1xuICAgICAgdGhpcy50aW1lcklkID0gdGhpcy5kZWxheSA+IDAgPyBzZXRUaW1lb3V0KCgpID0+IHRoaXMub25DbG9zZSgpLCB0aGlzLmRlbGF5KSA6IG51bGw7XG4gICAgICB0aGlzLnNldENsb2NrKCk7XG4gICAgfVxuICB9XG5cbiAgY2xlYXJUaW1lcigpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyQ2xvY2soKTtcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lcklkKTtcbiAgICB0aGlzLnRpbWVySWQgPSBudWxsO1xuICB9XG5cbiAgb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyVGltZXIoKTtcbiAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnNldFN0YXRlKHtcbiAgICAgIHRvYXN0OiB0aGlzLFxuICAgICAgc2hvdzogZmFsc2UsXG4gICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50XG4gICAgfSk7XG4gIH1cblxuICBzZXRDbG9jaygpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyQ2xvY2soKTtcbiAgICB0aGlzLmNsb2NrID0gMDtcbiAgICB0aGlzLmNsb2NrSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICB0aGlzLmNsb2NrICs9IDE7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0sIDEwMDApO1xuICAgIHRoaXMuY2xvY2tUaW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmNsZWFyQ2xvY2soKTtcbiAgICB9LCB0aGlzLmRlbGF5KTtcbiAgfVxuXG4gIGNsZWFyQ2xvY2soKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuY2xvY2tUaW1lcklkKTtcbiAgICBjbGVhckludGVydmFsKHRoaXMuY2xvY2tJZCk7XG4gICAgdGhpcy5jbG9ja0lkID0gbnVsbDtcbiAgfVxufVxuIl19
@@ -6,16 +6,16 @@ export class ToastBodyComponent {
6
6
  this.toast = toast;
7
7
  this.toastBodyClass = true;
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: ToastBodyComponent, deps: [{ token: i1.ToastComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: ToastBodyComponent, isStandalone: true, selector: "c-toast-body", host: { properties: { "class.toast-body": "this.toastBodyClass" } }, exportAs: ["cToastBody"], 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: "17.0.4", ngImport: i0, type: ToastBodyComponent, deps: [{ token: i1.ToastComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: ToastBodyComponent, isStandalone: true, selector: "c-toast-body", host: { properties: { "class.toast-body": "this.toastBodyClass" } }, exportAs: ["cToastBody"], 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.2.10", ngImport: i0, type: ToastBodyComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: ToastBodyComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'c-toast-body', template: '<ng-content></ng-content>', exportAs: 'cToastBody', standalone: true, styles: [":host{display:block}\n"] }]
15
- }], ctorParameters: function () { return [{ type: i1.ToastComponent, decorators: [{
15
+ }], ctorParameters: () => [{ type: i1.ToastComponent, decorators: [{
16
16
  type: Optional
17
- }] }]; }, propDecorators: { toastBodyClass: [{
17
+ }] }], propDecorators: { toastBodyClass: [{
18
18
  type: HostBinding,
19
19
  args: ['class.toast-body']
20
20
  }] } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtYm9keS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0LWJvZHkvdG9hc3QtYm9keS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVakUsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QixZQUNxQixLQUFzQjtRQUF0QixVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQUhWLG1CQUFjLEdBQUcsSUFBSSxDQUFDO0lBSW5ELENBQUM7K0dBTk0sa0JBQWtCO21HQUFsQixrQkFBa0IsdUtBTG5CLDJCQUEyQjs7NEZBSzFCLGtCQUFrQjtrQkFQOUIsU0FBUzsrQkFDRSxjQUFjLFlBQ2QsMkJBQTJCLFlBRTNCLFlBQVksY0FDVixJQUFJOzswQkFPYixRQUFROzRDQUhzQixjQUFjO3NCQUE5QyxXQUFXO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb2FzdENvbXBvbmVudCB9IGZyb20gJy4uL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdG9hc3QtYm9keScsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0eWxlVXJsczogWycuL3RvYXN0LWJvZHkuY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdjVG9hc3RCb2R5JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb2FzdEJvZHlDb21wb25lbnQge1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudG9hc3QtYm9keScpIHRvYXN0Qm9keUNsYXNzID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgdG9hc3Q/OiBUb2FzdENvbXBvbmVudFxuICApIHsgfVxuXG59XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtYm9keS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0LWJvZHkvdG9hc3QtYm9keS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVakUsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QixZQUNxQixLQUFzQjtRQUF0QixVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQUhWLG1CQUFjLEdBQUcsSUFBSSxDQUFDO0lBSW5ELENBQUM7OEdBTk0sa0JBQWtCO2tHQUFsQixrQkFBa0IsdUtBTG5CLDJCQUEyQjs7MkZBSzFCLGtCQUFrQjtrQkFQOUIsU0FBUzsrQkFDRSxjQUFjLFlBQ2QsMkJBQTJCLFlBRTNCLFlBQVksY0FDVixJQUFJOzswQkFPYixRQUFRO3lDQUhzQixjQUFjO3NCQUE5QyxXQUFXO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb2FzdENvbXBvbmVudCB9IGZyb20gJy4uL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdG9hc3QtYm9keScsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0eWxlVXJsczogWycuL3RvYXN0LWJvZHkuY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdjVG9hc3RCb2R5JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb2FzdEJvZHlDb21wb25lbnQge1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudG9hc3QtYm9keScpIHRvYXN0Qm9keUNsYXNzID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgdG9hc3Q/OiBUb2FzdENvbXBvbmVudFxuICApIHsgfVxuXG59XG4iXX0=
@@ -9,21 +9,21 @@ export class ToastCloseDirective {
9
9
  $event.preventDefault();
10
10
  this.toasterService.setState({ show: false, toast: this.toast });
11
11
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: ToastCloseDirective, deps: [{ token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Directive }); }
13
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.10", type: ToastCloseDirective, isStandalone: true, selector: "[cToastClose]", inputs: { toast: ["cToastClose", "toast"] }, host: { listeners: { "click": "toggleOpen($event)" } }, exportAs: ["cToastClose"], ngImport: i0 }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: ToastCloseDirective, deps: [{ token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.4", type: ToastCloseDirective, isStandalone: true, selector: "[cToastClose]", inputs: { toast: ["cToastClose", "toast"] }, host: { listeners: { "click": "toggleOpen($event)" } }, exportAs: ["cToastClose"], ngImport: i0 }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: ToastCloseDirective, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: ToastCloseDirective, decorators: [{
16
16
  type: Directive,
17
17
  args: [{
18
18
  selector: '[cToastClose]',
19
19
  exportAs: 'cToastClose',
20
20
  standalone: true
21
21
  }]
22
- }], ctorParameters: function () { return [{ type: i1.ToasterService }]; }, propDecorators: { toast: [{
22
+ }], ctorParameters: () => [{ type: i1.ToasterService }], propDecorators: { toast: [{
23
23
  type: Input,
24
24
  args: ['cToastClose']
25
25
  }], toggleOpen: [{
26
26
  type: HostListener,
27
27
  args: ['click', ['$event']]
28
28
  }] } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90b2FzdC90b2FzdC1jbG9zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRL0QsTUFBTSxPQUFPLG1CQUFtQjtJQUk5QixZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBSSxDQUFDO0lBR3ZELFVBQVUsQ0FBQyxNQUFXO1FBQ3BCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7K0dBVlUsbUJBQW1CO21HQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBTC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7cUdBR3VCLEtBQUs7c0JBQTFCLEtBQUs7dUJBQUMsYUFBYTtnQkFLcEIsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuL3RvYXN0ZXIvdG9hc3Rlci5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NUb2FzdENsb3NlXScsXG4gIGV4cG9ydEFzOiAnY1RvYXN0Q2xvc2UnLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0Q2xvc2VEaXJlY3RpdmUge1xuXG4gIEBJbnB1dCgnY1RvYXN0Q2xvc2UnKSB0b2FzdDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlKSB7IH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHRvZ2dsZU9wZW4oJGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnNldFN0YXRlKHsgc2hvdzogZmFsc2UsIHRvYXN0OiB0aGlzLnRvYXN0IH0pO1xuICB9XG5cbn1cbiJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi90b2FzdC90b2FzdC1jbG9zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRL0QsTUFBTSxPQUFPLG1CQUFtQjtJQUk5QixZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBSSxDQUFDO0lBR3ZELFVBQVUsQ0FBQyxNQUFXO1FBQ3BCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7OEdBVlUsbUJBQW1CO2tHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBTC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7bUZBR3VCLEtBQUs7c0JBQTFCLEtBQUs7dUJBQUMsYUFBYTtnQkFLcEIsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuL3RvYXN0ZXIvdG9hc3Rlci5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NUb2FzdENsb3NlXScsXG4gIGV4cG9ydEFzOiAnY1RvYXN0Q2xvc2UnLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0Q2xvc2VEaXJlY3RpdmUge1xuXG4gIEBJbnB1dCgnY1RvYXN0Q2xvc2UnKSB0b2FzdDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlKSB7IH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHRvZ2dsZU9wZW4oJGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnNldFN0YXRlKHsgc2hvdzogZmFsc2UsIHRvYXN0OiB0aGlzLnRvYXN0IH0pO1xuICB9XG5cbn1cbiJdfQ==