@coreui/angular-pro 4.4.8 → 4.4.10

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 (252) hide show
  1. package/esm2020/lib/accordion/accordion/accordion.component.mjs +3 -3
  2. package/esm2020/lib/accordion/accordion-button/accordion-button.directive.mjs +3 -3
  3. package/esm2020/lib/accordion/accordion-item/accordion-item.component.mjs +3 -3
  4. package/esm2020/lib/accordion/accordion.module.mjs +4 -4
  5. package/esm2020/lib/accordion/accordion.service.mjs +3 -3
  6. package/esm2020/lib/alert/alert-heading.directive.mjs +3 -3
  7. package/esm2020/lib/alert/alert-link.directive.mjs +3 -3
  8. package/esm2020/lib/alert/alert.component.mjs +3 -3
  9. package/esm2020/lib/alert/alert.module.mjs +4 -4
  10. package/esm2020/lib/avatar/avatar.component.mjs +3 -3
  11. package/esm2020/lib/avatar/avatar.module.mjs +4 -4
  12. package/esm2020/lib/backdrop/backdrop.service.mjs +3 -3
  13. package/esm2020/lib/badge/badge.component.mjs +3 -3
  14. package/esm2020/lib/badge/badge.module.mjs +4 -4
  15. package/esm2020/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +3 -3
  16. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
  17. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +3 -3
  18. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +3 -3
  19. package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +4 -4
  20. package/esm2020/lib/button/button-close.directive.mjs +3 -3
  21. package/esm2020/lib/button/button.directive.mjs +3 -3
  22. package/esm2020/lib/button/button.module.mjs +4 -4
  23. package/esm2020/lib/button-group/button-group/button-group.component.mjs +3 -3
  24. package/esm2020/lib/button-group/button-group.module.mjs +4 -4
  25. package/esm2020/lib/button-group/button-toolbar/button-toolbar.component.mjs +3 -3
  26. package/esm2020/lib/calendar/calendar/calendar-class-view.pipe.mjs +3 -3
  27. package/esm2020/lib/calendar/calendar/calendar.component.mjs +30 -6
  28. package/esm2020/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +3 -3
  29. package/esm2020/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +6 -5
  30. package/esm2020/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +3 -3
  31. package/esm2020/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +3 -3
  32. package/esm2020/lib/calendar/calendar-month/calendar-day.directive.mjs +13 -9
  33. package/esm2020/lib/calendar/calendar-month/calendar-day.pipe.mjs +3 -3
  34. package/esm2020/lib/calendar/calendar-month/calendar-month.component.mjs +7 -8
  35. package/esm2020/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +3 -3
  36. package/esm2020/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +5 -5
  37. package/esm2020/lib/calendar/calendar.module.mjs +4 -4
  38. package/esm2020/lib/calendar/calendar.service.mjs +7 -5
  39. package/esm2020/lib/callout/callout.component.mjs +3 -3
  40. package/esm2020/lib/callout/callout.module.mjs +4 -4
  41. package/esm2020/lib/card/card-body.component.mjs +3 -3
  42. package/esm2020/lib/card/card-footer.component.mjs +3 -3
  43. package/esm2020/lib/card/card-group.component.mjs +3 -3
  44. package/esm2020/lib/card/card-header-actions.component.mjs +3 -3
  45. package/esm2020/lib/card/card-header.component.mjs +3 -3
  46. package/esm2020/lib/card/card-img-overlay/card-img-overlay.component.mjs +3 -3
  47. package/esm2020/lib/card/card-img.directive.mjs +3 -3
  48. package/esm2020/lib/card/card-link.directive.mjs +3 -3
  49. package/esm2020/lib/card/card-subtitle.directive.mjs +3 -3
  50. package/esm2020/lib/card/card-text.directive.mjs +3 -3
  51. package/esm2020/lib/card/card-title.directive.mjs +3 -3
  52. package/esm2020/lib/card/card.component.mjs +3 -3
  53. package/esm2020/lib/card/card.module.mjs +4 -4
  54. package/esm2020/lib/carousel/carousel/carousel.component.mjs +3 -3
  55. package/esm2020/lib/carousel/carousel-caption/carousel-caption.component.mjs +3 -3
  56. package/esm2020/lib/carousel/carousel-control/carousel-control.component.mjs +3 -3
  57. package/esm2020/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +3 -3
  58. package/esm2020/lib/carousel/carousel-inner/carousel-inner.component.mjs +3 -3
  59. package/esm2020/lib/carousel/carousel-item/carousel-item.component.mjs +3 -3
  60. package/esm2020/lib/carousel/carousel-state.mjs +3 -3
  61. package/esm2020/lib/carousel/carousel.config.mjs +3 -3
  62. package/esm2020/lib/carousel/carousel.module.mjs +4 -4
  63. package/esm2020/lib/carousel/carousel.service.mjs +3 -3
  64. package/esm2020/lib/collapse/collapse.directive.mjs +3 -3
  65. package/esm2020/lib/collapse/collapse.module.mjs +4 -4
  66. package/esm2020/lib/date-picker/date-picker.component.mjs +7 -7
  67. package/esm2020/lib/date-picker/date-picker.module.mjs +4 -4
  68. package/esm2020/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +43 -10
  69. package/esm2020/lib/date-range-picker/date-range-picker.module.mjs +4 -4
  70. package/esm2020/lib/dropdown/dropdown/dropdown.component.mjs +8 -8
  71. package/esm2020/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +3 -3
  72. package/esm2020/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +3 -3
  73. package/esm2020/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +3 -3
  74. package/esm2020/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +3 -3
  75. package/esm2020/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +3 -3
  76. package/esm2020/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +5 -5
  77. package/esm2020/lib/dropdown/dropdown.module.mjs +4 -4
  78. package/esm2020/lib/dropdown/dropdown.service.mjs +3 -3
  79. package/esm2020/lib/element-cover/element-cover.component.mjs +3 -3
  80. package/esm2020/lib/element-cover/element-cover.module.mjs +4 -4
  81. package/esm2020/lib/footer/footer.component.mjs +3 -3
  82. package/esm2020/lib/footer/footer.module.mjs +4 -4
  83. package/esm2020/lib/form/form/form.directive.mjs +3 -3
  84. package/esm2020/lib/form/form-check/form-check-input.directive.mjs +3 -3
  85. package/esm2020/lib/form/form-check/form-check-label.directive.mjs +3 -3
  86. package/esm2020/lib/form/form-check/form-check.component.mjs +3 -3
  87. package/esm2020/lib/form/form-control/form-control.directive.mjs +4 -4
  88. package/esm2020/lib/form/form-feedback/form-feedback.component.mjs +3 -3
  89. package/esm2020/lib/form/form-floating/form-floating.directive.mjs +3 -3
  90. package/esm2020/lib/form/form-label/form-label.directive.mjs +3 -3
  91. package/esm2020/lib/form/form-select/form-select.directive.mjs +3 -3
  92. package/esm2020/lib/form/form-text/form-text.directive.mjs +3 -3
  93. package/esm2020/lib/form/form.module.mjs +4 -4
  94. package/esm2020/lib/form/input-group/input-group.component.mjs +3 -3
  95. package/esm2020/lib/form/input-group-text/input-group-text.directive.mjs +3 -3
  96. package/esm2020/lib/grid/col.component.mjs +3 -3
  97. package/esm2020/lib/grid/col.directive.mjs +3 -3
  98. package/esm2020/lib/grid/container.component.mjs +3 -3
  99. package/esm2020/lib/grid/grid.module.mjs +4 -4
  100. package/esm2020/lib/grid/gutter.directive.mjs +3 -3
  101. package/esm2020/lib/grid/row.component.mjs +3 -3
  102. package/esm2020/lib/grid/row.directive.mjs +3 -3
  103. package/esm2020/lib/header/header/header.component.mjs +3 -3
  104. package/esm2020/lib/header/header-brand/header-brand.component.mjs +3 -3
  105. package/esm2020/lib/header/header-divider/header-divider.component.mjs +3 -3
  106. package/esm2020/lib/header/header-nav/header-nav.component.mjs +3 -3
  107. package/esm2020/lib/header/header-text/header-text.component.mjs +3 -3
  108. package/esm2020/lib/header/header-toggler/header-toggler.directive.mjs +3 -3
  109. package/esm2020/lib/header/header.module.mjs +4 -4
  110. package/esm2020/lib/image/img.directive.mjs +3 -3
  111. package/esm2020/lib/image/img.module.mjs +4 -4
  112. package/esm2020/lib/list-group/list-group-item.directive.mjs +3 -3
  113. package/esm2020/lib/list-group/list-group.directive.mjs +3 -3
  114. package/esm2020/lib/list-group/list-group.module.mjs +4 -4
  115. package/esm2020/lib/loading-button/loading-button.component.mjs +3 -3
  116. package/esm2020/lib/loading-button/loading-button.module.mjs +4 -4
  117. package/esm2020/lib/modal/modal/modal.component.mjs +5 -5
  118. package/esm2020/lib/modal/modal-body/modal-body.component.mjs +3 -3
  119. package/esm2020/lib/modal/modal-content/modal-content.component.mjs +3 -3
  120. package/esm2020/lib/modal/modal-dialog/modal-dialog.component.mjs +3 -3
  121. package/esm2020/lib/modal/modal-dismiss/modal-toggle.directive.mjs +3 -3
  122. package/esm2020/lib/modal/modal-footer/modal-footer.component.mjs +3 -3
  123. package/esm2020/lib/modal/modal-header/modal-header.component.mjs +3 -3
  124. package/esm2020/lib/modal/modal-title/modal-title.directive.mjs +3 -3
  125. package/esm2020/lib/modal/modal.module.mjs +4 -4
  126. package/esm2020/lib/modal/modal.service.mjs +3 -3
  127. package/esm2020/lib/multi-select/multi-select/multi-select-search.directive.mjs +3 -3
  128. package/esm2020/lib/multi-select/multi-select/multi-select.component.mjs +3 -3
  129. package/esm2020/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +3 -3
  130. package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +3 -3
  131. package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +3 -3
  132. package/esm2020/lib/multi-select/multi-select-option/multi-select-option.component.mjs +3 -3
  133. package/esm2020/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +3 -3
  134. package/esm2020/lib/multi-select/multi-select.module.mjs +4 -4
  135. package/esm2020/lib/multi-select/multi-select.service.mjs +3 -3
  136. package/esm2020/lib/nav/nav-item.component.mjs +3 -3
  137. package/esm2020/lib/nav/nav-link.directive.mjs +3 -3
  138. package/esm2020/lib/nav/nav.component.mjs +3 -3
  139. package/esm2020/lib/nav/nav.module.mjs +4 -4
  140. package/esm2020/lib/navbar/navbar-brand/navbar-brand.directive.mjs +3 -3
  141. package/esm2020/lib/navbar/navbar-nav/navbar-nav.component.mjs +3 -3
  142. package/esm2020/lib/navbar/navbar-text/navbar-text.component.mjs +3 -3
  143. package/esm2020/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +3 -3
  144. package/esm2020/lib/navbar/navbar.component.mjs +3 -3
  145. package/esm2020/lib/navbar/navbar.module.mjs +4 -4
  146. package/esm2020/lib/offcanvas/offcanvas/offcanvas.component.mjs +5 -5
  147. package/esm2020/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +3 -3
  148. package/esm2020/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +3 -3
  149. package/esm2020/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +3 -3
  150. package/esm2020/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +3 -3
  151. package/esm2020/lib/offcanvas/offcanvas.module.mjs +4 -4
  152. package/esm2020/lib/offcanvas/offcanvas.service.mjs +3 -3
  153. package/esm2020/lib/pagination/page-item/page-item.component.mjs +3 -3
  154. package/esm2020/lib/pagination/page-item/page-item.directive.mjs +3 -3
  155. package/esm2020/lib/pagination/page-link/page-link.directive.mjs +3 -3
  156. package/esm2020/lib/pagination/pagination/pagination.component.mjs +3 -3
  157. package/esm2020/lib/pagination/pagination.module.mjs +4 -4
  158. package/esm2020/lib/placeholder/placeholder-animation.directive.mjs +3 -3
  159. package/esm2020/lib/placeholder/placeholder.directive.mjs +3 -3
  160. package/esm2020/lib/placeholder/placeholder.module.mjs +4 -4
  161. package/esm2020/lib/popover/popover/popover.component.mjs +3 -3
  162. package/esm2020/lib/popover/popover.directive.mjs +3 -3
  163. package/esm2020/lib/popover/popover.module.mjs +4 -4
  164. package/esm2020/lib/progress/progress-bar.component.mjs +3 -3
  165. package/esm2020/lib/progress/progress.component.mjs +3 -3
  166. package/esm2020/lib/progress/progress.module.mjs +4 -4
  167. package/esm2020/lib/services/class-toggle.service.mjs +3 -3
  168. package/esm2020/lib/services/intersection.service.mjs +3 -3
  169. package/esm2020/lib/services/listeners.service.mjs +3 -3
  170. package/esm2020/lib/shared/html-attr.directive.mjs +3 -3
  171. package/esm2020/lib/shared/shared.module.mjs +4 -4
  172. package/esm2020/lib/shared/template-id.directive.mjs +3 -3
  173. package/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +5 -5
  174. package/esm2020/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +3 -3
  175. package/esm2020/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +3 -3
  176. package/esm2020/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  177. package/esm2020/lib/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  178. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +3 -3
  179. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +3 -3
  180. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +3 -3
  181. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +3 -3
  182. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +3 -3
  183. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +3 -3
  184. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +8 -8
  185. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +3 -3
  186. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +3 -3
  187. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +8 -8
  188. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +6 -6
  189. package/esm2020/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +3 -3
  190. package/esm2020/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +3 -3
  191. package/esm2020/lib/sidebar/sidebar.module.mjs +4 -4
  192. package/esm2020/lib/sidebar/sidebar.service.mjs +3 -3
  193. package/esm2020/lib/smart-pagination/smart-pagination.component.mjs +3 -3
  194. package/esm2020/lib/smart-pagination/smart-pagination.module.mjs +4 -4
  195. package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +3 -3
  196. package/esm2020/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +3 -3
  197. package/esm2020/lib/smart-table/smart-table-filter/filter-input.directive.mjs +3 -3
  198. package/esm2020/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +3 -3
  199. package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +3 -3
  200. package/esm2020/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +3 -3
  201. package/esm2020/lib/smart-table/smart-table.module.mjs +4 -4
  202. package/esm2020/lib/spinner/spinner.component.mjs +3 -3
  203. package/esm2020/lib/spinner/spinner.module.mjs +4 -4
  204. package/esm2020/lib/table/table-active.directive.mjs +3 -3
  205. package/esm2020/lib/table/table-color.directive.mjs +3 -3
  206. package/esm2020/lib/table/table.directive.mjs +3 -3
  207. package/esm2020/lib/table/table.module.mjs +4 -4
  208. package/esm2020/lib/tabs/tab-content/tab-content.component.mjs +3 -3
  209. package/esm2020/lib/tabs/tab-content-ref.directive.mjs +3 -3
  210. package/esm2020/lib/tabs/tab-pane/tab-pane.component.mjs +3 -3
  211. package/esm2020/lib/tabs/tab.service.mjs +3 -3
  212. package/esm2020/lib/tabs/tabs.module.mjs +4 -4
  213. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +6 -6
  214. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +6 -6
  215. package/esm2020/lib/time-picker/time-picker.component.mjs +3 -3
  216. package/esm2020/lib/time-picker/time-picker.module.mjs +4 -4
  217. package/esm2020/lib/toast/toast/toast.component.mjs +3 -3
  218. package/esm2020/lib/toast/toast-body/toast-body.component.mjs +3 -3
  219. package/esm2020/lib/toast/toast-close.directive.mjs +3 -3
  220. package/esm2020/lib/toast/toast-header/toast-header.component.mjs +3 -3
  221. package/esm2020/lib/toast/toast.module.mjs +4 -4
  222. package/esm2020/lib/toast/toaster/toaster-host.directive.mjs +3 -3
  223. package/esm2020/lib/toast/toaster/toaster.component.mjs +5 -5
  224. package/esm2020/lib/toast/toaster/toaster.service.mjs +3 -3
  225. package/esm2020/lib/tooltip/tooltip/tooltip.component.mjs +3 -3
  226. package/esm2020/lib/tooltip/tooltip.directive.mjs +3 -3
  227. package/esm2020/lib/tooltip/tooltip.module.mjs +4 -4
  228. package/esm2020/lib/utilities/align.directive.mjs +3 -3
  229. package/esm2020/lib/utilities/bg-color.directive.mjs +3 -3
  230. package/esm2020/lib/utilities/border.directive.mjs +3 -3
  231. package/esm2020/lib/utilities/rounded.directive.mjs +3 -3
  232. package/esm2020/lib/utilities/text-color.directive.mjs +3 -3
  233. package/esm2020/lib/utilities/utilities.module.mjs +4 -4
  234. package/esm2020/lib/widget/widget-stat-a/widget-stat-a.component.mjs +3 -3
  235. package/esm2020/lib/widget/widget-stat-b/widget-stat-b.component.mjs +3 -3
  236. package/esm2020/lib/widget/widget-stat-c/widget-stat-c.component.mjs +3 -3
  237. package/esm2020/lib/widget/widget-stat-d/widget-stat-d.component.mjs +3 -3
  238. package/esm2020/lib/widget/widget-stat-e/widget-stat-e.component.mjs +3 -3
  239. package/esm2020/lib/widget/widget-stat-f/widget-stat-f.component.mjs +3 -3
  240. package/esm2020/lib/widget/widget.module.mjs +4 -4
  241. package/fesm2015/coreui-angular-pro.mjs +890 -815
  242. package/fesm2015/coreui-angular-pro.mjs.map +1 -1
  243. package/fesm2020/coreui-angular-pro.mjs +876 -813
  244. package/fesm2020/coreui-angular-pro.mjs.map +1 -1
  245. package/lib/calendar/calendar/calendar.component.d.ts +16 -1
  246. package/lib/calendar/calendar-month/calendar-class-month.pipe.d.ts +1 -1
  247. package/lib/calendar/calendar-month/calendar-day.directive.d.ts +1 -0
  248. package/lib/calendar/calendar-month/calendar-month.component.d.ts +3 -1
  249. package/lib/calendar/calendar.service.d.ts +2 -0
  250. package/lib/date-range-picker/date-range-picker/date-range-picker.component.d.ts +18 -3
  251. package/lib/form/form-control/form-control.directive.d.ts +1 -1
  252. package/package.json +2 -2
@@ -26,6 +26,20 @@ export class CalendarComponent {
26
26
  this._range = false;
27
27
  this._view = 'days';
28
28
  this._weekdayFormat = 'short';
29
+ /**
30
+ * Set whether days in adjacent months shown before or after the current month are selectable. This only applies if the `showAdjacentDays` option is set to true.
31
+ * @type boolean
32
+ * @default false
33
+ * @since 4.4.10
34
+ */
35
+ this.selectAdjacentDays = false;
36
+ /**
37
+ * Set whether to display dates in adjacent months (non-selectable) at the start and end of the current month.
38
+ * @type boolean
39
+ * @default true
40
+ * @since 4.4.10
41
+ */
42
+ this.showAdjacentDays = true;
29
43
  this.calendarCellHover = new EventEmitter();
30
44
  this.calendarDateChange = new EventEmitter();
31
45
  this.endDateChange = new EventEmitter();
@@ -248,7 +262,13 @@ export class CalendarComponent {
248
262
  this.calendarStateSubscribe(false);
249
263
  }
250
264
  ngOnInit() {
251
- this.calendarService.update({ locale: this.locale, view: this.view, range: this.range });
265
+ this.calendarService.update({
266
+ locale: this.locale,
267
+ view: this.view,
268
+ range: this.range,
269
+ showAdjacentDays: this.showAdjacentDays,
270
+ selectAdjacentDays: this.selectAdjacentDays
271
+ });
252
272
  }
253
273
  calendarStateSubscribe(subscribe = true) {
254
274
  if (subscribe) {
@@ -278,7 +298,7 @@ export class CalendarComponent {
278
298
  });
279
299
  return;
280
300
  }
281
- this.calendarStateSubscription.unsubscribe();
301
+ this.calendarStateSubscription?.unsubscribe();
282
302
  }
283
303
  setCalendarPage(years, months = 0, setMonth) {
284
304
  const year = this.calendarDate.getFullYear();
@@ -324,9 +344,9 @@ export class CalendarComponent {
324
344
  this.calendarService.update({ startDate: null });
325
345
  }
326
346
  }
327
- CalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarComponent, deps: [{ token: i1.CalendarService }], target: i0.ɵɵFactoryTarget.Component });
328
- CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: CalendarComponent, isStandalone: true, selector: "c-calendar", inputs: { calendarDate: "calendarDate", calendars: "calendars", dayFormat: "dayFormat", disabledDates: "disabledDates", startDate: "startDate", endDate: "endDate", firstDayOfWeek: "firstDayOfWeek", locale: "locale", maxDate: "maxDate", minDate: "minDate", navigation: "navigation", navYearFirst: "navYearFirst", range: "range", view: "view", weekdayFormat: "weekdayFormat", dateFilter: "dateFilter" }, outputs: { calendarCellHover: "calendarCellHover", calendarDateChange: "calendarDateChange", endDateChange: "endDateChange", startDateChange: "startDateChange", viewChange: "viewChange" }, host: { properties: { "class": "this.hostClasses" } }, providers: [CalendarService], viewQueries: [{ propertyName: "calendarMonths", predicate: CalendarMonthComponent, descendants: true }], exportAs: ["cCalendar"], ngImport: i0, template: "<ng-container *ngFor=\"let calendar of calendarsArray; let i=index;\">\n <div [ngClass]=\"view | calendarClassView\">\n <c-calendar-navigation\n [addMonths]=\"i\"\n [navigation]=\"navigation\"\n (navigationClick)=\"handleNavigationClick($event.direction, $event.years)\"\n ></c-calendar-navigation>\n\n <c-calendar-month\n [addMonths]=\"i\"\n [firstDayOfWeek]=\"firstDayOfWeek\"\n [weekdayFormat]=\"weekdayFormat\"\n ></c-calendar-month>\n </div>\n</ng-container>\n", styles: [".btn-transparent:focus-visible{outline:-webkit-focus-ring-color auto 1px}\n"], dependencies: [{ kind: "component", type: CalendarNavigationComponent, selector: "c-calendar-navigation", inputs: ["addMonths", "calendarDate", "navigation", "navYearFirst"], outputs: ["navigationClick"] }, { kind: "pipe", type: CalendarClassViewPipe, name: "calendarClassView" }, { kind: "component", type: CalendarMonthComponent, selector: "c-calendar-month", inputs: ["addMonths", "startDate", "endDate", "disabledDates", "firstDayOfWeek", "locale", "range", "weekdayFormat", "view", "maxDate", "minDate", "calendarDate"], exportAs: ["cCalendarMonth"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
329
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarComponent, decorators: [{
347
+ CalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarComponent, deps: [{ token: i1.CalendarService }], target: i0.ɵɵFactoryTarget.Component });
348
+ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CalendarComponent, isStandalone: true, selector: "c-calendar", inputs: { calendarDate: "calendarDate", calendars: "calendars", dayFormat: "dayFormat", disabledDates: "disabledDates", startDate: "startDate", endDate: "endDate", firstDayOfWeek: "firstDayOfWeek", locale: "locale", maxDate: "maxDate", minDate: "minDate", navigation: "navigation", navYearFirst: "navYearFirst", range: "range", view: "view", weekdayFormat: "weekdayFormat", dateFilter: "dateFilter", selectAdjacentDays: "selectAdjacentDays", showAdjacentDays: "showAdjacentDays" }, outputs: { calendarCellHover: "calendarCellHover", calendarDateChange: "calendarDateChange", endDateChange: "endDateChange", startDateChange: "startDateChange", viewChange: "viewChange" }, host: { properties: { "class": "this.hostClasses" } }, providers: [CalendarService], viewQueries: [{ propertyName: "calendarMonths", predicate: CalendarMonthComponent, descendants: true }], exportAs: ["cCalendar"], ngImport: i0, template: "<ng-container *ngFor=\"let calendar of calendarsArray; let i=index;\">\n <div [ngClass]=\"view | calendarClassView\">\n <c-calendar-navigation\n [addMonths]=\"i\"\n [navigation]=\"navigation\"\n (navigationClick)=\"handleNavigationClick($event.direction, $event.years)\"\n ></c-calendar-navigation>\n\n <c-calendar-month\n [addMonths]=\"i\"\n [firstDayOfWeek]=\"firstDayOfWeek\"\n [weekdayFormat]=\"weekdayFormat\"\n ></c-calendar-month>\n </div>\n</ng-container>\n", styles: [".btn-transparent:focus-visible{outline:-webkit-focus-ring-color auto 1px}\n"], dependencies: [{ kind: "component", type: CalendarNavigationComponent, selector: "c-calendar-navigation", inputs: ["addMonths", "calendarDate", "navigation", "navYearFirst"], outputs: ["navigationClick"] }, { kind: "pipe", type: CalendarClassViewPipe, name: "calendarClassView" }, { kind: "component", type: CalendarMonthComponent, selector: "c-calendar-month", inputs: ["addMonths", "startDate", "endDate", "disabledDates", "firstDayOfWeek", "locale", "range", "weekdayFormat", "view", "maxDate", "minDate", "calendarDate"], exportAs: ["cCalendarMonth"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
349
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarComponent, decorators: [{
330
350
  type: Component,
331
351
  args: [{ selector: 'c-calendar', exportAs: 'cCalendar', providers: [CalendarService], standalone: true, imports: [CalendarNavigationComponent, CalendarClassViewPipe, CalendarMonthComponent, NgForOf, NgClass], template: "<ng-container *ngFor=\"let calendar of calendarsArray; let i=index;\">\n <div [ngClass]=\"view | calendarClassView\">\n <c-calendar-navigation\n [addMonths]=\"i\"\n [navigation]=\"navigation\"\n (navigationClick)=\"handleNavigationClick($event.direction, $event.years)\"\n ></c-calendar-navigation>\n\n <c-calendar-month\n [addMonths]=\"i\"\n [firstDayOfWeek]=\"firstDayOfWeek\"\n [weekdayFormat]=\"weekdayFormat\"\n ></c-calendar-month>\n </div>\n</ng-container>\n", styles: [".btn-transparent:focus-visible{outline:-webkit-focus-ring-color auto 1px}\n"] }]
332
352
  }], ctorParameters: function () { return [{ type: i1.CalendarService }]; }, propDecorators: { calendarDate: [{
@@ -361,6 +381,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
361
381
  type: Input
362
382
  }], dateFilter: [{
363
383
  type: Input
384
+ }], selectAdjacentDays: [{
385
+ type: Input
386
+ }], showAdjacentDays: [{
387
+ type: Input
364
388
  }], calendarCellHover: [{
365
389
  type: Output
366
390
  }], calendarDateChange: [{
@@ -378,4 +402,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
378
402
  type: ViewChildren,
379
403
  args: [CalendarMonthComponent]
380
404
  }] } });
381
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2NhbGVuZGFyL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdsRyxPQUFPLEVBQUUsZUFBZSxFQUFvRCxNQUFNLHFCQUFxQixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBV25FLE1BQU0sT0FBTyxpQkFBaUI7SUFNNUIsWUFDVSxlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUF5QmxDLGtCQUFhLEdBQVMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQWdCMUMsZUFBVSxHQUFXLENBQUMsQ0FBQztRQXFCdkIsZUFBVSxHQUFrQixTQUFTLENBQUM7UUFnQnRDLG1CQUFjLEdBQXdC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LEtBQUs7Z0JBd0JGLFNBQVM7c0JBRFosS0FBSztnQkFxQkYsU0FBUztzQkFEWixLQUFLO2dCQWlCRixhQUFhO3NCQURoQixLQUFLO2dCQWlCRixTQUFTO3NCQURaLEtBQUs7Z0JBdUJGLE9BQU87c0JBRFYsS0FBSztnQkE4QkYsY0FBYztzQkFEakIsS0FBSztnQkFnQkYsTUFBTTtzQkFEVCxLQUFLO2dCQWdCRixPQUFPO3NCQURWLEtBQUs7Z0JBZ0JGLE9BQU87c0JBRFYsS0FBSztnQkFpQkYsVUFBVTtzQkFEYixLQUFLO2dCQWlCRixZQUFZO3NCQURmLEtBQUs7Z0JBa0JGLEtBQUs7c0JBRFIsS0FBSztnQkFrQkYsSUFBSTtzQkFEUCxLQUFLO2dCQWtCRixhQUFhO3NCQURoQixLQUFLO2dCQWFGLFVBQVU7c0JBRGIsS0FBSztnQkFLSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQWlCSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTztnQkFPa0IsY0FBYztzQkFBbkQsWUFBWTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ2xhc3MsIE5nRm9yT2YgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHksIGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDYWxlbmRhclNlcnZpY2UsIERhdGVGaWx0ZXJUeXBlLCBEYXlGb3JtYXRUeXBlLCBXZWVrZGF5Rm9ybWF0VHlwZSB9IGZyb20gJy4uL2NhbGVuZGFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgdHJ5RGF0ZSB9IGZyb20gJy4uL2NhbGVuZGFyLnV0aWxzJztcbmltcG9ydCB7IENhbGVuZGFyTW9udGhDb21wb25lbnQgfSBmcm9tICcuLi9jYWxlbmRhci1tb250aC9jYWxlbmRhci1tb250aC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FsZW5kYXJOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vY2FsZW5kYXItbmF2aWdhdGlvbi9jYWxlbmRhci1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYWxlbmRhckNsYXNzVmlld1BpcGUgfSBmcm9tICcuL2NhbGVuZGFyLWNsYXNzLXZpZXcucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci5jb21wb25lbnQuc2NzcyddLFxuICBleHBvcnRBczogJ2NDYWxlbmRhcicsXG4gIHByb3ZpZGVyczogW0NhbGVuZGFyU2VydmljZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDYWxlbmRhck5hdmlnYXRpb25Db21wb25lbnQsIENhbGVuZGFyQ2xhc3NWaWV3UGlwZSwgQ2FsZW5kYXJNb250aENvbXBvbmVudCwgTmdGb3JPZiwgTmdDbGFzc11cbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX25hdmlnYXRpb246IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX25hdlllYXJGaXJzdDogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfcmFuZ2U6IEJvb2xlYW5JbnB1dDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhbGVuZGFyU2VydmljZTogQ2FsZW5kYXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgZGF0ZSBvZiB0aGUgY29tcG9uZW50XG4gICAqIEB0eXBlICAoRGF0ZSB8IHN0cmluZylcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBjYWxlbmRhckRhdGUodmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIpIHtcbiAgICAvLyBjb25zdCBfdmFsdWUgPSBuZXcgRGF0ZSh0cnlEYXRlKCh2YWx1ZSA/PyB0aGlzLnN0YXJ0RGF0ZSA/PyBuZXcgRGF0ZSgpKSwgJ2NhbGVuZGFyRGF0ZScpKTtcbiAgICBjb25zdCBfdmFsdWUgPSBuZXcgRGF0ZSh0cnlEYXRlKHZhbHVlID8/IHRoaXMuc3RhcnREYXRlLCAnY2FsZW5kYXJEYXRlJykpO1xuICAgIGlmICghIV92YWx1ZSAmJiB0aGlzLl9jYWxlbmRhckRhdGUuZ2V0VGltZSgpICE9PSBfdmFsdWUuZ2V0VGltZSgpKSB7XG4gICAgICBjb25zdCBfY2FsZW5kYXJEYXRlID0gbmV3IERhdGUobmV3IERhdGUoX3ZhbHVlLnNldERhdGUoMSkpLnNldEhvdXJzKDAsIDAsIDAsIDApKTtcbiAgICAgIHRoaXMuX2NhbGVuZGFyRGF0ZSA9IF9jYWxlbmRhckRhdGU7XG4gICAgICB0aGlzLmNhbGVuZGFyRGF0ZUNoYW5nZS5lbWl0KF9jYWxlbmRhckRhdGUpO1xuICAgICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgY2FsZW5kYXJEYXRlOiBfY2FsZW5kYXJEYXRlIH0pO1xuICAgIH1cbiAgfVxuXG4gIGdldCBjYWxlbmRhckRhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2NhbGVuZGFyRGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGVuZGFyRGF0ZTogRGF0ZSA9IHRyeURhdGUobmV3IERhdGUoKSk7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgY2FsZW5kYXJzIHRoYXQgcmVuZGVyIG9uIGRlc2t0b3AgZGV2aWNlcy5cbiAgICogQHR5cGUgbnVtYmVyXG4gICAqIGRlZmF1bHQgMVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGNhbGVuZGFycyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fY2FsZW5kYXJzID0gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGNhbGVuZGFycygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9jYWxlbmRhcnM7XG4gIH1cblxuICBwcml2YXRlIF9jYWxlbmRhcnM6IG51bWJlciA9IDE7XG5cbiAgZ2V0IGNhbGVuZGFyc0FycmF5KCkge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiB0aGlzLmNhbGVuZGFycyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGZvcm1hdCBvZiBkYXkgbmFtZS5cbiAgICogQGRlZmF1bHQgJ251bWVyaWMnXG4gICAqIEB0eXBlIERheUZvcm1hdFR5cGVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBkYXlGb3JtYXQodmFsdWU6IERheUZvcm1hdFR5cGUpIHtcbiAgICB0aGlzLl9kYXlGb3JtYXQgPSB2YWx1ZTtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBkYXlGb3JtYXQ6IHRoaXMuX2RheUZvcm1hdCB9KTtcbiAgfVxuXG4gIGdldCBkYXlGb3JtYXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RheUZvcm1hdDtcbiAgfVxuXG4gIHByaXZhdGUgX2RheUZvcm1hdDogRGF5Rm9ybWF0VHlwZSA9ICdudW1lcmljJztcblxuICAvKipcbiAgICogU3BlY2lmeSB0aGUgbGlzdCBvZiBkYXRlcyB0aGF0IGNhbm5vdCBiZSBzZWxlY3RlZC5cbiAgICogQHR5cGUgIChEYXRlW10gfCBEYXRlW11bXSlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBkaXNhYmxlZERhdGVzKHZhbHVlOiBEYXRlW10gfCBEYXRlW11bXSkge1xuICAgIHRoaXMuX2Rpc2FibGVkRGF0ZXMgPSB2YWx1ZTtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBkaXNhYmxlZERhdGVzOiB0aGlzLl9kaXNhYmxlZERhdGVzIH0pO1xuICB9XG5cbiAgZ2V0IGRpc2FibGVkRGF0ZXMoKTogRGF0ZVtdIHwgRGF0ZVtdW10ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZERhdGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWREYXRlczogKERhdGVbXSB8IERhdGVbXVtdKSA9IFtdO1xuXG4gIC8qKlxuICAgKiBJbml0aWFsIHNlbGVjdGVkIGRhdGUuXG4gICAqIEB0eXBlICAoRGF0ZSB8IG51bGwpXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgc3RhcnREYXRlKHZhbHVlOiBEYXRlIHwgbnVtYmVyIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IGRhdGUgPSAhIXZhbHVlID8gdHJ5RGF0ZSh2YWx1ZSwgJ3N0YXJ0RGF0ZScpIDogbnVsbDtcbiAgICBpZiAodGhpcy5fc3RhcnREYXRlPy5nZXRUaW1lKCkgIT09IGRhdGU/LmdldFRpbWUoKSkge1xuICAgICAgdGhpcy5fc3RhcnREYXRlID0gZGF0ZTtcbiAgICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IHN0YXJ0RGF0ZTogdGhpcy5fc3RhcnREYXRlIH0pO1xuICAgICAgaWYgKCF0aGlzLnJhbmdlIHx8ICF0aGlzLl9zdGFydERhdGUgfHwgKHRoaXMuZW5kRGF0ZSAmJiB0aGlzLl9zdGFydERhdGUgPiB0aGlzLmVuZERhdGUpKSB7XG4gICAgICAgIHRoaXMuZW5kRGF0ZSA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IHN0YXJ0RGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcnREYXRlO1xuICB9XG5cbiAgX3N0YXJ0RGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBJbml0aWFsIHNlbGVjdGVkIHRvIGRhdGUgKHJhbmdlKS5cbiAgICogQHR5cGUgIChEYXRlIHwgbnVsbClcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBlbmREYXRlKHZhbHVlOiBEYXRlIHwgbnVtYmVyIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IGRhdGUgPSAhIXZhbHVlID8gdHJ5RGF0ZSh2YWx1ZSwgJ2VuZERhdGUnKSA6IG51bGw7XG4gICAgaWYgKHRoaXMuX2VuZERhdGU/LmdldFRpbWUoKSAhPT0gZGF0ZT8uZ2V0VGltZSgpKSB7XG4gICAgICB0aGlzLl9lbmREYXRlID0gZGF0ZTtcbiAgICAgIC8vIHRoaXMuX2VuZERhdGUgPSB0aGlzLnJhbmdlID8gdGhpcy5fZW5kRGF0ZSA6IG51bGw7XG4gICAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBlbmREYXRlOiB0aGlzLl9lbmREYXRlIH0pO1xuICAgIH1cbiAgfVxuXG4gIGdldCBlbmREYXRlKCkge1xuICAgIHJldHVybiB0aGlzLnJhbmdlID8gdGhpcy5fZW5kRGF0ZSA6IG51bGw7XG4gIH1cblxuICBfZW5kRGF0ZTogKERhdGUgfCBudWxsKSA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRheSBvZiBzdGFydCB3ZWVrLlxuICAgKiAtIDAgLSBTdW5kYXksXG4gICAqIC0gMSAtIE1vbmRheSxcbiAgICogLSAyIC0gVHVlc2RheSxcbiAgICogLSAzIC0gV2VkbmVzZGF5LFxuICAgKiAtIDQgLSBUaHVyc2RheSxcbiAgICogLSA1IC0gRnJpZGF5LFxuICAgKiAtIDYgLSBTYXR1cmRheSxcbiAgICpcbiAgICogQHR5cGUgbnVtYmVyXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBmaXJzdERheU9mV2Vlayh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fZmlyc3REYXlPZldlZWsgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgZmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZmlyc3REYXlPZldlZWs7XG4gIH1cblxuICBwcml2YXRlIF9maXJzdERheU9mV2VlazogbnVtYmVyID0gMTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZGVmYXVsdCBsb2NhbGUgZm9yIGNvbXBvbmVudHMuIElmIG5vdCBzZXQsIGl0IGlzIGluaGVyaXRlZCBmcm9tIHRoZSBicm93c2VyLlxuICAgKiBAZGVmYXVsdCAnZGVmYXVsdCdcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBsb2NhbGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2xvY2FsZSA9IHZhbHVlO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IGxvY2FsZTogdmFsdWUgfSk7XG4gIH1cblxuICBnZXQgbG9jYWxlKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2NhbGU7XG4gIH1cblxuICBwcml2YXRlIF9sb2NhbGU6IHN0cmluZyA9ICdkZWZhdWx0JztcblxuICAvKipcbiAgICogTWF4IHNlbGVjdGFibGUgZGF0ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBtYXhEYXRlKHZhbHVlOiBEYXRlIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX21heERhdGUgPSAhIXZhbHVlID8gdHJ5RGF0ZSh2YWx1ZSwgJ21heERhdGUnKSA6IG51bGw7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgbWF4RGF0ZTogdGhpcy5fbWF4RGF0ZSB9KTtcbiAgfVxuXG4gIGdldCBtYXhEYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9tYXhEYXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF4RGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBNaW4gc2VsZWN0YWJsZSBkYXRlLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IG1pbkRhdGUodmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fbWluRGF0ZSA9IHZhbHVlID8gdHJ5RGF0ZSh2YWx1ZSwgJ21pbkRhdGUnKSA6IG51bGw7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgbWluRGF0ZTogdGhpcy5fbWluRGF0ZSB9KTtcbiAgfVxuXG4gIGdldCBtaW5EYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9taW5EYXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWluRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBTaG93IG5hdmlnYXRpb24uXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBuYXZpZ2F0aW9uKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fbmF2aWdhdGlvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgbmF2aWdhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbmF2aWdhdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgX25hdmlnYXRpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBSZW9yZGVyIHllYXItbW9udGggbmF2aWdhdGlvbiwgYW5kIHJlbmRlciB5ZWFyIGZpcnN0LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgbmF2WWVhckZpcnN0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fbmF2WWVhckZpcnN0ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBuYXZZZWFyRmlyc3Q6IHRoaXMuX25hdlllYXJGaXJzdCB9KTtcbiAgfVxuXG4gIGdldCBuYXZZZWFyRmlyc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25hdlllYXJGaXJzdDtcbiAgfVxuXG4gIHByaXZhdGUgX25hdlllYXJGaXJzdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBbGxvdyByYW5nZSBzZWxlY3Rpb24uXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCByYW5nZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JhbmdlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyByYW5nZTogdGhpcy5fcmFuZ2UgfSk7XG4gIH1cblxuICBnZXQgcmFuZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JhbmdlO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogU2V0IGNhbGVuZGFyIHZpZXcuXG4gICAqIEB0eXBlICdkYXlzJyB8ICdtb250aHMnIHwgJ3llYXJzJ1xuICAgKiBAZGVmYXVsdCAnZGF5cydcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCB2aWV3KHZhbHVlKSB7XG4gICAgdGhpcy5fdmlldyA9IHZhbHVlO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IHZpZXc6IHZhbHVlIH0pO1xuICB9XG5cbiAgZ2V0IHZpZXcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpZXc7XG4gIH1cblxuICBwcml2YXRlIF92aWV3OiAnZGF5cycgfCAnbW9udGhzJyB8ICd5ZWFycycgPSAnZGF5cyc7XG5cbiAgLyoqXG4gICAqIFNldCBsZW5ndGggb3IgZm9ybWF0IG9mIGRheSBuYW1lLlxuICAgKiBAdHlwZSBudW1iZXIgfCAnbG9uZycgfCAnbmFycm93JyB8ICdzaG9ydCdcbiAgICogQGRlZmF1bHQgJ3Nob3J0J1xuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHdlZWtkYXlGb3JtYXQodmFsdWU6IFdlZWtkYXlGb3JtYXRUeXBlKSB7XG4gICAgdGhpcy5fd2Vla2RheUZvcm1hdCA9IHZhbHVlO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IHdlZWtkYXlGb3JtYXQ6IHRoaXMuX3dlZWtkYXlGb3JtYXQgfSk7XG4gIH1cblxuICBnZXQgd2Vla2RheUZvcm1hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fd2Vla2RheUZvcm1hdDtcbiAgfVxuXG4gIHByaXZhdGUgX3dlZWtkYXlGb3JtYXQ6IFdlZWtkYXlGb3JtYXRUeXBlID0gJ3Nob3J0JztcblxuICBASW5wdXQoKVxuICBzZXQgZGF0ZUZpbHRlcih2YWx1ZTogRGF0ZUZpbHRlclR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBkYXRlRmlsdGVyOiB2YWx1ZSB9KTtcbiAgfVxuXG4gIEBPdXRwdXQoKSBjYWxlbmRhckNlbGxIb3ZlcjogRXZlbnRFbWl0dGVyPERhdGUgfCBudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZSB8IG51bGw+KCk7XG4gIEBPdXRwdXQoKSBjYWxlbmRhckRhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcbiAgQE91dHB1dCgpIGVuZERhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGUgfCBudWxsPigpO1xuICBAT3V0cHV0KCkgc3RhcnREYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZSB8IG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4oKTtcbiAgQE91dHB1dCgpIHZpZXdDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLy8gdXNlZCB3aXRoIGNhbGVuZGFyU2VydmljZVxuICBzZXQgaG92ZXJEYXRlKHZhbHVlOiBEYXRlIHwgbnVsbCkge1xuICAgIHRoaXMuX2hvdmVyRGF0ZSA9IHZhbHVlO1xuICAgIHRoaXMuY2FsZW5kYXJDZWxsSG92ZXIuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBnZXQgaG92ZXJEYXRlKCk6IERhdGUgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5faG92ZXJEYXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaG92ZXJEYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBjYWxlbmRhclN0YXRlU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgJ2NhbGVuZGFycyc6IHRydWVcbiAgICB9O1xuICB9XG5cbiAgQFZpZXdDaGlsZHJlbihDYWxlbmRhck1vbnRoQ29tcG9uZW50KSBjYWxlbmRhck1vbnRocyE6IFF1ZXJ5TGlzdDxDYWxlbmRhck1vbnRoQ29tcG9uZW50PjtcblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNhbGVuZGFyU3RhdGVTdWJzY3JpYmUoZmFsc2UpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgbG9jYWxlOiB0aGlzLmxvY2FsZSwgdmlldzogdGhpcy52aWV3LCByYW5nZTogdGhpcy5yYW5nZSB9KTtcbiAgfVxuXG4gIGNhbGVuZGFyU3RhdGVTdWJzY3JpYmUoc3Vic2NyaWJlOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIGlmIChzdWJzY3JpYmUpIHtcbiAgICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmlwdGlvbiA9XG4gICAgICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmNhbGVuZGFyU3RhdGUkLnN1YnNjcmliZShzdGF0ZSA9PiB7XG4gICAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKHN0YXRlKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgICAgICAgICBpZiAoa2V5IGluIHRoaXMpIHtcbiAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICBpZiAodGhpc1trZXldICE9PSBzdGF0ZVtrZXldKSB7XG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIHRoaXNba2V5XSA9IHN0YXRlW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKGtleSA9PT0gJ3N0YXJ0RGF0ZScpIHtcbiAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0RGF0ZUNoYW5nZS5lbWl0KHRoaXMuX3N0YXJ0RGF0ZSk7XG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoa2V5ID09PSAnZW5kRGF0ZScpIHtcbiAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVuZERhdGVDaGFuZ2UuZW1pdCh0aGlzLl9lbmREYXRlKTtcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgc2V0Q2FsZW5kYXJQYWdlKHllYXJzOiBudW1iZXIsIG1vbnRocyA9IDAsIHNldE1vbnRoPzogbnVtYmVyKSB7XG4gICAgY29uc3QgeWVhciA9IHRoaXMuY2FsZW5kYXJEYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgY29uc3QgbW9udGggPSB0aGlzLmNhbGVuZGFyRGF0ZS5nZXRNb250aCgpO1xuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSk7XG5cbiAgICB5ZWFycyAmJiBkLnNldEZ1bGxZZWFyKGQuZ2V0RnVsbFllYXIoKSArIHllYXJzKTtcbiAgICBtb250aHMgJiYgZC5zZXRNb250aChkLmdldE1vbnRoKCkgKyBtb250aHMpO1xuICAgIHR5cGVvZiBzZXRNb250aCA9PT0gJ251bWJlcicgJiYgZC5zZXRNb250aChzZXRNb250aCk7XG5cbiAgICB0aGlzLmNhbGVuZGFyRGF0ZSA9IGQ7XG4gIH1cblxuICBoYW5kbGVOYXZpZ2F0aW9uQ2xpY2soZGlyZWN0aW9uOiAncHJldicgfCAnbmV4dCcsIHllYXJzID0gZmFsc2UpIHtcbiAgICBpZiAoZGlyZWN0aW9uID09PSAncHJldicpIHtcbiAgICAgIGlmICh5ZWFycykge1xuICAgICAgICB0aGlzLnNldENhbGVuZGFyUGFnZSh0aGlzLnZpZXcgPT09ICd5ZWFycycgPyAtMTAgOiAtMSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMudmlldyAhPT0gJ2RheXMnKSB7XG4gICAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQYWdlKC0xKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldENhbGVuZGFyUGFnZSgwLCAtMSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09ICduZXh0Jykge1xuICAgICAgaWYgKHllYXJzKSB7XG4gICAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQYWdlKHRoaXMudmlldyA9PT0gJ3llYXJzJyA/IDEwIDogMSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMudmlldyAhPT0gJ2RheXMnKSB7XG4gICAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQYWdlKDEpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQYWdlKDAsIDEpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbGVhciBzdGFydERhdGUgYW5kIGVuZERhdGVcbiAgICogQHR5cGUgdm9pZFxuICAgKi9cbiAgcHVibGljIGNsZWFyRGF0ZXMoKSB7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgZW5kRGF0ZTogbnVsbCB9KTtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBzdGFydERhdGU6IG51bGwgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNhbGVuZGFyIG9mIGNhbGVuZGFyc0FycmF5OyBsZXQgaT1pbmRleDtcIj5cbiAgPGRpdiBbbmdDbGFzc109XCJ2aWV3IHwgY2FsZW5kYXJDbGFzc1ZpZXdcIj5cbiAgICA8Yy1jYWxlbmRhci1uYXZpZ2F0aW9uXG4gICAgICBbYWRkTW9udGhzXT1cImlcIlxuICAgICAgW25hdmlnYXRpb25dPVwibmF2aWdhdGlvblwiXG4gICAgICAobmF2aWdhdGlvbkNsaWNrKT1cImhhbmRsZU5hdmlnYXRpb25DbGljaygkZXZlbnQuZGlyZWN0aW9uLCAkZXZlbnQueWVhcnMpXCJcbiAgICA+PC9jLWNhbGVuZGFyLW5hdmlnYXRpb24+XG5cbiAgICA8Yy1jYWxlbmRhci1tb250aFxuICAgICAgW2FkZE1vbnRoc109XCJpXCJcbiAgICAgIFtmaXJzdERheU9mV2Vla109XCJmaXJzdERheU9mV2Vla1wiXG4gICAgICBbd2Vla2RheUZvcm1hdF09XCJ3ZWVrZGF5Rm9ybWF0XCJcbiAgICA+PC9jLWNhbGVuZGFyLW1vbnRoPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
405
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2NhbGVuZGFyL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdsRyxPQUFPLEVBQUUsZUFBZSxFQUFvRCxNQUFNLHFCQUFxQixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBV25FLE1BQU0sT0FBTyxpQkFBaUI7SUFPNUIsWUFDVSxlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUF5QmxDLGtCQUFhLEdBQVMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQWdCMUMsZUFBVSxHQUFXLENBQUMsQ0FBQztRQXFCdkIsZUFBVSxHQUFrQixTQUFTLENBQUM7UUFnQnRDLG1CQUFjLEdBQXdC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RixpQkFBaUI7a0JBVDdCLFNBQVM7K0JBQ0UsWUFBWSxZQUdaLFdBQVcsYUFDVixDQUFDLGVBQWUsQ0FBQyxjQUNoQixJQUFJLFdBQ1AsQ0FBQywyQkFBMkIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO3NHQW9CbkcsWUFBWTtzQkFEZixLQUFLO2dCQXdCRixTQUFTO3NCQURaLEtBQUs7Z0JBcUJGLFNBQVM7c0JBRFosS0FBSztnQkFpQkYsYUFBYTtzQkFEaEIsS0FBSztnQkFpQkYsU0FBUztzQkFEWixLQUFLO2dCQXVCRixPQUFPO3NCQURWLEtBQUs7Z0JBOEJGLGNBQWM7c0JBRGpCLEtBQUs7Z0JBZ0JGLE1BQU07c0JBRFQsS0FBSztnQkFnQkYsT0FBTztzQkFEVixLQUFLO2dCQWdCRixPQUFPO3NCQURWLEtBQUs7Z0JBaUJGLFVBQVU7c0JBRGIsS0FBSztnQkFpQkYsWUFBWTtzQkFEZixLQUFLO2dCQWtCRixLQUFLO3NCQURSLEtBQUs7Z0JBa0JGLElBQUk7c0JBRFAsS0FBSztnQkFrQkYsYUFBYTtzQkFEaEIsS0FBSztnQkFhRixVQUFVO3NCQURiLEtBQUs7Z0JBV0csa0JBQWtCO3NCQUExQixLQUFLO2dCQVFHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQWlCSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTztnQkFPa0IsY0FBYztzQkFBbkQsWUFBWTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ2xhc3MsIE5nRm9yT2YgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHksIGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDYWxlbmRhclNlcnZpY2UsIERhdGVGaWx0ZXJUeXBlLCBEYXlGb3JtYXRUeXBlLCBXZWVrZGF5Rm9ybWF0VHlwZSB9IGZyb20gJy4uL2NhbGVuZGFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgdHJ5RGF0ZSB9IGZyb20gJy4uL2NhbGVuZGFyLnV0aWxzJztcbmltcG9ydCB7IENhbGVuZGFyTW9udGhDb21wb25lbnQgfSBmcm9tICcuLi9jYWxlbmRhci1tb250aC9jYWxlbmRhci1tb250aC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FsZW5kYXJOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vY2FsZW5kYXItbmF2aWdhdGlvbi9jYWxlbmRhci1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYWxlbmRhckNsYXNzVmlld1BpcGUgfSBmcm9tICcuL2NhbGVuZGFyLWNsYXNzLXZpZXcucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci5jb21wb25lbnQuc2NzcyddLFxuICBleHBvcnRBczogJ2NDYWxlbmRhcicsXG4gIHByb3ZpZGVyczogW0NhbGVuZGFyU2VydmljZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDYWxlbmRhck5hdmlnYXRpb25Db21wb25lbnQsIENhbGVuZGFyQ2xhc3NWaWV3UGlwZSwgQ2FsZW5kYXJNb250aENvbXBvbmVudCwgTmdGb3JPZiwgTmdDbGFzc11cbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX25hdmlnYXRpb246IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX25hdlllYXJGaXJzdDogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfcmFuZ2U6IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NlbGVjdEFkamFjZW50RGF5czogQm9vbGVhbklucHV0O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2FsZW5kYXJTZXJ2aWNlOiBDYWxlbmRhclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5jYWxlbmRhclN0YXRlU3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogRGVmYXVsdCBkYXRlIG9mIHRoZSBjb21wb25lbnRcbiAgICogQHR5cGUgIChEYXRlIHwgc3RyaW5nKVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGNhbGVuZGFyRGF0ZSh2YWx1ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlcikge1xuICAgIC8vIGNvbnN0IF92YWx1ZSA9IG5ldyBEYXRlKHRyeURhdGUoKHZhbHVlID8/IHRoaXMuc3RhcnREYXRlID8/IG5ldyBEYXRlKCkpLCAnY2FsZW5kYXJEYXRlJykpO1xuICAgIGNvbnN0IF92YWx1ZSA9IG5ldyBEYXRlKHRyeURhdGUodmFsdWUgPz8gdGhpcy5zdGFydERhdGUsICdjYWxlbmRhckRhdGUnKSk7XG4gICAgaWYgKCEhX3ZhbHVlICYmIHRoaXMuX2NhbGVuZGFyRGF0ZS5nZXRUaW1lKCkgIT09IF92YWx1ZS5nZXRUaW1lKCkpIHtcbiAgICAgIGNvbnN0IF9jYWxlbmRhckRhdGUgPSBuZXcgRGF0ZShuZXcgRGF0ZShfdmFsdWUuc2V0RGF0ZSgxKSkuc2V0SG91cnMoMCwgMCwgMCwgMCkpO1xuICAgICAgdGhpcy5fY2FsZW5kYXJEYXRlID0gX2NhbGVuZGFyRGF0ZTtcbiAgICAgIHRoaXMuY2FsZW5kYXJEYXRlQ2hhbmdlLmVtaXQoX2NhbGVuZGFyRGF0ZSk7XG4gICAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBjYWxlbmRhckRhdGU6IF9jYWxlbmRhckRhdGUgfSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGNhbGVuZGFyRGF0ZSgpOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5fY2FsZW5kYXJEYXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsZW5kYXJEYXRlOiBEYXRlID0gdHJ5RGF0ZShuZXcgRGF0ZSgpKTtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBjYWxlbmRhcnMgdGhhdCByZW5kZXIgb24gZGVza3RvcCBkZXZpY2VzLlxuICAgKiBAdHlwZSBudW1iZXJcbiAgICogZGVmYXVsdCAxXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgY2FsZW5kYXJzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9jYWxlbmRhcnMgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgY2FsZW5kYXJzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2NhbGVuZGFycztcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGVuZGFyczogbnVtYmVyID0gMTtcblxuICBnZXQgY2FsZW5kYXJzQXJyYXkoKSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oeyBsZW5ndGg6IHRoaXMuY2FsZW5kYXJzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZm9ybWF0IG9mIGRheSBuYW1lLlxuICAgKiBAZGVmYXVsdCAnbnVtZXJpYydcbiAgICogQHR5cGUgRGF5Rm9ybWF0VHlwZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGRheUZvcm1hdCh2YWx1ZTogRGF5Rm9ybWF0VHlwZSkge1xuICAgIHRoaXMuX2RheUZvcm1hdCA9IHZhbHVlO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IGRheUZvcm1hdDogdGhpcy5fZGF5Rm9ybWF0IH0pO1xuICB9XG5cbiAgZ2V0IGRheUZvcm1hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGF5Rm9ybWF0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZGF5Rm9ybWF0OiBEYXlGb3JtYXRUeXBlID0gJ251bWVyaWMnO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IHRoZSBsaXN0IG9mIGRhdGVzIHRoYXQgY2Fubm90IGJlIHNlbGVjdGVkLlxuICAgKiBAdHlwZSAgKERhdGVbXSB8IERhdGVbXVtdKVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGRpc2FibGVkRGF0ZXModmFsdWU6IERhdGVbXSB8IERhdGVbXVtdKSB7XG4gICAgdGhpcy5fZGlzYWJsZWREYXRlcyA9IHZhbHVlO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IGRpc2FibGVkRGF0ZXM6IHRoaXMuX2Rpc2FibGVkRGF0ZXMgfSk7XG4gIH1cblxuICBnZXQgZGlzYWJsZWREYXRlcygpOiBEYXRlW10gfCBEYXRlW11bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkRGF0ZXM7XG4gIH1cblxuICBwcml2YXRlIF9kaXNhYmxlZERhdGVzOiAoRGF0ZVtdIHwgRGF0ZVtdW10pID0gW107XG5cbiAgLyoqXG4gICAqIEluaXRpYWwgc2VsZWN0ZWQgZGF0ZS5cbiAgICogQHR5cGUgIChEYXRlIHwgbnVsbClcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBzdGFydERhdGUodmFsdWU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgZGF0ZSA9ICEhdmFsdWUgPyB0cnlEYXRlKHZhbHVlLCAnc3RhcnREYXRlJykgOiBudWxsO1xuICAgIGlmICh0aGlzLl9zdGFydERhdGU/LmdldFRpbWUoKSAhPT0gZGF0ZT8uZ2V0VGltZSgpKSB7XG4gICAgICB0aGlzLl9zdGFydERhdGUgPSBkYXRlO1xuICAgICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgc3RhcnREYXRlOiB0aGlzLl9zdGFydERhdGUgfSk7XG4gICAgICBpZiAoIXRoaXMucmFuZ2UgfHwgIXRoaXMuX3N0YXJ0RGF0ZSB8fCAodGhpcy5lbmREYXRlICYmIHRoaXMuX3N0YXJ0RGF0ZSA+IHRoaXMuZW5kRGF0ZSkpIHtcbiAgICAgICAgdGhpcy5lbmREYXRlID0gbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgc3RhcnREYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGFydERhdGU7XG4gIH1cblxuICBfc3RhcnREYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIEluaXRpYWwgc2VsZWN0ZWQgdG8gZGF0ZSAocmFuZ2UpLlxuICAgKiBAdHlwZSAgKERhdGUgfCBudWxsKVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGVuZERhdGUodmFsdWU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgZGF0ZSA9ICEhdmFsdWUgPyB0cnlEYXRlKHZhbHVlLCAnZW5kRGF0ZScpIDogbnVsbDtcbiAgICBpZiAodGhpcy5fZW5kRGF0ZT8uZ2V0VGltZSgpICE9PSBkYXRlPy5nZXRUaW1lKCkpIHtcbiAgICAgIHRoaXMuX2VuZERhdGUgPSBkYXRlO1xuICAgICAgLy8gdGhpcy5fZW5kRGF0ZSA9IHRoaXMucmFuZ2UgPyB0aGlzLl9lbmREYXRlIDogbnVsbDtcbiAgICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IGVuZERhdGU6IHRoaXMuX2VuZERhdGUgfSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGVuZERhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMucmFuZ2UgPyB0aGlzLl9lbmREYXRlIDogbnVsbDtcbiAgfVxuXG4gIF9lbmREYXRlOiAoRGF0ZSB8IG51bGwpID0gbnVsbDtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZGF5IG9mIHN0YXJ0IHdlZWsuXG4gICAqIC0gMCAtIFN1bmRheSxcbiAgICogLSAxIC0gTW9uZGF5LFxuICAgKiAtIDIgLSBUdWVzZGF5LFxuICAgKiAtIDMgLSBXZWRuZXNkYXksXG4gICAqIC0gNCAtIFRodXJzZGF5LFxuICAgKiAtIDUgLSBGcmlkYXksXG4gICAqIC0gNiAtIFNhdHVyZGF5LFxuICAgKlxuICAgKiBAdHlwZSBudW1iZXJcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGZpcnN0RGF5T2ZXZWVrKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9maXJzdERheU9mV2VlayA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBmaXJzdERheU9mV2VlaygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9maXJzdERheU9mV2VlaztcbiAgfVxuXG4gIHByaXZhdGUgX2ZpcnN0RGF5T2ZXZWVrOiBudW1iZXIgPSAxO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkZWZhdWx0IGxvY2FsZSBmb3IgY29tcG9uZW50cy4gSWYgbm90IHNldCwgaXQgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGJyb3dzZXIuXG4gICAqIEBkZWZhdWx0ICdkZWZhdWx0J1xuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGxvY2FsZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbG9jYWxlID0gdmFsdWU7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgbG9jYWxlOiB2YWx1ZSB9KTtcbiAgfVxuXG4gIGdldCBsb2NhbGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xvY2FsZTtcbiAgfVxuXG4gIHByaXZhdGUgX2xvY2FsZTogc3RyaW5nID0gJ2RlZmF1bHQnO1xuXG4gIC8qKlxuICAgKiBNYXggc2VsZWN0YWJsZSBkYXRlLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IG1heERhdGUodmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fbWF4RGF0ZSA9ICEhdmFsdWUgPyB0cnlEYXRlKHZhbHVlLCAnbWF4RGF0ZScpIDogbnVsbDtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBtYXhEYXRlOiB0aGlzLl9tYXhEYXRlIH0pO1xuICB9XG5cbiAgZ2V0IG1heERhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX21heERhdGU7XG4gIH1cblxuICBwcml2YXRlIF9tYXhEYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIE1pbiBzZWxlY3RhYmxlIGRhdGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgbWluRGF0ZSh2YWx1ZTogRGF0ZSB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9taW5EYXRlID0gdmFsdWUgPyB0cnlEYXRlKHZhbHVlLCAnbWluRGF0ZScpIDogbnVsbDtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBtaW5EYXRlOiB0aGlzLl9taW5EYXRlIH0pO1xuICB9XG5cbiAgZ2V0IG1pbkRhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX21pbkRhdGU7XG4gIH1cblxuICBwcml2YXRlIF9taW5EYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFNob3cgbmF2aWdhdGlvbi5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IG5hdmlnYXRpb24odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9uYXZpZ2F0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBuYXZpZ2F0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9uYXZpZ2F0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBfbmF2aWdhdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFJlb3JkZXIgeWVhci1tb250aCBuYXZpZ2F0aW9uLCBhbmQgcmVuZGVyIHllYXIgZmlyc3QuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBuYXZZZWFyRmlyc3QodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9uYXZZZWFyRmlyc3QgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IG5hdlllYXJGaXJzdDogdGhpcy5fbmF2WWVhckZpcnN0IH0pO1xuICB9XG5cbiAgZ2V0IG5hdlllYXJGaXJzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmF2WWVhckZpcnN0O1xuICB9XG5cbiAgcHJpdmF0ZSBfbmF2WWVhckZpcnN0OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEFsbG93IHJhbmdlIHNlbGVjdGlvbi5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHJhbmdlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmFuZ2UgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IHJhbmdlOiB0aGlzLl9yYW5nZSB9KTtcbiAgfVxuXG4gIGdldCByYW5nZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmFuZ2U7XG4gIH1cblxuICBwcml2YXRlIF9yYW5nZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTZXQgY2FsZW5kYXIgdmlldy5cbiAgICogQHR5cGUgJ2RheXMnIHwgJ21vbnRocycgfCAneWVhcnMnXG4gICAqIEBkZWZhdWx0ICdkYXlzJ1xuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHZpZXcodmFsdWUpIHtcbiAgICB0aGlzLl92aWV3ID0gdmFsdWU7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgdmlldzogdmFsdWUgfSk7XG4gIH1cblxuICBnZXQgdmlldygpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlldztcbiAgfVxuXG4gIHByaXZhdGUgX3ZpZXc6ICdkYXlzJyB8ICdtb250aHMnIHwgJ3llYXJzJyA9ICdkYXlzJztcblxuICAvKipcbiAgICogU2V0IGxlbmd0aCBvciBmb3JtYXQgb2YgZGF5IG5hbWUuXG4gICAqIEB0eXBlIG51bWJlciB8ICdsb25nJyB8ICduYXJyb3cnIHwgJ3Nob3J0J1xuICAgKiBAZGVmYXVsdCAnc2hvcnQnXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgd2Vla2RheUZvcm1hdCh2YWx1ZTogV2Vla2RheUZvcm1hdFR5cGUpIHtcbiAgICB0aGlzLl93ZWVrZGF5Rm9ybWF0ID0gdmFsdWU7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UudXBkYXRlKHsgd2Vla2RheUZvcm1hdDogdGhpcy5fd2Vla2RheUZvcm1hdCB9KTtcbiAgfVxuXG4gIGdldCB3ZWVrZGF5Rm9ybWF0KCkge1xuICAgIHJldHVybiB0aGlzLl93ZWVrZGF5Rm9ybWF0O1xuICB9XG5cbiAgcHJpdmF0ZSBfd2Vla2RheUZvcm1hdDogV2Vla2RheUZvcm1hdFR5cGUgPSAnc2hvcnQnO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBkYXRlRmlsdGVyKHZhbHVlOiBEYXRlRmlsdGVyVHlwZSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IGRhdGVGaWx0ZXI6IHZhbHVlIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB3aGV0aGVyIGRheXMgaW4gYWRqYWNlbnQgbW9udGhzIHNob3duIGJlZm9yZSBvciBhZnRlciB0aGUgY3VycmVudCBtb250aCBhcmUgc2VsZWN0YWJsZS4gVGhpcyBvbmx5IGFwcGxpZXMgaWYgdGhlIGBzaG93QWRqYWNlbnREYXlzYCBvcHRpb24gaXMgc2V0IHRvIHRydWUuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHNpbmNlIDQuNC4xMFxuICAgKi9cbiAgQElucHV0KCkgc2VsZWN0QWRqYWNlbnREYXlzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldCB3aGV0aGVyIHRvIGRpc3BsYXkgZGF0ZXMgaW4gYWRqYWNlbnQgbW9udGhzIChub24tc2VsZWN0YWJsZSkgYXQgdGhlIHN0YXJ0IGFuZCBlbmQgb2YgdGhlIGN1cnJlbnQgbW9udGguXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc2luY2UgNC40LjEwXG4gICAqL1xuICBASW5wdXQoKSBzaG93QWRqYWNlbnREYXlzOiBib29sZWFuID0gdHJ1ZTtcblxuICBAT3V0cHV0KCkgY2FsZW5kYXJDZWxsSG92ZXI6IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGUgfCBudWxsPigpO1xuICBAT3V0cHV0KCkgY2FsZW5kYXJEYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KCk7XG4gIEBPdXRwdXQoKSBlbmREYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZSB8IG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4oKTtcbiAgQE91dHB1dCgpIHN0YXJ0RGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGUgfCBudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZSB8IG51bGw+KCk7XG4gIEBPdXRwdXQoKSB2aWV3Q2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIC8vIHVzZWQgd2l0aCBjYWxlbmRhclNlcnZpY2VcbiAgc2V0IGhvdmVyRGF0ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLl9ob3ZlckRhdGUgPSB2YWx1ZTtcbiAgICB0aGlzLmNhbGVuZGFyQ2VsbEhvdmVyLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGhvdmVyRGF0ZSgpOiBEYXRlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2hvdmVyRGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2hvdmVyRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgY2FsZW5kYXJTdGF0ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IGFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdjYWxlbmRhcnMnOiB0cnVlXG4gICAgfTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGRyZW4oQ2FsZW5kYXJNb250aENvbXBvbmVudCkgY2FsZW5kYXJNb250aHMhOiBRdWVyeUxpc3Q8Q2FsZW5kYXJNb250aENvbXBvbmVudD47XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jYWxlbmRhclN0YXRlU3Vic2NyaWJlKGZhbHNlKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7XG4gICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgdmlldzogdGhpcy52aWV3LFxuICAgICAgcmFuZ2U6IHRoaXMucmFuZ2UsXG4gICAgICBzaG93QWRqYWNlbnREYXlzOiB0aGlzLnNob3dBZGphY2VudERheXMsXG4gICAgICBzZWxlY3RBZGphY2VudERheXM6IHRoaXMuc2VsZWN0QWRqYWNlbnREYXlzXG4gICAgfSk7XG4gIH1cblxuICBjYWxlbmRhclN0YXRlU3Vic2NyaWJlKHN1YnNjcmliZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICBpZiAoc3Vic2NyaWJlKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyU3RhdGVTdWJzY3JpcHRpb24gPVxuICAgICAgICB0aGlzLmNhbGVuZGFyU2VydmljZS5jYWxlbmRhclN0YXRlJC5zdWJzY3JpYmUoc3RhdGUgPT4ge1xuICAgICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhzdGF0ZSk7XG4gICAgICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICAgICAgaWYgKGtleSBpbiB0aGlzKSB7XG4gICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgaWYgKHRoaXNba2V5XSAhPT0gc3RhdGVba2V5XSkge1xuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICB0aGlzW2tleV0gPSBzdGF0ZVtrZXldO1xuICAgICAgICAgICAgICAgIGlmIChrZXkgPT09ICdzdGFydERhdGUnKSB7XG4gICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydERhdGVDaGFuZ2UuZW1pdCh0aGlzLl9zdGFydERhdGUpO1xuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGtleSA9PT0gJ2VuZERhdGUnKSB7XG4gICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbmREYXRlQ2hhbmdlLmVtaXQodGhpcy5fZW5kRGF0ZSk7XG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNhbGVuZGFyU3RhdGVTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBzZXRDYWxlbmRhclBhZ2UoeWVhcnM6IG51bWJlciwgbW9udGhzID0gMCwgc2V0TW9udGg/OiBudW1iZXIpIHtcbiAgICBjb25zdCB5ZWFyID0gdGhpcy5jYWxlbmRhckRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICBjb25zdCBtb250aCA9IHRoaXMuY2FsZW5kYXJEYXRlLmdldE1vbnRoKCk7XG4gICAgY29uc3QgZCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoLCAxKTtcblxuICAgIHllYXJzICYmIGQuc2V0RnVsbFllYXIoZC5nZXRGdWxsWWVhcigpICsgeWVhcnMpO1xuICAgIG1vbnRocyAmJiBkLnNldE1vbnRoKGQuZ2V0TW9udGgoKSArIG1vbnRocyk7XG4gICAgdHlwZW9mIHNldE1vbnRoID09PSAnbnVtYmVyJyAmJiBkLnNldE1vbnRoKHNldE1vbnRoKTtcblxuICAgIHRoaXMuY2FsZW5kYXJEYXRlID0gZDtcbiAgfVxuXG4gIGhhbmRsZU5hdmlnYXRpb25DbGljayhkaXJlY3Rpb246ICdwcmV2JyB8ICduZXh0JywgeWVhcnMgPSBmYWxzZSkge1xuICAgIGlmIChkaXJlY3Rpb24gPT09ICdwcmV2Jykge1xuICAgICAgaWYgKHllYXJzKSB7XG4gICAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQYWdlKHRoaXMudmlldyA9PT0gJ3llYXJzJyA/IC0xMCA6IC0xKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy52aWV3ICE9PSAnZGF5cycpIHtcbiAgICAgICAgdGhpcy5zZXRDYWxlbmRhclBhZ2UoLTEpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQYWdlKDAsIC0xKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gJ25leHQnKSB7XG4gICAgICBpZiAoeWVhcnMpIHtcbiAgICAgICAgdGhpcy5zZXRDYWxlbmRhclBhZ2UodGhpcy52aWV3ID09PSAneWVhcnMnID8gMTAgOiAxKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy52aWV3ICE9PSAnZGF5cycpIHtcbiAgICAgICAgdGhpcy5zZXRDYWxlbmRhclBhZ2UoMSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zZXRDYWxlbmRhclBhZ2UoMCwgMSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIHN0YXJ0RGF0ZSBhbmQgZW5kRGF0ZVxuICAgKiBAdHlwZSB2b2lkXG4gICAqL1xuICBwdWJsaWMgY2xlYXJEYXRlcygpIHtcbiAgICB0aGlzLmNhbGVuZGFyU2VydmljZS51cGRhdGUoeyBlbmREYXRlOiBudWxsIH0pO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnVwZGF0ZSh7IHN0YXJ0RGF0ZTogbnVsbCB9KTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2FsZW5kYXIgb2YgY2FsZW5kYXJzQXJyYXk7IGxldCBpPWluZGV4O1wiPlxuICA8ZGl2IFtuZ0NsYXNzXT1cInZpZXcgfCBjYWxlbmRhckNsYXNzVmlld1wiPlxuICAgIDxjLWNhbGVuZGFyLW5hdmlnYXRpb25cbiAgICAgIFthZGRNb250aHNdPVwiaVwiXG4gICAgICBbbmF2aWdhdGlvbl09XCJuYXZpZ2F0aW9uXCJcbiAgICAgIChuYXZpZ2F0aW9uQ2xpY2spPVwiaGFuZGxlTmF2aWdhdGlvbkNsaWNrKCRldmVudC5kaXJlY3Rpb24sICRldmVudC55ZWFycylcIlxuICAgID48L2MtY2FsZW5kYXItbmF2aWdhdGlvbj5cblxuICAgIDxjLWNhbGVuZGFyLW1vbnRoXG4gICAgICBbYWRkTW9udGhzXT1cImlcIlxuICAgICAgW2ZpcnN0RGF5T2ZXZWVrXT1cImZpcnN0RGF5T2ZXZWVrXCJcbiAgICAgIFt3ZWVrZGF5Rm9ybWF0XT1cIndlZWtkYXlGb3JtYXRcIlxuICAgID48L2MtY2FsZW5kYXItbW9udGg+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -17,9 +17,9 @@ export class CalendarClassDayPipe {
17
17
  };
18
18
  }
19
19
  }
20
- CalendarClassDayPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassDayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
21
- CalendarClassDayPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassDayPipe, isStandalone: true, name: "calendarClassDay" });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassDayPipe, decorators: [{
20
+ CalendarClassDayPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassDayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
21
+ CalendarClassDayPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassDayPipe, isStandalone: true, name: "calendarClassDay" });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassDayPipe, decorators: [{
23
23
  type: Pipe,
24
24
  args: [{
25
25
  name: 'calendarClassDay',
@@ -3,20 +3,21 @@ import { isThisMonth } from '../calendar.utils';
3
3
  import * as i0 from "@angular/core";
4
4
  export class CalendarClassMonthPipe {
5
5
  transform(calendarDate, monthIndex) {
6
+ const date = new Date(calendarDate);
6
7
  return {
7
8
  'calendar-cell': true,
8
9
  month: true,
9
- today: isThisMonth(calendarDate, monthIndex)
10
+ today: isThisMonth(date, monthIndex)
10
11
  };
11
12
  }
12
13
  }
13
- CalendarClassMonthPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassMonthPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
14
- CalendarClassMonthPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassMonthPipe, isStandalone: true, name: "calendarClassMonth" });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassMonthPipe, decorators: [{
14
+ CalendarClassMonthPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassMonthPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
+ CalendarClassMonthPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassMonthPipe, isStandalone: true, name: "calendarClassMonth" });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassMonthPipe, decorators: [{
16
17
  type: Pipe,
17
18
  args: [{
18
19
  name: 'calendarClassMonth',
19
20
  standalone: true
20
21
  }]
21
22
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItY2xhc3MtbW9udGgucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvY2FsZW5kYXIvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItY2xhc3MtbW9udGgucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTWhELE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsU0FBUyxDQUFDLFlBQWtCLEVBQUUsVUFBa0I7UUFFOUMsT0FBTztZQUNMLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLEtBQUssRUFBRSxJQUFJO1lBQ1gsS0FBSyxFQUFFLFdBQVcsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDO1NBQzdDLENBQUM7SUFDSixDQUFDOzttSEFUVSxzQkFBc0I7aUhBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUpsQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxvQkFBb0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzVGhpc01vbnRoIH0gZnJvbSAnLi4vY2FsZW5kYXIudXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdjYWxlbmRhckNsYXNzTW9udGgnLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQ2xhc3NNb250aFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oY2FsZW5kYXJEYXRlOiBEYXRlLCBtb250aEluZGV4OiBudW1iZXIpOiBhbnkge1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICdjYWxlbmRhci1jZWxsJzogdHJ1ZSxcbiAgICAgIG1vbnRoOiB0cnVlLFxuICAgICAgdG9kYXk6IGlzVGhpc01vbnRoKGNhbGVuZGFyRGF0ZSwgbW9udGhJbmRleClcbiAgICB9O1xuICB9XG59XG4iXX0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItY2xhc3MtbW9udGgucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvY2FsZW5kYXIvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItY2xhc3MtbW9udGgucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTWhELE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsU0FBUyxDQUFDLFlBQW9DLEVBQUUsVUFBa0I7UUFDaEUsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFcEMsT0FBTztZQUNMLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLEtBQUssRUFBRSxJQUFJO1lBQ1gsS0FBSyxFQUFFLFdBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDO1NBQ3JDLENBQUM7SUFDSixDQUFDOzttSEFWVSxzQkFBc0I7aUhBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUpsQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxvQkFBb0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzVGhpc01vbnRoIH0gZnJvbSAnLi4vY2FsZW5kYXIudXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdjYWxlbmRhckNsYXNzTW9udGgnLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQ2xhc3NNb250aFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oY2FsZW5kYXJEYXRlOiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlLCBtb250aEluZGV4OiBudW1iZXIpOiBhbnkge1xuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShjYWxlbmRhckRhdGUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICdjYWxlbmRhci1jZWxsJzogdHJ1ZSxcbiAgICAgIG1vbnRoOiB0cnVlLFxuICAgICAgdG9kYXk6IGlzVGhpc01vbnRoKGRhdGUsIG1vbnRoSW5kZXgpXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -10,9 +10,9 @@ export class CalendarClassYearPipe {
10
10
  };
11
11
  }
12
12
  }
13
- CalendarClassYearPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassYearPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
14
- CalendarClassYearPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassYearPipe, isStandalone: true, name: "calendarClassYear" });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarClassYearPipe, decorators: [{
13
+ CalendarClassYearPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassYearPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
14
+ CalendarClassYearPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassYearPipe, isStandalone: true, name: "calendarClassYear" });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarClassYearPipe, decorators: [{
16
16
  type: Pipe,
17
17
  args: [{
18
18
  name: 'calendarClassYear',
@@ -5,9 +5,9 @@ export class CalendarDayTitlePipe {
5
5
  return date.toLocaleDateString(locale);
6
6
  }
7
7
  }
8
- CalendarDayTitlePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayTitlePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
9
- CalendarDayTitlePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayTitlePipe, isStandalone: true, name: "calendarDayTitle" });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayTitlePipe, decorators: [{
8
+ CalendarDayTitlePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayTitlePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
9
+ CalendarDayTitlePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayTitlePipe, isStandalone: true, name: "calendarDayTitle" });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayTitlePipe, decorators: [{
11
11
  type: Pipe,
12
12
  args: [{
13
13
  name: 'calendarDayTitle',
@@ -23,8 +23,9 @@ export class CalendarDayDirective {
23
23
  return (this.range && !!this.startDate && !this.endDate);
24
24
  }
25
25
  get hostClasses() {
26
- if (!this.date)
26
+ if (!this.date) {
27
27
  return;
28
+ }
28
29
  const rangeHover = this.month === 'current' && this.selectEndDate && isDateInRange(this.date, this.startDate, this.hoverDate);
29
30
  const start = isStartDate(this.date, this.startDate, this.endDate);
30
31
  const end = isEndDate(this.date, this.startDate, this.endDate);
@@ -33,13 +34,15 @@ export class CalendarDayDirective {
33
34
  const disabledRange = isDateInRangeDisabled(this.startDate, this.date, this.disabledDates);
34
35
  const disabledDate = isDateDisabled(this.date, this.minDate, this.maxDate, this.disabledDates);
35
36
  const disabledByFilter = this.dateFilter ? !this.dateFilter(this.date) : false;
37
+ const clickable = this.month !== 'current' && this.selectAdjacentDays;
36
38
  return {
37
39
  'range-hover': rangeHover && (!disabledRange || !disabledByFilter),
38
40
  selected: !!selected,
39
- range: !!inRange,
41
+ range: inRange,
40
42
  start: !!start,
41
43
  end: !!end,
42
- disabled: disabledDate || disabledByFilter
44
+ disabled: disabledDate || disabledByFilter,
45
+ clickable: clickable
43
46
  };
44
47
  }
45
48
  ngOnDestroy() {
@@ -49,7 +52,7 @@ export class CalendarDayDirective {
49
52
  if (subscribe) {
50
53
  this.calendarStateSubscription =
51
54
  this.calendarService.calendarState$.subscribe(state => {
52
- const { startDate = this.startDate, endDate = this.endDate, hoverDate = this.hoverDate, range = this.range, maxDate = this.maxDate, minDate = this.minDate, disabledDates = this.disabledDates, dateFilter = this.dateFilter } = { ...state };
55
+ const { startDate = this.startDate, endDate = this.endDate, hoverDate = this.hoverDate, range = this.range, maxDate = this.maxDate, minDate = this.minDate, disabledDates = this.disabledDates, dateFilter = this.dateFilter, selectAdjacentDays = this.selectAdjacentDays } = { ...state };
53
56
  this.startDate = startDate;
54
57
  this.endDate = endDate;
55
58
  this.range = range;
@@ -58,15 +61,16 @@ export class CalendarDayDirective {
58
61
  this.minDate = minDate;
59
62
  this.disabledDates = disabledDates;
60
63
  this.dateFilter = dateFilter;
64
+ this.selectAdjacentDays = selectAdjacentDays;
61
65
  });
62
66
  return;
63
67
  }
64
- this.calendarStateSubscription.unsubscribe();
68
+ this.calendarStateSubscription?.unsubscribe();
65
69
  }
66
70
  }
67
- CalendarDayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayDirective, deps: [{ token: i1.CalendarService }], target: i0.ɵɵFactoryTarget.Directive });
68
- CalendarDayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: CalendarDayDirective, isStandalone: true, selector: "[cCalendarDay]", inputs: { dateObj: ["cCalendarDay", "dateObj"] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayDirective, decorators: [{
71
+ CalendarDayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayDirective, deps: [{ token: i1.CalendarService }], target: i0.ɵɵFactoryTarget.Directive });
72
+ CalendarDayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: CalendarDayDirective, isStandalone: true, selector: "[cCalendarDay]", inputs: { dateObj: ["cCalendarDay", "dateObj"] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayDirective, decorators: [{
70
74
  type: Directive,
71
75
  args: [{
72
76
  selector: '[cCalendarDay]',
@@ -79,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
79
83
  type: HostBinding,
80
84
  args: ['class']
81
85
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZGF5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvY2FsZW5kYXIvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItZGF5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFekUsT0FBTyxFQUNMLGNBQWMsRUFDZCxhQUFhLEVBQ2IscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCxTQUFTLEVBQ1QsV0FBVyxFQUNaLE1BQU0sbUJBQW1CLENBQUM7OztBQU8zQixNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQ1UsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBS2xDLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBRXpCLGNBQVMsR0FBZ0IsSUFBSSxDQUFDO1FBQzlCLFlBQU8sR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLGNBQVMsR0FBZ0IsSUFBSSxDQUFDO1FBQzlCLFlBQU8sR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLFlBQU8sR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFWN0IsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQWdCRCxJQUNJLE9BQU8sQ0FBQyxLQUFvQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMs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Q0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO29CQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztvQkFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7b0JBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO29CQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztvQkFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO29CQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztnQkFDL0IsQ0FBQyxDQUFDLENBQUM7WUFDTCxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDL0MsQ0FBQzs7aUhBdkZVLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO3NHQXdCSyxPQUFPO3NCQURWLEtBQUs7dUJBQUMsY0FBYztnQkFZakIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGlzRGF0ZURpc2FibGVkLFxuICBpc0RhdGVJblJhbmdlLFxuICBpc0RhdGVJblJhbmdlRGlzYWJsZWQsXG4gIGlzRGF0ZVNlbGVjdGVkLFxuICBpc0VuZERhdGUsXG4gIGlzU3RhcnREYXRlXG59IGZyb20gJy4uL2NhbGVuZGFyLnV0aWxzJztcbmltcG9ydCB7IENhbGVuZGFyU2VydmljZSwgRGF0ZUZpbHRlclR5cGUgfSBmcm9tICcuLi9jYWxlbmRhci5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NDYWxlbmRhckRheV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyRGF5RGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhbGVuZGFyU2VydmljZTogQ2FsZW5kYXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBkYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgbW9udGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgc3RhcnREYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgZW5kRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGhvdmVyRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIG1heERhdGU6IERhdGUgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBtaW5EYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgcmFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBkaXNhYmxlZERhdGVzITogKERhdGUgfCBEYXRlW10pW107XG4gIHByaXZhdGUgY2FsZW5kYXJTdGF0ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBkYXRlRmlsdGVyITogRGF0ZUZpbHRlclR5cGU7XG5cbiAgcHJpdmF0ZSBfZGF0ZU9iaj86IHsgZGF0ZTogRGF0ZTsgbW9udGg6IHN0cmluZzsgfTtcblxuICBASW5wdXQoJ2NDYWxlbmRhckRheScpXG4gIHNldCBkYXRlT2JqKHZhbHVlOiB7IGRhdGU6IERhdGU7IG1vbnRoOiBzdHJpbmcgfSkge1xuICAgIHRoaXMuX2RhdGVPYmogPSB2YWx1ZTtcbiAgICB0aGlzLmRhdGUgPSB2YWx1ZS5kYXRlO1xuICAgIHRoaXMubW9udGggPSB2YWx1ZS5tb250aDtcbiAgfVxuXG4gIGdldCBzZWxlY3RFbmREYXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5yYW5nZSAmJiAhIXRoaXMuc3RhcnREYXRlICYmICF0aGlzLmVuZERhdGUpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuXG4gICAgaWYgKCF0aGlzLmRhdGUpIHJldHVybjtcblxuICAgIGNvbnN0IHJhbmdlSG92ZXIgPSB0aGlzLm1vbnRoID09PSAnY3VycmVudCcgJiYgdGhpcy5zZWxlY3RFbmREYXRlICYmIGlzRGF0ZUluUmFuZ2UodGhpcy5kYXRlLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5ob3ZlckRhdGUpO1xuICAgIGNvbnN0IHN0YXJ0ID0gaXNTdGFydERhdGUodGhpcy5kYXRlLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5lbmREYXRlKTtcbiAgICBjb25zdCBlbmQgPSBpc0VuZERhdGUodGhpcy5kYXRlLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5lbmREYXRlKTtcbiAgICBjb25zdCBpblJhbmdlID0gdGhpcy5tb250aCA9PT0gJ2N1cnJlbnQnICYmIChpc0RhdGVJblJhbmdlKHRoaXMuZGF0ZSwgdGhpcy5zdGFydERhdGUsIHRoaXMuZW5kRGF0ZSkgfHwgISFzdGFydCB8fCAhIWVuZCk7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSBpc0RhdGVTZWxlY3RlZCh0aGlzLmRhdGUsIHRoaXMuc3RhcnREYXRlLCB0aGlzLmVuZERhdGUpO1xuICAgIGNvbnN0IGRpc2FibGVkUmFuZ2UgPSBpc0RhdGVJblJhbmdlRGlzYWJsZWQodGhpcy5zdGFydERhdGUsIHRoaXMuZGF0ZSwgdGhpcy5kaXNhYmxlZERhdGVzKTtcbiAgICBjb25zdCBkaXNhYmxlZERhdGUgPSBpc0RhdGVEaXNhYmxlZCh0aGlzLmRhdGUsIHRoaXMubWluRGF0ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLmRpc2FibGVkRGF0ZXMpO1xuICAgIGNvbnN0IGRpc2FibGVkQnlGaWx0ZXIgPSB0aGlzLmRhdGVGaWx0ZXIgPyAhdGhpcy5kYXRlRmlsdGVyKHRoaXMuZGF0ZSkgOiBmYWxzZTtcblxuICAgIHJldHVybiB7XG4gICAgICAncmFuZ2UtaG92ZXInOiByYW5nZUhvdmVyICYmICghZGlzYWJsZWRSYW5nZSB8fCAhZGlzYWJsZWRCeUZpbHRlciksXG4gICAgICBzZWxlY3RlZDogISFzZWxlY3RlZCxcbiAgICAgIHJhbmdlOiAhIWluUmFuZ2UsXG4gICAgICBzdGFydDogISFzdGFydCxcbiAgICAgIGVuZDogISFlbmQsXG4gICAgICBkaXNhYmxlZDogZGlzYWJsZWREYXRlIHx8IGRpc2FibGVkQnlGaWx0ZXJcbiAgICB9O1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jYWxlbmRhclN0YXRlU3Vic2NyaWJlKGZhbHNlKTtcbiAgfVxuXG4gIGNhbGVuZGFyU3RhdGVTdWJzY3JpYmUoc3Vic2NyaWJlOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIGlmIChzdWJzY3JpYmUpIHtcbiAgICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmlwdGlvbiA9XG4gICAgICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmNhbGVuZGFyU3RhdGUkLnN1YnNjcmliZShzdGF0ZSA9PiB7XG4gICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgc3RhcnREYXRlID0gdGhpcy5zdGFydERhdGUsXG4gICAgICAgICAgICBlbmREYXRlID0gdGhpcy5lbmREYXRlLFxuICAgICAgICAgICAgaG92ZXJEYXRlID0gdGhpcy5ob3ZlckRhdGUsXG4gICAgICAgICAgICByYW5nZSA9IHRoaXMucmFuZ2UsXG4gICAgICAgICAgICBtYXhEYXRlID0gdGhpcy5tYXhEYXRlLFxuICAgICAgICAgICAgbWluRGF0ZSA9IHRoaXMubWluRGF0ZSxcbiAgICAgICAgICAgIGRpc2FibGVkRGF0ZXMgPSB0aGlzLmRpc2FibGVkRGF0ZXMsXG4gICAgICAgICAgICBkYXRlRmlsdGVyID0gdGhpcy5kYXRlRmlsdGVyXG4gICAgICAgICAgfSA9IHsgLi4uc3RhdGUgfTtcbiAgICAgICAgICB0aGlzLnN0YXJ0RGF0ZSA9IHN0YXJ0RGF0ZTtcbiAgICAgICAgICB0aGlzLmVuZERhdGUgPSBlbmREYXRlO1xuICAgICAgICAgIHRoaXMucmFuZ2UgPSByYW5nZTtcbiAgICAgICAgICB0aGlzLmhvdmVyRGF0ZSA9IGhvdmVyRGF0ZTtcbiAgICAgICAgICB0aGlzLm1heERhdGUgPSBtYXhEYXRlO1xuICAgICAgICAgIHRoaXMubWluRGF0ZSA9IG1pbkRhdGU7XG4gICAgICAgICAgdGhpcy5kaXNhYmxlZERhdGVzID0gZGlzYWJsZWREYXRlcztcbiAgICAgICAgICB0aGlzLmRhdGVGaWx0ZXIgPSBkYXRlRmlsdGVyO1xuICAgICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jYWxlbmRhclN0YXRlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZGF5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvY2FsZW5kYXIvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItZGF5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFekUsT0FBTyxFQUNMLGNBQWMsRUFDZCxhQUFhLEVBQ2IscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCxTQUFTLEVBQ1QsV0FBVyxFQUNaLE1BQU0sbUJBQW1CLENBQUM7OztBQU8zQixNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQ1UsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBS2xDLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBRXpCLGNBQVMsR0FBZ0IsSUFBSSxDQUFDO1FBQzlCLFlBQU8sR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLGNBQVMsR0FBZ0IsSUFBSSxDQUFDO1FBQzlCLFlBQU8sR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLFlBQU8sR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFWN0IsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQWlCRCxJQUNJLE9BQU8sQ0FBQyxLQUFvQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMs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QUksQ0FBQyxhQUFhLEVBQ2xDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUM1QixrQkFBa0IsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQzdDLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO29CQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztvQkFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO29CQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztvQkFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO29CQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztvQkFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7b0JBQzdCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztnQkFDL0MsQ0FBQyxDQUFDLENBQUM7WUFDTCxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDaEQsQ0FBQzs7aUhBOUZVLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO3NHQXlCSyxPQUFPO3NCQURWLEtBQUs7dUJBQUMsY0FBYztnQkFZakIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGlzRGF0ZURpc2FibGVkLFxuICBpc0RhdGVJblJhbmdlLFxuICBpc0RhdGVJblJhbmdlRGlzYWJsZWQsXG4gIGlzRGF0ZVNlbGVjdGVkLFxuICBpc0VuZERhdGUsXG4gIGlzU3RhcnREYXRlXG59IGZyb20gJy4uL2NhbGVuZGFyLnV0aWxzJztcbmltcG9ydCB7IENhbGVuZGFyU2VydmljZSwgRGF0ZUZpbHRlclR5cGUgfSBmcm9tICcuLi9jYWxlbmRhci5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NDYWxlbmRhckRheV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyRGF5RGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhbGVuZGFyU2VydmljZTogQ2FsZW5kYXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBkYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgbW9udGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgc3RhcnREYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgZW5kRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGhvdmVyRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIG1heERhdGU6IERhdGUgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBtaW5EYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgcmFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBkaXNhYmxlZERhdGVzITogKERhdGUgfCBEYXRlW10pW107XG4gIHByaXZhdGUgY2FsZW5kYXJTdGF0ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBkYXRlRmlsdGVyITogRGF0ZUZpbHRlclR5cGU7XG4gIHByaXZhdGUgc2VsZWN0QWRqYWNlbnREYXlzITogYm9vbGVhbjtcblxuICBwcml2YXRlIF9kYXRlT2JqPzogeyBkYXRlOiBEYXRlOyBtb250aDogc3RyaW5nOyB9O1xuXG4gIEBJbnB1dCgnY0NhbGVuZGFyRGF5JylcbiAgc2V0IGRhdGVPYmoodmFsdWU6IHsgZGF0ZTogRGF0ZTsgbW9udGg6IHN0cmluZyB9KSB7XG4gICAgdGhpcy5fZGF0ZU9iaiA9IHZhbHVlO1xuICAgIHRoaXMuZGF0ZSA9IHZhbHVlLmRhdGU7XG4gICAgdGhpcy5tb250aCA9IHZhbHVlLm1vbnRoO1xuICB9XG5cbiAgZ2V0IHNlbGVjdEVuZERhdGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLnJhbmdlICYmICEhdGhpcy5zdGFydERhdGUgJiYgIXRoaXMuZW5kRGF0ZSk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IGFueSB7XG5cbiAgICBpZiAoIXRoaXMuZGF0ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJhbmdlSG92ZXIgPSB0aGlzLm1vbnRoID09PSAnY3VycmVudCcgJiYgdGhpcy5zZWxlY3RFbmREYXRlICYmIGlzRGF0ZUluUmFuZ2UodGhpcy5kYXRlLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5ob3ZlckRhdGUpO1xuICAgIGNvbnN0IHN0YXJ0ID0gaXNTdGFydERhdGUodGhpcy5kYXRlLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5lbmREYXRlKTtcbiAgICBjb25zdCBlbmQgPSBpc0VuZERhdGUodGhpcy5kYXRlLCB0aGlzLnN0YXJ0RGF0ZSwgdGhpcy5lbmREYXRlKTtcbiAgICBjb25zdCBpblJhbmdlID0gdGhpcy5tb250aCA9PT0gJ2N1cnJlbnQnICYmIChpc0RhdGVJblJhbmdlKHRoaXMuZGF0ZSwgdGhpcy5zdGFydERhdGUsIHRoaXMuZW5kRGF0ZSkgfHwgISFzdGFydCB8fCAhIWVuZCk7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSBpc0RhdGVTZWxlY3RlZCh0aGlzLmRhdGUsIHRoaXMuc3RhcnREYXRlLCB0aGlzLmVuZERhdGUpO1xuICAgIGNvbnN0IGRpc2FibGVkUmFuZ2UgPSBpc0RhdGVJblJhbmdlRGlzYWJsZWQodGhpcy5zdGFydERhdGUsIHRoaXMuZGF0ZSwgdGhpcy5kaXNhYmxlZERhdGVzKTtcbiAgICBjb25zdCBkaXNhYmxlZERhdGUgPSBpc0RhdGVEaXNhYmxlZCh0aGlzLmRhdGUsIHRoaXMubWluRGF0ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLmRpc2FibGVkRGF0ZXMpO1xuICAgIGNvbnN0IGRpc2FibGVkQnlGaWx0ZXIgPSB0aGlzLmRhdGVGaWx0ZXIgPyAhdGhpcy5kYXRlRmlsdGVyKHRoaXMuZGF0ZSkgOiBmYWxzZTtcbiAgICBjb25zdCBjbGlja2FibGUgPSB0aGlzLm1vbnRoICE9PSAnY3VycmVudCcgJiYgdGhpcy5zZWxlY3RBZGphY2VudERheXM7XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ3JhbmdlLWhvdmVyJzogcmFuZ2VIb3ZlciAmJiAoIWRpc2FibGVkUmFuZ2UgfHwgIWRpc2FibGVkQnlGaWx0ZXIpLFxuICAgICAgc2VsZWN0ZWQ6ICEhc2VsZWN0ZWQsXG4gICAgICByYW5nZTogaW5SYW5nZSxcbiAgICAgIHN0YXJ0OiAhIXN0YXJ0LFxuICAgICAgZW5kOiAhIWVuZCxcbiAgICAgIGRpc2FibGVkOiBkaXNhYmxlZERhdGUgfHwgZGlzYWJsZWRCeUZpbHRlcixcbiAgICAgIGNsaWNrYWJsZTogY2xpY2thYmxlXG4gICAgfTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2FsZW5kYXJTdGF0ZVN1YnNjcmliZShmYWxzZSk7XG4gIH1cblxuICBjYWxlbmRhclN0YXRlU3Vic2NyaWJlKHN1YnNjcmliZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICBpZiAoc3Vic2NyaWJlKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyU3RhdGVTdWJzY3JpcHRpb24gPVxuICAgICAgICB0aGlzLmNhbGVuZGFyU2VydmljZS5jYWxlbmRhclN0YXRlJC5zdWJzY3JpYmUoc3RhdGUgPT4ge1xuICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIHN0YXJ0RGF0ZSA9IHRoaXMuc3RhcnREYXRlLFxuICAgICAgICAgICAgZW5kRGF0ZSA9IHRoaXMuZW5kRGF0ZSxcbiAgICAgICAgICAgIGhvdmVyRGF0ZSA9IHRoaXMuaG92ZXJEYXRlLFxuICAgICAgICAgICAgcmFuZ2UgPSB0aGlzLnJhbmdlLFxuICAgICAgICAgICAgbWF4RGF0ZSA9IHRoaXMubWF4RGF0ZSxcbiAgICAgICAgICAgIG1pbkRhdGUgPSB0aGlzLm1pbkRhdGUsXG4gICAgICAgICAgICBkaXNhYmxlZERhdGVzID0gdGhpcy5kaXNhYmxlZERhdGVzLFxuICAgICAgICAgICAgZGF0ZUZpbHRlciA9IHRoaXMuZGF0ZUZpbHRlcixcbiAgICAgICAgICAgIHNlbGVjdEFkamFjZW50RGF5cyA9IHRoaXMuc2VsZWN0QWRqYWNlbnREYXlzXG4gICAgICAgICAgfSA9IHsgLi4uc3RhdGUgfTtcbiAgICAgICAgICB0aGlzLnN0YXJ0RGF0ZSA9IHN0YXJ0RGF0ZTtcbiAgICAgICAgICB0aGlzLmVuZERhdGUgPSBlbmREYXRlO1xuICAgICAgICAgIHRoaXMucmFuZ2UgPSByYW5nZTtcbiAgICAgICAgICB0aGlzLmhvdmVyRGF0ZSA9IGhvdmVyRGF0ZTtcbiAgICAgICAgICB0aGlzLm1heERhdGUgPSBtYXhEYXRlO1xuICAgICAgICAgIHRoaXMubWluRGF0ZSA9IG1pbkRhdGU7XG4gICAgICAgICAgdGhpcy5kaXNhYmxlZERhdGVzID0gZGlzYWJsZWREYXRlcztcbiAgICAgICAgICB0aGlzLmRhdGVGaWx0ZXIgPSBkYXRlRmlsdGVyO1xuICAgICAgICAgIHRoaXMuc2VsZWN0QWRqYWNlbnREYXlzID0gc2VsZWN0QWRqYWNlbnREYXlzO1xuICAgICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jYWxlbmRhclN0YXRlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -7,9 +7,9 @@ export class CalendarDayPipe {
7
7
  date.toLocaleDateString(locale, { day: dayFormat });
8
8
  }
9
9
  }
10
- CalendarDayPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
11
- CalendarDayPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayPipe, isStandalone: true, name: "calendarDay" });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDayPipe, decorators: [{
10
+ CalendarDayPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
11
+ CalendarDayPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayPipe, isStandalone: true, name: "calendarDay" });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CalendarDayPipe, decorators: [{
13
13
  type: Pipe,
14
14
  args: [{
15
15
  name: 'calendarDay',